2. 大连理工大学 控制科学与工程学院, 大连 116024
为了找到评估和改进EPA工业以太网通信实时性的方法,对EPA非周期报文的通信实时性能进行了研究. 通过分析EPA网络的通信调度机制和延迟产生机理,根据报文进队时机的不同,建立了4种非周期报文进队模式,并且分别对各个模式的调度特征、通信延迟和相互影响规律进行了分析,提出了非周期报文通信实时性理论模型. 通过理论分析和实例验证,发现3个制约非周期报文通信实时性的主要因素:①非周期报文传输的优先级反转;②通信调度机制的开销;③放弃发送权竞争后进队报文的处理方式.
2. School of Control Science and Engineering, Dalian University of Technology, Dalian 116024, China
To propose the method of evaluating and improving the real-time performance of Ethernet for plant automation (EPA) industrial ethernet, the real-time performance of EPA nonperiodic data transmission was studied. By analyzing EPA communication scheduling mechanism and its time delay generating regularity, nonperiodic messages were categorized as some modes according to their entering-queue time. The scheduling characteristics, communication delay of each mode and their interacting relations were studied, and the models of real-time performance of EPA system were established. Analyses and an instance verification, 3 key factors limiting the real-time performance of EPA nonperiodic messages transmission were found: ① priority inversion during the messages transmission; ② communication overhead of deterministic scheduling mechanism; ③ the processing method of nonperiodic messages that enter queue after the device gives up its competition right of transferring nonperiodic messages.
EPA工业以太网作为一种工业控制网络,提高系统的通信实时性是其研究的重要方向[1]. Lu等[2]研究了EPA通信对控制性能的影响. Liu等[3]揭示了制约EPA周期数据通信实时性的因素. 目前,对于EPA的研究还主要集中于周期数据方面,而为了找到改进EPA非周期数据通信实时性的方法,对其研究尤为必要.
笔者从理论角度研究了EPA非周期报文的通信实时性,根据报文的进队时机把非周期报文分成4个模式进行分析,找到了通信实时性的制约因素. 为了便于讨论,作如下规定:非周期数据发送声明报文和非周期数据发送结束声明报文分别由N报文和E报文表示,它们统称为调度(S, scheduling)报文,其承载的优先级称为调度优先级;设备最新发送的调度报文称为当前调度(CS, current scheduling)报文,其承载的优先级称为当前调度优先级(CP, current priority);N报文承载的优先级称为首发调度优先级(FP, first priority);承载优先级为0xFF的调度报文称为弃权报文;周期报文和非周期报文分别由P报文和NP报文表示,它们的发送时间偏离量分别由Sp和Sn表示.
1 非周期报文等待延迟按照信息的传输过程,EPA设备间的通信延迟d可分为4部分:产生延迟d1、等待延迟d2、传输延迟d3和接收延迟d4,即d=d1+d2+d3+d4. 其中产生延迟d1、传输延迟d3和接收延迟d4主要由网络设备的软硬件性能决定,具有可预测性[3]. 通信延迟中影响较大的是报文在链路层等待发送的等待延迟d2,该延迟主要由链路层调度机制和网络负荷决定. EPA通过确定性调度策略来控制其报文发送,能有效避免普通以太网的报文冲突. 分析EPA确定性调度策略,研究等待延迟的产生机理和变化规律,是研究EPA通信实时性的关键环节.
EPA系统中,一个报文的等待延迟d2等于从它进入发送队列到得到发送的时间. 由于P报文和NP报文都在规定的时间片内发送,所以等待延迟由等待时间片到达的待片延迟D和等待其他报文发送的待发延迟F2部分组成,即d2=D+F. NP报文的待发延迟和待片延迟,分别记为Fn和Dn.
EPA系统中,由于NP报文的进队时间具有较强的随机性,因此根据报文的进队时间将其分为4个模式来分别进行讨论,如图 1所示. 图中Tr为进队时间,T为宏周期,Ti为非周期数据发送开始时间,Td为N报文的开始发送时间,Te为弃权报文的开始发送时间. Tr1、Tr2、Tr3、Tr4分别为报文的4个进队时间,代表4个进队模式:①设备弃权报文开始发送之后的时间段;②非周期报文发送阶段开始到弃权报文发送开始的时间段;③设备N报文发送开始到非周期报文发送阶段开始的时间段;④设备N报文发送开始之前的时间段.
由EPA确定性调度策略可知,4个模式的NP报文,其待发延迟Fn和待片延迟Dn具有不同的特征. 假定在一个宏周期中,微网段中有n个设备参加非周期报文发送权竞争,它们按IP地址排序为1~n,设备i中优先级为k的4个模式的NP报文数目分别为Cki、Xki、Yki、Zki,设备i的首发调度优先级为li以下分别对4个模式进行分析.
2 模式1模式1指的是NP报文在设备弃权报文开始发送之后的时间段进队. 其进队特征如图 2所示,图中Tr为报文的进队时间,Ts为报文的发送开始时间,T1~T3都为宏周期的开始时间,其他变量意义与图 1相同. 可见,该模式满足条件Tr≥Te. 若弃权报文为N报文,则有Te=Td.
由于模式1报文进队时,设备已放弃竞争发送权,因此报文将延迟到下一宏周期发送. 可见,该模式报文不影响本宏周期报文的发送,却会参与下一宏周期发送权的竞争. 模式4报文中就包括这些报文,其待发延迟Fn将在模式4的分析中讨论. 由图 2可见,其待片延迟Dn等于报文从进队到下一宏周期非周期报文发送阶段开始的时间段,则有
(1) |
模式1的报文由于必须延迟到下一宏周期发送,所以会造成较大的待片延迟,而除了模式1报文之外,其他模式报文在不发生时间有效性作用的前提下,都会在本宏周期得到发送.
3 模式2模式2指的是NP报文在非周期报文发送阶段开始到弃权报文发送开始的时间段进队. 其进队特征如图 3所示,图中变量意义与图 2相同,可见该模式满足条件Ti≤Tr<Te.
模式2报文进队时,设备还未发送弃权报文,仍在参与发送权的竞争,因此它们可在本宏周期发送. 但它们进队时,S报文已发送,因此它们对发送权的竞争会受CP的影响. 若其优先级高于CP,由于优先级未预先发布,则只能靠CP竞争发送权,设备取得发送权后会把它们一并发送,因此它们无需竞争发送权;若其优先级等于CP,则设备在取得发送权后会把CP的报文以先进先出原则发送,因此它们也无需竞争发送权;若其优先级低于CP,则会与模式3和模式4报文一起参与发送权的竞争. 可见,模式2报文会导致高优先级报文的发送次序低于低优先级报文的现象,该现象称为优先级反转.
由图 3可知,对于设备i中优先级为g的模式2报文,由于进队时非周期报文发送时间片已开始,所以其待片延迟Dn为0,而其待发延迟Fn为从进队时间Tr到发送开始时间Ts的时间段,即
(2) |
其中:Lh为本宏周期微网段中发送的第h个NP报文的长度;Lfe为E报文的长度;gh为第h和h+1个NP报文的发送时间间隔;g1h和g2h分别为第h个E报文与其前后2个NP报文间的时间间隔;d0为传播延迟,由电缆长度u和电磁波传播速度v决定(d0=u/v);p和q分别为微网段内先于该报文发送的NP报文和E报文数目,它们取决于非周期报文发送阶段开始时队列中的NP报文和发送权竞争过程中进队的NP报文的数目和优先级.
假设模式2报文都在设备首次取得发送权之前进队,则设备i中1个优先级为g的报文会具有如下特征:当g≤li时,报文优先级高于设备的FP. 该设备依据li竞争发送权,报文发送前微网段中只有FP高于li的设备和等于li且IP地址小于i的设备得到发送权. 发送的报文包括FP高于li的设备中优先级高于li的报文;FP高于li且IP地址小于i的设备中优先级等于li的报文;FP等于li且IP地址小于i的设备中优先级高于和等于li的报文;设备i中优先级高于g的报文和优先级等于g且先于该报文进队的报文. p等于它们的数目之和.
当g>li时,报文发送前微网段中只有FP高于g和等于g且IP地址小于i的设备发送过报文. 发送的报文有FP高于g的设备中优先级高于g的报文;FP高于g且IP地址小于i的设备中优先级等于g的报文;FP等于g且IP地址小于i的设备中优先级高于和等于g的报文;设备i中优先级等于g的模式3和模式4报文以及优先级等于g的模式2报文中先于该报文进队的报文. p等于它们的数目之和.
综上所述,p的确定为
(3) |
其中:m为先于该报文进队的同模式同优先级报文的数目;Gkj为设备j中优先级为k的报文数目,Gkj=Xkj+Ykj+Zkj;A为FP高于li的设备集合,A={j|lj﹤li}(i=1,2,…,n;j=1,2,…,n);B为FP高于g的设备集合,B={j|lj﹤g}(g=1,2,…,5;j=1,2,…,n);C为微网段中FP高于li且IP地址小于i的设备集合,C={j|j﹤i,j∈A}(j=1,2,…,n;i=1,2,…,n);D为微网段中FP高于g且IP地址小于i的设备集合,D={j|j﹤i,j∈B}(j=1,2,…,n;i=1,2,…,n);E为微网段中FP等于li且IP地址小于i的设备集合,E={j|j﹤i,lj=li}(j=1,2,…,n;i=1,2,…,n);F为微网段中FP等于g且IP地址小于i的设备集合,F={j|j﹤i,lj=g}(g=1,2,…,5;j=1,2,…,n;i=1,2,…,n).
对于微网段中发送的E报文,其作用是当设备交出发送权时,通知其他设备进行下一轮发送权竞争并且发布该设备队列中NP报文的最高优先级,其数目q取决于报文发送前微网段中取得发送权的设备的数目和次数. 假定报文发送前共有h个设备取得了发送权,设备i取得了oi次,则有
(4) |
由式(4)可见,q取决于非周期数据发送权在设备间的切换次数,当切换比较频繁时,会加大网络通信负担,降低实时性.
4 模式3模式3指的是NP报文在设备N报文发送开始到非周期报文发送阶段开始的时间段进队. 其进队特征如图 4所示,图中变量意义与图 2相同,可见该模式满足条件Td≤Tr<Ti.
由于模式3报文进队时N报文已发送,所以FP没有代表这些报文. 若报文优先级高于或等于FP,则设备依靠FP得到发送权之后它们即可发送;若报文优先级低于FP,则在它们发送前设备已取得过发送权,可以通过E报文发布其优先级参与竞争. 可见,模式3报文也会导致优先级反转.
由图 4可知,模式3报文的Dn等于其进队时间到非周期数据发送开始时间的时间段,即
(5) |
由图 4还可看出,模式3报文的待发延迟Fn为从非周期报文发送时间片开始到报文开始发送的时间段,取决于微网段中先于该报文发送的NP报文数目p和E报文数目q,即
(6) |
其中变量意义与式(2)相同. 由于模式2的分析是以其报文在设备首次取得发送权前进队为前提的,所以它们竞争发送权的方式与模式3相同. 因此,式(6)中的p和q可分别由式(3)和式(4)得到.
5 模式4模式4指的是NP报文在N报文发送开始之前的时间段进队. 其进队特征如图 5所示,图中变量意义与图2相同. 该模式的NP报文包括两类:本宏周期进队的报文和上一宏周期延迟下来的报文. 可见,该模式满足条件Tr≤Td
根据模式4报文的进队时间可知,当一台设备发送N报文时,其队列中只有模式4报文. 此时设备将这些报文的最高优先级放入N报文中作为其NP报文的FP. 由于EPA系统对报文优先级的规定是值越大优先级越低,所以设备i的FP(li)为其队列中NP报文优先级集合R中值最小的元素,即li=min(R). 其中R为Fki≠0的报文优先级集合,即R={k|Fki≠0;k=1,2,…,5;i=1,2,…,n}.
由图 5可见,模式4报文的待发延迟Fn为从非周期报文发送阶段开始到该报文发送的时间段,与模式3相同,由式(6)确定. 但模式4报文的待片延迟Dn必须分别讨论:本宏周期进队报文的待片延迟为报文进队时间到非周期报文发送开始的时间段,由式(5)确定;上一宏周期延迟下来的报文,属于模式1,由式(1)确定.
由以上分析可发现3个问题:①非周期报文发送存在优先级反转现象;②E报文占用的通信负荷取决于设备间非周期数据发送权的切换次数,当切换比较频繁时,会加大网络负荷,降低实时性;模式1报文由于不能在本宏周期发送而延迟到下一宏周期,会增大待片延迟,降低实时性.
6 实例分析下面通过一个实例对以上分析进行验证. 1个微网段中有3台设备,组态参数如表 1所示. 每台设备每隔10 ms产生1个NP报文发送. 报文优先级设置:当mod(Tr,T)=0、mod(Tr,T)=10、mod(Tr,T)=20时,优先级分别为3、2、1. 假定所有报文的发送耗时均为0.5 ms. 由于EPA确定性调度是按宏周期重复进行的,所以取其中2个宏周期就能表示NP报文的调度规律.
表 2与表 3中,Mij指的是一个宏周期中设备i产生的第j个报文. E报文的优先级表示其承载的优先级,其他报文的优先级指的是该报文的优先级. 从它们的发送次序和等待延迟可发现以下问题:
1) 存在优先级反转问题. 第6个宏周期中的报文M33是优先级为1的NP报文,但它的发送次序低于优先级为3的M21.
2) 存在E报文的通信开销问题. 2个宏周期中,微网段中一共发送了18个NP报文和13个E报文. 这说明E报文的发送导致时间片利用率降低,不利于通信实时性的提高.
3) 模式1报文的存在加大了报文发送的等待延迟. 第5个宏周期的报文M13和M23都是优先级为1的报文,却都延迟到第6个宏周期发送. 它们的等待延迟在所有报文中最大.
以上结果与理论分析结论一致.
7 结束语笔者根据报文的进队时间建立了4个模式,分析了4个模式的调度特征、通信延迟和相互影响规律,建立了理论模型并发现了以下3个问题:
1) 优先级反转问题,即高优先级报文的发送次序低于低优先级报文的现象. 该问题导致高实时性报文不能优先发送,不利于实时性的提高. 该问题可通过EPA功能块执行和确定性通信之间的调度协同来解决,只要功能块在S报文发送之前执行并将报文放入队列,则优先级反转的问题即可避免.
2) E报文的通信开销问题,即确定性调度过程中E报文的发送问题. E报文的通信开销过大主要是因为设备间非周期数据发送权的频繁切换造成的. 对它的改进可通过降低E报文长度以及优化非周期数据传输调度策略,减少其发送的方法实现.
3) 弃权报文发送后进队报文的处理方式. 这部分报文必须延迟到下个宏周期发送,会导致较大的待片延迟. 该问题的解决思路与优先级反转问题一致,只要保证功能块在弃权报文开始发送之前将报文放入队列即可.
[1] | Schmidt K, Schmidt E. Distributedreal-time protocols for industrial control systems: framework and examples[J]. IEEE Transactions on Parallel and Distributed Systems, 2013, 23(10): 1856–1866. |
[2] | Lu Li, Feng Dongqin, Chu Jian. Improving the real-time performance of Ethernet for plant automation (EPA) based industrial networks[J]. Journal of Zhejiang University: Science, 2013, 14(6): 433–448. doi: 10.1631/jzus.C1200363 |
[3] | Liu Ning, Zhong Chongquan, Mo Yalin. Real-time performance of periodic data transmission in EPA industrialEthernet[J]. Journal of Beijing Institute of Technology, 2012, 21(3): 336–342. |