Mercurial > hg > ltpda
diff m-toolbox/html_help/help/ug/ssm.html @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/m-toolbox/html_help/help/ug/ssm.html Wed Nov 23 19:22:13 2011 +0100 @@ -0,0 +1,722 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" + "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd"> + +<html lang="en"> +<head> + <meta name="generator" content= + "HTML Tidy for Mac OS X (vers 1st December 2004), see www.w3.org"> + <meta http-equiv="Content-Type" content= + "text/html; charset=us-ascii"> + + <title>Statespace models (LTPDA Toolbox)</title> + <link rel="stylesheet" href="docstyle.css" type="text/css"> + <meta name="generator" content="DocBook XSL Stylesheets V1.52.2"> + <meta name="description" content= + "Presents an overview of the features, system requirements, and starting the toolbox."> + </head> + +<body> + <a name="top_of_page" id="top_of_page"></a> + + <p style="font-size:1px;"> </p> + + <table class="nav" summary="Navigation aid" border="0" width= + "100%" cellpadding="0" cellspacing="0"> + <tr> + <td valign="baseline"><b>LTPDA Toolbox</b></td><td><a href="../helptoc.html">contents</a></td> + + <td valign="baseline" align="right"><a href= + "smodel_introduction.html"><img src="b_prev.gif" border="0" align= + "bottom" alt="Introduction to parametric models in LTPDA"></a> <a href= + "ssm_introduction.html"><img src="b_next.gif" border="0" align= + "bottom" alt="Introduction to Statespace Models with LTPDA"></a></td> + </tr> + </table> + + <h1 class="title"><a name="f3-12899" id="f3-12899"></a>Statespace models</h1> + <hr> + + <p> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<HTML> +<HEAD> + <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252"> + <TITLE></TITLE> + <META NAME="GENERATOR" CONTENT="OpenOffice.org 3.1 (Win32)"> + <META NAME="CREATED" CONTENT="0;0"> + <META NAME="CHANGEDBY" CONTENT="Adrien G"> + <META NAME="CHANGED" CONTENT="20090827;17521500"> +</HEAD> +<BODY LANG="en-US" DIR="LTR"> +<P> + <H2>Why use state space modeling?</H2> + <P>State space modeling is efficient to simulate systems with large + dimensionality, be it in terms of inputs, outputs, or pole/zeros. + Adding nonlinearities to a model is also easier as in the frequency + domain, however there is no such capability in the toolbox yet. + Another reason to use them is to build complex parametric models, + where intricated parameters make impossible the symbolic calculation + of the transfer function coefficients – as a matter of fact + the transfer function can be computed out of a determinant involving + the A matrix, explaining the complexity of the calculation.</P> + <P>For tasks such as identification, state space modeling is a + computationally rather heavy, especially if colored noise is + involved in the process.</P> + <P>State space models can be converted into a matrix of transfer + function in the s- or the z-domain. The functions in the toolbox + that enable this are ss2pzmodel, ss2miir, ss2rational.</P> + <H2>Generalities on State Space Modeling</H2> + <P><FONT COLOR="#000000">In order to familiarize with state space + modeling, this help page is a mere copy of the wiki page.</FONT></P> + <P><FONT COLOR="#000000">In control engineering, a </FONT><FONT COLOR="#000000"><B>state + space representation</B></FONT><FONT COLOR="#000000"> is a + mathematical model of a physical system as a set of input, output + and state variables related by first-order <A HREF="http://en.wikipedia.org/wiki/Differential_equation">differential + equations</A>. To abstract from the number of inputs, outputs </FONT>and<FONT COLOR="#000000"> + states, the variables are expressed as vectors and the differential + and algebraic equations are written in matrix form (the last one can + be done when the <A HREF="http://en.wikipedia.org/wiki/Dynamical_system">dynamical + system</A> is linear and time invariant). The state space + representation (also known as the "time-domain approach") + provides a convenient and compact way to model and analyze systems + with multiple inputs and outputs. With </FONT><FONT COLOR="#000000"><I>p</I></FONT><FONT COLOR="#000000"> + inputs and </FONT><FONT COLOR="#000000"><I>q</I></FONT><FONT COLOR="#000000"> + outputs, we would otherwise have to write down <A HREF="http://en.wikipedia.org/wiki/Laplace_transform">Laplace + transforms</A> to encode all the information about a system. Unlike + the frequency domain approach, the use of the state space + representation is not limited to systems with linear components and + zero initial conditions. "State space" refers to the space + whose axes are the state variables. The state of the system can be + represented as a vector within that space.</FONT></P> + <H2><FONT COLOR="#000000">State variables</FONT></H2> + <H2><FONT COLOR="#000080"><A HREF="http://en.wikipedia.org/wiki/File:Typical_State_Space_model.png"><FONT COLOR="#000080"><IMG SRC="images/State_space_fichiers/Typical_State_Space_model.png" NAME="images3" ALIGN=BOTTOM WIDTH=382 HEIGHT=154 BORDER=1></FONT></A></FONT><FONT COLOR="#000000"> + </FONT> + </H2> + <P>Typical state space model</P> + <P><FONT COLOR="#000000">The internal <A HREF="http://en.wikipedia.org/wiki/State_variable">state + variables</A> are the smallest possible subset of system variables + that can represent the entire state of the system at any given time. + State variables must be linearly independent; a state variable + cannot be a linear combination of other state variables. The minimum + number of state variables required to represent a given system, </FONT><FONT COLOR="#000000"><I>n</I></FONT><FONT COLOR="#000000">, + is usually equal to the order of the system's defining differential + equation. If the system is represented in transfer function form, + the minimum number of state variables is equal to the order of the + transfer function's denominator after it has been reduced to a + proper fraction. It is important to understand that converting a + state space realization to a transfer function form may lose some + internal information about the system, and may provide a description + of a system which is stable, when the state-space realization is + unstable at certain points. In electric circuits, the number of + state variables is often, though not always, the same as the number + of energy storage elements in the circuit such as <A HREF="http://en.wikipedia.org/wiki/Capacitor">capacitors</A> + and <A HREF="http://en.wikipedia.org/wiki/Inductor">inductors</A>.</FONT></P> + <H2><FONT COLOR="#000000">Linear systems</FONT></H2> + <P>The most general state-space representation of a linear system + with <I>p</I> inputs, <I>q</I> outputs and <I>n</I> state variables + is written in the following form:</P> + <P><IMG SRC="images/State_space_fichiers/036212a5fe0e6fded881a8f2d536cbb1.png" NAME="images4" ALT="\dot{\mathbf{x}}(t) = A(t) \mathbf{x}(t) + B(t) \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=227 HEIGHT=21 BORDER=0> + </P> + <P><IMG SRC="images/State_space_fichiers/1d1151bf91e0a3f42167568730cead9f.png" NAME="images5" ALT="\mathbf{y}(t) = C(t) \mathbf{x}(t) + D(t) \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=229 HEIGHT=21 BORDER=0> + </P> + <P>where:</P> + <UL> + <LI><P><IMG SRC="images/State_space_fichiers/0b46dcfa3789d90891d7d22aa4bf1b83.png" NAME="images6" ALT="x(\cdot)" ALIGN=BOTTOM WIDTH=31 HEIGHT=21 BORDER=0> + is called the "state vector", + <IMG SRC="images/State_space_fichiers/76bfa39f75341b43cc349cbf72261ac6.png" NAME="images7" ALT="x(t) \in \mathbb{R}^n" ALIGN=BOTTOM WIDTH=80 HEIGHT=21 BORDER=0>; + </P> + <LI><P><IMG SRC="images/State_space_fichiers/89df6576cd198dc2449bf59e97a61df3.png" NAME="images8" ALT="y(\cdot)" ALIGN=BOTTOM WIDTH=30 HEIGHT=21 BORDER=0> + is called the "output vector", + <IMG SRC="images/State_space_fichiers/592f30a36abb23d30f67aeac77f10a63.png" NAME="images9" ALT="y(t) \in \mathbb{R}^q" ALIGN=BOTTOM WIDTH=78 HEIGHT=21 BORDER=0>; + </P> + <LI><P><IMG SRC="images/State_space_fichiers/918aa6368974b6014859c56e1ef6762c.png" NAME="images10" ALT="u(\cdot)" ALIGN=BOTTOM WIDTH=31 HEIGHT=21 BORDER=0> + is called the "input (or control) vector", + <IMG SRC="images/State_space_fichiers/09a537199dfe82dc35d0050c72850b4c.png" NAME="images11" ALT="u(t) \in \mathbb{R}^p" ALIGN=BOTTOM WIDTH=78 HEIGHT=21 BORDER=0>; + </P> + <LI><P><IMG SRC="images/State_space_fichiers/b53a04dbe423d4e39eaedadf54e3ee31.png" NAME="images12" ALT="A(\cdot)" ALIGN=BOTTOM WIDTH=35 HEIGHT=21 BORDER=0> + is the "state matrix", + <IMG SRC="images/State_space_fichiers/d67f69962a6411d08f1ba642d8c75617.png" NAME="images13" ALT="\operatorname{dim}[A(\cdot)] = n \times n" ALIGN=BOTTOM WIDTH=153 HEIGHT=21 BORDER=0>, + </P> + <LI><P><IMG SRC="images/State_space_fichiers/8f528e3252e95ac5edef108971a1d43f.png" NAME="images14" ALT="B(\cdot)" ALIGN=BOTTOM WIDTH=36 HEIGHT=21 BORDER=0> + is the "input matrix", + <IMG SRC="images/State_space_fichiers/a4d9e024860226d6ad283d1d217f1c31.png" NAME="images15" ALT="\operatorname{dim}[B(\cdot)] = n \times p" ALIGN=BOTTOM WIDTH=152 HEIGHT=21 BORDER=0>, + </P> + <LI><P><IMG SRC="images/State_space_fichiers/d4d99b70fae67ddcd7923dbe5dbb6424.png" NAME="images16" ALT="C(\cdot)" ALIGN=BOTTOM WIDTH=34 HEIGHT=21 BORDER=0> + is the "output matrix", + <IMG SRC="images/State_space_fichiers/452963fb0f31641c763dab57d77f6d15.png" NAME="images17" ALT="\operatorname{dim}[C(\cdot)] = q \times n" ALIGN=BOTTOM WIDTH=151 HEIGHT=21 BORDER=0>, + </P> + <LI><P><IMG SRC="images/State_space_fichiers/9828f5f36ec8af68cc289bbf41a2c751.png" NAME="images18" ALT="D(\cdot)" ALIGN=BOTTOM WIDTH=37 HEIGHT=21 BORDER=0> + is the "feedthrough (or feedforward) matrix" (in cases + where the system model does not have a direct feedthrough, + <IMG SRC="images/State_space_fichiers/9828f5f36ec8af68cc289bbf41a2c751.png" NAME="images19" ALT="D(\cdot)" ALIGN=BOTTOM WIDTH=37 HEIGHT=21 BORDER=0> + is the zero matrix), + <IMG SRC="images/State_space_fichiers/5b6e715515525947881d6fb6ea56fb15.png" NAME="images20" ALT="\operatorname{dim}[D(\cdot)] = q \times p" ALIGN=BOTTOM WIDTH=151 HEIGHT=21 BORDER=0>, + </P> + <LI><P><IMG SRC="images/State_space_fichiers/b6b4d433fef1cae095423823ab60d1e5.png" NAME="images21" ALT="\dot{\mathbf{x}}(t) := \frac{\operatorname{d}}{\operatorname{d}t} \mathbf{x}(t)" ALIGN=BOTTOM WIDTH=120 HEIGHT=42 BORDER=0>. + </P> + </UL> + <P><FONT COLOR="#000000">In this general formulation, all matrices + are allowed to be time-variant (i.e., their elements can depend on + time); however, in the common <A HREF="http://en.wikipedia.org/wiki/LTI_system">LTI</A> + case, matrices will be time invariant. The time variable </FONT><FONT COLOR="#000000"><I>t</I></FONT><FONT COLOR="#000000"> + can be a "continuous" (e.g., + <IMG SRC="images/State_space_fichiers/6080cfaa75ff6363d282e29a14b46632.png" NAME="images22" ALT="t \in \mathbb{R}" ALIGN=BOTTOM WIDTH=45 HEIGHT=15 BORDER=0>) + or discrete (e.g., + <IMG SRC="images/State_space_fichiers/d3bd3b5e80beacc6f4a28dacabf2c0c5.png" NAME="images23" ALT="t \in \mathbb{Z}" ALIGN=BOTTOM WIDTH=45 HEIGHT=15 BORDER=0>). + In the latter case, the time variable is usually indicated as </FONT><FONT COLOR="#000000"><I>k</I></FONT><FONT COLOR="#000000">. + <A HREF="http://en.wikipedia.org/wiki/Hybrid_system">Hybrid systems</A> + allow for time domains that have both continuous and discrete parts. + Depending on the assumptions taken, the state-space model + representation can assume the following forms:</FONT></P> + <TABLE DIR="LTR" CELLPADDING=4 CELLSPACING=2> + <TR VALIGN=TOP> + <TD> + <P><B>System type</B></P> + </TD> + <TD> + <P><B>State-space model</B></P> + </TD> + </TR> + <TR VALIGN=TOP> + <TD> + <P>Continuous time-invariant</P> + </TD> + <TD> + <P><IMG SRC="images/State_space_fichiers/ddfd74546a0e35f9ec054af2ecd3f2fa.png" NAME="images24" ALT="\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=182 HEIGHT=21 BORDER=0><BR><IMG SRC="images/State_space_fichiers/d0ac09f5cde2ce822ecc3e369692d04b.png" NAME="images25" ALT="\mathbf{y}(t) = C \mathbf{x}(t) + D \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=184 HEIGHT=21 BORDER=0></P> + </TD> + </TR> + <TR VALIGN=TOP> + <TD> + <P>Continuous time-variant</P> + </TD> + <TD> + <P><IMG SRC="images/State_space_fichiers/95f05c22aefb06c919d8fb5ce8b26689.png" NAME="images26" ALT="\dot{\mathbf{x}}(t) = \mathbf{A}(t) \mathbf{x}(t) + \mathbf{B}(t) \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=230 HEIGHT=21 BORDER=0><BR><IMG SRC="images/State_space_fichiers/b2f523062e3020870da5e52c293a6a49.png" NAME="images27" ALT="\mathbf{y}(t) = \mathbf{C}(t) \mathbf{x}(t) + \mathbf{D}(t) \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=230 HEIGHT=21 BORDER=0></P> + </TD> + </TR> + <TR VALIGN=TOP> + <TD> + <P>Discrete time-invariant</P> + </TD> + <TD> + <P><IMG SRC="images/State_space_fichiers/ab56c0fbbdf9445c187021a5df2553fa.png" NAME="images28" ALT="\mathbf{x}(k+1) = A \mathbf{x}(k) + B \mathbf{u}(k)" ALIGN=BOTTOM WIDTH=227 HEIGHT=21 BORDER=0><BR><IMG SRC="images/State_space_fichiers/7da081c23726f8324878080112ec1af3.png" NAME="images29" ALT="\mathbf{y}(k) = C \mathbf{x}(k) + D \mathbf{u}(k)" ALIGN=BOTTOM WIDTH=195 HEIGHT=21 BORDER=0></P> + </TD> + </TR> + <TR VALIGN=TOP> + <TD> + <P>Discrete time-variant</P> + </TD> + <TD> + <P><IMG SRC="images/State_space_fichiers/9fae6c7e6be7c79bde9cff343e96e853.png" NAME="images30" ALT="\mathbf{x}(k+1) = \mathbf{A}(k) \mathbf{x}(k) + \mathbf{B}(k) \mathbf{u}(k)" ALIGN=BOTTOM WIDTH=281 HEIGHT=21 BORDER=0><BR><IMG SRC="images/State_space_fichiers/693a070bff55c952ca4b781867656bcf.png" NAME="images31" ALT="\mathbf{y}(k) = \mathbf{C}(k) \mathbf{x}(k) + \mathbf{D}(k) \mathbf{u}(k)" ALIGN=BOTTOM WIDTH=248 HEIGHT=21 BORDER=0></P> + </TD> + </TR> + <TR VALIGN=TOP> + <TD> + <P>Laplace domain of<BR>continuous time-invariant</P> + </TD> + <TD> + <P><IMG SRC="images/State_space_fichiers/73704ff87694600b875bcdbe9dd47f82.png" NAME="images32" ALT="s \mathbf{X}(s) = A \mathbf{X}(s) + B \mathbf{U}(s)" ALIGN=BOTTOM WIDTH=211 HEIGHT=21 BORDER=0><BR><IMG SRC="images/State_space_fichiers/b4edd4ea37a52ac0cfb97ef2cf8b6166.png" NAME="images33" ALT="\mathbf{Y}(s) = C \mathbf{X}(s) + D \mathbf{U}(s)" ALIGN=BOTTOM WIDTH=206 HEIGHT=21 BORDER=0></P> + </TD> + </TR> + <TR VALIGN=TOP> + <TD> + <P>Z-domain of<BR>discrete time-invariant</P> + </TD> + <TD> + <P><IMG SRC="images/State_space_fichiers/f40fb3cdcef75a4ffb787848e34f1a5d.png" NAME="images34" ALT="z \mathbf{X}(z) = A \mathbf{X}(z) + B \mathbf{U}(z)" ALIGN=BOTTOM WIDTH=216 HEIGHT=21 BORDER=0><BR><IMG SRC="images/State_space_fichiers/db506ab5a492b5f2ce0d1645db661c8e.png" NAME="images35" ALT="\mathbf{Y}(z) = C \mathbf{X}(z) + D \mathbf{U}(z)" ALIGN=BOTTOM WIDTH=208 HEIGHT=21 BORDER=0></P> + </TD> + </TR> + </TABLE> + <P><FONT COLOR="#000000">Example: Continuous-time LTI case</FONT> + </P> + <P><FONT COLOR="#000000">Stability and natural response + characteristics of a continuous-time <A HREF="http://en.wikipedia.org/wiki/LTI_system">LTI + system</A> (i.e., linear with matrices that are constant with + respect to time) can be studied from the <A HREF="http://en.wikipedia.org/wiki/Eigenvalue">eigenvalues</A> + of the matrix </FONT><FONT COLOR="#000000"><B>A</B></FONT><FONT COLOR="#000000">. + The stability of a time-invariant state-space model can be + determined by looking at the system's <A HREF="http://en.wikipedia.org/wiki/Transfer_function">transfer + function</A> in factored form. It will then look something like + this:</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/3fa715cc96511bc510aabcb71c1f2781.png" NAME="images36" ALT=" \textbf{G}(s) = k \frac{ (s - z_{1})(s - z_{2})(s - z_{3}) }{ (s - p_{1})(s - p_{2})(s - p_{3})(s - p_{4}) }" ALIGN=BOTTOM WIDTH=346 HEIGHT=48 BORDER=0> + </DD></DL> + <P> + <FONT COLOR="#000000">The denominator of the transfer function is + equal to the <A HREF="http://en.wikipedia.org/wiki/Characteristic_polynomial">characteristic + polynomial</A> found by taking the <A HREF="http://en.wikipedia.org/wiki/Determinant">determinant</A> + of </FONT><FONT COLOR="#000000"><I>sI</I></FONT><FONT COLOR="#000000"> + − </FONT><FONT COLOR="#000000"><I>A</I></FONT><FONT COLOR="#000000">,</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/05e74baab950e092f7ef8acbf4654c84.png" NAME="images37" ALT="\mathbf{\lambda}(s) = |sI - A|" ALIGN=BOTTOM WIDTH=129 HEIGHT=21 BORDER=0>. + </DD></DL> + <P> + <FONT COLOR="#000000">The roots of this polynomial (the <A HREF="http://en.wikipedia.org/wiki/Eigenvalue">eigenvalues</A>) + are the system transfer function's <A HREF="http://en.wikipedia.org/wiki/Complex_pole">poles</A> + (i.e., the <A HREF="http://en.wikipedia.org/wiki/Singularity">singularities</A> + where the transfer function's magnitude is unbounded). These poles + can be used to analyze whether the system is <A HREF="http://en.wikipedia.org/wiki/Exponential_stability">asymptotically + stable</A> or <A HREF="http://en.wikipedia.org/wiki/Marginal_stability">marginally + stable</A>. An alternative approach to determining stability, which + does not involve calculating eigenvalues, is to analyze the system's + <A HREF="http://en.wikipedia.org/wiki/Lyapunov_stability">Lyapunov + stability</A>.</FONT></P> + <P><FONT COLOR="#000000">The zeros found in the numerator of + <IMG SRC="images/State_space_fichiers/e75eebaaa95472ea1407f43448f37ab8.png" NAME="images38" ALT="\textbf{G}(s)" ALIGN=BOTTOM WIDTH=39 HEIGHT=21 BORDER=0> + can similarly be used to determine whether the system is <A HREF="http://en.wikipedia.org/wiki/Minimum_phase">minimum + phase</A>.</FONT></P> + <P><FONT COLOR="#000000">The system may still be </FONT><FONT COLOR="#000000"><B>input–output + stable</B></FONT><FONT COLOR="#000000"> (see <A HREF="http://en.wikipedia.org/wiki/BIBO_stability">BIBO + stable</A>) even though it is not internally stable. This may be the + case if unstable poles are canceled out by zeros (i.e., if those + singularities in the transfer function are <A HREF="http://en.wikipedia.org/wiki/Removable_singularity">removable</A>).</FONT></P> + <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Controllability</FONT></H3> + <P><FONT COLOR="#000000">Main article: <A HREF="http://en.wikipedia.org/wiki/Controllability">Controllability</A></FONT></P> + <P><FONT COLOR="#000000">Thus, state controllability condition + implies that it is possible – by admissible inputs – + to steer the states from any initial value to any final value within + some finite time window. A continuous time-invariant linear + state-space model is </FONT><FONT COLOR="#000000"><B>controllable</B></FONT><FONT COLOR="#000000"> + <A HREF="http://en.wikipedia.org/wiki/Iff">if and only if</A></FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/43a31067bb4883d16e9670dee45cafa6.png" NAME="images39" ALT="\operatorname{rank}\begin{bmatrix}B& AB& A^{2}B& ...& A^{n-1}B\end{bmatrix} = n" ALIGN=BOTTOM WIDTH=319 HEIGHT=24 BORDER=0> + </DD></DL> + <H3 STYLE="border: none; padding: 0cm"> + <FONT COLOR="#000000">Observability</FONT></H3> + <P><FONT COLOR="#000000">Main article: <A HREF="http://en.wikipedia.org/wiki/Observability">Observability</A></FONT></P> + <P>Observability is a measure for how well internal states of a + system can be inferred by knowledge of its external outputs. The + observability and controllability of a system are mathematical duals + (i.e., as controllablity provides that an input is available that + brings any initial state to any desired final state, observability + provides that knowing an output trajectory provides enough + information to predict the initial state of the system).</P> + <P>A continuous time-invariant linear state-space model is + <B>observable</B> if and only if</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/0fda525c5450269a5ee9e6a429c318d8.png" NAME="images40" ALT="\operatorname{rank}\begin{bmatrix}C\\ CA\\ ...\\ CA^{n-1}\end{bmatrix} = n" ALIGN=BOTTOM WIDTH=161 HEIGHT=97 BORDER=0> + </DD></DL> + <P> + <FONT COLOR="#000000">(<A HREF="http://en.wikipedia.org/wiki/Rank_%28linear_algebra%29">Rank</A> + is the number of linearly independent rows in a matrix.)</FONT></P> + <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Transfer + function</FONT></H3> + <P><FONT COLOR="#000000">The "<A HREF="http://en.wikipedia.org/wiki/Transfer_function">transfer + function</A>" of a continuous time-invariant linear state-space + model can be derived in the following way:</FONT></P> + <P><FONT COLOR="#000000">First, taking the <A HREF="http://en.wikipedia.org/wiki/Laplace_transform">Laplace + transform</A> of</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/ddfd74546a0e35f9ec054af2ecd3f2fa.png" NAME="images41" ALT="\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=182 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + yields</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/73704ff87694600b875bcdbe9dd47f82.png" NAME="images42" ALT="s\mathbf{X}(s) = A \mathbf{X}(s) + B \mathbf{U}(s)" ALIGN=BOTTOM WIDTH=211 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + Next, we simplify for + <IMG SRC="images/State_space_fichiers/0762e07773e4f1f30137d7915c154851.png" NAME="images43" ALT="\mathbf{X}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0>, + giving</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/f28999fa2e82ade6d97d98696ca7ff3a.png" NAME="images44" ALT="(s\mathbf{I} - A)\mathbf{X}(s) = B\mathbf{U}(s)" ALIGN=BOTTOM WIDTH=194 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/5b52cc12764f99ab8e3fcfab7bb54706.png" NAME="images45" ALT="\mathbf{X}(s) = (s\mathbf{I} - A)^{-1}B\mathbf{U}(s)" ALIGN=BOTTOM WIDTH=214 HEIGHT=23 BORDER=0> + </DD></DL> + <P> + this is substituted for + <IMG SRC="images/State_space_fichiers/0762e07773e4f1f30137d7915c154851.png" NAME="images46" ALT="\mathbf{X}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0> + in the output equation</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/b4edd4ea37a52ac0cfb97ef2cf8b6166.png" NAME="images47" ALT="\mathbf{Y}(s) = C\mathbf{X}(s) + D\mathbf{U}(s)" ALIGN=BOTTOM WIDTH=206 HEIGHT=21 BORDER=0>, + giving + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/97826155d4972cbddde77a96957af4b6.png" NAME="images48" ALT="\mathbf{Y}(s) = C((s\mathbf{I} - A)^{-1}B\mathbf{U}(s)) + D\mathbf{U}(s)" ALIGN=BOTTOM WIDTH=327 HEIGHT=23 BORDER=0> + </DD></DL> + <P> + <FONT COLOR="#000000">Because the <A HREF="http://en.wikipedia.org/wiki/Transfer_function">transfer + function</A> + <IMG SRC="images/State_space_fichiers/046cdad9e9789e63b5196b2be94110e7.png" NAME="images49" ALT="\mathbf{G}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0> + is defined as the ratio of the output to the input of a system, we + take</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/64c51e4be94f51d2064e88ccd44c5927.png" NAME="images50" ALT="\mathbf{G}(s) = \mathbf{Y}(s) / \mathbf{U}(s)" ALIGN=BOTTOM WIDTH=159 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + and substitute the previous expression for + <IMG SRC="images/State_space_fichiers/336fec49a4b9e27e1bc99139f4023267.png" NAME="images51" ALT="\mathbf{Y}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0> + with respect to + <IMG SRC="images/State_space_fichiers/3f0af3cafb3dcd9039883b8047986fc2.png" NAME="images52" ALT="\mathbf{U}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0>, + giving</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/510b6fe3ab8ef640745bfc65e481fdb6.png" NAME="images53" ALT="\mathbf{G}(s) = C(s\mathbf{I} - A)^{-1}B + D" ALIGN=BOTTOM WIDTH=229 HEIGHT=23 BORDER=0> + </DD></DL> + <P> + Clearly + <IMG SRC="images/State_space_fichiers/046cdad9e9789e63b5196b2be94110e7.png" NAME="images54" ALT="\mathbf{G}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0> + must have <I>q</I> by <I>p</I> dimensionality, and thus has a total + of <I>qp</I> elements. So for every input there are <I>q</I> + transfer functions with one for each output. This is why the + state-space representation can easily be the preferred choice for + multiple-input, multiple-output (MIMO) systems.</P> + <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Canonical + realizations</FONT></H3> + <P><FONT COLOR="#000000">Any given transfer function which is + <A HREF="http://en.wikipedia.org/wiki/Strictly_proper">strictly + proper</A> can easily be transferred into state-space by the + following approach (this example is for a 4-dimensional, + single-input, single-output system)):</FONT></P> + <P>Given a transfer function, expand it to reveal all coefficients + in both the numerator and denominator. This should result in the + following form:</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/cc96db353659ef3ff0408ce45112743e.png" NAME="images55" ALT=" \textbf{G}(s) = \frac{n_{1}s^{3} + n_{2}s^{2} + n_{3}s + n_{4}}{s^{4} + d_{1}s^{3} + d_{2}s^{2} + d_{3}s + d_{4}}" ALIGN=BOTTOM WIDTH=298 HEIGHT=47 BORDER=0>. + </DD></DL> + <P> + The coefficients can now be inserted directly into the state-space + model by the following approach:</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/612dae4aec269355721c7ad6ec438adf.png" NAME="images56" ALT="\dot{\textbf{x}}(t) = \begin{bmatrix} -d_{1}& -d_{2}& -d_{3}& -d_{4}\\ 1& 0& 0& 0\\ 0& 1& 0& 0\\ 0& 0& 1& 0 \end{bmatrix}\textbf{x}(t) + \begin{bmatrix} 1\\ 0\\ 0\\ 0\\ \end{bmatrix}\textbf{u}(t)" ALIGN=BOTTOM WIDTH=398 HEIGHT=97 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/b578227cbffe36298e451dddad03316a.png" NAME="images57" ALT=" \textbf{y}(t) = \begin{bmatrix} n_{1}& n_{2}& n_{3}& n_{4} \end{bmatrix}\textbf{x}(t)" ALIGN=BOTTOM WIDTH=238 HEIGHT=25 BORDER=0>. + </DD></DL> + <P> + This state-space realization is called <B>controllable canonical + form</B> because the resulting model is guaranteed to be + controllable (i.e., because the control enters a chain of + integrators, it has the ability to move every state).</P> + <P>The transfer function coefficients can also be used to construct + another type of canonical form</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/48a1d333782665d7903fe3f142cbeed6.png" NAME="images58" ALT="\dot{\textbf{x}}(t) = \begin{bmatrix} -d_{1}& 1& 0& 0\\ -d_{2}& 0& 1& 0\\ -d_{3}& 0& 0& 1\\ -d_{4}& 0& 0& 0 \end{bmatrix}\textbf{x}(t) + \begin{bmatrix} n_{1}\\ n_{2}\\ n_{3}\\ n_{4} \end{bmatrix}\textbf{u}(t)" ALIGN=BOTTOM WIDTH=337 HEIGHT=97 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/79354cdcf381d3986dafa970009f10b4.png" NAME="images59" ALT=" \textbf{y}(t) = \begin{bmatrix} 1& 0& 0& 0 \end{bmatrix}\textbf{x}(t)" ALIGN=BOTTOM WIDTH=198 HEIGHT=25 BORDER=0>. + </DD></DL> + <P> + This state-space realization is called <B>observable canonical form</B> + because the resulting model is guaranteed to be observable (i.e., + because the output exits from a chain of integrators, every state + has an effect on the output).</P> + <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Proper + transfer functions</FONT></H3> + <P><FONT COLOR="#000000">Transfer functions which are only <A HREF="http://en.wikipedia.org/wiki/Proper_transfer_function">proper</A> + (and not <A HREF="http://en.wikipedia.org/wiki/Strictly_proper">strictly + proper</A>) can also be realised quite easily. The trick here is to + separate the transfer function into two parts: a strictly proper + part and a constant.</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/4634759df4f7389f67ac2d972c937ee6.png" NAME="images60" ALT=" \textbf{G}(s) = \textbf{G}_{SP}(s) + \textbf{G}(\infty)" ALIGN=BOTTOM WIDTH=205 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + The strictly proper transfer function can then be transformed into a + canonical state space realization using techniques shown above. The + state space realization of the constant is trivially + <IMG SRC="images/State_space_fichiers/f66dfcf330a8db1668e1fefff7ef58bb.png" NAME="images61" ALT="\textbf{y}(t) = \textbf{G}(\infty)\textbf{u}(t)" ALIGN=BOTTOM WIDTH=146 HEIGHT=20 BORDER=0>. + Together we then get a state space realization with matrices <I>A</I>,<I>B</I> + and <I>C</I> determined by the strictly proper part, and matrix <I>D</I> + determined by the constant.</P> + <P><BR>Here is an example to clear things up a bit:</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/53d2d208c9f9c252174c85b1e0c7bce3.png" NAME="images62" ALT=" \textbf{G}(s) = \frac{s^{2} + 3s + 3}{s^{2} + 2s + 1} = \frac{s + 2}{s^{2} + 2s + 1} + 1" ALIGN=BOTTOM WIDTH=322 HEIGHT=45 BORDER=0> + </DD></DL> + <P> + which yields the following controllable realization</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/d9679b5a5a38271e615b871f76c79c38.png" NAME="images63" ALT="\dot{\textbf{x}}(t) = \begin{bmatrix} -2& -1\\ 1& 0\\ \end{bmatrix}\textbf{x}(t) + \begin{bmatrix} 1\\ 0\end{bmatrix}\textbf{u}(t)" ALIGN=BOTTOM WIDTH=270 HEIGHT=48 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/278467bd0ca464c472b4e47477bdaaa5.png" NAME="images64" ALT=" \textbf{y}(t) = \begin{bmatrix} 1& 2\end{bmatrix}\textbf{x}(t) + \begin{bmatrix} 1\end{bmatrix}\textbf{u}(t)" ALIGN=BOTTOM WIDTH=231 HEIGHT=25 BORDER=0> + </DD></DL> + <P> + Notice how the output also depends directly on the input. This is + due to the + <IMG SRC="images/State_space_fichiers/b00b33e9ecc56576da0c0710f7fd548e.png" NAME="images65" ALT="\textbf{G}(\infty)" ALIGN=BOTTOM WIDTH=51 HEIGHT=20 BORDER=0> + constant in the transfer function.</P> + <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Feedback</FONT></H3> + <P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><FONT COLOR="#000080"><A HREF="http://en.wikipedia.org/wiki/File:Typical_State_Space_model_with_feedback.png"><FONT COLOR="#000080"><IMG SRC="images/State_space_fichiers/Typical_State_Space_model_with_feedback.png" NAME="images66" ALIGN=BOTTOM WIDTH=359 HEIGHT=224 BORDER=1></FONT></A></FONT> + </P> + <P>Typical state space model with feedback</P> + <P><FONT COLOR="#000000">A common method for feedback is to multiply + the output by a matrix </FONT><FONT COLOR="#000000"><I>K</I></FONT><FONT COLOR="#000000"> + and setting this as the input to the system: + <IMG SRC="images/State_space_fichiers/3b8be748204028e004ff5140c7ed2e78.png" NAME="images67" ALT="\mathbf{u}(t) = K \mathbf{y}(t)" ALIGN=BOTTOM WIDTH=112 HEIGHT=21 BORDER=0>. + Since the values of </FONT><FONT COLOR="#000000"><I>K</I></FONT><FONT COLOR="#000000"> + are unrestricted the values can easily be negated for <A HREF="http://en.wikipedia.org/wiki/Negative_feedback">negative + feedback</A>. The presence of a negative sign (the common notation) + is merely a notational one and its absence has no impact on the end + results.</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/ddfd74546a0e35f9ec054af2ecd3f2fa.png" NAME="images68" ALT="\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=182 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/d0ac09f5cde2ce822ecc3e369692d04b.png" NAME="images69" ALT="\mathbf{y}(t) = C \mathbf{x}(t) + D \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=184 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + becomes</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/75e73a990aed8d68c4ea0dfe1dc04823.png" NAME="images70" ALT="\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B K \mathbf{y}(t)" ALIGN=BOTTOM WIDTH=200 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/417f9e2993d831bf2ec0777be3f684d9.png" NAME="images71" ALT="\mathbf{y}(t) = C \mathbf{x}(t) + D K \mathbf{y}(t)" ALIGN=BOTTOM WIDTH=202 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + solving the output equation for + <IMG SRC="images/State_space_fichiers/8bd1b0065e60113616b6750730e820f4.png" NAME="images72" ALT="\mathbf{y}(t)" ALIGN=BOTTOM WIDTH=34 HEIGHT=21 BORDER=0> + and substituting in the state equation results in</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/57650b1210f16a5bcd9a545c351f0be8.png" NAME="images73" ALT="\dot{\mathbf{x}}(t) = \left(A + B K \left(I - D K\right)^{-1} C \right) \mathbf{x}(t)" ALIGN=BOTTOM WIDTH=312 HEIGHT=26 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/78413a2591cd295ceda503bc6b2ea91b.png" NAME="images74" ALT="\mathbf{y}(t) = \left(I - D K\right)^{-1} C \mathbf{x}(t)" ALIGN=BOTTOM WIDTH=216 HEIGHT=24 BORDER=0> + </DD></DL> + <P> + <FONT COLOR="#000000">The advantage of this is that the <A HREF="http://en.wikipedia.org/wiki/Eigenvalues">eigenvalues</A> + of </FONT><FONT COLOR="#000000"><I>A</I></FONT><FONT COLOR="#000000"> + can be controlled by setting </FONT><FONT COLOR="#000000"><I>K</I></FONT><FONT COLOR="#000000"> + appropriately through eigendecomposition of + <IMG SRC="images/State_space_fichiers/ff1b77ecd88e145dd3c106bdc6e98811.png" NAME="images75" ALT="\left(A + B K \left(I - D K\right)^{-1} C \right)" ALIGN=BOTTOM WIDTH=212 HEIGHT=30 BORDER=0>. + This assumes that the open-loop system is <A HREF="http://en.wikipedia.org/wiki/Controllability">controllable</A> + or that the unstable eigenvalues of </FONT><FONT COLOR="#000000"><I>A</I></FONT><FONT COLOR="#000000"> + can be made stable through appropriate choice of </FONT><FONT COLOR="#000000"><I>K</I></FONT><FONT COLOR="#000000">.</FONT></P> + <P>One fairly common simplification to this system is removing <I>D</I> + and setting <I>C</I> to identity, which reduces the equations to</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/3468897c1e237cff1ab38682f9b78693.png" NAME="images76" ALT="\dot{\mathbf{x}}(t) = \left(A + B K \right) \mathbf{x}(t)" ALIGN=BOTTOM WIDTH=184 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/67a23f55dcbb3f93c3c5c8fc3681952b.png" NAME="images77" ALT="\mathbf{y}(t) = \mathbf{x}(t)" ALIGN=BOTTOM WIDTH=94 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + This reduces the necessary eigendecomposition to just <I>A</I> + <I>BK</I>.</P> + <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Feedback + with setpoint (reference) input</FONT></H3> + <P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><FONT COLOR="#000080"><A HREF="http://en.wikipedia.org/wiki/File:Typical_State_Space_model_with_feedback_and_input.png"><FONT COLOR="#000080"><IMG SRC="images/State_space_fichiers/Typical_State_Space_model_with_feedback_and_input.png" NAME="images78" ALIGN=BOTTOM WIDTH=446 HEIGHT=240 BORDER=1></FONT></A></FONT> + </P> + <P>Output feedback with set point</P> + <P>In addition to feedback, an input, <I>r</I>(<I>t</I>), can be + added such that + <IMG SRC="images/State_space_fichiers/c821af7d0e7d7d7b2a163898969ff496.png" NAME="images79" ALT="\mathbf{u}(t) = -K \mathbf{y}(t) + \mathbf{r}(t)" ALIGN=BOTTOM WIDTH=183 HEIGHT=21 BORDER=0>.</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/ddfd74546a0e35f9ec054af2ecd3f2fa.png" NAME="images80" ALT="\dot{\mathbf{x}}(t) = A \mathbf{x}(t) + B \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=182 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/d0ac09f5cde2ce822ecc3e369692d04b.png" NAME="images81" ALT="\mathbf{y}(t) = C \mathbf{x}(t) + D \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=184 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + becomes</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/3d79549a0fc64810b943e3cb57e13af8.png" NAME="images82" ALT="\dot{\mathbf{x}}(t) = A \mathbf{x}(t) - B K \mathbf{y}(t) + B \mathbf{r}(t)" ALIGN=BOTTOM WIDTH=272 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/798f03a10bb4be76f6abf2ac6910a396.png" NAME="images83" ALT="\mathbf{y}(t) = C \mathbf{x}(t) - D K \mathbf{y}(t) + D \mathbf{r}(t)" ALIGN=BOTTOM WIDTH=274 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + solving the output equation for + <IMG SRC="images/State_space_fichiers/8bd1b0065e60113616b6750730e820f4.png" NAME="images84" ALT="\mathbf{y}(t)" ALIGN=BOTTOM WIDTH=34 HEIGHT=21 BORDER=0> + and substituting in the state equation results in</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/38d70e22f115d9278eb21de4e4e484e6.png" NAME="images85" ALT="\dot{\mathbf{x}}(t) = \left(A - B K \left(I + D K\right)^{-1} C \right) \mathbf{x}(t) + B \left(I - K \left(I + D K\right)^{-1}D \right) \mathbf{r}(t)" ALIGN=BOTTOM WIDTH=588 HEIGHT=25 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/37aad76449d0f436741f30b04413c4cd.png" NAME="images86" ALT="\mathbf{y}(t) = \left(I + D K\right)^{-1} C \mathbf{x}(t) + \left(I + D K\right)^{-1} D \mathbf{r}(t)" ALIGN=BOTTOM WIDTH=394 HEIGHT=24 BORDER=0> + </DD></DL> + <P> + One fairly common simplification to this system is removing <I>D</I>, + which reduces the equations to</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/680eb3b0a3e7da89e78ed453cd1667ad.png" NAME="images87" ALT="\dot{\mathbf{x}}(t) = \left(A - B K C \right) \mathbf{x}(t) + B \mathbf{r}(t)" ALIGN=BOTTOM WIDTH=271 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/2f8e4ed7d6ee668acb3731a715a41e64.png" NAME="images88" ALT="\mathbf{y}(t) = C \mathbf{x}(t)" ALIGN=BOTTOM WIDTH=109 HEIGHT=21 BORDER=0> + </DD></DL> + <H3 STYLE="border: none; padding: 0cm"> + <FONT COLOR="#000000">Moving object example</FONT></H3> + <P><FONT COLOR="#000000">A classical linear system is that of + one-dimensional movement of an object. The <A HREF="http://en.wikipedia.org/wiki/Newton%27s_laws_of_motion">Newton's + laws of motion</A> for an object moving horizontally on a plane and + attached to a wall with a spring</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/4ac69961a4f494cd12470e4005c7b6c9.png" NAME="images89" ALT="m \ddot{y}(t) = u(t) - k_1 \dot{y}(t) - k_2 y(t)" ALIGN=BOTTOM WIDTH=258 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + where</P> + <UL> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>y</I>(<I>t</I>) + is position; + <IMG SRC="images/State_space_fichiers/4721de091b5d15bb9809fa41a5e40db7.png" NAME="images90" ALT="\dot y(t)" ALIGN=BOTTOM WIDTH=32 HEIGHT=21 BORDER=0> + is velocity; + <IMG SRC="images/State_space_fichiers/d822334addb31f4d4fe1683e609e2742.png" NAME="images91" ALT="\ddot{y}(t)" ALIGN=BOTTOM WIDTH=32 HEIGHT=21 BORDER=0> + is acceleration + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>u</I>(<I>t</I>) + is an applied force + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>k</I><SUB>1</SUB> + is the viscous friction coefficient + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>k</I><SUB>2</SUB> + is the spring constant + </P> + <LI><P><I>m</I> is the mass of the object + </P> + </UL> + <P>The state equation would then become</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/c3b6d7d7cd783c7f6a6dd2ff7478f8a0.png" NAME="images92" ALT="\left[ \begin{matrix} \mathbf{\dot{x_1}}(t) \\ \mathbf{\dot{x_2}}(t) \end{matrix} \right] = \left[ \begin{matrix} 0 & 1 \\ -\frac{k_2}{m} & -\frac{k_1}{m} \end{matrix} \right] \left[ \begin{matrix} \mathbf{x_1}(t) \\ \mathbf{x_2}(t) \end{matrix} \right] + \left[ \begin{matrix} 0 \\ \frac{1}{m} \end{matrix} \right] \mathbf{u}(t)" ALIGN=BOTTOM WIDTH=357 HEIGHT=49 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/7771c47e6e2f82d6138ee2e2ec920c7e.png" NAME="images93" ALT="\mathbf{y}(t) = \left[ \begin{matrix} 1 & 0 \end{matrix} \right] \left[ \begin{matrix} \mathbf{x_1}(t) \\ \mathbf{x_2}(t) \end{matrix} \right]" ALIGN=BOTTOM WIDTH=176 HEIGHT=49 BORDER=0> + </DD></DL> + <P> + where</P> + <UL> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>x</I><SUB>1</SUB>(<I>t</I>) + represents the position of the object + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/93381b17950c251e433b768a2e2ba6b3.png" NAME="images94" ALT="x_2(t) = \dot{x_1}(t)" ALIGN=BOTTOM WIDTH=108 HEIGHT=21 BORDER=0> + is the velocity of the object + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/08b851e43484faf6400aa16c3632cda5.png" NAME="images95" ALT="\dot{x_2}(t) = \ddot{x_1}(t)" ALIGN=BOTTOM WIDTH=108 HEIGHT=21 BORDER=0> + is the acceleration of the object + </P> + <LI><P>the output + <IMG SRC="images/State_space_fichiers/8bd1b0065e60113616b6750730e820f4.png" NAME="images96" ALT="\mathbf{y}(t)" ALIGN=BOTTOM WIDTH=34 HEIGHT=21 BORDER=0> + is the position of the object + </P> + </UL> + <P><FONT COLOR="#000000">The <A HREF="http://en.wikipedia.org/wiki/Controllability">controllability</A> + test is then</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/1b66d8f8c0227384d70806878463f8ce.png" NAME="images97" ALT="\left[ \begin{matrix} B & AB \end{matrix} \right] = \left[ \begin{matrix} \left[ \begin{matrix} 0 \\ \frac{1}{m} \end{matrix} \right] & \left[ \begin{matrix} 0 & 1 \\ -\frac{k_2}{m} & -\frac{k_1}{m} \end{matrix} \right] \left[ \begin{matrix} 0 \\ \frac{1}{m} \end{matrix} \right] \end{matrix} \right] = \left[ \begin{matrix} 0 & \frac{1}{m} \\ \frac{1}{m} & \frac{k_1}{m^2} \end{matrix} \right]" ALIGN=BOTTOM WIDTH=422 HEIGHT=49 BORDER=0> + </DD></DL> + <P> + which has full rank for all <I>k</I><SUB>1</SUB> and <I>m</I>.</P> + <P><FONT COLOR="#000000">The <A HREF="http://en.wikipedia.org/wiki/Observability">observability</A> + test is then</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/05e20d83a2969f3b9e48fef4bacc8d3c.png" NAME="images98" ALT="\left[ \begin{matrix} C \\ CA \end{matrix} \right] = \left[ \begin{matrix} \left[ \begin{matrix} 1 & 0 \end{matrix} \right] \\ \left[ \begin{matrix} 1 & 0 \end{matrix} \right] \left[ \begin{matrix} 0 & 1 \\ -\frac{k_2}{m} & -\frac{k_1}{m} \end{matrix} \right] \end{matrix} \right] = \left[ \begin{matrix} 1 & 0 \\ 0 & 1 \end{matrix} \right]" ALIGN=BOTTOM WIDTH=340 HEIGHT=74 BORDER=0> + </DD></DL> + <P> + which also has full rank. Therefore, this system is both + controllable and observable.</P> + <H2 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Nonlinear + systems</FONT></H2> + <P>The more general form of a state space model can be written as + two functions.</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/0902bfc977a4f7f7c7cc8bc54ac93634.png" NAME="images99" ALT="\mathbf{\dot{x}}(t) = \mathbf{f}(t, x(t), u(t))" ALIGN=BOTTOM WIDTH=174 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/f5d907725ffb26ae9fd08b9615298756.png" NAME="images100" ALT="\mathbf{y}(t) = \mathbf{h}(t, x(t), u(t))" ALIGN=BOTTOM WIDTH=178 HEIGHT=21 BORDER=0> + </DD></DL> + <P> + The first is the state equation and the latter is the output + equation. If the function + <IMG SRC="images/State_space_fichiers/f6980ec56e3e7fcce7a143b507a53126.png" NAME="images101" ALT="f(\cdot,\cdot,\cdot)" ALIGN=BOTTOM WIDTH=59 HEIGHT=21 BORDER=0> + is a linear combination of states and inputs then the equations can + be written in matrix notation like above. The <I>u</I>(<I>t</I>) + argument to the functions can be dropped if the system is unforced + (i.e., it has no inputs).</P> + <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Pendulum + example</FONT></H3> + <P><FONT COLOR="#000000">A classic nonlinear system is a simple + unforced <A HREF="http://en.wikipedia.org/wiki/Pendulum">pendulum</A></FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/7880de515445681f6e12f7c482ddc9ef.png" NAME="images102" ALT="ml\ddot\theta(t)= -mg\sin\theta(t) - kl\dot\theta(t)" ALIGN=BOTTOM WIDTH=258 HEIGHT=25 BORDER=0> + </DD></DL> + <P> + where</P> + <UL> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm">θ(<I>t</I>) + is the angle of the pendulum with respect to the direction of + gravity + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>m</I> + is the mass of the pendulum (pendulum rod's mass is assumed to be + zero) + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>g</I> + is the gravitational acceleration + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>k</I> + is coefficient of friction at the pivot point + </P> + <LI><P><I>l</I> is the radius of the pendulum (to the center of + gravity of the mass <I>m</I>) + </P> + </UL> + <P>The state equations are then</P> + <DL> + <DD STYLE="margin-left: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/0cec7d908b5ca88fb84845636a5aa5b2.png" NAME="images103" ALT="\dot{x_1}(t) = x_2(t)" ALIGN=BOTTOM WIDTH=108 HEIGHT=21 BORDER=0> + </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/66a8c07009561c21dcf5481d01b376f3.png" NAME="images104" ALT="\dot{x_2}(t) = - \frac{g}{l}\sin{x_1}(t) - \frac{k}{m}{x_2}(t)" ALIGN=BOTTOM WIDTH=254 HEIGHT=41 BORDER=0> + </DD></DL> + <P> + where</P> + <UL> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>x</I><SUB>1</SUB>(<I>t</I>): + = θ(<I>t</I>) is the angle of the pendulum + </P> + <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><IMG SRC="images/State_space_fichiers/5cd1da7ba81f4b866e8174ab86e3c5c8.png" NAME="images105" ALT="x_2(t) :=\dot{x_1}(t)" ALIGN=BOTTOM WIDTH=112 HEIGHT=21 BORDER=0> + is the rotational velocity of the pendulum + </P> + <LI><P><IMG SRC="images/State_space_fichiers/7bbc064941778c6e2e4d88bf4152c728.png" NAME="images106" ALT="\dot{x_2} =\ddot{x_1}" ALIGN=BOTTOM WIDTH=63 HEIGHT=17 BORDER=0> + is the rotational acceleration of the pendulum + </P> + </UL> + <P>Instead, the state equation can be written in the general form</P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/e0da7bf257cb650885319ce4b5833bd8.png" NAME="images107" ALT="\dot{x}(t) = \left( \begin{matrix} \dot{x_1}(t) \\ \dot{x_2}(t) \end{matrix} \right) = \mathbf{f}(t, x(t)) = \left( \begin{matrix} x_2(t) \\ - \frac{g}{l}\sin{x_1}(t) - \frac{k}{m}{x_2}(t) \end{matrix} \right)." ALIGN=BOTTOM WIDTH=473 HEIGHT=49 BORDER=0> + </DD></DL> + <P> + <FONT COLOR="#000000">The <A HREF="http://en.wikipedia.org/wiki/Mechanical_equilibrium">equilibrium</A>/<A HREF="http://en.wikipedia.org/wiki/Stationary_point">stationary + points</A> of a system are when + <IMG SRC="images/State_space_fichiers/4009ed416fcf36f8b7ec3dbabe9fa791.png" NAME="images108" ALT="\dot{x} = 0" ALIGN=BOTTOM WIDTH=46 HEIGHT=15 BORDER=0> + and so the equilibrium points of a pendulum are those that satisfy</FONT></P> + <DL> + <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> + <IMG SRC="images/State_space_fichiers/f8f06079d8991d2831f60ec5a190f11b.png" NAME="images109" ALT="\left( \begin{matrix} x_1 \\ x_2 \end{matrix} \right) = \left( \begin{matrix} n\pi \\ 0 \end{matrix} \right)" ALIGN=BOTTOM WIDTH=120 HEIGHT=48 BORDER=0> + </DD></DL> + <P> + for integers <I>n</I>.</P> +</SPAN><BR><BR> +</P> +<P><BR><BR> +</P> +<P><BR><BR> +</P> +</BODY> +</HTML> + </p> + + <br> + <br> + <table class="nav" summary="Navigation aid" border="0" width= + "100%" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td align="left" width="20"><a href="smodel_introduction.html"><img src= + "b_prev.gif" border="0" align="bottom" alt= + "Introduction to parametric models in LTPDA"></a> </td> + + <td align="left">Introduction to parametric models in LTPDA</td> + + <td> </td> + + <td align="right">Introduction to Statespace Models with LTPDA</td> + + <td align="right" width="20"><a href= + "ssm_introduction.html"><img src="b_next.gif" border="0" align= + "bottom" alt="Introduction to Statespace Models with LTPDA"></a></td> + </tr> + </table><br> + + <p class="copy">©LTP Team</p> +</body> +</html>