EtherCAT 寻址模式详解_ethercat逻辑寻址-CSDN博客
EtherCAT 寻址模式详解
EtherCat技术研究
已于 2022-05-11 09:59:20 修改
阅读量5.7k
收藏
50
点赞数
8
分类专栏:
EtherCAT
文章标签:
fpga开发
于 2021-08-24 15:22:41 首次发布
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/gufuguang/article/details/119889835
版权
EtherCAT
专栏收录该内容
13 篇文章
71 订阅
订阅专栏
1、寻址模式
寻址模式就是在EtherCAT报文的地址数据写入不同的数据和CMD是相关的
模式内容描述位置寻址 / 自增量寻址位置各从站位置递增,postion = 0 的从站被寻址偏移地址ESC内部寄存器或内存地址节点寻址 / 固定地址寻址地址报文的站地址和设置的站地址一致时,从站被寻址偏移地址ESC内部寄存器或内存地址广播位置每个从站对位置加1(从站不使用该位置)偏移地址ESC内部寄存器或内存地址逻辑寻址地址逻辑地址和从站配置的FMMU地址一致时,从站被寻址
EtherCAT 寻址模式一般介绍有3种模式,其实广播是一种特殊的寻址方式,可以访问到所有从站,广播一般用于EtherCAT初始化过程使用
自增量寻址: 只用在 EtherCAT 系统启动期间用于扫描现场总线。之后,位置寻址应该只用于检测新添加的从站。
固定地址寻址:用于对已识别的单个设备进行数据访问。
逻辑寻址: 所有设备读取和写入 EtherCAT 报文的相同地址范围。每个从站使用一个映射单元(FMMU,现场总线内存管理单元)将数据从逻辑过程数据映像映射到其本地地址和内存区域。主机在启动期间配置每个从机的 FMMU。
2、EtherCAT命令
CmdAbbreviationNameDescription0NOPNo Operation空操作,从站不做任何处理1APRDAuto Increment Read报文经过一个从站时,对地址加1,当地址为0时,该从站把从站数据取出填入报文2APWRAuto Increment Write报文经过一个从站时,对地址加1,当地址为0时,该从站把数据取出写入从站3APRWAuto Increment Read Write报文经过一个从站时,对地址加1,当地址为0时,该从站读取内部数据填入报文,并把收到的报文数据写入到从站4FPRDConfigured Address Read和从站地址一致时,从站读取内部的数据填入报文5FPWRConfigured Address Write和从站地址一致时,从站读取报文数据写入从站6FPRWConfigured Address Read Write和从站地址一致时,从站读取内部数据填入报文,并把收到的报文数据写入到从站7BRDBroadcast Read所有从站内部数据和报文数据逻辑或后写入报文,每个从站对地址加18BWRBroadcast Write向所有从站写入数据,每个从站 对地址加19BRWBroadcast Read Write所有从站内部数据和报文数据逻辑或后写入报文,同时把数据也写入从站,每个从站对地址加1(一般不使用该命令)10LRDLogical Memory Read读取的逻辑地址和从站设置FMMU一致时,把从站数据写入报文11LWRLogical Memory Write写入的逻辑地址和从站设置FMMU一致时,把报文数据写入从站12LRWLogical Memory Read Write读取的逻辑地址和从站设置FMMU一致时,把从站数据写入报文 写入的逻辑地址和从站设置FMMU一致时,把报文数据写入从站13ARMWAuto Increment Read Multiple Write每个从站对地址加1,当地址为0时,该从站读取内部数据写入报文,其它从站把报文数据写入从站14FRMWConfigured Read Multiple Write和从站地址一致时,从站读取内部数据写入报文,其它从站把报文数据写入从站
EtherCAT报文是由一个或多个命令组成,来获取或写入从站数据。
3、报文分析
主站启动时发送的第一个报文就是广播报文,报文内容是读取从站的AL status。
报文初始的slave addr为0,每经过一个从站就会加1,可以看出当前网络上有6个从站,WKC也为6
第二个报文使用自增量寻址,读取6个从站的数据
上图是使用固定地址寻址读取从站数据
逻辑寻址报文之前的文章已经介绍过来,这里就不再列出来了
优惠劵
EtherCat技术研究
关注
关注
8
点赞
踩
50
收藏
觉得还不错?
一键收藏
知道了
5
评论
EtherCAT 寻址模式详解
1、寻址模式寻址模式就是在EtherCAT报文的地址数据写入不同的数据和CMD是相关的模式 内容 描述 位置寻址 / 自增量寻址 位置 各从站位置递增,postion = 0 的从站被寻址 偏移地址 ESC内部寄存器或内存地址 节点寻址 / 固定地址寻址 地址 报文的站地址设置的站地址一致时,从站被寻址 偏移地址 ESC内部寄存器或内存地址 广播 位置 每个从站对位置加1(从站不使用该位置) 偏移地址...
复制链接
扫一扫
专栏目录
5 条评论
您还未登录,请先
登录
后发表或查看评论
EtherCat技术研究
CSDN认证博客专家
CSDN认证企业博客
码龄11年
暂无认证
84
原创
3万+
周排名
2万+
总排名
27万+
访问
等级
2392
积分
574
粉丝
168
获赞
261
评论
1119
收藏
私信
关注
热门文章
机内码、国际码、区位码换算
24861
各种ADC转换方式的优缺点
20211
IgH详解 一、概述
12652
IgH配置EtherCAT流程
12340
目前常用AD/DA芯片简介
7913
分类专栏
Linuxcnc-ethercat
1篇
IgH详解
23篇
arm_Linux
1篇
TCP/IP
1篇
S3C2440
18篇
EtherCAT
13篇
最新评论
IgH详解十二、IgH实现使用ENI文件配置从站(二)
EtherCat技术研究:
扫描跟兼容性关系不大,先要确保ethercat报文是否有正常收发
IgH详解二、主栈启动流程(二)
EtherCat技术研究:
要看你报文是否有超时,是否有丢包?用的实时网卡驱动吗?需要你根据自己环境去查
IgH详解十二、IgH实现使用ENI文件配置从站(二)
weixin_50007256:
大佬,我偶然会出现伺服和io的从站突然重启后扫描不上来的情况,重启前还是能扫描上来的,是因为兼容性的问题么。
IgH详解二、主栈启动流程(二)
weixin_50007256:
大佬,从站成功切到op之后,为了检测从站是否会断开,我判断ec_slave_config_state_t.online的值,出现有时候online为false的现象,但是从站状态一直是op,这是什么原因呢
IgH详解十、EtherCAT DC(4)主站做参考时钟和从站作参考时钟性能对比
records111:
大神你好,我想请教下你用从站作为参考时钟的话,主站的时钟是怎么被同步的呢,可以详细聊聊吗
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
倍福控制器搭建IgH环境
全志A40i PRREMPT-RT Linux平台搭建IgH环境
ubuntu 16.04 阿里软件源
2023年11篇
2022年18篇
2021年12篇
2019年3篇
2018年1篇
2015年2篇
2013年58篇
目录
目录
分类专栏
Linuxcnc-ethercat
1篇
IgH详解
23篇
arm_Linux
1篇
TCP/IP
1篇
S3C2440
18篇
EtherCAT
13篇
目录
评论 5
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
EtherCAT寻址方式解析 - 知乎首发于技术资料切换模式写文章登录/注册EtherCAT寻址方式解析七秒鱼道隐于小成,言隐于荣华我们知道,一个EtherCAT数据帧(frame)里面包含很多个报文(datagram),不管是什么样式的报文,它们的目的只有一个,就是读写从站寄存器或内存。所以寻址就是以什么方式访问哪个从站的哪个寄存器或内存。理解了寻址方式,就可以结合具体的地址和数据,搞清楚报文对从站到底干了什么事情。EtherCAT数据帧1.寻址方式解析EtherCAT寻址方式只有4种:位置寻址(Position address)、节点寻址(Node address)、广播寻址(Broadcast address)、逻辑寻址(Logical address)。表中给出了不同的Cmd所采用的寻址方式。Cmd寻址方式和描述不同寻址方式,报文头的Address字段组成也有所不同:不同寻址方式的Address字段组成(1)位置寻址又叫顺序寻址,根据从站在链路上的位置进行寻址,通常用于初始化。Address字段包括16位ADP和16位ADO。当从站接收到ADP为0的报文时,则对报文进行读写操作,然后再把ADP加1。(如果是读操作就把从站ADO地址对应的数据写入报文,如果是写操作就把报文中的数据写入从站ADO对应的地址)例如要对第0个从站进行读写操作,该报文的ADP就为0,第0个从站操作完之后ADP加1,后面的从站就不会根据该报文进行任何操作。又比如要对第2个从站进行读写操作,ADP就为-2(0xFFFE),那它传到第0个从站时ADP=-2,传到第1个从站时ADP=-1,传到第2个从站时才ADP=0,相应的读写操作才会进行。(2)节点寻址又叫设置寻址,根据从站被配置的地址进行寻址,通常用于对单独某个从站的读写(如SDO)。Address字段包括16位ADP和16位ADO。其中ADP为从站被配置的地址(理论上可以为任意值),ADO为从站里面某个寄存器的地址。如果报文的ADP与从站被配置的地址(存储在寄存器中)匹配,则该从站执行相应的操作。(3)广播寻址对链路上的每个从站进行读写操作。Address字段包括16位ADP和16位ADO。ADP本身不用于寻址,但每个从站会对它进行加1操作,ADO为从站里面某个寄存器的地址。如果是广播写,从站会将报文数据写入存储;如果是广播读,从站会把存储数据与报文数据求或,再写入报文。(4)逻辑寻址根据FMMU映射进行寻址,通常用于PDO过程数据交互。Address字段包括32位的Addr。Address为逻辑起始地址(由FMMU配置,存放在0x06y0寄存器中)。如果从站FMMU与报文的Address相符,则根据配置好的映射关系,将报文中特定偏移量的数据写入从站特定的地址,或将从站特定的地址的数据读入报文中特定偏移量。2.示例解析接下来通过WireShark抓取实际EtherCAT数据包,来对不同寻址方式进行详细分析。如图所示为某品牌六轴机械臂运行时收发的数据帧,主站通过串行方式直连6台伺服驱动器从站设备,抓包时机械臂各关节在位置模式下做简单运动。EtherCAT发送数据帧EtherCAT接收数据帧可以看到EtherCAT数据帧中包含了位置寻址(ARMW)、逻辑寻址(LWR、LRD)、节点寻址(FPRD)和广播寻址(BRD)报文。不同Cmd指令描述见上表。可见发送出去和接收进来的报文种类数量都没有改变,但其中的数据内容和Working Counter(Cnt)在从站的操作下发生了相应的改变。下面对每种报文进行解析。(1)ARMW报文发送ARMW报文接收ARMW报文如图所示为发送和接收的ARMW报文。采用位置寻址,当从站接收到ADP为0时,将地址为ADO的寄存器内容写入报文数据,如果从站接收到ADP不为0时,则将报文数据写入地址为ADO的寄存器,操作完成后对ADP加1。该报文用于DC时钟同步,链路上第一个具有DC功能的从站作为主时钟。因此发送数据帧ADP=0意味着只有第一个从站会把自己的0x910寄存器数值写入报文,报文中的数据就是第一个从站的系统时间,后面的从站就只是默默地把该数据读入自己的0x910寄存器中。这里由于链路上第一个从站对该报文进行了1次写操作,另外五个从站对该报文进行了总共5次读操作,因此Cnt=1+1+5=7。(2)LRD报文发送LRD报文接收LRD报文如图所示为发送和接收的LRD报文。LWR、LRD都采用逻辑寻址,因此从站只需要按照约定(配置)好的,将内存中特定的数据写入报文数据中特定的位置即可。发送时该报文的数据为全零,接收回来的时候就已经被填上数据了。这里的数据内容无非就是PDO过程数据,比如伺服电机的位置、速度、电流、状态字什么的。这里六个从站分别对该报文进行了1次写操作,因此Cnt=1+6=7。(3)FPRD报文发送FPRD报文接收FPRD报文如图所示为发送和接收的FPRD报文,采用节点寻址。从站接收到ADP与自己被配置的地址相符,就把ADO地址的寄存器数据写入报文。这里链路上某个从站地址被配置为0x3ec,然后读取它的0x130寄存器的数值写入报文数据。这里由于链路上只有一个从站对该报文进行了1次写操作,因此Cnt=0+1=1。(4)BRD报文发送BRD报文接收BRD报文如图所示为发送和接收的BRD报文。采用广播寻址,ADP没有实际意义,但每经过一个从站就会被加1。这里每个从站都会把ADO,也就是0x130地址的寄存器数值与报文中的数据按位或,然后写入报文。查手册可知0x130寄存器存放的是从站的数据链路层状态(AL Status),当从站处于不同的状态,对应的比特位就会置1。也就是说,当报文数据中只有bit3为1时,可判断链路上所有从站都进入了OP状态;而当报文数据中bit2和bit3同时为1时(0x000c),链路上至少有一个从站处于SAFEOP且至少有一个处于OP,但具体哪一个也不知道。这里六个从站分别对该报文进行了1次写操作,因此Cnt=2+6=8。3.总结总的来说,位置寻址用于从站都没有被配置,仅知道它在链路中位置的情况;节点寻址用于对从站点对点的通信,可用于从站配置和数据读取;广播寻址用于比较宽泛的设置和读取操作;逻辑寻址则用于数据量较大的读写操作,具有更高的信息密度和报文使用率。参考网址:https://infosys.beckhoff.com/english.php?content=../content/1033/tc3_io_intro/1257993099.html&id=编辑于 2022-11-11 20:53・IP 属地北京工业以太网工业机器人计算机网络赞同 91 条评论分享喜欢收藏申请转载文章被以下专栏收录技
EtherCAT 寻址模式详解_ethercat逻辑寻址-CSDN博客
EtherCAT 寻址模式详解
EtherCat技术研究
已于 2022-05-11 09:59:20 修改
阅读量5.7k
收藏
50
点赞数
8
分类专栏:
EtherCAT
文章标签:
fpga开发
于 2021-08-24 15:22:41 首次发布
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/gufuguang/article/details/119889835
版权
EtherCAT
专栏收录该内容
13 篇文章
71 订阅
订阅专栏
1、寻址模式
寻址模式就是在EtherCAT报文的地址数据写入不同的数据和CMD是相关的
模式内容描述位置寻址 / 自增量寻址位置各从站位置递增,postion = 0 的从站被寻址偏移地址ESC内部寄存器或内存地址节点寻址 / 固定地址寻址地址报文的站地址和设置的站地址一致时,从站被寻址偏移地址ESC内部寄存器或内存地址广播位置每个从站对位置加1(从站不使用该位置)偏移地址ESC内部寄存器或内存地址逻辑寻址地址逻辑地址和从站配置的FMMU地址一致时,从站被寻址
EtherCAT 寻址模式一般介绍有3种模式,其实广播是一种特殊的寻址方式,可以访问到所有从站,广播一般用于EtherCAT初始化过程使用
自增量寻址: 只用在 EtherCAT 系统启动期间用于扫描现场总线。之后,位置寻址应该只用于检测新添加的从站。
固定地址寻址:用于对已识别的单个设备进行数据访问。
逻辑寻址: 所有设备读取和写入 EtherCAT 报文的相同地址范围。每个从站使用一个映射单元(FMMU,现场总线内存管理单元)将数据从逻辑过程数据映像映射到其本地地址和内存区域。主机在启动期间配置每个从机的 FMMU。
2、EtherCAT命令
CmdAbbreviationNameDescription0NOPNo Operation空操作,从站不做任何处理1APRDAuto Increment Read报文经过一个从站时,对地址加1,当地址为0时,该从站把从站数据取出填入报文2APWRAuto Increment Write报文经过一个从站时,对地址加1,当地址为0时,该从站把数据取出写入从站3APRWAuto Increment Read Write报文经过一个从站时,对地址加1,当地址为0时,该从站读取内部数据填入报文,并把收到的报文数据写入到从站4FPRDConfigured Address Read和从站地址一致时,从站读取内部的数据填入报文5FPWRConfigured Address Write和从站地址一致时,从站读取报文数据写入从站6FPRWConfigured Address Read Write和从站地址一致时,从站读取内部数据填入报文,并把收到的报文数据写入到从站7BRDBroadcast Read所有从站内部数据和报文数据逻辑或后写入报文,每个从站对地址加18BWRBroadcast Write向所有从站写入数据,每个从站 对地址加19BRWBroadcast Read Write所有从站内部数据和报文数据逻辑或后写入报文,同时把数据也写入从站,每个从站对地址加1(一般不使用该命令)10LRDLogical Memory Read读取的逻辑地址和从站设置FMMU一致时,把从站数据写入报文11LWRLogical Memory Write写入的逻辑地址和从站设置FMMU一致时,把报文数据写入从站12LRWLogical Memory Read Write读取的逻辑地址和从站设置FMMU一致时,把从站数据写入报文 写入的逻辑地址和从站设置FMMU一致时,把报文数据写入从站13ARMWAuto Increment Read Multiple Write每个从站对地址加1,当地址为0时,该从站读取内部数据写入报文,其它从站把报文数据写入从站14FRMWConfigured Read Multiple Write和从站地址一致时,从站读取内部数据写入报文,其它从站把报文数据写入从站
EtherCAT报文是由一个或多个命令组成,来获取或写入从站数据。
3、报文分析
主站启动时发送的第一个报文就是广播报文,报文内容是读取从站的AL status。
报文初始的slave addr为0,每经过一个从站就会加1,可以看出当前网络上有6个从站,WKC也为6
第二个报文使用自增量寻址,读取6个从站的数据
上图是使用固定地址寻址读取从站数据
逻辑寻址报文之前的文章已经介绍过来,这里就不再列出来了
优惠劵
EtherCat技术研究
关注
关注
8
点赞
踩
50
收藏
觉得还不错?
一键收藏
知道了
5
评论
EtherCAT 寻址模式详解
1、寻址模式寻址模式就是在EtherCAT报文的地址数据写入不同的数据和CMD是相关的模式 内容 描述 位置寻址 / 自增量寻址 位置 各从站位置递增,postion = 0 的从站被寻址 偏移地址 ESC内部寄存器或内存地址 节点寻址 / 固定地址寻址 地址 报文的站地址设置的站地址一致时,从站被寻址 偏移地址 ESC内部寄存器或内存地址 广播 位置 每个从站对位置加1(从站不使用该位置) 偏移地址...
复制链接
扫一扫
专栏目录
EtherCAT报文-LRW(逻辑寻址读写)抓包分析
kevin1499的博客
11-11
541
使用Wireshark抓取EtherCAT主站发出的LRW报文,详细分析了LRW报文的组成。
Ethercat FMMU寻址,Working Counter
02-26
该文档描述了Ethercat的寻址,Working Counter的工作原理。
5 条评论
您还未登录,请先
登录
后发表或查看评论
详解EtherCAT主站协议栈-综合文档
05-22
详解EtherCAT主站协议栈
EtherCAT设备寻址方式
PI_sunyang的博客
08-23
4390
在EtherCAT的每个子报文中,有32位空间用于对EtherCAT设备进行寻址。寻址方式有三种,分别为:
位置寻址
节点寻址
逻辑寻址
*位置寻址
位置寻址方式是根据从站的连接顺序,即物理位置实现的。在报文头的32bit地址中,前16bit的Position用于存放地址值,Offset用于存放ESC逻辑寄存器或者内存地址。报文每经过一个从站设备,其Position中的地址值加1。当一
Ethercat“BWR配置从站地址”报文分析(0x0010:0x0011)
geshifei的博客
12-23
507
涉及的从站寄存器:Configured Station Address (0x0010:0x0010)。使用场景举例:IgH启动后,通过“配置从站地址”报文将所有从站地址清零,然后通过APWR指令+“配置从站地址”报文,设置各个从站的地址。
EtherCAT基础之寻址方式介绍
MotroEngineer的博客
08-08
705
EtherCAT主站有三种不同的寻址方式,分别应用于EtherCAT网络配置、邮箱通信和过程数据通信。
对寻址方式的深入了解能帮助大家更好的理解EtherCAT技术,比如我们在编写针对某个从站的控制程序时,过程数据的读写并不直接针对从站的物理地址,而是操作控制器内存的某段逻辑地址,其原因即来源于对逻辑寻址的应用。
EtherCAT寻址方式
u012516571的博客
08-07
3490
一个 EtherCAT 网段相当于一个以太网设备,主站首先根据以太网帧头寻址到相应的网段,然后根据子报文头中的 32 位地址来寻址网段内的设备。
段内寻址方式有两种:设备寻址和逻辑寻址。
设备寻址模式:子报文头中的 32 位地址分为 16 位的从站设备地址和 16 的设备内物理存储地址,每个报文只能寻址唯一的一个从站设备。
设备寻址又有两种寻址机制:顺序寻
EtherCAT的寻址模式
qq_28065701的博客
11-20
2875
EtherCAT工业网络通信技术的学习笔记
页、块、程序间的关系
qq_43634879的博客
11-23
1923
页式存储
注意页和块的对象的不同
对程序进行分页存储
对内存进行分块存储
文章最后会给出我总结的页和块的关系
逻辑地址和物理地址
a)逻辑地址:由两部分组成,即页号 + 页内地址
设逻辑地址由总长度为m的二进制数表示,页内地址为n位,则页号为m-n位。
注意:
块内地址=页内地址=2n,同理最大的程序可允许有 > >2m-n个页面。
计算公式:
页号 = 逻辑地址/页长(商)
页内地址 = 逻辑地址%页长(余数)
...
EtherCAT的4种寻址方式解析
u014453443的博客
10-31
1712
我们知道,一个EtherCAT数据帧(frame)里面包含很多个报文(datagram),不管是什么样式的报文,它们的目的只有一个,就是。所以寻址就是以什么方式访问哪个从站的哪个寄存器或内存。理解了寻址方式,就可以结合具体的地址和数据,搞清楚报文对从站到底干了什么事情。EtherCAT数据帧。
【EtherCAT理论篇】二、EtherCAT工作原理
热门推荐
zhandouhu的博客
10-26
2万+
1、EtherCAT系统组成
EtherCAT是一种实时以太网技术,由一个主站设备和多个从站设备组成。主站设备使用标准的以太网控制器,具有良好的兼容性,任何具有网络接口卡的计算机和具有以太网控制的嵌入式设备都可以作为EtherCAT的主站。对于PC计算机而言,主站控制器多采用倍福开发的TwinCAT软件。EtherCAT从站使用专门的从站控制器(ESC),如专用集成芯片ET1100和E...
EtherCAT 总线初见
《好好先生》专栏
11-01
8056
EtherCAT 总线初见
EtherCAT 名称的由来是: Ethernet for Control Automation Technology,也就是用于控制自动化技术的以太网,其实也就是工业以太网的一种。EtherCAT是由德国BECKHOFF自动化公司于2003年提出的实时工业以太网技术。它具有高速和高数据有效率的特点,支持多种设备连接拓扑结构。其从站节点使用专用的控制芯片,主站使用标准的以太网控制器。
EtherCAT是一种工业以太网技术,看到的大多数应用场景都是伺服电机。因为是基于以太网的技
Ethercat协议详解.zip
05-12
Ethercat主站协议详解,对于想要开发主站的同学有很大帮助,便于理解主站源代码的相关作用。注:英文文档 1、Ethercat协议原理,应用层,数据链路层,物理层。 2、Ethercat从站寄存器说明 3、ET1200硬件详解
EtherCAT协议栈代码详解
05-31
EtherCAT代码详解,ET9300,开发EtherCAT的的必备文档。
以太网现场总线ethercat实用详解
11-16
以太网现场总线ethercat实用详解以及相关的驱动开发
IgH配置EtherCAT流程
EtherCAT
01-22
1万+
IgH设置EtherCAT数据流程
在启动IgH协议栈后,协议栈会自动的把EtherCAT从站初始化到PREOP模式,从PREOP状态迁移到SAFEOP状态,需要设置PDO、DC等数据。以山洋电机为例数据设置流程如图 1.1所示:
图 1.1 PREOP状态迁移流程
IgH应用实现流程
1申请获取主栈
在配置数据之前首先获取一个主栈结构体,该结构和协议栈中的master对应。通过获取到的...
EtherCAT设备协议详解二、EtherCAT状态机及配置流程
EtherCAT
12-16
7899
设备可以拒绝来自主站的状态请求,并通过错误指示(AL 状态寄存器中的错误标志)和相关错误代码(AL 状态代码寄存器)发出错误信号。设置了上述信息后,从站检查无误后,主站可以请求进入safe-op状态,如果不能进入safe-op可以读取相关寄存器,判断错误原因。设置了上述信息后,从站检查无误后,主站可以请求进入pre-op状态,如果不能进入pre-op可以读取相关寄存器,判断错误原因。safe-op状态主要把pdo中的数据设置的从站中,确认从站是否会报错。DC同步稳定,从站也没有报错就可以申请进入op状态。
EtherCAT 同步模式
EtherCAT
12-27
7757
EtherCAT三种同步方式
自由运行模式 (Free Run:非同步运行)
自由运行模式通过应用程序控制器的本地计时器中断启动。本地周期从通信周期或主站周期独立出来单独运行。
SM2事件同步模式(Synchronous with SM2 Event)
由于从站的处理与SM2事件周期相对应,因此从站的处理保持与SM2事件同步。...
EtherCAT报文格式详解
EtherCAT
08-23
7268
1、EtherCAT报文组成
从图中抓的包可以看出EtherCAT报文分为三部分(1)、以太网帧头 (2)、EtherCAT帧头 (3)、EtherCAT数据 说明:KUNBUS TAP是实时抓包工具加的时间戳信息,报文的FCS也在里面
2、帧头解析
(1)、EtherCAT是基于以太网的所以头部首先是以太网帧头,包含目的和源MAC地址,EtherCAT帧类型固定为 0x88A4
(2)、EtherCAT帧头2字节,包含ECAT数据长度
3、ECAT数据解析
ECAT数据就是主...
ethercat soem详解
最新发布
01-26
EtherCAT (Ethernet for Control Automation Technology)是一种高性能的实时以太网通信协议,用于自动化控制系统中的实时数据传输。EtherCAT是一种开放的标准,它基于以太网技术,具有低延迟、高实时性、高带宽和高可靠性等特点。
EtherCAT使用专有的通信协议,称为SOEM (Simple Open EtherCAT Master)。SOEM是一个用于EtherCAT主站(也称为主控设备)开发的开源库。它提供了一套简单易用的API,使得开发人员能够轻松地实现EtherCAT设备的主动驱动和控制。
SOEM库提供了与EtherCAT从站(也称为从控设备)进行通信的功能。它能够检测和自动配置连接在EtherCAT总线上的所有从站设备,并且可以实时地传输数据。通过SOEM,主站可以控制和监视从站设备,以实现自动化系统的高效运行。
EtherCAT和SOEM的组合为实时控制系统的设计和开发提供了许多优势。首先,EtherCAT具有低延迟和高实时性,可以在毫秒级的延迟下传输实时数据。这使得实时控制系统能够快速响应变化,并实现高精度的运动控制。
其次,EtherCAT具有高带宽,能够同时传输多个数据流。这使得多个设备可以并行进行通信,提高了系统的整体性能。此外,EtherCAT支持热插拔功能,从而可以动态添加或删除从站设备,而无需停机。
最后,SOEM作为一个开源库,提供了灵活和可扩展的开发平台。开发人员可以根据实际需求自定义和扩展SOEM库的功能,并与其他开源工具和库进行整合。这为自动化控制领域的研究和创新提供了更多的可能性。
综上所述,EtherCAT和SOEM是一对强大的工具,可用于实现高性能和实时性的自动化控制系统。它们的特性使得工程师和开发人员能够更加灵活地设计和部署控制系统,提高系统的可靠性和性能。
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
EtherCat技术研究
CSDN认证博客专家
CSDN认证企业博客
码龄11年
暂无认证
84
原创
3万+
周排名
2万+
总排名
27万+
访问
等级
2392
积分
574
粉丝
168
获赞
261
评论
1119
收藏
私信
关注
热门文章
机内码、国际码、区位码换算
24861
各种ADC转换方式的优缺点
20211
IgH详解 一、概述
12652
IgH配置EtherCAT流程
12340
目前常用AD/DA芯片简介
7913
分类专栏
Linuxcnc-ethercat
1篇
IgH详解
23篇
arm_Linux
1篇
TCP/IP
1篇
S3C2440
18篇
EtherCAT
13篇
最新评论
IgH详解十二、IgH实现使用ENI文件配置从站(二)
EtherCat技术研究:
扫描跟兼容性关系不大,先要确保ethercat报文是否有正常收发
IgH详解二、主栈启动流程(二)
EtherCat技术研究:
要看你报文是否有超时,是否有丢包?用的实时网卡驱动吗?需要你根据自己环境去查
IgH详解十二、IgH实现使用ENI文件配置从站(二)
weixin_50007256:
大佬,我偶然会出现伺服和io的从站突然重启后扫描不上来的情况,重启前还是能扫描上来的,是因为兼容性的问题么。
IgH详解二、主栈启动流程(二)
weixin_50007256:
大佬,从站成功切到op之后,为了检测从站是否会断开,我判断ec_slave_config_state_t.online的值,出现有时候online为false的现象,但是从站状态一直是op,这是什么原因呢
IgH详解十、EtherCAT DC(4)主站做参考时钟和从站作参考时钟性能对比
records111:
大神你好,我想请教下你用从站作为参考时钟的话,主站的时钟是怎么被同步的呢,可以详细聊聊吗
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
倍福控制器搭建IgH环境
全志A40i PRREMPT-RT Linux平台搭建IgH环境
ubuntu 16.04 阿里软件源
2023年11篇
2022年18篇
2021年12篇
2019年3篇
2018年1篇
2015年2篇
2013年58篇
目录
目录
分类专栏
Linuxcnc-ethercat
1篇
IgH详解
23篇
arm_Linux
1篇
TCP/IP
1篇
S3C2440
18篇
EtherCAT
13篇
目录
评论 5
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
EtherCAT设备寻址 - 知乎切换模式写文章登录/注册EtherCAT设备寻址SunSea阳洋工业机器人、伺服驱动器、倍福控制器、Codesys、EtherCAT等发两篇之前在今日头条上写的文章,内容都是现成的,增加点人气……………………………………………………………………&&&我是分割线&&&………………………………………………今天在这里讲一下EtherCAT报文寻址中的设备寻址。 EtherCAT通信由主站发送EtherCAT数据帧请求读写从主站设备的内部存储区来实现,EtherCAT报文使用多种寻址方式操作ESC内部存储区,实现多通信服务。 图1 EtherCAT网络寻址模式 如上图1 EtherCAT网络寻址模式,先是网段寻址,然后是段内寻址。 一个EtherCAT网段相当于一个以太网设备,主站首先使用以太网数据帧头的MAC地址寻找到网段,然后使用EtherCAT子报文头中的32位地址寻址到段内设备。 段内寻址可以使用两种方式:设备寻址和逻辑寻址。设备寻址针对某一个从站进行读写操作。逻辑寻址面向过程数据,可以实现多播,同一个子报文可以读写多个从站设备。 今天在这里说一下设备寻址,不对逻辑寻址做说明。在设备寻址时,每个报文只寻址唯一的一个从站设备,EtherCAT子报文头内的32位地址分为16位从站设备地址和16位从站设备内部物理存储空间地址,如下图2 EtherCAT设备寻址结构所示。16位从站设备地址可以寻址65535个从站设备,每个设备内最多可以有64KB的本地地址空间。图2 EtherCAT设备寻址结构从图1EtherCAT网络寻址模式可以看出,设备寻址有两种不同的设备寻址机制,顺序寻址和设置寻址。顺序寻址: 顺序寻址,从字面意思我们就可以知道,是按照设备接入网段的顺序位置来确定从站地址的。在实际的应用中,用一个负数来表示每个从站在网段内按照设备接线顺序决定的位置,即从站1地址为0(0x0000),从站2地址为-1(0xFFFF),从站3地址为-2(0xFFFE)……,依次类推。为什么这样做呢?原因在于顺序寻址的自动增量寻址机制。顺序寻址子报文在经过每个从站设备时,其顺序地址加1;从站在接收到报文时,顺序地址为0的报文就是寻址到自己的报文。 举例说明:网段中有三个从站设备,其顺序寻址的地址分别为0、-1、-2。主站发出三个子报文分别寻址三个从站,其中的地址分别时0、-1、-2。数据帧到达从站1时,从站1检测到子报文1中的地址为0,从而得知子报文1就是寻址到自己的报文。数据帧经过从站1后,所有的顺序地址都增加1,成为1、0、-1。到达从站2时,从站2发现子报文2中的顺序地址为0,即为寻址到自己的报文。数据帧经过从站2后,也将所有子报文的顺序地址加1,变为2、1、0。依次类推,数据帧到达从站3时,子报文3中的顺序地址为0,即为寻址从站3的报文。经过从站3处理后,即返回主站的地址。 在实际应用中,顺序寻址主要用于启动阶段,主站配置站点地址给各个从站。此后,可以使用与物理位置无关的站点地址来寻址从站。使用顺序寻址机制能自动为从站设定地址,国内许多EtherCAT I/O扩展模块,伺服厂家采用此种寻址方式。设置寻址 设置寻址时,从站的地址与其在网段内的连接顺序无关。其地址可以由主站在数据链路启动阶段配置给从站,也可以由从站在上电初始化的时候从自身的配置数据存储区装载,然后由主站在链路启动阶段使用顺序寻址方式读取各个从站的设置地址,并在后续运行中使用。国内许多伺服厂家支持设置寻址方式,从站在上电初始化的时候从自身的配置数据存储区装载,然后由主站在链路启动阶段使用顺序寻址方式读取各个从站的设置地址。编辑于 2019-09-26 11:56伺服系统伺服电机赞同 4添加评论分享喜欢收藏申请
EtherCAT的4种寻址方式解析_ethercat 指令-CSDN博客
EtherCAT的4种寻址方式解析
苏守坤
已于 2023-11-01 08:56:26 修改
阅读量1.7k
收藏
11
点赞数
3
分类专栏:
EtherCAT
文章标签:
网络
信息与通信
于 2023-10-31 17:00:13 首次发布
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u014453443/article/details/134143553
版权
EtherCAT
专栏收录该内容
2 篇文章
0 订阅
订阅专栏
我们知道,一个EtherCAT数据帧(frame)里面包含很多个报文(datagram),不管是什么样式的报文,它们的目的只有一个,就是读写从站寄存器或内存。所以寻址就是以什么方式访问哪个从站的哪个寄存器或内存。理解了寻址方式,就可以结合具体的地址和数据,搞清楚报文对从站到底干了什么事情。
EtherCAT数据帧
1.寻址方式解析
EtherCAT寻址方式只有4种:位置寻址(Position address)、节点寻址(Node address)、广播寻址(Broadcast address)、逻辑寻址(Logical address)。表中给出了不同的Cmd所采用的寻址方式。
Cmd寻址方式和描述
不同寻址方式,报文头的Address字段组成也有所不同:不同寻址方式的Address字段组成
(1)位置寻址
又叫顺序寻址,根据从站在链路上的位置进行寻址,通常用于初始化。
Address字段包括16位ADP和16位ADO。
当从站接收到ADP为0的报文时,则对报文进行读写操作,然后再把ADP加1。(如果是读操作就把从站ADO地址对应的数据写入报文,如果是写操作就把报文中的数据写入从站ADO对应的地址)
例如要对第0个从站进行读写操作,该报文的ADP就为0,第0个从站操作完之后ADP加1,后面的从站就不会根据该报文进行任何操作。又比如要对第2个从站进行读写操作,ADP就为-2(0xFFFE),那它传到第0个从站时ADP=-2,传到第1个从站时ADP=-1,传到第2个从站时才ADP=0,相应的读写操作才会进行。
(2)节点寻址
又叫设置寻址,根据从站被配置的地址进行寻址,通常用于对单独某个从站的读写(如SDO)。
Address字段包括16位ADP和16位ADO。
其中ADP为从站被配置的地址(理论上可以为任意值),ADO为从站里面某个寄存器的地址。如果报文的ADP与从站被配置的地址(存储在寄存器中)匹配,则该从站执行相应的操作。
(3)广播寻址
对链路上的每个从站进行读写操作。
Address字段包括16位ADP和16位ADO。
ADP本身不用于寻址,但每个从站会对它进行加1操作,ADO为从站里面某个寄存器的地址。如果是广播写,从站会将报文数据写入存储;如果是广播读,从站会把存储数据与报文数据求或,再写入报文。
(4)逻辑寻址
根据FMMU映射进行寻址,通常用于PDO过程数据交互。
Address字段包括32位的Addr。
Address为逻辑起始地址(由FMMU配置,存放在0x06y0寄存器中)。如果从站FMMU与报文的Address相符,则根据配置好的映射关系,将报文中特定偏移量的数据写入从站特定的地址,或将从站特定的地址的数据读入报文中特定偏移量。
Working Counter
The Working Counter is incremented if an EtherCAT device was successfully addressed and a read operation, a write operation or a read/write operation was executed successfully. Each datagram can be assigned a value for the Working Counter that is expected after the telegram has passed through all devices. The master can check whether an EtherCAT datagram was processed successfully by comparing the value to be expected for the Working Counter with the actual value of the Working Counter after it has passed through all devices.
2.示例解析
接下来通过WireShark抓取实际EtherCAT数据包,来对不同寻址方式进行详细分析。
如图所示为某品牌六轴机械臂运行时收发的数据帧,主站通过串行方式直连6台伺服驱动器从站设备,抓包时机械臂各关节在位置模式下做简单运动。EtherCAT发送数据帧EtherCAT接收数据帧
可以看到EtherCAT数据帧中包含了位置寻址(ARMW)、逻辑寻址(LWR、LRD)、节点寻址(FPRD)和广播寻址(BRD)报文。不同Cmd指令描述见上表。
可见发送出去和接收进来的报文种类数量都没有改变,但其中的数据内容和Working Counter(Cnt)在从站的操作下发生了相应的改变。下面对每种报文进行解析。
(1)ARMW报文 发送ARMW报文接收ARMW报文
如图所示为发送和接收的ARMW报文。采用位置寻址,当从站接收到ADP为0时,将地址为ADO的寄存器内容写入报文数据,如果从站接收到ADP不为0时,则将报文数据写入地址为ADO的寄存器,操作完成后对ADP加1。
该报文用于DC时钟同步,链路上第一个具有DC功能的从站作为主时钟。因此发送数据帧ADP=0意味着只有第一个从站会把自己的0x910寄存器数值写入报文,报文中的数据就是第一个从站的系统时间,后面的从站就只是默默地把该数据读入自己的0x910寄存器中。
这里由于链路上第一个从站对该报文进行了1次写操作,另外五个从站对该报文进行了总共5次读操作,因此Cnt=1+1+5=7。
(2)LRD报文发送LRD报文接收LRD报文
如图所示为发送和接收的LRD报文。LWR、LRD都采用逻辑寻址,因此从站只需要按照约定(配置)好的,将内存中特定的数据写入报文数据中特定的位置即可。发送时该报文的数据为全零,接收回来的时候就已经被填上数据了。这里的数据内容无非就是PDO过程数据,比如伺服电机的位置、速度、电流、状态字什么的。
这里六个从站分别对该报文进行了1次写操作,因此Cnt=1+6=7。
(3)FPRD报文
发送FPRD报文接收FPRD报文
如图所示为发送和接收的FPRD报文,采用节点寻址。从站接收到ADP与自己被配置的地址相符,就把ADO地址的寄存器数据写入报文。这里链路上某个从站地址被配置为0x3ec,然后读取它的0x130寄存器的数值写入报文数据。
这里由于链路上只有一个从站对该报文进行了1次写操作,因此Cnt=0+1=1。
(4)BRD报文
发送BRD报文
接收BRD报文
如图所示为发送和接收的BRD报文。采用广播寻址,ADP没有实际意义,但每经过一个从站就会被加1。这里每个从站都会把ADO,也就是0x130地址的寄存器数值与报文中的数据按位或,然后写入报文。
查手册可知0x130寄存器存放的是从站的数据链路层状态(AL Status),当从站处于不同的状态,对应的比特位就会置1。也就是说,当报文数据中只有bit3为1时,可判断链路上所有从站都进入了OP状态;而当报文数据中bit2和bit3同时为1时(0x000c),链路上至少有一个从站处于SAFEOP且至少有一个处于OP,但具体哪一个也不知道。
这里六个从站分别对该报文进行了1次写操作,因此Cnt=2+6=8。
3.总结
总的来说,位置寻址用于从站都没有被配置,仅知道它在链路中位置的情况;节点寻址用于对从站点对点的通信,可用于从站配置和数据读取;广播寻址用于比较宽泛的设置和读取操作;逻辑寻址则用于数据量较大的读写操作,具有更高的信息密度和报文使用率。
参考网址:
EtherCAT寻址方式解析 - 知乎
Beckhoff Information System - English
优惠劵
苏守坤
关注
关注
3
点赞
踩
11
收藏
觉得还不错?
一键收藏
知道了
0
评论
EtherCAT的4种寻址方式解析
我们知道,一个EtherCAT数据帧(frame)里面包含很多个报文(datagram),不管是什么样式的报文,它们的目的只有一个,就是。所以寻址就是以什么方式访问哪个从站的哪个寄存器或内存。理解了寻址方式,就可以结合具体的地址和数据,搞清楚报文对从站到底干了什么事情。EtherCAT数据帧。
复制链接
扫一扫
专栏目录
EtherCAT报文-LRW(逻辑寻址读写)抓包分析
kevin1499的博客
11-11
541
使用Wireshark抓取EtherCAT主站发出的LRW报文,详细分析了LRW报文的组成。
SOEM-Ethercat源代码解析配套windows网卡捕捉软件包
10-14
配套的文章章节:SOEM-Ethercat源代码解析三(通讯运行环境搭建)
参与评论
您还未登录,请先
登录
后发表或查看评论
EtherCAT IgH常用命令行使用记录
Rot_Tianers
05-07
1414
该命令显示主站和从站的信息,且其生成的PDO信息可以直接被应用层的ecrt_slave_config_pdos()函数调用。用来请求从站转换状态,可选参数有INIT、PREOP、BOOT、SAFEOP、OP。显示当前支持的命令行指令,当前总共提供了 28 个命令行指令。以文本信息输出总线上连接的所有从站设备连接拓扑图。显示当前主站和从站设备的连接状态和信息。显示当前从站设备的连接状态和信息。显示当前ighH主站的版本信息。
Ethercat FMMU寻址,Working Counter
02-26
该文档描述了Ethercat的寻址,Working Counter的工作原理。
ethercat linux 主站igh程序讲解
01-08
linux,ethercat 开源master igh
汇川伺服电机
igh流程讲解
英文论文Motion Control of 6-DOF Manipulator Based on EtherCAT
六轴机械臂开源控制
EtherCAT的寻址模式
qq_28065701的博客
11-20
2875
EtherCAT工业网络通信技术的学习笔记
EtherCAT 寻址模式详解
EtherCAT
08-24
5738
1、寻址模式
寻址模式就是在EtherCAT报文的地址数据写入不同的数据和CMD是相关的
模式
内容
描述
位置寻址 / 自增量寻址
位置
各从站位置递增,postion = 0 的从站被寻址
偏移地址
ESC内部寄存器或内存地址
节点寻址 / 固定地址寻址
地址
报文的站地址设置的站地址一致时,从站被寻址
偏移地址
ESC内部寄存器或内存地址
广播
位置
每个从站对位置加1(从站不使用该位置)
偏移地址
...
页、块、程序间的关系
qq_43634879的博客
11-23
1923
页式存储
注意页和块的对象的不同
对程序进行分页存储
对内存进行分块存储
文章最后会给出我总结的页和块的关系
逻辑地址和物理地址
a)逻辑地址:由两部分组成,即页号 + 页内地址
设逻辑地址由总长度为m的二进制数表示,页内地址为n位,则页号为m-n位。
注意:
块内地址=页内地址=2n,同理最大的程序可允许有 > >2m-n个页面。
计算公式:
页号 = 逻辑地址/页长(商)
页内地址 = 逻辑地址%页长(余数)
...
EtherCat命令类型
qq_25047389的博客
10-04
230
EtherCat命令类型
EtherCAT基础之寻址方式介绍
MotroEngineer的博客
08-08
705
EtherCAT主站有三种不同的寻址方式,分别应用于EtherCAT网络配置、邮箱通信和过程数据通信。
对寻址方式的深入了解能帮助大家更好的理解EtherCAT技术,比如我们在编写针对某个从站的控制程序时,过程数据的读写并不直接针对从站的物理地址,而是操作控制器内存的某段逻辑地址,其原因即来源于对逻辑寻址的应用。
stm32f4+ucos+Ethercat-slave
04-18
包内包含SSC文件、Xml、Excel文档,实测能过,移植过程中有不懂的,可以私信我,我看到了就会回。
得克威尔早期ESI文件版本——可用来配置EtherCAT
09-23
早期得克威尔的远程IO模块ESI文件。
该版本的优点之一,就是能够在PLC端直接配置布尔类型的数组,批量映射IO点。不会像新版本一样需要一个一个去映射。
ethercat以太网报文可用wireshark打开
09-21
ethercat协议以太网报文,可以用wireshark软件打开,适用于学习ethercat报文解析,学习各种工业以太网协议可参考本人其他下载文件
车载诊断协议DoIP系列 —— AL IPv6地址分配&通用DoIP报头结构
Soly_kun的博客
03-10
208
### 本文大体如下:
### 1、系列文章目的
### 2、AL IPv6地址分配
### 3、通用DoIP报头结构
RPC通信原理(一)
最新发布
Sudo_Wang的学习记录
03-12
608
如果现在我有一个电商项目,用户要查询订单,自然而然是通过Service接口来调用订单的实现类。我们把用户模块和订单模块都放在一起,打包成一个war包,然后再tomcat上运行,tomcat占有一个进程,这个项目也是在这个进程中运行的,模块之间的调用也是在进程的本地进行调用,那么如果我是一个分布式项目该怎么解决呢?现在用户和订单模块部署在两台服务器上,这时候用户模块就不能直接调用订单模块了,只能够通过网络来进行调用,而RPC就是用来干这个事情的,。需要远程通信的各类场景。
【网络层】IPv6引进的主要变化(湖科大慕课自学笔记)
2301_77185537的博客
03-08
457
我们知道因特网使用的是TCP/IP四层体系结构,其中网际层的网际协议IP是因特网的核心协议,目前常用的是版本4(IPv4):IPv6引进的主要变化。下一代网际协议IPv6。:IPv6的诞生背景。
ChaosBlade故障注入工具--cpu,内存,磁盘占用\IO,网络注入等
Mr_wilson_liu的博客
03-07
1058
ChaosBlade故障注入工具--cpu占用,内存占用,磁盘占用\IO,网络注入等
网络安全(黑客)—自学2024
dexi113的博客
03-06
1595
我在这里可以很肯定地告诉你:"网络安全有很好的发展前景,前沿网络安全技术即将崛起,或者说已经崛起"。
深入理解网络通信协议(互联网协议)
m0_73912575的博客
03-12
672
深入理解网络通信协议(互联网协议)
ethercat协议栈解析
07-27
EtherCAT协议栈是用于实现EtherCAT通信的软件组件。它负责解析和处理EtherCAT协议,实现数据的传输和通信。根据引用\[1\],EtherCAT协议可以直接在以太网帧内传输,每个EtherCAT帧可以包含多个EtherCAT报文,每个报文对应一个逻辑过程映像区的特定内存区域。EtherCAT协议栈可以实现从站之间的广播、多播和通信,并支持主/从数据交换原理。根据引用\[2\],EtherCAT使用标准的以太网物理层和常规的以太网卡,介质可以是双绞线或光纤。根据引用\[3\],EtherCAT技术通过在报文经过从站设备时读取和插入数据,实现了极低的延迟。因此,EtherCAT协议栈的解析过程主要包括解析以太网帧、解析EtherCAT报文和处理数据的读取和插入操作。
#### 引用[.reference_title]
- *1* *2* *3* [EtherCAT协议数据传输原理](https://blog.csdn.net/tnywyn1/article/details/124764242)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
苏守坤
CSDN认证博客专家
CSDN认证企业博客
码龄10年
暂无认证
159
原创
12万+
周排名
5515
总排名
153万+
访问
等级
1万+
积分
638
粉丝
1462
获赞
324
评论
6687
收藏
私信
关注
热门文章
LM2596S-ADJ DC-DC降压芯片使用
93001
U盘安装ubuntu18.04 LTS图文详细过程
91000
稳压二极管工作原理与使用
76111
Ubuntu下修改为永久DNS的方法
72201
三极管使用详解
63232
分类专栏
EtherCAT
2篇
DynamicDataDisplay
2篇
Android
10篇
姿态解算
2篇
ROS
4篇
Andriod
4篇
mysql数据库
1篇
WPF
36篇
QT
7篇
C/C++/C#
10篇
电机控制
9篇
stm32
12篇
最新评论
C语言float有效位数为7位?
coldgentle:
没有在%f改为%.4f时,应该是十进制转为二进制,再转为十进制时转换产生的误差导致的,%.4f时就跟21年大哥说的一样
论ESP32自动下载电路
danshafaker111:
IO0在这部分以外实际上还有个按键电路,也就是BOOT,用的就是0.1uf的电容;所以如果EN也用0.1uf就不行了
使用 XAML 格式化工具:XAML Styler
DSA__:
到处抄抄抄,又不讲明怎么设置XAML,若子
LM2596S-ADJ DC-DC降压芯片使用
·705:
前辈,可以加个联系方式吗?我想请教您一下,关于这个LM2596输出电压调节的问题
论ESP32自动下载电路
梅梅不想秃头:
请问这个IO0的按键下拉有什么作用呢,是必须的嘛
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
EtherCAT的COE报文
【CANFD详细介绍与CAN区别】
【无标题】
2024年1篇
2023年3篇
2022年7篇
2021年7篇
2020年46篇
2019年55篇
2018年52篇
目录
目录
分类专栏
EtherCAT
2篇
DynamicDataDisplay
2篇
Android
10篇
姿态解算
2篇
ROS
4篇
Andriod
4篇
mysql数据库
1篇
WPF
36篇
QT
7篇
C/C++/C#
10篇
电机控制
9篇
stm32
12篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
EtherCAT从站学习笔记——2.2数据链路层 - 知乎首发于EtherCAT从站学习切换模式写文章登录/注册EtherCAT从站学习笔记——2.2数据链路层鹏飞亿里探索宇宙规律,施加适当激励。数据链路层处于ISO/OSI参考模型中的第二层,为物理层把数据帧转化为原始位,并负责将来自高层的数据打包成帧以及流量控制、纠错和帧的重发。媒体访问控制(MAC)地址、网桥和网络接口卡(NIC)即工作在这一层。数据链路层最基本的功能就是通过该层的协议使相邻两个节点之间进行可靠的数据传输。2.2.1 EtherCAT数据帧结构EtherCAT的数据帧结构采用符合标准的IEEE802.3的以太网标准帧,EtherCAT协议用于过程数据的优化协议,采用的数据帧类型为0x88A4。如图2-4所示,EtherCAT数据帧的数据内容包括:数据头(2Byte)、数据(44~1498Byte)。EtherCAT帧可包括一个或者多个EtherCAT子报文,每个报文都服务于一块逻辑过程影像区的特定内存区域(可达4GB)。每个EtherCAT子报文都以一个2Byte的WKC结束,WKC的功能是记录子报文被从站操作的次数,主站为每个通信服务子报文设置预期的WKC,通过与返回的WKC实际值进行比较来判断子报文是否被正确处理。2.2.2 EtherCAT报文寻址EtherCAT通信由主站发送EtherCAT数据帧读写从站设备的内部存储区来实现,EtherCAT报文使用多段寻址方式操作ESC内部存储区,实现多种通信服务。1) 网络寻址EtherCAT网络寻址方式如图2-5所示,一个EtherCAT网段相当于一个以太网设备,主站首先使用以太网数据帧头的MAC地址寻址到网段,然后使用EtherCAT子报文头中的32位地址寻址到段内设备,段内寻址可以使用两种方式:设备寻址和逻辑寻址。2) 设备寻址设备寻址针对某一个从站进行读写操作。在设备寻址时,EtherCAT子报文头内的32位地址分为16位从站设备地址和16位从站设备内部物理存储空间地址。如图2-6所示。16位从站设备地址可以寻址65535个从站设备,每个设备内最多可以有64K字节的本地地址空间。设备寻址时,每个报文只寻址唯一的一个从站设备。3) 逻辑寻址逻辑寻址面向过程数据,可以实现多播,同一个子报文可以读写多个从站设备。支持所有寻址模式的从站成为完整型从站,而只支持寻址模式的从站称为基本从站。逻辑寻址时,从站地址并不是单独定义的,而是使用寻址段内4GB(232)逻辑地址空间中的一段区域。报文内的32位地址区作为整体的数据逻辑地址完成设备的逻辑寻址。逻辑寻址方式由现场总线内存管理单元(FMMU, Fieldbus Memory Management Unit)实现,FMMU功能位于每一个ESC内部,将从站本地物理存储地址映射到网段内逻辑地址,如图2-7所示。FMMU单元由主站设备配置,并在数据链路启动过程中传送给从站设备。每个FMMU单元需要以下配置信息:数据逻辑位起始地址、从站物理内存起始地址、位长度、表示映射方向(输入或输出)的类型位,从站设备内的所有数据都可按位映射到主站逻辑地址。从站设备收到一个数据逻辑地址的EtherCAT子报文时,检查是否有FMMU逻辑单元地址匹配。如果有,它将输入类型数据插入到EtherCAT子报文数据区的对应位置,以及从EtherCAT子报文数据区的对应位置抽取输出类型数据。使用逻辑寻址可以灵活地组织控制系统,优化系统结构,特别适用于传输或交换周期性过程数据。2.2.3 EtherCAT通信服务EtherCAT子报文所有的服务都是以主站操作描述的。数据链路层规定了从站内部物理存储、读写和交换(读取并马上写入)数据的服务。读写操作和寻址方式共同决定了子报文的通信服务类型,由子报文中头的命令字节表示。EtherCAT支持的所有命令如表2-3所示。主站接收到返回数据帧后,检查子报文中的WKC,如果不等于预期值,则表示子报文没有被正确处理。子报文的WKC预期值与通信服务类型和寻址地址相关,子报文经过某一个从站时,如果是单独地读或写操作,WKC加1.如果是读写操作,读成功时WKC加1,写成功时WKC加2,读写全部完成时WKC加3.子报文由多个站处理时,WKC是各个从站处理结果的累加。2.2.4 分布时钟分布时钟(DC, Distributed Clock)可以使所有EtherCAT设备共享同一个EtherCAT系统时间,从而控制各设备任务的同步运作。同步性的精确度对于同步动作的分布式过程显得尤为重要,在多轴机器人中,要求多个伺服轴同时协调动作,此时若同步性出现较大差异,便会导致严重后果。而EtherCAT的数据交换基于纯硬件机制,主站可以通过发送的数据帧和返回的数据帧的时间差来计算和测量时间偏移和传输延时,同时对本地时钟的漂移进行补偿。发布于 2021-12-13 17:57数据链路层工业控制伺服电机赞同 121 条评论分享喜欢收藏申请转载文章被以下专栏收录EtherCAT从站学习EtherCAT工业现场总线,伺服系统
EtherCAT学习笔记(逻辑寻址与FMMU) - 沙河淘金 - 博客园
会员
周边
新闻
博问
AI培训
云市场
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式 ...
退出登录
注册
登录
沙河淘金
博客园
首页
新随笔
联系
订阅
管理
EtherCAT学习笔记(逻辑寻址与FMMU)
一、逻辑寻址
逻辑寻址时,从站地址并不是单独定义的,而是使用寻址段内4GB(232)逻辑地址空间中的一段区域。报文内的32位地址区作为整体的数据逻辑地址完成设备的逻辑寻址。
二、FMMU运行原理
逻辑寻址方式由现场总线内存管理单元(FMMU,Fieldbus Memory Management Unit)实现,FMMU功能位于每一个ESC内部,将从站本地物理存储地址映射到网段内逻辑逻辑地址,其原理如图所示:
FMMU单元由主站设备配置,并在数据链路启动过程中传送给从站设备。每个FMMU单元需要以下配置信息:数据逻辑位起始地址、从站物理内存起始地址、位长度、表示映射方向(输入或输出)的类型位,从站设备内的所有数据都可以映射到主站逻辑地址。表2.3和图2.18是一个映射实例,将主站控制变量区0x00014711从第3位开始的6位数据映射到由设备地址0x0F01第一位开始的6位数据写操作。0x0F01是一个开关量输出设备。
从站设备收到一个数据逻辑寻址的EtherCAT子报文时,检查是否有FMMU单元地址匹配。如果有,它将输入类型数据插入到EtherCAT子报文数据区的对应位置,以及从EtherCAT子报文数据区的对应位置抽取输出类型数据。使用逻辑寻址可以灵活地组织控制系统,优化系统结构。逻辑寻址方式特别适用于传输或交换周期性过程数据。FMMU操作具有以下功能特点:
每个数据逻辑地址字节只允许被一个FMMU读和另一个FMMU写操作,或被同一个FMMU进行读写交换操作;
对一个逻辑地址的读写操作与使用一个FMMU读和另一个FMMU写操作具有相同的结果;
按位读写操作不影响报文中没有被映射到的其他位,因此允许将几个从站ESC中的位数据映射到主站同一个逻辑字节;
读写一个未配置的逻辑地址空间不会改变其内容。
参考:《工业以太网现场总线EtherCAT驱动程序设计及应用》
posted @
2021-04-15 09:36
沙河淘金
阅读(2217)
评论(0)
编辑
收藏
举报
会员力量,点亮园子希望
刷新页面返回顶部
公告
Copyright © 2024 沙河淘金
Powered by .NET 8.0 on Kubernetes
EtherCAT�会到�会——�包解�(3) - 陈的错题集
💻陈的错题集
📜归档 ğŸ�·ï¸�æ ‡ç¾ ğŸ“‚åˆ†ç±» â�å…³äº�
💻陈的错题集
�消
📜归档ğŸ�·ï¸�æ ‡ç¾ğŸ“‚分类â�å…³äº�
目录
EtherCAT�会到�会——�包解�(3)
Jacob Chen 收录� �场总线
2023-08-27 约 1807 å—
预计阅读 4 分钟
目录
总览
EtherCAT Header
EtherCAT Datagram
例å�
EtherCAT Command Type(EtherCAT命令)
EtherCAT Addressing Modes(寻�模�)
分类
Position Address/Auto Increment Address(�置寻�)
Node Address/Configured Station Address(节点寻�)
Broadcast(广æ’)
Logical Address(逻辑寻�)
Working Counter
本æ�¥è¿˜æƒ³ç�€èµ·ä»€ä¹ˆå��å—,但是对比起内容,å��å—什么的一点都ä¸�é‡�è¦�。
最近我å�ˆæƒ³èµ·è¦�写点什么东西防æ¢æœ€å��什么都ä¸�剩下。那就ä»�EtherCAT开始å�§ï¼�
总览
EtherCAT ä½¿ç”¨æ ‡å‡†çš„IEEE 802.3ä»¥å¤ªç½‘å¸§ï¼Œå› æ¤å�¯ä»¥ä½¿ç”¨æ ‡å‡†çš„网络æ�§åˆ¶å™¨ï¼Œä¸»ç«™ä¹Ÿæ— 需使用特殊的硬件。
EtherCAT 帧的 EtherType 0x88A4,以区别äº�å…¶ä»–ä»¥å¤ªç½‘å¸§ã€‚å› æ¤ï¼ŒEtherCAT å�¯ä»¥ä¸�其他以太网å��议并行è¿�行。
EtherCAT ä¸�需è¦� IPå��议,但是也å�¯ä»¥å°�装在 UDP/IP å��è®®ä¸ï¼ˆä¸Šå›¾ä¸ç¬¬2ç§�情况)。
EtherCAT Header
å—段
数�类�
�述
Length
11 bit
EtherCAT Datagrams 的长度,ä¸�包括 FCSï¼ˆæ ¡éªŒï¼‰ä»�ç«™ä¸�检查
Reserved
1 bit
�留,0
Type
4 bit
�议类�。�有当 Type = 0x1 时,�站 ESC �会执行 EtherCAT Command
EtherCAT Datagram
å—段
数�类�
�述
Cmd
byte
EtherCAT Command Type(EtherCAT命令)
Idx
byte
索引。由主站生æˆ�,ä»�站用äº�åˆ¤æ– Datagram 是å�¦é‡�å¤�或者丢失。
Address
dword
地�数�
Len
11 bit
该 Datagram 所�带的 Data 部分的大�
R
3 bit
Reserved,�留
C
1 bit
Circulating Frame,循�帧。0:该帧未被循�1:该帧循�过一次
M
1 bit
0:(Last)最�一次 EtherCAT datagram 1: (More Follow)��还有 EtherCAT datagrams
IRQ
word
将所有�站的 EtherCAT Event Request registers 进行逻辑或(OR)�算
Data
byte[n]
读�或写入的数�
WKC
word
Working Counter,工作计数器,Datagram �被处�一次就自�相应的数值
例å�
EtherCAT Command Type(EtherCAT命令)
模�
EtherCAT命令(Cmd值)
读/写
�述
触��件
WKC
æ—
NOP(0)
æ—
没有�作
æ—
0
Position Address�置寻�(顺�寻�)
APRD(1)
R
��站读�一定长度数�
ADP=0
1
APWR(2)
W
��站写入一定长度数�
1
APRW(3)
RW
��站交�数�
3(1+2)
Node Address节点寻�(站�寻�)
FPRD(4)
R
��站读�一定长度数�
ADP=conf. station adr.
1
FPWR(5)
W
��站写入一定长度数�
1
FPRW(6)
RW
��站交�数�
3(1+2)
Broadcast广æ’
BRD(7)
R
主站å�‘所有ä»�站的内å˜åŒºè¯»å�–æ•°æ�®å¹¶å�šé€»è¾‘或(OR)æ“�作
all
�执行到该指令的�站个数相关
BWR(8)
W
主站广æ’写入所有ä»�ç«™
BRW(9)
RW
主站�所有�站交�数�,对读�的数��逻辑或(OR)�作
Logical Address逻辑寻�
LRD(10)
R
读�一定长度数�
FMMU
LWR(11)
W
写入一定长度数�
LRW(12)
RW
��站交�数�
Position Address�置寻�(顺�寻�)
ARMW(13)
RW
读��站数�,并写入之�所有�站的相�地�
Read: ADP=0Write: ADP≠0
Node Address节点寻�(站�寻�)
FRMW(14)
RW
读��站数�,并写入之�所有�站的相�地�
Read: ADP= conf. station adr.Write: ADP≠conf. station adr.
EtherCAT Addressing Modes(寻�模�)
由� Address 数�的定义�寻�方�相关,这就导致了执行��的 EtherCAT Command(EtherCAT命令)时,解� Address 的方�就会有所��。
分类
寻�模�
å—段
数�类�
�述
Device Addressing设备寻�
Position Addressing�置寻�
Position
WORD
Each slave increments Position. Slave is addressed if Position = 0.
Offset
WORD
Local register or memory address of the ESC
Node Addressing节点寻�
Address
WORD
Slave is addressed if Address matches Configured Station Address or Configured Station Alias (if enabled).
Offset
WORD
Local register or memory address of the ESC
Broadcast广æ’
Position
WORD
Each slave increments Position (not used for addressing)
Offset
WORD
Local register or memory address of the ESC
Logical Addressing逻辑寻�
Address
DWORD
Logical Address (configured by FMMUs) Slave is addressed if FMMU configuration matches Address.
Position Address/Auto Increment Address(�置寻�)
ä¸»ç«™ä¼šæ ¹æ�®è¦�访问的ä»�站对象,将 Address ä¸çš„ Position 设置为 0 或者 负值。
Datagram ��过一个�站,Position + 1。
ä»�站读å�– Position 的值,如æ�œç‰äº�0,ä»�站将在æ�¥æ”¶æ—¶æ‰§è¡Œç›¸åº”的命令。
�置寻�应该�在 EtherCAT 系统�动时用�扫��站,以���尔用�检测新��的�站。
Node Address/Configured Station Address(节点寻�)
直�由�制器设定��站的固定站�,且�能由�站�更改。
ä¸� Position Address(ä½�置寻å�€ï¼‰çš„地å�€å½¼æ¤ç‹¬ç«‹ï¼Œä¸�å®�体é…�线顺åº�æ— å…³ã€‚
Address ä¸çš„ Address 值ä¸�é…�置的ä»�站站å�·ç›¸ç‰æ—¶ï¼Œåˆ™ä»�站执行相应命令。
通常用äº�å¯¹ä¸ªåˆ«å’Œå·²æ ‡è¯†çš„è®¾å¤‡çš„å¯„å˜å™¨è®¿é—®ï¼ˆå¦‚ Mailbox 访问)。
以 Codesys 系统举例,�置寻��节点寻�的��
Broadcast(广æ’)
�一个 EtherCAT �站都会执行。
广æ’寻å�€ä¸€èˆ¬ç”¨äº�检查所有ä»�站的状æ€�ã€�åˆ�始化ä»�ç«™ç‰å·¥ä½œã€‚
Logical Address(逻辑寻�)
主站会将所有需è¦�读写的数æ�®å…¨éƒ¨æ”¾åœ¨å�Œä¸€ä¸ªé€»è¾‘地å�€ç©ºé—´ä¸ï¼ˆ4GB)。
在 EtherCAT 网络å�¯åŠ¨æ—¶ï¼Œä¸»ç«™ä¼šé…�置好æ¯�个ä»�站的 FMMU(ç�°åœºæ€»çº¿å˜å‚¨å™¨ç®¡ç�†å�•å…ƒï¼‰ã€‚
ä»�ç«™ä»� FMMU çš„é…�置信æ�¯å¾—知,逻辑地å�€ä¸�ä»�站的物ç�†åœ°å�€ä¹‹é—´çš„æ˜ å°„å…³ç³»ã€‚
逻辑寻å�€ç”¨äº�Process Data(PDOï¼‰çš„ä¼ è¾“ï¼Œé€šè¿‡å¯¹ç©ºé—´åœ°å�€çš„æ˜ å°„ï¼Œæ�¥æ��å�‡å°�åŒ…çš„ä¼ è¾“æ•ˆç�‡ã€‚
Working Counter
�个 EtherCAT Datagram 都以一个16�工作计数器(WKC)结�。
Working Counter 计算这个 EtherCAT Datagram �功寻�的设备数�(�执行的次数)。
�个Datagram都应该有一个由主站计算的预期 Working Counter 值。主站�以通过比较 Working Counter 和期望值�检查 EtherCAT Datagram 的有效处�。
命令
类�
自�值
Read command
No success
+0
Successful read
+1
Write command
No success
+0
Successful write
+1
ReadWrite command
No success
+0
Successful read
+1
Successful write
+2
Successful read and write
+3
�考资料:
ET1100datasheet
更新� 2023-08-27
阅读�始文档
EtherCAT
返� | 主页
Rediså¦ä¹ 笔记——订阅å�‘布
EtherCATä»�会到ä¸�会——ESI文档ã€�对象å—典(4)
由 Hugo 强力驱动 | 主题 - LoveIt
2023 - 2024 Jacob Chen | CC BY-NC-SA 4.0
EtherCAT Technology Group | 技术概览
EN
|
DE
|
ES
|
IT
|
CN
|
JP
主页
新闻
市场活动
新闻发布
联系方式
会员专区
搜索
技术概览 技术概览 为何使用EtherCAT? 协会组织 常见问题 会员相关 供应商ID 产品指南 资料下载 一致性测试 EtherCAT G EtherCAT P Safety over EtherCAT EtherCAT 和 TSN 技术汇编 开发者论坛 知识库
退出
EtherCAT - 以太网现场总线
本文深入阐述了基于以太网现场总线系统的EtherCAT (Ethernet for Control Automation Technology)技术。EtherCAT为现场总线技术领域树立了新的性能标准,具备灵活的网络拓扑结构,系统配置简单,和现场总线系统一样操作直观简便。另外,由于EtherCAT实施的成本低廉,因此使系统得以在过去无法应用现场总线网络的场合中选用该现场总线。
1. 引言
1.1 以太网和实时能力
2. EtherCAT 运行原理
3. EtherCAT 技术特征
3.1 协议
3.2 拓扑
3.3 分布时钟
3.4 性能
3.5 诊断
3.6 高可靠性
3.7 安全性
3.8 EtherCAT 取代PCI
3.9 设备行规
3.9.1 EtherCAT实现CAN总线应用层协议 (CoE)
3.9.2 EtherCAT实现伺服驱动设备行规IEC61491 (SoE)
3.10 EtherCAT实现以太网(EoE)
3.11 EtherCAT实现文件读取(FoE)
3.12 ADS over EtherCAT (AoE)
4. 基础设施成本
5. EtherCAT 实施
5.1 主站
5.1.1 主站实施服务
5.1.2 主站样本代码
5.2 从站
5.2.1 EtherCAT Slave Controller
5.2.2 从站评估工具包
6. 小结
7. 参考文献
1. 引言
页首
现场总线已成为自动化技术的集成组件,通过大量的实践试验和测试,如今已获得广泛应用。正是由于现场总线技术的普及,才使基于PC的控制系统得以广泛应用。然而,虽然控制器CPU的性能(尤其是IPC的性能)发展迅猛,但传统的现场总线系统正日趋成为控制系统性能发展的“瓶颈”。急需技术革新的另一个因素则是由于传统的解决方案并不十分理想。传统的方案是,按层划分的控制体系通常都由几个辅助系统所组成(周期系统):即实际控制任务、现场总线系统、I/O系统中的本地扩展总线或外围设备的简单本地固件周期。正常情况下,系统响应时间是控制器周期时间的3-5倍。 在现场总线系统之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术 (参见图1)。
图1: 传统现场总线系统响应时间
在现场总线系统 之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术。
1.1 以太网和实时能力
目前,有许多方案力求实现以太网的实时能力。例如,CSMA/CD介质存取过程方案,即禁止高层协议访问过程,而由时间片或轮循方式所取代的一种解决方案;另一种解决方案则是通过专用交换机精确控制时间的方式来分配以太网包。这些方案虽然可以在某种程度上快速准确地将数据包传送给所连接的以太网节点,但是,输出或驱动控制器重定向所需要的时间以及读取输入数据所需要的时间都要受制于具体的实现方式。
如果将单个以太网 帧用于每个设备,那么,理论上讲,其可用数据率非常低。例如,最短的以太网帧为84字节(包括内部的包间隔IPG)。如果一个驱动器周期性地发送4字节的实际值和状态信息,并相应地同时接收4字节的命令值和控制字信息,那么,即便是总线负荷为100%(即:无限小的驱动响应时间)时,其可用数据率也只能达到4/84= 4.8%。如果按照10 µs的平均响应时间估计,则速率将下降到1.9%。对所有发送以太网 帧到每个设备(或期望帧来自每个设备)的实时以太网方式而言,都存在这些限制,但以太网帧内部所使用的协议则是例外。
2. EtherCAT 运行原理
页首
EtherCAT技术突破了其他以太网解决方案的系统限制:通过该项技术,无需接收以太网数据包,将其解码,之后再将过程数据复制到各个设备。EtherCAT从站设备在报文经过其节点时读取相应的编址数据,同样,输入数据也是在报文经过时插入至报文中(参见图2)。整个过程中,报文只有几纳秒的时间延迟。
图 2: 过程数据插入至报文中
由于发送和接收的以太网帧压缩了大量的设备数据,所以有效数据率可达90%以上。100 Mb/s TX的全双工特性完全得以利用,因此,有效数据率可 大于100 Mb/s(即大于2 x 100 Mb/s的90%)(参见图3)。
图 3: 带宽利用率的比较
符合IEEE 802.3标准的以太网协议无需附加任何总线即可访问各个设备。耦合设备中的物理层可以将双绞线或光纤转换为LVDS(一种可供选择的以太网物理层标准[4,5]),以满足电子端子块等模块化设备的需求。这样,就可以非常经济地对模块化设备进行扩展了。之后,便可以如普通以太网一样,随时进行从底板物理层LVDS到100 Mb/s TX物理层的转换。
3. EtherCAT 技术特征
页首
3.1 协议
EtherCAT是用于过程数据的优化协议,凭借特殊的以太网类型,它可以在以太网帧内直接传送。EtherCAT帧可包括几个EtherCAT报文,每个报文都服务于一块逻辑过程映像区的特定内存区域,该区域最大可达4GB字节。数据顺序不依赖于网络中以太网端子的物理顺序,可任意编址。从站之间的广播、多播和通讯均得以实现。当需要实现最佳性能,且要求EtherCAT组件和控制器在同一子网操作时,则直接以太网帧传输就将派上用场。
然而,EtherCAT不仅限于单个子网的应用。EtherCAT UDP将EtherCAT协议封装为UDP/IP数据报文(参见图4),这就意味着,任何以太网协议堆栈的控制均可编址到EtherCAT系统之中,甚至通讯还可以通过路由器跨接到其它子网中。显然,在这种变体结构中,系统性能取决于控制的实时特性和以太网协议的实现方式。因为UDP数据报文仅在第一个站才完成解包,所以EtherCAT网络自身的响应时间基本不受影响。
图 4: EtherCAT:符合IEEE 802.3 [3]的标准帧
另外,根据主/从数据交换原理,EtherCAT也非常适合控制器之间(主/从)的通讯。自由编址的网络变量可用于过程数据以及参数、诊断、编程和各种远程控制服务,满足广泛的应用需求。主站/从站与主站/主站之间的数据通讯接口也相同。
从站到从站的通讯则有两种机制以供选择。一种机制是,上游设备和下游设备可以在同一周期内实现通讯,速度非常快。由于这种方法与拓扑结构相关,因此适用于由设备架构设计所决定的从站到从站的通讯,如打印或包装应用等。而对于自由配置的从站到从站的通讯,则可以采用第二种机制—数据通过主站进行中继。这种机制需要两个周期才能完成,但由于EtherCAT的性能非常卓越,因此该过程耗时仍然快于采用其他方法所耗费的时间。
按照文献[3]所述,EtherCAT仅使用标准的以太网帧,无任何压缩。因此,EtherCAT 以太网帧可以通过任何以太网MAC发送,并可以使用标准工具(如:监视器)。
3.2 拓扑
EtherCAT几乎支持任何拓扑类型,包括线型、树型、星型等(参见图5)。通过现场总线而得名的总线结构或线型结构也可用于以太网,并且不受限于级联交换机或集线器的数量。
图 5: 灵活的拓扑结构:线型、树型或星型拓扑
最有效的系统连线方法是对线型、分支或树叉结构进行拓扑组合。因为所需接口在I/O 模块等很多设备中都已存在,所以无需附加交换机。当然,仍然可以使用传统的、基于以太网的星型拓扑结构。
还可以选择不同的电缆以提升连线的灵活性:灵活、经济的标准超五类以太网电缆可采用100BASE-TX模式传送信号;塑封光纤(PFO)则可用于特殊应用场合;还可通过交换机或介质转换器实现不同以太网连线(如:不同的光纤和铜电缆)的完整组合。
快速以太网的物理层(100BASE-TX )允许两个设备之间的最大电缆长度为100米。由于连接的设备数量可高达65535,因此,网络的容量几乎没有限制。
3.3. 分布时钟
精确同步对于同时动作的分布式过程而言尤为重要。例如,几个伺服轴同时执行协调运动时,便是如此。
最有效的同步方法是精确排列分布时钟(请参阅IEEE 1588标准[6])。与完全同步通讯中通讯出现故障会立刻影响同步品质的情况相比,分布排列的时钟对于通讯系统中可能存在的相关故障延迟具有极好的容错性。
采用EtherCAT,数据交换就完全基于纯硬件机制。由于通讯采用了逻辑环结构 (借助于全双工快速以太网的物理层),主站时钟可以简单、精确地确定各个从站时钟传播的延迟偏移,反之亦然。分布时钟均基于该值进行调整,这意味着可以在网络范围内使用非常精确的、小于1 微秒的、确定性的同步误差时间基(参见图6)。而跨接工厂等外部同步则可以基于IEEE 1588 标准。
图 6: 同步性与一致性:相距电缆长度为有120米的两个分布系统,
带有300个节点的示波器比较
此外,高分辨率的分布时钟不仅可以用于同步,还可以提供数据采集的本地时间精确信息。当采样时间非常短暂时,即使是出现一个很小的位置测量瞬时同步偏差,也会导致速度计算出现较大的阶跃变化,例如,运动控制器通过顺序检测的位置计算速度便是如此。而在EtherCAT中,引入时间戳数据类型作为一个逻辑扩展,以太网所提供的巨大带宽使得高分辨率的系统时间得以与测量值进行链接。这样,速度的精确计算就不再受到通讯系统的同步误差值影响,其精度要高于基于自由同步误差的通讯测量技术。
3.4 性能
EtherCAT使网络性能达到了一个新境界。借助于从站硬件集成和网络控制器主站的直接内存存取,整个协议的处理过程都在硬件中得以实现,因此,完全独立于协议堆栈的实时运行系统、CPU 性能或软件实现方式。1000个I/O的更新时间只需30 µs,其中还包括I/O周期时间(参见表1)。单个以太网帧最多可进行1486字节的过程数据交换,几乎相当于12000个数字输入和输出,而传送这些数据耗时仅为300 µs。
表 1: EtherCAT性能概貌
100个伺服轴的通讯也非常快速:可在每100µs中更新带有命令值和控制数据的所有轴的实际位置及状态,分布时钟技术使轴的同步偏差小于1微秒。而即使是在保证这种性能的情况下,带宽仍足以实现异步通讯,如TCP/IP、下载参数或上载诊断数据。
超高性能的EtherCAT技术可以实现传统的现场总线系统无法迄及的控制理念。EtherCAT使通讯技术和现代工业PC所具有的超强计算能力相适应,总线系统不再是控制理念的瓶颈,分布式I/O可能比大多数本地I/O接口运行速度更快。EtherCAT技术原理具有可塑性,并不束缚于100 M bps的通讯速率,甚至有可能扩展为1000 M bps的以太网。
3.5 诊断
现场总线系统的实际应用经验表明,有效性和试运行时间关键取决于诊断能力。只有快速而准确地检测出故障,并明确标明其所在位置,才能快速排除故障。因此,在EtherCAT的研发过程中,特别注重强化诊断特征。
试运行期间,驱动或I/O 端子等节点的实际配置需要与指定的配置进行匹配性检查,拓扑结构也需要与配置相匹配。由于整合的拓扑识别过程已延伸至各个端子,因此,这种检查不仅可以在系统启动期间进行,也可以在网络自动读取时进行(配置上载)。
可以通过评估CRC校验,有效检测出数据传送期间的位故障——32 位CRC多项式的最小汉明距为4。除断线检测和定位之外,EtherCAT系统的协议、物理层和拓扑结构还可以对各个传输段分别进行品质监视,与错误计数器关联的自动评估还可以对关键的网络段进行精确定位。此外,对于电磁干扰、连接器破损或电缆损坏等一些渐变或突变的错误源而言,即便它们尚未过度应变到网络自恢复能力的范围,也可对其进行检测与定位。
3.6 高可靠性
选择冗余电缆可以满足快速增长的系统可靠性需求,以保证设备更换时不会导致网络瘫痪。您可以很经济地增加冗余特性,仅需在主站设备端增加使用一个标准的以太网端口(无需专用网卡或接口),并将单一的电缆从总线型拓扑结构转变为环型拓扑结构即可(见图7)。当设备或电缆发生故障时,也仅需一个周期即可完成切换。因此,即使是针对运动控制要求的应用,电缆出现故障时也不会有任何问题。EtherCAT也支持热备份的主站冗余。由于在环路中断时EtherCAT从站控制器芯片将立刻自动返回数据帧,一个设备的失败不会导致整个网络的瘫痪。例如,拖链设备可以配置为分支拓扑以防线缆断开。
图 7: 使用标准从站设备的低成本线缆冗余
3.7 安全性
为了实现EtherCAT安全数据通信,EtherCAT安全通信协议已经在ETG组织内部公开。EtherCAT被用作传输安全和非安全数据的单一通道。传输介质被认为是“黑色通道”而不被包括在安全协议中(见图8)。EtherCAT过程数据中的安全数据报文包括安全过程数据和所要求的数据备份。这个“容器”在设备的应用层被安全地解析。通信仍然是单一通道的。这符合IEC61784-3附件中的模型A。
图 8: 使用黑色通道的EtherCAT安全通信软件构件
EtherCAT安全协议已经由德国技术监督局(TÜV SÜD Rail)评估为满足IEC61508定义的SIL3等级的安全设备之间传输过程数据的通信协议。设备上实施EtherCAT安全协议必须满足安全目标的需求。相应的产品相关要求也必须考虑进来。
图 9: EtherCAT安全系统
图9中的应用示例受益于这种技术。安全元件在自动化系统中所需要的任意地方都可以使用。系统中可以使用不同规模的本地输入和输出元件。可以根据需求使用安全或非安全总线端子扩展额外的输入和输出。安全逻辑也嵌入到网络当中。这样不用安全扩展的标准PLC可以继续处理控制任务。安全输入和输出功能需要的本地安全逻辑由智能化的安全总线端子实现。这节约了昂贵的安全PLC所带来的成本,并可以根据当前任务随意裁剪逻辑功能。只有安全EtherCAT主站和所分配的安全从站通过非安全的标准PLC路由。
本协议在安全数据长度,通信介质或波特率方面么有限制。
EtherCAT被用作“黑色通道”,即,通信系统在安全处理中没有任何作用。
协议被鉴定符合IEC61508定义的SIL3等级
提供EtherCAT安全功能的产品已经于2005年就上市了。
3.8 EtherCAT 取代PCI
随着PC组件急剧向小型化方向发展,工业PC的体积日趋取决于插槽的数目。而快速以太网的带宽和EtherCAT通讯硬件的过程数据长度则为该领域的发展提供了新的可能性——IPC 中的传统接口现在可以转变为集成的EtherCAT接口端子(参见图10)。除了可以对分布式I/O进行编址,还可以对驱动和控制单元以及现场总线主站、快速串行接口、网关和其它通讯接口等复合系统进行编址。
图 10: 分布式现场总线接口
即使是其他无协议限制的以太网设备变体,也可以通过分布式交换机端口设备进行连接。由于一个以太网接口足以满足整个外围设备的通讯 (参见图11),因此,这不仅极大地精简了IPC主机的体积和外观,而且也降低了IPC主机的成本。
图 11: EtherCAT使控制器的体积显著减小
3.9 设备行规
设备行规描述了设备的应用参数和功能特性,如设备类别相关的机器状态等。现场总线技术已经为I/O设备、驱动、阀等许多设备类别提供了可利用的设备行规。用户非常熟悉这些行规以及相关的参数和工具,因此,EtherCAT无需为这些设备类别重新开发设备行规,而是为现有的设备行规提供了简单的接口。该特性使得用户和设备制造商可以轻松完成从现有的现场总线到EtherCAT技术的转换过程。
3.9.1 EtherCAT实现CANopen (CoE)
CANopen©设备和应用行规广泛用于多种设备类别和应用,如I/O组件、驱动、编码器、比例阀、液压控制器,以及用于塑料或纺织行业的应用行规等。EtherCAT可以提供与CANopen机制[7]相同的通讯机制,包括对象字典、PDO(过程数据对象)、SDO(服务数据对象),甚至于网络管理。因此,在已经安装了CANopen的设备中,仅需稍加变动即可轻松实现EtherCAT,绝大部分的CANopen©固件都得以重复利用。并且,可以选择性地扩展对象,以便利用EtherCAT所提供的巨大带宽。
3.9.2 EtherCAT实施伺服驱动 设备行规IEC 61491 (SoE)
SERCOS interface™ 是全球公认的、用于高性能实时运行系统的通讯接口,尤其适用于运动控制的应用场合。用于伺服驱动和通讯技术的SERCOS™框架属于IEC 61491标准[8] 的范畴。该伺服驱动框架可以轻松地映射到 EtherCAT中,嵌入于驱动中的服务通道、全部参数存取以及功能都基于EtherCAT邮箱(参见图12)。在此,关注焦点还是EtherCAT与现有协议的兼容性(IDN的存取值、属性、名称、单位等),以及与数据长度限制相关的扩展性。过程数据,即形式为AT和MDT的SERCOS™数据,都使用EtherCAT从站控制器机制进行传送,其映射与SERCOS映射相似。并且,EtherCAT从站的设备状态也可以非常容易地映射为SERCOS™协议状态。EtherCAT从站状态机可以很容易地映射到SERCOS™协议的通信阶段。EtherCAT为这种在CNC行业中广泛使用的设备行规提供了先进的实时以太网技术。这种设备行规的优点与EtherCAT分布时钟提供的优点相结合,保证了网络范围内精确时钟同步。可以任意传输位置命令,速度命令或扭矩命令。取决于实现方式,甚至可能继续使用相同的设备配置工具。
图 12: 同时并存的多个设备行规和协议
3.10 EtherCAT实现以太网(EoE)
EtherCAT技术不仅完全兼容以太网,而且在“设计”之初就具备良好的开放性特征——该协议可以在相同的物理层网络中包容其它基于以太网的服务和协议,通常可将其性能损失降到最小。对以太网的设备类型没有限制,设备可通过交换机端口在EtherCAT段内进行连接。以太网帧通过EtherCAT协议开通隧道,这也正是VPN、 PPPoE (DSL) 等因特网应用所普遍采取的方法。EtherCAT网络对以太网设备而言是完全透明的,其实时特性也不会发生畸变(参见图13)。
图 13: 对所有以太网协议完全透明
EtherCAT设备可以包容其它的以太网协议,因此具备标准以太网设备的一切特性。主站的作用与第2层交换机所起的作用一样,可按照编址信息将以太网帧重新定向到相应的设备。因此,集成万维网服务器、电子邮件和FTP 传送等所有的因特网技术都可以在EtherCAT的环境中得以应用。
3.11 EtherCAT实现文件读取(FoE)
这种简单的协议与TFTP类似,允许存取设备中的任何数据结构。因此,无论设备是否支持TCP/IP,都有可能将标准化固件上载到设备上。
3.12 ADS over EtherCAT (AoE)
ADS over EtherCAT (AoE)是由EtherCAT规范定义的客户端-服务器邮箱协议。尽管CoE协议提供了详尽的描述,但AoE则更适合路由与并行服务的应用:通过网关设备访问子网络,如EtherCAT至CANopen® 或 EtherCAT至IO-Link™ 网关设备。AoE使EtherCAT主站应用(如PLC程序)可以访问所属CANopen® 或 IO-Link™从站的各个参数。AoE路由机制开销远低于因特网协议(IP)所定义的开销,并且发送方和接收方寻址参数始终包含在AoE报文中。因此,EtherCAT主站和从站端的实施更为精简。AoE也通过EtherCAT自动化协议(EAP)进行非周期通信的标准化,从而为上位机MES系统或主计算机、EtherCAT主站及其从属的现有设备之间提供无缝通信。同时,AoE也提供了从远程诊断工具获取EtherCAT网络诊断信息的标准化方法。
4. 基础设施成本
页首
由于EtherCAT无需集线器和交换机,因此,在环境条件允许的情况下,可以节省电源、安装费用等设备方面的投资,只需使用标准的以太网电缆和价格低廉的标准连接器即可。如果环境条件有特殊要求,则可以依照IEC标准,使用增强密封保护等级的连接器。
5. EtherCAT 实施
页首
EtherCAT技术是面向经济的设备而开发的,如I/O 端子、传感器和嵌入式控制器等。EtherCAT使用遵循IEEE802.3标准的以太网帧。这些帧由主站设备发送,从站设备只是在以太网帧经过其所在位置时才提取和/或插入数据。因此,EtherCAT 使用标准的以太网MAC,这正是其在主站设备方面智能化的表现。同样,EtherCAT在从站控制器中使用专用芯片,这也是其在从站设备方面智能化的表现——无论本地处理能力是否强大或软件品质好坏与否,专用芯片均可在硬件中处理过程数据协议,并提供最佳实时性能。
5.1 主站
EtherCAT可以在单个以太网帧中最多实现1486字节的分布式过程数据通讯。其它解决方案一般是,主站设备需要在每个网络周期中为各个节点处理、发送和接收帧。而EtherCAT系统与此不同之处在于,在通常情况下,每周期仅需要一个或两个帧即可完成所有节点的全部通讯,因此,EtherCAT主站不需要专用的通讯处理器。主站功能几乎不会给主机CPU带来任何负担,轻松处理这些任务的同时,还可以处理应用程序,因此EtherCAT 无需使用昂贵的专用有源插接卡,只需使用无源的NIC卡或主板集成的以太网MAC设备即可。EtherCAT主站很容易实现,尤其适用于中小规模的控制系统和有明确规定的应用场合。
例如,如果某个单个过程映像的PLC没有超过1486 字节,那么在其周期时间内循环发送这个以太网帧就足够了。因为报文头运行时不会发生变化,所以只需将常数报文头插入到过程映像中,并将结果传送到以太网控制器即可。
EtherCAT映射不是在主站产生,而是在从站产生(外围设备将数据插入所经以太网帧的相应位置),因此,此时过程映像已经完成排序。该特性进一步减轻了主机CPU的负担。可以看到,EtherCAT主站完全在主机CPU中采用软件方式实现,相比之下,传统的慢速现场总线系统通过有源插接卡方可实现主站的方式则要占用更多的资源,甚至服务于DPRAM的有源卡本身也将占用可观的主机资源。
系统配置工具(通过生产商获取)可提供包括相应的标准 XML 格式启动顺序在内的网络和设备参数。
图 14: 主站实施的单个过程映像
5.1.1 主站实施服务
已经在各种实时操作系统上实现了EtherCAT主站,包括但并不限于:eCos, INtime, MICROWARE OS-9, MQX, On Time RTOS-32, Proconos OS, Real-Time Java, RT Kernel, RT-Linux, RTX, RTXC, RTAI Linux, PikeOS, Linux with RT-Preempt, QNX, VxWin + CeWin, VxWorks, Windows CE, Windows XP/XPE with CoDeSys SP RTE, Windows NT/NTE/2000/XP/XPE/Vista with TwinCAT RTE, Windows 7 and XENOMAI Linux.
可以获得开源主站协议栈,作为示例代码或商业软件。也有各种公司提供各种硬件平台上的实施服务。可以在EtherCAT网站上的产品区找到快速增长的供应商信息[1]。
5.1.2 主站样本代码
另一种EtherCAT主站的实现方式是使用样本代码,花费不高。软件以源代码形式提供,包括所有的EtherCAT主站功能,甚至还包括EoE(EtherCAT实现以太网)功能(见图15)。开发人员只要把这些应用于Windows环境的代码与目标硬件及所使用的RTOS加以匹配就可以了。该软件代码已经成功应用于多个系统。
图 15: 主站样本代码结构
5.2 从站
EtherCAT从站设备使用一个价格低廉的从站控制器芯片ESC。从站不需要微处理器就可以实现EtherCAT通信。可以通过I/O接口实现的简单设备可以只由ESC和其下的PHY,变压器和RJ45接头。给从站的过程数据接口是32位的I/O接口。这种从站没有可配置的参数,所以不需要软件或邮箱协议。EtherCAT状态机由ESC处理。ESC的启动信息从EEPROM中读取,它也支持从站的身份识别。更复杂的可配置从站有使用一个CPU。这个CPU和ESC之间使用8位或16位并行接口或串行SPI接口。要求的CPU性能取决于从站的应用,EtherCAT协议软件在其上运行。EtherCAT协议栈管理EtherCAT状态机和应用层协议,可以实现CoE协议和支持固件下载的FoE协议。EoE协议也可以实施。
5.2.1 EtherCAT Slave Controller
目前,有多家制造商均提供EtherCAT从站控制器。通过价格低廉的FPGA,也可实现从站控制器的功能,可以购买授权以获取相应的二进制代码。
从站控制器通常都有一个内部的DPRAM,并提供存取这些应用内存的接口范围:
串行SPI(串行外围接口)主要用于数量较小的过程数据设备,如模拟量I/O模块、传感器、编码器和简单驱动等。该接口通常使用8位微控制器,如微型芯片PIC、DSP、Intel 80C51等(见图16)。
8/16位微控制器并行接口与带有DPRAM接口的传统现场总线控制器接口相对应,尤其适用于数据量较大的复杂设备。通常情况下,微控制器使用的接口包括Infineon 80C16x、Intel 80x86、Hitachi SH1、ST10、ARM和TI TMS320等系列(见图16)。
32位并行I/O接口不仅可以连接多达32位数字输入/输出,而且也适用于简单的传感器或执行器的32位数据操作。这类设备无需主机CPU(见图17)。
图 16: 从站硬件:带主机CPU的FPGA
图 17: 从站硬件:带直接I/O的FPGA
关于EtherCAT从站控制器的最新信息,请登录EtherCAT网站[1]。
5.2.2 从站评估工具包
倍福公司提供的从站评估工具包使接口操作变得简便易行。由于采用了EtherCAT,无需功能强大的通讯处理器,因此,可将从站评估工具包中的8位微处理器作为主机CPU使用。该工具包还包括源代码形式的从站主机软件(相当于协议堆栈)和参考主站软件包(TwinCAT)。
6. 小结
页首
EtherCAT 拥有杰出的通讯性能,接线非常简单,并对其它协议开放。传统的现场总线系统已达到了极限,而EtherCAT则突破建立了新的技术标准——30 µs内可以更新1000个I/O数据,可选择双绞线或光纤,并利用以太网和因特网技术实现垂直优化集成。使用 EtherCAT,可以用简单的线型拓扑结构替代昂贵的星型以太网拓扑结构,无需昂贵的基础组件。EtherCAT还可以使用传统的交换机连接方式,以集成其它的以太网设备。其它的实时以太网方案需要与控制器进行特殊连接,而EtherCAT只需要价格低廉的标准以太网卡(NIC) 便可实现。
EtherCAT拥有多种机制,支持主站到从站、从站到从站以及主站到主站之间的通讯(参见图18)。它实现了安全功能,采用技术可行且经济实用的方法,使以太网技术可以向下延伸至I/O级。EtherCAT功能优越,可以完全兼容以太网,可将因特网技术嵌入到简单设备中,并最大化地利用了以太网所提供的巨大带宽,是一种实时性能优越且成本低廉的网络技术。
图 19: 网络结构形式多样
7. 参考文献
页首
[1]
EtherCAT Technology Group (ETG)
http://www.ethercat.org
[2]
IEC 61158-3/4/5/6-12 (Ed.1.0), Industrial communication networks – Fieldbus specifications – Part 3-12: Data-link layer service definition – Part 4-12: Data-link layer protocol specification – Part 5-12: Application layer service definition – Part 6-12: Application layer protocol specification – Type 12 elements (EtherCAT)
[3]
IEEE 802.3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications
[4]
IEEE 802.3ae-2002: CSMA/CD Access Method and Physical Layer Specifications: Media Access Control (MAC) Parameters, Physical Layers, and Management Parameters for 10 Gb/s Operation
[5]
ANSI/TIA/EIA-644-A, Electrical Characteristics of Low Voltage Differential Signaling (LVDS) Interface Circuits
[6]
IEEE 1588-2002: IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems
[7]
EN 50325-4: Industrial communications subsystem based on ISO 11898 (CAN) for controller-device interfaces. Part 4: CANopen
[8]
IEC 61800-7-301/304 (Ed.1.0), Adjustable speed electrical power drive systems – Part 7-301: Generic interface and use of profiles for power drive systems – Mapping of profile type 1 to network technologies – Part 7-304: Generic interface and use of profiles for power drive systems – Mapping of profile type 4 to network technologies
[9]
SEMI E54.20: Standard for Sensor/Actuator Network Communications for EtherCAT.
http://www.semi.org
[10]
IEC 61784-2 (Ed.1.0), Industrial communication networks – Profiles – Part 2: Additional fieldbus profiles for real-time networks based on ISO/IEC 8802-3
EtherCAT样本
了解更多关于最快的“工业以太网现场总线”的详细信息
中文
英文
德文
西班牙语
意大利文
法语
日文
韩文
EtherCAT多媒体视频
EtherCAT技术协会
工业以太网通信技术EtherCAT运行原理
EtherCAT技术简介
一点湿货 -- EtherCAT设备寻址方式(1) - 知乎切换模式写文章登录/注册一点湿货 -- EtherCAT设备寻址方式(1)twincat热爱 EtherCAT 是一辈子的事在EtherCAT的每个子报文中,有32位空间用于对EtherCAT设备进行寻址。寻址方式有三种,分别为:位置寻址节点寻址逻辑寻址位置寻址位置寻址方式是根据从站的连接顺序,即物理位置实现的。在报文头的32bit地址中,前16bit的Position用于存放地址值,Offset用于存放ESC逻辑寄存器或者内存地址。报文每经过一个从站设备,其Position中的地址值加1。当一个从站接收到EtherCAT报文后,如果报文中的地址值为0,则该报文就是这个从站要要接收的报文。在上图中,如果需要总线上第8个设备响应报文,则主站需要将报文的地址设为0xFFF9,当报文经过第1个从站时,地址为0xFFF9,不等于0,第1个从站不会响应报文,报文地址加1,变为0xFFFA。当报文经过第2个从站时,地址为0XFFFA,不等于0,第2个从站不会响应该报文,报文地址加1,变为0xFFFB。以此类推,当报文到达第8个从站时,此时地址值为0x0000,当前从站将接收报文。以上是EtherCAT的位置寻址方式。发布于 2017-01-06 19:29自动化赞同 132 条评论分享喜欢收藏申请
EtherCAT Technology Group | 技术概览
EN
|
DE
|
ES
|
IT
|
CN
|
JP
主页
新闻
市场活动
新闻发布
联系方式
会员专区
搜索
技术概览 技术概览 为何使用EtherCAT? 协会组织 常见问题 会员相关 供应商ID 产品指南 资料下载 一致性测试 EtherCAT G EtherCAT P Safety over EtherCAT EtherCAT 和 TSN 技术汇编 开发者论坛 知识库
退出
EtherCAT - 以太网现场总线
本文深入阐述了基于以太网现场总线系统的EtherCAT (Ethernet for Control Automation Technology)技术。EtherCAT为现场总线技术领域树立了新的性能标准,具备灵活的网络拓扑结构,系统配置简单,和现场总线系统一样操作直观简便。另外,由于EtherCAT实施的成本低廉,因此使系统得以在过去无法应用现场总线网络的场合中选用该现场总线。
1. 引言
1.1 以太网和实时能力
2. EtherCAT 运行原理
3. EtherCAT 技术特征
3.1 协议
3.2 拓扑
3.3 分布时钟
3.4 性能
3.5 诊断
3.6 高可靠性
3.7 安全性
3.8 EtherCAT 取代PCI
3.9 设备行规
3.9.1 EtherCAT实现CAN总线应用层协议 (CoE)
3.9.2 EtherCAT实现伺服驱动设备行规IEC61491 (SoE)
3.10 EtherCAT实现以太网(EoE)
3.11 EtherCAT实现文件读取(FoE)
3.12 ADS over EtherCAT (AoE)
4. 基础设施成本
5. EtherCAT 实施
5.1 主站
5.1.1 主站实施服务
5.1.2 主站样本代码
5.2 从站
5.2.1 EtherCAT Slave Controller
5.2.2 从站评估工具包
6. 小结
7. 参考文献
1. 引言
页首
现场总线已成为自动化技术的集成组件,通过大量的实践试验和测试,如今已获得广泛应用。正是由于现场总线技术的普及,才使基于PC的控制系统得以广泛应用。然而,虽然控制器CPU的性能(尤其是IPC的性能)发展迅猛,但传统的现场总线系统正日趋成为控制系统性能发展的“瓶颈”。急需技术革新的另一个因素则是由于传统的解决方案并不十分理想。传统的方案是,按层划分的控制体系通常都由几个辅助系统所组成(周期系统):即实际控制任务、现场总线系统、I/O系统中的本地扩展总线或外围设备的简单本地固件周期。正常情况下,系统响应时间是控制器周期时间的3-5倍。 在现场总线系统之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术 (参见图1)。
图1: 传统现场总线系统响应时间
在现场总线系统 之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术。
1.1 以太网和实时能力
目前,有许多方案力求实现以太网的实时能力。例如,CSMA/CD介质存取过程方案,即禁止高层协议访问过程,而由时间片或轮循方式所取代的一种解决方案;另一种解决方案则是通过专用交换机精确控制时间的方式来分配以太网包。这些方案虽然可以在某种程度上快速准确地将数据包传送给所连接的以太网节点,但是,输出或驱动控制器重定向所需要的时间以及读取输入数据所需要的时间都要受制于具体的实现方式。
如果将单个以太网 帧用于每个设备,那么,理论上讲,其可用数据率非常低。例如,最短的以太网帧为84字节(包括内部的包间隔IPG)。如果一个驱动器周期性地发送4字节的实际值和状态信息,并相应地同时接收4字节的命令值和控制字信息,那么,即便是总线负荷为100%(即:无限小的驱动响应时间)时,其可用数据率也只能达到4/84= 4.8%。如果按照10 µs的平均响应时间估计,则速率将下降到1.9%。对所有发送以太网 帧到每个设备(或期望帧来自每个设备)的实时以太网方式而言,都存在这些限制,但以太网帧内部所使用的协议则是例外。
2. EtherCAT 运行原理
页首
EtherCAT技术突破了其他以太网解决方案的系统限制:通过该项技术,无需接收以太网数据包,将其解码,之后再将过程数据复制到各个设备。EtherCAT从站设备在报文经过其节点时读取相应的编址数据,同样,输入数据也是在报文经过时插入至报文中(参见图2)。整个过程中,报文只有几纳秒的时间延迟。
图 2: 过程数据插入至报文中
由于发送和接收的以太网帧压缩了大量的设备数据,所以有效数据率可达90%以上。100 Mb/s TX的全双工特性完全得以利用,因此,有效数据率可 大于100 Mb/s(即大于2 x 100 Mb/s的90%)(参见图3)。
图 3: 带宽利用率的比较
符合IEEE 802.3标准的以太网协议无需附加任何总线即可访问各个设备。耦合设备中的物理层可以将双绞线或光纤转换为LVDS(一种可供选择的以太网物理层标准[4,5]),以满足电子端子块等模块化设备的需求。这样,就可以非常经济地对模块化设备进行扩展了。之后,便可以如普通以太网一样,随时进行从底板物理层LVDS到100 Mb/s TX物理层的转换。
3. EtherCAT 技术特征
页首
3.1 协议
EtherCAT是用于过程数据的优化协议,凭借特殊的以太网类型,它可以在以太网帧内直接传送。EtherCAT帧可包括几个EtherCAT报文,每个报文都服务于一块逻辑过程映像区的特定内存区域,该区域最大可达4GB字节。数据顺序不依赖于网络中以太网端子的物理顺序,可任意编址。从站之间的广播、多播和通讯均得以实现。当需要实现最佳性能,且要求EtherCAT组件和控制器在同一子网操作时,则直接以太网帧传输就将派上用场。
然而,EtherCAT不仅限于单个子网的应用。EtherCAT UDP将EtherCAT协议封装为UDP/IP数据报文(参见图4),这就意味着,任何以太网协议堆栈的控制均可编址到EtherCAT系统之中,甚至通讯还可以通过路由器跨接到其它子网中。显然,在这种变体结构中,系统性能取决于控制的实时特性和以太网协议的实现方式。因为UDP数据报文仅在第一个站才完成解包,所以EtherCAT网络自身的响应时间基本不受影响。
图 4: EtherCAT:符合IEEE 802.3 [3]的标准帧
另外,根据主/从数据交换原理,EtherCAT也非常适合控制器之间(主/从)的通讯。自由编址的网络变量可用于过程数据以及参数、诊断、编程和各种远程控制服务,满足广泛的应用需求。主站/从站与主站/主站之间的数据通讯接口也相同。
从站到从站的通讯则有两种机制以供选择。一种机制是,上游设备和下游设备可以在同一周期内实现通讯,速度非常快。由于这种方法与拓扑结构相关,因此适用于由设备架构设计所决定的从站到从站的通讯,如打印或包装应用等。而对于自由配置的从站到从站的通讯,则可以采用第二种机制—数据通过主站进行中继。这种机制需要两个周期才能完成,但由于EtherCAT的性能非常卓越,因此该过程耗时仍然快于采用其他方法所耗费的时间。
按照文献[3]所述,EtherCAT仅使用标准的以太网帧,无任何压缩。因此,EtherCAT 以太网帧可以通过任何以太网MAC发送,并可以使用标准工具(如:监视器)。
3.2 拓扑
EtherCAT几乎支持任何拓扑类型,包括线型、树型、星型等(参见图5)。通过现场总线而得名的总线结构或线型结构也可用于以太网,并且不受限于级联交换机或集线器的数量。
图 5: 灵活的拓扑结构:线型、树型或星型拓扑
最有效的系统连线方法是对线型、分支或树叉结构进行拓扑组合。因为所需接口在I/O 模块等很多设备中都已存在,所以无需附加交换机。当然,仍然可以使用传统的、基于以太网的星型拓扑结构。
还可以选择不同的电缆以提升连线的灵活性:灵活、经济的标准超五类以太网电缆可采用100BASE-TX模式传送信号;塑封光纤(PFO)则可用于特殊应用场合;还可通过交换机或介质转换器实现不同以太网连线(如:不同的光纤和铜电缆)的完整组合。
快速以太网的物理层(100BASE-TX )允许两个设备之间的最大电缆长度为100米。由于连接的设备数量可高达65535,因此,网络的容量几乎没有限制。
3.3. 分布时钟
精确同步对于同时动作的分布式过程而言尤为重要。例如,几个伺服轴同时执行协调运动时,便是如此。
最有效的同步方法是精确排列分布时钟(请参阅IEEE 1588标准[6])。与完全同步通讯中通讯出现故障会立刻影响同步品质的情况相比,分布排列的时钟对于通讯系统中可能存在的相关故障延迟具有极好的容错性。
采用EtherCAT,数据交换就完全基于纯硬件机制。由于通讯采用了逻辑环结构 (借助于全双工快速以太网的物理层),主站时钟可以简单、精确地确定各个从站时钟传播的延迟偏移,反之亦然。分布时钟均基于该值进行调整,这意味着可以在网络范围内使用非常精确的、小于1 微秒的、确定性的同步误差时间基(参见图6)。而跨接工厂等外部同步则可以基于IEEE 1588 标准。
图 6: 同步性与一致性:相距电缆长度为有120米的两个分布系统,
带有300个节点的示波器比较
此外,高分辨率的分布时钟不仅可以用于同步,还可以提供数据采集的本地时间精确信息。当采样时间非常短暂时,即使是出现一个很小的位置测量瞬时同步偏差,也会导致速度计算出现较大的阶跃变化,例如,运动控制器通过顺序检测的位置计算速度便是如此。而在EtherCAT中,引入时间戳数据类型作为一个逻辑扩展,以太网所提供的巨大带宽使得高分辨率的系统时间得以与测量值进行链接。这样,速度的精确计算就不再受到通讯系统的同步误差值影响,其精度要高于基于自由同步误差的通讯测量技术。
3.4 性能
EtherCAT使网络性能达到了一个新境界。借助于从站硬件集成和网络控制器主站的直接内存存取,整个协议的处理过程都在硬件中得以实现,因此,完全独立于协议堆栈的实时运行系统、CPU 性能或软件实现方式。1000个I/O的更新时间只需30 µs,其中还包括I/O周期时间(参见表1)。单个以太网帧最多可进行1486字节的过程数据交换,几乎相当于12000个数字输入和输出,而传送这些数据耗时仅为300 µs。
表 1: EtherCAT性能概貌
100个伺服轴的通讯也非常快速:可在每100µs中更新带有命令值和控制数据的所有轴的实际位置及状态,分布时钟技术使轴的同步偏差小于1微秒。而即使是在保证这种性能的情况下,带宽仍足以实现异步通讯,如TCP/IP、下载参数或上载诊断数据。
超高性能的EtherCAT技术可以实现传统的现场总线系统无法迄及的控制理念。EtherCAT使通讯技术和现代工业PC所具有的超强计算能力相适应,总线系统不再是控制理念的瓶颈,分布式I/O可能比大多数本地I/O接口运行速度更快。EtherCAT技术原理具有可塑性,并不束缚于100 M bps的通讯速率,甚至有可能扩展为1000 M bps的以太网。
3.5 诊断
现场总线系统的实际应用经验表明,有效性和试运行时间关键取决于诊断能力。只有快速而准确地检测出故障,并明确标明其所在位置,才能快速排除故障。因此,在EtherCAT的研发过程中,特别注重强化诊断特征。
试运行期间,驱动或I/O 端子等节点的实际配置需要与指定的配置进行匹配性检查,拓扑结构也需要与配置相匹配。由于整合的拓扑识别过程已延伸至各个端子,因此,这种检查不仅可以在系统启动期间进行,也可以在网络自动读取时进行(配置上载)。
可以通过评估CRC校验,有效检测出数据传送期间的位故障——32 位CRC多项式的最小汉明距为4。除断线检测和定位之外,EtherCAT系统的协议、物理层和拓扑结构还可以对各个传输段分别进行品质监视,与错误计数器关联的自动评估还可以对关键的网络段进行精确定位。此外,对于电磁干扰、连接器破损或电缆损坏等一些渐变或突变的错误源而言,即便它们尚未过度应变到网络自恢复能力的范围,也可对其进行检测与定位。
3.6 高可靠性
选择冗余电缆可以满足快速增长的系统可靠性需求,以保证设备更换时不会导致网络瘫痪。您可以很经济地增加冗余特性,仅需在主站设备端增加使用一个标准的以太网端口(无需专用网卡或接口),并将单一的电缆从总线型拓扑结构转变为环型拓扑结构即可(见图7)。当设备或电缆发生故障时,也仅需一个周期即可完成切换。因此,即使是针对运动控制要求的应用,电缆出现故障时也不会有任何问题。EtherCAT也支持热备份的主站冗余。由于在环路中断时EtherCAT从站控制器芯片将立刻自动返回数据帧,一个设备的失败不会导致整个网络的瘫痪。例如,拖链设备可以配置为分支拓扑以防线缆断开。
图 7: 使用标准从站设备的低成本线缆冗余
3.7 安全性
为了实现EtherCAT安全数据通信,EtherCAT安全通信协议已经在ETG组织内部公开。EtherCAT被用作传输安全和非安全数据的单一通道。传输介质被认为是“黑色通道”而不被包括在安全协议中(见图8)。EtherCAT过程数据中的安全数据报文包括安全过程数据和所要求的数据备份。这个“容器”在设备的应用层被安全地解析。通信仍然是单一通道的。这符合IEC61784-3附件中的模型A。
图 8: 使用黑色通道的EtherCAT安全通信软件构件
EtherCAT安全协议已经由德国技术监督局(TÜV SÜD Rail)评估为满足IEC61508定义的SIL3等级的安全设备之间传输过程数据的通信协议。设备上实施EtherCAT安全协议必须满足安全目标的需求。相应的产品相关要求也必须考虑进来。
图 9: EtherCAT安全系统
图9中的应用示例受益于这种技术。安全元件在自动化系统中所需要的任意地方都可以使用。系统中可以使用不同规模的本地输入和输出元件。可以根据需求使用安全或非安全总线端子扩展额外的输入和输出。安全逻辑也嵌入到网络当中。这样不用安全扩展的标准PLC可以继续处理控制任务。安全输入和输出功能需要的本地安全逻辑由智能化的安全总线端子实现。这节约了昂贵的安全PLC所带来的成本,并可以根据当前任务随意裁剪逻辑功能。只有安全EtherCAT主站和所分配的安全从站通过非安全的标准PLC路由。
本协议在安全数据长度,通信介质或波特率方面么有限制。
EtherCAT被用作“黑色通道”,即,通信系统在安全处理中没有任何作用。
协议被鉴定符合IEC61508定义的SIL3等级
提供EtherCAT安全功能的产品已经于2005年就上市了。
3.8 EtherCAT 取代PCI
随着PC组件急剧向小型化方向发展,工业PC的体积日趋取决于插槽的数目。而快速以太网的带宽和EtherCAT通讯硬件的过程数据长度则为该领域的发展提供了新的可能性——IPC 中的传统接口现在可以转变为集成的EtherCAT接口端子(参见图10)。除了可以对分布式I/O进行编址,还可以对驱动和控制单元以及现场总线主站、快速串行接口、网关和其它通讯接口等复合系统进行编址。
图 10: 分布式现场总线接口
即使是其他无协议限制的以太网设备变体,也可以通过分布式交换机端口设备进行连接。由于一个以太网接口足以满足整个外围设备的通讯 (参见图11),因此,这不仅极大地精简了IPC主机的体积和外观,而且也降低了IPC主机的成本。
图 11: EtherCAT使控制器的体积显著减小
3.9 设备行规
设备行规描述了设备的应用参数和功能特性,如设备类别相关的机器状态等。现场总线技术已经为I/O设备、驱动、阀等许多设备类别提供了可利用的设备行规。用户非常熟悉这些行规以及相关的参数和工具,因此,EtherCAT无需为这些设备类别重新开发设备行规,而是为现有的设备行规提供了简单的接口。该特性使得用户和设备制造商可以轻松完成从现有的现场总线到EtherCAT技术的转换过程。
3.9.1 EtherCAT实现CANopen (CoE)
CANopen©设备和应用行规广泛用于多种设备类别和应用,如I/O组件、驱动、编码器、比例阀、液压控制器,以及用于塑料或纺织行业的应用行规等。EtherCAT可以提供与CANopen机制[7]相同的通讯机制,包括对象字典、PDO(过程数据对象)、SDO(服务数据对象),甚至于网络管理。因此,在已经安装了CANopen的设备中,仅需稍加变动即可轻松实现EtherCAT,绝大部分的CANopen©固件都得以重复利用。并且,可以选择性地扩展对象,以便利用EtherCAT所提供的巨大带宽。
3.9.2 EtherCAT实施伺服驱动 设备行规IEC 61491 (SoE)
SERCOS interface™ 是全球公认的、用于高性能实时运行系统的通讯接口,尤其适用于运动控制的应用场合。用于伺服驱动和通讯技术的SERCOS™框架属于IEC 61491标准[8] 的范畴。该伺服驱动框架可以轻松地映射到 EtherCAT中,嵌入于驱动中的服务通道、全部参数存取以及功能都基于EtherCAT邮箱(参见图12)。在此,关注焦点还是EtherCAT与现有协议的兼容性(IDN的存取值、属性、名称、单位等),以及与数据长度限制相关的扩展性。过程数据,即形式为AT和MDT的SERCOS™数据,都使用EtherCAT从站控制器机制进行传送,其映射与SERCOS映射相似。并且,EtherCAT从站的设备状态也可以非常容易地映射为SERCOS™协议状态。EtherCAT从站状态机可以很容易地映射到SERCOS™协议的通信阶段。EtherCAT为这种在CNC行业中广泛使用的设备行规提供了先进的实时以太网技术。这种设备行规的优点与EtherCAT分布时钟提供的优点相结合,保证了网络范围内精确时钟同步。可以任意传输位置命令,速度命令或扭矩命令。取决于实现方式,甚至可能继续使用相同的设备配置工具。
图 12: 同时并存的多个设备行规和协议
3.10 EtherCAT实现以太网(EoE)
EtherCAT技术不仅完全兼容以太网,而且在“设计”之初就具备良好的开放性特征——该协议可以在相同的物理层网络中包容其它基于以太网的服务和协议,通常可将其性能损失降到最小。对以太网的设备类型没有限制,设备可通过交换机端口在EtherCAT段内进行连接。以太网帧通过EtherCAT协议开通隧道,这也正是VPN、 PPPoE (DSL) 等因特网应用所普遍采取的方法。EtherCAT网络对以太网设备而言是完全透明的,其实时特性也不会发生畸变(参见图13)。
图 13: 对所有以太网协议完全透明
EtherCAT设备可以包容其它的以太网协议,因此具备标准以太网设备的一切特性。主站的作用与第2层交换机所起的作用一样,可按照编址信息将以太网帧重新定向到相应的设备。因此,集成万维网服务器、电子邮件和FTP 传送等所有的因特网技术都可以在EtherCAT的环境中得以应用。
3.11 EtherCAT实现文件读取(FoE)
这种简单的协议与TFTP类似,允许存取设备中的任何数据结构。因此,无论设备是否支持TCP/IP,都有可能将标准化固件上载到设备上。
3.12 ADS over EtherCAT (AoE)
ADS over EtherCAT (AoE)是由EtherCAT规范定义的客户端-服务器邮箱协议。尽管CoE协议提供了详尽的描述,但AoE则更适合路由与并行服务的应用:通过网关设备访问子网络,如EtherCAT至CANopen® 或 EtherCAT至IO-Link™ 网关设备。AoE使EtherCAT主站应用(如PLC程序)可以访问所属CANopen® 或 IO-Link™从站的各个参数。AoE路由机制开销远低于因特网协议(IP)所定义的开销,并且发送方和接收方寻址参数始终包含在AoE报文中。因此,EtherCAT主站和从站端的实施更为精简。AoE也通过EtherCAT自动化协议(EAP)进行非周期通信的标准化,从而为上位机MES系统或主计算机、EtherCAT主站及其从属的现有设备之间提供无缝通信。同时,AoE也提供了从远程诊断工具获取EtherCAT网络诊断信息的标准化方法。
4. 基础设施成本
页首
由于EtherCAT无需集线器和交换机,因此,在环境条件允许的情况下,可以节省电源、安装费用等设备方面的投资,只需使用标准的以太网电缆和价格低廉的标准连接器即可。如果环境条件有特殊要求,则可以依照IEC标准,使用增强密封保护等级的连接器。
5. EtherCAT 实施
页首
EtherCAT技术是面向经济的设备而开发的,如I/O 端子、传感器和嵌入式控制器等。EtherCAT使用遵循IEEE802.3标准的以太网帧。这些帧由主站设备发送,从站设备只是在以太网帧经过其所在位置时才提取和/或插入数据。因此,EtherCAT 使用标准的以太网MAC,这正是其在主站设备方面智能化的表现。同样,EtherCAT在从站控制器中使用专用芯片,这也是其在从站设备方面智能化的表现——无论本地处理能力是否强大或软件品质好坏与否,专用芯片均可在硬件中处理过程数据协议,并提供最佳实时性能。
5.1 主站
EtherCAT可以在单个以太网帧中最多实现1486字节的分布式过程数据通讯。其它解决方案一般是,主站设备需要在每个网络周期中为各个节点处理、发送和接收帧。而EtherCAT系统与此不同之处在于,在通常情况下,每周期仅需要一个或两个帧即可完成所有节点的全部通讯,因此,EtherCAT主站不需要专用的通讯处理器。主站功能几乎不会给主机CPU带来任何负担,轻松处理这些任务的同时,还可以处理应用程序,因此EtherCAT 无需使用昂贵的专用有源插接卡,只需使用无源的NIC卡或主板集成的以太网MAC设备即可。EtherCAT主站很容易实现,尤其适用于中小规模的控制系统和有明确规定的应用场合。
例如,如果某个单个过程映像的PLC没有超过1486 字节,那么在其周期时间内循环发送这个以太网帧就足够了。因为报文头运行时不会发生变化,所以只需将常数报文头插入到过程映像中,并将结果传送到以太网控制器即可。
EtherCAT映射不是在主站产生,而是在从站产生(外围设备将数据插入所经以太网帧的相应位置),因此,此时过程映像已经完成排序。该特性进一步减轻了主机CPU的负担。可以看到,EtherCAT主站完全在主机CPU中采用软件方式实现,相比之下,传统的慢速现场总线系统通过有源插接卡方可实现主站的方式则要占用更多的资源,甚至服务于DPRAM的有源卡本身也将占用可观的主机资源。
系统配置工具(通过生产商获取)可提供包括相应的标准 XML 格式启动顺序在内的网络和设备参数。
图 14: 主站实施的单个过程映像
5.1.1 主站实施服务
已经在各种实时操作系统上实现了EtherCAT主站,包括但并不限于:eCos, INtime, MICROWARE OS-9, MQX, On Time RTOS-32, Proconos OS, Real-Time Java, RT Kernel, RT-Linux, RTX, RTXC, RTAI Linux, PikeOS, Linux with RT-Preempt, QNX, VxWin + CeWin, VxWorks, Windows CE, Windows XP/XPE with CoDeSys SP RTE, Windows NT/NTE/2000/XP/XPE/Vista with TwinCAT RTE, Windows 7 and XENOMAI Linux.
可以获得开源主站协议栈,作为示例代码或商业软件。也有各种公司提供各种硬件平台上的实施服务。可以在EtherCAT网站上的产品区找到快速增长的供应商信息[1]。
5.1.2 主站样本代码
另一种EtherCAT主站的实现方式是使用样本代码,花费不高。软件以源代码形式提供,包括所有的EtherCAT主站功能,甚至还包括EoE(EtherCAT实现以太网)功能(见图15)。开发人员只要把这些应用于Windows环境的代码与目标硬件及所使用的RTOS加以匹配就可以了。该软件代码已经成功应用于多个系统。
图 15: 主站样本代码结构
5.2 从站
EtherCAT从站设备使用一个价格低廉的从站控制器芯片ESC。从站不需要微处理器就可以实现EtherCAT通信。可以通过I/O接口实现的简单设备可以只由ESC和其下的PHY,变压器和RJ45接头。给从站的过程数据接口是32位的I/O接口。这种从站没有可配置的参数,所以不需要软件或邮箱协议。EtherCAT状态机由ESC处理。ESC的启动信息从EEPROM中读取,它也支持从站的身份识别。更复杂的可配置从站有使用一个CPU。这个CPU和ESC之间使用8位或16位并行接口或串行SPI接口。要求的CPU性能取决于从站的应用,EtherCAT协议软件在其上运行。EtherCAT协议栈管理EtherCAT状态机和应用层协议,可以实现CoE协议和支持固件下载的FoE协议。EoE协议也可以实施。
5.2.1 EtherCAT Slave Controller
目前,有多家制造商均提供EtherCAT从站控制器。通过价格低廉的FPGA,也可实现从站控制器的功能,可以购买授权以获取相应的二进制代码。
从站控制器通常都有一个内部的DPRAM,并提供存取这些应用内存的接口范围:
串行SPI(串行外围接口)主要用于数量较小的过程数据设备,如模拟量I/O模块、传感器、编码器和简单驱动等。该接口通常使用8位微控制器,如微型芯片PIC、DSP、Intel 80C51等(见图16)。
8/16位微控制器并行接口与带有DPRAM接口的传统现场总线控制器接口相对应,尤其适用于数据量较大的复杂设备。通常情况下,微控制器使用的接口包括Infineon 80C16x、Intel 80x86、Hitachi SH1、ST10、ARM和TI TMS320等系列(见图16)。
32位并行I/O接口不仅可以连接多达32位数字输入/输出,而且也适用于简单的传感器或执行器的32位数据操作。这类设备无需主机CPU(见图17)。
图 16: 从站硬件:带主机CPU的FPGA
图 17: 从站硬件:带直接I/O的FPGA
关于EtherCAT从站控制器的最新信息,请登录EtherCAT网站[1]。
5.2.2 从站评估工具包
倍福公司提供的从站评估工具包使接口操作变得简便易行。由于采用了EtherCAT,无需功能强大的通讯处理器,因此,可将从站评估工具包中的8位微处理器作为主机CPU使用。该工具包还包括源代码形式的从站主机软件(相当于协议堆栈)和参考主站软件包(TwinCAT)。
6. 小结
页首
EtherCAT 拥有杰出的通讯性能,接线非常简单,并对其它协议开放。传统的现场总线系统已达到了极限,而EtherCAT则突破建立了新的技术标准——30 µs内可以更新1000个I/O数据,可选择双绞线或光纤,并利用以太网和因特网技术实现垂直优化集成。使用 EtherCAT,可以用简单的线型拓扑结构替代昂贵的星型以太网拓扑结构,无需昂贵的基础组件。EtherCAT还可以使用传统的交换机连接方式,以集成其它的以太网设备。其它的实时以太网方案需要与控制器进行特殊连接,而EtherCAT只需要价格低廉的标准以太网卡(NIC) 便可实现。
EtherCAT拥有多种机制,支持主站到从站、从站到从站以及主站到主站之间的通讯(参见图18)。它实现了安全功能,采用技术可行且经济实用的方法,使以太网技术可以向下延伸至I/O级。EtherCAT功能优越,可以完全兼容以太网,可将因特网技术嵌入到简单设备中,并最大化地利用了以太网所提供的巨大带宽,是一种实时性能优越且成本低廉的网络技术。
图 19: 网络结构形式多样
7. 参考文献
页首
[1]
EtherCAT Technology Group (ETG)
http://www.ethercat.org
[2]
IEC 61158-3/4/5/6-12 (Ed.1.0), Industrial communication networks – Fieldbus specifications – Part 3-12: Data-link layer service definition – Part 4-12: Data-link layer protocol specification – Part 5-12: Application layer service definition – Part 6-12: Application layer protocol specification – Type 12 elements (EtherCAT)
[3]
IEEE 802.3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications
[4]
IEEE 802.3ae-2002: CSMA/CD Access Method and Physical Layer Specifications: Media Access Control (MAC) Parameters, Physical Layers, and Management Parameters for 10 Gb/s Operation
[5]
ANSI/TIA/EIA-644-A, Electrical Characteristics of Low Voltage Differential Signaling (LVDS) Interface Circuits
[6]
IEEE 1588-2002: IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems
[7]
EN 50325-4: Industrial communications subsystem based on ISO 11898 (CAN) for controller-device interfaces. Part 4: CANopen
[8]
IEC 61800-7-301/304 (Ed.1.0), Adjustable speed electrical power drive systems – Part 7-301: Generic interface and use of profiles for power drive systems – Mapping of profile type 1 to network technologies – Part 7-304: Generic interface and use of profiles for power drive systems – Mapping of profile type 4 to network technologies
[9]
SEMI E54.20: Standard for Sensor/Actuator Network Communications for EtherCAT.
http://www.semi.org
[10]
IEC 61784-2 (Ed.1.0), Industrial communication networks – Profiles – Part 2: Additional fieldbus profiles for real-time networks based on ISO/IEC 8802-3
EtherCAT样本
了解更多关于最快的“工业以太网现场总线”的详细信息
中文
英文
德文
西班牙语
意大利文
法语
日文
韩文
EtherCAT多媒体视频
EtherCAT技术协会
工业以太网通信技术EtherCAT运行原理
EtherCAT技术简介
EtherCAT Technology Group | 技术概览
EN
|
DE
|
ES
|
IT
|
CN
|
JP
主页
新闻
市场活动
新闻发布
联系方式
会员专区
搜索
技术概览 技术概览 为何使用EtherCAT? 协会组织 常见问题 会员相关 供应商ID 产品指南 资料下载 一致性测试 EtherCAT G EtherCAT P Safety over EtherCAT EtherCAT 和 TSN 技术汇编 开发者论坛 知识库
退出
EtherCAT - 以太网现场总线
本文深入阐述了基于以太网现场总线系统的EtherCAT (Ethernet for Control Automation Technology)技术。EtherCAT为现场总线技术领域树立了新的性能标准,具备灵活的网络拓扑结构,系统配置简单,和现场总线系统一样操作直观简便。另外,由于EtherCAT实施的成本低廉,因此使系统得以在过去无法应用现场总线网络的场合中选用该现场总线。
1. 引言
1.1 以太网和实时能力
2. EtherCAT 运行原理
3. EtherCAT 技术特征
3.1 协议
3.2 拓扑
3.3 分布时钟
3.4 性能
3.5 诊断
3.6 高可靠性
3.7 安全性
3.8 EtherCAT 取代PCI
3.9 设备行规
3.9.1 EtherCAT实现CAN总线应用层协议 (CoE)
3.9.2 EtherCAT实现伺服驱动设备行规IEC61491 (SoE)
3.10 EtherCAT实现以太网(EoE)
3.11 EtherCAT实现文件读取(FoE)
3.12 ADS over EtherCAT (AoE)
4. 基础设施成本
5. EtherCAT 实施
5.1 主站
5.1.1 主站实施服务
5.1.2 主站样本代码
5.2 从站
5.2.1 EtherCAT Slave Controller
5.2.2 从站评估工具包
6. 小结
7. 参考文献
1. 引言
页首
现场总线已成为自动化技术的集成组件,通过大量的实践试验和测试,如今已获得广泛应用。正是由于现场总线技术的普及,才使基于PC的控制系统得以广泛应用。然而,虽然控制器CPU的性能(尤其是IPC的性能)发展迅猛,但传统的现场总线系统正日趋成为控制系统性能发展的“瓶颈”。急需技术革新的另一个因素则是由于传统的解决方案并不十分理想。传统的方案是,按层划分的控制体系通常都由几个辅助系统所组成(周期系统):即实际控制任务、现场总线系统、I/O系统中的本地扩展总线或外围设备的简单本地固件周期。正常情况下,系统响应时间是控制器周期时间的3-5倍。 在现场总线系统之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术 (参见图1)。
图1: 传统现场总线系统响应时间
在现场总线系统 之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术。
1.1 以太网和实时能力
目前,有许多方案力求实现以太网的实时能力。例如,CSMA/CD介质存取过程方案,即禁止高层协议访问过程,而由时间片或轮循方式所取代的一种解决方案;另一种解决方案则是通过专用交换机精确控制时间的方式来分配以太网包。这些方案虽然可以在某种程度上快速准确地将数据包传送给所连接的以太网节点,但是,输出或驱动控制器重定向所需要的时间以及读取输入数据所需要的时间都要受制于具体的实现方式。
如果将单个以太网 帧用于每个设备,那么,理论上讲,其可用数据率非常低。例如,最短的以太网帧为84字节(包括内部的包间隔IPG)。如果一个驱动器周期性地发送4字节的实际值和状态信息,并相应地同时接收4字节的命令值和控制字信息,那么,即便是总线负荷为100%(即:无限小的驱动响应时间)时,其可用数据率也只能达到4/84= 4.8%。如果按照10 µs的平均响应时间估计,则速率将下降到1.9%。对所有发送以太网 帧到每个设备(或期望帧来自每个设备)的实时以太网方式而言,都存在这些限制,但以太网帧内部所使用的协议则是例外。
2. EtherCAT 运行原理
页首
EtherCAT技术突破了其他以太网解决方案的系统限制:通过该项技术,无需接收以太网数据包,将其解码,之后再将过程数据复制到各个设备。EtherCAT从站设备在报文经过其节点时读取相应的编址数据,同样,输入数据也是在报文经过时插入至报文中(参见图2)。整个过程中,报文只有几纳秒的时间延迟。
图 2: 过程数据插入至报文中
由于发送和接收的以太网帧压缩了大量的设备数据,所以有效数据率可达90%以上。100 Mb/s TX的全双工特性完全得以利用,因此,有效数据率可 大于100 Mb/s(即大于2 x 100 Mb/s的90%)(参见图3)。
图 3: 带宽利用率的比较
符合IEEE 802.3标准的以太网协议无需附加任何总线即可访问各个设备。耦合设备中的物理层可以将双绞线或光纤转换为LVDS(一种可供选择的以太网物理层标准[4,5]),以满足电子端子块等模块化设备的需求。这样,就可以非常经济地对模块化设备进行扩展了。之后,便可以如普通以太网一样,随时进行从底板物理层LVDS到100 Mb/s TX物理层的转换。
3. EtherCAT 技术特征
页首
3.1 协议
EtherCAT是用于过程数据的优化协议,凭借特殊的以太网类型,它可以在以太网帧内直接传送。EtherCAT帧可包括几个EtherCAT报文,每个报文都服务于一块逻辑过程映像区的特定内存区域,该区域最大可达4GB字节。数据顺序不依赖于网络中以太网端子的物理顺序,可任意编址。从站之间的广播、多播和通讯均得以实现。当需要实现最佳性能,且要求EtherCAT组件和控制器在同一子网操作时,则直接以太网帧传输就将派上用场。
然而,EtherCAT不仅限于单个子网的应用。EtherCAT UDP将EtherCAT协议封装为UDP/IP数据报文(参见图4),这就意味着,任何以太网协议堆栈的控制均可编址到EtherCAT系统之中,甚至通讯还可以通过路由器跨接到其它子网中。显然,在这种变体结构中,系统性能取决于控制的实时特性和以太网协议的实现方式。因为UDP数据报文仅在第一个站才完成解包,所以EtherCAT网络自身的响应时间基本不受影响。
图 4: EtherCAT:符合IEEE 802.3 [3]的标准帧
另外,根据主/从数据交换原理,EtherCAT也非常适合控制器之间(主/从)的通讯。自由编址的网络变量可用于过程数据以及参数、诊断、编程和各种远程控制服务,满足广泛的应用需求。主站/从站与主站/主站之间的数据通讯接口也相同。
从站到从站的通讯则有两种机制以供选择。一种机制是,上游设备和下游设备可以在同一周期内实现通讯,速度非常快。由于这种方法与拓扑结构相关,因此适用于由设备架构设计所决定的从站到从站的通讯,如打印或包装应用等。而对于自由配置的从站到从站的通讯,则可以采用第二种机制—数据通过主站进行中继。这种机制需要两个周期才能完成,但由于EtherCAT的性能非常卓越,因此该过程耗时仍然快于采用其他方法所耗费的时间。
按照文献[3]所述,EtherCAT仅使用标准的以太网帧,无任何压缩。因此,EtherCAT 以太网帧可以通过任何以太网MAC发送,并可以使用标准工具(如:监视器)。
3.2 拓扑
EtherCAT几乎支持任何拓扑类型,包括线型、树型、星型等(参见图5)。通过现场总线而得名的总线结构或线型结构也可用于以太网,并且不受限于级联交换机或集线器的数量。
图 5: 灵活的拓扑结构:线型、树型或星型拓扑
最有效的系统连线方法是对线型、分支或树叉结构进行拓扑组合。因为所需接口在I/O 模块等很多设备中都已存在,所以无需附加交换机。当然,仍然可以使用传统的、基于以太网的星型拓扑结构。
还可以选择不同的电缆以提升连线的灵活性:灵活、经济的标准超五类以太网电缆可采用100BASE-TX模式传送信号;塑封光纤(PFO)则可用于特殊应用场合;还可通过交换机或介质转换器实现不同以太网连线(如:不同的光纤和铜电缆)的完整组合。
快速以太网的物理层(100BASE-TX )允许两个设备之间的最大电缆长度为100米。由于连接的设备数量可高达65535,因此,网络的容量几乎没有限制。
3.3. 分布时钟
精确同步对于同时动作的分布式过程而言尤为重要。例如,几个伺服轴同时执行协调运动时,便是如此。
最有效的同步方法是精确排列分布时钟(请参阅IEEE 1588标准[6])。与完全同步通讯中通讯出现故障会立刻影响同步品质的情况相比,分布排列的时钟对于通讯系统中可能存在的相关故障延迟具有极好的容错性。
采用EtherCAT,数据交换就完全基于纯硬件机制。由于通讯采用了逻辑环结构 (借助于全双工快速以太网的物理层),主站时钟可以简单、精确地确定各个从站时钟传播的延迟偏移,反之亦然。分布时钟均基于该值进行调整,这意味着可以在网络范围内使用非常精确的、小于1 微秒的、确定性的同步误差时间基(参见图6)。而跨接工厂等外部同步则可以基于IEEE 1588 标准。
图 6: 同步性与一致性:相距电缆长度为有120米的两个分布系统,
带有300个节点的示波器比较
此外,高分辨率的分布时钟不仅可以用于同步,还可以提供数据采集的本地时间精确信息。当采样时间非常短暂时,即使是出现一个很小的位置测量瞬时同步偏差,也会导致速度计算出现较大的阶跃变化,例如,运动控制器通过顺序检测的位置计算速度便是如此。而在EtherCAT中,引入时间戳数据类型作为一个逻辑扩展,以太网所提供的巨大带宽使得高分辨率的系统时间得以与测量值进行链接。这样,速度的精确计算就不再受到通讯系统的同步误差值影响,其精度要高于基于自由同步误差的通讯测量技术。
3.4 性能
EtherCAT使网络性能达到了一个新境界。借助于从站硬件集成和网络控制器主站的直接内存存取,整个协议的处理过程都在硬件中得以实现,因此,完全独立于协议堆栈的实时运行系统、CPU 性能或软件实现方式。1000个I/O的更新时间只需30 µs,其中还包括I/O周期时间(参见表1)。单个以太网帧最多可进行1486字节的过程数据交换,几乎相当于12000个数字输入和输出,而传送这些数据耗时仅为300 µs。
表 1: EtherCAT性能概貌
100个伺服轴的通讯也非常快速:可在每100µs中更新带有命令值和控制数据的所有轴的实际位置及状态,分布时钟技术使轴的同步偏差小于1微秒。而即使是在保证这种性能的情况下,带宽仍足以实现异步通讯,如TCP/IP、下载参数或上载诊断数据。
超高性能的EtherCAT技术可以实现传统的现场总线系统无法迄及的控制理念。EtherCAT使通讯技术和现代工业PC所具有的超强计算能力相适应,总线系统不再是控制理念的瓶颈,分布式I/O可能比大多数本地I/O接口运行速度更快。EtherCAT技术原理具有可塑性,并不束缚于100 M bps的通讯速率,甚至有可能扩展为1000 M bps的以太网。
3.5 诊断
现场总线系统的实际应用经验表明,有效性和试运行时间关键取决于诊断能力。只有快速而准确地检测出故障,并明确标明其所在位置,才能快速排除故障。因此,在EtherCAT的研发过程中,特别注重强化诊断特征。
试运行期间,驱动或I/O 端子等节点的实际配置需要与指定的配置进行匹配性检查,拓扑结构也需要与配置相匹配。由于整合的拓扑识别过程已延伸至各个端子,因此,这种检查不仅可以在系统启动期间进行,也可以在网络自动读取时进行(配置上载)。
可以通过评估CRC校验,有效检测出数据传送期间的位故障——32 位CRC多项式的最小汉明距为4。除断线检测和定位之外,EtherCAT系统的协议、物理层和拓扑结构还可以对各个传输段分别进行品质监视,与错误计数器关联的自动评估还可以对关键的网络段进行精确定位。此外,对于电磁干扰、连接器破损或电缆损坏等一些渐变或突变的错误源而言,即便它们尚未过度应变到网络自恢复能力的范围,也可对其进行检测与定位。
3.6 高可靠性
选择冗余电缆可以满足快速增长的系统可靠性需求,以保证设备更换时不会导致网络瘫痪。您可以很经济地增加冗余特性,仅需在主站设备端增加使用一个标准的以太网端口(无需专用网卡或接口),并将单一的电缆从总线型拓扑结构转变为环型拓扑结构即可(见图7)。当设备或电缆发生故障时,也仅需一个周期即可完成切换。因此,即使是针对运动控制要求的应用,电缆出现故障时也不会有任何问题。EtherCAT也支持热备份的主站冗余。由于在环路中断时EtherCAT从站控制器芯片将立刻自动返回数据帧,一个设备的失败不会导致整个网络的瘫痪。例如,拖链设备可以配置为分支拓扑以防线缆断开。
图 7: 使用标准从站设备的低成本线缆冗余
3.7 安全性
为了实现EtherCAT安全数据通信,EtherCAT安全通信协议已经在ETG组织内部公开。EtherCAT被用作传输安全和非安全数据的单一通道。传输介质被认为是“黑色通道”而不被包括在安全协议中(见图8)。EtherCAT过程数据中的安全数据报文包括安全过程数据和所要求的数据备份。这个“容器”在设备的应用层被安全地解析。通信仍然是单一通道的。这符合IEC61784-3附件中的模型A。
图 8: 使用黑色通道的EtherCAT安全通信软件构件
EtherCAT安全协议已经由德国技术监督局(TÜV SÜD Rail)评估为满足IEC61508定义的SIL3等级的安全设备之间传输过程数据的通信协议。设备上实施EtherCAT安全协议必须满足安全目标的需求。相应的产品相关要求也必须考虑进来。
图 9: EtherCAT安全系统
图9中的应用示例受益于这种技术。安全元件在自动化系统中所需要的任意地方都可以使用。系统中可以使用不同规模的本地输入和输出元件。可以根据需求使用安全或非安全总线端子扩展额外的输入和输出。安全逻辑也嵌入到网络当中。这样不用安全扩展的标准PLC可以继续处理控制任务。安全输入和输出功能需要的本地安全逻辑由智能化的安全总线端子实现。这节约了昂贵的安全PLC所带来的成本,并可以根据当前任务随意裁剪逻辑功能。只有安全EtherCAT主站和所分配的安全从站通过非安全的标准PLC路由。
本协议在安全数据长度,通信介质或波特率方面么有限制。
EtherCAT被用作“黑色通道”,即,通信系统在安全处理中没有任何作用。
协议被鉴定符合IEC61508定义的SIL3等级
提供EtherCAT安全功能的产品已经于2005年就上市了。
3.8 EtherCAT 取代PCI
随着PC组件急剧向小型化方向发展,工业PC的体积日趋取决于插槽的数目。而快速以太网的带宽和EtherCAT通讯硬件的过程数据长度则为该领域的发展提供了新的可能性——IPC 中的传统接口现在可以转变为集成的EtherCAT接口端子(参见图10)。除了可以对分布式I/O进行编址,还可以对驱动和控制单元以及现场总线主站、快速串行接口、网关和其它通讯接口等复合系统进行编址。
图 10: 分布式现场总线接口
即使是其他无协议限制的以太网设备变体,也可以通过分布式交换机端口设备进行连接。由于一个以太网接口足以满足整个外围设备的通讯 (参见图11),因此,这不仅极大地精简了IPC主机的体积和外观,而且也降低了IPC主机的成本。
图 11: EtherCAT使控制器的体积显著减小
3.9 设备行规
设备行规描述了设备的应用参数和功能特性,如设备类别相关的机器状态等。现场总线技术已经为I/O设备、驱动、阀等许多设备类别提供了可利用的设备行规。用户非常熟悉这些行规以及相关的参数和工具,因此,EtherCAT无需为这些设备类别重新开发设备行规,而是为现有的设备行规提供了简单的接口。该特性使得用户和设备制造商可以轻松完成从现有的现场总线到EtherCAT技术的转换过程。
3.9.1 EtherCAT实现CANopen (CoE)
CANopen©设备和应用行规广泛用于多种设备类别和应用,如I/O组件、驱动、编码器、比例阀、液压控制器,以及用于塑料或纺织行业的应用行规等。EtherCAT可以提供与CANopen机制[7]相同的通讯机制,包括对象字典、PDO(过程数据对象)、SDO(服务数据对象),甚至于网络管理。因此,在已经安装了CANopen的设备中,仅需稍加变动即可轻松实现EtherCAT,绝大部分的CANopen©固件都得以重复利用。并且,可以选择性地扩展对象,以便利用EtherCAT所提供的巨大带宽。
3.9.2 EtherCAT实施伺服驱动 设备行规IEC 61491 (SoE)
SERCOS interface™ 是全球公认的、用于高性能实时运行系统的通讯接口,尤其适用于运动控制的应用场合。用于伺服驱动和通讯技术的SERCOS™框架属于IEC 61491标准[8] 的范畴。该伺服驱动框架可以轻松地映射到 EtherCAT中,嵌入于驱动中的服务通道、全部参数存取以及功能都基于EtherCAT邮箱(参见图12)。在此,关注焦点还是EtherCAT与现有协议的兼容性(IDN的存取值、属性、名称、单位等),以及与数据长度限制相关的扩展性。过程数据,即形式为AT和MDT的SERCOS™数据,都使用EtherCAT从站控制器机制进行传送,其映射与SERCOS映射相似。并且,EtherCAT从站的设备状态也可以非常容易地映射为SERCOS™协议状态。EtherCAT从站状态机可以很容易地映射到SERCOS™协议的通信阶段。EtherCAT为这种在CNC行业中广泛使用的设备行规提供了先进的实时以太网技术。这种设备行规的优点与EtherCAT分布时钟提供的优点相结合,保证了网络范围内精确时钟同步。可以任意传输位置命令,速度命令或扭矩命令。取决于实现方式,甚至可能继续使用相同的设备配置工具。
图 12: 同时并存的多个设备行规和协议
3.10 EtherCAT实现以太网(EoE)
EtherCAT技术不仅完全兼容以太网,而且在“设计”之初就具备良好的开放性特征——该协议可以在相同的物理层网络中包容其它基于以太网的服务和协议,通常可将其性能损失降到最小。对以太网的设备类型没有限制,设备可通过交换机端口在EtherCAT段内进行连接。以太网帧通过EtherCAT协议开通隧道,这也正是VPN、 PPPoE (DSL) 等因特网应用所普遍采取的方法。EtherCAT网络对以太网设备而言是完全透明的,其实时特性也不会发生畸变(参见图13)。
图 13: 对所有以太网协议完全透明
EtherCAT设备可以包容其它的以太网协议,因此具备标准以太网设备的一切特性。主站的作用与第2层交换机所起的作用一样,可按照编址信息将以太网帧重新定向到相应的设备。因此,集成万维网服务器、电子邮件和FTP 传送等所有的因特网技术都可以在EtherCAT的环境中得以应用。
3.11 EtherCAT实现文件读取(FoE)
这种简单的协议与TFTP类似,允许存取设备中的任何数据结构。因此,无论设备是否支持TCP/IP,都有可能将标准化固件上载到设备上。
3.12 ADS over EtherCAT (AoE)
ADS over EtherCAT (AoE)是由EtherCAT规范定义的客户端-服务器邮箱协议。尽管CoE协议提供了详尽的描述,但AoE则更适合路由与并行服务的应用:通过网关设备访问子网络,如EtherCAT至CANopen® 或 EtherCAT至IO-Link™ 网关设备。AoE使EtherCAT主站应用(如PLC程序)可以访问所属CANopen® 或 IO-Link™从站的各个参数。AoE路由机制开销远低于因特网协议(IP)所定义的开销,并且发送方和接收方寻址参数始终包含在AoE报文中。因此,EtherCAT主站和从站端的实施更为精简。AoE也通过EtherCAT自动化协议(EAP)进行非周期通信的标准化,从而为上位机MES系统或主计算机、EtherCAT主站及其从属的现有设备之间提供无缝通信。同时,AoE也提供了从远程诊断工具获取EtherCAT网络诊断信息的标准化方法。
4. 基础设施成本
页首
由于EtherCAT无需集线器和交换机,因此,在环境条件允许的情况下,可以节省电源、安装费用等设备方面的投资,只需使用标准的以太网电缆和价格低廉的标准连接器即可。如果环境条件有特殊要求,则可以依照IEC标准,使用增强密封保护等级的连接器。
5. EtherCAT 实施
页首
EtherCAT技术是面向经济的设备而开发的,如I/O 端子、传感器和嵌入式控制器等。EtherCAT使用遵循IEEE802.3标准的以太网帧。这些帧由主站设备发送,从站设备只是在以太网帧经过其所在位置时才提取和/或插入数据。因此,EtherCAT 使用标准的以太网MAC,这正是其在主站设备方面智能化的表现。同样,EtherCAT在从站控制器中使用专用芯片,这也是其在从站设备方面智能化的表现——无论本地处理能力是否强大或软件品质好坏与否,专用芯片均可在硬件中处理过程数据协议,并提供最佳实时性能。
5.1 主站
EtherCAT可以在单个以太网帧中最多实现1486字节的分布式过程数据通讯。其它解决方案一般是,主站设备需要在每个网络周期中为各个节点处理、发送和接收帧。而EtherCAT系统与此不同之处在于,在通常情况下,每周期仅需要一个或两个帧即可完成所有节点的全部通讯,因此,EtherCAT主站不需要专用的通讯处理器。主站功能几乎不会给主机CPU带来任何负担,轻松处理这些任务的同时,还可以处理应用程序,因此EtherCAT 无需使用昂贵的专用有源插接卡,只需使用无源的NIC卡或主板集成的以太网MAC设备即可。EtherCAT主站很容易实现,尤其适用于中小规模的控制系统和有明确规定的应用场合。
例如,如果某个单个过程映像的PLC没有超过1486 字节,那么在其周期时间内循环发送这个以太网帧就足够了。因为报文头运行时不会发生变化,所以只需将常数报文头插入到过程映像中,并将结果传送到以太网控制器即可。
EtherCAT映射不是在主站产生,而是在从站产生(外围设备将数据插入所经以太网帧的相应位置),因此,此时过程映像已经完成排序。该特性进一步减轻了主机CPU的负担。可以看到,EtherCAT主站完全在主机CPU中采用软件方式实现,相比之下,传统的慢速现场总线系统通过有源插接卡方可实现主站的方式则要占用更多的资源,甚至服务于DPRAM的有源卡本身也将占用可观的主机资源。
系统配置工具(通过生产商获取)可提供包括相应的标准 XML 格式启动顺序在内的网络和设备参数。
图 14: 主站实施的单个过程映像
5.1.1 主站实施服务
已经在各种实时操作系统上实现了EtherCAT主站,包括但并不限于:eCos, INtime, MICROWARE OS-9, MQX, On Time RTOS-32, Proconos OS, Real-Time Java, RT Kernel, RT-Linux, RTX, RTXC, RTAI Linux, PikeOS, Linux with RT-Preempt, QNX, VxWin + CeWin, VxWorks, Windows CE, Windows XP/XPE with CoDeSys SP RTE, Windows NT/NTE/2000/XP/XPE/Vista with TwinCAT RTE, Windows 7 and XENOMAI Linux.
可以获得开源主站协议栈,作为示例代码或商业软件。也有各种公司提供各种硬件平台上的实施服务。可以在EtherCAT网站上的产品区找到快速增长的供应商信息[1]。
5.1.2 主站样本代码
另一种EtherCAT主站的实现方式是使用样本代码,花费不高。软件以源代码形式提供,包括所有的EtherCAT主站功能,甚至还包括EoE(EtherCAT实现以太网)功能(见图15)。开发人员只要把这些应用于Windows环境的代码与目标硬件及所使用的RTOS加以匹配就可以了。该软件代码已经成功应用于多个系统。
图 15: 主站样本代码结构
5.2 从站
EtherCAT从站设备使用一个价格低廉的从站控制器芯片ESC。从站不需要微处理器就可以实现EtherCAT通信。可以通过I/O接口实现的简单设备可以只由ESC和其下的PHY,变压器和RJ45接头。给从站的过程数据接口是32位的I/O接口。这种从站没有可配置的参数,所以不需要软件或邮箱协议。EtherCAT状态机由ESC处理。ESC的启动信息从EEPROM中读取,它也支持从站的身份识别。更复杂的可配置从站有使用一个CPU。这个CPU和ESC之间使用8位或16位并行接口或串行SPI接口。要求的CPU性能取决于从站的应用,EtherCAT协议软件在其上运行。EtherCAT协议栈管理EtherCAT状态机和应用层协议,可以实现CoE协议和支持固件下载的FoE协议。EoE协议也可以实施。
5.2.1 EtherCAT Slave Controller
目前,有多家制造商均提供EtherCAT从站控制器。通过价格低廉的FPGA,也可实现从站控制器的功能,可以购买授权以获取相应的二进制代码。
从站控制器通常都有一个内部的DPRAM,并提供存取这些应用内存的接口范围:
串行SPI(串行外围接口)主要用于数量较小的过程数据设备,如模拟量I/O模块、传感器、编码器和简单驱动等。该接口通常使用8位微控制器,如微型芯片PIC、DSP、Intel 80C51等(见图16)。
8/16位微控制器并行接口与带有DPRAM接口的传统现场总线控制器接口相对应,尤其适用于数据量较大的复杂设备。通常情况下,微控制器使用的接口包括Infineon 80C16x、Intel 80x86、Hitachi SH1、ST10、ARM和TI TMS320等系列(见图16)。
32位并行I/O接口不仅可以连接多达32位数字输入/输出,而且也适用于简单的传感器或执行器的32位数据操作。这类设备无需主机CPU(见图17)。
图 16: 从站硬件:带主机CPU的FPGA
图 17: 从站硬件:带直接I/O的FPGA
关于EtherCAT从站控制器的最新信息,请登录EtherCAT网站[1]。
5.2.2 从站评估工具包
倍福公司提供的从站评估工具包使接口操作变得简便易行。由于采用了EtherCAT,无需功能强大的通讯处理器,因此,可将从站评估工具包中的8位微处理器作为主机CPU使用。该工具包还包括源代码形式的从站主机软件(相当于协议堆栈)和参考主站软件包(TwinCAT)。
6. 小结
页首
EtherCAT 拥有杰出的通讯性能,接线非常简单,并对其它协议开放。传统的现场总线系统已达到了极限,而EtherCAT则突破建立了新的技术标准——30 µs内可以更新1000个I/O数据,可选择双绞线或光纤,并利用以太网和因特网技术实现垂直优化集成。使用 EtherCAT,可以用简单的线型拓扑结构替代昂贵的星型以太网拓扑结构,无需昂贵的基础组件。EtherCAT还可以使用传统的交换机连接方式,以集成其它的以太网设备。其它的实时以太网方案需要与控制器进行特殊连接,而EtherCAT只需要价格低廉的标准以太网卡(NIC) 便可实现。
EtherCAT拥有多种机制,支持主站到从站、从站到从站以及主站到主站之间的通讯(参见图18)。它实现了安全功能,采用技术可行且经济实用的方法,使以太网技术可以向下延伸至I/O级。EtherCAT功能优越,可以完全兼容以太网,可将因特网技术嵌入到简单设备中,并最大化地利用了以太网所提供的巨大带宽,是一种实时性能优越且成本低廉的网络技术。
图 19: 网络结构形式多样
7. 参考文献
页首
[1]
EtherCAT Technology Group (ETG)
http://www.ethercat.org
[2]
IEC 61158-3/4/5/6-12 (Ed.1.0), Industrial communication networks – Fieldbus specifications – Part 3-12: Data-link layer service definition – Part 4-12: Data-link layer protocol specification – Part 5-12: Application layer service definition – Part 6-12: Application layer protocol specification – Type 12 elements (EtherCAT)
[3]
IEEE 802.3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications
[4]
IEEE 802.3ae-2002: CSMA/CD Access Method and Physical Layer Specifications: Media Access Control (MAC) Parameters, Physical Layers, and Management Parameters for 10 Gb/s Operation
[5]
ANSI/TIA/EIA-644-A, Electrical Characteristics of Low Voltage Differential Signaling (LVDS) Interface Circuits
[6]
IEEE 1588-2002: IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems
[7]
EN 50325-4: Industrial communications subsystem based on ISO 11898 (CAN) for controller-device interfaces. Part 4: CANopen
[8]
IEC 61800-7-301/304 (Ed.1.0), Adjustable speed electrical power drive systems – Part 7-301: Generic interface and use of profiles for power drive systems – Mapping of profile type 1 to network technologies – Part 7-304: Generic interface and use of profiles for power drive systems – Mapping of profile type 4 to network technologies
[9]
SEMI E54.20: Standard for Sensor/Actuator Network Communications for EtherCAT.
http://www.semi.org
[10]
IEC 61784-2 (Ed.1.0), Industrial communication networks – Profiles – Part 2: Additional fieldbus profiles for real-time networks based on ISO/IEC 8802-3
EtherCAT样本
了解更多关于最快的“工业以太网现场总线”的详细信息
中文
英文
德文
西班牙语
意大利文
法语
日文
韩文
EtherCAT多媒体视频
EtherCAT技术协会
工业以太网通信技术EtherCAT运行原理
EtherCAT技术简介
EtherCAT Technology Group | 技术概览
EN
|
DE
|
ES
|
IT
|
CN
|
JP
主页
新闻
市场活动
新闻发布
联系方式
会员专区
搜索
技术概览 技术概览 为何使用EtherCAT? 协会组织 常见问题 会员相关 供应商ID 产品指南 资料下载 一致性测试 EtherCAT G EtherCAT P Safety over EtherCAT EtherCAT 和 TSN 技术汇编 开发者论坛 知识库
退出
EtherCAT - 以太网现场总线
本文深入阐述了基于以太网现场总线系统的EtherCAT (Ethernet for Control Automation Technology)技术。EtherCAT为现场总线技术领域树立了新的性能标准,具备灵活的网络拓扑结构,系统配置简单,和现场总线系统一样操作直观简便。另外,由于EtherCAT实施的成本低廉,因此使系统得以在过去无法应用现场总线网络的场合中选用该现场总线。
1. 引言
1.1 以太网和实时能力
2. EtherCAT 运行原理
3. EtherCAT 技术特征
3.1 协议
3.2 拓扑
3.3 分布时钟
3.4 性能
3.5 诊断
3.6 高可靠性
3.7 安全性
3.8 EtherCAT 取代PCI
3.9 设备行规
3.9.1 EtherCAT实现CAN总线应用层协议 (CoE)
3.9.2 EtherCAT实现伺服驱动设备行规IEC61491 (SoE)
3.10 EtherCAT实现以太网(EoE)
3.11 EtherCAT实现文件读取(FoE)
3.12 ADS over EtherCAT (AoE)
4. 基础设施成本
5. EtherCAT 实施
5.1 主站
5.1.1 主站实施服务
5.1.2 主站样本代码
5.2 从站
5.2.1 EtherCAT Slave Controller
5.2.2 从站评估工具包
6. 小结
7. 参考文献
1. 引言
页首
现场总线已成为自动化技术的集成组件,通过大量的实践试验和测试,如今已获得广泛应用。正是由于现场总线技术的普及,才使基于PC的控制系统得以广泛应用。然而,虽然控制器CPU的性能(尤其是IPC的性能)发展迅猛,但传统的现场总线系统正日趋成为控制系统性能发展的“瓶颈”。急需技术革新的另一个因素则是由于传统的解决方案并不十分理想。传统的方案是,按层划分的控制体系通常都由几个辅助系统所组成(周期系统):即实际控制任务、现场总线系统、I/O系统中的本地扩展总线或外围设备的简单本地固件周期。正常情况下,系统响应时间是控制器周期时间的3-5倍。 在现场总线系统之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术 (参见图1)。
图1: 传统现场总线系统响应时间
在现场总线系统 之上的层面(即网络控制器)中,以太网往往在某种程度上代表着技术发展的水平。该方面目前较新的技术是驱动或I/O级的应用,即过去普遍采用现场总线系统的这些领域。这些应用类型要求系统具备良好的实时能力、适应小数据量通讯,并且价格经济。EtherCAT可以满足这些需求,并且还可以在I/O级实现因特网技术。
1.1 以太网和实时能力
目前,有许多方案力求实现以太网的实时能力。例如,CSMA/CD介质存取过程方案,即禁止高层协议访问过程,而由时间片或轮循方式所取代的一种解决方案;另一种解决方案则是通过专用交换机精确控制时间的方式来分配以太网包。这些方案虽然可以在某种程度上快速准确地将数据包传送给所连接的以太网节点,但是,输出或驱动控制器重定向所需要的时间以及读取输入数据所需要的时间都要受制于具体的实现方式。
如果将单个以太网 帧用于每个设备,那么,理论上讲,其可用数据率非常低。例如,最短的以太网帧为84字节(包括内部的包间隔IPG)。如果一个驱动器周期性地发送4字节的实际值和状态信息,并相应地同时接收4字节的命令值和控制字信息,那么,即便是总线负荷为100%(即:无限小的驱动响应时间)时,其可用数据率也只能达到4/84= 4.8%。如果按照10 µs的平均响应时间估计,则速率将下降到1.9%。对所有发送以太网 帧到每个设备(或期望帧来自每个设备)的实时以太网方式而言,都存在这些限制,但以太网帧内部所使用的协议则是例外。
2. EtherCAT 运行原理
页首
EtherCAT技术突破了其他以太网解决方案的系统限制:通过该项技术,无需接收以太网数据包,将其解码,之后再将过程数据复制到各个设备。EtherCAT从站设备在报文经过其节点时读取相应的编址数据,同样,输入数据也是在报文经过时插入至报文中(参见图2)。整个过程中,报文只有几纳秒的时间延迟。
图 2: 过程数据插入至报文中
由于发送和接收的以太网帧压缩了大量的设备数据,所以有效数据率可达90%以上。100 Mb/s TX的全双工特性完全得以利用,因此,有效数据率可 大于100 Mb/s(即大于2 x 100 Mb/s的90%)(参见图3)。
图 3: 带宽利用率的比较
符合IEEE 802.3标准的以太网协议无需附加任何总线即可访问各个设备。耦合设备中的物理层可以将双绞线或光纤转换为LVDS(一种可供选择的以太网物理层标准[4,5]),以满足电子端子块等模块化设备的需求。这样,就可以非常经济地对模块化设备进行扩展了。之后,便可以如普通以太网一样,随时进行从底板物理层LVDS到100 Mb/s TX物理层的转换。
3. EtherCAT 技术特征
页首
3.1 协议
EtherCAT是用于过程数据的优化协议,凭借特殊的以太网类型,它可以在以太网帧内直接传送。EtherCAT帧可包括几个EtherCAT报文,每个报文都服务于一块逻辑过程映像区的特定内存区域,该区域最大可达4GB字节。数据顺序不依赖于网络中以太网端子的物理顺序,可任意编址。从站之间的广播、多播和通讯均得以实现。当需要实现最佳性能,且要求EtherCAT组件和控制器在同一子网操作时,则直接以太网帧传输就将派上用场。
然而,EtherCAT不仅限于单个子网的应用。EtherCAT UDP将EtherCAT协议封装为UDP/IP数据报文(参见图4),这就意味着,任何以太网协议堆栈的控制均可编址到EtherCAT系统之中,甚至通讯还可以通过路由器跨接到其它子网中。显然,在这种变体结构中,系统性能取决于控制的实时特性和以太网协议的实现方式。因为UDP数据报文仅在第一个站才完成解包,所以EtherCAT网络自身的响应时间基本不受影响。
图 4: EtherCAT:符合IEEE 802.3 [3]的标准帧
另外,根据主/从数据交换原理,EtherCAT也非常适合控制器之间(主/从)的通讯。自由编址的网络变量可用于过程数据以及参数、诊断、编程和各种远程控制服务,满足广泛的应用需求。主站/从站与主站/主站之间的数据通讯接口也相同。
从站到从站的通讯则有两种机制以供选择。一种机制是,上游设备和下游设备可以在同一周期内实现通讯,速度非常快。由于这种方法与拓扑结构相关,因此适用于由设备架构设计所决定的从站到从站的通讯,如打印或包装应用等。而对于自由配置的从站到从站的通讯,则可以采用第二种机制—数据通过主站进行中继。这种机制需要两个周期才能完成,但由于EtherCAT的性能非常卓越,因此该过程耗时仍然快于采用其他方法所耗费的时间。
按照文献[3]所述,EtherCAT仅使用标准的以太网帧,无任何压缩。因此,EtherCAT 以太网帧可以通过任何以太网MAC发送,并可以使用标准工具(如:监视器)。
3.2 拓扑
EtherCAT几乎支持任何拓扑类型,包括线型、树型、星型等(参见图5)。通过现场总线而得名的总线结构或线型结构也可用于以太网,并且不受限于级联交换机或集线器的数量。
图 5: 灵活的拓扑结构:线型、树型或星型拓扑
最有效的系统连线方法是对线型、分支或树叉结构进行拓扑组合。因为所需接口在I/O 模块等很多设备中都已存在,所以无需附加交换机。当然,仍然可以使用传统的、基于以太网的星型拓扑结构。
还可以选择不同的电缆以提升连线的灵活性:灵活、经济的标准超五类以太网电缆可采用100BASE-TX模式传送信号;塑封光纤(PFO)则可用于特殊应用场合;还可通过交换机或介质转换器实现不同以太网连线(如:不同的光纤和铜电缆)的完整组合。
快速以太网的物理层(100BASE-TX )允许两个设备之间的最大电缆长度为100米。由于连接的设备数量可高达65535,因此,网络的容量几乎没有限制。
3.3. 分布时钟
精确同步对于同时动作的分布式过程而言尤为重要。例如,几个伺服轴同时执行协调运动时,便是如此。
最有效的同步方法是精确排列分布时钟(请参阅IEEE 1588标准[6])。与完全同步通讯中通讯出现故障会立刻影响同步品质的情况相比,分布排列的时钟对于通讯系统中可能存在的相关故障延迟具有极好的容错性。
采用EtherCAT,数据交换就完全基于纯硬件机制。由于通讯采用了逻辑环结构 (借助于全双工快速以太网的物理层),主站时钟可以简单、精确地确定各个从站时钟传播的延迟偏移,反之亦然。分布时钟均基于该值进行调整,这意味着可以在网络范围内使用非常精确的、小于1 微秒的、确定性的同步误差时间基(参见图6)。而跨接工厂等外部同步则可以基于IEEE 1588 标准。
图 6: 同步性与一致性:相距电缆长度为有120米的两个分布系统,
带有300个节点的示波器比较
此外,高分辨率的分布时钟不仅可以用于同步,还可以提供数据采集的本地时间精确信息。当采样时间非常短暂时,即使是出现一个很小的位置测量瞬时同步偏差,也会导致速度计算出现较大的阶跃变化,例如,运动控制器通过顺序检测的位置计算速度便是如此。而在EtherCAT中,引入时间戳数据类型作为一个逻辑扩展,以太网所提供的巨大带宽使得高分辨率的系统时间得以与测量值进行链接。这样,速度的精确计算就不再受到通讯系统的同步误差值影响,其精度要高于基于自由同步误差的通讯测量技术。
3.4 性能
EtherCAT使网络性能达到了一个新境界。借助于从站硬件集成和网络控制器主站的直接内存存取,整个协议的处理过程都在硬件中得以实现,因此,完全独立于协议堆栈的实时运行系统、CPU 性能或软件实现方式。1000个I/O的更新时间只需30 µs,其中还包括I/O周期时间(参见表1)。单个以太网帧最多可进行1486字节的过程数据交换,几乎相当于12000个数字输入和输出,而传送这些数据耗时仅为300 µs。
表 1: EtherCAT性能概貌
100个伺服轴的通讯也非常快速:可在每100µs中更新带有命令值和控制数据的所有轴的实际位置及状态,分布时钟技术使轴的同步偏差小于1微秒。而即使是在保证这种性能的情况下,带宽仍足以实现异步通讯,如TCP/IP、下载参数或上载诊断数据。
超高性能的EtherCAT技术可以实现传统的现场总线系统无法迄及的控制理念。EtherCAT使通讯技术和现代工业PC所具有的超强计算能力相适应,总线系统不再是控制理念的瓶颈,分布式I/O可能比大多数本地I/O接口运行速度更快。EtherCAT技术原理具有可塑性,并不束缚于100 M bps的通讯速率,甚至有可能扩展为1000 M bps的以太网。
3.5 诊断
现场总线系统的实际应用经验表明,有效性和试运行时间关键取决于诊断能力。只有快速而准确地检测出故障,并明确标明其所在位置,才能快速排除故障。因此,在EtherCAT的研发过程中,特别注重强化诊断特征。
试运行期间,驱动或I/O 端子等节点的实际配置需要与指定的配置进行匹配性检查,拓扑结构也需要与配置相匹配。由于整合的拓扑识别过程已延伸至各个端子,因此,这种检查不仅可以在系统启动期间进行,也可以在网络自动读取时进行(配置上载)。
可以通过评估CRC校验,有效检测出数据传送期间的位故障——32 位CRC多项式的最小汉明距为4。除断线检测和定位之外,EtherCAT系统的协议、物理层和拓扑结构还可以对各个传输段分别进行品质监视,与错误计数器关联的自动评估还可以对关键的网络段进行精确定位。此外,对于电磁干扰、连接器破损或电缆损坏等一些渐变或突变的错误源而言,即便它们尚未过度应变到网络自恢复能力的范围,也可对其进行检测与定位。
3.6 高可靠性
选择冗余电缆可以满足快速增长的系统可靠性需求,以保证设备更换时不会导致网络瘫痪。您可以很经济地增加冗余特性,仅需在主站设备端增加使用一个标准的以太网端口(无需专用网卡或接口),并将单一的电缆从总线型拓扑结构转变为环型拓扑结构即可(见图7)。当设备或电缆发生故障时,也仅需一个周期即可完成切换。因此,即使是针对运动控制要求的应用,电缆出现故障时也不会有任何问题。EtherCAT也支持热备份的主站冗余。由于在环路中断时EtherCAT从站控制器芯片将立刻自动返回数据帧,一个设备的失败不会导致整个网络的瘫痪。例如,拖链设备可以配置为分支拓扑以防线缆断开。
图 7: 使用标准从站设备的低成本线缆冗余
3.7 安全性
为了实现EtherCAT安全数据通信,EtherCAT安全通信协议已经在ETG组织内部公开。EtherCAT被用作传输安全和非安全数据的单一通道。传输介质被认为是“黑色通道”而不被包括在安全协议中(见图8)。EtherCAT过程数据中的安全数据报文包括安全过程数据和所要求的数据备份。这个“容器”在设备的应用层被安全地解析。通信仍然是单一通道的。这符合IEC61784-3附件中的模型A。
图 8: 使用黑色通道的EtherCAT安全通信软件构件
EtherCAT安全协议已经由德国技术监督局(TÜV SÜD Rail)评估为满足IEC61508定义的SIL3等级的安全设备之间传输过程数据的通信协议。设备上实施EtherCAT安全协议必须满足安全目标的需求。相应的产品相关要求也必须考虑进来。
图 9: EtherCAT安全系统
图9中的应用示例受益于这种技术。安全元件在自动化系统中所需要的任意地方都可以使用。系统中可以使用不同规模的本地输入和输出元件。可以根据需求使用安全或非安全总线端子扩展额外的输入和输出。安全逻辑也嵌入到网络当中。这样不用安全扩展的标准PLC可以继续处理控制任务。安全输入和输出功能需要的本地安全逻辑由智能化的安全总线端子实现。这节约了昂贵的安全PLC所带来的成本,并可以根据当前任务随意裁剪逻辑功能。只有安全EtherCAT主站和所分配的安全从站通过非安全的标准PLC路由。
本协议在安全数据长度,通信介质或波特率方面么有限制。
EtherCAT被用作“黑色通道”,即,通信系统在安全处理中没有任何作用。
协议被鉴定符合IEC61508定义的SIL3等级
提供EtherCAT安全功能的产品已经于2005年就上市了。
3.8 EtherCAT 取代PCI
随着PC组件急剧向小型化方向发展,工业PC的体积日趋取决于插槽的数目。而快速以太网的带宽和EtherCAT通讯硬件的过程数据长度则为该领域的发展提供了新的可能性——IPC 中的传统接口现在可以转变为集成的EtherCAT接口端子(参见图10)。除了可以对分布式I/O进行编址,还可以对驱动和控制单元以及现场总线主站、快速串行接口、网关和其它通讯接口等复合系统进行编址。
图 10: 分布式现场总线接口
即使是其他无协议限制的以太网设备变体,也可以通过分布式交换机端口设备进行连接。由于一个以太网接口足以满足整个外围设备的通讯 (参见图11),因此,这不仅极大地精简了IPC主机的体积和外观,而且也降低了IPC主机的成本。
图 11: EtherCAT使控制器的体积显著减小
3.9 设备行规
设备行规描述了设备的应用参数和功能特性,如设备类别相关的机器状态等。现场总线技术已经为I/O设备、驱动、阀等许多设备类别提供了可利用的设备行规。用户非常熟悉这些行规以及相关的参数和工具,因此,EtherCAT无需为这些设备类别重新开发设备行规,而是为现有的设备行规提供了简单的接口。该特性使得用户和设备制造商可以轻松完成从现有的现场总线到EtherCAT技术的转换过程。
3.9.1 EtherCAT实现CANopen (CoE)
CANopen©设备和应用行规广泛用于多种设备类别和应用,如I/O组件、驱动、编码器、比例阀、液压控制器,以及用于塑料或纺织行业的应用行规等。EtherCAT可以提供与CANopen机制[7]相同的通讯机制,包括对象字典、PDO(过程数据对象)、SDO(服务数据对象),甚至于网络管理。因此,在已经安装了CANopen的设备中,仅需稍加变动即可轻松实现EtherCAT,绝大部分的CANopen©固件都得以重复利用。并且,可以选择性地扩展对象,以便利用EtherCAT所提供的巨大带宽。
3.9.2 EtherCAT实施伺服驱动 设备行规IEC 61491 (SoE)
SERCOS interface™ 是全球公认的、用于高性能实时运行系统的通讯接口,尤其适用于运动控制的应用场合。用于伺服驱动和通讯技术的SERCOS™框架属于IEC 61491标准[8] 的范畴。该伺服驱动框架可以轻松地映射到 EtherCAT中,嵌入于驱动中的服务通道、全部参数存取以及功能都基于EtherCAT邮箱(参见图12)。在此,关注焦点还是EtherCAT与现有协议的兼容性(IDN的存取值、属性、名称、单位等),以及与数据长度限制相关的扩展性。过程数据,即形式为AT和MDT的SERCOS™数据,都使用EtherCAT从站控制器机制进行传送,其映射与SERCOS映射相似。并且,EtherCAT从站的设备状态也可以非常容易地映射为SERCOS™协议状态。EtherCAT从站状态机可以很容易地映射到SERCOS™协议的通信阶段。EtherCAT为这种在CNC行业中广泛使用的设备行规提供了先进的实时以太网技术。这种设备行规的优点与EtherCAT分布时钟提供的优点相结合,保证了网络范围内精确时钟同步。可以任意传输位置命令,速度命令或扭矩命令。取决于实现方式,甚至可能继续使用相同的设备配置工具。
图 12: 同时并存的多个设备行规和协议
3.10 EtherCAT实现以太网(EoE)
EtherCAT技术不仅完全兼容以太网,而且在“设计”之初就具备良好的开放性特征——该协议可以在相同的物理层网络中包容其它基于以太网的服务和协议,通常可将其性能损失降到最小。对以太网的设备类型没有限制,设备可通过交换机端口在EtherCAT段内进行连接。以太网帧通过EtherCAT协议开通隧道,这也正是VPN、 PPPoE (DSL) 等因特网应用所普遍采取的方法。EtherCAT网络对以太网设备而言是完全透明的,其实时特性也不会发生畸变(参见图13)。
图 13: 对所有以太网协议完全透明
EtherCAT设备可以包容其它的以太网协议,因此具备标准以太网设备的一切特性。主站的作用与第2层交换机所起的作用一样,可按照编址信息将以太网帧重新定向到相应的设备。因此,集成万维网服务器、电子邮件和FTP 传送等所有的因特网技术都可以在EtherCAT的环境中得以应用。
3.11 EtherCAT实现文件读取(FoE)
这种简单的协议与TFTP类似,允许存取设备中的任何数据结构。因此,无论设备是否支持TCP/IP,都有可能将标准化固件上载到设备上。
3.12 ADS over EtherCAT (AoE)
ADS over EtherCAT (AoE)是由EtherCAT规范定义的客户端-服务器邮箱协议。尽管CoE协议提供了详尽的描述,但AoE则更适合路由与并行服务的应用:通过网关设备访问子网络,如EtherCAT至CANopen® 或 EtherCAT至IO-Link™ 网关设备。AoE使EtherCAT主站应用(如PLC程序)可以访问所属CANopen® 或 IO-Link™从站的各个参数。AoE路由机制开销远低于因特网协议(IP)所定义的开销,并且发送方和接收方寻址参数始终包含在AoE报文中。因此,EtherCAT主站和从站端的实施更为精简。AoE也通过EtherCAT自动化协议(EAP)进行非周期通信的标准化,从而为上位机MES系统或主计算机、EtherCAT主站及其从属的现有设备之间提供无缝通信。同时,AoE也提供了从远程诊断工具获取EtherCAT网络诊断信息的标准化方法。
4. 基础设施成本
页首
由于EtherCAT无需集线器和交换机,因此,在环境条件允许的情况下,可以节省电源、安装费用等设备方面的投资,只需使用标准的以太网电缆和价格低廉的标准连接器即可。如果环境条件有特殊要求,则可以依照IEC标准,使用增强密封保护等级的连接器。
5. EtherCAT 实施
页首
EtherCAT技术是面向经济的设备而开发的,如I/O 端子、传感器和嵌入式控制器等。EtherCAT使用遵循IEEE802.3标准的以太网帧。这些帧由主站设备发送,从站设备只是在以太网帧经过其所在位置时才提取和/或插入数据。因此,EtherCAT 使用标准的以太网MAC,这正是其在主站设备方面智能化的表现。同样,EtherCAT在从站控制器中使用专用芯片,这也是其在从站设备方面智能化的表现——无论本地处理能力是否强大或软件品质好坏与否,专用芯片均可在硬件中处理过程数据协议,并提供最佳实时性能。
5.1 主站
EtherCAT可以在单个以太网帧中最多实现1486字节的分布式过程数据通讯。其它解决方案一般是,主站设备需要在每个网络周期中为各个节点处理、发送和接收帧。而EtherCAT系统与此不同之处在于,在通常情况下,每周期仅需要一个或两个帧即可完成所有节点的全部通讯,因此,EtherCAT主站不需要专用的通讯处理器。主站功能几乎不会给主机CPU带来任何负担,轻松处理这些任务的同时,还可以处理应用程序,因此EtherCAT 无需使用昂贵的专用有源插接卡,只需使用无源的NIC卡或主板集成的以太网MAC设备即可。EtherCAT主站很容易实现,尤其适用于中小规模的控制系统和有明确规定的应用场合。
例如,如果某个单个过程映像的PLC没有超过1486 字节,那么在其周期时间内循环发送这个以太网帧就足够了。因为报文头运行时不会发生变化,所以只需将常数报文头插入到过程映像中,并将结果传送到以太网控制器即可。
EtherCAT映射不是在主站产生,而是在从站产生(外围设备将数据插入所经以太网帧的相应位置),因此,此时过程映像已经完成排序。该特性进一步减轻了主机CPU的负担。可以看到,EtherCAT主站完全在主机CPU中采用软件方式实现,相比之下,传统的慢速现场总线系统通过有源插接卡方可实现主站的方式则要占用更多的资源,甚至服务于DPRAM的有源卡本身也将占用可观的主机资源。
系统配置工具(通过生产商获取)可提供包括相应的标准 XML 格式启动顺序在内的网络和设备参数。
图 14: 主站实施的单个过程映像
5.1.1 主站实施服务
已经在各种实时操作系统上实现了EtherCAT主站,包括但并不限于:eCos, INtime, MICROWARE OS-9, MQX, On Time RTOS-32, Proconos OS, Real-Time Java, RT Kernel, RT-Linux, RTX, RTXC, RTAI Linux, PikeOS, Linux with RT-Preempt, QNX, VxWin + CeWin, VxWorks, Windows CE, Windows XP/XPE with CoDeSys SP RTE, Windows NT/NTE/2000/XP/XPE/Vista with TwinCAT RTE, Windows 7 and XENOMAI Linux.
可以获得开源主站协议栈,作为示例代码或商业软件。也有各种公司提供各种硬件平台上的实施服务。可以在EtherCAT网站上的产品区找到快速增长的供应商信息[1]。
5.1.2 主站样本代码
另一种EtherCAT主站的实现方式是使用样本代码,花费不高。软件以源代码形式提供,包括所有的EtherCAT主站功能,甚至还包括EoE(EtherCAT实现以太网)功能(见图15)。开发人员只要把这些应用于Windows环境的代码与目标硬件及所使用的RTOS加以匹配就可以了。该软件代码已经成功应用于多个系统。
图 15: 主站样本代码结构
5.2 从站
EtherCAT从站设备使用一个价格低廉的从站控制器芯片ESC。从站不需要微处理器就可以实现EtherCAT通信。可以通过I/O接口实现的简单设备可以只由ESC和其下的PHY,变压器和RJ45接头。给从站的过程数据接口是32位的I/O接口。这种从站没有可配置的参数,所以不需要软件或邮箱协议。EtherCAT状态机由ESC处理。ESC的启动信息从EEPROM中读取,它也支持从站的身份识别。更复杂的可配置从站有使用一个CPU。这个CPU和ESC之间使用8位或16位并行接口或串行SPI接口。要求的CPU性能取决于从站的应用,EtherCAT协议软件在其上运行。EtherCAT协议栈管理EtherCAT状态机和应用层协议,可以实现CoE协议和支持固件下载的FoE协议。EoE协议也可以实施。
5.2.1 EtherCAT Slave Controller
目前,有多家制造商均提供EtherCAT从站控制器。通过价格低廉的FPGA,也可实现从站控制器的功能,可以购买授权以获取相应的二进制代码。
从站控制器通常都有一个内部的DPRAM,并提供存取这些应用内存的接口范围:
串行SPI(串行外围接口)主要用于数量较小的过程数据设备,如模拟量I/O模块、传感器、编码器和简单驱动等。该接口通常使用8位微控制器,如微型芯片PIC、DSP、Intel 80C51等(见图16)。
8/16位微控制器并行接口与带有DPRAM接口的传统现场总线控制器接口相对应,尤其适用于数据量较大的复杂设备。通常情况下,微控制器使用的接口包括Infineon 80C16x、Intel 80x86、Hitachi SH1、ST10、ARM和TI TMS320等系列(见图16)。
32位并行I/O接口不仅可以连接多达32位数字输入/输出,而且也适用于简单的传感器或执行器的32位数据操作。这类设备无需主机CPU(见图17)。
图 16: 从站硬件:带主机CPU的FPGA
图 17: 从站硬件:带直接I/O的FPGA
关于EtherCAT从站控制器的最新信息,请登录EtherCAT网站[1]。
5.2.2 从站评估工具包
倍福公司提供的从站评估工具包使接口操作变得简便易行。由于采用了EtherCAT,无需功能强大的通讯处理器,因此,可将从站评估工具包中的8位微处理器作为主机CPU使用。该工具包还包括源代码形式的从站主机软件(相当于协议堆栈)和参考主站软件包(TwinCAT)。
6. 小结
页首
EtherCAT 拥有杰出的通讯性能,接线非常简单,并对其它协议开放。传统的现场总线系统已达到了极限,而EtherCAT则突破建立了新的技术标准——30 µs内可以更新1000个I/O数据,可选择双绞线或光纤,并利用以太网和因特网技术实现垂直优化集成。使用 EtherCAT,可以用简单的线型拓扑结构替代昂贵的星型以太网拓扑结构,无需昂贵的基础组件。EtherCAT还可以使用传统的交换机连接方式,以集成其它的以太网设备。其它的实时以太网方案需要与控制器进行特殊连接,而EtherCAT只需要价格低廉的标准以太网卡(NIC) 便可实现。
EtherCAT拥有多种机制,支持主站到从站、从站到从站以及主站到主站之间的通讯(参见图18)。它实现了安全功能,采用技术可行且经济实用的方法,使以太网技术可以向下延伸至I/O级。EtherCAT功能优越,可以完全兼容以太网,可将因特网技术嵌入到简单设备中,并最大化地利用了以太网所提供的巨大带宽,是一种实时性能优越且成本低廉的网络技术。
图 19: 网络结构形式多样
7. 参考文献
页首
[1]
EtherCAT Technology Group (ETG)
http://www.ethercat.org
[2]
IEC 61158-3/4/5/6-12 (Ed.1.0), Industrial communication networks – Fieldbus specifications – Part 3-12: Data-link layer service definition – Part 4-12: Data-link layer protocol specification – Part 5-12: Application layer service definition – Part 6-12: Application layer protocol specification – Type 12 elements (EtherCAT)
[3]
IEEE 802.3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications
[4]
IEEE 802.3ae-2002: CSMA/CD Access Method and Physical Layer Specifications: Media Access Control (MAC) Parameters, Physical Layers, and Management Parameters for 10 Gb/s Operation
[5]
ANSI/TIA/EIA-644-A, Electrical Characteristics of Low Voltage Differential Signaling (LVDS) Interface Circuits
[6]
IEEE 1588-2002: IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems
[7]
EN 50325-4: Industrial communications subsystem based on ISO 11898 (CAN) for controller-device interfaces. Part 4: CANopen
[8]
IEC 61800-7-301/304 (Ed.1.0), Adjustable speed electrical power drive systems – Part 7-301: Generic interface and use of profiles for power drive systems – Mapping of profile type 1 to network technologies – Part 7-304: Generic interface and use of profiles for power drive systems – Mapping of profile type 4 to network technologies
[9]
SEMI E54.20: Standard for Sensor/Actuator Network Communications for EtherCAT.
http://www.semi.org
[10]
IEC 61784-2 (Ed.1.0), Industrial communication networks – Profiles – Part 2: Additional fieldbus profiles for real-time networks based on ISO/IEC 8802-3
EtherCAT样本
了解更多关于最快的“工业以太网现场总线”的详细信息
中文
英文
德文
西班牙语
意大利文
法语
日文
韩文
EtherCAT多媒体视频
EtherCAT技术协会
工业以太网通信技术EtherCAT运行原理
EtherCAT技术简介