在介绍EtherCat主站与从站前,选介绍下协议。在上一博客,介绍了伺服驱动器与电机编码器之间的通信协议BiSS-C协议。下面再介绍一个新协议EtherCat,这个协议也是起源于德国的。

一、EtherCat协议

1、概述

ETG.1000 系列文件是在 EtherCAT Technology group 范围内对 EtherCAT Technology 详细说
明。它分为以下几个部分:
ETG.1000.1: 概述
ETG.1000.2: 物理层服务定义和协议规范
ETG.1000.3: 数据链路层服务定义
ETG.1000.4: 数据链路层协议规范
ETG.1000.5: 应用层服务定义
ETG.1000.6: 应用层协议规范

应用层结构如下:
— ETG.1000-5 的类型特定部分中的应用服务元素(ASE)描述“做什么”;
— ETG.1000-6 的类型特定部分中的应用关系(AR)描述“怎么做”。
数据链路层结构如下:
— ETG.1000-3 的类型特定部分中的数据链路服务和模型描述“做什么”;
— ETG.1000-5 的类型特定部分中的数据链路协议机以及媒体访问原理描述“怎么做”。
物理层的结构类似,但因其服务容易描述,因此这些服务定义与物理层协议规范出现在同一规范
(ETG.1000-2)中:
— 物理层服务和模型描述“做什么”;
— 物理层电磁和机械规范描述“怎么做”。

OSI和EtherCAT各层比较:

2、物理层服务和协议规范

通过 DLL – PHL 接口数据单元间的映射

注 1: DLL-PHL 接口是一种虚拟机间的虚拟服务接口;由于本规范不需要显露该接口, 在这里不需要物理信号线。
注 2: 这些服务用于 DLL 实体与其关联的 Phl 实体间的 PhIDU 交换。这样的传输是协同操作的 DLL 实体间事物处理的一
部分。本部分列出的服务是最低要求,这些服务能联合提供一种方法,通过该方法,协同操作的 DLL 实体能协调在共享的
通信媒体上的传输及数据交换。如有必要,也提供数据交换的同步及相关的操作。
注 3: 恰当的分层要求:对于(N)层提供(N)层服务的方法, (N+1)-层实体不涉及,并且(N)-服务接口没有过度限制。因而,
Ph-服务接口不要求 DLE 知道 PhE 的内部细节(如: 前同步码、后同步码和帧定界符信号模式,每波特的比特数),并且
不妨碍 PhE 使用适当的升级技术。
注 4: 根据工业实践,定义了许多不同的 DLL – PhL 接口。

系统管理 – PhL 接口:
该接口为 PhL 提供用于初始化和选择项的服务。
PhL 的目标之一是允许未来的变型,如无线,光纤,冗余通道(如电缆) ,不同的调制技术等。 一
种通常形式的系统管理– PhL 接口,它提供了实现这些变型所需的服务。
当设备直接连接到媒体时, 一套完整的管理服务才能被使用。 对于有源连接的设备(如有源耦合
器,中继器,无线/调制解调器电话,光电等) ,其中的一些服务对于有源耦合器是可以隐含的。 此
外,每个设备可以使用描述原语的一个子集。
注: 据工业实践,定义了许多不同的系统管理 – PhL 接口。

DCE 无关子层( DIS):
PhL 实体分为数据终端设备( DTE)组件和数据通信设备( DCE) 组件。 DTE 组件与 DLL 实体通
过接口相连,并形成了 DCE 无关子层( DIS)。 DIS 通过第五章中定义的 DL - Ph 接口交换接口数
据单元, 并提供了 DL – Ph 接口处每次的 PhIDU 和物理发送与接收所需的比特串之间的基本转
换。
该子层独立于所有的 PhL 变型,包括编码和/或调制、 速度、 电压/电流/光模式、 媒体等,所有这些
变型在指定数据通信设备( DCE) 下分组。
注: 根据工业实践,定义了许多不同的 DIS 实体。

DTE–DCE接口和MIS特定功能:
PhL 实体分为包含 DIS 的数据终端设备( DTE) 组件和包含 MDS 及较低子层的数据通信设备
( DCE) 组件。 DTE - DCE 接口连接这两个物理组件,且其自身包含在 MIS 中(见图 1) 。
注: 根据工业实践,定义了许多不同的 DTE – DCE 接口。
对于 DTE - DCE 接口或任何其他接口,不强制显露这些接口。
对于类型 3 同步传输模式、类型 1 和类型 7, DTE-DCE 接口是支持一组服务的功能性和电气接
口,不是机械接口。这些服务中的每个服务通过在接口上的已定义的信号交互序列实现。

