近年來,微機(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)功能
如圖1所示,圖(a)為ADISl6300的坐標(biāo)系,,其標(biāo)出了每個(gè)慣性傳感器(陀螺儀和加速度計(jì))的測(cè)量朝向,。圖(b)為ADISl6300的標(biāo)準(zhǔn)接口引腳配置圖,引腳16,,17,,18,19,,22,,23,24是沒有連接的預(yù)留引腳;引腳10,,11,,12為電源VCC;引腳13,,14,,15為電源GND;引腳3,,4,,5,6分別為SPI接口的時(shí)鐘,,數(shù)據(jù)輸出,,數(shù)據(jù)輸入和器件選擇引腳;引腳1,,2,,7,9分別為配置數(shù)據(jù)輸入/輸出引腳,;引腳8為復(fù)位引腳,;引腳21,22分別為12位的ADC輸入和DAC輸出引腳,。
ADISl6300功能模塊框圖如圖2所示,,溫度傳感器、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ù)讀取
通過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寫入讀取命令和寄存器地址,;第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)開始,,之后9個(gè)數(shù)據(jù)可任選,,同時(shí)在DOUT引腳上依次輸出如上所述9個(gè)輸出寄存器內(nèi)的數(shù)據(jù)。
3.3 數(shù)據(jù)處理
表1說明了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ǔ)碼。也就是說0x0000是0LSB.0x0001是+1 LSB,,2n-1(n=12,,13,14)為-1 LSB,,LSB為滿量程輸入范圍的最小單位,。若為GYRO_0UT時(shí),1 LSB=O.05(°)/s,。下式可用來將輸出數(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),。
4 姿態(tài)測(cè)量系統(tǒng)設(shè)計(jì)
ADISl6300是四自由度(4DoF)慣性檢測(cè)系統(tǒng),能提供三軸加速度以及Z軸旋轉(zhuǎn)角速率,,此外還輸出了橫搖角,、縱搖角和溫度數(shù)據(jù),能應(yīng)用于醫(yī)療儀器,、機(jī)器人,、慣性測(cè)量單元、導(dǎo)航控制領(lǐng)域等,。介紹基于C8051F330和ADISl6300的姿態(tài)測(cè)量系統(tǒng),,該系統(tǒng)采用C805lF330單片機(jī)的SPI接口讀取ADISl6300的數(shù)據(jù)。再將采集到的數(shù)據(jù)通過串行RS-232接口輸出,。
4.1 硬件設(shè)計(jì)
姿態(tài)測(cè)量系統(tǒng)的硬件連接如圖4所示,,器件ADISl6300無需其他外圍電路,本設(shè)計(jì)僅采用0.1μF和10μF電容并聯(lián)入器件供電電路進(jìn)行電源退耦,。C8051F330是美國(guó)Slincon公司生產(chǎn)的一款高性能的8051內(nèi)核單片機(jī),,它具有增強(qiáng)波特率配置的全雙工UART和增強(qiáng)型SPI端口,采用4 mm×4 mmx0.9 mm封裝,。C8051F330的IO口允許0~5 V電平,,且ADISl6300的SPI接口輸入高電平只需2.0 V,,因此C8051F330和ADISl6300雖是不同工作電源器件,但它們的接口電平兼容,,可采取直接連接的方式直接連接,。RS-232電平轉(zhuǎn)換采用MAX3232,它是一款3~5.5 V單通道RS-232線路驅(qū)動(dòng)器/接收器,。電源電路可提供+5 V和+3.3 V電壓,,分別為ADISl6300和C8051F330提供電源。
4.2 軟件設(shè)計(jì)
姿態(tài)測(cè)量系統(tǒng)單片機(jī)的SPI接口采用數(shù)據(jù)進(jìn)發(fā)模式讀取ADISl6300數(shù)據(jù),,根據(jù)ADISl6300數(shù)據(jù)進(jìn)發(fā)模式定義,,在10個(gè)連續(xù)時(shí)序周期下,9個(gè)輸出寄存器內(nèi)的數(shù)據(jù)依次輸出到DOUT引腳上,。程序流程如圖5所示,,程序啟動(dòng)進(jìn)入系統(tǒng)初始化.包括IO口、SPI和串口等,。對(duì)ADISl6300的操作程序首先向其寫入0x3E00,,并讀取返回的數(shù)據(jù),此次數(shù)據(jù)為SPI之前的數(shù)據(jù),,之后向ADISl6300連續(xù)寫9次0x0000,,便可連續(xù)讀到9個(gè)輸出寄存器內(nèi)數(shù)據(jù)。完成9個(gè)數(shù)據(jù)讀取后,,按上述數(shù)據(jù)處理中介紹的數(shù)據(jù)處理方法解算9個(gè)數(shù)據(jù),,最后通過串口輸出。
5 試驗(yàn)及數(shù)據(jù)分析
為了能對(duì)由C8051F330和ADISl6300傳感器組成的姿態(tài)測(cè)量系統(tǒng)進(jìn)行簡(jiǎn)單的測(cè)定,,該試驗(yàn)采用姿態(tài)與航向參考系統(tǒng)(attitude and heading reference system)AHRS500GA-226作為參考傳感器,。該傳感器可測(cè)量被安裝物體的歐拉方位角(航向、縱搖角與橫搖角),,其內(nèi)置三軸磁場(chǎng)計(jì),、3個(gè)陀螺儀和3個(gè)加速度計(jì),能高精度,、高靈敏地測(cè)出360°范圍的方位角,,±180°橫滾角,±90°俯仰角,。試驗(yàn)中將兩系統(tǒng)固定安裝在同一平臺(tái)上,,使平臺(tái)運(yùn)動(dòng)并用計(jì)算機(jī)同時(shí)保存兩系統(tǒng)輸出的姿態(tài)數(shù)據(jù)。兩系統(tǒng)輸出的航向角速率,、X軸加速度,、Y軸加速度、Z軸加速度四組姿態(tài)數(shù)據(jù)利用Matlab軟件圖形顯示如圖6所示,。
從圖中可以看出,,利用ADISl6300所測(cè)量的航向角速率,、X軸加速度、Y軸加速度和Z軸加速度4個(gè)空間姿態(tài)數(shù)據(jù)與AHRS所測(cè)量的姿態(tài)數(shù)據(jù)基本一致,,其中ADISl6300輸出的航向角速率、X軸加速度,、Y軸加速度和Z軸加速度平均誤差分別為0.469(°)/s,、O.009 m/s2、O.010m/ s2,、O.003 m/s2,。ADISl6300數(shù)據(jù)的噪聲較大,這是由于它的數(shù)據(jù)輸出未經(jīng)濾波處理和融合算法處理,,而AHRS經(jīng)過復(fù)雜的融合算法和濾波處理,。因此,要使用ADISl6300獲取更準(zhǔn)確,、更平滑的姿態(tài)數(shù)據(jù)還需將其數(shù)據(jù)進(jìn)行融合或?yàn)V波處理,,如卡爾曼算法。
6 結(jié)論
四自由度IMU慣性測(cè)量傳感器ADISl6300可準(zhǔn)確測(cè)量空間姿態(tài),,采用C805lF330與ADISl6300組成的姿態(tài)測(cè)量系統(tǒng)能夠?qū)崿F(xiàn)準(zhǔn)確測(cè)量空間姿態(tài),。ADISl6300輸出的航向角速率、X軸加速度,、Y軸加速度和Z軸加速度4個(gè)空間姿態(tài)的平均誤差分別為0.469(°)/s,、0.009m/s2、0.01 0m /s2,、0.003 m/s2,。然而姿態(tài)數(shù)據(jù)的噪聲需濾波和融合算法來消除,以獲得更為平滑,、精確的空間姿態(tài)數(shù)據(jù),。