My customer is looking at using the DRV8813 or DRV8824 to drive stepper motors but needs to know when the motor stalls.
Does anyone know if that can be done?
Is done via monitoring the sense pin or other means?
Thank you,
Naji
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Detecting when a stepper motor stalls is a difficult thing to do reliably.
Monitoring the current (via Isense) does not help much - the driver is regulating the current, so it is nearly constant. There is a minuscule change in the shape of the current waveform when a stall happens, but it is very difficult to detect.
Stall detection is normally done by monitoring the back EMF generated by the motor winding, which can only be done when the winding is not being driven (zero current state). This method only works reliably when the motor is running at some speed, and encounters a hard stop; it is almost impossible to detect a stall if the motor is moving very slowly. Implementing this would require, for example, a microcontroller with an A/D converter to look at the back EMF during zero current.
Hi Pete,
My customer is looking to detect a hard stop.
My understanding of driving a bipolar stepper motor is that each winding is being driving in one phase or the opposite one at all times during movement. When will there be a period of zero current?
That is correct if the motor is being driven in full-step mode. If driven in half-step or finer degrees of microstepping, there is a state when each winding is undriven for a period of time. Essentially you are approximating sine and cosine waveshapes with the current - at the zero crossing is when you can sample the back EMF.