一、RTDE的基本概念
RTDE接口提供了一种通过标准TCP/IP将外部应用与UR控制器同步的方法,而不会破坏UR控制器的任何实时属性。它非常适合用于机器人I/O和绘制机器人状态(如机器人轨迹)等任务。默认情况下,RTDE接口在UR控制器运行时可用。
通过 RTDE,外部设备(如计算机)可以实时向 UR 机器人发送各种控制指令,比如运动指令(控制机器人关节运动速度、末端执行器在笛卡尔空间的运动速度等)、设置机器人的工作参数(如设置工具中心点 TCP 的位置和姿态等)。同时,机器人也能实时将自身的各种状态信息(如关节角度、关节速度、末端执行器的位置和姿态、作用在末端执行器上的力等)反馈给外部设备。这种实时的数据交换使得对机器人的控制更加精确,可以实现复杂而精细的操作任务,例如在精密装配任务中,能够准确控制机器人的动作以完成微小零件的组装。
获取传感器数据:
API Reference — ur_rtde 1.6.0 documentationhttps://sdurobotics.gitlab.io/ur_rtde/api/api.html#_CPPv4N7ur_rtde20RTDEReceiveInterface16getActualTCPPoseEv控制和接收数据类
import rtde_control
import rtde_receivertde_c = rtde_control.RTDEControlInterface("192.168.1.162")
rtde_r = rtde_receive.RTDEReceiveInterface("192.168.1.162")
配置环境
GitHub - UniversalRobots/RTDE_Python_Client_Library: RTDE client library and examplesRTDE client library and examples. Contribute to UniversalRobots/RTDE_Python_Client_Library development by creating an account on GitHub.https://github.com/UniversalRobots/RTDE_Python_Client_Library
验证安装
安装完成后,可以写一个简单的脚本来测试RTDE库是否正常工作。
import rtde.rtde as rtde
import rtde.rtde_config as rtde_config# 机器人的IP地址
ROBOT_HOST = '192.168.0.1'
# 与RTDE使用的端口号
ROBOT_PORT = 30004# 创建一个RTDE对象
con = rtde.RTDE(ROBOT_HOST, ROBOT_PORT)
# 连接到机器人
con.connect()# 检查连接是否成功
if not con.isConnected():print("无法连接到机器人")exit()# 获取并打印一些信息,例如机器人的当前状态
print("机器人当前状态:", con.receive())# 断开连接
con.disconnect()
UR-RTDE(python)学习笔记:一、简介与设置WIndows开发环境-CSDN博客文章浏览阅读1.5k次,点赞5次,收藏21次。RTDE (Real-Time Data Exchange) 是一个用于机器人控制和数据交换的协议,它通常与UR (Universal Robots) 机器人关联。RTDE 允许开发者在实时环境中安全地与UR机器人的控制器交换数据,这种数据交换支持高频率的更新,非常适合需要高实时性的工业应用。通过RTDE,开发者可以发送指令和接收机器人状态信息,比如关节位置、工具坐标、速度设定等数据。这对于开发复杂的自动化任务和提高机器人应用的灵活性非常有帮助。_rtdehttps://blog.csdn.net/m0_73725906/article/details/137525672
rtde_c = rtde_control.RTDEControlInterface("192.168.100.2")
rtde_r = rtde_receive.RTDEReceiveInterface("192.168.100.2")TCP_Pose = rtde_r.getActualTCPPose()
Actual_Q = rtde_r.getActualQ()rtde_c.stopScript()