你的位置:首頁 > 傳感技術(shù) > 正文

基于ADIS16365的慣性傳感系統(tǒng)設(shè)計分析

發(fā)布時間:2012-03-05

中心議題:

  • 對于ADIS16365的概述
  • 慣性測量系統(tǒng)硬件設(shè)計
  • 慣性測量系統(tǒng)軟件設(shè)計

解決方案:

  • 以LM3S8962為核心處理器
  • 以ADIS16365為慣性傳感器
  • 結(jié)合了ADI公司的iMEMS和混合信號處理技術(shù)


引言  

慣性傳感器包括加速度計、加速度傳感器,角速度傳感器以及它們的單、雙、三軸組合IMU(慣性測量單元),AHRS(包括磁傳感器的姿態(tài)參考系統(tǒng)),它的應(yīng)用領(lǐng)域十分廣泛。近年來,基于MEMS(微機電系統(tǒng))技術(shù)的微機械慣性器件日漸成熟,用MEMS慣性器件構(gòu)成慣性系統(tǒng)已成為目前慣性技術(shù)領(lǐng)域的一個研究熱點。 

傳統(tǒng)研究方法是先建立數(shù)學(xué)模型,后期采用數(shù)據(jù)處理算法來糾正誤差。在慣性系統(tǒng)的應(yīng)用中,這不僅要求數(shù)學(xué)模型準(zhǔn)確可靠,而且普通的微控制器由于處理速度限制,而很難處理如此大的數(shù)據(jù)量,采用高性能DSP無疑增加了成本。為此,設(shè)計了以LM3S8962為核心處理器,以ADIS16365為慣性傳感器的慣性系統(tǒng)。該系統(tǒng)利用ADIS16365自身的數(shù)據(jù)處理功能對三軸角速度和角加速度數(shù)據(jù)進(jìn)行處理。在外部再經(jīng)過濾波與積分,得到了精確的角度信號,滿足了系統(tǒng)的可靠性和。控制要求。此外,面對系統(tǒng)對慣性數(shù)據(jù)需求量的增多,將該慣性系統(tǒng)設(shè)計為一個CAN節(jié)點應(yīng)用于整個系統(tǒng)。

1 ADIS16365概述  

ADIS16365是ADI公司于2008年9月推出的一款全新的數(shù)字輸出的高性能微慣性測量系統(tǒng)。這款傳感器結(jié)合了ADI公司的iMEMS和混合信號處理技術(shù),提供校準(zhǔn)的數(shù)字慣性檢測。系統(tǒng)除分別提供3個軸方向上的角速度、角加速度以外,還包括自動偏置校準(zhǔn)、數(shù)字濾波與采樣速率、自檢、電源管理、條件監(jiān)控、模數(shù)轉(zhuǎn)換,以及輔助數(shù)字輸入/輸出,這些功能都通過快速的數(shù)據(jù)訪問接口(SPI)與MCU進(jìn)行交互,提供方便的數(shù)據(jù)和配置控制。ADIS16365的一些性能參數(shù)如下:角度分辨率為±80(°)/s;典型帶寬為0.33 kHz;線性加速度補償因子為0.05(°)/s/g;運動偏移穩(wěn)定性為0.009(°)/s?! ?br />
2 慣性測量系統(tǒng)硬件設(shè)計  

2.1 總體設(shè)計
  

該系統(tǒng)硬件主要包括ADIS16365,CTM8251,LM3S8962。系統(tǒng)硬件框圖如圖1所示。  

LM3S8962是TI公司一款用于工業(yè)控制的32位高速控制器,內(nèi)部集成了工業(yè)控制用到的各種常用協(xié)議,其中CAN模塊支持CAN 2.0B協(xié)議,位速率高達(dá)1 Mb/s,具有可編程FIFO模式,使實時應(yīng)用成為可能。此外,其內(nèi)部擁有256 KB的單周期FLASH,可用于數(shù)據(jù)存儲,方便外部讀取。CTM8251是一款帶隔離的通用CAN收發(fā)器模塊,該模塊內(nèi)部集成了所有必須的CAN隔離及CAN收、發(fā)器件。模塊的主要功能是將CAN控制器的邏輯電平轉(zhuǎn)換為CAN總線的差分電平并且具有DC 2 500 V的隔離功能?! ?br />
2.2 硬件電路設(shè)計  

陀螺儀硬件電路原理圖如圖2所示,選用LM3S8962自帶的SPI硬件接口對ADIS16365進(jìn)行操作,在電路設(shè)計中只需要直接將LM3S8962的SPI硬件I/O接口與ADIS16365相應(yīng)的接口連接起來。  

[page]
CAN接口原理圖如圖3所示,LM3S8962對應(yīng)的CAN接口分別為PD0和PD1,將其與CTM8251進(jìn)行電氣連接,通過對CTM8251進(jìn)行相應(yīng)的電路配置,并且在信號輸出端做好相應(yīng)的屏蔽工作以防止噪聲干擾傳輸和靜電帶來的不安全因素,最后將CTM8251輸出的高、低端分別與器件相應(yīng)引腳連接。


