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.

DRV8825 problem during ENABLE toggling

Other Parts Discussed in Thread: DRV8825

Dear Sirs,

I have applied DRV8825 according to your recommendation presented in datasheet.
AVREF and BVREF were set to 1.65V and current sense resistors to 0,3ohm. VMA(VMB) voltage
was set to 22V. Controller is feeding by MCU so I'm able to set all control pins as I want.
I'm using 32 microstep mode during motor rotation and when I want to stop it I change it to
full step mode (to minimize noise).
In my application I have to release rotor from time to time, so I just set n_ENABLE pin high state.
When motor is disabled the rotor can be changed to other position by external mechanical forces.
When I want to back to active mode I just set n_ENABLE pin to low state to hold up the rotor (then STEP
input is low  - rotor should be stopped)
During this operation I noticed sudden rotor pull and the I see minimal rotor shift. I want to achieve soft turn
on/off operation without any  "sudden rotor pull".
Of course I tried to use nSLEEP and nRESET signals to enable and disable motor but almost always if
DRV8825 takes control over stepper motor I see sudden rotor stroke. As I mention I want to achieve soft
transition between changing these states.
Could you help me to find optimum turn on sequence (RESET, ENABLE, SLEEP pins or maybe other) which
guarantee delicate and soft motor enable. If it is possible?
I will be grateful for any comments.

Best regards,

Robert

  • Hi Robert

    RESET or re-ENABLE, or SLEEP and Wake up will all reset your current level to the "Home" state according the micro-stepping index table. But in practice you may stop at any point that is a non-Home state. So the sudden change of the current when restart from the HOME level causes the "sudden rotor pull".

    In order to avoid this issue, it is recommended that no changing to the RESET/ENABLE/SLEEP signals during the stop state by just stopping the STEP input feeding. If the holding current during the stopping time is too big, you can lower the VREFx to half of the normal value. (20%, 50%, 75% all are fine and commonly used depending on the holding torque requirement)

    Thanks.

  • Thank you for explanation. In other words, if I want to achieve low holding torque I should decrease VREFx, am I right? It is allowable to use extremely low VFEFx voltages - let say ~0,1V?  I suspect that current regulation accuracy will be affected, but I shouldn't be a problem for me, because I'm not going to rotate the motor in this state.
    Thank you.
    Robert

  • Hi Robert

    Yes. Decrease VREFx can achieve low holding current but no changing the proportion of the two phases.

    I think you'd better not lower the VREFx too such low because of two reasons. First the current regulation accuracy will be worse when the VREFx is very low. Second, even if the external load is very light, steppers still have magnetic detent torque, usually at least 20% of the MAX current should be applied to maintain the position accuracy during stopping state.

    Thanks.