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