Member-only story
An Arduino Nano Electronic Speed Controller (ESC) — Part 5
Excessive current will quickly destroy our ESC. The solution is to monitor the motor current. The obvious approach is to include a series shunt resistor in the motor windings path to ground. The voltage drop across the shunt resistor varies linearly with respect to the motor current (V = IR). By measuring the voltage across this resistor using an ADC or comparator, we can trigger auto-shutdown from the Arduino if an overcurrent situation occurs. We initially thought this would be a very straight forward part of the circuit — we were wrong (again)!
9.0 Motor Current Monitoring
Excessive current may happen in several ways, including:
- Exceeding a motors maximum torque loading will cause the motor to stall and generate maximum current through the stator windings. This may damage the motor or power stage.
- During a drone crash the motors may be damaged and the windings shorted to GND.
- MOSFET shoot-through or resonant oscillations can destroy the power stage transistors.
- Inrush current surges associated with Motor start up.
As mentioned in the preamble, one approach is to monitor the voltage across a shunt resistor. Note that the term “shunt resistor” is a misnomer in this application as a true shunt should be in parallel with the load, not in series. In electronics, a shunt is a device that creates a low-resistance path for electric current, to…