步驟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瀏覽量
6444 -
MPU-6000
+關注
關注
0文章
6瀏覽量
13401 -
樹莓派
+關注
關注
116文章
1706瀏覽量
105607
發布評論請先 登錄
相關推薦
評論