MPCでmdによる影響の予測は可能ですか?
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
yu uchimura
le 7 Juin 2018
Réponse apportée : Hiroumi Mita
le 12 Juil 2018
現在、simulinkでMPCコントローラを用いる際に、シミュレーション期間中のmdが既知であることを想定し、signal builderを使用しmdとして与え、シミュレーションを行っています。そのmdが変動する際に、制御対象から出力されるデータにも変動をもたらすのですが、この変動を抑制する(mdが制御対象へ与える影響を予測して制御を行う)ことは可能なのでしょうか?
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/191073/image.jpeg)
0 commentaires
Réponse acceptée
Hiroumi Mita
le 11 Juin 2018
外乱(MD)や目標値(ref)の将来値を事前の織り込んで制御する機能を look aheadと言います。 次のサンプルデモをしっかり調べて読み込んでみるとよいかと思います。 look aheadはスクリプトでしか設定できないように見受けられます。
サンプルデモ Improving Control Performance with Look-Ahead (Previewing)
2 commentaires
Plus de réponses (1)
Hiroumi Mita
le 12 Juil 2018
#Q1. lookaheadという機能はスクリプトでしか設定できないのでしょうか?
もしSimulinkでも設定できるのであれば、方法を教えて頂きたいです。
#A1. Simulinkで設定する機能は無いようです。 MPC Desingrerを見た限りでは、lookaheadの設定機能はありませんでした。
MPC Toolboxではスクリプトで設計したMPCオブジェクトをMPC制御器としてSimulink内で使えます。
MPCオブジェクトにlookaheadを設定すれば、その機能がSimulink上で使えることを示したのが 該当のデモです。
#Q2. 以下のSimulik図の「Reference Previewerブロック」、 「Measured Disturbance Previewer ブロック」、「uSLブロック」、 「ySLブロック」がSimulink ライブラリブラウザ内に見当たらないのですが、 どのブロックを用いているのかを教えて頂きたいです。
#A2. 「Reference Previewerブロック」、「Measured Disturbance Previewer ブロック」は
標準のブロックはありません。その中で、関数(mpcblock_preview.m)をコールするようデモ用に作成したものです。
マスク機能でカバーをつけ、MATLAB Function BlockでMATLAB関数を呼び出しています。
その内容はmpcblock_preview.mを精査してください。
なお、Simulinkモデルの情報表示ー>自動生成名の非表示のチェックをはずすとブロック名は見ることができます。
0 commentaires
Voir également
Catégories
En savoir plus sur Linear Plant Specification dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!