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

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

3天内不再提示

怎样使用MPU-6000和Raspberry Pi进行运动跟踪

454398 来源:网络整理 作者:网络整理 2019-11-14 10:46 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:硬件必需:

实现目标所需的材料包括以下硬件组件:

1。 MPU-6000

2。 Raspberry Pi

3。 I2C电缆

4。树莓派的I2C盾

5。以太网电缆

步骤2:硬件连接:

“硬件连接”部分基本上说明了布线连接传感器和覆盆子pi之间需要。在任何系统上为所需的输出工作时,确保正确的连接是基本必要。因此,必需的连接如下:

MPU-6000将在I2C上运行。这是示例接线图,演示了如何连接传感器的每个接口

开箱即用,该板配置为使用I2C接口,因此,如果您不确定,我们建议使用此连接。

您只需要四根电线! Vcc,Gnd,SCL和SDA引脚仅需要四个连接,它们通过I2C电缆连接。

这些连接如上图所示。

步骤3:运动跟踪代码:

使用树莓派pi的优势在于,它为您提供了一种灵活的编程语言,您可以使用该语言对电路板进行编程,以便将传感器与其连接。利用此开发板的这一优势,我们在这里演示其在python中的编程。 Python是语法最简单的最简单的编程语言之一。可以从我们的GitHub社区Dcube Store下载MPU-6000的python代码

为方便用户,我们还在这里解释代码:

作为编码的第一步,如果是python,则需要下载SMBus库,因为该库支持代码中使用的功能。因此,要下载该库,您可以访问以下链接:

https://pypi.python.org/pypi/smbus-cffi/0.5.1

您可以复制这里的工作代码也是如此:

import smbus

import time

# Get I2C busbus = smbus.SMBus(1)

# MPU-6000 address, 0x68(104)

# Select gyroscope configuration register, 0x1B(27)

# 0x18(24) Full scale range = 2000 dps

bus.write_byte_data(0x68, 0x1B, 0x18)

# MPU-6000 address, 0x68(104)

# Select accelerometer configuration register, 0x1C(28)

# 0x18(24) Full scale range = +/-16g

bus.write_byte_data(0x68, 0x1C, 0x18)

# MPU-6000 address, 0x68(104)

# Select power management register1, 0x6B(107)

# 0x01(01) PLL with xGyro reference

bus.write_byte_data(0x68, 0x6B, 0x01)

time.sleep(0.8)

# MPU-6000 address, 0x68(104)

# Read data back from 0x3B(59), 6 bytes

# Accelerometer X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB

data = bus.read_i2c_block_data(0x68, 0x3B, 6)

# Convert the data

xAccl = data[0] * 256 + data[1]

if xAccl 》 32767 :

xAccl -= 65536

yAccl = data[2] * 256 + data[3]

if yAccl 》 32767 :

yAccl -= 65536

zAccl = data[4] * 256 + data[5]

if zAccl 》 32767 :

zAccl -= 65536

# MPU-6000 address, 0x68(104)

# Read data back from 0x43(67), 6 bytes

# Gyrometer X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB

data = bus.read_i2c_block_data(0x68, 0x43, 6)

# Convert the data

xGyro = data[0] * 256 + data[1]

if xGyro 》 32767 :

xGyro -= 65536

yGyro = data[2] * 256 + data[3]

if yGyro 》 32767 :

yGyro -= 65536

zGyro = data[4] * 256 + data[5]

if zGyro 》 32767 :

zGyro -= 65536

# Output data to screen

print “Acceleration in X-Axis : %d” %xAccl

print “Acceleration in Y-Axis : %d” %yAccl

print “Acceleration in Z-Axis : %d” %zAccl

print “X-Axis of Rotation : %d” %xGyro

print “Y-Axis of Rotation : %d” %yGyro

print “Z-Axis of Rotation : %d” %zGyro

该代码是使用以下命令执行的:

$》 python MPU-6000.py gt; python MPU-6000.py

传感器的输出如上图所示,供用户参考。

步骤4:应用程序:

