1、 编号(学号): *大学本科学生毕业设计 题 目: 单片机人体红外感应报警器的设计 The Design of the Human Body Infrared Sensor Alarm on SCM 学院名称: 电子信息工程学院 专业名称: 电子信息科学与技术专业_年 级: 2012级xx班 学生姓名: xxx 学 号: xxx 指导教师: xxx 职称/学历: 副教授 / 硕士 教务处 制 目录 摘要.1 Abstract.2 1 绪论.3 1.1 设计意义.3 1.2 设计理论原理.3 1.3 设计的可实现性及实用性.3 2 设计装置及概述.4 2.1 控制装置.4 2.2 感应装置.4
2、3 设计的实现.5 3.1 系统的总体设计.5 3.2 系统结构.6 3.2.1 电源模块.6 3.2.2.感应装置.7 3.2.3 热释感应器内部处理电路.7 3.2.4 信号采集处理模块.9 4 程序的实现.11 4.1 系统控制和处理.11 4.1.1 单片机引脚图.11 4.1.2 输入指令电路.12 4.1.3 警报系统的实现.13 4.1.4 设计的工作流程.13 4.2 编辑程序的工具 .15 4.3 硬件调试及调试中遇到的问题.15 4.4 仿真图.16 5 总结.17 参考文献.18 附件一:总体原理图设计及器材.19 附件二:程序源代码.21 附件三:实物图.26 致谢.2
3、7 单片机人体红外感应报警器的设计 电子信息工程学院 电子信息科学与技术专业2012级 指导教师:摘要:随着现在社会高新技术的快速发展,高科技产品已经渗透到人们的平常生活,可以看到人们的生活发生了巨大的改变。相比以前,人们现在对自身安全以及财产安全越来越重视,现在许多小区都有着监控以及保安看管。也由于红外感应技术的应用,为了安全从而提供多重保险,于是,许多家庭都安装了报警系统,这有效的保护了大家的财产安全。另外不安全或者机密的地方,更需要安装报警装置,给予警示的作用。这样可以防范于未然。这样可以保障社会财产和个人安全。本文介绍一种基于单片机STC89C52的人体红外感应警报装置,包括热释电红外
4、传感器的基本特点及原理。详细描述了如何实现报警的功能和系统各部分的组成。感应部分采用热释电红外感应装置。关键字:单片机;报警器;热释电红外传感器 The design of the human body infrared sensor alarm on SCM School of Electronic Information Engineering, Electronic Information Science and Technology , Professional, Class 09 Grade 2012. Inistructor: Abstract:With the rapid dev
5、elopment of high and new technology now society, high-tech products has penetrated into peoples normal life, can see the great changes have taken place in peoples life.Now than ever before, people for their own safety and property safety pay more and more attention to, now have many community securi
6、ty monitoring and supervision.Also due to the application of the infrared sensor technology, for the sake of safety to provide multiple security so many families install the alarm system, the effective protection for your property. Other unsafe or confidential, and more need to install the alarm dev
7、ice, give the warning role. Can such precautions. This can guarantee social property and personal safety.This paper introduces a human body infrared sensor based on microcontroller STC89C52 alarm device, including the basic characteristics and principle of the pyroelectric infrared sensor. Describes
8、 in detail how to realize the alarm function and system composition of each part. Induction part USES the pyroelectric infrared sensor. Keywords:SCM;alarm;Pyroelectric infrared sensor 1 绪论1.1设计的背景及意义 结合实际问题,在居民家中需要一套防盗报警装置,以防止某些不速之客。在古董或者收藏店铺中,限制人们在一个规定的距离,保证文物的安全和观赏者的安全。总的来说,就是在某些场合下,需要警示人们或者提示人们。目
9、的是为了保障社会财产及个人权益和安全。设计了热释电人体感应红外报警装置。1.2设计的基本原理及结构模块 本红外线防盗报警系统由热释电红外传感器、蜂鸣器、单片机控制电路、LED指示电路及软件组成。模块划分为数据采集、按键设定、报警等。对此设计来说呢,是基于单片机来实现的,所以单片机部分是核心部分。1.3系统可实现功能和实用性 在某些场合下,比如,场合一:当某个地方或者需要人们警惕的时候,比如此次有电,有坑或者此处施工,我们都可以手动开启布放警报装置示意人们当心。因为现在出现了许多手机党,俗称“低头族”。有时他们可能会不注意或不当心。场景二:当大家出门时,可把报警系统设置在外出布防状态,当有人非法
10、闯入时,热释电红外传感器将探测到动作,设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,红外热释电模块送出TTL 电平至STC89C52单片机,经过处理后发出声音,这样便起到警示的作用。目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。 2 设计装置及概述2.1 控制装置 正是因为单片机的快速发展。本系统采用了热释电红外线传感器,它的制作简单、成本低、灵敏度高,安装比较方便,而且防盗性能比较稳定、安全可靠、抗干扰能力强。基于如此多的优点,而且方便安装,使用简单。在绝大多数情况下,它可以帮助使用人员
11、,诸如用户或者安保人员以极大的方便。2.2 感应装置在感应装置方面,据有关研究得知其感应原理:人体辐射的红外线中心波长为910-um,而探测元件的波长灵敏度在0.220-um范围内几乎稳定不变。在传感器顶端开设了一个装有滤光镜片的窗口,这个滤光片可通过光的波长范围为710-um,正好适合于人体红外辐射的探测,而对其它波长的红外线由滤光片予以吸收,这样便形成了一种专门用作探测人体辐射的红外线传感器。该设计包括硬件和软件设计两个部分。模块化分为数据采集、按键控制、报警等模块。电路结构可划分为:热释电红外传感器、蜂鸣器、单片机控制电路、LED指示灯组成。红外感应源通常采用热释电元件,这种元件在接收到
12、人体红外辐射温度发生变化时就会失去电荷平衡,向外释放电荷,后续电路经检测处理后就能产生报警信号。 3 设计的实现3.1系统的总体设计 一般来说,只要涉及到电子科技领域的,要想对某个设计做出成熟的体现,都会对该设计进行软件和硬件的两个方面的涉及。软件方面实现逻辑方面的操作,能够提供所要求功能和性能的指令。硬件方面便通过这些指令来具体实现操作。按照设计的要求,该设计将会出现如下结构:红外感应部分、STC89C52单片机、报警系统三大部分。红外感应部分主要检测人体辐射来获取信息从而交给单片机。单片机主要通过之前写好的指令来处理相关信息。报警系统将会发出声音从而达到提示或警示的作用 。其中处理器采用5
13、1系列单片机STC89C52。整个系统是在系统软件控制下工作的。设置在外部的红外感应装置将人体辐射的红外光谱变换成电信号,送至单片机。在单片机内,经软件查询、识别判决等环节实时发出入侵报警状态控制信号。驱动蜂鸣器及报警指示灯报警。 电源开关红外感应装置 STC89C52单片机单片机复位电路LED指示灯报警电路按键控制 图3.1 总体设计3.2系统结构3.2.1 电源模块 本报警系统电压为4.5v左右,为方便可以用usb线连接。也能直接接3个1.5V的直流干电池提供电源,然后用导线连接电源接口模块。3.2.2感应装置 热释电传感器(即检测人体辐射):红外传感器技术是近年来发展最快的技术之一,红外
14、传感器目前已广泛应用于航空航天、天文、气象、军事、工业和民用等众多领域,起着不可替代的重要作用。 红外红,实质上是一种电磁辐射波,其波长范围大致在0.78m1000m频谱范围内,因其是位于可见光中红光以外的光线,故而得名为红外线。任何温度高于绝对零度的物体,都会向外部空间以红外线的方式辐射能量。利用红外辐射实现相关物理量测量的传感技术,即红外传感技术。热释电红外传感器:主要是由一种高热电系数的材料,如锆钛酸铅系陶瓷、钽酸锂、硫酸三甘钛等制成尺寸为2*1mm的探测元件。在每个探测器内装入一个或两个探测元件,并将两个探测元件以反极性串联,以抑制由于自身温度升高而产生的干扰。由探测元件将探测并接收到
15、的红外辐射转变成微弱的电压信号,经装在探头内的场效应管放大后向外输出。为了提高探测器的探测灵敏度以增大探测距离,一般在探测器的前方装设一个菲涅尔透镜,该透镜用透明塑料制成,将透镜的上、下两部分各分成若干等份,制成一种具有特殊 光学系统的透镜,它和放大电路相配合,可将信号放大70分贝以上,这样就可以测出20米范围内人的行动。 菲涅尔透镜利用透镜的特殊光学原理,在探测器前方产生一个交替变化的“盲区”和“高灵敏区”,以提高它的探测接收灵敏度。当有人从透镜前走过时,人体发出的红外线就不断地交替从“盲区”进入“高灵敏区”,这样就使接收到的红外信号以忽强忽弱的脉冲形式输入,从而强其能量幅度。人体辐射的红外
16、线中心波长为910-um,而探测元件的波长灵敏度在0.220-um范围内几乎稳定不变。在传感器顶端开设了一个装有滤光镜片的窗口,这个滤光片可通过光的波长范围为710-um,正好适合于人体红外辐射的探测,而对其它波长的红外线由滤光片予以吸收,这样便形成了一种专门用作探测人体辐射的红外线传感器。3.2.3热释感应器内部处理电路BISS0001芯片:是一款传感信号处理集成电路,只要热释感应器把红外线接收到信号传输到BISS0001里进行信号处理,它本身静态电流极小,工作电压在3V5V之间,当工作电压为5V时输出的驱动电流为10MA。配以热释电红外传感器和少量外围元器件即可构成被动式热释电红外传感器,
17、广泛用于安防,自控等一些领域,它是有16个管脚组成的一种集成块。如图3.2.3所示为BISS000集成芯片的内部框图,管脚功能说明如表3.2所示。 图3.2 BISS0001内部框图 表3.1 管脚功能说明图引脚名称I/O功能说明1AI可重复触发和不可重复触发选择端。当A为“1”时,允许重复触发;反之,不可重复触发2VOO控制信号输出端。由VS的上跳前沿触发,使Vo输出从低电平跳变到高电平时视为有效触发。在输出延迟时间Tx之外和无VS的上跳变时,Vo保持低电平状态。3RR1-输出延迟时间Tx的调节端4RC1-输出延迟时间Tx的调节端5RC2-触发封锁时间Ti的调节端6RR2-触发封锁时间Ti的
18、调节端7VSS-工作电源负端,一般接0V8VRFI参考电压及复位输入端。通常接VCC,当接“0”时可使定时器复位9VCI触发禁止端。当VcVR时允许触发(VR0.2VDD)10IB-运算放大器偏置电流设置端,经RB接VSS端,RB取值为1M左右。11VCC-工作电源正端,范围为35V122OUTO第二级运算放大器的输出端132IN-I第二级运算放大器的反相输入端141IN+I第一级运算放大器的同相输入端151IN-I第一级运算放大器的反相输入端161OUTO第一级运算放大器的输出端 由图可见BISS0001 由运算放大器、电压比较器和状态控制器、延迟时间定时器、封锁时间定时器即参考电压等构成的
19、数模混合专用集成电路。可广泛应用于多种传感器和延时控制器。首先,根据实际需要,利用运算放大器OP1组成传感信号预处理电路,将信号放大。然后耦合给运算放大器OP2,再进行第二级放大,同时将直流电位抬高为VM(0.5VDD)后,将输出信号V2送到由比较器COP1和COP2组成的双向鉴幅器,检出有效触发信号Vs。由于VH0.7VDD、VL0.3VDD,所以,当VDD=5V时,可有效抑制1V的噪声干扰,提高系统的可靠性。 COP3是一个条件比较器。当输入电压VcVR时,COP3输出为高电平,进入延时周期。 当A端接“0”电平时,在Tx时间内任何V2的变化都被忽略,直至Tx时间结束,即所谓不可重复触发工
20、作方式。当Tx时间结束时,Vo下跳回低电平,同时启动封锁时间定时器而进入封锁周期Ti。在Ti时间内,任何V2的变化都不能使Vo跳变为有效状态(高电平),可有效抑制负载切换过程中产生的各种干扰。而可重复触发工作方式下的波形在Vc=“0”、A=“0”期间,信号Vs不能触发Vo为有效状态。在Vc=“1”、A=“1”时,Vs可重复触发Vo为有效状态,并可促使Vo在Tx周期内一直保持有效状态。在Tx时间内,只要Vs发生上跳变,则Vo将从Vs上跳变时刻起继续延长一个Tx周期;若Vs保持为“1”状态,则Vo一直保持有效状态;若Vs保持为“0”状态,则在Tx周期结束后Vo恢复为无效状态,并且,同样在封锁时间T
21、i时间内,任何Vs的变化都不能触发Vo为有效状态。3.2.4 信号采集处理模块 图 3.3 信号处理模块 本电路是将人体辐射的红外线转变为电信号。热释红外感应2脚输入到前置放大器OP1进行放大,然后由C4耦合给运算放大器OP2进行第二级放大。再经过电压比较器COP1和COP2构成双向鉴幅器处理后,检出有效触发信号去启动延时时间定时器输出信号在经过R3进入单片机部分进行处理。延时周期可通过R12来调节输出,在延时时间内只要Vs发生上跳变,Vo就会从Vs上跳变时刻起继续延长一个周期,而电路中的电容为了能够更好的控制了芯片内的定时器,若Vs一直保持为高电平,这样就可以通过P10传输到单片机内进行下一
22、步处理。而根据不同的距离要求来调节R13,最大可以调节到7米左右。图中BISS0001中1脚用跳线连连接住一个接高电平后,在延时时间段内如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才将高电平变为低电平,本电路设计就是可触发方式。 4 程序的实现4.1 系统控制和处理 使用STC89C52单片机的理由:单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、
23、图像、网络、复杂的输入输出系统集成在一块芯片上。而单片机STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。根据STC89C52的设计,它具有很多标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,内置4KB EEPROM,MAX810复位电路,3个
24、16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。单片机没有时钟电路是不会正常工作的。时钟电路本身不会控制,它是通过程序让单片机一句时钟做相应的工作。决定单片机的执行速度。XTAL1(19引脚)和XTAL2(18引脚)分别为反向放大器的输入
25、和输出,该反向放大器可以配置为片内振荡器。如采用外部时钟源驱动器件,XTAL2应不接。单片机在时钟电路工作以后,在RESET(第9引脚)端持续给出2个机器周期的高电平时就可以完成复位操作。本设计采用的是外部手动按键复位电路,需要接上上拉电阻来提高输出高电平的值。4.1.1 单片机引脚图单片机最小系统:是指用最少的元件组成单片机能够工作的系统。一般包括:单片机、复位电路、时钟电路(该系统中也可以叫晶振电路)构成。要使单片机工作起来最基本的电路构成为单片机最小系统如图4.1所示。 图 4.1 信号处理模块4.1.2 输入指令电路 本电路的设计就是为了控制电路中布防和紧急状态下不同的工作形式,当按下
26、布防按键后, 20秒后进入监控状态,当有人靠近时,热释红外感应到信号,传回给单片机,单片机马上进行报警。当遇到特殊紧急情况时,可按下紧急报警键,蜂鸣器进行报警。如图4.2所示。 图4. 2 按键部分4.1.3 警报系统的实现在单片机的I/O 里会输出高低电平,在P20、P21和P22分别接上LED指示灯而P23接上蜂鸣器而蜂鸣器外接个8550的三极管起到开关作用,当三极管达到饱和状态下就驱动了蜂鸣器工作了 。 图4. 3 指示灯和报警电路4.1.4 设计的工作流程 该设计工作流程图如下图所示:开始布防按键按下倒计时结束20秒倒计时开始检测到有无信号蜂鸣器报警,发光二级管闪烁紧急按键按下N蜂鸣器
27、报警结束 图4.4主程序工作流程图 4.2 编辑程序的工具 需要使用Keil编辑器。 它是 C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil则为其提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。 C51工具包的整体结构:uVision与Ishell分别是C51 for Windows和for
28、Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。 4.3 设计及调试中遇到的问题及注意1. 焊接时需要保证各个元件的导通性是否良好,然后再依据电路图连接实物并焊
29、接实物,在焊接元器材的过程中镇定,沉着。切勿将器材错焊,漏焊。否则不仅浪费了资源,也影响焊接心情导致设计不能很好完成。2. 检查时进行加电检查。当系统加电时,首先检查所有插座或器件引脚的电源端是否有符合要求的电压值,接地端电压值是否接近零,接固定电平的引脚端是否电平正确。3. 在最初的编写程序的时候,总是出现错误或编译不通过。然后进过温习知识和网上查询资料。虽然做出了一定的效果,单感觉走了不少弯路。所感慨学知识一定要多温习。4.4 仿真图 图4.5系统仿真图 5 总结该设计实现了一种基于单片机技术通过红外人体感应装置获取信息的电智能防盗报警器。以STC89C52单片机为工作处理器核心,外接热释
30、电红传感器,可以限时布防也可以手动即使布防的警报装置。它是一种新颖的被动式红外探测器件,能够以非接触方式探测出人体发出的红外辐射,并将其转化为相应的电信号输出。平时传感器输出低电平,当有人出现在该系统内时输出低电平变为高电平,当此时高电平输入单片机,单片机经过自己写的程序进行下一步指令,即报警器报警,LED等闪烁。使用方法也很简单,老人小孩都可以操作。不管是家庭还是公共场所也都可以使用。一来防盗,二来可以在危险地方警示人们小心。 在这次的毕业设计中,自己也学习到了很多,之前没有遇到过知识,或者学了的又忘了的。让我更加清楚活到老,学到老的老话了。培养了我的独立思考能力,提高了自己的实际动手能力,
31、同时,也发现了自己的不足之处,和平时忽略的问题,并需要重新规划学习任务,转变为更科学的学习方法。让自己能变得更强。以便于适应社会的快节奏。和更容易解决工作的遇到的实际问题。 参考文献 1胡萍.串口通信的红外报警器的研制J.计算机与现代化,2010(10):15-16. 2余锡存,曹国华. 单片机原理及接口技术(第二版)M. 西安:西安电子科技大学出版社,2006. 3阎石. 数字电子技术基础(第五版) M. 北京:高等教育出版社,2006. 4姜道连等.用于AT89C51设计红外报警器的设计与制作J.国外电子元器件,2010(12):31-34.5冯国进.嵌入式Linux驱动程序设计从入f-J
32、至U精通D田北京:清华大学出版社,20086蔡文斋.专业级串口调试器设计. 现代电子技术, 2010. 7刘刚,彭荣群. Protel DXP 2004 SP2原理图与PCB设计M. 北京: 电子工业出版社,2007.8 时德钢等.基于串口通信的红外报警器的研究J.计算机测量与控制,2009,10(7):480-482. 附件一:总体原理图设计及器材原理图:材料器件:红色发光二极管5mm1绿色发光二极管5mm1黄色发光二极管5mm1晶振12M1瓷片电容20P2红色发光二极管3mm1自锁开关1按键4电阻2k5电阻10k1红外热电释传感器人体感应1万能板1单片机STC89C521铝电解电容1三极管
33、1警报器1 附件二:程序源代码 #include /调用单片机头文件#define uchar unsigned char /无符号字符型 宏定义变量范围0255#define uint unsigned int /无符号整型 宏定义 变量范围065535#define key_io P1uchar key_can;/ 红外热释电平时为0 有输出为1sbit beep = P23; /蜂鸣器定义sbit red = P22; /红色发光二极管定义sbit green = P21; /绿色发光二极管定义sbit yellow = P20; /黄色发光二极管定义sbit hw = P13; /红外
34、热释传感器定义bit flag_300ms = 0;/*独立按键处理函数*/ void key()static uchar key_new = 0,key_old = 0,key_value = 0;if(key_new = 0) /按键松开if(key_io & 0x07) = 0x07)key_value +;else key_value = 0;if(key_value = 5) /按键松开检测key_value = 0;key_new = 1;/按键松开后进入等待按键状态else if(key_io & 0x07) != 0x07) /按键按下key_value +;else key_
35、value =0;if(key_value = 5)/按键按下消抖key_value = 0;key_new = 0; /按键松开后进入等待松开按键状态key_can = 20;if(key_new = 0) & (key_old = 1)switch(key_io & 0x07)case 0x06: key_can = 1; break; /得到按键值 case 0x05: key_can = 2; break; /得到按键值 case 0x03: key_can = 3; break; /得到按键值 key_old = key_new; /*定时器0初始化程序*/void time_ini
36、t() EA = 1; /开总中断TMOD = 0X01; /定时器0工作方式1ET0 = 1; /开定时器0中断 TR0 = 1; /允许定时器0定时uchar flag_alarm ; /报警标志位uchar flag_bufang ; /布防标志位uchar flag_bufang_en ; /布防标志位使能uint flag_value; /用做定时器的变量/*红外报警处理*/ void hongwai_dis()if(flag_alarm = 1) /报警red = red; /红灯闪烁beep = beep; /蜂鸣器报警if(flag_bufang_en = 1) /准备开始布防green = green; /绿灯闪烁 if(flag_bufang = 1) /确认布防green = 0; /如果延时布防成功 绿灯长亮if(hw = 1) /红外有输出flag_alarm = 1;/*对应不同按键处理*/ void key_with()if(key_can = 1) /按键紧急报警flag_alarm = 1; /报警标志位 ; if(key_can = 2) /布防按键flag_bufang_en = 1;if(key_can = 3) /取消报警 把变量清零flag_alarm = 0; flag_bufang = 0; flag_buf