步骤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浏览量
6442 -
MPU-6000
+关注
关注
0文章
6浏览量
13397 -
树莓派
+关注
关注
116文章
1699浏览量
105546
发布评论请先 登录
相关推荐
评论