怎样使用H3LIS331DL和树莓派测量加速度

电子说

1.3w人已加入

描述

步骤1:必需的硬件:

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

1。 H3LIS331DL

2。 Raspberry Pi

3。 I2C电缆

4。树莓派的I2C盾

5。以太网电缆

步骤2:硬件连接:

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

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

开箱即用,该板配置为使用I2C接口,因此,如果您不确定,我们建议使用此连接。您只需要四根电线!

Vcc,Gnd,SCL和SDA引脚仅需要四个连接,并且这些连接通过I2C电缆进行连接。

这些连接在上面的图片中得到了展示。

步骤3:用于加速度测量的Python代码:

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

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

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

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

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

import smbus

import time

# Get I2C busbus = smbus.SMBus(1)

# H3LIS331DL address, 0x18(24)

# Select control register 1, 0x20(32)

# 0x27(39) Power ON mode, Data output rate = 50 Hz# X, Y, Z-Axis enabled

bus.write_byte_data(0x18, 0x20, 0x27)

# H3LIS331DL address, 0x18(24)# Select control register 4, 0x23(35)

# 0x00(00) Continuous update, Full scale selection = +/-100g

bus.write_byte_data(0x18, 0x23, 0x00)

time.sleep(0.5)

# H3LIS331DL address, 0x18(24)

# Read data back from 0x28(40), 2 bytes

# X-Axis LSB, X-Axis MSB

data0 = bus.read_byte_data(0x18, 0x28)

data1 = bus.read_byte_data(0x18, 0x29)

# Convert the dataxAccl = data1 * 256 + data0

if xAccl 》 32767 :

xAccl -= 65536

# H3LIS331DL address, 0x18(24)

# Read data back from 0x2A(42), 2 bytes

# Y-Axis LSB, Y-Axis MSB

data0 = bus.read_byte_data(0x18, 0x2A)

data1 = bus.read_byte_data(0x18, 0x2B)

# Convert the data

yAccl = data1 * 256 + data0

if yAccl 》 32767 :

yAccl -= 65536

# H3LIS331DL address, 0x18(24)

# Read data back from 0x2C(44), 2 bytes

# Z-Axis LSB, Z-Axis MSB

data0 = bus.read_byte_data(0x18, 0x2C)

data1 = bus.read_byte_data(0x18, 0x2D)

# Convert the data

zAccl = data1 * 256 + data0

if zAccl 》 32767 :

zAccl -= 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

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

$》 python H3LIS331DL.py gt; python H3LIS331DL.py

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

步骤4:应用程序:

像H3LIS331DL一样的加速度计在游戏中经常发现其应用,并显示配置文件切换。该传感器模块还用于移动应用的高级电源管理系统中。 H3LIS331DL是三轴数字加速度传感器,与智能的片上运动触发中断控制器集成在一起。
       责任编辑:wv

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分