ロボットモデルの作成とインポート¶
ソフトウェアのロボットライブラリもオンラインロボットライブラリも使用するロボットがない場合、本節の説明を参考してロボットのモデルを作成してインポートしてください。
FANUC M-900iB/400L を例とします。
ロボット CAD ファイルと説明書を用意する¶
ロボットモデルを作成する前に、ロボットの CAD モデルを作成し、ロボットの DH パラメータや各関節リミットなどを明記する説明書ファイルを用意します。
ユーザーは、ロボットメーカーの公式サイトから使用するロボットのファイルを入手することができます。
下図は、FANUC M-900iB/400L CAD モデル <https://docs.mech-mind.net/download/makerobot/3D_M-900iB_400L.zip>`_ と 説明書 です。
ヒント
一部のロボットメーカーのホームページに x_t フォーマットのモデルを入手できます。STEP フォーマットモデルに比べれば、x_t フォーマットを使用すればより高い成功率と速度が図れるので x_t フォーマットを優先使用することを推奨します。
[robot]_algo.json パラメータファイルを編集する¶
[robot]_algo.json ファイルモデル¶
[robot]_algo.json モデルファイルは Mech-Viz のインストールパスの C:/Users/Administrator/AppData/Roaming/Mmind/robot/profile_example.json に保存されます。ユーザーは、これに基づいて新たな [robot]_algo.json ファイルを作成することができます。
ヒント
[robot]_algo.json ファイルの各パラメータについての説明は [robot]_algo.json ファイル属性 をご参照ください。
ロボットの構造タイプ(algo_type)を確認する¶
ロボットには、様々な構造タイプがあります。構造タイプによって座標系と DH パラメータ定義が異なります。
ロボット構造タイプについては ロボット構造のタイプ をご参照ください。
FANUC M-900iB/400L ロボットは 、SphericalWrist_SixAxis タイプで一般的な 6 軸産業用ロボットです。
DH パラメータ(dh、dhPassive)を確認する¶
ロボット構造のタイプ に記載されているロボット分類の内容を参照して対応するロボット構造タイプ図を見つけて、ロボット説明書を使用して [robot]_algo.jsonの dh 値を確認します。
FANUC M-900iB/400L の dh パラメータは、a=0.940,b=0.410,c=1.120,d=0.250,e=2.180,f=0.300です。
上図では、左は SphericalWrist_SixAxis ロボット構造タイプ図で、右は FANUC M-900iB/400L ロボット寸法図です。
ロボットの各軸のリミット(minlimits、maxlimits)を確認する¶
普通、ロボット説明書にはロボットの各軸の運動範囲が記載されますが、FANUC ロボットの場合、FANUC ロボットシミュレーションソフトウエア RoboGuide を起動してその情報を入手します。
その他のパラメータを確認する¶
一般的なロボットブランドに対し、すでに追加したロボットのデータを参照できます。参照になれるデータがなければ、現場ではエンジニアがロボット実機と合わせて以下のパラメータを確認する必要があります:mastering_joints、axis_flip、base_z_offset、axis_flip、mastering_joints。
注意
json パラメータファイルの句読点(コンマなど)は、英文にしなければなりません。
ロボットモデル作成後に、mastering_joints、axis_flip、base_z_offsetを ロボットシミュレーションソフトウエア と照合してください。
axis_flip は minlimits、maxlimits と連動するので必要に応じて一つの関節の上・下限数値の正負を反転して位置を交換します。
mastering_joints の最後の J6 はよく無視されます。これは オイラー角 に影響を与えるのでチェックしてください。
[robot]_profile.json パラメータファイルを編集する¶
[robot]_profile.json ファイルモデルは Mech-Viz インストールパスにある resource/robot/profile_example.json
に保存されます。ユーザーは、これに基づいて新たな [robot]_profile.json ファイルを作成することができます。
ヒント
[robot]_profile.json ファイルの各パラメータについての説明は [robot]_algo.json ファイルのパラメータ説明 をご参照ください。
このファイルは必須ではありません。
Solidworks を使用して完全な STL モデルを作成する¶
モデルを SolidWorks にインポートする¶
図に示すように、SolidWorks を使用して事前に作成したロボット CAD モデルを開きます。
上図では、左は 3D ソフトウエアで表示されたロボットモデルで、右は組立参考図です。
ヒント
ロボットモデルをダウンロードするとき、なるべくメーカーのホームページで予め組立済みの完全なモデルをダウンロードしてください。
完全なモデルでなく、パーツしか入手できない場合、パーツを組み立て、かつ dh パラメータを参照してチェックしてください。
モデルの読み込みの速度を上げるために、衝突検出に影響しないモデルのディテールを適当に削除します。
座標系を構築する¶
ロボット構造のタイプ を参照して各軸の座標系を構築します。
FANUC M-900iB/400L ロボットは SphericalWrist_SixAxis タイプなので、正しい姿勢は:1 軸は正、2 軸は垂直で上向き、3、4 軸は水平前向き、5 軸は下向きでなく前向きです。姿勢を確認してから全てのパーツを固定にすることを推奨します。
ロボットの各関節の STL モデルをエクスポートする¶
ロボットモデルをエクスポートする時、一つずつエクスポートするために、組み立て部品の中に他のパーツを非表示します。
导出时将文件另存为 stl 文件,输出为二进制,单位为米,文件名命名规则和各部分应选取的坐标系参考 ロボット構造のタイプ 。 其他导出选项设置请参考下图。
下図は、FANUC M-900iB/400L ロボットモデルを保存した後の完全な STL モデルファイルです。
これでロボットモデルの作成が完了します。
モデルファイルを Mech-Viz にインポートする¶
ロボットライブラリは Mech-Viz インストールパスにある resource/robot
フォルダに保存されます。同じブランドのロボットモデルファイルは、同じブランド名で名付けたフォルダに保存され、各ロボットのモデルファイルはそのブランドのフォルダの中に、ロボット名で名付けたフォルダに保存されます。
FANUC M900iB/400L ロボットを例に、そのモデルファイルは resource/robot/fanuc_m900ib_400l
で、ファイルの構造は下図のようです。
STL:モデルファイル
fanuc_m900ib_400l_algo.json:ロボット運動学パラメータファイル
fanuc_m900ib_400l_preview.png:ロボットの画像
fanuc_m900ib_400l_profile.json:ロボットパラメータファイル
注意
ロボットファイル名は、いずれも小文字にしてください。
STL、DAE、OBJ は、ロボットモデルファイルのフォーマットです。それぞれのフォルダに保存されます。
STL モデルは 3D モデル・衝突モデルとして使用できます。
DAE モデルは 3D モデルにしか使用できません。
OBJ モデルは衝突モデルにしか使用できません。
完全なモデルは、3D モデルと衝突モデルがすくなくともそれぞれ一つなければなりません。
全てのファイルを対応するパスに保存すればロボットモデルのインポートが完了です。インポートされたロボットを使用するには、Mech-Viz のロボットライブラリで選択することができます。