[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 ではデフォルト姿勢ではないので、それぞれ J2、J3 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 の仮想ロボットとロボット実機の位置姿勢データが一致するかを確認する

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