基于51单片机GSM 人体红外 防盗 温度报警设计_第1页
基于51单片机GSM 人体红外 防盗 温度报警设计_第2页
基于51单片机GSM 人体红外 防盗 温度报警设计_第3页
基于51单片机GSM 人体红外 防盗 温度报警设计_第4页
基于51单片机GSM 人体红外 防盗 温度报警设计_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

滨江学院本科生毕业论文(设计) 题 目 基于物联网的校园安防报警系统设计 学生姓名 王杰 学 号 20152365044 系 别 计算机系专 业 物联网工程指导教师谢胜东二 一九 年 五 月 五 日目 录一 绪论11.1设计背景11.2设计依据11.3设计的主要内容和功能2二 设计方案42.1 设计思路42.2 系统构成5三 硬件电路设计63.1 系统硬件原理图63.2 STC89C52概述63.2.1 STC89C52引脚73.2.2 STC89C52内部原理93.3 按键控制电路93.4 电源电路103.5 报警电路113.6 LCD1602液晶显示电路113.7 SIM800模块电路123.8 温度传感器模块电路133.10 LED电路模块143.11 单片机下载程序143.12 复位按键15四 软件系统设计174.1 软件主程序架构174.2 LCD1602显示流程图184.3 串口函数流程图194.4 温度检测流程图194.5 按键子程序204.7 报警流程图224.8 短信模块流程图23五 系统调试245.1 焊接调试245.2 功能调试24六 总结25参 考 文 献27致谢 293基于物联网的校园安防报警系统设计作者 王杰摘要:本次详细介绍了一款基于STC89C52单片机的校园安防报警系统,本次设计的目的是更好的校园安防报警系统的硬件组成,软件设计和实现原理,并分析其优点和缺点,完善校园安防报警系统的功能,通过对报警系统的研究和设计,可以更好的帮助校园实现智能报警,避免危害情况的发生,挽救师生的人身安全和学院的财产,实现远程监控校园安防信息。基于物联网的校园安防报警系统,通过温度传感器检测当前温度,人体红外传感器监测是否有人。Lcd1602液晶显示屏显示当前检测到的温度值和是否有人,同时通过按键设置温度和人体红外浓度的报警上限,当检测到的温度或者人体红外浓度超过上限值时,LED报警灯亮起,同时蜂鸣器报警,GSM模块发送报警短信,此外还设有紧急按键,按下按键后,发送紧急短信。关键词: STC89C52单片机、校园安防、温度监测、人体红外监测、报警辅导员电子设计-仅供学习盗版可耻正版授权淘宝店铺地址:/?spm=a1z10.3-c.0.0.369219fcHXgriWDesign of Campus Security Alarm System Based on Internet of Things作者王杰Abstract : This time introduces a campus security alarm system based on STC89C52 single-chip microcomputer. The purpose of this design is to better the hardware composition, software design and implementation principle of campus security alarm system, and analyze its advantages and disadvantages to improve the campus security alarm. The function of the system, through the research and design of the alarm system, can better help the campus to achieve intelligent alarms, avoid the occurrence of hazards, save the personal safety of teachers and students and the property of the college, and realize remote monitoring of campus security information.Based on the Internet of Education, the campus security alarm system detects the current temperature through a temperature sensor, and the smoke sensor monitors the smoke concentration. The data is sent to the MCU through the AD digital-to-analog conversion module. The Lcd1602 LCD display shows the currently detected temperature value and smoke concentration value. At the same time, the alarm upper limit of temperature and smoke concentration is set by the button. When the detected temperature or smoke concentration exceeds the upper limit value, the LED warning light lights up and buzzes. Alarm, GSM module sends alarm SMS, MCU controls vibration sensor vibration alarm. In addition, there is an emergency button, and an emergency message is sent after the button is pressed.Keywords: STC89C52 MCU, campus security, temperature monitoring, smoke monitoring, alarmII一 绪论1.1 设计背景随着科技的发展,电子电路技术的不断进度,物联网已经渐渐走进我们的生产生活当中,发挥着重大的作用。无论是智能物流,还是智慧农业大棚,都离不开物联网的技术支撑。物联网技术的实现为物联网时代的到来打下了基础,时代的潮流已经从互联网逐渐转向线上线下全面互联的物联网时代,所有的设备都接入网络,各种器件都可以被监测和控制,大大促进了社会的发展,同时也为工业物联网话提供了一个强有力的技术支撑。物联网技术日益成熟,主要采用的就是GSM技术,已经广泛应用在生活和工作中,起到非常重要的作用,本次就采用GSM技术作为安防报警系统的技术支撑。在日常生活中,无论是酒店,电影院,学校,办公楼还是居民楼,安防报警系统已经成为各个场所的重点关注对象。防盗的预防目前主要采取温度传感器和人体红外传感器进行检测,当防盗出现时,人体红外传感器可以检测到是否有人,进行报警操作。为了更好的研究安防报警系统的工作原理,明白其工作流程,因此设计了一款基于物联网的安防报警系统设计。1.2 设计依据在单片机选项这一款,相比传统的AT89C52芯片,这次采用集成度更高,价格便宜,功能丰富、更加强大的STC89C52单片机,通过I/O口操作单片机上的外设,比较简单。温度传感器采用常见的DS18B20温度采集传感器,因为此设计十分方便,小巧,安全,得到的数据也十分准确,所以被广泛的应用。震动传感器这里采用普通震动模块,当报警时,单片机控制三极管驱动震动器震动,进行报警提示。5v继电器继电器安全性非常高,电路设计也相对比较简单。在引用的时候在需要确定继电器的耐压值是多少就可以了。继电器选择耐压值只要大于或等于5V就可以了。这样就大大的节约了资源。给人们带来了更好的效益。所以就可以更好的来利用资源。这个的设计操作起来也很方便,只需要通过按键就可以控制自己想要的报警温度和人体红外上限。显示部分用LCD1602来显示当前的信息,因为传统的数码管显示的缺陷是信息量比较少,能显示的内容有限,而LCD1602显示就弥补这样的缺陷,它可以显示当前的温度以及特殊的符号,也可以显示数字。而且可以来调节背光亮度。节约资源。报警部分采用蜂鸣器进行报警,当检测到温度或者人体红外,单片机给蜂鸣器一个高电平,蜂鸣器警报,SIM800模块使得单片机将报警信息以短信的形式发送到手机上。 1.3 设计的主要内容和功能本次设计是基于STC89C52单片机的校园安防报警系统设计。作为物联网中最基础的配置,本次设计采用STC89C52单片机作为处理器。整体功能分为检测部分、显示部分和报警部分。温度和人体红外浓度是要进行检测的内容,温度传感器检测当前温度,人体红外传感器监测是否有人,单片机接收到这些信号,并根据公式计算出具体的温度。显示部分就是采用LCD1602液晶显示屏显示当前检测到的温度值和是否有人,通过按键切换页面,显示温度和人体红外浓度的报警。报警部分包括按键设置,蜂鸣器和GSM短信发送。首先通过按键设置温度和是否为防盗模式,然后检测温度是否超过上限值,当温度超出报警上限后,温度LED报警灯亮起,同时蜂鸣器报警,单片机通过GSM模块发送温度报警短信。当人体红外检测到有人后,GSM也会发送短信,同时蜂鸣器报警,此外主板上还有一个紧急按钮,当紧急按键按下时,单片机发送紧急短信到手机上。以下是主要功能:1、最小系统的硬件设计;(1)在上电复位电路3自动复位和手动复位。(2)晶体振荡器电路与无源晶振电路。(3)单片机电源。2、温度检测(1)采用DS18B20数字温度传感器进行检测(2)将检测到的结果通过引脚发送给单片机3、人体红外检测检测(1)采用人体红外传感器检测当前是否有人4、按键设置电路(1)通过按键设置温度报警上限和防盗模式(2)按下紧急按键,单片机向手机发送报警短信5、GSM短信发送(1)当检测到的温度大于温度报警值时,单片机发送温度报警短信(2)当检测到的人体红外报警值时,单片机发送人体红外报警短信(3)当检测到紧急按键按下时,单片机发送紧急报警短信6、硬件功能测试程序。(1)对于每个模块进行调试,进行整体的硬件调试(2)整体软件功能进行调试。辅导员电子设计-仅供学习盗版可耻授权淘宝店铺地址:/?spm=a1z10.3-c.0.0.369219fcHXgriW二 设计方案2.1 设计思路校园安防报警系统的设计思路首先从功能上进行构思,首先安防报警系统最重要的功能就是安防报警,需要时刻监测校园内是否有防盗发生并进行报警,这个功能需要传感器和蜂鸣器报警去完成。而防盗情况的监测主要通过温度和人体红外进行监测,这就需要温度传感器和人体红外传感器去监测实现,此外和传统的安防报警系统相比,本次设计带有数据显示,这里选择的比较常用的LCD1602液晶屏进行显示。此外电子万年历还需要带有报警的功能,这里通过按键去设置温度和人体红外浓度,到达上限后,蜂鸣器鸣响实现警报的效果,单片机发送报警短信到手机上。从功能上划分完之后,就要进行硬件选择和电路设计,一个单片机系统最重要的就是起到大脑作用的单片机,通过资料查阅和选择对比,这里采用了功能丰富,价格合适的STC89C52单片机作为整个单片机系统的控制芯片,协调各个传感器和外设。温度传感器选择高精度的DS18B20传感器,人体红外传感器、 LCD1602液晶屏、蜂鸣器振动器和SIM800A短信模块共同组成本次设计的硬件系统。下面介绍本次设计的工作原理:本次设计主要分为检测、显示和报警三个部分。单片机采用STC89C52单片机作为CPU处理器,检测部分包括温度检测和人体红外检测,单片机控制LCD1602液晶显示屏显示检测到的温度和人体红外,按键用于设置温度和人体红外防盗模式,LCD灯作为报警指示灯,蜂鸣器用于报警,SIM800发送报警短信到设定的手机上,紧急按键发送进行短信。本次系统设计采用单片机模块化进行设计,所谓模块化,就是将功能分解,降低之间的耦合性。当需要增加或删除某个功能时,只需要替换或增减某个模块,不用改变整个结构,只需要改相应的模块,工作量就会明显减少,所以模块化的应用,对于单片机的设计时非常重要的。图2.1是整体工作原理图: 人体红外感应DS18B20温度传感器LCD160显示SIM800发送短信按键电路设置电路报警电路单片机处理单元图2.1 工作原理图2.2 系统构成本次系统构成分为硬件系统和软件部分。硬件系统就是单片机的选型,传感器的选型,电子元器件的选择。当所有材料选型完成后,进行电子电路设计,确保每个电路的正确和畅通。之后按照设计好的电路图,将所有材料焊接起来,组成一个单片机系统。当硬件部分完成后,进行软件设计,用来控制整个单片机。这里采用KEIL软件进行软件的编程,采用C+语言进行整体设计,编写完成后进行测试,没有问题将生成的hex文件烧录进单片机。软件系统采用C语言进行编写整个程序,编程软件使用kileC51集成开发环境,KeilC51是美国Keil software公司出品的针对51系列单片机的C语言软件开发系统,提供了C编译器、宏汇编、链接器、库管理和仿真调试器的完整开发方案,组成一个集成开发环境。软件部分也分为模块化编写,main函数为软件主程序,其他模块分别在子程序中完成,包括温度检测子程序,人体红外浓度检测子程序,按键设置子程序,报警模块子程序,SIM800A短信发送模块子程序。本次设计最核心的控制芯片选用STC89C52单片机作为主控制器,按照功能上划分成4部分,分别是检测部分、显示部分、和警报部分。温度和人体红外浓度是监测部分的监测内容,这里温度检测采用DS18B20传感器,人体红外检测采用人体红外传感器。LCD1602液晶屏作为显示部分的显示器,将单片机计算出来的温度值和是否有人进行展示。报警部分分为报警值设置,蜂鸣器报警,短信报警4部分,首先按键用于设置温度和人体红外报警值上限。报警模块采用蜂鸣器报警、LCD报警指示灯、震动传感器和SIM800短线发送模块。此外还设有紧急按键,按下时发送紧急短信。三 硬件电路设计3.1 系统硬件原理图本次设计采用LCD1602液晶显示器显示采集到的温度和是否有人,下面一行显示温度和是否有人。单片机型号为采用功能强大的STC89C52单片机作为控制器,左下角的温度传感器用于监测温度,人体红外传感器时刻检测当前是否有人。按键用来设定温度报警和人体红外防盗模式, SIM800模块用于短信发送,基于GSM原理,无线传输数据。图中包含4个按键,用来设置人体红外和温度报警上限值,。蜂鸣器用于报警,2个LED灯分别表示人体红外和温度报警指示灯。紧急按键用于发送紧急短信,本次单片机系统采用5V直流电源进行供电,图3.1是其硬件电路原理图:图3.1 系统硬件原理图3.2 STC89C52概述STC89C52单片机是一款低功耗、高性能的微控制器,是STC公司早期生产用于工业控制的单片机。其作用是控制各种传感器和外设,自行计算处理得到的数据和信号,并进行相应的操作,在工业生产中起到大脑的作用。相比于日常生活中使用的电脑,单片机只能称得上微小电路集成系统,能起到的作用非常有限,只能处理一些简单的控制工作。单片机的应用非常广泛,绝大部分电器都是采用单片机进行控制,家里的大家电,比如冰箱、空调、洗衣机、电视机,小到遥控器、鼠标、键盘、闹钟。其里面都包含一个或者多个单片机。单片机广泛应用于仪表仪器,航空航天,家用电器和医用设备上。智能设备的发展也非常依赖单片机,多样化的传感器对单片机也提出了一定的要求,故此越来越多的高级的单片机成出现。STC89C52单片机相较于51单片机,拥有更大的存储器和RAM,采用MCS-51内核用于高强度计算,32个I/O口可以连接更多的外设和传感器,8K字节的FLASH存储器可以进行更多的计算缓存,521字节的RAM大大提高的反应速度。STC89C52单片机的烧录也非常简单,通过TX和RX口,采用对应的编译器就可以将程序烧录进去。是一款便宜、简单和高性能的单片机。辅导员电子设计-仅供学习盗版可耻正权淘宝店铺地址:/?spm=a1z10.3-c.0.0.369219fcHXgriW3.2.1 STC89C52引脚本次设计采用的STC89C52单片机拥有40线引脚,采用双列直插式进行封装。单片机的引脚联通了单片机和传感器等外设,提供了一个沟通的渠道,通过引脚,单片机才可以和传感器等外设进行信息的交互。但是单片机的引脚个数是有限的,如何最大限度的发挥单片机的功能,是非常有研究意义的。目前通过改善引脚体积和外观,采用双功能或者多功能的引脚,丰富单片机的功能,提高单片机的可用性。图3.2是STC89C52单片机的封装引脚图,将根据引脚图进行详细的讲解。图3.2 STC89C52单片机封装引脚图(1) 主电源引脚VCC引脚40号引脚,作为输入电源的正极,输入电压为5VVSS引脚20号引脚,作为GND引脚,用于接地,连接电源负极(2) 时钟源XTAL1引脚19号引脚,用来连接晶振的一端,如果连接的是外部震荡的晶振,那么此引脚要接地。XTAL2引脚18号引脚,用来连接晶振的另一端,如果连接的是外部震荡的晶振,那么此引脚要接地。(3) 多功能I/O单片机一共具有32个I/O引脚,分成4组,分别是P0,P1,P2,P3口,分别具体不同功能的I/O口。P0口3239引脚,该8个引脚是漏极双向I/O口,在使用时要外加上拉电阻,通常用于外接显示屏。对应单片机的P0到P0.7引脚。P1口18引脚,该8个引脚是准双向I/O口,可以在单片机和外设直接进行双向通信,具有上拉作用,对应单片机的P1.0-P1.7引脚。P2口2128引脚。该8个引脚是准双向I/O口,和P1口一样,也可以在单片机和外设直接双向通信。P3口1017引脚。该8个引脚是具有内部上拉的准双向I/O口,在进行双向通信的同时,还具有变异的特殊功能。(4) 控制,选通或复用EA/Vpp引脚31号引脚。该引脚的作用是作为单片机的信号输入输出端口,可以连接外部或者单片机内部的存储器。但是仅仅在输入低电平时才有效。存储部分:主要由RAM和ROM来进行数据存储。这个是单片机存储分开设计的一大特色。RAM通常我们用来出来数据较小的,而ROM用来存储数据比较大的内容。RST:复位。当单片机需要重新启动时,而不需要断电重启,直接连接单片机给一个信号就可以当单片机初始化,程序重新启动。这日常的单片机中,这个功能很方便也一直被使用。芯片擦除:PEROM阵列的三个锁定位电擦除功能可以通过正确控制不同信号的组合,保持ALE管脚保持低电平10ms 来完成此功能。在芯片擦过程中,代码阵列会全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。3.2.2 STC89C52内部原理STC89C52单片机内部构成还是比较复杂的,虽然只是微型处理器,但是“麻雀虽小五脏俱全”,具有处理器所具有的基础构成。包括时钟芯片,定时器,ROM,FLASH存储器,RAM闪存器,32个I/O口,串口通信和中央处理器。图3.3是单片机内部电路图: 图3.3 单片机内部电路图3.3 按键控制电路单片机的按键控制电路是由4个微动开关并联组成的电路,按键开关的检测其原理就是高低电平的检测。按键开关由于其拨动时间,难免产生误差,所以在编写按键函数时,要额外写一个去抖函数,提高精确性。本次设计人体红外和温度报警上限值就是通过按键设置的,同时还可以设置接收信息手机号码。按键1代表增,按键2代表减,按键3确定设定的值,按键4返回。图3.4为按键控制电路原理图:图3.4 按键控制电路3.4 电源电路单片机的电源采用直流5V供电,电源模块包括一个3脚的电源座子和6脚的电源开关。电源座子用于连接外部的电源插头,电源开关用于控制整个单片机的电路开和关。电源座子的2口引脚接地,3口引脚仅仅起到固定的作用,没有特殊的用处,1口引脚连接到电源开关的3口引脚,电源开关的1、3口引脚和4、6口引脚的作用相同,用于电源的正极输出。电源开关的2、5口引脚作为单片机的接地引脚,在使用时采取相对的选择,即选择1、3口引脚作为输出,那么就要选择5口引脚作为接地引脚,选择4、6引脚作为输出端口,2口引脚则作为接地引脚。本次单片机的传感器和无线传输芯片的电压都在5V内,所以5V的电压足够满足。若有12V或者其他电压的传感器,则可以采取升压模块将5V提升到更高的电压,进行供电。本次设计的电源电路如图3.5所示:图3.5 电源电路3.5 报警电路当按键设置好温度和人体红外浓度的上限值后,单片机就进行循环监测,时刻监测温度和是否有人,并和报警上限进行比较。本次报警电路主要分为三部分,分别是蜂鸣器报警,振动器报警和短信报警。下面介绍一下蜂鸣器的工作原理,蜂鸣器是一种蜂鸣元器件,供电时就进行蜂鸣,操作非常简单。市场上有很多蜂鸣器,我们选择提供5V电源的蜂鸣器被认为是实用的。当我们使用蜂鸣器时,我们有一个小技巧。如果我们觉得蜂鸣器不够响,我们可以把蜂鸣器顶部的纸去掉。在本次设计中,当检测到温度或者人体红外浓度高于报警上限时,蜂鸣器报警。蜂鸣器电路如图3.6所示,由3部分组成,一部分是一个1k的电阻,第二部分是一个PNP三极管,最后一部分就是蜂鸣器。三极管采用PNP三极管,其主要功能是放大电流和电平特性,因为单片机电路的电路非常小,无法提供蜂鸣器所需的电流,经过三极管放大驱动电流后,电流放大200倍,驱动蜂鸣器报警8。图3.6 蜂鸣器报警电路3.6 LCD1602液晶显示电路当单片机系统检测到温度和人体红外农行都采集到之后,单片机控制显示器显示当前的温度和是否有人,这里我们选用操作简单的LCD1602液晶显示器作为输出显示器,LCD1602液晶屏是一种常见的液晶屏,工作电压为5V,而且体积小,显示内容足够,因此应用在非常多的机器上。LCD1602液晶屏的显示区域分为2行,每行可以显示16个字符,所以该显示屏能够同时显示32个字符。其工作原理是利用液晶的特性,其显示内容可以根据电压进行控制,通过对电压的微调,从而显示出数字、字符、字母等一些数据。图3.7是LCD1602液晶屏的引脚图。在和单片机进行通信时,和P0口进行连接,中间要有上拉电阻进行连接。本次设计LCD1602液晶显示屏上展示检测到的温度、人体红外值和其报警上限值。其引脚连接图如图3.7所示:图3.7 LCD1602液晶显示电路图3.7 SIM800模块电路本次设计无线通信部分采用SIM800C模块作为短信发送模块。SIM800C模块是一款4频的GSM/GPRS模块,功能非常强大,插上卡后,不仅可以接听拨打电话,还可以发送接收短信。此外还具有蓝牙功能,可以使用蓝牙进行远程遥控。SIM800通信模块工作电压是5-18V,单片机5V电压满足其工作电压要求,而且体积很小,价格非常便宜。在本次设计中用于发送报警短信。当按下紧急按钮是,发送紧急短信。当检测到温度或者人体红外浓度高于报警上限值时,单片机控制短信模块发送报警短信,短信内容为:“当前温度/是否有人过高,请及时处理”。图3.8是sim800模块电路图,从图中可以看出,1号和5号引脚接地,外界一个二极管,防止发送完短信后较大的反向电流击穿芯片。2号引脚连接单片机的TX引脚,3号引脚连接单片机的RX引脚。图3.8 sim800模块电路3.8 温度传感器模块电路本次设计采用DS18B20温度传感器模块,温度传感器DS18B20主要是用来进行温度检测,当我们对温度进行检测,我们用防水的DS18B20就可以进行检测。DS18B20传感器是市场上采用的温度传感器。此传感器占用的面积非常简单,精度为0.2.采用的是单总线的数据传输方式。这个传感器抗干扰能力非常的强,经常用于高炉测温、机房检测、家庭温度控制等方面适合于很多空间比较小的场合和数字温度检测等领域。这款温度传感器转换时间为75ns,检测的结果以数字量方式串行传送。作为一款含有已校准数字信号输出的温度复合传感器,DS18B20温度传感器采集的数值是非常准确的,其采集范围为:温度0-502。DS18B20采用单总线双线串行通信协议,采集过程首先是STC89C52单片机发起开始信号,通过I/O引脚发送给DS18B20,之后DS18B20反向单片机发送响应,并将采集到的数据按照40位数据帧格式输出,最高位在前,数据格式为:温度整数数据+8bit温度小数数据+8bit校验位,温度小数部分默认为0,即单片机采集的数据都是整数,校验位为4个字节的数据相加取结果的低8位数据作为校验和,单片机将检测到的数据解析,得出温度的具体数值,最终显示在液晶屏上。温度传感器模块电路图如图3.8所示:图3.9 温度传感器电路3.9 人体红外传感器模块电路菲涅尔透镜作用有两个:一是聚焦作用,即将热释红外信号折射(反射)在PIR上,第二个作用是将探测区域内分为若干个明区和暗区,使进入探测区域的移动物体能以温度变化的形式在PIR上产生变化热释红外信号。当人进入感应范围,人体释放的红外光透过镜片被聚集在远距离A区或中距离B区或近距离C区的某个段的同心环上,同心环与红外线探头有一个适当的焦距,红外光正好被探头接收,探头将光信号变成电信号送入电子电路驱动负载工作。整个接收人体红外光的方式也被称为被动式红外活动目标探测器。镜片主要有三种颜色:一、聚乙烯材料原色,略透明,透光率好,不易变形。二、白色主要用于适配外壳颜色。三、黑色用于防强光干扰。镜片还可以结合产品外观注色,使产品整体更美观。每一种镜片有一型号(以年号+系列号命名),镜片主要参数:一、外观描述外观形状(长、方、圆)、尺寸(直径)。以毫米为单位。二、探测范围指镜片能探测的有效距离(米)和角度。三、焦距指镜片与探头窗口的距离,精确度以毫米的小数点为单位。长形和方形镜片要呈弧形以焦距为单位对准探头窗口。镜片与探头的配合应用我们常用的是双源式探头,揭开滤光玻璃片,其内部有两点对714um的红外波长特别敏感的TO5材料连接着场效管。图3-3 信号产生输出示意图静态情况下空间存在红外光线,由于双源式探头采用互补技术,不会产生电信号输出。动态情况下,人体经过探头先后被A源或被B源感应,SaSb产生差值,双源失去互补平衡作用而很敏感地产生信号输出,见图3-3。当人对着探头呈垂直状态运动,Sa=Sb不产生差值,双源很难产生信号输出。因此,探测器安装的位置与人行走方向呈平行为宜。3.5 传感器及处理电路 3.5.1 红外线传感器 红外传感器能以非接触形式检测出人体辐射的红外线,并将其转变为电压信号。 传感器具有成本低、不需要用红外线或电磁波等发射源、灵敏度高、可流动安装等特点。实际使用时,在 传感器前需安装菲涅尔透镜,这样可大大提高接收灵敏度,增加检测距离及范围。实验证明, 红外传感器若不加菲涅尔透镜,则其检测距离仅为2 m左右;而配上菲涅尔透镜后,其检测距离可增加到10 m以上。由于 传感器输出的信号变化缓慢、幅值小(小于1 mV),不能直接作为照明系统的控制信号,因此传感器的输出信号必须经过一个专门的信号处理电路,使得传感器输出信号的不规则波形转变成适合于单片机处理的数字信号。根据以上要求,人体 检测电路组成框图如图3-4所示。检测对象菲涅尔透镜热释电红外传感器信号处理电路Vm图3-4人体 检测电路组成框图3.5.2 信号处理电路 本设计采用BIS0001来完成对 传感器输出信号的处理。它配以 红外传感器和少量外接元器件就可构成被动式的 红外开关、报警用人体 传感器等。它能自动快速开启各类白炽灯、荧光灯、蜂鸣器、自动门、电风扇、烘干机和自动洗手池等装置,特别适用于企业、宾馆、商场、库房及家庭的过道、走廊等敏感区域,或用于安全区域的自动灯光、照明和报警系统。 它主要由运算放大器、电压比较器、状态控制器、延迟时间定时器以及封锁时间定时器等构成。BIS0001的引脚图如图图3-5BIS0001的引脚图由BIS0001构成的信号处理电路如图3-6所示。图3-6 BIS0001的 红外开关应用电路图 图3-6中,运算放大器OP1将 红外传感器的输出信号作第一级放大,然后由C3耦合给运算放大器OP2进行第二级放大,再经由电压比较器COP1和COP2构成的双向鉴幅器处理后,检出有效触发信号Vs去启动延迟时间定时器,输出信号Vo经晶体管T1放大驱动继电器去接通负载。R3为光敏电阻,用来检测环境照度。当作为照明控制时,若环境较明亮,R3的电阻值会降低,使9脚的输入保持为低电平,从而封锁触发信号Vs。SW1是工作方式选择开关,当SW1与1端连通时,芯片处于可重复触发工作方式;当SW1与2端连通时,芯片则处于不可重复触发工作方式。输出延迟时间Tx由外部的R9和C7的大小调整,值为Tx24576xR9C7;触发封锁时间Ti由外部的R10和C6的大小调整,值为Ti24xR10C6。3.10 LED电路模块本次设计采用直插式LED灯分别模拟温度报警指示灯和人体红外报警指示灯等检测到的温度或者人体红外浓度超出设定的上限值后,对应的报警指示灯亮起。因化学性质又分有机发光二极管OLED和无机发光二极管LED。二极管又称浸提二极管,它是一种具有两个电极的装置,单项传导电流的电子期间,其原理图如图3.11所示:图3.11 LED报警指示灯电路图3.11 单片机下载程序单片机下载程序8有很多的方法,比如串口下载,CH340下载、MAX232转换等。本次设计用到的下载方法为专用的下载器。操作步骤十分简单只需要把单片机取下放到下载器上就可以了。但是需要注意的是:我们用的keil4 编译器9简单可以理解为把代码封装起来,放在一个函数库中。单片机下载程序必须要生成一个文件名为hex文件,因为单片机程序用的keil4只是编译环境,当我们把代码生成hex文件后单片机会对程序进行加密,这样其他人就无法盗用你的程序,这是对程序开发者应有的血汗,尊重他人的劳动果实。在程序编译过程中需要选择波特率为9600.其实很好理解。因为晶振其实就相当是单片机的心脏,为单片机提供了一定的频率的时钟信号如果单片机的外接晶振1011.0592选择类型错误会影响到整个电路的使用效果比如定时器等。单片机的定时器系统,串口通信方式等都是要一定的波特率。一般我们会选择11.0596MHZ。如果我们选择错误,虽然代码编译没有问题,模块没有,问题,但是无线将无法接受到信号。这一点需要特别注意。3.12 复位按键本次设计是按键复位方式,此电路是当按键被按下时,相当于一个上电复位;当按键压下时,RST端通过电阻和+5V的电源相连,保证提供宽度的阀值电压来的完成复位。我们都知道单片机最小系统由3个部分构成。也就是我们说的电源电路单片机和晶振电路。但是不可忽视的是复位电路的重要组成部分是复位电路。单片机在开机时肯定是需要复位,复位其实也可以理解为单片机程序从头开始跑,因为单片机做跑程序的时候不会向人一样来进行思考,要不就是根据指令来处理数据,比如中断等。单片机所指的初始化,其实就是程序从头开始跑。我们经常减见到的现象比如电脑死机,我们需要重新启动一下电源才可以。它可以让CPU和其他功能处于一个初始状态,而且这个状态会从单片机的main函数开始工作。以8051为内涵的51单片机在跑程序的时候需要初始化一下,其实这我们编写程序的时候就可以知道,很多模块或者是芯片在写程序的时候都通常需要来写一个初始化。这样不单单可以让以前放入的数据进行一个清理。所以单片机复位是看起来比较简单其实是一个很复杂的一个操作过程。任何单片机都有复位按键,在断电后也会要求复位,比如当程序运行到有问题卡死时也需要进行复位按键操作,通常采用上电复位和按键复位这两种方式。本次设计是按键复位方式。当程序运行时,可以通过复位按键来控制CPU进入复位状态。此电路是当按键被按下时,相当于一个上电复位;当按键压下时,RST端通过电阻和+5V的电源相连,保证提供宽度的阀值电压来的完成复位。按键复位电路如图3.12所示,图3.12 复位电路图四 软件系统设计4.1 软件主程序架构当硬件端设计调试完成后,就要针对单片机和外设传感器进行软件设计。系统设计首先要构思清楚,首先画一个流程图,然后按照传感器先后顺序,进行系统设计。首先各个硬件开始初始化,温度传感器,人体红外传感器,LCD1602液晶屏,蜂鸣器,SIM800短信模块,之后各个模块开始工作,实时检测温度、是否有人,并进行相应的报警操作。启动的步骤为:GSM模块初始化,温度传感器检测当前温度,人体红外浓度传感器检测当前人体红外浓度。按键设置温度报警上限和人体红外浓度报警上限。当超出温度或者人体红外报警上限值时,蜂鸣器报警,对应的LED报警指示灯亮起,同时SIM800模块发送报警短信到手机。紧急按键用于发送紧急短信,整个主流程图如图4.1所示:开始 SIM800串口初始化DS18B20初始化 人体红外初始化 LCD1602显示当前信息 手机发送指令否否是发送短信返回发送短信是发送短信是按键设置否温度上限防盗模式是是否按下按键图4.1 系统流程图4.2 LCD1602显示流程图本次设计采用LCD1602液晶屏作为显示器,LCD1602液晶显示屏上电后,进行LCD1602子函数中,首先进行屏幕初始化操作,屏幕上的数据清零,内部存储清空。之后和单片机进行双向通信,单片机控制显示屏亮度和显示内容,延时一定时间后,进入数据写入操作,将检测到的温度和是否有人显示在液晶显示屏上。此外,在设置温度和人体红外报警值上限时,根据按键操作,屏幕上实时变换数值。单片机操控写入引脚写入要显示内容的命令。之后显示屏执行指令,将内容显示出来。LCD1602显示流程图如如4.2所示:LCD1602液晶显示屏,收先进行初始化操作,初始化显示内容为uchar code Init1=Temperature: C;之后会有演示操作,lcd延迟命令为:void LCDdelay(uint z);写入命令void write_com(uchar com);写数据void write_data(uchar date);初始化void Init1602() write_com(0x38)读取字节for(i=0;i14;i+) write_data(Init1i);流程图如下:图4.2 LCD1602初始化流程图4.3 串口函数流程图当GSM模块和单片机连接好后,插入一张SIM卡,进行供电,按下GSM模块的开关,电源指示灯亮起。首先进行串口初始化,这时LCD1602液晶显示屏上显示GSM INIT,之后单片机开启总中断,当有信号输出后,进入总中断,然后开启串口中断,当需要发送短信时,进入串口中断。之后启动定时器1,一定时间后发送报警短信,然后设置串口的工作方式,这里设置1,最后给定时器设置初值,整个流程进行完毕。串口的作用是单片机和SIM800模块之间进行通信,将报警短信发送给设定的手机号。串口初始化流程图如图4.3所示:图4.3 串口初始化流程图4.4 温度检测流程图开启开关电源后,温度传感器开始工作,首先将温度传感器放置在空气中,然后进入温度监测子程序中,温度传感器将空气中的温度转换成电信号进行输出,单片机接收到数据后进行计算,之后显示在LCD1602液晶显示器上。DS18B20数字温度测温模块首先初始化,然后读取DS18B20数字温度测温模块序列号,发送跳过RAM信号,之后进行温度转换,随后复位DS18B20数字温度测温模块,若无中断,则读取数据,若有中断,则继续回归到复位操作。DS18B20是程序的WENDU(int temperature);显示温度传感器经过短暂的延迟750us void delay(uint count),然后发送复位信号void dsreset(void),read a bit 读取一位字节,写入一个直接到DS18B20里void tmpwritebyte(uchar dat) for(j=1;j1; 发送温度转换命令, tmpwritebyte(0xcc); tmpwritebyte(0x44); 最后获取温度。温度检测流程图如图4.4所示:图4.4 温度检测流程图4.5 按键子程序本次设计按键电路功能不多,分别是设置温度和人体红外浓度报警上限值和接收报警短信的手机号码。单片机的按键具有4个引脚,相同的一侧是连接的,4个按键并联在一起,只要将相同的引脚连接一起即可。按键的工作原理就是对低电平信号的检测,在主程序中,循环执行检测,一旦检测到按键低电平信号,单片机产生信号中断,进入按键子程序中。4个按键分别表示加、减、确定、返回。在不同页面表示不同的功能。分别用4个函数执行不同的操作,注意进行延时操作,防止误差。按键可以用来设置温度和人体红外的报警上限,接受短信号码。在子函数按键函数中,要时刻判断按键是否按下if(K1=0)while(K1=0)去抖;mode+;数字加 如果此时检测到是按键3被按下,if(mode=3),那么数字减 ,mode=0模式切换;如果是按键2被按下,else if(K2=0)delay_key()延迟;然后while(K2=0);是否按下模式为加if(mode=1) Max+;到最大 if(Max=100)Max=100;流程图如下:设置按键是否按下 子程序入口返回Y加减NY图4-5 按键流程图4.7 报警流程图主函数执行后,一直检测是否发生中断,首先通过按键设定好温度和人体红外浓度的报警上限,然后检测是否超出上限值,人体红外感应模块是否发出开关信号,温度和人体红外通过循环函数判断其值是否超出上限,当报警时,蜂鸣器报警,对应的LED报警指示灯亮起,同时SIM800发送报警短信到对应的手机上。报警流程图如图4.7所示:图4.7 报警流程图4.8 短信模块流程图当人体红外感应模块返回开关信号,检测到的温度或者是否有人大于报警上限时,单片机控制短信模块发送报警信息。其工作流程如图4.4所示,当单片机有报警信息要发送时,检测此时是否中断产生,当出现串行中断后,进行PDU编码,将信息按照对应的格式,发送出去。若不成功则重新发送。sim800短信模块流程图如图4.8所示:图4.8 通信模块流程图五 系统调试5.1 PCB设计在设计电子电路的适合,首先要进行PCB设计,将本次设计覆盖到的一些芯片,传感器,按键等元器件按照功能划分,在PCB图上找到合适的位置进行绘制,这里要注意打孔的位置和上下层PCB连接,先绘制STC89C52单片机,然后再绘制单片机最小系统,在P0口绘制上拉电阻,确定好位置后放入LCD1602液晶屏,之后根据引脚所在位置和整体排布放置各个模块的位置,再用导线将对应的引脚连接,保证线路畅通,没有交叉。在绘制好PCB电路图之后,要进行仿真设计,打开软件点击仿真,可以看到仿真图上功能完全OK,所以PCB设计没有问题,接下来就要进行单片机系统的焊接调试。5.2 焊接调试准备好所有的材料和电烙铁,按照设计好的电路板原理图,开始单片机电路板的焊接。首先将插排焊接上去,之后焊接单片机最小系统的晶振和复位电路。确定好LCD1602液晶显示屏位置,将上拉电阻焊接在P0口,之后通过导线连接显示屏。后面分别焊接各个传感器模块,温度传感器,人体红外浓度传感器, AD数模转换,震动传感器,SIM800短信模块,蜂鸣器,电源电路。最后用导线将各个模块按照电路图连接起来,确保没有出现短路现象。STC89C52单片机用烧录器将编译好的软件烧录进去,最后插入到插排上。用5V直流电源供电,按下开关,观察LCD1602液晶显示屏是否正常显示,正常显示后,说明显示电路正常,之后观察其他传感器是否正常工作,显示屏上是否有输出,如果正常显示,则一切都没问题,当出现问题时,就要找出具体出问题的部分,逐一解决。5.3 功能调试单片机焊接测试没问题后,进行功能调试,测试软件是否正确。首先给单片机重新上电,这是LCD1602液晶屏和SIM800首先进行初始化操作,LCD1602液晶屏上应该出现“GSM INIT”,这一步没问题后,接下来测试各个传感器功能。 LCD1602显示屏页面分为两行,上面显示测得的温度和人体红外浓度,单位是摄氏度和浓度,下面显示报警上限。将温度传感器和人体红外传感器放置于室内,检测几秒后,可以在LCD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论