by ex-Gooserider » 16 Jan 2018, 05:49
In pretty much all cases that I know of, not just chairs but electro-mechanical stuff in general, the controller is a computer that knows NOTHING about what is going on, other than what the system tells it. The computer (aka microcontroller) takes what it is told by the various inputs, and controls outputs according to rules that are programmed into it by software....
The way stuff is controlled can be either a variable output (analog or an imitation of it), or simply turning it on and off (digital). It is MUCH more complex electronically, which translates to money costs to do variable outputs, therefore every output is looked at as to whether it needs to be analog, or if it is possible to do a simple digital on/off control.... If its at all possible, they will use a digital on /off control because it costs less in hardware, and is easier in software....
Drive motors have to have variable speed control for obvious reason. OTOH, most actuators do things where adjusting the speed isn't critical, so designers pick an actuator that moves at the speed desired and just turn it on and off. So normally it is not possible to adjust the speed of actuators - your seat will tilt, recline, go up and down, etc at whatever speed is designed in at the factory (usually far slower than we would like....)
Since the manufacturers think we are to stupid to not drive at full speed with the seating in a position that would make the chair unstable, they put rules in the software to slow the maximum speed down when the rule is invoked... This is an inhibit rule, and there may be several of them, or one rule with several different 'trigger' points, depending on the software. (Which we are NOT normally allowed to change - even with OEM programmers)
This means that they have to provide some way for the microcontroller to know when to invoke the inhibit rule. So they have to add some sort of input to tell the controller where the seating is positioned. They can do this several ways -
1. Use position sensors - switches, magnetic sensors, potentiometers, etc., that are fastened onto the chair outside the actuator.
2. Use the same sort of sensors that are built into the actuator as part of it.
3. Use an actuator that electronically reports its position to the microcontroller (these can often also be speed controlled unlike the more common sort)
Generally, method one tends to be used on older chairs, with a tendency to move towards method 2 and 3 as the chairs get newer and fancier. I have gotten the impression that Permobil in particular tends to use method 3, which is why they tend to be harder to mess with...
Those of us who want to do things the manufacturers don't like have different options to change the inhibits.... Some mechanical, some in software.
Mechanically, there is essentially nothing that can be done with actuators that electronically report their position, as the position reporting is part of the way they operate.... So Method 3 actuators are limited to playing in the software.
Method 2 is also very limited in what can be done mechanically, unless the sensors have wiring separate from the motor wiring, in which case it can be disconnected (may require connecting the disconnected wires together, or doing other stuff to 'dummy out' the circuit) It may or may not be possible to get into the actuator to adjust the sensor positions, etc.
Method one is simplest to either disconnnect or possibly change the positions of the sensors, value of resistors, etc. to alter when the inhibit kicks in.
Software is easier to change - We can't actually get rid of the rule itself, as we don't have the means to actually replace the entire software that is running on the microcontroller. But IF we have access to the 'programming software' then there are a number of possible changes that can be made, depending on the details of the particular hardware / software involved...
You can usually turn inhibits OFF completely - which is about like disconnecting a sensor in effect....
Often it can be possible to change what the inhibit does when it triggers (i.e. say that 'turtle' is 50% of max instead of 10%)
If the sensor can tell exactly where the seating is positioned (i.e. a method three actuator) it can be possible to change the position at which the inhibit gets triggered.... (i.e. 'turtle' kicks in at 20* of tilt instead of 5*)
Note that our programmers actually don't change the running software, but instead only adjusts the variables that the software uses - a subtle difference, but one that actually makes it FAR easier to control the software...
ex-Gooserider
T-5, ASIA-B
Jazzy 1100
Jazzy Select 6
Quickie Q-7
Invacare Mariner
Want to make / get a better chair, ideally one that stands.