CTCS3级列控车载计算机操作系统的设计与实现

2011-12-27 01:05邓晓燕
河北省科学院学报 2011年4期
关键词:列控列车运行车载

邓晓燕,王 静

(石家庄铁道大学电气与电子工程学院,河北石家庄 050043)

CTCS3级列控车载计算机操作系统的设计与实现

邓晓燕,王 静

(石家庄铁道大学电气与电子工程学院,河北石家庄 050043)

本文介绍了一种针对仿真列控实验室中车载计算机DMI操作系统的设计方法,本系统以窗口管理系统为核心,通过UML语言及其工具Rational Rose为系统建模,站在用户角度分析系统应具备的功能、运作模式及其系统框架。在Visual Studio 2008集成开发环境中用C#语言对此DMI进行了实现。操作系统形象、简洁,可模拟列车运行的人机界面,可应用于普通计算机。

CTCS3;DMI;Visual Studio2008;UML

在中国列车控制系统中,车载DMI是实现司机与车载ATP沟通的唯一通道,在列车的安全运行中起着十分重要的作用。它就像列车的一面窗口,通过声音、图像等信息向司机告知列车各种信息以及ATP的状态,提示司机执行相应的操作,确保行车安全[1]。

根据列控仿真实验室的情况,研究设计了一款应用于普通计算机上的模拟列车运行的人机界面,该系统以窗口管理系统为核心,使用键盘和鼠标器作为输入设备。综合采用图像、语音、报警声等新的交互通道、设备和交互技术,使用户利用多个通道以自然、并行、协作的方式进行人机对话,提高人机交互的高效性和自然性。利用统一建模语言UML和其工具Rational Rose以严格定义的图形化语言对系统进行建模,站在用户的角度上分析系统所要具有的功能、运作模式及其框架,并在Visual Studio 2008集成开发环境中的.NET平台上用C#语言对此人机界面进行了实现。

1 DMI显示界面说明

1.1 DMI显示区域分布

根据中国铁路通信信号集团公司在2009年12月5日制定的CTCS3-300T列控车载设备DMI司机操作手册中的说明,将DMI主界面分为六个区域,分别是A:距离监控信息区;B:速度信息区;C:补充驾驶信息区;D:运行计划信息区;E:监控信息区;F:功能键信息区。

1.2 DMI显示信息说明

DMI主界面功能细分图如图1所示,其中A1代表制动预警时间;A2代表目标距离;B1以数字方式显示列车当前速度;B2环形速度显示;B3实际命令;B4开口速度;B5控制模式;C1下一控制模式;C2级别信息;C3 ATP制动状态;D1距离标尺;D2预告信息;D3预告信息;D4速度信息;D5坡度信息;D6机车信号;D7 MRSP曲线;D8起模点;E1文本记录信息;E2备用系统状态;E3人控/机控;E4紧急信号;E5公里标;E6车站名称;E7车次号;E8日期时间;E9 GSM-R网络状态;E10 RBC连接状态;E11放大;E12缩小;F1数据;F2模式;F3载频;F4等级;F5其他;F6启动;F7缓解;F8警惕。

2 基于UML系统建模

UML是一种构建软件系统和文档的通用可视化建模语言。UML能表达系统的静态结构和动态信息,并能管理复杂的系统模型,便于软件团队之间的合作开发。UML不是编程语言,但支持UML语言的工具可以提供从UML到各种编程语言的代码生成,也可以提供从现有程序逆向构建UML模型。Rose是美国Rational公司的面向对象建模工具,利用这个工具,可以建立用UML描述的软件系统的模型。

2.1 用例图

用例图是系统提供的外部可感知的功能单元,用例图的目的是定义清晰的系统行为,但不解释系统的内部结构。用例图可以与执行者关联,也可以参与其他的多种关系。图2所示的用例图就是站在司机的角度上分析系统的功能,车载DMI要保证司机可以对列车的相关参数进行设置,实时地得到有关列车和线路的相关状态和数据,对车载设备发出的命令和警告进行及时地响应[2]。

2.2 活动图

