error using transfer function block in Simulink!!
显示 更早的评论
Dear Matlabers,
I am Mohannad. I kindly have two questions. I would like you to help me find the answers for those questions, please.
I have a transfer function with a high degree order in the denominator, but there is a zero pole as shown in the following transfer function:
G_(sys.) (s)=2.5133/(3.75∗10^(-12) S^4+1.409∗10^(-9) S^3+2.898∗10^(-4) S^2+0.0364S)
This system is unstable. Therefore, to remove this pole, I added a zero in the numenator with zero value, as well as, a Gain of 1/69.19 to adjust the step response of the system. The open loop system worked perfectly. However, I want to separete the system from the controller. Therefore, I created a transfer function of G_(c.) (s) = S/ 69
However, because of a higher order in the numenator, an error has occured. So, I tried to add a derivative with gain blocks but I realised that the derivative differentiates the input and the desired output is not correct. Finally, I created a PID controller block and adjusted Kp and Ki gain to zero and Kd = 69, and worked successfully.
My questions are:
1) why did the transfer function block with a higher order in the numenator made an error?
2) why didn't the PID controller block made an error when setting Kp and Ki to zero?
Looking forward to your reply
Thank you very much
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 PID Controller Tuning 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!