車載定位定向?qū)Ш较到y(tǒng)檢測儀的設(shè)計與實現(xiàn)
[關(guān)鍵詞]:定位定向?qū)Ш较到y(tǒng),檢測儀,故障診斷,串行通信,神經(jīng)網(wǎng)絡(luò)
1、引言
車載定位定向?qū)Ш较到y(tǒng)是指裝載在輪式及履帶式車輛上,能自主地為車輛提供方位基準和位置信息的一種裝置。本文所述的車載定位定向?qū)Ш较到y(tǒng)由尋北儀、方位保持儀、里程計、高程計等組成,其中,尋北儀和方位保持儀是極其重要的部分,它們的錯誤或失效直接影響系統(tǒng)的定向、定位精度,甚至?xí)斐蓢乐睾蠊?,因此對其進行準確的故障檢測和診斷顯得尤為重要。目前,該系統(tǒng)采用傳統(tǒng)的故障檢測模式,通過硬件和軟件方式比較各模塊相關(guān)信號的實際值與參考值之差,若超出允許范圍,則認為出現(xiàn)異?;蚬收希錅蚀_性和可控性較差。此外,該系統(tǒng)在性能檢測和故障診斷方面還存在以下兩點不足:一是受體積和重量等因素的制約,系統(tǒng)設(shè)計時沒有預(yù)留與外部檢測儀器(如示波器、萬用表等)的接口,因此,無法進行野外環(huán)境下的檢修;二是系統(tǒng)無法保存并顯示內(nèi)部慣性器件各個時期工作狀態(tài)的數(shù)據(jù),而這些數(shù)據(jù)對系統(tǒng)的使用、管理和維護具有極其重要的意義。
2、基本思想
獲取定位定向?qū)Ш较到y(tǒng)中慣性器件運行時的狀態(tài)數(shù)據(jù)是對其進行性能分析和故障診斷的前提條件,由于導(dǎo)航系統(tǒng)本身沒有預(yù)留檢測接口,常規(guī)的檢測儀器顯然無能為力。但我們注意到導(dǎo)航系統(tǒng)內(nèi)部不但有專用的A/D模塊、V/F(電壓/頻率)轉(zhuǎn)換模塊和計算機模塊等負責(zé)采集慣性器件信號,而且還預(yù)留了一個RS-232串行通信端口,在此啟發(fā)下我們設(shè)計了一種檢測裝置--檢測儀,它能在保持導(dǎo)航系統(tǒng)硬件結(jié)構(gòu)不變、性能指標(biāo)不受影響的前提下,實現(xiàn)對導(dǎo)航系統(tǒng)的性能測試和故障診斷等功能。為此,我們只需簡單地對導(dǎo)航系統(tǒng)軟件做一些增補,使之在原來單一的定位定向?qū)Ш綘顟B(tài)工作模式基礎(chǔ)上增添了待檢測狀態(tài)的工作模式。檢測儀通過RS-232串行口以串行通信的方式與導(dǎo)航系統(tǒng)進行通信以獲取系統(tǒng)內(nèi)部由A/D模塊和V/F模塊采集到的數(shù)據(jù),采用基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)處理和分析方法,使得對導(dǎo)航系統(tǒng)的性能檢測和故障診斷變得準確、便捷。
檢測儀的工作流程如圖1所示。當(dāng)導(dǎo)航系統(tǒng)處于待檢測狀態(tài)時,檢測儀通過串行端口向?qū)Ш较到y(tǒng)發(fā)送各種檢測命令,導(dǎo)航系統(tǒng)隨即進入相應(yīng)的檢測狀態(tài)并把檢測數(shù)據(jù)傳送給檢測儀,由檢測儀完成數(shù)據(jù)處理和系統(tǒng)性能分析,檢測結(jié)束后系統(tǒng)自動恢復(fù)到導(dǎo)航狀態(tài)。檢測過程中,導(dǎo)航計算機通過中斷控制方式接收命令、采集數(shù)據(jù)和發(fā)送數(shù)據(jù)。操作人員通過檢測儀發(fā)出各種檢測命令后,檢測過程由計算機自動完成,無需人工干預(yù)。
3、硬件配置
作為專用的檢測設(shè)備,要求檢測儀在車載定位定向?qū)Ш较到y(tǒng)需要檢測、維修的任何時間和地點都能夠方便地與導(dǎo)航系統(tǒng)對接并進行性能測試和故障診斷。因此檢測儀必須具有體積小、重量輕、功耗低、可靠性高、便于攜帶等特點,能在各種惡劣環(huán)境特別是野外環(huán)境下使用。根據(jù)以上要求,檢測儀選用了嵌入式計算機PC/104模塊。整個檢測儀的硬件配置如圖2所示。
PC/104計算機模塊是檢測儀的核心部分,由于檢測儀在檢測過程中不但要實時完成大量數(shù)據(jù)的收發(fā)任務(wù),還要實時對獲得的各種數(shù)據(jù)進行復(fù)雜的處理、分析和存儲,因此要求其有盡可能高的性能。我們選用的PC/104計算機模塊具有一個內(nèi)置浮點運算協(xié)處理器的高速嵌入式Pentium CPU、兩個16C550等同高速串行口,能夠快速可靠地進行RS-232串行通信,迅速準確地完成所賦予的各項功能。
電源模塊的作用是向PC/104計算機模塊和液晶顯示屏提供+5V和+12V電源。為便于和其它計算機交換數(shù)據(jù),檢測儀還留有一個以太網(wǎng)口。
4、軟件設(shè)計
檢測儀的軟件基于Windows平臺的Visual Basic 6.0、Visual C++ 6.0、Matlab6.5和Access 2000設(shè)計完成。Visual Basic提供了功能強大且使用方便的串行通信控件"MSComm",在開發(fā)Windows應(yīng)用程序的編程語言中具有獨特的優(yōu)勢,但在數(shù)據(jù)處理等方面功能較弱,Visual C++ 6.0、Matlab6.5可彌補其不足。在數(shù)據(jù)庫操作方面,檢測軟件使用了Visual Basic提供的數(shù)據(jù)接口ActiveX數(shù)據(jù)訪問對象(Data Access Object,DAO)來管理數(shù)據(jù)庫。DAO支持對Access數(shù)據(jù)庫的簡捷方便的訪問,是一種便于使用的應(yīng)用程序接口。
4.1通信協(xié)議
檢測儀和導(dǎo)航系統(tǒng)之間的傳輸波特率為9600位/秒,傳輸幀格式為:1位起始位,8位數(shù)據(jù)位,1位停止位,1位偶校驗位,共11位數(shù)據(jù)。雙方進行通信時只需將預(yù)傳送數(shù)據(jù)的開頭加上一個起始判別字節(jié)即可。 檢測儀和導(dǎo)航系統(tǒng)之間的通信流程為:檢測儀發(fā)送檢測命令--導(dǎo)航計算機發(fā)回相關(guān)數(shù)據(jù)。
4.2功能模塊的設(shè)計
為了便于開發(fā)、調(diào)試、升級和維護,軟件采用了模塊化的設(shè)計思想,整個軟件主要由四個窗體和六個標(biāo)準模塊組成。窗體包括展示窗體、功能選擇窗體、導(dǎo)航窗體和檢測窗體;標(biāo)準模塊是檢測儀完成各項任務(wù)的功能模塊,包括CRC校驗碼計算模塊、通信模塊、坐標(biāo)變換模塊、數(shù)據(jù)拆分模塊、數(shù)據(jù)庫管理模塊和檢測數(shù)據(jù)處理模塊等。CRC校驗碼計算模塊用于生成串行通信校驗碼;通信模塊的作用是利用Visual Basic中串行通信控件"MSComm"的"input"和"output"屬性和"OnComm"事件完成數(shù)據(jù)的收發(fā)任務(wù);坐標(biāo)變換模塊負責(zé)把54坐標(biāo)轉(zhuǎn)換為地心經(jīng)緯度坐標(biāo);數(shù)據(jù)拆分模塊可把整型數(shù)據(jù)拆分為字節(jié)型數(shù)據(jù),以便于通過串口發(fā)送;數(shù)據(jù)庫管理模塊根據(jù)需要把檢測的數(shù)據(jù)保存在數(shù)據(jù)庫中;檢測數(shù)據(jù)處理模塊為整個軟件的核心,根據(jù)檢測數(shù)據(jù)的類型給出相應(yīng)的處理結(jié)果。
4.3檢測數(shù)據(jù)的處理
為準確判斷導(dǎo)航系統(tǒng)的工作狀態(tài),我們設(shè)計了基于BP神經(jīng)網(wǎng)絡(luò)的故障診斷方法,作用函數(shù)選取S型函數(shù) 。由于尋北儀中陀螺儀和加速度計正常工作時的信號均為周期信號,故這些信號可采用同一網(wǎng)絡(luò)進行性能檢測和故障診斷。檢測時取得一個周期的信號,首先經(jīng)過低通數(shù)字濾波器以減少、消除檢測數(shù)據(jù)中干擾和噪聲的影響,然后進行歸一化處理。經(jīng)過對試驗數(shù)據(jù)的多次仿真試驗,我們提取到其故障特征信號為峰值(MAX)、峭度(KUR)、標(biāo)準差(STD)這三個量作為網(wǎng)絡(luò)的輸入。網(wǎng)絡(luò)采用離線訓(xùn)練、在線使用的方式。神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖3所示,其中隱含層神經(jīng)元個數(shù)、各個神經(jīng)元上的權(quán)值和閾值均由大量試驗樣本數(shù)據(jù)訓(xùn)練得到。考慮到神經(jīng)元的作用函數(shù)選為S型函數(shù),故選取網(wǎng)絡(luò)的輸出訓(xùn)練樣本為0.9(有故障)或0.1(無故障)。神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法采用自適應(yīng)學(xué)習(xí)率梯度下降反向傳播算法,且參數(shù)每一步更新不僅考慮當(dāng)前的梯度方向,而且還考慮前一時刻的梯度方向,從而降低了網(wǎng)絡(luò)性能對參數(shù)調(diào)整的敏感性,有效地抑制了訓(xùn)練結(jié)果出現(xiàn)局部極小問題。對一個訓(xùn)練好的BP網(wǎng)絡(luò)來說,根據(jù)網(wǎng)絡(luò)的輸出(out)即可判斷相應(yīng)的慣性部件是否工作正常。測試結(jié)果表明,采用基于BP神經(jīng)網(wǎng)絡(luò)的故障判別方法適合于車載定位定向?qū)Ш较到y(tǒng)慣性器件的故障診斷,準確率高。
5、結(jié)論
檢測儀的研制成功,解決了車載定位定向?qū)Ш较到y(tǒng)在野外環(huán)境下無法進行性能測試和故障診斷的難題。它不但能快速準確地獲取導(dǎo)航系統(tǒng)慣性器件的狀態(tài)信息數(shù)據(jù)并完成系統(tǒng)的性能分析和故障診斷,還能保證導(dǎo)航系統(tǒng)的正常工作且性能指標(biāo)不受影響,其工作原理為已有裝備的性能檢測和故障診斷提供了一種新思路。
參考文獻:
[1] 陳離劍.陸地車輛定位定向?qū)Ш较到y(tǒng)計算機控制系統(tǒng)的研制:[碩士學(xué)位論文].北京: 北京理工大學(xué),1998
[2] 范逸之,陳立元. Visual Basic與RS-232串行通信控制. 北京: 清華大學(xué)出版社, 2002.6
[3] 姚志軍,張平,白向林.一種基于PC104的測試儀器.現(xiàn)代電子技術(shù),2003,1.P57-P58.
評論