文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.12.015
中文引用格式: 陳桂平,賀德強(qiáng),,譚文舉,,等. 基于Linux+ARM的列控設(shè)備數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2016,,42(12):58-61.
英文引用格式: Chen Guiping,,He Deqiang,Tan Wenju,,et al. Design of data acquisition system for train monitoring and control equipment[J].Application of Electronic Technique,,2016,42(12):58-61.
0 引言
監(jiān)測(cè)與控制是保障列車(chē)行車(chē)安全行之有效的方法,我國(guó)現(xiàn)役列車(chē)基本配備了多種監(jiān)測(cè)控制設(shè)備與系統(tǒng)(以下簡(jiǎn)稱(chēng)列控設(shè)備),,其中最具代表性的是LKJ 2000型列車(chē)運(yùn)行監(jiān)控記錄裝置,、TAX2型機(jī)車(chē)安全信息綜合監(jiān)測(cè)裝置以及列車(chē)網(wǎng)絡(luò)控制系統(tǒng)(TCMS)。現(xiàn)階段這些車(chē)載設(shè)備在列車(chē)行車(chē)過(guò)程中容易形成信息孤島,,監(jiān)測(cè)與控制信息只在本裝置或本系統(tǒng)內(nèi)部循環(huán),,列車(chē)檢修部門(mén)、機(jī)務(wù)段或者鐵路局信息中心難以獲得列車(chē)運(yùn)行時(shí)實(shí)時(shí)的機(jī)車(chē)狀態(tài)信息,、安全信息與監(jiān)測(cè)信息,,不利于列車(chē)實(shí)時(shí)狀態(tài)監(jiān)測(cè)與故障診斷。對(duì)此,,唐國(guó)平針對(duì)列控設(shè)備數(shù)據(jù)分散的情況,,利用列車(chē)既有的有線、無(wú)線網(wǎng)絡(luò),,設(shè)計(jì)了LAIS列車(chē)運(yùn)行狀態(tài)信息系統(tǒng),,實(shí)現(xiàn)LKJ2000、TAX2等設(shè)備數(shù)據(jù)的整合[1],;張啟平在唐國(guó)平研究的基礎(chǔ)上,,對(duì)LAIS列車(chē)運(yùn)行狀態(tài)信息系統(tǒng)進(jìn)行了整合改進(jìn),使其更加符合鐵道部信息化總體規(guī)劃的要求[2],;文獻(xiàn)[3,,4]針對(duì)在線列車(chē)監(jiān)測(cè)與控制信息共享不足,利用車(chē)載信息采集技術(shù)和通信技術(shù),,實(shí)現(xiàn)了機(jī)車(chē)安全信息(數(shù)據(jù)來(lái)源于LKJ,、TAX)、狀態(tài)信息與監(jiān)測(cè)信息的整合,。
上述系統(tǒng)結(jié)構(gòu)復(fù)雜,,對(duì)列車(chē)監(jiān)測(cè)與控制信息的采集環(huán)節(jié)沒(méi)有給出具體的采集方法與設(shè)計(jì)方案。本文通過(guò)分析車(chē)載TAX2,、TCMS設(shè)備輸出數(shù)據(jù)格式以及電氣接口工作原理,,通過(guò)改進(jìn)UDP協(xié)議,使其支持擁塞控制方法來(lái)提高網(wǎng)絡(luò)傳輸過(guò)程中的網(wǎng)絡(luò)利用率,。從硬件和軟件兩方面,,設(shè)計(jì)了基于嵌入式Linux+ARM9的多通道串口列車(chē)監(jiān)測(cè)與控制設(shè)備數(shù)據(jù)采集系統(tǒng)[5,6],,旨在對(duì)車(chē)載TAX2,、TCMS設(shè)備的數(shù)據(jù)進(jìn)行集中化采集處理,為機(jī)車(chē)遠(yuǎn)程監(jiān)測(cè)與故障診斷的列控設(shè)備數(shù)據(jù)采集環(huán)節(jié)提供解決方案,。
1 系統(tǒng)原理分析
1.1 系統(tǒng)原理簡(jiǎn)介
結(jié)合列控設(shè)備的電氣接口原理及數(shù)據(jù)報(bào)文格式,,分析列控設(shè)備數(shù)據(jù)采集系統(tǒng)原理,系統(tǒng)原理圖如圖1,。為解決列控設(shè)備接口電氣特性差異以及減輕數(shù)據(jù)服務(wù)器的處理負(fù)擔(dān),,在數(shù)據(jù)采集系統(tǒng)的列控設(shè)備數(shù)據(jù)采集端與數(shù)據(jù)服務(wù)器接收端之間設(shè)計(jì)一個(gè)在系統(tǒng)中起著列控設(shè)備與數(shù)據(jù)服務(wù)器通信互聯(lián)關(guān)鍵作用的數(shù)據(jù)通信板。數(shù)據(jù)通信板作為一個(gè)特殊的網(wǎng)絡(luò)節(jié)點(diǎn),,在系統(tǒng)中的作用如下:
(1)系統(tǒng)對(duì)LKJ2000的采集數(shù)據(jù)主要為T(mén)AX數(shù)據(jù),,采用RS485總線通信方式,波特率為28.8 kb/s[7],。TAX數(shù)據(jù)由數(shù)據(jù)通信板完成RS485協(xié)議到UDP/IP協(xié)議的轉(zhuǎn)換,,通過(guò)以太網(wǎng)發(fā)送到車(chē)載數(shù)據(jù)服務(wù)器,完成一次TAX數(shù)據(jù)的采集,;
(2)為滿(mǎn)足不同車(chē)型TCMS系統(tǒng)總線復(fù)雜多樣的要求,,數(shù)據(jù)通信板設(shè)計(jì)兩種類(lèi)型接口用來(lái)采集TCMS數(shù)據(jù):1路基于HDLC(High-level Data Link Control)協(xié)議的通信接口用于HXD3型機(jī)車(chē)的TCMS數(shù)據(jù)采集;預(yù)留1路RS422通信接口,,用于HXD2型機(jī)車(chē)TCMS或其他設(shè)備的數(shù)據(jù)采集,。采集的TCMS數(shù)據(jù)由數(shù)據(jù)通信板完成協(xié)議處理,最后經(jīng)以太網(wǎng)發(fā)送到車(chē)載數(shù)據(jù)服務(wù)器,。
1.2 UDP擁塞控制
系統(tǒng)的數(shù)據(jù)通信板與數(shù)據(jù)服務(wù)器之間的通信采用UDP協(xié)議,,該協(xié)議在數(shù)據(jù)量大傳輸?shù)倪^(guò)程中由于缺乏擁塞控制機(jī)制易發(fā)生丟包與時(shí)延。文獻(xiàn)[8-9]提出一種基于UDP協(xié)議的改進(jìn)協(xié)議,,通過(guò)速率調(diào)整策略實(shí)現(xiàn)UDP的可靠擁塞控制,。下面介紹UDP擁塞控制具體實(shí)現(xiàn)過(guò)程。
(1)檢測(cè)網(wǎng)絡(luò)狀態(tài)
定義預(yù)期接收時(shí)間(ET)和發(fā)送時(shí)間(ST)的差值與發(fā)送時(shí)間之比為擁塞值diff:
由網(wǎng)絡(luò)狀態(tài)劃分的網(wǎng)絡(luò)擁塞等級(jí)如表1所示,,用于檢測(cè)網(wǎng)絡(luò)狀態(tài),。其中,α為低網(wǎng)絡(luò)負(fù)載上限,,常取值2%,;β為網(wǎng)絡(luò)輕度擁塞下限,常取值4%,。
(2)調(diào)整發(fā)送速率
在網(wǎng)絡(luò)狀態(tài)檢測(cè)結(jié)束之后,,判斷網(wǎng)絡(luò)處于何種狀態(tài),采用A-AIAD速率調(diào)整的方法改變網(wǎng)絡(luò)狀態(tài),。在UDP協(xié)議網(wǎng)絡(luò)傳輸中,,傳輸速率在一定區(qū)間范圍[Rmin,Rmax]內(nèi)變化,,其中Rmin為UDP可接受速率下限,,Rmax為目標(biāo)速率。則在擁塞避免階段,,發(fā)送速率可表示為:
2 系統(tǒng)軟硬件設(shè)計(jì)
2.1 硬件設(shè)計(jì)
數(shù)據(jù)通信板作為系統(tǒng)的核心部件,,硬件設(shè)計(jì)原理如圖2所示,,按功能可將硬件電路分為核心處理器模塊、以太網(wǎng)傳輸模塊,、數(shù)據(jù)采集模塊,、調(diào)試模塊、供電模塊以及狀態(tài)指示模塊等其他輔助模塊,。
核心處理器采用基于Freescale i.MX287系列的ARM926EJ-S內(nèi)核高性能處理器,,其主頻最高可達(dá)454 MHz?;趇.MX287核心板內(nèi)部集成10/100 Mb/s以太網(wǎng)MAC,,通過(guò)外擴(kuò)PHY以太網(wǎng)收發(fā)器DP83848K,并采用HR601680作為以太網(wǎng)的網(wǎng)絡(luò)隔離器接入以太網(wǎng),。數(shù)據(jù)采集模塊根據(jù)接口電氣特性的不同可分為1路RS485接口,、1路HDLC接口、1路RS422接口以及1路RS232接口,,其中HDLC接口電路是通過(guò)在核心處理器的D0~D7引腳與控制引腳外接增強(qiáng)型串行通信控制器Z85230,,從而使其在數(shù)據(jù)鏈路層支持HDLC協(xié)議數(shù)據(jù)的收發(fā)[10]。供電模塊負(fù)責(zé)電源供給,,為保證元器件正常工作與系統(tǒng)穩(wěn)定運(yùn)行,,采取了加入穩(wěn)壓二極管以及過(guò)流保護(hù)保險(xiǎn)絲等措施。此外,,為了提高RS485數(shù)據(jù)采集模塊的穩(wěn)定性,,采用基于DCR010505U電源隔離芯片的穩(wěn)壓電路為RSM3485HT供電;狀態(tài)指示模塊加入了LED燈用來(lái)指示通信板的工作狀態(tài),,即電源狀態(tài),、程序運(yùn)行狀態(tài)、TAX2通信狀態(tài),、TCMS通信狀態(tài),、以太網(wǎng)通信狀態(tài)。
2.2 軟件框架設(shè)計(jì)
根據(jù)TAX,、TCMS數(shù)據(jù)采集的要求,,數(shù)據(jù)通信板采用多協(xié)議數(shù)據(jù)轉(zhuǎn)換設(shè)計(jì)以滿(mǎn)足異構(gòu)網(wǎng)絡(luò)之間的通信要求[11]。軟件框架如圖3所示,,包括硬件層,、操作系統(tǒng)層和應(yīng)用層,還可具體分為硬件層,、驅(qū)動(dòng)層,、核心層、接口層,、應(yīng)用層和數(shù)據(jù)層,。
硬件層主要提供通信板與其他設(shè)備通信的電氣接口,,包括1個(gè)以太網(wǎng)接口和4個(gè)串口。其中i.MX287核心板的數(shù)據(jù)總線D0~D7與控制總線外接Z85230,,實(shí)現(xiàn)基于HDLC協(xié)議數(shù)據(jù)收發(fā)操作,。
操作系統(tǒng)層為通信板的硬件和軟件資源的使用與運(yùn)行提供管理和控制方案,主要包括Linux系統(tǒng)啟動(dòng)引導(dǎo)文件U-Boot,、操作系統(tǒng)內(nèi)核,、根文件系統(tǒng)和設(shè)備驅(qū)動(dòng),,設(shè)備驅(qū)動(dòng)包括1個(gè)以太網(wǎng)驅(qū)動(dòng)和4個(gè)串口驅(qū)動(dòng),。Linux系統(tǒng)上電配置完成后,初始化硬件,,加載驅(qū)動(dòng),,為應(yīng)用程序運(yùn)行提供必要的服務(wù)和相應(yīng)接口。
應(yīng)用層提供實(shí)現(xiàn)通信板功能的應(yīng)用程序,,主要完成數(shù)據(jù)緩存,。數(shù)據(jù)緩存區(qū)緩存采集到LKJ2000的TAX數(shù)據(jù)或者TCMS數(shù)據(jù),最后根據(jù)數(shù)據(jù)類(lèi)型完成對(duì)數(shù)據(jù)的處理轉(zhuǎn)發(fā),。
2.3 軟件工作流程設(shè)計(jì)
在網(wǎng)絡(luò)系統(tǒng)中,,利用數(shù)據(jù)寄存機(jī)制將兩層網(wǎng)絡(luò)間的通信事件分解為兩個(gè)分時(shí)異步事件進(jìn)行處理,形式上表現(xiàn)為完成異構(gòu)總線間的通信協(xié)議轉(zhuǎn)換,,實(shí)質(zhì)上實(shí)現(xiàn)了異構(gòu)網(wǎng)絡(luò)間的通信,。本系統(tǒng)的數(shù)據(jù)通信板在以太網(wǎng)網(wǎng)絡(luò)層作為UDP客戶(hù)端talker,數(shù)據(jù)服務(wù)器作為UDP監(jiān)聽(tīng)端listener,,在數(shù)據(jù)采集過(guò)程中以數(shù)據(jù)通信板作為以太網(wǎng)主機(jī),,使用UDP協(xié)議與車(chē)載數(shù)據(jù)服務(wù)器建立通信鏈接,其工作流程如圖4所示,。具體步驟如下:
(1)讀取配置文件,,完成串口和以太網(wǎng)的接口映射;
(2)針對(duì)設(shè)備IP初始化Socket,,建立數(shù)據(jù)通信板與數(shù)據(jù)服務(wù)器的UDP連接,;
(3)Socket連接成功后,讀取數(shù)據(jù)緩存區(qū)中的數(shù)據(jù)包,,判斷數(shù)據(jù)類(lèi)型,,調(diào)用相應(yīng)的數(shù)據(jù)處理函數(shù):
①若數(shù)據(jù)為HDLC數(shù)據(jù),調(diào)用HDLCtoEthTask任務(wù)函數(shù),,將緩存區(qū)的HDLC數(shù)據(jù)處理封裝為UDP/IP協(xié)議數(shù)據(jù)并將其轉(zhuǎn)發(fā)到以太網(wǎng),。
②若為UART1數(shù)據(jù),調(diào)用485toEthTask函數(shù),,先將緩存區(qū)中的RS485數(shù)據(jù)解封裝,,再將其封裝成符合UDP/IP協(xié)議以太網(wǎng)數(shù)據(jù)報(bào)文類(lèi)型,,以及完成后續(xù)的隊(duì)列數(shù)據(jù)處理和轉(zhuǎn)發(fā)。
③UART2的數(shù)據(jù)處理與UART1數(shù)據(jù)的處理方式相似,。
3 系統(tǒng)測(cè)試與分析
為了驗(yàn)證數(shù)據(jù)采集系統(tǒng)的功能完整性與可靠性,,對(duì)TAX2、TCMS數(shù)據(jù)進(jìn)行仿真采集測(cè)試,。本文以南寧機(jī)務(wù)段某HXD3c為試驗(yàn)對(duì)象,,對(duì)TAX數(shù)據(jù)采集過(guò)程中的數(shù)據(jù)波形如圖5所示,TCMS數(shù)據(jù)采集的部分結(jié)果如表2所示,。
由表2可以清晰地看到TCMS系統(tǒng)的每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)上的狀態(tài)量及操作量,,這些操作量與狀態(tài)量能為機(jī)車(chē)的故障診斷提供重要事實(shí)依據(jù)。通過(guò)數(shù)據(jù)比對(duì),,統(tǒng)計(jì)得出數(shù)據(jù)采集正確率為100%,。如圖5所示,用示波器監(jiān)視TAX數(shù)據(jù)采集過(guò)程中傳輸狀態(tài)數(shù)據(jù)波形,,數(shù)據(jù)包波形穩(wěn)定無(wú)毛刺,,驗(yàn)證了數(shù)據(jù)通信板協(xié)議轉(zhuǎn)換的可靠性。通過(guò)TCMS數(shù)據(jù)采集分析和TAX2通信示波器波形捕捉試驗(yàn),,表明數(shù)據(jù)采集系統(tǒng)功能完整,,數(shù)據(jù)采集準(zhǔn)確、高效與可靠,。
4 結(jié)語(yǔ)
基于列控設(shè)備的特點(diǎn),,針對(duì)性地設(shè)計(jì)了一套高效、準(zhǔn)確的列控設(shè)備數(shù)據(jù)采集系統(tǒng),,該系統(tǒng)解決了多種列控設(shè)備相互獨(dú)立,、數(shù)據(jù)不集中的問(wèn)題。在系統(tǒng)設(shè)計(jì)方面比以往的系統(tǒng)顯得更加輕量化,,易于開(kāi)發(fā)與后期維護(hù),。在數(shù)據(jù)采集仿真測(cè)試的實(shí)驗(yàn)中表現(xiàn)出了較高的數(shù)據(jù)采集效率與準(zhǔn)確率,滿(mǎn)足列車(chē)TAX2,、TCMS的數(shù)據(jù)采集要求,。該系統(tǒng)在列控設(shè)備數(shù)據(jù)采集方面具有重要的參考價(jià)值和廣泛的使用前景。
參考文獻(xiàn)
[1] 唐國(guó)平,,李國(guó)華,,王小方.LAIS列車(chē)運(yùn)行狀態(tài)信息系統(tǒng)[J].機(jī)車(chē)電傳動(dòng),2007(4):52-56.
[2] 張啟平,,寇樹(shù)仁.機(jī)車(chē)安全管理信息系統(tǒng)整合改進(jìn)方案[J].機(jī)車(chē)電傳動(dòng),,2009(1):70-71.
[3] 龔利.鐵路機(jī)車(chē)遠(yuǎn)程監(jiān)測(cè)與故障診斷系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)工程,2012(4):227-229.
[4] 王慶武,,唐國(guó)平.機(jī)車(chē)遠(yuǎn)程監(jiān)視與診斷系統(tǒng)研究與設(shè)計(jì)[J].機(jī)車(chē)電傳動(dòng),,2012(3):42-44,,57.
[5] 陳紅遠(yuǎn),郭天太,,吳俊杰,,等.多通道微弱電壓信號(hào)同步采集系統(tǒng)開(kāi)發(fā)[J].電子技術(shù)應(yīng)用,2014,,40(2):78-80,,84.
[6] 王晨輝,吳悅,,楊凱.基于STM32的多通道數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,,2016,42(1):51-53,,57.
[7] 楊志剛.LKJ2000型列車(chē)運(yùn)行監(jiān)控記錄裝置[M].北京:中國(guó)鐵道出版社,,2010:197-207.
[8] 郭翠娟,,苗長(zhǎng)云,,武志剛,等.具有擁塞控制機(jī)制的可靠UDP的實(shí)現(xiàn)[J].小型微型計(jì)算機(jī)系統(tǒng),,2012,,33(9):2019-2022.
[9] 陳波,陶威,,王運(yùn)明.基于ARUDP的指揮控制網(wǎng)絡(luò)數(shù)據(jù)傳輸協(xié)議[J].火力與指揮控制,,2016,41(4):157-160.
[10] 鄧亞波,,杜慶,,言凱.Z85230在機(jī)車(chē)串行總線設(shè)計(jì)中的應(yīng)用[J].鐵道機(jī)車(chē)車(chē)輛,2011,,31(2):92-94.
[11] HONG S I,,SONG S Y,LIN C H.An efficient multi-protocol gateway system design on the Zigbee[C].International Conference on Advanced Communication Technology.IEEE,,2015.