A Guide To using IMU (Accelerometer and Gyroscope Devices) in Embedded Applications.
介绍
本指南的目的是大家感兴趣的惯性MEMS(微机电系统)传感器,特别是加速计和陀螺仪和IMU组合设备(惯性测量单元)。
例如IMU单位:Acc_Gyro_6DOF对MCU处理单元UsbThumb提供的USB/串行连接顶部
我会尽力尝试在本文中介绍一些基本而重要的话题:
- 什么是加速度计测量
- 什么是陀螺仪(又名陀螺仪)测量
- 如何转换模数转换(ADC)的读数,你从这些传感器获取物理单位(这些是g,加速度传感器,度/秒陀螺仪)
- 如何结合加速度计和陀螺仪的读数,以获取有关设备相对于你的倾斜度的准确信息,以地平面
在整篇文章中,我会尽量保持数学到最低程度。如果你知道什么是正弦/余弦/正切是,那么你应该能够理解和使用这些想法在你的项目不管是什么平台你正在使用的Arduino ,螺旋桨,基本邮票,爱特梅尔芯片, Microchip的PIC等还有人在那里谁相信你需要复杂的数学才能使用的IMU单元(复数FIR或IIR滤波器,如卡尔曼滤波器,公园,麦克莱伦过滤器等) 。你可以研究所有这些,实现美好的,但复杂的结果。我解释事情的方式所需要的只是基本的数学运算。我在简洁的大信徒。我认为一个系统,是简单更容易控制和监视,除了许多嵌入式设备不具备的权力和资源,以实现复杂的算法要求矩阵的计算。
我会作为一个例子使用我设计了一个新的IMU单位 - Acc_Gyro加速度计+陀螺仪IMU 。我们将在下面我们的例子中使用这个设备的参数。这个单位是一个好设备开始,因为它包含3个设备:
- LIS331AL (数据表) - 模拟3轴加速度2G
- LPR550AL (数据表) - 一个双轴(俯仰和横滚) , 500deg/second陀螺仪
- LY550ALH (数据表) - 一个单轴(偏航)陀螺仪(最后这个设备是不是在本教程中使用,但是当你进入到DCM的矩阵实现它成为有关)
他们一起代表一个6自由度惯性测量单元。现在这是一个奇特的名字!然而,奇特的名字背后,是一个非常有用的组合设备,我们将讨论并在下面详细解释。
第1部分。加速度计
为了理解这个单元我们将开始与加速度计。当考虑加速度计是非常有用的图像框在一个立方体的形状用球里面。你可以想像别的东西像一个cookie或一个甜甜圈,但我会想象一个球:

如果我们把这个盒子中,没有引力场或为此事没有任何可能会影响球的位置等领域的地方 - 球会简单地浮在盒子的中间。你能想象的盒子是在外层空间远远离任何天体,或者如果这样的地方是很难找到的想象,至少一个飞船在地球的一切是在失重状态下围绕轨道。从你上面的图片可以看到,我们分配给各轴的一对壁(我们去掉了墙上Y +,所以我们可以看看盒内)。试想一下,每面墙是压力敏感。如果我们突然移动框左侧(我们用加速度1克= 9.8m/s^2的加速度),球会打在墙上的X。然后我们测量压力的力量,球适用于壁和输出的-1G的值在X轴上。

请注意,该加速度传感器将实际检测被引导在从加速度矢量的方向相反的力。这种力量通常被称为惯性力或虚构的力量。有一件事你应该从中学到的是,加速度计测量加速度间接透过应用到它的城墙之一的力(根据我们的模型,它可能是在现实生活中的加速度计弹簧或别的东西)。这支部队可以由加速度引起的,但正如我们将在下一个例子中看到它并不总是引起的加速度。
如果我们把我们的模型,并把它在地球上的球会落在Z-墙上,将适用于为1g力的底壁,如下面的图片:

