full order observer design using simulink
TRANSCRIPT
![Page 1: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/1.jpg)
Full Order Observer Design Using Simulink
David Pyne
EE 692
![Page 2: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/2.jpg)
Goal of the Project
To design a Simulink library block that automatically generates a Full Order Observer for a given linear dynamical system
Desired Characteristics: Scaleable Practical Easy to Use
![Page 3: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/3.jpg)
Agenda
What is a Full Order Observer? Overview of Linear Dynamical Systems Library Block Concept Design of the Observer Simulink Implementation A Simple Example A More Complex Example Questions
![Page 4: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/4.jpg)
What is a Full Order Observer?
A mathematical model of the entire dynamical system
An estimator of the unmeasurable states Flexible Scaleable Highly accurate
![Page 5: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/5.jpg)
Overview of Linear Dynamical Systems
Systems characterized by the following model:
MIMOxn
x1...
ym
y1...
![Page 6: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/6.jpg)
Overview of Linear Dynamical Systems
The concept of “State”
Key system attributesThe minimum number of measurements neededNot always consistent
![Page 7: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/7.jpg)
Library Block Concept
Systems in Simulink A series of function blocks Connected like a circuit Used to model dynamical systems
![Page 8: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/8.jpg)
Library Block Concept
Example system
![Page 9: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/9.jpg)
Library Block Concept
Inputs System A and B matrices Roots of observer
Outputs Preconfigured Simulink block
![Page 10: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/10.jpg)
Design of the Observer
The full order observer equation
K0 is to be designed by the user Eigenvalues of the characteristic error
dynamics polynomial
![Page 11: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/11.jpg)
Design of the Observer
Define the error dynamics equation
![Page 12: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/12.jpg)
Simulink Implementation
Design Tasks Implement the observer equation using
existing Simulink blocks Create a subsystem by grouping smaller units
Create the user interface Validate user input Load user matrices into observer equation
Verify correct output
![Page 13: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/13.jpg)
Simulink Implementation
![Page 14: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/14.jpg)
Simulink Implementation
Observer user interface
Requires limited knowledge of observer design by the user
![Page 15: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/15.jpg)
Simulink Implementation
Validation of user input A must be square B must have same number of rows as A C is assumed to be of the form [1 0 0 … 0] K must be the same length as C The system must be completely observable
![Page 16: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/16.jpg)
Simulink Implementation
Complete observability check
Complete controllability check
![Page 17: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/17.jpg)
Simulink Implementation
Check for repeated roots in K vector If root multiplicity is greater than the rank of C
use ACKER() Not terribly reliable Breaks down for higher order systems
Otherwise use PLACE() Much more robust Based on algorithm designed by Kautsky and
Nichols
![Page 18: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/18.jpg)
Simulink Implementation
Block inputs y Scalar system output u System control command
Block outputs Any errors are warnings for the user Command line output of the calculated K0
matrix Vector estimate of system state
![Page 19: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/19.jpg)
A Simple Example
![Page 20: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/20.jpg)
A Simple Example
Output from new block tracks system exactly after locking on
![Page 21: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/21.jpg)
A Simple Example
Error between actual and estimate converges to zero
![Page 22: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/22.jpg)
A More Complex Example
![Page 23: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/23.jpg)
A More Complex Example
![Page 24: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/24.jpg)
A More Complex Example
![Page 25: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/25.jpg)
A More Complex Example
![Page 26: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/26.jpg)
A More Complex Example
![Page 27: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/27.jpg)
A More Complex Example
Output from new block tracks system exactly after locking on
![Page 28: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/28.jpg)
A More Complex Example
Error between actual and estimate converges to zero
![Page 29: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/29.jpg)
Summary
A Simulink full order observer library block was created
Accurate Easy to use Scaleable
Saves the modern control designer (or student) time
Reduces the pain and suffering inherent in the design for higher order systems
![Page 30: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/30.jpg)
References
Dorf, R.C. and Bishop, R.H.,Modern Control Systems, Tenth Edition, New Jersey:Pearson, Prentice Hall Publishing, 2004
Johnson, C.D., “Stabilization of Linear Dynamical Systems with Respect to Arbitrary Linear Subspaces,” Journal of Mathematical Analysis and Applications, Vol. 44 (1973),
No. 1, pp. 175-185
Johnson, C.D., “A Unified Canonical Form For Controllable and Uncontrollable Linear Dynamical Systems,” International Journal of Control, Vol. 13 (1971), No. 3, pp. 497-517
Kalman, R.E., “Mathematical Description of Linear Dynamical Systems,” SIAM Journal of Controls, Vol. 1 (1963), pp. 152-192
Kautsky, J. and N.K. Nichols, "Robust Pole Assignment in Linear State Feedback," International Journal of Control, Vol. 41 (1985), pp. 1129-1155
Kolman, B and Hill, D.R., Linear Algebra With Applications, Seventh Edition, New Jersey:Pearson-Prentice Hall Publishing, 2001
![Page 31: Full Order Observer Design Using Simulink](https://reader036.vdocuments.site/reader036/viewer/2022081717/5536e2ef5503467c7a8b4b1c/html5/thumbnails/31.jpg)
Questions?