モデルベース開発の現場ではしばしば
「プラントモデルの信号がうんたらかんたら」とか「プラントの動きがうんたらかんたら」
なんて話が出てくるのですが、そもそもプラントモデルとはなんでしょうか。
ここではプラントモデルって聞いたことはあるけど、いまいち何物か知らないという方に向けて簡単に解説したいと思います。
プラントモデルとは?
プラントモデルとは制御対象物の動きをシミュレーションするためのモデルです。
自動車の制御を開発をしているのであれば制御対象物は自動車ですし、ロボットを作っているのであれば制御対象物はロボットです。
プラントモデルを作る目的
プラントモデルは制御器(コントローラー)の動作の正しさを確認するために作成します。
制御したい物体(ロボットとか)を一定時間で所定の速度まで加速させるという制御を作ったとします。
制御対象物は実在する物なのでコントローラーの制御通りに動いてくれるのか、実際に動かしてみるまで分かりません。
その際、制御が正しいか確認するためにわざわざ制御対象物に制御を組み込んで実際に動かすとなると手間暇かかります。
また、制御対象によっては実際に動かしてみて狙い通りに動かなかったら大惨事になることも考えられます。
例えば制御対象がロケットだった場合に制御が正しく動かず墜落してしまったなんてことになったらとんでもないことです。
そこで、制御の正しさを確認するため、実際の制御対象の代わりに動かしてシミュレーションものがプラントモデルです。
プラントモデルはパソコン上のものなので制御対象に実装するという手間なしに動かしてみることができます。
また、たとえ狙い通りの動作になったとしてもただのシミュレーションなので何の被害も起こりません。
プラントモデルがあれば気軽に制御を動かしてみて、動作がおかしければ制御を修正してまた制御を動かしてと繰り返すことができます。その結果として制御の制度を上げていくことができます。
どうやって模擬する?
運動方程式を立てて計算することが基本です。
簡単なものを例にすると
\(F=ma\)のようなものです。中学校の理科か高校の物理かで習った記憶があるかと思います。
制御対象がどのような物理法則で動くのかを考えて運動方程式を考えます。
運動方程式を立てたら、後はそれをモデルに落としこめばとりあえずプラントモデルになります。
ただ、自然界では様々な力が働くので、それを完全に模擬するような運動方程式を作ることは不可能です。
そのためプラントモデルでシミュレーションした結果は、ざっくりこんな感じで動きそうというレベルになります。
また、運動方程式とは違う方法として、実際のデータに基づいてモデルを作成するということも考えられます。
この場合は物理法則イマイチ考えることができなくても、この場合はこうなるという実際のデータがあれば動きをシミュレーションすることができます。
プラントモデルを制御した結果
実際にプラントモデルを制御した結果が以下の図になります。
この例では上段にはコントローラーが指示したトルク値、下段にはプラントモデルがコントローラーからの指示トルクを受けた結果どのように速度が変化したかが表示されています。
プラントモデルが意図通りに制御できているかを視覚的に確認することができます。
このように制御対象を実際に動かすことなく、制御対象がどのように動くのか確認することができます。
コメント