API 레퍼런스
래퍼 모듈
- class ur_rtde_api.UR_RTDE(HOST: str = '192.168.1.7', FREQUENCY_HZ: float = 25.0, FIELD: Sequence[str] | None = None, *, TIMEOUT: float = 2.0, PROTOCOL_VERSION: int = 2, READBACK_WRITES: bool = True)[source]
Bases:
URRobotVery small user-facing RTDE API.
Example
robot = UR_RTDE(HOST=DEFAULT_HOST, FREQUENCY_HZ=25, FIELD=[“time”, “q”, “tcp”, “gp.int.0”]) robot.start() print(robot[“q”]) robot[“gp.int.0”] = 33 robot.stop() robot.close()
Notes
FIELD contains both readable fields and writable GP input fields.
gp.int.0 -> input_int_register_24
gp.double.0 -> input_double_register_24
gp.bit.0 -> input_bit_register_64
Direct UR numbering also works, for example gp.int.24 and gp.bit.64.
- class ur_rtde_api.URRobot(host: str = '192.168.1.7', *, frequency_hz: float = 25.0, fields: Sequence[str] | None = None, writes: Sequence[str] | None = None, timeout: float = 2.0, protocol_version: int = 2, readback_writes: bool = True)[source]
Bases:
objectSmall RTDE core focused on frequency, fields, and writable areas.
- configure(*, frequency_hz: float | None = None, fields: Sequence[str] | None = None, writes: Sequence[str] | None = None) None[source]
- property frame: RobotFrame
- latest_frame() RobotFrame[source]
- set_speed_slider(fraction: float, *, settle_s: float = 0.1, release_mask: bool = True) float[source]
- tcp_pose(mode: str = 'rotvec_rad') Tuple[float, float, float, float, float, float][source]
Return TCP pose converted for display.
- mode:
“rotvec_rad”: [x_mm, y_mm, z_mm, rx, ry, rz]
“rotvec_deg”: [x_mm, y_mm, z_mm, rx_deg, ry_deg, rz_deg]
“rpy_rad”: [x_mm, y_mm, z_mm, roll, pitch, yaw]
“rpy_deg”: [x_mm, y_mm, z_mm, roll_deg, pitch_deg, yaw_deg]
- wait_next_frame(*, last_frame_index: int | None = None, timeout: float | None = None) RobotFrame[source]
- async wait_next_frame_async(*, last_frame_index: int | None = None, timeout: float | None = None) RobotFrame[source]
- wait_ready(timeout: float | None = None) RobotFrame[source]
- async wait_ready_async(timeout: float | None = None) RobotFrame[source]
코어 RTDE 모듈
- class backend.ur_robot.RobotFrame(values: 'Dict[str, Any]', frame_index: 'int', robot_timestamp_s: 'Optional[float]', received_monotonic_s: 'float', received_wall_time_s: 'float', source_frequency_hz: 'float')[source]
Bases:
object
- class backend.ur_robot.URRobot(host: str = '192.168.1.7', *, frequency_hz: float = 25.0, fields: Sequence[str] | None = None, writes: Sequence[str] | None = None, timeout: float = 2.0, protocol_version: int = 2, readback_writes: bool = True)[source]
Bases:
objectSmall RTDE core focused on frequency, fields, and writable areas.
- property frame: RobotFrame
- configure(*, frequency_hz: float | None = None, fields: Sequence[str] | None = None, writes: Sequence[str] | None = None) None[source]
- wait_ready(timeout: float | None = None) RobotFrame[source]
- async wait_ready_async(timeout: float | None = None) RobotFrame[source]
- wait_next_frame(*, last_frame_index: int | None = None, timeout: float | None = None) RobotFrame[source]
- async wait_next_frame_async(*, last_frame_index: int | None = None, timeout: float | None = None) RobotFrame[source]
- latest_frame() RobotFrame[source]
- set_speed_slider(fraction: float, *, settle_s: float = 0.1, release_mask: bool = True) float[source]
- tcp_pose(mode: str = 'rotvec_rad') Tuple[float, float, float, float, float, float][source]
Return TCP pose converted for display.
- mode:
“rotvec_rad”: [x_mm, y_mm, z_mm, rx, ry, rz]
“rotvec_deg”: [x_mm, y_mm, z_mm, rx_deg, ry_deg, rz_deg]
“rpy_rad”: [x_mm, y_mm, z_mm, roll, pitch, yaw]
“rpy_deg”: [x_mm, y_mm, z_mm, roll_deg, pitch_deg, yaw_deg]
- class backend.ur_robot.UR_RTDE(HOST: str = '192.168.1.7', FREQUENCY_HZ: float = 25.0, FIELD: Sequence[str] | None = None, *, TIMEOUT: float = 2.0, PROTOCOL_VERSION: int = 2, READBACK_WRITES: bool = True)[source]
Bases:
URRobotVery small user-facing RTDE API.
Example
robot = UR_RTDE(HOST=DEFAULT_HOST, FREQUENCY_HZ=25, FIELD=[“time”, “q”, “tcp”, “gp.int.0”]) robot.start() print(robot[“q”]) robot[“gp.int.0”] = 33 robot.stop() robot.close()
Notes
FIELD contains both readable fields and writable GP input fields.
gp.int.0 -> input_int_register_24
gp.double.0 -> input_double_register_24
gp.bit.0 -> input_bit_register_64
Direct UR numbering also works, for example gp.int.24 and gp.bit.64.