您好,欢迎来到伴沃教育。
搜索
您的当前位置:首页正文

基于单片机的红外报警器的设计

来源:伴沃教育
.

微机原理与单片机系统课程设计

评语: 考勤10分 守纪10分 过程30分 设计报告30分答辩20分 总成绩(100分)

专 业: 班 级: 姓 名:

学 号: 指导教师: 兰州交通大学自动化与电气工程学院

2014 年 12 月 31 日

..

.

基于51单片机的红外防盗报警器的设计

1设计说明 1.1设计目的

该设计以单片机AT89C51芯片为核心,加上必要的外围电路,构成了一个基于单片机的红外线防盗报警器。功能主要通过软件编程来实现,降低了硬件电路的复杂性和制作成本。此外,设计中所采用的红外线是不可见光,有很强的隐蔽性和保密性,以满足现代人们住宅防盗的需要。

1.2设计要求

该设计要求当热释电红外线传感器探测到人体辐射的红外线时,单片机控制电路启动声光报警并显示报警次数。此外,用户还可以设定报警时间并手动解除报警。

1.3设计方法

该设计以AT89C51单片机为核心,由时钟电路、复位电路、外部触发电路、报警时间选择电路、声光报警电路、报警次数显示电路和中断报警电路共同组成报警系统。系统具有显示报警次数,设定报警时间,手动解除报警的功能。

2 设计方案及原理 2.1设计方案简述

该设计使用AT89C51单片机芯片控制电路,通过热释电红外传感器采集外部触发信号,采用7段LED数码管显示报警次数,采用蜂鸣器和红色发光二极管实现声光报警,手动解除报警功能由单片机外部中断实现,报警时间由单片机内部定时器实现。

2.2 热释电红外传感器简单介绍

热释电红外线(PIR)传感器是80年代发展起来的一种新型高灵敏度探测元件。是一种能检测人体发射的红外线而输出电信号的传感器,它能组成防入侵报警器或各种自动化节能装置。它能以非接触形式检测出人体辐射的红外线能量的变化,并将其转换成电压信号输出。将这个电压信号加以放大,便可驱动各种控制电路。

2.3 PIR的原理特性

热释电红外线传感器主要是由一种高热电系数制成的探测元件,在每个探测器内装入一个或两个探测元件,并将两个探测元件以反极性串联,以抑制由于自

..

.

身温度升高而产生的干扰。由探测元件将探测并接收到的红外辐射转变成微弱的电压信号,经装在探头内的场效应管放大后向外输出。

人体辐射的红外线中心波长为9--10um,而探测元件的波长灵敏度的范围在0.2--20um范围内几乎稳定不变。在传感器顶端开设了一个装有滤光镜片的窗口,这个滤光片可通过光的波长范围为7--10um,正好适合于人体红外辐射的探测,而对其它波长的红外线由滤光片予以吸收,这样便形成了一种专门用作探测人体辐射的红外线传感器。一旦人侵入探测区域内,人体红外辐射通过部分镜面聚焦,并被热释电元接收,但是两片热释电元接收到的热量不同,热释电也不同不能抵消,经信号处理而输出电压信号。

2.4系统组成框图

从设计的要求来分析该设计须包含如下结构:热释电红外传感探头电路、报警电路、单片机、复位电路及相关的控制管理软件组成;它们之间的构成框图如图1总体设计框图所示:

时钟电路报警次数显示电路复位电路AT89C51外部触发电路发光报警电路声音报警电路报警时间选择电路 报警中断电路

图1 总体设计框图

处理器采用51系列单片机AT89C51。整个系统是在系统软件控制下工作的。设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,送至门限开关,打开门限阀门送出TTL 电平至AT89C51单片机。在单片机内,经软件查询、识别判决等环节实时发出入侵报警状态控制信号。驱动电路将控制信号放大并推动声光报警设备完成相应动作。声光报警10s钟后由定时器实现自动消除报警,也可手动解除报警。

3硬件设计 3.1总体设计思路

本设计包括硬件和软件设计两个部分。模块划分为数据采集、键盘控制、报警等子模块。电路结构可划分为:热释电红外传感器、报警器、单片机控制电路、

..

.

LED控制电路及相关的控制管理软件组成。用户终端完成信息采集、处理、数据传送、功能设定、本地报警等功能。

就此设计的核心模块来说,单片机就是设计的中心单元,所以此系统也是单片机应用系统的一种应用。单片机应用系统也是有硬件和软件组成。硬件包括单片机、输入/输出设备、以及外围应用电路等组成的系统,软件是各种工作程序的总称。单片机应用系统的研制过程包括总体设计、硬件设计、软件设计等几个阶段。

3.2系统硬件电路的选择及说明

在本设计中用到如下器件: AT89C51芯片、热释电红外线传感器、LED数码管、发光二极管、按键、开关、蜂鸣器等。其中D6是正常工作指示灯,D1—D5起报警指示作用,当RXD引脚置低电平时,D1—D5亮红灯开始报警,同样,TXD引脚置高电平时蜂鸣器开始工作。电路设有2个按键,S1键作为手动解除报警键, S2键作为电路复位键。K1作为报警时间选择开关。

4软件设计 4.1软件分析

报警计时是报警器系统设计的核心,用来完成报警时间的设定功能。在设计中,采用AT89C51的内部定时器与软件计数器相结合的方法。用外部中断0实现手动解除报警功能。内部定时器T0定时时间设为50ms,循环20次获得1s的基准时间,然后通过改变循环次数设定不同的报警时间。

