I dont usually (or ever) post on these forums so please bear with me. (bear.. RAWR)
anyway, I'm building a go kart, and as everything else, i love to over-complicate things. So what better way to overcomplicate them than making a traction control system for a go kart...(or any servo driven vehicle)
at this point, i should mention that the engine on the go-kart is gasoline and not electric...
Basically, its main function is a fly-by-wire system that controls the throttle of the engine based on an accelerator pedal that has a potentiometer on it. Then, i have toggle-able traction control that monitors each individual wheels' speed and can determine if a wheel is losing traction and from there drops the throttle until traction is regained and then resumes the previous throttle percentage. It has hardware support for an ABS and active traction control system but I am still working on the code to get it to work even if it works crudely.
During loss of traction with no ABS/Active TC, the throttle is lowered to regain traction.
During loss of traction WITH ABS/Active TC, an individual wheel's brake is applied to slow it down and distribute power to the other wheels. The throttle is lowered if needed.
-traction control can be toggled on or off with a button
-the idle throttle percentage can be set from the device itself without the need for a pc
-the accelerator pedal can be calibrated for min and max from the device without the need for a pc
-the inputs are averaged to smoothe the outputs
-interrupts are used on the wheel speed sensors to get accurate, instantaneous readings
-Hardware support for ABS/Active TC
-Digital IN: 1
-Digital OUT: 0 or 4 without ABS/Active TC
-Analog IN: 0 or 1 without ABS/Active TC
Here's a video: