博客
关于我
嵌入式课程 之 陀螺仪传感器实验
阅读量:406 次
发布时间:2019-03-05

本文共 1165 字,大约阅读时间需要 3 分钟。

陀螺仪与MPU6050实验报告

【实验目标】熟悉陀螺仪工作原理,了解不同种类陀螺仪之间的差异;熟悉MPU6050的输出形式,熟悉MPU6050的通信方法;掌握STM32F10xx系列微控制器上陀螺仪的接口配置与数据采集过程。

【实验原理】陀螺仪(gyroscope)是角运动检测装置。传统陀螺仪通过检测高速回转体的动量矩,感知其相对于惯性参考系的角运动,输出角速度信息。机械式陀螺仪因制造工艺复杂、精度低、体积大而逐渐被MEMS(微机电)陀螺仪取代。MEMS陀螺仪采用微型机电结构,具有高精度、小体积、低功耗等优点。

MPU6050是一款集成6轴运动传感器,包含3轴MEMS陀螺仪、3轴加速度计和可扩展的DMP(数字运动处理器)。其I2C接口支持最高达400kHz的通信速度,可与其他传感器连接。MPU6050的I2C地址由AD0引脚确定,默认为0xD0,AD0接地时设备地址为0x68。

硬件连接图显示MPU6050与主控板的接口配置。软件流程图展示了从MPU6050读取数据到显示屏的整个过程。

【实验环境】硬件设备:双轮自平衡机器人,配备MPU6050模块。软件环境:Keil 5 IDE

【实验步骤】第一步:配置工程环境工程模板包含USER、HARDWARE、SYSTEM、CORE、FWLib文件夹。HARDWARE文件夹下新建mpu6050.c文件,与之对应的MPU6050.h文件包含寄存器地址和宏定义。

第二步:编写寄存器读取函数完成以下函数开发:

  • 时钟源配置函数MPU6050_setClockSource
  • 陀螺仪量程设置函数MPU6050_setFullScaleGyroRange
  • 加速度计量程设置函数MPU6050_setFullScaleAccelRange
  • 睡眠唤醒函数MPU6050_setSleepEnabled
  • 主从机设置函数MPU6050_setI2CMasterModeEnabled
  • I2C跳过功能设置函数MPU6050_setI2CBypassEnabled
  • 第三步:编写主程序在main.c中:

  • 包含必要的头文件
  • 定义显示函数和全局变量
  • 调用初始化函数和延时函数
  • 实现主循环,读取陀螺仪数据并显示
  • 第四步:编译并下载通过Keil编译环境完成程序编译和下载,确保仿真器与小车连接正确。

    【实验现象】OLED显示屏显示陀螺仪读数,手动操作车身可观察数值变化。

    【思考题】

  • 若AD0引脚接高电平,MPU6050的7位设备地址是(B)A:0x68B:0x69C:0xD0D:0xD1

  • 同一条IIC总线上最多挂在几个MPU6050设备(B)A:1B:2C:127D:128

  • 简答题:机械陀螺仪的工作原理是基于离心力。当陀螺仪快速旋转时,其旋转轴方向不变。利用这种特性,机械陀螺仪可以用于保持方向。

    转载地址:http://xuzzz.baihongyu.com/

    你可能感兴趣的文章
    mysql 字段合并问题(group_concat)
    查看>>
    mysql 字段类型类型
    查看>>
    MySQL 字符串截取函数,字段截取,字符串截取
    查看>>
    MySQL 存储引擎
    查看>>
    mysql 存储过程 注入_mysql 视图 事务 存储过程 SQL注入
    查看>>
    MySQL 存储过程参数:in、out、inout
    查看>>
    mysql 存储过程每隔一段时间执行一次
    查看>>
    mysql 存在update不存在insert
    查看>>
    Mysql 学习总结(86)—— Mysql 的 JSON 数据类型正确使用姿势
    查看>>
    Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结
    查看>>
    Mysql 学习总结(88)—— Mysql 官方为什么不推荐用雪花 id 和 uuid 做 MySQL 主键
    查看>>
    Mysql 学习总结(89)—— Mysql 库表容量统计
    查看>>
    mysql 实现主从复制/主从同步
    查看>>
    mysql 审核_审核MySQL数据库上的登录
    查看>>
    mysql 导入 sql 文件时 ERROR 1046 (3D000) no database selected 错误的解决
    查看>>
    mysql 导入导出大文件
    查看>>
    mysql 将null转代为0
    查看>>
    mysql 常用
    查看>>
    MySQL 常用列类型
    查看>>
    mysql 常用命令
    查看>>