陀螺仪传感器

获取6050原始数据

橙三吉。 提交于 2019-12-18 12:21:36
MPU6050的原始数据分析 个人经验来讲,如果对IIC总线协议很熟悉的情况下,获取6050的原始数据就不是什么太大的难题,毕竟再怎么复杂也只是一个传感器而已,就像你打电话给传感器,要它的数据,然后它返回给你,仅此而已。 首先,要了解6050是干什么的: MPU-6000(6050)为全球首例整合性6轴运动处理组件,相较于多组件方案,免除了组合陀螺仪与加速器时间轴之差的问题,减少了大量的封装空间。(来自百度百科) 简单说,就是该传感器能获取XYZ三个轴方向的角速度和加速度,包含6个16位的ADC来表示这些值,关于传感器的测量原理,可以简单想象类似下图的模式,是不很直观。 当然,用过AD转换的童鞋都知道,这个是会有精度问题的,6050也一样,而且受到的噪声影响更大,但本次不讨论这个问题,仅讨论怎么获取原始数据 话不多说,上代码 初始化代码实现 /*--------MPU6050地址宏定义---------*/ #define MPU6050_SLAVEAddr 0xd0 //IIC写6050地址 #define MPU6050_ACCAddr 0x3B //MPU加速度读值地址 #define MPU6050_GYROAddr 0x43 //陀螺仪读值地址 #define MPU_Remove_Sleep 0x6B //解除休眠地址 #define MPU_GYRO_Smple

简单VR照片 使用陀螺仪、姿态角(Roll、Pitch、Yaw )、四元数

拈花ヽ惹草 提交于 2019-12-18 09:04:04
最近在做一个类似VR照片的demo,跟全景图片也很像,只是VR照片与全景720度显示,我只做了180度。但我发现他们实现的原理有一丝相似,希望可以给一些想入行AR、VR的朋友一些提示吧。 要想根据用户摇晃手机的行为轨迹展示相应的场景,那必须要使用移动端的陀螺仪、加速器等传感器来做相应的协调。现在的移动端已经提供了很多传感器,你可以根据自己的需要获取相应的数据。 刚开始的时候,我使用传感器提供的姿态角,也称为欧拉角:pitch yaw roll 来显示。这种 姿态角/欧拉角 比较常用在航空上,无人机技术应该也使用到了这个技术点。我用飞机的模型来展示一下这三个角,就一目了然了(不同作者使用不同的坐标系,使用哪种坐标系,个人而定。): 图一 姿态角/欧拉角 在数学上理解起来会有点抽象,我也是稍理解一点。在维基百科上,欧拉角定义为:用来描述刚体在三维欧几里得空间的取向,对于任何参考系,一个刚体的取向,是依照顺序,从这参考系,做三个欧拉角的旋转而设定的。有兴趣了解得深入一点,可以参考(需翻墙): https://zh.wikipedia.org/wiki/%E6%AC%A7%E6%8B%89%E8%A7%92 我们也可以简单理解这三个角代表什么意思: 1、俯仰角θ(pitch):围绕Y轴旋转的。 图二 2、偏航角ψ(yaw):围绕Z轴旋转的角度。 图三 3、滚转角Φ(roll)

InvenSense 美国公司

落爺英雄遲暮 提交于 2019-12-04 23:56:51
InvenSense为智能型运动处理方案的先驱、全球业界的领导厂商,驱动了运动感测人机接口在消费性电子产品上的应用。公司提供的集成电路(IC)整合了运动传感器-陀螺仪以及相对应的软件,有别于其他厂商,有着小尺寸、高整合、高性能、高可靠度与低价格的优势。公司产品可应用于众多市场上 公司拥有四种专有技术优势:专利的Nasiri-Fabrication制程,先进的MEMS陀螺仪设计,可提供传感器讯号处理方案(signal processing)及运作本司运动处理平台(Motion Processing)关键之融合算法技术(Sensor Fusion)的混合讯号电路系统(mixed-signal circuitry),以及本公司的运动处理数据库与运动感测应用(Motion Application)软件方案。因本公司可组装、可扩展的平台架构,从一轴的模拟陀螺仪,到完整整合之三轴与六轴的数字运动处理方案为止,本公司能提供市场多种整合性运动感测产品。 InvenSense于2003年成立,总公司在Sunnyvale, California,测试厂位于台湾,并在台湾、韩国、日本、迪拜设有业务处及应用支持服务处。 [2] 来源: https://www.cnblogs.com/hshy/p/11889588.html