MPU-6000是一种运动跟踪传感器,可在智能手机和平板电脑的运动界面中找到其应用。在智能手机中,这些传感器可用于应用程序中,例如用于应用程序和电话控制的手势命令,增强型游戏,增强现实,全景照片捕获和查看以及行人和车辆导航。 MotionTracking技术可将手机和平板电脑转换为功能强大的3D智能设备,可用于从健康和健身监控到基于位置的服务等应用。
责任编辑:wv

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

    关注

    0

    文章

    7

    浏览量

    6574
  • MPU-6000
    +关注

    关注

    0

    文章

    7

    浏览量

    13759
  • 树莓派
    +关注

    关注

    122

    文章

    2086

    浏览量

    110966
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MAX96717与MAX96724有Raspberry Pi 5的使用方式吗

    Category: Software Product Number: MAX96724 Software Version: MAX96724 Raspberry Pi 5 Linux
    发表于 05-29 08:29

    C#运动控制开源(一): CAD导图和小线段速度前瞻的优化之CAD导图

    C#实现CAD解析及如何对小线段轨迹进行运动前瞻
    的头像 发表于 04-02 14:33 1808次阅读
    C#<b class='flag-5'>运动</b>控制开源(一): CAD导图和小线段速度前瞻的优化之CAD导图

    请问如何让 Sony-IMX219-Raspberry-Pi-V2-CMOS 相机与 VisionFive2 配合使用?

    我正在尝试获得我在 VisionFive2 版本 219a 上放置的备用 Sony-IMX2-Raspberry-Pi-V1.2-CMOS 相机。由于 VisionFive 2 有 1 个 × 2
    发表于 03-11 06:26

    ICM-45686:高性能6轴MEMS运动跟踪设备的深度解析

    ICM-45686:高性能6轴MEMS运动跟踪设备的深度解析 在当今科技飞速发展的时代,MEMS(微机电系统)传感器在众多领域发挥着至关重要的作用。ICM-45686作为一款高性能的6轴MEMS运动
    的头像 发表于 12-26 09:35 1541次阅读

    TDK IIM - 42653:工业应用中的高性能6轴智能运动跟踪MEMS器件

    TDK IIM - 42653:工业应用中的高性能6轴智能运动跟踪MEMS器件 引言 在工业应用领域,对于高精度、高可靠性的运动跟踪传感器的需求日益增长。TDK的IIM - 42653
    的头像 发表于 12-25 17:25 1383次阅读

    TDK IIM - 42653:高性能工业级6轴运动跟踪MEMS设备解析

    TDK IIM - 42653:高性能工业级6轴运动跟踪MEMS设备解析 引言 在工业应用的浪潮中,对高精度、高性能运动跟踪设备的需求日益增长。TDK的IIM - 42653作为一款6
    的头像 发表于 12-25 17:25 1378次阅读

    IAM-20680HV:高性能汽车6轴运动跟踪设备解析

    IAM-20680HV:高性能汽车6轴运动跟踪设备解析 在汽车电子领域,对于精确运动跟踪的需求日益增长。TDK的IAM-20680HV作为一款专为汽车非安全应用设计的6轴
    的头像 发表于 12-25 14:15 577次阅读

    Banana Pi BPI-CM6 – 一款与 Raspberry Pi CM4/CM5 载板兼容的 SpacemiT K1 RISC-V 系统模块

    Banana Pi BPI-CM6 系统模块 (SoM) 采用 SpacemiT K1 八核 RISC-V 处理器,并且与大多数 Raspberry Pi CM4 或 CM5 模块的载板兼容。 它
    发表于 11-28 16:59

    Banana Pi BPI-CM6 – 一款与 Raspberry Pi CM4/CM5 载板兼容的 SpacemiT K1 RISC-V 系统模块

    Banana Pi BPI-CM6 系统模块 (SoM) 采用 SpacemiT K1 8 核 RISC-V 处理器,并且与大多数为 Raspberry Pi CM4 或 CM5 设计的载板兼容
    的头像 发表于 11-28 16:57 2801次阅读
    Banana <b class='flag-5'>Pi</b> BPI-CM6 – 一款与 <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> CM4/CM5 载板兼容的 SpacemiT K1 RISC-V 系统模块

    Raspberry Pi携手上海晶珩 助力工业与物联网创新

     2025年9月23日下午,全球嵌入式解决方案的领导者 Raspberry Pi 在 2025 上海工博会首次亮相,并携手其在华重要合作伙伴 上海晶珩(EDATEC) ,正式发布专为中国市场打造
    的头像 发表于 09-26 15:29 832次阅读
    <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>携手上海晶珩 助力工业与物联网创新

    Banana Pi BPI-R4 Lite:新型单板计算机比 Raspberry Pi 5 更具优势

    Raspberry Pi 5(亚马逊售价 66 美元起)的替代品。 然而,它的侧重点略有不同,尤其适合网络应用。例如,它可以作为 OpenWrt 路由器的基础。Banana Pi 最新的 SBC
    的头像 发表于 08-26 16:46 1837次阅读
    Banana <b class='flag-5'>Pi</b> BPI-R4 Lite:新型单板计算机比 <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 5 更具优势

    保护隐私!树莓派上安装和配置 Pi-hole !

    什么是Pi-hole?https://pi-hole.net/Pi-hole是一款强大的全网络广告拦截器,可提升所有连接设备的隐私保护和性能表现。Pi-hole是一种基于DNS的全网络
    的头像 发表于 08-08 14:59 2585次阅读
    保护隐私!树莓派上安装和配置 <b class='flag-5'>Pi</b>-hole !

    运动感知到有效执行控制的关键为什么是IMU?

    无人机稳定飞行、机器人精准控制及工业自动化都需要高精度、高可靠的运动感知,感知数据质量不足或延迟,无法有效支撑高精度、高响应的闭环控制。这类设备都会使用IMU进行运动感知,但高性能惯性测量的需求与项目严格的成本预算之间却出现了难以调和的矛盾。
    的头像 发表于 07-09 16:13 744次阅读

    基于瑞萨64位MPU RZ/G2L进行32位应用软件开发

    本文主要介绍基于瑞萨64位MPU RZ/G2L进行32位应用软件开发的介绍,用于解决客户32位软件移植相关问题,供客户参考。
    的头像 发表于 06-26 15:48 2326次阅读
    基于瑞萨64位<b class='flag-5'>MPU</b> RZ/G2L<b class='flag-5'>进行</b>32位应用软件开发

    小安派BW21-CBV-Kit入门教程之DMP6读取MPU6050数据

    本示例将演示使用 DMP6 从 MPU6050 获取数据。MPU6050 配备了数字运动处理器 (DMP),用于处理运动算法的计算,如转换为三轴偏航/俯仰/滚动平面、转换为四元数或转换
    的头像 发表于 06-19 14:20 1266次阅读
    小安派BW21-CBV-Kit入门教程之DMP6读取<b class='flag-5'>MPU</b>6050数据