“Microduino MPU6050计算角度(Microduino 10dof)/zh”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
(Created page with "{| style="width: 800px;" |- | ==目的== 本教程将教大家如何使用Microduino-10DOF模块中的MPU6050传感器来计算x, y, z轴的角度并在OLED中显示。 ==设...")
 
程序
 
(未显示2个用户的3个中间版本)
第1行: 第1行:
 +
{{Language | Microduino MPU6050 calculate angle(Microduino 10dof)}}
 
{| style="width: 800px;"
 
{| style="width: 800px;"
 
|-
 
|-
第6行: 第7行:
  
 
==设备==
 
==设备==
*'''[[Microduino-Core]]'''
+
*'''[[Microduino-Core/zh]]'''
*'''[[Microduino-FT232R]]'''
+
*'''[[Microduino-USBTTL/zh]]'''
*'''[[Microduino-Cube-S1]]'''
+
*'''[[Microduino-Cube-S1/zh]]'''
*'''[[Microduino-10DOF]]'''
+
*'''[[Microduino-10DOF/zh]]'''
*'''[[Microduino-OLED]]'''
+
*'''[[Microduino-OLED/zh]]'''
  
 
*其他硬件设备
 
*其他硬件设备
**USB数据连接线  一根  
+
**USB数据连接线  一根
 
 
 
 
  
 
==原理图==
 
==原理图==
第30行: 第29行:
 
==程序==
 
==程序==
  
MPU6050AngleOLED
+
[https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Sensor/MPU6050AngleOLED MPU6050AngleOLED]
  
 
通过MPU6050来计算角度其实有许多方法,有算法复杂的也有简单的,有结果精确的也有不精确的,在网上你大概能找到几种方法来计算角度,比如:
 
通过MPU6050来计算角度其实有许多方法,有算法复杂的也有简单的,有结果精确的也有不精确的,在网上你大概能找到几种方法来计算角度,比如:
第39行: 第38行:
  
 
本程序用到第三种方法计算角度,如果大家有兴趣可以深度研究下DMP和kalman。
 
本程序用到第三种方法计算角度,如果大家有兴趣可以深度研究下DMP和kalman。
 
  
 
==调试==
 
==调试==

2014年10月29日 (三) 05:43的最新版本

Language English

目的

本教程将教大家如何使用Microduino-10DOF模块中的MPU6050传感器来计算x, y, z轴的角度并在OLED中显示。

设备

  • 其他硬件设备
    • USB数据连接线 一根

原理图

  • Microduino-OLED
  • Microduino-Core
  • Microduino-10DOF
  • Microduino-FT232R
  • Microduino-Cube-S1

层层堆叠

程序

MPU6050AngleOLED

通过MPU6050来计算角度其实有许多方法,有算法复杂的也有简单的,有结果精确的也有不精确的,在网上你大概能找到几种方法来计算角度,比如:

  • 1:卡尔曼滤波(kalman filter)来计算角度,算法比较复杂,但结果非常精确
  • 2:DMP(Digital Motion Processing) 来计算角度,用到四元数,算法相对简单,结果没有卡尔曼滤波精确
  • 3:用加速度进行积分运算来计算角度,算法最简单,结果比较粗糙。

本程序用到第三种方法计算角度,如果大家有兴趣可以深度研究下DMP和kalman。

调试

步骤一:以上要求的Micrduino模块堆叠好后就可以下载代码了,如下图:

步骤二:下载代码并编译通过。

步骤三:摆动模块并看OLED上的数值变化。

结果

模块在3个轴上进行转动,OLED会显示x,y,z轴的夹角变化。

视频

http://v.youku.com/v_show/id_XNjk4NDIzMjQ0.html