李明智 錢雪軍
(同濟(jì)大學(xué)電氣工程系,200092,上?!蔚谝蛔髡?,碩士研究生)
現(xiàn)代城市軌道交通系統(tǒng)的運(yùn)營管理越來越注重對乘客的服務(wù)質(zhì)量,讓乘客不但“走得了”,還要“走得好”。所以,在軌道交通的建設(shè)中,安全性與便捷性是重中之重,乘客信息系統(tǒng)(Passenger Information System,簡為PIS)也因此越來越受到重視。列車車載PIS是集引導(dǎo)、廣告、資訊、設(shè)備監(jiān)控和客流監(jiān)控為一體的綜合性系統(tǒng),它的應(yīng)用使乘客的出行更加方便快捷。
地鐵列車監(jiān)控顯示系統(tǒng)(Monitor Display System,簡為 MDS)則是PIS的重要組成部分。MDS在列車正常行駛情況下提供自動(dòng)發(fā)布通知并對車廂進(jìn)行視頻監(jiān)控等服務(wù),在緊急狀況下還能實(shí)現(xiàn)乘客向駕駛員緊急報(bào)警通話,達(dá)到讓駕駛員對車廂情況和危險(xiǎn)現(xiàn)場有第一手的了解。對MDS的仿真研究,可以完善駕駛仿真系統(tǒng)的功能,進(jìn)而使駕駛員熟練掌握對MDS的操作,提高其應(yīng)對駕駛中突發(fā)事件的處理能力。
MDS是車載PIS的重要子系統(tǒng),是與列車駕駛員的人機(jī)交互部分,是實(shí)現(xiàn)PIS系統(tǒng)管理、數(shù)據(jù)傳輸、功能執(zhí)行的重要組成部分。列車監(jiān)控顯示技術(shù)是多種技術(shù)的融合,是在自動(dòng)化技術(shù)不斷發(fā)展、自動(dòng)化程度不斷提高的要求下發(fā)展起來的。
PIS是運(yùn)用網(wǎng)絡(luò)技術(shù)與多媒體技術(shù)進(jìn)行信息多樣化顯示的系統(tǒng),它通過控制中心、廣告編輯中心、車站控制等系統(tǒng),對所需信息實(shí)時(shí)編輯、制作、傳遞,并通過車站或車上等離子或液晶顯示器,為地鐵乘客及地鐵員工提供以運(yùn)營信息為主、商業(yè)廣告為副的多媒體綜合信息顯示。PIS從結(jié)構(gòu)上可以分為中心控制系統(tǒng)、車站系統(tǒng)、車載系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)。車載PIS主要包括以下幾個(gè)部分:
1)司機(jī)室監(jiān)控顯示屏,主要用于接收和顯示視頻信息及輸出控制指令。
2)系統(tǒng)主機(jī),主要用來存儲(chǔ)系統(tǒng)數(shù)據(jù),包括列車行駛線路數(shù)據(jù)、一些音頻視頻數(shù)據(jù)、車載監(jiān)控視頻數(shù)據(jù)、各類系統(tǒng)控制指令,以及管理系統(tǒng)內(nèi)的所有功能設(shè)備,并執(zhí)行與其他設(shè)備相互通信的功能。
3)外圍設(shè)備,包括監(jiān)控?cái)z像頭、對講機(jī)和交換機(jī)等設(shè)備,主要用于畫面捕捉、對講通話等功能。車載PIS系統(tǒng)在DT車(帶受電弓拖車)內(nèi)的結(jié)構(gòu)如圖1所示。
圖1 DT車體PIS結(jié)構(gòu)圖
MDS監(jiān)控顯示存在于每個(gè)駕駛室中,并且不同行駛方向的列車受到不同MDS的監(jiān)控,但同一行駛列車的兩個(gè)駕駛室中MDS顯示的操作功能應(yīng)同時(shí)完全可用。因此,根據(jù)實(shí)際列車運(yùn)行時(shí)各種情況,MDS實(shí)現(xiàn)的主要功能如下:
1)自動(dòng)播報(bào)監(jiān)控。為操作人員列出所有站點(diǎn)信息,操作人員可以選擇或者取消某一站點(diǎn)的運(yùn)行信息。
2)預(yù)設(shè)信息發(fā)布。操作人員有選擇地為乘客播放或顯示預(yù)定義的音頻或者文本文件。
3)視頻監(jiān)控。通過設(shè)置在主要車廂中的攝像頭,監(jiān)控車廂環(huán)境及乘客安全。
4)語言選擇。MDS的操作環(huán)境應(yīng)該支持不同語言的使用。
5)緊急報(bào)警電話管理。當(dāng)車廂中緊急情況發(fā)生時(shí),允許乘客通過設(shè)置在車廂中的緊急通話設(shè)備與操作人員通話。操作人員可以同時(shí)處理多路通話,并從中了解緊急情況。
6)系統(tǒng)配置。操作人員可以通過此項(xiàng)設(shè)置來改變車廂內(nèi)的廣播或音樂的可用度,或者調(diào)解音量大小。
7)自檢。使操作人員對與MDS相連的設(shè)備進(jìn)行檢測,測試其的使用狀態(tài)。
本文研究的主要對象是應(yīng)用于印度孟買地鐵1號(hào)線列車駕駛仿真系統(tǒng)上的MDS,因此圍繞對方的技術(shù)要求和指標(biāo),在硬件和軟件上做以下研究。
MDS的人機(jī)交互顯示屏是一個(gè)可觸摸的擁有嵌入式操作系統(tǒng)的設(shè)備。為支持操作按鈕的信號(hào)輸入輸出,以及系統(tǒng)平臺(tái)上軟件的良好運(yùn)行,系統(tǒng)采用IEI公司的eKINO-945GSE主板,CPU型號(hào)為Intel公司的 AtomN270,主頻為1.60GHz,一個(gè)533MHz前端總線和512KB的高速緩存,內(nèi)存512MB,10PIN的數(shù)字輸入輸出接口(Digital Input/Output,簡為DIO),并采用PenMount公司的9000系列觸摸屏等硬件配置。
對于嵌入式設(shè)備,操作系統(tǒng)的選擇尤為重要。操作系統(tǒng)不僅關(guān)系到硬件與上層驅(qū)動(dòng)之間的通信,而且它還是應(yīng)用程序的承載平臺(tái),對系統(tǒng)的穩(wěn)定起到關(guān)鍵作用。
本MDS采用 Windows CE 6.0嵌入式技術(shù)進(jìn)行系統(tǒng)平臺(tái)的開發(fā)。Windows CE 6.0相對于Linux系統(tǒng)而言是高度模塊化的嵌入式操作系統(tǒng);Windows CE支持在多種不同的CPU硬件平臺(tái)上運(yùn)行,包括x86、MIPS、SuperH、ARM 等嵌入式領(lǐng)域主流的CPU結(jié)構(gòu)。Windows CE有著穩(wěn)健的實(shí)時(shí)性和安全性的支持。
運(yùn)用微軟強(qiáng)大的開發(fā)環(huán)境Visual Studio 2005 Platform Builder for Windows Embedded CE6.0來開發(fā)Windows CE嵌入式操作系統(tǒng)。這樣不僅可以快速生成操作平臺(tái),而且可以通過從平臺(tái)導(dǎo)出的SDK來方便地開發(fā)能夠運(yùn)行在目標(biāo)設(shè)備上的應(yīng)用程序。利用Windows CE提供的模板,可以快速地定制操作系統(tǒng)工程。
2.2.1 精簡并生成支持MFC的系統(tǒng)鏡像文件
在選擇適當(dāng)?shù)脑O(shè)計(jì)模板創(chuàng)建成功操作系統(tǒng)工程之后,就是生成能夠運(yùn)行于嵌入式仿真平臺(tái)的系統(tǒng)鏡像文件NK.bin并盡量使其精簡。
嵌入式設(shè)備的特點(diǎn)是可使用的存儲(chǔ)資源比臺(tái)式機(jī)來說少很多。因此,定制嵌入式系統(tǒng)采取的方法是盡量精簡內(nèi)核鏡像文件的大小,只添加需要的組件功能。而定制中文系統(tǒng)時(shí),內(nèi)核鏡像文件相對英文系統(tǒng)大10MB左右,而且在啟動(dòng)時(shí)將內(nèi)核鏡像文件復(fù)制到內(nèi)存中花的時(shí)間較長,同時(shí)占用較多的內(nèi)存。因此,對內(nèi)核鏡像文件的精簡,主要是在中文字體及其字庫的減少上。其核心思想是將默認(rèn)選擇的中文字體SimSun & NSimSun(SYSGEN_FONTS_SIMSUN)替換成SimSun 2.5版本,這樣既能滿足要求又能縮小文件體積;而后將字體庫保存到外部存儲(chǔ)器來減少內(nèi)核鏡像的大小。
因?yàn)槲④浌鞠趿薓FC架構(gòu)在應(yīng)用軟件中的使用,但現(xiàn)實(shí)市場中大量應(yīng)用程序都是由MFC構(gòu)建的,所以,在 Windows CE 6.0上需要添加對MFC應(yīng)用程序的支持。其方法是:將VisualStudio 2005安裝環(huán)境下的MFC框架動(dòng)態(tài)支持庫文件添加到BSP安裝目錄下的平臺(tái)文件夾Platform中,并在注冊表中寫入,然后選擇相應(yīng)的組件和Build Options選項(xiàng),點(diǎn)擊Build,便生成了系統(tǒng)鏡像文件NK.bin。
2.2.2 生成軟件開發(fā)工具包
生成鏡像文件之后,MDS的顯示屏就可以加載鏡像文件,運(yùn)行Windows CE操作系統(tǒng)了。下一步就是在這基礎(chǔ)上開發(fā)運(yùn)行于Windows CE上的仿真應(yīng)用程序。但在這之前,要生成適用于開發(fā)此環(huán)境應(yīng)用程序的軟件開發(fā)工具包(Software Development Kit,簡為SDK)。
在Solution Explorer窗口中的SDKs文件夾中選擇Add new SDK選項(xiàng),然后Build此SDK就生成了后綴為msi的文件。運(yùn)行此文件,就可以在Visual Studio 2005IDE下開發(fā)適用于此硬件環(huán)境的應(yīng)用程序了。
本文主要是對印度孟買地鐵1號(hào)線列車車載MDS的仿真研究,所以,應(yīng)用程序的開發(fā)過程實(shí)際上也是滿足和擴(kuò)展列車MDS的現(xiàn)實(shí)功能的過程,如自動(dòng)播報(bào)監(jiān)控、預(yù)設(shè)信息發(fā)布、視頻監(jiān)控和緊急報(bào)警電話管理等功能的實(shí)現(xiàn),而在開發(fā)應(yīng)用程序過程中,軟硬件結(jié)合實(shí)現(xiàn)鍵盤操控和OpenSceneGraph(OSG)實(shí)現(xiàn)視頻監(jiān)控仿真是重點(diǎn)也是難點(diǎn)。
為了使孟買1號(hào)線的MDS人機(jī)界面的物理鍵盤實(shí)現(xiàn)不同的控制,運(yùn)用eKINO-945GSE主板上的DIO的10個(gè)針腳對其進(jìn)行管理。除了其中12V電源和接地的針腳外,一般情況下,它可以控制4路輸出電平和4路輸入電平;而在特殊情況下,也可將8個(gè)針腳全部設(shè)置成輸入或者輸出。因此,DIO完全可以對此MDS進(jìn)行鍵盤管理。
想要使應(yīng)用程序?qū)︽I盤的狀態(tài)進(jìn)行讀取和控制并反映在屏幕上,只需要利用上文生成的SDK建立應(yīng)用程序工程,并在工程中添加智能系統(tǒng)管理模塊(Intelligent System Management Module,簡 為ISMM)庫文件,利用其中的DIO_GetConfig(),DIO_GetInput(),DIO_GetOutput()函數(shù)便可達(dá)到讀取和控制針腳狀態(tài)的目的。其效果如圖2。
OSG是一個(gè)跨平臺(tái)的C++庫,它是基于OpenGL的開放源代碼,用于實(shí)現(xiàn)視景仿真、虛擬現(xiàn)實(shí)、圖形特效、可視化計(jì)算等方面的研究。該技術(shù)主要由兩大部分組成:一部分是場景的組織、管理和遍歷技術(shù);另一部分是對場景的渲染技術(shù),以及不可見的剔除和場景模型的連續(xù)層次細(xì)節(jié)的實(shí)現(xiàn)。對于MDS中視頻監(jiān)控的仿真,關(guān)鍵點(diǎn)在于虛擬人的管理和視圖位置的選擇。
圖2 MDS人機(jī)界面顯示效果圖
3.2.1 虛擬人的管理
虛擬人的管理應(yīng)該包括虛擬人幾何模型的創(chuàng)建和運(yùn)動(dòng)的控制兩個(gè)部分。運(yùn)用 Multi-Paradigm公司的建模軟件Creator建立虛擬人模型,而要控制的虛擬人的關(guān)節(jié)都具有一定的自由度,因此需要把每個(gè)關(guān)節(jié)點(diǎn)都設(shè)為DOF節(jié)點(diǎn)。
虛擬人的控制,則通過利用OSG新建findNodeVistor類來訪問虛擬人模型中DOF節(jié)點(diǎn),并在OnInitialUpdate函數(shù)中讀取.osg文件;然后通過構(gòu)造類findNodeVistor的對象獲取虛擬人的每一部分,在虛擬人運(yùn)動(dòng)控制技術(shù)和經(jīng)驗(yàn)數(shù)據(jù)的基礎(chǔ)上使用參數(shù)化插值方法實(shí)現(xiàn)虛擬人的不同運(yùn)動(dòng)函數(shù),來達(dá)到模擬列車運(yùn)行環(huán)境下車廂中人物的運(yùn)動(dòng)。
3.2.2 視圖位置的選擇
世界坐標(biāo)系中的虛擬人需經(jīng)過一系列幾何變化(包括平移、旋轉(zhuǎn)等):為了使顯示的虛擬人能以合適的位置、大小和方向顯示出來,必須要通過投影;然后定義一個(gè)三維視景體,對虛擬人進(jìn)行裁剪只使投影在視景體內(nèi)的部分顯示出來。下一步在屏幕窗口內(nèi)定義一個(gè)矩形,稱為視口(Viewport)。視景投影后的圖形就在視口內(nèi)顯示。最后做一些適當(dāng)變換,使圖形在屏幕坐標(biāo)系下顯示。通過以上視圖位置的選擇,模擬了車廂監(jiān)控?cái)z像頭的拍攝畫面,實(shí)現(xiàn)了對視頻監(jiān)控功能的仿真。實(shí)現(xiàn)后的效果圖如圖3。
圖3 監(jiān)控顯示仿真效果圖
地鐵列車車載MDS系統(tǒng)的鍵盤操作實(shí)現(xiàn)及視頻監(jiān)控功能的仿真模擬,可以使列車駕駛仿真系統(tǒng)功能不僅具備實(shí)際需要的功能,而且還能提供虛擬的監(jiān)控畫面,使虛擬環(huán)境更加逼真,對提高受訓(xùn)學(xué)員掌握MDS系統(tǒng)操作以及處理緊急報(bào)警事件能力有明顯的現(xiàn)實(shí)意義。
[1]Samuel Phung.Professional Microsoft Windows Embedded CE 6.0[M].北京:清華大學(xué)出版社,2008.
[2]薛大龍,陳世帝,王韻.Windows CE嵌入式系統(tǒng)開發(fā)從基礎(chǔ)到實(shí)踐[M].北京:電子工業(yè)出版社,2008.
[3]Douglas Boling.Programing Embedded CE 6.0Developer Rreference[M].北京:機(jī)械工業(yè)出版社,2009.
[4]羅冠,赫重陽,張雯,等.虛擬人技術(shù)綜合綜述[J].計(jì)算機(jī)工程,2005(9):7.
[5]蔡國濤,陳蕾.對乘客信息系統(tǒng)(PIS)的分析[J].現(xiàn)代城市軌道交通,2008(1):9.
[6]倪茂春.城市軌道交通乘客導(dǎo)向系統(tǒng)設(shè)備監(jiān)控技術(shù)體系研究[J].城市軌道交通研究,2011(8):80.