1.MBDの種類

 一口に「MBD」と言っても実に色々です.そこで,文献やインターネットの情報を調べたところ,概ね4種類あることが分かりました.
dspace

(1) 組込みシステムが対象のMBD

 国内に限れば,最初にモデルベースという言葉を使ったのはdSPACE社です.1990年ごろですが MATLAB&Simulink のプログラムをC言語に自動変換し,組込みシステムに実装できるようにしました.そして,これをモデルベース設計と呼びました.このタイプの特徴は,開発工程の V字表現,実行可能な仕様書や HILS といった語句が出てくることです.
 その後,自動車業界が MathWorks社の MATLAB&Simulink と dSPACE社のモデルベース開発を全面的に採用すると,モデルベース開発(MBD)は次第に脚光を浴びるようになり,MBDとは,組込みシステムを対象にしたソフトウェア開発を意味するようになりました.精密機械分野の人間からすると違和感がありますが,そういうものとして定着していますから,仕方ありません.
 なお,dSPACE Japan社が監修した「モデルベース開発(MBD)」という本には,歴史的な背景から詳しく書かれています.

(2) 概念設計用のMBD

 開発初期の概念設計や構想設計では,単純なプラントモデルの制御シミュレーションを行います.単純とはいっても連立微分方程式を作る必要がありますから,数学モデルに慣れていないと意外に難しいものです.作用力だけでなく,反作用力を考慮し,方向も間違えないようにして微分方程式を作らなくてはなりません.
modelica  そこで,種々の物理要素ブロックを図上で結合するだけで,微分方程式を自動生成するツールが開発されました. Modelicaというプログラム言語です.複雑なモデルには向きませんが,機構系だけでなく,流体系や熱伝達系のライブラリも揃っていて,初期設計段階のシミュレーションには都合よくできています.さらに,Modelicaの使い勝手を改良した Dymolaや MapleSimも登場しました.いわゆる1Dシミュレーションというものです.
 よく「非因果的モデリング」という難解な言葉を耳にしますが,これは,数学モデリングが苦手でも容易に微分方程式を作れることを意味していて,1Dシミュレーションの特長を示すものです.なお,ここで言う1Dと言うのは,厳密な意味での1次元とは限りませんので,ご注意ください.
 近年,この1Dシミュレーションは急速に普及し始めました.組込みシステムのMBDで利用されるようになったからです.設計初期段階で使う1Dモデルベース開発シミュレーションが,プラントモデル作成に便利であることから,詳細設計段階でも使われ始めたのです.もはや,プラントモデル作成は全て1Dシミュレーションで行えるものと,期待する人も多くなりました.
 しかし,実際に使ってみると,剛体要素が増加するにつれ,急に使いにくくなります.計算時間が長くなり,実験データと比較しながらモデルを調整することが困難になります.また,制御設計用にプラントモデルを線形化する必要がありますが,この演算時間が結構長いのです.剛体要素が1つである自動車やロケットの場合は良いのですが,ロボットのように複数の駆動軸があると,異なる姿勢ごとに線形化する必要があるため,線形化の演算時間だけでも相当な時間が必要になることが予想されます.つまり,精密機械の線形化は理論的に可能でも,現実的には不可能だ と言えましょう.ただ,精密機械のモデル化に全く使えないという訳ではありません.微分方程式の検証用に利用できますから,補助的ではありますが,できれば使った方が良いと思います.

(3) 詳細設計用のMBD(CAE派生型)

 これは,機構のCAE(計算機援用設計)を進化させ,機構と制御の同時設計を目指したものです.組込みシステム開発だけに限定しない点で,MBDらしい考え方に思えるため,精密機械分野の人間には支持されやすいと思います.
fem  しかし,モデルの規模が大きくなる傾向があり,その場合はモデルの修正や演算に長い時間がかかります.演算時間が実機の数千倍なんて話は当たり前のようです.それでは,実機データと比較したモデル調整も時間がかかりすぎて,とても出来ません.
 結局のところ,実機ができると誰もシミュレーションを使わなくなります.モデルを利用するのは詳細設計の期間だけに限定されますから,モデル主体の開発とは程遠いことになります.
 ただし,二足歩行型ロボットの動作アルゴリズム検討や,動作中の駆動トルク計算,機構解析による転倒防止制御の検討には利用されていますから,ソフトウェア開発には利用可能なようです.

(4) 制御対象をSimulinkで表現するMBD

バネマス1  これは,制御対象をSimulinkだけでモデル化する方法です.
 制御対象が,直線上に並んだような1次元のn質点バネマスモデルであれば可能です.余りにも当たり前すぎるので,ネットで検索してもヒットしませんが,実際はこれが一番多く行われていると思います.
 例えば1質点の1次元バネマスモデルであれば右上図のようにSimulinkで表現できます.2質点であれば右下図のようになります.1次元であればn質点でも表現できそうです. バネマス2
 しかし,現実的な3次元のバネマスモデルになると 1質点でも非常に複雑になります.
1つの画面上では表現できなくなり,可読性は著しく低下します.それと同時にバグの解消にも膨大な時間を要するようになるので,モデル化できなくなります.
 以上に挙げた4種類が代表的なMBDの方法ですが,残念ながら精密機械のモデルベース開発に適したものは見当たりません.そこで,精密機械の特徴に着目して考えてみようと思います.



 精密機械のMBD  前のページへ 次のページへ   2.数学屋ほん舗のMBD

 ご意見はこちら.ご質問もこちら.お気軽にどうぞ.

Page top icon