文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2015)01-0032-04
0 引言
隨著自動(dòng)化技術(shù)的快速發(fā)展,,車載導(dǎo)航系統(tǒng)已成為智能汽車電子領(lǐng)域的重要組成部分。精確地檢測(cè)車體當(dāng)前行駛道路的坡度是車載導(dǎo)航系統(tǒng)所必備的功能之一,。但是,,現(xiàn)有的車載傾角檢測(cè)裝置普遍存在如下問題:(1)傳統(tǒng)兩軸加速度傳感器的模擬信號(hào)采樣獲取的車體加速度和傾斜角度信息存在著測(cè)量精度低、適用范圍較窄等缺陷和不足,;(2)單一傳感器節(jié)點(diǎn)結(jié)果易受溫度,、電壓、電磁等因素的影響,,導(dǎo)致數(shù)據(jù)可靠性差,。因此,目前的檢測(cè)裝置無法滿足高精度車載導(dǎo)航系統(tǒng)的實(shí)際需求,。
為了克服上述現(xiàn)有技術(shù)的缺陷,,本系統(tǒng)擬提出一種高精度車載道路坡度檢測(cè)儀的設(shè)計(jì)及實(shí)現(xiàn)方案。該檢測(cè)儀由主控節(jié)點(diǎn)和檢測(cè)節(jié)點(diǎn)組成,,利用三軸數(shù)字加速度傳感器獲取車體傾斜角度,,然后通過CAN總線將數(shù)據(jù)發(fā)送至主控節(jié)點(diǎn);主控節(jié)點(diǎn)對(duì)分布在不同位置的多個(gè)傳感器節(jié)點(diǎn)的檢測(cè)數(shù)據(jù)進(jìn)行信息融合處理,,獲得車體傾斜角度的最優(yōu)估計(jì)值,,以實(shí)現(xiàn)對(duì)道路坡度的高精度檢測(cè)。
1 系統(tǒng)方案
1.1 道路坡度檢測(cè)儀整體設(shè)計(jì)
道路坡度檢測(cè)儀主要完成對(duì)小車車體傾斜角度的精確測(cè)量,。檢測(cè)儀由主控節(jié)點(diǎn)和多個(gè)檢測(cè)節(jié)點(diǎn)組成,,它在車體不同位置布設(shè)多個(gè)檢測(cè)節(jié)點(diǎn),分別檢測(cè)各自的傾角信息,;然后通過CAN總線將信息傳送給主控節(jié)點(diǎn)進(jìn)行集中處理,,將各處及最終的估計(jì)值同時(shí)顯示到車載液晶屏上,并備份到數(shù)據(jù)庫(kù)中,。每個(gè)檢測(cè)節(jié)點(diǎn)通過陀螺儀檢測(cè)車體動(dòng)態(tài)傾斜角度,,并配合三軸數(shù)字加速度傳感器檢測(cè)車體靜態(tài)傾斜角度。本文所述的高精度車載道路坡度檢測(cè)儀的整體設(shè)計(jì)框架如圖1所示,。
圖1中,,主控節(jié)點(diǎn)為基于ARM Linux的嵌入式系統(tǒng)架構(gòu),它分別獲取各檢測(cè)節(jié)點(diǎn)的傾角信息,,通過所設(shè)計(jì)的多傳感器信息融合算法,,得到傾斜角度最優(yōu)估計(jì)值,,并實(shí)時(shí)顯示到車載液晶屏上;為保存行車過程中的坡度歷史信息,,主控節(jié)點(diǎn)中還搭建了嵌入式本地?cái)?shù)據(jù)庫(kù)。
1.2 多傳感器數(shù)據(jù)融合方法
本系統(tǒng)通過高精度的三軸數(shù)字加速度傳感器設(shè)計(jì)檢測(cè)節(jié)點(diǎn),,提高單一傳感節(jié)點(diǎn)的檢測(cè)精度,;并在車體不同位置布設(shè)多個(gè)該檢測(cè)節(jié)點(diǎn),通過融合處理算法獲取車體傾角的最優(yōu)估計(jì)值,,以提高數(shù)據(jù)靠性及角度信息檢測(cè)精度,。
由圖2可知,一個(gè)檢測(cè)周期分為數(shù)據(jù)獲取和數(shù)據(jù)處理兩個(gè)階段完成,。在數(shù)據(jù)獲取階段,,主控節(jié)點(diǎn)通過遠(yuǎn)程幀輪詢各檢測(cè)節(jié)點(diǎn)的數(shù)據(jù)。在數(shù)據(jù)處理階段,,主控節(jié)點(diǎn)將檢測(cè)子節(jié)點(diǎn)的傾角信息依次按照如下步驟進(jìn)行數(shù)據(jù)融合,,得到車體行駛道路坡度的最優(yōu)估計(jì)值:
(1)采用疏失誤差剔除法[1](Negligence Error Elimination)剔除無效的傳感器數(shù)據(jù),消除角度測(cè)量中的隨機(jī)干擾,。設(shè)CAN總線網(wǎng)絡(luò)中共有n個(gè)檢測(cè)節(jié)點(diǎn),,表示主控節(jié)點(diǎn)在第k個(gè)檢測(cè)周期收集到的檢測(cè)節(jié)點(diǎn)i的角度測(cè)量值,則第k個(gè)周期內(nèi)所有檢測(cè)節(jié)點(diǎn)角度測(cè)量值組成的集合為,,對(duì)集合A進(jìn)行從小到大的排序得到集合B={x1(k),,x2(k),x3(k),,…,,xn(k)}。那么疏失誤差剔除后的集合C由式(1)~式(5)計(jì)算得到,。
其中xM為集合B的中位數(shù),,DS為四分位離散度,xU和xD分別為其上四分位數(shù)和下四分位數(shù),MED{·}為求集合中位數(shù)的運(yùn)算,。滿足集合C的測(cè)量值為有效的,,否則為誤差值,應(yīng)予以剔除,。
(2)通過最小二乘法[2](Least Square Method)擬合剔除后的所有測(cè)量值,,作為卡爾曼濾波器的觀測(cè)值輸入。在剔除無效的傳感器數(shù)據(jù)后,,通過最小二乘法對(duì)集合C中的數(shù)據(jù)進(jìn)行擬合,得到時(shí)刻k的觀測(cè)值,,如式(6)所示,,其中LSM{·}為通過最小二乘法擬合集合數(shù)據(jù)的運(yùn)算,。
Y(k)=LSM{C}(6)
(3)結(jié)合上一檢測(cè)周期的最優(yōu)估計(jì)結(jié)果,利用卡爾曼濾波器完成本周期內(nèi)的道路坡度最優(yōu)估計(jì)值預(yù)測(cè),??柭鼮V波針對(duì)式(7)和(8)所示的離散線性系統(tǒng)。
Y(k)=H·X(k)+V(k)(8)
其中X(k)為k時(shí)刻的估計(jì)值,;Y(k)為k時(shí)刻(第k個(gè)檢測(cè)周期)的觀測(cè)值,,其值由步驟(2)計(jì)算得到;參數(shù)?椎為系統(tǒng)矩陣,,H表征了k時(shí)刻估計(jì)值相對(duì)于k-1時(shí)刻的變化率,;W(k)和V(k)分別為k時(shí)刻的過程噪聲和測(cè)量噪聲。對(duì)于式(9)和(10)所描述的離散線性系統(tǒng),,可通過式(9)~(12)計(jì)算k時(shí)刻的卡爾曼濾波最優(yōu)估計(jì)值,。
其中Q和R分別為W(k)和V(k)的協(xié)方差,Kg(k)為k時(shí)刻的卡爾曼濾波增益,,X(k|k)表征時(shí)刻k的最優(yōu)結(jié)果,,X(k|k-1)表征上一時(shí)刻的狀態(tài)預(yù)測(cè)值,,P(k|k)和P(k|k-1)分別為X(k|k)和X(k|k-1)對(duì)應(yīng)的協(xié)方差,。
2 系統(tǒng)硬件設(shè)計(jì)
本文所述的高精度道路坡度檢測(cè)儀硬件分主控節(jié)點(diǎn)和檢測(cè)節(jié)點(diǎn)兩部分。主控節(jié)點(diǎn)采用ARM Linux架構(gòu),,實(shí)現(xiàn)對(duì)各檢測(cè)子節(jié)點(diǎn)傾角數(shù)據(jù)的采集與處理,;檢測(cè)節(jié)點(diǎn)通過單片機(jī)低功耗模式,完成對(duì)各子區(qū)域車體動(dòng)靜態(tài)傾斜角度的精確測(cè)量,。
2.1 主控節(jié)點(diǎn)硬件設(shè)計(jì)
主控節(jié)點(diǎn)采用ARM Linux架構(gòu),,ARM芯片采用S3C2440,選用Linux 2.6.30內(nèi)核版本進(jìn)行嵌入式系統(tǒng)開發(fā),。通過SPI接口控制CAN總線控制器,,完成車載信息的采集,各子區(qū)域的傳感器信息及融合后的精確角度信息均通過車載觸摸液晶屏實(shí)時(shí)顯示,,歷史信息存儲(chǔ)到本地?cái)?shù)據(jù)庫(kù)中,。主控節(jié)點(diǎn)的硬件設(shè)計(jì)如圖3所示。
2.2 檢測(cè)節(jié)點(diǎn)硬件設(shè)計(jì)
檢測(cè)節(jié)點(diǎn)通過三軸加速度傳感器完成對(duì)自身傾角信息的采集,,并將該數(shù)據(jù)上發(fā)。本系統(tǒng)工況檢測(cè)節(jié)點(diǎn)硬件設(shè)計(jì)如圖4所示,。
在工況信息檢測(cè)過程中,,傾斜的位置通過節(jié)點(diǎn)的位置確定,為了提高檢測(cè)結(jié)果的精度,,在檢測(cè)之前可對(duì)加速度傳感器進(jìn)行校準(zhǔn)。工況節(jié)點(diǎn)檢測(cè)傾角的原理如圖5所示,。
在圖5(a)中,,Ax、Ay,、Az分別為傳感器在3個(gè)方向上檢測(cè)到的靜止加速度。當(dāng)車體發(fā)生了如圖5(b)所示的傾斜時(shí),,其各軸的加速度變化如圖5(c)所示,,其中Axoy為傳感器在xoy平面上的加速度,其計(jì)算方法如式(13)所示:
此時(shí)該檢測(cè)節(jié)點(diǎn)計(jì)算到的車體xoy平面與地表水平面XOY傾斜的角度?琢如式(14)所示:
由此可知,,通過此方法將獲取的一組加速度信息進(jìn)行計(jì)算處理,,可得到檢測(cè)節(jié)點(diǎn)各子平面與地表水平面之間的傾角,。由于ADXL345三軸加速度傳感器最高分辨率可達(dá)3.9 mg/LSB,,因此單個(gè)傳感器能捕捉1.0°的傾斜角度變化。
3 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)的軟件分主控節(jié)點(diǎn)和檢測(cè)節(jié)點(diǎn)兩部分進(jìn)行設(shè)計(jì),。主控節(jié)點(diǎn)的軟件主要完成對(duì)各CAN通信節(jié)點(diǎn)數(shù)據(jù)的收集,、處理、保持及顯示等功能,;檢測(cè)節(jié)點(diǎn)的軟件主要完成傳感器信息的采集和發(fā)送,。
3.1 主控節(jié)點(diǎn)軟件設(shè)計(jì)
主控節(jié)點(diǎn)采用嵌入式Linux架構(gòu),其軟件設(shè)計(jì)在Linux操作系統(tǒng)上完成,。本系統(tǒng)關(guān)于主控節(jié)點(diǎn)的軟件可分為模塊驅(qū)動(dòng),、應(yīng)用層進(jìn)程和多進(jìn)程控制等3個(gè)部分組成。模塊驅(qū)動(dòng)實(shí)現(xiàn)與硬件的交互,,為應(yīng)用層各進(jìn)程的調(diào)用提供接口,;應(yīng)用層實(shí)現(xiàn)了主控節(jié)點(diǎn)的各主體功能,包括數(shù)據(jù)采集,、數(shù)據(jù)處理與保存和數(shù)據(jù)顯示等,;多進(jìn)程控制實(shí)現(xiàn)對(duì)各個(gè)子進(jìn)程的調(diào)度,實(shí)現(xiàn)最優(yōu)的進(jìn)程調(diào)度,。本系統(tǒng)的主控節(jié)點(diǎn)軟件架構(gòu)如圖6所示,。
主控節(jié)點(diǎn)的模塊驅(qū)動(dòng)程序基于Linux操作系統(tǒng)開發(fā),需要開發(fā)和加載LCD液晶驅(qū)動(dòng)程序和CAN控制器MCP2510驅(qū)動(dòng)程序,。現(xiàn)場(chǎng)總線網(wǎng)絡(luò)的輪詢數(shù)據(jù)采集由主控節(jié)點(diǎn)控制,,軟件上采用一主多從模式,。CAN通信中將A0~A7組合表示的地址作為檢測(cè)節(jié)點(diǎn)的ID。特別地,,主控節(jié)點(diǎn)的數(shù)據(jù)優(yōu)先級(jí)最高,,因此其ID號(hào)固定為0x000,,詳細(xì)如表1所示,。
數(shù)據(jù)的輪詢收集結(jié)束后,即可對(duì)采集的數(shù)據(jù)進(jìn)行相應(yīng)的融合處理,。本文1.2節(jié)已詳細(xì)講述數(shù)據(jù)融合算法及其仿真效果,,本節(jié)介紹其具體實(shí)現(xiàn)流程,如圖7所示,。其主要完成對(duì)工況節(jié)點(diǎn)數(shù)據(jù)的處理,、變量初始化和確定相關(guān)算法變量的初值。針對(duì)節(jié)點(diǎn)數(shù)據(jù),,分別依次進(jìn)行疏失誤差處理,、最小二乘法擬合觀測(cè)值和卡爾曼濾波估計(jì)最優(yōu)值,得到X(k)即為該線程輸出的融合最優(yōu)估計(jì)結(jié)果,。由式(12)可知,,為保證下一輪數(shù)據(jù)的順利融合,輸出X(k)后仍需將該值保存,,作為下一輪數(shù)據(jù)融合的輸入,。
3.2 檢測(cè)節(jié)點(diǎn)軟件設(shè)計(jì)
檢測(cè)節(jié)點(diǎn)的主要功能是實(shí)現(xiàn)對(duì)車體行駛坡度信息的采集,并將采集的信息發(fā)送給主控節(jié)點(diǎn),。檢測(cè)節(jié)點(diǎn)的CAN收發(fā)控制流程如圖8所示,。程序中首先初始化系統(tǒng),然后進(jìn)入低功耗模式,;當(dāng)收到命令時(shí),,節(jié)點(diǎn)立即讀取傳感器數(shù)據(jù)并上傳。
4 評(píng)測(cè)
4.1 仿真結(jié)果分析
在MATLAB中仿真本系統(tǒng)的多傳感器數(shù)據(jù)融合方法,,并將其與單傳感器數(shù)據(jù)描述進(jìn)行比較,,其前200個(gè)檢測(cè)周期對(duì)比結(jié)果如圖9所示。單傳感器在第100個(gè)檢測(cè)周期的數(shù)據(jù)明顯發(fā)生了錯(cuò)誤,,本文的多傳感器數(shù)據(jù)融合方法采用疏失誤差剔除這種采集過程中的單節(jié)點(diǎn)的隨機(jī)干擾,,保證檢測(cè)結(jié)果的精度。需要說明的是,,前20個(gè)檢測(cè)周期的融合值與實(shí)測(cè)值存在較大偏差,,這是由初值X(0)=10、P(0)=0引起的,,這種偏差不會(huì)對(duì)融合效果產(chǎn)生影響,因?yàn)殡S著算法的繼續(xù)迭代,融合結(jié)果會(huì)趨于穩(wěn)定,。
4.2 實(shí)際效果分析
對(duì)于系統(tǒng)實(shí)際效果的評(píng)測(cè),,在車體的3個(gè)不同位置分別配置檢測(cè)節(jié)點(diǎn),保證這3個(gè)節(jié)點(diǎn)構(gòu)成的平面ω與地表水平面平行,。將小車放置在11°左右的斜坡上,,截取系統(tǒng)檢測(cè)過程中的60組數(shù)據(jù),得到單傳感器檢測(cè)和多傳感器數(shù)據(jù)融合估計(jì)的實(shí)際效果對(duì)比,,如圖10所示,。由圖可知,由于單個(gè)節(jié)點(diǎn)檢測(cè)過程中數(shù)據(jù)存在一定的隨機(jī)干擾和測(cè)量誤差,,因此單個(gè)節(jié)點(diǎn)檢測(cè)的數(shù)據(jù)波動(dòng)較大,;本文的多傳感器數(shù)據(jù)融合算法可通過疏失誤差剔除法剔除隨機(jī)干擾,并通過卡爾曼濾波的迭代消除測(cè)量誤差,,因此數(shù)據(jù)融合后的曲線相對(duì)平穩(wěn),,其測(cè)量值也更接近真值。
5 結(jié)論
針對(duì)當(dāng)前車載坡度檢測(cè)技術(shù)缺陷,,本文提出了一種高精度車載道路坡度檢測(cè)儀的設(shè)計(jì)方案,,并通過MSP430單片機(jī)、三軸數(shù)字加速度傳感器,、ARM微控制器和CAN總線等實(shí)現(xiàn)其軟硬件功能,。該儀器采用三軸數(shù)字加速度傳感器計(jì)算傾角,并對(duì)多個(gè)傳感器數(shù)據(jù)進(jìn)行融合處理,,提高了車載道路邊坡檢測(cè)的精度,,其可廣泛應(yīng)用于車載導(dǎo)航系統(tǒng)與智能汽車電子領(lǐng)域。
參考文獻(xiàn)
[1] 段戰(zhàn)勝,,韓崇昭,,陶唐飛.基于最近統(tǒng)計(jì)距離的多傳感器一致性數(shù)據(jù)融合[J].儀器儀表學(xué)報(bào),2005,,26(5):478-481.
[2] 張曉平,,劉桂雄,周松斌.利用最小二乘支持向量機(jī)實(shí)現(xiàn)無線傳感器網(wǎng)絡(luò)的目標(biāo)定位[J].光學(xué)精密工程,,2010,,18(9):2060-2068.