活动图是用状态机对工作流进行建模的特殊形式,它和流程图很类似,不过它支持并发控制。活动图一般不描述所有的运算细节,它显示活动的流,但不显示执行活动的对象。活动图处于系统的外部和内部视图之间,所以它可以作为设计的起点,为了完成设计,每个活动必须扩展成一个和多个操作,每个操作被指派给特定的对象来实现。车载DMI活动如图3所示。

图1 主界面功能细分图

图2 系统用例图

图3 系统活动图

2.3 类图

静态视图是UML的基础,静态视图表示为类图,主要是描述类和类之间的关系。将操作界面分为五个不同的子类,对应每一个子类有其特定的名称、属性和操作,通过图4所示系统类图确定车载DMI的功能布局,构建系统框架。

图4 系统类图

3 .NET平台上对车载DMI的实现

Microsoft Visual C#是一种功能强大、使用简单的语言,主要面向需要使用Microsoft.NET Framework来创建应用程序的开发者。对车载DMI的开发借助于Visual Studio 2008和.NET Framework Version 3.5用C#语言来进行程序设计[3]。将车载DMI的软件系统分为通信模块、功能键模块、声音模块、界面显示模块四大模块。

3.1 通信模块

因为在列车运行过程中,地面设备必须向列车提供前车位置、限速条件、线路条件等信息;列车自身的速度信息、备用系统状况信息也要提供给车载DMI;同时车载DMI也要根据速度距离模式曲线向列车传达减速、制动、缓解等控车命令,所以通信模块是必不可少的。在开发中通过对Visual Studio 2008开发工具中SerialPort类的使用,通过PC机的RS-232串行接口与外部设备进行通讯。

在程序编写前要加上名字命名空间System.IO.Ports,因为其包含了控制串口重要的SerialPort类,该类提供了同步I/O和事件驱动的I/O、对管脚和中断状态的访问以及对串行驱动程序属性的访问[4]。在通讯过程中要设置正确的串口端号并设置好通信格式,例如语句SerialPort sp=new Serial-Port("com4",9600,Parity.None,8,Stop Bits.One);即设置了属性设置通讯格式中的端口号、波特率、校验位、数据位和停止位。在从串口缓存区读取数据时利用DataReceived事件:DataReceived事件在接收到了ReceivedBytes Threshold设置的字符个数或接收到了文件结束字符并将其放入了输入缓冲区时被触发[4]。

3.2 功能键模块

车载DMI的F区是功能键信息区,通过对功能键的操作可以实现数据的输入、载频的选择,等级的选择、音量亮度的控制、列车静态下模式的选择、启动列车、缓解列车制动、警惕确认的功能。用Panel控件将车载DMI进行分区,分区后的D区便是功能键点击时载入主窗体的子窗体显示区,这样相应按钮的Click事件中可进行如下代码的编写:

设计的效果如图5所示。当按下模式键时,在主界面D区出现相应的子界面。

3.3 声音播放模块

3.3.1 DMI语音及声音标准

DMI所输出的语音信息的种类有以下几种:允许缓解:在列控车载设备触发常用制动后,当列车运行速度降低到允许缓解速度以下时,列控车载设备将输出该语音;或者列控车载设备触发了紧急制动,当列车停车后,列控车载设备将输出该语音;级间切换:当列车越过级间切换预告应答器后,列控车载设备将输出该语音;前方限速:列车运行在CSM区时,当距离TSM区500m时,列控车载设备将输出该语音;减速:当列车位于TSM区时,如果列车运行速度超过了报警速度,列控车载设备将输出该语音;目视确认:司机按下目视行车键后,当列车运行200m或50s时,列控车载设备将输出该语音;引导确认:当列车在引导模式下运行200m或50s时,列控车载设备将输出该语音;机车信号确认:当列车在收到限制码后,机信模式下运行150m或50s时,列控车载设备将输出该语音;前方过分相:距分相区10s时,提示该语音

DMI在工作过程中也会输出各种声音信息:S0(S5)目标速度点变化;S0(S6)新的文本信息;S0(S7)提示错误或故障信息;S2速度告警提示;S3设备制动结束;S4需要司机应答的信息;S8按键提示音;S9司机介入提示音。

图5 模式确认

为了避免同时输出两种或两种以上的声音或语音,用以下的优先级定义:①语音的优先级大于声音的优先级,两者不同时发出;②声音的优先级排列顺序:S0(S5)>S0(S7)>S3>S9>S4>S2>S0(S6)>S8[5]。

