How can I detect when a stepper motor has stalled?
A google search led me to some people who say that when the stepper motor stalls, the current spikes up, which is easily detectable with a Hall sensor. (Or, I suppose, by any of the other current sensors mentioned at "How can I sense the motor's current?" ).
However, I measured the current through (one of the 4 wires of) my stepper motor, and it's always within a few percent of 0.5 A, whether my stepper driver is holding one position, moving it normally (which in my application is very slowly), or the stepper driver thinks it is telling the stepper to move normally, but the motor has pegged out against the hard limit. Measuring the current in the +12V power supply going to the stepper motor driver, also seemed to give a fairly constant current. This may be because I turned down the current limit to that amount on my "chopper" stepper motor driver.
Am I missing some key detail in the "measure the current" approach?
A google search led me to some other people that measure the back-EMF (BEMF) in one coil of the stepper during the time the stepper driver is only driving the other coil. But that only seems to distinguish between "a motor moving quickly" vs "a motor stopped", and doesn't seem to distinguish between my case of "a motor moving slowly" vs "a motor stopped".
Is there some way to apply the BEMF approach even in a system where I always drive the stepper slowly, and never spin it quickly?
I'm currently using a stepper driver board with the TI DRV8825 chip on it, and I hoped the "fault" pin would tell me when the stepper motor has stalled against my hard stop. But it doesn't seem to be doing anything -- is it supposed to tell me about a stall, but I just have it wired up wrong?
Is there some other chip or drive technique that detects when the stepper has stalled out against the hard stop?
Is there some other technique for detecting a hard stall that I can "add on" to a system using an off-the-shelf stepper motor driver?
(Is there some other StackExchange site that is more appropriate for questions about motors and motor drivers?)