Lecture Outline Regeltechniek Previous lecture: Nyquist plot and - - PowerPoint PPT Presentation

lecture outline regeltechniek
SMART_READER_LITE
LIVE PREVIEW

Lecture Outline Regeltechniek Previous lecture: Nyquist plot and - - PowerPoint PPT Presentation

Lecture Outline Regeltechniek Previous lecture: Nyquist plot and stability criterion. Lecture 11 State-space models and state feedback control (We are finished with frequency domain methods.) Robert Babu ska Today: Delft Center for


slide-1
SLIDE 1

Regeltechniek

Lecture 11 – State-space models and state feedback control

Robert Babuˇ ska Delft Center for Systems and Control Faculty of Mechanical Engineering Delft University of Technology The Netherlands e-mail: r.babuska@dcsc.tudelft.nl www.dcsc.tudelft.nl/˜babuska tel: 015-27 85117

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 1

Lecture Outline

Previous lecture: Nyquist plot and stability criterion. (We are finished with frequency domain methods.) Today:

  • State-space models, representation.
  • State feedback, pole placement.

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 2

The big picture

Implementation Influenceaprocess, modifybehavior Design

Controller

Analysis,controldesign

State-spacemodel Transferfunction

Data Basisfor

  • rientedmodels

control

Linearized differentialeq.

Linearization Simulation,prediction, betterunderstanding

Nonlineardifferentialeq.

Typeofmodel

Firstprinciples

Physicalworld(process)

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 3

Transfer Function vs. State Space Methods

Transfer function State-space graphical tools computational provide insight numerical, less insight interactive / iterative “numbers in – numbers out” SISO systems SISO and MIMO systems

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 4

slide-2
SLIDE 2

Linear State-Space Model

˙ x(t) = Ax(t) + Bu(t) y(t) = Cx(t) + Du(t) A . . . state matrix B . . . input matrix C . . . output matrix D . . . direct transmission matrix Interpretation: Derivative of each state is given by a linear combination of states plus a linear combination of inputs. Similarly for the output . . .

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 5

State-Space Model: Block Diagram

˙ x(t) = Ax(t) + Bu(t) y(t) = Cx(t) + Du(t) u t ( ) y t ( ) x t ( )

.

x t ( )

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 6

DC Motor: State-Space Model

Ldi(t)

dt + Ri(t)

= V (t) − Kt

dθ(t) dt

electrical part J d2θ(t)

dt2 + bdθ(t) dt

= Kti(t) mechanical part Introduce velocity: ω(t) = ˙ θ(t) Rewrite the above equations as a set of three 1st order DE: ˙ i(t) = −R Li(t) − Kt L ω(t) + 1 LV (t) ˙ ω(t) = Kt J i(t) − b Jω(t) ˙ θ(t) = ω(t)

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 7

DC Motor: State-Space Model

state: x(t) =

  • i(t)

ω(t) θ(t) T , input: u(t) = V (t), output: y(t) = θ(t)       ˙ x1 ˙ x2 ˙ x2       =       −R

L −Kt L Kt J

− b

J

1             x1 x2 x3       +      

1 L

      u y =

  • 1

     x1 x2 x3      

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 8

slide-3
SLIDE 3

Compare to the Input Output Model

G(s) = θ(s) V (s) = Kt s[(Ls + R)(Js + b) + K2

t ]

θ(s)

  • LJs3 + (RJ + Lb)s2 + (Rb + K2

t )s

  • = KtV (s)

Corresponds to the following differential equation: LJ ... θ (t) + (RJ + Lb)¨ θ(t) + (Rb + K2

t ) ˙

θ(t) = KtV (t) Input-output models do not use internal variables, instead use higher derivatives of input and output.

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 9

State-Space Models → Transfer Function

˙ x(t) = Ax(t) + Bu(t) y(t) = Cx(t) + Du(t) Use Laplace: sX(s) = AX(s) + BU(s) Y (s) = CX(s) + DU(s) Express X(s): (sI − A)X(s) = BU(s) X(s) = (sI − A)−1BU(s) Y (s) = CX(s) + DU(s) =

  • C(sI − A)−1B + D
  • U(s)

Transfer function: G(s) = C(sI − A)−1B + D

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 10

Poles of State-Space Models

