Sunday, January 27, 2013

ScooterPuter Integration

When I went to put everything together, the display code turned out to still hog too much latency and cpu.  So very quickly I found that I needed to lower the priority of the display code.

After that I tested the whole thing, and it did not have as much power as the old controller had.  The issue is that the PWM Amp would turn off fairly quickly at full power (i.e. before the scooter could even get up to speed).


I had selected 30a 24v dual half-bridge PWM Amp, which seems like plenty.  However 1st pass did not have enough power transferred to the motor.
Some measurements indicated that the motor was lower resistance than expected, and run at a much lower voltage than expected.  So 400w (the motor size) is 40a @ 10v, but 80a @ 5v for low speed operation (since back EMF raises the voltage).

Rewiring for second pass allowed contacts to touch causing 1 pwm amp to explode.  (audible pop, magic smoke escaped).  I realized I could use ½ bridge instead of full bridge to double the power, then add the third ½ bridge for 3x the current of the original system.   70a should allow for plenty of power


After everything worked there was still the issue of putting it all tightly together.  Although everything was tightly packed, there was so little space for wire bends that it created stress on the system.
System was sufficiently complicated that it took a couple of hours to remember what did what, so final packaging awaits more time.


Result
Latency (caused by display) stays under 100ms in all cases.  This limits ability for digital current limiting, but the PWM Amp is supposed to do this anyway.  To limit current, I added software smoothing of voltage command.  This caused smoother accelerations and limited large current surges.


No comments:

Post a Comment