日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

淺談基于UML的城軌列車超速防護(hù)系統(tǒng)建模_PHP教程

編輯Tag賺U幣
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!

推薦:關(guān)于php的職業(yè)分析--如何成為一名優(yōu)秀的phper
最近經(jīng)常有朋友跟我講,很想來學(xué)習(xí)php,但又不敢來學(xué),為什么?說是有人跟他講,php沒前途,程序員一大把,php程序員日益呈現(xiàn)白菜價(jià)趨勢(shì)。我對(duì)我的朋友講:只要你有技術(shù)過硬的信心,你完全可以按照自己的職業(yè)規(guī)劃前行。 不錯(cuò),現(xiàn)在的php程序員很多,但這個(gè)群

摘要:分析I-Logix公司的Rhapsody軟件的主要特性在Rhapsody開發(fā)環(huán)境下對(duì)北京地鐵1號(hào)線的ATP系統(tǒng)車載設(shè)備進(jìn)行UML建模,并介紹系統(tǒng)級(jí)調(diào)試功能。

統(tǒng)一建模語(yǔ)言UML(UnifiedModelingLanguage)是迄今為止最好的面向?qū)ο蟮慕y(tǒng)一建模語(yǔ)言,它取代了以往各種面向?qū)ο蟊硎痉?可以全面、細(xì)致地同時(shí)描敘業(yè)務(wù)和軟件系統(tǒng),實(shí)現(xiàn)軟件開發(fā)全生命周期建模的無(wú)縫統(tǒng)一。UML與OOAD(面向?qū)ο蠓治龊驮O(shè)計(jì))工具的結(jié)合,更使軟件工程思想的實(shí)現(xiàn)往前走了一大步。

美國(guó)I-Logix公司的Rhapsody是一種基于UML2.0的面向嵌入式應(yīng)用開發(fā)的集成可視化環(huán)境,它為嵌入式軟件的開發(fā)提供了一個(gè)“四化”的支撐平臺(tái),即可視化、工程化、自動(dòng)化和團(tuán)隊(duì)化。Rhapsody正在迅速成為國(guó)防/航空航天領(lǐng)域首選的MDD(模型驅(qū)動(dòng)開發(fā),ModelDrivenDevelopment)開發(fā)環(huán)境,在一系列項(xiàng)目中(如FutureCombatSystems(FCS)andF22等)被作為主要開發(fā)工具來使用。

列車自動(dòng)防護(hù)系統(tǒng)(ATP系統(tǒng))是城市軌道交通運(yùn)行控制系統(tǒng)的組成部分之一。它主要保證提供速度限制信息以保持列車間的安全間隔,使列車在符合限制速度的標(biāo)準(zhǔn)下運(yùn)行。ATP車載設(shè)備是列車自動(dòng)防護(hù)系統(tǒng)的一個(gè)重要組成部分,負(fù)責(zé)完成ATP車載部分的功能。北京地鐵1號(hào)線所采用的LCF100DT型車載設(shè)備是保證列車運(yùn)行安全、提高運(yùn)輸能力的地鐵信號(hào)專用技術(shù)的行車安全控制設(shè)備。本文首先介紹了Rhapsody的主要特性———實(shí)時(shí)框架,然后分析了ATP系統(tǒng)的工作原理,并在Rhapsody基礎(chǔ)上對(duì)北京地鐵1號(hào)線的ATP系統(tǒng)車載設(shè)備軟件系統(tǒng)進(jìn)行建模,最后分析了系統(tǒng)級(jí)調(diào)試功能。

1 Rhapsody框架特性

Rhapsody的實(shí)時(shí)框架是一個(gè)垂直框架,嵌入式和實(shí)時(shí)應(yīng)用專門選擇和優(yōu)化的設(shè)計(jì)模板,實(shí)現(xiàn)了用于內(nèi)務(wù)處理(如狀態(tài)機(jī)的實(shí)現(xiàn)、容器類的實(shí)現(xiàn)等)代碼的重寫,實(shí)時(shí)框架使得設(shè)計(jì)的模型與操作系統(tǒng)無(wú)關(guān),通過實(shí)時(shí)框架,應(yīng)用程序可以方便地從一個(gè)實(shí)時(shí)操作系統(tǒng)移植到其他的操作系統(tǒng)。

實(shí)時(shí)框架包含4個(gè)主要部分,如圖1所示。對(duì)象執(zhí)行框架提供UML模型執(zhí)行的基本結(jié)構(gòu)管理線程狀態(tài)機(jī)的執(zhí)行,對(duì)象間關(guān)聯(lián)模式管理對(duì)象間的一對(duì)多、多對(duì)多關(guān)系,抽象操作系統(tǒng)與框架自身和實(shí)時(shí)操作系統(tǒng)無(wú)關(guān),便于框架的移植動(dòng)畫,調(diào)試框架可以使用戶進(jìn)行基于模型的調(diào)試,如基于狀態(tài)圖的斷點(diǎn)設(shè)置、捕捉不同對(duì)象間消息映射等。下面分析對(duì)象執(zhí)行框架中的主要元素。

