赞
踩
单轴的运动控制系统可分为开环、半闭环和闭环伺服系统。
多轴运动控制系统可以分成点位控制、连续轨迹控制和同步控制。
典型的运动控制系统,从结构上看,包括上位机控制窗口、运动控制器、驱动器、电机以及测量反馈系统等几个部分组成:
1.2 实时以太网
实时以太网(RTE, Real Time Ethernet)是常规以太网技术的延伸,以便满足工业控制领域的实时性数据通信要求。目前,国际上有多种实时工业以太网协议,根据不同的实时性和成本的要求使用不同的原理,大致可以分为以下三类:
(1)基于TCP/IP实现的工业以太网仍使用TCP/IP协议栈,通过上层合理的控制来解决通信过程中的不确定因素。这种方式具有较高的传输速率,适应于大量数据通信,更适合作为网关和交换设备的应用,不能实现很好的实时性。常用的通信控制方法有:合理调度,减少冲突的概率;定义帧数据的优先级,为实时数据分配最高优先级;使用交换式以太网等。使用这种方式的典型协议有Modbus/TCP和Ethernet/IP等。
(2)基于以太网实现的工业以太网仍然使用标准的、未修改的以太网通信硬件,但是不适用TCP/IP来传输数据。它使用特定的报文进行传输。TCP/IP协议栈能使用时间控制层分发一定的时间片来利用网络资源。该类协议主要有Ethernet Powerlink, EPA C Ethernet for Plant Automation ), PROFINET IRT等。通过这种方式可以实现较好的实时性。
(3)通过修改以太网协议实现的工业以太网,实现应答时间小于lms的硬实时,从站使用特定的硬件实现。由实时MAC控制实时通道内的通信,从根本上避免报文间的冲突。非实时数据依然能在通道中按原协议通信。典型协议有德国倍福的EtherCAT、西门子的PROFINET IRT等。
1.3 EtherCAT
德国BECKHOFF自动化公司于2003年开发出的EtherCAT实时以太网技术突破了其他以太网解决方案的系统限制:通过该项技术,无需接受以太网数据包,将之解码,然后再将过程数据复制到各个设备。
EtherCAT作为一种工业以太网总线,充分利用了以太网的全双工特性。使用主从通信模式,主站发送报文给从站,从站从中读取数据或将数据插入至从站。
主站可使用标准网卡实现,
从站选用特定的EtherCAT从站控制器ESC(EtherCAT Slave Controller)或者FPGA实现,
主要完成通信和控制应用两部分功能,EtherCAT物理层选用标准以太网物理层器件。
从站能将收到的报文直接处理,并读取或插入有关的数据,再将报文发送给下一个EtherCAT从站。最末尾的EtherCAT从站返回处理完全的报文,然后由第一个从站发送给主站。整个通信过程充运行于全双工模式下,TX线发出的报文又通过RX线返回给主站:
2.1 实时性
数据包刷新时间的计算
数据包中所有从站的 Process Datarocess Datarocess Data rocess Data rocess Data rocess Datarocess Data数据 决定了数据包的长度。
一个Ethernet thernet数据包最小84 字节,不足 84 字节会补齐84 字节。由于EtherCAT Frame中有一些公共开销, 84 字节的数据包最多含18字节的过程数据。考虑到数据包必须经过每个从站两次才能回到主站,所数据包以固定的波特率100 Mbps在网络上传输两次的时间 这就是它的总线刷新时间 。
1.基于这个原则,以包含 1000路开关量信号的数据包为例,计算过程如下:
过程数据长度:1000/8=125Bytes
数据包长度:84-18+125=191Bytes=191*8 Bit= 1528 Bit
总线刷新时间:(1528Bit/100,000,000 Bps)*2=15.28us * 2 = 30.56us
注意,通常的数字量模块, 都是单纯的输出或者输入模块,而不是混合模块。所以 1000 个数字 量信号, Frame 中就会分配 125 字节。
2.再以包含100个EtherCAT伺服驱动器过程数据的EtherCAT数据包为例,假如每个伺服的过程数据只包括控制字(2字节)、状态字(2字节)、目标位置(4字节)、实际位置(4字节),其总线刷新时间的计算过程如下:
过程数据长度:100*(2+4)=600 Byte。
数据包长度:84-18+600=1266 Byte =671*8 Bit =5328 Bit
总线刷新时间:(5328 Bit/100,000,000 Bps) *2=100.656µs
1
2
3
注意,Frame中只为一个伺服分配了6个字节,这是因为根据Beckhoff公司的控制软件TwinCAT中关于EtherCAT的默认设置是从站的Input和Output使用同一数据段,所以数据包进入伺服驱动器时该数据段存放的是控制字和目标位置,而出来时则存放伺服的状态字和实际位置。
以上两个数据30.56µs和101.28 µs就是EtherCAT官方宣传资料中,刷新1000个数字量需要30µs,刷新100个伺服轴只需要100µs的数据由来。实际上,根据从站的类型、是否包含分布时钟、是否启用时钟同步、时钟同步的参数设置不同,在数据包中有可能还会增加8-12字节用于传输同步时钟值,以及相应的为每个从站增加一个Bit的标记等等,会增加几个微秒的刷新时间,暂且忽略不计。
以上计算只是数据包传输需要的理论时间,实际上,数据包经过每个从站会产生短暂的硬件延时。100M超五类网线接口的从站延时约1µs,而EBus的IO模块类从站延时约0.3µs,在毫秒级以下的控制任务中如果从站数量较多,这个时间也相当可观,计算刷新周期时应该考虑进去。
2.2 端口管理
一个从站控制器最多可以有4个端口,如果一个端口关闭了,控制器主动连接下一个端口。端口可以随着EtherCAT命令主动的打开或者关闭。逻辑端口设置决定了EtherCAT帧的处理和发送顺序。
2.3 EtherCAT网络拓扑
所有数据帧在网络中以一种“逻辑闭环”的方式传播,与网络的硬件拓朴无关,无论它是链式、菊花链、星形还是树形拓朴。
所有数据帧都由Master发出,以事前严格定义的顺序,依次经过网络上的所有从站,走过一个完整的闭环后回到Master 。
所有数据帧通过从站中的 EtherCAT Processing Unit (EtherCAT处理单元)只有 1 次。
线型拓扑:
任意数目的设备成线型连接
最多65535个设备
数据处理链型拓扑
带有分支线的数据处理链型拓扑
树型拓扑:
实时星型拓扑:
冗余线缆
选择冗余电缆可以满足快速增长的系统可靠性需求,以保证设备更换时不会导致网络瘫痪。您可以很经济地增加冗余特性,仅需在主站设备端增加使用一个标准的以太网端口(无需专用网卡或接口),并将单一的电缆从总线型拓扑结构转变为环型拓扑结构即可(见图7)。当设备或电缆发生故障时,也仅需一个周期即可完成切换。因此,即使是针对运动控制要求的应用,电缆出现故障时也不会有任何问题。
EtherCAT也支持热备份的主站冗余。由于在环路中断时EtherCAT从站控制器芯片将立刻自动返回数据帧,一个设备的失败不会导致整个网络的瘫痪。例如,拖链设备可以配置为分支拓扑以防线缆断开。
2.4 EtherCAT网络协议栈
CoE(Can over EtherCAT)
PDO(Process Data Object 过程数据对象)
SDO(Service Data Object 服务数据对象)
PDI(Process Data Interface 过程数据接口)(uC, SSI, I/O)
1
2
3
4
ESM(EtherCAT State Machine)
ESI(EtherCAT Slave Information) (XML device description)
ENI(EtherCAT Network Information)
CTT(Conformance Test Tool 一致性测试工具)
SM(SyncManagers 同步管理器)
MDP(modular device description 模块化设备描述 )
1
2
3
4
5
6
2.5 EtherCAT数据帧格式
EtherCAT数据直接嵌入在以太网数据帧中进行传输,只是采用了一种特殊的帧类型,该类型为Ox88A4, EtherCAT数据帧结构如图所示:
EtherCAT数据包由数据头和数据实体两部分组成,EtherCAT数据头包含2个字节,每个数据包里面可以只包含一个EtherCAT子报文,也可以包含多个子报文;一个EtherCAT子报文对应着一个从站,因此一个EtherCAT数据包可以操作
多个EtherCAT从站,相应的数据长度在44-1498字节之间,EtherCAT数据帧结构定义:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。