[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 V1.6.0では、ロボットは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の仮想ロボットとロボット実機の位置姿勢データが一致するかを確認します。

    ヒント

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