Universal_Robots_ROS2_Driver实现UR机械臂仿真控制(3)-双臂驱动(节点图 ,IP架构,控制系统通信架构,Ethernet与EtherCAT

双臂机器人Moveit2轨迹规划

目录

1.节点图

2. 网络层通信 (IP)架构

ursim配置

3.控制系统通信架构

目前现有架构

新型架构

 Ethernet与EtherCAT对比

实时性

数据传输效率

网络拓扑

成本与复杂度

应用场景

可靠性与容错能力


1.节点图


2. 网络层通信 (IP)架构

这里使用Docker compose实现同时运行两个ursim容器,实现宿主机与双臂容器通信,具体通信架构看下图:

ursim配置

 


3.控制系统通信架构

本章节引用自知乎文章《通用机器人控制器ROS驱动包》,作者:韩冰

目前现有架构

目前市面上现有的多数机器人也支持ROS,方案上一般采用ROS与机器人控制器分离的方式,由控制器提供周期通信接口(如:ABB的egm、KUKA的RSI、UR的RTDE),PC机上运行ROS并安装基于控制器提供的通信接口封装的ROS驱动包,架构如下图所示:

 该方案虽然被多数商用机器人采用,但存在以下几方面问题:

(1)通信频率受限于机器人控制器提供的通信频率,如:ABB、KUKA最高250hz、URe系列最高500hz、franka最高1khz(存在丢包情况);

(2)PC机需要一定的实时性,难以保证与机器人控制器可靠的实时通信;

(3)不同品牌的机器人ROS驱动包配置、启动方式各不相同,不同品牌的多机扩展不便。

(4)商用机器人提供的周期通信接口的数据经过二次插补、平滑滤波等操作,机器人执行的数据与期望数据存在偏差,难以保证高频多轴数据同步。

由于商用机器人不允许用户对控制器二次开发,用户只能使用这种方式

新型架构

不同于上述方案,本系统将ROS驱动包下沉到机器人的控制器中,且利用通用机器人提供的开发接口封装,数据直接内存交互(共享内存),无需网络通信,充分保证ROS驱动包的实时性。

ROS驱动包与控制器一般都是一定频率下的同步通信,驱动包下沉后才能满足高频的同步通信需求。

以太网作为通用网络通信协议,难以满足高频通信的要求,而驱动包下沉控制器后,节点(进程)之间可以通过共享内存消息通信的方式实现快速通信。 

本系统采用ROS主从机的方式,机器人控制器作为ROS主机,运行ROS的实时节点;PC机作为ROS从机,运行ROS的非实时节点;ROS主从机之间采用用ROS topic实现便捷通信。由于本ROS驱动包与机器人控制系统深入融合,可实现1khz及以上通信频率的可靠驱动,且数据无二次处理,最大限度的保证期望数据的真实,可以实现高频多轴数据同步。

同时ROS实时节点运行于机器人控制器中采用内存通信,非实时节点运行于PC机中,即提高了ROS的通信实时性,又降低了PC机的实时性要求。另外借助通用机器人控制器的多机、多构型控制能力,在不改变ROS驱动及使用方式的情况下,可快速实现不同构型、不同数量机器人的控制。方案架构图如下:

 Ethernet与EtherCAT对比

以太网 (Ethernet):
是一种通用的网络通信协议,用于构建局域网 (LAN)。以太网主要用于企业、家庭网络和数据中心,支持设备间数据传输。

EtherCAT:
基于以太网的实时工业现场总线协议,由Beckhoff开发。它针对工业自动化场景进行了优化,适合高性能、低延迟的控制应用。

协议 以太网 (Ethernet) EtherCAT
实时性 一般 强实时性
效率 较低 高效
拓扑结构 星型、树型 线型、环型、树型
应用场景 普通网络 工业自动化
容错能力 一般 高容错性

实时性

  • 以太网:
    标准以太网协议(如TCP/IP)设计时更注重通用性,实时性能有限。数据帧会通过交换机或路由器转发,可能引入不可预测的延迟。

  • EtherCAT:
    具有极强的实时性。通过“主站-从站”模式,EtherCAT帧在一个循环中依次穿过从站设备,支持短周期时间(甚至小于100µs),非常适合需要高精度、实时控制的应用。

数据传输效率

  • 以太网:
    每个数据包都会有额外的开销(如TCP/IP头部),在小数据量传输中效率较低

  • EtherCAT:
    将数据直接嵌入一个连续的帧中,从站设备只处理属于自己的部分,大幅减少了协议开销和时间浪费,提升了效率。

网络拓扑

  • 以太网:
    通常使用星形或树形拓扑,设备通过交换机互联,复杂度和成本随节点数增加。

  • EtherCAT:
    支持多种拓扑结构,包括线型、环型和树型。线型拓扑是最常见的,布线简单,节点数多时仍然保持高性能。

成本与复杂度

  • 以太网:
    通用硬件(如标准网卡和交换机)即可部署,成本低,但缺乏实时控制功能。

  • EtherCAT:
    需要专用的控制器(主站)和支持EtherCAT协议的从站设备。设备成本较高,配置复杂度较大,但适合工业场景。

应用场景

  • 以太网:
    适用于普通数据传输场景,如办公网络、互联网接入、多媒体传输等。

  • EtherCAT:
    主要应用于工业自动化控制领域,如机器人控制、运动控制系统、数控机床等,需要高精度、低延迟的实时通信。

可靠性与容错能力

  • 以太网:
    依赖于交换机和路由器的可靠性,出现故障时可能影响网络部分或整体。

  • EtherCAT:
    提供内置诊断功能,环型拓扑还支持冗余模式,即使某一节点或链路出现问题,网络通信也能继续。