3 慣性測量系統(tǒng)軟件設(shè)計  

3.1 總體設(shè)計
  

微控制器直接控制慣性傳感器的工作狀態(tài)并采集角速度、角加速度等信息,為了達(dá)到處理的實時性,當(dāng)ADIS16365有數(shù)據(jù)需要發(fā)送時,中斷通知微控制器進(jìn)行讀取。微控制器將采集到的數(shù)據(jù)進(jìn)行積分及濾波處理,并將處理后的信息存儲在片內(nèi)FLASH中。當(dāng)微控制器接收到數(shù)據(jù)請求時,通過CAN總線發(fā)送數(shù)據(jù)。圖4為系統(tǒng)主流程圖?! ?/p>


3.2 數(shù)據(jù)采集設(shè)計  

微控制器通過SPI模式3與慣性傳感器通信,在時鐘下降沿時建立數(shù)據(jù),上升沿時讀取數(shù)據(jù)。圖5為通信時序圖?! ?/p>

從圖5可以看出,一個SPI傳輸包有16位。由于LM3S8962是32位處理器,因此每次可以傳輸一個SPI傳輸包。傳輸包高字節(jié)包括1位的讀/寫狀態(tài)位和7位寄存器地址信息,低字節(jié)為讀/寫寄存器數(shù)據(jù)。ADIS16365的內(nèi)部寄存器為16位,拆分為2個8位,分為高低地址,因此讀/寫操作都需要2個傳輸包。如果是寫操作,則第一個傳輸包的高字節(jié)說明寄存器的低8位地址,低字節(jié)為寫入寄存器低8位的值,第二個傳輸包則相應(yīng)地寫入寄存器的高8位;如果是讀操作,則第一個傳輸包的高字節(jié)說明寄存器低8位地址,低字節(jié)無效,寄存器的值出現(xiàn)在第二個傳輸包?! ?br />
ADIS16365擁有較為完善的數(shù)據(jù)處理方案,經(jīng)測試,使用其內(nèi)部校正功能可以明顯改善系統(tǒng)性能。根據(jù)寫入GLOB_CMD寄存器命令的不同,可以采用不同的處理方法。表1和表2列出了內(nèi)部普通校準(zhǔn)和精確校準(zhǔn)與未校準(zhǔn)數(shù)據(jù)的比較?! ?/p>

[page]
3.3 CAN總線節(jié)點設(shè)計  

控制器區(qū)域網(wǎng)(CAN)總線屬于現(xiàn)場總線范疇,它是德國Bosch公司為解決現(xiàn)代汽車中眾多測試與控制儀器的數(shù)據(jù)交換而開發(fā)的串行數(shù)據(jù)通信協(xié)議。經(jīng)過多年的應(yīng)用發(fā)展,CAN以其極高的可靠性、實時性和靈活性而廣泛應(yīng)用在各種領(lǐng)域。鑒于此,該系統(tǒng)采用CAN協(xié)議來完成數(shù)據(jù)的交換?! ?br />
CAN2.0B協(xié)議規(guī)定了4種幀類型:數(shù)據(jù)幀、遠(yuǎn)程幀、錯誤幀和過載幀。其中數(shù)據(jù)幀將數(shù)據(jù)從發(fā)送器傳輸?shù)浇邮掌?,遠(yuǎn)程幀用于請求具有同一標(biāo)志符的數(shù)據(jù)幀。CAN協(xié)議沒有規(guī)定地址的概念,所有數(shù)據(jù)傳輸均基于報文標(biāo)識符,當(dāng)總線上出現(xiàn)一個報文時,所有節(jié)點的CAN驗收濾波器將該報文的標(biāo)識符與自身的驗收代碼寄存器和驗收屏蔽寄存器比較,來決定是否接收該報文。因此,該系統(tǒng)將慣性傳感器數(shù)據(jù)標(biāo)識為“GY-Rn”,其中n為接收端編號,對于擴展幀的29位標(biāo)識符而言,除去前綴“GYR”24位外,最多可以有32個接收端,滿足一般系統(tǒng)需求。為使LM3S8962的CAN模塊能響應(yīng)所有數(shù)據(jù)請求,只需將驗收屏蔽寄存器的后5位置1即可。當(dāng)接收端n需要數(shù)據(jù)時,發(fā)送標(biāo)識符為“GYRn”的遠(yuǎn)程幀,LM3S896 2的CAN模塊在接收到之后從內(nèi)部FLASH中讀取數(shù)據(jù),再回發(fā)相同標(biāo)識符的數(shù)據(jù)幀完成通信。  

4 結(jié)語  

這里所設(shè)計的慣性系統(tǒng)主要采用MEMS器件ADIS16365,測量目標(biāo)的三種角速度。采用含CAN控制器的LM3S8962微控制器進(jìn)行控制,只需很少的外圍器件即獲得了優(yōu)異的性能。結(jié)構(gòu)簡單、體積小,使用方便,具備較強的使用性。

要采購傳感器么,點這里了解一下價格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