王丹丹,譚開拓,趙建周
(安陽工學院 電子信息與電氣工程學院,河南安陽454000)
進入20世紀以來,科學技術發(fā)展迅速,人們的生活進入了微型化時代[1]。微機電系統(tǒng)(Micro-Elector-Mechanical System,MEMS)[2]受到了越來越多的關注。加速度計是一種用來感測外部力量的一種器件[3]。當外力作用于傳感器上時,傳感器內部的耐震物質會發(fā)生一定的位移從而壓電元件會產生感應,通過測量傳感器的電荷數(shù),可以得到載體的加速度。其內部結構如圖1所示。
圖1 加速度計結構圖
陀螺儀又稱為角速度傳感器,是一種用來測量載體的轉動角速度和轉動角度的測量工具[4],利用自身的慣性特性去測量和感知載體的運動狀態(tài)[5]。它不受外界的干擾,比如磁場或者信號等外界因素,所以得到了廣泛的應用。利用測量載體旋轉量的陀螺儀和測量載體線性運動的加速度計,組合成一個測量載體慣性的單元IMU[6],可以獲取到載體空間中姿態(tài)的各種信息,從而在生活中得到更加廣范的應用。比如一些微型的飛機、計步器等。本文設計一個慣性導航小系統(tǒng),先由陀螺儀測量載體的角速度得到獲得載體的運動姿態(tài)[7],之后結合上述測量值并利用加速度計獲得的測量值,準確地獲得載體的運動姿態(tài)的信息。修正由重力所帶來的誤差,通過一個二次的積分得到載體的位置。
記k-1時刻的載體傾角為φk-1,角速度為?k-1,則k時刻的估計值為
式中,?為角速度的偏差,用來彌補輸出的角速度(wk-?k-1);Δt為輸出時間差值。
k時刻下,系統(tǒng)的狀態(tài)模型表示為:
式中,A是狀態(tài)轉移矩陣,B為輸入模型。uk表示k時刻系統(tǒng)輸出量。wk為k時刻的噪聲。假定在k時刻載體輸出值為zk,測量噪聲vk。
卡爾曼濾波器中的輸入向量表示
式中wk為陀螺儀輸出的角速度,θk為加速度計計算得到的角度。
卡爾曼濾波器的工作過程主要分為預測過程和更新過程。此外我們還需要輸入一個初始化的值,在初始化之后k時刻系統(tǒng)的狀態(tài)的協(xié)方差矩陣為xk|k-1,得到這個矩陣用來評估與理想值之間的差距,pk|k-1值越大代表其誤差越大。
Qk是噪聲wk在k時刻的協(xié)方差矩陣,即輸出值和陀螺儀狀態(tài)估計值的協(xié)方差矩陣,因兩者無關聯(lián),兩者的協(xié)方差等于兩者值的方差,因Qk不受時間影響,該矩陣可定義為:
卡爾曼參數(shù)Kk用于測量估計值的權值,在每個時刻根據(jù)誤差的協(xié)方差進行更新。HPk|k-1HT+R是為了預測先驗誤差的協(xié)方差矩陣Pk|k-1和測量值的協(xié)方差R,測量噪聲越大,該值就越大。
接著計算:xk|k的協(xié)方差,然后計算誤差協(xié)方差矩陣后,重新循環(huán)。
主要步驟為:
1)設置x和p初始值為0。
2)將陀螺儀輸出的角速度w及公式(4)帶入(5)得
4)將式 (6)代入 (8)可得
6)進一步
對傾角去噪處理并仿真,基于卡爾曼濾波的傾角估計如圖2所示。
圖2 基于卡爾曼濾波的傾角仿真
圖2中可以看出去噪前的原始數(shù)據(jù)曲線比較平滑,對角度變化的動態(tài)響應有延時,敏感性低,且角度的偏差較大;經(jīng)卡爾曼濾波器后的傾角估計有了明顯的改善,且響應速度加快。
該模塊內置有電源管理寄存器,該地址為0X6B,具體描述見表1。
表1 電源管理寄存器描述
表中DEVICE-RESET是復位地址,當設為1時為復位,復位結束后MPU數(shù)據(jù)清零該位,具體各位解釋見表2。
MPU6050模塊的電氣原理圖如圖3所示。
打開上位機軟件,選用Mini Mu軟件。將MPU6050模塊連接到TTL串口,鏈接到電腦,點擊串口選擇COM3,選取9600B波特率或者115200B波特率,將模塊由水平狀態(tài),然后慢慢傾斜可觀察到屏幕上加速度圖像,角速度值和角度值,記錄不同的模塊加速度如圖4所示。
表2 CLKSEL選擇列表
圖3 主模塊電氣圖
圖4 模塊加速度
對加速度,角速度,角度及溫度進行Matlab仿真,如圖5所示。
圖5 MATLAB仿真圖
通過TTL串口加入一個USB與手機接口的轉換器,把MPU6050模塊與手機相連接,可將模塊的輸出信息顯示出來,本實驗證明基于智能小車的陀螺儀及加速度計的設計,達到了自主導航的高性能要求,且響應迅速。