ADISl6300四自由度IMU在姿態(tài)測(cè)量中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
近年來(lái),微機(jī)電系統(tǒng)(MEMS)技術(shù)廣泛用于汽車的系統(tǒng)和穩(wěn)定系統(tǒng)、醫(yī)學(xué)系統(tǒng)、便攜式照相機(jī)、運(yùn)動(dòng)裝置和三維鼠標(biāo)等領(lǐng)域。簡(jiǎn)單和小體積的慣性測(cè)量系統(tǒng)尤其受到關(guān)注,因此,基于MEMS的高精度、重量輕、小體積的姿態(tài)測(cè)量系統(tǒng)將得到廣泛的應(yīng)用。本文將介紹一種ADI公司的慣性傳感器以及由其組成的微小姿態(tài)測(cè)量系統(tǒng)。
1 ADISl6300簡(jiǎn)介
ADISl6300四自由度(4DoF)IMU是一個(gè)完整的慣性測(cè)量傳感器,其內(nèi)置單軸陀螺儀和三軸加速計(jì),每個(gè)傳感器都實(shí)現(xiàn)了iMEMS(Motion Sig-nal Processing Technology)技術(shù)與信號(hào)調(diào)理技術(shù)的完美結(jié)合,可提供最優(yōu)化的動(dòng)態(tài)性能。工廠校準(zhǔn)為每個(gè)傳感器提供靈敏度、偏置、對(duì)準(zhǔn)和線性加速度特性。因此,每個(gè)傳感器都擁有自身的動(dòng)態(tài)補(bǔ)償,從而可以在4.75~5.25 V的電源范圍內(nèi)進(jìn)行精確的傳感器測(cè)量。由于AD-ISl6300所有必要的運(yùn)動(dòng)檢測(cè)與校準(zhǔn)都是在工廠完成,大幅縮短了系統(tǒng)集成時(shí)間,并降低了測(cè)試設(shè)備成本。ADISl6300采用改進(jìn)的SPI接口,可提供更快的數(shù)據(jù)收集與配置控制,用戶實(shí)現(xiàn)就像供電及連接SPI(串行外設(shè)接口)端口一樣簡(jiǎn)單。ADISl6300采用23 mmx31 mmX7.5 mm封裝,具有2 000 g額定耐沖強(qiáng)度,并提供了一個(gè)標(biāo)準(zhǔn)的連接接口,使其能方便水平或垂直安裝。
ADISl6300角速度檢測(cè)的動(dòng)態(tài)范圍具有±75、±150以及±300(°)/s 3種選項(xiàng),三軸加速度的動(dòng)態(tài)范圍為±3 g,可提供350 Hz帶寬,高達(dá)1 200次/秒的采樣速率,并具有嵌入式與可編程數(shù)字濾波功能。ADISl6300其價(jià)格僅為其他同級(jí)產(chǎn)品的1/10,可廣泛應(yīng)用于醫(yī)療儀器、機(jī)器人、慣性測(cè)量單元、導(dǎo)航控制等領(lǐng)域。
2 ADISl6300結(jié)構(gòu)功能
溫度傳感器、MEMS角速度傳感器和三軸MEMS加速度傳感器分別感知環(huán)境溫度、器件所受角速度和三維加速度,將信號(hào)調(diào)理并轉(zhuǎn)換,經(jīng)校準(zhǔn)和數(shù)字信號(hào)處理后將數(shù)據(jù)存入輸出寄存器供外部SPI主控器件讀取。ADISl6300是一個(gè)智能的傳感器,傳感器上電后便自動(dòng)以819.2次/秒采樣速率進(jìn)行慣性測(cè)量。每個(gè)采樣周期結(jié)束后,傳感器測(cè)量結(jié)果存放至輸出寄存器,并且DI01引腳向器件外產(chǎn)生一個(gè)脈沖,表示一個(gè)完整的新慣性測(cè)量數(shù)據(jù)已經(jīng)采集準(zhǔn)備好,可供外部SPI主控器件讀取。
3 ADISl6300基本操作
3.1 ADISl6300的SPI連接
ADISl6300是一個(gè)全數(shù)字接口的智能傳感器系統(tǒng),其SPI接口與各種微處理器SPI主控制器件接線如圖3所示。微處理器作為SPI主器件各引腳功能分別為:為從器件選擇;IRQ為中斷請(qǐng)求;MOSI為主器件輸出,從器件輸入;MISO為器件輸入,從器件輸出;SCLK為連續(xù)時(shí)鐘。AD-ISl6300對(duì)SPI時(shí)鐘需滿足:正常模式下SCLK不高于2 MHz:數(shù)據(jù)進(jìn)發(fā)模式下SCLK不高于1 MHz;在低電壓模式下SCLK不高于300 kHz。
3.2 傳感器數(shù)據(jù)讀取
通過(guò)ADISl6300的SPI接口可讀取其傳感器的供電電壓,陀螺儀值,X,Y,Z軸加速度值,溫度值,縱搖角,橫搖角等數(shù)據(jù)。根據(jù)ADISl63 00讀取數(shù)據(jù)時(shí)序,讀取每個(gè)寄存器的內(nèi)容分為兩步,即2個(gè)16位的時(shí)序:第1個(gè)16位時(shí)序向ADISl6300寫(xiě)入讀取命令和寄存器地址;第2個(gè)16位時(shí)序?qū)?duì)應(yīng)寄存器內(nèi)容發(fā)送至DOUT數(shù)據(jù)線上。例如:如果第1個(gè)16位時(shí)序DIN=0x0A00,那么第2個(gè)時(shí)序時(shí),XACCL_OUT(X軸加速度值)將被發(fā)送到DOUT數(shù)據(jù)線上。
數(shù)據(jù)進(jìn)發(fā)模式是連續(xù)讀取ADISl6300數(shù)據(jù)的最好方式。在10個(gè)連續(xù)的時(shí)序周期內(nèi),9個(gè)常用寄存器數(shù)據(jù)可方便讀到,它們分別是:SUPPLY _0UT(供電電壓)、GYRO_OUT(陀螺儀)、XACCL_OUT(X軸加速度)、YACCL_0UT(Y軸加速度)、ZACCL_0UT(Z軸加速度)、TEMP_0UT(溫度)、PITCH_ 0UT(俯仰角)、0LL_OUT(橫滾角)和AUX_ADC(ADC轉(zhuǎn)換結(jié)果)。數(shù)據(jù)進(jìn)發(fā)模式操作為:在連續(xù)10個(gè)時(shí)序周期內(nèi),DIN引腳對(duì)應(yīng)的10個(gè)輸入數(shù)據(jù)以0011 111O 0000 0000(Ox3E00)開(kāi)始,之后9個(gè)數(shù)據(jù)可任選,同時(shí)在DOUT引腳上依次輸出如上所述9個(gè)輸出寄存器內(nèi)的數(shù)據(jù)。
3.3 數(shù)據(jù)處理
表1說(shuō)明了ADISl6300數(shù)據(jù)輸出的格式和比例因子。從表1中可知,SUPPLY_0UT和AUX_ADC數(shù)據(jù)格式都為12位的二進(jìn)制數(shù)據(jù),各慣性傳感器輸出的數(shù)據(jù)格式均為14位2的補(bǔ)碼,溫度傳感器輸出數(shù)據(jù)格式和AUX_ADC數(shù)據(jù)格式都是12位2的補(bǔ)碼,而橫搖角和縱搖角數(shù)據(jù)格式為13位的2的補(bǔ)碼。也就是說(shuō)0x0000是0LSB.0x0001是+1 LSB,2n-1(n=12,13,14)為-1 LSB,LSB為滿量程輸入范圍的最小單位。若為GYRO_0UT時(shí),1 LSB=O.05(°)/s。下式可用來(lái)將輸出數(shù)據(jù)轉(zhuǎn)換成浮點(diǎn)形式的姿態(tài)數(shù)據(jù)。
式中,DATA_OUTi為表1中輸出數(shù)據(jù),OUTi為轉(zhuǎn)換后浮點(diǎn)形式的姿態(tài)數(shù)據(jù),Scale為表1中最小單位,n為表1中數(shù)據(jù)位數(shù)。
例如:GYR0_0UT=0x384A,由于,則角速率Rate=(0x4000-Ox384A)×(-0.05)(°)/s=1206x(-0.05)(°)/s=-60.3(°)/s。因此,根據(jù)傳感器方向坐標(biāo)定義,當(dāng)GYRO 0UT為0x384A時(shí),表示傳感器z軸以60.3(°)/s的角速率逆時(shí)鐘旋轉(zhuǎn)。