『7x24小时有问必答』
主站怎么跟从站交互、交互什么、以及报文到底长什么样。
一、先建立一个核心认知
EtherCAT  和传统主站发请求从站回应的总线完全不一样。
EtherCAT  的本质是:主站发一帧大报文,从站边收边改,最后原路返回
也就是说:
没有一问一答  
没有单独设备响应帧  
一帧搞定所有从站数据交换  
二、EtherCAT通信的三种核心交互内容
主站和从站交互的信息主要分三类:
1PDO(过程数据)——实时控制数据(核心)
这是最重要的:
主站  →  从站(输出)
伺服控制字  
目标位置  
目标速度  
输出IO状态  
使能信号  
从站  →  主站(输入)
实际位置  
实际速度  
电流  
状态字  
IO输入状态  
特点:
实时周期通信(1ms / 500us / 250us)  
不需要确认  
固定映射(ESI文件定义)  
2SDO(参数对象)——配置/参数访问
用于非实时数据:
伺服参数(增益、限位)  
电机参数  
网络配置  
模式切换  
设备标定  
特点:
一问一答  
Mailbox机制  
不参与实时周期  
类似读写寄存器”  
3、状态/同步信息(DC/SM
用于系统协调:
SM同步事件  
DC时间戳同步  
Sync0/Sync1触发  
网络状态(OP / SAFEOP / INIT)  
用于:
多轴同步  
飞剪/电子凸轮  
时间对齐  
三、EtherCAT主站通信完整流程
一个周期内发生的事情如下:
Step 1:主站发出一帧EtherCAT  数据帧
主站只发  一帧  Ethernet frame
里面包含:
多个从站的数据区(逻辑切片)  
每个从站对应一个数据窗口”    
Step 2:报文进入第1个从站
从站做三件事:
读取属于自己的输出数据(Master→Slave
例如:
目标位置  
控制字  
写入输入数据(Slave→Master
例如:
实际位置  
状态字  
报文继续往下转发
注意:从站不会拆包,只是在流过的报文中修改数据
Step 3:报文依次经过所有从站
链式结构:Master → Slave1 → Slave2 → Slave3 → ... →  回到  Master
Step 4:回到主站(完成一个周期)
主站收到:
所有从站更新后的输入数据  
一个完整循环后的数据帧”  
四、EtherCAT数据帧结构
EtherCAT本质是  标准Ethernet Frame + EtherCAT Data
1.  外层:标准以太网帧
| Ethernet Header || EtherType = 0x88A4 |

| EtherCAT Datagram |

| FCS |
2. EtherCAT Datagram(核心)
一个帧里面可以有多个  Datagram
+---------------------+| Datagram Header  |

+---------------------+

| Command (LRW/ARMW/BRD/WR/...) |

| Index                       |

| Address                    |

| Length                      |

| Interrupt / WKC       |

+---------------------+

| Data Area (PDO)        |

+---------------------+
<b>五、关键结构:PDO是怎么塞进去的?
EtherCAT的关键不是报文发给谁,而是:PDO被映射到报文的某个偏移位置
示例(3个从站PDO映射)
Frame Data Area:------------------------------------------------

| Slave1 Output | Slave2 Output | Slave3 Output |

| Slave1 Input  | Slave2 Input    | Slave3 Input    |

------------------------------------------------
主站只做:
定义  offset(偏移)  
定义  length(长度)  
定义  mappingESI文件决定)
<b>六、EtherCAT常见报文类型
EtherCAT datagram command类型:
命令
作用
LRW
Logical Read Write(最常用PDO循环)
LWR
Logical Write
LRD
Logical Read
APRD
读单个从站
APWR
写单个从站
FPRD/FPRW
物理地址访问
PDO循环几乎都是  LRW
七、SDO通信数据帧(Mailbox机制)
SDO不走PDO帧,而是:
Mailbox结构:
| Mailbox Header || CoE Protocol  |

| SDO Command       |

| Index/SubIndex |

| Data                 |
特点:
主站发请求  
从站必须回复  
典型用于参数读写  
<b>八、DC同步信息是怎么传的?
DC不是单独报文,而是:从站内部时钟  +  主站校准机制
关键机制:
Sync0(周期触发)  
Sync1(事件触发)  
时间偏移补偿  
延迟测量(propagation delay)  
九、一个完整周期长什么样
假设周期  1ms
  1ms
1.主站发送  1  EtherCAT Frame  
2.帧经过所有从站  
3.每个从站:  
更新输入PDO  
读取输出PDO  
4.主站收到完整输入数据  
5.运动控制算法更新  
6.下一周期重复  
十、工程总结
EtherCAT本质是:一帧报文  +  线性扫描  +  过程数据映射  +  边收边写
不是传统意义的:
请求-响应
设备单独通信
点对点交互
而是:
流式数据总线
全网共享帧
硬件级数据切片
纳秒级同步体系(DC

---

往期热门文章:
</b></b></b>

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码