深度解析卡尔曼滤波在IMU中的使用

泪湿孤枕 提交于 2019-12-01 21:52:13
卡尔曼滤波主要分两个步骤,预测加校正。预测是基于上一时刻的状态对当前状态进行估计,校正是根据当前状态的观测与上一时刻的估计进行综合分析,估计出系统的最优状态值,然后下一时刻接着重复这个过程;卡尔曼不断的进行迭代,它不需要大量的粒子状态输入,只需要过程量,因此它的速度很快,非常适合线性系统的状态估计。 众所周知卡尔曼滤波在处理 IMU 传感器数据融合中作用巨大,但在实际实现起来并非那么容易;本文从 MPU6050 入手,分析卡尔曼滤波的使用。 本篇文章需要你在夜深人静的时候、先去冲一杯咖啡、准备一张纸、一支笔…… 卡尔曼滤波 从来没有坐下来认真的计算卡尔曼滤波的公式由来以及它背后更深层次的原理,为什么在处理加速度以及陀螺仪的数据融合中卡尔曼滤波就那么的有效。但是对于大多数人来说,可能更感兴趣的是如何正确的去使用它,卡尔曼滤波的那五个公式到底怎么使用。 开始之前需要你具备一定的矩阵乘法、矩阵变换等知识,大家都知道矩阵乘法的重要性,不夸张的说,不懂矩阵乘法根本做不了复杂的模型。当然本篇涉及到的矩阵乘法没那么复杂,如果忘记了请翻大学时的课本脑补,或参考以下网站: http://en.wikipedia.org/wiki/Matrix_multiplication#Matrix_product_.28two_matrices.29 http://www.mathwarehouse.com

芯片翻译之ICM20602(一)

╄→гoц情女王★ 提交于 2019-12-01 13:44:16
高性能六轴MEMS运动跟踪装置 概述 ICM 20602是一个6轴运动跟踪装置,它结合了一个3轴陀螺仪,3轴加速度计,在一个小的3毫米×3毫米×0.75毫米(16引脚LGA)封装。 高性能规格 陀螺仪灵敏度误差:±1% 陀螺仪噪声:4 mdps/√Hz 加速度计噪声:100μg/√Hz 包括1kB FIFO以减少串行总线接口上的通信量,并通过允许系统处理器突发读取传感器数据并进入低功耗模式来降低功耗 支持EIS FSYNC CM-20602包含片上16位ADC、可编程数字滤波器、嵌入式温度传感器和可编程中断。该设备的工作电压范围低至1.71V。通信端口包括I2C和10MHz的高速SPI。 方框图 应用 智能手机和平板电脑 可穿戴传感器 物联网应用 基于运动的游戏控制器 互联网连接DTV和机顶盒、3D鼠标 特性 可编程FSR±250 dps,±500 dps,±1000 dps,±2000 dps的三轴陀螺仪 可编程FSR±2g,±4G,±8g,±16g的三轴加速度计 用户可编程中断 应用处理器低功耗运行的唤醒运动中断 1kB FIFO缓冲区使应用程序处理器能够突发式读取数据 片上16位ADC和可编程滤波器 主机接口:10 MHz SPI或400 kHz快速模式I2C 数字输出温度传感器 VDD工作范围1.71V至3.45V 在晶圆级密封和粘合MEMS结构 符合RoHS和绿色标准