UR机器人RTDE(Real-Time Data Exchange,实时数据交换)

一、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_receive

rtde_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()
相关推荐
xwz小王子12 小时前
Science Robotics最新研究:检索增强操作(RAM)——让机器人真正理解“放在哪儿、怎么放”
机器人
爆打维c15 小时前
第3章 ROS基础编程(1.编程工具的配置与使用)
机器人
sheji10518 小时前
泳池机器人行业市场分析报告
人工智能·机器人·智能硬件
sheji10521 小时前
割草机器人实物拆解报告
人工智能·机器人·智能硬件
一RTOS一21 小时前
“鸿道+AUTBUS+MaVIEW”国产化机器人电子架构方案推动产业自主可控
机器人·鸿道操作系统·鸿道实时操作系统·国产嵌入式操作系统选型·具身智能操作系统
sheji10521 小时前
泳池机器人产品设计方案
人工智能·机器人·智能硬件
YJlio21 小时前
10.2.8 以其他账户运行服务(Running services in alternate accounts):为什么“把服务切到某个用户账号下运行”,本质上是在改变服务的整个安全上下文?
python·安全·ios·机器人·django·iphone·7-zip
xiaoduo AI1 天前
智能客服机器人能否实现多 LLM 自由切换?Agent 开放平台接入 DeepSeek、通义千问如何对比成本与效果?
大数据·人工智能·机器人
AI进化营-智能译站1 天前
ROS2 C++开发系列04:如何有效输出机器人状态
开发语言·c++·ai·机器人
AI进化营-智能译站1 天前
ROS2 C++开发系列05:机器人启动如何传递命令行参数实战
开发语言·c++·ai·机器人