美文网首页电子电路与传感信号
树莓派连接人体红外感应模块HC-SR501

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

作者: ATangYaaaa | 来源:发表于2018-10-01 16:46 被阅读0次

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

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

    1. 传感器特点

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

    工作电压:3~5V

    静态电流:50μA

    硬件接口:数字信号输出

    工作温度:0℃~+70℃

    电平输出:4V

    无信号输出:0.4V

    感应角度:110度

    感应距离:7米

    外形尺寸:28x36mm

    2. 接线

    图二 树莓派和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

        本文链接:https://www.haomeiwen.com/subject/soynoftx.html