统一建模语言UML(UnifiedModelingLanguage)是迄今为止最好的面向对象的统一建模语言,它取代了以往各种面向对象表示法,可以全面、细致地同时描叙业务和软件系统,实现软件开发全生命周期建模的无缝统一。UML与OOAD(面向对象分析和设计)工具的结合,更使软件工程思想的实现往前走了一大步。
美国I-Logix公司的Rhapsody是一种基于UML2.0的面向嵌入式应用开发的集成可视化环境,它为嵌入式软件的开发提供了一个“四化”的支撑平台,即可视化、工程化、自动化和团队化。Rhapsody正在迅速成为国防/航空航天领域首选的MDD(模型驱动开发,ModelDrivenDevelopment)开发环境,在一系列项目中(如FutureCombatSystems(FCS)andF22等)被作为主要开发工具来使用。
列车自动防护系统(ATP系统)是城市轨道交通运行控制系统的组成部分之一。它主要保证提供速度限制信息以保持列车间的安全间隔,使列车在符合限制速度的标准下运行。ATP车载设备是列车自动防护系统的一个重要组成部分控制工程网版权所有,负责完成ATP车载部分的功能。北京地铁1号线所采用
1 Rhapsody框架特性
Rhapsody的实时框架是一个垂直框架,嵌入式和实时应用专门选择和优化的设计模板,实现了用于内务处理(如状态机的实现、容器类的实现等)代码的重写CONTROL ENGINEERING China版权所有,实时框架使得设计的模型与操作系统无关,通过实时框架,应用程序可以方便地从一个实时操作系统移植到其他的操作系统。
实时框架包含4个主要部分,如图1所示。对象执行框架提供UML模型执行的基本结构管理线程状态机的执行www.cechina.cn,对象间关联模式管理对象间的一对多、多对多关系,抽象操作系统与框架自身和实时操作系统无关,便于框架的移植动画,调试框架可以使用户进行基于模型的调试,如基于状态图的断点设置、捕捉不同对象间消息映射等。下面分析对象执行框架中的主要元素。
2 自动超速防护系统
2.1 自动超速防护系统概要
ATP(AutomaticTrainProtection,列车自动防护系统)具有超速防护、零速度检测和车门限制等功能,提供速度限制信息,以保持列车间的安全间隔,使列车在符合限制速度的标准下运行。超速防护车载设备是列车超速防护系统的一个重要组成部分,它是依据从ATP地面设备接收到的列车运行控制命令,对列车进行实时速度监督的一种安全保障设备。
2.2 北京地铁1号线ATP系统
ATP子系统实现所需的设备包括地面设备和车载设备。地面设备主要由集中设置的地面轨道电路FS2500无绝缘轨道电路构成,由发送器、接收器、码发生器及调谐单元组成;其发码由微机联锁设备及控制中心控制,以保证安全追踪间隔及临时限速等。车载设备的功能由地面信息接收部分、测速部分、速度比较控制部分等完成,当列车运行速度超过允许速度时,自动完成减速控制,车载设备由以微处理器为基础的安全子系统和非安全子系统、速度表、天线及装在不同轴上的测速电机组成。
ATP系统的功能包括:在设置区间闭塞分区时,保证列车追踪运行时的最小安全间隔,防止列车尾追事故;列车按线路最大允许安全速度运行,防止列车超速运行;确保所排进路正确、安全;确保提供车门正确开闭条件;区间临时限速。
2.3 利用软件Rhapsody对ATP(车载设备)建模
为了使系统软件具有较高的可靠性、可维护性,结构化、模块化是系统软件设计的关键CONTROL ENGINEERING China版权所有,软件模块的划分应尽量明确、相对独立,入口参数、出口参数意义范围明确。软件Rhapsody只支持英文环境,图中英文都有相应的解释。
2.3.1 需求分析
需求分析就是明确从外围系统的角度www.cechina.cn,要求列车运行控制仿真系统提供什么功能。在以往的需求分析中,始终没有一种合适的工具来保证系统需求的完整表达,所以直接导致了系统在完成后的检测中发现与真实情况不符。
在分析阶段引入全面支持UML的Rhapsody这个有效的形式化工具,以完整的、无歧义的语言表达上述功能需求,减少了设计人员的理解偏差,简化了开发过程中的交流。
图2为本案例的用例图,该图形象地表示了各个对象和用例之间的关系。driver(司机)启动是否进行ATP的操作,一旦启动ATP超速防护系统,ATPdevice(ATP车载设备)就处于超速防护状态,接受目标速度和实时运行速度,进行比较;如果司机按照允许速度操纵列车,速度监督设备不干预司机的正常操作。当司机违章操作或列