Electronic – arduino – What’s happening to the stepper motor at high RPM

arduinohigh speedstepper motorteensy

I am trying to get high RPM output from my stepper motor, but no matter what I try I can't get it to spin more than 65,000 steps/sec.

I have tried many combinations of settings, drivers, power supply, accelerations, etc but the motor just won't go above 65000 steps/sec. It works fine at up to 65000 steps/sec but as soon as I increase like even by a 1000 steps/sec the motor just stalls (stops spinning and starts vibrating between single steps.) The motor also stalls at high microstepping but same steps/sec. That is even at low RPM it can’t take more than 65000 steps/sec.

I am sure that this is not an acceleration issue, because acceleration of even 100000 steps/sec^2 works fine when the maximum steps/sec is 65000 or below. But when maximum steps/sec is 66000 motor stalls even if the acceleration is 5000 steps/sec^2.

Also, I have checked the output of the waveform generated by the microcontroller. The oscilloscope shows a 5.4us of positive cycle. Stepper drivers are edge triggered. So, I can get stepping frequency of 150Hz.

Microcontroller used – Teensy3.6

Stepping library used – TeensyStep (https://luni64.github.io/TeensyStep/index)

The combination of stepper motor, drivers and setting are listed in the table below:

(Power source used for the following testing is 24V 3A)

Stepper motor used:

1.

  • IMPULSE IM86HS78-5504X-07J
  • Resistance/Phase: 1.16ohm
  • Inductance/Phase:6.8mH
  • Stepper Online 23HS45-4204S
  • Resistance/Phase: 0.9ohm
  • Inductance/Phase: 3.8mH

Driver & Current Settings:

  1. TB6600 (4.0A)

  2. DM542 (4.2A)

Microstepping:

  • 3200
  • 6400
  • 12800

With the above mentioned motor, driver and microstepping I have tried all the combinations and the maximum steps/sec achievable was 65000.

I have also tried DRV8825 and A4988 with couple of other motors also and with different power supply, but I still got the same result.

All the testing has been done at zero load.

Summarizing:

I just can’t get my stepper motor to go beyond 65000 steps/sec with different motors, drivers, settings combination where controller is Teensy3.6 and library TeensyStep.

Best Answer

I have found the torque VS. speed chracteristics for one of your mototors.

You can see that using 36VDC supply and 4.1A per phase, this motor is usable until approx. 350 RPM. With lower voltage (24V) it's even less, approx 250 RPM. Speaking in pulses/sec for a number of 2000 microsteps per revolution, you see that at 40.000 pulses/sec it outputs very small torque. I guess that with 24VDC at 3200 microsteping and 65.000 pulse/s it stalls as you already discovered. So nothing wrong with your Teensy and your work.

enter image description here