多功能家庭报警器.docx

上传人:b****5 文档编号:7636995 上传时间:2023-01-25 格式:DOCX 页数:21 大小:414.16KB
下载 相关 举报
多功能家庭报警器.docx_第1页
第1页 / 共21页
多功能家庭报警器.docx_第2页
第2页 / 共21页
多功能家庭报警器.docx_第3页
第3页 / 共21页
多功能家庭报警器.docx_第4页
第4页 / 共21页
多功能家庭报警器.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

多功能家庭报警器.docx

《多功能家庭报警器.docx》由会员分享,可在线阅读,更多相关《多功能家庭报警器.docx(21页珍藏版)》请在冰豆网上搜索。

多功能家庭报警器.docx

多功能家庭报警器

引言

随着社会的发展,越来越多的家庭开始安装使用家庭报警,所以对于家庭报警系统的多功能、高性能、稳定性的需求越来越高。

家庭报警器是用物理方法或电子技术,自动探测发生在布防监测区域内的侵入行为,产生报警信号,并提示值班人员发生报警的区域部位,显示可能采取对策的系统。

报警主机是预防抢劫、盗窃等意外事件的重要设施。

一旦发生突发事件,就能通过声光报警信号在安保控制中心准确显示出事地点,使其迅速采取应急措施。

家庭防盗器广泛应用在城市安防、银行、电信、电力、司法、交通、小区、工厂、公司、学校、医院、家庭、别墅、仓库、资源、石油、化工、实时视频监控系统等众多领域。

目前,市场上对于普通家庭购买最多的家庭报警器主要有热释电红外传感器和无线接发收模块组成。

在功能上只有当人靠近时才能检测到信号,不能很好的实现报警功能。

有时会出现误操作,功能单一,性能不稳定,但是价格还较贵。

随着单片机和报警技术的持续发展,要求报警器能快速反应,多功能,性能稳定,价格低廉。

因此,需要多种传感器(红外对管、烟雾传感器、震动传感器、瓦斯泄漏探测器、门磁探测器)协调共同完善报警器的功能。

 

一、基于C51单片机的家庭报警的设计方案

1.1.方案设计思想

此次设计主要解决目前家庭报警器的功能单一,性能不稳定和价格昂贵等问题。

在本系统中使用温度传感器实时检测卧室的温度,通过与按键设置的温度相比较,当实时温度高于设置温度时,开启风扇(或空调)降温。

当实时温度低于设置温度时,启动电热器(或空调)升温,目的是维持室内温度。

将红外对管放到窗户、阳台、门上用于检测是否有人经过,如果有人经过,启动报警电路通知主人。

把烟雾传感器安装到厨房,用于检测烟雾和煤气,当检测到烟雾和煤气时发出警报并启动排气扇进行通风换气。

使用霍尔元件检测门是否关闭和检测门是否正常开启,如果非正常开启,发出警报声。

1.2.系统总框架图

由上述方案设计思想,以下为系统总框架图,如图1所示

图1系统总框架图

 

二、系统的硬件和软件设计

2.1主控电路的设计

硬件设计中最核心的器件是单片机AT89C52,一方面接收各个传感器的信号,处理信号并产生相应的信号控制其它电路。

另一方面驱动七段数码管的显示。

整个系统的软件编程通过C语言对单片机AT89C52实现其控制功能。

2.1.180C51系列

80C51系列单片机产品繁多,主流地位已经形成。

多年来的应用实践已经证明,80C51的系统结构合理,技术成熟,许多单片机芯片倾力于提高80C51系列产品的综合功能,从而形成了80C51的主流产品的地位,今年来推出的与80C51兼容的主要产品有:

ATMEL公司融入flash存储器技术推出的AT89系列单片机;

Philips公司推出的80C51、80C552系列高性能单片机;

华邦公司提出的W78C51、W77C51系列高速低价单片机;

ADI公司推出的AduC8xx系列高精度ADC单片机;

Cygnal公司推出的C8051f系列高速单片机;

由此可见,80C51已经成为事实上的单片机主流系列,所以,本次设计选择80C51单片机。

2.1.280C51单片机基本结构

80C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。

89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除1000次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的80C51是一种高效微控制器,89C2051是它的一种精简版本。

89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

  1.主要特性:

  ·与MCS-51兼容

·4K字节可编程闪烁存储器

.寿命:

1000写/擦循环

  ·数据保留时间:

10年

  ·全静态工作:

