以太网与CAN异构通信网络实时性的研究

2013-07-25 04:35乌建中蒋一斌蒋时春
中国工程机械学报 2013年1期
关键词:实时性以太网时延

乌建中,蒋一斌,蒋时春

(同济大学 机械与能源工程学院,上海 201804)

CAN总线是现今工业控制领域应用最广泛的现场总线之一,它有着优良的传输特性以及突出的可靠性,被誉为“自动化领域中的计算机局域网”[1].但是CAN属于“车间设备级”总线,难以保证超多节点同时传输时的大数据量传输实时性,且传输速度受传输距离的影响,无法直接与计算机连接.随着网络节点数目的增加,通信质量以及通信实时性将会受到巨大挑战.

而随着计算机网络技术的飞速发展,基于以太网及 TCP/IP(Transmission Control Protocol/Internet Protocol)协议栈的通信网络已广泛应用于全世界各个领域的网络信息管理及监控系统[2].以太网传输速率高,能与计算机直接连接而无需网关,并且传输距离长.

虽然以太网发展前景积极乐观,但是实际工业一线应用的网络具体情况各不相同,现场环境复杂甚至恶劣,在工业控制领域使用以太网来完全取代类似CAN的现场总线仍然是困难的,且从成本、开发难度和周期、适应性以及与以往设备的兼容性来讲,现场总线技术依然在工程一线有着巨大优势.

本文基于此,致力于这个问题的研究,为工业控制系统提供一种既满足大数据量通信实时性要求,也符合工程一线对通信网络可靠性、适应性要求的切实有效的解决方案.

1 传统通信网络的组成

常用的传统工业控制网络通常为三级网络:一级网络通常使用RS485网络,用以连接主控制器与计算机;二级CAN网络连接现场控制器与主控制器;三级CAN网络连接终端节点与现场控制器,如图1所示[3].实际上,主控制节点主要是实现一个CAN网络与RS485网络相连接的网关功能,用于对数据的存储转发.

图1 工业控制双CAN-RS485网络Fig.1 Industrial control network based on dual-CAN and RS485

工程项目中,一般CAN总线的传输距离都小于1 000m,并考虑现场施工环境影响,CAN网络的传输波特率大致可设定为100kbps[4].一级网络使用RS485,这是因为计算机大多有串口,即使较新的计算机没有串口,也可以通过USB转RS485接口方便地与计算机连接.受限于单片机本身以及RS485自身特性,百米内RS485的通信速率一般设置在115.2kbps以下[5].但是 RS485总线是半双工通信.这意味着随着网络数据流汇合最终汇集到服务器,数据量成倍增长,而网络带宽却没有大的提高;且三层网络都采用总线形式组网,当节点同时发送数据时,会无法避免地产生数据“碰撞”,将严重影响数据传输的实时性和确定性.

其次,不可忽视的一个环节是主控制器作为RS485与CAN网络的网关,采用共享RAM(Random Access Memory)的方式来进行数据的存储转发.而CPU(Central Processing Unit)读写共享RAM时必然会产生竞争,无可避免地产生延时.以上几点容易导致在主控制器这一点上成为通信网络中通信速率的瓶颈.

2 以太网与CAN异构通信网络设计

2.1 上层网络的设计

2.1.1 物理层的要求

物理层需要保证通信网络物理连接的可靠性.需充分考虑工业环境的适应性指标,如耐高温、防尘、防潮、接口强度、防压等[3].其次是与现场设备的物理兼容性,且要有稳定的电源.对于通信介质,普通双绞线的抗干扰能力和线缆强度无法适应工业现场的环境,需采用带有屏蔽层,护套材料阻燃、耐油、耐热、耐挤压性能良好,中心添加加强筋的线缆.

2.1.2 网络通信的实时性和确定性

以太网数据链路层采用带冲突检测的载波监听多路访问(CSMA/CD)机制作为其访问媒体控制协议,通信过程中容易发生“碰撞”,其在工业现场设备中应用的致命弱点和主要障碍之一就是其通信响应的不确定性[3].

但是有实验表明,以太网的碰撞概率与网络负载(通信量)有关,当负载小于5%时,碰撞概率几乎为0;当负载小于20%时,碰撞概率小于0.1%,可保证通信畅通;当负载大于40%时,碰撞概率将大于5%[6].而CAN网络的通信速率相对以太网非常小,因此可以避免上述瓶颈.

为了增强以太网通信的确定性和实时性,可以同时采用以下两种措施:一是使用交换机或路由器代替集线器,将网络中的冲突域进一步细化;二是优化网络的拓扑结构,采用星型拓扑结构来代替总线拓扑结构,避免数据之间的“碰撞”[3].

采用星型组网,使得各节点之间并没有直接相连,即使各节点同时发起数据传输,也不会出现碰撞.路由器设备在接收到各节点同时发送上来的数据之后,会对数据进行存储转发,所以在宏观上看,各节点是并行连接的.