2 自動(dòng)超速防護(hù)系統(tǒng)

2.1 自動(dòng)超速防護(hù)系統(tǒng)概要

ATP(AutomaticTrainProtection,列車自動(dòng)防護(hù)系統(tǒng))具有超速防護(hù)、零速度檢測(cè)和車門限制等功能,提供速度限制信息,以保持列車間的安全間隔,使列車在符合限制速度的標(biāo)準(zhǔn)下運(yùn)行。超速防護(hù)車載設(shè)備是列車超速防護(hù)系統(tǒng)的一個(gè)重要組成部分,它是依據(jù)從ATP地面設(shè)備接收到的列車運(yùn)行控制命令,對(duì)列車進(jìn)行實(shí)時(shí)速度監(jiān)督的一種安全保障設(shè)備。

2.2 北京地鐵1號(hào)線ATP系統(tǒng)

ATP子系統(tǒng)實(shí)現(xiàn)所需的設(shè)備包括地面設(shè)備和車載設(shè)備。地面設(shè)備主要由集中設(shè)置的地面軌道電路FS2500無(wú)絕緣軌道電路構(gòu)成,由發(fā)送器、接收器、碼發(fā)生器及調(diào)諧單元組成;其發(fā)碼由微機(jī)聯(lián)鎖設(shè)備及控制中心控制,以保證安全追蹤間隔及臨時(shí)限速等。車載設(shè)備的功能由地面信息接收部分、測(cè)速部分、速度比較控制部分等完成,當(dāng)列車運(yùn)行速度超過允許速度時(shí),自動(dòng)完成減速控制,車載設(shè)備由以微處理器為基礎(chǔ)的安全子系統(tǒng)和非安全子系統(tǒng)、速度表、天線及裝在不同軸上的測(cè)速電機(jī)組成。

ATP系統(tǒng)的功能包括:在設(shè)置區(qū)間閉塞分區(qū)時(shí),保證列車追蹤運(yùn)行時(shí)的最小安全間隔,防止列車尾追事故;列車按線路最大允許安全速度運(yùn)行,防止列車超速運(yùn)行;確保所排進(jìn)路正確、安全;確保提供車門正確開閉條件;區(qū)間臨時(shí)限速。

2.3 利用軟件Rhapsody對(duì)ATP(車載設(shè)備)建模

為了使系統(tǒng)軟件具有較高的可靠性、可維護(hù)性,結(jié)構(gòu)化、模塊化是系統(tǒng)軟件設(shè)計(jì)的關(guān)鍵,軟件模塊的劃分應(yīng)盡量明確、相對(duì)獨(dú)立,入口參數(shù)、出口參數(shù)意義范圍明確。軟件Rhapsody只支持英文環(huán)境,圖中英文都有相應(yīng)的解釋。

2.3.1 需求分析

需求分析就是明確從外圍系統(tǒng)的角度,要求列車運(yùn)行控制仿真系統(tǒng)提供什么功能。在以往的需求分析中,始終沒有一種合適的工具來保證系統(tǒng)需求的完整表達(dá),所以直接導(dǎo)致了系統(tǒng)在完成后的檢測(cè)中發(fā)現(xiàn)與真實(shí)情況不符。

在分析階段引入全面支持UML的Rhapsody這個(gè)有效的形式化工具,以完整的、無(wú)歧義的語(yǔ)言表達(dá)上述功能需求,減少了設(shè)計(jì)人員的理解偏差,簡(jiǎn)化了開發(fā)過程中的交流。

圖2為本案例的用例圖,該圖形象地表示了各個(gè)對(duì)象和用例之間的關(guān)系。driver(司機(jī))啟動(dòng)是否進(jìn)行ATP的操作,一旦啟動(dòng)ATP超速防護(hù)系統(tǒng),ATPdevice(ATP車載設(shè)備)就處于超速防護(hù)狀態(tài),接受目標(biāo)速度和實(shí)時(shí)運(yùn)行速度,進(jìn)行比較;如果司機(jī)按照允許速度操縱列車,速度監(jiān)督設(shè)備不干預(yù)司機(jī)的正常操作。當(dāng)司機(jī)違章操作或列車運(yùn)行超過允許速度時(shí),ATP車載設(shè)備將自動(dòng)實(shí)施制動(dòng)。其中,車載設(shè)備主要實(shí)現(xiàn)以下幾個(gè)功能:initialtrain(自檢并初始化車載設(shè)備),acquireactualspeed(獲得實(shí)際速度),acquireactualspeed(獲得列車實(shí)際運(yùn)行的實(shí)時(shí)速度),acquirelmiitedspeed(獲得允許速度,即入口區(qū)段的列車速度),acquiregoalspeed(獲得出口區(qū)段的目標(biāo)速度),protectspeed(對(duì)列車運(yùn)行進(jìn)行速度防護(hù)及監(jiān)督),announceemergency(超速告警),braketrain(當(dāng)發(fā)現(xiàn)列車超過允許速度,強(qiáng)行制動(dòng)列車),司機(jī)要實(shí)現(xiàn)的功能是:brakebyhuman(人工制動(dòng))以及activitateATP(模式開關(guān)的選擇和司控開關(guān)狀態(tài)的采集)。

