雷劍鋒 郭鑫
西南交通大學(xué)牽引動(dòng)力國(guó)家重點(diǎn)實(shí)驗(yàn)室,四川 成都 610031
列車網(wǎng)絡(luò)控制技術(shù)的發(fā)展方向逐步從單臺(tái)機(jī)車控制轉(zhuǎn)向列車網(wǎng)絡(luò)控制。同時(shí),基于我國(guó)的現(xiàn)實(shí)情況,電動(dòng)車組、高速列車、城市軌道交通車輛等新的鐵路機(jī)車車輛在運(yùn)輸中擔(dān)任了越來(lái)越重要的任務(wù)。在列車通信網(wǎng)絡(luò)技術(shù)中,二型動(dòng)車組的網(wǎng)絡(luò)控制系統(tǒng)具有很重要的意義。該系統(tǒng)不僅可以通過(guò)貫穿列車的總線來(lái)實(shí)現(xiàn)傳輸信息的功能,同時(shí)還能夠集中管理列車的運(yùn)行狀況甚至車載設(shè)備動(dòng)作的相關(guān)信息。以純軟件(通過(guò)以太網(wǎng))模擬CRH2動(dòng)車通信網(wǎng)絡(luò)的工作過(guò)程,實(shí)現(xiàn)高速列車牽引傳動(dòng)和列車網(wǎng)絡(luò)系統(tǒng)--網(wǎng)絡(luò)系統(tǒng)虛擬仿真系統(tǒng)與綜合仿真平臺(tái)之間的無(wú)縫連接。本設(shè)計(jì)的主要研究?jī)?nèi)容有:車載設(shè)備數(shù)據(jù)模型界面設(shè)計(jì);車載設(shè)備與網(wǎng)絡(luò)之間的通信接口規(guī)范的實(shí)現(xiàn);車載設(shè)備命令及狀態(tài)數(shù)據(jù)的軟件產(chǎn)生;數(shù)據(jù)交換,基于以太網(wǎng)的TCP/IP(socket)通信,數(shù)據(jù)傳輸過(guò)程模擬。
本次設(shè)計(jì)設(shè)定在2M1T基本動(dòng)力單元中來(lái)進(jìn)行仿真,以2M1T模型為研究對(duì)象。“2M+1T”為常見(jiàn)的動(dòng)力單元,極其具有代表性,即含有具有牽引功能的動(dòng)車部分,又含有無(wú)動(dòng)力的拖車部分,同時(shí)又可以以整體為單位進(jìn)行多單元聯(lián)掛完成列車的構(gòu)建,如CRH1常見(jiàn)編組形式為2(2M1T)+1M1T。此外,2M1T的基本動(dòng)力模型中,既包含了功能不同的動(dòng)車和拖車進(jìn)行對(duì)比,也包含了兩輛相同的動(dòng)車進(jìn)行對(duì)比。以純軟件(通過(guò)以太網(wǎng))模擬CRH2動(dòng)車通信網(wǎng)絡(luò)的工作過(guò)程,簡(jiǎn)化模型如圖1所示。
圖1 2M1T設(shè)計(jì)總體方案圖
根據(jù)各車載設(shè)備接口規(guī)格書(shū)的要求,列車網(wǎng)絡(luò)系統(tǒng)中傳遞的數(shù)據(jù)信息均為一次性發(fā)送的數(shù)據(jù)塊,數(shù)據(jù)包中數(shù)據(jù)多而復(fù)雜,不同的字節(jié)代表了不同的含義,若使用一般的數(shù)據(jù)傳遞方式,采用若干個(gè)TCP數(shù)據(jù)節(jié)點(diǎn)來(lái)寫(xiě)入讀取信息會(huì)使整個(gè)程序龐雜無(wú)序,并且編寫(xiě)過(guò)程中一旦出現(xiàn)錯(cuò)誤,將很難準(zhǔn)確查找及修改。因此本次設(shè)計(jì)采用2維n*8布爾數(shù)組來(lái)模擬數(shù)據(jù)包的傳輸,例如空調(diào)顯示設(shè)定器對(duì)象機(jī)器側(cè)發(fā)送數(shù)據(jù)以36*8的布爾數(shù)組模擬,每列8個(gè)布爾量分別代表每個(gè)字節(jié)的數(shù)據(jù)。當(dāng)空調(diào)設(shè)備狀態(tài)發(fā)生變化時(shí),則采用替換數(shù)組子集的方式對(duì)數(shù)據(jù)進(jìn)行修改;數(shù)據(jù)在局域網(wǎng)進(jìn)行傳遞時(shí),則將二維布爾數(shù)組轉(zhuǎn)換為字符串?dāng)?shù)據(jù)在局域網(wǎng)中傳輸;數(shù)據(jù)接收之后將字符串還原成二維布爾數(shù)組,并且對(duì)數(shù)組子集進(jìn)行讀取,即可得到所傳遞的具體數(shù)據(jù)。
2.3 二維布爾數(shù)組向字符串轉(zhuǎn)換的實(shí)現(xiàn)
由于LabVIEW的TCP/IP局域網(wǎng)通信只能在兩機(jī)之間傳輸字符串?dāng)?shù)據(jù)的局限性,數(shù)據(jù)包采用二維布爾數(shù)組表示,就必須實(shí)現(xiàn)二維布爾數(shù)組向字符串轉(zhuǎn)換的過(guò)程。又由于二維布爾數(shù)組數(shù)據(jù)組成十分特殊,既為二維數(shù)組,數(shù)組的組成又是布爾常量,因此轉(zhuǎn)換過(guò)程比較復(fù)雜,本文在設(shè)計(jì)的過(guò)程中,重點(diǎn)攻克了這一難點(diǎn)。
轉(zhuǎn)換過(guò)程中,本文利用了for循環(huán)的自動(dòng)索引功能,二維布爾數(shù)組進(jìn)入for循環(huán)會(huì)自動(dòng)進(jìn)行索引,轉(zhuǎn)換成一維數(shù)組,在for循環(huán)內(nèi),將一維布爾數(shù)組中的布爾常量轉(zhuǎn)換為數(shù)字常量,數(shù)據(jù)出for循環(huán)的時(shí)候自動(dòng)進(jìn)行索引,重新轉(zhuǎn)換成二維數(shù)組,此時(shí)數(shù)組中的元素為數(shù)字,最終進(jìn)行字節(jié)數(shù)組至字符串轉(zhuǎn)換,得到所需的字符串進(jìn)行雙機(jī)通信。此外,二維布爾數(shù)組在進(jìn)入for循環(huán)之前,由于數(shù)組的列數(shù)過(guò)多,需提前進(jìn)行二維數(shù)組的轉(zhuǎn)置才能正常進(jìn)行轉(zhuǎn)換。同樣的,終端裝置接收到字符串?dāng)?shù)據(jù)需要轉(zhuǎn)換為二維布爾數(shù)組進(jìn)行數(shù)據(jù)處理時(shí)只需將此過(guò)程逆用即可完成。
表1 制動(dòng)控制裝置對(duì)象機(jī)側(cè)發(fā)送數(shù)據(jù)TEXT(25)—TEXT(45)
根據(jù)各車載設(shè)備的接口規(guī)格書(shū),編寫(xiě)程序,使所編寫(xiě)的虛擬儀器能夠進(jìn)行數(shù)據(jù)的修改、傳遞、讀取、顯示。設(shè)計(jì)按照如下步驟完成:先完成前面板設(shè)計(jì);然后進(jìn)行程序框圖的連線;最后完善數(shù)據(jù)的傳輸環(huán)節(jié)。
制動(dòng)控制裝置的傳輸數(shù)據(jù)格式如下:
對(duì)象機(jī)器側(cè)發(fā)送數(shù)據(jù)
實(shí)時(shí)監(jiān)控用信息(狀態(tài)數(shù)據(jù):SD)
數(shù)據(jù)格式
TEXT(0): 20H (文本種類編碼)
TEXT(1)~(45): 狀態(tài)數(shù)據(jù)(以下的共45字節(jié))
分析45字節(jié)長(zhǎng)的所有數(shù)據(jù),把各數(shù)據(jù)進(jìn)行分類,大致分為三大部分,第一部分為故障信息,第二部分為狀態(tài)信息,第三部分為數(shù)值信息。例如:
圖2 制動(dòng)控制裝置對(duì)象機(jī)側(cè)發(fā)送數(shù)據(jù)TEXT(18)
圖2中“MRC卡正?!睘楣收闲畔ⅲ黄溆?項(xiàng)為狀態(tài)信息;表中顯示數(shù)據(jù)為數(shù)值信息。
然后,根據(jù)分組,設(shè)計(jì)前面板,將同類的數(shù)據(jù)放在一起以方便數(shù)據(jù)的顯示監(jiān)控。同理,以同樣的方法分析裝置接口規(guī)格書(shū)中的信息控制裝置發(fā)送數(shù)據(jù)得到終端信號(hào)接收界面的前面板。(表1)
根據(jù)CRH2列車的實(shí)際運(yùn)行情況,動(dòng)車與拖車所搭載的車載設(shè)備有所不同,同樣的車載設(shè)備所監(jiān)控與傳輸?shù)男畔⑼瑯右灿兴鶇^(qū)別,所以,主程序編寫(xiě)完成之后需要對(duì)程序進(jìn)行修改,以對(duì)應(yīng)3輛車的實(shí)際情況。
如圖3所示,動(dòng)車與拖車最大的區(qū)別在于拖車搭載了輔助電源裝置,而動(dòng)車則是搭載了牽引變流裝置,因此分裝在拖車的程序中需刪除牽引變流裝置,并且刪除在終端裝置程序中的牽引變流裝置選項(xiàng)卡;同理分裝在動(dòng)車的程序中需刪除輔助電源裝置,并且刪除在終端程序中的輔助電源裝置選項(xiàng)卡。
此外,根據(jù)制動(dòng)控制裝置接口規(guī)格書(shū),如圖4所示,動(dòng)車與拖車的制動(dòng)控制裝置所監(jiān)控的內(nèi)容有所不同,需要在分裝的同時(shí)進(jìn)行修改。
圖3 動(dòng)車與拖車搭載的車載設(shè)備的區(qū)別
圖4 制動(dòng)控制裝置中傳輸數(shù)據(jù)的區(qū)別
3.3.1 通信端口數(shù)值與IP地址的約定
此次設(shè)計(jì)所創(chuàng)建的程序窗口數(shù)量很多,而且相互之間存在不同的數(shù)據(jù)傳輸,因此,為了方便程序的編寫(xiě)與調(diào)試,提前將程序之間通信端口數(shù)值與各實(shí)驗(yàn)機(jī)器IP地址進(jìn)行約定是必要的。
本次設(shè)計(jì)中通信端口數(shù)值采用四位數(shù)字組成:
千位數(shù)固定為1,表示列車網(wǎng)絡(luò)車載設(shè)備信息通信部分,以便以后與其他部分的仿真能夠相互兼容;
百位數(shù)表示分裝在不同車輛上的程序:0表示拖車、1表示動(dòng)車1、2表示動(dòng)車2;
十位數(shù)表示所代表的車載設(shè)備的程序:0表示制動(dòng)控制裝置、1表示側(cè)面目的地顯示器、2表示牽引變流裝置、3表示輔助電源裝置、4表示指南信息顯示器、5表示空調(diào)顯示設(shè)定器;
個(gè)位數(shù)字表示信息在車載設(shè)備與終端裝置之間傳遞的方向:0表示終端裝置傳輸?shù)杰囕d設(shè)備的指令信息、1表示車載設(shè)備傳輸?shù)浇K端裝置的狀態(tài)監(jiān)控信息。
例如,動(dòng)車1上搭載的制動(dòng)控制裝置向該車輛上的終端裝置傳輸?shù)男畔⑺捎玫亩丝跒?101;拖車上終端裝置向該車輛上搭載的輔助電源裝置發(fā)出的控制指令信息所采用的端口為1030。
采用此種方式大大降低了程序的編寫(xiě)與調(diào)試難度。
實(shí)驗(yàn)室中用于調(diào)試的4臺(tái)計(jì)算機(jī)表示不同的裝置,因此需要將各自在局域網(wǎng)中的IP地址進(jìn)行規(guī)范,以方便調(diào)試。具體設(shè)置如圖5。
圖5 實(shí)驗(yàn)室計(jì)算機(jī)IP地址設(shè)定值
3.3.2 實(shí)驗(yàn)室調(diào)試
完成實(shí)驗(yàn)室局域網(wǎng)的建立與程序的編寫(xiě)之后進(jìn)行程序的實(shí)驗(yàn)室調(diào)試,重點(diǎn)排查TCP/IP局域網(wǎng)信息的傳輸與各程序的運(yùn)行狀態(tài),以完善程序的編寫(xiě)。
本文利用了LabVIEW虛擬儀器編程,獨(dú)立完成了2型動(dòng)車組2M1T模型各車載設(shè)備以及終端系統(tǒng)的前面板設(shè)計(jì),同時(shí)又結(jié)合了動(dòng)車組各車載設(shè)備實(shí)際的接口規(guī)格書(shū),完成了2型動(dòng)車組網(wǎng)絡(luò)系統(tǒng)車載設(shè)備信息模塊的局域網(wǎng)通信。經(jīng)過(guò)不斷的調(diào)試,完成了能夠通過(guò)終端系統(tǒng)進(jìn)行車輛的各車載設(shè)備運(yùn)行狀態(tài)的監(jiān)控,排查故障,以及控制各車載設(shè)備的軟件設(shè)計(jì)。
本文的設(shè)計(jì)過(guò)程中,基本遵循了2型動(dòng)車組列車網(wǎng)絡(luò)中各車載設(shè)備間信息傳輸?shù)膶?shí)際情況,但是仍存在少量的不足,如在側(cè)面目的地顯示器TCP局域網(wǎng)通信設(shè)計(jì)的過(guò)程中,需要將中文字符串按照GB2312代碼轉(zhuǎn)換為布爾數(shù)組,由于掌握的知識(shí)有限,無(wú)法實(shí)現(xiàn)這一過(guò)程,故采用了增加TCP節(jié)點(diǎn)的方式,將中文字符串獨(dú)立進(jìn)行傳輸與讀取,此過(guò)程與實(shí)際情況不符,在以后的研究過(guò)程中需要重點(diǎn)改進(jìn)。本文的設(shè)計(jì)過(guò)程中雖有不足,但是對(duì)于設(shè)計(jì)要求來(lái)說(shuō)仍然可以達(dá)到最終的仿真的目的。
[1]倪文波,王雪梅編著. 高速列車網(wǎng)絡(luò)與控制技術(shù). 西南交通大學(xué)出版社, 2008.05.
[2]劉先愷. CRH2型200 km/h動(dòng)車組列車網(wǎng)絡(luò)控制系統(tǒng)[J]. 機(jī)車電傳動(dòng),2008,(6):1-4.
[3]李成鋼.CRH2型動(dòng)車組國(guó)產(chǎn)化制動(dòng)控制單元(BCU)通信網(wǎng)關(guān)的研究[D]. 北京交通大學(xué),2010.
[4]路向陽(yáng).列車通信網(wǎng)絡(luò)的發(fā)展與應(yīng)用綜述.機(jī)車電傳動(dòng),2002, (01)
[5]張瑋. CRH2與CRH5動(dòng)車組列車信息控制網(wǎng)絡(luò)比較. 鐵道運(yùn)營(yíng)技術(shù), 2010, (04)
[6]曾嶸,楊衛(wèi)峰,劉軍. 列車分布式網(wǎng)絡(luò)通信與控制系統(tǒng). 機(jī)車電傳動(dòng), 2009, (03)
[7]江守亮. 環(huán)形ARCNET網(wǎng)絡(luò)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 西南交通大學(xué),2010.
[8]朱琴躍. 列車通信網(wǎng)絡(luò)實(shí)時(shí)性理論與方法研究[D]. 同濟(jì)大學(xué)交通運(yùn)輸工程學(xué)院,2008.
[9]黃軼,胡鵬飛. 工業(yè)以太網(wǎng)在列車網(wǎng)絡(luò)中的應(yīng)用設(shè)計(jì)[J]. 鐵道運(yùn)營(yíng)技術(shù),2011,17(1):40-42,45.
[10](美)PeterA.Blume著. LabVIEW編程樣式. 電子工業(yè)出版社,2009.06.
[11]Kirrmann, H.;Zuber, P.A.. The IEC/IEEE train communication network.Micro, IEEE, 2001