MPC cannot be designed in app
조회 수: 14 (최근 30일)
이전 댓글 표시
I have a Carsim S-functon as the plant model for a MPC. But I get an error saying "Plant model cannot be a pure direct feed-through system without additional dynamics". Why does it keep saying that?
댓글 수: 4
zhanglong zhang
2021년 6월 11일
hello, i also have the problem,may you tell me how can i solve it? thank you.
답변 (3개)
Junhao Jiang
2020년 4월 22일
The compatibility between CarSim and Simulink is not high,if you have the state space,you should use it,or you only choose the s-function to make it.
댓글 수: 3
Pacifique Turabimana
2021년 12월 27일
How can I add CarSim S-Function in Simulink Library?
I tried to link CarSim with Simulink but nothing to do after because I can't find CarSim in Simulink library, I tried even online MATLAB but I can't be ab;e to continue working on my research. Please guide me to solve it.
Walter Roberson
2021년 12월 27일
Unfortunately carsim.com does not appear to post their installation documentation online :(
Walter Roberson
2021년 6월 11일
According to https://www.mathworks.com/matlabcentral/answers/473358-mpc-controller-direct-feedthrough-from-manipulated-variables-to-any-output-in-plant-is-not-allowed#comment_961921 you currently have an output that is being calcuated from an input signal with no modeled delay, but MPC does not permit that. You need to configure your model to take some time between input and output for all signals.
You can use delay blocks, or you can use a transfer function.
댓글 수: 4
MUHAMMAD
2023년 12월 8일
Solution:
I had same problem and It is solve by adding time delay.
You can add time delay in between MV and plant. I did using matlab command like like
plant = tf([num],[den],'OutputDelay',1.5 )
I hope this answer helped you.
Example
%%Transfer Function By System identification
num = [-1.324 6.6e05 -6.914e09 5.128e13 -1.054e19]
den = [1 1.99e04 1.371e09 1.145e13 4.037e17]
plant = tf([num],[den],'OutputDelay',1.5 )
JGP
2024년 3월 20일
can you help me? Even if I use the delay or LTI system, the error continues.
How do I insert the Matlab code you mentioned into Simulink?
MUHAMMAD
2023년 12월 8일
Solution:
I had same problem and It is solve by adding time delay.
You can add time delay in between MV and plant. I did using matlab command like like
plant = tf([num],[den],'OutputDelay',1.5 )
I hope this answer helped you.
Example
%%Transfer Function By System identification
num = [-1.324 6.6e05 -6.914e09 5.128e13 -1.054e19]
den = [1 1.99e04 1.371e09 1.145e13 4.037e17]
plant = tf([num],[den],'OutputDelay',1.5 )
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Linear Plant Specification에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!