C(s)G p (s) Two d.o.f. Control design: dual loop C 1 (s)G p (s) C 2 (s) r d ey+ + + __.

Slides:



Advertisements
Similar presentations
Desired Bode plot shape Ess requirement Noise requirement dB gcd High low-freq-gain for steady state tracking Low high-freq-gain for noise.
Advertisements

Chapter 4: Basic Properties of Feedback
Types of classical controllers Proportional control –Needed to make a specific point on RL to be closed-loop system dominant pole Proportional plus derivative.
Lecture 8B Frequency Response
Loop Shaping Professor Walter W. Olson
Desired Bode plot shape dB  gc High low freq gain for steady state tracking Low high freq gain for noise attenuation Sufficient PM near 
Chapter 7 System Compensation (Linear Control System Design)
Chapter 10 – The Design of Feedback Control Systems
Frequency Response Methods and Stability
Process Control Instrumentation II
Lecture 9: Compensator Design in Frequency Domain.
Lect. 5 Lead-Lag Control Basil Hamed
1 Basic Control Theory and Its Application in AMB Systems Zongli Lin University of Virginia.
Where is w=0+, where is w=0-, where is w=+inf, where is w=-inf, what is the system type, what is the relative order of the TF, how should you complete.
Alternative form with detuning factor F
Proportional control Consider forward path gain A Feedback and Control If the size of the loop gain is large, that is if |A  >> 1, then or.
Professor Walter W. Olson Department of Mechanical, Industrial and Manufacturing Engineering University of Toledo Loop Shaping.
Proportional control design 1.Draw R.L. for given plant 2.Draw desired region for poles from specs 3.Pick a point on R.L. and in desired region Use ginput.
Observer-Based Robot Arm Control System Nick Vogel, Ron Gayles, Alex Certa Advised by: Dr. Gary Dempsey.
سیستمهای کنترل خطی پاییز 1389 بسم ا... الرحمن الرحيم دکتر حسين بلندي - دکتر سید مجید اسما عیل زاده.
سیستمهای کنترل خطی پاییز 1389 بسم ا... الرحمن الرحيم دکتر حسين بلندي - دکتر سید مجید اسما عیل زاده.
Control Theory D action – Tuning. When there’s too much oscillation, this can sometimes be solved by adding a derivative action. This action will take.
Controller design by R.L. Typical setup: C(s)G(s) Controller Design Goal: 1.Select poles and zero of C(s) so that R.L. pass through desired region 2.Select.
Lecture 25: Implementation Complicating factors Control design without a model Implementation of control algorithms ME 431, Lecture 25.
Lecture 17: Introduction to Control (part III)
A Freq. Resp. Example (PID) Wednesday 25 Oct 2013 EE 401: Control Systems Analysis and Design A Radar Tracking System  Design a PID controller  Specs:
Chapter 6: Frequency Domain Anaysis
Overall controller design
Ch. 13 Frequency analysis TexPoint fonts used in EMF.
Lecture 16: Introduction to Control (Part II)
Chapter 4 A First Analysis of Feedback Feedback Control A Feedback Control seeks to bring the measured quantity to its desired value or set-point (also.
Discrete Controller Design
Lecture 9: PID Controller.
Desired Bode plot shape dB  gc High low freq gain for steady state tracking Low high freq gain for noise attenuation Sufficient PM near 
LINEAR CONTROL SYSTEMS Ali Karimpour Assistant Professor Ferdowsi University of Mashhad.
Controller design by R.L. Typical setup: C(s)G p (s) Root Locus Based Controller Design Goal: 1.Select poles and zero of C(s) so that R.L. pass through.
Lecture 10 Feedback Control Systems President UniversityErwin SitompulFCS 10/1 Dr.-Ing. Erwin Sitompul President University
SKEE 3143 Control Systems Design Chapter 2 – PID Controllers Design
Exercise 1 Suppose we have a simple mass, spring, and damper problem. Find The modeling equation of this system (F input, x output). The transfer function.
Page : PID Controller Chapter 3 Design of Discrete- Time control systems PID C ontroller.
Examples on Compensator Design Spring 2011
Open vs Closed Loop Frequency Response
Controller design by R.L.
Desired Bode plot shape
Controller design by R.L.
Basic Design of PID Controller
Desired Bode plot shape
Desired Bode plot shape
Open vs Closed Loop Frequency Response
Frequency Resp. method Given:
System type, steady state tracking, & Bode plot
System type, steady state tracking, & Bode plot
What damping ratio range do we typically want?___0.4~1____
Desired Bode plot shape
Controller design by R.L.
System type, steady state tracking, & Bode plot
Desired Bode plot shape
LINEAR CONTROL SYSTEMS
Compensators.
Frequency Response Techniques
Types of classical controllers
Frequency Resp. method Given a system: G(s)
Desired Bode plot shape
The root locus technique
Open vs Closed Loop Frequency Response
7-5 Relative Stability.
LINEAR CONTROL SYSTEMS
LINEAR CONTROL SYSTEMS
LINEAR CONTROL SYSTEMS
Frequency Response Techniques
Presentation transcript:

C(s)G p (s) Two d.o.f. Control design: dual loop C 1 (s)G p (s) C 2 (s) r d ey+ + + __

-0.1 y _ _ PI*PD +0.1s Example from last Monday: Two different implementations: -0.1 y _ _ PI PD +0.1s Standard Alternative

C(s)G p (s) Two d.o.f. Control design: FF+FB C(s)G p (s) C f (s) r d ey+ + + _ + +

C(s) C f (s) r d ey+ + + _ + + Example: Suppose C(s) is a lead-lag controller. Without Cf, what is the system type w.r.t. r? What is the system type w.r.t. d? Can Cf affect the type w.r.t. d? Can Cf affect the type w.r.t. r?

C(s) C f (s) r d ey+ + + _ + + Example: Suppose C(s) is a lead-lag controller. Q: Find a Cf to achieve 0 ess tracking for ramp input.

C(s) C f (s) r d ey+ + + _ + +

Design specs: use PID to achieve 1.Ess to ramp input = 0 2.As fast as possible 3.Overshoot <= 25% Plant is type 1, so need PI after PD. 25% Mp  PM >= 45, but with PI, need PMd 55 PD can contribute a maximum of about 75 So, select max wgc at phase=-200

s=tf('s'); Gp=1/s/(s+1)/(s+5); figure(2); margin(Gp); grid; V=axis; Mp=25; PMd = 70 - Mp + 10; %+10 for PI later DPM=75; PM=PMd-DPM; hold on; plot([V(1) V(2)],[PM PM]-180,'r:'); [x, y]=ginput(1); wgcd=x; z_PD = wgcd/tan(DPM*pi/180); %PD control K = 1/abs(evalfr((s+z_PD)*Gp,j*wgcd)); C=K*(s+z_PD); margin(C*Gp); grid; %Bode with PD z_PI = wgcd/10; C=C*(s+z_PI)/s; %multiply PI and PD margin(C*Gp); grid; hold off; %Bode with PID t=linspace(0, 15/wgcd, 301); figure(3); step(C*Gp/(1+C*Gp),t); grid;

Figure 8-8 Unit-step response curve of PID-controlled system designed by use of the Ziegler–Nichols tuning rule (second method).

Figure 8-10 Unit-step response of the system shown in Figure 8–6 with PID controller after numerical tuning of PID parameters.

Observations: Can shift red bump toward high freq a bit to increase speed But at higher freq, phase is lower, so PD needs to contribute more DPM PM=48 can be reduced by about 3

s=tf('s'); Gp=1/s/(s+1)/(s+5); figure(2); margin(Gp); grid; V=axis; Mp=25; PMd = 70 - Mp + 7; %+7 for PI later DPM=85; PM=PMd-DPM; hold on; plot([V(1) V(2)],[PM PM]-180,'r:'); [x, y]=ginput(1); wgcd=x; z_PD = wgcd/tan(DPM*pi/180); %PD control K = 1/abs(evalfr((s+z_PD)*Gp,j*wgcd)); C=K*(s+z_PD); margin(C*Gp); grid; %Bode with PD z_PI = wgcd/10; C=C*(s+z_PI)/s; %multiply PI and PD margin(C*Gp); grid; hold off; %Bode with PID t=linspace(0, 15/wgcd, 301); figure(3); step(C*Gp/(1+C*Gp),t); grid;

C 1 (s) C 2 (s) r d ey+ + + __ For dual loop implementation: Should have C2(s) = - 5s So C1(s) = PID + 5s

C1=C+5*s; Gp1=1/s/1/(s+6); figure(4); step(C1*Gp1/(1+C1*Gp1),t); grid; figure(5); step(C1*Gp1/(1+C1*Gp1)/s,10*t); grid; %ramp response figure(6); step(C1*Gp1/(1+C1*Gp1)/s/s,10*t); grid; %acc response

Overshoot became higher, about 33%, Significantly more than 25% spec Increase PMd Increase the PI divide-number

s=tf('s'); Gp=1/s/(s+1)/(s+5); figure(2); margin(Gp); grid; V=axis; Mp=25; PMd = 70 - Mp + 10; %+10 for PI later DPM=85; PM=PMd-DPM; hold on; plot([V(1) V(2)],[PM PM]-180,'r:'); [x,y]=ginput(1); wgcd=x; z_PD = wgcd /tan(DPM*pi/180); %PD control K = 1/abs(evalfr((s+z_PD)*Gp,j*wgcd)); C=K*(s+z_PD); margin(C*Gp); grid; %Bode with PD z_PI = wgcd/10; C=C*(s+z_PI)/s; %multiply PI and PD margin(C*Gp); grid; hold off; t=linspace(0, 15/wgcd,301); figure(3); step(C*Gp/(1+C*Gp),t); grid; figure(4); C1=C+5*s; Gp1=1/s/s/(s+6); step(C1*Gp1/(1+C1*Gp1),t); grid; t=linspace(0, 150/wgcd,3001); figure(5); step(C1*Gp1/(1+C1*Gp1)/s,t); grid; %ramp response figure(6); step(C1*Gp1/(1+C1*Gp1)/s/s,t); grid; %acc response

about the same as single loop

Ramp response Ess_ramp = 0

Acc response

Tuning based on desired loop shape: We notice the max phase plot bump happens at a frequency lower than wgc  Reduce K to lower wgc so that max bump closer to wgc  Reduce PMd since at lower wgc, phase is higher

s=tf('s'); Gp=1/s/(s+1)/(s+5); figure(2); margin(Gp); grid; V=axis; Mp=15; PMd = 70 - Mp + 10; %+10 for PI later DPM=85; PM=PMd-DPM; hold on; plot([V(1) V(2)],[PM PM]-180,'r:'); [x,y]=ginput(1); wgcd=x; z_PD = wgcd /tan(DPM*pi/180); %PD control K = 1/abs(evalfr((s+z_PD)*Gp,j*wgcd))*0.5; C=K*(s+z_PD); margin(C*Gp); grid; %Bode with PD z_PI = wgcd/10; C=C*(s+z_PI)/s; %multiply PI and PD margin(C*Gp); grid; hold off; t=linspace(0, 15/wgcd,301); figure(3); step(C*Gp/(1+C*Gp),t); grid; figure(4); C1=C+5*s; Gp1=1/s/s/(s+6); step(C1*Gp1/(1+C1*Gp1),t); grid; t=linspace(0, 150/wgcd,3001); figure(5); step(C1*Gp1/(1+C1*Gp1)/s,t); grid; %ramp response figure(6); step(C1*Gp1/(1+C1*Gp1)/s/s,t); grid; %ramp response

figure(3); step(C*Gp/(1+C*Gp),t); grid;

figure(4); C1=C+5*s; Gp1=1/s/s/(s+6); step(C1*Gp1/(1+C1*Gp1),t); grid; Ess to ramp and acc still = 0

C(s) C f (s) r d ey+ + + _ + + FF+FB implementation of 2 dof control Select Cf(s) = 5s Y=(Cf+C)Gp/(1+CGp)

s=tf('s'); Gp=1/s/(s+1)/(s+5); figure(2); margin(Gp); grid; V=axis; Mp=15; PMd = 70 - Mp + 10; %+10 for PI later DPM=85; PM=PMd-DPM; hold on; plot([V(1) V(2)],[PM PM]-180,'r:'); [x,y]=ginput(1); wgcd=x; z_PD = wgcd /tan(DPM*pi/180); %PD control K = 1/abs(evalfr((s+z_PD)*Gp,j*wgcd))*0.5; C=K*(s+z_PD); margin(C*Gp); grid; %Bode with PD z_PI = wgcd/10; C=C*(s+z_PI)/s; %multiply PI and PD margin(C*Gp); grid; hold off; t=linspace(0, 15/wgcd,301); t1=linspace(0, 150/wgcd,3001); figure(3); step(C*Gp/(1+C*Gp),t); grid; figure(4); C1=C+5*s; Gp1=1/s/s/(s+6); step(C1*Gp1/(1+C1*Gp1),t); grid; figure(5); step(C1*Gp1/(1+C1*Gp1)/s,t1); grid; %ramp response figure(6); step(C1*Gp1/(1+C1*Gp1)/s/s,t1); grid; %acc response Cf=5*s; figure(7); step((Cf+C)*Gp/(1+C*Gp),t); grid;

PID This is example 8-2. Design specs: 10% overshoot in closed-loop unit step response The book tries to design a PID controller. But with the above specs, a P-controller will do.

But that was “obviously not good”. Really? Why or why not? Now suppose we change the design specs to: 10% overshoot in closed-loop unit step response Ess to constant input must be zero Limit controller to simple PID Achieve as fast response as possible. Now it is a valid design problem.

Design analysis: Zero ess to step requires type 1 system, but plant is only type 0  need PI To increase speed and Mp, we will need PD So we will do PD followed by PI to get an overall PID The upper limit of phase boost by PID is about 80 deg To maximize speed, need max wgc, need to find highest freq at which when we add 80 deg we still have enough PM

s=tf('s'); Gp=1.2/(0.36*s^3+1.86*s^2+2.5*s+1); figure(1); margin(Gp); hold on; grid; V=axis; Mp=10; PMd = 70 - Mp + 10; %+10 for PI later DPM=80; PM=PMd-DPM; plot(V(1:2),[PM PM]-180,'r:');

[x,y]=ginput(1); wgcd=x; z_PD = wgcd /tan(DPM*pi/180); %PD control K = 1/abs(evalfr((s+z_PD)*Gp,j*wgcd)); C=K*(s+z_PD); margin(C*Gp); %Bode with PD

z_PI = wgcd/5; C=C*(s+z_PI)/s; %PI times PD margin(C*Gp); hold off; t=linspace(0,15/wgcd,301); t1=linspace(0,150/wgcd,3001); figure(3); step(C*Gp/(1+C*Gp),t); grid;

C(s) Let us reconsider this design problem with specs: 10% overshoot in closed-loop unit step response Ess to constant input must be zero Achieve as fast response as possible. But limit controller order (nc and/or dc) to 2 PID is artificially imposed by the book. But we repeatedly said we should avoid I whenever possible.

Design analysis: For zero ess to step, if we use an inner loop with a gain of -1.2, we can increase the plant type by 1. So don’t need PI, but use dual loop. For Mp = 60. For high speed, need high wgc. But plant phase goes to -270 at high freq. Need PD or lead to boost PM. But order is limited to 2. Choices are: two PDs, two leads, one of each PD is sensitive to noise,  not two PDs Let’s do the more complex: PD*lead

s=tf('s'); Gp=1.2/(0.36*s^3+1.86*s^2+2.5*s+1); figure(1); margin(Gp); hold on; grid; V=axis; Mp=10; PMd = 70 - Mp + 7; DPM_PD=80; DPM_lead=70; PM=PMd-DPM_PD-DPM_lead; plot(V(1:2),[PM PM]-180);[x,y]=ginput(1); wgcd=x; z_PD = wgcd /tan(DPM*pi/180); %PD control alpha=(1+sin(DPM_lead*pi/180))/(1-sin(DPM_lead*pi/180)); z_lead=wgcd/alpha^0.5;p_lead=wgcd*alpha^0.5; C=(s+z_PD)*(s+z_lead)/(s+p_lead); K = 1/abs(evalfr(C*Gp,j*wgcd)); C=C*K; margin(C*Gp); hold off; %Bode with PD t=linspace(0,15/wgcd,301); t1=linspace(0,150/wgcd,3001); figure(3); step(C*Gp/(1+C*Gp),t); grid; >> C Transfer function: 2520 s^ e004 s e s

First design achieved 10 times faster Mp is about OK, but a little over Ess is actually not zero but very small Dual loop implementation will make ess =0 But before we do that, should reduce Mp

s=tf('s'); Gp=1.2/(0.36*s^3+1.86*s^2+2.5*s+1); figure(1); margin(Gp); hold on; grid; V=axis; Mp=10; PMd = 70 - Mp + 10; DPM_PD=80; DPM_lead=70; PM=PMd-DPM_PD-DPM_lead; plot(V(1:2),[PM PM]-180);[x,y]=ginput(1); wgcd=x; z_PD = wgcd /tan(DPM*pi/180); %PD control alpha=(1+sin(DPM_lead*pi/180))/(1-sin(DPM_lead*pi/180)); z_lead=wgcd/alpha^0.5;p_lead=wgcd*alpha^0.5; C=(s+z_PD)*(s+z_lead)/(s+p_lead); K = 1/abs(evalfr(C*Gp,j*wgcd)); C=C*K; margin(C*Gp); hold off; %Bode with PD t=linspace(0,15/wgcd,301); t1=linspace(0,150/wgcd,3001); figure(3); step(C*Gp/(1+C*Gp),t); grid; >> C Transfer function: 1254 s^ e004 s e s

>> C2=-1.2; C1=C-C2; Gcl=C1*Gp/(1+C*Gp); figure(4); step(Gcl,t); grid >> C1 Transfer function: 1254 s^ e004 s e s