how to calculate Plant transfer function in PID control system?
11 views (last 30 days)
Show older comments
I make simple PID control system example.
in continuous sys
Pid contorl system : Gc=tf([1 1],[1 0]);
Plant system : Pc=tf([1 1],[1 1 1]);
and make simple feed back system As below
All system : Ac=(Gc*Pc)/(1+Gc*Pc);
And I make discrete systme like this
Discrete Control system : Gd=c2d(Gc,0.1);
All System : Ad=c2d(Ac,0.1);
As u know that i can get very easely to use c2d funcion to verigy Plant system in discrete system like to use Pd=Ad=c2d(Pc,0.1);
But i try to use solve the equation of feed back system like this
Pd=Ad/(Gd-Gd*Ad);
after that i test the step response test
figure(1)
step(Ac,Ad,100)
figure(2)
step(Gc,Gd,100)
Pd=Ad/(Gd-Gd*Ad);
figure(3)
step(Pc,Pd,100)
figure 1 and 2 are good but figure 3 Plant is different with continuous ans discrete
is there some mistake ? i Dont konw i Just follow the thory
can you help me??
1 Comment
Answers (1)
Prasanna Gude
on 5 Mar 2020
As of my understanding, your problem arises due to the following command:
Pd = Ad/(Gd-Gd*Ad);
The above mathematical equation and the c2d function follow different approaches to get the output.
In the mathematical equation, infinite series associated with each transfer function will be computed to get the Discrete Plant transfer function. Whereas in c2d function, ‘zoh’(Zero-order hold) Discretization method is followed to discretize the continuous signal.
Instead use the following commands to obtain the output that you are expecting:
Pd = c2d(Pc,0.1);
step(Pc,Pd,100)
0 Comments
See Also
Categories
Find more on PID Controller Tuning 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!