4.2程序流程图

红外线防盗报警器的中断服务程序流程图如图2所示。

开始按下人工中断键使得中断源向单片机发出中断申请单片机关闭外部中断响应单片机关闭声光报警单片机打开外部中断响应,准备接受下一次中申请结束

图2中断服务程序流程图

主程序流程图如图3所示。

..

.

开始系统初始化,绿灯亮检测外部有无信号输入NY单片机启动声光报警并显示报警次数是否有外部中断信号YN报警是否持续到设定时间NY声光报警结束中断声光报警是否复位NY结束

图3 主程序流程图

4.3源程序

基于单片机的红外线防盗报警器设计的源程序如附录所示。

5系统仿真及实际调试

在proteus中,找到各个元件,画出仿真电路,并用Keil uVision3软件生成.hex文件,把该文件导入51单片机中,然后进行仿真。其仿真图如图4、图5所示。

..

.

图4 仿真运行截图

图5报警时的仿真截图

..

.

6总结

这次课设最大的收获是学会使用Keil uVision3和Proteus软件。使用Proteus感到很新奇,但在真正绘制电路图时才发现自己平时积累太少,根本无法找到所需要电子元器件。本次单片机课程,将所学的单片机知识运用到实践当中,进一步加深了知识的理解。此外,借本次课程设计的机会,我还了解了热释电传感器,丰富了自己的知识。在设计的过程中,也遇到了许多问题,但是通过查资料,向别人请教,最后得以解。归结到一点就是我们要有足够的耐心,足够的细心,足够的分析问题、解决问题的能力,才能不断地进取,不断地创新,不断地充实。用汇编语言编写的程序另存为时应保存成.asm文件,用C语言编写的程序另存为时应保存成.c文件。初次使用Proteus感到有点无从下手,所以在绘制电路图时才发现无法找到所需要电子元器件,最后在网上搜到电子元器件的中英文对照表后才得以顺利进行。

参考文献

[1] 王思明,张金敏,张鑫等单片机原理及应用系统设计[M].北京:科学出版社,2012.5 [2] 李广弟.单片机基础[M].北京航空航天大学出版社,2001.08. [3] 王毓银,数字电路逻辑设计[M],高等教育出版社,2004.

附录

..

.

源程序

ORG 0000H LJMP MAIN ORG 0003H LJMP DINT0 ORG 0200H

1.主程序

MAIN:MOV R0,#00H

MOV IE,#81H ;CPU开放中断,INT0允许中断 SETB IT0 ;外部中断为边沿触发方式 MOV SP,#30H ;指针入口地址 SETB P3.0 ; 红灯不亮 CLR P3.1 ; 喇叭不响

MOV P1,#0FFH ;使P1口全部置1 MOV P2,#00H ;P2口清零 MOV A,#3FH

MOV P2,A;数码管初始化显示0 CLR P1.2 ;绿灯亮

JCE: JNB P1.0,FD ;检测外部触发信号 FD: ACALL DELAY ;延时消抖

JNB P1.0,BAOJING ;再次检测外部触发信号,若有就转入报警子程序 AJMP JCE

2.消抖延时子程序

DELAY: MOV R1,#0AAH LOD2: MOV R2,#0BBH LOD1: NOP

DJNZ R2,LOD1 DJNZ R1,LOD2 RET

3.声光报警子程序

BAOJING:SETB P1.2 ;开始声光报警使正常工作指示灯熄灭

MOV A,#00H INC R0

CJNE R0,#10,LOP MOV R0,#00H

LOP: MOV A,R0

MOV DPTR,#TAB

MOVC A,@A+DPTR;查段码表 MOV P2,A;送P2口显示

TAB: DB 3FH,06H; 数码管段码表

DB 5BH,4FH DB 66H,6DH DB 7DH,07H DB 7FH,6FH

MOV 50H,#14H ;1S循环次数 JNB P1.3,L7

..

.

JNB P1.4,L8

L7: MOV 51H,#05H

AJMP L9

L8: MOV 51H,#0AH;10秒循环次数

L9: MOV TMOD,#01H ;定时器T0,工作方式1

MOV TL0,#0B0H ;置50ms定时初值 MOV TH0,#3CH

SETB TR0 ;启动定时器T0

L2: JBC TF0,L1 ;查询记数溢出

SJMP L2

L1: CPL P3.0 ; 红灯亮

CPL P3.1 ;喇叭响 MOV TL0 ,#0B0H MOV TH0, #3CH JNB P3.2,L10 DJNZ 50H,L2 CPL P3.0 CPL P3.1

MOV 50H,#14H

DJNZ 51H,L2 ;未到10S继续循环

CLR P1.2 ;报警结束,正常工作绿指示灯亮

L10: SETB P3.0 ;10s到关闭报警

CLR P3.1 ; 关喇叭

LJMP JCE ;循环,继续工作

4.外部中断DINT0服务程序

DINT0: CLR EX0 ;外部中断0服务程序开始,屏蔽外部中断

PUSH PSW PUSH ACC SETB P3.0 CLR P3.1

CLR P1.2 ;使报警结束,绿指示灯亮 POP ACC POP PSW

SETB EX0 ;开放外部中断0 RETI;中断返回 END

..

因篇幅问题不能全部显示,请点此查看更多更全内容

Top