LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Accessability - Labview for the physically disabled?

My younger sister is a professional programmer experienced in the .Net languages.  We've talked about how dataflow programming is different from traditional text languages and she has expressed some interest in exploring Labview.  However, she has cerebral palsy and has very poor fine motor control.  This doesn't affect her with text languages--she's a hotkey wizard and rarely needs to use the mouse.  But Labview requires a level of mouse cursor control that she cannot achieve without significant effort.  This not only slows her down, but she ends up spending most of her energy on using the tool (Labview) instead of solving the problem.

 

Are there any other physically disabled Labview users out there with similar issues?  How have you addressed them?

 

(Coincidentally, I occasionally have bouts of Essential Tremor that give me a glimpse into how life is for her.  In severe cases getting anything done in Labview is impossible.)

0 Kudos
Message 1 of 11
(7,710 Views)

Wish I knew Daklu.

 

While I am not much help in giving an answer about how to use LV when disabled I can certainly see thge point of it.

I too suffer from a pretty significant tendonitis issue in my right wrist forearm area, and guess where this came from?

You guessd right,  Micro Trauma from so much mouse moving and clicking from doing LV projects over 20 year period "in house" for our researchers..

 

 

Ergonomic posture should help a lot and the automatic tool also is helpful but in the

end the closest I got to thinkling "maybe there is an out for me" (and others far worse off then myself) was to look into pen tablets and also Track IR head mounted leds.

But both are still not yet able to provide the accuracy and precision needed to code in G but don't hold me to it,

I'll admit  have not looked around in a few years.

 

Interesting topic for me.  I shall watch for any good news..

 

 

 

0 Kudos
Message 2 of 11
(7,704 Views)

By the way Sorry to hear about your Tremor. Hope the episodes are few and far between.

0 Kudos
Message 3 of 11
(7,700 Views)

@Daklu wrote:

...Are there any other physically disabled Labview users out there with similar issues?  How have you addressed them?

 

(Coincidentally, I occasionally have bouts of Essential Tremor that give me a glimpse into how life is for her.  In severe cases getting anything done in Labview is impossible.)


 

Norm Kirshner (aka The Captain) who is now with NI developed LabSpeak or something similar. Did you investigate that?

 

There also uesd to be "foot mice" that are manipulated using your feet if that is of any use.

 

Edit:

 

Silly me!

 

Has she tried a track back like those available from Kensington?

 

 

Unlike a mouse where you have to hold the mouse still while clicking, the ball can be manipulated without touching any buttons and then the ball can be left un-touched while pushing buttons. Setting teh mouse speed in window may help reduce the effects of small motion.

 

Ben

 

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 4 of 11
(7,699 Views)

@Ben

 

I've used LVSpeak a bit.  Her cerebral palsy affects her speech as well so automated voice systems often do not work well.  Aside from that, as I recall LVSpeak was mainly a substitution for using the palettes.  It wouldn't help with all the other myriad tasks in LV that require a mouse.

 

A foot mouse or trackball wouldn't help.  All her limbs (and fingers) are affected.

 

The best idea I've been able to come up with using existing technology is some sort of foot switch that changes the speed of the mouse.  But even that solution has usability issues.  Imagine only being able to move the mouse in 1" increments and trying to pick 2 or 3 speed settings that allow you to work effectively.

 

