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.

How to brake stepper motor immediately using DRV8821?

Other Parts Discussed in Thread: DRV8821, DRV8824EVM

Hello all,

I have controlled the NEMA8 stepper motor (0.6A /phase) using IC DRV8821. I am using Arduino Mega 2560 for control. But I don't know how to Brake the stepper immediately after working. Can everyone help me?

thanks and best regards!

  • Hi Quang

    You can directly stop your STEP pulse feeding to stop the stepper immediately if the speed is not so high and you don't mind a little step missing (actually over step). (The phase current should be kept on going during this process. This is an important factor to avoid voltage pumping. After the motor is totally stopped, you can remove the current if you don't need the holding torque). In this method, your stepper with this 0.6A current rating will not cause too much voltage pumping, you can test that easily.

    As the motor has its inertia, to avoid step over during the stopping, a common way is to build a decelerating curve to stop your motor. you can design a stop process with 300 to 500ms time from the max speed to zero with a linear decelerating rate. You can refer to our stepper driver EVM for the MCU firmware about this decelerating method, such as DRV8824EVM.

    Thanks.

    Wilson Zuo

    Motor Application Team

  • Dear Wilson Zuo,

    Thanks for your reply. In my post I meant that how can I "brake" stepper motor after stop it. Because when the motion is turned off, the stepper motor shaft becomes free to rotate. And I would like to creating a brake effect on the motor. Can I do it with DRV8821?

    Thanks.

    Quang Vuong

  • Hi Quang

    Of course you can have the holding torque ("brake") after stop the motor. You don't need to do anything after stop feeding the STEP pulse. Then the current in the motor windings will keep excitation, and the holding torque will be no dropping compare to running state and keep your motor "braking".

    If you want release the motor, just set xxRESETn to LOW. Then, all current through winding will be off.

    Also if you want to have lower current in holding state, you can lower the xxVREF to half after motor stopped, then you can have a half-current state which gives half holding torgue but much lower power consuming. 

    Thanks

    Wilson

  • Dear Wilson,

    Thank you very much for all your help. I have tried and it works very good like your help.

    Thanks again for your help!

    Best regards,

    Vuong