APP下载

基于OMNeT++的MVB网络模型

2015-06-12胡黄水王宏志

长春工业大学学报 2015年4期
关键词:延时总线传输

刘 峰, 胡黄水*, 王宏志, 王 博

(1.长春工业大学 计算机科学与工程学院,吉林 长春 130012;2.长春市轨道交通集团有限公司,吉林 长春 130062)

0 引 言

多功能车辆总线(Multifunction Vehicle Bus,MVB)和绞线式列车总线(Wired Train Bus,WTB)构成了列车通信网络总线(Train Communication Network,TCN),它具有实时性强、可靠性高、冗余和容错性能良好的特点,在高铁、动车等领域中得到了广泛的应用[1]。

目前国内外学者已对MVB网络从各个方面进行了研究,文献[2]对多功能车辆总线事件仲裁进行了优化和设计;文献[3]对MVB基带传输系统的带宽以及传输介质信道特性等进行了广泛研究。在MVB网络通信建模方面,文献[4]采用Petri网建模方法对MVB网络单纯过程数据通信的吞吐性能进行了分析;文献[5]采用集成在Simulink之中的Stateflow图形化设计开发工具对MVB网络过程数据通信进行建模与仿真,分析MVB网络的实时性能。现有模型通常针对MVB网络某方面研究内容而建,缺乏通用性;所建模型对MVB网络性能的分析内容比较单一而且没有可视效果,而OMNeT++网络仿真平台具有强大完善的图形界面接口,可以直观体现MVB网络数据通信过程,同时具备方便快捷的编程调试和跟踪支持等功能。

因此,文中采用OMNeT++网络仿真平台,建立MVB网络模型及过程数据实时性计算模型,并通过分析和测试MVB网络过程数据通信的性能来对模型进行验证。

1 MVB网络

MVB总线网络主要负责车厢内设备的连接,其数据传输速率为1.5Mbit/s,响应速度快,传输介质为屏蔽双绞线或光纤。MVB总线上挂接的所有设备有固定的地址和结构,网络拓扑结构为总线型结构的主从模式。MVB网络中在同一工作时间内有一个总线主设备(总线管理器),负责控制整个车厢内各从设备对MVB总线的访问。IEC61375标准对MVB的拓扑结构、帧格式等技术特点进行了详细规定,现进行简单介绍[1]。

1.1 MVB物理层及拓扑结构

MVB总线网络物理层结构由一个或者多个总线段构成,其中总线段包括:电气短距离介质(ESD),在无电气隔离情况下,20.0m传输范围内可支持设备数最大为32个;电气中距离介质(EMD),在200.0m的传输范围内,每段可支持设备数最大为32个;光纤介质(OGF),通过星耦器汇出,传输距离可达2.0km。

图1 MVB网络拓扑结构

MVB的拓扑结构如图1所示。图中各个总线段经由连接不同介质的中继器或者将光纤汇入总线的星耦器两种方式相互连接。

1.2 MVB的帧格式

MVB总线网络有两种帧格式:一种帧为由MVB总线主设备(总线管理器)发出的主帧;另一种帧为响应主帧而由源设备发出的从帧。如图2所示。

图2 主从帧格式

主帧包括:起始分界符、16位帧数据及8位校验序列。

从帧包括:始分界符及16、32、64、128或256位帧数据组成。

其中在每64个数据位后面附加上一个8位的校验序列,如果帧数据只有16或32位时,则将一个8位的校验序列附加在帧数据后面。

2 MVB网络建模

基于OMNeT++网络仿真平台[6],通过拓扑描述语言(.ned语言)分别构建MVB网络节点、MVB网络拓扑结构、过程数据通信及过程数据实时性计算模型。

2.1 MVB网络节点建模

采用拓扑描述语言的简单模块和复合模块建立MVB节点模型,包括主设备节点模型和从设备节点模型。其中简单模块包括parameters和gates字段,这部分用C++语言进行描述定义。简单模块可以被复合模块所嵌套,通过嵌套将MVB网络中的总线管理器(主设备节点)和车厢内各设备(从设备节点)抽象为复合模块,进行MVB网络节点的建模[7]。

主从设备节点模型如图3所示。

图3(a)为主设备节点模型,其中包括Data_Sources、TxS_0、RxS_0、Data_Process0四个简单模块,其中Data_Sources简单模块为数据源,通过指定的分布函数发送事先定义好的周期扫描表中的主帧;RxS_0为MVB总线接收器,主要负责接收MVB总线上的数据;TxS_0为MVB总线发送器,主要负责把数据发送到MVB总线上;Data_Process0模块负责数据处理。

