工控网首页
>

应用设计

>

基于UML的城轨列车超速防护系统建模

基于UML的城轨列车超速防护系统建模

2009/5/7 10:52:00

摘 要 分析I-Logix公司的Rhapsody软件的主要特性在Rhapsody开发环境下对北京地铁1号线的ATP系统车载设备进行UML建模,并介绍系统级调试功能。

关键词 UML Rhapsody 面向对象 嵌入式系统 建模

  统一建模语言UML(UnifiedModelingLanguage)是迄今为止最好的面向对象的统一建模语言,它取代了以往各种面向对象表示法,可以全面、细致地同时描叙业务和软件系统,实现软件开发全生命周期建模的无缝统一。UML与OOAD(面向对象分析和设计)工具的结合,更使软件工程思想的实现往前走了一大步。

  美国I-Logix公司的Rhapsody是一种基于UML2.0的面向嵌入式应用开发的集成可视化环境,它为嵌入式软件的开发提供了一个“四化”的支撑平台,即可视化、工程化、自动化和团队化。Rhapsody正在迅速成为国防/航空航天领域首选的MDD(模型驱动开发,ModelDrivenDevelopment)开发环境,在一系列项目中(如FutureCombatSystems(FCS)andF22等)被作为主要开发工具来使用。

  列车自动防护系统(ATP系统)是城市轨道交通运行控制系统的组成部分之一。它主要保证提供速度限制信息以保持列车间的安全间隔,使列车在符合限制速度的标准下运行。ATP车载设备是列车自动防护系统的一个重要组成部分,负责完成ATP车载部分的功能。北京地铁1号线所采用的LCF100DT型车载设备是保证列车运行安全、提高运输能力的地铁信号专用技术的行车安全控制设备。本文首先介绍了Rhapsody的主要特性———实时框架,然后分析了ATP系统的工作原理,并在Rhapsody基础上对北京地铁1号线的ATP系统车载设备软件系统进行建模,最后分析了系统级调试功能。

1 Rhapsody框架特性

  Rhapsody的实时框架是一个垂直框架,嵌入式和实时应用专门选择和优化的设计模板,实现了用于内务处理(如状态机的实现、容器类的实现等)代码的重写,实时框架使得设计的模型与操作系统无关,通过实时框架,应用程序可以方便地从一个实时操作系统移植到其他的操作系统。

  实时框架包含4个主要部分,如图1所示。对象执行框架提供UML模型执行的基本结构管理线程状态机的执行,对象间关联模式管理对象间的一对多、多对多关系,抽象操作系统与框架自身和实时操作系统无关,便于框架的移植动画,调试框架可以使用户进行基于模型的调试,如基于状态图的断点设置、捕捉不同对象间消息映射等。下面分析对象执行框架中的主要元素。

   

 

  

