In our last blog I was about to call my local garage and make an appointment to have the 100,000 mile checkup which includes an oil change and replacement of the timing belt, among other things.
The “motion control engine” experts there recommended that I change the water pump too, since the labor costs to get to it are part of the timing belt costs. I think that was good advice and I went with it.
I remember going to another garage many years ago that had a “timing belt” special, which seemed like a cost effective choice at the time, but they didn’t recommend the water pump change and at that time I didn’t know better. Low and behold about 15,000 miles after the belt was changed the water pump started to fail and yup, we needed to do it all over again. I haven’t gone back to that garage since.
I think the bottom line of that story is to be open and do the best you can with what you do, whether it’s at an auto repair shop or a motion control blog or whatever.
In addition to my timing belt issues we were discussing an application where we used a motor that generated a “typical” torque of 75 oz-in at 3000 FS/sec at 3 amps. We de-rated it by 20 percent to 60 oz-in to compensate for motor-to-motor variations. And then we further de-rated it by setting the max current to 2 amps which should produce 40 oz-in ((2 amps/3 amps)* 60 oz-in = 40 oz-in) of torque, which of course is our design requirement. So we set our maximum current to 2 amps.
We also just redesigned our drive to have a “variable current mode” and we can improve on how it works. Instead of just raising the current when the rotor lags by one full step, we can vary the current to the motor’s winding based on how far the rotor is lagging behind the commanded step position. The larger the lag the more current is pumped into the winding to try to keep it from lagging more. It’s a linear relationship. If the rotor lags by ¼ of a full step then the winding current is approximately ¼ of 2 amps or ½ an amp. If it lags by ½ of a full step then the current is 1.0 amp. You get the picture.
This “variable current mode” is similar to what a servo motor system does. The servo motor amplifier pumps more current into the servo motor based on the error between the commanded position and the rotor’s actual position. Sounds familiar, but it’s a bit more complicated than that because there are the amplifier/controller tuning parameters that need to be set. Things like Proportional, Integral, Derivative (PID) values. Then there are other parameters like Feed Forward (FF), gain scheduling and, the one I like best, fuzzy logic (that’s the one I use most often when I have “discussions” with my wife.) All these parameters need to be set in order to get the servo system working properly. Our new stepper drive simply controls the current magnitude in proportion the rotor’s lag without any tuning. No PID or FF or whatever values to set. I like that. I like simple too.
Our new “variable current mode” stepper drive is a stepper drive with servo like current control. It’s like it’s a mix of both stepper and servo technologies, so let’s call it a “Hybrid” drive.
More design improvements next time.