媒体相关子层(MDS):
媒体相关子层( MDS)是数据通信设备( DCE)的一部分(见图 1)。第 8 章规定了 MDS 通过
DTE-DCE 接口交换信息,第 10 章规定 MDS 通过 MDS-MAU 接口传输已编码的 Ph-符号。 MDS
的功能包括:分别为发送和接收进行逻辑编码和解码、增加/删除前同步码和定界符以及定时和同步
功能。
注: 根据工业实践,定义了许多不同的 MDS 子层实体。

MDS-MAU接口:
媒体附属单元(MAU)是通信部件的一个可选独立部分, 可直接或通过无源器件连接到媒体( 见图
1) 。对于电信号来说, MAU 是为发送和接收信号提供了电平变换和波形整形的收发器。 MDSMAU 接口将 MAU 连接到 MDS。 服务被定义为实现该接口的物理信号,该接口的显露是可选的。
后续各条列出规定的 MDS-MAU 接口所需服务的最小集。管理服务见第6 章。
注: 根据工业实践,定义了许多不同的 MDS – MAU 接口

3、数据链路层服务定义 & 数据链路层协议规范

具体定义了数据链路层的功能特性,包括硬件的电气特性要求,和软件开发的数据结构定义、通信过程等,这里软件部分偏向低层硬件层面。
注:这两部分不具体说明,可以使用时参考协议手册。

4、应用层服务定义 & 应用层协议规范

具体定义了应用层的功能特性,主要是软件开发的数据结构定义、配置、通信过程等。
注:这两部分不具体说明,可以使用时参考协议手册。

5、总结

如果只是对EtherCat的应用,可以不必详细研究协议文档,在做软件开发时,使用得比较多的,也就是查看下第4和6章中数据结构定义部分。当然,如果是做深层研究的,比如开发EtherCat处理芯片、或模块时,需要深层研究。这有点类似USB协议的学习,平时开发单片机上的USB驱动也好,还是Android系统下的USB驱动也好,都只要理解USB的一些数据结构,和使用的逻辑,基本就可以了。

二、EtherCat主站

对于主站的开发平台,我个人认为,可以分为两个阵营:

  • 基于PC主机的主站
    也就是平时我们所用的电脑主机,当然这里最好使用工业级的主机最好,稳定性考虑。个人学习可以使用普通胡PC主机,甚至笔记本电脑都可以。
  • 基于SOC系统的主站
    这个又可分两种情况,一是可以跑嵌入式操作系统的,比如跑enbedded windows compact, linux(需要打实时补丁)等。另外,在一些低端,也可以使用单片机系统作为主站,比如ST的等等。

对于主站的选择上,也分两种,一种是工业级的,这是最好的主站了,最好的,当然就没有免费了。另一种是一些开源的主软件包,可以在不同的操作系统上使用它们,比如SOEM和IgH。这两个开源的EtherCat主站,前者相对简单一些,SOEM主站代码比较少,核心代码大约10000多行,但功能没有后者齐全。当然了,它们与工业级的主站还是有差别的,特点是安全性方面,这个只有工业级的才支持。对于工业级的,也有很多可选,我们听到比较多的就是Twincat3(现在版本是3,以前还有2),Twincat3是基于微软visual studio IDE开发工具的,所以需要先安装对应版本的visual studio。另外,还有一个工业级自动化控制系统codesys也有EtherCat主站功能。
下图是SOEM的代码文件:

以上,就是主站的一些软件包,然后我们可以开发一些针对具体使用场景的应用,这时其实,就是对相关API的使用的灵活使用了。常用的开发工具有C#、QT等等。

主站的开发,可能更多是偏向于软件,而且可以实现具体的不同功能,这主要看使用的场景,比如医疗、工业机器人、自动化等场景。所以,在软件上可以做出不同的花样的也是很多的。这是相对于从站而言的。

三、EtherCat从站

从站的开发,就显得比较单一了,有点类似单片机开发,自然,也要选择EtherCat从站的控制芯片,常用的EtherCAT salve从站控制芯片 TMC8462、8461、8460;Microchip的LAN9252;台湾亚信AX58100等。这只是从站的控制芯片,另外,还需要一个MCU,也就是单片机,这个选择的就多了,比如ST的F407等等。

一般选好对应的从站控制芯片厂家后,厂家都会提供相关的从站开发源码的,所以这部分也不需要太多担心,只要对协议有一点了解,再会单片机开发,基本都可以胜任这方面的开发的。

EtherCat从站配置文件,这个配置内容是要写到EEPROM中保存的,当从站上电后,会读取出来初始化相关的寄存器。同时这个配置文件还给上面的主站识别使用。