2.3.2 類的劃分和處理

由功能需求分析確定,利用面向?qū)ο笤O(shè)計(jì)思想,將各個(gè)部分用對(duì)象來描述,將具有一定屬性和操作的對(duì)象聚集成類的表現(xiàn)形式。從邏輯上看,一個(gè)對(duì)象是獨(dú)立存在的模塊,從外界來看,只需要了解它具有哪些功能,至于如何實(shí)現(xiàn)這些功能對(duì)外界都是屏蔽的。系統(tǒng)中的各個(gè)對(duì)象通過消息激活機(jī)制被動(dòng)態(tài)聯(lián)系在一起,并可利用面向?qū)ο蠼V蓄惖睦^承性,簡(jiǎn)化類和對(duì)象的生成。如果不同的類有共同的屬性和方法,依據(jù)類的層次把這些共同性概括為總類。

圖3為本系統(tǒng)的對(duì)象模型圖。

北京地鐵1號(hào)線使用的控制方式是分級(jí)速度控制方式的出口檢查方式:在一個(gè)閉塞分區(qū)中,只按照一種允許速度判斷列車是否超速,并且要求司機(jī)在閉塞分區(qū)內(nèi)將列車運(yùn)行降低到目標(biāo)速度,設(shè)備在閉塞分區(qū)出口檢查列車運(yùn)行速度,這個(gè)過程主要通過ProtectSpee(防護(hù)速度)類來實(shí)現(xiàn)。列車的允許速度為該區(qū)段的入口速度,機(jī)車信號(hào)顯示器給出目標(biāo)速度。本區(qū)段的目標(biāo)速度就是下個(gè)閉塞分區(qū)的允許速度,各種速度的獲得是在SignalConditionIn(信號(hào)輸入)中實(shí)現(xiàn)的,另外還設(shè)立了DriverCommand(駕駛命令)類以及BrakeControlle(制動(dòng)控制)類來完成ATP啟動(dòng)列車制動(dòng)的動(dòng)作。各個(gè)類中的函數(shù)及其事件在這里就不再詳細(xì)描述。

2.3.3 狀態(tài)圖分析

UML編程過程是在狀態(tài)圖中定義的,由于狀態(tài)圖的表達(dá)性和可伸縮性都很好,UML用它們作為正式的FSM(有限狀態(tài)機(jī))表示。有限狀態(tài)機(jī)是由已存在的條件(稱為“狀態(tài)”)的有限集定義的機(jī)器,同樣也是狀態(tài)間因事物觸發(fā)的狀態(tài)轉(zhuǎn)移有限集。本案例的行為是通過各個(gè)類的狀態(tài)和轉(zhuǎn)換關(guān)系進(jìn)行定義的,為了使?fàn)顟B(tài)圖不趨于復(fù)雜化,并方便以后的更精確化,我們將各個(gè)類分配狀態(tài)圖。在這里,我們將主要類———ProtectSpeed(防護(hù)速度類)進(jìn)行討論(見圖4),包括CompareSpeed(防護(hù)區(qū)段內(nèi)列車速度控制在允許速度之下)、GetdownActualSpeed(保證列車在區(qū)段出口時(shí)速度降低到目標(biāo)速度)、RefreshActualSpeed(不斷得到列車實(shí)際運(yùn)行速度)。

比如,在RefreshActualSpeed(刷新實(shí)際速度)中需要獲得處理好的數(shù)字速度,在該狀態(tài)中加入Actual-Speed=SignalConditionerIn->GetActualSpeed(),這樣就可以從SignalConditionIn(信號(hào)輸入)中得到最大列車實(shí)際運(yùn)行速度。

在CompareSpeed(速度比較)中對(duì)得到的實(shí)際速度和最大允許速度比較,若超出規(guī)則進(jìn)入制動(dòng)狀態(tài),狀態(tài)圖進(jìn)入BrakeController(制動(dòng)控制)的狀態(tài)圖中。

2.4 代碼生成及系統(tǒng)級(jí)調(diào)試

