人体红外传感器HC-SR501
HC-SR501
① 调节灵敏度 逆时针低 ② 调节延时 逆时针低
- 调节距离电位器逆时针旋转,感应距离减小(约 3 米),反之,感应距离增大(约 7 米)
- 调节延时电位器逆时针旋转,感应延时减短(约 0.5S),反之,感应延时加长(约300S)
③ 触发方式选择
-
跳帽接上两个针脚(如上图),为H(可重复触发),在延时时段内,若感应到,将一直保持高电平 跳帽接下两个针脚,为L(不可重复触发),延时结束,自动从高电平转到低电平 当感应到人体,其IO输出3.3V高电平
模块参数:
-
工作电压:DC5V至20V 静态功耗:65微安 电平输出:高3.3V,低0V 延时时间:可调(0.3秒~18秒) 封锁时间:0.2秒 触发方式:L不可重复,H可重复,默认值为H(跳帽选择) 感应范围:小于120度锥角,7米以内 工作温度:-15~+70度
参考:
PIR传感的模拟信号经BISS0001运算放大,输出到IO。
试验
试验中探测IO电平3.56v左右。
试验设置感应led接线
树莓派样例
import RPi.GPIO as GPIO import time def init(): GPIO.setwarnings(False) GPIO.setmode(GPIO.BCM) GPIO.setup(23, GPIO.IN) GPIO.setup(16,GPIO.OUT) GPIO.output(16, GPIO.LOW) pass def led(): GPIO.output(16, GPIO.HIGH) time.sleep(0.5) print "detct people led turn on" def detct(): for i in range(1, 31): if GPIO.input(23) == True: print time.strftime(%Y-%m-%d %H:%M:%S,time.localtime(time.time()))+" Someone is closing!" led() else: GPIO.output(16, GPIO.LOW) print time.strftime(%Y-%m-%d %H:%M:%S,time.localtime(time.time()))+" No one!" time.sleep(2) time.sleep(2) init() detct() GPIO.output(16, GPIO.LOW) GPIO.cleanup()
root@ton_tom:/home/python # python hc-sr501.py 2022-02-14 17:26:08 Someone is closing! detct people led turn on 2022-02-14 17:26:10 Someone is closing! detct people led turn on 2022-02-14 17:26:13 No one! 2022-02-14 17:26:15 No one! 2022-02-14 17:26:17 No one!