单片机+人体红外感应的防盗系统设计

发布者:创意探险最新更新时间:2022-01-17 来源: eefocus关键字:单片机  人体红外感应  防盗系统 手机看文章 扫描二维码
随时随地手机看文章

设计说明

1.根据系统功能要求并且考虑产品的性价比进行系统的整体方案设计,包括系统 的选型、所选芯片的功能、芯片外围电路的合理设计等。

2.系统硬件抗干扰技术与软件抗干扰技术的研究与实现。

3.系统硬件与软件的联合仿真与调试。


本设计是针对普通的家庭防盗而设计,与相似功能的系统相比,具有如下的创新:

(1)移植性高。本设计考虑现代家居的特点,参考了大多数的被盗情况,适合任何家庭使用。

(2)成本低。本设计采用单片机作为控制芯片,所需要的外围电路较少,且所有子电路均能从市场上购买,制造成本低。

(3)功能扩展性好。本设计稍加修改就可增加检查火灾或煤气泄漏等功能,发展前景很大。

(4)安全性高。本设计考虑到其安全性,采用全封闭安装,致使窃贼无法破坏其装备,具有良好的安全性。


制作基于51单片机和人体红外感应模块的的防盗系统电路原理图如下:

实物图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

防盗系统仿真原理图如下(proteus仿真工程文件)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Altium Designer画的防盗系统电路原理图和PCB图如下:

单片机程序参考代码如下:


#include

#define uchar unsigned char

#define uint unsigned int

sbit huang=P2^0;//黄灯

sbit lv=P2^2;//绿灯

sbit hong=P2^4;//红灯


sbit hongwai=P1^0;//热释电

sbit butter=P2^6;//蜂鸣器低电平开蜂鸣器


sbit baojing=P1^1//直接报警按键;

sbit bufang=P1^7;//布防按键

sbit quxiao=P3^4;//取消按键

uchar tt=0;//定时器变量

uchar num=0;//定时的计时变量

uchar flag=0;//标志位

void timer1init(void)//定时器1,16位方式2

{ EA=0;

TMOD=0x11;//设置定时器0为工作方式1

TH0=(65536-10000)/256;

TL0=(65536-10000)%256;

ET0=1;//开定时器0中断

TR0=1;//启动定时器0

tt=0;//

EA=0;//关总中断

}

void delay(uint z)//延时函数

{

uint x,y;

for(x=z;x>0;x–)

for(y=110;y>0;y–);

}

void main()//主函数

{

huang=0;//初始黄灯亮

lv=0;//初始绿灯亮

hong=0;//初始红灯亮

timer1init();//初始化定时器

while(1)

{

if(!baojing)//如果直接报警键被按下

{

delay(5);//延时消抖

if(!baojing)//判断报警键是不是被按下

{

hong=1;//红灯亮

lv=0; //绿灯灭

flag=7;//标志位等于7

butter=0;//蜂鸣器响

EA=0;//关中断

}

while(!baojing);//判断按键是不是弹开

delay(5);//如果弹开延时消抖

while(!baojing);//弹开后跳出程序

}

if((!bufang)&&(flag<4))//在初始状态和按下取消键后可以进去这个函数

{

delay(5);//延时消抖

if(!bufang)//如果布防被按下

{

EA=1; //开定时器

flag=2;//另=2

}

while(!bufang);//布防键是不是弹开

delay(5);//延时

while(!bufang);//布防键弹开

}

if(!quxiao)//如果取消键按下

{

delay(5);//延时消抖

if(!quxiao)//取消键是不是按下

{

flag=3;//FLAG等于3

butter=1;//蜂鸣器不响

tt=0;//

num=0;//定时初始0

EA=0;//关中断

lv=0;//绿灯灭

hong=0;//红灯灭

}

while(!quxiao);//取消按键抬开

delay(5);//延时消抖

while(!quxiao);//如果弹开跳出


}

if(flag==4)//如果布防时间到

{

tt=0;//清计数为0

EA=0;//关中断

num=0;//记的秒数清零

lv=1;//关绿灯

flag=5;//flag等于5


}

if(hongwai)//如果感应到人黄灯亮

huang=1;

else huang=0;//感应不到人黄灯灭


if(flag==5)//如果flag等于5

{

if(hongwai)//如果感应到人

{

butter=0;//蜂鸣器响

EA=1;//开中断

}

}


}

}


void time0() interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

tt++;

if(tt10)

{tt=0; num++;}

if((flag5)&&(num%20))//布防15秒后会让flag=5 ,num为偶数灯亮

hong=1;

if((flag5)&&(num%21))//布防15秒后会让flag=5 ,num为奇数灯灭

hong=0;

if((flag2)&&(num%20))//按键布防键后flag等于2,num为偶数灯亮

lv=1;

if((flag2)&&(num%21)) // 按键布防键后flag等于2,num为奇数灯灭

lv=0;

if((flag2)&&(num==30))//布防时间,num=30即15秒,可以更改此实现布防延迟时间

flag=4;

}

关键字:单片机  人体红外感应  防盗系统 引用地址:单片机+人体红外感应的防盗系统设计

上一篇:自制小型PM2.5环境检测系,实测效果还可以
下一篇:51单片机驱动 LCD1602液晶显示系统

推荐帖子

ARM架构上网本电源解决方案
ARM架构上网本电源解决方案链接:http://www.eet-china.com/ART_8800590708_617703_TA_7cb3789c.HTMARM架构上网本电源解决方案
pic 移动便携
法国电信IPTV商业模式
newlooking 移动便携
终于可以踏上回家的行程,我兴奋啊!祝福兄弟姐妹们新年快乐!全家幸福!
终于可以踏上回家的行程,我兴奋啊!祝福兄弟姐妹们新年快乐!全家幸福!终于可以踏上回家的行程,我兴奋啊!祝福兄弟姐妹们新年快乐!全家幸福!我接,我接。一路顺风!~~~~~~~~~~给我的分不能少于我的祝福吧,嘿嘿。~~~~~~~~~~一路顺风,预祝新年快乐.一路顺风啊!我明天也要开始行程了,先坐再站再坐。吼吼。回复内容太短了!接分接分,新年快乐!jf!!!!!几位大侠都出来山分了祝大家新年快乐!!!接分祝福回复内容太短
ljz1023 嵌入式系统
stm32 Keil5.15+GCC 问题求助
最近在捣鼓STM32和RTT实时操作系统,但部分结构体发现ARMCC编译器不认,所以更换了GCC编译器,也已经更换了keil5自带gcc的startup...启动文件,但linking的时候会报错:Rebuildtarget'Target1'compilingtrymav.c...assemblingstartup_stm32f10x_md.s...linking..../startup_stm32f10x_md.o:Infunction`LoopFillZero
kevinrobot ARM技术
【2024 DigiKey 创意大赛】二月柳絮大作战项目-06传感器数据显示在液晶屏上
成功获取传感器数据后,即可进一步操作LCD屏幕相关参数lvgl初始化成功成功传感器获取数据下面进行lvgl相关操作:创建两个标签显示传感器数据staticvoidlv_example_label(void){label_PM25=lv_label_create(lv_scr_act());/*创建PM2.5数据显示标签*/lv_label_set_text(label_PM25,"");/*设置文本*//
Maker_kun DigiKey得捷技术专区
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved