The GeckoMotorController is written in the software programming language known as "C". It uses quadrature encoded PWM 1 and runs one of the two CPUs that are subsystems of the GeckoSPIO.
Our seventh generation GeckoMotorController uses a proprietary self adaptive constant energy paradigm to achieve extraordinarily smooth acceleration and deceleration of GeckoSystems mobile service robots. A jerky and unpredictable robot can be both distracting and disturbing for people or animals who observe or interact with them.
The GeckoMotorController uses feedback from optical encoders to control wheel velocity. This technology leverages industry standard PID2 algorithms and combines them with novel subsumption techniques, creating smooth and precise control of all GeckoSystems locomotion systems.
GeckoMotorController's proprietary modifications of PID advanced motor control algorithms give the GeckoMotorController software subsystem the ability to compensate for things like small variences in roundness and circumference of wheels. The motor controller also eliminates the e lurching effect that occurs when a drive motor is slowed or accelerated quickly and improves battery life..
The advantage of GecoMotorController's AI controlled system is most evident at higher speeds due to integration with the GeckoImager sensor system. Top speed, turn entry and exit, and sudden stops are all coordinated by GeckoMotorController's intimate command of individual wheel velocities.
1 Pulse with modulation, - a technique that allows for electronic control over DC motor speed.
2 Proportional-integral-derivative, a control algorithm that enables the controller to maintain constant speed despite varying torque loads.