Nema 23 stepper motor run slowly and stuck at high speed

Thread Starter

burnley1

Joined Nov 24, 2015
4
Hello everyone!
I have a question about RPMs of stepper motors.


I have a kit from Longs motor: Nema 23 425oz motors, 350W 36Vpower supply and DMA542A microstep driver
[URL='http://www.longs-motor.com/productinfo/detail_12_86_173.aspx']http://www.longs-motor.com/productin...12_86_173.aspx[/url]


I can get only like 240rpms with my Nema 23425oz, If i go faster (with Arduino), the motor just stops and produces strange noises (high pitch noises, but it doesnt move) and vibrations. What to do? All the thing is with no load on the motor shaft.,


Can u please help me what to do?


Best regards
Matic
 

nerdegutta

Joined Dec 15, 2009
2,676
Sounds like you try to drive your motor at a higher step rate than it can handle.

What have you done troubleshoot?

What does your code look like?

How about a schematic diagram, to show your connections?
 

MaxHeadRoom

Joined Jul 18, 2013
20,866
The torque is reduced in the micro stepping mode, if you try to supply too high a step rate you run into loss of torque at high rpm.
Max.
 

MrSoftware

Joined Oct 29, 2013
1,805
Check the stepper controller to see if you can adjust the ramp up speed. If you go from zero to full speed instantly on a stepper and the first step doesn't have enough torque to overcome the combined moment of inertia of the load and the motor itself, the stepper will just sit there and buzz. You have to start the steps slower and build up to full speed. The rate at which you can build speed depends on the combined inertia of the motor rotor and the load. For a motor by itself you will be able to speed up very quickly, but with some motors you cannot go from zero to full speed instantly.

It also depends a lot on your motor driver. You might need a stepper controller that can output more power; higher voltage and more current. Steppers will have a maximum usable speed, but not enough power can move that limit lower.

Microstepping can really smooth things out, but you have less and less torque as you step between full steps, with the least torque when you're half way between 2 steps. My advice is first get it working with full steps. It might be clunky and noisy, but get it working. Then add in microsteps to smooth it out and make it quiet. If you're moving something that has a lot of inertia, microsteps might help you get it moving.

This controller is based on a chip that I've used before with success, and an arduino library is linked from the product description:

http://www.kr4.us/Dual-L6470-Stepper-motor-controller.html

Here's a HowTo with some example arduino source:

http://play.karlssonrobotics.com/tutorials/stepper-motors/using-l6470-dual-stepper-controller/

PS-> When you stop your stepper, be sure you're aware of which mode you put your stepper controller in. If you lock the stepper electrically, the stepper controller will be delivering a lot of current and will get hot. If you need to use this feature, you might need to heat sink the stepper controller chip.
 

Thread Starter

burnley1

Joined Nov 24, 2015
4
Thank you all for your time for answering.
The code from Arduino is:

void loop()
{
digitalWrite(steppin, LOW);
delayMicroseconds(del);
digitalWrite(steppin, HIGH);
}

I think i cant do a fullsteps, because of that table, check it out:

I can only do a half steps right? I also tried the setting of ON ON ON ON switches but its really precious, much more than halfstep.

The wiring picture is in attachment

I will try it to accelerate the motor speed from 0 to something.
But I got all the parts in kit complete from seller, that is so wrong eh?
 

Attachments

shortbus

Joined Sep 30, 2009
7,753
Do you have the driver set at the correct amperage setting for your motor?
What switches are you setting to the "ON ON ON ON"?
 

Thread Starter

burnley1

Joined Nov 24, 2015
4
Yes, the motors current is 3A from specs. And the set current is 3A RMS so the setting is OFF OFF OFF on the SW1 SW2 and SW3.

I tried to run the motor while set the last four switches (SW5, SW6, SW7, SW8) to ON ON ON ON because i though that would be maybe fullstep option but its not. I have set on the OFF ON ON ON (on last 4 switches) then for halfstep operation..
 

MrSoftware

Joined Oct 29, 2013
1,805
If it came as a kit, ask the seller for their recommended settings for that motor/controller pair, that's the easiest way to start. Figure out how many steps-per-revolution your motor is and set the controller to match as a starting point.
 

shortbus

Joined Sep 30, 2009
7,753
Yes, the motors current is 3A from specs. And the set current is 3A RMS so the setting is OFF OFF OFF on the SW1 SW2 and SW3.

I tried to run the motor while set the last four switches (SW5, SW6, SW7, SW8) to ON ON ON ON because i though that would be maybe fullstep option but its not. I have set on the OFF ON ON ON (on last 4 switches) then for halfstep operation..
What is switch 4 set at? This driver will only go as low as 1/2 steps. The pulse/rev table shows the number of pulses to make one revolution.
 

Thread Starter

burnley1

Joined Nov 24, 2015
4
I tried to set the SW4 to ON and OFF so there is no difference of rpm that the motor can handle if its ON of OFF the fourth switch..
 

BR-549

Joined Sep 22, 2013
4,938
I would give the motor something to do(load). Something for the controller to work against.

Is the effect the same under moderate load?
 

Papabravo

Joined Feb 24, 2006
13,910
Hello everyone!
I have a question about RPMs of stepper motors.


I have a kit from Longs motor: Nema 23 425oz motors, 350W 36Vpower supply and DMA542A microstep driver
http://www.longs-motor.com/productin...12_86_173.aspx'][URL='http://www.longs-motor.com/productinfo/detail_12_86_173.aspx']http://www.longs-motor.com/productin...12_86_173.aspx[/url]


I can get only like 240rpms with my Nema 23425oz, If i go faster (with Arduino), the motor just stops and produces strange noises (high pitch noises, but it doesnt move) and vibrations. What to do? All the thing is with no load on the motor shaft.,