2 自动超速防护系统

  2.1 自动超速防护系统概要

  ATP(AutomaticTrainProtection,列车自动防护系统)具有超速防护、零速度检测和车门限制等功能,提供速度限制信息,以保持列车间的安全间隔,使列车在符合限制速度的标准下运行。超速防护车载设备是列车超速防护系统的一个重要组成部分,它是依据从ATP地面设备接收到的列车运行控制命令,对列车进行实时速度监督的一种安全保障设备。

  2.2 北京地铁1号线ATP系统

  ATP子系统实现所需的设备包括地面设备和车载设备。地面设备主要由集中设置的地面轨道电路FS2500无绝缘轨道电路构成,由发送器、接收器、码发生器及调谐单元组成;其发码由微机联锁设备及控制中心控制,以保证安全追踪间隔及临时限速等。车载设备的功能由地面信息接收部分、测速部分、速度比较控制部分等完成,当列车运行速度超过允许速度时,自动完成减速控制,车载设备由以微处理器为基础的安全子系统和非安全子系统、速度表、天线及装在不同轴上的测速电机组成。

  ATP系统的功能包括:在设置区间闭塞分区时,保证列车追踪运行时的最小安全间隔,防止列车尾追事故;列车按线路最大允许安全速度运行,防止列车超速运行;确保所排进路正确、安全;确保提供车门正确开闭条件;区间临时限速。

  2.3 利用软件Rhapsody对ATP(车载设备)建模

  为了使系统软件具有较高的可靠性、可维护性,结构化、模块化是系统软件设计的关键,软件模块的划分应尽量明确、相对独立,入口参数、出口参数意义范围明确。软件Rhapsody只支持英文环境,图中英文都有相应的解释。

  2.3.1 需求分析

  需求分析就是明确从外围系统的角度,要求列车运行控制仿真系统提供什么功能。在以往的需求分析中,始终没有一种合适的工具来保证系统需求的完整表达,所以直接导致了系统在完成后的检测中发现与真实情况不符。

  在分析阶段引入全面支持UML的Rhapsody这个有效的形式化工具,以完整的、无歧义的语言表达上述功能需求,减少了设计人员的理解偏差,简化了开发过程中的交流。

  

  图2为本案例的用例图,该图形象地表示了各个对象和用例之间的关系。driver(司机)启动是否进行ATP的操作,一旦启动ATP超速防护系统,ATPdevice(ATP车载设备)就处于超速防护状态,接受目标速度和实时运行速度,进行比较;如果司机按照允许速度操纵列车,速度监督设备不干预司机的正常操作。当司机违章操作或列车运行超过允许速度时,ATP车载设备将自动实施制动。其中,车载设备主要实现以下几个功能:initialtrain(自检并初始化车载设备),acquireactualspeed(获得实际速度),acquireactualspeed(获得列车实际运行的实时速度),acquirelmiitedspeed(获得允许速度,即入口区段的列车速度),acquiregoalspeed(获得出口区段的目标速度),protectspeed(对列车运行进行速度防护及监督),announceemergency(超速告警),braketrain(当发现列车超过允许速度,强行制动列车),司机要实现的功能是:brakebyhuman(人工制动)以及activitateATP(模式开关的选择和司控开关状态的采集)。

  2.3.2 类的划分和处理

  由功能需求分析确定,利用面向对象设计思想,将各个部分用对象来描述,将具有一定属性和操作的对象聚集成类的表现形式。从逻辑上看,一个对象是独立存在的模块,从外界来看,只需要了解它具有哪些功能,至于如何实现这些功能对外界都是屏蔽的。系统中的各个对象通过消息激活机制被动态联系在一起,并可利用面向对象建模中类的继承性,简化类和对象的生成。如果不同的类有共同的属性和方法,依据类的层次把这些共同性概括为总类。

  图3为本系统的对象模型图。

  

  北京地铁1号线使用的控制方式是分级速度控制方式的出口检查方式:在一个闭塞分区中,只按照一种允许速度判断列车是否超速,并且要求司机在闭塞分区内将列车运行降低到目标速度,设备在闭塞分区出口检查列车运行速度,这个过程主要通过ProtectSpee(防护速度)类来实现。列车的允许速度为该区段的入口速度,机车信号显示器给出目标速度。本区段的目标速度就是下个闭塞分区的允许速度,各种速度的获得是在SignalConditionIn(信号输入)中实现的,另外还设立了DriverCommand(驾驶命令)类以及BrakeControlle(制动控制)类来完成ATP启动列车制动的动作。各个类中的函数及其事件在这里就不再详细描述。

  2.3.3 状态图分析

  UML编程过程是在状态图中定义的,由于状态图的表达性和可伸缩性都很好,UML用它们作为正式的FSM(有限状态机)表示。有限状态机是由已存在的条件(称为“状态”)的有限集定义的机器,同样也是状态间因事物触发的状态转移有限集。本案例的行为是通过各个类的状态和转换关系进行定义的,为了使状态图不趋于复杂化,并方便以后的更精确化,我们将各个类分配状态图。在这里,我们将主要类———ProtectSpeed(防护速度类)进行讨论(见图4),包括CompareSpeed(防护区段内列车速度控制在允许速度之下)、GetdownActualSpeed(保证列车在区段出口时速度降低到目标速度)、RefreshActualSpeed(不断得到列车实际运行速度)。

  

  比如,在RefreshActualSpeed(刷新实际速度)中需要获得处理好的数字速度,在该状态中加入Actual-Speed=SignalConditionerIn->GetActualSpeed(),这样就可以从Sig

投诉建议

提交

查看更多评论
其他资讯

查看更多

助力企业恢复“战斗状态”:MyMRO我的万物集·固安捷升级开工场景方案

车规MOSFET技术确保功率开关管的可靠性和强电流处理能力

未来十年, 化工企业应如何提高资源效率及减少运营中的碳足迹?

2023年制造业“开门红”,抢滩大湾区市场锁定DMP工博会

2023钢铁展洽会4月全新起航 将在日照触发更多商机