<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于MCU的室外移動機器人組合導航定位系統(tǒng)

          基于MCU的室外移動機器人組合導航定位系統(tǒng)

          作者: 時間:2015-05-13 來源:網(wǎng)絡 收藏

            對于在室外環(huán)境工作的移動通常使用慣導/衛(wèi)星組合導航方式。慣性導航系統(tǒng)[1]具有完全自主、抗干擾強、隱蔽能力好和輸出參數(shù)全面等優(yōu)點,但它的魯棒性極低,誤差會不斷隨時間累積發(fā)散。衛(wèi)星導航系統(tǒng)具有精度高、定位范圍廣和誤差不隨時間累積等優(yōu)點,但其自主性差、易受外界遮擋和干擾、接收機數(shù)據(jù)更新頻率低等缺點。因此工程上常常將兩者互補結合使用,組成衛(wèi)星/慣性組合導航系統(tǒng)。

          本文引用地址:http://www.ex-cimer.com/article/274079.htm

            本文以低功耗MSP430F149為核心,設計了能夠同時實現(xiàn)衛(wèi)星導航(GNSS)接收機、慣性測量單元(IMU)、氣壓高度等導航信息的高速采集與高速合路傳輸,并進行初步導航定位信息融合的導航系統(tǒng),即可為室外移動提供直接的導航服務,也可作為高精度組合導航系統(tǒng)的原始測量信息高速采集系統(tǒng)。

            系統(tǒng)設計的關鍵是利用單片機有限的接口資源實現(xiàn)了多傳感器信息并行采集,設計了有效的數(shù)據(jù)同步方法,解決了氣壓傳感器數(shù)據(jù)手冊疏漏導致的無法接入問題,給出了組合定位的基本方法。系統(tǒng)充分利用了MSP430F149單片機的能力,具有結構簡單、低功耗、對傳感器具有普適性等優(yōu)點。

            1總體設計

            本系統(tǒng)由電源、氣壓計接口、IMU接口、GNSS接收機接口、SPI轉(zhuǎn)UART模塊及MSP430F149構成。系統(tǒng)組成如圖1所示。

            組合導航系統(tǒng)的功能實現(xiàn)分為IMU數(shù)據(jù)接收與解析、GNSS數(shù)據(jù)接收與解析、氣壓計數(shù)據(jù)接收與解析、組合導航解算以及數(shù)據(jù)輸出五個部分。IMU數(shù)據(jù)接收與解析功能用來獲取導航解算中需要的加速度和角速度信息;GNSS數(shù)據(jù)接收與解析功能用來獲取導航解算中需要的位置和速度信息(松耦合組合)或者GNSS偽距和偽距率(緊耦合組合);氣壓計數(shù)據(jù)接收與解析功能用來獲取高度信息;組合導航解算功能為系統(tǒng)核心,用來進行組合導航解算;數(shù)據(jù)的輸出包括原始數(shù)據(jù)包的整合輸出和解算結果的輸出。

            

           

            圖1系統(tǒng)組成結構圖

            本文所使用的慣性器件和GNSS接收機都是RS-232電平的UART接口,具有通用性,用戶可根據(jù)成本考慮不同精度的設備。氣壓計選用美國MEAS公司生產(chǎn)的MS5803-02BA,已經(jīng)固化在電路中。

            2硬件電路設計

            2.1微控制器接口

            整個組合導航定位系統(tǒng)需要三個UART接口和兩個SPI接口。其中兩個UART接口由430單片機自帶的UART資源提供,另外一個UART接口由GPIO模擬SPI通過MAX3111E芯片轉(zhuǎn)化得到;兩個SPI接口由GPIO模擬得到。另外需要一個外部中斷引腳捕獲秒脈沖信號(PPS)、一個外部中斷引腳捕獲MAX3111E中斷信號。MSP430F149管腳資源分配如表1所示。

            

           

            2.2電源電路

            本系統(tǒng)供電需求為3.3V供電,因此采用AMS1117穩(wěn)壓芯片,接入5V電源即可輸出3.3V穩(wěn)定電壓,可提供1A電流,滿足系統(tǒng)供電需求。電路設計如圖2所示。

            

           

            圖2電源電路

            2.3 IMU器件及GNSS接收機接口電路

            IMU器件及GNSS接收機都采用UART接口方式接入,采用RS232協(xié)議。因此可使用430單片機上自帶的兩個UART接口,但是需要進行TTL電平與RS232電平轉(zhuǎn)換。這里采用常見的MAX3232芯片,電路設計如圖3所示。

            

           

            圖3 IMU及GNSS接口電路

            2.4氣壓計MS5803-02BA接口電路

            MS5803-02BA[3]是由MEAS公司生產(chǎn)的數(shù)字壓力傳感器,分辨率達10cm.芯片內(nèi)部包含一個高線性的壓力傳感器和一個內(nèi)部工廠標定系數(shù)的超低功耗24位ΔΣ型ADC.該款芯片有SPI和I2C兩種接口方式,通過芯片的PS引腳配置了選擇不同的接口方式(PS置低時,采用SPI工作模式;PS置高時,采用I2C工作模式)。本文所闡述的定位系統(tǒng)將氣壓計配置為SPI工作模式。MS5803-02BA與微控制器間的接口電路設計如圖4所示。

            

           

            圖4 MS5803-02BA接口電路

            MS5803-02BA的控制命令包括復位命令、溫度ADC命令、氣壓ADC命令、ADC讀取命令、PROM讀取命令??刂泼钊绫?所示。

            控制命令通過SDI口移位輸入,響應結果從SDO移位輸出。輸入的電平判定在時鐘信號的上升沿,輸出的電平判定在時鐘信號的下降沿。輸出的氣壓值可以進行溫度補償,需要利用芯片內(nèi)部PROM中的系數(shù)來補償。ADC讀取命令輸入之后,輸出24位ADC結果;PROM讀取命令輸入之后,輸出16位補償系數(shù)。

            

           

            下面是讀取ADC的C語言代碼:

            CSN_OFF_MS();//CS置低

            SPI_WRITE_8BIT(CMD);//SDI移入8位CMD

            delay_ms(10); //延時10ms

            CSN_ON_MS();//CS置高

            CSN_OFF_MS();//CS置低

            SPI_WRITE_8BIT(0x00);//SDI移入8位0x00

            result = SPI_READ_24BIT();//SDO移出24位

            CSN_ON_MS();//CS置高

            下面是讀取PROM的C語言代碼:

            CSN_OFF_MS();//CS置低

            SPI_WRITE_8BIT(CMD); //SDI移入8位CMD

            result=SPI_READ_16BIT();//SDO移出24位

            CSN_ON_MS();//CS置高

            結合器件的使用手冊及手冊疏漏的地方,使用MS5803-02BA時需要注意:

            1、溫度和氣壓ADC命令發(fā)送之后,芯片內(nèi)部需要一定的時間進行采樣轉(zhuǎn)換,具體時間與過采樣率(OSR)有關,最大需求時間為10ms,因此本文采用的延時時間為10ms;

            2、片選信號CS的下降沿到時鐘SCLK信號的第一個上升沿至少要有21ns的時間延遲,否則命令無法正確寫入芯片;

            3、8位的ADC讀取命令之后,必須保持CS片選信號持續(xù)為低,再產(chǎn)生24位時鐘信號輸入,將24位的ADC結果讀取出來(即一個命令字為8位,但實際需要32個連續(xù)的時鐘周期才能完整讀取ADC結果);

            4、對于PROM讀取命令同ADC讀取命令,一共需要24個連續(xù)的時鐘周期完成,其中8位命令字輸入,16位數(shù)據(jù)讀出。

            5、對于所有從SDO移位輸出數(shù)據(jù)的同時,都需要SDI輸入端保持低電平。


          上一頁 1 2 3 下一頁

          關鍵詞: MCU 機器人

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();