Jump to content
OMRON Forums

PID Sinusodial move


wxswxs1987

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

1.thumb.JPG.4e6291651a384dc6b5fb3035fa30f565.JPG

Kp is just 80.

 

Parabolic tuning

2-333.thumb.JPG.a742e343d6c1e110a3764b00db4574e1.JPG

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

 

Sinusodial tuning

3-1.thumb.JPG.db888d28635c6752be76e3ab8d4d186e.JPG

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?

 

3q

Link to comment
Share on other sites

  • Replies 3
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

wxswxs1987,

 

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.

 

-Chris

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.

 

-Chris

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.

×
×
  • Create New...