




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理及应用课程设计论文 09届 自动化 专业 。 班级 题 目 火灾报警器设计 姓 名 逐 陌 学 号 0906。 指导教师 中科院 二一二 年 六 月 二 日一、火灾报警的基本原理 本报警器的工作原理:当发现警情时,探测器将警报信号通过传感器接口送入单片机,单片机的报警中断程序开始运行,调用拨号子程序按照预置号码进行拨号。此时单片机控制mt8880 发送双音频信号拨号,并检测呼叫信号以判定是否可以调用语音模块进行语音报警。当没有警情时,可以通过另一部话机拨打本机,振铃检测电路将振铃音信号转换成ttl 信号传送给单片机,由单片机计数;当经过预设的振铃无人摘机时,系统就会自动摘机,调用远程设置子程序进行远程录音、查询警情等操作。语音报警系统主要完成的功能:感温传感器和感烟传感器通过采集现场信号输入中央处理器,若判断出两种传感器中有一种动作, 表明有异常现象,发异常语音报警信号“温度超限”或“烟雾报警”,同时相应的指示灯亮。此时,若另一传感器也动作,则停止异常报警,而进入火警报警状态,有现场语音“火警”报警提示,火警指示灯亮。同时系统调用远程报警模块,开始逐个拨叫预设的报警电话,直至有一个报警电话拨通,并收到回码。在拨号后首先判断电话线的状态是否为回铃音及对方是否摘机。如是,播放录制好的语音报警内容,如“某某区某某单元某某楼层某某房间发生火警”。否则挂机,拨打下一个号码。二、设计方案 硬件电路主要包括单片机电路,2路传感器报警信号电路,模数转换电路, 语音报警电路,震铃检测电路、模拟摘机和dtmf解调电路,以及主备电控制电路部分。1温度烟雾传感器2信号调理器3a/d转换器6收发码电路5单片机at89c514现场声光报警系统图1 报警电路方框图如图1所示, 报警器硬件由温度烟雾信号采集模块、声光报警模块以及单片机与收发码模块组成。图中1, 2, 3 组成数据采集模块, 4, 5 组成现场声光报警模块, 5,6组成远程报警模块。其中, 1 为传感器(包括烟感和温感) , 将现场温度、烟雾等非电信号转化为电信号;2为信号调理电路, 将传感器输出的电信号进行调理(放大、滤波等), 使之满足a/d 转换的要求; 3为a/d 转换电路, 完成将温度传感器和烟雾传感器输出的模拟信号到数字信号的转换。声光报警模块由单片机和报警电路组成, 由单片机控制实现不同的声光报警(异常报警、故障报警、火灾报警) 功能。单片机与远程报警模块由单片机、mt8880收发码电路组成, 实现远程报警。三、硬件设计1. mt8880接收电路的设计图2 mt8880接收电路连线图当mt8880作为dtmf接收器的时候,dtmf信号经由in和in输入,经过运算放大滤除信号中的拨号音频率,然后发送到双音频滤波器,分离出低频组和高频组信号,通过数字计数的方式检出dtmf信号的频率,并且通过译码器译成4位二进制码。4位二进制编码被锁存在接收数据寄存器中,此时状态寄存器中的延时控制识别位复位,状态寄存器中的接收数据寄存器满标识位置位,对外而言,当寄存器中的延时控制识别位复位时,irql/cp由高电平变为低电平。如果用irqlcp作为单片机的中断信号,irql由高电平变为低电平,向cpu发出中断请求,当cpu响应中断,读出寄存器中的数据后,irql返回高电平。mt8880的d0d3与单片机的p1.0p1.3相连,p1.4p1.7分别与ck,rso,csl,r/wl相连。2. 发送电路设计图3 mt8880发送电路连线图当mt8880作为发送器时数据总线上d0d3四位二进制码被锁存在发送数据寄存器中8,发送的dtmf信号频率由3.58 mhz的晶振分频产生。分频器首先从基准频率分离出8个不同频率的正弦波,行列计数器根据发送数据寄存器中的数据,以八取二方式分离出一个高频信号和一个低频信号,经开关电容做da转换,在加法器中合成dtmf信号,并从tone端输出,电路图如图7所示。应用mt8880使dtmf信号的收发功能于一体,完成dtmf信号的编码与解码,达到数据传输的目的。3. 灯光报警电路由at89c51 p0 口的p0.0p0.3 分别控制4 个发光二极管, 予以光报警, 如图8所示。p114p117 控制的灯依次为绿色(正常信号灯)、黄色(故障信号灯)、红色(异常信号灯)和红色(火灾信号灯)。当这些输出端输出低电平时, 对应的信号灯便会发光报警。图4 光报警电路4. 系统总体电路图四、软件设计1. 数据采集子程序数据采集部分的程序设计包括:驱动adc0809 的in0和in1进行a/d 转换,分别由子程序adc1 (温度转换) 和adc2 (烟雾浓度转换) 完成;单片机接收转换好的数据, 存入指定内存单元, 由int1 中断服务程序完成。每次驱动a/d转换后等待外部中断, 中断到来说明a/d 转换已经完成, 通过中断服务程序读取转换得到的数据。a/ d 采样程序如下: 本程序分住程序和中断服务程序两部分。主程序用来对中断初始化,给adc0809发起动脉冲和送模拟量路数地址等。中断服务程序用来从adc 接受a/d转换后的数字量和判断一遍采集完否。参考程序如下: 主程序: org 0a00h mov r1, #30h /输入数据区始址送r1 mov r4, #2 /模拟量总路数送r4 mov r2, #00h /in0地址送r2 setb ea /开cpu中断 setb ex1 /允许int1l中断 setb it1 /即int1l为边沿触发 mov r0, #0f0h /送端口地址f0h到r0 mov a, r2 /in0地址送a movx r0, a /送in0地址到a/d sjmp $ /等待中断或其它中断服务程序: org 0013h ajmp cint1 /转中断服务程序 org 0100hcint1: mov r0, #0f0h /端口地址送r0movx a, r0 /输入数字量amov r1, a /存入输入数据区inc r1 /输入数据区指针加1inc r2 /修改模拟量路数地址mov a, r2 /下个模拟量路数地址送amovx r0, a /送下路模拟量路数地址,并启a/ddjnz r4, loop /若未采集完2路,则loopclr ex1 /若已采集完2路,则关int1l中断loop:reti /中断返回end2. 火灾判断程序为了降低误报率, 系统采用了多次采集、多次判断的方法。每次数据采集后根据得到的数据对现场情况进行判断:00h 表示正常;01h 表示异常;02h 表示火灾。然后综合多次判断结果做出最终的火情判断。具体判断方法如下:(1) 对温度和烟雾进行了两次数据采集与判断温度100 , 温度异常, 置标志位为1, 否则为0;烟雾(co, co2) 浓度0106% , 烟雾浓度异常, 置标志位为1, 否则为0。(2) 根据温度和烟雾的异常标志位判断现场情况2 个标志位均为0, 表示情况正常, 给53h 或56h 单元送00h; 2 个中仅有1 个为1, 表示情况异常, 送01h;2 个均为1, 表示有火灾发生, 送02h。(3) 综合两次情况做最后判断,并予以报警若53h 和56h 中数据不相同, 说明是误报, 调故障报警子程序;否则按该单元中的数据调相应的报警子程序。00h 为情况正常, 返回;01h 为情况异常, 调异常报警子程序;02h 为现场有火灾, 调火灾报警子程序, 并向消防中心报告火情。3. 电话报警流程设计电话报警模块主要通过中断服务程序来实现。该程序的基本流程是:报警器摘机,自动拨叫号码簿上相应的报警号码,如110、119 ,或一组用户的自己设置的固定电话号码、手机号码。拨叫时,报警器摘机后先对电话线上的信号进行检测,检测到拨号音就拨号,检测不到拨号音说明电话线已有问题,无法拨号,就自动挂机。拨号后等待三秒再检测有无回铃音或忙音,如果都没有,就表明已经接通,可以进行语音报警。如遇回铃音就等待三秒再检测,若等待三次后线路仍然不通,就拨叫下一个号码;若遇忙音就先挂机再等待10s ,重新拨号,如此三次后仍然拨不通,就拨叫下一个号码,直到将电话簿上的所有号码拨完为止。自动电话语音报警程序在发生报警时调用,其程序流程图如图10所示。 nnyyyn电话语音报警程序是否报警?报警性质语音从电话数据库中查找电话号码电话拨号电话连接成功?电话占线?播放语音程序结束等待10s拨打下一电话号码图5 报警流程图报警拨号后对方回铃音和忙音的区别: 按规定回铃音为1s 高电平4 s 低电平方波信号,忙音为高电平和低电平均为0135s方波信号,回铃音和忙音呼叫时间60s,60s后自动挂机。当有报警信号送单片机时,通过软件模拟摘机,预留电话拨号输出后,在接到第一声回铃音或忙音时,定时器开始定时,计数器开始计输入的回铃音或忙音的个数。然后判别在60 s 内,若计数值大于15个脉冲(这时无论60s定时到否)则表示对方为忙音,,应挂机,拨打下一个报警电话。若在60 s 内计数小于14个脉冲,则表示为回铃音。若在少于12个脉冲中间回铃音中断表示对方有人接听,可以播放报警信号对应的报警语音12。若60 s 内一直有回铃音,且定时到,表示对方无人接听,则挂机拨打下一个报警电话,直到电话报警完成。4. mt8880的数据发送程序设计yn开始mt8880初始化串口初始化r1=1?接受数据r1清0发送数据到mt888050ms延时图6 mt8880的数据发送图程序清单如下: org 0000h ajmp main org 0100hmain: mov 30h, #08h mov 31h, #04h mov 32h, #07h mov 33h, #09h mov 34h, #04h mov 35h, #06h mov 36h, #02h clr p1.6 /cs写crb,crb对mt8880进行初始化 clr p1.4 /ck clr p1.7 /r/w setb p1.5 /rso mov p1,#0dh /写cra set p1.4 /触发ck信号 nopnopclr p1.4 /清ck信号mov p1,#00h /写crbsetb p1.4 /触发ck信号nopnopclr p1.4 /清ck信号setb p1.6 /关闭片选end:clr p1.6 /cs 选择mt8880的发送数据寄存器clr p1.4 /ckclr p1.5 /rsoclr p1.7 /r/wlloop: mov r0, 30hmov r1,#7h /将发送的数据个数给r1寄存器mov a, r0 /将数据首地址给寄存器mov p1,a /将数据送入p1口setb p1.4 /触发ck信号acall delay /调用延时子程序clr p1.4 /清ck信号inc r0 /数据地址加一djnz r1,loop /数据个数减一 5. mt8880数据接收程序设计ynyn开始mt8880初始化串口初始化p1.2=1?接收数据t1=1?发送数据t1清“0”图7 mt8880的数据接收流程图程序清单如下: org 0000hajmp main org 0100hmain:mov 30h,#00h /赋初值给30-36的地址范围mov 31h, #00hmov 32h, #00hmov 33h, #00hmov 34h, #-00hmov 35h, #00hmov 36h, #00hmov tmod,#20 /初始化定时器/计数器作为波特率发生器mov tl1,#0fdh /装入低位的记数初值mov th1,#0fdh /装入重装值9600的波特率clr et1 /禁止t1中断setb tr1 /t1启动mov scon,#40h /串口初始化为方式1mov pcon,#00h /使smod=0clr p1.6 /cs写cra,crb对mt8880进行初始化clr p1.4 /ckclr p1.7 /r/wsetb p1.5 /rsomov p1,#2dh /写cra setb p1.4 /触发ck 信号 nop nop clr p1.4 /清ck信号 mov p1,#20h /写crb setb p1.4 /单发ck信号 nop nop clr p1.4 /清ck信号setb p1.6 /关闭片选nopnop mov r0,30h /接收数据的首地址mov r1,#7h /接收数据的个数五、结论 本系统是将单片机和多传感器信息融合,完成语音报警的实用、可靠的单片机语音自动报警系统,它具有功能强、灵活性高、可靠性好、抗干扰能力强、实时性高等优点。不过,还存在一些缺陷,比如:系统需要的模块较多,编写程序时有点复杂。希望在以后的研究中进一步优化整个系统。尽量简化线路数量和布线方式,减少设备种类,系统功能尽可能由软件实现,提高系统可靠性和维护性,同时建立良好的人机界面,方便人们使用。总之,此系统整体结构还是比较简单、容易实现自动报警功能,符合安全系统的规则和要求。设计总结:由于时间紧迫和个人
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论