星型网络中间节点选取路由器而非交换机,这是因为路由器工作于网络层,而交换机工作于数据链路层,路由器则可以自动分配IP地址,实现设备的即插即用,相对使用交换机,路由器要方便得多.

2.1.3 传输层上的UDP与TCP之争

TCP协议即传输控制协议,提供端到端的连接,它通过校验、超时重传和应答来保证数据的完整正确,实现可靠、面向连接的数据通信[2].这里需要注意,TCP是端对端的连接,不能够组播或者广播,同一份数据要传输到不同节点需要多次传输,这显然会加剧不必要的网络负载.

由于 UDP(User Datagram Protocol)比 TCP简单,它不使用繁琐的流量控制或错误恢复机制,只充当数据报的发送者和接收者,因此开销小、效率高,适合于低延迟的局域网,可以有效地降低网络负载.UDP实现的是不可靠、无连接的数据报服务[2].虽然对于广域网而言,在网络中传输无法保证数据到达,也不知道数据是否传输成功,但对于本文涉及的小型局域网,且数据传输过程中不会发生“碰撞”时,使用UDP传输数据,并不会影响网络通信的确定性.

2.1.4 单片机以太网接口的实现

众所周知,使用软件来实现TCP/IP协议栈将会使程序变得巨大,不适合在单片机上运用,其开发难度也可想而知.W5100是一款可实现没有操作系统的Internet连接的多功能的单片网络接口芯片,内部集成了全硬件的TCP/IP协议栈、以太网介质传输层(MAC)和物理层(PHY).本系统使用SPI(Serial Peripheral Interface)总线连接 W5100和单片机,SPI总线仅需3~4个IO口,且多数单片机内置SPI控制单元.SPI根据单片机的性能,速率一般可达数兆字节每秒(MBps).

2.2 底层网络的设计

底层的二级网络用于工程一线,所以使用CAN总线组网.CAN总线具有可靠性高和错误检测能力强等特点,被广泛应用于计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境.虽然相对于CAN总线而言,以太网的高传输速率以及与计算机能够直接连接是其突出优势.,但是,以太网及TCP/IP协议栈开发周期长,开发难度大,代码量大且复杂,以及成本较高,所以相比之下,CAN虽然没有很大的传输速率,但是更能够胜任工业一线的应用.

以太网与CAN的异构通信网络结构图如图2所示.

图2 以太网与CAN总线异构的通信网络Fig.2 Communication network based on ethernet and CAN

3 实验方案设计

为了验证以太网代替CAN总线在工控系统中的数据传输特性,本节基于上节通信系统设计了一组实验,采用确认机制法获得往返时延作为网络时延的测试方法.往返时延指源节点在时刻1将数据发往目的节点,目的节点在接收到数据之后马上将数据发往源节点,源节点在时刻2收到目的节点发回来数据的最后一个字节,则测试报文往返时延就是2个时刻之差[4].通过周期性的大批量的测试可以减小时延误差,从而客观地反映网络性能.

测试系统时延结构图如图3所示,计算机通过以太网连接到路由器,进而与现场控制器相连,再通过CAN连接智能终端控制器.整个控制网络上的往返时延t是由t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11组成.t1,t11表示以太网上的计算机与现场控制器之间收发数据包产生的时延;t2,t10表示数据在路由器中的存储转发交换时延;t3,t9表示以太网上现场控制器与智能节点之间收发数据包产生的时延;t4,t8表示现场控制器的数据处理时延;t5,t7表示现场控制器与智能终端控制器通过CAN收发数据包所产生的时延;t6表示智能终端控制器对数据包的数量时延.

图3 测试系统时延结构图Fig.3 Delay diagram of trst system

随着现代处理器处理速度的提高,基本可以忽略路由器和控制器的对数据包处理所产生的时延,而传输距离长短对通信的实时性影响也非常小,电信号在铜线介质中的传播速度约为23×104km·s-1,可以忽略不计.因此往返时延t可以客观地反应网络的传输时延特性.

基于以上讨论,本文设计了服务器端监控界面程序(如图4所示)、现场控制器程序和智能终端控制器程序.

现场控制器程序接收路由器转发过来的数据,传给下一级的各智能终端,并接收智能终端发来的数据,转发给路由器.

智能终端接收现场控制器传送的数据,简单处理后再发送给现场控制器.

图4 服务器端监控界面Fig.4 Server-side monitoring interface

4 实时性分析

4.1 传统通信网络的实时性分析

表1双CAN-485网络实时性测试条件Tab.1 Real-time test conditions of dual-CAN and RS485network