EtherCat主站与从站简介相关推荐

  1. ethercat主站给从站分配多个地址_Profinet 与 EtherCAT 网关使用方法

    一. 介绍: 所谓的网关通俗来讲就是一种"协议转换器",它能够将一种通信协议转换到另一种通信协议,满足实际应用中对通信的需求,从而实现投资保护的作用.Hongke Gateway ...

  2. STM32H743 SOEM EtherCAT基于STM32H743芯片和SOEM的EtherCAT主站源码

    STM32H743 SOEM EtherCAT基于STM32H743芯片和SOEM的EtherCAT主站源码 提供配套CUBE工程 STM32H743 SOEM EtherCAT基于STM32H743 ...

  3. 基于zynq的千兆网udp项目_基于Zynq平台的EtherCAT主站方案实现

    作者:陈秋苑 谢晓锋 陈海焕 广州虹科电子科技有限公司 摘 要:EtherCAT 是开放的实时以太网通讯协议,由德国倍福自动化有限公司研发.EtherCAT 具有高性能.低成本.容易使用等特点,目前在 ...

  4. EtherCAT主站SOEM函数详解---- ecx_readstate、ecx_writestate

    EtherCAT主站SOEM函数详解----状态读取函数 ecx_readstate ecx_writestate 在控制驱动器等从站中,经常需要只知道从站的状态,在SOEM开发的主站中,如何读取从站 ...

  5. EtherCAT主站SOEM在Ubuntu上的移植

    EtherCAT主站SOEM在Ubuntu上的移植 原文:https://blog.csdn.net/ethercat_i7/article/details/52794069?utm_medium=d ...

  6. 米尔基于ARM架构核心板的国产化EtherCAT主站控制器解决方案

    EtherCAT是由德国BECKHOFF自动化公司于2003年提出的实时工业以太网技术.它具有高速和高数据有效率的特点,支持多种设备连接拓扑结构.其从站节点使用专用的控制芯片,主站使用标准的以太网控制 ...

  7. 【LinuxCNC开发序列教程二】Ethercat主站终端调试

    老朋友,今天的目标是在终端上调试Ethercat主站.希望对大家有点帮助,有不足之处相互讨教,谢谢. 硬件如下: CPU:Atom E3845 网卡驱动:R8169 系统:Ubuntu 12.04 L ...

  8. igh ethercat主站文档(中文翻译上)

    此翻译主要是用翻译软件翻译,部分自己修改,若有不当之处,可以下方评论或私聊我提醒修改,若转载,请注明出处 本文是1-4章节. 1 The IgH EtherCAT Master 本章介绍有关Ether ...

  9. igh ethercat主站文档(中文翻译下)

    此翻译主要是用翻译软件翻译,部分自己修改,若有不当之处,可以下方评论或私聊我提醒修改,若转载,请注明出处 这篇是5-9章内容,前四章链接 5状态机 EtherCAT主站的许多部分都实现为有限状态机(F ...

最新文章

  1. linux下常用FTP命令 1 连接ftp服务器
  2. Python for循环本质
  3. kernel panic 和 kernel Oops
  4. 人工智能还能登上微博热搜?热搜关键词你得看看!
  5. BZOJ 2337 XOR和路径(概率DP)
  6. 处理Windows 7爆音杂音和网游ping值过高
  7. 【WH】MVC数据分页扩展类
  8. html制作调色板,JS实现系统调色板
  9. python中关于时间和日期函数的常用计算总结
  10. 计算机密码学论文,密码学论文写作范例论文
  11. 中国网:防火墙之父发声
  12. c语言数字的写法田字格,数字100田字格怎么写
  13. 效率值计算机公式,工作效率提升怎么计算(学会十个Excel公式)
  14. EndNote Online与word相关联
  15. 2020/09/20 React中获取target(报错信息Warning: This synthetic event is reused for performance reasons.)
  16. python数据拟合固定参数_固定某些参数的双峰高斯分布拟合
  17. R语言使用glmnet包拟合lasso-cox回归模型(生存时间和结果标签)、lasso-cox模型进行特征筛选、plot函数可视化cv.glmnet模型获得的最佳lambda曲线位置及其1个标准差线
  18. i春秋新春战疫公益赛复现
  19. MySQL ERROR 1709 (HY000)
  20. 二手机械硬盘+硬盘盒组成移动机械硬盘【小记】

热门文章

  1. 英国内政部(Home Office)间谍机构(spy powers)假装它是Ofcom咨询中的一名私人公民1514378369635...
  2. 【pycharm】英文输入法变成全角字符无法输入
  3. Postman发送带cookie的http请求
  4. P1978 集合 (set)
  5. 京东2023年Q1财报预测:短期增速承压,收入和净利润预测被下调
  6. python研究背景与意义_研究背景与意义
  7. HTML5-CSS3-JavaScript(1)
  8. 利用人性弱电的互联网服务
  9. 真正中文攻略之 SAKURA~雪月華~ 花鳥風月プレミアムエディション 汉化、攻略...
  10. ns-3 教程 —— 概念概述(第一个 ns-3 程序)