Nonlinear Control Theory Introduction
Harry G. Kwatny Department of Mechanical Engineering & Mechanics Drexel University Outline
Course resources Overview What is nonlinear control? Linearization Why nonlinear control? Some examples Resources Professor Harry G. Kwatny Office: 151-A Tel: 895-2356 e-mail: [email protected] URL: http://www.pages.drexel.edu/faculty/hgk22 Text Books & Software: Kwatny, H. G. and Blankenship, “Nonlinear Control & Analytical Mechanics,” Birkhauser, 2000 – Obtain update from H. Kwatny Mathematica, Student Version 5.0 Requirements: Problem sets Final: Take-home project Other References. 1. Slotine, J-J. E. and Li, W., “Applied Nonlinear Control,” Prentice-Hall, 1991. 2. Vidyasagar, M., “Nonlinear Systems Analysis 2nd edition,” Prentice-Hall, 1993. 3. Isidori, Alberto, “Nonlinear Control Systems-3rd edition,” Springer-Verlag, 1995. 4. Nijmeijer, H. and H. J. van der Schaft, 1990: Nonlinear Dynamical Control Systems. Springer–Verlag. 5. Khalil, H. K., 1996: Nonlinear Systems-2nd edition. MacMillan. MEM 636 ~ Part I
Introduction Course Overview, Using Mathematica Nonlinear Dynamics, Stability The State Space, Equilibria & Stability, Hartman-Grobman Theorem Stability ~ Liapunov Methods Geometric Foundations Manifolds, Vector Fields & Integral Curves Distributions, Frobenius Theorem & Integral Surfaces Coordinate Transformations Controllability & Observability Controllability & Observability, Canonical Forms Stabilization via Feedback Linearization Linearization via Feedback Stabilization using IO Linearization, Gain Scheduling Robust & Adaptive Control Tracking & Disturbance Rejection General Model of Nonlinear System
state
input ut( ) xt( ) output yt( ) System
x = f( xu,) state equation y= h( xu,) output equation xRu∈∈nmq,, R y ∈ R Special Case: Linear System Nonlinear System Linear System x = f( xu, ) x = Ax + Bu
y= h( xu, ) y= Cx + Du
Most real systems are nonlinear Sometimes a linear approximation is satisfactory Linear systems are much easier to analyze Linear Systems are Nice
1. Superposition Principle: A linear combination of any two solutions for a linear system is also a solution. 2. Unique Equilibrium: Recall that an equilibrium is a solution x(t), with u(t) = 0, for which x is constant. A generic Linear system has a unique (isolated) equilibrium at the origin x(t) = 0 and its stability is easily determined. 3. Controllability: There are known necessary and sufficient conditions under which a control exists to steer the state of a linear system from any initial value to any desired final value in finite time. 4. Observability: There are known necessary and sufficient conditions under which the system’s state history can be determined from its input and output history. 5. Control design tools: A variety of controller and observer design techniques exist for linear systems (including classical techniques, pole placement, LQR/LQG, Hinf, etc.) Why Nonlinear Control Contemporary control problems require it, Robotics, ground vehicles, propulsion systems, electric power systems, aircraft & spacecraft, autonomous vehicles, manufacturing processes, chemical & material processing,… Smooth (soft) nonlinearities the system motion may not remain sufficiently close to an equilibrium point that the linear approximation is valid. Also, linearization often removes essential physical effects – like Coriolis forces. The optimal control may make effective use of nonlinearities Robotics, process systems, spacecraft Non-smooth (hard) nonlinearities Saturation, backlash, deadzone, hysteresis, friction, switching Systems that are not linearly controllable/observable may be controllable/observable in a nonlinear sense Nonholonomic vehicles (try parking a car with a linear controller), underactuated mechanical systems (have fewer controls than dof), compressors near stall, ground vehicles near directional stability limit Systems that operate near instability (bifurcation points) Power system voltage collapse, aircraft stall & spin, compressor surge & rotating stall, auto directional, cornering & roll stability Parameter adaptive & intelligent systems are inherently nonlinear Linearization 1: linear approximation near an equilibrium point The general nonlinear system in standard form, involves the state vector xu , input vector , and output vector y. x = f( xu,) state equations y= h( xu,) output equations
A set of values (xu000 , , y ) is called an equilibrium point if they satisfy:
0= fxu( 00 ,)
y0= hx( 00, u) We are interested in motions that remain close to the equilibrium point. Linearization 2
Define: xt( ) =+=+=+ x00δδδ xtut( ), ( ) u utyt( ), ( ) y 0 yt( )
δx =++ f( x00 δδ xt( ), u ut( )) The equations become: y0+=+δ yt( ) hx( 00 δδ xt( ), u + ut( )) Now, construct a Taylor series for fh , ∂∂fxu( ,,) fxu( ) f( x++=+++δδ x,, u u) f( x u ) 00δx 00 δu hot 0 0 00 ∂∂xu ∂∂hx( ,, u) hx( u) hx( +δδ xu,, += u) hx( u ) +++00δδx 00 u hot 00 00 ∂∂xu
Notice that fxu( 00 ,) = 0 and hxu( 00 ,) = y 0 , so ∂∂fxu( ,,) fxu( ) δδδx = 00 xu+ 00 ∂∂ δδδx = Ax + Bu xu⇒ ∂∂hx( ,, u) hx( u) δδδy= Cx + Du δy= 00 δδ xu+ 00 ∂∂xu Some Examples of Nonlinear Systems Example 1: Fully-Actuated Robotic System q coordinates Models always look like: p quasi-velocities kinematics: q = Vqp( )
dynamics: M( q) p + Cqp( ,,) p += Fqp( ) u detMq( ) ≠∀ 0 q If we want to regulate velocity, choose u= Cqp( ,,) p + Fqp( ) + M( qv) ⇒= p v, a linear system!
Decoupling Stabilizing If we want to regulate position, we can - more algebra. This is called the computed 'torque method.' We will generalize it. Velocities in inertial Velocities in body Example 2 coordinates coordinates
xu cosψψ− sin 0 β , sideslip kinematics: yv = sinψψ cos 0 ψ 0 01r V , velocity Consider uu12= and u = r to be control inputs and suppose v = 0. y x cosψ 0 ψ ,heading = ψ + y sin uu12 0 ψ 01 Linearize about the origin ( xy , ,Ψ) =( 0,0,0) to get 10 x=+==⇒ Ax Bu, A 0, B 0 0 The x 01 If the boat has a linear system is not controllable! In particular, δ , rudder keel, typically, we have sideslip v=0. y = 0, so it is not possible to steer from the origin along the y -axis Example 2, cont’d But, of course, if you allow large motions you can steer to a point x=0, yy = ,ψ = 0. How? ππtt Try this: ut12( ) = cos , ut( ) = sin εε
The system appears not to be linearly uncontrollable but nonlinearly controllable!!
By coordinating the rudder and forward speed, we can cause the vehicle to move along the y- axis. Example 3: Drive Motor & Load with Non- smooth Friction Coupling Drive Motor Shaft Inertial Load
Gearbox
Load 50:1 - 1 ω 2 1 θ 2 1 ω 1 1 θ 1 u K J2s s J1s s motor 1.116 - 5.9e-5 kgm2 kgm2 1.69e-4 6.72e4 Nm/rad kgm2 ϕ 2 (ω 2 ) ϕ 1(ω 1) 5.4e4 Nm/rad 1.14e-3 (output) kgm2
• The problem is to accurately position the load.
• The problem becomes even more interesting if the friction parameters are uncertain. Example 4: Automobile – Multiple Equilibria x V = V s V ω d δ = ω βδ Vs FV( , sd ,,, F) β dt u β Body Frame y equilibria: set δ = 0,VVss = (a parameter) v θθ • a m, J ωβ solve for , , Fd Y
b 0= FV(ωβ ,sd , ,0, F)
Fl Fr Space Frame X 2 0.75 0.5 1 0.25 Vs Vs 131.5 132 132.5 133 131.5 132 132.5 133 -0.25 -1 -0.5 -0.75 -2 Example 5 – Simple 1 dof Rotation θω = ω = u x = cosθ replace θ by xy , → y = sinθ xy = − ω yx = ω ω = u xy22+=1 A stabilizing controller is easily obtained via Lyapunov design uy=−−ω ⇒ u =−sin θω − Example 6 - GTM
θ = q xV = cosγ zV = sinγ 1 1 2 V=−−( Tcosα ρ V SCDe( αδ, , q) mg sin γ) m 2
1 1 2 γ =+−(Tsin α ρ V SCLe( αδ, , q) mg cosγ) mV 2 M = =11ρ22 αδ+ ρ αδ −− + q , M( 22 V ScCm( ,, e q) V ScCZ( ,, e q)( x cgref x cg ) mgxcg lT t ) I y αθγ= − GTM Equilibrium Surface Straight and Level Flight Analysis
19 Nonlinear Equilibrium Structure Analysis of Upset Using GTM (1) Coordinated Turn Analysis
Coordinated turn of GTM @ 85 fps Coordinated turn of GTM @ 90 fps
Coordinated turn of GTM @ 87 fps
20 Nonlinear Equilibrium Structure Analysis of Upset Using GTM (2) Coordinated Turn Analysis
Techno-Sciences, Inc. Proprietary 21