工业以太网现场总线EtherCAT及驱动程序设计

专家:刘艳强 领域:工业以太网 行业:网络通讯 日期:09-12-16 14:33 点击数:12566

   摘 要:EtherOAT是一种新型的实时工业以太网现场总线。文章介绍了EtherCAT技术的原理、技术 特点、性能以及EtherCAT主站和从站的配置方法、主站和从站驱动程序设计技术等。

  关键词:EtherCAT;实时工业以太网;主站;从站

  0 引言

  工业以太网技术将成为工业控制网络和现场总 线的主流技术 ,但传统以太网的介质访问控制方式---带有冲突检测的载波侦听多路访问机制CSMA/CD (Carrier Sense Multiple Access with Collision Detction)是一种非确定性的介质访问控制方式,不 能满足工业现场的实时性要求。针对这种情况 ,一 些国际著名的工业 自动化公司相断提出了工业以太 网技术的新标准。德国某公司提出的EtherCAT (Ethernet for Control Automation Technology)技术(也称为以太网现场总线)基于标准的以太网技术, 具备灵活的网络拓扑结构,系统配置简单,具有高 速、高有效数据率等特点,其有效数据率可达 90% 以上 ,全双工特性完全得以利用。该技术于2005年 2月正式成为IEC规范 一IEC/PAS 62407。除此之外 , EtherCAT技术也将集成到国际现场总线标准的下一代标准IEC61 158和 IEC61800—7(电子功率可调速驱 动系统框架与接 口)之中。国际标准组织 (ISO)已将EtherCAT纳入ISO15745标准。EtherCAT技术引起了自动化技术领域的广泛关注,并于2003年成立了EtherCAT技术组织,简称ETG。到目前为止,ETG组织成员已超过 500个。

  1 EtherCAT系统组成和工作原理

  Ethe AT采用主从式结构 ,主站 PC机采用标准的 100Base.TX以太网卡 ,从站采用专用芯片。系统控制周期由主站发起 ,主站发出下行电报 ,电报的最大有效数据长度为1498字节。数据帧遍历所有从站设备,每个设备在数据帧经过时分析寻址到本机的报文 ,根据报文头 中的命令读入数据或写入数据到报文中指定位置,并且从站硬件把该报文的工作计数器 (WKC)加 1,表示该数据被处理。整个过程会产生大约 10 as的时间延迟Il1。数据帧在访问位于整个系统逻辑位置的最后一个从站后,该从站把经过处理的数据帧作为上行电报直接发送给主站。

  主站收到此上行电报后 ,处理返回数据,一次通信结束。系统结构原理图如图 1所示 。


EtherCAT支持几乎所有的拓扑类型 ,包括线型 、树型 、星型等,其在物理层可使用100BASE—TX双绞线、100BASE—FX光纤或者LVDS(Low Voltage Differential Signaling,即低压差分信号传输),还可以通过交换机或介质转换器实现不同以太网布线的结合。快速以太网的物理层 (100Base—TX)允许两个设备之 间的最大电缆长度为100m,而LVDS的物理层只能保障 lOm的传输间距,适合于近距离站点的连接。整个网络最多可以连接65535个设备。

  借助于从站中的EtherCAT专用芯片和主站中读取网卡数据的 DMA技术,整个协议处理过程都在硬件中进行。EtherCAT系统可以在30gs内刷新1000个I/O点 ,它可以在300gs内交换一帧多达1486个字节的协议数据 ,这几乎相当于 12000个数字量输入或输 出。控制 100个输入输出数据均为 8字节的伺服轴只需要 100pst 。EtherCAT的高性能使它还可以处理分布式驱动器的电流 (转矩)控制。

  2 EtherCAT数据包结构

  EtherCAT以标准以太网技术为基础,在 MAC(媒体访问层)增加了一个确定性调度的软件层,该软 件 层 实 现 了通 信 周期 内的数 据帧 的传输 。

  EtherCAT采用标准的IEEE802-3以太网帧 ,帧结构如图2,各部分含义见表 1。


EtherCAT没有重新定义新的以太网帧结构,而是在标准以太网帧结构中使用了一个特殊的以太网帧类型 0x88A4,采用这种方式可 以使控制数据 直接写入以太网帧内,并且可以与遵守其他协议的以太网帧在同一网络中并行。一个Ethe AT帧中可以包含若干个EtherCAT子报文,报文结构如图3,各部分含义见表2,每个报文都服务于一块逻辑过程映像区的特定内存区域,由FMMU(Fieldbus Memory Manage—ment Unit,负责逻辑地址与物理地址的映射)寄存器和SM (Sync Manager,负责对ESC和微处理器内存的读写)寄存器定义 ,该区域最大可达 4GB字节。EtherCAT报文由一个 16位的WKC(WorkingCount)结束,其数据区最大长度可达 1486个字节。在报文头中由8位命令区数据决定主站对从站的寻址方式 ,由于数据链独立于物理顺序,因此可以对EtherCAT从站进行任意的编址。



  3 EtherCAT技术的实现

  3.1主站结构

  EtherCAT技术在主站方面只需一块标准的NIC网卡 ,主站功能完全 由软件实现 。EtherCAT可以用一个 以太网帧发送'1486字节的有效数据,所以在通常情况下 ,每个通信周期只需要 1个或2个帧就能完成所有结点的全部通信。

  EtherCAT主站程序应该包含以下几个方面 :

  (1)读取xML配置文件,根据配置文件信息构造主站与从站设备 ;

  (2)管理EtherCAT从站,发送配置文件中定义的初始化帧,初始化从站,为通信做准备;

  (3)使用邮箱操作实现非周期性数据传输,配置系统参数,处理通信过程中某些偶然性事件;

  (4)实现过程数据通信,完成主站与从站之间的实时数据交换 ,达到主站控制从站运行,并处理从站实时状态的功能。

  主站代码结构图如图4所示。

