障碍物报警实验


项目介绍

在前面实验课程中,我们使用一个输入模块控制另一个输出模块。在这一实验中,我们还是用一个模块控制另一个模块。

生活中,我们可以利用一个检测传感器控制一个有源蜂鸣器响起或者LED点亮,做声光报警设备,如检测磁场(干簧管)、检测倾斜(倾斜模块)等等。这一实验课程中我们将避障传感器和有源蜂鸣器模块组合实验,实现避障传感器检测到障碍物时有源蜂鸣器响起的效果。

实验组件

ESP32 Plus主板
ESP32 Plus主板 x1
Keyes 避障传感器
Keyes 避障传感器 x1
Keyes 有源蜂鸣器模块
Keyes 有源蜂鸣器模块 x1
XH2.54-3P 转杜邦线母单线
XH2.54-3P 转杜邦线母单线 x2
USB线
USB线 x1

实验接线图

障碍物报警实验接线图

在线运行代码

1 2 3 4 5 6 7
from machine import Pin
import time

buzzer = Pin(13, Pin.OUT)
sensor = Pin(12, Pin.IN)
while True:
    buzzer.value(not(sensor.value()))
    time.sleep(0.01)

实验结果

按照接线图正确接好模块,用USB线连接到计算机上电,单击 运行按钮 来执行程序代码。代码开始执行,当避障传感器检测到障碍物时,避障传感器上SLED灯亮起,同时有源蜂鸣器发出声响;当避障传感器检测不到障碍物时,有源蜂鸣器停止发出声响。

单击 停止按钮 或按Ctrl+C退出程序。

代码说明

代码说明
buzzer = Pin(13, Pin.OUT)创建蜂鸣器对象,设置引脚13为输出模式。
sensor = Pin(12, Pin.IN)创建避障传感器对象,设置引脚12为输入模式。
buzzer.value(not(sensor.value()))当传感器检测到障碍物时(低电平),蜂鸣器响起(高电平)。
time.sleep(0.01)延时10毫秒,控制检测频率。