I have a SIMO system. $\xi$ is the input and $Y$ is the output. The state space model is given by

\begin{align} \dot{X} &= AX + B\xi\\ y&=r-Cx \end{align}

$A$ is $5 \times 5$ matrix. $B$ is $5 \times 1$. The controller $K$ is a state feedback controller such that $A - BK$ is Hurwitz. The schematic overview is shown in the figure. How can I find out the open loop or closed loop bandwidth for this system?

Edit: By bandwidth I mean the frequency at which the open loop transfer function crosses the $0$dB line.

Edit2: Maybe the question wasn't very clear. After I design the feedback control law, my system is \begin{equation} \dot{X} = (A - BK)X \end{equation}

Now the transfer function is essentially from reference $r$ to a chosen output $y$. But given $A-BK$, how do I find the transfer function? Note that the feedback is a state feedback and hence is very difficult to write as a transfer function.

  • 1
    $\begingroup$ How is $Y$ calculated? Normally in state space as follows, $Y=C\,X+D\,\xi$. Normally for a state space model with an observer based controller you first estimate the full state with $\dot{\hat{X}}=A\hat{X}+B\xi+L(Y-D\xi-C\hat{X})$ and $\xi=-K\hat{X}$, where $L$ and $K$ can be designed by you, such that $A-BK$ and $A-LC$ are Hurwitz matrices. Also do you know if your state space model is minimal (controllable and observable)? $\endgroup$ Nov 24 '16 at 13:37
  • $\begingroup$ Sorry I have reformulated the question because it was formulated badly...So I have already designed the feedback controller that makes the system Hurwitz. Point is I was to find out the open-loop and closed-loop bandwidth of the system. $\endgroup$
    – Zero
    Nov 24 '16 at 15:25
  • $\begingroup$ Well, the bandwidth gives an estimate of the frequency range for which the control input is effective. Since you have a SIMO system you can use instead of $|G(j\omega_B)|=1$ (which you have used for the SISO system) the condition $\sigma_{\min}(G(j\omega_B))=1$ where $\sigma_{\min}$ denotes the smallest singular value. In fact, in this case, this is equivalent to $\|G(j\omega_B)\|^2=G^H(j\omega_B)G(j\omega)=1$ i.e. $B^T(-j\omega_B-A)^{-T}(j\omega_B-A)^{-1}B=1$ for the open-loop system and similarly for the closed-loop system (replace $A-BK$ instead of $A$). $\endgroup$
    – RTJ
    Nov 27 '16 at 12:11

Given a state space model of the following form,

$$ \dot{x} = A\,x + B\,u, \tag{1} $$

$$ y = C\,x + D\,u. \tag{2} $$

The openloop transfer function of this system can be found by taking the Laplace transform and assuming all initial conditions to be zero (such that $\mathcal{L}\{\dot{x}(t)\}$ can just be written as $s\,X(s)$). Doing this for equation $(1)$ yields,

$$ s\,X(s) = A\,X(s) + B\,U(s), \tag{3} $$

which can be rewritten as,

$$ X(s) = (s\,I - A)^{-1} B\,U(s). \tag{4} $$

Substituting this into equation $(2)$ and defining the openloop transfer function $G(s)$ as the ratio between output ($Y(s)$) and input ($U(s)$) yields,

$$ G(s) = C\,(s\,I - A)^{-1} B + D. \tag{5} $$

In a normal block diagram representation the controller has as an input $r-y$, with $r$ the reference value you would like to have for $y$, and an output $u$, which would be the input to $G(s)$. For now $r$ can be set to zero, so the controller can be defined as the transfer function from $-y$ to $u$.

For an observer based controller ($L$ and $K$ such that $A-B\,K$ and $A-L\,C$ are Hurwitz) for a state space model we can write the following dynamics,

$$ u = -K\,\hat{x}, \tag{6} $$

$$ \dot{x} = A\,x - B\,K\,\hat{x}, \tag{7} $$

$$ \dot{\hat{x}} = A\,\hat{x} + B\,u + L(y - C\,\hat{x} - D\,u) = (A - B\,K - L\,C + L\,D\,K) \hat{x} + L\,y. \tag{8} $$

Similar to equations $(1)$, $(2)$ and $(5)$, the transfer function of the controller $C(s)$, defined as the ratio of $U(s)$ and $-Y(s)$, can be found to be,

$$ C(s) = K\,(s\,I - A + B\,K + L\,C - L\,D\,K)^{-1} L. \tag{9} $$

If you want to find the total openloop transfer function from "$-y$" to "$y$" you have to keep in mind that in general $G(s)$ and $C(s)$ are matrices of transfer functions, so the order of multiplication matters. Namely you first multiply the error ($r-y$) with the controller and then the plant, the openloop transfer function can be written as $G(s)\,C(s)$. The closedloop transfer function can then be found with,

$$ \frac{Y(s)}{R(s)} = (I + G(s)\,C(s))^{-1} G(s)\,C(s). \tag{10} $$

It can also be found directly using equations $(2)$ and $(6)$, and the closedloop state space model dynamics,

$$ \begin{bmatrix} \dot{x} \\ \dot{\hat{x}} \end{bmatrix} = \begin{bmatrix} A & -B\,K \\ L\,C & A - B\,K - L\,C \end{bmatrix} \begin{bmatrix} x \\ \hat{x} \end{bmatrix} + \begin{bmatrix} 0 \\ -L \end{bmatrix} r, \tag{11} $$

$$ \frac{Y(s)}{R(s)} = \begin{bmatrix} C & -D\,K \end{bmatrix} \begin{bmatrix} s\,I - A & B\,K \\ -L\,C & s\,I - A + B\,K + L\,C \end{bmatrix}^{-1} \begin{bmatrix} 0 \\ -L \end{bmatrix}. \tag{12} $$

  • $\begingroup$ I appreciate the answer....But the portion that relates to my problem is when I have the feedback already designed, then my input-output relation is from $r$ to $y$. You are right. But I do not see how I have the transfer function now? $\endgroup$
    – Zero
    Nov 28 '16 at 19:33
  • $\begingroup$ @Zero $G(s)$, $C(s)$ and $\frac{Y(s)}{R(s)}$ are all (matrices of) transfer functions. $\endgroup$ Nov 28 '16 at 19:58
  • $\begingroup$ Yeah you are right...I just asked the question wrong...I wanted to ask a general question to confirm my method but I think I messed up the question. Still given the question your answer is right. You can always treat the system as multivariable (Postlethwaite). I'll accept the answer given the question :) $\endgroup$
    – Zero
    Nov 29 '16 at 14:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.