Limiting PID Loop Overshoot

With my servos there is no integrator windup. In fact, when one of my position servos gets a step command, the integrator immediately tells the motor to back up. That's because the difference between the actual position and the desired one is great enough to saturate the output. The bound circuit (or software module) doesn't let that happen. The output amplifier is held at the edge of saturation by forcing the integrator so that its sum with unconstrained error and derivative are appropriate. As the load accelerates, the derivative increases and the error decreases, so the integrator has less excess drive to overcome. When the error becomes small, the residual on the integrator along with the derivative, brake the load. Once into the proportional band, the integrator charges just enough to hold the load in place. Everything Peter and Tim say about the similarity of I-PD and PID (except for the integrator's appropriate time constant) is valid in the linear region (proportional band). The difference in behavior lies in how the system behaves outside that band.

Jerry

Reply to
Jerry Avins
Loading thread data ...

We agree here but.....

I disagree here. Given a simple system with a transfer function 1/(s+1). I want a crtically damped response ( no overshoot ) with the closed loop poles at -1. The required PI gains are Ki = 1 and Kp = 1. Now how would derivative this system from overshooting? A type 0 single pole system doesn't even need a derivative gain or phase lead to keep from over shooting. If this system was over shooting it would be only because the proper values of Ki andKp were not selected.

BTW, this is a trick example. I chose it because it proves two points and is simple enough where the results can be verified by hand or graphed using Excel. This system does not overshoot in response to a step as Jerry claims it must do. Try it! No fancy limiting is required in fact no limiting is required at all. I can send Tim the .mcd for him to verify if you don't believe me. However, the trick is that the closed loop poles can't be farther to the left than the open loop pole. If they are then what Jerry sayes is true and I don't see how any amount of phase lead will fix the overshoot.

Jerry, I think you need to rephrase your statement about overshooting to 'may or probably will overshoot but it isn't certain. I don't know where you get that 11% overshoot number. Someone must have tried ONE example and the overshoot was 11%. I can get the overshoot to be more by increasing the ratio of the close loop to the open loop pole locations. A ratio .5/1 to 1/1 is the sweet spot. Over one to one the system overshoots. Below .5 to one the system has a non-minimum phase response. At least for type 0 single pole systems.

Peter Nachtwey

Reply to
Peter Nachtwey

Oops, left out a work. It should read .. Now how would derivative KEEP this system from overshooting?

Reply to
Peter Nachtwey

...

I had in mind a second-order system in the classical configuration trimmed for "critical damping" (a term which, given the overshoot, is less than ideal) without the fixes that we have all learned to apply.

Jerry

Reply to
Jerry Avins

There's your problem - you have no limiting effect on bandwidth - that's why you can get away with all these ideas. In a real electro mechanical servo there is a structural resonance(s) that limit the bandwidth. The book always leave this out. Even with pure electronic systems we have high freq poels that limit bandwidth.

Tam

Reply to
Entropy

HA! Read _my_ book -- while I can't claim that I really pounded it home (wait for the 2nd-edition, and thanks for making me look) I do mention bandwidth limitations, and ultimate limitations due to plant design.

I'm not sure if you're too focused on your phase properties, or if you haven't thought it through, but a 'conventional' PID with all three terms in the forward path will always overshoot, because of the zeros in the transfer function. Forget any claims of re-tuning -- just remember that any undershoot before zero error is reached must be paid for with exactly the same area of overshoot.

As the group has so excellently pointed out, in a linear system you can fix this by having only the integrator in the forward path, which removes those untoward zeros from the (s-domain) transfer function. This still leaves you with overshoot for large excursions and for overshoot as a result of disturbances -- both of these can be controlled to some degree or another by clever methods of limiting windup, which is what I thought I was asking for when I wrote the post.

Reply to
Tim Wescott

Second order systems don't need to overshoot either. I have another example using Jerry's second order system and critical damping. I chose another simple text book example:

T(s)=1/(s^2+s+1)

G=1.0 Omega=1.0 Zeta=0.5

I want no overshoot so I want a critically damped response with the 3 closed loop poles at .577 or omega/sqrt(3). My resulting gains are Ki=0.192, Kp=0.0 and Kd=0.732

Try it. This closed loop system will not over shoot even if there is no integrator limiting. BTW, the range for the closed loop poles is omega/sqrt(3) to sqrt((1+zeta*G)/3)*omega. Again, I can send Tim the .mcd files to verify this.

The key is that the integrator must not wind up to or beyond the required steady state output before the error is reduced to 0. Duh. This is easy to do with type 0 systems. Type 1 systems are more difficult to keep from overshooting but it is possible to do with the right limiting techniques that meet this requirement.

Peter Nachtwey

Reply to
Peter Nachtwey

For a PID and an integrating plant (ignoring the differentiator pole) you only get the above transfer function if you put the integrator only in the forward path, and restrict the proportional and differential terms to the feedback path. Not that this is a bad way to go -- if eliminating overshoot is a prime consideration then this would be the bee's knees.

Reply to
Tim Wescott

How do you make a position servo with no overshoot and very little mechanical friction?

Jerry

Reply to
Jerry Avins

Yes, but there are integrator limit techniques that allow the P and D gains in the forward path. One must make sure that

  1. the system is critically or over damped.
  2. the integrator does not wind up to or beyond the set point before the error is reduced to 0.

This applies to type 1 or integrating systems as well.

Peter Nachtwey

Reply to
Peter Nachtwey

I don't understand. I would say 1/(s+1) has a pretty limited bandwidth. It is MUCH less than 1 kHz. Tam, you have not made it clear by what you mean by adding phase lead. Do you mean adding a derivative term in the forward path?

Peter Nachtwey

Reply to
Peter Nachtwey

That is what the derivative and higher derivatives gains are for. Feed forwards also help. My company makes hydraulic motion controllers. We can easily control servo motors too. A hydraulic system is basically a mass between two springs so it is a second order under damped system. if the valve is ignored. Our controllers are used to control second order systems with very low damping factors all the time.

One of my test systems is a motor with a disk to provide inertia. It's rotational velocity transfer function is approximately 60/(s+1) were the 60 represents the gain in (radians/second) volt. There is no friction except that of the motor. This should be simple for most motion controllers to control without overshooting. Acceleration and deceleration is limited by the amplifiers.

Peter Nachtwey

Reply to
Peter Nachtwey

You do better than most textbooks, that's for sure. I'm pretty much out of date, but I don't now anything off the shelf called "PID" that can do that.

Jerry

Reply to
Jerry Avins

:)