图3 主从设备节点模型

图3 (b)为从设备节点模型,其中包括MVB总线发送器TxS_1,负责把数据发送到MVB总线上;MVB总线接收器RxS_1,负责接收MVB总线上的数据;数据处理模块为Data_Process1。

2.2 MVB网络拓扑结构建模

OMNeT++仿真平台的运行需要给出MVB网络的定义,其中一个完整的网络包括一个或多个模块(可为简单模块或者复合模块),各个模块之间通过端口(gates)进行连接。端口包括输入和输出端口,输入端口负责接收消息,输出端口负责发送消息。MVB网络拓扑模型如图4所示。

图4 MVB网络拓扑模型

图中包括一个总线管理器(Bus_Administrator)、MVB_Bus和N(N≤32)个设备节点(slave 0~slave N),这里取N=7,所有的节点挂在MVB总线上进行通信。

MVB_Bus网络总线在OMNeT++中是通过信道定义描述的,其中包括传播延时、数据传送速率及误比特率等参数。根据ICE标准规范,信道进行如下定义:

2.3 MVB网络过程数据通信建模

MVB总线主设备节点的Data_Sources简单模块作为数据源,通过指定的分布函数发送事先定义好的周期扫描表中的主帧。根据ICE标准,主帧和响应它的从帧之间的时间间隔应小于4ms,为迅速做出响应,源设备准备好从帧等待发送。设备将数据存放在被称为端口的寄存器中。主帧的长度固定为33位,其中包括4位F代码,其含义见表1。

MVB过程数据通信方式如图5所示。

MVB网络数据主要包括:消息数据、过程数据、监督数据,MVB总线网络中主要以过程数据为主。其中过程数据为周期性无确认的广播通信,主要采用主从控制的介质访问方式。

表1 MVB功能代码表

其控制流程为:MVB总线主设备(总线管理器)对整个MVB总线网络进行控制,MVB总线主设备发送主帧,与主帧中地址域相符的源设备发送从帧,与主帧中地址域一致的宿设备接收此从帧[8]。

主从设备运行流程图如图6所示。

图6(a)为主设备节点运行流程图。在MVB网络过程数据通信时,主设备节点根据周期轮询表进行过程数据的传输。首先,仿真模型运行时进入初始化状态,MVB总线主设备发送事先定义好的周期扫描表中的主帧,然后进入等待状态,当MVB总线空闲且输入数据中断时,进入TxS_1(发送器)状态,进行MVB总线数据发送;如果输入数据中断到来且MVB总线忙时,进入等待状态,当MVB总线空闲再跳入发送器状态;一次轮询结束后,然后重新进入设备地址读取状态,进行下一次的轮询。

图5 MVB网络过程数据通信方式

图6 MVB网络过程数据通信方式

图6 (b)为从设备节点运行流程图,在从设备中包括两个端口:宿端口和源端口。在MVB网络进行过程数据的传输时,当源端口接收到与自己地址域相符的主帧时,源设备发送从帧;当宿端口自身地址与主帧数据中的地址域相符时,此从设备接收源设备发出的从帧进行响应。

2.4 MVB网络过程数据实时性计算模型

主从设备节点端到端的传输延时包括[9]:过程数据帧在端口发送寄存器的编码延时Tc、介质传输延时Tt、发送过程数据帧延时Ts、接收过程数据帧延时Tr、中继器延时Tre、数据处理延时Tp,则MVB总线完成一次端到端的数据传输延时如图7所示。

图7 MVB网络过程数据端到端传输延时

由于过程数据报文处理延时Tp与设备处理器延时有关,在分析MVB网络过程数据延时可暂时不考虑。则过程数据帧传输延时T_delay可表示为发送寄存器中数据进行编码,通过发送器发送到MVB总线到达从设备节点,节点接收器接收数据帧并进行解码所用的时间,即:

设报文长度为Ljbit,MVB网络的传输速率为v(bit/s),由图2可知,MVB网络过程数据分为33、49、81、153和297bit 5种格式,通过数据帧度与传输速率之比可确定数据帧发送延时Ts、数据帧接收延时Tr;MVB通信网络的传输介质均是双绞线,传输延时Tt为传输距离l与传输速率之比;设备间中继器个数为i个(T_reply_def的值为42.7μs,限定了中继器个数i≤4),则中继器延时为iTre;过程数据解码延时Td受解码方式及解码数据帧的格式的约束;由于过程数据主帧是在周期扫描表中事先定义好的及过程数据从帧已存放在源端口等待发送,则数据编码延时Tc可以忽略不计。

