单片机+人体红外感应的防盗系统设计(仿真+源码+PCB文件+报告)

news2024/12/28 15:44:44

资料下载地址:单片机+人体红外感应的防盗系统设计(仿真+源码+PCB文件+报告)

1、功能介绍

(1)该设计包括硬件和软件设计两个部分。 (2)本红外线防盗报警系统由热释电红外传感器、报警器、单片机控制电路、LED控制电路及相关的控制管理软件组成。用户终端完成信息采集、处理、数据传送、功能设定、本地报警等功能。 (3)系统可实现功能。探测器工作时,当有人闯入时,热释电红外传感器将探测到动作,设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,经放大电路、比较电路送至门限开关,打开门限阀门送出TTL 电平至STC89C52单片机,经单片机处理运算后驱动执行报警电路使警号发声。 (4)红外线具有隐蔽性,在露天防护的地方设计一束红外线可以方便地检测到是否有人出入。此类装置设计的要点:其一是能有效判断是否有人员进入;其二是尽可能大地增加防护范围。当然,系统工作的稳定性和可靠性也是追求的重要指标。至于报警可采蜂鸣器报警。

2、原理图 

3、实物图

 4、仿真图

5、程序

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(tt==10)
          {tt=0; num++;}
        if((flag==5)&&(num%2==0))//布防15秒后会让flag=5 ,num为偶数灯亮
            hong=1;
        if((flag==5)&&(num%2==1))//布防15秒后会让flag=5 ,num为奇数灯灭
            hong=0;
        if((flag==2)&&(num%2==0))//按键布防键后flag等于2,num为偶数灯亮
              lv=1;
        if((flag==2)&&(num%2==1)) // 按键布防键后flag等于2,num为奇数灯灭
              lv=0;
        if((flag==2)&&(num==30))//布防时间,num=30即15秒,可以更改此实现布防延迟时间
           flag=4;

           
}

6、资料清单

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2266991.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络攻防实践

1. 学习总结 黛蛇蠕虫案例&#xff1a; 原理&#xff1a;利用系统漏洞&#xff0c;并集成攻击代码。其中&#xff0c;通过蜜罐技术并进行数据分析所获取的攻击场景如下&#xff1a; 外部感染源攻陷蜜罐主机 执行Shellcode后获取主机权限后连接控制命令服务器&#xff0c;获取F…

寒假准备找实习复习java基础-day1

CMD常用命令&#xff1a; java跨平台原理&#xff1a; JRE和JVM Java基本数据类型

MacOS安装Xcode(非App Store)

文章目录 访问官网资源页面 访问官网资源页面 直接访问官网的历史版本下载资源页面地址&#xff1a;https://developer.apple.com/download/more/完成APP ID的登陆&#xff0c;直接找到需要的软件下载即可 解压后&#xff0c;安装将xcode.app移动到应用程序文件夹。

Docker 安装mysql ,redis,nacos

一、Mysql 一、Docker安装Mysql 1、启动Docker 启动&#xff1a;sudo systemctl start dockerservice docker start 停止&#xff1a;systemctl stop docker 重启&#xff1a;systemctl restart docker 2、查询mysql docker search mysql 3、安装mysql 3.1.默认拉取最新版…

gitlab克隆仓库报错fatal: unable to access ‘仓库地址xxxxxxxx‘

首次克隆仓库&#xff0c;失效了&#xff0c;上网查方法&#xff0c;都说是网络代理的问题&#xff0c;各种清理网络代理后都无效&#xff0c;去问同事&#xff1a; 先前都是直接复制的网页url当做远端url&#xff0c;或者点击按钮‘使用http克隆’ 这次对于我来说有效的远端u…

RK356x bsp 7 - PCF8563 RTC调试记录

文章目录 1、环境介绍2、目标3、PCF85634、dts配置5、内核配置6、测试验证 1、环境介绍 硬件&#xff1a;飞凌ok3568-c开发板 软件&#xff1a;原厂rk356x sdk 2、目标 开发板断电后仍正常计时。 3、PCF8563 PCF8563 是由 NXP Semiconductors 公司生产的低功耗 CMOS 实时…

图研院 | 掌握前沿图技术,从 “Graph XAI” 课程起航

在如今数字化转型加速的时代浪潮下&#xff0c; 图数据库技术正成为众多领域突破创新的关键力量&#xff01; 你是否也渴望深入了解其背后的核心知识&#xff0c; 开启自己的图技术进阶之旅&#xff1f; 由机工社精心打造的系列大师课&#xff0c; 特邀国际级专家/学者师资…

Oracle考试多少分算通过?

OCP和OCM认证的考试及格分数并不是固定的&#xff0c;而是根据考试的难度和考生的整体表现来确定。对于OCP认证&#xff0c;考生需要全面掌握考试要求的知识和技能&#xff0c;并在考试中表现出色才有可能通过。而对于OCM认证&#xff0c;考生则需要在每个模块中都达到一定的水…

01.HTTPS的实现原理-HTTPS的概念

