电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 嵌入式系统 >> PIC单片机 >> 正文

使用PIC单片机开发的被动红外传感器模块的报警器

作者:佚名    文章来源:本站原创    点击数:    更新时间:2022/5/6

  在本文中,单片机开发工程师们分享了一个使用PIC单片机开发的被动红外(PIR)传感器模块的报警器。在这个方案中,我们使用PIC12F635单片机进行开发,持续监控传感器模块的输出,并在其激活时打开蜂鸣器。

  一、被动红外(PIR)报警器方案的原理

  某些半导体材料具有暴露于热红外辐射时会产生表面电荷的特性。这种现象称为热电。被动红外(PIR)传感器模块的工作原理相同。人体以红外线辐射的形式辐射热量,最大约为9.4微米。人体的存在会导致热释电传感器感应到的周围环境的IR轮廓发生突然变化。PIR传感器模块在板上具有仪表电路,该仪表电路将该信号放大到适当的电压电平以指示运动的检测。

  PIR传感器需要大约10到60秒的初始稳定时间才能正常运行。在这段时间内,传感器要熟悉周围的环境,并应避免其视野内的任何运动。PIR传感器的典型范围为6米,其设计旨在适应缓慢变化的条件,例如随着时间的流逝,周围温度分布的逐渐变化。但是,传感器会响应任何轮廓的突然变化(例如,人体运动)。这就是为什么不应将PIR传感器模块放置在加热器,交流电源插座或任何会在周围环境中产生快速变化的地方的原因。

  PIR传感器模块通常具有3针连接:Vcc,输出和接地。引脚排列可能会有所不同,因此我建议查看制造商的数据表以确认引脚。有时候,他们确实在板上靠近引脚的地方有标签。我所拥有的一个可以做到,它可以通过5-12V电源供电,因为它具有自己的稳压器。当检测到运动时,输出变高。

  此外,它还有3针跳线选择,可用于单触发或连续触发输出模式。这两个位置带有标签H和L。当跳线位于H位置时,当反复重新触发传感器时,输出将保持高电平。在位置L,每次触发传感器,输出就变高和变低。因此,在此模式下,连续运动将产生重复的高/低脉冲。传感器模块的前部具有菲涅耳透镜,可将红外光聚焦到传感器元件上。

  二、红外报警器方案电路图

  该红外报警器方案的电路图非常简单,这里使用4节AA电池为电路供电,可提供6V电源。串联使用一个二极管将电压降至5.4V,因为PIC单片机的工作电压应低于5.5V。此外,在电源极性相反的情况下,该二极管还可以为电路提供保护。我已经使用NI-MH可充电电池(可提供4.8V)对电路进行了测试,并且可以正常工作,但是我建议使用碱性电池(每个1.5V)以提高性能。你也可以使用9V电池,但是电路中需要LM7805稳压器IC。

  PIR传感器模块的输出通过PIC12F635的GP5(引脚2)进行监控。当检测到运动时,此输出约为3.3V(我的传感器模块的板上有3.3V稳压器IC)。你仍然可以使用该电压作为PIC12F635的有效逻辑高电平,但我更喜欢使用该电压来驱动NPN晶体管(BC547)的基极,以便在集电极处获得逻辑电压的完整摆幅。现在,单片机监视晶体管的集电极上的电压。在正常情况下,晶体管截止,集电极输出为逻辑高电平(+5V)。当检测到运动时,传感器模块的高输出使晶体管饱和,并且集电极处的电压下降至逻辑低。触发器的跳线选择在H位置,因此只要运动存在,传感器的输出将保持有效。注意,PIC12F635单片机使用4.0 MHz的内部时钟源。在本方案中,MCLR功能被禁用,WDT为OFF。

  使用PIC单片机开发的被动红外传感器模块的报警器

  LED通过串联的限流电阻连接到端口GP4。电源打开时,LED闪烁3次。这表示系统已启动。端口引脚GP2驱动压电蜂鸣器。压电蜂鸣器在其谐振频率处提供最大的输出声压。我使用的压电蜂鸣器是EFM-290ED,其谐振频率为3.4±0.5 KHz。玩了一点之后,我发现最大的输出声音约为3725 Hz。尽管规范说工作电压为7-12V,但仅用5V供电时会产生很大的声音。

  该方案用C语言编写,并使用MikroC Pro for PIC进行编译。首次打开电源时,LED闪烁3次,表明系统已打开电源。然后,单片机等待60秒钟,然后开始监视PIR传感器输出。需要注意的是,首次开启电源时,PIR传感器需要此等待一小会时间才能稳定下来。当单片机检测到传感器被触发时,它以3725 Hz方波驱动压电蜂鸣器。MikroC具有用于生成声音的内置库(Sound_Play())。另一个需要注意的问题是当感应到运动时你想要让警报响多长时间,这取决于你对单片机进行编程的设置。由于传感器处于重新触发模式,因此只要持续感测到运动,蜂鸣器就会保持打开状态。如果运动消失,并且传感器输出变为逻辑低电平,则蜂鸣器不会立即停止,但仍会打开约10秒钟,但频率略有不同(3570 Hz)。如果再次检测到运动,它将以其峰值谐振频率(3725 Hz)驱动压电蜂鸣器。

  三、红外报警器方案源代码

  sbit Sensor_IP at GP5_bit; // sensor I/P

  sbit LED at GP4_bit; // LED O/P

  unsigned short trigger, counter;

  void Get_Delay(){

  Delay_ms(300);

  }

  void main() {

  CMCON0 = 7;

  TRISIO = 0b00101000; // GP5, 5 I/P‘s, Rest O/P’s

  GPIO = 0;

  Sound_Init(&GPIO,2);

  // Blink LED at Startup

  LED = 1;

  Get_Delay();

  LED = 0;

  Get_Delay();

  LED = 1;

  Get_Delay();

  LED = 0;

  Get_Delay();

  LED = 1;

  Get_Delay();

  LED = 0;

  Delay_ms(60000); // 45 Sec delay for PIR module stabilizaTIon

  counter = 0;

  trigger = 0;

  do {

  while (!Sensor_IP) { // Sensor I/P Low

  Sound_Play(3725, 600);

  Delay_ms(500);

  trigger = 1;

  counter = 0;

  }

  if (trigger) {

  Sound_Play(3570, 600);

  Delay_ms(500);

  counter = counter+1;

  if(counter == 10) trigger=0;

  }

  }while(1);

  } // End main()

Tags:PIC单片机,红外传感器,报警器  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询