ECE4520/5520: Multivariable Control Systems I. 1 1 Course Background 1.1: From time to frequency domain Loosely speaking, control is the process of getting something to do what you want it to do (or not do, as the case may be). The something can be almost anything. Some examples: aircraft, spacecraft, cars, machines, robots, radars, etc. Some less obvious examples: energy systems, the economy, biological systems, the human body... The something is called the system that we would like to control. DEFINITION: Control is the process of causing a system variable to conform to some desired value, called a reference value (e.g., variable D temperature for a climate-control system). DEFINITION: Feedback is the process of measuring the controlled variable and using that information to influence its value. Disturbance Ref. Value Compensator Plant Output Feedback is not necessary for control. But, it is necessary to caterfor system uncertainty, which is the principal role of feedback. Open-loop control is also possible.
ECE4520/5520, Course Background 1 2 Goals of feedback control: Change dynamic response of a system to have desired properties. 0.9 1 t p M p Output of system tracks reference input. Reject disturbances. 0.1 t r t s Control design requires mathematical sets of equations (called a t model) that describes the system being controlled. Classical feedback techniques (cf., ECE4510) use frequency-domain (Laplace) models and tools to analyze and design control systems. Involves moving the poles of the closed-loop transfer function. Multivariable, state-space control instead: Primarily uses time-domain matrix representations of systems. Very powerful. Can often place poles of closed-loop system anywhere we want! Can make fast, smooth, etc. Same methods work for single-input, single-output (SISO) or multi-input, multi-output (MIMO) systems. Advanced techniques (cf., ECE5530) allow design of optimal linear controllers with a single MATLAB command! This course is a bridge between classical control and topics in advanced linear systems and control. We now review some of the concepts of classical linear systems and control which we will use...
ECE4520/5520, Course Background 1 3 Dynamic response Our primary objective is to be able to understand and learn how to control linear time-invariant (LTI) systems. We will also spend some time investigating nonlinear and linear time-varying (LTV) systems. LTI dynamics may be specified via models expressed as linear, constant-coefficient ordinary differential equations (LCCODE). Examples include: Mechanical systems: Use Newton s laws. Electrical systems: Use Kirchoff s laws. Electro-mechanical systems (generator/motor). Thermodynamic systems. Fluid-dynamic systems. EXAMPLE: Second-order system in standard form : Ry.t/ C 2! n Py.t/ C! 2 n y.t/ D!2 n u.t/: 4 dy.t/ u.t/ is the input, y.t/ is the output, Py.t/ D,and Ry.t/ D 4 d2 y.t/. dt dt 2 Laplace Transform The Laplace transform is a tool to help analyze dynamic systems. Y.s/ D H.s/U.s/,where Y.s/ is Laplace transform of output, y.t/; U.s/ is Laplace transform of input, u.t/; H.s/ is transfer function the Laplace tx of impulse response, h.t/.
ECE4520/5520, Course Background 1 4 Lf Py.t/g D sy.s/ y.0/ in general, and Lf Py.t/g D sy.s/ for a system initially at rest. EXAMPLE: Transfer function for second-order system: s 2 Y.s/C 2! n sy.s/ C! n 2 Y.s/ D!2 n U.s/ Y.s/ D! 2 n U.s/: s 2 C 2! n s C! n 2 Transforms for systems with LCCODE representations can be written as Y.s/ D H.s/U.s/,where H.s/ D b 0s m C b 1 s m 1 CCb m 1 s C b m a 0 s n C a 1 s n 1 CCa n 1 s C a n ; where n m for physical systems. These can be represented in MATLAB using vectors of numerator and denominator polynomials: num=[b0 b1 ::: bm]; den=[a0 a1 ::: an]; sys=tf(num,den); Can also represent these systems by factoring the polynomials into zero-pole-gain form: Q m id1.s i/ H.s/ D K Q n id1.s p i/ : sys=zpk(z,p,k); % in MATLAB
ECE4520/5520, Course Background 1 5 Input signals of interest include the following: u.t/ = kı.t/ ::: U.s/ = k impulse u.t/ = k1.t/ ::: U.s/ = k=s step u.t/ = kt 1.t/ ::: U.s/ = k=s 2 ramp k u.t/ = k exp. t/ 1.t/ ::: U.s/ = exponential s C k! u.t/ = k sin.!t/ 1.t/ : : : U.s/ = sinusoid s 2 C! 2 ks u.t/ = k cos.!t/ 1.t/ : : : U.s/ = cosinusoid s 2 C! 2 u.t/ = ke at k! sin.!t/ 1.t/ : : : U.s/ = decaying sinusoid.s C a/ 2 C! 2 u.t/ = ke at k.s C a/ cos.!t/ 1.t/ : : : U.s/ = decaying cosinusoid.s C a/ 2 C! 2 MATLAB s impulse, step, and lsim commandscanbeusedto find output time histories. The final value theorem states that if a system is stable and has a final, constant value, then lim x.t/ D lim sx.s/: t!1 s!0 Useful when investigating steady-state errors in a control system. The initial value theorem states that the initial value of a signal may be found using lim sx.s/ D s!1 ( x.0 / D x.0 C /; x.t/ continuous at t D 0I x.0 C /; otherwise: We will see a use for this later in the semester when studying system controllability.
ECE4520/5520, Course Background 1 6 1.2: From frequency to time domain The inverse Laplace transform (ILT) converts X.s/! x.t/. Here we assume that X.s/ is a ratio of polynomials in s. Thatis, X.s/ D C.s/ A.s/ : If X.s/ is not a proper rational function, wemustfirstperformlong division. (In a proper rational function, the degree of C.s/ is less than the degree of A.s/.) In general, partial-fraction inversion begins by writing where K.s/ is of the form X.s/ D K.s/ C B.s/ A.s/ We inverse transform K.s/ using D K.s/ C F.s/; K.s/ D k 0 C k 1 s CCk L s L : d n ı.t/ dt n s n : The remaining problem is to find the inverse transform of F.s/. F.s/ D b 0s m C b 1 s m 1 CCb m s n C a a s n 1 CCa n Q m id1.s i/ D kq n id1.s p i/ D r 1 s p 1 C r 2 s p 2 CC r n s p n.zeros/.poles/ so;.s p 1 /F.s/ D r 1 C r 2.s p 1 / s p 2 CC r n.s p 1 / s p n : if fp i g distinct:
ECE4520/5520, Course Background 1 7 Let s D p1.then, r 1 D.s p 1 /F.s/j sdp1 : Similarly, and f.t/ D nx id1 r i D.s p i /F.s/j sdpi r i e p it 1.t/ since L e kt 1.t/ D 1 s k : 5 EXAMPLE: F.s/ D s 2 C 3s C 2 D 5.s C 1/.s C 2/. ˇ r 1 D.s C 1/F.s/ D 5 ˇ D 5 ˇsD 1 s C 2 ˇsD 1 ˇ r 2 D.s C 2/F.s/ D 5 ˇ ˇsD 2 s C 1 Repeated poles f.t/d.5e t 5e 2t /1.t/: ˇsD 2 D 5 If F.s/ has repeated roots, we must modify the procedure. e.g., fora pole repeated 3 times: F.s/ D k.s p 1 / 3.s p 2 / D r 1;1 s p 1 C r 1;2.s p 1 / 2 C r 1;3.s p 1 / 3 C r 2 s p 2 C r 1;3 D.s p 1 / 3 F.s/ˇˇsDp1 r 1;2 D d ds.s p1 / 3 F.s/ ˇˇˇˇsDp1
ECE4520/5520, Course Background 1 8 r 1;1 D 1 d 2.s p1 / 3 F.s/ ˇ 2 ds 2 r x;k i D 1 d i.s pi / k F.s/ ˇ iš ds i ˇsDp1 s C 3 EXAMPLE: Find ILT of.s C 1/.s C 2/ 2. ans: f.t/d.2e t 2e 2t ƒ te 2t /1.t/: from repeated root. TEDIOUS. Use MATLAB. e.g., F.s/ D 5 s 2 C 3s C 2. Example 1. Example 2. ˇsDpi : >> Fnum=[0 0 5]; >> Fnum=[0 0 1 3]; >> Fden=[1 3 2]; >> Fden=conv([1 1],conv([1 2],[1 2])); >> [r,p,k]=residue(fnum,fden); >> [r,p,k]=residue(fnum,fden); r = -5 r = -2 5-1 p = -2 2-1 p = -2 k = [] -2-1 k = [] When you use residue and get repeated roots, BE SURE to type help residue to correctly interpret the result. Complex-conjugate poles The theory developed thus far works for either real or complex poles.
ECE4520/5520, Course Background 1 9 It may be easier to handle complex-conjugate poles separately. Consider F.s/ D B.s/.s p 1 /.s p 1 /Q.s/ D K 1 s p 1 C K 2 s p 1 C R.s/ Q.s/ : Expand R.s/=Q.s/ using previous methods. Expand the first part as K 1 s p 1 C K 2 s p 1 D as C b.s 1 / 2 C! 1 2 : It can be shown that a D 2R.K1 /, b D 2ŒR.K 1 / 1 C I.K 1 /! 1, 1 D R.p 1 /,and! 1 D I.p 1 /. EXAMPLE: As a specific problem consider X.s/ D 2s 2 C 6s C 6.s C 2/.s 2 C 2s C 2/ D r 1 s C 2 C Using the simple-pole formula we find r 1 D 2s2 C 6s C 6 ˇ s 2 C 2s C 2 ˇsD 2 D as C b.s C 1/ 2 C 1 : We will substitute values for s to obtain a and b. 8 12 C 6 4 4 C 2 D 1: Let s D 0. 6 2 2 D 1 2 C b 2 ) b D 2: Let s D 1. 2 C 6 C 6 3.1 C 2 C 2/ D 1 3 C a C 2 5 ) a D 1:
ECE4520/5520, Course Background 1 10 Finally, X.s/ D 1 s C 2 C s C 2.s C 1/ 2 C 1 Taking the inverse-laplace transform D 1 s C 2 C s C 1.s C 1/ 2 C 1 C 1.s C 1/ 2 C 1 : x.t/ D e 2t C e t cos.t/ C e t sin.t/ 1.t/: Symbolic Laplace transforms using MATLAB MATLAB incorporates part of the Maple symbolic toolbox. The commands of interest to us here are: laplace, ilaplace, ezplot and pretty. F=laplace(f) is the Laplace transform of symbolic fn f. f=ilaplace(f) is the inverse-laplace transform of F. ezplot(f,[xmin xmax]) plots symbolic function f. pretty(s) displays symbolic S in a pretty way.
ECE4520/5520, Course Background 1 11 1.3: Dynamic properties of LTI systems Block diagrams Useful when analyzing systems comprised of a number of sub-units. U.s/ H.s/ Y.s/ Y.s/ D H.s/U.s/ U.s/ H 1.s/ H 2.s/ Y.s/ Y.s/ D ŒH 1.s/H 2.s/ U.s/ U.s/ H 1.s/ H 2.s/ Y.s/ Y.s/ D ŒH 1.s/ C H 2.s/ U.s/ R.s/ U 1.s/ Y 2.s/ H 1.s/ H 2.s/ U 2.s/ Y.s/ Y.s/ D H 1.s/ 1 C H 2.s/H 1.s/ R.s/ Dynamic response versus pole locations The poles of H.s/ determine (qualitatively) the dynamic response of the system. The zeros of H.s/ quantify the relationship. If the system has only real poles, each one is of the form: H.s/ D 1 s C :
ECE4520/5520, Course Background 1 12 If >0,thesystemisstable,andh.t/ D e t 1.t/. Thetimeconstant is D 1=; and the response of the system to an impulse or step decays to steady-state in about 4 or 5 time constants. 1 impulse([0 1],[1 1]); 1 step([0 1],[1 1]); h.t/ 0.8 0.6 0.4 0.2 e t 1 e y.t/ K 0.8 0.6 0.4 0.2 K.1 e t= / System response. K D dc gain Response to initial condition 0. 0 0 1 2 3 4 5 t D Time (sec ) 0 0 1 2 3 4 5 t D Time (sec ) If a system has complex-conjugate poles, each may be written as: H.s/ D! 2 n : s 2 C 2! n s C! n 2 We can extract two more parameters from this equation: D! n and! d D! n p 1 2 : I.s/ plays the same role as above it specifies D sin 1./ decay rate of the response.!d is the oscillation frequency of the output. Note:! d! n unless D 0.! n R.s/ is the damping ratio and it also plays a! d role in decay rate and overshoot.
ECE4520/5520, Course Background 1 13 Impulse response h.t/ D!n e t sin.! d t/ 1.t/. Step response y.t/ D 1 e t cos.! d t/c sin.! d t/.! d 1 Impulse Responses of 2nd-Order Systems D 0 2 Step Responses of 2nd-Order Systems D 0 y.t/ 0.5 0 D 1 0:8 0:2 0:4 0:6 y.t/ 1.5 1 0:2 0:4 0:6 0.5 0.5 0:8 1:0 1 0 2 4 6 8 10 12! n t 0 0 2 4 6 8 10 12! n t Asummarychartofimpulseresponsesandstepresponsesversus pole locations is: I.s/ I.s/ R.s/ R.s/ Impulse responses vs. pole locations Step responses vs. pole locations
ECE4520/5520, Course Background 1 14 Time-domain specs. determine where poles should be placed in the s-plane. 0.9 1 t p M p Step-response specs often given. 0.1 t r t s t Rise time tr D time to go from 10 % to 90 % of final value. Settling time ts D time until permanently within 1 % of final value. Overshoot Mp D maximum percent overshoot. 0 0 0.2 0.4 0.6 0.8 1.0 t r 1:8=! n :::! n 1:8=t r Mp, % t s 4:6= ::: 4:6=t s M p e = p1 2 ::: fn.m p / 100 90 80 70 60 50 40 30 20 10 I.s/ I.s/ I.s/ I.s/! n sin 1 R.s/ R.s/ R.s/ R.s/
ECE4520/5520, Course Background 1 15 Basic feedback properties r.t/ D.s/ G.s/ y.t/ Y.s/ R.s/ D D.s/G.s/ 1 C D.s/G.s/ D T.s/: Stability depends on roots of denominator of T.s/: 1 C D.s/G.s/ D 0. Routh test used to determine stability. Steady-state error found from E.s/ D.1 T.s//R.s/. ess D lim t!1 e.t/ D lim s!0 se.s/ if the limit exists. System type D 0 iff e ss is finite for unit-step reference-input 1.t/. System type D 1 iff e ss is finite for unit-ramp reference-input r.t/. System type D 2 iff e ss is finite for unit-parabola ref.-input p.t/... Some types of controllers Proportional ctrlr: u.t/ D Ke.t/: D.s/ D K: Integral ctrlr u.t/ D K Z t e.t/ dt: D.s/ D K T I 1 T I s Derivative ctrlr. u.t/ D KT D Pe.t/ D.s/ D KT D s Combinations: PI: D.s/ D K 1 C 1 I T I s PD: D.s/ D K.1C T D s/i PID:D.s/ D K 1 C 1 T I s C T Ds : Lead: D.s/ D K TsC 1 T s C 1 ; Lag: D.s/ D K TsC 1 T s C 1 ; < 1 (approx PD) > 1 (approx PI; often, K D )
ECE4520/5520, Course Background 1 16 Lead/Lag: D.s/ D K.T 1s C 1/.T 2 s C 1/. 1T 1 s C 1/. 2T 2 s C 1/ ; 1 <1; 2 >1: Integral can reduce/eliminate steady-state error. Derivatives can reduce/eliminate oscillation. Proportional term can speed/slow response. Lead control approximates derivative control, but reduces amplification of noise. Lag control approximates integral control, but is easier to stabilize. Where to from here? We have reviewed some important concepts from classical control theory, which uses a transfer-function approach. We now begin to examine state-space models.