(Incidentally, I've added a request for improved support to the Idea Exchange.)

0 Kudos
Message 5 of 11
(7,678 Views)

@AKA_TG

 

"and also Track IR head mounted leds"

 

I personally believe mice aren't going to be replaced as a fundamental computing interface until accurate, affordable, and non-intrusive eye tracking technology is developed.  I look into it every couple years but it still appears to be a long, long ways off.

0 Kudos
Message 6 of 11
(7,675 Views)

Taking yet another approach...

 

If the device/s existed that would help your sister, what would it look like and how would she manipulate it?

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 7 of 11
(7,601 Views)

Mechanical devices to replicate a computer mouse?  I don't really know--that's why I posted the question.  Smiley Wink  She prefers touchpads to mice and can navigate menus and whatnot with them, but extended use in LV's high precision environment wouldn't work very well.  I discovered trackbars recently and she might give one of those a try.  I've also looked at programmable keyboards as a possibile route towards making things easier for her.

 

Mice and keyboards are still the primary interfaces to computers because nothing better has been invented.  It may be possible to invent a mouse-ish device that allows her to position the pointer accurately in LV (such as using foot switches to change mouse speed), but I think it will still be too labor intensive for her to write LV code efficiently.  (If I knew how to write low level mouse and USB drivers I would build a prototype system for her to try out...)

 

Though an accessability device can improve her ability to use LV, I believe any completely third-party solution is going to be sub-optimal until mouse-replacing technology is invented.  Enabling her to be as effective as other LV programmers will require NI's participation in making all functionality accessable from the keyboard.  Right now there are way too many gaps.  For example:

 

- The hotkey for "align items" repeats the last alignment operation done.  If you want to do a different alignment operation you have to use the mouse.  There is no way to define separate hotkeys to each alignment operation, and there's no way to activate the alignment toolbar button with the keyboard.

- After right clicking a vi to bring up the palette, you can use the arrow keys to navigate it.  However, the "right click" key some keyboards have doesn't display the palette.  It works in the project window, but not on vis.  Furthermore, there's no way to access the palette's seach function or expand the palette to show hidden items using the keyboard.

0 Kudos
Message 8 of 11
(7,584 Views)

Hey Daklu,

sorry to hear about your sister.

Here are some thoughts:

1. if she used more than one mouse input and moved the cursors in synchronization maybe there is a way to remove movements that appear only in one input and not in the other.

2. biofeedback can be another input that helps to manage option one better.

3. averaging on the mouse movements can help yet I'm not sure if it is the same as slowing the mouse reaction.

4. you could place a sensor on two muscles she has good control over and define one as x and the other as y. 

5. I bet any kind of tremor has an hidden pattern that can be analyzed and filtered out.

0 Kudos
Message 9 of 11
(7,560 Views)

Those are very interesting ideas.  At minimum they all require a custom mouse driver so they are outside the scope of what I am easily able to do for her, but interesting nonetheless.  My off-the-top-of-my-head comments...

 

1.  Constantly moving one hand between the mouse and keyboard is already slow.  Doing it with both hands would be even slower.

4.  In many people CP affects only part of their bodies, such as their legs.  Carole's CP affects her whole body.  She doesn't have very good fine motor control over anything.  Aside from that, our muscles have a limited range of motion.  If x-axis motion is controlled by bending my leg, what happens when my leg is completely straight and the cursor still hasn't reached the point I need?  I'd need to fall back to some sort of velocity control instead of position control at the limits of the range of motion.  (Imagine using a joystick to control the cursor.)  Many touchpads have an "edge-motion" option that does something similar, and they can work, but imo they are not great solutions.

5.  I thought this idea was the most interesting.  Her difficulties don't arise from tremors; it's more like unpredictable impulse and/or step inputs rather than a sine wave.  However, it did get me thinking about ways to filter those out in a mouse driver.

 

All cursor controllers (mice, touchpads, trackballs, etc.) have sensors to detect each unit of movement, or "count."  Ball mice use quadrature encoders.  Optical mice use image sensors.  The mouse firmware converts n sensor counts into n' mouse counts.  The mouse driver converts n' mouse counts into n'' pixels moved on screen.  When you change the "speed" of the mouse in the control panel, what you're really doing is changing the n'/n'' ratio. 

 

Many mouse drivers have built-in "acceleration" features, where the n'/n'' ratio is momentarily increased if the mouse acceleration is high.  This makes it easier to traverse long distances on the screen while minimizing the need to pick up the mouse and reposition it on the desktop.  It should be trivial to modify a driver so the n'/n'' ratio is decreased when the acceleration is high.

0 Kudos
Message 10 of 11
(7,526 Views)