一 系统简介
1.简介
MPU-60x0 是全球首例 9 轴运动处理传感器。它集成了 3 轴MEMS陀螺仪,3 轴MEMS加速度计,以及一个可扩展的数字运动处理器 DMP(Digital Motion Processor)。MPU-60x0 对陀螺仪和加速度计分别用了三个 16 位的 ADC,将其测量的模拟量转化为可输出的数字量。为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪可测范围为 ±250,±500,±1000,±2000°/秒(dps),加速度可测±2,±4,±8,±16g。
2.特性
  • 可读取加速度和角速度
  • 可读取温度
  • 可计算出倾斜角
二 源码解析
 
1.获取温度信息如下所示:
    short temp_per = MPU_Get_Temperature();

2.获取倾斜角和加速度信息如下所示:

    MPU_Get_Accelerometer(&aacx,&aacy,&aacz);
MPU_Get_Gyroscope(&gyrox,&gyroy,&gyroz); aacx = aacx + X_ACCEL_OFFSET;
aacy = aacy + Y_ACCEL_OFFSET;
aacz = aacz + Z_ACCEL_OFFSET; gyrox = gyrox + X_GYRO_OFFSET;
gyroy = gyroy + Y_GYRO_OFFSET;
gyroz = gyroz + Z_GYRO_OFFSET;

3.计算倾斜角度信息如下所示:

/******************************************************************************
* 函数介绍: 计算 x, y, z 三轴的倾角
* 输入参数: 无
* 输出参数: data:角度结构体
* 返回值 : 无
******************************************************************************/
void MPU6050_Get_Angle(mpu6050_angle *data,short aacx,short aacy, short aacz)
{
float f_aacx = float(aacx)/16384.0;
float f_aacy = float(aacy)/16384.0;
float f_aacz = float(aacz)/16384.0;
/* 计算x, y, z 轴倾角,返回弧度值*/
data->X_Angle = acos(f_aacx);
data->Y_Angle = acos(f_aacy);
data->Z_Angle = acos(f_aacz); TRACE("x_angle:%d y_angle:%d ",short(data->X_Angle),short(data->Y_Angle)); /* 弧度值转换为角度值 */
data->X_Angle = data->X_Angle * (double)57.29577;
data->Y_Angle = data->Y_Angle * (double)57.29577;
data->Z_Angle = data->Z_Angle * (double)57.29577; }
三 效果展示
1.效果展示如下所示:
四 参考文献
1.角度检测文献

基于六轴传感器MPU6050的加速度和角度值读取的更多相关文章

  1. Arduino101学习笔记(十三)—— 101六轴传感器

    一.相关API 1.begin:需要在其他CUIREIMU前调用 //***************************************************************** ...

  2. 如何利用小熊派获取MPU6050六轴原始数据

    摘要:使用小熊派开发板,通过硬件IIC与MPU6050六轴传感器模块通信,完成相应寄存器配置,成功获取陀螺仪.加速度计数据. 本问主要讲述使用小熊派开发板+MPU6050六轴传感器,获取加速度计以及陀 ...

  3. 六轴加速度传感器MPU6050官方DMP库到瑞萨RL78/G13的移植

    2015年的电赛已经结束了.赛前接到器件清单的时候,看到带防护圈的多旋翼飞行器赫然在列,又给了一个瑞萨RL78/G13的MCU,于是自然联想到13年的电赛,觉得多半是拿RL78/G13做四旋翼的主控, ...

  4. 【.NET 与树莓派】六轴飞控传感器(MPU 6050)

    所谓"飞控",其实是重力加速度计和陀螺仪的组合,因为多用于控制飞行器的平衡(无人机.遥控飞机).有同学会问,这货为什么会有六轴呢?咱们常见的不是X.Y.Z三轴吗?重力加速度有三轴, ...

  5. STM32—驱动六轴MPU6050输出欧拉角

    文章目录 一.MPU6050介绍 1.MPU6050与陀螺仪.加速度计的关系: 2.整体概括 3.引脚说明 4.基本配置及相关寄存器 电源管理寄存器1 陀螺仪配置寄存器 加速度计配置寄存器 FIFO使 ...

  6. Unity之串口通信(基于三姿态传感器)

    原地址:http://www.cnblogs.com/alongu3d/archive/2013/05/02/3054962.html /******************************* ...

  7. [算法][三轴、六轴、九轴传感器算法分析] 1、分享一个三轴加速计matlab动态可视化脚本

    一.有啥用 这里用的是LIS3DH三轴加速计,输出为X.Y.Z轴的加速度,通过串口连接电脑,电脑里运行matlab脚本通过串口实时获取数据并做可视化显示. 这里虽然是针对LIS3DH的,其实稍作修改即 ...

  8. Simulink S-Function的使用(以串口接收MPU6050六轴陀螺仪参数为实例)

    S-Function 允许使用自定义C/C++函数作为传递函数,具有可移植性.也可以同样利用MATLAB函数进行相同的运算,看开发者熟悉程度而定. 项目流程 由系统串口接收数据包. 通过S-Funct ...

  9. 重力加速度陀螺仪传感器MPU-6050(一)

    MPU-60X0 对陀螺仪和加速度计分别用了三个16 位的ADC,将其测量的模拟量转化 为可输出的数字量.为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪可测范围为±250,±50 ...

  10. 基于I2C总线的MPU6050学习笔记

    MPU6050学习笔记 1. 简述 一直想自己做个四轴飞行器,却无从下手,终于狠下决心,拿出尘封已久的MPU6050模块,开始摸索着数据手册分析,一步一步地实现了MPU6050模块的功能,从MPU60 ...

