In our last posting we established a number of good things about stepper motors and their controls:
- Small changes in the winding current can be controlled by using bipolar chopper drive.
- Torque is in a fairly linear relationship with the winding current
- The motor can be micro-stepped to get finer position resolution.
- A stepper motor has only three moving parts.
- The rotor
- The front bearing
- The rear bearing
- Maybe a non-contact encoder disk
- Stepper motors are robust and are used in many motion control applications.
- Because of their simplistic design, steppers are the least expensive motion control solution for many applications.
- Stepper motors are brushless.
- The faster the step rate the lower the torque
- The maximum torque at any given speed that the motor can produce is when the rotor leads or lags the commanded position by one full step.
- The motor will stall if the error between the commanded position and the rotor position exceeds two full steps.
With the last item in the list, stalling, an item that caused some engineers not to consider a stepper system as a viable solution for their applications.
We have taken on the challenge to design a stepper system that keeps track of the rotor’s position and the commanded position and makes “adjustments” on the fly that will help prevent stalling.
The first thing we need to do is to chose a stepper motor that produces enough torque to move our load at the speeds that we want to move at. The whole motor sizing thing we’ll get into in later posts, but for now we’ll just make up some values.
Do you remember the speed-torque curves from a couple of postings ago?
Well here it is again to ease our discussion:
Let’s pick 40 oz-in of torque at a speed of 3000 full-steps/second.
This motor when powered with 12 VDC just makes the requirement, at 50 oz-in, but I always like to have at least 20 % more torque than we need because of manufacturing variations from motor-to-motor. And that would put us right at our 40 oz-in mark. That’s too close for me to be comfortable. Remember that the published speed-torque curves are almost always “typical.” (If I was using a “standard” stepper drive instead of our new design then I would bump that margin to 50 %.)
From our speed-torque curve the 48 VDC curve produces about 75 oz-in of torque at 3000 full-steps/second. Back off the 20% margin that I like to have and we have 60 oz-in available.
Note that at lower speeds the torque is even higher. This is a good thing and our new controller is going to take advantage of this fact later on.
Let’s assume that the motor is rated at 3 amps. At 3 amps the motor produces a “safe” 60 oz-in. Knowing that the torque has a “linear” relationship with current, then let’s set our current to (40oz-in requirement) / (60 oz-in available) = 2/3 of the rated current or 2 amps. Do you like the way the numbers worked out? I love high powered math!
The motor can take 3 amps but were going to start off pumping only 2 amps through it.
We get the torque we want in our move profile and the motor gets to run a bit cooler because it’s not running at its full rated current.
Hmmm, that’s an improvement right there, a cooler running motor.That saves on energy cost too.
Next posting we build our new control and machine and get to see what happens.