Reply to
Peter Nachtwey

Ok what I mean is that the transfer function you have is un-realistic. Here is a better one

1/(s+1). G2(s)

where G2(s)=wn^2/(s^2+2.zeta.wn.s+wn^2)

at least this is a simplified model. A first order in cascade with a second order where zeta

Reply to
Entropy

Tam, your new plant has 3 poles. So how do you place the poles with your simple lead-lag controller? You keep saying the same thing over and over but saying the same thing over and over doesn't make it so. Show me a close loop transfer function that can be verified. In any case you are changing the topic which is about integrator limiting. My threads were just to refute the statement that traditional integrators always cause the PV to over shoot the SP. I have shown this isn't necessarily so with type 0 plants.

The closed loop poles can be placed to there is no overshoot even without a integrator limit. The controller is a PID with an extra higher order derivative gain.

For your plant I assume G=1 omega = 1 zeta=.5 alpha=1 The real pole

My desired response has four real poles at -0.63 and it critically damped.

My gains are Ki = 0.157 Kp=0 Kd=.381 Kdd=.52

Tam, now it is your turn to provide your proof.

Peter Nachtwey

Reply to
Peter Nachtwey

Doesn't mean anything - what is your BANDWIDTH!!? We can easily get a greta response if you have very little bandwidth.

Who says I am using a lead-lag controller? For your plant I would use the following

(1+sT1)/s - that's what you would call PI I think using your terminology.

Then I would add a second integrator making the system unstable. I would add a lead to stabilise this out but would have to be careful of the resonance.We also have to maximise the bandwith without letting the resonant peak show through.