0Hz-24Hz

  ·三级程序存储器锁定

  ·128*8位内部RAM

  ·32可编程I/O线

  ·两个16位定时器/计数器

  ·5个中断源

  ·可编程串行通道

  ·低功耗的闲置和掉电模式

  ·片内振荡器和时钟电路

2.1.380C51单片机管脚说明

图280C51单片机的封装和引脚

  VCC:

供电电压。

  GND:

接地。

  P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写“1”时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,P0输出原码,此时P0外部必须被拉高。

  P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

 P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流,这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

  P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流,这是由于上拉的缘故。

  P3口也可作为AT80C51的一些特殊功能口,如下表所示:

  口管脚备选功能

  P3.0RXD(串行输入口)

  P3.1TXD(串行输出口)

  P3.2/INT0(外部中断0)

  P3.3/INT1(外部中断1)

  P3.4T0(记时器0外部输入)

  P3.5T1(记时器1外部输入)

  P3.6/WR(外部数据存储器写选通)

  P3.7/RD(外部数据存储器读选通)

  P3口同时为闪烁编程和编程校验接收一些控制信号。

  RST:

复位输入。

当振荡器复位时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

  /PSEN:

外部程序存储器的选通信号。

/EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

 

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

  XTAL2:

来自反向振荡器的输出。

  2.1.480C51特性简介

  XTAL1和XTAL2分别为反向放大器的输入和输出。

该反向放大器可以配置为片内振荡器。

石晶振荡和陶瓷振荡均可采用。

如采用外部时钟源驱动器件,XTAL2应不接。

其余输入由内部时钟信号,通过一个二分频触发器控制,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。

  整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。

在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。

  此外,AT80C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。

在闲置模式下,CPU停止工作。

但RAM、定时器、计数器、串口和中断系统仍在工作。

在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

  5.结构特点:

◆8位CPU

◆片内振荡器和时钟电路

◆32根I/O线

◆外部存贮器寻址范围ROM、RAM64K

◆2个16位的定时器/计数器

◆5个中断源,两个中断优先级

◆全双工串行口

◆布尔处理器

2.2外围电路的设计

2.2.1温度报警电路的设计

在设计中我们选择DS18B20温度传感器检测实时温度。

DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。

以上特点使DS18B20非常适用于远距离多点温度检测系统。

1.DS18B20的结构

DS18B20内部结构如图1所示,主要由四部分组成:

64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。

DS18B20的管脚排列如图2所示,DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端,在寄生电源接线方式时接地,见图3。

图3DS18B20的内部结构

图4DS18B20连接方式

ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。

64位ROM的排的循环冗余校验码(CRC=X8+X5+X4+1)。

ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。

2.特性及参数

●独特的单线接口,只要1个接口引脚即可同信

●多点能力使分布式温度检测应用得以简化

●不需要外部元件

●可用数据线供电

●不需要备份电源

●测量范围-55°C至125°C.增量值为0.5°C

●以9为数字值方式读出温度

●在1秒内把温度变化为数字

●告警搜索命令识别和寻址温度在编定的极限之外的器件

●应用范围包括恒温控制,工业系统,消费类产品,温度计获任何热敏系统

2.2.2温度显示电路的设计

由于只显示实时温度,采用七段数码管已远远达到设计要求。

本系统需要显示两位数据,所以选择两片两位扫描数码管。

由于AT89C52引脚资源有限,所以选用74HC5958位串行输入/输出或者并行输出移位寄存器驱动。

1.74HC595简介

74HC595是具有8位移位寄存器和一个存储器,三态输出功能。

移位寄存器和存储器是分别的时钟。

数据在SHCP的上升沿输入,在STCP的上升沿进入到存储寄存器中去。

如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。

移位寄存器有一个串行移位输入(DS),和一个串行输出(Q7’),和一个异步的低电平复位(MR),存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。

74HC595引脚排布如图4所示,引脚功能见表1。

图574HC595引脚图表174HC595引脚功能

2.设计原理

本设计采用LPC2103自带的硬件SPI接口与74HC595进行数据传输。

74HC595将LPC2103发送过来的8位串行数据转换成8位并行数据,用以驱动数码管。

本设计中采用共阳数码管。

原理图如图5所示。

图6原理图

2.2.3光敏电阻电路

光敏电阻选用p2101-04,光敏电阻在无光照时,其暗阻值一般大于1500kΩ,在有光时其阻值为几千欧,两者相差较大。

