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.

DRV8889-Q1: Stall Detection problem

Part Number: DRV8889-Q1

Tool/software:

Hi motor driver expert,

Due to last minute mechanical design change, customer needs to use stall detection feature to achieve their desired function.  Customer followed the user guide and did some tests as described as below but not successful.  Attached please find the motor spec and quick description of the situations.  

 

Self-learning mode testing. Customer did 3 tests (no load & load with different speed)

No load with target speed 10,000:  The Motor can run but cannot reach target speed.  After a short period of time, it’ll trigger the stall fault without applying external resistance and then stops.  Stall detection alert is being triggered.

Load with target speed 10,000:  The motor can run at the target speed.  When applying the external resistance to make it stop…. There isn’t any stall detection alert and motor just stopped after releasing the resistance

Load with target speed 1,000: The motor can run at target speed.  When applying the resistance to stop the motor.  There isn’t any stall detection alert, but the motor can spin again when removing the external resisitance.

Manual setting test 

With the stall threshold being set manually, “Start Steps” to run the motor at target speed and then apply an external force to stall the motor for a period of time and release the resistance… at that point, the motor is still in a stall condition and didn’t report stall fault alert.   Click “Stop steps”  and then click “Start steps”, the motor start running again.  By right the motor should re-spin by itself if external resistance is gone, right?

 

 

Screen snapshot and steps based on DRV8889EVM regarding the self-learning mode test as follow:

 

From screen snapshots above showing self-learning is completed.

Test 1: target speed 10000, no load condition. 

Customer started the motor, but cannot reach target speed and stop after a while.  Stall alert detected.  

Customer turn off “Driver Outputs”, clicked clear Error Status button, the stall fault can be cleared as show in below figure.

 

 

 

Enabling the Driver Output again, and click “Start steps”, the motor starts to spin again, but without applying external resistance, the motor stopped by itself for just a short time, reported a stall condition as shown in the following figure:

 

 

 

 

 Repeat above for different target speeds.  Customer got different results as described as follow.

 Test 2: target speed 10000, with load condition

Customer started the motor, and the motor can reach target speed.  However, no stall alert when applying external resistance to stop the motor.  And the motor cannot be run after removing the resistance

Test 3: target speed 1000, with load condition

Customer started the motor, and the motor can reach target speed.  However, no stall alert when applying external resistance to stop the motor.  But the motor can re-spin after removing the resistance

 

Motor Spec

  • Hi Stanley,

    Thanks for the post.

    1) The Full-scale current setting of 0.1 A is too low for reliable stepper operation as well as proper stall detection. The stepper motor specification is 200mA / phase. I'd recommend to increase the current setting to 0.2A. 

    2) At 1/8 Steps 10000 PPS step rate may be too high for 12V VM. I'm assuming the VM voltage for this application is 12V. Could you please get the current waveform capture with an oscilloscope and a current probe with this setting?

    3) For 10000PPS I suggest to increase the acceleration rate to 5000 or higher.

    4) For tiny stepper motors it would be better to avoid stall learning and use manual stall threshold mode. Set the stall threshold to about 30 to 50 % of the torque count value observed when motor is running with no load. This approach would improve stall detection reliability. 

    Regards, Murugavel