以太网实现实时…真的

当以太网在良好条件下单独运行时,其启动速度很快,响应时间为微秒级。然而,基于以太网的网络通常开始陷入困境,到几毫秒或更长时间,因为许多相同的原因,使所有通信,自动化和/或控制网络的容量紧张。

吉姆·蒙塔古 二零零三年十二月一日
一目了然
  • 实时需求

  • 同步意味着速度

  • 硬件帮助软件

当以太网在良好条件下单独运行时,其启动速度很快,响应时间为微秒级。然而,基于以太网的网络通常开始陷入困境,到几毫秒或更长时间,因为许多相同的原因,使所有通信,自动化和/或控制网络的容量紧张。

设备和I/O级的数据采集和传输问题;效率低下的交换,太多的设备,以及网络本身不协调的流量;上层通信层(如TCP和UDP)的错误检查和转换障碍会从基于以太网的网络中窃取宝贵的时间。这些延迟可能会阻止以太网将其众所周知的优势带到离散、运动控制和其他高速应用中。

“任何网络都有开销,这是捕获在网络上移动消息有效载荷所需的比特所需要的序文和postamble。缺点是以太网的开销比大多数协议都高,特别是在添加TCP/IP堆栈时。积极的一面是以太网传输数据的速度比其他协议快得多,”CMC Associates (Acton, MA)的首席执行官Dick Caro说。“例如,一个专有网络可能有一个16位地址,而以太网有一个48位地址,但它移动得太快了,这通常不会对用户造成影响。即便如此,你的连接速度也很少能超过宣称的一半,这意味着如果一台设备的连接速度是100mbps,那么它的总有效载荷速度将接近50mbps。”

幸运的是,有几种有用的方法可以加速与以太网相关的组件和软件,并且正在开发更多的方法。一些使用创新技术来简化网络通信,而另一些则只是寻求使传输和接收更可靠。

IEEE 1588的同步

最有前途的实时以太网解决方案之一是IEEE 1588标准精确时间协议(PTP),它定义了一种方法,用于在基于标准以太网的网络或使用商业可用技术的其他分布式应用程序上,对传感器执行器和其他终端设备中的时钟进行亚微秒同步。最初由安捷伦实验室(Palo Alto, CA)的John Eidson开发,用于分布式仪器和控制任务,1588于2002年11月获得电气和电子工程师协会(IEEE)的批准。

Hirschmann Electronics的工业以太网产品开发负责人Dirk Mohl表示,IEEE 1588的基本功能是使网络上最精确的时钟与所有其他时钟同步。在他最近的论文“IEEE 1588 -精确时间同步作为自动化实时应用的基础”中,他补充说,Hirschmann在其Mice模块化以太网交换机上测试了IEEE 1588增强的插件模块,并发现其同步精度在

因此,一些制造商一直致力于基于IEEE 1588的解决方案。其中包括罗克韦尔自动化和开放设备网络供应商协会(ODVA),他们一直致力于将1588与他们的通用工业协议(CIP)和以太网/IP协议集成在一个名为CIP Sync的项目中。在最近的一篇论文“IEEE 1588在分布式运动控制系统中的应用”中,三位罗克韦尔工程师报告说,他们已经将1588应用于分布式运动控制系统原型,其中包括三个运动控制器,每个控制器通过SERCOS适配器卡连接到一个SERCOS驱动器上。每个驱动器被称为一个运动轴,但两个被指定为从轴,一个被指定为主轴。

由于主控制器定期向每个从控制器发送位置参考,因此每个从轴以一对一的比例与主轴联动。所有节点上的时钟通过以太网使用1588进行同步,1588运行在50mhz的PowerPC CPU上。基本的运动操作要求在每个节点上运行的运动任务彼此同步。节点之间的事务基于同步的定期更新周期。这适用于控制器到驱动器事务和控制器到控制器事务(参见第35页的图表)。为了同步系统中的所有运动,运动任务和位置更新周期被同步到1588时钟。

罗克韦尔自动化控制与信息集团(ACIG)首席工程师Anatoly Moldovansky表示:“由于1588允许分布式时间同步,我们可以在多个节点之间调度分布式控制执行,作为时间的函数。”他补充说,原型机在1588年通过以太网进行分布式运动的应用证明是可靠和准确的。硬件辅助电路在主从时钟之间提供%100纳秒的抖动精度。