根据以上原理可通过调节可调电阻RP,可设定光敏电阻检测外界环境光暗亮的程度,电路如图7所示。

 

图7光敏电阻比较电路

2.3系统总电路图

根据以上各电路的分析,系统总原理图如图8所示

图8系统总电路图

 

2.4系统的软件设计

根据本系统的设计思想,软件设计主要包括温度传感器的初始化程序,由74HC595驱动的七段数码管,接收传感器的信号并由单片作出相应的响应。

由于C语言是一种编译型的结构化程序设计语言,具有简单的语法结构和强大的处理功能,具有运行速度快、编译效率高,移植性好和可读性强等多种优点,可以实现对系统便件的直接操作。

用C语言来编写目标系统软件,可以大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而开发出大规模、高性能的应用系统。

所以在本设计中使用C语言编写程序,图9为本系统的程序流程图。

图9系统的程序流程图

 

三、系统调试

完成对系统的硬、软件设计后,就可以对系统进行调试。

本次设计采用keil编译软件和PROTUES仿真软件作为系统的开发工具,进行程序编写和系统的仿真。

  3.1编程keil环境简介

  KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

用过汇编语言后再使用C来开发,体会更加深刻。

  KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

下面详细介绍KeilC51开发系统各部分功能和使用。

  KeilC51单片机软件开发系统的整体结构,其中uVision与Ishell分别是C51forWindows和forDos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。

开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。

然后分别由C51及A51编译器编译生成目标文件(.OBJ)。

目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。

ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。

  使用独立的Keil仿真器时,注意事项

  *仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。

  *仿真器上的复位按钮只复位仿真芯片,不复位目标系统。

*仿真芯片的31脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使用片外ROM;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至低电平)的目标系统中使用。

3.2系统软件调试

在进行完硬件的焊接和程序的编写后,接下来的工作就是进行整个系统的调试。

以下是在进行系统调试的整个过程。

在使用KEIL编写程序完成后,开始编译程序,但程序编译结果出现如图10所示错误

图10

仔细检查错误,原因在于程序源代码中出现非英文状态的字母,导致语法错误。

还有在程序源代码中没有定义变量sound。

经过改正程序中的错误,程序运行正常,运行结果如图11所示

图11

然后将调试好的程序加载到PROTUES仿真软件上进行仿真,由于加载程序时需要加载“.HEX”格式的文件,但在加载程序时未找到“.HEX”格式的文件。

经过仔细的检查发现在进行编译程序时未选择生成“.HEX”文件的选项,如下图12所示

图12

3.3系统硬件调试

在前电路设计时,数码管和74HC595采用自由连接的方式(如图13),所以段码不能采用标准段码,需另行设计。

下面介绍一种生成段码表的简单方法。

图12自由连接

测试步骤1:

首先发送字符‘0xfe’,实验现象为数码管笔段a被点亮。

实验现象分析:

当向74HC595发送‘0xFE’时,Q0引脚输出低电平,Q1~Q7输出高电平。

可以得出Q0引脚在硬件上对应数码管笔段a,低电平驱动数码管笔段发光。

测试步骤2:

发送字符‘0xFD’,数码管笔段a熄灭,笔段b被点亮。

实验现象分析:

当向74HC595发送‘0xFD’时,Q1引脚输出低电平,Q0、Q2~Q7输出高电平,从而可以判断出Q1引脚硬件上对应数码管笔段b,低电平驱动笔段发光。

测试步骤3:

在了解如何驱动a、b笔段发光的基础之上,更改测试字符,依次向74HC595发送0xBF、0xDF、0xEF、0xFB、0xF7、0x7F六个数据,即可分别点亮c、d、e、f、g、dp六个笔段。

测试结论:

参考以上测试方法,用户在不清楚硬件电路连接的情况下,逐次向74HC595发送测试数据,即可理清74HC595引脚与数码管笔段的对应关系。

同时,也可得出数码管笔段与测试字符的对应关系,如表2所列。

表2段码表数值

 

总结

本次毕业设计在自己的努力,同学的帮助,老师的指点下已全部完成,结果重要,过程也很珍贵,因为好的结果必然得经过一个艰辛的过程,而从这个坚信的过程中我获得了珍贵的经验和教训,仔细认真的总结将对自己是个质的提升。

现先将此次毕业设计的成果简要汇报如下:

•完整家庭报警系统的设计方案

•模块化的“C”源代码

•各种传感器完善报警器功能

•由单片机控制性能更加稳定

•数码管显示温度更加直观

