新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > ADISl6209 IMU在傾角測量中的應用

        ADISl6209 IMU在傾角測量中的應用

        作者: 時間:2012-09-14 來源:網絡 收藏

        O 引言

        本文引用地址:http://www.104case.com/article/193242.htm

        傾角傳感器是測量關于水平傾斜角的裝置,傾角變化測量儀器是許多工業應用設備需要具備的一個組成部分,包括測量設備、衛星天線穩定系統、工廠機床、運動安全監視器和汽車輪位對準裝置等。準確地測量傾角的變化,有利于這些設備更加穩定的工作及避免事故發生。現在采用的儀大多數體積較大,信號采集比較慢,測量精度不高,誤差較大,需要做大量的溫度補償和校準工作。這些缺點制約著工業設備性能的提高,也加大了工程的工作量。

        是ADI公司新推出的一款精密的微電子機械系統(MEMS)傾斜計,提供小于O.1°線性傾斜誤差的全補償直接角度輸出,它使用出廠時安裝的校正系數動態地檢測系統環境并且補償直接數字角度輸出以便解決電壓、溫度、角度和其他參數變化引起的誤差,減少了產品設計時間、減低成本和復雜性。

        本文詳細地介紹的功能特性和使用方法,并使用Luminary公司的LM3S8962 Cortex-M3微處理器與之組合設計一個系統。最后對測量結果進行分析。

        1 功能與使用方法

        ADISl6209的是一種高精度、數字化儀和雙軸加速度測量儀,可以在單軸(±180°),雙軸(±90°)等兩種模式下運作。標準電源電壓(3.3 V)和串行外設接口(SPI)設計最簡單,集成方便。一個簡單的內部寄存器結構處理所有的輸出數據和配置功能。這包括訪問以下輸出數據:校準加速度、準確傾斜角度、電源、內部溫度、輔助模擬和數字輸入信號、診斷錯誤標志和可編程報警條件。

        ADISl6209采用9.2 mm×9.2 mm×3.9 mmLGA封裝,可工作在-40~+125℃,能連接使用標準RoHS標準的回流焊工藝,廣泛應用于醫療儀器、測量設備、工廠機床、機器人、慣性測量單元、導航控制等領域。

        1.1 ADISl6209的功能

        如圖l所示,分別是ADISl6209的功能圖、安裝示意圖與引腳圖。由圖1(a)可知,ADISl6209主要由兩軸MEMS加速度計、溫度傳感器、1個模/數轉換模塊(ADC)、1個數/模轉換模塊(DAC)和報警模塊(ALARMS)組成。傳感器感知外界信號后,信號調理并轉換,經過信號處理后,將得到的數據結果存入輸出寄存器。通過SPI總線,外部SPI主控器件向ADISl6209發送控制指令或者讀取。ADISl6209內部設置有控制寄存器,寄存器都有默認的值,通過對控制寄存器的修改寫操作,可以改變采樣頻率,改變平均濾波參數等多個方面的控制效果。每個采樣周期結束后,傳感器測量結果存放至輸出寄存器,并且DIO1引腳向器件外產生一個脈沖,表示一組新的完整的測量數據已經采集準備好,可供外部SPI主控器件讀取。

        11.jpg

        圖1(b)是ADISl6209坐標朝向圖,傳感器測量的Ax與Ay兩個方向上的加速度分量。第1,2,3,4引腳是傳感器的SPI接口,第9引腳RST是傳感器的復位引腳。

        1.2 ADISl6209使用方法

        1.2.1 ADISl6209硬件連接

        ADISl63209的SPI接口與各種微處理器SPI主控制器件接線如圖2所示。

        22.jpg

        SPI總線的時鐘頻率最高可以達到2.5 MHz。但ADISl6209的采樣頻率對SPI時鐘一定的要求:當采樣頻率大于等于546 SPS時,SPI的時鐘頻率最高可以采用2.5 MHz。當采樣頻率小于546 SPS時,SPI的時鐘頻率應不大于1 MHz,建議采用1 MHz。

        1.2.2 ADISl6209數據讀寫與數據處理

        通過SPI總線,可以對ADISl6209進行讀寫操作。可以根據自己的要求設置控制寄存器的值達到控制效果,也可以使用寄存器的默認設置。控制指令由1位的讀寫控制位,1位空位,6位寄存器地址位和8位的數據位組成。向ADISl6209寫控制指令時,要將指令的最高位置1,例如,要將采樣頻率設置為2 731 SPS,也就是采樣頻率寄存器的值設置為0x0001,那么寫指令就應該如下:先寫寄存器低地址0x36,數據為0x0l,再寫高地址0x37,數據為0x00,所以指令為0xB6018700。對其他的控制寄存器的修改也可按照這樣的方式修改。

        讀取ADISl6209輸出的數據與寫控制指令稍有區別,讀取每個寄存器的值要分為2個16位的時序。第1個16位時序向ADISl6209寫入讀取命令和寄存器地址。第2個16位時序將對應寄存器內容發送至DOUT數據線上,微控制器才可以得到正確的數據。如要讀取x軸加速度寄存器的值(X_ACC),那么第1個16位時序DIN=0x0400,第2個時序XACCL_OUT(x軸加速度值)將被發送到DOUT數據線上,SPI主機此時讀到的數據才是上一個16位讀指令發出的需要的指令。

        從SPI總線上讀取到的傳感器數據是二進制數據或者二進制補碼形式的數據。需要對其進行一定的解讀才可以得到實際輸出的代表的值。傳感器輸出的各個值代表的意義可詳見A13ISl6209的數據手冊中的output Data Register Format表。其中SUPPLYOUT,AUX ADC和TEMP OUT的數據格式都為二進制數據,可以使用以下公式進行解算:

        式中:VALUE代表實際的測量量的值;DATA_VAL_UE代表寄存器的值;Scale代表寄存器每個最小單位代表的實際值;n為對應寄存器的數據位數。

        XACC_OUT,YACC_OUT,XINCL_OUT和YINCL_OUT輸出的數據格式均為14位2的補碼,可以使用以下公式進行解算:

        式中:DATA_VALUE為寄存器的輸出數據;VALUE為轉換后實際的測量量的值;Scale為寄存器值最小值代表的最小單位;n為對應寄存器的數據位數。

        2 基于Luminary LMS8962與ADISl6209的傾角測量系統設計

        下面介紹基于Luminary公司的LMS8962與ADISl6209的傾角測量系統的原理與設計。

        2.1 傾角測量原理

        加速度計是測量物體所受除萬有引力加速度以外的加速度。將ADISl6209靜止放在水平面時,其受到的是水平面對其向上的支撐力的加速度和地球自轉的向心加速度的矢量和。而地球自轉的向心加速度很小,在測量中忽略不計。那么只要使得ADISl6209將一個加速傳感器的輸出擺置為O時,也即是將傳感器擺置如圖3(a)所示。或者兩個加速度計測得的矢量和等于水平面對其向上的支撐力的加速度,也就是重力加速度的反方向矢量,也即是將傳感器擺置如圖4(a)所示。那么就可以利用這些矢量求出傳感器與水平的傾角關系。

        33.jpg

        當使用單軸測量方式時,如圖3(b)所示,可知Ay軸測得的分量為O,Ax軸測得的分量為ax,那么Ax軸與水平面的夾角:

        同理可以得到使用Ay軸作單軸測量方式時,Ay軸與水平面的夾角:

        當使用雙軸測量方式時,如圖4(b)所示,傳感器Ax與Ay軸組成的平面垂直于水平面,那么重量加速度

        軸測得的分量為ax,那么Ax軸與水平面的夾角:

        Ay軸與水平面的夾角:

        44.jpg

        2.2 硬件電路設計

        本文使用Luminary公司的LMS8962與ADISl6209搭建成傾角測量系統。LMS8962是一款高性能的32位Cortex-M3內核微處理器,它有豐富的片內外設,如模/數轉換(ADC),PWM,CAN和串行總線(SSI)等,功能強大,易于集成。

        55.jpg

        如圖5所示是由LMS8962與ADISl6209組成的傾角測量系統。LMS8962通過SSI總線(SSI是串行通信總線,它兼容SPI總線。)與ADISl6209進行通信。將采集到的數據存儲到SD卡中,將解算得到的結果實時在LCD上顯示出來。

        2.3 軟件設計

        如圖6所示是系統的軟件流程圖。程序啟動進入系統初始化,接下來向ADISl6209寫控制指令,以設置ADISl6209工作在需求的模式下,然后讀取返回的數據并進行解算,最后通過存儲數據到SD卡中并在液晶模塊中顯示出來。



        關鍵詞: ADISl 6209 IMU 傾角測量

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 大安市| 九江县| 万州区| 延边| 同江市| 宣化县| 桂林市| 桃园县| 咸阳市| 青海省| 灵川县| 凤山县| 鹰潭市| 平湖市| 玛纳斯县| 黄浦区| 宜良县| 嘉鱼县| 酉阳| 南江县| 徐州市| 城口县| 承德市| 比如县| 房产| 英山县| 浪卡子县| 稷山县| 盐城市| 东源县| 化德县| 浙江省| 信宜市| 绥宁县| 丹棱县| 云安县| 高青县| 汝南县| 梓潼县| 胶州市| 左权县|