State space discretization

15k Views Asked by At

I have a question for you:

I'm playing with a continuous state space system and I have to discretize it. I've looked around and it seems pretty easy:

$\dot{x}(t) = Ax(t) + Bu(t)\ $ and $\ y(t) = Cx(t) + Du(t) = Cx(t) \rightarrow$ because $D = 0$;

Turns to:

$x(k+1) = A_dx(k) + B_du(k)\ $ and $\ y(k) = Cx(k)$

where:

$A_d = e^{AT_s}\ $ and $\ B_d = A^{-1}(A_d-I)B$

My problem is that when computing $B_d$, the matrix $A^{-1}$ increases a lot and destroys the subsequent state prediction. I assumed that discretizing my state space was making it unstable, so I checked the eigenvalues of $A_d$. There is one of them that is positive.

Is there any solution to avoid this non stability? I need this discrete system. What would you do?

1

There are 1 best solutions below

0
On

In general, for discretizing the LTI system $$\dot x=Ax+Bu$$ you can think of $\dot x$ as $$\dot x\approx\frac 1T(x_{k+1}-x_k)$$ So a reasonable estimation for $x_{k+1}=A_dx_k+B_du_k$ would be: $$A_d=I+AT,\;B_d=BT$$ This is called the zero-order hold estimation.