Transfer function with delay generates weird step response

Hi!
My step response plots have a weird shape as soon as I ad an input delay to the system. I cant figure out why. Depending on the delay it creates all kind of sharp edges.
Any suggestion?
PT1b = tf(10,[3 1],'inputdelay',0.8);
C = pid(0.1,0.1,0.1);
step(feedback(PT1b*C,1))

Réponses (1)

ok, I figured it out. Its not a strange Matlab solver behaviour but it comes from the fact that the closed loop (feedback) actually is a N=2/D=2. This makes no sense in the real world since the controllers D-output goes to infinity for a step input. However it results is a state space model with a direct feet-thru.
PT1b = tf(10,[3 1],'inputdelay',0.5);
C = pid(0.1,0.1,0.1);
feedback(PT1b*C,1)
ans = A = x1 x2 x1 -0.5 -0.5 x2 0.5 0 B = u1 x1 0.75 x2 0 C = x1 x2 y1 0.1667 0.5 D = u1 y1 0.25 (values computed with all internal delays set to zero) Internal delays (seconds): 0.5 Continuous-time state-space model.
A solution for real world is to use a Tf on the D-term of the controller
PT1b = tf(10,[3 1],'inputdelay',0.5);
C = pid(0.1,0.1,0.1 ,0.2);
step(feedback(PT1b*C,1))

Catégories

En savoir plus sur MATLAB dans Centre d'aide et File Exchange

Produits

Version

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by