资讯 > 正文

基于芯片的EtherCAT如何优化现场通信?

发布时间:2023-02-02 来源:控制工程网

  EtherCAT从站控制器(ESC)是EtherCAT的一个核心概念,它是EtherCAT现场设备中基于芯片的部分。芯片可以是专用集成电路(ASIC)、现场可编程门阵列(FPGA)、微处理器甚至微控制器。ESC可以处理周期和非周期数据的读取和写入,以及灵活现场总线所需的其它后台任务。
  虽然EtherCAT网络控制器不需要特殊硬件,但在现场总线设备层使用ESC芯片可以使应用受益。在EtherCAT的现场设备中使用ASIC,允许在芯片中进行处理。因此,网络性能独立于设备中微控制器的性能及其运行复杂软件堆栈的能力。实时协议处理嵌入到芯片中,现场设备不必管理典型的以太网连接。
  通过在ESC中实现EtherCAT功能,EtherCAT系统可以每30微妙更新1000个分布式输入/输出(I/O)点。在ESC中定义“实时数据交换”,只需要配置设备,即可使用协议和特定芯片中内置的固有机制。
  ESC不需要IP堆栈
  在典型的基于IP的以太网中,现场总线具有现场层芯片接口并不罕见。这是CANopen、DeviceNet、SERCOS等协议的历史基础。以EtherCAT为例,它使现场设备不必提供足够的处理能力来处理基于IP的以太网通信——不仅节省了处理器成本、占用空间、热量和功率,还降低了使用IP堆栈的复杂性。
  EtherCAT使用以太网的物理机制,而无需在现场实现完整的七层开放系统互连(OSI)模型以太网堆栈,这简化了设备制造商的开发和EtherCAT的应用。然而,EtherCAT不是基于IP的协议。EtherCAT是一种使用标准IEEE 802.3以太网的现场总线,无需对完整的以太网实施进行复杂的配置和供电。
  避免复杂性
  基本上所有EtherCAT芯片供应商提供的ESC都大体相同。因此,与其它基于以太网的技术相比,设备开发人员和系统用户将受益于更少的编程。EtherCAT现场设备的功能是内置的,它只需要配置即可。由于在循环周期中不涉及具有未知时序行为的软件堆栈,因此系统性能是可预测的。
  因为ESC提供了一个通用接口,这样开发人员和用户就可以以类似的方式利用EtherCAT设备。由于相同的诊断技术可用于所有EtherCAT设备,因此这也简化了诊断。由于EtherCAT只有一个版本,因此在现场使用设备和网络配置时,不会随时间而发生任何变化。EtherCAT协议和ESC的运行还允许简单地添加新设备,而无需担心对现有网络的不利影响。

图1:EtherCAT从站控制器有多种选择,还有更多选项正在开发中。图片来源:EtherCAT Technology Group

  EtherCAT从站设备描述文件
  EtherCAT设备有一个.xml文件,类似于CANopen、DeviceNet和EtherNet/IP中的EDS文件以及Profibus和Profinet中的GSD文件。这个EtherCAT从站设备描述(ESI)文件,包含配置和使用设备所需的数据。每个EtherCAT设备都附带一个ESI文件,该文件描述了设备的特性和功能。这意味着用户可以实施EtherCAT设备,而无需深入了解设备或以太网的内部工作。
  实施EtherCAT现场设备非常简单,无需处理复杂的机制。重点是控制机器或进程,而不是配置和调整网络。ESI文件定义了ESC如何使用本地I/O和更高级别处理器进行操作。现场设备的配置可通过ESI文件和ESC轻松实现。
  自动地址分配
  ESC还可以实现智能“自动增量”指令,以自动为EtherCAT分配地址。利用这一功能,在启动时控制器会识别设备和它们在网络中的物理位置,将实际的网络配置与预期的网络配置进行比较,并分配地址。这一切都发生在后台,意味着不需要手动设置每个节点的地址,也不需要像在其它网络中那样逐个“设置”每个节点。使用EtherCAT,用户无需处理MAC或IP地址、配置子网掩码或任何其它与ESC功能相关的设置。
  实时处理和减少抖动
  EtherCAT以一种独特而高效的方式使用标准、未经修改的以太网帧,普通以太网技术的限制。该方法也适用于所有设备实现,包括3000多家EtherCAT设备制造商。
  通过ESC和EtherCAT技术,无需发送和接收以太网数据的单个帧,对数据进行解码,然后将过程数据复制到不同的设备。相反,在帧通过设备时,EtherCAT现场设备会读取数据。现场设备的输出数据,也会在帧通过ESC时写入。
  由于现场设备通过其在全局过程映像中的位置找到数据,因此帧不需要携带设备地址。这就意味着,在框架中没有“每个节点”的开销,并且过程数据通信变得非常有效。此外,同一帧,甚至帧中的同一区域,可同时用于输入和输出数据,这实际上使带宽加倍。ESC读取/写入数据只需要几纳秒。
  通过ESC,EtherCAT使用标准的以太网全双工技术,并支持不同的拓扑结构,包括总线型、树型、分支型和星型号。其物理层为100BaseTX双绞线、100BASE-FX光纤或低压差分信号(LVDS)。
  每100微妙可更新100个具有8字节I/O数据的伺服系统。在此速率下,系统可以读取位置和状态,并发送新的指令和控制数据。分布式时钟技术负责精确同步,并将抖动(对驱动器而言是循环同步误差)降低到低于1微妙的值。

图2: EtherCAT和ESC有一个简单的ISO/OSI堆栈。

  链路丢失检测
  在另一方面,ESC以一种有效的方式使用以太网固有机制。以太网通信基于载波信号(即链路),帧中的帧校验序列(FCS)是循环冗余校验(CRC),可以检测传输错误。EtherCAT和ESC通过比标准以太网芯片更强的功能,以非常有效的方式使用它。ESC的每个端口都会统计链路丢失和FCS错误。这允许用户确定和精确定位事件,即使是间歇性的。
  间歇性错误一直是任何现场总线的难题。因为ESC可以统计每个端口上出现的每个问题,这有助于确定问题。无需在必要时猜测或无意识切换组件。到目前为止,大多数问题都是物理问题,例如布线、连接器或可能被拉伸、拉扯并经常被不当处理。
  由于所有ESC使用相同的机制,因此不必担心由哪个供应商提供现场设备。它们都以相同的方式运行;不需要特殊的软件或故障排除工具。他们必须了解的只有EtherCAT和ESC是如何运行的,就能确定问题的根源并解决问题。相同的工具和技术可用于所有设备。
  从站堆栈代码的实现
  从站堆栈代码(SSC)实现在ESC之上的应用层,对网络性能没有影响。ESC对设备处理器的处理能力要求很低。SSC具有免版税许可证,并提供ASCI C处理:设备状态、循环(PDO)访问、非循环(SDO)访问和中断。这简化了EtherCAT设备的开发。由于这些原因,ESC和SSC在现场总线通信领域中提供了一种独特的工具组合。(作者:Robert B.Trask, ETG)

标签:EtherCAT,控制器,堆栈,现场通信

相关文章