JAJSKK9 November 2021 DRV8231A
PRODUCTION DATA
The microcontroller needs to decide whether or not the IPROPI signal indicates a motor stall. Large inrush current occurs during motor start up because motor speed is low. As the motor accelerates, the motor current drops to an average level because the back electromotive force (EMF) in the motor increases with speed. The inrush current should not be mistaken for a stall condition. One way to do this is for the microcontroller to ignore the IPROPI signal above the firmware stall threshold for the duration of the inrush current, tINRUSH, at startup. The tINRUSH timing should be determined experimentally because it depends on motor parameters, supply voltage, and mechanical load response times.
When a stall condition occurs, the motor current will increase from the average running current level because the back EMF is now 0 V. In some cases, it may be desirable to drive at the stall curent for some time in case the motor can clear the blockage on its own. This might be useful for an unintended stall or high-torque condition on the motor. In this case, the system designer can choose a long stall detection time, tSTALL, before the microcontroller decides to take action. In other cases, like end-stop detection, a faster response might be desired to reduce power or minimize strong motor torque on the gears or end-stop. This corresponds to setting a shorter tSTALL time in the microcontroller.
Figure 9-6 illustrates the tINRUSH and tSTALL timings and how they relate to the motor current waveform.