Transfer function: G(s) = C(sI − A)−1B + D (sI − A)−1 = adj(sI − A) det(sI − A) Poles = roots of the characteristic equation of A: det(sI − A) = 0 Therefore the poles are the eigenvalues of state matrix A.

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 11

State Feedback Control – Main Idea

  • Assume a state-space model with all states measured:

˙ x(t) = Ax(t) + Bu(t) y(t) = x(t)

  • Controller = linear combination of states:

u(t) = −Kx(t) = −k1x1(t) − k2x2(t) · · · − knxn(t)

  • Goal: obtain desired dynamics (e.g., fast, well damped)
  • Design parameters: location of closed-loop poles

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 12

slide-4
SLIDE 4

State Feedback Control – Remarks

  • Note that the controller is a static system:

u(t) = −Kx(t) = −k1x1(t) − k2x2(t) · · · − knxn(t) (as opposed to e.g. a lead-lag compensator or PID).

  • Any desired location of closed-loop poles can be obtained

(which is not the case with e.g. root-locus)

  • Often not all the states are measured (need an observer).

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 13

State Feedback Control Scheme

d u

  • K

.

y=x x Ax Bu = +

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 14

State Feedback Control – Problem

Given the state-space model: ˙ x(t) = Ax(t) + Bu(t) We want to design the state-feedback gain K (a vector) u(t) = −Kx(t) Central question: How can we compute K, such that the closed-loop poles are at a desired location?

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 15

One Possible Solution

˙ x(t) = Ax(t) + Bu(t) u(t) = −Kx(t) Construct the closed-loop system: ˙ x(t) = Ax(t) − BKx(t) ˙ x(t) = (A − BK)

  • Acl

x(t) Compute the closed-loop characteristic polynomial: det(sI − Acl) = det(sI − A + BK) = sn + a1sn−1 + · · · + an−1s + an

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 16

slide-5
SLIDE 5

Solution: Finding K

Closed-loop characteristic polynomial: det(sI − A + BK) = sn + a1sn−1 + · · · + an−1s + an The coefficients ai are linear functions of the gains ki. Define desired characteristic polynomial (i.e., desired dynamics in terms of poles): d(s) = sn + d1sn−1 + · · · + dn−1s + dn Compute K by equating coefficients ai and di

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 17

Desired Dynamics (Closed-Loop Poles)

Control goals are typically stated in terms of:

  • desired frequency ωn and damping ζ

for dominant second-order dynamics

  • time domain characteristics:

rise time, settling time, overshoot Gd(s) = ω2

n

s2 + 2ζωns + ω2

n

  • dominant dynamics

· α ∗ ωn s + α ∗ ωn · · ·

  • faster dynamics

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 18

Performance Specifications for Closed-Loop

t t M

r s p

ω ζ ζ σ

n r p s

t M t

≥ ≥ ≥

1 8 4 6 . .

✁ ✂

ω n

Re Re Re Im Im Im

θ σ

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 19

Tracking a Reference Input (Servo)

Goal: respond to a reference signal in a specified way. Replace u(t) = −Kx(t) by: u(t) = −Kx(t) + Kff r(t) Kff d u

  • K

.

y=x r x Ax Bu = +

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 20

slide-6
SLIDE 6

Computing the Feedforward Gain

Kff u

.

y x r x Ax Bu = +

  • K

C Transfer function from r to y:

Hcl(s) = C(sI − A + BK)−1BKff = Kff b(s) d(s) with: b(s) the process open-loop TF numerator d(s) is the desired closed loop TF denominator

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 21

Computing the Feedforward Gain

Hcl(s) = C(sI − A + BK)−1BKff = Kff b(s) d(s) Given a desired DC gain of the closed loop: Hcl(0) = DCdes Compute: Kff = d(0) b(0) · DCdes

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 22

Example: Disk Drive Arm Control

¨ y(t) = c Ju(t)

u(t) y(t)

Specifications: settling time < 10 ms, overshoot < 2%

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 23

Example: Disk Drive Arm Control

  • 1. Form a state-space model A, B, C, D
  • 2. Analyze open-loop dynamics (poles)
  • 3. Define desired closed loop dynamics d(s)
  • 4. Compute state-feedback gain vector K
  • 5. Compute feedforward gain vector Kff

Robert Babuˇ ska Delft Center for Systems and Control, TU Delft 24