Can u please help me what to do?


Best regards
Matic
The electro-mechanical system of a stepper motor has two resonance speeds. The lower frequency one is the mechanical one and occurs between typically 200-500 steps per second. If you try to run from a dead stop anywhere in this zone you get the behavior you describe. The only way to avoid the resonance region is to use a trapezoidal velocity profile. You make the velocity follow a linear ramp up to the desired running speed, you run at constant speed and then you ramp the velocity down to zero.

The second resonance occurs at a higher frequency, and this is the electrical resonance which occurs in the neighborhood of 2000 steps per second. You can raise that value to around 5000 steps per second by using a bi-level supply. In this method you use two supply voltages with the higher one greater than the lower one by a factor of 5. When a phase is first energized it sees the 5x voltage. As the current in the phase rises to the holding current you witch to the lower voltage. When you switch a phase off you have a "catch" circuit to absorb the flyback voltage to help hold the 5x voltage from sagging.

Don't know if your controller has the flexibility, but that is what you have to do,
 

MisterBill2

Joined Jan 23, 2018
6,286
There is a definite upper speed limit for stepper motors and it appears that you have tried to exceed it. That limit should be available in the manufacturer's literature. The one way to get a higher speed is to increase the supply voltage and add series resistors to limit the current. It works but the efficiency is very poor.
 

atferrari

Joined Jan 6, 2004
4,003
The electro-mechanical system of a stepper motor has two resonance speeds. The lower frequency one is the mechanical one and occurs between typically 200-500 steps per second. If you try to run from a dead stop anywhere in this zone you get the behavior you describe. The only way to avoid the resonance region is to use a trapezoidal velocity profile. You make the velocity follow a linear ramp up to the desired running speed, you run at constant speed and then you ramp the velocity down to zero.

The second resonance occurs at a higher frequency, and this is the electrical resonance which occurs in the neighborhood of 2000 steps per second. You can raise that value to around 5000 steps per second by using a bi-level supply. In this method you use two supply voltages with the higher one greater than the lower one by a factor of 5. When a phase is first energized it sees the 5x voltage. As the current in the phase rises to the holding current you witch to the lower voltage. When you switch a phase off you have a "catch" circuit to absorb the flyback voltage to help hold the 5x voltage from sagging.

Don't know if your controller has the flexibility, but that is what you have to do,
Hola @Papabravo

First time I hear of two different frequencies of resonance!

Worked extensively with typical steppers retrieved from printers and disk drivers but never experienced the second one you mention.

Had I been using a not high enough speed so I did not reach it?

Interested.
 

Papabravo

Joined Feb 24, 2006
13,910
Hola @Papabravo

First time I hear of two different frequencies of resonance!

Worked extensively with typical steppers retrieved from printers and disk drivers but never experienced the second one you mention.

Had I been using a not high enough speed so I did not reach it?

Interested.
I think so. We were interested in exploring how fast we could make a stepper motor go. As you know the torque developed is proportional to the current in a phase, and there is an inverse relationship between torque and speed. The faster you go the less torque there is to go faster. The current in a phase is governed by the L/R time constant. For a given inductance you can increase the R to reduce the time constant and so you increase the voltage and increase the R to get a smaller time constant but waste enormous amounts of energy in 100 Watt resistors. So we asked what would happen if we turned on a phase with a 40V supply and switched to an 8V supply as the current reached about 80% of its holding value. This moved the zero torque speed from about 2000 steps per second to almost 5000 steps per second. We still had to ramp the velocity up and down to avoid the mechanical resonance, but the increase in top speed was well worth the effort to build the two level motor supply.
 

atferrari

Joined Jan 6, 2004
4,003
So we asked what would happen if we turned on a phase with a 40V supply and switched to an 8V supply as the current reached about 80% of its holding value. This moved the zero torque speed from about 2000 steps per second to almost 5000 steps per second. We still had to ramp the velocity up and down to avoid the mechanical resonance, but the increase in top speed was well worth the effort to build the two level motor supply.
Sorry @Papabravo, could you show a time diagram, even if simple, to be sure I understood you? The switching to 8V does happen during the step for each phase, right? At a very high speed I think.

Does it imply a kickback that you need to protect the circuit from?
 

Papabravo

Joined Feb 24, 2006
13,910
The switching from +HV(40) to +LV(8) happens shortly after the phase sees the +HV to turn it on. The di/dt is reduced in magnitude and there is no kickback here because the +LV supply has way more current capacity than the +HV supply. The kickback occurs when the phase is turned off. It has a magnitude of perhaps +80V or so that is used to charge a capacitor whose other side is connected to the +HV supply, helping to hold it up.

Better than a timing diagram I might be able to make a schematic from the hand drawing: would that be helpful?
 

MaxHeadRoom

Joined Jul 18, 2013
20,866
The one way to get a higher speed is to increase the supply voltage and add series resistors to limit the current. It works but the efficiency is very poor.
With modern stepper motor controllers that use PWM, a resistor has not been used for some time now, the drive is fed from a much higher voltage than the stepper rated value, and the drive monitors and maintains the rated plate current as the rpm/inductive reactance increases.
See the Gecko drive site for e.g. for info.
Max,
 
Last edited:

MisterBill2

Joined Jan 23, 2018
6,286
With modern stepper motor controllers that use PWM, a resistor has not been used for some time now, the drive is fed from a much higher voltage than the stepper rated value, and the drive monitors and maintains the rated plate current as the rpm/inductive reactance increases.
See the Gecko drive site for e.g. for info.
Max,
Yes Max, modern PWM systems can do a lot of wonderful things. But the math is more complex to explain than the RL time constant approach. You are totally welcome to derive the explanation for the PWM method for us all to see.
 
Top