2.OpenModelicaの例題調査

 精密機械のモデルベース開発を考えるとき,そのまま使えそうなツールなのはModelica系言語だと思います. 特に,OpenModelicaは無料で誰もが利用できますし,精密機械に相当する6軸アームの例題が提供されていましたので, これを詳しく調べることにしました.
robot2 
右図はその例題に登場する6軸アームです.ここでは,(1)~(4)の順に説明してゆきます.

(1) OpenModelicaのインストール
(2) OpenModelicaのシミュレーション
(3) 機構系モデルの調査
(4) 制御系モデルの調査
(5) シミュレーションの実行

(1) OpenModelicaのインストール

 それでは,フリーの1DCAEソフトである OpenModelica をインストールしましょう.
「OpenModelicaのインストールと実行」 というサイトを参考にすれば,容易にインストールできます.インストールしたら,引き続いてOMEditを開きます.

OpenModelicaLabel 
 OMEditerを起動すると下の画面が現れます.自由に編集できるロボットアームのパッケージを作るため,先ずは「新規Modelica作成」というボタンを押します.
 次いで,入力用のダイアログが出現するので,名前の欄に「MyRobot」と入力して,OKボタンを押します.

Modelica_Operation 
 すると,左側にあるライブラリメニューに「MyRobot」という僅か4行のモデルが作成されました.

Modelica_Operation 
 ここで,OpenModelicaが保有する6軸ロボットアームのサンプルモデルをコピーして,保存します.まず,ライブラリブラウザから,Modelica → Mechanics → Multibody → Examples → Systems → RobotR3 の順にアイコンを開いてゆき,RobotR3の複製をルートディレクトリに保存して閉じます.次に,保存したRobotR3.moというファイルを改めて開き,ライブラリブラウザから,RobotR3→fullRobotと開き,アイコンを右クリックして,View Textを選びます.そして,それをそのままMyRobotのテキストとしてコピーし,さきほど作ったMyRobotのテキストメニューにペーストして保存します.

Modelica_Operation 
 このとき,2か所にあるRobot3の文字列をMyRobotに変更してファイルを保存します.

Modelica_Operation 
 そうすると,モデルファイルだったライブラリのMyRobotがパッケージになっています. ここから,fullRobotを開き,出力したい変数の定義式を追記します.24行も追記するのは大変そうに見えますが,上手にコピペすれば僅かな手間で済みます.

Modelica_Operation
 

(2) OpenModelicaのシミュレーション

 次に,メニューバーで シミュレーション → Simulate with Animation を選ぶと,全軸が同時に動作するシミュレーションが行われます.
 シミュレーションが実行されたら,変数ブラウザのメニューに各変数がリストアップされるので,記録したい変数( vel1~vel6, pos1~pos6, rot1~rot6, trq1~trq6 )を選択します.24個全部のチェックボックスをONにしたら,csvファイルへの出力ボタンを押し,保存先指定のダイアログが現れたら,ファイル名を付けて保存します.

Modelica_Operation 
 保存したcsvファイルをエクセルで開くと,1列目が時刻.2列目以降は変数ダイアログで選択した順に,変数値が各列に記録されています.なお,データの時間間隔は一定とは限らないので,修正する必要があります.ここでは,一定時間間隔のデータに書き改めるプログラムをmatlabで作って処理しています.

Modelica_Operation 
 前のページ      お問合せ     次のページ  

(2020年 8月 23日 更新)
Page top icon