vs.» . “fit"... » . Rm; ‘1 L1 . L . : viva} V". , . . ‘ in}: 0 x $95!? 1. :21“. .4 793?.‘Lrn1. , .. 5.. .. .I. ‘nv.’ I. ‘ ;...§.,En.,fi 55..th 4 ., . ., gg‘afi? . , Féafi Virufla I: ‘1302 .7 u n 0...)»: .IH'. , , V I‘v.\ MICHIGAN STATE UN VERS SIT I III III IIII II I IIIIIIII III/III “55.3 ' II LIBRARY Michigan State University This is to certify that the thesis entitled ANALYSIS OF MULTIRATE DIGITAL CONTROL BASED ON HIGH GAIN OBSERVER AND SINGULAR PERTURBATION THEORY presented by Muhammad Yasin has been accepted towards fulfillment of the requirements for M.S. degree in Electrical Eng Alarm k/Ié/L/ ”0/ Major profe Date \l/0‘23/ /5/?é; 0-7639 MS U is an Affirmative Action/Equal Opportunity Institution 4——.fi—_ .- 'V‘ v—w '- 1 ‘f v' v v " - __ '- r" "F—v F—v -~.———-_,. ‘ .— “v- 7"-v v— 7‘ v.-. PLACE ll RETURN BOX to remove this checkout from your record. TO AVOID FINES roturn on or before date duo. DATE DUE DATE DUE DATE DUE MSU ioAn Affirmative Action/EM Opportunly Instituion Wanna-9.1 ANALYSIS OF MULTIRATE DIGITAL CONTROL BASED ON HIGH GAIN OBSERVER AND SINGULAR PERTURBATION THEORY By Muhammad Yasin A THESIS Submitted to Michigan State University in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Department of Electrical Engineering 1996 ABSTRACT ANALYSIS OF MULTIRATE DIGITAL CONTROL BASED ON I-HGH GAIN OBSERVER AND SINGULAR PERTURBATION THEORY By Muhammad Yasin A multirate control structure allows the designer to accommodate multiple information rates and implement required control computations within the finite computational capabilities of an onboard computer. The purpose of this study was to analyze the multirate scheme of a stable, linear, and time invariant system. The output feedback control is so designed that it uses a very high gain observer in its feedback path. The dynamics of the control are slow as compared to the dynamics of the observer. The behavior of the system is also analyzed using singular perturbation theory to see how the fast and slow modes behave in first cycle. Also, singular perturbation theory is used to show that the performance of the system under state feedback control can be recovered by using the output feedback control which uses a very high gain observer in its feedback path. The performance of the system is also studied by changing different parameters like, initial conditions, value of e, and sampling times. In computer simulations, it is seen that saturating the control helps in reducing the peaking phenomenon, that occurs due to different initial conditions. I dedicate this work to my biggest supporters in this world; my family; my parents, brothers, and sisters. ACKNOWLEDGMENTS First of all, I am thankful to Allah Almighty for providing me with the opportunity to undertake and complete this task. I am thankful to the Pakistan Army and the National University of Science and Technology (NUST), Pakistan, for sponsoring this study at Michigan State University. I would like to express my deep thanks and sincere appreciation to all persons who have contributed by inspiration, counseling, and assistance in the completion of this study. The advice, professional guidance, and supervision of Dr. Hassan Khalil, have been invaluable in the completion of this study. He has been very kind in sparing his valueable time and making me understand through even minutest details of the subject. Also, I would like to extend my deepest thanks to Dr Shanblatt, Who helped me in the completion of my studies somehow or the other. I also want to convey my special thanks to Lt Col Rahat Khan, Muhammad Jamal Khattak, Abdul Mujeer Qureshi, graduate students at MSU, for helping me and providing their sincere advice during the course of my studies. I will take this opportunity to thank the Pakistan Student Association and Pakistani community for their care and concern. My deepest love and thanks to my parents, who brought me up in a best manner, for their unconditional support from the day I was born, and for my brothers and sisters for their prayers that do not stop. Above all, I deeply believe that my accomplishment and success are bestowed upon me by the Almighty to whom I am very thankful. Muhammad Yasin TABLE OF CONTENTS List of figures .................................................................................................................... viii List of Symbols ................................................................................................................... ix CHAPTER 1 INTRODUCTION AND HISTORICAL BACKGROUND Introduction ............................................................................................................. 1 Historical Background ............................................................................................. 2 1.2.1 Multirate Digital Control ............................................................................. 2 1.2.2 Singular Perturbation Theory ....................................................................... 3 1.3 Objectives of The Thesis ......................................................................................... 4 1.4 Scheme of The Thesis .............................................................................................. 5 CHAPTER 2 HIGH GAIN OBSERVER 2.1 Observers in General ............................................................................................... 6 2.1 . 1 Introduction ................................................................................................. 6 2.1 .2 Formal Definition ........................................................................................ 7 2.1.3 Mathematical Description of Observability ................................................ 7 2.2 Observers in Linear Systems ................................................................................. 10 2.2.1 Task of Observer ....................................................................................... 10 2.2.2 Observer Design ........................................................................................ 10 2.2.3 Determination of System Matrices of The Observer ................................. 13 2.3 High Gain Observer ............................................................................................... 14 2.3.1 Output Feedback Control ........................................................................... 14 2.3.2 Design of Observer Gain Matrix, L ........................................................... 18 2.4 The Peaking Phenomenon ...................................................................................... 20 2.4.1 Reasons of Peaking .................................................................................... 20 2.4.2 Methods to Reduce Peaking ....................................................................... 22 CHAPTER 3 ANALYSIS BASED ON SINGULAR PERTURBATION 3. 1 Introduction ............................................................................................................ 24 3.2 Derivation of Singularly Perturbed System ........................................................... 25 3.2.1 Continuous Time Singularly Perturbed System ......................................... 25 vi 3.3 3.2.2 Discretization of Singularly Perturbed System .......................................... 29 Multirate Implementation of Singularly Perturbed Difference Equation .............. 32 CHAPTER 4 SIMULATION RESULTS 4.1 Construction of The System .................................................................................. 43 4.1.1 The Controlled System: A dc Servomotor ................................................ 43 4.1.2 Poles of The System .................................................................................. 45 4.1.3 Design of State Feedback Control ............................................................. 47 4.1.4 Construction of an Observer ...................................................................... 49 4.1.5 Combined System - Single Rate Implementation ...................................... 51 4.2 Simulations ............................................................................................................ 53 4.2.1 State Feedback Control .............................................................................. 5 3 4.2.2 Combined System - Single Rate Implementation ...................................... 54 4.2.3 Multirate Implementation .......................................................................... 56 4.2.4 Performance of Multirate Scheme Under State Feedback Control ............ 58 4.2.5 Behavior of Multirate scheme in First Cycle ............................................. 58 4.3 Effects of Changing Different Parameters ............................................................. 59 4.3.1 Effects of Changing The Initial Conditions ............................................... 59 4.3.1a Performance of Multirate Under State Feedback Control ......................... 59 4.3.1b Performance of Multirate Under Output Feedback Control ...................... 60 4.3.2 Effects of Saturating The Control .............................................................. 61 4.3.3 Effects of Changing e ................................................................................ 62 4.3.4 Effects of Changing Sampling Times ........................................................ 65 4.4 Observations and Results ....................................................................................... 67 4.5 Recommendations .................................................................................................. 68 CONCLUSION ............................................................................................................. 69 APPENDICES ............................................................................................................... 70 BIBLIOGRAPHY vii 2.1: 2.2 2.3 : LIST OF FIGURES System with an observable subsystem SU] and an unobservable subsystem Suz ....................................................................................... 8 : Two connected dynamic systems: Sl the original system and 82 the observer .................................................................................................... 11 Block diagram showing implementation of equation (1 7) ........................................ 15 viii A, B, C, D Am 809 C09 D0 AA, BB, CC, DD Ac 2, 17 a, b, c, d a.» b.» co, do 31, b1, Ci, d1 (1) L K D(e) D-l LIST OF SYMBOLS Continuous time state space matrices Continuous time observer matrices System matrices of combined system Canonical form of A Continuous time matrices of singularly perturbed system Discrete time state space matrices Discrete time observer matrices Discrete time system matrices State transition matrix Observer gain matrix Gain matrix Identity matrix Matrix dependent on e Inverse of D Pole vector Output vector of the state space system Input vector of state space system H) 8) fobs Plant state vector Observer state vector Observability grammian Fast variable of singularly perturbed system, z-transform Time Settling time Initial time Final time Sampling time of the control Sampling time of observer Angular position of motor Angular velocity Estimate of x estimate of (1) Parameter of high gain observer estimation error error term Perturbation terms Ratio of Tc and To, fast time scale Slow time scale Sampling frequency Observer frequency Eigenvalue Moment of inertia Resistance Back emf constant Torque constant Mechanical time constant Damping ratio xi CHAPTER 1 INTRODUCTION AND HISTORICAL BACKGROUND 1.11NIRQDIEIIQN Multiple sample-rate digital control systems are of prominent interest in current control research, development and applications. A multirate control structure allows the designer to accommodate multiple information rates and implement required control computations within the finite computational capabilities of an onboard computer. Multirate digital control is a significant area of research and applications that is motivated by practical implementation techniques. The motivation for multirate control has traditionally been in aerospace applications where guidance and control laws must be designed to accommodate multiple rates of sensor measurements and finite throughput capabilities of onboard computers. Modern aerospace vehicles and systems are described by high order dynamic models which typically include phenomena covering a wide range of characteristic frequencies and instrumentation measurements available at multiple rates. Multirate design techniques should soon find further utility in control application for highly distributed systems, such as, communication networks, and power plant / power distribution networks where the characteristic frequencies and time constants of a local station’s dynamics may differ significantly from those of the network as a whole. The historical development of multirate digital control and singular perturbation theory is outlined in next section. 1.2HISIQRICALBACKGRQUND 1.2.1 MultirateDigitalEnntrQl The use of digital control, or more precisely, sample data control, originated in radar applications in world war 11. Because the rotating antenna of a radar system illuminates a target intermittently, early radar aided tracking and fire control systems had to be designed to utilize data in sampled form. Methods of effective design of control systems using sampled data were under initial development during the later 1940’s, and multirate system theory followed these efforts in the early 1950’s. Initially, researchers developed multirate techniques as a method of evaluating more conventional types of controllers such as continuous systems and single rate sampled data systems. For example, one could study the inter sample behavior of a signal or output of a single rate control system by introducing a phantom sampler, i.e., a fictitious sampler that operates at a rate some integer ratio higher than that of the controller. A significant early contribution to this general method of analysis, known as frequency decomposition, was made by Shlansy and Ragazzini [1], who described the use of this technique in error sampled control system development. Shortly following the origin of the frequency decomposition technique, a similar frequency domain technique, known as switch decomposition, was developed. The switch decomposition technique, attributed to Kranc [2], provided a means of representing a multirate control structure as an equivalent single rate controller, this representation accomplished , the controller could be designed and analyzed using single 3 rate technique. In the late 1960’s Jury [3] showed an equivalence of the switch decomposition technique and the frequency decomposition technique. Time domain methods of multirate stability analysis and design were initiated by Kalman and Bertram [4] with the publication of their state space stability analysis technique in 1959. Barry [5] published a paper in 1975 in which he described the design of multirate regulator and showed that its performance was superior to a single rate regulator having the slow sampling rate. During 1979-81, research at “ The Analytic Sciences Corporation ” ( TASC ) developed a new multirate control design technique based on an optimal estimation and control formulation. In parallel with the work at TASC, Amit and Powel [6], independently investigated a similar optimal control formulation, among other things, some practical considerations for implementing multirate control laws and a highly efficient method for solving periodic Riccatti equation related to the design technique. Different design techniques for multirate digital control are discussed in [7]. 1.2.2 Singflarflerturbationlhm Singularly perturbed systems, and more generally, multi time scale systems, often occur naturally due to the presence of small parasitic parameters, typically small time constants, or masses etc., multiplying time derivatives, or in more disguised form due to the presence of large feedback gains and week coupling. While singular perturbation theory, a traditional tool of fluid dynamics and nonlinear mechanics, embraces a wide variety of dynamic phenomenon possessing slow and fast modes, its assimilation in control is recent and rapidly developing. The methods of singular perturbation for initial 4 and boundary value problem approximations and stability were already largely established in 1960’s, when they first became a means for simplified computations of optimal trajectories. It was soon recognized that singular perturbations are present in most classical and modern control schemes based on reduced order models which disregard high frequency parasitics. This led to the development of time scale methods for a variety of applications including state feedback, output feedback, filter and observer design. Singular perturbation methods also proved useful for the analysis of high gain feedback systems and interpretation of other model order reduction techniques. More recently they have been applied to modeling and control of dynamic networks and certain classes of large scale systems. This versatility of singular perturbation methods is due to their use of time scale properties which are common to both linear and nonlinear dynamic systems. The first survey [8] of control theory applications of singular perturbations in 1976, included 130 references. The period of 1976-83 have witnessed an even faster growth of this research area both in theoretical depth and breadth of applications, as evidenced by surveys and books given in section A of the references of [9]. A brief overview of the 80 years of traditional singular perturbations by O’Malley (1982A), [10], lists 64 major references during that period. An analysis of singularly perturbed adaptive system appears in Ioannou and Kokotovic (1983A), [11]. 1.3 W I was assigned to accomplish the following objectives. a. Design a state feedback control using slow sampling period. 5 b. Design of observer based output feedback control using the multirate scheme. 0. Carry out analysis of multirate scheme using singular perturbation theory. d. Study the behavior of the system under output feedback control. e. Study the effect of changing different parameters in multirate implementation. f. Study the effect of saturation of the output feedback control. g. Study the behavior of slow and fast variables using singular perturbation theory. h. Study the behavior of slow and fast variables in one cycle while keeping the control constant. 1.4 W Chapter 1 deals with the general introduction and background of multirate digital control and singular perturbation theory. In chapter 2, design of high observer is discussed. Also the peaking phenomenon and its remedies are discussed in the same chapter. In chapter 3, analysis of multirate scheme, using singular perturbation theory, is done. First the system is brought into standard singularly perturbed form, and then the approach of [12] is followed to study the behavior of slow variables for one cycle. It is also shown that the output feedback control recovers the performance under state feedback control using singular perturbation theory. Chapter 5 deals with the simulations and their results, and finally the recommendations and conclusion is given. CHAPTER 2 HIGH GAIN OBSERVER 2.1.QBSERYERSINQENERAL 2.1.1 Introduction One of the objectives in control systems design is the achievement of suitable eigenvalue locations in order to ensure satisfactory dynamic performance. In modern control theory, linear state feedback provides an appropriate compensation technique to meet this objective under the assumption that all state variables can be used in forming feedback signals. Unfortunately, this assumption is not always valid in practice. A well known approach to overcome this difficulty is to generate the feedback control law via an estimate of the state vector. The estimation is performed using an asymptotic state estimator, called an observer, which employs only the available directly measurable input and output signals. Hence, the problem of designing controllers for systems with incomplete state measurements is equivalent to constructing observer based controllers. The idea of Observability and controllability was introduced by RE Kalman in the 1950’s. Proceeding from a figurative description, it can be said that a system is observable if it is possible to observe the states by using the output of the system, that is, to look inside the system from the output. That means, all the states must have a connection to the output. A system is said to be completely observable if all of its states are observable. It is some times advantageous to have an observable system, especially 7 when the system to be controlled has unstable states. Of course, an observable system is innocuous if the system is asymptotically stable. The idea of Observability is explained with the help of figure 2.]. The figure describes a system with input 11, output y and two subsystems with the states x1 and x2 . The subsystem Sul is observable because the state x1 has a connection to the output of the system, whereas the subsystem Suz is not observable because the state x2 is not connected to the output of the system. 2.1.2 Ecrmalllefiniticn The formal definition of Observability is as given below:- “ A linear system is said to be observable at time to if x(tO) can be determined from the output function y(to , 1) within a finite time interval to < r < tf. If this is true for all t and x(t), then the system is said to be completely observable.” Referring to the formal definition of Observability, it is clear that the Observability depends on the output y and the state x. An equivalent definition of Observability states that:- “A system is observable on interval [to , tf] if any x(to) is uniquely determined by the corresponding response y(t) for t < [to , tf] , where tr > to .” 2.1.3MathematicaLDescripticnnfflbserxabilitx The Observability phenomenon can be described mathematically by using the theorem given below. The theorem states that, given the system:- x(t) = A x(t) + Bu(t) (l) y(t) = C W) (2) Figure 2.1: ’y System with an observable subsystem 8,1 and an unobservable subsystem Sag, 9 The system (1) - (2) is observable on interval [to , tf ], if and only if, the Observability grammian M(t0,tf) = :[CDT(t,t0)CT(t)C(t)CD(t,to)dt is invertible ( i.e. nonsingular ). Also M( to , tf) is symmetric and positive semi definite. Now consider the output given by :- y(t) = C¢(t,to)X(to) and assume that the matrix M( to , tf) is noninvertible ( i.e. singular ). If this is true, there will exist an initial state x(to) different from zero which can produce a zero output for interval of any length. Therefore, the matrix C (D( t , to) is not of full rank n, the order of the system. Therefore, all the states are not transferred to the output and the system is not observable. In most cases, the calculations of the Observability grammian is very complicated. Therefore, as an alternate method, we can use a simpler algebraic theorem to test the Observability of the system. The theorem states that a linear time invariant system :0) = A x(t) with the output given by:- y(t) = C W) is observable, if and only if, the rank r(N) of the Observability test matrix, given by:- N=[AT ATCT ____(An—I)TCT] is equal to n, the order of the system. 10 2.2. W 2.2.1 Iaskcfflbscmer The basic task of an observer is to reconstruct one or more missing states of a given system by using the system output, provided that the system is completely observable. The observer has to estimate the state such that the error between the actual state x(t) and the estimated state 56(t) , that is 8(1) = 16(1) - f0) (3) tends to zero. To build up an observer, a second dynamic system 82 is connected to the output of the original system S. . Such a system is shown in figure 2.2. The system 82 has almost the same structure as the original system S 1 . Both SI and 82 are assumed to be linear and time invariant. The output of the system S1 is y, which is the input of the second system 82 , u is the input to the system Sl . The output of the system 82 is called the estimated state 1?. 2.2.2 Qbsemedlesign Consider following linear, time invariant system S, , derived from (l)-(2) 5r(t) = A x(t) (4) when system 82 is added to S, , it becomes in) = 2 520) + chu) (5) with y(t) = Cx(t) and L is an n x 1 gain matrix. Now suppose the transformation T, which satisfies LC=TA—21T (6) ll y=x Figure 2.2: Two connected dynamic systems: SI the original system and S; the observer. 5: 12 Also if 12(0) = T x(O) then £(t) = Tx(t). The general solution of (5) is given by:- £(t) = Tx(t) + e?“ (2(0) - Tx(0)) (7) To prove this solution subtract (4), after premultiplying by T, from (5), we get at) — Tm) = 21 2(1) + LCx(t) — TA x(t) (8) now using (6) in (8), we get in) — Mt) = 21 (£0) — Mr» (9) The solution of differential equation (9) is given with (7). Now for a forced system, apply the transformation T on the input u. So we get in) = .74 £(t) + LCx(t) + T1} u(t) (10) The system 82 given by equation (5) or (10) is called as an observer and the matrix L is called the observer gain. The poles of the observer should be chosen on the following basis:- a. They should be chosen arbitrarily. b. They are independent of the poles of the original system. c. They should be chosen so as to be in the left half of the s-plane, or equivalently, inside the unit circle of z-plane, to meet the stability conditions. (1. They should be placed at such locations so that the observer system is faster than the control. To get an observer with the same order as that of the original system, we let the transformation T be the identity matrix 1. Therefore, (10) becomes:- 55(1) = Ii £(t) + LCx(t) + Bu(t) (11) 13 2.2.3 DetennmatroncflsttemMamcemflIheflbscryer To determine the system matrices A , B and the gain matrix L, we consider the error e(t) defined by (3) . Taking derivative of (3), we get e(t) = x(t) — in) (12) Substituting (1) and (11) in (12) , we get é(t) = Ax(t) + Bu(t) — [Aim + LCx(t) + Bu(t)] m e'(t) = Ax(t) + Bu(t) — 21in) — LCx(t) — Bu(t) Now substituting in) from (3) in above, we get é(t) = Ax(t) + Bu(t) — 21(x(t) — e(t)) — LCx(t) — 311(1) m a0=fidO+GLJLth0MIB~flM0 (B) When the error e(t) tends to zero, the coefficient matrices of (13) must also be zero, therefore, A—i—LC=0 which gives fizA—LC 0% mm B—é=o which gives B=B as 14 It is seen that B is the matrix B of the original system. The observer gain L can be chosen arbitrarily to get the desired eigenvalues of the system. The matrix L can be determined by control design methods, e.g., pole placement. Now substituting (14) and (15) in (11), we get the observer equation depending on the system matrices of the original system. in) = (A — LC)SE(t) + LCx(t) + Bu(t) (16) or §(t) = A£(t) + Bu(t) + L(y(t) — C£(t)) (17) The block diagram showing implementation of (17) is shown in figure 2.3. 2.3. W 2.3.1QutpuLEeedhackLQntml Consider a fully linearizable system, refer to [l 3], represented by:- x(t) = Ax(t) + 13[fI (x) + GI (x)u(t)] (1 8) YO) = CW) (19) In equation (18), the input term is a fimction of the state x and the input u(t) with a coefficient matrix G,(x). The basic structural property of a linearizable system is the fact that it can be transformed into coordinates where the nonlinearity of the system ( or a part of it), satisfies the matching conditions. This permits the cancellation of the nonlinearity by the state feedback. However, exact cancellation is almost impossible due to parameter uncertainty, model simplification etc. The fact that the nonlinearity satisfies the matching condition implies that error in modeling the nonlinearity will also satisfy the matching Figure 2.3: Block diagram showing implementation of equation (17). l6 condition. Therefore, robust control techniques like variable structural control, min-max control, and high gain feedback can be used to robustify the linearization. To implement controllers using output feedback, we need to estimate the unmeasured state variables. The state estimators will have to be designed to preserve the robustness achieved with state feedback. The output feedback controller is designed in two steps. In first step, a state feedback control is designed to achieve the control task, and in the second step, an observer is designed to recover the performance achieved with state feedback. To get a description of the system which can be treated well, it is assumed that the system can be linearized perfectly at a chosen state depending upon system requirements. The linearizing state feedback control:- u = G," (x)[—fl (x) + v] (20) cancels the nonlinearity of the system. This cancellation, however requires perfect knowledge of the nonlinearities f1(.) and G,(.). Since perfect knowledge is almost impossible, it is more realistic to assume that we only know the models f,” (.) and Gm (.) of the actual nonlinearities f,(.) and Gl(.). To consider the nonlinearity, a perturbation term 8 (x,u), depending on the state x and the input u is added. Therefore, the system (18) can be represented as:- i(t) = Ax(t) + B[—f,,, (x) + G (x)u(t)] + 35 (x,u) (21) ln The key feature of this perturbation is the fact that it satisfies the matching conditions, that is, it enters the state equation exactly at the same point where the control enters. Suppose now that a state feedback control has been designed as:- 17 14(1) = Gl-nl (X)[-fu.(X) + 490,30] (22) where (D(t,x) is linear or nonlinear control that ensures robust stabilization or tracking in the presence of the uncertainty 5 . Now substituting (22) in (21), we get J'c(t) = Ax(t) + BCD(t,x) + BS (x,u) (23) Next task is to estimate the state x. Consider the full order observer given by:- i(t) = A£(t) + B[f,,,(i) + G,,,(i)u(t)] + L(y(t) — 02(1)) (24) which reflects the nominal nonlinear model of the state equation together with an error driving term. Now using the estimate J? , (22) can be written as:- um = G]: (f)[-f,,.(£) + arm] (25) Substituting (25) in (24) , we get in) = A£(t) + Btb(t,5c‘) + L(y(t) — 02(1)) (26) Defining the estimation error as:- e(t) = X(t) - £0) (27) gives e'(t) = 5c(t) — in) (28) Substituting (23) and (26) in (28), we get é(t) = Ax(t) — Aim + B O ), such that H(s) approaches zero asymptotically as 8 tends to zero, point wise in- s. The challenging task in nonlinear problems is performing closed loop stability analysis with such observer design to ensure that the closed loop system with the observer recovers robustness properties achieved with state feedback. In [14] and [15] Esfandiari and Khalil use singular perturbation to design the observer gain L. The singular perturbation analysis will be discussed in chapter 3. By representing the closed loop system as a singularly perturbed one, they show the recovery of robustness properties in the presence of nonvanishing perturbations. In particular, they show that the output feedback controller recovers ultimate boundedness achieved under state feedback control. Saberi and Sannuti [16] use singular perturbations and show recovery of robust 19 global stabilization of the origin. Petersen and Holot [17] use an H,o approach to design L. Gibbens and Fu [18] also use the idea of Petersen and Holot to show the recovery of robust tracking in the presence of nonvanishing perturbations. Teel and Praly [19] use singular perturbation approach to achieve semi global stabilization. A common feature of all these observer designs, when the relative degree of the system is higher than one, is that they are asymptotic approximators of the output derivatives. Now consider a second order system having system matrices, A as 2 x 2 , and C as l x 2 , and let the observer gain for this system be given by:- L = [a b]r For (A-LC) to be Hurwitz, we must choose a and b to be positive. The transfer function H(s), given by (32), approaches zero asymptotically, if and only if, its Hm norm does so. By calculating the H00 norm of H(s), it can be seen that a necessary condition for making the norm arbitrarily small is that b >> a >> 1. The various observer designs reviewed earlier arrive at this condition using different procedures. The singular perturbation approach of [14] and [16] starts from the outset by choosing the observer gain L as :- one L=L2[ ] s 1 for some or >0 . All the procedures used achieved the condition b >> a >> 1 by choosing a = 0(1/ 8) and b = 0(1/ 82) for a small positive parameter a. To see that these observers are approximate differentiators, refer back to the observer equation (26), and notice that for 20 sufficiently large a and b/a , the transfer function from (I) to SE is almost zero while the transfer function from y to 56 is given by:- 1 1 3 +1 I (SI—A+LC)_L= bs z|:] 2 a S +I;S+1 S Q-nlt—t where the approximation is valid on any compact frequency interval for sufficiently large a and b/a. Keeping in view the above discussion, for our thesis we design the observer gain for second order system as:- 1 1 T L: — — I8 82I We use this form of observer gain matrix, which can produce very large numbers. That is why, it is called as high gain observer. 2.4..THE_EEAKING_BHENQMENQN 2.4.IReasonscfpeaking There are some intrinsic difficulties with controllers which use high gain observers. First, such controllers amplify measurement noise. Second, they produce large overshoots in the transient response of the closed loop system, which we refer to as peaking phenomenon. These large overshoots, in the transient response, can even destabilize the system completely. The observer gain L is designed to bring the transfer function H(s), given by (32), as close to zero as possible. This requires the observer gain to be very large. The high gain L assigns the eigenvalues of (A-LC) far to the left in the left half of the s-plane. Typically, L depends on a small parameter a , such that as 8 tends to zero, the eigenvalues 21 approach infinity. The corresponding modes in the state transition matrix exp[(A-LC)t] take the form exp(-at/e) for some a > 0. Hence they decay to zero with in an 0(8) time interval. For a relative degree one system, the coefficients of these exponential modes will be bounded as L approaches infinity because the initial states are totally bounded. For the systems of relative degree higher than one, the coefficients of the exponential modes are necessarily driven to infinity as L increases towards infinity. Let us use the second order system, considered previously, to illustrate this point. We already know that reducing the transfer function H(s) to zero requires designing the observer gain L = [a b]T such that b >> a >> 1. By calculating the state transition matrix, it can be seen that the 2-1 element is given by: ,, 2 b e ‘lzsin[,Ib—g—]t 2 4 b-5‘. 4 when 4b > a2 , and when 4b < a2. The magnitude of the coefficient of the exponential mode is greater than JD in the first case and b/a in the second case. Thus, as we increase a and b/a , we drive this coefficient towards infinity. This causes an impulsive behavior in the transient response of the estimation error. It is to be mentioned here that, the peaking phenomenon is 22. associated with the process of designing L to reduce H(s) to zero, irrespective of the particular design procedure used to design L. 2.4.2 MetthchducePeaking Following methods help in reducing the peaking phenomenon. a. In the presence of peaking, we have a bigger incentive to use singular perturbation theory. This process involves scaling some of the variables by a dependent factor. Once the system is brought into the standard singularly perturbed form, then it is known from singular perturbation theory that, there is no peaking when the initial states are of the order of 0(1). Peaking is induced only by initial conditions which are of the order of 0( 8’8 ) with B > 0. Thus the mechanism, through which the peaking is induced, has been represented as the value of the initial conditions of some of the state variables. Knowing the scaling factor used to arrive at the singularly perturbed form, we can clearly see how the initial conditions are scaled. Through this process we can see how the region of attraction of the origin will shrink as 8 decreases. We also see that any destabilization effect, as 8 tends to zero, will be induced by initial conditions of the fast variables which take the form 0( 8’5 ). Although the results of singular perturbation theory are limited to cases when the initial states are of order 0(1), realizing the role of the initial conditions of the fast variable points in the direction which lead to the breakthrough result on globally bounded control. b. We can drive the controller and/or the observer into saturation so that it does not exceed a certain value. But the limits of saturation will have to be defined. very 23 carefully. The bounded output feedback control recovers the performance of the bounded state feedback controller as 8 tends to zero. As a second possibility, we can use multirate sampling where we use, in digital control, different sampling times for the control and the observer. CHAPTER3 ANALYSIS BASED ON SINGULAR PERTURBATION 3.1.INIRQDUCIIQN The singular perturbation approach to the analysis design of continuous time systems possessing multiple time scales has matured over the past 25 years. Recently, there has been interest in extending singular perturbation ideas to multiple time scale discrete time systems. Singularly perturbed systems, and more generally, multi time scale systems often occur naturally due to the presence of small parasitic parameters, typically small time constants, or masses etc., multiplying time derivatives, or in more disguised form, due to the presence of large feedback gains and weak coupling. Various mathematical forms have been used to represent a two time scale discrete time systems. Discretization and sampled data control of systems described by singularly perturbed differential equations result in singularly perturbed difference equations. Singularly perturbed difference equations might also arise naturally in inherently discrete time systems. In this chapter, the two time scale nature of the system is exploited to represent the system in the singularly perturbed form. At the end of the chapter, it confirms the intuitive idea that the slow variables can be measured at a rate slower than that of fast variables without degrading the performance of the system. 24 25 32.: 5'.\. I; 1;: ' r. b r. .O - - 3.2.1 Conunumrslrmefimgularlxflertmheismcm To motivate the form of the singularly perturbed difference equation, we start by considering its continuous time analog first. Consider the continuous, linear, time invariant system defined as:- J'c(t) = Ax(t) + Bu(t) (l) y(t) = CW) (2) and the state feedback control is given by:- u(t) = —Kx(t) + Nr(t) (3) where A, B, C are system matrices in canonical form. A is n x n, B is n x m, and C is p x n . K is the gain matrix. Now consider the observer equation 51(1) = A220) + L(y(t) — 02(1)) (4) and the output feedback control, given by:- u(t) = —K£(t) + Nr(t) (5) where £(t) is the estimate of x(t). Now consider the error difference between the actual and the estimated states, given by:- e(’) = W) - fit) (6) which gives é(t) = 1(1)— 56(1) (7) Using (1) and (4) in (7), we get e'(t) = Ax(t) + Bu(t) — A£(t) — L(y(r) — Cx"(1)) 26 Now using (2) in above equation, we get e'(t) = Ax(t) + 811(1) — A£(1)— LCx(t) + LC£(1) or e(t) = (A — LC)(x(t) — 2(1)) + 311(1) Now using (6) in above equation, we get e'(t) = (A — LC) e(t) + Bu(t) (8) The system matrix A can be written as:- A = Ac + BA (9) where AC is in canonical form of n x n , and A is some arbitrary matrix. Therefore A—LC=(AC +BA)—LC using above equation in (8), we get e(t) = (Ac + BA — LC)e(t) + Bu(t) (10) Now choose D(s) such that D"(e) exists and e > O is a small parameter. In general — q 8"_' 0 ... O 0 ° 3 D“): 82 i 8 O 27 rI—l 0 CI 8 O D“(e)= , _1_ . 82 l 0 e L0 O 1_ where n is the order of the system. We define another variable as z(t) = D"(e)e(t) Taking derivative of (1 1), we get z'(t) = D"(s)e’(t) Substituting (10) in (12), we get 2(1) = D" (e)[(Ac + BA — LC)e(1) + 311(1)] Using (11) in above equation, we get 2(1) = D" (e)[(Ac + BA — LC)D(1—;)z(t)+ 311(1)] 01' 2(1) = D“(e)(A, — LC)D(e)z(1) + D“(e)BAD(e)z(1)+ D"(e)Bu(1) (11) (12) (13) Also choose the observer gain matrix L, such that (A-LC) is Hurwitz. ( The design procedure for L has already been discussed in chapter 2 ). In general, T L- 9.1. 9; or” _ 2 n 8 8 8 The general canonical form of the system matrices is:- Therefore Similarly we can prove that:- D'1 (8)3 = I- 8 o 1 0 0 0 1 [0 =[1 0 '31 1 8 —a2 0 8.2 Ac—LC= = *1." 0 _8 D" (e)(Ac — LC) D(e) = l l n—l O 28 8 (14) (15) 29 Using the results (14) and (15) in (13), we get 2(1) = éAozU) + BAD(e)z(t) + Bu(t) 01' 22(1) = (A0 +e BAD(c))z(t) +e 1311(1) (16) Now writing (1) and (16) in matrix form, we get 1“”) I" ° 11"“) [BI . = + u(t) (17) sz(t) 0 A0+eBAD(e) z(t) SB or 2(1) _ A A (BAD [21(1) BI I2(1)I’I0 0+: (8) 120) +[BJu(t) (18) Equations (17) and (18) are the standard form of continuous time singularly perturbed system. x(t) is the slow variable and z(t) is the fast variable. Now we define output feedback control that consists of both slow and fast variables. Using (6) in (5),we get u(t) = —K(x(t) — e(t)) + N r(t) (l9) substituting (11) in (19),we get u(t) = —K(x(t) — D(e)z(t))+ N r(t) (20) 3.2.2 DiscretizationnflSingularlxRQmMsttem We can write equation (18) in the form:- 5'c‘(t) = Isl—fit) + Bu(t) (21) __ A 0 2 B Where A = A0 +8 BAD(8) B :[ ] 8 3O . _ 1(1) _ _ x(t) x(t) — [z(t)] x(t) — [z(t)] Now we discretize (21) at a fast sampling period 8T, to get and f(n +1) = A, f(n) + Bd u(n) (22) where n is the fast time scale and Ad and B, are discrete time matrices . In general A, = e” I; B, = [#111 B 0 Therefore, using above equations, we get _ ._ _ exp(Ae 7) O I A“ ’ CXPMS T) ‘I 0 exp((A0 + e BAD(e))T)I Now taking these matrix elements one by one:- expz<£>I + N115) (31) 8 8 8 8 and u(n) = 11(5) 1‘- s n < E (32) 8 8 8 Now substituting (31) in (28) and (29), respectively, results in a closed loop system, described for the given interval, given by x(n +1) =(1 + e A, (8))x(n) + e B, I—K(x(1‘—) — D(8)z(£)} + Nr(5)I (33) S 8 8 Now starting from 5 , we calculate the state at w , therefore (33) gives 8 8 [1+1 1 11+] x(k—flI =(1+eA,(e))“x(£)+ Z (1+e A,(8)) e‘HeB, 8 8 It ./= 8 I’KIX(£) — Dte>z(1‘—)} + Nr(£)I 8 3 8 Ir+1_l t: k+l = (1+eA,(e))“ — Z (I+8A,(8)) k j: 8 "’e B,K 11(5) + 8 EL, 8 [1+1 2 (He/11(2)) . "”eB.KD 2(51+ 8 , It [=- 34 field! Z(1+eA,(e))k§ "eB,N r(-:— ) i=5 8 xII—flI = 1 + 11 + 111 (34) 8 Now solving for I, II, III separately. Rewriting I, we get [(+1 I k+l 1= (1+8A, (e))' +e Z I1+eA, (e) . ”’(—B,K)I 11(5) (35) I- 8 The expressions given below, which have been used in [12], (I + e A(e))” e“) + 0(a) (36) 8 a (1 +8 24(8)): j=eI 4(OI’a't + 0(8) (37) hold for any matrix A that is analytic at 8 = 0. Now using (36) and (37), equation (35) gives:- 1 = [(12419) + 0(a)) + I I 1101111 + oIBon<§> where BO = -BK Now using the fact that A,(O) = AT, we have eA' (O) = e‘” and therefore, we have 1 l IeAl(0)’dt = Jeri/Id! 0 O and after making change of variables, we get Ie4"°"d1=—l-Ie’"d1 T0 lherefor ()1 N08 1: 01 there Now ( Of “her: New 35 Therefore, I can now be written as:- I=[(e‘"+0(8))+{1T:[e’“dt+0(8)}B,,:Ix( ) 01' 1 T ,, k 1:.[AH .7 Oje 1113,, +0(8)Ix(;) (38) Now take the second part of (34), i.e., II, and using the same procedure as before, we get ”=11 1 T ,, k or II = |:? [e dth + 0(8)I2(;) (39) 0 [eA'dt + 0(8)}B,KD(8)I2(£) 0 8 Nil-— where Bf= B ,KD(8) Now consider III of (34) and use (37) as before; we get 1 T A1 111: IE1: Oje dt+0(8)}B, NIr(: ) '~]I-' or 111 =[ [ta/“111B, + 0(8)Ir(£) (40) 0 8 where B, = B,N Now substituting (38) , (39) , and (40) in (34), we get 425.1)- I. ,. i 0;. .11...,..(.)I.g). I l T ~1|~ [eA'dth + 0(8)I2(‘:)+[ [eA'dtB, + 0(8)Ir(—:—) (41) 36 Taking into account the fast variable z(n), substituting (31) in (29) results in closed loop system:- z(n +1) = (e 4.1 + 0(8))z(n) + 3 B2 [—K{x(£) — D(e)z(§)} + Nr(§)] (42) . k As before, starting from — , we calculate the state at —k—+—1 . 8 8 k+l_l k+1 _ AOT 1" E e AOT 2"“! {—8 )_(e +0(s)) z(s)+ I; (e +0(e)) 83, k [— K{x(—) — Dz(5)l + N45] 8 8 J 8 = (e’l’r +0(8))le + 8: (em +0(e)) ‘ "jeBzKD(e) z(£)+ .=k 8 [:14 .. k+I-l-j . k (e"‘" +0(a)) . s(-B,K)Jx(—)+ .=k 8 :(e’w +0(e)) '5 +18(B,N) r(—:—) " J z(k+1)=1+11+111 (43) 8 Now consider I, II, III separately. k+l k+l 1 = (eA’o +0(e))" + Z (e‘o’ +0(e)) . ""’aB,KD(e) 2(5) k 37 Since Re MAO) < O , exp(A0T) is bounded, and the fact that:- 1 (e’w +0(s))” Sl‘y'l‘fifikl O0 i=0 Therefore, k+| 2 (6’4” + 0(a)) . "”eB,KD(e) = 0(2) , k j: 8 So for I, we get k k 1 = (0(3) + 0(8))z(;) = 0(8)Z(;) (44) Now consider part II of equation (43), i.e., It+l_l 1 11 = 2 (e a)" + 0(a)) S "”e(—B. K) 9x(£) .gk 3 and using the same argument as above, we get k 11 = 0(s)x(—) (45) a and proceeding in similar way for 111, we get 38 111 = 0(a)r(§) (46) Now substituting (44), (45), and (46) in (43), we get k + 1 Z( 8 -—-)= 0(8 )Z(: )+ 0(8)X(: )+ 0(8)r(: ) (47) Now writing (41) and (47) in matrix form, we get [(+1 I I k x(—) _ e“‘+ ije ’“dtB +0(e) lje ’“dtB +0(s) x(g) k+1 To To + Z 0(2) 0(2) z(g) 1’ ., ?6le d:B,+0(e)r(§) 0(8) 01' k =|:A11+0(3) A12 +0(3):| x(g) +[Bn +0(8)]r(£) (48) 0(a) 0(2) 2(5) 0(2) e 8 where All = e" +1T JeA'dtBO (49) IT ., A12 =;!e d113, . (50) I. = ~17; IeA'dtBi (51) For sufficiently small a , equation (48) can be written as slow sub system, given by:- f(-k-:—l) [An An] fig) [Bu] (k) (52) = + I’ - 2(531) 0 0 2(5) 0 a with same initial conditions. Sampling (18) at fast sampling period 8T resulted in (48) where the control is kept constant over the interval 5 S n < 511 . However dropping the 0(8) term from (48) a 8 results in (52) which is almost same system, with some error, that can be obtained by sampling the original system (1)-(3) at slower sampling period T. That is, the singularly perturbed system (18) sampled at fast sampling period ST is O(s)+v close to the slow system (1)-(3) sampled at slow sampling period T, i.e., k _ k x(—)—x(—) = 0(e)+v k > O (53) 8 s where v is the error term given by A12 . For zero initial conditions, there is no error and the difference between the two models, the model under state feedback and the model under output feedback, is exactly 0(8). However, for different initial conditions, the error v is induced which is given by A12 . To see as to why this error is induced, consider the first cycle, i.e., the interval from 0 to 1/8. Due to different initial conditions, the two models start from different states having more difference, and by the time they reach 1/8 from 0, the difference between the two states will have decreased, thus decreasing the error. Now, the starting conditions for the two models will almost be same but not exactly the same. In fact, after one cycle the difference between the two models will be 0(Tc), i.e., 4O 1 1 x( ;) stale feedback — x( ;) output feedback = 0( 7:: ) (5 4) This is an error which will be carried along after one cycle. However, this error can be reduced significantly by having small values of Tc and e . Therefore, for smaller values of Tc and a, the error induced will be very small and we shall have closeness between the two models. To see the closeness between the two models we proceed as following:- From (48) , we have 4" +1) = (A,, + O(s)x(§) + (.4,2 + 0(8))z(§) + (3,, + 0(8))r(§) (55) 8 and z( +1) is given by (47). Now tracing back the different matrices we get 7‘ 1 T T A,,=eA +—T— je A’dz(— [e “‘"dsjBK 0 0 1 T , A,2 = .7: jeA dtB,KD(e) O and Bu = 1T iemdt[ ire'nstJBN 0 0 Substituting the expressions of A” , A12 and B“ in (55) and rearranging, we get 8 0 0 x(k—L1)=elrx()£ +-1—lje ’"dt —ef[’mdsBKx(—:- —)+7je A“dsBNr(: -—+) 8 TO B. fwd: B, Kn(e)]z(5) + 0(.)[x(1‘.) + 2(5) + 45)] (56) 0 g e s 8 Now for small values of e , i.e., for a tending to zero, we drop out the 0(8) term, and 4] I e "“ds = T D(e) = 0(0) Therefore, (56) now becomes:- xUC—f—l) = e”x(£) + lewd! B[—Kx(£) + Nr(£)] + [J— IeA'dt B,KD(O):|2(£) (57) e s O a a T 0 3 Now using (3) for t = k / a in (57), we get x(fl) = e”x(£) + ie’“dtBu(£)+[—1—38’"dtB,KD(O)]z(£) (58) a a 0 a T 0 8 Looking at (58), the first two terms represent the same model that is obtained by sampling (1) at slower sampling period T. The third term in (58) represent the error v present due to fast variable having different initial conditions. Now since I X (en) | < 1, and | A (exp(A0T))| < l, the system (48) is asymptotically stable for sufficiently small a . Hence, the difference in deviation from steady state will become zero, i.e., 3?[£)—>0 E(£)—)O as k—)oo e a That means:- . . . k k + Since we have consrdered an interval — e S n < ——1 , during which x(n) and z(n) are a bounded functions of x(k) and 2(5) , therefore a 8 3?(n)—>O 2'(n)—-)0 as n—>oo Hence, x(n) and z(n) are also bounded for all n 2 0 . 42 As a result of all this discussion, we conclude that we can recover the performance of the system under state feedback using output feedback control. We see that the system is also asymptotically stable and bounded and reach steady state value after the first cycle. However, the closeness of the two systems is followed after first cycle when the initial conditions are different. CHAPTER 4 SIMULATION RESULTS In this chapter, the formulation of the state feedback control, output feedback control using high gain observer, and results of different simulations are discussed. The concept of multirate control is used to design output feedback control. Then the effects of changing different parameters like initial conditions, a, and sampling time are discussed. Also the peaking phenomenon and saturation of control is discussed. Finally the results, and future recommendations are given at the end. 4.1W 4J.lIhLCQflL[QH§.d.S¥SI§HLA.d§..S§IX.QIHQLQI For my thesis, I took the dc servomotor as the system to be controlled [20]. The motor can be described as a linear, time invariant system. We have the following second order model for the dc servomotor: ®.(r)=w(t) (1) t kam "I (6(1) = (2) where (9",(1) = position of the motor ua (t) = input voltage (u(t) = angular velocity 43 44 J = moment of inertia of motor and load : 2.6 x 10‘5 Kgm2 R = Resistance : 1.6 ohms Kb = Back emf constant : 0.0782 Vs KT = Torque constant of motor : 0.076 Nm/A . . JR 1 m = Mechanical time constant of motor : K, K ., Now writing (1) and (2) in matrix form, we get - 0 1 0 {Am}. ‘l@"‘”l+ .1. 03(t) "I: (u(t) KIT... " _l 9 "I, y(t) = [1 0][ 553)] (4) It is to be noted that there is only one output of the motor,®m . Now replacing the variables by their specific values of the motor, (3) is written as: IMH“ . M ° 1 (u(t) 0 —142.86 (u(t) 1826.85 or, we may write (4) and (5) in the standard form of state space model, given by: 12(1) = Ax(t) + Bu(t) (6) y(t) = CW) (7) where x(t) {9.0)}: [x(t)] (”(0 x2 (I) t _ ®m(t) _ xl(t) x”' mm ‘ x. oo , that is, lim Y (k) , we get the following equation: limY(k) = [lim(z-1)Y(z) = linll(Z-1)'H(Z)°ilr am am :__’ z‘ : H(1)r (13) To reach now the value of the step input, we have to multiply the step output r by the inverse of the limit of the transfer function, which is H(l)". Now substituting (12) in (8), we get x(k +1) = (a — bK)x(k) + bNr(k) (14) Now applying z-transform, we get zlx(z) = (a — bK)x(z) + bN r(z) Solving this equation for x(z) and then substituting in (9), we get Y(z) = c(zI — a + bK)‘l bN r(z) Now taking limits, we get lzi—rrllflz) =c(I—a+bK)"bNr(1) (15) Now comparing (15) with (13), we get N = H(l)“ = (e(I—a+bK)-'b)" (16) And after substituting the values, we get N = 0.0270. 49 4.1.4C0nstmctimfanflhsemr To check, whether our system is observable or not, we use the method described in chapter 2. We find the rank of Observability test matrix given by: N = [A T A TCT] Now using the given matrices of the plant, we get “13 ‘31 It is obvious that the rank of N is 2, equal to the order of the system, therefore, the given system is completely observable. The observer structure has the same order as the original system. Therefore, the observer equations are given by: . . a . (9,, =0) +—é'—(o,,, —o,,,) (17) c3 = Sg—(om 43),) (18) The parameters a, and a2 are chosen to be one. The observer gain matrix L is chosen to be: The equations (17) and (18) can be written in matrix form as: A _l 1 A .1 (Z) = i (Z? + fi 9.. (19) 0) -7 0 0) __ 8 82 50 where 6)," is the output of the motor. Now if we choose the value of 8 = 0.01667, which corresponds to l = 60 , the gain matrix L is given by L = [60 3600]T which corresponds 8 to very high gain. With this value of 8, (19) can be written as: [é]=[ ‘60 1][®]+[ 60 ]o,,, (20) (,3 —3600 0 (,3 3600 The reason for choosing this value of 8 are: a. The poles of the high gain observer are located relatively farther to the lefi in the left half of the s-plane than the poles of the control. This means that the convergence of the estimation error is faster than the actual control. The characteristic equation of the unforced observer system is given by: det[sI — A] = 52 + 605 + 3600 = 0 Therefore, the poles of the observer are located at: s,, = —30 i 13073 b. Increasing the gain, that is making 8 -—> 0, means also increasing the frequency band of the observer. Practical experience shows that the frequency of the observer should be at least 10 times smaller than the sampling frequency. We assume that fobs = 60 Hz. The sampling frequency is assumed to be fs = 2000 Hz, which corresponds to a sampling time of 0.5 ms. Therefore, fob, << f5 . We denote the sampling time of the observer by To , then To = 0.5 ms. Comparing the sampling time Tc of the control, and To 51 . . . . . T of the high gain observer, we see that the ratio IS g1ven by n = F‘ = 10. Thus, each tenth 0 observer update is pushed to the control. Now consider (20). This is a continuous time observer equation. We can write it 0'0) = 4.00) + 8.9.0) (21) y. 0) = C.0(t) (22) where ‘0’ stands for observer state, and 0(1) = (3(1) = [9(1)] co(t) 02 (I) A 0 t and 0(1): (:90) =[ ‘0] (0(1) 02 (I) Now we discretize the observer system (21) - (22) using ‘ zero order hold ‘ and sampling time of T0 = 0.5 ms, using the Matlab command ‘c2dm’. We get 00 +1) = 4.000 + b.,9,,.(k> (23) Y(k) = 6.0(k) (24) where 0 0.7042 0.0043 F 02955 a - 0 = c0 = [I 0] —15.3134 0.9595 15.3134 4.1.SComhinedestemfiingleRateJmplemsntation The term ‘ combined ‘ is used to indicate that the observer is brought into the feedback loop, but both the control and the observer use the same sampling rate. Equations (8), (9) and (12) are rewritten as: 52 x(k +1) = ax(k) + bu(k) (8) y(k) = 636(k) (9) u(k) = -—Kx(k) + Nr(k) (12) Now the output of the observer 0(k) is used in the control law (12) instead of the state x(k). Therefore, (12) takes the form of output feedback control given by: u(k) = —K0(k) + Nr(k) (25) In (23), ®m(k) is the input to the observer. Since the input of the observer is, in fact, output of the actual system, therefore, substituting (9) in (23), we get the observer equation based on the output of the system as: 0(k +1) = b0 cx(k) + (100(k) (26) Now substituting (25) in (8), we get the closed loop system as: x(k +1) = ax(k) — bK0(k) + bNr(k) (27) Now writing (26) and (27) in matrix form, we get [x(kn) _ a —bK x(k) + bN k 28 L0(k+1) " boc a0 0(k) 0 r” ( ) and k y(k)=[c 0(2213] (29) or it can be written as a new closed loop system as: H(k +1) = AA H(k) + BBr(k) (30) y(k) = CC H(k) (31) where 53 0(k +1) x(k +1) H(k +1) =[ ] 0(k) H(k) {1410] and after substituting the values, we get 1 0.0036 -0.0005 0.0013q 0 0.4895 —-0.1762 0.4685 AA = 02958 0 0.7042 0.0043 _15.3134 0 -15.3134 0.9595_ ”0.0005‘ 0.1762 882 0 CC=[1 0 0 0] .. O _ It is to be seen that zero padding is done in BB and CC to make the dimensions compatible with the system, since the order of the combined system is 4. 4.2 SIMLLAIIQNS After constructing the system, now we go to the computer simulations. I used UNIX system to implement all the simulations. 4.2.1 StateEeedhackLQntrol The Matlab program, that implements the state feedback control discussed in section 4.1.1 - 4.1.3, is given in Appendix A. In this Matlab program, the continuous time system matrices are defined first, then the system is discretized at sampling time Tc = 5 ms, and using the Matlab command ‘02drn’. Then the poles are calculated using 2- transform formula 2 = exp(sTc). The gain matrix K is then calculated based on the poles calculated earlier, by using the Matlab command ‘place’. The weighting factor N is calculated. Then the matrices for the closed loop system are defined as A1 and B1. Then 54 defining r as a step input for k = 1000, (or it can be varied), the closed loop system is implemented using ‘dstep’ command from Matlab. The output y and the states x, and x2 are stored in a vector [y,x]. The state feedback control is then calculated using the state vector x. To fix the x-axis to time scale, a time vector is defined, and finally the ‘plot’ command is used to get the plots for desired states / output. The resulting plots for the control U, and the states x1 and x2 and the output y are given in Appendices A1, A2, A3 and A4, respectively. Looking at the plot for U, we see that it has a spurious peak in the transient period, it reaches steady state value after about Is, which is very close to our assumption of t5 = Is as given in section 4.1.2. The control finally settles down to zero. Note that the maximum amplitude reached by the control in its transient period is about 0.22. Now looking at the plot for the state x,, which is the same as the output y, we see that this also reaches its steady state value after about Is, which means that the output is exactly tracking the input which is a step input in this case. The state x2 is following the control U, except for the difference in the transient period, where the amplitude of x2 is much more than the amplitude of control U. 4.2.2 CombineinstemJngleRatelmplementanon The Matlab program that implements the combined system, discussed in section 4.1.5, is given in Appendix B. In addition to the explanation given in section 4.2.1, the continuous time observer matrices dependent on 8, given by A0 , B0 ,C0 and D0 are also defined. For single rate implementation, both the control and the observer are discretized at the same sampling time Tc , by using the Matlab command ‘c2dm’. Then the closed loop system, with the observer placed in the feedback path, is simulated using ‘dstep’ 55 command from Matlab. The output y and the states x1 , x2 , O, , 02 are stored in a vector [y,x]. The states x, and x2 are the states of the controller, and 0,, 02 are the states of the observer which represent the estimates of the states x, and x2 , respectively. Time vector is also defined for x-axis, and finally the ‘plot’ command is used to get the desired graphs of the states. The resulting plots for the output feedback control U, states x1, x2, 01, 02 and the output y are given in Appendices B], B2, B3, B4, BS and B6, respectively. Looking at the graph for U, we see that it attains its steady state value after about two seconds, and finally settles down to zero. This delay in settling time is caused by the observer in the feedback path. However, it is to be noted that this control graph is almost similar to the one described in section 4.2.1. Now looking at the graph for state x], which is also the output of the system, it is seen that it also reaches its steady state value of one afier about two seconds. Comparing this one, with the graph for x, of section 4.2.1, we note that both are similar except for the small difference in the overshoots in transient period and difference in settling time. The state x2 is following the control U, with large overshoot in the transient period. The plots for O, and 02 are same as that for x, and x2, since 01 is the estimate of x, and 02 is the estimate of x2. This is because the initial conditions for both are the same and also the sampling time is the same. The point to note is that, the performance under output feedback control using single rate implementation is similar to the performance under state feedback control. Since zero initial conditions are assumed for both the systems, no peaking is observed in this implementation. The peaking will be observed when the initial conditions are different, as already discussed in chapter 2. 56 4.2.3 Multiratelmnlementation Now we develop a Matlab program that will simulate the system (30) - (31) using two different sampling rates. The dynamics of the control are slow and the dynamics of the observer are fast. The Matlab program that simulates this scheme is given in Appendix C. Note that the two sampling times are now different, the dynamics of the observer are ten times faster than that of the control. The value of 8 is assumed to be 0.01667 as before. Now since the dynamics of the control and the observer are different, so they cause an unstable behavior of the system. Therefore, before they enter the plant, both should have the same (fast) dynamics. To cater for this point, we sample the actual system given by continuous time matrices A, B, C, and D, at fast sampling period To . Therefore, we get discrete time matrices al, b1, c1, and d], and x(k +1) = a,x(k) + b,u(k) (32) and (26) will now become: 0(k +1) = b0 c,x(k) + a00(k) (33) with u(k) defined by (25), the output feedback control. Now we want to keep the control (25) constant for ten points and after the tenth point, we want to update the control, while the states of the observer are calculated at every point. So we define ‘n’ as fast time scale, and select ‘n’ as a ratio of the sampling time of the control to the sampling time of the . T . . observer, i.e., n = T‘ . Since Tc = 5 ms and To = 0.5 ms, therefore the who comes out to 0 be n = 10. Also we define k as the slow time scale. The choice for the number of points k depends on how long it takes for the output feedback control to reach its steady state 57 value. In our case, we have chosen the number of points of k for multirate to be equal to the number of points used for the state feedback control. Then we need to make a loop in the Matlab program, which, will carry out n x k calculations using (25), (32) and (33). The Matlab command ‘dlsim’ is used to implement this scheme. The initial conditions are also required to run the loop, and these initial conditions are defined as x0 and 00 for the control and the observer, respectively. The results are stored in a vector [h,g], where h is the output and g represents the states. Now one cycle consists of ten such calculations before the control is updated for the next cycle. Therefore, there is a need to store the results for each cycle. The program is so designed such that after the very first cycle, the last value of each cycle becomes the initial conditions for the next cycle. Therefore, to avoid double value storage in the vectors gg and uu, we leave the last value of the results of each cycle and store them up to n-l values. By this way, we shall be stacking the results of all the cycles in one vector without having any of the double values. However, there is a problem observed in this procedure, that is, instead of storing ten values for each cycle, we are, in fact, storing nine values. That way, we loose information which corresponds to one complete cycle of fast sampling period, i.e., To . To take care of this problem, we choose 71 = %+1 , so that, 0 now after storing n-l points, we shall have stored, in fact, ten points for each cycle, instead of storing nine points for each cycle as previously. This procedure is shown in Appendix C6. 58 This Matlab program for multirate scheme is run for same initial conditions for both the control and the observer. The initial conditions x0 and 0,, are assumed to be zero in this case. We can see, from Appendices C1, C2, C3, C4, and C5, that the behavior of the output feedback control uu, and the states x, , x2 , O, ,and 02 is exactly the same as it was for single rate implementation of the combined system discussed in section 4.2.2, which means , that, for same (zero) initial conditions, the performance under output feedback control using multirate scheme, is same as the performance under state feedback control using single rate scheme. 4.2.4" 011141 '0 U. -.‘. 1‘11“ 11‘ .-.‘ “no. \ 01.0 This Matlab program can be modified to obtain the results if we use state feedback control instead of the output feedback control inside the loop of the program. To implement this scheme, we replace the equation for u,, inside the loop, by the equation: uo = —Kxo + Nr (34) This scheme is shown in Appendix D. This program is run for the same (zero) initial conditions for both the systems. Now looking at the Appendices D1, D2, D3, D4, and D5, we observe that these graphs are very much similar, in fact, the same, to the one obtained by the state feedback control designed in section 4.2.1. This was the case when the initial conditions are the same and assumed to be zero for both systems. The effects of different initial conditions will be discussed later in this chapter. 4.2.5 BehammofMulhrateSchemunhrstflycle Now to see the behavior of multirate scheme in first cycle, we modify the Matlab program given in Appendix C. We keep n = 10 and change k from k = 100 to k = 1, so 59 that the output feedback control is constant over this one cycle. We also assume that the initial conditions are the same (zero) for both systems. This scheme is shown in Appendix B. We see from the Appendix E1 that the control is constant for one cycle. The Appendices E2, E3 show that the states x, and x2 are rising in the first cycle. From Appendix E4, E5 it can be seen that the state 0, is trying to follow the state x], but state 02 has more steeper trajectory; however it is also rising to attain its maximum value. The important point to be noted here is that all the states attain very low amplitude value in the first cycle. 4.3 70 nit I; I { kl ’aiaul I: All the cases discussed in section 4.2 correspond to the same (zero) initial conditions, the value of 8 = 0.01667 and Tc = 5 ms, T0 = 0.5 ms. Now let us see as to what happens if we change these parameters. 4.3.1 Effects of Changing the Initial Conditions 4.3.1a' 0111-..1‘0 14...: 10.1- 2‘, “0.1.. r 01,0 Now the initial conditions are made different for the plant and the observer, i.e., Xo=[0;01 and 06=[1;1I This scheme is shown in Appendix F. The resulting graphs for uu, x1 , x2 , shown in Appendices F1, F2, and F3, respectively, are similar to the one for the case when the initial conditions were the same (zero). However, we can notice the change in the behavior of O, and 02 given in Appendices F4, F5, respectively. We can see the change in the transient period of both the observer states. This is, because the initial conditions 60 for the observer are different from the initial conditions of the plant, 0,, = [1 ; 1] in this case. The two systems starting at different initial states will naturally exhibit different behavior. The overshoots in the transient response of 01 and 02 do not cause any change in the control uu, and the states x, and x2 , because the control law (34) is not using any of the states 0, and 02 , i.e., the observer is bypassed. However, it is seen that all the states reach their steady state values after about Is. The overshoots in the transient period of 02 is of the order of 0(1). 8 4.3.1bBerf0nnanceilndeLQmputfieedbackE0ntrol The performance of the system under output feedback control, with the same (zero) initial conditions, was discussed in section 4.2.3. In this section, we consider the performance of the same system, but with different initial conditions for the two systems. The initial conditions for the observer are assumed to be 0,, = [1 ; 1], whereas the initial conditions for the plant are x0 = [0 ; 0]. This scheme is represented in Appendix G, and the resulting graphs for control uu, and the states x, , x2 , 0, , and 02 are given in Appendices G1, G2, G3, G4, and G5, respectively. Now the results are quite different from all the previous cases. From the graphs, we can observe the large overshoots in the transient response, which we call as peaking phenomenon, which was discussed in chapter 2. Now since the initial conditions for the observer are 0,, = [1 ; 1], there is an impulsive behavior, i.e., large overshoot, in the transient period. These overshoots are fed to the control given by (25). Therefore, the control (25) also exhibits the large overshoot in its transient period, which is obvious from the graph for uu, given in Appendix G1. 61 These overshoots are then fed to the plant via the control (25), which causes the states x, and x2 to exhibit peaking in their transient period. Looking at the graphs for different states, it can be seen that the transient response of 0, is transmitted to state x, and the transient response of 02 is transmitted to state x2 . Since the output of plant is the input to the observer, these states disrupted with peaking are fed to the observer, which like before, enter the plant via the control (25). This process continues and we observe very large overshoots in the transient period. The overshoots in the states x2 and 02 are of the 1 order of 0(—). 8 However, all the states reach the steady state value after the first cycle. This is because, the fast modes, i.e., O, and 02 decay rapidly in the first cycle as discussed in chapter 3. After the first cycle, the response of the system is due to the slow modes, i.e., x, and x2 . The behavior of the system in the first cycle, for different initial conditions, is given in Appendix H. We can see from Appendices H4 and H5, that the fast modes are decaying rapidly from their starting position. This proves the idea discussed in chapter 3, where we used singularly perturbed approach to prove that, the response of the system, after first cycle, is due to the slow modes as the fast modes decay to zero in first cycle. 4.3.2 EffectsofSaturatinglheLQntml As discussed earlier in chapter 2, we can reduce peaking by saturating the control. In this scheme, we set the limits of output feedback control so that it can swing between specified values. This scheme of saturating the control is shown in Appendix I. A subloop is inserted in the outer loop of the Matlab program, and the maximum swing limits are set 62 to :05. This value of swing limits is chosen keeping in view the maximum swing of the state feedback control. After setting the saturation limits of the output feedback control, the program is run. The resulting graphs for saturated control, and the states are given in Appendices II, 12, I3, 14 and 15, respectively. Looking at the graph for control, we see that, the maximum swing has been limited to i0.5. It is important to note the behavior of the output x, . Due to the output feedback control saturated, the negative part of overshoot, which had an amplitude of about -5 in case of nonsaturated control, has been significantly reduced to an amplitude of -0.4. Also the positive part of overshoot has been reduced to about 1.3 from about 2.5. As a result of saturation, the graph for x, has come closer to the one obtained under state feedback control. Similarly, due to saturation, the overshoots in the transient period of x2 has been reduced significantly. Also, the behavior of x2 under saturated output feedback control is close to the one under state feedback control. The effect of saturation is also obvious on the observer state 0, , which exhibits similar behavior as state x, . However, the observer state 02 , refer to Appendix 15, does not saturate much as the negative part of overshoot remains unchanged, however, the positive part of overshoot reduces from about 7 to about 3. This is because, the saturation does not eliminate peaking form 02 . Therefore, the idea of reducing peaking phenomenon by saturating the control, discussed in chapter 2, is confirmed here. 4.3.3 Effectmehangingj Now to see the effects of changing the value of 8, we keep the other parameters like Tc , T,, , initial conditions, same as before and change only 8. Now we assume the 63 value of 8 ten times smaller than the previous value, i.e., now we have 8 = 0.001667, which corresponds to l = 600. The observer gain matrix L, now has large numbers, i.e., 8 L = [600 360000]T The poles of the observer are now located, even farther to the left in the left half of the s- plane than the poles of the control. The poles of the observer with this value of 8 are located at: s,, = —300 i 13006 This means that the convergence of the estimation error will be even more faster than the control as compared to the previous case. The Matlab program that simulates this scheme for multirate case is given in Appendix J. The resulting graphs for the control and the states are given in Appendices J1, J2, J3, J4, and 15, respectively. In this simulation, the initial conditions are assumed to be the same (zero). We can see that, the control and all the states attain their steady state value after about Is. Whereas for the same program with 8 = 0.01667, as given in Appendix C, it took about 23 for the control and the states to reach their steady state values. The graphs for 8 = 0.001667 are very much close to the one obtained under state feedback control given in Appendix A. Now let us see the effect of having different initial conditions. In the Matlab program given in Appendix K, the initial conditions for the observer are set to 0,, = [1 ; 1] and for the plant x,, = [0 ; 0]. The resulting graphs are given in Appendices K1, K2, K3, K4, and K5, respectively. We can observe the peaking phenomenon, but the point to note is that, the peaking is observed for a very short period in the transient period. It seems to 54 be a sort of pulse with very short time period and large amplitude in the first cycle, after which the system reaches its steady state value. The effect of decreasing the value of 8, has caused relatively larger overshoots in the control and the states x2 and 02 , as can be seen from the graphs given in Appendices H1, H3, and H5, respectively. Since, due to different initial conditions, state of the observer 02 exhibits more peaking in the transient period, which is being fed to the control, therefore the same effect appears in the transient response of the control. Now at the output, we have only one state x], which is fed back to the observer, therefore the state 02 remains unaffected thereafier. However, the control and ultimately the state x2 , will be effected by the state 02 . That is why, we see the large overshoots in the transient periods of control and x2 . We also observe that, as 8 is made smaller, the overshoots in the transient periods of x, and 0, have been reduced as compared to the case of previous value of 8. Also notice that, the amplitude of the overshoot of 02 is about ten times larger as compared to the case when 8 was ten times larger. Now let us saturate the control to reduce the peaking. The saturation level for the control is fixed to i0.5 as before. This scheme is given in Appendix L. The resulting graphs for control and the states are given in Appendices L1, L2, L3, L4, and L5, respectively. Looking at the graph for the output x, , we note that the response has been improved a lot as compared to the case when 8 = 0.01667. The negative peak in the transient period has been reduced significantly, and this graph is closer to the one given in Appendix A2. Therefore, by reducing the value of 8, we get the response under output 65 feedback control closer to the one under state feedback control. The effect of saturation is also obvious from the graphs given in Appendices L3 and L4. Now let us see the behavior in the first cycle for 8 = 0.001667. For the same (zero) initial conditions, the response in first cycle is almost same as discussed earlier for the case when 8 = 0.01667. However, for initial conditions different from the previous case, i.e., for 0,, = [1 ; 1] and x,, = [0 ; 0], the response is different. The scheme when the initial conditions are the same (zero) is given in Appendix M and the corresponding graphs for control and the states are given in Appendices M1, M2, M3, M4, and M5, respectively. And for different initial conditions, the scheme is given in Appendix N, with corresponding graphs given in Appendices N1, N2, N3, N4, and N5, respectively. In the first cycle, the states x, and x2 are still rising, but as is seen from Appendix N4, the state 0, is reaching its steady state value, after decaying rapidly. Also, observing the state 02 from Appendix N5, we see that, after decaying very rapidly and attaining the maximum overshoot, the state is trying to reach the steady state value. This shows that the decay of fast modes in the first cycle is even more rapid as compared to the case when 8 = 0.01667. This also confirms the idea discussed in chapter 3. 4.3.4 Effectmfflhanginmnplinglimes Now let us assume a sampling time of 10 ms for the control, i.e., T,, = 10 ms. To keep up the ratio of 100 between the sampling times of the control and the observer, we assume sampling time for observer to be 0.1 ms, i.e., T,, = 0.1 ms. The Matlab program for the simulation of state feedback control, using new sampling time, is shown in Appendix P. Since the poles of the system are dependent on the sampling time due to the 66 relation given by z = exp(sTc), therefore they will change depending on the value of the sampling time. The program for new sampling time is run for 500 sampling points, and the corresponding graphs for the control U, and the states x1, x2 are given in Appendices P1, P2, and P3, respectively. Looking at these graphs, we see that they are exactly similar to the one given in Appendix A. It takes about Is to reach the steady state value as for the case when the sampling time was T, = 5 ms. For multirate implementation, we keep the control constant for n = 100. Now if we sample the control at T, = 10 ms, then to get 11 = 100, we sample the observer at T,,=0.l ms as n =% . That means, the dynamics of the observer are about 100 times 0 faster than the dynamics of the control. Using these sampling times means that every 100th update of observer is being fed to the control. In this case when n = 100, we shall repeat the computations for k = 500 to get the interval of 55 on x-axis. This scheme of multirate implementation is given in Appendix Q. The resulting graphs for the control and the states are given in Appendices Q1, Q2, Q3, Q4, and Q5, respectively. These simulations are for the case when the initial conditions for the two systems are different, i.e., 0,, = [l ; l], and x,, = [0 ; 0]. Looking at these graphs, we see that, the behavior of the control and the states is almost similar to the one given in Appendix G. The only difference is in the amplitude of the overshoots in the transient period, i.e., the peaking of little less amplitude has been introduced. This peaking can be reduced by saturating the control as before. It is also seen that, the steady state value is reached after about 1.53 which is exactly the same as was found in case of previous values of the sampling times. 67 Therefore, changing the sampling times have not produced any significant change in the behavior of the system. 4.4 W After going through all the simulations, as given in Appendices A-Q, we conclude the following results. a. The state feedback control designed was stable and bounded, and reaches its steady state value. The system worked good under state feedback control. All the states were stable and bounded and reached their steady state value. The output feedback control designed also achieved stability and boundedness and reached the steady state value. As a result, all the states were stable and bounded and reached their steady state values. The performance of the system under output feedback control was as good as under state feedback control. In other words, we could recover the performance of the system under state feedback control by using the output feedback control. In the first cycle, the fast modes decay rapidly and afier the first cycle, the response of the system is due to the slow modes with small error induced by the fast mode. As 8 —) 0, the convergence of the estimation error is much faster, and the system’s performance under output feedback control is very much closer to the performance under state feedback control. j. 68 Changing the initial conditions, i.e., having different initial conditions for the plant and the observer induces peaking. Saturating the control helps in reducing the peaking phenomenon significantly. The effect of changing the sampling times is not very significant, and ultimately it does not effect much the performance of the system, as long as the sampling time is chosen small enough. The ideas discussed in chapter 2 and 3 were confirmed. 4.5 RECQMMENDAIIQNS P I have the following recommendations for future work. In my simulations, l have used only one input, that is, the step input. These simulations should be run with different inputs, such as, impulse input, ramp input, etc. to see the behavior of the system. In the analysis given in chapter 3, the observer is assumed to be continuous time, whereas [12] suggests that the observer should be in discrete time. Therefore, the same analysis should be done with the observer converted in discrete time. In my simulations, the saturation of the control could not eliminate peaking significantly from the observer state 02 . Therefore, efforts may be done to reduce it. The simulations are performed for a stable system. However, the same program should be tested for an unstable system and compare the results. 69 CQNCLIISIQN. The performance of a linear, time invariant system was tested using the output feedback control that uses a very high gain observer in its feedback path. The behavior of the system was checked, theoratically, in the first cycle using singular perturbation theory. The simulation results later, proved that the fast modes decay in the first cycle rapidly and the response of the system after the first cycle, is due to the slow modes. Also, simulation results proved that, the performance of the system under output feedback control was as good as under state feedback control. In other words, we could recover the performance of the system under state feedback control by using the output feedback control. It was also proved that, the saturation of the control helps in reducing the peaking that is caused by having different initial conditions for the two systems. It is also seen that by making the value of 8 very small, the system’s performance under output feedback control can be brought very close to the performance under state feedback control. APPENDICES 70 APPENDIX A Matlab program for State Feedback Control A = [0 1;0 -l42.86]; B = [0;1826.85]; C = [1 01; D = [0]; To = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh') S, = (-6/sqrt(2))+i*(6/sqrt(2)); 32 = (-6/Sqrt(2))-i*(6/Sqrt(2)); Z1 = e"19(SI'WI‘C); Z2 = CXP(32*TC); Pc = [Z1 Z2] K = place(a,b,Pc) 1= [1 0;0 1]; N = inv(c*inv(I-a+b*K)*b) A1 = [a-b*K]; Bl = [b*N]; 1U = [1]; k = 1000; step = [k]; NN = N*ones(k,1); [y,x] = dstep(A1, B1, c, d, IU, step); U = (x*(-l)*K')+NN; x1 = X(Z,1); X2 = X(I,2); for k = l:length(U) t(k,1)=k*Tc; end whos; plot(t,U); title( ' plot for U , k = 1000, Tc = 0.005, state feedback control ' ) xlabel ( ' time (sec) ' ); ylabel ( ' amplitude ' ); end 71 APPENDIX Al plot for U 11:11:00. Tcaooos. Sate feedback control 0.25 l r l I I r I I I 0.2- 0.15-1 0.06 r I— p _ 005 L l 1 l l O . . 72 APPENDIX A2 pbt b1 :1 ,k .1m0.Tc-n 0.005 1.2 1 1 1 1 1 1 1 1 ‘ - 0.0 - 0.0 '- 0.‘ '- 0.2 r 0 1 1 1 1 1 1 1 1 0 0.5 I 15 2 2.5 3 3.5 4.5 the Inc] mpkude 2.5 73 APPENDIX A3 pbt 101:2 .k a IMOJ'ca 0.005 I I j 4.5 74 APPENDIX A4 plot for} .11 - 1000. T1: - 0.006 1.2 1 r 1 1 T f 1 1 1 1. 0.0 . 0.6 ' 0.4 - 02 ’- 0 1 1 1 1 L 1 1 1 0 0.5 1 1.5 2 2.5 3 3.5 4.5 inc {soc} 75 APPENDIX B Combined System - Single Rate Implementation A = [0 1;0 -142.86]; B = [0;1826.85]; C = [1 0]; D = [0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S, = (-6/sqrt(2))+i*(6/sqrt(2)); $2 = (-6/Sqrt(2))-i*(6/Sqrt(2)); Z, = exp(s1 *Tc); Z2 = exp(s2*Tc); PC = [Zr Zz]; K = place(a,b,Pc); I = [l 0;0 1]; N = inv(c*inv(I-a+b*K)*b); 8 = 0.01667; A0 = {-1/8 1;-1/(8"2) 0]; Bo = [1/8;1/(8"2)]; Co = [l 0]; D0 = [0]; [ao,bo,co,do] = c2dm(Ao,Bo,Co,Do,Tc,'zoh'); AA = [a -b*K;bo*c ao]; BB = [b*N;0;0]; CC = [c 0 0]; DD = [0]; k = 1000; step = [k]; ID = [11; NN = N*ones(k,1); [y,x] = dstep(AA, BB, CC, DD, IU, step); K = [0 0 K]; U = ( x*(-l)*K' )+NN; x1 = X(I,1); X2 = X(I,2); 0, = x(:,3); 02 = x(:,4); for k = l:length(U) t(k,1) = k*Tc; end 76 plot(t,U); title ( ' graph for U, 8 = 0.01667, Tc = 0.005, k = 1000, single rate combined system ' ) xlabel ( ' Time(sec) ' ); ylabel ( ' Amplitude ' ); end Ampwde 0.10 APPENDIX B1 77 Plottor Ll .epeo.01667.Tc-0.005.k-10w.e1n¢e are combined system I I I I T I I 2.5 Tineteec] 78 APPENDIX B2 Plot bl x1.epe - 0.01007.Tc - 0.005. 11 . 1&0 I I I I I I I l I L L l l l 1 .5 2 2.5 3 3.5 4 4.5 Tineteec] ‘FLJ . Aliphatic 2.5 79 APPENDIX BS 131131le2. we. 0.01667.Tc- 0.M5.k .1000 T I I I I - .— l I I - 1 .5 2 2.5 a 3.5 Theteec] 4.5 APPENDIX B4 80 Plotter 01.epe- 0.01567.Tc a 0.005. It . 1000 I I l I 2.5 Theteec] 4.5 Amanda 2.5 81 APPENDIX BS P101101 02.0p8: 0.01667.Tc- 0.005.1t-1000 I I I I I I r l I l l l 1 .5 2 2.5 a 3 .5 Theteec] 4.5 82 APPENDIX B6 P1011011. epe :- 0.01667.Tc= 0.005.11 21000 I I T I I I I l L I 1.5 2 2.5 3 3.5 4 4.5 5 T'eneteec] )— - - _ 83 APPENDIX C Multirate Implementation - Zero Initial Conditions A = [0 1;0 -142.86]; B = [0;1826.85]; C = [1 0]; D=Wk 1= [1 0;0 1]; e = [0 0;0 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S, = (-6/sqrt(2))+i*(6/sqrt(2)); 52 = (-6/Sqrt(2))-i*(6/Sqrt(2)); Z, = exp(S,*Tc); Z2 = exp(S2*Tc); PC = [Zr Z21; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); 8 = 0.01667; A0 = [-l/8 l;-1/(8"2)0]; Bo = [1/8;1/(8"2)]; Co = [1 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = chm( Ao, Bo, Co, Do, To, 'zoh' ); [a,,b,,c,,d,] = c2dm( A, B, C, D, To, 'zoh' ); a = [a, e;bo*c, ao]; bb = [b1;0;01; cc = [c, 0 0]; dd = [0]; X6 = [0:0]; 06 = [0;0]; r = l; 86 = [25.806]; 88 = [1; W = I]; n = 11; kmax = 1000; for k = lzkmax if k = 1 81 = go; elseif k > 1 84 gl = (g(n,:))'; end 00: gl(3:4); u,, = -K*0,,+N*r; u = u,,*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, u, g,); 88 = [88;8(1:n-1,:)]; uu = [uu;u(1 :n-1)]; X = 880.112); 0 = 880,3:4); x1 = gg(:al); x2 = gg(92); 0| = gg(:93); 02 = gg(:’4); end for k = 1:1ength(0,) t(k,1) = k*To; end whos; plot(t,01); title( ' Graph for 0,, 8 = 0.01667, 11 = 11, k = 1000, 0,, = [0;0], To = 0.0005 ' ) xlabel ('Time (sec)’); ylabel ('Amplitude’); end Ampltude 0.2 0.15 0.1 85 APPENDIX C 1 Graph b1 uu.epe= 001667.11 - 11.11: 1000.00 3 p.01.To :- 0.0005 I I r I I I I I I I L 2.5 The {sec} 0.5 1 0.4 02 86 APPENDIX C2 crew 10! x1. epe - 001007.11 a 11.11-10”. 00 - 10.0].1'0 :- 0.0005 I I I f I I r l _ 2.5 The {eecl 4.5 Al'lpIIJdd 2.5 APPENDIX C3 87 (31301110! :2. one :- 0.01067.n = 11.11: 1000. 00 - I0.0].To a 0.0005 r I I I r f r I I 2.5 Time (sec) 88 APPENDIX C4 anh 5:101 . Q0:- 0.01667. 11 1:11.11 3 1000.00 3 D.0].To - 0.0005 1.4 1.2 0.4 0.2 I I r I I I I I l 2.5 Time {sec} 4.5 Maude 89 APPENDIX C5 Gllph hr 02. epe - 001067.11 - 11.14 s 1&0. 00 : p.0].T0 a 0.0005 2.6 T I I I I I I fl I 1 1 1 1 1 1 1 r 1 -0.5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 Time {sec} 00 C '_‘II COCO 1| u: 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 1 .0e—03 0.0064 0.0250 0.0550 0.0956 0.1461 0.2058 0.2740 0.3501 0.4337 0.5242 0 0.0000 0.0000 0.0001 0.0001 0.0001 0.0002 0.0003 0.0004 0.0004 0.0005 0 0.0253 0.0489 0.0709 0.0913 0.1 103 0.1281 0.1446 0.1599 0.1742 0.1875 0 0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0 0 0.0000 0.0001 0.0002 0.0003 0.0006 0.0009 0.0014 0.0019 0.0027 90 APPENDIX C6 gg= 0 0.0000 0.0000 0.0001 0.0001 0.0001 0.0002 0.0003 0.0004 0.0004 1.11]: 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0005 0.0006 0.0007 0.0008 0.0009 0.001 1 0.0012 0.0013 0.0014 0.0016 0.0017 0 0.0253 0.0489 0.0709 0.0913 0.1 103 0.1281 0.1446 0.1599 0.1742 0 0 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0 0 0.0000 0.0001 0.0002 0.0003 0.0006 0.0009 0.0014 0.0019 91 0.0005 0.0006 0.0007 0.0008 0.0009 0.001 1 0.0012 0.0013 0.0014 0.0016 0.0017 g: 0.0000 0.0000 0.0001 0.0001 0.0001 0.0002 0.0003 0.0004 0.0004 0.0005 0.0006 0.0007 0.0008 0.0009 0.001 1 0.0012 0.0013 0.0014 0.0016 “1.1: 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0287 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.0289 0.1875 0.2001 0.21 18 0.2227 0.2328 0.2423 0.251 1 0.2593 0.2669 0.2740 0.2806 0.0253 0.0489 0.0709 0.0913 0.1103 0.1281 0.1446 0.1599 0.1742 0.1875 0.2001 0.21 18 0.2227 0.2328 0.2423 0.251 1 0.2593 0.2669 0.2740 0.0000 0.0001 0.0001 0.0001 0.0001 0.0002 0.0002 0.0002 0.0003 0.0003 0.0003 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0001 0.0001 0.0001 0.0002 0.0002 0.0002 0.0003 0.0003 0.0027 0.0035 0.0045 0.0056 0.0069 0.0084 0.0100 0.01 17 0.0137 0.0158 0.0180 0.0000 0.0001 0.0002 0.0003 0.0006 0.0009 0.0014 0.0019 0.0027 0.0035 0.0045 0.0056 0.0069 0.0084 0.0100 0.01 17 0.0137 0.0158 92 93 APPENDIX D Multirate Implementation - Under State Feedback A = [0 1;0 -142.86]; B = [0;1826.85]; C = [1 0]; D = [0]; 1= [1 0;0 1]; e = [0 0;0 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); 31 = (-6/Sqrt(2))+i*(6/Sqrt(2)); $2 = (-6/Sqrt(2))-i*(6/Sqrt(2)); Z1 = exp(S,*Tc); Z2 = eXP(Sz*TC); PC = [Zr 22]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); 8 = 0.01667; A0 = [-1/8 1;-1/(8"2) 0]; Bo = [1/8;1/(8"2)]; Co = [l 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( Ao, Bo, Co, Do, To, 'zoh' ); [a,,b,,c,,d,] = c2dm( A, B, C, D, To, 'zoh' ); a = [a, e;bo*c, ao]; bb = 1b1;0;01; cc = [c, 0 0]; dd = [0]; X6 = [0:01; 0o = [0;O]; r = 1; 8. = [xo;Oo]; 88 = [1; W = [1; n = 11; kmax = 1000; for k = 1:kmax if k = 1 81 = go; elseif k > 1 94 gl = (g(n9:))'; end xo= 81(1 :2); u,, = -K*x,,+N*r; u = u,,*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, u, g,); 88 = [88;8(1:n-1.:)1; uu = [uu;u(1:n-1)]; X = 880.112); 0 = 88(:.3:4); x1 = 88(311); x2 = 880.2); 01 = gg(:93); 02 = gg('94)9 end for k = l:length(0,) t(k,1) = k*To; end whos; plot(t,0,); title( ' Graph for 0,, 8 = 0.01667, 11 = 11, k = 1000, 0,, = [0;0], To = 0.0005 ' ) xlabel ('Time (sec)'); ylabel ('Amplitude'); end Ampltme 95 APPENDIX D1 Grub {or uu.epes 001557.11 - 11.11 =1000.0o :- p.0].To - c.0005 0.25 r r 1 1 1 0.2- 0.1 ' I I I I -005 L l I l L 0 0.5 1 1 .5 2 2.5 Time Ieec] 4.5 111111111116. 96 APPENDIX D2 81.1111 161 111.1111. . 001007.11 =.11.11.101:o.011 . 10.01.11: . c.0005 1 1 f 1 1 1 1 1 1 1 0.0 0.6 0.4 0.2 0 1 1 1 1 1 1 1 1 1 0 0.5 1 1 .5 2 2.5 3 0.5 4 4.5 The teec] Ampiflde 97 APPENDIX D3 Gum for :2. ops - 001667.11 = 11 . 11:10:10,011 = I0.0].To - 0.0005 3 I I I I T I I I I 2.5 - - 05* r . 0.5 1 1.5 2 25 3 3.5 4 4.5 5 Amplaida 0.4 98 APPENDIX D4 Graph b101.apa= 001557.11: 11.11-1w0. 0° :1 D.0].T0 - 0.0005 I I I I I I I I I L l l l l J 0 .5 1 1 .5 2 2.5 3 Time (sec) 3.5 4 4.5 99 APPENDIX D5 Graph 10! 02. ops . 0.01667. 11 = 11.11 = 1000.01: a p.01.1'o . c.0005 3 I I I I I I T I I 0.5-1 1 1 1 1 1 1 I 4 1 -O.5 0 0.6 1 1.5 2 2.6 3 3.5 4 4.5 Time {sec} 100 APPENDIX E Multirate Implementation - Behavior in First Cycle A = [O 1;O -142.86]; B = [0;1826.85]; C = [1 0]; D = [0]; 1= [1 O;O 1]; e = [O 0;0 0]; To = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S, = (-6/sqrt(2))+i*(6/sqrt(2)); 32 = (~6/Sqrt(2))-i*(6/Sqrt(2)); 2] 7‘ e"13(Sl"'1“3); 22 = exp(Sz*Tc); PC = [Z1 Z2]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); a = 0.01667; A0 = [-1/8 1;-1/(£"2) 0]; B0 = [1/8;1/(8"2)]; Co = [1 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( A0, Bo, C0, Do, To, 'zoh' ); [a,,b,,cl,d,] = c2dm( A, B, C, D, To, 'zoh' ); a = [a1 e;bo*c, ao]; bb = [b1;0;0]; cc = [c1 0 O]; dd = [0]; x0 = [Wk 00 = [090]; r = 1; go = [X1500]; gg = l]; W = l]; n = 11; kmax = l; for k = 1:kmax if k = 1 g1 = go; elseif k > 1 101 S1 = (8(n,=))'; end 00: g1(3:4); no = -K*OO+N*r; u = uo*ones(n,l); [h,g] = dlsim(aa, bb, cc, dd, u, g); 8% = [gg;g(12n-1,I)]; uu = [uu;u(1:n-1)]; x = gg(:,1 :2); O = gg(:,3:4); X1 = ggcal); X2 = gg(92); 01= gg(:,3); 02 = gg(:94); end for k = l:length(Ol) t(k,1) = k*To; end whos; plot(t,01); title( ' Graph for 01, a = 0.01667, 11 = 1 1, k = 1, 00 = [0;0], To = 0.0005 ' ) xlabel ('Time (sec)'); ylabel ('Amplitude'); end 102 APPENDIX El G-ph for muons-0.01 66711-11 k=1.00-|0.0].To..0005 would. 1.5 I I I I I I l 1 - _ 05 - _ 0 - _ -0.5 ~ - _‘ l I 1 l L l 1 l 0.5 1.5 2 2.5 a 3.5 4 4.5 5 Time (see) -I Aliphatic 103 APPENDIX E2 ‘ 5 x104 Graph 1o: x1.cps=0.01667.n-11 11:1 .Oo=|0.0].To=-.0005 ‘ - 3.5 - 3 - 2.5 - 2 - 1.5 r _ i '- _, 05 - _ $5 1 1.15 2L 2:5 ; sis 41 is 5 Tlmo (sec) 4 104 APPENDIX E3 anh 100 x2.cps-0.01667.ns1 1 had .Oo-|0.0].To-.0005 0.1. I I v r I r r r 0.16'- .. 0.14 - _ 0.12 - - 0.04 - - 0.02 - j 1 J A l 1 l A l ‘06 1 1.5 2 2.5 0 3.5 4 4.5 6 Time {sec} -l 105 APPENDIX E4 x 10" anh for O1 .opo-0.01667.n-1 1 11.1 .Oo.p,o],ro.,ooos 3.5 ' ' V I I 17 W I 3 .. 2.5 ' 2 - 1 .5 " ‘ .— 05 >- _ o 1 M1 1 1 1 1 1 0.6 1 1.5 2 2.5 3 3.5 4 4.5 5 Time {“0}! -l Amplude 106 APPENDIX E5 x 10" anh 101 02.eps=0.01 “7.11:1 1 k=1.0o-D.0].To=.0005 2 I I I I I I fl I 1.0? 15'- 1.41- 00'- . 06' . 0.2 - l (0.6 1 1.6 2 2.5 3 3.6 4 4.6 6 Time (sec) at 10" 107 APPENDIX F Multirate Implementation Under State Feedback Control For Different Initial Conditions A = [O 1;O -142.86]; B = [0;1826.85]; C = [1 0]; D = [0]; 1= [1 O;O 1]; e = [O O;O 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); SI = (-6/sqrt(2))+i*(6/sqrt(2)); 32 = (-6/Sqrt(2))-i*(6/Sq11(2)); Zn = eX13(Sn"'TC); 22 = eXP(Sz*TC); PC = [Z1 Z2]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); a = 0.01667; A0 = {-1/8 1;-1/(e"2) 0]; Bo = [l/e;1/(e"2)]; Co = [1 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( A0, B0, Co, Do, To, 'zoh' ); [a,,bbchdl] = c2dm( A, B, C, D, To, 'zoh' ); a = [a, e;bo*c. ao]; bb = [b1;0;0]; cc = [c, O O]; dd = [0]; X0 = [0:0]; 00 = [1;1]; r = 1; go 2 [xo;00]; gg=fl; W = fl; n=1h kmax = 1000; for k = 1:kmax if k = l g1 = go; 108 elseif k > 1 g1 = (g(n,=))'; end xo= g1(1:2); u0 = -K*x0+N*r; u = uo*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, u, g.); gg = [gg;g(1 :n-1,:)]; uu = [uu;u(1:n-1)]; X = gg(=,1 :2); 0 = gg(t,3:4); X1 = gg(:91); X2 = gg(92)9 01 = gg(93)9 02 = gg(:,4); end for k = l:length(Ol) t(k,1) = k*To; end whos; plot(t,01); title( ' Graph for 0,, a = 0.01667, 11 = 11, k = 1000, 00 = [1;1], To = 0.0005 ' ) xlabel ('Time (sec)'); ylabel ('Amplitude'); end Amplude 109 APPENDIX F1 Graph 1o: uu.epe. 001667.11 -11, 14 -1000.00 - l1 ;1]. To . 0.0006 0.25 I r f T I I I I r 0.15- 0.1 ’ :- b 1— p— -005 I I I I I 0 0.5 1 1 .5 2 2.5 3 3.5 ‘ ‘5 Time nee) Ampltida 1 10 APPENDIX F2 crew 10! K1,“).- 001067.111- 11. k-1000.0o-|1;1].To n0.0005 1.2 r 1 1 1 x 1 1 I u 1 - 0.0 b 0.0 - 0.4 '- 02 h 0 1 1 1 1 1 1 1 4 1 0 0.5 1 15 2 2.5 3 3.5 4 4.5 Time {sec} 1 11 APPENDIX F3 Gum 10nd. eps- 0.01667.n =11. It: 1000. 00: I1 ;1]. To: 0.0005 a I I T I I I I I I 2.5 '- _- h - 1— “0.6 I I I l l 0 0.5 1 1 .5 2 2.5 3 3.5 4 4.5 Time (sec) 1 12 APPENDIX F4 anh blOi. 00- 0.01067. 11 -11. 11.1000. 00 - |1;1].To - c.0005 1.2 I I I I I I I I I I 1 I 1.5 2 2.6 a 3.5 4 4.5 Time {sec} 1- u- h h— 1 13 APPENDIX F5 Graph bl02.ops- 001667.11 =11. k=1000.0o : I1;1].To 30.0005 10 -25. -30- I I I r I I I 2.5 Time {sec} 4.5 1 14 APPENDIX G Multirate Implementation Under Output Feedback Control For Different Initial Conditions A = [O 1;O -142.86]; B = [0;1826.85]; C = [1 0]; D = [01; 1= [1 O;O 1]; e = [O 0;0 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S1 = (-6/sqrt(2»+i*(6/sqrt(2»; 82 = (-6/sqrt(2»—i*(6/sqrt(2»; Z1 = exp(S,*Tc); Z2 = exp(Sz*Tc); PC = [21 Z21; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); e = 0.01667; A0 = [-1/8 1;-1/(e"2) 0]; B0 = [l/s;1/(e"2)]; Co = [1 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( A0, B0, C0, Do, To, 'zoh' ); [a1,bl,c1,d1] = c2dm( A, B, C, D, To, 'zoh' ); a = [a, e;bo*c, ao]; bb = 1b1;0;0]; cc = [c, O O]; dd = [0]; X0 = [Wk 00 = 11;”; r = 1; go = [Xo;Ool; gg = [1; W = l]; n = 11; kmax = 1000; for k = 1:kmax if k = 1 g] = go; 115 elseif k > 1 81 = (g(n,=))'; end 00: gl(3:4); 110 = -K*OO+N*r; u = uo*ones(n,l); [h,g] = dlsim(aa, bb, cc, dd, u, g); as = [gg;g(1:n-1,:)]; uu = [uu;u(l :n-1)]; x = gg(:,l :2); O = gg(:,3:4); x1 = gg(:,l); x2 = gg(:,Z); 01 = gg(93)9 02 = gg(94)9 end for k = l:length(Ol) t(k,1) = k*To; end whos; plot(t,01); title( ' Graph for 0,, e = 0.01667, 11 = 11, k = 1000, 00 = [1;1], To = 0.0005 ') xlabel ('Time (sec)'); ylabel ('Amplitude'); end 1 16 APPENDIX G1 Graph bruu.epe- 001667.11 :11. 11 .- 1000.011 -|1;1]. To s 0.0005 1.5 I I I T I I I I I _3 I l l 1 l 1 I I J 0 0.6 1 1.6 2 2.6 3 3.6 4 4.6 The {sec} 1 17 APPENDIX G2 Graph 10! than. a 001687.11: 11. k: 1000.00- |1;1].To-0.0005 a T r I I I I I I I -6 1 1 1 I l 1 1 l I 0 0.6 1 1 .6 2 2.6 3 3.6 4 4.6 6 Time {sec} 1 18 APPENDIX G3 Grew for :2. Opt-0.01667J1- 11. 14- 1000. Oo- I1 ;1]. To- 000“ I5 r I I I I I I I I _” I l l I I 1 l l I 0 0.6 1 1 6 2 2.6 3 3 .6 4 4 .6 6 Time (sec) l 19 APPENDIX G4 Gllph bl01. m3: 0.01667. 11 = 11. It. 1000.00 a |1;1].To a 0.0005 I I I I I I I T I I I I I I I A 0.6 1 1 .5 2 2.6 3 3.6 Time (sec) 4 4.5 120 APPENDIX G5 Glaph bl02. eps- 0.01667. [1 :11. 1131000, 00 - I1;1].To a: 0.0005 20 I I I I l I I I I I 0 0.6 1 16 2 2.6 3 3.5 4 4.6 6 Time (see) b— h — p 121 APPENDIX H Multirate Implementation - Behavior in First Cycle For Different Initial Conditions A = [O 1;O -l42.86]; B = [0;1826.85]; C = [1 0]; D = [0]; I = [1 0;0 1]; e = [O O;O 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); 81 = (-6/sqrt(2»+i*(6/sqrt(2»; 32 = (-6/Sqr1(2))-i*(6/Sqrt(2)); Z. = exp l g] = (g(n9:))'; end 00: g1(3:4); u0 = -K*OO+N*r; u = uo*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, 11, g,); gg = [gg;g(1=n-1,=)]; uu = [uu;u(1:n-1)]; X = gg(:,l =2); 0 = gg(:,3:4); x1 = gg(:,l); x2 = gg(:,Z); 01= gg(:,3); 02 = gg(:,4); end for k = l:length(Ol) t(k,1) = k*To; end whos; plot(t,O,); title( ' Graph for 01, a = 0.01667, n = 11, k = 1, 00 = [1;1],To = 0.0005 ') xlabel ('Time (sec)'); ylabel ('Amplitude'); end 123 APPENDIX H1 Grephiowu.epe-0.01667.n=11. k=1.0o=|1;1].To= 0.0005 Ampliude 1.5 I I I I I I I I 1 - _ 06 - d o 1- -1 -06 1- -. -1 I I I I L I I I 0.6 1 1.6 2 2.6 3 3.6 4 4.6 6 Time {sec} -1 Amplwde 124 APPENDIX H2 1: ”,4 Graph for x1.epaa0.01667.n-11.k=1.0o=|1 ;1].To-.0006 I.2 I I I I I— I I I 00" 0.4 - 0.2- 0 0.6 1 1.6 2 2.6 3 3.6 4 4.6 6 Time (sec) -1 125 APPENDIX H3 Graph for x2.eps-0.01667.n=11.k=1.00=|1;1].To-.0w6 0.45 0.4 '- Amplaide 0.16” 0.11- 0.05 P T I I _1_ I I I 2.6 3 Time {sec} 126 APPENDIX H4 Graph ior O1.epa=0.01667.n=1 1.11:1 .Oo=|1 ;1 ].To=.0006 Amplaide 1 1 r u 1 fl 1 0.36 ~ _ 0.0 - .. 0.36 - -1 0.3 - - 0.75 - - 0.7 ‘ 1 L ‘ ‘ ' 1 0.6 1.6 2 2.6 3 3.6 4 4.6 6 Time {sec} .1 x10 Amplmde 127 APPENDIX H5 Graph for 02.epa=0.01367.n=11.k=1.0o-|1;1].To-u.w06 2 I I 17 I I I I I -4 ~10 _1‘ I l I I I I I I 0.6 1 1.6 2 2.6 3 3.6 4 4.6 Time (see) a: '04 128 APPENDIX I Multirate Implementation - Control Saturated A = [0 1;O -142.86]; B = [0;1826.85]; C = [1 0]; D = [0]; I = [1 O;O 1]; e = [O 0;O 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S, = (-6/sqrt(2))+i*(6/sqrt(2)); $2 = (-6/Sqrt(2))-i*(6/Sqrt(2)); Z1 = eXP(S1*TC); 22 = exp(Sz*Tc); PC = [21 Z21; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); e = 0.01667; A0 = [~l/e 1;-1/(s"2) 0]; Bo = [l/e;l/(s"2)]; Co = [1 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( Ao, Bo, Co, Do, To, 'zoh' ); [a,,b,,c,,dl] = c2dm( A, B, C, D, To, 'zoh' ); a = [a1 e;bo*c1 ao]; DD = [b1;0;0]; cc = [c, O O]; dd = [0]; X0 = [W]: 0o = [111]; r = 1; go = [Xo;Ool; gg = [1; W = [1; m = 0.5; n=lh kmax = 1000; for k = 1:kmax if k = 1 31 = go; 129 elseif k > 1 g1 = (g(n9:))'; end 00: gl(334); u0 = -K*OO+N*r; if abs(uo) <= m 111 = no; else if abs(uo) > m u] = m*sign(uo); end 11 = u,*ones(n,l); [h,g] = dlsim(aa, bb, cc, dd, u, g,); gg = [gg;g(1:n-1,I)]; uu = [uu;u(l :n-1)]; x = gg(:,l :2); 0 = gg(:,3:4); x1 = gg(:,l); x2 = gg(:,Z); 01 = gg(:93)9 02 = gg(94)9 end for k = l:length(Ol) t(k,1) = k*To; end whos; plot(t,01); title( ' Graph for 0,, e = 0.01667, n = 11, k = 1000, 00 = [1;1], To = 0.0005 ') xlabel ('Time (sec)'); ylabel ('Amplitude’); end 0.3 0.2 0.1 M00311“ 1': -0.2 130 APPENDIX 11 gram for uu, epea 001667.11 = 11.11: 1000.00 =|1;1].COIII“I I fi— I I I I I I I I 2.6 Tineisec] 4.5 Amplaide 1.4 APPENDIX 12 131 mph brx1.epe-0.01337.n. 11.11. 10m.OOs |1;1].conteat I ‘T f I I I I T I 2.6 Theieec] 4.5 132 APPENDIX I3 mph iorx2.epe- 001337.11 a 11 . 11- 1000.00 . |1;1].contsat Ampliude 1'3 -11 I I I I I h 2.6 Theieec] 4.5 133 APPENDIX 14 graph 10101. epe - 0.01667. 11 a 11.11 - 1000.011 - l1;1].Co111 eat I.‘ I I I I I I I I I I I I I I I -05 1 1 i 0 .6 1 1 .5 2 2.6 3 3 .6 4 .5 Time(sec) & Amplwde I a -20 -26 134 APPENDIX IS graph 10102. epa . 0.01337. 11 =11.11 - 11110. 00 a |1;1].Com sat T I I I I 2.6 Tineiaec] 4.5 135 APPENDIX J Multirate Implementation Under Output Feedback Control With Different Value of 8 A = [O 1;O -142.86]; B = [0;1826.85]; C = [l O]; D = [0]; I: [1 0;0 l]; e = [O 0;O 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S, = (-6/sqrt(2))+i*(6/sqrt(2)); 8: = (-6/sqrt(2»-i*(6/sqrt(2»; Z1 = eXp(31"'T<=); 22 = eXp(Sz*TC); PC = [Zn 22]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); e = 0.001667; A0 = [-1/8 l;-1/(8"2) 0]; Bo = [1/8;1/(e"2)]; Co = [l 0]; Do = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( Ao, Bo, Co, Do, To, 'zoh' ); [a,,b1,c,,d,] = c2dm( A, B, C, D, To, 'zoh' ); a = [a, e;bo*c1 ao]; bb = [b1;0;0]; cc = [cl 0 O]; dd = [0]; X0 = [Wk 00 = [010]; r = 1; go = [M00]; as = U; ml = fl; n=1h kmax = 1000; for k = 1:kmax if k = 1 g1 = go; 136 elseif k > 1 g1 = (gm): end 00: gl(3:4); u0 = -K*OO+N*r; u = uo*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, u, g,); gg = [gg;g(12n-1,z)]; uu = [uu;u(1:n-l)]; X = gg(:,l :2); 0 = gg(:,3:4); x1 = gg(:,l); x2 = gg(92)9 01= gg(:,3); 02 = gg(:,4); end for k = l:length(Ol) t(k,1) = k*To; end whos; plot(t,01); title( ' Graph for 0,, a = 0.001667, 11 = l 1, k = 1000, 00 = [0;0], To = 0.0005 ' ) xlabel ('Time (sec)'); ylabel ('Amplitude'); end Amplaide 137 APPENDIX J1 Gmph ior uu.epa-.001337.11a11.k=1000.0o-|0;0].To=.0006 0.2 w - I ' T ' r ' ' 0.15 - I 0.1 1 ‘ 0.05 - — 0 r -006 0 015 ,1 1 is 21 2.} 3 316 4 416 6 Time {sec} 133 APPENDIX J2 Gram for x1.epe-.001337.1h1 1 .k-1w0.0o-p,0].To-.0WG Amplaide 0.4 02 I I I I I I .- 2.6 Time {sec} 0.5 4.5 139 APPENDIX J3 Graph for x2.epe=.001337.11=1 1 .11.1ooo.0o.p;01.1'o..ooos Amplaide 25 1.5 -0.6 0 I I I I I 2.6 Time (sec) 4.5 140 APPENDIX J4 Graph b1 01 ape-001337 .11=1 1.11.1000.Oo-p ,0].To- .ooos Amplaide 1.2 0.4 02 I I I I I 1— 2.6 The {sec} 4.5 141 APPENDIX J5 Graph 101 02.eps-.001337.11-1 1.k=1000.00=|0;0].T0:-.0005 a I I I I I I I I I III I Amplflda ‘ I 05" 11— — 11— i—n _oos I I I I I O 0.5 1 1.5 2 2.5 3 3.5 4 4.5 Time 1'ch 142 APPENDIX K Multirate Implementation Under Output Feedback Control With Different Value of 8 & Different Initial Conditions A = [O 1;O -142.86]; B = [0;1826.85]; C = [1 0]; D = [0]; I = [1 0;0 1]; e = [0 O;O 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S, = (-6/sqrt(2))+i*(6/sqrt(2)); $2 = (-6/sqrt(2))-i*(6/sqrt(2)); Z, = exp(S,*Tc); 22 = e1111(Szu'TC); PC = [Z] Z2]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); e = 0.001667; A0 = [-l/8 l;-l/(e"2) 0]; B0 = [l/s;1/(s"2)]; Co = [l 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( Ao, Bo, C0, Do, To, 'zoh’ ); [a,,b,,c,,d,] = c2dm( A, B, C, D, To, 'zoh' ); aa = [a, e;bo*c, ao]; bb = [b1;0;0]; cc = [c, 0 O]; dd = [0]; X0 = [0;0]; 0o = 11;”; = 1; go = [X1500]; gg = I]; IN = [1; n = 11; kmax = 1000; for k = 1:kmax if k = 1 g, = go; I43 elseif k > 1 81 = (80113”; end 00: gl(3:4); u0 = -K*OO+N*r; u = uo*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, u, g,); as = [gg;g(1 :n-1,:)]; uu = [uu;u(1:n-1)]; X = gg(:,ltz); 0 = gg(:,3:4); X, = gg(o9l)9 X2 = gg(92)9 01 = gg(:93)9 02 = gg(94)9 end for k = l:length(O,) t(k,1) = k*To; end whos; plot(t,O,); title( ' Graph for 0,, e = 0.001667, 11 = 11, k = 1000, 00 = [1;1], To = 0.0005 ') xlabel (’Time (sec)'); ylabel (’Amplitude'); end -4 144 APPENDIX K1 Graph bruu.epa-.001337.11-11.k-1000.0o-|1;1].To-.0006 I I I I I I I I I I I I I 1— — - 0.6 1 16 2 2.6 3 3.6 4 Time (sec) 4.6 Amplaide 145 APPENDIX K2 Gram for x1.epa-.001337.11-1 1.11:1wo.Oe-|1;1].To..0006 Time {sec} 1.5 . . . . . . . . . ,_ 0.5 - °[ _115 1 -1- -15 - _2 I I I I I I I I I o 0.5 1 1.5 2 2.5 a 3.5 4 4.5 146 APPENDIX K3 Gram for Kama-001337.11“ 1 .11-1000.0o.|1;11.1o..ooos 10 I I I I I I I I I -25 ~ .1 -3o - - 45 - - -40 1 1 1 1 L 1 1 L 1 0 0.5 1 15 2 2.5 3 3.5 4 4.5 5 Time (sec) 147 APPENDIX K4 Graph 101 O1 .epe- .001 337.11-1 1.k-1000.0o-|1 ;1 ].To- .0006 I.6 I l I I I j I I -15.. -2 I I I I g i I I 0 0.6 1 1.6 2 2.6 3 3.6 4 Time (sec) 4.6 148 APPENDIX K5 Graph b1 O2.epea.001337.11-11.k=1000.Oo=|1;1].To=.0006 Ampiaide -150 I I I I I I I F 1- 1- . .- 1. 1- I :— 2.6 Time isec] 0.5 4.5 149 APPENDIX L Multirate Implementation - Control Saturated With Different Value of a A = [0 1;O -142.86]; B = [0;1826.85]; C = [1 0]; D = [0]; I = [1 O;0 1]; e = [O O;0 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S, = (-6/sqrt(2))+i*(6/sqrt(2)); 82 = (-6/sqrt(2))-i*(6/sqrt(2)); Z, = exp(S,*Tc); 22 = eXp(Sz*TC); PC = [Z1 22]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); e = 0.001667; A0 = [-1/8 1;-1/(e"2) 0]; Bo = [1/8;1/(8"2)]; Co = [1 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( Ao, Bo, C0, Do, To, 'zoh' ); [a,,b,,c,,d,] = c2dm( A, B, C, D, To, 'zoh' ); a = [a, e;bo*c, ao]; DD = [b1;0;01; cc = [c, O O]; dd = [0]; X0 = [0;0]; 00: [1 :1]; r = 1; go = [X1000]; gg=fl; uu=fl; m = 0.5; n = 11; kmax = 1000; for k = 1:kmax if k = 1 150 g, = go; elseif k > 1 g1 = (e(n,=))'; end 00: gl(3:4); u0 = -K*OO+N*r; if abs(uo) <= m u, = 110; else if abs(uo) > m u, = m*sign(uo); end 11 = u,*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, 11, g,); 8g = [gg;g(1=n-1,=)]; uu = [uu;u(1:n-1)]; x = gg(:,1:2); O = gg(:,3:4); x1 = gg(:9l)9 x2 = gg(:,Z); 0| = gg(93)9 02 = gg(:,4); end for k = l:length(O,) t(k,1) = k*To; end whos; plot(t,01); title( ' Graph for O,, a = 0.001667, 11 = 11, k = 1000, 00 = [1;1], To = 0.0005 ') xlabel ('Time (sec)'); ylabel ('Amplitude'); end 0.4 0.2 0.1 APPENDIX L1 151 graph 101 uu.epes 0.001337.11 = 11.11 =1000.0o . |1;1].Comea1 I I I I I I I I I _ 0 0.5 2.6 Tineiaec] 4.5 gram 101 111 152 APPPENDIX L2 .epa-0.001337.11- 11.14111 1000.00sl1 ;1]. 03111331 I I I I I I I I I I I I I I I I 1 6 2 2.6 3 3.6 4 4.6 Theieec] Amplmde 153 APPENDIX L3 graph 101 112. epa - 0.0013611! 211.11: 1000.00 2 I1 ;1]. 00mm I I I I I I I I I -4 0.6 1 16 2 2.6 3 3.6 4 4.6 Theieec] 154 APPENDIX L4 mph 10101.epe- 0.m1337.11. 11.11. 1000.00-l1;1].001110at I.2 I I I I I I I I I 1 1 1 1 1 1 1 -0.4 1 1 0.6 1 16 2 2.6 3 3.6 4 4.6 Theiuc] 100 155 APPENDIX L5 maph 10102. epes 0.w1637.n = 11.11. 1000. 00 . |1;1].001110a1 I I I I I I I _— 2.6 Time(sec) 3.5 4.5 156 APPENDIX M Multirate Implementation - Behavior in First Cycle With Different Value of a A = [0 1;0 -142.86]; B = [0;1826.85]; C = [1 O]; D = [0]; 1= [1 O;O 1]; e = [O O;0 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S, = (-6/sqrt(2))+i*(6/sqrt(2)); 32 = (-6/Sqrt(2))-i*(6/Sqrt(2)); 21 = exp(S,*Tc); Z2 = exp(Sz*Tc); PC = [Z] 22]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); e = 0.001667; A0 = [-1/8 1;-1/(e"2) 0]; B0 = [1/8;1/(e"2)]; Co = [1 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = chm( A0, B0, C0, Do, To, 'zoh' ); [a,,b,,c,,d,] = c2dm( A, B, C, D, To, 'zoh' ); aa = [a, e;bo*c, ao]; bb = [b1;0;0]; cc = [c, O O]; dd = [0]; X6 = [0;0]; 0o = [090]; r = 1; so = [X600]; gg=fl; W = fl; n=1h kmax = l; for k = 1:kmax if k = 1 g1 : go; 157 elseif k > 1 g1 = (g(n9:)).; end 00: gl(34)9 u0 = -K*OO+N*r; u = uo*ones(n,l); [h,g] = dlsim(aa, bb, cc, dd, 11, g,); gg = [gg;g(1:n-1,:)]; uu = [uu;u(1:n-1)]; X = gg(:,l 22); 0 = gg(:,3:4); X1 = gg(91)9 X2 = gg(:,Z); 01 = gg(:,3); 02 = gg(:94)9 end for k = l:length(O,) t(k,1) = k*To; end whos; plot(t,01); title( ' Graph for O,, s = 0.001667, 11 = 11, k = 1, 00 = [0;0], To = 0.0005 ' ) xlabel ('Time (sec)'); ylabel ('Amplitude'); end Amphmu 158 APPENDIX M1 Graph 101w.epe- 0.N1067.n- 11.11: 1.001: p.01.To-0.0006 1.5 I I I I I I I I 1 v- -1 0.5 - J o .— —1 -06- - _' I I I I I I I I 06 1 16 2 26 3 36 4 46 6 Time ieec] -1 x10 Amplaide 10 I 159 APPENDIX M2 11 10" Graph 101 x1.epa-.001337.11-11.11.1.oo.|0.0].To..oms ‘5 j I I I I I I I (11.6 1 1.6 2 2.6 3 3.6 4 4.6 6 Time {sec} 4 Ampliude 160 APPENDIX M3 Graph for lama-001337.031 1.11:1 .0040 311.163.0005 0.10 1 1 r 1 1 1 1 r 0.16 - -1 0.14 - - 0.12 - .. 0.1 '- - 0.“ '- .1 0.06 '- '1 0.04 - - 0.02 *- 7 1 1 1 1 1 1 1 1 %.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Tha {333] -a x10 2.5 16] APPENDIX M4 1: 10" Graph 10101 .epen.001337.11-1 1.11:1 .Oo.pp],ro.,mos J I I I I I I 6 1 1 6 2 2.6 3 3.6 4 4.6 6 Time 1333] -3 Amplaide 162 APPENDIX M5 Graph 101 02.epa-.001337 .11=11.i1111.00-p;0].T0-.0006 0.00 I I I I I T I I 000- . 000* . 003- . 0.02 - 0.01 - 0.6 1 1.6 2 2.6 3 3.6 4 4.6 6 Time (sec) 11 10" 163 APPENDIX N Multirate Implementation - Behavior in First Cycle With Different Value of 8 & Different Initial Conditions A = [0 l;O -142.86]; B = [0;1826.85]; C = [1 0]; D = [0]; I = [l 0;O l]; e = [0 O;O 0]; Tc = 0.005; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); S1 = (-6/Sqrt(2))+i*(6/Sqrt(2)); 32 = (-6/ S(1111(2))-i"'(6/ Sqrt(2)); 2] = eXP(Sl"TC); Zz = eXp(Sz*TC); PC = [Z1 Z2]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); a = 0.001667; A0 = [-l/e 1;-1/(e"2) 0]; B0 = [1/8;1/(e"2)]; Co = [l 0]; D0 = [0]; To = 0.0005; [ao,bo,co,do] = c2dm( Ao, B0, C0, Do, To, 'zoh' ); [a,,b,,c,,d,] = c2dm( A, B, C, D, To, 'zoh' ); aa = [a, e;bo*c, ao]; bb = [135010]; cc = [c, O 0]; dd = [0]; x0 = [090]; 00 = [1 ;1]; r = 1; go = [X1600]; gg=fl; W = U; n=lh kmax = l; for k = 1:kmax if k = l g, = go; 164 elseif k > l g] = (g(n9:))'; end 00: gl(34)9 u0 = -K*OO+N*r; u = uo*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, u, g,); gs = [gg;g(1:n-1,=)]; uu = [uu;u(1:n-1)]; x = gg(:,122); O = gg(:,3:4); X, : gg(91)9 X2 = gg(:,Z); 0| = gg(93)9 02 = gg(:,4); end for k = l:length(O,) t(k,1) = k*To; end whos; plot(t,0,); title( ' Graph for 0,, a = 0.001667, 11 = 11, k = 1, 00 = [1;1], To = 0.0005 ') xlabel ('Time (sec)'); ylabel ('Amplitude'); end 165 APPENDIX N1 Gmph 101 uu.ep0-.m1337.n-11.11-1.00-|1;1].T0-.0006 Amplaide 1.6 05" I r I I I I I I L I I I 1 1.5 2 2.5 0 Time (sec) 3.5 Amplaide 166 APPENDIX N2 1: ”,4 Graph for x1.epa-.001337.11=11.k-1.00.|1;1],To.,ooos I.2 I I I I I I I I 00" 0.4‘ 02'- 0.6 1 1.6 2 2.6 3 3.6 4 4.6 6 Time {sec} 11 10" Amplmde 167 APPENDIX N3 Gram for x2.epe- 001337.11-1 1 .1121 .Oo-I1 ;1].To-.0m5 0.45 0.4 - 0.15“ 0.1 1- I I I I I I I I I I I I I l 1.6 2 2.6 3 3.6 4 4.6 6 Time (sec) -1 Amplwde 168 APPENDIX N4 Graph 101 01.epea.001337.11=1 1.11-1.00=|1;1].T0=.0006 I I I I I I I I I 0.3 - 0.4 - 02r —0.2 - b _o" I I I I I I I 0.5 1 1.5 2 2.5 3 3.5 4 4.5 Time ieec] x ,0 169 APPENDIX N 5 Graph 101 02.epea.001337.11=1 1.11:1 .00-l1 ;1 1.16.0005 50 -250 "“11. I I I I r I I 2 2.6 3 3.6 4 4.6 6 Time (sec) 11 10" 170 APPENDIX P Matlab program for State Feedback Control With New Value of Tc A = [O 1;O -l42.86]; B = [0;1826.85]; C = [1 0]; D = [0]; Tc = 0.01; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh') S, = (-6/sqrt(2))+i*(6/sqrt(2)); S2 = (-6/ Sqrt(2))-i*(6/ SC01(2)); Z1 = 6XP(S1*TC); 22 = eXP(Sz*TC); Pc = [Z, Z2] K = place(a,b,Pc) I = [1 O;O 1]; N = inv(c*inv(I-a+b*K)*b) A1 = [a-b*K]; Bl = [b*N]; ID = [1]; k = 500; step = [k]; NN = N*ones(k,l); [y,x] = dstep(Al , B1, c, d, 1U, step); U = (x*(-1)*K')+NN; X1 : X(I,I); x2 = x(:,2); for k = l:length(U) t(k,1)=k*Tc; end whos; plot(t,U); title( ’ plot for U , k = 500, Tc = 0.01, state feedback control ' ) xlabel ( ' time (sec) ' ); ylabel ( ' amplitude ' ); end 171 APPENDIX P1 “II“ 1.1 .k- 50°.ICI 0.01 0125 I I I I I I I 02" O 0.15 7 0.05 *- 1 I 1 1 43.05 J— 1 ‘r 4.5 172 APPENDIX P2 [301101 111.11- 600.Tc. 0.01 1.2 I I I I I I I I 7 2 2.6 3 3.6 4 4.6 he (see) amplitude 1 73 APPENDIX P3 plotfor :2 .k- 500.1'c. 0.01 a I I I I I I 0.5 ' "T 174 APPENDIX Q Multirate Implementation Under Output Feedback Control With New Values of Tc and TO A = [0 1;0 -142.86]; B = [0;1826.85]; C = [1 O]; D = [0]; 1= [1 O;O 1]; e = [0 0,0 0]; To = 0.01; [a,b,c,d] = c2dm(A,B,C,D,Tc,'zoh'); SI = (-6/sqrt(2))+i*(6/sqrt(2)); 32 = (-6/sqrt(2»-i*(6/sqrt(2»; Zn = eXP(Sl*TC); 22 = eXP(Sz*TC); PC = [Zn 22]; K = place(a,b,Pc); N = inv(c*inv(I-a+b*K)*b); e = 0.01667; A0 = [-1/8 1;-1/(e"2) 0]; Bo = [1/8;1/(8"2)]; Co = [l 0]; D0 = [0]; To = 0.0001; [ao,bo,co,do] = c2dm( A0, B0, C0, Do, To, 'zoh' ); [a,,b1,cl,dl] = c2dm( A, B, C, D, To, 'zoh' ); aa = [a, e;bo*c, ao]; bb = [b1;0;0]; cc = [c, O O]; dd = [0]; x0 = [0:0]; 00 = [1:1]; r = 1; go = [MOO]; gg = [1; W = l]; n = 101; kmax = 500; for k = 1:kmax if k = 1 g] = go; 175 elseif k > 1 gl = (g(n’:))'; end Oo= gl(3:4); u0 = -K*O°+N*r; u = uo*ones(n,1); [h,g] = dlsim(aa, bb, cc, dd, u, g,); gg = [gg;g(1=n-1,I)]; uu = [uu;u(1:n-1)]; x = gg(:,l 22); 0 = gg(:,3:4); X1 = gg(:al); x2 = gg(:,Z); 0: = gg(:,3); 02 = gg(:a4); end for k = l:length(Ol) t(k,1) = k*TO; end whos; plot(t,01); title( ' Graph for 0,, e = 0.01667, n = 101, k = 500, 00 = [1;1], To = 0.0001 ') xlabel ('Time (sec)'); ylabel ('Amplitude'); end l 76 APPENDIX Q1 Gum for w.opo-.01867.n-10t.k-GO0.0o-|1 ;1 1.13-0001 I I I I I T I I I I 1 l l 1 l 2.5 a 3.5 t 4.5 The (sec) 177 APPENDIX Q2 Graph br :1 fill-.01 6673-1 01 Jt-SOODo-u ;1],To-.m01 2 I I I I I I I I I '— OI- . u a -_1~ a. 5 ‘ -2- -3- _‘ l l J 1 l l l l I 0 05 1 1.5 2 25 3 35 ‘ ‘5 178 APPENDIX Q3 Graph to! x2.ops-.01667,n-101 .k-SOO.00.|1 ;t ].To-.w01 Is I I I r I I I r I 26 9 3.5 4 4.5 I79 APPENDIX Q4 G-IJI'I bl’ 01 .ops- .01 007 n: 1 01 ,k-SMOo-II ;1].Tos .0001 2 I II I I I I I T I 1- I o .- O u 2-. . 3 -2- -3- _‘ l I l l l l l l l 0 0.6 1 15 2 2.5 0 0.5 4 4.5 Time {soc} l 80 APPENDIX Q5 Glph b! 023902.01“? 11.-101 .k-SMQo-Ii ;1].To- .0001 Is I I T I I I I I I l l l l l 2.5 a 3.5 4 L5 The (ac) BIBLIOGRAPHY [1] [2] [3] [4] [5] [6] [7] [3] [9] [10] [11] [12] 181 BIBLIOGRAPHY J. Sklansky and J .R. Ragazzini, “ Analysis of errors in sampled data feedback systems,” AIEE Trans., vol.74, part II, pp. 65-71, may 1955. GM. Kranc, : “ The analysis of multiple rate sampled systems,” Report No. T- ll/B, Electronic research laboratory, Dept. of Electrical engineering, Columbia university, New York, NY, May 1956. El Jury, Sampled date control systems, John Wiley and sons, Inc., New York, 1958. RE. Kalman and J. Bertram, “ A unified approach to the theory of sampling systems,” J. Franklin Institute, vol.267, pp.405-436, May 1959. RE. Barry, “ Optimal control of multirate systems,” Report No. RN-361, Research Department, Grumman Aerospace Corporation, July 1975. N.Amit, “ Optimal control of multirate digital control systems, ” Report No. SUDDAR # 523, Stanford university, Stanford, CA, July 1980. DP. Glason, “ Development and applications of multirate digital control,” IEEE Contr. Syst. Magazine, vol.3, pp. 2-8, 1983. P.V. Kokotovic, R.E. O’Malley, Jr., and P. Sannuti, “ Singular perturbation and order reduction in control theory - An overview,” Automatica, vol.12, pp. 123- 132, 1976. V.R. Saksena, J. O’Reilly, and RV. Kokotovic, “ Singular perturbation and time scale methods in control theory: Survey 1976-1983,” Automatica, vol.20, pp.273- 293, 1984. O’Malley, R.E. Jr. (1982). Book review. Bulletin AMS, 7, 414. Ioannou, RA. and RV. Kokotovic (1983). Adaptive systems with reduced models. Lecture notes in control information science, 47. Springer, Berlin. Bakhtiar Litkouhi, and Hassan Khalil, “ Multirate and composite control of two time scale discrete time systems,” IEEE Transaction on automatic control, vol.AC-30. No.7, July 1985. [13] [14] [15] [16] [17] [18] [19] [20] 182 Hassan Khalil, “ Robustness issues in output feedback control of linearizable systems,” Unpublished, 1993. F. Esfandiari and H.K. Khalil. Observer based design of uncertain systems: recovering state feedback robustness under matching conditions. In proc. Allerton conf., pp.97-106, Monticello, IL, September 1987. F. Esfandiari and H.K. Khalil. Output feedback stabilization of fully linearizable systems. Int.J.contr., 56: 1007-1037, 1992. A. Saberi and P. Sannuti. Observer design for loop transfer recovery and for uncertain dynamical systems. IEEE Trans. Automat. contr., 35(8): 878-897, August 1990. LR. Petersen and CV. Holot. High gain observers applied to problems in disturbance attenuation, H-infinity optimization and the stability of uncertain linear systems. In proc. American control conf., pp 2490-2496, Atlanta, GA, June 1988. P.W. Gibbens and M. Fu. Output feedback control for output tracking of nonlinear uncertain systems. Technical report EE9121, University of Newcastle, Australia, 1991. A. Teel and L. Praly. Tools for semiglobal stabilization by partial state and output feedback. 1992. Oliver Fuchs. Digital implementation of a high gain observer. A thesis, Michigan state University, USA, 1994. "‘1111111111111118