Combine two controllers in ODE45 environment
이전 댓글 표시
Hi,
Please I need idea on how to implement the following problem on MATLAB.
My aim is to stabilize a plant using two dynamic controllers. Only one controller is implemented at a time. The controller to be implemented is depended on a logic variable q = 1 or q = 0.
If q = 0, controller 1 is implemented and if q = 1, controller 2 is implemented.
The controller output is given by:
u = q* K2(x) + (1 - q) * K1(x).
K1 and K2 are dynamic controllers. so they are solved using ODE45.
By default controller 1 will be triggered at the start of the program until output variable is less than 5. and the second controller is triggered.
The main challenge:
The last output of controller 1 (The output just before controller 2 is triggered) should be used as the initial condition of controller 2 when controller 2 is triggered.
댓글 수: 6
Sam Chak
2022년 6월 7일
"The last output of controller 1 should be used as the initial condition of controller 2 when controller 2 is triggered."
This implies that your K2 dynamic controller has function like this:
. Please clarify.
Davide Masiello
2022년 6월 7일
It is possible to solve this using event location functions, but you need to share all the details of you problem.
Telema Harry
2022년 6월 7일
Telema Harry
2022년 6월 7일
Yes @Telema Harry
Thanks for clarifying the matter. I think I understand that the dynamics is something like
, where
, in order to preserve the continuity of the control action. Actually, I'm thinking, "if this is a state-space, where do I put
?"
Telema Harry
2022년 6월 7일
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 State-Space Control Design에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

