Jump to content
OMRON Forums

PID Sinusodial move


Recommended Posts

Dear sir,

my application-- movement is ball screw feed, driven by AC servo motor, and a linear encoder of 10nm resolution is integrated into the closed-loop feedback.

I want to improve the effect of sinusoidal move via adjusting the pid parameters.


Step tuning


Kp is just 80.


Parabolic tuning


the entire following error is big, especially on the motor’s directions reversals


Sinusodial tuning


the following error is so bad on the motor’s directions reversals.



can i improve the situation using PMAC,or should i improve the mechanical structure.

can any one spare me a help?



Link to comment
Share on other sites

  • Replies 3
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images



1. What is the pitch of the ballscrew?


2. What type of coupling are you using to couple the motor to the ballscrew? Steel-bellow anti-windup type (servo coupling) is preferred.


3. What bearing type are you using for your stage (exp: cross-roller or re-circulating truck/rail)?


4. What is the physical relationship (distance) between your brushless motor and the 10nm external encoder?


5. Using a 10nm resolution linear encoder with a rotary motor/ballscrew drive is not a trivial task. Typically, with feedback resolutions less than 1 micron, linear motors are the preferred method.


6. Does your brushless motor have a rotary encoder? If so, what is the resolution? For your application, dual encoder feedback is most likely the only way to get the performance you need. You could use the rotary encoder (with highest resolution possible) for your velocity feedback loop and the 10nm encoder for your position feedback loop.



Link to comment
Share on other sites

From the response curves it is impossible to tell just how good you can get, but I can tell you a) your Ixx30 can be raised to increase bandwidth, I see no evidence that you are near instability. Raise Ixx30 until you get just a bit of overshoot in your step response. Your Ixx34 should be set to 0 instead of 1 so that the integrator is working all of the time. You may also try raising Ixx33. This will also help with the low frequency tracking that the sinusoid in your test requires.


From the curves it seems that mechanical friction is getting in your way and that the servo gain is simply not high enough. The adjustments I suggest will help.


I would expect that you should be able to get the tracking error to less than +/- 50 counts (+/- 500 nanometers) even with mediocre mechanics. If you are hoping for much, much better than that then there is no way to answer the question without knowing more about your machine.

Link to comment
Share on other sites

Looking at the step response, your step move is ~0.25mm (10nm res?). What happens when you try to perform a larger step (say 1mm)?


If you can provided more information (see my previous post) this would be helpful to understand the limitations of your mechanics.



Link to comment
Share on other sites

This topic is now closed to further replies.

  • Create New...