Mercurial > hg > ltpda
comparison m-toolbox/html_help/help/ug/ssm_content.html @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:f0afece42f48 |
---|---|
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> | |
2 <HTML> | |
3 <HEAD> | |
4 <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252"> | |
5 <TITLE></TITLE> | |
6 <META NAME="GENERATOR" CONTENT="OpenOffice.org 3.1 (Win32)"> | |
7 <META NAME="CREATED" CONTENT="0;0"> | |
8 <META NAME="CHANGEDBY" CONTENT="Adrien G"> | |
9 <META NAME="CHANGED" CONTENT="20090827;17521500"> | |
10 </HEAD> | |
11 <BODY LANG="en-US" DIR="LTR"> | |
12 <P> | |
13 <H2>Why use state space modeling?</H2> | |
14 <P>State space modeling is efficient to simulate systems with large | |
15 dimensionality, be it in terms of inputs, outputs, or pole/zeros. | |
16 Adding nonlinearities to a model is also easier as in the frequency | |
17 domain, however there is no such capability in the toolbox yet. | |
18 Another reason to use them is to build complex parametric models, | |
19 where intricated parameters make impossible the symbolic calculation | |
20 of the transfer function coefficients – as a matter of fact | |
21 the transfer function can be computed out of a determinant involving | |
22 the A matrix, explaining the complexity of the calculation.</P> | |
23 <P>For tasks such as identification, state space modeling is a | |
24 computationally rather heavy, especially if colored noise is | |
25 involved in the process.</P> | |
26 <P>State space models can be converted into a matrix of transfer | |
27 function in the s- or the z-domain. The functions in the toolbox | |
28 that enable this are ss2pzmodel, ss2miir, ss2rational.</P> | |
29 <H2>Generalities on State Space Modeling</H2> | |
30 <P><FONT COLOR="#000000">In order to familiarize with state space | |
31 modeling, this help page is a mere copy of the wiki page.</FONT></P> | |
32 <P><FONT COLOR="#000000">In control engineering, a </FONT><FONT COLOR="#000000"><B>state | |
33 space representation</B></FONT><FONT COLOR="#000000"> is a | |
34 mathematical model of a physical system as a set of input, output | |
35 and state variables related by first-order <A HREF="http://en.wikipedia.org/wiki/Differential_equation">differential | |
36 equations</A>. To abstract from the number of inputs, outputs </FONT>and<FONT COLOR="#000000"> | |
37 states, the variables are expressed as vectors and the differential | |
38 and algebraic equations are written in matrix form (the last one can | |
39 be done when the <A HREF="http://en.wikipedia.org/wiki/Dynamical_system">dynamical | |
40 system</A> is linear and time invariant). The state space | |
41 representation (also known as the "time-domain approach") | |
42 provides a convenient and compact way to model and analyze systems | |
43 with multiple inputs and outputs. With </FONT><FONT COLOR="#000000"><I>p</I></FONT><FONT COLOR="#000000"> | |
44 inputs and </FONT><FONT COLOR="#000000"><I>q</I></FONT><FONT COLOR="#000000"> | |
45 outputs, we would otherwise have to write down <A HREF="http://en.wikipedia.org/wiki/Laplace_transform">Laplace | |
46 transforms</A> to encode all the information about a system. Unlike | |
47 the frequency domain approach, the use of the state space | |
48 representation is not limited to systems with linear components and | |
49 zero initial conditions. "State space" refers to the space | |
50 whose axes are the state variables. The state of the system can be | |
51 represented as a vector within that space.</FONT></P> | |
52 <H2><FONT COLOR="#000000">State variables</FONT></H2> | |
53 <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"> | |
54 </FONT> | |
55 </H2> | |
56 <P>Typical state space model</P> | |
57 <P><FONT COLOR="#000000">The internal <A HREF="http://en.wikipedia.org/wiki/State_variable">state | |
58 variables</A> are the smallest possible subset of system variables | |
59 that can represent the entire state of the system at any given time. | |
60 State variables must be linearly independent; a state variable | |
61 cannot be a linear combination of other state variables. The minimum | |
62 number of state variables required to represent a given system, </FONT><FONT COLOR="#000000"><I>n</I></FONT><FONT COLOR="#000000">, | |
63 is usually equal to the order of the system's defining differential | |
64 equation. If the system is represented in transfer function form, | |
65 the minimum number of state variables is equal to the order of the | |
66 transfer function's denominator after it has been reduced to a | |
67 proper fraction. It is important to understand that converting a | |
68 state space realization to a transfer function form may lose some | |
69 internal information about the system, and may provide a description | |
70 of a system which is stable, when the state-space realization is | |
71 unstable at certain points. In electric circuits, the number of | |
72 state variables is often, though not always, the same as the number | |
73 of energy storage elements in the circuit such as <A HREF="http://en.wikipedia.org/wiki/Capacitor">capacitors</A> | |
74 and <A HREF="http://en.wikipedia.org/wiki/Inductor">inductors</A>.</FONT></P> | |
75 <H2><FONT COLOR="#000000">Linear systems</FONT></H2> | |
76 <P>The most general state-space representation of a linear system | |
77 with <I>p</I> inputs, <I>q</I> outputs and <I>n</I> state variables | |
78 is written in the following form:</P> | |
79 <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> | |
80 </P> | |
81 <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> | |
82 </P> | |
83 <P>where:</P> | |
84 <UL> | |
85 <LI><P><IMG SRC="images/State_space_fichiers/0b46dcfa3789d90891d7d22aa4bf1b83.png" NAME="images6" ALT="x(\cdot)" ALIGN=BOTTOM WIDTH=31 HEIGHT=21 BORDER=0> | |
86 is called the "state vector", | |
87 <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>; | |
88 </P> | |
89 <LI><P><IMG SRC="images/State_space_fichiers/89df6576cd198dc2449bf59e97a61df3.png" NAME="images8" ALT="y(\cdot)" ALIGN=BOTTOM WIDTH=30 HEIGHT=21 BORDER=0> | |
90 is called the "output vector", | |
91 <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>; | |
92 </P> | |
93 <LI><P><IMG SRC="images/State_space_fichiers/918aa6368974b6014859c56e1ef6762c.png" NAME="images10" ALT="u(\cdot)" ALIGN=BOTTOM WIDTH=31 HEIGHT=21 BORDER=0> | |
94 is called the "input (or control) vector", | |
95 <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>; | |
96 </P> | |
97 <LI><P><IMG SRC="images/State_space_fichiers/b53a04dbe423d4e39eaedadf54e3ee31.png" NAME="images12" ALT="A(\cdot)" ALIGN=BOTTOM WIDTH=35 HEIGHT=21 BORDER=0> | |
98 is the "state matrix", | |
99 <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>, | |
100 </P> | |
101 <LI><P><IMG SRC="images/State_space_fichiers/8f528e3252e95ac5edef108971a1d43f.png" NAME="images14" ALT="B(\cdot)" ALIGN=BOTTOM WIDTH=36 HEIGHT=21 BORDER=0> | |
102 is the "input matrix", | |
103 <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>, | |
104 </P> | |
105 <LI><P><IMG SRC="images/State_space_fichiers/d4d99b70fae67ddcd7923dbe5dbb6424.png" NAME="images16" ALT="C(\cdot)" ALIGN=BOTTOM WIDTH=34 HEIGHT=21 BORDER=0> | |
106 is the "output matrix", | |
107 <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>, | |
108 </P> | |
109 <LI><P><IMG SRC="images/State_space_fichiers/9828f5f36ec8af68cc289bbf41a2c751.png" NAME="images18" ALT="D(\cdot)" ALIGN=BOTTOM WIDTH=37 HEIGHT=21 BORDER=0> | |
110 is the "feedthrough (or feedforward) matrix" (in cases | |
111 where the system model does not have a direct feedthrough, | |
112 <IMG SRC="images/State_space_fichiers/9828f5f36ec8af68cc289bbf41a2c751.png" NAME="images19" ALT="D(\cdot)" ALIGN=BOTTOM WIDTH=37 HEIGHT=21 BORDER=0> | |
113 is the zero matrix), | |
114 <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>, | |
115 </P> | |
116 <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>. | |
117 </P> | |
118 </UL> | |
119 <P><FONT COLOR="#000000">In this general formulation, all matrices | |
120 are allowed to be time-variant (i.e., their elements can depend on | |
121 time); however, in the common <A HREF="http://en.wikipedia.org/wiki/LTI_system">LTI</A> | |
122 case, matrices will be time invariant. The time variable </FONT><FONT COLOR="#000000"><I>t</I></FONT><FONT COLOR="#000000"> | |
123 can be a "continuous" (e.g., | |
124 <IMG SRC="images/State_space_fichiers/6080cfaa75ff6363d282e29a14b46632.png" NAME="images22" ALT="t \in \mathbb{R}" ALIGN=BOTTOM WIDTH=45 HEIGHT=15 BORDER=0>) | |
125 or discrete (e.g., | |
126 <IMG SRC="images/State_space_fichiers/d3bd3b5e80beacc6f4a28dacabf2c0c5.png" NAME="images23" ALT="t \in \mathbb{Z}" ALIGN=BOTTOM WIDTH=45 HEIGHT=15 BORDER=0>). | |
127 In the latter case, the time variable is usually indicated as </FONT><FONT COLOR="#000000"><I>k</I></FONT><FONT COLOR="#000000">. | |
128 <A HREF="http://en.wikipedia.org/wiki/Hybrid_system">Hybrid systems</A> | |
129 allow for time domains that have both continuous and discrete parts. | |
130 Depending on the assumptions taken, the state-space model | |
131 representation can assume the following forms:</FONT></P> | |
132 <TABLE DIR="LTR" CELLPADDING=4 CELLSPACING=2> | |
133 <TR VALIGN=TOP> | |
134 <TD> | |
135 <P><B>System type</B></P> | |
136 </TD> | |
137 <TD> | |
138 <P><B>State-space model</B></P> | |
139 </TD> | |
140 </TR> | |
141 <TR VALIGN=TOP> | |
142 <TD> | |
143 <P>Continuous time-invariant</P> | |
144 </TD> | |
145 <TD> | |
146 <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> | |
147 </TD> | |
148 </TR> | |
149 <TR VALIGN=TOP> | |
150 <TD> | |
151 <P>Continuous time-variant</P> | |
152 </TD> | |
153 <TD> | |
154 <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> | |
155 </TD> | |
156 </TR> | |
157 <TR VALIGN=TOP> | |
158 <TD> | |
159 <P>Discrete time-invariant</P> | |
160 </TD> | |
161 <TD> | |
162 <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> | |
163 </TD> | |
164 </TR> | |
165 <TR VALIGN=TOP> | |
166 <TD> | |
167 <P>Discrete time-variant</P> | |
168 </TD> | |
169 <TD> | |
170 <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> | |
171 </TD> | |
172 </TR> | |
173 <TR VALIGN=TOP> | |
174 <TD> | |
175 <P>Laplace domain of<BR>continuous time-invariant</P> | |
176 </TD> | |
177 <TD> | |
178 <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> | |
179 </TD> | |
180 </TR> | |
181 <TR VALIGN=TOP> | |
182 <TD> | |
183 <P>Z-domain of<BR>discrete time-invariant</P> | |
184 </TD> | |
185 <TD> | |
186 <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> | |
187 </TD> | |
188 </TR> | |
189 </TABLE> | |
190 <P><FONT COLOR="#000000">Example: Continuous-time LTI case</FONT> | |
191 </P> | |
192 <P><FONT COLOR="#000000">Stability and natural response | |
193 characteristics of a continuous-time <A HREF="http://en.wikipedia.org/wiki/LTI_system">LTI | |
194 system</A> (i.e., linear with matrices that are constant with | |
195 respect to time) can be studied from the <A HREF="http://en.wikipedia.org/wiki/Eigenvalue">eigenvalues</A> | |
196 of the matrix </FONT><FONT COLOR="#000000"><B>A</B></FONT><FONT COLOR="#000000">. | |
197 The stability of a time-invariant state-space model can be | |
198 determined by looking at the system's <A HREF="http://en.wikipedia.org/wiki/Transfer_function">transfer | |
199 function</A> in factored form. It will then look something like | |
200 this:</FONT></P> | |
201 <DL> | |
202 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
203 <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> | |
204 </DD></DL> | |
205 <P> | |
206 <FONT COLOR="#000000">The denominator of the transfer function is | |
207 equal to the <A HREF="http://en.wikipedia.org/wiki/Characteristic_polynomial">characteristic | |
208 polynomial</A> found by taking the <A HREF="http://en.wikipedia.org/wiki/Determinant">determinant</A> | |
209 of </FONT><FONT COLOR="#000000"><I>sI</I></FONT><FONT COLOR="#000000"> | |
210 − </FONT><FONT COLOR="#000000"><I>A</I></FONT><FONT COLOR="#000000">,</FONT></P> | |
211 <DL> | |
212 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
213 <IMG SRC="images/State_space_fichiers/05e74baab950e092f7ef8acbf4654c84.png" NAME="images37" ALT="\mathbf{\lambda}(s) = |sI - A|" ALIGN=BOTTOM WIDTH=129 HEIGHT=21 BORDER=0>. | |
214 </DD></DL> | |
215 <P> | |
216 <FONT COLOR="#000000">The roots of this polynomial (the <A HREF="http://en.wikipedia.org/wiki/Eigenvalue">eigenvalues</A>) | |
217 are the system transfer function's <A HREF="http://en.wikipedia.org/wiki/Complex_pole">poles</A> | |
218 (i.e., the <A HREF="http://en.wikipedia.org/wiki/Singularity">singularities</A> | |
219 where the transfer function's magnitude is unbounded). These poles | |
220 can be used to analyze whether the system is <A HREF="http://en.wikipedia.org/wiki/Exponential_stability">asymptotically | |
221 stable</A> or <A HREF="http://en.wikipedia.org/wiki/Marginal_stability">marginally | |
222 stable</A>. An alternative approach to determining stability, which | |
223 does not involve calculating eigenvalues, is to analyze the system's | |
224 <A HREF="http://en.wikipedia.org/wiki/Lyapunov_stability">Lyapunov | |
225 stability</A>.</FONT></P> | |
226 <P><FONT COLOR="#000000">The zeros found in the numerator of | |
227 <IMG SRC="images/State_space_fichiers/e75eebaaa95472ea1407f43448f37ab8.png" NAME="images38" ALT="\textbf{G}(s)" ALIGN=BOTTOM WIDTH=39 HEIGHT=21 BORDER=0> | |
228 can similarly be used to determine whether the system is <A HREF="http://en.wikipedia.org/wiki/Minimum_phase">minimum | |
229 phase</A>.</FONT></P> | |
230 <P><FONT COLOR="#000000">The system may still be </FONT><FONT COLOR="#000000"><B>input–output | |
231 stable</B></FONT><FONT COLOR="#000000"> (see <A HREF="http://en.wikipedia.org/wiki/BIBO_stability">BIBO | |
232 stable</A>) even though it is not internally stable. This may be the | |
233 case if unstable poles are canceled out by zeros (i.e., if those | |
234 singularities in the transfer function are <A HREF="http://en.wikipedia.org/wiki/Removable_singularity">removable</A>).</FONT></P> | |
235 <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Controllability</FONT></H3> | |
236 <P><FONT COLOR="#000000">Main article: <A HREF="http://en.wikipedia.org/wiki/Controllability">Controllability</A></FONT></P> | |
237 <P><FONT COLOR="#000000">Thus, state controllability condition | |
238 implies that it is possible – by admissible inputs – | |
239 to steer the states from any initial value to any final value within | |
240 some finite time window. A continuous time-invariant linear | |
241 state-space model is </FONT><FONT COLOR="#000000"><B>controllable</B></FONT><FONT COLOR="#000000"> | |
242 <A HREF="http://en.wikipedia.org/wiki/Iff">if and only if</A></FONT></P> | |
243 <DL> | |
244 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
245 <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> | |
246 </DD></DL> | |
247 <H3 STYLE="border: none; padding: 0cm"> | |
248 <FONT COLOR="#000000">Observability</FONT></H3> | |
249 <P><FONT COLOR="#000000">Main article: <A HREF="http://en.wikipedia.org/wiki/Observability">Observability</A></FONT></P> | |
250 <P>Observability is a measure for how well internal states of a | |
251 system can be inferred by knowledge of its external outputs. The | |
252 observability and controllability of a system are mathematical duals | |
253 (i.e., as controllablity provides that an input is available that | |
254 brings any initial state to any desired final state, observability | |
255 provides that knowing an output trajectory provides enough | |
256 information to predict the initial state of the system).</P> | |
257 <P>A continuous time-invariant linear state-space model is | |
258 <B>observable</B> if and only if</P> | |
259 <DL> | |
260 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
261 <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> | |
262 </DD></DL> | |
263 <P> | |
264 <FONT COLOR="#000000">(<A HREF="http://en.wikipedia.org/wiki/Rank_%28linear_algebra%29">Rank</A> | |
265 is the number of linearly independent rows in a matrix.)</FONT></P> | |
266 <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Transfer | |
267 function</FONT></H3> | |
268 <P><FONT COLOR="#000000">The "<A HREF="http://en.wikipedia.org/wiki/Transfer_function">transfer | |
269 function</A>" of a continuous time-invariant linear state-space | |
270 model can be derived in the following way:</FONT></P> | |
271 <P><FONT COLOR="#000000">First, taking the <A HREF="http://en.wikipedia.org/wiki/Laplace_transform">Laplace | |
272 transform</A> of</FONT></P> | |
273 <DL> | |
274 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
275 <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> | |
276 </DD></DL> | |
277 <P> | |
278 yields</P> | |
279 <DL> | |
280 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
281 <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> | |
282 </DD></DL> | |
283 <P> | |
284 Next, we simplify for | |
285 <IMG SRC="images/State_space_fichiers/0762e07773e4f1f30137d7915c154851.png" NAME="images43" ALT="\mathbf{X}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0>, | |
286 giving</P> | |
287 <DL> | |
288 <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> | |
289 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
290 <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> | |
291 </DD></DL> | |
292 <P> | |
293 this is substituted for | |
294 <IMG SRC="images/State_space_fichiers/0762e07773e4f1f30137d7915c154851.png" NAME="images46" ALT="\mathbf{X}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0> | |
295 in the output equation</P> | |
296 <DL> | |
297 <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>, | |
298 giving | |
299 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
300 <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> | |
301 </DD></DL> | |
302 <P> | |
303 <FONT COLOR="#000000">Because the <A HREF="http://en.wikipedia.org/wiki/Transfer_function">transfer | |
304 function</A> | |
305 <IMG SRC="images/State_space_fichiers/046cdad9e9789e63b5196b2be94110e7.png" NAME="images49" ALT="\mathbf{G}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0> | |
306 is defined as the ratio of the output to the input of a system, we | |
307 take</FONT></P> | |
308 <DL> | |
309 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
310 <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> | |
311 </DD></DL> | |
312 <P> | |
313 and substitute the previous expression for | |
314 <IMG SRC="images/State_space_fichiers/336fec49a4b9e27e1bc99139f4023267.png" NAME="images51" ALT="\mathbf{Y}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0> | |
315 with respect to | |
316 <IMG SRC="images/State_space_fichiers/3f0af3cafb3dcd9039883b8047986fc2.png" NAME="images52" ALT="\mathbf{U}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0>, | |
317 giving</P> | |
318 <DL> | |
319 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
320 <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> | |
321 </DD></DL> | |
322 <P> | |
323 Clearly | |
324 <IMG SRC="images/State_space_fichiers/046cdad9e9789e63b5196b2be94110e7.png" NAME="images54" ALT="\mathbf{G}(s)" ALIGN=BOTTOM WIDTH=40 HEIGHT=21 BORDER=0> | |
325 must have <I>q</I> by <I>p</I> dimensionality, and thus has a total | |
326 of <I>qp</I> elements. So for every input there are <I>q</I> | |
327 transfer functions with one for each output. This is why the | |
328 state-space representation can easily be the preferred choice for | |
329 multiple-input, multiple-output (MIMO) systems.</P> | |
330 <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Canonical | |
331 realizations</FONT></H3> | |
332 <P><FONT COLOR="#000000">Any given transfer function which is | |
333 <A HREF="http://en.wikipedia.org/wiki/Strictly_proper">strictly | |
334 proper</A> can easily be transferred into state-space by the | |
335 following approach (this example is for a 4-dimensional, | |
336 single-input, single-output system)):</FONT></P> | |
337 <P>Given a transfer function, expand it to reveal all coefficients | |
338 in both the numerator and denominator. This should result in the | |
339 following form:</P> | |
340 <DL> | |
341 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
342 <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>. | |
343 </DD></DL> | |
344 <P> | |
345 The coefficients can now be inserted directly into the state-space | |
346 model by the following approach:</P> | |
347 <DL> | |
348 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
349 <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> | |
350 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
351 <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>. | |
352 </DD></DL> | |
353 <P> | |
354 This state-space realization is called <B>controllable canonical | |
355 form</B> because the resulting model is guaranteed to be | |
356 controllable (i.e., because the control enters a chain of | |
357 integrators, it has the ability to move every state).</P> | |
358 <P>The transfer function coefficients can also be used to construct | |
359 another type of canonical form</P> | |
360 <DL> | |
361 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
362 <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> | |
363 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
364 <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>. | |
365 </DD></DL> | |
366 <P> | |
367 This state-space realization is called <B>observable canonical form</B> | |
368 because the resulting model is guaranteed to be observable (i.e., | |
369 because the output exits from a chain of integrators, every state | |
370 has an effect on the output).</P> | |
371 <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Proper | |
372 transfer functions</FONT></H3> | |
373 <P><FONT COLOR="#000000">Transfer functions which are only <A HREF="http://en.wikipedia.org/wiki/Proper_transfer_function">proper</A> | |
374 (and not <A HREF="http://en.wikipedia.org/wiki/Strictly_proper">strictly | |
375 proper</A>) can also be realised quite easily. The trick here is to | |
376 separate the transfer function into two parts: a strictly proper | |
377 part and a constant.</FONT></P> | |
378 <DL> | |
379 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
380 <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> | |
381 </DD></DL> | |
382 <P> | |
383 The strictly proper transfer function can then be transformed into a | |
384 canonical state space realization using techniques shown above. The | |
385 state space realization of the constant is trivially | |
386 <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>. | |
387 Together we then get a state space realization with matrices <I>A</I>,<I>B</I> | |
388 and <I>C</I> determined by the strictly proper part, and matrix <I>D</I> | |
389 determined by the constant.</P> | |
390 <P><BR>Here is an example to clear things up a bit:</P> | |
391 <DL> | |
392 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
393 <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> | |
394 </DD></DL> | |
395 <P> | |
396 which yields the following controllable realization</P> | |
397 <DL> | |
398 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
399 <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> | |
400 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
401 <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> | |
402 </DD></DL> | |
403 <P> | |
404 Notice how the output also depends directly on the input. This is | |
405 due to the | |
406 <IMG SRC="images/State_space_fichiers/b00b33e9ecc56576da0c0710f7fd548e.png" NAME="images65" ALT="\textbf{G}(\infty)" ALIGN=BOTTOM WIDTH=51 HEIGHT=20 BORDER=0> | |
407 constant in the transfer function.</P> | |
408 <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Feedback</FONT></H3> | |
409 <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> | |
410 </P> | |
411 <P>Typical state space model with feedback</P> | |
412 <P><FONT COLOR="#000000">A common method for feedback is to multiply | |
413 the output by a matrix </FONT><FONT COLOR="#000000"><I>K</I></FONT><FONT COLOR="#000000"> | |
414 and setting this as the input to the system: | |
415 <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>. | |
416 Since the values of </FONT><FONT COLOR="#000000"><I>K</I></FONT><FONT COLOR="#000000"> | |
417 are unrestricted the values can easily be negated for <A HREF="http://en.wikipedia.org/wiki/Negative_feedback">negative | |
418 feedback</A>. The presence of a negative sign (the common notation) | |
419 is merely a notational one and its absence has no impact on the end | |
420 results.</FONT></P> | |
421 <DL> | |
422 <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> | |
423 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
424 <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> | |
425 </DD></DL> | |
426 <P> | |
427 becomes</P> | |
428 <DL> | |
429 <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> | |
430 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
431 <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> | |
432 </DD></DL> | |
433 <P> | |
434 solving the output equation for | |
435 <IMG SRC="images/State_space_fichiers/8bd1b0065e60113616b6750730e820f4.png" NAME="images72" ALT="\mathbf{y}(t)" ALIGN=BOTTOM WIDTH=34 HEIGHT=21 BORDER=0> | |
436 and substituting in the state equation results in</P> | |
437 <DL> | |
438 <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> | |
439 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
440 <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> | |
441 </DD></DL> | |
442 <P> | |
443 <FONT COLOR="#000000">The advantage of this is that the <A HREF="http://en.wikipedia.org/wiki/Eigenvalues">eigenvalues</A> | |
444 of </FONT><FONT COLOR="#000000"><I>A</I></FONT><FONT COLOR="#000000"> | |
445 can be controlled by setting </FONT><FONT COLOR="#000000"><I>K</I></FONT><FONT COLOR="#000000"> | |
446 appropriately through eigendecomposition of | |
447 <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>. | |
448 This assumes that the open-loop system is <A HREF="http://en.wikipedia.org/wiki/Controllability">controllable</A> | |
449 or that the unstable eigenvalues of </FONT><FONT COLOR="#000000"><I>A</I></FONT><FONT COLOR="#000000"> | |
450 can be made stable through appropriate choice of </FONT><FONT COLOR="#000000"><I>K</I></FONT><FONT COLOR="#000000">.</FONT></P> | |
451 <P>One fairly common simplification to this system is removing <I>D</I> | |
452 and setting <I>C</I> to identity, which reduces the equations to</P> | |
453 <DL> | |
454 <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> | |
455 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
456 <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> | |
457 </DD></DL> | |
458 <P> | |
459 This reduces the necessary eigendecomposition to just <I>A</I> + <I>BK</I>.</P> | |
460 <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Feedback | |
461 with setpoint (reference) input</FONT></H3> | |
462 <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> | |
463 </P> | |
464 <P>Output feedback with set point</P> | |
465 <P>In addition to feedback, an input, <I>r</I>(<I>t</I>), can be | |
466 added such that | |
467 <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> | |
468 <DL> | |
469 <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> | |
470 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
471 <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> | |
472 </DD></DL> | |
473 <P> | |
474 becomes</P> | |
475 <DL> | |
476 <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> | |
477 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
478 <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> | |
479 </DD></DL> | |
480 <P> | |
481 solving the output equation for | |
482 <IMG SRC="images/State_space_fichiers/8bd1b0065e60113616b6750730e820f4.png" NAME="images84" ALT="\mathbf{y}(t)" ALIGN=BOTTOM WIDTH=34 HEIGHT=21 BORDER=0> | |
483 and substituting in the state equation results in</P> | |
484 <DL> | |
485 <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> | |
486 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
487 <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> | |
488 </DD></DL> | |
489 <P> | |
490 One fairly common simplification to this system is removing <I>D</I>, | |
491 which reduces the equations to</P> | |
492 <DL> | |
493 <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> | |
494 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
495 <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> | |
496 </DD></DL> | |
497 <H3 STYLE="border: none; padding: 0cm"> | |
498 <FONT COLOR="#000000">Moving object example</FONT></H3> | |
499 <P><FONT COLOR="#000000">A classical linear system is that of | |
500 one-dimensional movement of an object. The <A HREF="http://en.wikipedia.org/wiki/Newton%27s_laws_of_motion">Newton's | |
501 laws of motion</A> for an object moving horizontally on a plane and | |
502 attached to a wall with a spring</FONT></P> | |
503 <DL> | |
504 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
505 <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> | |
506 </DD></DL> | |
507 <P> | |
508 where</P> | |
509 <UL> | |
510 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>y</I>(<I>t</I>) | |
511 is position; | |
512 <IMG SRC="images/State_space_fichiers/4721de091b5d15bb9809fa41a5e40db7.png" NAME="images90" ALT="\dot y(t)" ALIGN=BOTTOM WIDTH=32 HEIGHT=21 BORDER=0> | |
513 is velocity; | |
514 <IMG SRC="images/State_space_fichiers/d822334addb31f4d4fe1683e609e2742.png" NAME="images91" ALT="\ddot{y}(t)" ALIGN=BOTTOM WIDTH=32 HEIGHT=21 BORDER=0> | |
515 is acceleration | |
516 </P> | |
517 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>u</I>(<I>t</I>) | |
518 is an applied force | |
519 </P> | |
520 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>k</I><SUB>1</SUB> | |
521 is the viscous friction coefficient | |
522 </P> | |
523 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>k</I><SUB>2</SUB> | |
524 is the spring constant | |
525 </P> | |
526 <LI><P><I>m</I> is the mass of the object | |
527 </P> | |
528 </UL> | |
529 <P>The state equation would then become</P> | |
530 <DL> | |
531 <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> | |
532 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
533 <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> | |
534 </DD></DL> | |
535 <P> | |
536 where</P> | |
537 <UL> | |
538 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>x</I><SUB>1</SUB>(<I>t</I>) | |
539 represents the position of the object | |
540 </P> | |
541 <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> | |
542 is the velocity of the object | |
543 </P> | |
544 <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> | |
545 is the acceleration of the object | |
546 </P> | |
547 <LI><P>the output | |
548 <IMG SRC="images/State_space_fichiers/8bd1b0065e60113616b6750730e820f4.png" NAME="images96" ALT="\mathbf{y}(t)" ALIGN=BOTTOM WIDTH=34 HEIGHT=21 BORDER=0> | |
549 is the position of the object | |
550 </P> | |
551 </UL> | |
552 <P><FONT COLOR="#000000">The <A HREF="http://en.wikipedia.org/wiki/Controllability">controllability</A> | |
553 test is then</FONT></P> | |
554 <DL> | |
555 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
556 <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> | |
557 </DD></DL> | |
558 <P> | |
559 which has full rank for all <I>k</I><SUB>1</SUB> and <I>m</I>.</P> | |
560 <P><FONT COLOR="#000000">The <A HREF="http://en.wikipedia.org/wiki/Observability">observability</A> | |
561 test is then</FONT></P> | |
562 <DL> | |
563 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
564 <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> | |
565 </DD></DL> | |
566 <P> | |
567 which also has full rank. Therefore, this system is both | |
568 controllable and observable.</P> | |
569 <H2 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Nonlinear | |
570 systems</FONT></H2> | |
571 <P>The more general form of a state space model can be written as | |
572 two functions.</P> | |
573 <DL> | |
574 <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> | |
575 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
576 <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> | |
577 </DD></DL> | |
578 <P> | |
579 The first is the state equation and the latter is the output | |
580 equation. If the function | |
581 <IMG SRC="images/State_space_fichiers/f6980ec56e3e7fcce7a143b507a53126.png" NAME="images101" ALT="f(\cdot,\cdot,\cdot)" ALIGN=BOTTOM WIDTH=59 HEIGHT=21 BORDER=0> | |
582 is a linear combination of states and inputs then the equations can | |
583 be written in matrix notation like above. The <I>u</I>(<I>t</I>) | |
584 argument to the functions can be dropped if the system is unforced | |
585 (i.e., it has no inputs).</P> | |
586 <H3 STYLE="border: none; padding: 0cm"><FONT COLOR="#000000">Pendulum | |
587 example</FONT></H3> | |
588 <P><FONT COLOR="#000000">A classic nonlinear system is a simple | |
589 unforced <A HREF="http://en.wikipedia.org/wiki/Pendulum">pendulum</A></FONT></P> | |
590 <DL> | |
591 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
592 <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> | |
593 </DD></DL> | |
594 <P> | |
595 where</P> | |
596 <UL> | |
597 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm">θ(<I>t</I>) | |
598 is the angle of the pendulum with respect to the direction of | |
599 gravity | |
600 </P> | |
601 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>m</I> | |
602 is the mass of the pendulum (pendulum rod's mass is assumed to be | |
603 zero) | |
604 </P> | |
605 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>g</I> | |
606 is the gravitational acceleration | |
607 </P> | |
608 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>k</I> | |
609 is coefficient of friction at the pivot point | |
610 </P> | |
611 <LI><P><I>l</I> is the radius of the pendulum (to the center of | |
612 gravity of the mass <I>m</I>) | |
613 </P> | |
614 </UL> | |
615 <P>The state equations are then</P> | |
616 <DL> | |
617 <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> | |
618 </DD><DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
619 <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> | |
620 </DD></DL> | |
621 <P> | |
622 where</P> | |
623 <UL> | |
624 <LI><P STYLE="margin-bottom: 0cm; border: none; padding: 0cm"><I>x</I><SUB>1</SUB>(<I>t</I>): | |
625 = θ(<I>t</I>) is the angle of the pendulum | |
626 </P> | |
627 <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> | |
628 is the rotational velocity of the pendulum | |
629 </P> | |
630 <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> | |
631 is the rotational acceleration of the pendulum | |
632 </P> | |
633 </UL> | |
634 <P>Instead, the state equation can be written in the general form</P> | |
635 <DL> | |
636 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
637 <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> | |
638 </DD></DL> | |
639 <P> | |
640 <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 | |
641 points</A> of a system are when | |
642 <IMG SRC="images/State_space_fichiers/4009ed416fcf36f8b7ec3dbabe9fa791.png" NAME="images108" ALT="\dot{x} = 0" ALIGN=BOTTOM WIDTH=46 HEIGHT=15 BORDER=0> | |
643 and so the equilibrium points of a pendulum are those that satisfy</FONT></P> | |
644 <DL> | |
645 <DD STYLE="margin-left: 0cm; margin-bottom: 0.5cm; border: none; padding: 0cm"> | |
646 <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> | |
647 </DD></DL> | |
648 <P> | |
649 for integers <I>n</I>.</P> | |
650 </SPAN><BR><BR> | |
651 </P> | |
652 <P><BR><BR> | |
653 </P> | |
654 <P><BR><BR> | |
655 </P> | |
656 </BODY> | |
657 </HTML> |