文獻(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è)與控制是保障列車行車安全行之有效的方法,我國(guó)現(xiàn)役列車基本配備了多種監(jiān)測(cè)控制設(shè)備與系統(tǒng)(以下簡(jiǎn)稱列控設(shè)備),其中最具代表性的是LKJ 2000型列車運(yùn)行監(jiān)控記錄裝置、TAX2型機(jī)車安全信息綜合監(jiān)測(cè)裝置以及列車網(wǎng)絡(luò)控制系統(tǒng)(TCMS)?,F(xiàn)階段這些車載設(shè)備在列車行車過(guò)程中容易形成信息孤島,監(jiān)測(cè)與控制信息只在本裝置或本系統(tǒng)內(nèi)部循環(huán),列車檢修部門、機(jī)務(wù)段或者鐵路局信息中心難以獲得列車運(yùn)行時(shí)實(shí)時(shí)的機(jī)車狀態(tài)信息、安全信息與監(jiān)測(cè)信息,不利于列車實(shí)時(shí)狀態(tài)監(jiān)測(cè)與故障診斷。對(duì)此,唐國(guó)平針對(duì)列控設(shè)備數(shù)據(jù)分散的情況,利用列車既有的有線、無(wú)線網(wǎng)絡(luò),設(shè)計(jì)了LAIS列車運(yùn)行狀態(tài)信息系統(tǒng),實(shí)現(xiàn)LKJ2000、TAX2等設(shè)備數(shù)據(jù)的整合[1];張啟平在唐國(guó)平研究的基礎(chǔ)上,對(duì)LAIS列車運(yùn)行狀態(tài)信息系統(tǒng)進(jìn)行了整合改進(jìn),使其更加符合鐵道部信息化總體規(guī)劃的要求[2];文獻(xiàn)[3,4]針對(duì)在線列車監(jiān)測(cè)與控制信息共享不足,利用車載信息采集技術(shù)和通信技術(shù),實(shí)現(xiàn)了機(jī)車安全信息(數(shù)據(jù)來(lái)源于LKJ、TAX)、狀態(tài)信息與監(jiān)測(cè)信息的整合。
上述系統(tǒng)結(jié)構(gòu)復(fù)雜,對(duì)列車監(jiān)測(cè)與控制信息的采集環(huán)節(jié)沒(méi)有給出具體的采集方法與設(shè)計(jì)方案。本文通過(guò)分析車載TAX2、TCMS設(shè)備輸出數(shù)據(jù)格式以及電氣接口工作原理,通過(guò)改進(jìn)UDP協(xié)議,使其支持擁塞控制方法來(lái)提高網(wǎng)絡(luò)傳輸過(guò)程中的網(wǎng)絡(luò)利用率。從硬件和軟件兩方面,設(shè)計(jì)了基于嵌入式Linux+ARM9的多通道串口列車監(jiān)測(cè)與控制設(shè)備數(shù)據(jù)采集系統(tǒng)[5,6],旨在對(duì)車載TAX2、TCMS設(shè)備的數(shù)據(jù)進(jìn)行集中化采集處理,為機(jī)車遠(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ù)主要為TAX數(shù)據(jù),采用RS485總線通信方式,波特率為28.8 kb/s[7]。TAX數(shù)據(jù)由數(shù)據(jù)通信板完成RS485協(xié)議到UDP/IP協(xié)議的轉(zhuǎn)換,通過(guò)以太網(wǎng)發(fā)送到車載數(shù)據(jù)服務(wù)器,完成一次TAX數(shù)據(jù)的采集;
(2)為滿足不同車型TCMS系統(tǒng)總線復(fù)雜多樣的要求,數(shù)據(jù)通信板設(shè)計(jì)兩種類型接口用來(lái)采集TCMS數(shù)據(jù):1路基于HDLC(High-level Data Link Control)協(xié)議的通信接口用于HXD3型機(jī)車的TCMS數(shù)據(jù)采集;預(yù)留1路RS422通信接口,用于HXD2型機(jī)車TCMS或其他設(shè)備的數(shù)據(jù)采集。采集的TCMS數(shù)據(jù)由數(shù)據(jù)通信板完成協(xié)議處理,最后經(jīng)以太網(wǎng)發(fā)送到車載數(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ì)以滿足異構(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ù)類型完成對(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客戶端talker,數(shù)據(jù)服務(wù)器作為UDP監(jiān)聽(tīng)端listener,在數(shù)據(jù)采集過(guò)程中以數(shù)據(jù)通信板作為以太網(wǎng)主機(jī),使用UDP協(xié)議與車載數(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ù)類型,調(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)文類型,以及完成后續(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ī)車的故障診斷提供重要事實(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)確率,滿足列車TAX2、TCMS的數(shù)據(jù)采集要求。該系統(tǒng)在列控設(shè)備數(shù)據(jù)采集方面具有重要的參考價(jià)值和廣泛的使用前景。
參考文獻(xiàn)
[1] 唐國(guó)平,李國(guó)華,王小方.LAIS列車運(yùn)行狀態(tài)信息系統(tǒng)[J].機(jī)車電傳動(dòng),2007(4):52-56.
[2] 張啟平,寇樹(shù)仁.機(jī)車安全管理信息系統(tǒng)整合改進(jìn)方案[J].機(jī)車電傳動(dòng),2009(1):70-71.
[3] 龔利.鐵路機(jī)車遠(yuǎn)程監(jiān)測(cè)與故障診斷系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)工程,2012(4):227-229.
[4] 王慶武,唐國(guó)平.機(jī)車遠(yuǎn)程監(jiān)視與診斷系統(tǒng)研究與設(shè)計(jì)[J].機(jī)車電傳動(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型列車運(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ī)車串行總線設(shè)計(jì)中的應(yīng)用[J].鐵道機(jī)車車輛,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.