# LMIs in Control/pages/Continuous Time D-Stability Observer

Continuous-Time D-Stability Observer

Similar to the D-stability controller, there are also control problems where people desire to design a D-stability observer whose poles are in specific regions of a complex plane while simultaneously ensuring its stability.

## The System

Suppose we were given the continuous-time system

{\displaystyle {\begin{aligned}{\dot {x}}(t)&=Ax(t)+Bu(t)\\y(t)&=Cx(t)+Du(t)\end{aligned}}}

whose stability was not known, and where ${\displaystyle A\in \mathbb {R} ^{mxm}}$ , ${\displaystyle B\in \mathbb {R} ^{mxn}}$ , ${\displaystyle C\in \mathbb {R} ^{pxm}}$ , and ${\displaystyle D\in \mathbb {R} ^{qxn}}$  for any ${\displaystyle t\in \mathbb {R} }$ . Then the controller that simultaneously stabilizes the above system while ensuring that the poles are at their desired location can be achieved by the controller ${\displaystyle u(t)=Ly(t)}$ .

## The Data

In order to properly define the acceptable region of the poles in the complex plane, we need the following pieces of data:

• matrices ${\displaystyle A}$  and ${\displaystyle C}$
• rise time (${\displaystyle t_{r}}$ )
• settling time (${\displaystyle t_{s}}$ )
• percent overshoot (${\displaystyle M_{p}}$ )

Having these pieces of information will now help us in formulating the optimization problem.

## The Optimization Problem

Using the data given above, we can now define our optimization problem. In order to do that, we have to first define the acceptable region in the complex plane that the poles can lie on using the following inequality constraints:

Rise Time: ${\displaystyle \omega _{n}{\leq }{1.8 \over t_{r}}}$

Settling Time: ${\displaystyle \sigma {\leq }{-4.6 \over t_{s}}}$

Percent Overshoot: ${\displaystyle \sigma {\leq }{-ln({M_{p}}) \over {\pi }}|{\omega _{d}}|}$

Assume that ${\displaystyle z}$  is the complex pole location, then:

{\displaystyle {\begin{aligned}{\omega _{n}}^{2}=\|z\|^{2}&=z^{*}z\\{\omega _{d}}=Im{z}&={(z-z^{*}) \over 2}\\{\sigma }=Re{z}&={(z+z^{*}) \over 2}\end{aligned}}}

This then allows us to modify our inequality constraints as:

Rise Time: ${\displaystyle z^{*}z-{1.8^{2} \over {t_{r}}^{2}}{\leq }0}$

Settling Time: ${\displaystyle {(z+z^{*}) \over 2}+{4.6 \over t_{s}}{\leq }0}$

Percent Overshoot: ${\displaystyle z-z^{*}+{{\pi } \over ln({M_{p}})}|z+z^{*}|{\leq }0}$

which not only allows us to map the relationship between complex pole locations and inequality constraints, but it also now allows us to easily formulate our LMIs for this problem.

## The LMI: The Continuous-Time Observer D-Stability

Keeping the above inequalities in mind, we observe the following:

Suppose there now exists a symmetric matrix ${\displaystyle P>0}$  and matrix ${\displaystyle Z}$ , we can now determine the observer the following LMIs:

{\displaystyle {\begin{aligned}{\begin{bmatrix}-rP&&(PA+ZC)^{T}\\PA+ZC&&-rP\end{bmatrix}}&<0\\(PA+ZC)^{T}+PA+ZC+2\alpha P&<0,and\\{\begin{bmatrix}(PA+ZC)^{T}+PA+ZC&&c((PA+ZC)^{T}-(PA+ZC))\\c((PA+ZC)-(PA+ZC)^{T})&&(PA+ZC)^{T}+(PA+ZC)\end{bmatrix}}&<0\end{aligned}}}

## Conclusion:

Given the resulting observer ${\displaystyle L=P^{-1}Z}$ , we can now determine that the pole locations ${\displaystyle z\in \mathbb {C} }$  of ${\displaystyle A+LC}$  satisfies the inequality constraints ${\displaystyle |x|{\leq }r}$ , ${\displaystyle Re(x){\leq }-{\alpha }}$  and ${\displaystyle z+z^{*}{\leq }-c|z-z^{*}|}$ .

## Implementation

• Example Code - A GitHub link that contains code (titled "ObserverDStability.m") that demonstrates how this LMI can be implemented using MATLAB-YALMIP.