How can I Switch between PID and MPC ?
9 ビュー (過去 30 日間)
古いコメントを表示
Hossein Rezazadeh
2018 年 10 月 23 日
回答済み: Arkadiy Turevskiy
2018 年 10 月 29 日
HI. Is that possible to design a controller in which the operator can manually switch between MPC and PID ? In the design below the problem is when we switch from MPC to PID, the MPC receives feedbacks which are not correspondent to MPC signals and it makes the MPC state estimator to estimate totally wrong estate of the model. Consequently it is not possible to switch back to MPC because it is running on a wrong state. So the question is how can I change last move values of the MPC to be equal to PID signals during run time when switching to PID so that the estate estimator does not get lost . Or if there is any other design that can solve this problem.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/192379/image.jpeg)
0 件のコメント
採用された回答
Arkadiy Turevskiy
2018 年 10 月 29 日
Hi there,
Yes, you can definitely switch between different controllers. We call this feature "bumpless transfer". In your MPC controller you need to check the option in block dialog to use "external manipulated variable". This is explained here .
You also need to ensure bumpless transfer for when you switch from MPC to PID controller. If you use Simulink PID Controller block, you do that by using tracking mode feature, as explained here .
Finally, here is a link to our webinar where we designed both PID and MPC controllers for a robot arm and compared them by switching between them and comparing performance.
Hope this helps.
Arkadiy
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Controller Creation についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!