微型碰撞开关传感器,是一种很小的物理力启动电子开关。常用于电梯的安全开关和水平测试、微波炉的门联锁装置、撞击感应开关,智能小车防碰撞等等应用。传感器探头前方如果受到撞击后将输出高电平信号。
| 树莓派主板 | 碰撞传感器模块 |
| 5V | VCC |
| GND | GND |
| GPIO18 | OUT |


已知传感器收到撞击后OUT引脚会输出高电平,那么我们可以写一个Python程序,通过实时监测该引脚是否有高电平信号输入来判断碰撞状态!
import RPi.GPIO as GPIO
import time
# 配置GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO_PIN = 18
# 初始化引脚为输入模式,启用下拉电阻
GPIO.setup(GPIO_PIN, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
try:
print("监测系统启动中...")
last_status = None # 记录上次状态
while True:
# 读取当前引脚状态
current_status = GPIO.input(GPIO_PIN)
# 只在状态变化时更新显示
if current_status != last_status:
if current_status == GPIO.HIGH:
print("\r当前状态:正常状态", end="", flush=True)
else:
print("\r当前状态:受到撞击 ", end="", flush=True)
last_status = current_status
time.sleep(0.1) # 降低CPU占用率
except KeyboardInterrupt:
print("\n监测已终止")
finally:
GPIO.cleanup()
执行程序后在无碰撞下显示: 正常状态!

传感器受到撞击后显示:受到撞击
