2.1 EtherCAT概述
EtherCAT为基于EtherNet的可实现实时控制的开放式网络。EtherCAT系统可扩展至65535个从站规模,由于具有非常短的循环周期和高同步性能,EtherCAT非常适合用于伺服运动控制系统中。在EtherCAT从站控制器中使用的分布式时钟能确保高同步性和同时性,其同步性能对于多轴系统来说至关重要,同步性使内部的控制环可按照需要的精度和循环数据保持同步。将EtherCAT应用于伺服驱动器不仅有助于整个系统实时性能的提升,同时还有利于实现远程维护、监控、诊断与管理,使系统的可靠性大大增强。
EtherCAT作为国际工业以太网总线标准之一,其研究和应用越来越被重视。工业以太网EtherCAT技术广泛应用于机床、注塑机、包装机及机器人等高速运动应用场合,以及物流、高速数据采集等分布范围广控制要求高的场合。很多厂商如三洋、松下、库卡等公司的伺服系统都具有EtherCAT总线接口。三洋公司应用EtherCAT技术对三轴伺服系统进行同步控制。在机器人控制领域,EtherCAT技术作为通信系统具有高实时性能的优势。2010 年以来,库卡一直采用EtherCAT技术作为库卡机器人控制系统中的通信总线。
国外很多厂商针对EtherCAT已经开发出了比较成熟的产品,例如NI、松下、库卡等公司都推出了一系列支持EtherCAT的驱动设备。国内的EtherCAT技术研究也取得了较大的进步,基于ARM架构的嵌入式EtherCAT从站控制器的研究开发也日渐成熟。
随着我国科学技术的不断发展和工业水平的不断提高,在工业自动化控制领域,用户对高精尖制造的需求也在不断提高。特别是我国的国防工业,航天航空领域以及核工业等的制造领域中,对高效率、高实时性的工业控制以太网系统的需求也与日俱增。
电力工业迅速发展,电力系统的规模不断扩大,系统的运行方式越来越复杂,对自动化水平的要求越来越高,从而推动了电力系统自动化技术的不断发展。
电力系统自动化技术特别是变电站综合自动化是在计算机技术和网络通信技术的基础上发展起来的。而随着半导体技术、通信技术及计算机技术的发展,硬件集成越来越高,性能得到大幅提升,功能越来越强,为电力系统自动化技术的发展提供了条件。特别是光电电流和电压互感器(OCT、OVT)技术的成熟,插接式开关系统(PASS)的逐渐应用,电力自动化系统中出现大量的与控制、监视和保护功能相关的智能电子设备(IED),智能电子设备之间一般是通过现场总线或工业以太网进行数据交换。这使得现场总线和工业以太网技术在电力系统中的应用成为热点之一。
在电力系统中随着光电式互感器的逐步应用,大量的高密度的实时采样值信息会从过程层的光电式互感器向间隔层的监控、保护等二次设备传输。当采样频率达到千赫级,数据传送速度将达到10Mbit/s以上,一般的现场总线较难满足要求。
实时以太网EtherCAT具有高速的信息处理与传输能力,不但能满足高精度实时采样数据的实时处理与传输要求,提高系统的稳定性与可靠性,更有利于电力系统的经济运行。
EtherCAT工业以太网的主要特点如下。
1)完全符合以太网标准。普通以太网相关的技术都可以应用于EtherCAT 网络中。Eth-erCAT设备可以与其他的以太网设备共存于同一网络中。普通的以太网卡、交换机和路由器等标准组件都可以在EtherCAT中使用。
2)支持多种拓扑结构。如线形、星形及树形。可以使用普通以太网使用的电缆或光缆。当使用100Base-TX电缆时,两个设备之间的通信距离可达100m。当采用100BASE-FX模式,两对光纤在全双工模式下,单模光纤能够达到40km的传输距离,多模光纤能够达到2km的传输距离。EtherCAT还能够使用低压差分信号LVDS(LowVoltageDifferentialSigna-ling)线来低延时地通信,通信距离能够达到10m。
3)广泛的适用性。任何带有普通以太网控制器的设备都有条件作为EtherCAT主站,比如嵌入式系统、普通的PC和控制板卡等。
4)高效率、刷新周期短。EtherCAT从站对数据帧的读取、解析和过程数据的提取与插入完全由硬件来实现,这使得数据帧的处理不受CPU的性能软件的实现方式影响,时间延迟极小,实时性很高。同时EtherCAT可以达到小于100μs的数据刷新周期。EtherCAT以太网帧中能够压缩大量的设备数据,这使得EtherCAT网络有效数据率可达到90%以上。据官方测试1000个硬件I/O更新时间仅仅30μs,其中还包括I/O周期时间。而容纳1486个字节(相当于12000个I/O)的单个以太网帧的通信时间仅仅300μs。
5)同步性能好。EtherCAT采用高分辨率的分布式时钟使各从站节点间的同步精度能够远小于1μs。
6)无从属子网。复杂的节点或只有n位的数字I/O都能被用作EtherCAT从站。
7)拥有多种应用层协议接口来支持多种工业设备行规。如COE(CANopenoverEther-CAT)用来支持CANopen协议;SoE(SERCOEoverEtherCAT)用来支持SERCOE 协议;EOE(EtherNetoverEtherCAT)用来支持普通的以太网协议;FOE(FileoverEtherCAT)用于上传和下载固件程序或文件;AOE(ADSoverEtherCAT)用于主从站之间非周期的数据访问服务。对多种行规的支持使得用户和设备制造商很容易从其他现场总线向EtherCAT转换。
快速以太网全双工通信技术构成主从式的环形结构,如图2-1所示。
图2-1 快速以太网全双工通信技术构成主从式的环形结构
这个过程利用了以太网设备独立处理双向传输(TX 和RX)的特点,并运行在全双工模式下,发出的报文又通过RX线返回到控制单元。
报文经过从站节点时,从站识别出相关的命令并做出相应的处理。信息的处理在硬件中完成,延迟时间约为100~500ns,这取决于物理层器件,通信性能独立于从站设备控制微处理器的响应时间。每个从站设备有最大容量为64KB的可编址内存,可完成连续的或同步的读写操作。多个EtherCAT命令数据可以被嵌入到一个以太网报文中,每个数据对应独立的设备或内存区。
从站设备可以构成多种形式的分支结构,独立的设备分支可以放置于控制柜中或机器模块中,再用主线连接这些分支结构。
2.1.1 EtherCAT物理拓扑结构
EtherCAT采用了标准的以太网帧结构,几乎所有标准以太网的拓扑结构都是适用的,也就是说可以使用传统的基于交换机的星形结构,但是EtherCAT的布线方式更为灵活,由于其主从的结构方式,无论多少节点都可以用一条线串接起来,无论是菊花链型还是树形拓扑结构,可任意选配组合。布线也更为简单,布线只需要遵从EtherCAT的所有的数据帧都会从第一个从站设备转发到后面连接的节点。数据传输到最后一个从站设备又逆序将数据帧发送回主站。这样的数据帧处理机制允许在EtherCAT同一网段内,只要不打断逻辑环路都可以用一根网线串接起来,从而使得设备连接布线非常方便。
传输电缆的选择同样灵活。与其他的现场总线不同的是,不需要采用专用的电缆连接头,对于EtherCAT的电缆选择,可以选择经济而低廉的标准超五类以太网电缆,采用100BASE-TX模式无交叉地传送信号,并且可以通过交换机或集线器等实现不同的光纤和铜电缆以太网连线的完整组合。
在逻辑上,EtherCAT网段内从站设备的布置构成一个开口的环形总线。在开口的一端,主站设备直接或通过标准以太网交换机插入以太网数据帧,并在另一端接收经过处理的数据帧。所有的数据帧都被从第一个从站设备转发到后续的节点。最后一个从站设备将数据帧返回到主站。
EtherCAT从站的数据帧处理机制允许在EtherCAT网段内的任一位置使用分支结构,同时不打破逻辑环路。分支结构可以构成各种物理拓扑以及各种拓扑结构的组合,从而使设备连接布线非常灵活方便。
2.1.2 EtherCAT数据链路层
1.EtherCAT数据帧
EtherCAT数据是遵从IEEE802.3标准,直接使用标准的以太网帧数据格式传输,不过EtherCAT数据帧是使用以太网帧的保留字0x88A4。EtherCAT数据报文是由两个字节的数据头和44~1498字节的数据组成,一个数据报文可以由一个或者多个EtherCAT子报文组成,每一个子报文映射到独立的从站设备存储空间。
2.寻址方式
EtherCAT的通信由主站发送EtherCAT数据帧读写从站设备内部的存储区来实现,也就是从站存储区中读数据和写数据。在通信的时候,主站首先根据以太网数据帧头中的MAC地址来寻址所在的网段,寻址到第一个从站后,网段内的其他从站设备只需要依据Ether-CAT子报文头中的32地址去寻址。在一个网段里面,EtherCAT支持使用两种方式:设备寻址和逻辑寻址。
3.通信模式
EtherCAT的通信方式分为周期性过程数据通信和非周期性邮箱数据通信。
(1) 周期性过程数据通信
周期性过程数据通信主要用在工业自动化环境中实时性要求高的过程数据传输场合。周期性过程数据通信时,需要使用逻辑寻址,主站是使用逻辑寻址的方式完成从站的读/写或者读写操作。
(2)非周期性邮箱数据通信
非周期性过程数据通信主要用在对实时性要求不高的数据传输场合,在参数交换、配置从站的通信等操作时,可以使用非周期性邮箱数据通信,并且还可以双向通信。在从站到从站通信时,主站是作为类似路由器功能来管理。
4.存储同步管理器SM
存储同步管理SM是ESC用来保证主站与本地应用程序数据交换的一致性和安全性的工具,其实现的机制是在数据状态改变时产生中断信号来通知对方。EtherCAT定义了两种同步管理器(SM)运行模式:缓存模式和邮箱模式。
(1)缓存模式
缓存模式使用了是三个缓存区,允许EtherCAT主站的控制权和从站控制器双方在任何时候都访问数据交换缓存区。接收数据的那一方随时可以得到最新的数据,数据发送那一方也随时可以更新缓存区里的内容。假如写缓存区的速度比读缓存区的速度快,则旧数据就会被覆盖。
(2)邮箱模式
邮箱模式通过握手的机制完成数据交换,这种情况下只有一端完成读或写数据操作后,另一端才能访问该缓存区,这样数据就不会丢失。数据发送方首先将数据写入缓存区,接着缓存区被锁定为只读状态,一直等到数据接收方将数据读走。这种模式通常用在非周期性的数据交换,分配的缓存区也叫作邮箱。邮箱模式通信通常是使用两个SM通道,一般情况下主站到从站通信使用SM0,从站到主站通信使用SM1,他们被配置成为一个缓存区方式,使用握手来避免数据溢出。
2.1.3 EtherCAT应用层
应用层AL(ApplicationLayer)是EtherCAT协议最高的一个功能层,是直接面向控制任务的一层,它为控制程序访问网络环境提供手段,同时为控制程序提供服务。应用层不包括控制程序,它只是定义了控制程序和网络交互的接口,使符合此应用层协议的各种应用程序可以协同工作,EtherCAT协议结构如图2-2所示。
图2-2EtherCAT协议结构
1.通信模型
EtherCAT应用层区分主站与从站,主站与从站之间的通信关系是由主站开始的。从站之间的通信是由主站作为路由器来实现的。不支持两个主站之间的通信,但是两个具有主站功能的设备并且其中一个具有从站功能时仍可实现通信。
EtherCAT通信网络仅由一个主站设备和至少一个从站设备组成。系统中的所有设备必须支持EtherCAT状态机和过程数据(ProcessData)的传输。
2.从站
(1)从站设备分类
从站应用层可分为不带应用层处理器的简单设备与带应用层处理器的复杂设备。
(2) 简单从站设备
简单从站设备设置了一个过程数据布局,通过设备配置文件来描述。在本地应用中,简单从站设备要支持无响应的ESM应用层管理服务。
(3)复杂从站设备
复杂从站设备支持EtherCAT邮箱、COE目标字典、读写对象字典数据入口的加速SDO服务以及读对象字典中已定义的对象和紧凑格式入口描述的SDO信息服务。
为了过程数据的传输,复杂从站设备支持PDO映射对象和同步管理器PDO 赋值对象。复杂从站设备要支持可配置过程数据,可通过写PDO映射对象和同步管理器PDO赋值对象来配置。
(4)应用层管理
应用层管理包括EtherCAT状态机,ESM描述了从站应用的状态及状态变化。由应用层控制器将从站应用的状态写入AL状态寄存器,主站通过写AL 控制寄存器进行状态请求。从逻辑上来说,ESM位于EtherCAT从站控制器与应用之间。ESM定义了四种状态:初始化状态(Init)、预运行状态(Pre-Operational)、安全运行状态(Safe-Operational)、运行状态(Operational)。
(5)EtherCAT邮箱
每一个复杂从站设备都有EtherCAT邮箱。EtherCAT邮箱数据传输是双向的,可以从主站到从站,也可以从站到主站。支持双向多协议的全双工独立通信。从站与从站通信通过主站进行信息路由。
(6)EtherCAT过程数据
过程数据通信方式下,主从站访问的是缓冲型应用存储器。对于复杂从站设备,过程数据的内容将由CoE接口的PDO映射及同步管理器PDO赋值对象来描述。对于简单从站设备,过程数据是固有的,在设备描述文件中定义。
3.主站
主站各种服务与从站进行通信。在主站中为每个从站设置了从站处理机(SlaveHan-dler),用来控制从站的状态机(ESM);同时每个主站也设置了一个路由器,支持从站与从站之间的邮箱通信。
主站支持从站处理机通过EtherCAT状态服务来控制从站的状态机,从站处理机是从站状态机在主站中的映射。从站处理机通过发送SDO服务去改变从站状态机状态。
路由器将客户从站的邮箱服务请求路由到服务从站;同时,将服务从站的服务响应路由到客户从站。
4.EtherCAT设备行规
EtherCAT设备行规包括以下几种。
(1)CANopenoverEtherCAT(CoE)
CANopen最初是为基于CAN(ControlAeraNetwork)总线的系统所制定的应用层协议。EtherCAT协议在应用层支持CANopen协议,并做了相应的扩充,其主要功能如下。
① 使用邮箱通信访问CANopen对象字典及其对象,实现网络初始化。
② 使用CANopen应急对象和可选的事件驱动PDO消息,实现网络管理。
③ 使用对象字典映射过程数据,周期性传输指令数据和状态数据。
CoE协议完全遵从CANopen协议,其对象字典的定义也相同,针对EtherCAT通信扩展了相关通信对象0x1C00~0x1C4F,用于设置存储同步管理器的类型、通信参数和PDO数据分配。
1)应用层行规
CoE完全遵从CANopen的应用层行规,CANopen标准应用层行规主要如下。
①CiA401I/O模块行规。
②CiA402伺服和运动控制行规。
③CiA403人机接口行规。
④CiA404测量设备和闭环控制。
⑤CiA406编码器。
⑥CiA408比例液压阀等。
2)CiA402行规通用数据对象字典
数据对象0x6000~0x9FFF为CANopen行规定义数据对象,一个从站最多控制8个伺服驱动器,每个驱动器分配0x800个数据对象。第一个伺服驱动器使用0x6000~0x67FF的数据字典范围,后续伺服驱动器在此基础上以0x800偏移使用数据字典。
(2)ServoDriveoverEtherCAT(SoE)
IEC 61491是国际上第一个专门用于伺服驱动器控制的实时数据通信协议标准,其商业名称为SERCOS(SerialReal-timeCommunicationSpecification)。EtherCAT协议的通信性能非常适合数字伺服驱动器的控制,应用层使用SERCOS应用层协议实现数据接口,可以实现以下功能。
① 使用邮箱通信访问伺服控制规范参数(IDN),配置伺服系统参数。
② 使用SERCOS数据电报格式配置EtherCAT过程数据报文,周期性传输伺服指令数据和伺服状态数据。
(3)EtherNetoverEtherCAT(EoE)
除了前面描述的主从站设备之间的通信寻址模式外,EtherCAT也支持IP标准的协议,比如TCP/IP、UDP/IP和所有其他高层协议(HTTP和FTP等)。EtherCAT能分段传输标准以太网协议数据帧,这种方法可以避免为长数据帧预留时间片,大大缩短周期性数据的通信周期。此时,主站和从站需要相应的EoE驱动程序支持。
(4)FileAccessoverEtherCAT(FoE)
该协议通过EtherCAT下载和上传固定程序和其他文件,其使用类似TFTP(TrivialFileTransferProtocol,简单文件传输协议),不需要TCP/IP的支持,实现简单。
2.1.4 EtherCAT系统组成
1.EtherCAT网络架构
EtherCAT网络是主从站结构网络,网段中可以有一个主站和一个或者多个从站组成。主站是网络的控制中心,也是通信的发起者。一个EtherCAT网段可以被简化为一个独立的以太网设备,从站可以直接处理接收的报文,并从报文中提取或者插入相关数据。然后将报文依次传输到下一个EtherCAT从站,最后一个EtherCAT从站返回经过完全处理的报文,依次地逆序传递回第一个从站并且最后发送给控制单元。整个过程充分利用了以太网设备全双工双向传输的特点。如果所有从设备需要接收相同的数据,那么只需要发送一个短数据包,所有从设备接收数据包的同一部分便可获得该数据,刷新12000个数字输入和输出的数据耗时仅为300μs。对于非EtherCAT的网络,需要发送50个不同的数据包,充分体现了Ether-CAT的高实时性,所有数据链路层数据都是由从站控制器的硬件来处理,EtherCAT的周期时间短,是因为从站的微处理器不需处理EtherCAT以太网的封包。
EtherCAT是一种实时工业以太网技术,它充分利用了以太网的全双工特性。使用主从模式介质访问控制(MAC),主站发送以太网帧给主从站,从站从数据帧中抽取数据或将数据插入数据帧。主站使用标准的以太网接口卡,从站使用专门的EtherCAT从站控制器ESC(EtherCATSlaveController),EtherCAT物理层使用标准的以太网物理层器件。
从以太网的角度来看,一个EtherCAT网段就是一个以太网设备,它接收和发送标准的ISO/IEC8802-3以太网数据帧。但是,这种以太网设备并不局限于一个以太网控制器及相应的微处理器,它可由多个EtherCAT从站组成,EtherCAT系统运行如图2-3所示,这些从站可以直接处理接收的报文,并从报文中提取或插入相关的用户数据,然后将该报文传输到下一个EtherCAT从站。最后一个EtherCAT从站发回经过完全处理的报文,并由第一个从站作为响应报文将其发送给控制单元。实际上只要RJ45网口悬空,ESC就自动闭合(Close)了,产生回环(LOOP)。
图2-3EtherCAT系统运行
实时以太网EtherCAT技术采用了主从介质访问方式。在基于EtherCAT的系统中,主站控制所有的从站设备的数据输入与输出。主站向系统中发送以太网帧后,EtherCAT从站设备在报文经过其节点时处理以太网帧,嵌入在每个从站中的现场总线存储管理单元(FM-MU)在以太网帧经过该节点时读取相应的编址数据,并同时将报文传输到下一个设备。同样,输入数据也是在报文经过时插入至报文中。当该以太网帧经过所有从站并与从站进行数据交换后,由EtherCAT系统中最末一个从站将数据帧返回。
整个过程中,报文只有几纳秒的时间延迟。由于发送和接收的以太帧压缩了大量的设备数据,所以可用数据率可达90%以上。
EtherCAT支持各种拓扑结构,如总线型、星形、环形等,并且允许EtherCAT系统中出现多种结构的组合。支持多种传输电缆,如双绞线、光纤等,以适应于不同的场合,提升布线的灵活性。
EtherCAT支持同步时钟,EtherCAT系统中的数据交换完全是基于纯硬件机制,由于通信采用了逻辑环结构,主站时钟可以简单、精确地确定各个从站传播的延迟偏移。分布时钟均基于该值进行调整,在网络范围内使用精确的同步误差时间基。
EtherCAT具有高性能的通信诊断能力,能迅速地排除故障;同时也支持主站、从站冗余检错,以提高系统的可靠性;EtherCAT实现了在同一网络中将安全相关的通信和控制通信融合为一体,并遵循IEC61508标准论证,满足安全SIL4级的要求。
2.EtherCAT主站组成
EtherCAT无须使用昂贵的专用有源插接卡,只需使用无源的NIC(NetworkInterfaceCard)或主板集成的以太网MAC设备即可。EtherCAT主站很容易实现,尤其适用于中小规模的控制系统和有明确规定的应用场合。使用PC构成EtherCAT主站时,通常是用标准的以太网卡作为主站硬件接口,网卡芯片集成了以太网通信的控制器和收发器。
EtherCAT使用标准的以太网MAC,不需要专业的设备,EtherCAT主站很容易实现,只需要一台PC或其他嵌入式计算机即可实现。
由于EtherCAT映射不是在主站产生,而是在从站产生。该特性进一步减轻了主机的负担。因为EtherCAT主站完全在主机中采用软件方式实现。EtherCAT主站的实现方式是使用倍福公司或者ETG社区样本代码。软件以源代码形式提供,包括所有的EtherCAT主站功能,甚至还包括EoE。
EtherCAT主站使用标准的以太网控制器,传输介质通常使用100BASE-TX规范的5类UTP线缆,如图2-4所示。
图2-4EtherCAT物理层连接原理图
通信控制器完成以太网数据链路的介质访问控制(MediaAccessControl,MAC)功能,物理层芯片PHY实现数据编码、译码和收发,它们之间通过一个MII(MediaIndependentInterface)接口交互数据。MII是标准的以太网物理层接口,定义了与传输介质无关的标准电气和机械接口,使用这个接口将以太网数据链路层和物理层完全隔离开,使以太网可以方便地选用任何传输介质。隔离变压器实现信号的隔离,提高通信的可靠性。
在基于PC的主站中,通常使用网络接口卡NIC,其中的网卡芯片集成了以太网通信控制器和物理数据收发器。而在嵌入式主站中,通信控制器通常嵌入到微控制器中。
3.EtherCAT从站组成
EtherCAT从站设备主要完成EtherCAT通信和控制应用两大功能,是工业以太网Ether-CAT控制系统的关键部分。
从站通常分为四大部分:EtherCAT从站控制器(ESC)、从站控制微处理器、物理层PHY器件和电气驱动等其他应用层器件。
从站的通信功能是通过从站ESC实现的。EtherCAT通信控制器ECS使用双端口存储区实现EtherCAT数据帧的数据交换,各个从站的ESC在各自的环路物理位置通过顺序移位读写数据帧。报文经过从站时,ESC从报文中提取要接收的数据存储到其内部存储区,要发送的数据又从其内部存储区写到相应的子报文中。数据报文的读取和插入都是由硬件自动来完成,速度很快。EtherCAT通信和完成控制任务还需要从站微控制器主导完成。通常是通过微控制器从ESC读取控制数据,从而实现设备控制功能,将设备反馈的数据写入ESC,并返回给主站。由于整个通信过程数据交换完全由ESC处理,与从站设备微控制器的响应时间无关。从站微控制器的选择不受到功能限制,可以使用单片机、DSP和ARM等。
从站使用物理层的PHY芯片来实现ESC的MII物理层接口,同时需要隔离变压器等标准以太网物理器件。
从站不需要微控制器就可以实现EtherCAT通信,EtherCAT从站设备只需要使用一个价格低廉的从站控制器芯片ESC。从站的实施可以通过I/O接口实现的简单设备加ESC、PHY、变压器和RJ45 接头。微控制器和ESC之间使用8位或16位并行接口或串行SPI接口。从站实施要求的微控制器性能取决于从站的应用,EtherCAT协议软件在其上运行。ESC采用德国倍福公司提供的从站控制专用芯片ET1100或者ET1200等。通过FPGA,也可实现从站控制器的功能,这种方式需要购买授权以获取相应的二进制代码。
EtherCAT从站设备同时实现通信和控制应用两部分功能,其结构如图2-5所示。
图2-5EtherCAT从站组成
EtherCAT从站由以下四部分组成。
(1)EtherCAT从站控制器ESC
EtherCAT从站通信控制器芯片ESC负责处理EtherCAT数据帧,并使用双端口存储区实现EtherCAT主站与从站本地应用的数据交换。各个从站ESC按照各自在环路上的物理位置顺序移位读写数据帧。在报文经过从站时,ESC从报文中提取发送给自己的输出命令数据,并将其存储到内部存储区,输入数据从内部存储区又被写到相应的子报文中。数据的提取和插入都是由数据链路层硬件完成的。
ESC具有四个数据收发端口,每个端口都可以收发以太网数据帧。
ESC使用两种物理层接口模式:MII和EBUS。
MII是标准的以太网物理层接口,使用外部物理层芯片,一个端口的传输延时约为500ns。
EBUS是德国倍福公司使用LVDS(LowVoltageDifferentialSignaling)标准定义的数据传输标准,可以直接连接ESC芯片,不需要额外的物理层芯片,从而避免了物理层的附加传输延时,一个端口的传输延时约为100ns。EBUS最大传输距离为10m,适用于距离较近的I/O设备或伺服驱动器之间的连接。
(2)从站控制微处理器
微处理器负责处理EtherCAT通信和完成控制任务。微处理器从ESC读取控制数据,实现设备控制功能,并采样设备的反馈数据,写入ESC,由主站读取。通信过程完全由ESC处理,与设备控制微处理器响应时间无关。从站控制微处理器性能选择取决于设备控制任务,可以使用8位、16位的单片机及32位的高性能处理器。
(3)物理层器件
从站使用MII接口时,需要使用物理层芯片PHY和隔离变压器等标准以太网物理层器件。使用EBUS时不需要任何其他芯片。
(4)其他应用层器件
针对控制对象和任务需要,微处理器可以连接其他控制器件。
2.1.5 EtherCAT系统主站设计
EtherCAT系统的主站可以利用德国倍福公司提供的TwinCAT(TheWindowsControlandAutomationTechnology)组态软件来实现,用户可以利用该软件实现控制程序以及人机界面程序。用户也可以根据EtherCAT网络接口及通信规范来实现EtherCAT的主站。
1.TwinCAT系统
TwinCAT软件是由德国倍福公司开发的一款工控组态软件,以实现EtherCAT系统的主站功能以及人机界面。
TwinCAT系统由实时服务器(RealtimeServer)、系统控制器(SystemControl)、系统OCX接口、PLC系统、CNC系统、输入/输出系统(I/OSystem)、用户应用软件开发系统(UserApplication)、自动化设备规范接口(ADS-Interface)及自动化信息路由器(AMSRouter)等组成。
2.系统管理器与配置
系统管理器(SystemManger)是TwinCAT的配置中心,涉及PLC系统的个数及程序,轴控系统的配置及所连接的I/O通道配置。它关系到所有的系统组件以及各组件的数据关系,数据域及过程映射的配置。TwinCAT支持所有通用的现场总线和工业以太网,同时也支持PC外设(并行或串行接口)和第三方接口卡。
系统管理器的配置主要包括系统配置、PLC配置、CAM配置以及I/O配置。系统配置中包括了实时设定、附加任务以及路由设定。实时设定就是要设定基本时间及实时程序运行的时间限制。PLC配置就是要利用PLC控制器编写PLC控制程序加载到系统管理器中。CAM配置是一些与凸轮相关的程序配置。I/O配置就是配置I/O通道,涉及整个系统的设备。I/O配置中要根据系统中的不同的设备编写相应的XML配置文件。
XML配置文件的作用就是用来解释整个TwinCAT系统,包括了主站设备信息、各从站设备信息、主站发送的循环命令配置以及输入/输出映射关系。
3.基于EtherCAT网络接口的主站设计
EtherCAT主站系统可以通过组态软件TwinCAT配置实现,并且具有优越的实时性能。但是该组态软件主要支持逻辑控制的开发,如可编程逻辑控制器、数字控制等,在一定程度上约束了用户主站程序的开发。可利用EtherCAT网络接口与从站通信以实现主站系统,在软件设计上要以EtherCAT通信规范为标准。
实现基于EtherCAT网络接口的主站系统就是要实现一个基于网络接口的应用系统程序的开发。Windows网络通信构架的核心是网络驱动接口规范(NDIS),它的作用就是实现一个或多个网卡(NIC)驱动与其他协议驱动或操作系统通信,它支持以下三种类型的网络驱动。
1)网卡驱动(NICDriver)。
2) 中间层驱动(IntermediateDriver)。
3) 协议驱动(ProtocolDriver)。
网卡驱动是底层硬件设备的接口,对上层提供发送帧和接收帧的服务;中间层驱动主要作用就是过滤网络中的帧;协议驱动就是实现一个协议栈(如TCP/IP),对上层的应用提供服务。
一个EtherCAT主站网络通信构架的实例如图2-6所示。
图2-6EtherCAT主站网络通信构架
其中,ecatpacket.dll、ecatnpf.sys、ecatfilter.sys是德国倍福公司提供的驱动,ecat-npf.sys是一个NPF(NetGroupPacketFilterDrive)的修正版本,它是一个NDIS的协议驱动,用来支持网络通信分析。ecatpacket.dll是packet.dll的一个修订版,该动态链接库提供了一组底层函数去控制NPF驱动(如ecatnpf.sys)。ecatfilter.sys 是一个中间层驱动,用于阻塞非EtherCAT帧。
4.EtherCAT主站驱动程序
EtherCAT主站可由PC或其他嵌入式计算机实现,使用PC构成EtherCAT主站时,通常用标准的以太网网卡NIC 作为主站硬件接口,主站动能由软件实现。从站使用专用芯片ESC,通常需要一个微处理器实现应用层功能。EtherCAT控制系统协议栈如图2-7所示。
EtherCAT数据通信包括EtherCAT通信初始化、周期性数据传输和非周期性数据传输。
图2-7EtherCAT控制系统协议栈
2.1.6 EtherCAT系统从站设计
EtherCAT系统从站也称为EtherCAT系统总线上的节点,从站主要包括传感部件、执行部件或控制器单元。节点的形式是多种多样的,EtherCAT系统中的从站主要有简单从站及复杂从站设备。简单从站设备没有应用层的控制器,而复杂从站设备具有应用层的控制器,该控制器主要用来处理应用层的协议。
EtherCAT从站是一个嵌入式计算机系统,其关键部分就是EtherCAT从站控制器,由它来实现EtherCAT的物理层与数据链路层协议。应用层协议的实现是通过它的应用层控制器来实现的,应用层的实现根据项目不同的需要由用户来实现。应用层控制器与EtherCAT从站控制器构成EtherCAT从站系统,以实现EtherCAT网络通信。
EtherCAT主站使用标准的以太网设备,能够发送和接收符合IEEE802.3标准以太网数据帧的设备都可以作为EtherCAT主站。在实际应用中,可以使用基于PC或嵌入式计算机的主站,对其硬件设计没有特殊要求。
EtherCAT从站使用专用ESC芯片,需要设计专门的从站硬件。
ET1100芯片只支持MII接口的以太网物理层PHY器件。有些ESC器件也支持RMII(ReducedMII)接口。但是由于RMII接口的PHY使用发送FIFO缓存区,增加了EtherCAT从站的转发延时和抖动,所以不推荐使用RMII接口。
EtherCAT从站控制器具有完成EtherCAT通信协议所要求的物理层和数据链路层的所有功能。这两层协议的实现在任何EtherCAT应用中是不变的,由厂家直接将其固化在从站控制器中。