# 接続と初期化 ## コンストラクタ ```python URCtrl( robot_ip="10.170.10.56", arm_name="Arm", instance_name="Ctrl", logger=None, log_level=None, config=None, ) ``` `URCtrl` は初期化時に SDU Robotics `ur_rtde` の RTDEControl、RTDEReceive、RTDEIO を接続する。Dashboard は config で有効化した場合だけ接続する。 ## config 代表的な config 項目は次の通りである。 | 項目 | 意味 | |---|---| | `ROBOT_IP` / `UR_IP` | UR コントローラ IP | | `ROBOT_VAR_FILE` / `UR_VAR_FILE` | 仮想変数保存ファイル | | `UR_USE_DASHBOARD` | DashboardClient を使う | | `UR_MAX_LINEAR_SPEED` | 直線最大速度 | | `UR_MAX_LINEAR_ACCELERATION` | 直線最大加速度 | | `UR_MAX_JOINT_SPEED` | 関節最大速度 | | `UR_MAX_JOINT_ACCELERATION` | 関節最大加速度 | | `UR_DEFAULT_BLEND_RADIUS` | `@P` の blend 半径 | | `UR_ALLOW_RESTART_SAFETY` | safety restart を許可 | ## Dashboard `turn_on_motor()`、`turn_off_motor()`、`reset_error()` の一部は Dashboard を必要とする。 ```python class Config: ROBOT_IP = "10.170.10.56" UR_USE_DASHBOARD = True robot = URCtrl(config=Config) ``` Dashboard を使わない場合、これらの操作は False を返し、エラー情報に理由を記録する。 ## connect() ```python robot.connect() ``` SDU Robotics `ur_rtde` の `RTDEControlInterface`、`RTDEReceiveInterface`、`RTDEIOInterface` を接続する。 ## disconnect() ```python robot.disconnect() ``` 仮想変数を保存し、Dashboard、RTDEIO、RTDEReceive、RTDEControl の順で切断する。 ## with 文 ```python with URCtrl(ROBOT_IP) as robot: ... ``` `with` を使うと終了時に `disconnect()` される。