摘 要:以ARM為開發(fā)平臺,融合CAN有線數(shù)據(jù)傳輸和無線數(shù)據(jù)傳輸?shù)母髯詢?yōu)勢,在有線數(shù)據(jù)傳輸?shù)幕A上,針對非接觸測量場合和智能檢測的需要,設計了一種基于ARM9和Linux的手持式智能化故障診斷儀。該系統(tǒng)采用Samsung S3C2410微處理器,在Linux環(huán)境下通過ARM處理器與智能RF的接口設計實現(xiàn)網(wǎng)絡通信和數(shù)據(jù)撿測功能,完成數(shù)據(jù)的無線檢測。下位機通過AVR單片機控制,具有實用價值。
關鍵詞:ARM; 嵌入式Iinux; 智能RF; 無線數(shù)據(jù)通信模塊
狀態(tài)監(jiān)測與故障診斷技術是現(xiàn)代工業(yè)技術發(fā)展的產(chǎn)物,已發(fā)展到了以專家系統(tǒng)、神經(jīng)網(wǎng)絡和模糊分析等理論為基礎,以網(wǎng)絡技術為依托,以知識處理為核心的先進智能化技術。Linux和RFID已成為現(xiàn)代工業(yè)技術熱點,隨著嵌入式技術的蓬勃發(fā)展,嵌入式系統(tǒng)憑借其性價比高、穩(wěn)定性好、體積小、功耗低等眾多優(yōu)點已經(jīng)深入到國防、網(wǎng)絡通信、工業(yè)控制、數(shù)字多媒體相關的消費類領域。本文所介紹的面向鐵路的手持式智能化故障診斷儀,涉及了Linux、RFID、嵌入式數(shù)據(jù)采集和無線傳輸功能及嵌入式系統(tǒng)的新技術。該套系統(tǒng)正是以知識處理為核心的嵌入式在線監(jiān)測故障診斷儀器,具有功能強大、簡單易用、便于攜帶等優(yōu)點。原始數(shù)據(jù)可通過USB接口取出,進一步進行事后處理。本系統(tǒng)還可通過CDMA模塊連接無線網(wǎng)絡,將處理完畢的數(shù)據(jù)實時地發(fā)送到客戶端,以實現(xiàn)特定信息查詢和告警功能。
1 系統(tǒng)的組成和結構
該面向鐵路的手持式智能化故障診斷儀,是一套基于電池供電的智能化儀器。測試系統(tǒng)主要由測試頭、主測試設備和遠程監(jiān)控站3級測試層組成。前端測試頭主要由AVR采集MCU、傳感器和智能RF芯片構成;下位機是基于ATmega128單片機的數(shù)據(jù)采集系統(tǒng),承擔多路現(xiàn)場快變及緩變信號的采集,主要完成任務采集、接收來自主采集設備的指令并執(zhí)行主設備的任務調(diào)度。主測試設備主要由內(nèi)嵌Linux操作系統(tǒng)的ARM9處理器、智能RF芯片、網(wǎng)絡和串行通信接口、存儲設備和顯示設備構成。主測試設備主要完成各無線采集點的任務分配、數(shù)據(jù)收集分析,可同時監(jiān)測和管理若干個連接的無線網(wǎng)絡范圍內(nèi)的傳感器測試頭,并可通過無線數(shù)據(jù)傳輸模塊或通過Internet傳向遠程監(jiān)控站并接受遠程控制站的任務調(diào)度。
遠程監(jiān)控站主要由服務器、監(jiān)測數(shù)據(jù)庫和外圍設備構成,分為數(shù)據(jù)采集(上位機)和數(shù)據(jù)處理(下位機)兩大部分,承擔實時數(shù)據(jù)的處理,也可以通過USB口或者以太網(wǎng)下載到PC上,進行進一步深入的故障趨勢分析。本系統(tǒng)對整個現(xiàn)場監(jiān)測的任務進行合理地分解:將模擬信號的采集、A/D轉(zhuǎn)換以及簡單的數(shù)據(jù)處理部分放在下位機實現(xiàn),以控制系統(tǒng)的硬件規(guī)模及耗電量。將數(shù)據(jù)的進一步處理、實現(xiàn)現(xiàn)場實時分析的構件、歷史數(shù)據(jù)重現(xiàn)及精簡的專家系統(tǒng)放在上位機上實現(xiàn),本文主要介紹無線數(shù)據(jù)傳輸?shù)难芯吭O計。系統(tǒng)框架如圖1所示。
2 硬件系統(tǒng)設計
2.1 智能nRF905無線收發(fā)芯片
增加安全可靠、穩(wěn)定的無線模塊功能,是傳統(tǒng)PDA設備的技術趨勢。該設備采用Nordic公司的單片無線收發(fā)芯片nRF905。該芯片工作在433/869/915 MHz的ISM頻段,由1個完全集成的頻率調(diào)制器,1個帶解調(diào)器的接收器、1個功率放大器、1個晶體振蕩器和1個調(diào)節(jié)器組成,可以很容易地通過SPI接口進行編程配置。電流消耗很低,可以很容易地進入Powerdown模式實現(xiàn)節(jié)電。nRF905采用VLSI ShockBurst技術,使得nRF905能夠提供高速的數(shù)據(jù)傳輸,將與RF協(xié)議有關的高速信號處理放到芯片內(nèi)部。在ShockBurst TX模式中,nRF905自動產(chǎn)生前導碼和CRC校驗碼,數(shù)據(jù)準備就緒DR信號通知主控制其數(shù)據(jù)傳輸已經(jīng)完成。該芯片可與測試設備ARM和AVR的MCU通過簡單的串行接口連接,使用方便。
2.2 ARM處理器模塊
構建可移植嵌入式Linux的ARM9系統(tǒng),嵌入式Linux是目前廣泛應用的一種嵌入式操作系統(tǒng),ARM處理器模塊由Flash、SDRAM和S3C2410共同構建。本系統(tǒng)選用Samsung公司的K9F1208U0A構建8位Flash存儲器系統(tǒng)。
K9F1208U0A單片容量為64 MB:選用2片單片容量為32 MB、數(shù)據(jù)寬度為16位的HY57V561620CT并聯(lián)構建32位SDRAM存儲器系統(tǒng),共64 MB的SDRAM空間可以滿足嵌入式操作系統(tǒng)和各種復雜算法的運行要求。ARM處理器對各模塊的控制則通過底層驅(qū)動控制協(xié)處理器產(chǎn)生各種控制信號實現(xiàn)。
2.3 傳感器模塊
傳感器模塊可以根據(jù)所需采集的數(shù)據(jù)來選擇。本系統(tǒng)是在CAN總線有線數(shù)據(jù)傳輸?shù)幕A上開發(fā)的,CAN總線通信電路由微處理器S3C2410、控制器MCP2515、驅(qū)動器TJA1050、光耦6N137和電源隔離模塊組成,CAN通信主要用于機車惡劣環(huán)境下的數(shù)據(jù)采集。該系統(tǒng)的無線傳輸功能主要運用于火車機車車體振動測量,也可運用于機車的運行監(jiān)測。所以采用3個使用ADXL105高精度單軸加速度傳感器芯片制作的加速度測量模塊。測量模塊分別安置于車體底部的垂直方向和水平方向,用于測量車體在X、Y、Z方向上的加速度。測量數(shù)據(jù)以差分信號的形式輸入到精密放大器中,經(jīng)比較放大后直接送到A/D模塊中。
2.4 外部通信模塊
設備外部通信模塊由2部分組成:485通信模塊和CDMA模塊。485通信接口采用MAX1490芯片。這是一款完全隔離的485數(shù)據(jù)接口芯片,單工工作方式,傳輸波特率最大可達2.5 Mb/s。其輸出引腳直接與ARM處理器的串口2(UART2)相連,ARM處理器通過串口2讀取時間和坐標等相關數(shù)據(jù)的廣播信息,串口0(UART0)與AnyData DTGS800 CDMA模塊相連,監(jiān)測數(shù)據(jù)經(jīng)預處理后通過CDMA模塊發(fā)送到地面服務器。
2.5 系統(tǒng)關鍵硬件接口設計
系統(tǒng)硬件主要接口包括AVR與nRF905的接口、AVR與ARM9的接口以及ARM9的外圍接口等。本文主要介紹AVR與nRF905和ARM9的接口。AVR MCU通過nRF905接口收發(fā)數(shù)據(jù),然后將收到的數(shù)據(jù)寫入雙口RAM等待讀取數(shù)據(jù),另外ARM9將要發(fā)送的數(shù)據(jù)寫入雙口RAM后給AVR MCU發(fā)送中斷信號,AVR MCU再從雙口RAM中讀取數(shù)據(jù),根據(jù)指令將其發(fā)送至相應的采樣傳感器測試頭。但由于ARM與AVR之間的通信速率不匹配,2個CPU的數(shù)據(jù)交換通過一片雙口RAM完成。因此應用了異步高速雙口RAM IDT7130,很好地解決了異步串口通信的瓶頸問題,雙口RAM對于存儲區(qū)的分配,分成命令區(qū)、狀態(tài)區(qū)、接收數(shù)據(jù)區(qū)、發(fā)送數(shù)據(jù)區(qū)和中斷區(qū)5大區(qū)。接收數(shù)據(jù)區(qū)和發(fā)送數(shù)據(jù)區(qū)的細分,可以根據(jù)串口數(shù)量、報文長度的實際需要進行再分配,主CPU和從CPU的握手協(xié)議可以通過命令區(qū)和狀態(tài)區(qū)的設計來完成。主要接口如圖2所示。
3 軟件系統(tǒng)設計
3.1 軟件系統(tǒng)設計
系統(tǒng)以主測試設備為核心,采集、收集多個測試傳感器采集的信息,并將測試數(shù)據(jù)收集保存,可以通過網(wǎng)絡實時地傳遞到系統(tǒng)的監(jiān)測中心進行分析和處理。本設計采用的Linux內(nèi)核是在ARM-Linux的基礎上,編寫了OLED顯示模塊、USB設備的設備驅(qū)動程序。軟件設計主要包括ARM-Linux在微處理器S3C2410上的移植,相關驅(qū)動程序設計、系統(tǒng)任務級設計等。開發(fā)系統(tǒng)采用PC工作站和主測試設備的嵌入式主板構成的交叉編譯環(huán)境,本系統(tǒng)使用Linux2.6的內(nèi)核,內(nèi)核的編譯通過Makefile文件的指示進行,通過修改Makefile來組織內(nèi)核各模塊,并記錄模塊間的相互聯(lián)系和依賴關系,修改config、setup等相關配置文件完成內(nèi)核的編譯,生成zlmage、vmLinux、System.map、config等文件。雙口通信的程序如圖3所示。
3.2 網(wǎng)絡通信程序設計
嵌入式無線局域網(wǎng)設備可以用于有線網(wǎng)絡無法延伸或難以安裝、又可靈活移動和臨時性使用等要求的場合。在本系統(tǒng)中主要采用Linux下的Socket通信方式,使用TCP/IP網(wǎng)絡協(xié)議棧,采用面向有連接Stream套接字。
主測試設備運行過程中,接收來自網(wǎng)絡的遠程指令,并且為了方便遠程測量和控制,每個主測試設備被分配固定的IP地址和端口,遠程測試站可進行有選擇性的查詢式測量,每個主測試設備在通信開始前使用socket( )建立一個通信端點,再使用bind( )函數(shù)把一個地址綁定到這個端點上,然后使用listen( )函數(shù)偵聽是否有來自遠程的連接請求,如果有,則使用accept( )處理,并按照指令執(zhí)行測量任務或傳送測量數(shù)據(jù)。如圖4所示?!?/p>
雖然現(xiàn)場顯示和無線傳輸2種方式已經(jīng)提供了大量的數(shù)據(jù)和信息。但是都受到了地域和空間的限制。因此,為了滿足相對惡劣的地理環(huán)境和移動設備的采集需求,系統(tǒng)后期可通過加入GSM短消息傳送數(shù)據(jù)的無線方式。GSM網(wǎng)絡經(jīng)過多年的發(fā)展完善,現(xiàn)在已經(jīng)非常成熟,盲區(qū)少、信號穩(wěn)定、自動漫游,并且通信距離不受周圍環(huán)境影響。
本文的創(chuàng)新點在于開發(fā)了一種基于嵌入式系統(tǒng)的機車狀態(tài)實時檢測系統(tǒng),該系統(tǒng)實現(xiàn)了機車上信號量的采集和信號的存儲、大容量的數(shù)據(jù)存儲、穩(wěn)定可靠的CAN總線通訊和遠程無線通信,各個模塊在Linux實時操作系統(tǒng)的調(diào)度下協(xié)調(diào)工作,車載顯示和語音報警效果良好,并能夠在機車出現(xiàn)故障時提醒司機故障出現(xiàn)的位置和解決故障的方法。該系統(tǒng)通過在嵌入式Linux環(huán)境下的網(wǎng)絡通信測試實驗,證實具有較好的響應能力和數(shù)據(jù)吞吐能力,本系統(tǒng)設計在非接觸式測量領域有一定的應用價值和指導意義,經(jīng)在機車檢測方面的多次聯(lián)機調(diào)試,系統(tǒng)工作穩(wěn)定、可靠,在工業(yè)控制領域具有廣泛的應用前景。
參考文獻
[1] ARNOLD B.嵌入式系統(tǒng)設計[M].呂駿,譯.北京:電子工業(yè)出版社,2002.
[2] 韓鋒.基于ARM處理器的便攜式振動測量分析儀的設計[J]. 儀表技術與傳感器,2004(9):14-15.
[3] 吳健.基于嵌入式Linux的無線檢測系統(tǒng)設計[J].測控技術, 2006(13):78-80.
[4] 姜虎強.基于Atmega128的無線數(shù)據(jù)采集系統(tǒng)[J].微計算機信息,2007(9):129-130.