ACIG的NetLinx营销经理Doug McEldowney说:“在基于IEEE 1588的网络上,设备可以调度操作,而不是在数据进入时做出反应,这使得通信和控制效率更高,带宽更少,抖动更少。”

加速应用程序

在另一个实时以太网项目中,Beckoff Automation最近开发了其rteethernet概念,这是其TwinCat软件使用7微秒电报与标准以太网控制卡通信的一种方式。虽然它们可以高达1,500字节,但最小电报包含46字节,这足以表示368个I/O点的状态,并且通常足以用于一个I/O块。为了将这些实时数据与其他网络流量分开,TwinCat的I/O系统根据实时相关性过滤传入的以太网帧,并在缓冲区中存储对时间不太敏感的TCP消息。rteethernet的策略是避免TCP/IP和UDP/IP开销,并直接使用网卡的MAC-ID硬件地址路由到设备。

除了确保速度外,rteethernet还可以帮助增加现有网络的灵活性。例如,为了将其生产交联聚乙烯(PEX)管的生产线的控制系统从plc升级到基于pc的自动化,欧博诺Wirsbo(明尼苏达州苹果谷)最近选择了Beckoff基于rtethernet的BK9000以太网总线耦合器。该公司使用倍福的C3640 PC作为主控制器,运行欧博诺开发的Visual Basic软件代码。该代码通过施耐德电气的Modbus TCP以太网协议和bk9000连接到各种I/O信号,bk9000形成一个分布式以太网I/O接口,通过以太网将信号传输到C3640。

欧博诺的电气控制工程师卢瑟·肯普(Luther Kemp)说,他的公司需要一个通用的、标准化的网络来控制它的许多机械类型。“这样,如果出现问题,我们就可以灵活地更换组件,”肯普说。“我们可以完全按照我们想要的方式构建I/O模块。基于pc的以太网系统,如倍福的,提供了无限的编程可能性。它使我们有机会编写控制机器的程序,创建自定义用户界面屏幕,并收集实时数据,如温度和处理速率。”

类似地,系统集成商Paine Machine Tool (Delta, bc, Canada)最近升级了16台数控机床,采用了包含Quatech的Thin Q以太网串行设备服务器(ESDS)的DNC解决方案。这些服务器将串行数据转换为以太网数据;在缓冲区中积累串行数据;并以数据包的形式发送,以减少以太网的流量。由于CNC机器通常是从连接的PC或局域网“滴注”命令,这些数据包有时会引入潜在的破坏性延迟。

ThinQ通过软件可选的超低延迟设置解决了这一问题,该设置允许Paine的CNC机器在接收到以太网数据后一点一点地发送数据。Quatech报告称,该设置的SDS功能测试值最小为2.16毫秒,最大为71毫秒,平均为2.5毫秒。Quatech的产品营销经理大卫•约翰逊表示:“这确实有助于减少网络流量。”“特别是当一个应用程序有多个设备时,重要的是不要使最重要的数据成为瓶颈。”

硬件效率=速度

Phoenix Contact的产品营销经理Larry Komarek补充说,通过配置允许多播的网络,可以提高实时以太网的性能。与每次只与一台设备进行点对点的单播通信不同,多播使一组预先确定的设备在线,并同时向它们广播。这也是vlan (virtual local area network)使用的方法,它可以帮助提高网络上的数据吞吐量。

McEldowney建议到达I/O级别的网络使用全双工通信实现IGMP窥探功能来过滤组播数据。他还建议使用端口镜像,这包括将通信镜像到交换机上的第二个端口,以用于诊断目的。麦克尔唐尼说:“这就像通过开关窃听通信,以反映正在发生的事情。”“当你想通过以太网进行控制时,它很有用,但你可能有更多的安全要求。”

某些以太网交换机可能实现的其他效率包括使用vlan来隔离交换机内的网络流量。这可以让一个12端口的交换机像两个独立的交换机一样工作。“然而,你还必须确保你的交换机能够跟上网络和连接到它的设备的有线速度,”他补充说。

CMC Associates的Caro补充说,仅仅使用以太网交换机就可以提高实时性能,因为它们可以用硬件完成现场总线协议必须用逻辑能力完成的工作。“当数据在以太网交换机中从A点移动到B点时,它会学习源地址和目的地址,”他说。“如果你试图用现场总线做到这一点,它将非常昂贵,甚至更多,因为以太网硬件更快,更便宜。