Software and Testing....

A project log for Eye Controlled Wheelchair!

Open source system to drive powerchairs by eye movement alone - allowing independent mobility when use of a person's hands isn't an option.

Patrick JoycePatrick Joyce 08/05/2015 at 14:130 Comments

Steve hasn't recovered enough to help with the testing yet. I've been doing my best, but I have few opportunities. Software development is going well however. I am cautiously optimistic that the software is now feature complete. I have successfully (I hope) addressed all the problems we'd had with previous versions of the software. It needs thoroughly testing of course. Here's a screenshot of the main driving grid.

The guiding principle of eyedrivomatic is safety. Controlling a wheelchair with eyegaze is potentially dangerous because of the inherently temperamental nature of eyegaze. The equipment can lose track of your eyes easily, particularly in fluctuating lighting conditions. This can occasionally cause the mouse to jump about the screen, or stay in one place. Irritating if you're writing a letter, potentially dangerous if you're driving your chair. Overcoming this hazard was my first job as designer.

What I did was the following: To move the chair you click one of the direction buttons. The chair then moves in that direction for a set number of seconds, and then stops. In order to carry on you have to push the continue button or a different direction button. If you push the same button twice in a row, nothing happens. When you've pushed the continue button, the chair will continue in the same direction for another duration. Then you have to push the direction button again. And so it continues – direction, continue, direction, continue, direction etc. This way, the chair cannot get out of control for more than a few seconds, before it stops on it's own. If you push the next button before the previous duration is over, then the chair continues forward (or turns) smoothly, without stopping. Nice and safe. Well, as safe as I can make it anyway. Any electric wheelchair can be dangerous, no matter how it's controlled.

The 'electronic hand' has two servos, one controlling forward and backwards movement, and one for left/right. Movement duration is user selectable for each servo. Overall speed is user controlled as well, and there is a button to toggle between driving and manoeuvring modes. A stop button of course, and on chairs that support it, there's also a panic button that turns the entire wheelchair off.

Currently the software only works in conjunction with the Grid2 AAC package. Once the current software version has been proven in the field (fingers crossed), I will make a stand alone application for pc and one for mac. Meanwhile I've put all the files necessary to build it up on the github repository. No instructable yet, but watch this space!