在C#语言中用控件Track Bar来实现对音量的控制非常简单,通过调用以下两个函数实现:

在此之前要使用名字命名空间Using System.Runtime.InteropSerices这样就可以对DMI的系统音量进行控制。其操作是:按下其他键→选择音量→拖动Track Bar控件的游标→控制系统音量。

3.4 界面显示模块

Dev Express公司开发的控件有很强的实力,不仅功能丰富,应用简便,而且界面华丽,更可方便定制。DMI的A区是距离监控信息区,以图像的形式告知司机目标距离,B区是速度显示区,以图像和数字的方式显示列车的当前速度、目标速度和允许速度。在对DMI的A、B区开发中,使用了Dev Express公司的Gauge Control控件可以很容易实现对目标距离和速度信息的表示。DMI的D区是运行计划信息区,主要用来显示速度-距离模式曲线,并以此来控制列车安全运行。完成速度-距离模式曲线的绘制要了解曲线控车原理,曲线控车原理图如图6所示,其中CSM是顶棚速度监控区;TSM是目标速度监控区;EBP是紧急制动模式曲线;NBP是常用制动模式曲线。

图6 曲线控车原理

根据图7所示的控车原理设计各种动作及声音语音提示,在开发过程中使用了Dev Express公司的Chart Control控件,使曲线的绘制更加简单,控车性能更加安全灵活可靠。此外DMI的其他分区也通过各种控件进行了设计和代码编写,完成了对时间、车次、文本记录信息、ATP制动状态、控车模式等信息的显示。模拟列车运行时的效果图7所示。

4 结论

通过对CTCS3级列控车载设备DMI的深入研究,利用UML语言,并在工具RationalRose下对系统进行了建模,从静态和动态两个角度分析系统,进而对其进行了整体的规划和设计。并在Visual Studio 2008集成开发环境中用C#语言对此人机界面进行了实现。实现的DMI兼容windows xp、win7等操作系统,在列控仿真实验室中可以安装在普通计算机上模拟列车运行,实现了通过生成的速度-距离模式曲线进行一次制动的控车方式,达到了预期的效果。

图7 模拟运行图

[1]王耀东.基于Windows CE的CTCS3级列控系统车载人机界面DMI的设计与实现[D].北京交通大学,2008.

[2]王悉,唐涛.基于UML的列控系统车载人机界面设计和实现[J].系统仿真学报,2006,(18)2,338-342.

[3]John Sharp.Visual C#2008 Step By Step[M].北京,清华大学出版社,2009.

[4]夏春飞.C#实现PC机与单片机(89C51)的串行通讯[J].学术交流,77-78.

[5]徐啸鸣.列控车载设备(CTCS2-200H型)[M].北京,中国铁道出版社,2007.

Design and implementation of CTCS3 column train computer operation system

DENG Xiao-yan,WANG Jing

(SchollofElectricalandElectronicsEngineering,ShijiazhuangTiedaoUniversity,ShijiazhuangHebei050043,China)

According to the laboratory of train operation control system,a kind of design method of onboard computer DMI is introduced.It takes the window management system as the core and uses the language of UML and Rational Rose tools as system modeling to analyze the system function,mode of operation and the system framework standing from the user’s viewpoint.Finally,the on-board drivermachine interface was accomplished by using the program language of C#in the integrated development environment of Visual Studio 2008.This operating system is concise and visual,and it could simulate the train running interface,and be applied to ordinary computers.

CTCS3;DMI;Visual Studio2008;UML

TP316

:A

1001-9383(2011)04-0040-05

2011-06-30

邓晓燕(1960-),女,河北武安人,教授,主要研究方向:计算机测控技术的研究.

猜你喜欢
列控列车运行车载
一种车载可折叠宿营住房
列控联锁数据管理分析平台的研究与探索
列控中心驱采不一致分析及改进方案
改善地铁列车运行舒适度方案探讨
便携式列控中心测试设备设计与实现
高速磁浮车载运行控制系统综述
列控数据管理平台的开发
智能互联势不可挡 车载存储需求爆发
列车运行控制系统技术发展趋势分析
基于ZVS-PWM的车载隔离DC-DC的研究