MVB网络过程数据采用主从轮询介质访问控制方式,MVB总线完成一次过程数据传输延时包括:

1)主设备节点发送主帧依次轮询各从节点的时间Tmaster;

2)经过对比与主帧中地址字段相同的从设备节点发送不同数据格式的响应从帧时间Tslave。当主设备对从设备进行轮询时:

当源设备对所有端口为宿的从设备进行轮询时:

通过联立式(1)、(2)、(3)得出MVB总线完成一次报文数据传输的时间为:

式中:l′——源设备发出的从帧传输的平均距离;

l——主帧传输的平均距离;

L——主帧长度;

Li——分别代表5种从帧格式长度,i=1,2,…,5。

3 仿真分析与测试

基于OMNeT++网络仿真平台创建MVB网络过程数据通信仿真模型,其中包括一个总线管理器(Bus_Administrator)、MVB网络数据传输总线MVB_Bus和8个从设备节点(slave 0~slave 7),所有节点挂接在总线MVB_Bus上进行过程数据通信。根据ICE标准规范设置配置仿真环境文件omnetpp.ini的参数值,其中包括MVB总线传输速率为1.5Mbit/s,数据包产生的时间间隔为650μs,信道传输延时设置为10μs,其它值设置为默认值,对所建立的MVB模型在信道利用率和实时性方面进行分析和测试。

首先,对MVB模型的信道利用率进行分析和测试,如图8所示。

图8 MVB网络信道利用率

从图中可以看出,MVB总线在不同的传输速率时,MVB模型的信道利用率是不同的,通过设置0.5、1.0、1.5Mbit/s不同的信道传输速率,得到其对应信道利用率约为:42.7%、59.6%、75.3%。测试结果符合ICE标准,从而验证了所建模型的正确性。

对MVB网络模型的实时性进行测试,其结果如图9所示。

图9 MVB网络实时性

从图中可以看出,通信过程中的网络延时约为3.5ms,而ICE标准规范要求主帧与响应它的从帧间的间隔小于4ms,进一步说明了所建模型的可行性。

4 结 语

基于OMNeT++仿真平台,建立了MVB网络的节点、拓扑、信道等模型,详细介绍了基于模型的主从设备通信机制以及过程数据实时性计算模型。基于MVB网络及实时性计算模型对MVB网络过程数据通信的信道利用率以及实时性等进行了测试和分析,结果表明,所建立MVB网络模型能够达到ICE标准规范的要求,从而证明了模型的合理性和正确性,为进一步研究提高MVB网络信道的利用率、改善网络实时性等多方面内容提供了基础。

[1] 郭超勇.高速动车组列车网络控制若干问题研究[D].北京:北京交通大学,2012.

[2] 戴嘉玮,韦魏.基于多功能车辆总线事件仲裁的优化设计[J].铁道学报,2013,37(4):66-70.

[3] 宋绢.列车通信系统信道复用技术的研究[D].北京:北京交通大学,2012.

[4] 王永翔,王立德.基于广义随机Petri网的MVB网络吞吐性能分析[J].北京交通大学学报:自然科学版,2008,32(5):98-101.

[5] 聂晓波,王立德,申萍.轨道车辆MVB网络实时性能分析与优化研究[J].铁道学报,2011,33(9):40-44.

[6] 赵永利,张杰.OMNeT++与网络仿真[M].北京:人民邮电出版社,2012.

[7] Jaime J,Jose L.Design of a master device for the multifunction vehicle bus[J].Vehicular Technology,IEEE,2007,55(6):3695-3708.

[8] Jaime J,Iker H,Carlos C,et al.Simulation of message data in a testbench for the multifunction vehicle bus[C]//32ndAnnual Conferenceof the IEEE Industrial Electronics Society.Paris,France:IEEE,2006:4666-4671.

[9] 郝明亮,姜艳青,尹晓静,等.轨道车辆车厢LED照明控制系统[J].长春工业大学学报:自然科学版,2014,35(1):36-41.

猜你喜欢

延时总线传输
混合型随机微分方程的传输不等式
牵引8K超高清传输时代 FIBBR Pure38K
基于级联步进延时的顺序等效采样方法及实现
日光灯断电关闭及自动延时开关设计
关于无线电力传输的探究
一种基于CAN总线的误码测试方法
支持长距离4K HDR传输 AudioQuest Pearl、 Forest、 Cinnamon HDMI线
宋湘延时答妙对
CAN总线并发通信时下位机应用软件设计
基于CAN总线的水下通信系统设计