利用树莓派制作人体感应监控器

转载请注明出处,谢谢。


设备:

树莓派3B 1台

CPI接口摄像头 1个

HC-SR501红外人体感应模块 1个

公对母杜邦线 3根


第一步:

将摄像头安装到树莓派上。在树莓派上设置摄像头为可用:

输入命令:

sudo raspi-config

利用树莓派制作人体感应监控器_第1张图片

然后选择摄像头设置成enable,然后重启树莓派。


第二步:

将红外人体感应模块插上杜邦线,一共三根GPIO针脚,中间的为信号线,左右两侧分别为5V电源输入和GRAND。

注意5V电源输入和GRAND插在树莓派GPIO针脚上时千万不要插错!否则原件可能会被烧毁。我自己之前就插反了,烧了一个温度传感器

利用树莓派制作人体感应监控器_第2张图片

图中左侧的针脚是正极,右侧针脚是负极,中间针脚是信号针

中间的信号线插在板子上任意一个信号针脚即可

利用树莓派制作人体感应监控器_第3张图片

距离和灵敏度阀门可根据自己实际情况调节,根本不需要螺丝刀,手指甲就能转动。图中距离和灵敏度都是最大的状态


另外这个元件还有两个模式L、H模式:

L模式是不可重复触发,当探测到一次人体时,输出一次高电平,保持一段时间恢复低电平,在此期间如果还是检测到了人体也不再延长这个高电平的时间。等到低电平的封锁时间(前面默认是2.5S)过了以后才又开始检测。

H模式是可以重复触发,如果一直感应到人体时,会一直输出高电平,直到探测不到人体后保持小段时间然后恢复低电平。

利用树莓派制作人体感应监控器_第4张图片

图中这个是H模式。


第三步:

终于开始写码啦,这里所使用的语言是Python3

import RPi.GPIO as GPIO
import time
import picamera

#初始化
def init():
    #设置不显示警告
    GPIO.setwarnings(False)
    #设置读取面板针脚模式
    GPIO.setmode(GPIO.BOARD)
    #设置读取针脚标号
    GPIO.setup(12,GPIO.IN)
    pass
 
def detct():
    while True:
    	curtime = time.strftime('%Y-%m-%d-%H-%M-%S',time.localtime(time.time()))
        #当高电平信号输入时报警
        if GPIO.input(12) == True:
        	alart(curtime)
        else:
            continue
        time.sleep(3)

def alart(curtime):
    print curtime + " Someone is coming!"
    #根据时间获取图像
    camera.capture(curtime + '.jpg')

#声明摄像头
camera = picamera.PiCamera()

time.sleep(2)

init()
detct()
GPIO.cleanup()



第四步:执行代码

python3 xxx.py


这样就基本完成了,剩下的最后一步就是如何摆姿势了


你可能感兴趣的:(开发相关)