跳过主要内容

如何使用运动传感器与树莓皮皮

基本输入输出
(图片来源:Tom’s Hardware)

Raspberry Pi Pico有许多GPIO引脚,我们可以通过简单地在代码中配置引脚来使用它们作为输入或输出。在本指南中,我们将学习如何使用输入(在本例中是传感器)和LED形式的输出。在本指南的最后,我们将有一个简单的16行MicroPython运动检测器。

在处理这个项目之前,在我们的Raspberry Pi Pico设置指南中设置和测试你的Raspberry Pi Pico将是有益的.我们也使用该指南中的电路作为本指南的基础。

在本指南中,我们将学习如何使用树莓Pi Pico的GPIO管脚作为数字输入和输出,使用高和低作为简单的控制方法。

设置

这个项目的电路增加了一个额外的组件,一个在家庭安全系统中常用的被动红外(PIR)传感器,用于检测移动。在这个项目中,它将执行相同的功能,我们的代码将触发一个LED打开时,传感器报告运动。

将传感器添加到项目中需要:

  • 一半大小的面包板
  • 一个领导
  • 一个330欧姆的电阻
  • PIR传感器
  • 3 x母到公跳线

1.将树莓皮皮卡插入面包板所以它位于中央通道之上。确保Micro USB端口在面包板的一端。

(图片来源:Tom’s Hardware)

2.插入一个330欧姆电阻插入面包板时,一条腿应与GND(引脚38)对齐。另一条腿应插在面包板的横导轨上。这为我们提供了一个GND轨道,该轨道中的所有引脚都连接到GND。

(图片来源:Tom’s Hardware)

3.插入一个领导,长腿(阳极)插入接线板在引脚34处,短腿插入GND轨道。电路现在建成了。

(图片来源:Tom’s Hardware)

PIR传感器有三个引脚。VCC, OUT和GND。VCC引脚用于从树莓Pi Pico提供3.3V的电源。

(图片来源:Tom’s Hardware)

4.使用跳线,将VCC从PIR连接到3.3V引脚,(引脚37),它就在电阻旁边。

(图片来源:Tom’s Hardware)

5.使用另一跳线将PIR的OUT引脚连接到21引脚皮科。

(图片来源:Tom’s Hardware)

6.将PIR的GND引脚连接到GND导轨上案板。

基本输入输出

(图片来源:Tom’s Hardware)

7.电路建成后,将树莓派Pico连接到你的电脑上使用微型USB引线。打开tonny应用程序。

(图片来源:Tom’s Hardware)

现在,我们开始对项目进行编码,并在Getting Started项目中使用的代码的基础上构建一个输入、PIR传感器和检查传感器是否被触发的条件测试。

(图片来源:Tom’s Hardware)

1.从机器库中导入Pin类,然后导入utime。这些库使我们能够分别与GPIO通信,并控制项目的进度。

从机器进口引脚进口utime

2.创建一个对象“led”它用于在物理GPIO引脚和我们的代码之间创建链接。在这种情况下,它将GPIO 28(对应板上的物理引脚34)设置为输出引脚,电流将从Raspberry Pi Pico GPIO流向LED。然后我们使用对象来指示GPIO管脚拉低。换句话说,这将确保GPIO引脚在项目开始时被关闭。

引脚(28,引脚. out)

3.创建另一个对象“pir”.该对象用于在我们的代码和用于PIR的OUT连接的GPIO引脚之间创建连接。默认情况下,PIR传感器OUT拉高,当检测到移动时,PIR将OUT引脚拉低。为了保证传感器正常工作,我们将引脚设为输入,然后将GPIO引脚拉高。

pir = Pin(16, Pin。在Pin.PULL_UP)

4.确保LED在项目开始时关闭,然后等待三秒钟再继续。这两条线确保我们不会看到来自LED的“假触发”,并在使用前给传感器一些时间来固定。

utime.sleep led.low () (3)

5.在while True循环中,一个没有结束的循环,使用打印函数打印GPIO管脚的当前值用于PIR传感器。如果没有移动,返回1;如果有移动,返回0。

而真正的:打印(pir.value ())

6.创建一个进行检查的条件测试存储在pir.value中的值。如果该值为0,则表示检测到移动打印一条消息到Python Shell.然后把LED打开(高)和暂停5秒钟这时,LED灯一直亮着。

if pir.value() == 0: print("LED On") LED .high() utime.sleep(5)

7.条件测试的最后一部分在没有检测到移动时被激活。使用Else条件将消息打印到Python Shell中,然后添加一行以关闭LED(低)暂停0.2秒.然后循环重复,再次运行条件测试。

else: print("等待移动")lead .low() utime.sleep(0.2)

8.单击Save并选择SaveMicroPython设备(Raspberry Pi Pico)的代码。将文件命名为pip .py并单击Ok为了节省。您的代码应该如下所示。

从机器进口引脚进口utime led =引脚(28,引脚. out) pir =引脚(16,引脚。在Pin.PULL_UP)utime.sleep led.low () (3)而真正的:打印(pir.value ())if pir.value() == 0: print("LED On") LED .high() utime.sleep(5)else: print("等待移动")lead .low() utime.sleep(0.2)

9.要运行代码,点击绿色播放/箭头按钮Python Shell会更新为“等待移动”和“LED On”。PIR传感器非常敏感,一开始你可能会看到一些错误的触发器,但传感器会稳定下来。

(图片来源:Tom’s Hardware)
还没有评论 来自论坛的评论