How to properly excite state-space models with time-delay using step-function?

4 views (last 30 days)
Hi,
I have constructed the following state-space presentation with a time-delay:
C = pid(1,0.1);
G = tf(2.5,[105 1],'InputDelay',5);
sys = feedback(ss(G),C);
step(sys);
The result is decaying to zero, however the steady state value for a unit step input should be 1 for the given system? Am I missing something here?
Best regards, Aapo Keskimölö

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 15 Sep 2013
Now I get it, your C PID should be in series with your model G and the feedback is the constant 1
sys=feedback(G*C,1)
step(sys)

More Answers (2)

Azzi Abdelmalek
Azzi Abdelmalek on 15 Sep 2013
% I do not know how feedback function works. I can create feedback by connecting my models and signals use connect function
C = pid(1,0.1);
C.u = 'e'; % system C input
C.y = 'u'; % system C output
G = tf(2.5,[105 1],'InputDelay',5);
G.u = 'u'; % system G input
G.y = 'y'; % system G output
%-----create sum e=r-y, r is the step signal and y is your output
somme = sumblk('e = r - y');
%---------connect system+PID+input r + output y-------------------
sys = connect(G,C,somme,'r','y');
%-----------------------------------------------------------------
step(sys)

Aapo
Aapo on 16 Sep 2013
Hi,
You are absolutely correct. I was overlooking the fact that the system was parallel. The command that I was looking for should have been
step(feedback(ss(G)*C,1)
Thank you for pointing out the fact that I didnt pay attention to!
Best regards, Aapo

Categories

Find more on Dynamic System Models 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!