比特派官网app下载地址查询|ethercat coe
比特派官网app下载地址查询|ethercat coe
【EtherCAT】3.COE协议详解 - 知乎
【EtherCAT】3.COE协议详解 - 知乎首发于EtherCAT切换模式写文章登录/注册【EtherCAT】3.COE协议详解小皎皎一只可爱的小皎皎本文详细介绍CANopen over EtherCAT(COE)协议。CANopen协议首先强烈推荐这个视频,本文也是根据此视频翻译的:CANopen是一种架构在控制局域网络(Controller Area Network,CAN)上的应用层通信协议,包括通信子协议及设备子协议,常在嵌入式系统中使用,也是工业控制常用到的一种现场总线协议。因为CANopen是最早是设计在CAN上的,对CAN不熟悉的同学可以参考下面这篇文章:从OSI的角度来看,CAN Bus承担物理层和数据链路层的功能,而CANopen可以用在会话层,表示层或者应用层。OSI For CANopenCANopen通信包含以下核心概念:通信模型:可以支持主从(Master-Slave)模式,客户端-服务器(CS)模式和生产者-消费者(Producer-Consumer)模式;通信协议:CANopen包含一系列特殊的子协议,例如用于配置节点的SDO和用于传输数据的PDO;设备状态:设备可以支持不同的状态,主节点设置从节点的状态;对象字典:每个设备都包含一个对象字典(Object Dictionary,OD),描述了CANopen节点的所有参数,可以通过SDO访问对象字典;电子数据表:EDS是存放对象字典条目的标准文件格式;设备配置文件:为特定设备定义的OD,例如用于IO模块的CIA 401和用于伺服控制的CIA 402协议。各部分的关系如下图所示:CANopen协议结构通信模型主从通信模型:一个节点充当主站,请求从站的数据,例如伺服电机的数据。这个过程可以用于诊断或者状态管理客户端-服务器模型:客户端向服务器发送数据请求,服务器回复请求的数据。例如,当主机程序需要来自从机的OD数据时。阅读来自服务器的数据称为上传,而写入是下载。生产者-消费者模型:生产者节点将数据广播到网络,由消费者消费数据。理解这几个通信模型对后面的PDO,SDO的学习非常重要。通信协议和设备状态CAN报文的结构如下图所示:CAN报文在CANopen中,11位的CANID被称为通信对象标识符(COB-ID)。COB-ID分为两部分,4bit功能码和7bit的节点ID。通过COB-ID,可以确定是哪个节点正在发送/接收何种服务。CANopen Frame其中主要的CANopen服务类型:网络管理NMT:用于控制CANopen服务的状态,例如,通过NMT命令(启动,停止,复位等)进行操作。同步SYNC:同步主机和从机之间的信号;紧急情况EMCY:如果设备发生致命错误,则启用紧急服务,允许它向网络的其余部分表明这一点;时间戳TIME:利用该服务分发全球网络时间,包含一个6字节的时间和日期信息;过程数据对象PDO:PDO用于在设备之间传输实时数据;服务数据对象SDO:SDO用于访问、更改CANopen对象字典中的值;心跳HeartBeat:提供节点活跃消息并确认NMT命令;这其中CANopen命令中,最重要的是PDO和SDO。对象字典对象字典是一个标准化结构,其中含有描述CANopen节点行为的所有参数。通过16位的索引和8位的子索引来查找OD条目。简单地理解,对象字典其实就是一个字典,通过索引号来查询这个对象的信息。其中每个条目可能包含以下的信息:索引:16bit的对象基地址;对象名:厂商的设备名称;对象代码:可以是数组,变量或者记录;数据类型;访问权限:读写、只读或者只写;对于一本英汉字典,“abandon”这样的经典单词可以说是一定出现的,但是有些生僻词、专有名词可能只有在特定功能的字典才会出现。对象字典也是这样,对象字典含有标准化部分和非标准化部分,标准化部分是一些必填项,非标准化部分可以根据需求来定制。对象字典电子数据表和设备配置文件那么对象字典是以何种形式存储在设备中的呢?答案是通过INI格式(在EtherCAT中一般是XML)的一个对象字典模板文件,称为电子数据表EDS,EDS一般由厂家提供,程序员会编辑设备的EDS,并在EDS中添加了特定的参数值或改变了每个对象的描述名称,存储在设备中,称为设备配置文件(DCF)。如下图所示:EDS和DCF一般来说DCF是在设备集成时创建的,但是通常在初始化配置之后需要修改对象字典的值,此时就需要使用SDO了。SDOSDO服务允许CANopen节点通过CAN网络读取/编辑另一个节点的对象字典的值。正如在“通信模型”中提到的,SDO服务使用“客户端/服务器”模式。具体来说,一个SDO “客户端”与一个专门的SDO“服务器”发起通信。其目的可以是更新一个OD条目(称为“SDO下载”)或读取一个条目(“SDO上传”)。SDO的客户端\服务器通信模式SDO是如何通过CAN报文来实现的呢?一个典型的SDO报文首先,COB-ID 605反映了“SDO接收”的使用(COB-ID 600 +节点ID)CCS(客户端命令指定符)是传输类型(例如,1:下载,2:上传)n是字节区4-7中不包含的字节数(如果e和s被设置为有效)e表示“加速传输”,且所有数据都在单个CAN帧中(如果有设置)s表示数据大小显示为n(如果有设置)索引(16位)和子索引(8位)反映了要访问的OD地址最后,节点5将相应字节4-7中包含的相关数据写入对象字典PDOPDO用于实时的数据传输。CANopen的PDO服务用于在CANopen节点之间有效地共享实时操作数据。例如,PDO将携带来自压力传感器的压力数据或来自温度传感器的温度数据。原则上,SDO服务也能实现共享实时操作数据,但由于单个SDO响应只能携带4个数据字节,因此一般不用SDO。假设一个主站节点需要来自节点5的两个参数值(例如“SensTemp2”和“Torque5”)。如果通过SDO来实现,需要4个完整的CAN帧(2个请求和2个响应)。相比之下,一个PDO消息可以包含8个完整的数据字节,而且它可以在一个帧内包含多个对象参数值。因此,在SDO服务中至少需要4个报文,而在PDO服务中则可能只需要1个报文就可以完成。PDO服务使用的是“消费者/生产者”模型。因此,生产者 "生产数据",它使用发送PDO(TPDO)将其传送给“消费者”(主站)。反之,它可以通过“接收PDO”(RPDO)从消费者那里接收数据。PDO报文这个PDO的使用者知道如何解释这个PDO报文。这些“PDO 映射”通常是可配置的,并且可以在创建 DCF 或通过 SDO 服务期间进行更改。具体在哪个字典项目中配置PDO,要根据使用的CANopen规范来确定,在CIA301中通过PDO的通讯参数(例如1400)和PDO的映射参数(例如1600)来进行配置。COE协议下面我们介绍以下CANOpen在EtherCAT中的应用。COE的对象字典COE协议是完全遵循CANopen协议的,但针对EtherCAT通信做了一些扩展,索引为0x1c00~0x1c4f,用于设置存储同步管理器的类型,通信参数和PDO数据分配。COE对象字典COE通信数据对象续表上面这个表的数据会以xml文件存储在从站的EEPROM中,标签为objects 。这里0x1C12和0x1C13两个Entry非常重要,一般我们使用这两个Entry对PDO进行管理。周期性数据通信周期性数据主要通过PDO进行通信。前面提到,主站通过解析对象字典来了解EtherCAT报文的PDO分配。0x1C10~0x1C2F对象字典的内容确定报文中PDO的分配。其中,子索引0是分配的PDO数目,其他子索引是PDO映射对象的索引号,也就是前面的0x1600~0x17FF。然后根据PDO映射对象的子索引和数值,就可以知道这个PDO的具体含义了,一个配置对象如下图所示:0x1c02配置示例对象字典的Entry一般包含索引和子索引,这里的1C12包含4个子索引。第一个子索引是包含PDO映射的数目,后面3个是映射的具体PDO。也就是说后面要使用到0x1600,0x1601和0x1602这3个PDO。每一个PDO就是一个对象,类似于C语言里的结构体,它还包括许多成员变量。例如这里1600PDO还包含2个子索引,分别是0x7000:01和0x7010:01,可见从对象字典到最终要传输的具体数据,是一个层层映射的关系。但如果要快速理清传输的是什么数据,答案也很简单:检查1C12和1C13。这里顺便提一提动态PDO配置的概念。动态PDO配置包括PDO Assignment和PDO Configuration,前者指的是,已经有配置好的一堆1600,1601,1602等等PDO,我们可以选择如何组合成我们自己的传输数据。PDO Configuration是指,可以修改1600,1601这些具体PDO映射的内容。实际上一个商用从站应该支持动态PDO,后面的文章会介绍如何实现动态PDO。非周期性数据通信EtherCAT主站通过读写邮箱数据SM通道来实现非周期性数据通信。前面我们讲过,EtherCAT处理非周期性数据通信是通过邮箱的方式,邮箱数据单元结构如下图所示:邮箱数据这里面类型字段如果为3,代表当前运行的是COE协议。COE的命令位只有两个字节:COE数据头SDO数据单元SDO的传输分为上传和下载两种,下载传输常用于主站设置从站参数,上传用于主站读取从站性能参数。这里内容比较多,就不详细介绍了,感兴趣的小伙伴可以自行查阅相关资料学习。编辑于 2023-08-28 20:39・IP 属地浙江通信协议网络协议赞同 29添加评论分享喜欢收藏申请转载文章被以下专栏收录EtherCAT介绍工业以太网总线Ether
COE、SOE、EOE、FOE是什么?_ethercat coe soe-CSDN博客
>COE、SOE、EOE、FOE是什么?_ethercat coe soe-CSDN博客
COE、SOE、EOE、FOE是什么?
最新推荐文章于 2024-03-10 17:51:01 发布
识荒者
最新推荐文章于 2024-03-10 17:51:01 发布
阅读量9k
收藏
20
点赞数
6
分类专栏:
通俗易懂Ethercat
文章标签:
网络
ethercat
通俗
COE
EOE
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/absinjun/article/details/122203964
版权
通俗易懂Ethercat
专栏收录该内容
5 篇文章
8 订阅
订阅专栏
简单来说,COE、SOE、EOE、FOE都是一种基于邮箱协议,分别基于EtherCAT来兼容。
COE 全称:CANopen over EtherCAT。该协议是一个具有开放性的标准应用层协议。其中CANopen协议是基于CAN协议的链路层上实现的。EtherCAT协议在应用层支持CANopen协议,因此支持CANopen协议的从站可以被运用在EtherCAT协议上。
SOE 全称:Servo Drive over EtherCAT。SERCOS是世界首个应用于伺服控制的协议。EtherCAT协议在应用层接口上兼容了这个协议,简称为SOE。SERCOS应用层协议为主站设计了信息接口,可以通过配置EtherCAT过程数据报文,实现周期性传递伺服驱动器的数据。
EOE 全称:Ethernet over EtherCAT。该协议支持EtherCAT能分段传递标准的以太网数据报文,使得EtherCAT协议同样能支持TCP/IP、UDP/IP协议。
FOE 全称:File Access over EtherCAT。该协议可以使用EtherCAT总线上传、下载固件,刷新从站的固件。并且可以通过命令行工具加载或存储文件。
优惠劵
识荒者
关注
关注
6
点赞
踩
20
收藏
觉得还不错?
一键收藏
知道了
0
评论
COE、SOE、EOE、FOE是什么?
简单来说,COE、SOE、EOE、FOE都是一种基于邮箱协议,分别基于EtherCAT来兼容。COE全称:CANopen over EtherCAT。该协议是一个具有开放性的标准应用层协议。其中CANopen协议是基于CAN协议的链路层上实现的。EtherCAT协议在应用层支持CANopen协议,因此支持CANopen协议的从站可以被运用在EtherCAT协议上。SOE全称:Servo Drive over EtherCAT。SERCOS是世界首个应用于伺服控制的协议。EtherCAT协议在应用层接
复制链接
扫一扫
专栏目录
COE 的相关格式描述的excel文件
10-17
COE格式.xlsx
sin_sin.coe_
09-28
用于存储rom,可以有若干用途,利于FFT的仿真验证,这是最基本的存储文件,由matlab生成
参与评论
您还未登录,请先
登录
后发表或查看评论
【protocol】工控协议COE、SOE等是什么
Hucy861630的博客
09-22
791
EtherCAT协议在应用层接口上兼容了这个协议,简称为SOE。全称:CANopen over EtherCAT。其中CANopen协议是基于CAN协议的链路层上实现的。EtherCAT协议在应用层支持CANopen协议,因此支持CANopen协议的从站可以被运用在EtherCAT协议上。该协议支持EtherCAT能分段传递标准的以太网数据报文,使得EtherCAT协议同样能支持TCP/IP、UDP/IP协议。简单来说,COE、SOE、EOE、FOE都是一种基于邮箱协议,分别基于EtherCAT来兼容。
EtherCAT的COE报文
u014453443的博客
01-04
515
动态PDO配置包括PDO Assignment和PDO Configuration,前者指的是,已经有配置好的一堆1600,1601,1602等等PDO,我们可以选择如何组合成我们自己的传输数据。其中,子索引0是分配的PDO数目,其他子索引是PDO映射对象的索引号,也就是前面的0x1600~0x17FF。COE协议是完全遵循CANopen协议的,但针对EtherCAT通信做了一些扩展,索引为0x1c00~0x1c4f,用于设置存储同步管理器的类型,通信参数和PDO数据分配。0x1c12配置示例。
EtherCAT 应用层协议
changexhao的专栏
05-18
3116
不对EtherCAT进行介绍,只谈谈对EtherCAT应用层协议的简单理解1、COE (CANopen over EtherCAT) 一种基于且完全遵循CANopen协议的通信协议 用途: 1、用于驱动PDO对象,实现PDO对象间数据通信 2、用于驱动SDO对象,实现SDO对象间的数据传输 分类: 1、周期性过程数据通信 – 驱动PDO ...
EtherCAT名词解释
China_XXX的博客
08-09
2779
CoE:基于EtherCAT的CANopen通信;
DC:分布式时钟;
ENI:EtherCAT Network Information的缩写,即EtherCAT网络信息;
EoE:基于EtherCAT的以太网;
ESC:EtherCAT从站控制器;
EMI:EtherCAT Master Information的缩写,EtherCAT主站信息;
ESI:EtherCAT Slave ...
EtherCAT 功能介绍系列文章——EoE
MotroEngineer的博客
06-19
1195
EoE(Ethernet over EtherCAT)是允许在EtherCAT网络中传输标准以太网数据使用标准以太网设备,如打印机、相机或PC的技术。EoE从第三方设备传输到EtherCAT主站的数据帧通过EtherCAT协议进行透传。通过EoE技术,EtherCAT网络对以太网设备是完全透明的,实时特性不会受到影响。
EtherCAT 应用层协议的部分理解(一)
热门推荐
王三三
06-22
2万+
不对EtherCAT进行介绍,只谈谈对EtherCAT应用层协议的简单理解1、COE (CANopen over EtherCAT) 一种基于且完全遵循CANopen协议的通信协议 用途:
1、用于驱动PDO对象,实现PDO对象间数据通信
2、用于驱动SDO对象,实现SDO对象间的数据传输 分类:
1、周期性过程数据通信 – 驱动PDO
SOEM协议栈代码研读笔记(二)
zhiyaormb的博客
01-11
1768
类比 一下单片机,ARM,对外设的操作 ,主要便是通过寄存器,地址空间的读写,至于对应的外设如何根据寄存器的数据去工作,则被隐藏在黑盒子中。现在,把EtherCAT Master想象成ARM内核,slave想象成类似uart之类的外设。地址映射,FMMU便是将其细节包装起来的黑盒子
6 邮箱协议实现
Queen B is Mine
12-04
3094
6 邮箱协议实现EtherCAT主站实现了 CANopen over EtherCAT(CoE),Ethernet over EtherCAT(EoE),File-access over EtherCAT(FoE),Vendor-specific over EtherCAT(VoE)和 Servo Profile over EtherCAT(SoE)的邮箱协议。有关详细信息,请参阅以下部分。
【EtherCAT】一、入门基础
06-09
5250
EtherCAT(Ethernet Control Automation Technology)是一种高性能实时以太网通信协议,用于在工业自动化领域中进行实时控制和通信。它是由德国Beckhoff自动化公司在2003年开发的,并被国际电工委员会(IEC)标准化为IEC 61158标准。EtherCAT的设计目标是实现极低的通信延迟和高带宽的数据传输,以满足高速控制和数据采集的需求。它通过一种特殊的主从架构实现,其中一个主站(Master)负责协调整个网络,而从站(Slave)则负责提供输入输出功能。
coe_load_sql_profile.sql
08-20
oracle sqlt工具脚本,用来使用sql_profile绑定内存中已有的执行计划
mif_to_coe.txt
05-12
用MATLAB实现mif文件转换成coe文件,原创代码,非常实用!可以非常轻松加在到rom的ip核里面了!
matlab.rar通过matlab将彩色图片生产coe文件
05-18
matlab.rar通过matlab将彩色图片生产coe文件
提供给fpga使用
方便调试功能
Ethercat xml规范
05-12
Ethercat xml规范
.mif波形文件转.coe格式(MATLAB函数)
09-03
1)可以将.mif波形文件统一转换为16位宽.coe文件。可配合guagle波形生成器配合使用。用于VIVADO写ROM IP操作 2)支持MATLAB2018B版本及以上(以下可能无部分调用的函数) 3)使用方法:输入.mif文件的路径,输出...
GMS.rar_gms coe
09-24
自己用C++编写的基于控制台的学生成绩管理系统,包括了很多C++的知识:类、向量、动态数组、菜单设计、相关度计算等等
车载诊断协议DoIP系列 —— AL IPv6地址分配&通用DoIP报头结构
最新发布
Soly_kun的博客
03-10
206
### 本文大体如下:
### 1、系列文章目的
### 2、AL IPv6地址分配
### 3、通用DoIP报头结构
trunk
2301_79947226的博客
03-10
446
当两台交换机之间需要互相传送多个 VLAN 的数据时,就需要使用 trunk 端口。Trunk 端口会将属于不同 VLAN 的数据进行打标记(通常是 IEEE 802.1Q 协议中定义的 VLAN 标识符),从而使得在传输过程中能够正确区分和处理不同 VLAN 的数据。在华为企业级网络模拟平台(eNSP)中,“trunk” 是指用于在交换机之间传送多个 VLAN 数据的端口。在 eNSP 中,您可以通过配置交换机的接口将其设置为 trunk 端口,从而实现跨交换机的 VLAN 数据传输和通信。
WSADE = vehicle_mean_error * vehicle_coe + pedestrian_mean_error * pedestrian_coe + bicycle_mean_error * bicycle_coe中的WSADE是什么意思
04-19
WSADE 是一个衡量目标检测算法性能的指标,全称为 Weighted Sum of Average Detection Errors,其中,vehicle_mean_error、pedestrian_mean_error、bicycle_mean_error是目标检测算法在车辆、行人、自行车三个类别上的平均检测误差,vehicle_coe、pedestrian_coe、bicycle_coe是每个类别的权重系数。
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
识荒者
CSDN认证博客专家
CSDN认证企业博客
码龄7年
暂无认证
79
原创
38万+
周排名
102万+
总排名
47万+
访问
等级
4270
积分
507
粉丝
157
获赞
104
评论
1037
收藏
私信
关注
热门文章
神奇的python(六)之python的串口操作(pyserial)
46353
shell脚本打开一个新终端并运行指定脚本
29530
SD卡、TF卡坏道及容量检测
28035
J-LINK 操作使用指南
24655
SD卡、TF卡读写速率测试
21547
分类专栏
虚拟串口
1篇
通俗易懂Ethercat
5篇
TortoiseSVN
1篇
EtherCAT
1篇
kernel
3篇
linux
25篇
Jlink
1篇
C++
1篇
SD卡、TF卡检测技术
2篇
python
软技能
2篇
神奇的python
6篇
Pygame写游戏
22篇
PyOpenGL写3D界面
5篇
Ethercat解析
15篇
Linuxcnc解析
2篇
每日一题(C语言基础篇)
3篇
Leetcode算法题
18篇
Linux实时系统
1篇
最新评论
Ethercat解析(十五)之程序框架
weixin_57563284:
请问一下博主使用过igh 5001协议控制过io吗
Ethercat解析(十)之从站配置
田海峰:
E没看明白啊。能麻烦解释下吗?
LinuxCNC基础知识
Zlf14:
兄弟你下载了吗,我也不会下载
LinuxCNC基础知识
ttlsss:
隐藏内容怎么下载啊?
神奇的python(六)之python的串口操作(pyserial)
Zeeland:
如果您正在寻找一个轻量级的Serial框架,那么我强烈建议您了解一下cushy-serial。它是一个非常易于使用的Python库,可以使串行编程变得更加简单和快捷。相对于传统的pyserial,cushy-serial提供了许多特性,如自定义消息协议、串口定时任务等等,因此您不必花费太多时间在多线程上。
另外,cushy-serial兼容了Serial中的所有功能,所以您可以在其中使用Serial的所有特性。如果您有任何问题或建议,可以提交pr或issue进行交流。此外,您也可以通过以下链接了解更多关于cushy-serial的信息
https://github.com/Undertone0809/cushy-serial
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
虚拟机与主机串口通信(主机与主机)
LinuxCNC基础知识
EtherCAT有哪些主流开源代码?它们的优点是什么?
2021年7篇
2019年1篇
2018年102篇
目录
目录
分类专栏
虚拟串口
1篇
通俗易懂Ethercat
5篇
TortoiseSVN
1篇
EtherCAT
1篇
kernel
3篇
linux
25篇
Jlink
1篇
C++
1篇
SD卡、TF卡检测技术
2篇
python
软技能
2篇
神奇的python
6篇
Pygame写游戏
22篇
PyOpenGL写3D界面
5篇
Ethercat解析
15篇
Linuxcnc解析
2篇
每日一题(C语言基础篇)
3篇
Leetcode算法题
18篇
Linux实时系统
1篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
EtherCAT协议基础知识(Part 3) - 知乎
EtherCAT协议基础知识(Part 3) - 知乎切换模式写文章登录/注册EtherCAT协议基础知识(Part 3)虹科工业智能互联三、EtherCAT应用层1.特性EtherCAT应用层支持多种设备行规以实现邮箱通讯,包括CANopen、SERCOS、HTTP等,基于EtherCAT的应用层行规被称为xoE协议(xxx over EtherCAT)。设备开发中,从站设备无需支持所有行规,根据其应用选择最合适的一种即可。下面将以应用最为广泛的CoE协议举例描述。2.CoE协议CoE全称CAN application protocol over EtherCAT,是EtherCAT应用层协议实现的一种,其特点是根据CiA402协议编写,使用对象和对象字典的功能实现邮箱通讯。CANopen协议已经有成熟且大规模的应用,使用CoE协议,相关设备只需要经过少量的更改即可应用于EtherCAT协议上,大部分CANopen的固件也可以得到重复利用。3.站点状态机EtherCAT对于站点所处的状态与运行功能进行了规范,如上图所示,各状态功能简介如下:Init:初始化状态,站点在此状态下将检查数据链路是否正确,与应用层无数据交互。Pre-Op:预操作状态(POP),站点在此状态下仅进行邮箱通信,不进行过程数据交互。Safe-Op:安全运行(SOP),站点在此状态下可进行邮箱通信,并允许过程数据输入,不可输出。OP:操作状态,站点可进行完全的数据通信,处于正常的工作状态。Bootstrap:引导模式,仅适用于FoE的邮箱通信,用于固件的更新4.同步模式及工作原理EtherCAT存在三种同步的模式:Free RUN、SM同步(Sync Manager,同步管理器)、DC同步(Distributed Clock,分布式时钟),下面将简要介绍三种同步模式及其工作的原理。①Free RUNFree RUN模式表示网络中各站点运行于异步的状态下,不进行同步。从站应用程序完全按照从站自身时钟的时间片进行触发与运行,与报文帧的收发无关。Free RUN模式分离了主站与从站的时间关系,当主从站时钟频率差别较大时,可能会出现丢帧等状况。该模式适用于完全没有同步性要求的应用。②SM同步SM同步模式依赖于EtherCAT主站发送的同步帧,各从站依据收到的同步帧的数量进行自身应用程序的触发,如某从站收到两次EtherCAT同步帧,就进入一次中断服务函数进行相应的处理。SM同步模式的同步精度受多种因素的影响,如:主站自身的时间抖动,从而影响同步帧的发送;报文帧的物理传输时延决定了每个从站收到同步帧的时间一定有差异,在整个网络比较大时这个时间差也会放大。因此该模式比较适用于同步性要求一般的应用。③DC同步DC同步模式的形式与SM同步类似,都是依据于中断触发信号来进行自身应用程序的触发,不同在于SM同步依据的是同步帧,而DC同步依据的是各站点内ESC进行产生的SYNC信号。EtherCAT制定了一套完整的机制以保证DC同步能够精确运行,其运行流程总体可分为两个阶段:初始化阶段和动态补偿阶段,如下图所示:初始化阶段将网络中各设备在上电时紊乱的触发时间修正到可以容忍的水平,其过程是:1)主站启动后发送广播帧扫描整个网络,各从站计算该报文环回自己一次的时间戳值,并将该值写入本地的寄存器中,差值计算从而得到报文帧的传输延时,如下图所示。后续再将该传输延时补偿到SYNC信号的发送过程中,从而消除物理传输延时的影响。2)以从站中第一个具有DC单元的从站的时钟作为参考时钟,发送大量的ARMW报文将读取参考值并发送至各个从站当中去,使得每个从站本地的时钟都调整到接近参考时钟的值。如下图所示:而由于存在时钟源不同,晶振频率抖动等等不可控因素,网络还需要进入动态补偿阶段,使所有站点的同步时间抖动能够长时间的维持在一个较低的水平,其过程如下:主站的每个发送周期都会发送ARMW报文,将参考时钟值发送至所有站点,各站点对比该参考值与本地时钟值(结合传输延时)后,进行本地时钟值的更新(ESC硬件的加速或减速)。从而实现整个网络长时间低水平的时间抖动。如果需要更多帮助,欢迎联系我们发布于 2020-10-12 16:56数据通信通信协议赞同 141 条评论分享喜欢收藏申请
COE、SOE、EOE、FOE是什么?_ethercat coe soe-CSDN博客
>COE、SOE、EOE、FOE是什么?_ethercat coe soe-CSDN博客
COE、SOE、EOE、FOE是什么?
最新推荐文章于 2024-03-10 17:51:01 发布
识荒者
最新推荐文章于 2024-03-10 17:51:01 发布
阅读量9k
收藏
20
点赞数
6
分类专栏:
通俗易懂Ethercat
文章标签:
网络
ethercat
通俗
COE
EOE
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/absinjun/article/details/122203964
版权
通俗易懂Ethercat
专栏收录该内容
5 篇文章
8 订阅
订阅专栏
简单来说,COE、SOE、EOE、FOE都是一种基于邮箱协议,分别基于EtherCAT来兼容。
COE 全称:CANopen over EtherCAT。该协议是一个具有开放性的标准应用层协议。其中CANopen协议是基于CAN协议的链路层上实现的。EtherCAT协议在应用层支持CANopen协议,因此支持CANopen协议的从站可以被运用在EtherCAT协议上。
SOE 全称:Servo Drive over EtherCAT。SERCOS是世界首个应用于伺服控制的协议。EtherCAT协议在应用层接口上兼容了这个协议,简称为SOE。SERCOS应用层协议为主站设计了信息接口,可以通过配置EtherCAT过程数据报文,实现周期性传递伺服驱动器的数据。
EOE 全称:Ethernet over EtherCAT。该协议支持EtherCAT能分段传递标准的以太网数据报文,使得EtherCAT协议同样能支持TCP/IP、UDP/IP协议。
FOE 全称:File Access over EtherCAT。该协议可以使用EtherCAT总线上传、下载固件,刷新从站的固件。并且可以通过命令行工具加载或存储文件。
优惠劵
识荒者
关注
关注
6
点赞
踩
20
收藏
觉得还不错?
一键收藏
知道了
0
评论
COE、SOE、EOE、FOE是什么?
简单来说,COE、SOE、EOE、FOE都是一种基于邮箱协议,分别基于EtherCAT来兼容。COE全称:CANopen over EtherCAT。该协议是一个具有开放性的标准应用层协议。其中CANopen协议是基于CAN协议的链路层上实现的。EtherCAT协议在应用层支持CANopen协议,因此支持CANopen协议的从站可以被运用在EtherCAT协议上。SOE全称:Servo Drive over EtherCAT。SERCOS是世界首个应用于伺服控制的协议。EtherCAT协议在应用层接
复制链接
扫一扫
专栏目录
COE 的相关格式描述的excel文件
10-17
COE格式.xlsx
sin_sin.coe_
09-28
用于存储rom,可以有若干用途,利于FFT的仿真验证,这是最基本的存储文件,由matlab生成
参与评论
您还未登录,请先
登录
后发表或查看评论
【protocol】工控协议COE、SOE等是什么
Hucy861630的博客
09-22
791
EtherCAT协议在应用层接口上兼容了这个协议,简称为SOE。全称:CANopen over EtherCAT。其中CANopen协议是基于CAN协议的链路层上实现的。EtherCAT协议在应用层支持CANopen协议,因此支持CANopen协议的从站可以被运用在EtherCAT协议上。该协议支持EtherCAT能分段传递标准的以太网数据报文,使得EtherCAT协议同样能支持TCP/IP、UDP/IP协议。简单来说,COE、SOE、EOE、FOE都是一种基于邮箱协议,分别基于EtherCAT来兼容。
EtherCAT的COE报文
u014453443的博客
01-04
515
动态PDO配置包括PDO Assignment和PDO Configuration,前者指的是,已经有配置好的一堆1600,1601,1602等等PDO,我们可以选择如何组合成我们自己的传输数据。其中,子索引0是分配的PDO数目,其他子索引是PDO映射对象的索引号,也就是前面的0x1600~0x17FF。COE协议是完全遵循CANopen协议的,但针对EtherCAT通信做了一些扩展,索引为0x1c00~0x1c4f,用于设置存储同步管理器的类型,通信参数和PDO数据分配。0x1c12配置示例。
EtherCAT 应用层协议
changexhao的专栏
05-18
3116
不对EtherCAT进行介绍,只谈谈对EtherCAT应用层协议的简单理解1、COE (CANopen over EtherCAT) 一种基于且完全遵循CANopen协议的通信协议 用途: 1、用于驱动PDO对象,实现PDO对象间数据通信 2、用于驱动SDO对象,实现SDO对象间的数据传输 分类: 1、周期性过程数据通信 – 驱动PDO ...
EtherCAT名词解释
China_XXX的博客
08-09
2779
CoE:基于EtherCAT的CANopen通信;
DC:分布式时钟;
ENI:EtherCAT Network Information的缩写,即EtherCAT网络信息;
EoE:基于EtherCAT的以太网;
ESC:EtherCAT从站控制器;
EMI:EtherCAT Master Information的缩写,EtherCAT主站信息;
ESI:EtherCAT Slave ...
EtherCAT 功能介绍系列文章——EoE
MotroEngineer的博客
06-19
1195
EoE(Ethernet over EtherCAT)是允许在EtherCAT网络中传输标准以太网数据使用标准以太网设备,如打印机、相机或PC的技术。EoE从第三方设备传输到EtherCAT主站的数据帧通过EtherCAT协议进行透传。通过EoE技术,EtherCAT网络对以太网设备是完全透明的,实时特性不会受到影响。
EtherCAT 应用层协议的部分理解(一)
热门推荐
王三三
06-22
2万+
不对EtherCAT进行介绍,只谈谈对EtherCAT应用层协议的简单理解1、COE (CANopen over EtherCAT) 一种基于且完全遵循CANopen协议的通信协议 用途:
1、用于驱动PDO对象,实现PDO对象间数据通信
2、用于驱动SDO对象,实现SDO对象间的数据传输 分类:
1、周期性过程数据通信 – 驱动PDO
SOEM协议栈代码研读笔记(二)
zhiyaormb的博客
01-11
1768
类比 一下单片机,ARM,对外设的操作 ,主要便是通过寄存器,地址空间的读写,至于对应的外设如何根据寄存器的数据去工作,则被隐藏在黑盒子中。现在,把EtherCAT Master想象成ARM内核,slave想象成类似uart之类的外设。地址映射,FMMU便是将其细节包装起来的黑盒子
6 邮箱协议实现
Queen B is Mine
12-04
3094
6 邮箱协议实现EtherCAT主站实现了 CANopen over EtherCAT(CoE),Ethernet over EtherCAT(EoE),File-access over EtherCAT(FoE),Vendor-specific over EtherCAT(VoE)和 Servo Profile over EtherCAT(SoE)的邮箱协议。有关详细信息,请参阅以下部分。
【EtherCAT】一、入门基础
06-09
5250
EtherCAT(Ethernet Control Automation Technology)是一种高性能实时以太网通信协议,用于在工业自动化领域中进行实时控制和通信。它是由德国Beckhoff自动化公司在2003年开发的,并被国际电工委员会(IEC)标准化为IEC 61158标准。EtherCAT的设计目标是实现极低的通信延迟和高带宽的数据传输,以满足高速控制和数据采集的需求。它通过一种特殊的主从架构实现,其中一个主站(Master)负责协调整个网络,而从站(Slave)则负责提供输入输出功能。
coe_load_sql_profile.sql
08-20
oracle sqlt工具脚本,用来使用sql_profile绑定内存中已有的执行计划
mif_to_coe.txt
05-12
用MATLAB实现mif文件转换成coe文件,原创代码,非常实用!可以非常轻松加在到rom的ip核里面了!
matlab.rar通过matlab将彩色图片生产coe文件
05-18
matlab.rar通过matlab将彩色图片生产coe文件
提供给fpga使用
方便调试功能
Ethercat xml规范
05-12
Ethercat xml规范
.mif波形文件转.coe格式(MATLAB函数)
09-03
1)可以将.mif波形文件统一转换为16位宽.coe文件。可配合guagle波形生成器配合使用。用于VIVADO写ROM IP操作 2)支持MATLAB2018B版本及以上(以下可能无部分调用的函数) 3)使用方法:输入.mif文件的路径,输出...
GMS.rar_gms coe
09-24
自己用C++编写的基于控制台的学生成绩管理系统,包括了很多C++的知识:类、向量、动态数组、菜单设计、相关度计算等等
车载诊断协议DoIP系列 —— AL IPv6地址分配&通用DoIP报头结构
最新发布
Soly_kun的博客
03-10
206
### 本文大体如下:
### 1、系列文章目的
### 2、AL IPv6地址分配
### 3、通用DoIP报头结构
trunk
2301_79947226的博客
03-10
446
当两台交换机之间需要互相传送多个 VLAN 的数据时,就需要使用 trunk 端口。Trunk 端口会将属于不同 VLAN 的数据进行打标记(通常是 IEEE 802.1Q 协议中定义的 VLAN 标识符),从而使得在传输过程中能够正确区分和处理不同 VLAN 的数据。在华为企业级网络模拟平台(eNSP)中,“trunk” 是指用于在交换机之间传送多个 VLAN 数据的端口。在 eNSP 中,您可以通过配置交换机的接口将其设置为 trunk 端口,从而实现跨交换机的 VLAN 数据传输和通信。
WSADE = vehicle_mean_error * vehicle_coe + pedestrian_mean_error * pedestrian_coe + bicycle_mean_error * bicycle_coe中的WSADE是什么意思
04-19
WSADE 是一个衡量目标检测算法性能的指标,全称为 Weighted Sum of Average Detection Errors,其中,vehicle_mean_error、pedestrian_mean_error、bicycle_mean_error是目标检测算法在车辆、行人、自行车三个类别上的平均检测误差,vehicle_coe、pedestrian_coe、bicycle_coe是每个类别的权重系数。
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
识荒者
CSDN认证博客专家
CSDN认证企业博客
码龄7年
暂无认证
79
原创
38万+
周排名
102万+
总排名
47万+
访问
等级
4270
积分
507
粉丝
157
获赞
104
评论
1037
收藏
私信
关注
热门文章
神奇的python(六)之python的串口操作(pyserial)
46353
shell脚本打开一个新终端并运行指定脚本
29530
SD卡、TF卡坏道及容量检测
28035
J-LINK 操作使用指南
24655
SD卡、TF卡读写速率测试
21547
分类专栏
虚拟串口
1篇
通俗易懂Ethercat
5篇
TortoiseSVN
1篇
EtherCAT
1篇
kernel
3篇
linux
25篇
Jlink
1篇
C++
1篇
SD卡、TF卡检测技术
2篇
python
软技能
2篇
神奇的python
6篇
Pygame写游戏
22篇
PyOpenGL写3D界面
5篇
Ethercat解析
15篇
Linuxcnc解析
2篇
每日一题(C语言基础篇)
3篇
Leetcode算法题
18篇
Linux实时系统
1篇
最新评论
Ethercat解析(十五)之程序框架
weixin_57563284:
请问一下博主使用过igh 5001协议控制过io吗
Ethercat解析(十)之从站配置
田海峰:
E没看明白啊。能麻烦解释下吗?
LinuxCNC基础知识
Zlf14:
兄弟你下载了吗,我也不会下载
LinuxCNC基础知识
ttlsss:
隐藏内容怎么下载啊?
神奇的python(六)之python的串口操作(pyserial)
Zeeland:
如果您正在寻找一个轻量级的Serial框架,那么我强烈建议您了解一下cushy-serial。它是一个非常易于使用的Python库,可以使串行编程变得更加简单和快捷。相对于传统的pyserial,cushy-serial提供了许多特性,如自定义消息协议、串口定时任务等等,因此您不必花费太多时间在多线程上。
另外,cushy-serial兼容了Serial中的所有功能,所以您可以在其中使用Serial的所有特性。如果您有任何问题或建议,可以提交pr或issue进行交流。此外,您也可以通过以下链接了解更多关于cushy-serial的信息
https://github.com/Undertone0809/cushy-serial
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
虚拟机与主机串口通信(主机与主机)
LinuxCNC基础知识
EtherCAT有哪些主流开源代码?它们的优点是什么?
2021年7篇
2019年1篇
2018年102篇
目录
目录
分类专栏
虚拟串口
1篇
通俗易懂Ethercat
5篇
TortoiseSVN
1篇
EtherCAT
1篇
kernel
3篇
linux
25篇
Jlink
1篇
C++
1篇
SD卡、TF卡检测技术
2篇
python
软技能
2篇
神奇的python
6篇
Pygame写游戏
22篇
PyOpenGL写3D界面
5篇
Ethercat解析
15篇
Linuxcnc解析
2篇
每日一题(C语言基础篇)
3篇
Leetcode算法题
18篇
Linux实时系统
1篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
EtherCAT Technology Group | 技术概览
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学习之路——对象字典 - 知乎
EtherCAT学习之路——对象字典 - 知乎首发于EtherCAT学习之路切换模式写文章登录/注册EtherCAT学习之路——对象字典白细胞1.对象字典CANopen 对象字典(OD: Object Dictionary)是 CANopen 协议最为核心的概念。所谓的对象字典就是一个有序的对象组,描述了对应 CANopen 节点的所有参数,包括通讯数据的存放位置也列入其索引,这个表变成可以传递形式就叫做 EDS 文件(电子数据文档Electronic Data Sheet)。对象字典,就像体检表,具备这个人每个功能的参数,便于用人单位(主站)进行合理分配工作。这部分引用自周立功的《CANopen轻松入门》,对于CANopen协议不清楚的地方,可以看看这本书,加强理解。图1-1 对象字典与体检表对象字典中的每个对象都描述了它的功能、名字、索引、子索引、数据类型,以及这个对象是否必需、读写属性等等。下表为通用通讯对象的举例:图1-2 通用通讯对象每个对象采用一个 16 位的索引值来寻址,这个索引值通常被称为索引,其范围在 0x0000到 0xFFFF 之间。为了避免数据大量时无索引可分配,所以在某些索引下也定义了一个 8 位的索引值,这个索引值通常被称为子索引,其范围是 0x00 到 0xFF 之间。子索引可以进一步描述对象的参数和功能等信息。图1-3 PDO对象总结来说,对象字典即是一张表,表中记录了各种各样的对象,这些对象可以是int32,bool这种通用数据类型,也可以是自定义的结构体数据类型。对象字典内使用Index来对对象进行索引,对象中还可以存在Sub-Index进一步描述对象的参数和功能。1.1 CoE(CANopen over EtherCAT)EtherCAT协议在应用层支持CANopen协议,并作了相应的扩充。CoE协议完全遵从CANopen协议,其对对象字典的定义也相同,如表1-3所示。表1-4列出了CoE通讯数据对象。其中针对EtherCAT通讯扩展了相关通讯对象0x1C00~0x1C4F,用于设置存储同步管理器的类型,通讯参数和PDO数据分配。图1-4 CoE对象字典定义图1-5 CoE通讯对象定义对于CoE对象字典,这里我们先不做具体的介绍,在后面的章节中会具体根据代码来具体说明。2.EtherCAT Slave Information中的对象字典描述2.1 EtherCAT Slave Information在EtherCAT Slave Information(ESI)用于描述从站参数及特性,使用xml的形式进行描述。EtherCAT配置工具通过ESI文件生成EtherCAT Network Information(ENI)。For each EtherCAT Slave a device description, the so called EtherCAT Slave Information (ESI) has tobe delivered. This is done in form of an XML file (eXtensible Markup Language). It describes EtherCAT specific as well as application specific features of the slave.The ESI file is used by an EtherCAT configuration tool to generate the EtherCAT Network Information(ENI).事实上,目前我也还没弄明白ESI具体细节,特别是从站具体是如何使用ESI的还不是很清楚。不过,只要知道ESI中包含哪些内容,与EtherCAT协议是怎样的一种对应关系,做从站开发也足够了。ESI的具体内容,我会在其他的文章中介绍,这里就详细讲一下ESI中的对象字典。ESI是用xml进行描述的,在例程中可以找到如AX58100-UC16-R1.xml的文件,用xmlspy打开如下图。图2-1 对象字典xmlspy将xml文件按照列表的形式进行排列,这里是ESI中Dictionary部分,也即是ESI中的对象字典描述。ESI中将对象字典分成了DataTypes和Objects两个部分,其中,Objects中描述了对象,DataTypes描述了对象的数据类型。2.2 ESI中的对象我所使用的例程中,共有23个对象,每一行即是一个对象的描述。包括对象的索引,名称,数据类型,位宽,还有一个Info域和Flags域。图2-2 对象字典Info域中包含了对象的子项,如对象0x7010就由9个子项构成,Sub-Index000和LED1~8。其中,Sub-Index000是对象中子索引的数目,0x7010中有LED1~8,所有其Sub-Index000就等于8。每一个有子项的对象的第一个子项都是Sub-Index000,且都表示该对象子索引的数目。Flags域描述对象的读写限制。2.3 对象的数据类型对象的数据类型是多种多样的,可以是通用类型UDINT(即uint32),也可以是结构体类型。BIT2,BOOL,DINT这些数据类型都是在ETG.1020中定义的;DT1601,DT1C12等则是根据CoE协议进行定义的;DT6000,DT7010则是一些用户自定义类型。图2-3 对象字典数据类型可以看到0x7010这个对象的子项和其数据类型的子项是一一对应起来的,都是包含了一个Sub-Index000和LED1~8。同时数据类型的子项中进一步描述了对象子项的子索引,名称,类型,位宽,比特偏移等信息。3.Slave Stack Code中的对象字典Slave Stack Code(SSC)是倍福提供的从站协议栈代码,SSC的具体内容会在另一篇文章中介绍,这里具体关注SSC中的对象字典。3.1 对象列表/**
*\brief EL9800 Application specific object dictionary
*
*/
TOBJECT OBJMEM ApplicationObjDic[] = {
/* Enum 0x0800 */
{NULL,NULL, 0x0800, {DEFTYPE_ENUM, 0x02 | (OBJCODE_REC << 8)}, asEntryDesc0x0800, 0, apEnum0800 },
/* Object 0x1601 */
{NULL,NULL, 0x1601, {DEFTYPE_PDOMAPPING, 10 | (OBJCODE_REC << 8)}, asEntryDesc0x1601, aName0x1601, &sDORxPDOMap, NULL, NULL, 0x0000 },
/* Object 0x1C12 */
{NULL,NULL, 0x1C12, {DEFTYPE_UNSIGNED16, 1 | (OBJCODE_ARR << 8)}, asPDOAssignEntryDesc, aName0x1C12, &sRxPDOassign, NULL, NULL, 0x0000 },
/* Object 0x7010 */
{NULL,NULL, 0x7010, {DEFTYPE_RECORD, 16 | (OBJCODE_REC << 8)}, asEntryDesc0x7010, aName0x7010, &sDOOutputs, NULL, NULL, 0x0000 },
{NULL,NULL, 0xFFFF, {0, 0}, NULL, NULL, NULL, NULL}};
#endif //#ifdef _OBJD_上面是我使用的例程中部分的对象定义,可以看到包含了对象的Index(如0x7010),对象的描述(如asEntryDesc0x7010),对象的名称(如aName0x7010),对象的实例(如sDOOutputs)。需要注意的一点是,这里的ApplicationObjDic并不是对象字典,ApplicationObjDic只是简单的把对象罗列出来。因为各种对象的数据类型是不相同的,所以,无法简单地以数组的形式来实现对象字典,在SSC中使用链表的形式来实现对象字典。准确来讲ApplicationObjDic中的每一行并不是一个对象,而是一个对象字典入口(Object Dictionary Entry),除了对象本身的描述之外,还包含了一些链表指针。不过,为了简单理解,可以先暂时把ApplicationObjDic理解成对象字典。3.2对象字典Entry下面是对象字典Entry的结构体定义:/**
* \brief Object dictionary entry structure
*/
typedef struct OBJ_ENTRY
{
struct OBJ_ENTRY *pPrev; /**< \brief Previous entry(object) in the object dictionary list*/
struct OBJ_ENTRY *pNext; /**< \brief Next entry(object) in the object dictionary list*/
UINT16 Index; /**< \brief Object index*/
TSDOINFOOBJDESC ObjDesc; /**< \brief Object access, type and code*/
OBJCONST TSDOINFOENTRYDESC OBJMEM *pEntryDesc; /**< \brief pointer to object entry descriptions*/
OBJCONST UCHAR OBJMEM *pName; /**< \brief Pointer to object and entry names*/
void MBXMEM *pVarPtr; /**< \brief Pointer to object buffer*/
UINT8 (* Read)( UINT16 Index, UINT8 Subindex, UINT32 Size, UINT16 MBXMEM * pData, UINT8 bCompleteAccess ); /**< \brief Function pointer to read function (if NULL default read function will be used)*/
UINT8 (* Write)( UINT16 Index, UINT8 Subindex, UINT32 Size, UINT16 MBXMEM * pData, UINT8 bCompleteAccess ); /**< \brief Function pointer to write function (if NULL default write function will be used)*/
UINT16 NonVolatileOffset; /**< \brief Offset within the non volatile memory (need to be defined for backup objects)*/
}
TOBJECT;*pPrev和*pNext是指向前链和后链的指针,通过*Prev和*pNext即可将各个对象链接起来,组成链表。Index即是对象索引;objDesc包含了“对象的数据类型”;*pEntryDesc是对象entry的描述,包含了“entry的数据类型和读写限制”;*pName是对象名称;*pVarPtr是对象的实例。objDesc中英文释义是object access,type and code。这里的object type与ESI中对象数据类型不是相同的东西。ESI中的对象数据类型是在*pEntryDesc中描述的。3.3 对象数据类型(pEntryDesc)下面以对象0x7010来介绍对象Entry描述:/**
* \brief Object 0x7010 (Digital output object) entry descriptions
*
* SubIndex 0 : read only
* SubIndex x : (One description for each led) read only and RxPdo mappable
* (x > 0)
*/
OBJCONST TSDOINFOENTRYDESC OBJMEM asEntryDesc0x7010[] = {
{DEFTYPE_UNSIGNED8, 0x8, ACCESS_READ }, /* Subindex 000 */
{DEFTYPE_BOOLEAN, 0x01, ACCESS_READ | OBJACCESS_RXPDOMAPPING}, /* SubIndex 001: LED 1 */
{DEFTYPE_BOOLEAN, 0x01, ACCESS_READ | OBJACCESS_RXPDOMAPPING}, /* SubIndex 002: LED 2 */
{DEFTYPE_BOOLEAN, 0x01, ACCESS_READ | OBJACCESS_RXPDOMAPPING}, /* SubIndex 003: LED 3 */
{DEFTYPE_BOOLEAN, 0x01, ACCESS_READ | OBJACCESS_RXPDOMAPPING}, /* SubIndex 004: LED 4 */
{DEFTYPE_BOOLEAN, 0x01, ACCESS_READ | OBJACCESS_RXPDOMAPPING}, /* SubIndex 005: LED 5 */
{DEFTYPE_BOOLEAN, 0x01, ACCESS_READ | OBJACCESS_RXPDOMAPPING}, /* SubIndex 006: LED 6 */
{DEFTYPE_BOOLEAN, 0x01, ACCESS_READ | OBJACCESS_RXPDOMAPPING}, /* SubIndex 007: LED 7 */
{DEFTYPE_BOOLEAN, 0x01, ACCESS_READ | OBJACCESS_RXPDOMAPPING}, /* SubIndex 008: LED 8 */
{0x0000, 0x08, 0}
}; /* Subindex 008 for align */其中,第一列是数据类型,第二列是位宽,第三列是读写限制。图3-1 对象7010数据类型对象Entry描述即是ESI中的对象数据类型。3.4对象实例(pVarPtr)对象数据类型中描述了各个子项的数据类型,位宽,读写限制,还需要一个对象的实例来存储各子项的值。/** \brief 0x7010 (Digital output object) data structure*/
typedef struct OBJ_STRUCT_PACKED_START {
UINT16 u16SubIndex0; /**< \brief SubIndex 0*/
BOOLEAN(bLED1); /**< \brief LED 1*/
BOOLEAN(bLED2); /**< \brief LED 2*/
BOOLEAN(bLED3); /**< \brief LED 3*/
BOOLEAN(bLED4); /**< \brief LED 4*/
BOOLEAN(bLED5); /**< \brief LED 5*/
BOOLEAN(bLED6); /**< \brief LED 6*/
BOOLEAN(bLED7); /**< \brief LED 7*/
BOOLEAN(bLED8); /**< \brief LED 8*/
ALIGN8(SubIndex008) /**< \brief 8Bit alignment*/
} OBJ_STRUCT_PACKED_END
TOBJ7010;
PROTO TOBJ7010 sDOOutputs
#ifdef _EVALBOARD_
= {8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0}
#endif
;TOBJ7010定义了对象0x7010的数据结构,而sDOOutputs则是其实例。可以把这里的TOBJ7010视为ESI中的对象子项描述。原本以为写博客是一件很简单的事情,亲自动手以后才发现这么耗时间。计划每天1小时,每周写2篇博客的,谁知道1周也写不完一篇。动手写的时候,才发现其实还有不少的内容自己没有理清楚,需要重新整理;还有不少的细节记不清,需要重新查证。因为个人的精力实在有限,所以,有些地方(比如ESI文件的调用)自己也还没完全搞清楚就先写出来了,不足之处望请谅解。编辑于 2020-03-12 21:45工业物联网通信以太网(Ethernet)赞同 534 条评论分享喜欢收藏申请转载文章被以下专栏收录EtherCAT学习之路EtherCAT从站开
EtherCAT Technology Group | EtherCAT
EtherCAT Technology Group | EtherCAT
EN
|
DE
|
ES
|
IT
|
CN
|
JP
Home
News
Events
Press
Contact
Member Area
Search
EtherCAT Technology Overview Why use EtherCAT? Organisation FAQs Membership Vendor ID Product Guide Downloads Conformance EtherCAT G EtherCAT P Safety TSN Compendium Developers Forum Knowledge Base
Logout
EtherCAT - the Ethernet Fieldbus
This section provides an in-depth introduction into EtherCAT (Ethernet for Control Automation Technology). The following information can also be found the the EtherCAT Brochure, available in various languages.
EtherCAT is a real-time Industrial Ethernet technology originally developed by Beckhoff Automation. The EtherCAT protocol which is disclosed in the IEC standard IEC61158 is suitable for hard and soft real-time requirements in automation technology, in test and measurement and many other applications.
The main focus during the development of EtherCAT was on short cycle times (≤ 100 µs), low jitter for accurate synchronization (≤ 1 µs) and low hardware costs.
EtherCAT was introduced in April 2003, and the EtherCAT Technology Group was founded in November 2003 - Meanwhile ETG has grown into the world’s largest Industrial Ethernet and fieldbus organization. The ETG brings together manufacturers and users, which contribute in technical working groups to the advancement of the EtherCAT technology.
1. Features of EtherCAT
1.1 Functional Principle
1.2 The EtherCAT Protocol
1.3 Flexible Topology
1.4 EtherCAT P
1.5 High-Precise Synchronization
1.6 Diagnosis and Error Localization
1.7 High Availability Requirements
1.8 Safety over EtherCAT
1.9 Communication Profiles
1.9.1 CAN Application Protocol over EtherCAT (CoE)
1.9.2 Servo Drive Profile according to IEC 61491-7-204 over EtherCAT (SoE)
1.9.3 Ethernet over EtherCAT (EoE)
1.9.4 File Access over EtherCAT (FoE)
1.9.5 ADS over EtherCAT (AoE)
1.10 EtherCAT Automation Protocol (EAP)
1.11 Integration of other Bus Systems
1.12 EtherCAT, TSN, Industrie 4.0 and IoT
2. Implementing EtherCAT Interfaces
2.1 Master
2.2 Slave
3. Conformance and Certification
3.1 Plug Fest
3.2 Conformance Test Tool
3.3 Technical Working Group Conformance
3.4 EtherCAT Test Center
4. International Standardization
1. Features of EtherCAT
top
1.1 Functional Principle
The EtherCAT master sends a telegram that passes through each node. Each EtherCAT slave device reads the data addressed to it “on the fly”, and inserts its data in the frame as the frame is moving downstream. The frame is delayed only by hardware propagation delay times. The last node in a segment (or drop line) detects an open port and sends the message back to the master using Ethernet technology’s full duplex feature.
The telegram’s maximum effective data rate increases to over 90 %, and due to the utilization of the full duplex feature, the theoretical effective data rate is even higher than 100 Mbit/s (> 90 % of two times 100 Mbit/s).
The EtherCAT master is the only node within a segment allowed to actively send an EtherCAT frame; all other nodes merely forward frames downstream. This concept prevents unpredictable delays and guarantees real-time capabilities.
The master uses a standard Ethernet Media Access Controller (MAC) without an additional communication processor. This allows a master to be implemented on any hardware platform with an available Ethernet port, regardless of which real-time operating system or application software is used. EtherCAT Slave devices use an EtherCAT Slave Controller (ESC) to process frames on the fly and entirely in hardware, making network performance predictable and independent of the individual slave device implementation.
1.2 The EtherCAT Protocol
EtherCAT embeds its payload in a standard Ethernet frame. The frame is identified with the Identifier (0x88A4) in the EtherType field. Since the EtherCAT protocol is optimized for short cyclic process data, the use of protocol stacks, such as TCP/IP or UDP/IP, can be eliminated.
EtherCAT in a standard Ethernet frame (according to IEEE 802.3)
To ensure Ethernet IT communication between the nodes, TCP/IP connections can optionally be tunneled through a mailbox channel without impacting real-time data transfer.
During startup, the master device configures and maps the process data on the slave devices. Different amounts of data can be exchanged with each slave, from one bit to a few bytes, or even up to kilobytes of data.
The EtherCAT frame contains one or more datagrams. The datagram header indicates what type of access the master device would like to execute:
Read, write, read-write
Access to a specific slave device through direct addressing, or access to multiple slave devices through logical addressing (implicit addressing)
Logical addressing is used for the cyclical exchange of process data. Each Datagram addresses a specific part of the process image in the EtherCAT segment, for which 4GBytes of address space is available. During network startup, each slave device is assigned one or more addresses in this global address space. If multiple slave devices are assigned addresses in the same area, they can all be addressed with a single Datagram. Since the Datagrams completely contain all the data access related information, the master device can decide when and which data to access. For example, the master device can use short cycle times to refresh data on the drives, while using a longer cycle time to sample the I/O; a fixed process data structure is not necessary. This also relieves the master device in comparison to in conventional fieldbus systems, in which the data from each node had to be read individually, sorted with the help of the process controller, and copied into memory.
With EtherCAT, the master device only needs to fill a single EtherCAT frame with new output data, and send the frame via automatic Direct Memory Access (DMA) to the MAC controller. When a frame with new input data is received via the MAC controller, the master device can copy the frame again via DMA into the computer’s memory – all without the CPU having to actively copy any data. In addition to cyclical data, further Datagrams can be used for asynchronous or event driven communication.
Inserting process data on the fly
In addition to logical addressing, the master device can also address a slave device via its position in the network. This method is used during network boot up to determine the network topology and compare it to the planned topology.
After checking the network configuration, the master device can assign each node a configured node address and communicate with the node via this fixed address. This enables targeted access to devices, even when the network topology is changed during operation, for example with Hot Connect Groups. There are two approaches for slave-to-slave communication. A slave device can send data directly to another slave device that is connected further downstream in the network. Since EtherCAT frames can only be processed going forward, this type of direct communication depends on the network’s topology, and is particularly suitable for slave-to-slave communication in a constant machine design (e.g. in printing or packaging machines). In contrast, freely configurable slave-to-slave communication runs through the master device, and requires two bus cycles (not necessarily two control cycles). Thanks to EtherCAT’s excellent performance, this type of slave-to-slave communication is still faster than with other communication technologies.
1.3 Flexible Topology
Line, tree, star, or daisy-chain: EtherCAT supports almost all of topologies. EtherCAT makes a pure bus or line topology with hundreds of nodes possible without the limitations that normally arise from cascading switches or hubs.
When wiring the system, the combination of lines with drop lines is beneficial: the ports necessary to create drop lines are directly integrated in many I/O modules, so no additional switches or active infrastructure components are required. The star topology, the Ethernet classic, can also naturally be utilized.
Modular machines or tool changers require network segments or individual nodes to be connected and disconnected during operation. EtherCAT slave controllers already include the basis for this Hot Connect feature. If a neighboring station is removed, then the port is automatically closed so the rest of the network can continue to operate without interference. Very short detection times < 15 μs guarantee a smooth changeover.
EtherCAT offers a lot of flexibility regarding cable types, so each segment can use the exact type of cable that best meets its needs. Inexpensive industrial Ethernet cable can be used between two nodes up to 100m apart in 100BASE-TX mode. Furthermore, the protocol addition EtherCAT P enables the transmission of data and power via one cable. This option enables the connection of devices such as sensors with a single line. Fiber Optics (such as 100BASE-FX) can also be used, for example for a node distance greater than 100m. The complete range of Ethernet wiring is also available for EtherCAT.
Flexible topology – line, tree or star
Up to 65,535 devices can be connected to one EtherCAT segment, so network expansion is virtually unlimited. Because of the practically unlimited number of nodes, modular devices such as “sliced” I/O stations can be designed in such a way that each module is an EtherCAT node of its own. Hence, the local extension bus is eliminated; the high performance of EtherCAT reaches each module directly and without any delays, since there is no gateway in the bus coupler or head station any more.
1.4 EtherCAT P: communication and power in one cable
EtherCAT P (P = power) is an addition to the previously described EtherCAT protocol standard. It enables not only the transmission of communication data, but also the peripheral voltage via a single, standard four-wire Ethernet cable.
EtherCAT and EtherCAT P are identical in terms of the protocol technology, as the addition exclusively affects the Physical Layer. No new EtherCAT Slave Controllers are necessary when using EtherCAT P. One could say that EtherCAT P has the same communication advantages as EtherCAT, but also provides the power supply via the communication cable, offering attractive benefits and enhancements for numerous applications.
EtherCAT P: data and power via one cable
Two electrically isolated, individually switchable 24V supplies power the new EtherCAT P devices, available with US serving the system and sensors and UP serving the periphery and actuators. Both voltages, US and UP, are directly coupled into the 100Mbit/s EtherCAT communication line. Thanks to this power transmission, the user can cascade several EtherCAT P devices and therefore only needs one cable. This facilitates reduced cabling, more compact, cost-effective wiring, lower system costs and a smaller footprint for devices, equipment and machines.
EtherCAT P is especially interesting for those parts of a machine that are self-contained and often a bit isolated, as they can be supplied with data and power through a single stub cable. Sensors of all types are perfectly suitable for EtherCAT P: a single compact M8 connector enables efficient integration of these field devices into the high-speed network and connects them to the supply voltage. Potential error sources while connecting devices are avoided, thanks to mechanical coding of the connector.
EtherCAT P can be used in the same network together with standard EtherCAT technology. Appropriate rectifier units transform common EtherCAT physics to EtherCAT P by consistently maintaining the Ethernet data encoding. In the same way, a device itself can be supplied with EtherCAT P but, in turn, can also transmit the EtherCAT protocol.
Read more...
1.5 Distributed Clocks for High-Precision Synchronization
In applications with spatially distributed processes requiring simultaneous actions, exact synchronization is particularly important. For example, this is the case for applications in which multiple servo axes execute coordinated movements.
In contrast to completely synchronous communication, whose quality suffers immediately from communication errors, distributed synchronized clocks have a high degree of tolerance for jitter in the communication system. Therefore, the EtherCAT solution for synchronizing nodes is based on such distributed clocks (DC).
Completely hardware-based synchronization with compensation for propagation delays.
The calibration of the clocks in the nodes is completely hardware-based. The time from the first DC slave device is cyclically distributed to all other devices in the system. With this mechanism, the slave device clocks can be precisely adjusted to this reference clock. The resulting jitter in the system is significantly less than 1μs.
Since the time sent from the reference clock arrives at the slave devices slightly delayed, this propagation delay must be measured and compensated for each slave device in order to ensure synchronicity and simultaneousness. This delay is measured during network startup or, if desired, even continuously during operation, ensuring that the clocks are simultaneous to within much less than 1μs of each other.
Synchronicity and simultaneousness – scope view of two distributed devices with 300 nodes and 120 m cable length
If all nodes have the same time information, they can set their output signals simultaneously and affix their input signals with a highly precise timestamp. In motion control applications, cycle accuracy is also important in addition to synchronicity and simultaneousness. In such applications, velocity is typically derived from the measured position, so it is critical that the position measurements are taken precisely equidistantly (i.e. in exact cycles). Even very small inaccuracies in the position measurement timing can translate to larger inaccuracies in the calculated velocity, especially relative to short cycle times. With EtherCAT, the position measurements are triggered by the precise local clock and not the bus system, leading to much greater accuracy.
Additionally, the use of distributed clocks also unburdens the master device; since actions such as position measurement are triggered by the local clock instead of when the frame is received, the master device doesn’t have such strict requirements for sending frames. This allows the master stack to be implemented in software on standard Ethernet hardware. Even jitter in the range of several microseconds does not diminish the accuracy of the Distributed Clocks! Since the accuracy of the clock does not depend on when it’s set, the frame’s absolute transmission time becomes irrelevant. The EtherCAT master needs only to ensure that the EtherCAT telegram is sent early enough, before the DC signal in the slave devices triggers the output.
1.6 Diagnosis and Error Localization
Experience with conventional fieldbus systems has shown that diagnostic characteristics play a major role in determining a machine’s availability and commissioning time. In addition to error detection, error localization is important during troubleshooting. EtherCAT features the possibility to scan and compare the actual network topology with the planned topology during boot up. EtherCAT also has many additional diagnostic capabilities inherent to its system.
The EtherCAT Slave Controller in each node checks the moving frame for errors with a checksum. Information is provided to the slave application only if the frame has been received correctly. If there is a bit error, the error counter is incremented and the subsequent nodes are informed that the frame contains an error. The master device will also detect that the frame is faulty and discard its information. The master device is able to detect where the fault originally occurred in the system by analyzing the nodes’ error counters. This is an enormous advantage in comparison to conventional fieldbus systems, in which an error is propagated along the entire party line, making it impossible to localize the source of the error. EtherCAT can detect and localize occasional disturbances before the issue impacts the machine’s operation.
Thanks to EtherCAT’s unique principle of bandwidth utilization, which is orders of magnitude better than industrial Ethernet technologies that use single frames, the likelihood of disturbances induced by bit errors within an EtherCAT frame is substantially lower – if the same cycle time is used. And, if in typical EtherCAT fashion much shorter cycle times are used, the time required for error recovery is significantly reduced. Thus, it is also much simpler to master such issues within the application.
Within the frames, the Working Counter enables the information in each Datagram to be monitored for consistency. Every node that is addressed by the Datagram and whose memory is accessible increments the Working Counter automatically. The master is then able to cyclically confirm if all nodes are working with consistent data. If the Working Counter has a different value than it should, the master does not forward this Datagram’s data to the control application. The master device is then able to automatically detect the reason for the unexpected behavior with help from status and error information from the nodes as well as the Link Status.
Since EtherCAT utilizes standard Ethernet frames, Ethernet network traffic can be recorded with the help of free Ethernet software tools. For example, the well-known Wireshark software comes with a protocol interpreter for EtherCAT, so that protocol-specific information, such as the Working Counter, commandos, etc. are shown in plain text.
EtherCAT Diagnosis for Users
EtherCAT Diagnosis for Developers
1.7 High Availability Requirements
For machines or equipment with very high availability requirements, a cable break or a node malfunctioning should not mean that a network segment is no longer accessible, or that the entire network fails.
EtherCAT enables cable redundancy with simple measures. By connecting a cable from the last node to an additional Ethernet port in the master device, a line topology is extended into a ring topology. A redundancy case, such as a cable break or a node malfunction, is detected by a software add-on in the master stack. That’s all there is to it!
The nodes themselves don’t need to be modified, and don’t even “know” that they’re being operated in a redundant network.
Inexpensive cable redundancy with standard EtherCAT slave devices
Link detection in the slave devices automatically detect and resolve redundancy cases with a recovery time is less than 15 μs, so at maximum, a single communication cycle is disrupted. This means that even motion applications with very short cycle times can continue working smoothly when a cable breaks.
With EtherCAT, it’s also possible to realize master device redundancy with Hot Standby. Vulnerable network components, such as those connected with a drag chain, can be wired with a drop line, so that even when a cable breaks, the rest of the machine keeps running.
1.8 Safety over EtherCAT
Modern communication systems not only realize the deterministic transfer of control data, they also enable the transfer of safety-critical control data through the same medium. EtherCAT utilizes the protocol Safety over EtherCAT (FSoE = Fail Safe over EtherCAT) for this very purpose and so allows:
A single communication system for both control and safety data
The ability to flexibly modify and expand the safety system architecture
Pre-certified solutions to simplify safety applications
Powerful diagnostic capabilities for safety functions
Seamless integration of the safety design in the machine design
The ability to use the same development tools for both standard and safety applications
Safety over EtherCAT enables simpler and more flexible architectures than with relay logic
The EtherCAT safety technology was developed according to IEC 61508, is approved by TÜV Süd Rail, and is standardized in IEC 61784-3. The protocol is suitable for safety applications with a Safety Integrity Level up to SIL 3.
With Safety over EtherCAT, the communication system is part of a so-called Black Channel, which is not considered to be safety relevant. The standard communication system EtherCAT makes use of a single channel to transfer both standard and safety-critical data. Safety Frames, known as Safety Containers, contain safety-critical process data and additional information used to secure this data. The Safety Containers are transported as part of the communication’s process data. Whether data transfer is safe does not depend on the underlying communication technology, and isn’t restricted to EtherCAT; Safety Containers can travel through fieldbus systems, Ethernet or similar technologies, and can make use of copper cables, fiber optics, and even wireless connections.
The Safety Container is embedded in the cyclical communication’s process data
Due to this flexibility, safely connecting different parts of the machine becomes more simple. The Safety Container is routed through the various controllers and processed in the various parts of the machine. This makes emergency stop functions for an entire machine or bringing targeted parts of a machine to a standstill easily possible – even if the parts of the machine are coupled with other communication systems (e.g. Ethernet).
Implementing the FSoE protocol in a device requires little resources and can lead to a high level of performance and correspondingly, short reaction times. In the robotics industries, there are applications that use SoE for safe motion control applications in an 8-kHz closed loop.
Black-Channel-Principle: the standard communication interface can be used
Further information regarding Safety over EtherCAT can be found on the ETG website:
www.ethercat.org/safety
1.9 Communication Profiles
In order to configure and diagnose slave devices, it is possible to access the variables provided for the network with the help of acyclic communication. This is based on a reliable mailbox protocol with an auto-recover function for erroneous messages.
In order to support a wide variety of devices and application layers, the following EtherCAT communication profiles have been established:
CAN application protocol over EtherCAT (CoE)
Servo drive profile, according to IEC 61800-7-204 (SoE)
Ethernet over EtherCAT (EoE)
File Access over EtherCAT (FoE)
Automation Device Protocol over EtherCAT (ADS over EtherCAT, AoE)
Different communication profiles can coexist in the same system
A slave device isn’t required to support all communication profiles; instead, it may decide which profile is most suitable for its needs. The master device is notified which communication profiles have been implemented via the slave device description file.
1.9.1 CAN application protocol over EtherCAT (CoE)
With the CoE protocol, EtherCAT provides the same communication mechanisms as in CANopen®-Standard EN 50325-4: Object Dictionary, PDO Mapping (Process Data Objects) and SDO (Service Data Objects) – even the network management is similar. This makes it possible to implement EtherCAT with minimal effort in devices that were previously outfitted with CANopen®, and large portions of the CANopen® Firmware are even reusable. Optionally, the legacy 8-byte PDO limitation can be waived, and it’s also possible to use the enhanced bandwidth of EtherCAT to support the upload of the entire Object Dictionary. The device profiles, such as the drive profile CiA 402, can also be reused for EtherCAT.
1.9.2 Servo drive profile according to IEC 61800-7-204 (SoE)
SERCOS™ is known as a real-time communication interface, especially for motion control applications. The SERCOS™ profile for servo drives is included in the international standard IEC 61800-7. The standard also contains the mapping of this profile to EtherCAT. The service channel, including access to all drive-internal parameters and functions, are mapped to the EtherCAT Mailbox.
1.9.3 Ethernet over EtherCAT (EoE)
EtherCAT makes use of physical layers of Ethernet and the Ethernet frame. The term Ethernet is also frequently associated with data transfer in IT applications, which are based on a TCP/IP connection.
Transparent transmission of standard IT protocols
Using the Ethernet over EtherCAT (EoE) protocol any Ethernet data traffic can be transported within an EtherCAT segment. Ethernet devices are connected to an EtherCAT segment via so-called Switchports. The Ethernet frames are tunneled through the EtherCAT protocol, similarly to the internet protocols (e.g. TCP/IP, VPN, PPPoE (DSL), etc.) as such, which makes the EtherCAT network completely transparent for Ethernet devices. The device with the Switchport property takes care of inserting TCP/IP fragments into the EtherCAT traffic and therefore prevents the network’s real-time properties from being affected.
Additionally, EtherCAT devices may also support Ethernet protocols (such as HTTP) and can therefore behave like a standard Ethernet node outside of the EtherCAT segment. The master device acts as a Layer-2-switch that sends the frames via EoE to the corresponding nodes according to their MAC addresses. In this way, all internet technologies can also be implemented in an EtherCAT environment, such as an integrated web server, E-mail, FTP transfer, etc..
1.9.4 File access over EtherCAT (FoE)
This simple protocol similar to TFTP (Trivial File Transfer Protocol) enables file access in a device and a uniform firmware upload to devices across a network. The protocol has been deliberately specified in a lean manner, so that it can be supported by boot loader programs – a TCP/IP stack isn’t required.
1.9.5 ADS over EtherCAT (AoE)
As a Mailbox-based client-server protocol, ADS over EtherCAT (AoE) is defined by the EtherCAT specification. While protocols such as CAN application protocol over EtherCAT (CoE) provide a detailed semantic concept, AoE complements these perfectly via routable and parallel services wherever use cases require such features. For example, this might include access to sub-networks through EtherCAT using gateway devices from a PLC program such as CANopen®, IO-Link™ and others.
AoE comes with far less overhead when compared with similar services provided by the Internet Protocol (IP). Both sender and receiver addressing parameters are always contained in the AoE telegram – as a result, a very lean implementation on both ends (client and server) is possible. AoE is also the protocol of choice for acyclic communication via the EtherCAT Automation Protocol (EAP) and therefore provides seamless communication between an MES system, the EtherCAT master, and subordinated fieldbus devices connected via gateways. AoE serves as the standard means to obtain EtherCAT network diagnostic information from a remote diagnostics tool.
1.10 Plant-wide communication with the EtherCAT Automation Protocol (EAP)
The process management level has special communication requirements that differ slightly from the requirements addressed by the EtherCAT Device Protocol, described in the previous sections. Machines or sections of a machine often need to exchange status information and information about the following manufacturing steps with each other. Additionally, there is usually a central controller that monitors the entire manufacturing process, which provides the user with status information on productivity, and assigns orders to the various machine stations. The EtherCAT Automation Protocol (EAP) fulfills all of the above requirements.
Factory-wide Communication with EtherCAT
The protocol defines interfaces and services for:
Exchanging data between EtherCAT master devices (master-master communication),
Communication to Human Machine Interfaces (HMI),
A supervising controller to access devices belonging to underlying EtherCAT segments (Routing),
Integration of tools for the machine or plant configuration, as well as for device configuration.
Factory-wide communication architecture with the EtherCAT Automation Protocol and Safety over EtherCAT
The communication protocols used in EAP are part of the international standard IEC 61158. EAP can be transmitted via any Ethernet connection, including a wireless link, for example making it possible to include automated guided vehicles (AGV), which are common in the semiconductor and automotive industries.
Cyclic process data exchange with EAP follows either the „Push“ or „Poll“ principle. In “Push” mode, each node sends its data either with its own cycle time or in a multiple of the own cycle time. Each receiver can be configured to receive data from specific senders. Configuring the sender and receiver data is done through the familiar Object Dictionary. In “Poll” mode, a node (often the central controller) sends a telegram to the other nodes, and each node responds with its own telegram.
The cyclic EAP communication can be directly embedded within the Ethernet frame, without additional transport or routing protocol. Again, the EtherType Ox88A4 identifies the EtherCAT specific use of the frame. This enables the exchange of high-performance data with EAP in a millisecond cycle. If data routing between distributed machines is required, the process data can also be transmitted via UPD/IP or TCP/IP.
Additionally, with the help of the Safety over EtherCAT Protocol, it’s also possible to transmit safety-critical data via EAP. This is common in cases where parts of a large machine need to exchange safety-critical data to realize a global emergency stop function, or to inform neighboring machines of an emergency stop.
1.11 Integration of other Bus Systems
EtherCAT’s ample bandwidth makes it possible to embed conventional fieldbus networks as an underlying system via an EtherCAT Gateway, which is particularly helpful when migrating from a conventional fieldbus to EtherCAT. The changeover to EtherCAT is gradual, making it possible to continue using automation components that don’t yet support an EtherCAT interface.
Decentralized fieldbus interfaces
The ability to integrate decentralized gateways also reduces the physical size of the Industrial PC, sometimes even to an embedded Industrial PC, since extension slots are no longer necessary. In the past, extension slots were also required to connect complex devices, such as fieldbus master and slave gateways, fast serial interfaces, and other communication subsystems. In EtherCAT, all that is needed to connect these devices is a single Ethernet port. The process data from the underlying subsystem is made directly available in the process image of the EtherCAT system.
1.12 Powering the digital transformation with EtherCAT, TSN, Industrie 4.0 and IoT
Process optimizations, predictive maintenance, manufacturing as a service, adaptive systems, resource-savings, smart factories, cost reductions – there are countless good reasons to utilize control network data in higher level systems. The Internet of Things (IoT), Industrie 4.0, Made in China 2025, Industrial Value Chain Initiative: there is a common need across the board for seamless, continuous and standardized communication across all levels. Sensor data uploaded into the cloud along with recipes and parameters downloaded from ERP systems into distributed devices; take, for example, a feeding system shared by two machines: there are data flow requirements both in vertical and horizontal directions. EtherCAT inherently meets the requirements of the digital transformation through its high performance, flexibility and open interfaces: Superior system performance is the prerequisite for adding Big Data features to control networks.
EtherCAT provides the flexibility to add cloud connectivity to existing systems without even touching the controller or updating the slave devices: Edge Gateways can access any data within any EtherCAT slave device via the Mailbox Gateway feature of the EtherCAT master. The Edge Gateway can either be a remote device, talking to the master via TCP or UDP/IP, or a software entity directly located on the same hardware as the EtherCAT master itself.
Additionally, open interfaces allow one to integrate any IT-based protocol – including OPC UA, MQTT, AMQP or any others – either within the master or directly into the slave devices, thus providing a direct link for IoT without protocol discontinuities from the sensor to the cloud.
All these features have always been part of the EtherCAT protocol, which shows how forward-thinking the architecture is. Nevertheless, more networking features are added as they evolve and become relevant. Of course, it is also important to consider the past when looking forward: this introduction of valuable new features is managed with total network continuity as the EtherCAT protocol itself has been stable at “Version 1” since its introduction in 2003.
Other new developments in the area of Time Sensitive Networking (TSN) features further improve the real-time capabilities of the Controller to Controller communication. Enabled by TSN, control systems - even those that are cloud-based – can access a network of EtherCAT slaves also across plant networks. Since EtherCAT typically only needs one frame for an entire network, such access is much leaner and thus faster than any other fieldbus or industrial Ethernet technology. In fact, EtherCAT Technology Group experts have contributed to the TSN task group of IEEE 802.1 from day one – at a time when TSN was still known as AVB.
The EtherCAT Technology Group (ETG) was also among the first fieldbus organizations to partner with the OPC Foundation. The OPC UA protocol complements the EtherCAT portfolio because it is a scalable TCP/IP based client/server communication technology with integrated security, enabling encrypted data transfer up to MES/ERP systems. With OPC UA Pub/Sub, the usability of OPC UA has been improved in machine-to-machine (M2M) applications and for vertical communication to cloud based services. The ETG is actively contributing to all these developments to ensure that they fit seamlessly into the EtherCAT environment.
Therefore, EtherCAT is not only IoT-ready, EtherCAT is IoT!
Read more about EtherCAT & TSN...
2. Implementing EtherCAT Interfaces
top
EtherCAT technology has been specially optimized to enable low-cost design, so adding an EtherCAT interface to a sensor, I/O device, or embedded controller should not significantly increase device costs. Furthermore, the EtherCAT interface also doesn’t require a more powerful CPU- the CPU requirements instead are based only on the needs of the target application.
In addition to hardware and software requirements, development support and the availability of communication stacks are important when developing an interface. The EtherCAT Technology Group offers worldwide developer support in quickly answering questions or addressing technical issues. Finally, evaluation kits available from multiple manufacturers, developer workshops, as well as free sample code make getting started a little easier.
For the end user, the most important factor is the interoperability of EtherCAT devices from various manufacturers. To ensure interoperability, device manufacturers are required to perform a Conformance Test prior to bringing their device on the market. The test checks if the implementation follows the EtherCAT specification, and can be performed with the EtherCAT Conformance Test Tool. The test can also be used during device development to discover and correct implementation issues early on.
2.1 Master
The interface for an EtherCAT master device has a single, unbelievably simple, hardware requirement: an Ethernet port. The implementation uses either the on-board Ethernet controller or an inexpensive standard network card, so no special interface card is required. That means that with just a standard Ethernet port, a master device can implement a hard real-time network solution.
In most cases the Ethernet controller is integrated via Direct Memory Access (DMA), so no CPU capacity is required for the data transfer between the master device and the network. In an EtherCAT network, mapping occurs at the slave devices. Each slave device writes its data to the right location in the process image and reads the data addressed to it all while the frame is moving through. Therefore, the process image that arrives at the master device is already sorted correctly.
Since the master device CPU is no longer responsible for the sorting, its performance requirements depend only on the desired application and not the EtherCAT interface. Especially for small, mid-sized, and clearly defined applications, implementing an EtherCAT master is a snap. EtherCAT master devices have been implemented for a wide variety of operating systems: Windows and Linux in various iterations, QNX, RTX, VxWorks, Intime, eCos are just a few examples.
Typical EtherCAT Master Architecture
ETG members offer a variety of options to support the implementation of an EtherCAT Master, ranging from free downloads of EtherCAT Master Libraries, sample Master code, all the way to complete packages (including services) for various real-time operating systems and CPUs.
In order to operate a network, the EtherCAT master requires the cyclic process data structure as well as boot-up commands for each slave device. These commands can be exported to an EtherCAT Network Information (ENI) file with the help of an EtherCAT configuration tool, which uses the EtherCAT Slave Information (ESI) files from the connected devices.
The breadth of available master implementations and their supported functions varies. Depending on the target application, optional functions are either supported or purposely omitted to optimize the utilization of hardware and software resources. For this reason, EtherCAT master devices are categorized into two classes: a Class-A-Master is a standard EtherCAT master device, while a Class-B-Master is a master device with fewer functions. In principle, all master implementations should aim for Class A classification. Class B is only recommended for cases in which the available resources are insufficient to support all functionalities, such as in embedded systems.
2.2 Slave
EtherCAT slave devices use inexpensive EtherCAT Slave Controllers (ESC) in the form of an ASIC, FPGA, or integrated in a standard microcontroller. Simple slave devices don’t even need an additional microcontroller, because inputs and outputs can be directly connected to the ESC. For more complex slave devices, the communication performance depends only minimally on the microcontroller performance, and in most cases, a 8-bit microcontroller is sufficient.
EtherCAT Slave Controllers are available from multiple manufacturers, with the size of the internal DPRAM and the number of Fieldbus Memory Management Units (FMMUs) depending on the variation. Different Process Data Interfaces (PDI) for external access from the application controller to the application memory are also available:
The 32-Bit parallel I/O Interface is suitable for connecting up to 32 digital inputs and outputs, but also for simple sensors or actuators for which 32 data bits are sufficient and no application controller is required.
The Serial Peripheral Interface (SPI) is targeted at applications with small amounts of process data, such as analog I/O devices, encoders, or simple drives.
The parallel 8/16-Bit Microcontroller Interface corresponds to common interfaces of fieldbus controllers with integrated DPRAM. It is particularly suitable for complex nodes with larger amounts of data.
Suitable synchronous busses for various microcontrollers have been implemented for FPGA and On-Chip variations.
Slave Hardware: EtherCAT Slave Controller with direct I/O
The hardware configuration is stored a in non-volatile memory (e.g. an EEPROM), the Slave Information Interface (SII), which contains information about the basic device features, so that the master can read this at boot-up and operate the device even if the device description file is not available. The EtherCAT Slave Information (ESI) file that comes with the device is XML based and contains the complete description of its network accessible properties, such as process data and their mapping options, the supported mailbox protocols including optional features, as well as the supported modes of synchronization. The Network Configuration Tool uses this information for online and offline configuration of the network.
Slave Hardware: EtherCAT Slave Controller with Host CPU
Various manufacturers offer evaluation kits for implementing slave devices. These kits include slave application software in source code, and they sometimes also include a test master. Using an evaluation kit, a fully functional Master-Slave EtherCAT network can be commissioned in just a few steps. The ETG website contains a Slave Implementation Guide with useful tips and hints on further documentation for implementing slave devices:
ETG.2200 EtherCAT and EtherCAT P Slave Implementation Guide
3. Conformance and Certification
top
Two important factors for a communication standard to be successful are conformance and interoperability. In addition to requiring a conformance test for each device implementation (aided by the automated EtherCAT Conformance Test Tool), the EtherCAT Technology Group offers a variety of activities to ensure the interoperability between EtherCAT master devices, slave devices, and also the EtherCAT Configuration Tool.
Read more...
3.1 Plug Fest
When trying to test if multiple devices are interoperable, connecting the devices together is a pragmatic approach. With this in mind, the ETG holds multiple so called Plug Fests each year, with each Plug Fest usually spanning two days. During the Plug Fests, master and slave device manufacturers come together to test how their devices behave together, which improves the usability of devices in the field. The ETG holds Plug Fests in Europe, North America, and Asia on a regular basis.
Read more...
3.2 Conformance Test Tool (CTT)
The EtherCAT Conformance Test Tool (CTT) makes it possible to automatically test an EtherCAT slave device’s behavior. The CTT is a Windows program requiring only a standard Ethernet port. The tool sends EtherCAT frames to the Device under Test (DuT) and receives its responses. A test case is marked as passed if the response from the DuT corresponds to the defined response. The test cases are defined as XML files. This makes it possible to modify or expand the test cases without having to modify the actual test tool. The TWG Conformance is responsible for specifying and releasing the most current valid test cases. In addition to the protocol tests, the CTT also examines if the values in the EtherCAT Slave Information (ESI) file are valid. Finally, the CTT also performs device-specific protocol tests, such as for the CiA402 drive profile. All of the testing steps and results are saved in a Test Logger, and can be analyzed or saved as a documented verification for the device release.
Read more...
3.3 Technical Working Group Conformance
The EtherCAT Conformance Test Policy requires device manufacturers to test each device with a valid version of the EtherCAT Conformance Test Tool before the device is brought on the market. The manufacturer may conduct this test in-house. The ETG Technical Committee (TC) established a Technical Working Group (TWG) Conformance, which determines the test procedures, the contents of the test, and the implementation of the Conformance Test Tool. The TWG Conformance is continuously expanding the tests and their depth. The TWG Conformance also established an Interoperability Tests process, with which devices can be tested in the context of an entire network.
Read more...
3.4 EtherCAT Test Center
The official EtherCAT Test Centers (ETC) in Europe, Asia and North America are accredited by the ETG and perform the official EtherCAT Conformance Test. The EtherCAT Conformance Test includes the automated tests run with the CTT, interoperability tests within a network, as well as an examination of the device’s indicators, markings, and tests of the EtherCAT interfaces.
Device manufacturers are encouraged but not obligated to have their devices tested at an ETC. After the Conformance Test is passed, the manufacturer receives an EtherCAT Conformance Tested certificate for the device. This certificate is only available for devices that have passed the Conformance Test at an ETC- not for those which have been tested in-house.
The additional test in an accredited EtherCAT Test Center further increases compatibility and the uniform operation and diagnostics of EtherCAT implementations. End users should be sure to ask for the EtherCAT Conformance Tested certificate when choosing devices for their application.
Read more...
4. International Standardization
top
The EtherCAT Technology Group is an official partner of the IEC. Both EtherCAT and Safety over EtherCAT are IEC-Standards (IEC 61158 and IEC 61784). These standards not only include the lower protocol layers, but also the application layer and device profiles, e.g. for drives. SEMI™ (Semiconductor Equipment and Materials International) has accepted EtherCAT as a communication standard (E54.20) for the semiconductor industry. The various Task Groups in the ETG Semiconductor Technical Working Group (TWG) have defined industry specific device profiles and implementation guidelines. The EtherCAT Specification is available in English, Japanese, Korean, and Chinese.
EtherCAT Brochure
Learn more about the fastest "Ethernet fieldbus" in detail:
English
German
Spanish
Italian
French
Chinese
Japanese
Korean
EtherCAT Multimedia
EtherCAT in 2 minutes:
Watch full playlist
EtherCAT Functional Principle:
Processing on the fly
EtherCAT in 20 minutes:
Generating competitive advantages
SPS IPC Drives 2018:
15 years of ETG
HANNOVER MESSE 2016:
Toyota selects EtherCAT
【EtherCAT】COE对象字典与PDO映射简介-CSDN博客
>【EtherCAT】COE对象字典与PDO映射简介-CSDN博客
【EtherCAT】COE对象字典与PDO映射简介
小可嵌入式
已于 2022-12-11 08:20:55 修改
阅读量7.5k
收藏
59
点赞数
18
分类专栏:
工业总线
文章标签:
自动化
网络协议
嵌入式硬件
1024程序员节
于 2022-10-09 20:11:08 首次发布
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_46211259/article/details/127232886
版权
工业总线
专栏收录该内容
3 篇文章
5 订阅
订阅专栏
简介
将CANopen作为EtherCAT的应用层,在保证兼容性的同时,为了适配EtherCAT数据链路层接口,充分发挥EtherCAT的网络优势,需要对CANopen协议相应的功能扩充,然后就有了COE(CANopen over EtherCAT)。
COE对象字典(OD):可以这样理解,“一切信息皆对象”,比如某个数据,属性,设备ID,大小,方向,某个IO变量的值等等。对象字典就是对象的集合。每个对象都有对应的索引和索引。根据索引和子索引就能找到字典里的字(对象)。主站和从站都需要有对象字典,其目的个人理解为方便主站和从站进行信息交换。
RxPDO:主站主动传输RxPDO数据给从站。
TxPDO:从站主动传输TxPDO数据给主站。
一、PDO映射
PDO:过程数据对象。由对象字典中能够被映射到PDO的对象组成。
PDO映射对象包含一个对象引用列表以及以bit为单位的长度。
【简言之,PDO由多个对象组成,且是有映射关系的对象,比如PDO_1由Object1,Object2,Object3组成,每个对象有个长度。】
PDO映射:指应用对象(实时过程数据)从对象字典到PDO的映射。
映射表:包含被映射对象的数目,和具体被映射的对象。
【即由ssc工具生成的Object.h中实时过程数据的对象结构体。如下】
/**
* \brief Object structure
*/
typedef struct OBJ_STRUCT_PACKED_START {
UINT16 u16SubIndex0;
UINT16 Aninput1; /* Subindex1 - Analoginput1 */
UINT16 Analoginput2; /* Subindex2 - Analoginput2 */
UINT16 Analoginput3; /* Subindex3 - Analoginput3 */
UINT32 Analoginput4; /* Subindex4 - Analoginput4 */
UINT32 Analoginput5; /* Subindex5 - Analoginput5 */
UINT32 Analoginput6; /* Subindex6 - Analoginput6 */
} OBJ_STRUCT_PACKED_END
TOBJ6020;
/**
* \brief Object variable
*/
PROTO TOBJ6020 AIInputs0x6020 = {6,0x0000,0x0000,0x0000,0x00000000,0x00000000,0x00000000};
RxPDO的映射表位于对象目录索引0x1600~0x17FF中。
TxPDO的映射表位于对象目录索引0x1A00~0x1BFF中。
图例1-PDO映射
二、同步管理器PDO分配
同步管理器通道:SM通道。由若干PDO组成。
同步管理器PDO分配表:包括已分配PDO的数量,及具体被分配的PDO。
【即由ssc工具生成的Object.h中PDO分配的对象结构体。如下】
/**
* \brief Object structure
*/
typedef struct OBJ_STRUCT_PACKED_START {
UINT16 u16SubIndex0; /**< \brief Subindex 0 */
UINT16 aEntries[2]; /**< \brief Subindex 1 - 2 */
} OBJ_STRUCT_PACKED_END
TOBJ1C13;
/**
* \brief Object variable
*/
PROTO TOBJ1C13 sTxPDOassign = {2,{0x1A00,0x1A02}};
同步管理器PDO分配表位于对象目录索引0x1C10~1C2F中。
图例2-同步管理器PDO分配
三、以xml为例简述对象字典与PDO的关系
四个sm通道分别对应MBoxOut,MBoxIn,Outputs,Inputs。
sm2分配0x1600,0x1602两个RxPDO对象。
sm3分配0x1A00,0x1A02两个TxPDO对象。
0x1600映射两个Entry,0x1602映射两个Entry。
0x1A00映射两个Entry,0x1A02映射6个Entry。
每个Entry对应一个实时过程数据(应用对象)。
-------------------------------------------------------------------------------------------------------------------------------如有问题请联系本人:QQ614139707
关注博主即可阅读全文
优惠劵
小可嵌入式
关注
关注
18
点赞
踩
59
收藏
觉得还不错?
一键收藏
知道了
29
评论
【EtherCAT】COE对象字典与PDO映射简介
将CANopen作为EtherCAT的应用层,在保证兼容性的同时,为了适配EtherCAT数据链路层接口,充分发挥EtherCAT的网络优势,需要对CANopen协议相应的功能扩充,然后就有了COE(CANopen over EtherCAT)。对象字典可以这样理解,“一切信息皆对象”,比如某个数据,属性,设备ID,大小,方向,某个IO变量的值等等。对象字典就是对象的集合。每个对象都有对应的索引和索引。根据索引和子索引就能找到字典里的字(对象)。
复制链接
扫一扫
专栏目录
EtherCAT通信主站----PDO过程数据映射
weixin_43956732的博客
09-07
1万+
EtherCAT通信主站----PDO过程数据映射FMMU与Sync Manager配置PDO过程数据映射PDO映射PDO分配PDO 映射的步骤
EtherCAT其中COE在数据链路层采用EtherCAT协议,在运用层采用CanOpen协议,其和兴是对象字典,对PDO和SDO相关知识,可以参考CanOpen通信----PDO与SDO,本文将只PDO的映射相关知识。
FMMU与Sync Manager配置
为了使SDO与PDO数据能在EtherCAT数据链路层上得到正确解析,需要对FMMU与Sync Mana
EtherCAT通信DS402协议----PDO映射
weixin_43956732的博客
06-08
6513
EtherCAT通信DS402协议----PDO映射PDO 映射PDO 分配PDO 映射的步骤
EtherCAT 从站的过程数据由同步管理器通道对象组成,每个同步管理器通道对象描述了 EtherCAT 过程数据的一致性区域,并且包含多个过程数据对象。具备应用控制功能的EtherCAT 从站应该支持 PDO 映射和 SM-PDO-Assign 对象的读取。关于PDO的介绍可以参照我写的CanOpen通信----PDO与SDO
PDO 映射
PDO 映射涉及对象字典到 PDOs 的应用对象(实时过程数据)映射关
29 条评论
您还未登录,请先
登录
后发表或查看评论
EtherCAT增加PDO读写寄存器
11-23
EtherCAT增加PDO读写寄存器
EtherCAT的COE报文
最新发布
u014453443的博客
01-04
515
动态PDO配置包括PDO Assignment和PDO Configuration,前者指的是,已经有配置好的一堆1600,1601,1602等等PDO,我们可以选择如何组合成我们自己的传输数据。其中,子索引0是分配的PDO数目,其他子索引是PDO映射对象的索引号,也就是前面的0x1600~0x17FF。COE协议是完全遵循CANopen协议的,但针对EtherCAT通信做了一些扩展,索引为0x1c00~0x1c4f,用于设置存储同步管理器的类型,通信参数和PDO数据分配。0x1c12配置示例。
EtherCAT动态PDO映射的实现方法
06-05
作为EtherCAT协议栈的补充,实现PDO动态映射,是一个完整的EtherCAT从站必要的组成部分。
CANOpen基本对象字典
07-06
CANOpen基本对象字典
EtherCAT使用与解析-关于PDO映射
热门推荐
lswdcyy的博客
04-11
1万+
关于PDO映射这部分,最好先参考https://blog.csdn.net/lswdcyy/article/details/105441470先了解一下配置相关的东西;
首先这里已经假设你已经了解完毕配置相关内容且已经初步了解PDO的是以什么样的形式存在于domain和子报文中,那么下面继续:
对于PDO映射,首先他是已经有了一个sync中关联PDO的这样一个链表的前提下才进行的PDO映射,那...
从站添加对象字典操作流程-R1.1.rar_-baijiahao_ETHERCAT_ethercat 从站_ethercat对象
07-14
本文适合初学ethercat者,教你如何添加对象字典
CANopen--PDO通信
ROM7RAM的博客
08-31
2896
过程数据对象(Process Data Object,PDO)是用来传输实时数据的,提供对设备应用对象的直接访问通道,它用来传输实时短帧数据,具有较高的优先权。PDO 传输的数据必须少于或等于 8 个字节,PDO 的 CAN 报文数据域中每个字节都用作数据传输,...
03_过程数据对象(PDO)
zaichen321的博客
02-13
3180
CANopen PDO 传输
EtherCAT学习之路——对象字典
chenweizhen1991的博客
03-13
9487
首发与知乎
1.对象字典
CANopen 对象字典(OD: Object Dictionary)是 CANopen 协议最为核心的概念。所谓的对象字典就是一个有序的对象组,描述了对应 CANopen 节点的所有参数,包括通讯数据的存放位置也列入其索引,这个表变成可以传递形式就叫做 EDS 文件(电子数据文档Electronic Data Sheet)。对象字典,就像体检表,具备这个人每个功...
EtherCAT设备协议详解三、EtherCAT CoE
EtherCAT
12-16
2939
只需要一个耦合器,后面可以接多个模块,在总线上看到的只有一个从站,需要读取对应的设备描述空间来获取耦合器上接的模块类型和个数。这种模块的设备比每个模块都是从站可以节约硬件成本。比如配置0x1700对象下面映射的数据,就需要通过sdo把0x6040、0x607a等写入到0x1700对象下。CoE 是 CANopen on EtherCAT, 在ethercat报文中封装CANopen协议。关于canopen怎么封装到ethercat报文中的可以参考下面文章。配置pdo的映射的数据就需要用到SDO。
DX EtherCAT模块COE对象手册.zip
09-12
DX EtherCAT模块COE对象手册zip,提供“软赢DX EtherCAT模块COE英文对象手册”下载,供使用时参考。
Ethercat PDO Mapping Doc(松下)
02-22
松下的Ethercat驱动器使用手册,以及关于如何使用Ethercat配置PDO等内容
EtherCAT使用与解析-关于PDO映射生效以及主站状态机在此过程的作用
lswdcyy的博客
04-11
4142
在PDO映射配置一文https://blog.csdn.net/lswdcyy/article/details/105453144,已经针对从站的同步管理器配置已经基本描述了,本章描述关于PDO映射如何在从站中生效的相关内容。
PDO映射交换目前我已知的内容涉及到3个部分:sync同步管理器配置,FMMU配置以及PDO映射关系配置:
先说sync同步管理器配置和FMMU配置,两者差别不大,sy...
CanOpen--PDO映射
天道酬勤
12-21
1357
canopen--PDO映射
2021-04-24
duobaohongtu3的专栏
04-24
1874
canopen简介:
CAN 提供了所有的网络管理服务和报文传送协议,但并没有定义对象的内容或者正在通讯的对象的类
型(它只定义了 how,没有定义 what),而这正是 CANopen 切入点。CANopen 的核心概念是设备对象字典(OD:Object Dictionary)。CANopen 通讯通过对象字典(OD)能够访问驱动器的所有参数。
can的数据帧结构:
canopen在can帧基础上详细分配了COB_ID和数据域的用法
通常我们所指 的帧ID就是COB_ID,COB_ID(11bits)=
IgH详解九、EtherCAT PDO原理(1)
EtherCAT
05-07
6849
过程数据对象 (PDO)
过程数据对象(PDO)是EtherCAT 从站在每个周期内传输的过程数据,是应用程序期望循环更新或发送到从站的用户数据(比如每个周期下发伺服的位置)。因此,EtherCAT 主站在启动阶段对每个 EtherCAT 从站进行参数化,以定义要与该从站传输或从该从站传输的过程数据(以位/字节为单位的大小、源位置、传输类型)
PDO的配置(PDO通过邮箱SDO配置,SDO如何下发数据见上一篇文章)
寄存0x1c12 RxPDO 0x1c13 TxPDO
下面以一次实际配置过程来
虹科分享 | 简单实用的CANopen介绍,看完你就明白了(3)——对象字典、SDO、PDO
工业通讯__HongKe的博客
08-31
2651
目前,CANopen通讯协议已经在工业领域得到了广泛的使用,由于其面向对象的设计思路,CANopen协议已成为欧洲等国家的自动化公司标配的通讯接口之一。在本系列文章中,我们将介绍CANopen协议的基础内容,包括对象字典、服务、SDO、PDO和主/从站节点等。...
ethercat pdo映射
08-30
EtherCAT(Ethernet for Control Automation Technology)是一种实时以太网通信协议,它被广泛应用于工业自动化控制系统中。
EtherCAT PDO(Process Data Object)映射是EtherCAT网络中通信数据的传输方式之一。PDO允许直接传输过程数据,而不需要额外的通信协议。
PDO映射的过程可以分为两个步骤。首先是PDO的配置,这包括定义PDO映射的对象和数据类型,以及指定PDO的传输类型、数据长度等参数。其次是PDO的映射,即将定义的PDO对象与实际的硬件设备或I/O模块进行关联。
在EtherCAT网络中,PDO映射可以通过专门的配置工具或编程接口进行设置。通过配置工具,可以直观地定义PDO对象、数据类型和映射关系。而通过编程接口,开发者可以自定义PDO的配置和映射过程,实现更灵活的通信需求。
使用PDO映射的好处是可以提高通信的实时性和可靠性。由于PDO直接传输过程数据,避免了额外的协议栈和数据处理过程,减少了通信的延迟和资源消耗。此外,PDO映射还可以针对实际需求进行灵活配置,提高系统的可配置性和可扩展性。
总之,EtherCAT PDO映射是一种基于EtherCAT网络的通信数据传输方式,通过配置和映射PDO对象,可以实现高效实时的数据传输,提高工业自动化控制系统的性能和可靠性。
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
小可嵌入式
CSDN认证博客专家
CSDN认证企业博客
码龄4年
暂无认证
22
原创
1万+
周排名
4万+
总排名
7万+
访问
等级
396
积分
5650
粉丝
126
获赞
58
评论
546
收藏
私信
关注
热门文章
MODBUS RTU协议原理及功能码解析
16936
【EtherCAT】COE对象字典与PDO映射简介
7502
GD32f303之定时器配置
6191
Beyond Compared 4需要秘钥怎么办
5723
【linux多线程】sleep函数作用
5449
分类专栏
杂项
1篇
工业总线
3篇
软件开发工具
3篇
编程方法
1篇
Linux系统编程
1篇
脚本文件
Linux内核
Linux网络编程
1篇
Linux驱动编程
1篇
MCU开发
8篇
编程工具
编程语言
5篇
最新评论
MODBUS RTU协议原理及功能码解析
X xp:
功能码12 是不是就需要开发了
GD32f303之rs485配置
小可嵌入式:
没写过,应该都差不多吧
GD32f303之rs485配置
迎风吹起:
博主,写过GD32E230系列的485配置吗
GD32f303之rs485配置
QQ2510134061:
博主我想问一下,测试通信的软件可以用串口调试助手吗
EtherCAT从站开发要点
weixin_44769409:
CoE字典里分RxPDO和TxPDO,你把对应的pdo entry放入对应的里面(对应的电机手册或者EthrCAT应该有写),然后再通过SM通道进行分配。比方说0x1600(RxPDO)中0x6040、0x6060
大家在看
ChatGPT4.0强大解说功能
Java面试题:深度解析设计模式、内存模型、多线程与并发框架有关面试题的综合应用,必知必会Java知识点梳理
496
【Selenium】获取当前页面所有可点击跳转的链接
免费的 AI 视频生成工具 Moonvalley 厉害了!Moonvalley 怎么用(保姆级教程)
963
学习Android的第二十八天
243
最新文章
嵌入式学习经验分享
stm32开发工具之addr2line.exe使用
VSCode 右键函数无法跳转到定义解决办法
2024年1篇
2023年10篇
2022年15篇
目录
目录
分类专栏
杂项
1篇
工业总线
3篇
软件开发工具
3篇
编程方法
1篇
Linux系统编程
1篇
脚本文件
Linux内核
Linux网络编程
1篇
Linux驱动编程
1篇
MCU开发
8篇
编程工具
编程语言
5篇
目录
评论 29
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
EtherCAT设备协议详解三、EtherCAT CoE-CSDN博客
>EtherCAT设备协议详解三、EtherCAT CoE-CSDN博客
EtherCAT设备协议详解三、EtherCAT CoE
最新推荐文章于 2024-01-04 10:53:42 发布
EtherCat技术研究
最新推荐文章于 2024-01-04 10:53:42 发布
阅读量2.9k
收藏
12
点赞数
2
分类专栏:
EtherCAT
文章标签:
ethercat
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/gufuguang/article/details/128345060
版权
EtherCAT
专栏收录该内容
13 篇文章
71 订阅
订阅专栏
CoE 是 CANopen on EtherCAT, 在ethercat报文中封装CANopen协议
服务数据对象(SDO)用来访问CANopen对象字典条目的
关于canopen怎么封装到ethercat报文中的可以参考下面文章
IgH详解八、EtherCAT SDO原理_EtherCat技术研究的博客-CSDN博客_ethercat pdo sdo
配置pdo的映射的数据就需要用到SDO
比如配置0x1700对象下面映射的数据,就需要通过sdo把0x6040、0x607a等写入到0x1700对象下
MDP Device model 是模块化的从站
只需要一个耦合器,后面可以接多个模块,在总线上看到的只有一个从站,需要读取对应的设备描述空间来获取耦合器上接的模块类型和个数。这种模块的设备比每个模块都是从站可以节约硬件成本。
具体协议内容可参考 ETG.5001 标准文档。
优惠劵
EtherCat技术研究
关注
关注
2
点赞
踩
12
收藏
觉得还不错?
一键收藏
知道了
0
评论
EtherCAT设备协议详解三、EtherCAT CoE
只需要一个耦合器,后面可以接多个模块,在总线上看到的只有一个从站,需要读取对应的设备描述空间来获取耦合器上接的模块类型和个数。这种模块的设备比每个模块都是从站可以节约硬件成本。比如配置0x1700对象下面映射的数据,就需要通过sdo把0x6040、0x607a等写入到0x1700对象下。CoE 是 CANopen on EtherCAT, 在ethercat报文中封装CANopen协议。关于canopen怎么封装到ethercat报文中的可以参考下面文章。配置pdo的映射的数据就需要用到SDO。
复制链接
扫一扫
专栏目录
EtherCAT协议栈代码详解
05-31
EtherCAT代码详解,ET9300,开发EtherCAT的的必备文档。
COE协议报文解析
y_q_m的博客
08-07
2447
以COE(CANopen over EtherCAT)的SDO服务为例,EtherCAT帧格式如下图所示:
从图中可看出CANopen、EtherCAT和Ethernet这几个协议的大致关系。
参与评论
您还未登录,请先
登录
后发表或查看评论
EtherCAT的COE报文
最新发布
u014453443的博客
01-04
515
动态PDO配置包括PDO Assignment和PDO Configuration,前者指的是,已经有配置好的一堆1600,1601,1602等等PDO,我们可以选择如何组合成我们自己的传输数据。其中,子索引0是分配的PDO数目,其他子索引是PDO映射对象的索引号,也就是前面的0x1600~0x17FF。COE协议是完全遵循CANopen协议的,但针对EtherCAT通信做了一些扩展,索引为0x1c00~0x1c4f,用于设置存储同步管理器的类型,通信参数和PDO数据分配。0x1c12配置示例。
EtherCAT从站协议栈---- sampleappl.c 文件解析
Jiawei_Z的博客
02-09
1660
这个源文件实际上包含该项目的入口函数main函数。
那么如何找到入口函数呢?
可以进入debug的simulator模式,选中run to main(),
当执行完启动文件startup_cm3.s后就进入了main函数(注意在main函数之前还进入了SystemInit函数),
如下图所示:
这个main函数主要架构如下:
int main(void)
{
HW_Init(); /*PDI(过程数据接口)初始化,这里用的是MCI接.
EtherCAT——PDO/SDO
a1347065101的博客
07-26
3913
主站与从站进行数据交互的方式主要通过PDO和SDO,即过程数据和邮箱数据其概念与CANOpen中的概念相同。
EtherCAT学习之路——对象字典
chenweizhen1991的博客
03-13
9487
首发与知乎
1.对象字典
CANopen 对象字典(OD: Object Dictionary)是 CANopen 协议最为核心的概念。所谓的对象字典就是一个有序的对象组,描述了对应 CANopen 节点的所有参数,包括通讯数据的存放位置也列入其索引,这个表变成可以传递形式就叫做 EDS 文件(电子数据文档Electronic Data Sheet)。对象字典,就像体检表,具备这个人每个功...
【EtherCAT】COE对象字典与PDO映射简介
专注嵌入式软硬件开发。
10-09
7515
将CANopen作为EtherCAT的应用层,在保证兼容性的同时,为了适配EtherCAT数据链路层接口,充分发挥EtherCAT的网络优势,需要对CANopen协议相应的功能扩充,然后就有了COE(CANopen over EtherCAT)。对象字典可以这样理解,“一切信息皆对象”,比如某个数据,属性,设备ID,大小,方向,某个IO变量的值等等。对象字典就是对象的集合。每个对象都有对应的索引和索引。根据索引和子索引就能找到字典里的字(对象)。
1.2 CoE之对象字典概念
suntoarms的博客
03-28
3122
一、数据帧与子报文
1、 在Ethernet帧中,在Ethernet Header、EtherCAT Header之后是每个从站的子报文。在这些子报文中的开头是10个字节的子报文头,包含命令、索引、地址等信息。
2、 逻辑寻址:通过FMMU(每一个ESC内都有FMMU)实现,将从站本地物理地址映射到网段内逻辑地址
1) 逻辑地址:32bit,共4GB寻址空间。
2) ESC存储空间:以...
EtherCAT 应用层协议的部分理解(一)
热门推荐
王三三
06-22
2万+
不对EtherCAT进行介绍,只谈谈对EtherCAT应用层协议的简单理解1、COE (CANopen over EtherCAT) 一种基于且完全遵循CANopen协议的通信协议 用途:
1、用于驱动PDO对象,实现PDO对象间数据通信
2、用于驱动SDO对象,实现SDO对象间的数据传输 分类:
1、周期性过程数据通信 – 驱动PDO
IgH详解八、EtherCAT SDO原理
EtherCAT
04-27
7619
主站通过使用 SDO对对象字典进行读取/写入操作,完成对从站设备进行参数设置、状态监视等。
从站SDO的读写是非实时的,所以需要多次访问来确保数据操作的正确性。
如下图写入操作,主站把数据发送到从站,从站返回WC确保数据收到,经过几个周期后主站发起响应查询,看从站是否有正确的写入数据。
从从站读取数据主站同样需要发起多次访问,以确保数据正确读取
下面我们看下SDO是怎么封装到EtherCAT中的?
邮箱协议
从站的SM0,SM1同步管理做为邮箱通信使用,当有邮箱数据时会.
EtherCAT通信协议研究及实现.pdf
03-09
描述了现场总线技术的国内外发展现状,阐述 EtherCAT 的通信规范和总线实施
的“飞读飞写”技术、分布式时钟同步技术、WKC 和 CRC 校验等关键技术。
详解EtherCAT主站协议栈-综合文档
05-22
详解EtherCAT主站协议栈
Ethercat协议详解.zip
05-12
Ethercat主站协议详解,对于想要开发主站的同学有很大帮助,便于理解主站源代码的相关作用。注:英文文档 1、Ethercat协议原理,应用层,数据链路层,物理层。 2、Ethercat从站寄存器说明 3、ET1200硬件详解
工业以太网协议EtherCAT主开源协议栈
12-07
工业以太网协议EtherCAT主开源协议栈,在mbed上有对应的移植到STM32上应用。 工业以太网协议EtherCAT主开源协议栈,在mbed上有对应的移植到STM32上应用。
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
7893
设备可以拒绝来自主站的状态请求,并通过错误指示(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
7266
1、EtherCAT报文组成
从图中抓的包可以看出EtherCAT报文分为三部分(1)、以太网帧头 (2)、EtherCAT帧头 (3)、EtherCAT数据 说明:KUNBUS TAP是实时抓包工具加的时间戳信息,报文的FCS也在里面
2、帧头解析
(1)、EtherCAT是基于以太网的所以头部首先是以太网帧头,包含目的和源MAC地址,EtherCAT帧类型固定为 0x88A4
(2)、EtherCAT帧头2字节,包含ECAT数据长度
3、ECAT数据解析
ECAT数据就是主...
java实现ethercat通讯协议
11-23
Java是一种广泛应用的编程语言,能够实现各种通讯协议的开发。要实现EtherCAT通讯协议,首先需要了解EtherCAT协议的工作原理和通讯规范。EtherCAT是一种实时以太网通讯协议,用于工业自动化领域的通讯。在Java中实现EtherCAT通讯协议,可以通过使用相关的库和工具来实现。
Java的网络编程能力可以很好地支持EtherCAT通讯协议的实现。可以使用Java的网络编程库来建立与EtherCAT设备的连接,并通过发送和接收数据帧来实现通讯。另外,Java也支持Socket编程,可以使用Socket来进行底层的网络通讯。
此外,对于EtherCAT通讯协议的数据处理和解析,可以利用Java的数据处理和解析能力来实现。通过使用Java的数据结构和算法,能够很好地处理EtherCAT通讯协议中的数据帧,实现数据的解析和处理。
总的来说,通过使用Java的网络编程能力、数据处理和解析能力,可以很好地实现EtherCAT通讯协议。当然,也需要充分了解EtherCAT通讯协议的规范和要求,结合Java的特性来进行开发,才能够有效地实现EtherCAT通讯协议。
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
EtherCat技术研究
CSDN认证博客专家
CSDN认证企业博客
码龄11年
暂无认证
84
原创
3万+
周排名
2万+
总排名
27万+
访问
等级
2392
积分
574
粉丝
168
获赞
261
评论
1119
收藏
私信
关注
热门文章
机内码、国际码、区位码换算
24839
各种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篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包
祝福语
请填写红包祝福语或标题
红包数量
个
红包个数最小为10个
红包总金额
元
红包金额最低5元
余额支付
当前余额3.43元
前往充值 >
需支付:10.00元
取消
确定
下一步
知道了
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝
规则
hope_wisdom 发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
0
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。
余额充值
CANopen over EtherCAT (CoE) — Synapticon Documentation
CANopen over EtherCAT (CoE) — Synapticon Documentation
Hardware Manuals
SOMANET Circulo
SOMANET Node
SOMANET Accessories
Samples & Legacy Products
Commissioning and Tuning Guide
Software Reference
v5.0
v4.4
v4.2
v4.1
v4.0
Resources
System integration guidelines
Tutorials
About this documentation
Hardware Manuals
SOMANET Circulo
SOMANET Node
SOMANET Accessories
Samples & Legacy Products
Commissioning and Tuning Guide
Software Reference
v5.0
v4.4
v4.2
v4.1
v4.0
Resources
System integration guidelines
Tutorials
About this documentation
Documentation
Software Reference
Software Reference Manual v4.2
CANopen over EtherCAT (CoE)
Hardware Manuals
Handling instructions
Electrostatic discharge
Magnetic sensitive devices
SOMANET Circulo
Overview
Technical specifications
Power Specification
General Specification
Optional Integrated Encoders
Accuracy and repeatability of the integrated encoders
Functions
Magnetic data
Optional Integrated Brake
Ordering information
Load cycle
Downloads
Documents
CAD Files
Installation Guide
Wiring instructions
Power and brake
Supply and phases
Warning about using contactors behind the power supply
Connecting a brake
Encoders and IO
Encoder overview
Analog Input
Encoder ports
Encoder port 1
Encoder port 2
Digital IO
Voltage Levels of the Digital Inputs/Outputs
EtherCAT / STO-SBC IN & OUT
Voltage level of the Safety Inputs
Analog In Specification
Differential
Single-ended
Temperature sensor
Specification for the single-ended temperature sensor input
Battery for Multi-Turn
Suitable batteries
Power consumption of multi-turn
EtherCAT-STO Cable
Overview
Pinout of the connectors
Hybrid connector (JST GHR-08V-S)
STO/SBC Connections
EtherCAT Connection
Instructions for manufacturing the cables
General Cable and Wire Specifications
Drive-to-Drive Cable
Y-Splitter Cable
Maximum cable lengths
Mating parts
Connector details and mating part numbers
Mechanical integration
Mounting Example
Mounting the encoder disc
Mounting a hollow-shaft secondary bearing
Routing the motor phase cables
Dimensions
Dimensions
Weight and inertia of the encoder rings
Drilling patterns
Mounting a bearing
Side view with phase connectors
Mounting encoder rings
Axial distance tolerances
Planar displacements
Radial displacement (r)
Tangential displacement (t)
Mounting eccentricity or radial runout (e)
Thermal Mounting Considerations
Current as a function of mounting temperature
Ambient air
Encoder calibration
Encoder accuracy
Narrow angle errors (encoder system-specific non-linearity)
Analogue signals errors
Magnetic ring magnetization errors
Wide angle error (installation-dependent non-linearity)
Detecting the encoder non-linearity
Analog Calibration Procedure
Prerequisite
Performing the procedure
Starting the Internal Encoder Calibration
Limited Range Calibration (Available from OBLAC Drives v21.3.0)
Calibration in Progress
Troubleshooting
The magnetic ring is too close to the encoder chip
The magnetic ring is too far from the encoder chip
The magnetic ring is damaged
Encoder system diagnostic
Magnetic ring distance checker
Check encoder system
Check encoder errors
LED signals
Overview
Legend
Status LED
Firmware
Bootloader
EtherCAT LED
Safety functions (STO-SBC)
Safety specifications
System requirements
Technical specifications
Safety connectors
Wiring the safety inputs
Cabling lenghts
Connection diagrams for the STO inputs
Manual switch + drives
Safety PLC PM (Plus-Minus output) + drives
Safety PLC PP (Plus-Plus output) + drives
Connection diagram for the brake
Using the safety functions
Timing diagrams
Timing diagram for STO-function without connected brake
Timing diagram for STO-function with SBC-function
Truth table for digital inputs
Diagnostic functions
Software diagnostics
STO-SBC status register
Examples for realising safety functions
Emergency stop
Stop category 1 emergency stop (Safe stop 1)
Prerequisites
Wiring
Configuration
Verification
Prevention of unexpected start-up
Commissioning and maintenance
Commissioning
Maintenance
Changelog of the safety-related documentation
SOMANET Node
Overview
Technical specifications
Power Specifications
General specifications
Load cycle
Thermal considerations
Downloads
Documents
CAD Files
Hardware diagrams
EtherCAT module
Processor module
Drive module
Installation guide
Wiring instructions
Power and brake
Pinout Power Terminal
Notes about choosing the supply voltage
Using a PELV or SELV power supply
Warning about using contactors behind the power supply
Connecting a Brake
Encoders and IO
Encoder Port 1
Encoder Port 2
Encoder Port 3 / Digital IO
Analog IN
Analog input specification
Analog input resistance
Attaching a voltage divider
EtherCAT port
EtherCAT IN Port
EtherCAT OUT Port
Connectors and mating parts
Overview of connectors
Mounting instructions
Heat dissipation
Dimensions
Interference with magnetic fields
On-site installation guide (UL)
Branch fuse required
Field wiring terminal marking
Downloads
LED signals
Overview
Legend
Core LED
Firmware
Bootloader
Drive LED
Com LED
Safety functions (STO-SBC)
Specifications of the safety functions
System requirements
Technical specifications
Block diagram
Setup of the safety functions
Connecting the STO/SBC inputs
STO/SBC input port
Wiring examples for the STO/SBC inputs
Manual switch
Safety PLC (plus-minus output)
Safety PLC (plus-plus output)
Connection diagram for the brake
Brake power output (STO/SBC)
Connector mating parts and cable lengths
Using the safety functions
Timing diagrams
Timing diagram for STO-function without connected brake
Timing diagram for STO-function with SBC-function
Truth table for digital inputs
Diagnostic functions
Fault diagnostics
Fault reaction
Resetting diagnostic faults
STO-SBC status register
Examples for realising safety functions
Prevention of unexpected start-up
Stop category 0 (STO)
Stop category 1 (SS1)
Prerequisites
Wiring
Configuration
Verification
Commissioning and maintenance
Commissioning
Maintenance
Changelog of the safety-related documentation
Dimensions
SOMANET Accessories
SOMANET Braking Chopper
Overview
Technical Specs
Installing the module and setting the threshold voltage
Connecting the Board to DC-BUS
Suitable cables
Wiring
Failsafe Behavior
Multi-board option
LED
Dimensions
SOMANET Sin/Cos Cable Adapter
Overview
Block Diagram
Connectors
Encoder Connector Top
Encoder Connector Bottom
Interface Connector
Mounting remarks
Strain relief
Soldered cables
Industrial I/O Cable Adapter
Overview
Block diagram
Pinouts
Connector details and mating parts
Strain relief
Soldered cables
Attaching the adapter
ABI/BiSS Encoder Cable Adapter
Overview
Block Diagram
Connectors
Encoder Connector Top
Encoder Connector Bottom
Interface Connector
Mounting remarks
Strain relief
Soldered cables
Downloads
Samples & Legacy Products
SOMANET Circulo Sample A.2
Technical specifications
Power Specification
General Specification
Optional Integrated Encoders
Accuracy and repeatability of the encoder rings
Functions
Magnetic data
Optional Integrated Brake
Installation Guide
Wiring instructions
Power supply and motor brake
Power Terminal
Motor phases
Connecting a brake
Encoders and IO
Connector overview
Analog Input
External Encoder
Digital IO
Safety STO-SBC
Encoder Battery (for multi-turn)
EtherCAT In/Out
Temperature sensor
Mating parts and encoder battery
Connector details and mating part numbers
Suitable batteries
Overview of connectors
Dimensions and mechanical mounting
Dimensions
Drilling patterns for mounting
Heat dissipation
Downloads
Mounting encoder rings
Aligning the encoder discs
Mounting tolerances
Radial displacement (r)
Tangential displacement (t)
Axial distance
Tilt angle
Mounting eccentricity (rotation axis offset)
Encoder accuracy
Wide angle error (long wave error, integral nonlinearity)
Narrow angle error (short wave error, differential nonlinearity, Sub Divisional Error)
LED signals
Overview
Legend
Core LED
Firmware
Bootloader
Drive LED
EtherCAT LED
Safety functions (STO-SBC)
Safety specifications
System requirements
Technical specifications
Block diagram
Wiring the safety inputs
Connection diagrams for the STO inputs
Manual switch + drive
Manual switch + drive (single-channel)
Manual switch + multiple drives
Safety PLC PM (Plus-Minus output) + drive
Safety PLC PM (Plus-Minus output) + multiple drives
Safety PLC PP (Plus-Plus output) + drive
Safety PLC PP (Plus-Plus output) + multiple drives
Connection diagrams for the STO/SBC feedback output
High side driver
Low side driver
Connection diagram for the brake
Using the safety functions
Timing diagrams
Timing diagram for STO-function without SBC
Timing diagram for STO-function with SBC-function
Truth table for digital inputs
Diagnostic functions
Software diagnostics
Hardware diagnostics
STO-SBC status register
Use cases
Emergency stop
Prevention of unexpected start-up
Commissioning and maintenance
Commissioning
Maintenance
SOMANET Circulo Sample B.1
Technical specifications
Power Specification
General Specification
Optional Integrated Encoders
Accuracy and repeatability of the integrated encoders
Functions
Magnetic data
Optional Integrated Brake
Ordering information
Installation Guide
Wiring instructions
Power and brake
Supply and phases
Connecting a brake
Encoders and IO
Encoder overview
Analog Input
External Encoder
Digital IO
EtherCAT / STO-SBC IN & OUT
Temperature sensor
EtherCAT-STO Cable
Overview
Pinout of the connectors
Instructions for manufacturing the cables
Mating parts
Connector details and mating part numbers
Dimensions and mechanical mounting
Dimensions
Drilling patterns for mounting
Heat dissipation
Downloads
Mounting encoder rings
Aligning the encoder discs
Mounting tolerances
Radial displacement (r)
Tangential displacement (t)
Axial distance
Tilt angle
Mounting eccentricity (rotation axis offset)
Battery for Multi-Turn
Suitable batteries
Mounting a bearing
Encoder accuracy
Wide angle error (long wave error, integral nonlinearity)
Narrow angle error (short wave error, differential nonlinearity, Sub Divisional Error)
Encoder calibration
Overview
Prerequisite
Encoder system diagnostic
Magnetic ring distance checker
Check encoder system
Check encoder errors
Calibration Procedure
LED signals
Overview
Legend
Status LED
Firmware
Bootloader
EtherCAT LED
Safety functions (STO-SBC)
Safety specifications
System requirements
Technical specifications
Safety connectors
Wiring the safety inputs
Cabling lenghts
Connection diagrams for the STO inputs
Manual switch + drives
Safety PLC PM (Plus-Minus output) + drives
Safety PLC PP (Plus-Plus output) + drives
Connection diagram for the brake
Using the safety functions
Timing diagrams
Timing diagram for STO-function without SBC
Timing diagram for STO-function with SBC-function
Truth table for digital inputs
Diagnostic functions
Software diagnostics
Hardware diagnostics
STO-SBC status register
Examples for realising safety functions
Emergency stop
Stop category 1 emergency stop (Safe stop 1)
Prerequisites
Wiring
Configuration
Verification
Prevention of unexpected start-up
Commissioning and maintenance
Commissioning
Maintenance
Changelog of the safety-related documentation
SOMANET Node rev. D.3/4
Technical specifications
Power Specifications
General specifications
Hardware diagrams
EtherCAT module
Processor module
Drive module
Installation guide
Wiring Instructions
Warning about using contactors behind the power supply
Connector Pinouts
Power Terminal
Encoder Port 1
Encoder Port 2
Encoder Port 3 / Digital IO
Analog IN
EtherCAT port
EtherCAT IN Port
EtherCAT OUT Port
Connector types and mating parts numbers
Grounding and connecting a brake
Connecting a Brake
Mounting instructions
Heat dissipation
Dimensions
Interference with magnetic fields
Downloads
LED signals
Overview
Legend
Core LED
Firmware
Bootloader
Drive LED
Com LED
SOMANET Node rev. C.4
Technical specifications
Power Specifications
General specifications
Hardware diagrams
EtherCAT module
Processor module
Drive module
Installation guide
Wiring Instructions
Warning about using contactors behind the power supply
Connector Pinouts
EtherCAT IN/OUT
Power Terminal
Encoder Port 1
Encoder Port 2
Encoder Port 3 / Digital IO
Analog IN
EtherCAT port
EtherCAT IN Port
EtherCAT OUT Port
Connector types and mating parts numbers
Grounding and connecting a brake
Connecting a Brake
Mounting instructions
Heat dissipation
Dimensions
Interference with magnetic fields
LED signals
Overview
Legend
Core LED
Firmware
Bootloader
Drive LED
Com LED
Commissioning and Tuning with OBLAC Drives
OBLAC Drives Setup
OBLAC Drives Box
Connectors
Installation
Network Connection to the OBLAC box
Connection Host-PC ↔ Box by Wi-Fi
Host-PC connected to Internet by LAN connection
Box connected to internet by LAN connection
Host-PC and Box not connected to Internet
Connection Host-PC ⇿ PC by LAN cable
LAN connection via Switch and connection to a network with DHCP server
LAN connection Peer to Peer
No connection to OBLAC update server
Offline Updates
Open OBLAC Drives
Update OBLAC Drives
OBLAC Drives Virtual Machine
Prerequisite
Getting started
Connecting to OBLAC Drives
Update OBLAC Drives
Troubleshooting
Using OBLAC Drives
Installing the latest version
User Interface Overview
Save to device
Update Firmware
Launch Setup Wizard
Download Device Description XML
Load Configuration File
Save Configuration File
Download log
Factory Reset
Using keyboard shortcuts
Quick Open
Set up your servo drive
Motion Control Tuning
Auto-Tuning
System Identification
Prerequisites
Limitations
How to use
F.A.Q.
Position Auto-tuning
Prerequisites
Limitations
How to use
Next steps
F.A.Q.
Velocity Auto-tuning
Prerequisites
Limitations
How to use
Next steps
F.A.Q.
Concept of Auto-Tuning
Goal of Position Auto-tuning
Goal of Velocity Auto-tuning
Manual Tuning
Manual Tuning of the current controller
Manual tuning guide
Manual Tuning of the velocity control loop
Manual Tuning of the position control loop: Cascaded controller
Overview of the Tools
Test your drive at the playground
Prerequisites
Applying torque to a motor
Rotate a motor at defined velocities
Rotate a motor to defined positions
Update or downgrade OBLAC Drives
Troubleshooting
Virtualization not activated
Memory Warning
Runtime Issues
Other Issues
Software Reference
Software Reference v5.0
Overview
Functionality description
CANopen over EtherCAT (CoE)
Drive State Machine (CiA 402)
PDO
PDO Configuration
SDO
Actuator Configuration
Motor and Gear settings
Motor Configuration
Pole pairs
Torque constant
Phase resistance
Phase resistance of delta winding motors
Phase to phase resistance of delta winding motors
Phase inductance
Phase to phase inductance of delta winding motors
Errors in phase resistance and inductance
Motor phases inverted
PWM frequency
Gear Ratio
Advanced configurations
Parameters
Generic brake output voltage
Overview
Usage
Limitations
Parameters
Brake release
Pin-brake Mode
Timing diagram
Brake PWM frequency
Custom brake modes
Parameters
User defined velocity units
Overview
Usage
Objects affected
Example
Parameters
Commutation Offset Detection
Overview
Basic Principles
Requirements
Load requirements
Autophasing methods
Method 0
Method 1
Method 2
Comparison of methods
Common Use Cases
Motion is allowed
Motion is not allowed
Usage
Tuning gains (method 1)
Parameters
Power limit
Overview
Requirements
Detailed Description
Parameters
Encoders and I/O
Analog In
Using single-ended sensors on differential inputs
Nonlinear conversion
Parameters
Analog Input Scaling
Requirements
Usage
Wiring
Software configuration
Thresholds
Polynomial
Parameters
Digital I/O
Configuration of Digital I/Os as Input or Output
Using Digital I/Os for input actions or output events
Parameters
Digital GPIO
Overview
Usage
Manual configuration
Description of features
General purpose In- and Output (GPIO)
Using Digital GPIO with Home switches and limit switches
Driving out of the limit switch
Input actions
Output events
Parameters
Encoder Configuration
Parameter description
Function
Resolution
Zero velocity threshold
Polarity
Multiturn resolution
Parameters
Commutation with Hall and ABI combined
Overview
Requirements
Usage
Detailed description
Startup
Error Detection
Runtime
Input counter
Overview
Limitations
Parameters
Protection
Overview
Usage
Parameters
Errors and Warnings
Error codes thrown by the firmware
Error Report Object
Remedies for protection errors
Remedy for over-current
Remedy for over-voltage
Remedy for under-voltage
Remedy for over-temperature
Logging
Overview
Types
Format
Motion Control
Control Loops
Current and Torque Control Loop
Torque control loop
General Scope of the Torque Controller
Reference Torque Generation
Functional Description and Controller Structure
Tuning of the current controller
Parameters
Velocity Control Loop
Parameters
Position Control Loops
Cascaded PID Controller
Parameters
Simple PID Controller
Parameters
Dual Loop Cascaded Position Control
Overview
Usage
Parameters
Modes of Operation
Cyclic modes
Cyclic Synchronous Torque Control (CST)
Operation Mode dependent Bits of the Statusword
Parameters
Cyclic Synchronous Velocity Control (CSV)
Operation Mode dependent Bits of the Statusword
Parameters
Cyclic Synchronous Position Control (CSP)
Operation Mode dependent Bits of the Statusword
Parameters
Profile modes
Profile position mode
Objects configuration
Trajectory generator
Enable Profile position mode
Setting set-points
Operation Mode dependent Bits of Status- and Controlword
Parameters
Profile velocity mode
Objects configuration
Enable Profile velocity mode
Operation Mode dependent Bits of Status- and Controlword
Parameters
Profile torque mode
Objects configuration
Enable Profile torque mode
Starting/Stopping Torque
Operation Mode dependent Bits of Status- and Controlword
Parameters r
Homing modes
Overview
Homing methods
Homing methods 1-14 (Homing on limit switches)
Homing method 33/34 (move to next or previous single-turn position or “index pulse”)
Homing method 35/37 (zero the current position)
Settings for homing mode
State for homing modes
Homing method
Homing speeds
Homing acceleration
Setting digital I/Os for Homing
How to perform homing
Using the Halt bit
Status of the homing process
Hitting a limit switch in homing mode
Operation Mode dependent Bits of Status- and Controlword
Controlword
Statusword
Parameters
Diagnostics opmode
Switching modes
Dynamic Op-Mode switching
Extended Control Functionalities
Cogging Torque Compensation
Overview
Procedure
Prerequisites
Overview of the GUI
Recording
Automatic recording
Testing the compensation table
Manual configuration for the cogging recording
Using the compensation table
Controlling the feature via EtherCAT
Subitems:
1 State
2 Enabled
Parameters
Field Weakening
Anti-Windup Control
Parameters
Gain Scheduling
Motor Overload Protection (i2t)
Overview
Requirements
Description of Subitems for 0x200A:
Operating principle
Velocity feed forward
Usage
Using a velocity offset additionally
Object used for Velocity feed forward
Torque Offset
Velocity Offset
Filtering
Position and Velocity Feedback Low-pass filters
A practical guide to low-pass filter design
Parameters
Torque loop input shaping filter
Parameters
Overview
Methods
Definitions
Low-pass filter
Torque loop input shaping filter
Application Guide
Parameters
Command smoothing and Interpolation
Overview
Side Effects
Applications
Input interpolation
Jerk limiting
Communication jitter mitigation
Detailed Description
Command smoothing
Usage
Parameters
Control supervision
Timing diagram of the supervision objects
Following error
Following error window
Definitions
Configuring the Following error window
Result
Target reached function
Definitions
Configuring the position window (CSP)
Configuring the velocity window (CSV)
Configuring the torque window (CST)
Result
Monitoring the internal variables
Control Effort
Parameters
Distributed clocks (DC clocks)
Overview
Distributed Clock configuration
Parameters
OS Command
Overview
Usage
0x1023: OS command
0x1024: OS command mode
OS command behavior
Flowchart of the Command
Available commands
Command 0: Encoder register communication
Command 1: iC-MU calibration mode
Command 2: Open Loop Field Mode (OLFM)
Command 3: HRD streaming
Command 4: Motor phase order detection
Command 5: Commutation offset detection
Command 6: Open phase detection
Command 7: Pole pair detection
Command 8: Phase resistance measurement
Command 9: Phase inductance measurement
Command 10: Torque constant measurement
Command 13: Skipped cycles counter
Command 14: Ignore BiSS status bits
Parameters
Quick stop
Overview
Usage
Position and velocity control modes
Torque control mode
Parameters
Object Dictionary
All Objects
0x1000 Device type
0x1001 Error register
0x1005 COB-ID SYNC
0x1006 Communication cycle period
0x1008 Manufacturer device name
0x100A Manufacturer software version
0x100C Guard time
0x100D Life time factor
0x1010 Store parameters
0x1011 Restore default parameters
0x1016 Consumer heartbeat time
0x1017 Producer heartbeat time
0x1018 Identity object
0x1019 Synchronous counter overflow value
0x1023 OS command
0x1024 OS command mode
0x1400 Receive PDO1 parameter
0x1401 Receive PDO2 parameter
0x1402 Receive PDO3 parameter
0x1403 Receive PDO4 parameter
0x1600 Receive PDO1 mapping
0x1601 Receive PDO2 mapping
0x1602 Receive PDO3 mapping
0x1603 Receive PDO4 mapping
0x1800 Transmit PDO1 parameter
0x1801 Transmit PDO2 parameter
0x1802 Transmit PDO3 parameter
0x1803 Transmit PDO4 parameter
0x1A00 Transmit PDO1 mapping
0x1A01 Transmit PDO2 mapping
0x1A02 Transmit PDO3 mapping
0x1A03 Transmit PDO4 mapping
0x1C00 Sync Manager
0x1C10 SM 0 Assignment
0x1C11 SM 1 Assignment
0x1C12 SM 2 Assignment
0x1C13 SM 3 Assignment
0x2000 Command object (disabled)
0x2001 Commutation angle offset
0x2002 Position control strategy
0x2003 Motor specific settings
0x2004 Brake options
0x2006 Protection
0x2008 Cogging torque compensation
0x2009 Commutation offset
0x200A I2t
0x200B Max power
0x2010 Torque controller
0x2011 Velocity controller
0x2012 Position controller
0x2013 Gain scheduling
0x2014 Torque window
0x2015 Velocity feed forward
0x2021 Velocity feedback filter
0x2022 Position feedback filter
0x2023 Notch filter
0x2027 Control input FIR filter
0x2030 Core temperature
0x2031 Drive temperature
0x2038 External scaled measurement
0x203F Error report
0x2040 Input counter
0x20E1 High resolution data
0x20F0 Timestamp
0x20F2 Assigned name
0x20F3 DC synchronization
0x2110 Encoder 1 configuration
0x2111 Encoder 1 feedback
0x2112 Encoder 2 configuration
0x2113 Encoder 2 feedback
0x2210 GPIO pin configuration
0x2211 GPIO output events
0x2212 GPIO input actions
0x2213 GPIO position trigger
0x2214 GPIO global options
0x2401 Analog input 1
0x2402 Analog input 2
0x2403 Analog input 3
0x2404 Analog input 4
0x2611 Safety digital input diagnostics
0x2701 Tuning command
0x2702 Tuning status
0x2703 User MOSI
0x2704 User MISO
0x2705 Setup wizard completed
0x603F Error code
0x6040 Controlword
0x6041 Statusword
0x605A Quick stop option code
0x6060 Modes of operation
0x6061 Modes of operation display
0x6062 Position demand value
0x6064 Position actual value
0x6065 Following error window
0x6066 Following error time out
0x6067 Position window
0x6068 Position window time
0x606B Velocity demand value
0x606C Velocity actual value
0x606D Velocity window
0x606E Velocity window time
0x606F Velocity threshold
0x6070 Velocity threshold time
0x6071 Target Torque
0x6072 Max torque
0x6073 Max current
0x6074 Torque demand
0x6075 Motor rated current
0x6076 Motor rated torque
0x6077 Torque actual value
0x6079 DC link circuit voltage
0x607A Target position
0x607B Position range limit
0x607C Home offset
0x607D Software position limit
0x607E Polarity
0x6080 Max motor speed
0x6081 Profile velocity
0x6083 Profile acceleration
0x6084 Profile deceleration
0x6085 Quick stop deceleration
0x6086 Motion profile type
0x6087 Torque slope
0x6088 Torque profile type
0x6091 Gear ratio
0x6098 Homing method
0x6099 Homing speeds
0x609A Homing acceleration
0x60A9 SI unit velocity
0x60B1 Velocity offset
0x60B2 Torque offset
0x60F4 Following error actual value
0x60FA Control effort
0x60FC Position demand internal value
0x60FD Digital inputs
0x60FE Digital outputs
0x60FF Target velocity
0x6502 Supported drive modes
0x6621 Safety statusword
Communication Area
Process Data Objects
Standard RxPDO mapped Objects
Standard TxPDO mapped Objects
Configuring custom PDO mappings
Changing the content of a mapping object
Manufacturer Specific Area
Profile Specific Area
Device Information
Saving and restoring configurations
Overview
Usage
Restore configuration
Save configuration
User defaults - config.csv
Limitations
Parameters
Software Reference v4.4
Overview
Functionality description
CANopen over EtherCAT (CoE)
Drive State Machine (CiA 402)
PDO
PDO Configuration
SDO
Actuator Configuration
Motor and Gear settings
Motor Configuration
Parameters related to the Motor
Selecting the PWM frequency
Gear Ratio
Parameters related to Gear Ratio
Manually controlling phase D voltage
Overview
Usage
Limitations
Parameters related to Controlling the brake output voltage
Brake release
Pin-brake Mode
Timing diagram
Selecting the PWM frequency of the brake
Custom brake modes
Parameters related to Brake
User defined velocity units
Overview
Usage
Objects affected by changes of the velocity unit
Example
Parameters related to User defined velocity units
Encoders and I/O
Analog In
Analog Input Scaling
Requirements
Specifications
Parameters related to Analog Input Scaling
Using differential inputs for single-ended sensors
Nonlinear conversion of an analog voltage
Parameters related to Analog Inputs
Digital I/O
Configuration of Digital I/Os as Input or Output
Parameters related to GPIO
Encoder Configuration
Description of common encoder parameters
Function
Resolution
Zero velocity threshold
Polarity
Multiturn resolution
Encoder related parameters
Commutation with Hall and ABI combined
Overview
Requirements
Usage
Detailed description
Startup
Error Detection
Runtime
Input counter
Overview
Limitations
Parameters related to Input counter
Protection
Overview
Usage
Parameters related to protection
Errors and Warnings
Error codes thrown by the firmware
Error Report Object
Remedies for protection errors
Remedy for over-current
Remedy for over-voltage
Remedy for under-voltage
Remedy for over-temperature
Logging
Overview
Types
Format
Motion Control
Control Loops
Current and Torque Control Loop
Torque control loop
General Scope of the Torque Controller
Reference Torque Generation
Functional Description and Controller Structure
Parameters related to Current and Torque Control Loop
Velocity Control Loop
Parameters related to the Velocity Control Loop
Position Control Loops
Cascaded PID Controller
Parameters related to Cascaded PID Controller
Simple PID Controller
Parameters related to Simple PID Controller
Dual Loop Cascaded Position Control
Overview
Usage
Parameters related to Dual Loop Cascaded Position Control
Modes of Operation
Cyclic modes
Cyclic Synchronous Torque Control (CST)
Parameters related to Cyclic Synchronous Torque Control
Cyclic Synchronous Velocity Control (CSV)
Parameters related to Cyclic Synchronous Velocity Mode
Cyclic Synchronous Position Control (CSP)
Parameters related to Cyclic Synchronous Position Control
Profile modes
Profile position mode
Trajectory generator
Enable Profile position mode
Setting set-points
Profile velocity mode
Enable Profile velocity mode
Profile torque mode
Enable Profile torque mode
Starting/Stopping Torque
Homing modes
Overview
Homing method 33/34
Homing method 35/37
Settings for homing mode
Homing method
Homing speeds
Homing acceleration
How to perform homing
Using the Halt bit
Communications
Objects used
Switching modes
Dynamic Op-Mode switching
Extended Control Functionalities
Cogging Torque Compensation
Overview
Procedure
Prerequisites
Overview of the GUI
Recording
Automatic recording
Testing the compensation table
Manual configuration for the cogging recording
Using the compensation table
Controlling the feature via EtherCAT
Subitems:
1 State
2 Enabled
Parameters related to Cogging Torque Compensation
Field Weakening
Anti-Windup Control
Parameters related to Anti-Windup Control
Gain Scheduling
Motor Overload Protection (i2t)
Overview
Requirements
Description of Subitems for 0x200A:
Operating principle
Velocity feed forward
Usage
Using a velocity offset additionally
Object used for Velocity feed forward
Torque Offset
Velocity Offset
Filtering
Position and Velocity Feedback Low-pass filters
A practical guide to low-pass filter design
Parameters related to feedback low-pass filters
Torque loop input shaping filter
Parameters related to notch filter
Overview
Methods
Definitions
Low-pass filters
Torque loop input shaping filter
Application Guide
Command smoothing and Interpolation
Overview
Side Effects
Applications
Input interpolation
Jerk limiting
Communication jitter mitigation
Detailed Description
Command smoothing
Usage
Parameters related to Finite impulse response Filter
Control supervision
Timing diagram of the supervision objects
Following error
Following error window
Definitions
Configuring the Following error window
Result
Target reached function
Definitions
Configuring the position window (CSP)
Configuring the velocity window (CSV)
Configuring the torque window (CST)
Result
Monitoring the internal variables
Control Effort
Parameters related to Control supervision
Distributed clocks (DC clocks)
Overview
Distributed Clock configuration
Parameters related to Distributed Clocks
Object Dictionary
All Objects
0x1000 Device type
0x1001 Error register
0x1005 COB-ID SYNC
0x1006 Communication cycle period
0x1008 Manufacturer device name
0x100A Manufacturer software version
0x100C Guard time
0x100D Life time factor
0x1010 Store parameters
0x1011 Restore default parameters
0x1016 Consumer heartbeat time
0x1017 Producer heartbeat time
0x1018 Identity object
0x1019 Synchronous counter overflow value
0x1400 Receive PDO1 parameter
0x1401 Receive PDO2 parameter
0x1402 Receive PDO3 parameter
0x1403 Receive PDO4 parameter
0x1600 Receive PDO1 mapping
0x1601 Receive PDO2 mapping
0x1602 Receive PDO3 mapping
0x1603 Receive PDO4 mapping
0x1800 Transmit PDO1 parameter
0x1801 Transmit PDO2 parameter
0x1802 Transmit PDO3 parameter
0x1803 Transmit PDO4 parameter
0x1A00 Transmit PDO1 mapping
0x1A01 Transmit PDO2 mapping
0x1A02 Transmit PDO3 mapping
0x1A03 Transmit PDO4 mapping
0x1C00 Sync Manager
0x1C10 SM 0 Assignment
0x1C11 SM 1 Assignment
0x1C12 SM 2 Assignment
0x1C13 SM 3 Assignment
0x2000 Command object (disabled)
0x2001 Commutation angle offset
0x2002 Position control strategy
0x2003 Motor specific settings
0x2004 Brake options
0x2005 Recuperation
0x2006 Protection
0x2008 Cogging torque compensation
0x2009 Commutation offset
0x200A I2t
0x2010 Torque controller
0x2011 Velocity controller
0x2012 Position controller
0x2013 Gain scheduling
0x2014 Torque window
0x2015 Velocity feed forward
0x2021 Velocity feedback filter
0x2022 Position feedback filter
0x2023 Notch filter
0x2027 Control input FIR filter
0x2030 Core temperature
0x2031 Drive temperature
0x2038 External scaled measurement
0x203F Error report
0x2040 Input counter
0x20E1 High resolution data
0x20F0 Timestamp
0x20F2 Assigned name
0x20F3 DC synchronization
0x2100 Feedback sensor ports
0x2201 BiSS encoder 1
0x2202 BiSS encoder 2
0x2203 REM 16MT encoder
0x2205 Incremental encoder 1
0x2206 Incremental encoder 2
0x2207 Hall sensor 1
0x2208 Hall sensor 2
0x2209 SSI encoder 1
0x220A SSI encoder 2
0x220B A Format encoder
0x220C Fast ABI module
0x220E SinCos module
0x2210 GPIO pin configuration
0x2214 GPIO global options
0x230A Secondary position value
0x230B Secondary velocity value
0x2401 Analog input 1
0x2402 Analog input 2
0x2403 Analog input 3
0x2404 Analog input 4
0x2501 Digital input 1
0x2502 Digital input 2
0x2503 Digital input 3
0x2504 Digital input 4
0x2601 Digital output 1
0x2602 Digital output 2
0x2603 Digital output 3
0x2604 Digital output 4
0x2611 Safety digital input diagnostics
0x2701 Tuning command
0x2702 Tuning status
0x2703 User MOSI
0x2704 User MISO
0x2705 Setup wizard completed
0x603F Error code
0x6040 Controlword
0x6041 Statusword
0x6060 Modes of operation
0x6061 Modes of operation display
0x6062 Position demand value
0x6064 Position actual value
0x6065 Following error window
0x6066 Following error time out
0x6067 Position window
0x6068 Position window time
0x606B Velocity demand value
0x606C Velocity actual value
0x606D Velocity window
0x606E Velocity window time
0x606F Velocity threshold
0x6070 Velocity threshold time
0x6071 Target torque
0x6072 Max torque
0x6073 Max current
0x6074 Torque demand
0x6075 Motor rated current
0x6076 Motor rated torque
0x6077 Torque actual value
0x6079 DC link circuit voltage
0x607A Target position
0x607B Position range limit
0x607C Home offset
0x607D Software position limit
0x607E Polarity
0x6080 Max motor speed
0x6081 Profile velocity
0x6083 Profile acceleration
0x6084 Profile deceleration
0x6085 Quick stop deceleration
0x6086 Motion profile type
0x6087 Torque slope
0x6088 Torque profile type
0x6091 Gear ratio
0x6098 Homing method
0x6099 Homing speeds
0x609A Homing acceleration
0x60A9 SI unit velocity
0x60B1 Velocity offset
0x60B2 Torque offset
0x60E3 Supported homing methods
0x60F4 Following error actual value
0x60FA Control effort
0x60FC Position demand internal value
0x60FF Target velocity
0x6502 Supported drive modes
0x6621 Safety statusword
Communication Area
Process Data Objects
Standard RxPDO mapped Objects
Standard TxPDO mapped Objects
Configuring custom PDO mappings
Changing the content of an object
Manufacturer Specific Area
CiA 402 Specific Area
Device Information
Software Reference v4.2
Overview
Functionality description
CANopen over EtherCAT (CoE)
Drive State Machine (CiA 402)
PDO
PDO Configuration
SDO
Actuator Configuration
Motor and Gear settings
Motor Configuration
Parameters related to the Motor
Selecting the PWM frequency
Gear Ratio
Parameters related to Gear Ratio
Manually controlling phase D voltage
Overview
Usage
Limitations
Parameters related to Controlling the brake output voltage
Brake release
Pin-brake Mode
Timing diagram
Selecting the PWM frequency of the brake
Custom brake modes
Parameters related to Brake
User defined velocity units
Overview
Usage
Objects affected by changes of the velocity unit
Example
Parameters related to User defined velocity units
Encoders and I/O
Analog In
Analog Input Scaling
Requirements
Specifications
Parameters related to Analog Input Scaling
Using differential inputs for single-ended sensors
Nonlinear conversion of an analog voltage
Parameters related to Analog Inputs
Digital I/O
Configuration of Digital I/Os as Input or Output
Parameters related to GPIO
Encoder Configuration
Description of common encoder parameters
Function
Resolution
Zero velocity threshold
Polarity
Multiturn resolution
Encoder related parameters
Commutation with Hall and ABI combined
Overview
Requirements
Usage
Detailed description
Startup
Error Detection
Runtime
Input counter
Overview
Limitations
Parameters related to Input counter
Protection
Overview
Usage
Parameters related to protection
Errors and Warnings
Error codes thrown by the firmware
Error Report Object
Remedies for protection errors
Remedy for over-current
Remedy for over-voltage
Remedy for under-voltage
Remedy for over-temperature
Logging
Overview
Types
Format
Motion Control
Control Loops
Current and Torque Control Loop
Torque control loop
General Scope of the Torque Controller
Reference Torque Generation
Functional Description and Controller Structure
Parameters related to Current and Torque Control Loop
Velocity Control Loop
Parameters related to the Velocity Control Loop
Position Control Loops
Cascaded PID Controller
Parameters related to Cascaded PID Controller
Simple PID Controller
Parameters related to Simple PID Controller
Dual Loop Cascaded Position Control
Overview
Usage
Parameters related to Dual Loop Cascaded Position Control
Modes of Operation
Cyclic modes
Cyclic Synchronous Torque Control (CST)
Parameters related to Cyclic Synchronous Torque Control
Cyclic Synchronous Velocity Control (CSV)
Parameters related to Cyclic Synchronous Velocity Mode
Cyclic Synchronous Position Control (CSP)
Parameters related to Cyclic Synchronous Position Control
Profile modes
Profile position mode
Trajectory generator
Enable Profile position mode
Setting set-points
Profile velocity mode
Enable Profile velocity mode
Profile torque mode
Enable Profile torque mode
Starting/Stopping Torque
Homing modes
Overview
Homing method 33/34
Homing method 35/37
Settings for homing mode
Homing method
Homing speeds
Homing acceleration
How to perform homing
Using the Halt bit
Communications
Objects used
Switching modes
Extended Control Functionalities
Cogging Torque Compensation
Overview
Procedure
Prerequisites
Overview of the GUI
Recording
Automatic recording
Testing the compensation table
Manual configuration for the cogging recording
Using the compensation table
Controlling the feature via EtherCAT
Subitems:
1 State
2 Enabled
Parameters related to Cogging Torque Compensation
Field Weakening
Anti-Windup Control
Parameters related to Anti-Windup Control
Gain Scheduling
Motor Overload Protection (i2t)
Overview
Requirements
Description of Subitems for 0x200A:
Operating principle
Velocity feed forward
Usage
Using a velocity offset additionally
Object used for Velocity feed forward
Torque Offset
Velocity Offset
Filtering
Position and Velocity Feedback Low-pass filters
A practical guide to low-pass filter design
Parameters related to feedback low-pass filters
Torque loop input shaping filter
Parameters related to notch filter
Overview
Methods
Definitions
Low-pass filters
Torque loop input shaping filter
Application Guide
Control supervision
Timing diagram of the supervision objects
Following error
Following error window
Definitions
Configuring the Following error window
Result
Target reached function
Definitions
Configuring the position window (CSP)
Configuring the velocity window (CSV)
Configuring the torque window (CST)
Result
Monitoring the internal variables
Control Effort
Parameters related to Control supervision
Distributed clocks (DC clocks)
Overview
Distributed Clock configuration
Parameters related to Distributed Clocks
Object Dictionary
All Objects
0x1000 Device type
0x1001 Error register
0x1005 COB-ID SYNC
0x1006 Communication cycle period
0x1008 Manufacturer device name
0x100A Manufacturer software version
0x100C Guard time
0x100D Life time factor
0x1010 Store parameters
0x1011 Restore default parameters
0x1016 Consumer heartbeat time
0x1017 Producer heartbeat time
0x1018 Identity object
0x1019 Synchronous counter overflow value
0x1400 Receive PDO1 parameter
0x1401 Receive PDO2 parameter
0x1600 Receive PDO1 mapping
0x1601 Receive PDO2 mapping
0x1602 Receive PDO3 mapping
0x1603 Receive PDO4 mapping
0x1800 Transmit PDO1 parameter
0x1801 Transmit PDO2 parameter
0x1A00 Transmit PDO1 mapping
0x1A01 Transmit PDO2 mapping
0x1A02 Transmit PDO3 mapping
0x1A03 Transmit PDO4 mapping
0x1C00 Sync Manager
0x1C10 SM 0 Assignment
0x1C11 SM 1 Assignment
0x1C12 SM 2 Assignment
0x1C13 SM 3 Assignment
0x2000 Command object (disabled)
0x2001 Commutation angle offset
0x2002 Position control strategy
0x2003 Motor specific settings
0x2004 Brake options
0x2005 Recuperation
0x2006 Protection
0x2008 Cogging torque compensation
0x2009 Commutation offset
0x200A I2t
0x2010 Torque controller
0x2011 Velocity controller
0x2012 Position controller
0x2013 Gain scheduling
0x2014 Torque window
0x2015 Velocity feed forward
0x2021 Velocity feedback filter
0x2022 Position feedback filter
0x2023 Notch filter
0x2030 Core temperature
0x2031 Drive temperature
0x2038 External scaled measurement
0x203F Error report
0x2040 Input counter
0x20E1 High resolution data
0x20F0 Timestamp
0x20F2 Assigned name
0x20F3 DC synchronization
0x2100 Feedback sensor ports
0x2201 BiSS encoder 1
0x2202 BiSS encoder 2
0x2203 REM 16MT encoder
0x2205 Incremental encoder 1
0x2206 Incremental encoder 2
0x2207 Hall sensor 1
0x2208 Hall sensor 2
0x2209 SSI encoder 1
0x220A SSI encoder 2
0x220B A Format encoder
0x220C Fast ABI module
0x220E SinCos module
0x2210 GPIO pin configuration
0x2214 GPIO global options
0x230A Secondary position value
0x230B Secondary velocity value
0x2401 Analog input 1
0x2402 Analog input 2
0x2403 Analog input 3
0x2404 Analog input 4
0x2501 Digital input 1
0x2502 Digital input 2
0x2503 Digital input 3
0x2504 Digital input 4
0x2601 Digital output 1
0x2602 Digital output 2
0x2603 Digital output 3
0x2604 Digital output 4
0x2611 Safety digital input diagnostics
0x2701 Tuning command
0x2702 Tuning status
0x2703 User MOSI
0x2704 User MISO
0x2705 Setup wizard completed
0x603F Error code
0x6040 Controlword
0x6041 Statusword
0x6060 Modes of operation
0x6061 Modes of operation display
0x6062 Position demand value
0x6064 Position actual value
0x6065 Following error window
0x6066 Following error time out
0x6067 Position window
0x6068 Position window time
0x606B Velocity demand value
0x606C Velocity actual value
0x606D Velocity window
0x606E Velocity window time
0x606F Velocity threshold
0x6070 Velocity threshold time
0x6071 Target torque
0x6072 Max torque
0x6073 Max current
0x6074 Torque demand
0x6075 Motor rated current
0x6076 Motor rated torque
0x6077 Torque actual value
0x6079 DC link circuit voltage
0x607A Target position
0x607B Position range limit
0x607C Home offset
0x607D Software position limit
0x607E Polarity
0x6080 Max motor speed
0x6081 Profile velocity
0x6083 Profile acceleration
0x6084 Profile deceleration
0x6085 Quick stop deceleration
0x6086 Motion profile type
0x6087 Torque slope
0x6088 Torque profile type
0x6091 Gear ratio
0x6098 Homing method
0x6099 Homing speeds
0x609A Homing acceleration
0x60A9 SI unit velocity
0x60B1 Velocity offset
0x60B2 Torque offset
0x60E3 Supported homing methods
0x60F4 Following error actual value
0x60FA Control effort
0x60FC Position demand internal value
0x60FF Target velocity
0x6502 Supported drive modes
0x6621 Safety statusword
Communication Area
Process Data Objects
Standard RxPDO mapped Objects
Standard TxPDO mapped Objects
Configuring custom PDO mappings
Changing the content of an object
Manufacturer Specific Area
CiA 402 Specific Area
Device Information
Software Reference v4.1
Overview
Functionality description
CANopen over EtherCAT (CoE)
Drive State Machine (CiA 402)
PDO
PDO Configuration
SDO
Actuator Configuration
Motor Configuration
Motor Control Objects
Brake Configuration
Brake Parameter Object
Gear Ratio
Sensor Configuration
Sensor Objects
Description of commonly used specifications
Function
Resolution
Velocity calculation period
Polarity
Multiturn resolution
Protection
Overview
Usage
Parameters related to protection
Errors and Warnings
Errors thrown by the firmware
Error Report Object
Logging
Overview
Types
Format
Motion Control
Control Loops
Current and Torque Control Loop
Torque control loop
General Scope of the Torque Controller
Reference Torque Generation
Functional Description and Controller Structure
Parameters related to Current and Torque Control Loop
Velocity Control Loop
Parameters related to the Velocity Control Loop
Position Control Loops
Cascaded PID Controller
Parameters related to Cascaded PID Controller
Simple PID Controller
Parameters related to Simple PID Controller
Dual Loop Cascaded Position Control
Overview
Usage
Parameters related to Dual Loop Cascaded Position Control
Modes of Operation
Cyclic Synchronous Torque Control (CST)
Parameters related to Cyclic Synchronous Torque Control
Cyclic Synchronous Velocity Control (CSV)
Parameters related to Cyclic Synchronous Velocity Mode
Cyclic Synchronous Position Control (CSP)
Parameters related to Cyclic Synchronous Position Control
Switching modes
Extended Control Functionalities
Cogging Torque Compensation
Overview
Procedure
Prerequisites
Overview of the GUI
Recording
Automatic recording
Testing the compensation table
Manual configuration for the cogging recording
Using the compensation table
Controlling Cogging Torque Compensation and Recording Feature via EtherCAT
Subitems:
1 State
2 Enabled
Field Weakening
Anti-Windup Control
Gain Scheduling
Motor Overload Protection (i2t)
Overview
Requirements
Description of Subitems for 0x200A:
Operating principle
Torque Offset
Velocity Offset
Object Dictionary
All Objects
0x1000 Device Type
0x1001 Error Register
0x1008 Manufacturer Device Name
0x100A Manufacturer Software Version
0x1010 Store parameters
0x1011 Restore default parameters
0x1018 Identity
0x1600 RxPDO Mapping 1
0x1A00 TxPDO Mapping 1
0x1C00 Sync Manager
0x1C10 SM 0 Assignment
0x1C11 SM 1 Assignment
0x1C12 SM 2 Assignment
0x1C13 SM 3 Assignment
0x2000 Command Object (disabled)
0x2001 Commutation Angle Offset
0x2002 Position control strategy
0x2003 Motor Specific Settings
0x2004 Brake Options
0x2005 Recuperation
0x2006 Protection
0x2008 Cogging Torque Compensation
0x2009 Commutation Offset
0x200A I2t
0x2010 Torque Controller
0x2011 Velocity Controller
0x2012 Position Controller
0x2013 Gain Scheduling
0x2021 Velocity Feedback Filter
0x2022 Position Feedback Filter
0x2031 Drive temperature
0x203F Error report
0x20F0 Timestamp
0x20F1 Real Time Clock
0x20F2 Assigned Name
0x2100 Feedback sensor ports
0x2201 BISS Encoder 1
0x2202 BISS Encoder 2
0x2203 REM 16MT Encoder
0x2204 REM 14 Encoder
0x2205 Incremental Encoder 1
0x2206 Incremental Encoder 2
0x2207 HALL Sensor 1
0x2208 HALL Sensor 2
0x2209 SSI Encoder 1
0x220A SSI Encoder 2
0x2210 GPIO
0x230A Secondary position value
0x230B Secondary velocity value
0x2401 Analog input 1
0x2402 Analog input 2
0x2403 Analog input 3
0x2404 Analog input 4
0x2501 Digital Input 1
0x2502 Digital Input 2
0x2503 Digital Input 3
0x2504 Digital Input 4
0x2601 Digital Output 1
0x2602 Digital Output 2
0x2603 Digital Output 3
0x2604 Digital Output 4
0x2701 Tuning command
0x2702 Tuning status
0x2703 User MOSI
0x2704 User MISO
0x2705 Setup Wizard Completed
0x603F Error code
0x6040 Controlword
0x6041 Statusword
0x6060 Op Mode
0x6061 Op Mode Display
0x6064 Position Value
0x606C Velocity Value
0x6071 Target Torque
0x6072 Max torque
0x6073 Max current
0x6075 Motor Rated Current
0x6076 Motor Rated Torque
0x6077 Torque Value
0x6079 DC link circuit voltage
0x607A Target Position
0x607B Position Range Limits
0x607C Home offset
0x607D Software position limit
0x607E Polarity
0x607F Max profile velocity
0x6080 Max motor speed
0x6081 Profile velocity
0x6085 Quick stop deceleration
0x6086 Motion profile type
0x6091 Gear ratio
0x60B1 Velocity offset
0x60B2 Torque offset
0x60FF Target Velocity
0x6502 Supported Drive Modes
Communication Area
Process Data Objects
Standard RxPDO mapped Objects
Standard TxPDO mapped Objects
Configuring custom PDO mappings
Manufacturer Specific Area
CiA 402 Specific Area
Process Data Objects
Standard RxPDO mapped Objects
Standard TxPDO mapped Objects
Configuring custom PDO mappings
Device Information
Software Reference v4.0
Overview
Functionality description
CANopen over EtherCAT (CoE)
Drive State Machine (CiA 402)
PDO
PDO Configuration
SDO
Actuator Configuration
Motor Configuration
Motor Control Objects
Brake Configuration
Brake Parameter Object
Sensor Configuration
Sensor Objects
Description of commonly used specifications
Function
Resolution
Velocity calculation period
Polarity
Multiturn resolution
Motion Control
Control Loops
Current and Torque Control Loop
Torque control loop
General Scope of the Torque Controller
Reference Torque Generation
Functional Description and Controller Structure
Parameters related to Current and Torque Control Loop
Velocity Control Loop
Parameters related to the Velocity Control Loop
Position Control Loops
Cascaded PID Controller
Parameters related to Cascaded PID Controller
Simple PID Controller
Parameters related to Simple PID Controller
Modes of Operation
Cyclic Synchronous Torque Control (CST)
Parameters related to Cyclic Synchronous Torque Control
Cyclic Synchronous Velocity Control (CSV)
Parameters related to Cyclic Synchronous Velocity Mode
Cyclic Synchronous Position Control (CSP)
Parameters related to Cyclic Synchronous Position Control
Switching modes
Extended Control Functionalities
Cogging Torque Compensation
Overview
Procedure
Prerequisites
Overview of the GUI
Recording
Automatic recording
Testing the compensation table
Manual configuration for the cogging recording
Using the compensation table
Controlling Cogging Torque Compensation and Recording Feature via EtherCAT
Subitems:
1 State
2 Enabled
Field Weakening
Anti-Windup Control
Torque Offset
Errors and Warnings
Object Dictionary
All Objects
0x1000 Device Type
0x1001 Error Register
0x1008 Manufacturer Device Name
0x100A Manufacturer Software Version
0x1010 Store parameters
0x1011 Restore default parameters
0x1018 Identity
0x1600 Rx PDO Mapping
0x1A00 Tx PDO Mapping
0x1C00 Sync Manager
0x1C10 SM 0 Assignment
0x1C11 SM 1 Assignment
0x1C12 SM 2 Assignment
0x1C13 SM 3 Assignment
0x2000 Command Object (disabled)
0x2001 Commutation Angle Offset
0x2002 Position control strategy
0x2003 Motor Specific Settings
0x2004 Brake Options
0x2005 Recuperation
0x2006 Protection
0x2008 Cogging Torque Compensation
0x2009 Commutation Offset
0x2010 Torque Controller
0x2011 Velocity Controller
0x2012 Position Controller
0x20F0 Timestamp
0x20F1 Real Time Clock
0x20F2 Assigned Name
0x2100 Feedback sensor ports
0x2201 BISS Encoder 1
0x2202 BISS Encoder 2
0x2203 REM 16MT Encoder
0x2204 REM 14 Encoder
0x2205 Incremental Encoder 1
0x2206 Incremental Encoder 2
0x2207 HALL Sensor 1
0x2208 HALL Sensor 2
0x2210 GPIO
0x230A Secondary position value
0x230B Secondary velocity value
0x2401 Analog input 1
0x2402 Analog input 2
0x2403 Analog input 3
0x2404 Analog input 4
0x2501 Digital Input 1
0x2502 Digital Input 2
0x2503 Digital Input 3
0x2504 Digital Input 4
0x2601 Digital Output 1
0x2602 Digital Output 2
0x2603 Digital Output 3
0x2604 Digital Output 4
0x2701 Tuning command
0x2702 Tuning status
0x2703 User MOSI
0x2704 User MISO
0x2705 Setup Wizard Completed
0x603F Error code
0x6040 Controlword
0x6041 Statusword
0x6060 Op Mode
0x6061 Op Mode Display
0x6064 Position Value
0x606C Velocity Value
0x6071 Target Torque
0x6072 Max torque
0x6073 Max current
0x6075 Motor Rated Current
0x6076 Motor Rated Torque
0x6077 Torque Value
0x6079 DC link circuit voltage
0x607A Target Position
0x607B Position Range Limits
0x607C Home offset
0x607D Software position limit
0x607E Polarity
0x607F Max profile velocity
0x6080 Max motor speed
0x6081 Profile velocity
0x6083 Profile acceleration
0x6084 Profile deceleration
0x6085 Quick stop deceleration
0x6086 Motion profile type
0x60B2 Torque offset
0x60C5 Max acceleration
0x60FF Target Velocity
0x6502 Supported Drive Modes
Communication Area
Manufacturer Specific Area
CiA 402 Specific Area
Process Data Objects
Standard RxPDO mapped Objects
Standard TxPDO mapped Objects
Device Information
Resources
System integration guidelines
Drive Sizing
Requirements of the application
Application Requirements
Servo Drive Output
Servo Drive Consumption
Calculating the phase current
Nonlinearity buffer
Choosing a power supply
Supply voltage definitions
Regenerated voltage
Bus capacitance
Power supply sizing
Calculating the amperage
Contactors behind the power supply
Wiring Guidelines
DC bus
EtherCAT cable
Encoder wiring
Earthing
Overview
What is earthing or grounding in an electrical system?
Hazards of electricity
Earthing concepts
Protective Earth
Functional Earth
Extra Low Voltage systems
SELV, PELV, FELV power supplies
Earthing connections in SOMANET Products
Earthing consideration (guidelines)
Regenerative energy
Estimation of regenerated energy
Restoring or dissipating regenerated power
Braking chopper
Measuring the brake output voltage
Non-safety brake output
Safety brake output
Configuring analog inputs
Overview
Measuring analog input voltages
Single-ended input
Differential input
Example for normal values (On SOMANET Node)
Examples of faulty values
Temperature Sensor input
Internal Resistance
CANopen over EtherCAT CiA 402
Overview
EtherCAT
CANopen over EtherCAT (CoE)
CANopen basic Principles
CANopen Device Profile CiA 402 for drives and motion control
EtherCAT state machine
Drive state machine
PDO-Mapping
Communication Frequency and DC-Clock Synchronization
Using Statusword and Controlword
Overview
What are Control- and Statusword?
How are they used?
Manufacturer and Operation mode specific bits
Bits in Status- and Controlword
Statusword
General structure
Mode specific bits of the Statusword
Internal limit Active bit
Controlword
General structure
Mode specific bits of the Controlword
Timing Diagram
Temperature sensors
Types of temperature sensors
Thermocouple
Thermistors
Resistance temperature detectors
Pull-up resistor selection
Polynomial or Quintic function
Polynomial coefficients
Replacing a SOMANET Drive
Overview
Availability of the configuration file
SOMANET Node and SOMANET Circulo with external Encoders
Save configuration file
Replace the node
Update firmware
Load the configuration file
Run offset detection
Save the configuration to the drive
SOMANET Circulo with at least one internal encoder
Save the configuration file
Mark a Reference position on your axis
Replace Circulo
Load Calibration Firmware
Load the configuration file
Run offset detection
Re-tune the drive
Run calibration
Load production firmware
Run offset detection and save offset to device
Test stable operation
Check Zero Position
Tutorials
Tuning Guides
Velocity PID Tuning
PID Parameter Range
Recommended Tuning Steps
Position tuning with Gain Scheduling
Introduction
Control Basics
Tuning Concept in Brief
Tuning Steps
Cascaded position Tuning
Introduction
Control Basics
Tuning Concept in Brief
Tuning Steps
Drive operations through File Access over EtherCAT (FoE)
Overview
Updating the firmware
Prerequisite
Setup Information
Preparation
Steps of Operation
Uploading a drive configuration
Setup Information
Steps of Operation
About this documentation
Warnings
Reporting errors
Using offline documentation
Versioning
CANopen over EtherCAT (CoE)¶
CANopen is a fieldbus system and device profile specification for embedded systems used in automation. Among others CANopen defines communication models like master/slave, where the master sends or requests data from the slaves.
CANopen over EtherCAT (CoE) incorporates specialized profiles for motion control and supports a standardized set of commands to be used for motion control. This set of commands is known as CiA 402 and is defined in the IEC standard IEC 61800-7-201:2015 for adjustable speed electrical power drive systems.
If you are using TwinCAT as your controller, you will need to import the SOMANET CiA 402 ESI (EtherCAT Slave Information) XML file to your project.
SOMANET CiA 402 ESI
Drive State Machine (CiA 402)¶
Each CiA 402 device is controlled by the State Machine.
This diagram depicts the transitions of the system’s states according to IEC 61800-7-201
The function that are available in each state are given in the table below:
Function
FSA States
Not ready to switch on
Switch on disabled
Ready to switch on
Switched on
Operation enabled
Quick Stop active
Fault reaction active
Fault
Brake applied, if present
Yes
Yes
Yes
Yes
No
No
No
Yes
Drive function enabled
No
No
No
No
Yes
Yes
Yes
No
Configuration allowed
Yes
Yes
Yes
Yes
No
No
No
Yes
The devices of the motion control system are configured by the Service Data Objects (SDO) while the real-time process data is transferred by Process Data Objects (PDO).
PDO¶
PDO (Process data objects) are used in EtherCAT to cyclically transfer in real-time control (e.g. target velocity) and status (e.g. current velocity) variables. These variables are identified by their Index and Subindex in the object dictionary.
With the help of the PDO mapping, the objects from the object dictionary are assigned to either receive PDO (RxPDO, Master to Slave direction) or transmit PDO (TxPDO, Slave to Master direction).
PDO data is internally updated by the slave (servo drive) at a rate of up to 4kHz and can be accessed by the master (e.g. PLC, Motion Controller) at any desired frequency.
For more information about PDO refer to ETG1000.5 and ETG1000.6
PDO Configuration¶
SOMANET supports EtherCAT PDO Configuration for up to 20 objects on 4 maps. This allows to use up to 80 objects per direction.
PDO Config allows to change the mapping of the PDO mappings itself. Every PDO mappable object from the object dictionary can be added into a PDO mapping. It is possible to add up to 20 objects to one PDO mapping
SDO¶
SDO (Service Data Objects) are used to exchange parameters between master and slave devices in a EtherCAT Network. This isn’t done in real-time. They provide read and write access to all entries in the device object dictionary.
Typical examples are:
Configuring the Drive system
Reading error codes
For more information about SDO refer to ETG1000.5 and ETG1000.6.
Europe (HQ)
Synapticon GmbH
Daimlerstraße 26
71101 Schönaich
Germany
+49 7031 / 30 478 -0
sales@synapticon.com
Americas
Synapticon Inc.
303 Twin Dolphin Drive
Redwood City 94065
California
+1 (650) 632 4599
sales-us@synapticon.com
Asia
Synapticon Co. Ltd.
1588 Zhuguang Road
201700 Shanghai
China
+86 400 1600 229
sales-ap@synapticon.com
About
Synapticon is a technology company focusing on the transition band
between advanced software and electromechanics. The company provides a
comprehensive portfolio of motion control-related technology to robot
and machinery OEMs.
© 2022
Synapticon GmbH. All Rights Reserved.
Imprint.
Data Privacy.
Version: 4.20.15 | Built 2022-08-17
Feedback