01.HTTPS的实现原理-HTTPS的概念 简介1. HTTPS的概念和安全性2. HTTPS的实现原理3. HTTPS和HTTP的区别4. OSI七层协议模型5. SSL和TLS的区别 简介 该系列文章主要讲述了HTTPS协议与HTTP协议的区别&#xff0c;以及HTTPS如何实现安全传输。内容分为三部分&#xff1a;HTTPS的实…

教师管理系统

大概功能&#xff1a; 1.显示所有教师 2.按姓名查找教师 3.按工号查找教师 4.增加教师 5.删除教师 6.退出 数据会保存到 txt 文件里面 姓名&#xff1a;必须是中文 手机号码&#xff1a;必须是11位&#xff0c;必须是数字 效果展示&#xff1a; 代码展示&#xff1a; Teache…

CSES-1687 Company Queries I(倍增法)

题目传送门https://vjudge.net/problem/CSES-1687#authorGPT_zh 解题思路 其实和倍增法求 LCA 是一样的…… 首先设 表示 号点的上面的第 个祖先是谁。 同倍增法&#xff1a; 然后&#xff0c;题目要求我们向上跳 个点。 枚举 &#xff08;从大到小&#xff0c;想想为…

自动驾驶控制算法-横向误差微分方程LQR前馈控制

本文是学习自动驾驶控制算法第六讲 前馈控制与航向误差以及前两节的学习笔记。 1 横向误差微分方程 以规划的轨迹作为自然坐标系&#xff0c;计算自车在轨迹上的投影点&#xff0c;进而计算误差&#xff1a; 如图所示&#xff0c;横向误差为 d d d&#xff0c;航向误差为 θ…

后端开发如何高效使用 Apifox?

Apifox 是一个 API 协作开发平台&#xff0c;后端、前端、测试都可以使用 Apifox 来提升团队的工作效率。对于后端开发者而言&#xff0c;Apifox 的核心功能主要包括四个模块&#xff1a;调用 API、定义 API、开发与调试 API 以及生成 API 文档。本文将详细介绍后端开发人员如何…

【Unity3D】ECS入门学习(六)状态组件 ISystemStateComponentData

当需要获知组件是否被销毁时&#xff0c;ECS是没有回调告知的&#xff0c;因此可以将组件继承于ISystemStateComponentData接口&#xff0c;这样即使组件的实体被销毁了&#xff0c;该组件本身是不会消失的&#xff0c;所以可以通过在组件实体销毁后&#xff0c;去设置状态组件…

LeetCode 19:删除链表的倒数第N 个结点

题目&#xff1a; 地址&#xff1a;https://leetcode.cn/problems/remove-nth-node-from-end-of-list/ 方法一&#xff1a; 方法二&#xff1a; 代码&#xff1a; package com.zy.leetcode.LeetCode_19;/*** Author: zy* Date: 2024-12-25-13:01* Description: 删除链表…

中学数学:一个函数值计算题

在数学的领域中&#xff0c;函数是一种描述变量之间关系的桥梁&#xff0c;它能够揭示出看似复杂现象背后的简洁规律。通过函数&#xff0c;我们可以预测、分析并解决实际问题。在这张图片中&#xff0c;我们看到了一位数学爱好者手写的解题过程&#xff0c;它展示了如何巧妙地…

kipotix4靶机实战

信息收集 1.判断靶机ip 原理&#xff1a;开靶机之前nmap扫一次网段&#xff0c;再开靶机之后扫一次&#xff0c;查看多出来的ip就是靶机ip ip192.168.98.1742.判断端口服务&#xff0c;系统版本 a.确定端口 b.-p指定端口进一步收集 c.信息筛选 1.端口&#xff1a;22,80,139,…

Xilinx FPGA的Bitstream比特流加密设置方法

关于Xilinx FPGA的Bitstream比特流加密设置方法更多信息可参阅应用笔记xapp1084。 使用加密bitstream分两个步骤&#xff1a; 将bitstream的AES密钥存储在FPGA芯片内将使用AES密钥加密的Bitstream通过SPI Flash或JTAG加载至FPGA芯片 AES密钥可以存储在两个存储区之一&#x…

菜鸟带新鸟——基于EPlan2022的部件库制作(3D)

设备逻辑的概念&#xff1a; 可在布局空间 中和其它对象上放置对象。可将其它对象放置在 3D 对象上。已放置的对象分到组件的逻辑结构中。 将此属性的整体标识为设备逻辑。可使用不同的功能创建和编辑设备逻辑。 设备的逻辑定义 定义 / 旋转 / 移动 / 翻转&#xff1a;组…

理解有放回和无放回抽样 (Python)

理解有放回和无放回抽样 (Python) 文章目录 一、说明二、放回抽样模型概念2.1 如何实现放回抽样2.2 使用 NumPy 进行替换抽样2.3 使用 Pandas 进行替换抽样 三、基本统计原理四、什么是无放回抽样4.1 使用 NumPy 进行无放回抽样4.1 数据科学中不重复抽样的例子 五、结论 一、说…