10A Motor Speed Controller by Alan Bond
10A SPEED CONTROLLER
This PICAXE based project was primarily designed for marine use in radio controlled model boats and supports batteries in the range 6v to 12v. It is a (relay) reversing type and includes a 5v BEC (battery eliminator circuit) to supply the receiver and rudder servo. Neutral (indicated by a red LED) is adjustable in the range 1.4mSec to 1.6mSec and has a small deadband to prevent 'creep'. The same circuit has been used with 30A automotive relays and better rated MOSFET, Schottky flyback diode and heatsinks for higher current applications, including driving an eight wheel drive featherweight robot.
To give the relay an easy life, when direction changes are commanded, the PWM drive shuts down briefly prior to the relay being operated and sufficient time is then allowed for the contacts to finish 'bouncing' prior to PWM drive being re-asserted. Manufacturers quote relay ratings for *switching* but in this design the motor current at the time of switching is zero, and the relay's *carrying* capacity is far greater than its "8A" label suggests. The above is substantially true in the case of marine applications where there is very little inertia in the drive train and a moving boat doesn't back-drive the propeller, however in robot type applications substantial dynamo action can occur which will result in the relay contacts having to switch high currents - so beware! Likewise the power dissipation in the Schottky flyback diode D1 would then need watching too.
A PICAXE 08M microcontroller processes the r/c speed demand input and sets up the appropriate PWM drive signal. The 'pwmout' is a very powerful command in PICAXE Basic, which once invoked runs in the background leaving the chip free to perform its other housekeeping tasks. This signal drives the power MOSFET directly and a *logic-level* N-Channel enhancement power MOSFET must be used if it is to be fully turned on by the 5v swing from the PICAXE chip. A 5v regulator chip performs the BEC function as well as powering the PICAXE chip and relay coil. With 6v users in mind the LM2940-5 low drop-out voltage regulator is specified so the circuit will work down to 5.5v input. Users of 8.4v and above have the option to use the cheaper LM7805 regulator which has a 3v drop-out. This circuit has also been used on 24v (fit higher voltage part for C1!) but the resulting power dissipation in the regulator required a larger heatsink.
Users should ensure that the boat motor is wired up in such a way that the relay is de-energised when the boat is travelling forwards - this minimises battery power consumption and power dissipation in the regulator. The relay is de-energised in neutral, but to prevent continual clicking if 'inching' the boat in reverse it remains energised when entering neutral (from reverse) for a period of four seconds.
A transistor buffer is used to condition the signal from the receiver. The output voltage swing of some receivers (especially 2.4Ghz types) has been found to be insufficient to trigger the PICAXE 08M (Schmitt Trigger type) input.
At power up, the speed controller remains disabled until the input demand is set to neutral (ie this condition must be met to 'arm' the controller). If no demand signal at all can be detected then the neutral LED will give a brief blink every 0.6 sec. If the demand signal is present but outside the neutral range the neutral LED will give a steady flash at about twice a second until the transmitter joystick is in the neutral position.
Once the controller has been 'armed' all subsequent input demands are checked to lie within the range 0.75mSec to 2.25mSec. If that condition is not met then the PWM drive is cancelled (stopping the motor). Again, if no demand signal at all can be detected then the neutral LED will give a brief blink every 0.6 sec. When the signal is re-established, ten succesive 'good' pulses must be received in order to re-assert the PWM (at the prevailing throttle setting).
No provision has been made for programming the PICAXE chip in situ, so this must be done elsewhere in a slave rig.
As can be seen from the pictures, the unit is easily constructed on stripboard and a 200mm servo lead is soldered in and strain-relieved with a tie-wrap to provide the input interface. The fuseholder is a lttle tricky to persuade into the stripboard and benefits from being secured with a little superglue as the blade fuses are (necessarily) a very tight fit and need some force to remove them. The thicker green tracks identified as 'high current' paths should have a bead of solder run along them to boost their current carrying capacity - otherwise the fine regions of track either side of the stripboard holes act as quite low current fuses!
All the parts are available from Technobots, as below:-
R1 - resistor 47k #2008-047
R2 - resistor 4k7 #2007-407
R3 - resistor 1M #2009-010
R4 - resistor 220R #2006-220
R5 - resistor 330R #2006-330
C1 - capacitor 1000uF 16v electrolytic #2017-010
C2 - capacitor 100nF ceramic disk #2013-100
C3 - capacitor 100nF ceramic disk #2013-100
Q1 - transistor BC337-16 #2300-412
Q2 - power MOSFET STP55NF06L #2300-856
Q3 - transistor BC337-16 #2300-412
U1 - integrated circuit PICAXE08M #3803-113 pre-programmed chip
U2 - 5v (low dropout) regulator LM2940-5 #2230-120
IC Socket for U1 #2700-008
D1 - schottky diode STPS1045D #2100-115
D2 - 1N4001 #2100-001 (pk of 5)
LED1 - 3mm light emitting diode, red - #2110-300
RV1 - preset potentiometer 4K7 #2000-405
RL1 - relay 8A DPCO pcb mounting #1601-023
SKT1 - 16A 2 way terminal block #1208-002
SKT2 - 16A 2 way terminal block #1208-002
FS1 - Mini Blade PCB Mounting Fuse Holder #1310-081
FS1 - 10A Mini Blade Fuse #1310-026
heatsinks TO220 PF750 x3 #2700-159
stripboard 95x64 #2700-110
200mm servo lead #3601-008
New Question or Review
- Albion Alloys
- Ansmann Racing UK Ltd
- Creative Robotics
- Draper Tools
- Silverline Tools
- Cana Kit
- Dimension Engineering
- MFA Como Drills
- Revolution (Picaxe)
- Robot Electronics