# 単位と座標表現 ## 公開単位 `URCtrl` の公開単位は、研究者が実験スクリプトで扱いやすい形に統一する。 | 種類 | 表現 | 単位 | |---|---|---| | P 座標 | `[x, y, z, rx, ry, rz]` | mm, degree | | J 座標 | `[j1, j2, j3, j4, j5, j6]` | degree | | speed | `0 < value <= 100` | % | | jspeed | `0 < value <= 100` | % | | accel | `0 < value <= 100` | % | | decel | `0 < value <= 100` | % | | `move_path()` の blend | float | m | ## UR 内部単位 UR RTDE は m / rad を使う。`URCtrl` は公開 I/F と RTDE の境界で変換する。 ```text 公開 I/F mm / degree / % ↓ URCtrl ↓ RTDE m / rad / SI ``` ## P 座標 P 座標は次の 6 成分である。 ```python [x, y, z, rx, ry, rz] ``` `x, y, z` は mm である。 `rx, ry, rz` は degree 表記の rotation vector である。 ## rotation vector UR の姿勢は Euler 角ではない。 `rx, ry, rz` は rotation vector である。これは回転軸に回転角を掛けた 3 成分である。 `URCtrl` では、rotation vector の各成分を degree 表記して公開する。これは Roll / Pitch / Yaw の degree ではない。 ## J 座標 J 座標は 6 軸関節角である。 ```python [j1, j2, j3, j4, j5, j6] ``` 公開単位は degree である。 ## speed / accel `speed`、`jspeed`、`accel`、`decel` はすべて百分率である。 内部では次のように実速度へ変換する。 ```text linear speed = UR_MAX_LINEAR_SPEED * speed / 100 joint speed = UR_MAX_JOINT_SPEED * jspeed / 100 linear accel = UR_MAX_LINEAR_ACCELERATION * accel / 100 joint accel = UR_MAX_JOINT_ACCELERATION * accel / 100 ``` ## デフォルト値 | 設定 | デフォルト | |---|---:| | `UR_MAX_LINEAR_SPEED` | 0.25 m/s | | `UR_MAX_LINEAR_ACCELERATION` | 1.2 m/s² | | `UR_MAX_JOINT_SPEED` | 1.05 rad/s | | `UR_MAX_JOINT_ACCELERATION` | 1.4 rad/s² | | `UR_DEFAULT_BLEND_RADIUS` | 0.005 m | config で上書きできる。