So we have

(1+sT1)/s^2.(1+sT3)/(1+sT4)

However, I would probably add a second phase advance. To see what's going on you must draw a Bode Plot. All this time domain stuff and placing poles is crap - you have no concept of bandwidth. The basic Bode Plot will have a -12dB/octave roll off then -6dB/Octave then -12 then the resonance with teh peak at least 6dB down below 6dB.I mean this is basic stuff why the mystery? Every disk-drive in the world is controlled this way.It is true that there is an effect you can get from integrators which I believe you call wind-up. I get around this by putting diodes back to back around the integrators (or several as the case may be).You can do the same in software.

Now, this PID stuff is crap, it's for amateurs who cannot draw a Bode Plot and don't understand phase-margins.In some large plants this is quite hard to do and the PID methods are best however but not for let's say basic speed controllers and position servos.

Tam

Reply to
Shredni Vashter

| > The closed loop poles can be placed to there is no overshoot even | > without a integrator limit. The controller is a PID with an extra | > higher order derivative gain. | >

| > For your plant I assume | > G=1 | > omega = 1 | > zeta=.5 | > alpha=1 The real pole | >

| > My desired response has four real poles at -0.63 and it critically | > damped. | >

| | Doesn't mean anything - what is your BANDWIDTH!!? We can easily get a greta | response if you have very little bandwidth.

bandwidth = .51 of the -real pole.

| | > My gains are | > Ki = 0.157 | > Kp=0 | > Kd=.381 | > Kdd=.52 | >

| > Tam, now it is your turn to provide your proof. | >

| > Peter Nachtwey | >

| Who says I am using a lead-lag controller?

What is this that you posted in your previous thread? (1+sT1)/(1+sT2) where T1>T2 I see below you mean this to be only part of the controller but you haven't made that clear.

| following | | (1+sT1)/s - that's what you would call PI I think using your terminology.

You can't place all the poles with that.

| | Then I would add a second integrator making the system unstable. I would add | a lead to stabilise this out but would have to be careful of the | resonance.We also have to maximise the bandwith without letting the resonant | peak show through. | | So we have | | (1+sT1)/s^2.(1+sT3)/(1+sT4)

This looks like a PID with an extra integrator and a low pass filter. | | However, I would probably add a second phase advance. To see what's going on | you must draw a Bode Plot.

Fine, but how does the avoid the integrator windup so the closed loop system doesn't overshoot. That is what this thread is about.

| All this time domain stuff and placing poles is crap

So how do you get a critically damped or overdamped response? How do you keep the integrator from winding up. It is clear from this post you do use integrators.

| - you have no concept | of bandwidth

I do but this thread isn't about bandwidth, it is about not overshooting the SP due to integrator windup. My examples were meant to be text book like examples. I pointed that out in previous post. I was trying to impress anybody with high bandwidth exampless. The theory at 1Hz, 10Hz or 100Hz is all the same.

Yes, but you still haven't made the case that your double integrator will not overshoot. I don't see how the phase lead will help. That is a mystery. You haven't proven to me that your PID with an extra integrator and low pass filter will control without overshooting. Especially not a type 1 system disk drive system. I assume you are trying to control the seeking action of the heads.

| Now, this PID stuff is crap, it's for amateurs who cannot draw a Bode Plot | and don't understand phase-margins.

Who do you think most users are? I make motion control products. My customers understand PID. It is hard to get many to use the derivative let alone the higher order derivatives for errors in acceleration and jerk. It is my job to make the product easy for the users to use by providing tools like graphing and auto tuning. I don't impress users by blowing them away with technology they don't understand and can't use. You may be able to do what ever you want with your disk drive controller because the users will never see it.

| to do and the PID methods are best however but not for let's say basic speed | controllers and position servos. | | Tam

That depends on what one is trying to control.

Peter Nachtwey

Reply to
Peter Nachtwey

There is a thread on

formatting link
that covers limiting the integrator.

Peter Nachtwey

Reply to
Peter Nachtwey

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.