树莓派连接人体红外感应模块HC-SR501

人体时刻发出9.6微米的红外波段的辐射,人体红外感应模块HC-SR501就是为此而设计的。

本文来自于牛人技术网某大神。

1. 传感器特点

传感器采用PCB板封装,有三个针脚引出,其中两端的是用来供电的正极和负极而中间的则是电平信号输出。感应的灵敏度可以通过PCB板上的电位器来进行条件一般在7米左右的感应距离,最大是10米。

工作电压:3~5V

静态电流:50μA

硬件接口:数字信号输出

工作温度:0℃~+70℃

电平输出:4V

无信号输出:0.4V

感应角度:110度

感应距离:7米

外形尺寸:28x36mm

2. 接线


树莓派连接人体红外感应模块HC-SR501_第1张图片
图二 树莓派和HC-SR501接线图

3. 程序部分

# -*- coding:utf-8 -*-

import RPi.GPIO as GPIO

import time

GPIO.setmode(GPIO.BOARD)

GPIO_PIR = 11 //定义GPIO接口

print "PIR Module Test (CTRL-C to exit)"

GPIO.setup(GPIO_PIR,GPIO.IN) #设置GPIO模式为输入模式

Current_State = 0

Previous_State = 0

try:

    print "Waiting for PIR to settle ..."

    while GPIO.input(GPIO_PIR)==1://设置GPIO为1

        Current_State = 0

        print "开始准备..."//此处可以终止测试

    while True ://测试对象状态

        Current_State = GPIO.input(GPIO_PIR)

        if Current_State==1 and Previous_State==0:

            print "测试有红外对象 "

            Previous_State=1

        elif Current_State==0 and Previous_State==1:

            #重新进入准备状态

            print "继续准备中... "

            Previous_State=0

        time.sleep(0.01)//等待10毫秒

except KeyboardInterrupt:

    print "退出"

GPIO.cleanup()//重置GPIO接口

粗略转载,已在树莓派上实现,python缩进格式可能有问题,以后要修改再慢慢改吧。

你可能感兴趣的:(树莓派连接人体红外感应模块HC-SR501)