•支持在线编程,低成本

经过近一个月的紧张工作,家庭报警器终于完成了硬件和软件的设计。

基本实现了当初设计的所有家庭报警器的功能。

在这一个月里找资料的过程里我学到很多,对单片机的了解也随之加深,它在家庭报警系统中的应用,很多附件的应用和芯片的结构都有了一定的了解。

毕业设计,不单单只是设计,还是一次敢于接受新事物的挑战,锻炼你的意志,磨练你的性格,这是一次不再有的机会,所以必须珍惜。

设计以接近尾声,我希望大家遇到困难时请不要轻言放弃,要相信自己,努力学习,困难就会迎刃而解的。

参考文献

[1]肖学云.无线电制作精汇[M].北京.人民邮电出版社:

2005.241-242.

[2]王守中.51单片机开发入门与经典实例[M].北京:

人民邮电出版社,2007.303-306.

[3]谭浩强.C程序设计(第二版)[M].北京:

清华大学出版社,1999.204-208.

[4]郭永贞.数字电子技术[D].西安:

西安电子科技大学出版社,2000.120-123

[5]吴国经.单片机应用技术[M].北京:

中国电力出版社,2004.451-453.

[6]徐泳龙.单片机原理及应用[M]北京:

机械工业出版社,2004.145-146

[7]卢胜利.智能仪器设计与实现.重庆:

重庆大学出版社.2003.521-523

[8]王兆安,黄俊.电力电子技术(第四版).北京:

机械工业出版社.2002.342-350

 

致谢

在学习了相关于本次设计的知识后,我与同组同学便开始了实际的设计部分,在这个过程中确实也遇到了相当的问题和困难,比如温度显示电路的设计具体参数的设定等,在此我也要感谢王艳老师在此过程中给与的耐心指导。

同组人在硬件电路设计好后我的软件部分也做好了,接下来便是实际的调试,最后在王老师以及实验室老师的指导以及自己的努力下,本次毕业设计完成!

实践是检验真理的唯一标准,经过几年的理论学习而这次在即将走向工作岗位的时候能将理论与实践相结合的机会来锻炼自己可谓是难得的一次提高,在此感谢学校为我们安排的这个教学环节,也感谢在此次设计过程中给与我极大帮助和理解的王老师以及所有实验室同学们。

 

附录1

1.系统源程序

#include

#include

#include

#defineucharunsignedchar

#defineuintunsignedint

ucharcodeseg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf};

ucharcodepos[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

uchark[8];

sbitSER=P2^2;//595串行数据输入

sbitSCK=P2^0;//595移位时钟

sbitRCK=P2^1;//595数据输出脉冲

uintnum1;

sbitjia=P1^1;

sbitjian=P1^2;

sbitwarning=P1^3;

sbitdq=P3^5;//定义温度传感器的数据引脚

voiddelay_5ms(void)

{

uchari,j;

for(i=10;i>0;i--)

for(j=248;j>0;j--)

;

}

voidIN595(ucharm,ucharn)

{

uchari,temp;

temp=pos[m];//断码

for(i=0;i<8;i++)

{

SCK=0;

SER=temp&0x80;

temp<<=1;

SCK=1;

}

temp=seg[n];//位码

for(i=0;i<8;i++)

{

SCK=0;

SER=temp&0x80;

temp<<=1;

SCK=1;

}

RCK=0;

RCK=1;

}

voiddelay_ds1820(intnum)//DS18B20读写模块

{

while(num--);

}

voidInit_DS18B20()//初始化ds1820

{

ucharx=0;

dq=1;

delay_ds1820(8);

dq=0;

delay_ds1820(80);

dq=1;

delay_ds1820(14);

x=dq;

delay_ds1820(20);

}

ucharreadonechar()//读一个字节

{

uchari=0;

uchardat=0;

for(i=8;i>0;i--)

{

dq=0;

dat>>=1;

dq=1;

if(dq)

dat|=0x80;

delay_ds1820(4);

}

return(dat);

}

voidwriteonechar(uchardat)//写一个字节

{

uchari;

for(i=8;i>0;i--)

{

dq=0;

dq=dat&0x01;

delay_ds1820(5);

dq=1;

dat>>=1;

}

}

uintreadtemp()//读温度

{

uchara=0;

ucharb=0;

uintt=0;

floattt=0;

Init_DS18B20();

writeonechar(0xCC);

writeonechar(0x44);

Init_DS18B20();

writeonechar(0xCC);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1