Raspberry Pi和手势传感器控制LED

在整个教程中,您将了解在Raspberry Pi上安装库以及如何使用它们来帮助您编写代码的基础知识。 在本教程中,我们将使用Python编程语言对Raspberry Pi进行编程。 因此,对于从Arduino迁移的人们来说,学习LED控制是开始Raspberry Pi项目并更熟悉Python的最好方法。

硬件

软件

工作方式

Raspberry Pi引脚图

RPi的工作方式与Arduino类似,但是两者之间存在一些差异。 所有的Raspberry Pi开发板都使用Python作为主要语言,但也支持Ruby和C,而Arduino仅支持C。此外,对于希望进入电子项目的初学者来说,RPi更加昂贵且更加复杂。 但是,由于其更高的处理能力,它一次可以处理多个程序。

手势传感器

它利用四个定向光电二极管来感应反射的IR能量,以将物理运动信息(即速度,方向和距离)转换为数字信息。从其数据表中了解更多信息。

硬件设置

手势传感器连接

LED连接

Raspberry Pi设置

启用I2C

为了使手势传感器能够正常工作,我们必须通过Raspberry Pi配置启用I2C。 这也使我们可以使用smbus库。 假设您已经连接到Raspberry Pi,请单击左下角的raspberry图标,将鼠标悬停在“首选项”上,然后单击“ Raspberry Pi配置”。

当窗口弹出时,单击“接口”并确保启用了I2C。完成后,单击“确定”。

安装所需的库

代码

对于代码,您可以在计算机上通过Python IDLE,Notepad ++或任何支持Python的文本编辑软件或IDE进行处理,然后通过VNC Viewer将其传输到Raspberry Pi。 您也可以在RPi本身内部进行编码,我发现这更容易。

LEDcontrol.py代码

要运行代码,请打开终端并使用命令cd 将目录更改为文件所在的目录,然后运行命令python .py。

代码分解

库导入

通道和引脚设置

接下来,我们将SMBus端口设置为默认值1,然后将手势传感器设置为该总线。 之后,我们将GPIO引脚模式设置为遵循板号以便于识别,将引脚7设置为来自手势传感器的输入,并将引脚8、10、12和16设置为4个LED的输出。 状态1-4最初设置为false,以指示LED最初将处于关闭状态。

打印字典

这部分是一个字典,其中手势传感器检测到的每个手势等同于更短,更易于理解的单词,稍后将被打印出来。

手势检测循环

GPIO.add_event_detect(7,GPIO.FALLING)添加一个事件,该事件将在检测到下降沿时触发; 换句话说,当在手势传感器上检测到手势时,它将把手势发送到引脚7。然后设置其接近阈值并启用它。 然后创建一个无限的while循环来模拟一个循环,该循环可连续检测手势,一旦完成,它将进入if语句。 在if语句内部,motion = apds.readGesture()读取检测到的手势并将其存储在变量中。 接下来,它将使用上面制作的词典格式打印动作,然后根据动作打开或关闭LED。

详情参阅 - 亚图跨际

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值