最近在做多旋翼的項目,然后就對三軸加速度計和陀螺儀感興趣,網(wǎng)上也找了一些資料。
大部分也是英文,就copy下來?!酒鋵嵨蚁氚阉幸院蟮捻椖咳糠诺紾ItHub上面去,現(xiàn)在就先放一個連接好啦。https://github.com/kangschampagne】
下面就開始整合資料。
加速度計和陀螺儀以及組合IMU設(shè)備(慣性量單元)
Accelerometer(加速計) & Gyro Tutorial by Gadget Gangster
這一篇是很好的入門資料,詳細(xì)講解了加速度計和陀螺儀的數(shù)學(xué)模型和基本算法,以及如何融合這兩者,側(cè)重算法、思想的討論 。以下是翻譯。
介紹
本指南旨在向興趣者介紹慣性MEMS(微機電系統(tǒng))傳感器,特別是加速度計和陀螺儀以及其他整合IMU(慣性測量單元)設(shè)備。
IMU單元例子:上圖中MCU頂端的ACC Gyro 6DOF,名為USBThumb,支持USB/串口通信
在這篇文章中我將概括這么幾個基本并且重要的話題:
- 加速度計(accelerometer)檢測什么
- 陀螺儀(gyroscope,也稱作 gyro)檢測什么
- 如何將傳感器ADC讀取的數(shù)據(jù)轉(zhuǎn)換為物理單位(加速度傳感器的單位是g,陀螺儀的單位是 度/秒)
- 如何結(jié)合加速度傳感器和陀螺儀的數(shù)據(jù)以得到設(shè)備和地平面之間的傾角的準(zhǔn)確信息
在整篇文章中我盡量將數(shù)學(xué)運算降低到最少。如果你知道什么是正弦、余弦、正切函數(shù),那無論你的項目使用哪種平臺你應(yīng)該都會明白和運用這篇文章中的思想,這些平臺如Arduino、Propeller、Basic Stamp、Ateml芯片、PIC芯片等等。總有些人認(rèn)為使用IMU單元需要復(fù)雜的數(shù)學(xué)運算(復(fù)雜的FIR或IIR濾波,如卡爾曼濾波,Parks-McClellan濾波等)。你如果研究這些會得到很棒且很復(fù)雜的結(jié)果。我解釋事情的方式,只需要基本的數(shù)學(xué)。我非常堅信簡單的原則。我認(rèn)為一個簡單的系統(tǒng)更容易操作和監(jiān)控,另外許多嵌入式設(shè)備并不具備能力和資源去實現(xiàn)需要進行矩陣運算的復(fù)雜算法。
我會用我設(shè)計的一個新IMU模塊——Acc_Gyro Accelerometer + Gyro IMU作為例子。在下面的例子中我們會使用這個設(shè)備的參數(shù)。用這個模塊作為介紹非常合適,因為它由3個設(shè)備組成:
- LIS331AL (datasheet) – 3軸 2G 模擬加速度計
- LPR550AL (datasheet) – 雙軸(俯仰、翻滾) 500°/s 加速度傳感器
- LY550ALH (datasheet) –單軸(偏航)陀螺儀
最后這個設(shè)備在這篇介紹中不使用,不過他在 DCM Matrix implementation中有重要作用它們一起組成了一個6自由度的慣性測量單元。這是個花哨的名字!然而,在花哨的名字后面是個非常有用的設(shè)備組合,接下來我們會詳細(xì)介紹之。