时间:2024-09-03
张宏巍,张文娟
(1.中国科学院长春光学精密机械与物理研究所,吉林 长春 130033;2.东北师范大学应用电子研究所,吉林 长春 130024)
控制局域网中媒体访问延时研究与网络优化设计
张宏巍1,张文娟2
(1.中国科学院长春光学精密机械与物理研究所,吉林 长春 130033;2.东北师范大学应用电子研究所,吉林 长春 130024)
为了提高数据通信的实时性,通过搭建CAN网络的等效数学模型,推导出媒体访问延时的数学表达式,并进一步提出CAN网络优化设计.实验验证所采取措施是正确并有效的.
CAN;媒体访问延时;实时性;网络优化
实时性是高性能控制系统所要面临的一个主要问题,如果系统内部数据传输延时较大,势必会影响到控制系统的性能指标,甚至可能会导致系统不稳定,因此采用实时性强且可靠性高的数据传输技术非常关键.
CAN网络技术采用短帧数据传输结构和CSMA/CD的总线仲裁方式,它比一般数据传输技术具有更好的实时性和可靠性,同时低廉的成本令CAN网络技术在民用和军用等方面都得到了广泛应用[1].
但是随着实际系统中CAN网络结构的复杂化和数据吞吐量的剧增,低优先级报文与高优先级报文发生碰撞的可能性增多.而由于CAN网络采用固定优先级的竞争机制,低优先级的数据帧将在竞争中仲裁失败并可能发生多次重传现象,这一现象将导致信息的传输延时变大且具有时间不确定性,整个网络的实时性下降甚至不能满足控制需求.这种由于报文抢占CAN网络资源而引起的延时便是媒体访问延时,因此针对媒体访问延时开展深入研究并采取相应的优化设计将具有非常重要的现实意义[2-5].
CAN网络延时一般是时变和不确定的,主要受网络媒体访问协议、网络负载变化、节点优先级和网络速率等诸多因素影响.其中媒体访问延时是产生CAN网络延时的最主要影响因素.
媒体访问延时由报文排队延时和报文阻塞延时组成.其中排队延时是指一个报文在发送节点缓冲区中等待前面报文发送完成所需要的时间,它取决于队列中前面报文的阻塞时间和发送时间.排队时间一般比较难于分析,而且在多数控制系统中,如果一个报文生成前缓存区还有其他报文,往往将旧的报文丢弃,所以可以将排队时间认为是零;另一个报文阻塞延时是指从节点生成一个报文发送请求并将其存储到发送缓冲区起,到该报文被接收节点真正接收为止所用的时间.由于排队时间为零,所以可认为报文阻塞延时就是媒体访问延时.
由于报文帧的阻塞延时具有不确定性,无法进行定量研究,因此,通常以报文帧的平均阻塞延时作为对象来研究其主要影响因素.为了更加方便和直观地研究报文的平均阻塞延时,首先要建立CAN网络的系统模型.
1.1 CAN网络系统模型
根据CAN网络数据的传输特性,可以采用经典排队理论中的Kendall模型来描述其固定优先级的任务调度机制.依据Kendall排队模型理论可以将CAN网络描述为M/M/1/SWP模型,其中第1个M表示系统的数据流即报文帧的到达时间间隔服从泊松分布;第2个M表示系统的服务时间服从负指数分布;1表示对应模型中的服务台数目为1台,这是因为CAN网络上同一时刻只能传输一个报文帧;最后一项SWP表示CAN网络采用固定优先级的任务调度方法,即排队规则为基于优先权的服务.
在该模型中相邻输入报文帧的时间间隔满足泊松分布,而进入排队队列的报文帧根据优先权的服务规则从队列中经过CAN网络服务后输出,服务时间间隔即报文帧输出时间间隔,它服从负指数分布.
在CAN网络系统模型中,报文阻塞延时也就是报文帧的队列等待时间,往往是不固定的,为了得到系统行为的详细信息,研究中需要能够得到一个稳定指标,通常采用某些指标的数学期望值作为研究对象,本文主要研究报文帧的平均等待时间.
1.2 平均等待时间数学模型
定义Pn表示稳定状态下,CAN网络模型中有n个报文帧等待总线服务的概率.根据正规方程可得
(1)
定义L为CAN模型中报文帧数量的数学期望值,它包括正在接受服务的报文帧和处于排队等待的报文帧.定义Lp为CAN网络模型队列中正在等待服务的报文帧数学期望值,B为当前被CAN网络服务的报文帧数量的数学期望值.则可得
L=Lp+B.
(2)
(3)
在排队理论中,常常假设处于最简单流情况.因为采用最简单流假设与实际CAN网络模型中输入报文帧的时间间隔具有近似性,并且可以极大简化问题的分析和计算.因此,以下分析均是假设处在最简单流模型的工作情况.
所谓最简单流即指在t这一时间段里有k个顾客到达服务系统的概率Vk(t)服从泊松分布,即
(4)
当t=1时,Vk(t)的数学期望值为
(5)
(6)
图1 状态转移图
一个报文帧进入队列令系统状态从n到n+1,这一过程称为生;一个队列中的报文帧输出后令系统状态从n到n-1,这一过程称为死.系统状态的转移可以用图1来加以描述,图1中节点代表状态,箭形线代表状态转移.由于在同一时间内不可能有2个事件发生,所以不存在跨状态转移.
根据流的平衡原理,即在稳定状态下,流入任意一个节点的流量等于流出该节点的流量.将流的平衡原理应用于转移图的每个状态,可以列出以每个状态下报文帧等待总线服务的概率P为变量的线性方程组:
(7)
在上述方程组中,第1个方程中的P1可以用P0来表示,将P1代入第2个方程可以求出仅含P0一个变量的P2表达式,依此类推,可以将每个状态下报文帧的等待服务概率变量都用P0表示出来.
(8)
(9)
(10)
(11)
Pi=ρi(1-ρ).
(12)
新的参数ρ是到达率与服务率之比,被称为繁忙率.而在CAN网络模型中,ρ为网络负载率.
随着模型队列中等待服务的报文帧数量增多,报文帧在队列中逗留的时间也越来越长.为研究方便,希望在平均逗留时间W、模型中报文帧数量的数学期望值L与到达率λ之间建立起某种关系.李特尔(Little)公式给出了L,W和λ三者之间的关系式即L=λ·W,进而可以得到关系式Lq=λ·Wq.有了李特尔公式,即可得到如下排队系统的基本模型:
(13)
(14)
(15)
(16)
公式中报文帧平均服务时间Taver_service对于一个已确定传输参数的网络变化不大,所以总线负载率ρ是影响报文帧平均阻塞延时的主要环节.当ρ很小时,报文帧的平均阻塞延时很小,报文间发生总线冲突的机会较小,此时CAN网络信息延时主要由发送报文节点的报文帧传输延时和软硬件延时决定且取值较小,可以满足系统通信实时性的要求;当ρ=0时,报文帧的平均阻塞延时为零,系统实时性最佳;随着ρ的增加,报文帧的平均阻塞延时迅速增加,报文间发生冲突的概率增高,此时,CAN网络信息延时中的报文帧传输时间和软硬件延时相对媒体访问延时较小,所以总线延时主要由媒体访问延时决定,而且表现为不确定性;当ρ=1时,报文帧的平均阻塞延时为无限大,此时的系统实时性最差.
通过前面的理论分析,影响CAN网络实时性的主要因素是媒体访问延时中的报文阻塞延时,它的大小直接决定了CAN网络传输的实时性.可以通过在CAN网络的应用层协议中进行改进以提高网络的实时性.主要采取的措施如下:
(1) 采用标准帧传输方式
扩展帧比标准帧多出20个位时间的额外系统开销,使用标准帧代替扩展帧可以有效提高20%左右的总线利用率,降低总线负载率,提高系统实时性.
(2) 提高总线传输速率
提高总线传输速率就是提高总线的带宽,总线带宽的提高必将导致总线负载率的降低.总线传输速率越高,报文帧的延时越短,报文发送的越快,这样总线阻塞的概率越低.但是,总线的传输速率也不能无限制的提高,过高的总线传输速率会导致系统抗干扰能力下降,进而影响数据传输的可靠性,所以要在保证系统可靠性的前提下,适当地提高总线传输速率.
(3) 充分利用报文帧数据场空间
在基于CAN网络的控制系统中,经常存在从一个节点发出多个报文帧给不同节点的情况.由于CAN网络采用的是广播发送机制,总线网络中的节点都可以接收总线上传输的所有报文帧,所以可以通过充分利用数据场空间的方法,将多个信息合并到最少数量的报文帧中发送.
(4) 调整报文的发送周期
调整报文发送周期的目的是调整总线负载率,总线负载率与特定时间内发送到总线上的数据量成正比,数据量越大,总线负载率越高.所以,在满足控制系统性能指标的前提下,适当地降低某些周期性信息的发送周期可以减小总线负载率,进而降低报文帧的平均阻塞延时,提高总线的实时性.
通过4套DSP开发板搭建A,B,C和D共4个节点的CAN网络实验平台.实验过程中采取不同的CAN网络优化方案并通过实验结果数据来说明优化效果.
其中实验1为未采用任何优化措施的基础型实验,所发送报文帧的数据区长度均为2个字节.实验过程:A以10 ms为周期发送4个标志符,分别为51,72,63和54的扩展帧;B以10 ms为周期发送4个标志符,分别为61,52,73和64的扩展帧;C以10 ms为周期发送4个标志符,分别为71,62,53和74的扩展帧;D节点在整个实验运行到第150 s时发送1个标志符,为80的非周期扩展帧.总线波特率为125 kB,实验时间为3 min,总线运行期间通过CAN网络分析工具CANoe记录所有报文帧在总线上的时间信息和传输信息.
在实验2中,提高总线传输波特率到250 kB,其他条件与实验1相同.在实验3中,采用标准帧代替扩展帧,其他条件与实验1相同.在实验4中,优化数据区,将每个节点发送的4个报文帧合并成单帧发送,标志符分别取51,61和71,其他条件与实验1相同.在实验5中,将所有周期信号的发送周期提高一倍,其他条件与实验1相同.系统调整前后总线上传输报文帧的平均延时对比如表1所示.
表1 调整前后报文帧平均延迟对比表 μs
通过结果数据对比表明,提高总线传输速率、选择标准帧、优化报文帧数据场和调整发送周期都可以有效地减小总线信息传输延时,提高CAN网络数据传输的实时性.其中提高总线波特率可以令报文的平均延时降低40%~50%;采用标准帧代替扩展帧可以令平均延时降低10%~20%;优化数据区空间可以有效减少平均延时30%~50%;调整报文发送周期可以降低平均延时10%~30%.
[1] 张宏巍,张文娟.飞行器控制系统双CAN网络混合调度策略设计[J].东北师大学报:自然科学版,2013,45(1):65-70.
[2] TINDELL K W,BURNS A,WELLINGS A J.Calculating controller area network (CAN) message response times[J].Control Engineering Practice,1995,3(8):1163-1169.
[3] TINDELL K W,HANSON H,WELLINGS A J.Analysing real-time communications:controller area network(CAN)[C]//In Proceedings 15th Real-time Systems Symposium (RTSS′94). Washington:IEEE Computer Society Press,1994:259-263.
[4] NILSSON J.Real time control systems with delays[D].Sweden:Lund Institute of Technology,1998.
[5] 佟为明,高洪伟,陈培友.CAN网络传输延时特性的研究[J].仪器仪表学报,2007,28(4):295-297.
(责任编辑:石绍庆)
Research and optimization on media access control delay of control area network
ZHANG Hong-wei1,ZHANG Wen-juan2
(1.Changchun Institute of Optics Fine Mechanics and Physics,Chinese Academy of Sciences,Changchun 130033,China;2.Institute of Applied Electronics,Northeast Normal University,Changchun 130024,China)
Firstly,an equivalent numerical simulation model of CAN bus is built to derivate the mathematical expression of the media access control delay. Secondly,optimization measures are further proposed to improve the dada communication real-time of CAN. At last,the optimization measures tested by experiments are proved to be correct and effective.
CAN;media access control delay;real-time;network optimization
1000-1832(2014)04-0061-05
10.11672/dbsdzk2014-04-011
2014-01-28
中国科学院“三期创新”平台资助项目;吉林省科技发展计划项目(20100458).
张宏巍(1983—),男,博士,副研究员,主要从事飞行器数据传输技术研究;通讯作者:张文娟(1983—),女,博士,工程师,主要从事智能控制技术研究.
TP 336;V 249 [学科代码] 510·50
A
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!