可以用多种编程语言来编写 EtherCAT主站程序,如 VC++、VB、Delphi等编程语言,无需特别复杂的代码 ,就可以实现主站功能 ,并且EtherCAT 主站不负责产生数据映射,而是由从站通过外围设备完成,进一步减轻了主站代码的复杂程序,减轻了主机CPU的负担。

  3.2主站配置文件

  EtherCAT从站内存区前4KB是配置寄存器。从站系统运行前要进行寄存器初始化,包括初始化从站物理地址、配置运行方式 (周期性通信、非周期性通信)、逻辑地址寄存器映射、分布时钟寄存器初始化等等。由主站读取该系统的配置文件,构造初始化命令帧,当从站处于该命令要求的状态时主站发出初始化命令。EtherCAT配置文件采用XML格式,XML语法简单,具有结构化、可扩展性等特点,能实现复杂事物的描述,易于在应用程序中读写。

  EtherCAT配置文件格式如下:

< xml version= “1.0” encoding=” ISO8859—1”>-







-主站信息 (帧头定义)

-广播寻址信息 (初始化命令)

-</M aster>



-从站信息 (通信信息)

-类型定义 (Mailbox/ProcessData)

-从站初始化信息

</Slave>



</Cyclic>

</ Config>

</EtherCATConfig>

整个配置文件分为3部分:

(1)主站结点:主要包括主站信息和广播寻址信息,主站信息主要包括主站名、目的地址、源地址 、以太网类型 。广播寻址信息是用广播方式对所有从站进行相同地初始化;

  (2)从站结点 此部分可为若干个从站结点,主要包括从站信息、类型、从站初始化信息。从站信息主要包括从站名、物理地址、位置地址等;如果从站类型信息部分为 “Mailbox”,则此从站为复杂设备,从站接微处理器等设备,若为“ProcessData”则从站为简单设备,下面接I/O端子。从站初始化信息部分是针对单个从站,用位置寻址和物理寻址方式对其某些寄存器进行配置,包括应用层控制寄存器 请 求 信 息 及 应 用层 状态 寄存器 应答信息FMMU、SMs寄存器的配置信息等;

  (3)周期数据信息,此部分信息是主站程序初始化过程数据帧的依据;

  3.3从站实现

  可以利用该公司开发的从站控制器 E S C(EtherCAT Slave Controller)根据实际需要设计从站设备。ESC从站控制器提供 3种接口规范,具体接口实现方式 由控制器上的E2PROM寄存器决定,接口规范如表 3。
 


I/O方式不需要接入微处理器,ESC控制器直接与I/0端子相连,I/O数据直接映射到ESC的内存空间,刷新速度非常快。微处理器方式中,ESC从站控制器在功能上相当于工业现场总线中的通信站点芯片。从站硬件示意图如图 5所示。

  从站控制器与主站交换两种形式的数据:一种是周期性数据;一种是非周期性数据。周期性数据传输可以采用缓冲区方式,任何一方在任何时间都可以访问此方式定义的内存,得到最新数据;非周期性数据传输采用握手方式 (邮箱方式)实现,一方写入数据到定义的内存,只有完成定义内存的最后一个字节的写入 ,另一方才能开始从定义 内存中读出数据,而且 只有在读出定义内存的最后一个字节数据后 ,才能重新写人数据。缓冲区和邮箱由Sync—Manage寄存器 0x800—0x820)来定义。针对这两种数据通信方式,从站程序可以对非周期性数据通信 采 用查询 方式 ,查询 条件 由 SM 寄存 器0x805、0x80D决定,对周期性通信采用中断方式通过查询寄存器0x221判断中断类型,程序流程图如图 6、图7所示。
 




位微处理器接口与带有  接口的传统现场总线控制器接口相对应 ,适合于数据量较大的复杂设备。其从站代码程序可以实现传统现场总线从站程序的所有功能,如果用户熟悉现线总线从站程序编写,则可以很容易地完成从站代码功能的编写。

  参考文献:

  【1】德国倍福公司.实时以太网:  层超高速以太网.工业以太网与现场总线.
 
【2】  技术组.  一以太网现场总线.

  【3】杜品圣.工业以太网技术的介绍和比较【J].仪器仪表标准化与计量

  【4】徐彤.以太网在实时控制领域中的应用【J].火控雷达技术



热点新闻
推荐产品