0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

具有ArduinoPro-Micro的MPU-9150 / 9250 IMU

454398 来源:网络整理 作者:佚名 2019-11-01 10:40 次阅读

步骤1:构建

对于构建,我使用Arduino Pro-Micro克隆,因为它紧凑。我希望有一个小的单元可以合并到其他项目中。

接线简单:

MPU9150 VCC-Arduino VCC

MPU9150 GND-Arduino GND

MPU9150 I2C SCL-Arduino I2C SCL(Pro Micro是2号引脚)

MPU9150 I2C SCL-Arduino I2C SDA(Pro Micro是3号引脚)

MPU9150 AD0-Arduino GND

MPU9150 INT-Arduino引脚7(Pro Micro的中断4)

步骤2:代码

要使用IMU,请安装两个附加的库(复制到Arduino库文件夹)。运行MPU6050_DMP6.ino文件,并将代码上传到您的Arduino。要查看该演示,请运行处理茶壶示例(位于库 MPU6050 Examples MPU6050_DMP6 Processing MPUTeapot中)。

我照顾的另一个问题是正常运行期间的断电:断开MPU-9150的电源,然后重新连接。代码将重新初始化设备并继续输出数据。

步骤3:其他资源

我附加了MPU-9250寄存器映射文件。了解代码的作用很有用。

这些库来自Jeff Rowberg github:https://github.com/jrowberg/i2cdevlib

他还是一个支持论坛:http://www.i2cdevlib.com/forums

我希望将来将此内容扩展。

第4步:问题

此模块遇到了一些问题。

许多论坛提到的一个问题是数据冻结。出于某些未知原因,该模块会在一段时间后停止输出数据。我认为我通过查看代码并解决了进入要处理FIFO的部分的一些条件来解决此问题。比较中断寄存器时也有一个错误-代码中的数据就绪指示错误。

另一个问题是FIFO满错误,有很多经验。我想我也通过不仅在收到中断时也要在FIFO不为空时处理FIFO来解决此问题。

我使用了5V器件Arduino Pro Micro作为MPU-9150是3.3V器件。但这实际上不是问题。首先,MPU-9150具有将5V转换为3.3V的LDO(稳压器)。其次,I2C通信上拉在MPU-9150上。当Arduino想要通信时,它将线拉低(接地)。数据传输完成后,Arduino放开了线路,MPU-9150将其再次拉高,因此5V永远不会进入设备。

另一个神秘的问题是,在一段时间后设备收到了FIFO满消息。正在运行。但是,当我断开所有电源并再次重新连接时,问题仍然存在。它仅在我按下Arduino上的复位键后才停止(这里要提到的一件事是,只有在复位后Arduino Pro Micro才会在正常加电时才加载引导加载程序。8秒钟后它将加载您的草图)。我不知道启动引导程序后为什么解决了这个问题。

我还做了另一处更改,并将一个串行转USB转换器连接到Arduino Pro Micro的RX/TX引脚上(USB Pro Micro的端口是虚拟设备,而不是真实的串行端口)。通过使用Serial1.begin而不是Serlal.begin来完成。经过最后的更改后,我看到了改进,甚至一个小时后数据也没有冻结。

我尚未解决的唯一问题是,一段时间后,设备开始像旋转一样开始输出疯狂。我不确定是因为我将设备保持太长时间的静态状态还是由于其他故障导致的。

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Arduino
    +关注

    关注

    188

    文章

    6469

    浏览量

    186969
  • MPU-9150
    +关注

    关注

    1

    文章

    3

    浏览量

    9990
