How to obtain the designed MPC controller to program in a computer
13 ビュー (過去 30 日間)
古いコメントを表示
I've designed and tuned an MPC controller by means of the MPC tool. Once I've checked and simulated the desired behavior I would like to get the controller model in order to program it in the computer comtrolling the real physical process.
The problem is that I'm not able to extract the controller model from the MPC object provided by the MPC tool, I mean the transfer functions/s.
Having the MPC model as transfer functions, I first would like to validate the controller in Simulink by comparing the responses obtained with the MPC Controller block and the controller implemented with transfer fucntion blocks.
Any idea how can I do it?
Thanks
0 件のコメント
採用された回答
Arkadiy Turevskiy
2014 年 3 月 20 日
編集済み: Arkadiy Turevskiy
2014 年 12 月 23 日
MPC controller is not a transfer function. As explained here ,it is an optimization problem that is formulated and solved at each sampling time. Think about it as an optimization solver that runs each time you compute controller action. So you can't just reduce it to a transfer function.
Once the controller is designed and tested in MATLAB/Simulink, there are 2 ways to deploy: 1. Use mpcmove function, and create a standalone application using MATLAB Compiler 2. Use MPC Controller block in Simulink and generate C code or structured text using Simulink Coder or Simulink PLC Coder.The generated code can then be loaded onto the target processor or a PLC.
2 件のコメント
yem
2014 年 12 月 21 日
hi ARKADiy i want to synthetise a MPC controller to a systems with delays a help please
その他の回答 (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!