Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
State observer
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== Switched observers === As discussed for the linear case above, the peaking phenomenon present in Luenberger observers justifies the use of switched observers. A switched observer encompasses a relay or binary switch that acts upon detecting minute changes in the measured output. Some common types of switched observers include the sliding mode observer, nonlinear extended state observer,<ref>{{cite journal |last1=Guo |first1=Bao-Zhu |last2=Zhao |first2=Zhi-Liang |title=Extended State Observer for Nonlinear Systems with Uncertainty |journal=IFAC Proceedings Volumes |date=January 2011 |volume=44 |issue=1 |pages=1855β1860 |doi=10.3182/20110828-6-IT-1002.00399 |url=https://www.sciencedirect.com/science/article/pii/S1474667016438802 |access-date=8 August 2023 |publisher=[[International Federation of Automatic Control]] |language=en}}</ref> fixed time observer,<ref>{{Cite web |access-date=8 August 2023 |title=The Wayback Machine has not archived that URL. |url=https://www.sciencedirect.com/science/article/pii/S240589632}}{{Dead Link |date=August 2023}}</ref> switched high gain observer<ref>{{cite journal |volume=54 |issue=7 |url-access=limited |last1=Kumar |first1=Sunil |last2=Kumar Pal |first2=Anil |last3=Kamal |first3=Shyam |last4=Xiong |first4=Xiaogang |title=Design of switched high-gain observer for nonlinear systems |url=https://www.tandfonline.com/doi/abs/10.1080/00207721.2023.2178863 |journal=International Journal of Systems Science |publisher=[[Science Publishing Group]] |access-date=8 August 2023 |pages=1471β1483 |language=en |doi=10.1080/00207721.2023.2178863 |date=19 May 2023|bibcode=2023IJSS...54.1471K |s2cid=257145897 }}</ref> and uniting observer.<ref>{{Cite web |title=Registration |url-access=registration |url=https://ieeexplore.ieee.org/Xplore/login.jsp?url=%2Fdocum&authDecision=-203 |website=[[IEEE Xplore]] |language=en |access-date=8 August 2023}}</ref> The [[Sliding mode control#Sliding mode observer|sliding mode observer]] uses non-linear high-gain feedback to drive estimated states to a [[hypersurface]] where there is no difference between the estimated output and the measured output. The non-linear gain used in the observer is typically implemented with a scaled switching function, like the [[Sign function|signum]] (i.e., sgn) of the estimated β measured output error. Hence, due to this high-gain feedback, the vector field of the observer has a crease in it so that observer trajectories ''slide along'' a curve where the estimated output matches the measured output exactly. So, if the system is [[observable]] from its output, the observer states will all be driven to the actual system states. Additionally, by using the sign of the error to drive the sliding mode observer, the observer trajectories become insensitive to many forms of noise. Hence, some sliding mode observers have attractive properties similar to the [[Kalman filter]] but with simpler implementation.<ref name="UtkinGS99" /><ref name="Drakunov83" /> As suggested by Drakunov,<ref name="Drakunov92">{{cite book|last=Drakunov|first=S.V.|title=[1992] Proceedings of the 31st IEEE Conference on Decision and Control |chapter=Sliding-mode observers based on equivalent control method |year=1992|issue=Tucson, Arizona, December 16β18|pages=[https://archive.org/details/proceedingsofthe0003unse/page/2368 2368β2370]|isbn=978-0-7803-0872-5|doi=10.1109/CDC.1992.371368|s2cid=120072463|url=https://works.bepress.com/cgi/viewcontent.cgi?article=1003&context=sergey_v_drakunov |chapter-url=https://archive.org/details/proceedingsofthe0003unse/page/2368}}</ref> a [[Sliding mode control#Sliding mode observer|sliding mode observer]] can also be designed for a class of non-linear systems. Such an observer can be written in terms of original variable estimate <math>\hat{x}</math> and has the form : <math> \dot{\hat{x}} = \left [ \frac{\partial H(\hat{x})}{\partial x}\right]^{-1} M(\hat{x}) \sgn( V(t) - H(\hat{x}) )</math> where: * The <math>\sgn(\mathord{\cdot})</math> vector extends the scalar [[sign function|signum function]] to <math>n</math> dimensions. That is, *:: <math>\sgn(z) = \begin{bmatrix} \sgn(z_1)\\ \sgn(z_2)\\ \vdots\\ \sgn(z_i)\\ \vdots\\ \sgn(z_n) \end{bmatrix}</math> *: for the vector <math>z \in \mathbb{R}^n</math>. * The vector <math>H(x)</math> has components that are the output function <math>h(x)</math> and its repeated Lie derivatives. In particular, *:: <math>H(x) \triangleq \begin{bmatrix} h_1(x)\\ h_2(x)\\ h_3(x)\\ \vdots\\ h_n(x) \end{bmatrix} \triangleq \begin{bmatrix} h(x)\\ L_{f}h(x)\\ L_{f}^2 h(x)\\ \vdots\\ L_{f}^{n-1}h(x) \end{bmatrix}</math> *: where <math>L^i_f h</math> is the ''i''<sup>th</sup> [[Lie derivative]] of output function <math>h</math> along the vector field <math>f</math> (i.e., along <math>x</math> trajectories of the non-linear system). In the special case where the system has no input or has a [[feedback linearization|relative degree]] of ''n'', <math>H(x(t))</math> is a collection of the output <math>y(t)=h(x(t))</math> and its <math>n-1</math> derivatives. Because the inverse of the [[linearization|Jacobian linearization]] of <math>H(x)</math> must exist for this observer to be well defined, the transformation <math>H(x)</math> is guaranteed to be a local [[diffeomorphism]]. * The [[diagonal matrix]] <math>M(\hat{x})</math> of gains is such that *:: <math>M(\hat{x}) \triangleq \operatorname{diag}( m_1(\hat{x}), m_2(\hat{x}), \ldots, m_n(\hat{x}) ) = \begin{bmatrix} m_1(\hat{x}) & & & & & \\ & m_2(\hat{x}) & & & & \\ & & \ddots & & & \\ & & & m_i(\hat{x}) & &\\ & & & & \ddots &\\ & & & & & m_n(\hat{x}) \end{bmatrix}</math> *: where, for each <math>i \in \{1,2,\dots,n\}</math>, element <math>m_i(\hat{x}) > 0</math> and suitably large to ensure reachability of the sliding mode. * The observer vector <math>V(t)</math> is such that *:: <math>V(t) \triangleq \begin{bmatrix}v_{1}(t)\\ v_2(t)\\ v_3(t)\\ \vdots\\ v_i(t)\\ \vdots\\ v_{n}(t) \end{bmatrix} \triangleq \begin{bmatrix} y(t)\\ \{ m_1(\hat{x}) \sgn( v_1(t) - h_1(\hat{x}(t)) ) \}_{\text{eq}}\\ \{ m_2(\hat{x}) \sgn( v_2(t) - h_2(\hat{x}(t)) ) \}_{\text{eq}}\\ \vdots\\ \{ m_{i-1}(\hat{x}) \sgn( v_{i-1}(t) - h_{i-1}(\hat{x}(t)) ) \}_{\text{eq}}\\ \vdots\\ \{ m_{n-1}(\hat{x}) \sgn( v_{n-1}(t) - h_{n-1}(\hat{x}(t)) ) \}_{\text{eq}} \end{bmatrix} </math> *: where <math>\sgn(\mathord{\cdot})</math> here is the normal [[signum function]] defined for scalars, and <math>\{ \ldots \}_{\text{eq}}</math> denotes an "equivalent value operator" of a discontinuous function in sliding mode. The idea can be briefly explained as follows. According to the theory of sliding modes, in order to describe the system behavior, once sliding mode starts, the function <math>\sgn( v_{i}(t)\!-\! h_{i}(\hat{x}(t)) )</math> should be replaced by equivalent values (see ''equivalent control'' in the theory of [[sliding mode control|sliding mode]]s). In practice, it switches (chatters) with high frequency with slow component being equal to the equivalent value. Applying appropriate lowpass filter to get rid of the high frequency component on can obtain the value of the equivalent control, which contains more information about the state of the estimated system. The observer described above uses this method several times to obtain the state of the nonlinear system ideally in finite time. The modified observation error can be written in the transformed states <math>e=H(x)-H(\hat{x})</math>. In particular, : <math>\begin{align} \dot{e} &= \frac{\mathrm{d}}{\mathrm{d}t} H(x) - \frac{\mathrm{d}}{\mathrm{d}t} H(\hat{x})\\ &= \frac{\mathrm{d}}{\mathrm{d}t} H(x) - M(\hat{x}) \, \sgn( V(t) - H(\hat{x}(t)) ), \end{align}</math> and so : <math> \begin{align} \begin{bmatrix} \dot{e}_1\\ \dot{e}_2\\ \vdots\\ \dot{e}_i\\ \vdots\\ \dot{e}_{n-1}\\ \dot{e}_n \end{bmatrix} &= \mathord{\overbrace{ \begin{bmatrix} \dot{h}_1(x)\\ \dot{h}_2(x)\\ \vdots\\ \dot{h}_i(x)\\ \vdots\\ \dot{h}_{n-1}(x)\\ \dot{h}_n(x) \end{bmatrix} }^{\tfrac{\mathrm{d}}{\mathrm{d}t} H(x)}} - \mathord{\overbrace{ M(\hat{x}) \, \sgn( V(t) - H(\hat{x}(t)) ) }^{\tfrac{\mathrm{d}}{\mathrm{d}t} H(\hat{x})}} = \begin{bmatrix} h_2(x)\\ h_3(x)\\ \vdots\\ h_{i+1}(x)\\ \vdots\\ h_n(x)\\ L_f^n h(x) \end{bmatrix} - \begin{bmatrix} m_1 \sgn( v_1(t) - h_1(\hat{x}(t)) )\\ m_2 \sgn( v_2(t) - h_2(\hat{x}(t)) )\\ \vdots\\ m_i \sgn( v_i(t) - h_i(\hat{x}(t)) )\\ \vdots\\ m_{n-1} \sgn( v_{n-1}(t) - h_{n-1}(\hat{x}(t)) )\\ m_n \sgn( v_n(t) - h_n(\hat{x}(t)) ) \end{bmatrix}\\ &= \begin{bmatrix} h_2(x) - m_1(\hat{x}) \sgn( \mathord{\overbrace{ \mathord{\overbrace{v_1(t)}^{v_1(t) = y(t) = h_1(x)}} - h_1(\hat{x}(t)) }^{e_1}} )\\ h_3(x) - m_2(\hat{x}) \sgn( v_2(t) - h_2(\hat{x}(t)) )\\ \vdots\\ h_{i+1}(x) - m_i(\hat{x}) \sgn( v_i(t) - h_i(\hat{x}(t)) )\\ \vdots\\ h_n(x) - m_{n-1}(\hat{x}) \sgn( v_{n-1}(t) - h_{n-1}(\hat{x}(t)) )\\ L_f^n h(x) - m_n(\hat{x}) \sgn( v_n(t) - h_n(\hat{x}(t)) ) \end{bmatrix}. \end{align} </math> So: # As long as <math>m_1(\hat{x}) \geq |h_2(x(t))|</math>, the first row of the error dynamics, <math>\dot{e}_1 = h_2(\hat{x}) - m_1(\hat{x}) \sgn( e_1 )</math>, will meet sufficient conditions to enter the <math>e_1 = 0</math> sliding mode in finite time. # Along the <math>e_1 = 0</math> surface, the corresponding <math>v_2(t) = \{m_1(\hat{x}) \sgn( e_1 )\}_{\text{eq}}</math> equivalent control will be equal to <math>h_2(x)</math>, and so <math>v_2(t) - h_2(\hat{x}) = h_2(x) - h_2(\hat{x}) = e_2</math>. Hence, so long as <math>m_2(\hat{x}) \geq |h_3(x(t))|</math>, the second row of the error dynamics, <math>\dot{e}_2 = h_3(\hat{x}) - m_2(\hat{x}) \sgn( e_2 )</math>, will enter the <math>e_2 = 0</math> sliding mode in finite time. # Along the <math>e_i = 0</math> surface, the corresponding <math>v_{i+1}(t) = \{\ldots\}_{\text{eq}}</math> equivalent control will be equal to <math>h_{i+1}(x)</math>. Hence, so long as <math>m_{i+1}(\hat{x}) \geq |h_{i+2}(x(t))|</math>, the <math>(i+1)</math><sup>th</sup> row of the error dynamics, <math>\dot{e}_{i+1} = h_{i+2}(\hat{x}) - m_{i+1}(\hat{x}) \sgn( e_{i+1} )</math>, will enter the <math>e_{i+1} = 0</math> sliding mode in finite time. So, for sufficiently large <math>m_i</math> gains, all observer estimated states reach the actual states in finite time. In fact, increasing <math>m_i</math> allows for convergence in any desired finite time so long as each <math>|h_i(x(0))|</math> function can be bounded with certainty. Hence, the requirement that the map <math>H:\mathbb{R}^n \to \mathbb{R}^n </math> is a [[diffeomorphism]] (i.e., that its [[linearization|Jacobian linearization]] is invertible) asserts that convergence of the estimated output implies convergence of the estimated state. That is, the requirement is an observability condition. In the case of the sliding mode observer for the system with the input, additional conditions are needed for the observation error to be independent of the input. For example, that : <math> \frac{\partial H(x)}{\partial x} B(x)</math> does not depend on time. The observer is then : <math> \dot{\hat{x}} = \left[ \frac{\partial H(\hat{x})}{\partial x} \right]^{-1} M(\hat{x}) \sgn(V(t) - H(\hat{x}))+B(\hat{x})u. </math>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)