[robot]_algo.json ファイル属性

[robot]_algo.json はロボット設定ファイルであり、ロボットのプロパティの情報が記載されており、ロボットの種類や各リンクの DH パラメータ、各関節の運動の上・下限、各関節の初期位置、各関節の回転方向などを決めます。

以下は [robot]_algo.json ファイルのコードの一部です。

{
    "algo_type": "UR_UR5_Like",
    "robot_type": "UR_16E",
    "dh": [ A, B, D, G, F, H ],
    "shoulder_offset": C,
    "elbow_offset": E,
    "min_limits": [ J1 min, J2 min, J3 min, J4 min, J5 min, J6 min ],
    "max_limits": [ J1 max, J2 max, J3 max, J4 max, J5 max, J6 max ],
    "mastering_joints": [ J1, J2, J3, J4, J5, J6 ],     # Unnecessary
    "axis_flip": "J1J2J3J4J5J6"                         # Unnecessary
}
algo_type

ロボットの構造タイプです。Mech-Viz では、ロボットは 13 類に分類されています。各タイプの詳細情報は ロボット構造のタイプ にアクセスしてください。

robot_type

ロボッと名です。ロボットモデルフォルダ名と一致させる必要があります。一致しないとロボットモデルが見つからなくなります。

dh

ロボット関節の DH パラメータ

minlimits、maxlimits

minlimits、maxlimits は、それぞれロボット各軸の最大・最小運動範囲を表します。

FANUC、Nachi 以外のロボットは、説明書からその情報を入手できます。

ヒント

このパラメータは、各関節に作用し、上・下限を表します。Axis_flip と連動します。必要に応じて一つの関節の上・下限数値の正負を反転して位置を交換します。

mastering_joints

ロボットの各軸が 0 度になった位置を表します。各パラメータが 0 となると、ロボット各軸の0度位置は、モデル作成時の姿勢と一致します。KUKA などのロボットは、J2、J3 が 0 になった姿勢は Mech-Viz ではデフォルト姿勢ではないので、それぞれ mastering_joints パラメータを調整する必要があります。

axis_flip

各軸の回転方向を決めます。ロボットモデル作成後、Mech-Viz とロボットシミュレーションソフトウエアまたはロボット実機と合わせて各軸の回転方向が一致するかを確認します。一致しなければこのパラメータを調整してください。

ヒント

このパラメータは、ロボット関節の運動上・下限 minlimits、maxlimits、動的制限 link3_dynamic_limits、link4_dynamic_limits のパラメータに影響を与えます。

新しく作成したロボットモデルを使用するとき、ロボット実機で以下のパラメータを確認します。

axis_flip

Mech-Viz とロボット実機を照合して、各軸の回転方向が一致するかを確認します。

dh

以下の二つの方法で Mech-Viz の仮想ロボットとロボット実機の位置姿勢データが一致するかを確認します。

  • 関節角度を同期してエンドツールの位置姿勢を照合します。

  • エンドツールの位置姿勢を同期して関節角度を照合します。

ヒント

ロボット実機の DH パラメータがパラメータファイルの期待値に近いほど、ロボットの運動精度は高くなります。普通、1mm 以下の誤差は許容されます。

mastering_joints

Mech-Viz の仮想ロボットとロボット実機の位置姿勢データが一致するかを確認します。

ヒント

とくに、1、4、6 軸に注意深くチェックします。

min_limits/max_limit

Mech-Viz の仮想ロボットとロボット実機の位置姿勢データが一致するかを確認します。

ヒント

ソフトリミットがロボット実機のハードリミットを超えないようにしてください。