If you backdrive a motor do you risk damaging the H bridge it is attached to? What considerations must be made if the motor has current running through it?

I will be using a PWM circuit to control an H bridge in conjunction with a current sensor. I plan on doing torque control while allowing the motor to be backdriven.

  • \$\begingroup\$ How do you intend to do torque control? \$\endgroup\$ Jan 25, 2022 at 4:27
  • 2
    \$\begingroup\$ Torque is proportional to current, \$\endgroup\$ Jan 25, 2022 at 4:51
  • \$\begingroup\$ Depends on your H-bridge? Say the motor is now generating a voltage higher than your power rails - what will your h- bridge do? Also if your h-bridge is trying to brake the motor then there’s power dissipation to consider. \$\endgroup\$
    – Kartman
    Jan 25, 2022 at 6:13
  • 1
    \$\begingroup\$ It is unclear what you mean by "back driving." Maybe this will help. There is forward motoring, forward regen, reverse motoring and reverse regen. All four are possible and none of them will damage the H-bridge if implemented correctly. Basically if the rotation and torque are in opposite directions (torque opposing rotation) then that is motoring. If the torque and rotation are in the same direction (also called overhauling) then that is regen. \$\endgroup\$
    – user57037
    Jan 25, 2022 at 8:16
  • 2
    \$\begingroup\$ In case of regen, there has to be somewhere for the energy to go, otherwise the DC-link voltage will rise. So I guess in that sense the H-bridge could be damaged if the voltage rises too high. One solution is to detect high voltage and disconnect the motor (let it freewheel). \$\endgroup\$
    – user57037
    Jan 25, 2022 at 8:24

2 Answers 2


If you forward-drive the motor while applying back-torque externally, it will generate a back-current in direction of the torque and in proportion to the work done by the external torque, overlaying the instantaneous forward drive current. If you apply enough back-torque, you will generate more energy than is dissipated in the motor DC resistance and will lead to a net backward current. Usually, this current cannot be sunk by your DC power supply used to power the H-Bridge. Therefore, the supply voltage will rise. If you suddenly stop a spinning motor, i.e. apply a short and very high back-torque, an equally short and massive current spike will transfer all of its rotational energy to become potential energy in the DC supply.

There are a few ways out of it:

  1. Provide a lot of bulk capacitance and allow the voltage to rise slowly. This works only if the generative operation is short.
  2. Add a shunt regulator, that sinks the excessive current into ground when a certain voltage is reached. This shunt regulator will be probably of switched type and will sink current into a power resistor. This is cheaper then dissipating the energy directly in a linearly-regulated shunt transistor.
  3. Only detect the overvoltage on the DC rail but don't dump it. Instead, disconnect it from the motor. The motor can either freewheel or low-side-brake leading to potential safety issues, due to the jerk.
  4. Use a DC supply that can sink current and allows backfeeding power to its inlet. This is used in controllers that have regenerative braking capabilities.
  • \$\begingroup\$ Hmm, I wonder if the PID loop would be able to resolve the issue automatically. Higher voltage-> more current ->change in duty cycle. Assuming the dynamics aren't too fast I think this should work. But it's probably a good idea to have a way to protect the battery from overvoltage. \$\endgroup\$ Jan 25, 2022 at 8:21
  • \$\begingroup\$ @mkeith if you continuously power the motor with a +48V forward voltage, but rotate it backwards externally, you do work against the driving force. Thus, you generate energy and because of which switches are on, this energy will flow back to the DC supply. \$\endgroup\$
    – tobalt
    Jan 25, 2022 at 8:27
  • \$\begingroup\$ @FourierFlux Higher voltage-> more current doesn't hold. Your motor isn't ohmic. Its instantaneous current will depend more on how it is spinning. Essentially it is a big inductor, and you can't instantly reverse current. During the PWM cycle, Volt*seconds give a better impression of the torque. \$\endgroup\$
    – tobalt
    Jan 25, 2022 at 8:28
  • \$\begingroup\$ I'm still not completely convinced as to what will happen current wise if you backdrive the powered motor. You're expensing energy as current flows in but restoring energy via the manual rotation. If the rotational speed is small your net current will still be in the direction of the voltage supply. I might be complete misinterpreting this though. \$\endgroup\$ Jan 25, 2022 at 8:38
  • \$\begingroup\$ @FourierFlux yes, for slow rotations, the current will remain forward and heat the DC resistance of the motor, dissipating the generated energy. If you apply a lot of external back-torque you will instantaneously generate a lot of back-current. I expanded this explanation in the answer above. \$\endgroup\$
    – tobalt
    Jan 25, 2022 at 8:41

Maybe this will help.

The MOTOR_EMF magnitude depends on the speed of the motor. The polarity of the EMF depends on the direction of rotation. We will say forward rotation causes positive EMF. The EMF ONLY depends on the motor rotation direction and speed.

The EMF is NOT the same as the V_EFFECTIVE. V_EFFECTIVE is controlled by the H-bridge and may also be either positive or negative independent of the EMF. MOTOR_R and MOTOR_L are motor parameters. The polarity of V_EFFECTIVE is determined by which elements of the H-bridge are active. The magnitude of V_EFFECTIVE is basically D * V_LINK where D is duty cycle and V_LINK is the DC-link voltage.

Motor torque can also be either positive or negative. The steady state torque is proportional to the current. Let's say positive current gives forward torque. In normal forward motoring operation, V_EFFECTIVE will be positive and higher than the EMF. Therefore current will flow into the motor and torque applied by the motor will be forward. A mechanical load of some sort must be connected to the motor to resist the forward rotation and absorb the power.

Normal forward regen would occur when the motor is spinning forward, and an external force is trying to make the motor spin even faster. In this case EMF and V_EFFECTIVE are the same polarity, but V_EFFECTIVE is slightly lower than the EMF, and so current flows out of the motor (the motor is a generator).

I guess what you are considering is what will happen if you command a positive torque, but an external force causes the motor to spin in reverse direction. This is not a problem conceptually, but it is a case of regen, because current will be flowing out of the motor. If your H-bridge DC-link is not capable of dissipating power, then the voltage will rise and could ultimately destroy the bridge.

You can add some kind of braking resistor to the DC-link, or you can detect when the voltage is too high and disable torque.


simulate this circuit – Schematic created using CircuitLab


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.