Difference between revisions of "State Feedback"

From FBSwiki
Jump to navigation Jump to search
Line 4: Line 4:
 
|Next chapter=Output Feedback
 
|Next chapter=Output Feedback
 
|Chapter summary=This chapter describes how feedback can be used to shape the local behavior of a system. The concept of reachability is introduced and used to investigate how to "design" the dynamics of a system through placement of its eigenvalues. In particular, it will be shown that under certain conditions it is possible to assign the system eigenvalues to arbitrary values by appropriate feedback of the system state.
 
|Chapter summary=This chapter describes how feedback can be used to shape the local behavior of a system. The concept of reachability is introduced and used to investigate how to "design" the dynamics of a system through placement of its eigenvalues. In particular, it will be shown that under certain conditions it is possible to assign the system eigenvalues to arbitrary values by appropriate feedback of the system state.
|Chapter contents=# Reachability
+
|Chapter contents=# Observability
# Stabilization by State Feedback
+
#* Definition of Observability
#* Example: [[Vectored thrust aircraft]]
+
#* Testing for Observability
# State Feedback Design Issues
+
#* Observable Canonical Form
# Integral Action
+
# State Estimation
 +
#* The Observer
 +
#* Computing the Observer Gain
 +
# Control Using Estimated State
 +
#* Kalman's Decomposition of a Linear System
 +
# Kalman Filtering
 +
#* Discrete-Time Systems
 +
#* Continuous-Time Systems
 +
#* Linear Quadratic Gaussian Control (LQG)
 +
# State Space Controller Design
 +
#* Two Degree-of-Freedom Controller Architecture
 +
#* Feedforward Design and Trajectory Generation
 +
#* Disturbance Modeling and State Augmentation
 +
#* Feedback Design and Gain Scheduling
 +
#* Nonlinear Estimation
 +
#* Computer Implementation
 
# Further Reading
 
# Further Reading
 
:: Exercises
 
:: Exercises

Revision as of 00:40, 28 December 2020

Prev: Linear Systems Chapter 7 - State Feedback Next: Output Feedback

[[Image:{{{Short name}}}-firstpage.png|right|thumb|link=https:www.cds.caltech.edu/~murray/books/AM08/pdf/fbs-{{{Short name}}}_24Jul2020.pdf]] This chapter describes how feedback can be used to shape the local behavior of a system. The concept of reachability is introduced and used to investigate how to "design" the dynamics of a system through placement of its eigenvalues. In particular, it will be shown that under certain conditions it is possible to assign the system eigenvalues to arbitrary values by appropriate feedback of the system state.

Contents

  1. Observability
    • Definition of Observability
    • Testing for Observability
    • Observable Canonical Form
  2. State Estimation
    • The Observer
    • Computing the Observer Gain
  3. Control Using Estimated State
    • Kalman's Decomposition of a Linear System
  4. Kalman Filtering
    • Discrete-Time Systems
    • Continuous-Time Systems
    • Linear Quadratic Gaussian Control (LQG)
  5. State Space Controller Design
    • Two Degree-of-Freedom Controller Architecture
    • Feedforward Design and Trajectory Generation
    • Disturbance Modeling and State Augmentation
    • Feedback Design and Gain Scheduling
    • Nonlinear Estimation
    • Computer Implementation
  6. Further Reading
Exercises

Chapter Summary

This chapter describes how state feedback can be used to design the (closed loop) dynamics of the system:

  1. A linear system with dynamics

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle \begin{aligned} \dot x &= A x + B u &\quad x &\in \mathbb{R}^n, u \in \mathbb{R} \\ y &= C x + D u &\quad y &\in \mathbb{R} \end{aligned} }

    is said to be reachable if we can find an input Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle u(t)} defined on the interval Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle [0, T]} that can steer the system from a given final point Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle x(0) = x_0} to a desired final point Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle x(T) = x_f} .

  2. The reachability matrix for a linear system is given by

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle W_r = \left[\begin{matrix} B & AB & \cdots & A^{n-1}B \end{matrix}\right]. }

    A linear system is reachable if and only if the reachability matrix Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle W_\text{r}} is invertible (assuming a single intput/single output system). Systems that are not reachable have states that are constrained to have a fixed relationship with each other.

  3. A linear system of the form

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle \frac{dz}{dt}= \left[\begin{matrix} -a_1 & -a_2 & -a_3 & \dots & -a_n \\ 1 & 0 & 0 & \dots & 0 \\ 0 & 1 & 0 & \dots & 0 \\ \vdots & & \ddots & \ddots & \vdots \\ 0 & & & 1 & 0\\ \end{matrix}\right] z+ \left[\begin{matrix} 1 \\ 0 \\ 0 \\ \vdots \\ 0 \end{matrix}\right] u }

    is said to be in reachable canonical form. A system in this form is always reachable and has a characteristic polynomial given by

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle \det(sI-A) = s^n+a_1 s^{n-1} + \cdots + a_{n-1}s + a_n, }

    A reachable linear system can be transformed into reachable canonical form through the use of a coordinate transformation Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle z = T x} .

  4. A state feedback law has the form

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle u = -K x + k_r r }

    where Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle r} is the reference value for the output. The closed loop dynamics for the system are given by

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle \dot x = (A - B K) x + B k_\text{f} r. }

    The stability of the system is determined by the stability of the matrix Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle A - BK} . The equilibrium point and steady state output (assuming the systems is stable) are given by

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle x_e = -(A-BK)^{-1} B k_\text{f} r \qquad y_e = C x_e. }

    Choosing Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle k_\text{f}} as

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle k_r = {-1}/\left(C (A-BK)^{-1} B\right). }
    gives .

  5. If a system is reachable, then there exists a feedback law of the form

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle u = -K x + k_\text{f} r }

    the gives a closed loop system with an arbitrary characteristic polynomial. Hence the eigenvalues of a reachable linear system can be placed arbitrarily through the use of an appropriate feedback control law.

  6. Integral feedback can be used to provide zero steady state error instead of careful calibration of the gain Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle k_\text{f}} . An integral feedback controller has the form

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle u = -K (x - x_\text{e}) - k_\text{i} z + k_\text{f} r, }

    where

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle \dot z = y - r }

    is the integral error. The gains Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle K} , Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle k_i} and Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle k_\text{f}} can be found by designing a stabilizing state feedback for the system dynamics augmented by the integrator dynamics.

  7. A linear quadratic regulator minimizes the cost function

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle \tilde J = \int_0^\infty \left(x^T Q_x x + u^T Q_u u \right)\,dt. }

    The solution to the LQR problem is given by a linear control law of the form

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle u = -Q_u^{-1} B^T S x. }

    where Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle S \in \mathbb{R}^{n \times n}} is a positive definite, symmetric matrix that satisfies the equation

    Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): {\displaystyle S A + A^T S - S B Q_u^{-1} B^T S + Q_x = 0. }

    This equation is called the algebraic Riccati equation and can be solved numerically.


Teaching Materials

None available

Additional Exercises

None available

Frequently Asked Questions

None available

Errata

Python Code

The following Python scripts are available for producing figures that appear in this chapter.

See the software page for more information on how to run these scripts.

Additional Information