传统通信网络的时延概率分布图如图5所示[4],RS485总线通信的时延在400~650ms之间,RAM数据交换时延在250~350ms之间,而双CAN总线的时延在50~300ms间波动.总往返时延t约为1 150ms,也就是说操作人员在监控界面发出指令到现场控制器执行指令所需的响应时间在400~600ms之间[4].虽然在某些实际工程应用中,这个延时时间是可以接受的,但是这是在二级CAN网络仅有6个节点的时候测得的数据.为适应某些工程需要,二级节点数目可能会多达数十个,此时时延会继续增加,数据拥堵大大加剧,对工程的安全以及传输效率等方面的负面影响难以想象.

图5 双CAN-RS485网络时延概率分布图Fig.5 Delay probability of dual-CAN and RS485 network

4.2 以太网与CAN异构通信网络的实时性和可靠性分析

本节使用图2所示方案组网进行实验.表2所示为以太网与CAN总线异构通信网络上传输的数据量、收发等待时间以及发送次数.同样设定发送间隔时间为100ms.但是测试中加大了数据的传输率,测试分为30组,每组给6个现场控制器发送100B的数据.

表2 以太网与CAN异构通信网络实时性测试条件Tab.2 Real-time test conditions of ethernet and CAN network

由图6计算可知,以太网与CAN总线异构通信网络的总时延t为80~90ms,且传输过程中没有发生丢包.也就是说,由控制界面发出指令到到达执行机构的时间约为45ms,大大优于传统的双CAN-RS485网络.即使面对更大数据量,以太网与CAN总线异构通信网络也表现出优越的性能.

图6 以太网与CAN总线异构通信网络时延概率分布图Fig.6 Delay probability of ethernet and CAN network

5 结语

综上所述,以太网与CAN总线的异构通信网络相对传统的双CAN-RS485网络有如下几点优势:

(1)通信实时性大大提高.这得益于以太网本身传输速率高的特点,同时也减少了网络层数,减少了数据在网络中的传输“路途”,避免了共享内存消耗的时间,星型组网避免了数据“碰撞”.

(2)可以与计算机直接相连,不仅节约了成本,降低了开发量,也大大方便使用的便捷性.

(3)使得数据发布以及实现交换共享变得非常方便.

以太网与CAN总线两者各有相对优势的应用领域,可见以太网和CAN总线联合组网,取长补短,综合性能突出,是一种优越且切实可行的解决方案.而从长远的发展来看,以太网必将取代现场总线,成为工业控制通信网络系统的主流.

[1]张超,唐楚舒,冉隆强,等.浅谈CAN总线控制器RC6-9在铣刨机上的应用[J].机床与液压,2007,35:191-240.

ZHANG Chao,TANG Chushu,RAN Longqiang,et al.The application of CAN bus controller of RC6-9in milling machine[J].Machine Tool & Hydraulics,2007,35:191-240.

[2]谭思云,周前华,熊威,等.CAN总线与以太网的互连的研究[J].中国水运,2007,7(9):129-130.

TANG Siyun,ZHOU Qianhua,XIONG Wei,et al.The research of interconnection between CAN bus and ethernet[J].China Water Transport,2007,7(9):129-130.

[3]王保中,涂亚庆,张丽娟.工业以太网与CAN现场总线比较和应用方案分析[J].工业仪表与自动化装置,2006(5):10-34.

WANG Baozhong,TU Yaqiang,ZHANG Lijuan.A comparison between industrial ethernet and CAN bus along with an analysis of their application schemes[J].Industrial Instrmentation & Automation,2006(5):10-34.

[4]朱莲萍.液压提升多级网络监测控制研究与工程化应用[D].上海:同济大学,2012.

ZHU Lianping.The research and engineering application of multi-level network monitoring and control for hydraulic lifting system[D].Shanghai:Tongji University,2012.

[5]吴志红,朱元,王学宇.英飞凌16位单片机XC164CS的原理与基础应用[M].上海:同济大学出版社,2006.

WU Zhihong,ZHU Yuan,WANG Xueyu.The principles and basic applications of Infineon 16-bit microcontroller XC164CS[M].Shanghai:Tongji University Press,2006.

[6]许洪华,刘科.工业以太网实时通讯技术研究[J].可编程控制器与工厂自动化,2004(6):14-16.

XU Honghua,LIU Ke.The research of the real-time industrial ethernet communication technology[J].PLC &FA,2004(6):14-16.

猜你喜欢
实时性以太网时延
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
5G承载网部署满足uRLLC业务时延要求的研究
基于GCC-nearest时延估计的室内声源定位
航空电子AFDX与AVB传输实时性抗干扰对比
谈实时以太网EtherCAT技术在变电站自动化中的应用
计算机控制系统实时性的提高策略
可编程控制器的实时处理器的研究
简化的基于时延线性拟合的宽带测向算法
浅谈EPON与工业以太网在贵遵高速公路中的应用
万兆以太网在连徐高速公路通信系统改造中的应用