DC Motor Control
Topic: DC Motor Control
(Read 2 times)
Location: United Kingdom
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
Re: DC Motor Control
Apr 30, 2012, 10:40 am
There are a few possibilities:
1. Use a transistor to monitor the current and reduce the gate drive to the mosfet as necessary. Then you don't need the power resistors (apart from a current sense resistor), however it is then the mosfet that has to dissipate the power. So it will need a good heatsink. The attached schematic uses a 0.1 ohm current sense resistor, available from Farnell
, to limit the current to around 6.5A (the transistor will conduct when its base-emitter voltage reaches around 0.65v).
2. As (1) but also detect when current limiting is occurring using an Arduino input, and use it to reduce the PWM factor. The mosfet will then only be dissipating much power for short periods, so a smaller heatsink will suffice - as long as the Arduino software is working correctly.
3. Active current limiting in hardware. You can sense the current in a series resistor and when it reaches the limit, turn off the mosfet for the remainder of the current PWM cycle. The simplest circuit I have managed to come up with for this uses a comparator, a 74HC00 logic gate package, and a few resistors.
Formal verification of safety-critical software, software development, and electronic design and prototyping. See
. Please do not ask for unpaid help via PM, use the forum.