當(dāng)以上設(shè)計(jì)完成時(shí),我們能夠產(chǎn)生代碼并測(cè)試系統(tǒng)模型。我們需要用Component組件來告訴Rhapsody產(chǎn)生什么樣的環(huán)境。通常我們使用的是Microsoft環(huán)境(Windows操作系統(tǒng)和VisualC++編譯器),這樣Rhapsody可以產(chǎn)生VisualC++6.0和基于VxWorks的C++程序。

Rhapsody通過動(dòng)態(tài)化狀態(tài)圖和順序圖促進(jìn)了建模級(jí)的調(diào)試。用戶可以在一個(gè)“面向?qū)ο?rdquo;尺度上(操作調(diào)用,單個(gè)事件處理,整個(gè)事件隊(duì)列)單步調(diào)試應(yīng)用,并可以觀察狀態(tài)圖的影響(如活動(dòng)圖的變化)。Rhapsody提供了3種不同層次的動(dòng)畫控制指令(在conf iguration中進(jìn)行設(shè)置添加)。第1種是none,即要生成的是可發(fā)布的代碼;第2種是tracing,它能夠隨著執(zhí)行過程在主機(jī)的標(biāo)準(zhǔn)輸出設(shè)備上顯示文本的執(zhí)行跟蹤信息,第3個(gè)層次是anmiation(圖形動(dòng)畫),以動(dòng)畫形式進(jìn)行演示。

Rhapsody代碼在目標(biāo)機(jī)上運(yùn)行的同時(shí),運(yùn)行情況動(dòng)態(tài)反饋到設(shè)計(jì)模型中來,例如基于狀態(tài)圖的斷點(diǎn)設(shè)置、在順序圖上捕捉不同對(duì)象之間的消息映射等。在進(jìn)行設(shè)計(jì)級(jí)調(diào)試的同時(shí),與代碼級(jí)調(diào)試工具聯(lián)合調(diào)試。Rhapsody通過模型級(jí)/代碼級(jí)聯(lián)合調(diào)試、驗(yàn)證,能夠直觀地盡早發(fā)現(xiàn)系統(tǒng)的設(shè)計(jì)錯(cuò)誤或缺陷,從而較早地確定或降低項(xiàng)目風(fēng)險(xiǎn)。

另外,Rhapsody可以生成高質(zhì)量的中文文檔,可以生成軟件應(yīng)用所需的框架結(jié)構(gòu)、運(yùn)行庫(kù)、編譯文件、通訊方式、實(shí)施策略等。而且模型和代碼的一致性更保證了文檔和代碼的一致性,為我們順利地完成開發(fā)、后期經(jīng)驗(yàn)的累積提供了很好的平臺(tái)�?梢酝ㄟ^定制模板,生成適合具體工作要求的文檔。

3 結(jié)論

通過對(duì)北京地鐵1號(hào)線的UML建模,可以縮短車載設(shè)備軟件的開發(fā)周期。本文針對(duì)北京地鐵1號(hào)線的LCF-100DT型車載設(shè)備進(jìn)行UML建模,利用了Rhapsody這個(gè)基于UML語(yǔ)言的開發(fā)環(huán)境,UML的狀態(tài)機(jī)模型與車載設(shè)備極好地對(duì)應(yīng),且便于借助CASE工具實(shí)現(xiàn)代碼自動(dòng)生成,能夠極大地提高車載設(shè)備軟件的開發(fā)效率和項(xiàng)目可管理性。Rhapsody采用基于模型的開發(fā)方式,為系統(tǒng)的開發(fā)提供了清晰的結(jié)構(gòu)以及可復(fù)用的軟件模塊,能夠切實(shí)提高實(shí)時(shí)軟件的開發(fā)效率和可維護(hù)性,并可在系統(tǒng)級(jí)進(jìn)行調(diào)試,從而提高系統(tǒng)的可靠性和實(shí)時(shí)性。Rhapsody提供了一個(gè)完整的用于復(fù)雜實(shí)時(shí)嵌入式的應(yīng)用軟件,是從分析、設(shè)計(jì)一直到代碼實(shí)現(xiàn)和軟件測(cè)試的開發(fā)環(huán)境。

 

分享:淺談PHP 的八卦兩則
PHP5.3 的正式發(fā)布,又重新關(guān)注起其語(yǔ)言本身。細(xì)心的朋友可能發(fā)現(xiàn),PHP5.3 增加了 goto 語(yǔ)句,這在結(jié)構(gòu)化語(yǔ)言今天似乎是有點(diǎn)不可思議的事情。 按照官方的說法,其實(shí)這和我們傳統(tǒng)理解的 goto 還是有所差別。PHP 5.3 中的 goto 語(yǔ)句只能在腳本文件以及上下文中

來源:模板無(wú)憂//所屬分類:PHP教程/更新時(shí)間:2009-10-01
相關(guān)PHP教程