朱 昊,朱晓春,谢潇晗
(南京工程学院 江苏省先进数控技术重点实验室,南京 211167)
车间作为制造业的基础单元,是企业进行生产制造的关键场所,如何提高车间的智能化以及信息化,一直是企业不断追求的目标。随着工业4.0和中国制造2025的相继提出,智能制造逐渐被公众所认知。制造业已经向智能化发展,车间的结构越来越复杂,信息流层次越来越多。随着车间控制与管理系统(Factory Control and Management System,FCMS)中设备数量以及种类的日益增多,FCMS系统中用来传输车间控制、故障报警、生产监视、能效管理的车间通信网络的带宽要求也不断增加。此外,随着制造业的不断发展,不断有新的信息流加入到FCMS中。以CAN、Modbus、Lonworks等总线为代表的传统自动化系统中,一个很大缺陷就是带宽受限,与此同时,以Ethernet为代表的办公通信网络不断发展,因此兼容设备层的以太网通信已成为一种必然趋势。目前,以西门子、三菱等大型制造企业普遍采取现场总线和工业以太网相兼容的通信系统[1-4]。为了适应这一趋势,PROFIBUS International制定了PROFINET协议。PROFINET协议兼容PROFIBUS总线技术,可以进行现场级、控制级的数据传输和通信。然而这种通信通常是非实时性的。这种数据传输并不能满足设备层的数据尤其是IRT数据的实时性要求。因此网络控制系统中的实时通信调度问题一直是学术界的研究重点之一[5-6]。为克服传统车间现场总线传输带宽窄,速率低,智能化程度不高的缺点,本文提出一种网络化智能车间通信架构,在此基础上实现新型的柔性化生产、任务重构、设计、及销售资源共享,对原有的单一总线车间进行产线升级,以提高其网络化、信息化能力。
在现代FCMS系统中,数据通常有NRT、RT、IRT三个部分[7-8]。PROFINETIRT通过分时复用的方式将传输周期分成两个通道:等时同步通道(IRT)和开放通道,如图1所示。图中斜线部分表示同步和IRT数据传输时段,网格部分表示RT数据传输的时段,竖线部分表示NRT数据传输时段。优先级顺序由高至低依次为IRT、RT、NRT。
图1 实时通信数据传输方式
PROFINET用作控制网络往往采取交换式以太网技术,并且车间通信是由多级网络构成。其兼容设备层总线层以及以太网层。本文以PROFINET为主要控制网络,设计了一个两主多从的分层通信网络架构,如图2所示。
图2 车间通信系统架构
图中S7-400为主站,其余为从站。其中IE/PB为代理服务器,用于兼容Profibus总线层。在图2的基础上,本文抽象出车间通信的拓扑结构,IOC1和IOC2为IO控制器,IOD1和IOD2为IO设备,IOD3和IOD4为IO模块,通过代理服务器接入主网,这里视为IO设备。整个网络的拓扑结构,如图3所示。
图3 车间通信网络拓扑结构
将车间传输的数据按照实时性要求的高低依次分为过程数据和等时同步数据。假设M1~M6为6条要传输的消息,根据源节点和目的节点,得出可能的数据链路如表1所示。
表1 消息及任务传输的组成
从表中可以看出,存在两个任务使用一条链路的情况(例如M4和M6存在共用链路(D2-C1),因此需要对任务进行相应的调度,保证在某一时刻只能有一个任务使用链路。在介绍调度策略之前,先引入三个约束因子,第i个消息任务开始时间si,第i个消息任务从发送端传输到接收端的传输时间ei,第i个消息任务优先级pi,si和ei组成了某一消息发送和接受的固定时间片,p决定了消息的优先级别。
传统的greedy算法总是在做出当前看来是最好的选择,不从整体最优上来做出考虑,它得出的是局部的最优解[12]。本文提出基于优先级排序的greedy算法,采用两个步骤进行,先将消息任务按优先级次序排序再使用贪婪算法对相同优先级中的消息任务求解最优路径。
本文采用传输时间最短作为最优路径的选择标准。即求解出的最优路径保证在单位时间内传输的消息数最大。以下介绍相关延时参数和调度模型。
(1)通信时延参数
1)发送延时(Tsent):设备从发送第一帧数据的第一个字节到发送完整个数据帧所需要的时间。
Tsent=L×bTD
(1)
公式(1)中,L表示一个数据帧的字节数,对于不同的数据帧是不同的,bTD表示单位比特所需的时间,对于同一网络bTD是一个定值。对于100Mbit/s的以太网取值在10ns,结合车间数据的特点,假设M1~M6的数据位数都为最小值46B,再加上帧头帧尾共64B。这样计算M1~M6的发送延时则为5120ns。
2)传输延时(Ttrans):数据在以太网介质中的传输时间,包括交换机延时Tswitch、线路延时Tline、接收延时Trec和裕量值δ,定义如公式(2)所示:
Ttrans=Tswitch+Tline+δ
(2)
式中,δ表示时间裕量,用来弥补有无交换机或者不同交换机带来的时延误差,Tswitch表示工业以太网交换机的存储转发延时,对于同一个交换机,视其为定值。本文使用西门子的SCALANCE X200交换机,它的存储转发延时则为3275ns。Tline表示线缆延时。
(2)调度模型
以表1中的消息和任务为例,本文从以下两个部分阐述调度模型:
1)数据优先级排序:根据表1的数据类型,过程数据为RT数据,等时同步数据为IRT数据,由此得出M1~M6的优先级为:
(p2,p5,p6)>(p3,p4)>(p1)
(3)
图4 任务调度有向图
本文采取线性拓扑结构作为工业以太网的基本结构。其具有结构简单、对实时性要求严苛等特性,非常适合本文的测试平台。如图5所示,本平台采用STM32F429作为主控制器,配备有 Siemens公司S7-400系列PLC一个,SCALANCE X200一台,数控面板828D一个(带Profinet模块),赫优讯公司的PROFINET 从站两个,PC机4台。由主控制器生成任务调度表,再根据调度表使用STEP7组态软件对西门子的相关设备进行配置。4台PC机中,在其中的3台上安装了网络发包软件HTT、网络封包接收软件Iperf,pc连到相应的Profinet设备和交换机端口上,用于模拟实际中的Profinet数据流。主PC安装有STEP7组态软件和Wireshark网络报文分析工具。实物图如图5所示。
图5 系统实物图
先根据具体的消息任务通过STM32F429生成任务调度表,再通PC机同步任务调度表,最后用STEP7配置西门子相关设备进行通信。通过PC机上的netANALYZER和Wireshark软件监控通信网络中的数据流量。系统运行从t0=0开始计时,把Wireshark抓取到最后一个数据帧所需的时间作为传输完成的时间。通过Wireshark分析可得到,传输完成M1~M6的消息时,所用时间为0.53ms,而若采用传统的西门子S7内部调度器传输时,所需要的时间为18.20ms。当任务数量不断的增加至20、30、50、70、100时,采用两种调度算法得到的任务完工时间如图6所示。通过任务交付时间曲线的变化趋势可以看出:在交换机一定的情况下,采用greedy算法所得到的任务完工时间比采用传统传统的西门子S7内部调度器调度所需的时间少。当任务为14时,采用greedy算法的任务交付时间要比使用传统的西门子S7内部调度器的任务交付时间快4.892ms;同时任务量越大,算法优势越明显。从实验数据可知,本算法可以有效提高系统传输时间,且当任务量越大时,采用greedy算法的优势越大。
图6 两种调度算法的任务交付时间对比
本文提出了一种基于实时工业以太网profinet的E-车间通信网络解决方案,设计了基于改进型greedy算法的通信调度策略,克服了传统西门子S7内部调度算法耗时较长的缺点。通过对通信延时进行建模得到了多任务的任务调度表。基于STM32以及Profinet设备构建了物理测试平台,对算法进行了验证。实验表明本系在智能车间通讯方面有着实际的意义。
DOI:10.1109/WFCS.2014.6837578.