引言
傳統(tǒng)的姿態(tài)測量因?yàn)椴捎?a target="_blank">高精度陀螺儀和加速度計(jì)等姿態(tài)傳感器,體積龐大并且價(jià)格昂貴。當(dāng)前MEMS產(chǎn)品因其體積小、價(jià)格低、功耗低,被稱為是傳統(tǒng)的慣性測量組合的一次重大改革,越來越多地應(yīng)用于姿態(tài)測量應(yīng)用中。并且,隨著MEMS技術(shù)的迅速發(fā)展以及向各個(gè)學(xué)科領(lǐng)域的滲透,它的各方面性能如精度、魯棒性、動(dòng)態(tài)響應(yīng)等都得到了巨大的提高。
隨著嵌入式技術(shù)的不斷發(fā)展,以應(yīng)用為中心的嵌入式系統(tǒng)由于體積小、功耗低、可靠性高、可裁減性好、軟硬件集成度高,已經(jīng)滲入到我們?nèi)粘I畹母鱾€(gè)方面,在各行各業(yè)中都得到了應(yīng)用。而嵌入式與MEMS的結(jié)合使姿態(tài)測量系統(tǒng)滿足了低成本、低功耗、微型化的應(yīng)用需求,給消費(fèi)電子領(lǐng)域帶來了巨大進(jìn)步,如智能手機(jī)中的重力感應(yīng)與指南針,同時(shí)給航空、工業(yè)、汽車、醫(yī)療、環(huán)境監(jiān)控、通信等領(lǐng)域帶來了十分廣闊的應(yīng)用前景。
本文采用三軸MEMS陀螺儀、三軸MEMS加速度計(jì)及三軸MEMS電子羅盤與Freescale單片機(jī)MC9S08QE8組成一個(gè)嵌入式姿態(tài)測量系統(tǒng)。陀螺儀由于動(dòng)態(tài)性能好,用于獲取實(shí)時(shí)姿態(tài)信息。但陀螺儀因?yàn)闀?huì)產(chǎn)生偏移,而加速度計(jì)與電子羅盤因其靜態(tài)性能比較優(yōu)越,所以用來對(duì)陀螺儀姿態(tài)計(jì)算過程中的誤差進(jìn)行修正。
1 系統(tǒng)組成和結(jié)構(gòu)
本系統(tǒng)主要由單軸陀螺儀LY530AL、雙軸陀螺儀LPR530AL、三軸MEMS加速度計(jì)ADXL345、三軸MEMS電子羅盤HMC5843及單片機(jī)MC9S08QE8組成。其中X、Y方向的雙軸陀螺儀與Z軸方向的單軸陀螺儀組合成三軸陀螺儀,它們的信號(hào)由單片機(jī)MC9S08QE8的ADC模塊進(jìn)行采集,而加速度信號(hào)和電子羅盤信號(hào)則通過I2C總線傳送到單片機(jī)。這9路信號(hào)在單片機(jī)中首先經(jīng)過前期的處理,而后由單片機(jī)中的姿態(tài)計(jì)算算法程序獲取3個(gè)姿態(tài)角信息,這3個(gè)信息通過單片機(jī)MC9S08QE8的串口模塊傳送到上位機(jī)進(jìn)行演示,嵌入式姿態(tài)測量系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
1.1 三軸MEMS陀螺儀
系統(tǒng)中三軸MEMS陀螺儀由ST公司的單軸Z方向的陀螺儀LY530AL和雙軸X、Y方向的陀螺儀LPR530AL組合而成。它們采用電容式微機(jī)械陀螺儀原理,由于ST公司選用了音叉方法,并且振動(dòng)驅(qū)動(dòng)電路采用了雙閉環(huán)的控制結(jié)構(gòu),顯著地提高了陀螺儀的穩(wěn)定性和分辨率。測量范圍達(dá)±300°/s,擁有自測功能,輸出端集成了低通濾波電路,工作電壓為1.8~3.6 V,待機(jī)模式電流小于1μA。
1.2 三軸MEMS加速度計(jì)
系統(tǒng)中三軸MEMS加速度計(jì)選用ADI公司的ADXL345。ADXL345是基于iMEMS技術(shù)的三軸、數(shù)字輸出加速度傳感器,具有±2g、±4g、±8g、±16g可變的測量范圍。芯片內(nèi)帶的32級(jí)FIFO存儲(chǔ)可以緩存數(shù)據(jù),從而減輕處理器的負(fù)擔(dān)并降低了系統(tǒng)功耗。ADXL345具有較高的分辨率與靈敏度、3 mm×5 mm×1 mm超小封裝、40~145μA超低功耗及標(biāo)準(zhǔn)的I2C或SPI數(shù)字接口,非常適合于移動(dòng)設(shè)備的應(yīng)用。
1.3 三軸MEMS電子羅盤
系統(tǒng)中的三軸MEMS電子羅盤采用霍尼韋爾公司的HMC5843,它采用霍尼韋爾公司的各向異性磁阻(AMR)技術(shù),由霍尼韋爾高精度的HMC11 8X系列磁阻傳感器組成,在低強(qiáng)度磁場傳感器中具有較高的靈敏度和可靠性。2.16~3.3 V的低電壓供電、0.66 mA電流功耗,以及3mm×3 mm×0.9 mm的小體積,在消費(fèi)電子設(shè)備、導(dǎo)航系統(tǒng)中擁有明顯的優(yōu)越性。
1.4 單片機(jī)MC9S08QE8
系統(tǒng)中單片機(jī)采用Freescale公司的MC9S08QE8。MC9S08QE8采用了眾多新技術(shù),如電池壽命、延長技術(shù)、增強(qiáng)型的低功耗性能以及超低電壓下的高級(jí)運(yùn)行能力等。同時(shí)具有極高的集成度,集成了很多系統(tǒng)級(jí)功能,如12位高精度A/D轉(zhuǎn)換器、定時(shí)器、SPI、I2C、SCI等常用模塊,非常適合低功耗、低成本的應(yīng)用。
2 應(yīng)用電路設(shè)計(jì)
2.1 電源模塊
本系統(tǒng)的電源穩(wěn)壓電路為整個(gè)系統(tǒng)所有設(shè)備供電,考慮到系統(tǒng)中涉及數(shù)字型和模擬型傳感器,采用了低噪音、低漂移、供電電壓為3.3 V的線性穩(wěn)壓芯片MIC5205。電源穩(wěn)壓電路原理圖如圖2所示。其中,C1是連接芯片內(nèi)部電壓參考源與GND的電容,用來減少輸出電壓的噪音,而C2作為輸出與GND的電容,用來防止電路產(chǎn)生振蕩。C2的電容大小與C1有關(guān),但當(dāng)C1為470 nF時(shí),C2一般為2.2μF。D1為電源的指示燈。
2.2 陀螺儀與ADC模塊
MC9S08QE8單片機(jī)內(nèi)帶的ADC模塊是基于逐次逼近型12位模數(shù)轉(zhuǎn)換器。它提供10個(gè)輸入通道,可以配置采用時(shí)間轉(zhuǎn)換速度及功耗,可以設(shè)置預(yù)置比較,從而保證某些不符合要求的數(shù)據(jù)不用保存。其中最能體現(xiàn)高性能特點(diǎn)的是可以設(shè)置連續(xù)序列轉(zhuǎn)換方式,這種模式下,ADC硬件可自動(dòng)實(shí)現(xiàn)所設(shè)定的幾個(gè)通道連續(xù)轉(zhuǎn)換,并把轉(zhuǎn)換結(jié)果存入響應(yīng)的數(shù)據(jù)寄存器中,而不用程序循環(huán)實(shí)現(xiàn)。這樣既簡化了程序設(shè)計(jì),又降低了轉(zhuǎn)換功耗,減輕了MC9S08QE8的負(fù)擔(dān)。
陀螺儀與單片機(jī)ADC模塊的接口如圖3所示。圖中ST、HP、PD作為自我測試、能量控制、高通濾波設(shè)置3個(gè)引腳,它們分別連接到MC9S08 QE8的通用I/O接口上。一般它們都接下拉電阻,默認(rèn)為正常工作模式,如果需要對(duì)相應(yīng)的工作模式進(jìn)行改變則須改變對(duì)應(yīng)MC9S08QE8I/O口的電平為高電平。而LY530AL與LPR530AL的輸出信號(hào)(4xOTUX、4xOTUY、4xOTUZ引腳)與輸出參考電壓(Vref引腳)分別接MC9S08QE8的ADC模塊的相應(yīng)通道。設(shè)計(jì)中特別注意的是,LPR530AL有2種輸出模式:一種是采用經(jīng)過內(nèi)部放大4倍后的輸出,另一種是正常的輸出。當(dāng)采用非線性放大輸出方式時(shí),應(yīng)當(dāng)把LPR530AL的5引腳和9引腳連接GND;如果采用放大輸出方式并且外部沒有擴(kuò)展旁路濾波,則應(yīng)當(dāng)分別把4和5引腳、9和10引腳短接。圖3中,LY530AL工作原理與LPR530AL相似。
2.3 加速度計(jì)、電子羅盤與I2C接口
MC9S08QE8內(nèi)帶的高速I2C模塊擁有多主機(jī)操作、可編程從機(jī)地址、中斷驅(qū)動(dòng)的逐字節(jié)數(shù)據(jù)發(fā)送、支持廣播模式和10位尋址等特點(diǎn),總線在最大負(fù)荷下可達(dá)到100kbps的速度。系統(tǒng)中,加速度計(jì)、電子羅盤芯片與MC9S08QE8 I2C模塊的接口如圖4所示。圖中ADXL345的CS引腳用來控制選擇I2C還是SPI通信協(xié)議,電平為高表示采用I2C協(xié)議,而SDA和SCL引腳分別連接到MC9S08QE8的I2C總線引腳上。電子羅盤HMC5843支持雙電壓工作,其中引腳VDD表示內(nèi)核電壓,引腳VDDIO表示外部I/O電壓,本系統(tǒng)中采用單電壓模式,即內(nèi)核電壓與外部I/O電壓相同。
3 軟件設(shè)計(jì)與測試
系統(tǒng)的軟件設(shè)計(jì)是整個(gè)系統(tǒng)的重要組成部分。依據(jù)上述硬件電路的設(shè)計(jì)原理與功能要求,軟件中首先要完成MC9S08QE8的初始化,對(duì)各種MEMS傳感器的工作模式進(jìn)行設(shè)定;然后獲取三軸陀螺儀、加速度計(jì)、電子羅盤的實(shí)時(shí)信號(hào),并根據(jù)姿態(tài)計(jì)算算法計(jì)算姿態(tài)角,最終把姿態(tài)角信息通過串口傳送到上位機(jī)中進(jìn)行測試與演示,嵌入式姿態(tài)測量系統(tǒng)軟件流程如圖5所示。
3.1 MC9S08QE8的初始化
MC9S08QE8的初始化函數(shù)主要實(shí)現(xiàn)對(duì)系統(tǒng)時(shí)鐘、端口及各個(gè)使用的功能模塊進(jìn)行初始化,如ADC模塊、SCI模塊、I2C模塊。初始化函數(shù)Sys_init_fun(void)如下:
3.2 傳感器工作模式的設(shè)定
各種MEMS傳感器工作模式的設(shè)定中,陀螺儀涉及的均為模擬信號(hào),不用對(duì)其具體工作模式進(jìn)行設(shè)定。加速度計(jì)ADXL345豐富的功能是通過配置對(duì)應(yīng)的寄存器來實(shí)現(xiàn)的,通過對(duì)應(yīng)的寄存器可以選擇數(shù)據(jù)格式、FIFO工作模式、數(shù)字通信模式、節(jié)電模式、中斷使能以及修正各軸偏差等。POWER_CTL寄存器用來設(shè)定供電模式,與BW_RATE寄存器配合,可設(shè)定數(shù)據(jù)傳輸速率,如果要進(jìn)一步降低功耗,可將BW_RATE寄存器中的LOW_POWER位置位,進(jìn)入低功耗模式。而DATA_FORMAT寄存器用來設(shè)定數(shù)據(jù)格式與加速度計(jì)的量程,F(xiàn)IFO_CTL寄存器用來設(shè)置緩存器具體的工作模式,如Bypass、FIFO、Stream、Trigger。最后OFSX、OFSY、OFSZ三個(gè)用來存放初始化時(shí)標(biāo)定的X、Y、Z軸的偏移量,以便對(duì)數(shù)據(jù)進(jìn)行
修正。
電子羅盤HMC5843配置相對(duì)簡單,主要有3個(gè)寄存器,通過配置寄存器A可以設(shè)定數(shù)據(jù)傳輸速率和測量模式,寄存器B用來設(shè)置設(shè)備的增益大小,而通過模式寄存器用來設(shè)置設(shè)備的工作模式。
3.3 姿態(tài)計(jì)算
典型的姿態(tài)解算方法有方向余弦矩陣求解法、四元數(shù)法、旋轉(zhuǎn)矢量法等,本系統(tǒng)采用William Premerlani andPaul Bizard的DCM算法,DCM算法框圖如圖6所示。三軸陀螺儀的輸入信號(hào)通過運(yùn)動(dòng)學(xué)方程計(jì)算出方向余弦矩陣,三軸加速度計(jì)信號(hào)與三軸電子羅盤信號(hào)結(jié)合PI反饋控制對(duì)陀螺儀信號(hào)進(jìn)行修正。
其中算法由kinematics_and_normalization(t_vector*gyro,t_matrix*dcm)函數(shù)實(shí)現(xiàn):
上述計(jì)算得到的實(shí)時(shí)姿態(tài)角數(shù)據(jù)通過串口傳送到上位機(jī),上位機(jī)中通過編寫的python演示程序?qū)ο挛粰C(jī)姿態(tài)測量模塊的運(yùn)動(dòng)姿態(tài)進(jìn)行跟蹤與顯示,演示效果如圖7所示。每幅圖中包含3個(gè)部分:第1部分(左上角)中紅、綠、藍(lán)3種指針指向分別代表橫滾角(roll)、俯仰角(pitch)與航向角(yaw)的大小,第2部分(左下角)顯示模塊實(shí)時(shí)運(yùn)動(dòng)姿態(tài),第3部分(右邊)用于顯示姿態(tài)角信息。左圖為物體靜止不動(dòng)下的演示效果,右圖表示在運(yùn)動(dòng)過程中物體的姿態(tài)運(yùn)動(dòng)效果,通過對(duì)比與分析2個(gè)圖及各圖對(duì)應(yīng)3部分的效果,可以說明本設(shè)計(jì)達(dá)到了良好的效果,能比較正確地測量物體的姿態(tài)信息。
結(jié)語
當(dāng)前,各種消費(fèi)電子設(shè)備內(nèi)部一般含有三軸加速度計(jì)和電子羅盤,如智能手機(jī)、平板電腦等,但加速度計(jì)動(dòng)態(tài)性能相比陀螺儀遜色很多,而陀螺儀的增加可以提升系統(tǒng)整體的動(dòng)態(tài)與靜態(tài)性能。本文設(shè)計(jì)的嵌入式姿態(tài)測量系統(tǒng),采用多MEMS傳感器組合方式,拓展了MEMS傳感器的應(yīng)用范圍,也延伸了姿態(tài)測量系統(tǒng)的應(yīng)用領(lǐng)域。實(shí)驗(yàn)演示表明系統(tǒng)性能和使用性都比較好,可以應(yīng)用于消費(fèi)電子與一般工業(yè)的姿態(tài)測量與物體穩(wěn)定控制的應(yīng)用中。
評(píng)論
查看更多