Skip to main content
Submitted by richfolk on Tue, 08/01/2000 - 19:11

Hello,
I am trying to tune a velocity controled spindle drive, and I am having some problems. I am using your Servo Design Kit software package. The problem is that the spindle motor does not develop a constant torque until it reaches about 200 rpm. Below this speed, there is not a lot of control possible simply because of the style of the motor. The tuning methods that I have tried in the SDK all want to move the motor a little bit in either direction and never let it reach any significant speed. All of the PID values these tuning methods generate are esentialy useless. is there a tuning method that will let the motor run faster?
Also, am I supposed to stop all programs running on the controler before I initiate these tuning methods? I have some programs that need to run on the galil that turn on the motor and turn off the motor during certain conditions. When I ran the tuning methods I often found that the thread that was running this program had stoped.
Another issue I am uncertain about is that the spindle drive is getting a velocity feedback from a tachometer and a armature current feedback from a current sensor. Within the drive there is a PI filter. Is having a PI filter in the drive and a PID filter in the controler going to give unpredictable problems?

Am I going to have to dig out my Laplace transforms?

Thank You
Richard Foulkes

Comments 2

YanjieS on 08/02/2000 - 08:26

Since the auto-tuning methods in WSDK are based on a ideal 2nd order model, and they are designed for position control purpose, when performing them, the algorithm will not run the motor at high speed, instead, it performs step responses or frequency tests to find good filter values. It seems that these methods are not appropriate for your application. If so, you may need to do some manual tuning.

While performing auto-tuning, any program running in any thread in the controller is aborted.

RoyCarlson3 on 04/19/2001 - 19:54

Here are a few "longshot" ideas...

(1)Allow one of the auto-tuning programs to load and then capture it and run it in a thread with your other Galil threads -- of course you'll have to decifer its calculations (something I've never been able to accomplish).

(2)Customize the tuning "step" moves to be REALLY large -- maybe that would get you up to speed.

(3)Use multiple PID settings...I once used a Galil controller for spin-balancing tire & wheel assemblies. We had to use three sets of PID parameters: one for spin-up/spin-down, one for short moves (less than 180 degrees), one to hold the (stopped) spindle still (without buzzing). Switching back and forth was a drag, but I think Galil now provides special commands to quickly switch PID constants.

Good luck.