基于ADIS16365的慣性傳感系統設計
從圖5可以看出,一個SPI傳輸包有16位。由于LM3S8962是32位處理器,因此每次可以傳輸一個SPI傳輸包。傳輸包高字節包括1位的讀/寫狀態位和7位寄存器地址信息,低字節為讀/寫寄存器數據。ADIS16365的內部寄存器為16位,拆分為2個8位,分為高低地址,因此讀/寫操作都需要2個傳輸包。如果是寫操作,則第一個傳輸包的高字節說明寄存器的低8位地址,低字節為寫入寄存器低8位的值,第二個傳輸包則相應地寫入寄存器的高8位;如果是讀操作,則第一個傳輸包的高字節說明寄存器低8位地址,低字節無效,寄存器的值出現在第二個傳輸包。
ADIS16365擁有較為完善的數據處理方案,經測試,使用其內部校正功能可以明顯改善系統性能。根據寫入GLOB_CMD寄存器命令的不同,可以采用不同的處理方法。表1和表2列出了內部普通校準和精確校準與未校準數據的比較。
3.3 CAN總線節點設計
控制器區域網(CAN)總線屬于現場總線范疇,它是德國Bosch公司為解決現代汽車中眾多測試與控制儀器的數據交換而開發的串行數據通信協議。經過多年的應用發展,CAN以其極高的可靠性、實時性和靈活性而廣泛應用在各種領域。鑒于此,該系統采用CAN協議來完成數據的交換。
CAN2.0B協議規定了4種幀類型:數據幀、遠程幀、錯誤幀和過載幀。其中數據幀將數據從發送器傳輸到接收器,遠程幀用于請求具有同一標志符的數據幀。CAN協議沒有規定地址的概念,所有數據傳輸均基于報文標識符,當總線上出現一個報文時,所有節點的CAN驗收濾波器將該報文的標識符與自身的驗收代碼寄存器和驗收屏蔽寄存器比較,來決定是否接收該報文。因此,該系統將慣性傳感器數據標識為“GY-Rn”,其中n為接收端編號,對于擴展幀的29位標識符而言,除去前綴“GYR”24位外,最多可以有32個接收端,滿足一般系統需求。為使LM3S8962的CAN模塊能響應所有數據請求,只需將驗收屏蔽寄存器的后5位置1即可。當接收端n需要數據時,發送標識符為“GYRn”的遠程幀,LM3S896 2的CAN模塊在接收到之后從內部FLASH中讀取數據,再回發相同標識符的數據幀完成通信。
4 結語
這里所設計的慣性系統主要采用MEMS器件ADIS16365,測量目標的三種角速度。采用含CAN控制器的LM3S8962微控制器進行控制,只需很少的外圍器件即獲得了優異的性能。結構簡單、體積小,使用方便,具備較強的使用性。
評論