A Guide To using IMU (Accelerometer and Gyroscope Devices) in Embedded Applications.的更多相关文章
- [转]A Guide To using IMU (Accelerometer and Gyroscope Devices) in Embedded Applications.
原文地址http://www.starlino.com/imu_guide.html Introduction There’s now a FRENCH translation of this art ...
- Event Handling Guide for iOS--(一)--About Events in iOS
About Events in iOS Users manipulate their iOS devices in a number of ways, such as touching the scr ...
- P6 EPPM Installation and Configuration Guide 16 R1 April 2016
P6 EPPM Installation and Configuration Guide 16 R1 April 2016 Contents About Installing and ...
- Globalization Guide for Oracle Applications Release 12
Section 1: Overview Section 2: Installing Section 3: Configuring Section 4: Maintaining Section 5: U ...
- 使用 Windows 10 中的加速度计(Accelerometer,重力传感器)
在做 UWP 应用开发的时候还有什么理由可以用到加速度计呢?场景很多啦,比如做游戏,做类似 Surface Hub 那种一边旋转,一边所有内容跟着一起转的效果. Windows 10 UWP 中的加速 ...
- [心平气和读经典]The TCP/IP Guide(003)
The TCP/IP Guide [Page 43, 44] Scope of The TCP/IP Guide | 本书的讨论范围 The first step to dealing with a ...
- (转) [it-ebooks]电子书列表
[it-ebooks]电子书列表 [2014]: Learning Objective-C by Developing iPhone Games || Leverage Xcode and Obj ...
- 【机器学习Machine Learning】资料大全
昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...
- [stm32] MPU6050 HMC5883 Kalman 融合算法移植
一.卡尔曼滤波九轴融合算法stm32尝试 1.Kalman滤波文件[.h已经封装为结构体] /* Copyright (C) 2012 Kristian Lauszus, TKJ Electronic ...
随机推荐
- Chrome打开标签页预览
类似于Microsoft Edge浏览器上的标签页缩略图预览非常方便,其实现在谷歌浏览器正在测试相关的功能,如果想提前体验,就在地址栏输入"chrome://flags"并按下回车 ...
- react 渲染顺序
工作中要对一个表格做再次更新, 可能是渲染后更新或者部分组件渲染之后, 对页面效果做处理 之前对react的理解, 仅仅停留在render渲染. 这次好好理解了下react的生命周期 1 react组 ...
- vue-router 路由元信息 终于搞明白了路由元信息是个啥了
vue-router 路由元信息:https://blog.csdn.net/wenyun_kang/article/details/70987840 终于搞明白了路由元信息是个啥了:https:// ...
- opencv2——图像上的算术运算4
1.图像算术运算 参数含义: src1:第一张图像 src2:第二张图像 dst:destination,目标图像,需要提前分配空间,可省略 mask:掩膜 scale:缩放比,常量 dtype:数据 ...
- JDK8之ArrayList源码
ArrayList三个构造器 /** * Default initial capacity. */ private static final int DEFAULT_CAPACITY = 10; // ...
- 关于vuex中的状态变量的思考???
store中存取的为整个项目的公共变量,通过设置mutation来改变他们 假设现有如下代码: const store = new Vuex.Store({ state: { userInfo:{ n ...
- 1.报表TIBCO Jaspersoft Studio工具教程入门--生成jrxml和jasper文件 然后拖拽到项目中 跟ireport一样
转自:https://blog.csdn.net/KingSea168/article/details/42553781 2. 在接下来的教程中,我们将实现一个简单的JasperReports示例,展 ...
- elasticsearch 基础 —— Delete By Query API
Delete By Query API _delete_by_query 的简单用法,就是在查询匹配到的每个文档上执行删除.例如: POST twitter/_delete_by_query { &q ...
- JAVA- 内部类及匿名内部类
普通类,我们平时见到的那种类,就是一个后缀为.java的文件中,直接定义的类,比如 public Cat{ private String name; private int age; } 内部类, 内 ...
- 解决Minikube start卡住的方法
安装与问题 在mac上安装minikube对k8s进行学习,根据官方Quick Start brew cask install minikube 就可以完成minikube的安装 在安装前需要安装vi ...