收藏 人收藏

    评论

    相关推荐

    ICM-42670-P 高性能 6 轴 Motion跟踪® IMU : 官方推荐ICM-42670-P替代 MPU-6050

    ICM-42670-P 高性能 6 轴 Motion跟踪® IMU *附件:ICM-42670-P 数据手册 替代MPU6050.pdf *附件:IMU PCB 设计和 MEMS 组装指南.pdf
    的头像 发表于 12-23 17:34 157次阅读
    ICM-42670-P 高性能 6 轴 Motion跟踪® <b class='flag-5'>IMU</b> : 官方推荐ICM-42670-P替代 <b class='flag-5'>MPU</b>-6050

    如何在psoc creator 4.4中使用cypress kitprog从imu 9250/6500读取数据?

    我想在 psoc creator 4.4 中使用 cypress kitprog 从 imu 9250/6500 读取数据。 引导我建立联系和编码。
    发表于 07-03 06:50

    如何利用中断从Mpu6050读取数据?

    我正在使用延迟从 psoc 5LP CY8C5888LTI-LP097 中的 mpu-6050 imu 读取数据。 我不想用延时器,我想用带中断的定时器代替它。 下面附上我的项目文件。 请帮我创建中断函数。
    发表于 07-03 06:18

    IMU中的misaligment误差是如何区分Axis to axis与Axis to frame误差的?

    大家好,想咨询一下,IMU中的misaligment误差是如何区分Axis to axis与Axis to frame误差的? 您好,我想询问一下IMU中的错位误差如何区分轴到轴和轴到帧误差?
    发表于 05-29 07:51

    spi无法读取mpu9250值是为什么?如何解决?

    spi无法读取mpu9250
    发表于 04-23 07:06

    使用主控IIC读取MPU9250的磁力计数据,速度特别慢怎么解决?

    使用iic对mpu9250进行读取数据,读取磁力计数据时采用的是主控iic方式,但是读取的速度特别慢,几秒一次,网上说磁力计数据输出的速率最快是100hz,几秒一次也太慢了;另外在初始化函数中开启了延时,但是一次读取6个字节的数据,只能读到前两个字节,后四个字节全为0,请大佬帮助解答一下,感激不尽
    发表于 04-11 07:02

    单片机一个IIC连接两个MPU9250如何设置读取磁力计的模式?

    在STM32单片机的一个IIC接口上同时连了两个MPU9250传感器,将两者的AD0分别设为高和低,对于磁力计都设置成Bypass模式,发现两块磁力计的数据都能读出来,Bypass模式不是由单片机
    发表于 04-10 07:14

    找到一个基于stm32的mpu9250的驱动程序,能移植到GD32上吗?

    找到一个基于stm32的mpu9250的驱动程序,能移植到GD32上吗,需要更改哪些方面
    发表于 04-03 07:49

    爱普生(EPSON)开发新IMU产品M-G370PDS改善姿态和震动控制

    相应地,对提供更高精度的IMU的需求正在上升,这对于姿态控制和噪声性能至关重要。爱普生正是再这种对于高精度IMU的需求之下,开发新IMU产品M-G370PDS改善姿态和震动控制,来填补IMU
    的头像 发表于 03-21 10:11 1308次阅读
    爱普生(EPSON)开发新<b class='flag-5'>IMU</b>产品M-G370PDS改善姿态和震动控制

    【先楫HPM5361EVK开发板试用体验】06-基于MPU9250的姿态解算

    报告可知MPU9250模块和HPM5361的连接如下图所示,这里MPU9250使用的是现成的模块,其引脚定义在丝印上有,HPM5361开发板用的是开发板的SPI1,具体引脚为PA26、PA27、PA28
    发表于 01-17 14:55

    M-G370PDF1(IMU

    一般描述 M-G370PDF1是一个小的形状因子惯性测量单元(IMU),具有6个自由度:三轴角速率和线性加速度,并提供了高稳定性和高精度的测量能力与使用高精度补偿技术。各种校准参数被存储在IMU
    发表于 01-11 17:00 0次下载

    M-G370PDS惯性测量单元(IMU)

    M-G370PDS0是一个小的形状因子惯性测量单元(IMU),具有6个自由度:三轴角率和线性加速度,并提供高稳定性和高精度的测量能力精密补偿技术。各种校准参数被存储在IMU的存储器中,并且是在
    发表于 01-11 09:55 1次下载

    【先楫HPM5361EVK开发板试用体验】05 - SPI接口读取MPU9250数据

    1、MPU9250简介 MPU9250 数字运动处理器是一款 9 轴运动跟踪设备,在小型紧凑型 IC 中集成了 3 轴加速度计、3 轴磁力计和 3 轴陀螺仪。DMP 具有三个 16 位分辨率
    发表于 01-03 11:46

    mpu6500和mpu6000哪个好

    mpu6500和mpu6000各有优势。MPU6500和MPU6000是由英飞凌(InvenSense)公司开发的两种九轴惯性测量单元(IMU
    的头像 发表于 12-27 17:52 4081次阅读

    导远IMU5104成为首个获得ISO 26262功能安全认证的车载IMU模组产品

    12月27日,导远电子获得DEKRA德凯颁发,国内首张高精度定位IMU模组ISO 26262 ASIL B功能安全产品认证证书,标志着导远IMU5104成为首个获得ISO 26262功能安全认证的车载IMU模组产品。
    的头像 发表于 12-27 17:07 917次阅读