How can I simulate the effect of a step disturbance on a plant output that is in feedback to the controller?

bz = [0.1];
az=[1 -0.9];
ts=0.1;
Gz=tf(bz,az,ts);
[kpid,info] = pidtune(Gz,'pid');
T_pi = feedback(kpid*Gz, 1);
step(T_pi)
I want to add a constant unit disturbance that affects the system at some point of time and see the response in the presense of the disturbance. How can I do this?
Any advise would be very helpful. Looking forwaed to your replies.

1 Kommentar

hi @Bhindhiya, your title says that adding the disturbance on a plant output. Can you check again whether it's the input to the plant, or the the disturbance is injected at the output of the plant?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Hi Bhindhiya,
Based on my understanding, it seems that you want to add a disturbance to the system at a specific time. Let's say the disturbance be a disturbance. For to be start from a time instance , it should be multiplied with a unit step and then delayed accordingly. So the disturbance would be modelled as
Convert this disturbance to laplace domain and then multiply with the actual transfer function. As a sample code, if the disturbance is Ks in laplace domain, then
[kpid,info] = pidtune(Gz*Ks,'pid');
T_pi = feedback(kpid*Gz*Ks, 1);
step(T_pi)
with regards,
Gokul Nath S J

Kategorien

Mehr zu MATLAB finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 11 Apr. 2023

Kommentiert:

am 18 Apr. 2023

Community Treasure Hunt

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

Start Hunting!

Translated by