Why does c2d changes the structure of the C matrix in the ss representation?
Show older comments
Hi, I have a pretty simple plant that I am discretising and then realising into its State-Space representation
Ix = 4.85e-3 % Intertia
Ts = 1/4e3 %sampling time, sec
P_tf = tf([1], [Ix,0,0]) %P_tf(s) = 1/(Ix * s^2) ,
ss(P_tf) % ss in continue time
P_tfd = c2d(P_tf, Ts, 'zoh')
ss(P_tfd) % ss in discrete time
The State Space representation of P_tf gives me a C matrix as such :
C =
x1 x2
y1 0 12.89
However, the State Space representation of P_tfd gives me a C matrix as such :
C =
x1 x2
y1 0.001649 0.001649
In my opinion, it doesn't make mush sense that the C matrix changes substantially: when I connect this plant to the controller, I'm only interested in observing the second value of the state ot the plant (like in continous time) so that I may compare it with the input to obtain the error. The new C obtained by the realisation of the discretised function instead gives me a weighted sum of the value and its derivative.
This happens also with other methods (I tried FOH and Tustin).
Does anyone know why this happens, and if there is a physical reason for it to happen, or how to correct it if not? I feel like it's not physically accurate, but I'm not very knowledgeable on such discretisation methods.
Thanks in advance!
Accepted Answer
More Answers (0)
Categories
Find more on Calendar in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!