随机推荐

  1. HBase Shell将命令执行结果导出到文件

    1.将Hbase shell执行结果输出到文件 echo "scan 'test'" | hbase shell>my.txt 2.查看表的region数 list_regi ...

  2. Python实现二叉查找

    搜索 搜索是在一个项目集合中找到一个特定项目的算法过程.搜索通常的答案是真的或假的,因为该项目是否存在. 搜索的几种常见方法:顺序查找.二分法查找.二叉树查找.哈希查找 二分法查找 二分查找又称折半查 ...

  3. DP的各种优化小结

    动态规划算法(简称动规,DP),是IO中最为常见的,也是最为重要的算法之一.这也就意味着,在各种题目与比赛中它会有很多稀奇古怪的算法和优化,时不时地在你的面前出现一个TLE,MLE和RE来搞你的心态. ...

  4. python 学习随笔1121

    Python 数据处理几个好用又简单的库: json re string pandas 与系统交互: subprocess os

  5. 核心MySQL主库优化总结

    公司核心主库,在我来公司时是1主5从库(腾讯云RDS),外加7个自建级联从库. 从2020年2月到2021年8月优化总结: 1,  7个自建多级从库,从以前的中转同步改成从一级从库同步,废弃了5个从库 ...

  6. Spring Boot图书管理系统项目实战-9.归还图书

    导航: pre:  8.续借图书 next:10.借还统计 只挑重点的讲,具体的请看项目源码. 1.项目源码 需要源码的朋友,请捐赠任意金额后留下邮箱发送:) 2.页面设计 2.1 bookRetur ...

  7. win32 - WriteProcessMemory的使用

    使用这个api可以在指定的进程中将数据写入内存区域. 注意:以管理员权限运行,并且以x64调试. #include <windows.h> #include <iostream> ...

  8. golang常用库包:redis操作库go-redis使用(01)-Redis数据类型简介和连接Redis的几种方式

    第一篇:go-redis使用,介绍Redis基本数据结构和其他特性,以及 go-redis 连接到Redis(本篇) https://www.cnblogs.com/jiujuan/p/1720716 ...

  9. kafka学习笔记02-kafka消息存储

    kafka消息存储 broker.topic.partition kafka 的数据分布是一个 3 级结构,依次为 broker.topic.partition. 也可以理解为数据库的分库分表,然后还 ...

  10. r0capture 原理分析

    r0capture 是比较好用的抓包工具 仅限安卓平台,测试安卓7.8.9.10.11.12 可用 : 无视所有证书校验或绑定,不用考虑任何证书的事情: 通杀TCP/IP四层模型中的应用层中的全部协议 ...