1、目录摘 要11 前言11.1烟雾报警器的发展及现状11.2 论文研究的目的及意义21.3论文内容22 基于C51单片机的烟雾报警的设计方案42.1 任务分析42.2设计方案53系统硬件实现63.1主控电路设计63.2外围接口电路设计73.3总电路设计84 软件实现94.1 编程KEIL环境介绍94.2 程序流程105 调试115.1 调试的步骤125.2调试过程中遇到的问题及解决方法13参考文献14致谢15烟雾报警器摘要:火灾是指在时间和空间上失去控制的燃烧所造成的灾害。在各种灾害中,火灾是最经常、最普遍地威胁公众安全和社会发展的主要灾害之一。人类能够对火进行利用和控制,是文明进步的一个重要标
2、志。所以说人类使用火的历史与同火灾作斗争的历史是相伴相生的,人们在用火的同时,不断总结火灾发生的规律,尽可能地减少火灾及其对人类造成的危害。火灾,几乎是和火的利用同时发生的,随着现代社会的不断发展,现代家庭用火、用电量正在逐年增加,火灾发生的频率越来越高,火灾不仅毁坏物质财产,造成社会秩序的混乱,还直接或间接危害生命,给人们的心灵造成极大的危害。每年都有许多人被火灾夺去生命。关键词:报警器、80C51、烟雾传感器14 1. 前言 火灾作术为一种在时空上失去控制的燃烧所引发的灾害,对人类生命财产和社会安全构成了极大的威胁。由此引发的重大安全事故比皆是,所以人类一直也未停止过对它的研究。火灾的发生
3、和发展是一个非常复杂的非平稳过程,它除了自身的物理化学变化以外还会受到许多外界的千扰,火灾一旦产生便以接触式(物质流)和非接触式能量流)的形式向外释放能量。接触式形式包括可燃气体、燃烧气体和烟雾、气溶胶等。非接触式如声音、辐射等。火灾探测技术就是利用敏感元件将火灾中出现的物理化学特征转换为另外一种易于处理的物理量。各种探测器对应的火灾物理参量及探测器如图1-1所示。图1-1 探测器1.2 论文研究的目的及意义目的:随着现代家庭用火、用电量的增加,家庭火灾发生的频率越来越高。家庭火灾一旦发生,很容易出现扑救不及时、灭火器材缺乏及在场人惊慌失措、逃生迟缓等不利因素,最终导致重大生命财产损失。消防部
4、门的统计显示,在所有的火灾比例中,家庭火灾已经占到了全国火灾的30%左右。家庭起火的原因林林种种,可能在我们注意得到的地方,也可能就隐藏在我们根本就注意不到的地方。在现代城市家庭里,许多人因不懂家庭安全常识引起火灾事故,使好端端的幸福家庭眼间毁于一旦,有的导致家破人亡,而且一旦发生居民家庭火灾,处置不当、报警迟缓,是造成人员伤亡的重要因素。所以说,人们应该积极了解家庭火灾的主要起因,还有预防火灾的发生。这就是我们研究烟雾报警器的目的。意义:在我国的一些大中城市,几乎每天都发生家庭火灾,所以防火是每个家庭必须时刻注意的问题。假如能根据您家的实际情况预先采取简单的防火措施,一些悲剧是完全可以避免的
5、。烟雾报警器对防家庭火灾,减少火灾损失具有现实意义。一系列火灾造成的惨痛损失也使全国各界意识到了烟雾报警器的必要性。据调查,在最近发生火灾的大多数房屋都没有安装报警器。所以,烟雾报警器在预防火灾发生上有着非常重大的意义。1.3论文内容第一章 简述本章本主要介绍了烟雾报警器的发展史及发展趋势。对烟雾探测器进行了系统性的阐述。还有论文研究的目的和意义进行了简单的解释。第二章 基于C51单片机的烟雾报警的设计方案 本章是根据论文的要求分析了论文的主要任务。继而概括出整个设计的主要思想和确定出设计方案。第三章 系统硬件实现 本章针对的是系统硬件是设计。在对整个系统硬件设计时,我们主要从它的主控电路80
6、C51(单片机的复位电路、时钟电路)的设计和外围电路(烟雾报警电路、A/D转换电路)的设计来具体介绍。还有对在设计中用到的声光传感器进行了重点介绍。第四章 软件实现 本章是论文的软件部分。其中,我们熟悉了整个程序设计的运行环境keil。还有程序的编写过程,对程序做了相应的注释。第五章 调试 本章着重与软件的调试。在运行环境中我们调试的步骤以及在运行中出现的问题及解决的方法。最后附上结束语(我的感想)、谢辞和参考文献以及附录2.基于C51单片机的烟雾报警的设计方案 2.1 任务分析单片机应用系统可以分为只能仪器表和工业测控系统两大类,无论哪仪类,都必须以市场需求为前提。所以,在系统设计前,首先要
7、进行广泛的市场调查,了解该系统的时常应用概况,以分析系统当前存在的问题,研究系统的时市场前景,确定市场开发设计的目的和目标。简单地说,就是通过调研克服旧缺点,开发新功能。 根据论文的设计要求:(1)、熟悉Keil编程环境;(2)、熟悉有关探测器的理论知识;(3)、给出设计方案;此次的设计先从硬件设计上着手。先要整理烟雾报警系统的整体思路。确定出方案设计中需要的硬件设备。我们在确定了大的方向基础上,就应该对系统实现进行规划。包括应该采集的信号种种类、数量、范围,输出信号的匹配和转换,传感器的选择,技术指标的确定等。2.2设计方案此次设计是针对于单片机原理及其应用展开的。其中包含了我们大学三年中所
8、学到的相关知识,运用我们所学的电工技术,传感器技术,单片机技术去设计基于单片机的烟雾报警系统。80C51单片机好比一个桥梁,联系着传感器和报警电路设备。当周围的环境达到我们设定的数值时,烟雾传感器把被测的物理量作为输入参数,转换为电量(电流、电压、电阻等等)输出。物理量和测量范围的不同,传感器的工作机理和结构就不同。通常传感器输出的电信号是模拟信号(已有许多新型传感器采用数字量输出)。当信号的数值符合A/D转换器的输入等级时,可以不用放大器放大;当信号的数值不符合A/D转换器的输入等级时,就需要放大器放大。而我们选择前者,不需要用放大器,选择数值符合A/D转换器的输入等级,这样就可以简化整个系
9、统的设置。传感器将物理信号经过A/D转换器转化为可以利用识别的电信号给单片机,这里我们选择单片机的P1.0为输入方式,接收到信号的单片机经过程序的设定会由P2.0作为单片机的输出直接启动报警电路。此时,扬声器将发出高、低交替的2种叫声,同时二极管发光,这就达到了声光报警的效果。根据方案的设计思想,我们从中就可以得到了烟雾报警系统的总体框图如图2-1所示下:图2-1 系统总体框图使用80C51单片机,选用烟雾传感器作为敏感元件,利用AD574A转换器和声光报警电路,开发了可用于家庭或小型单位火灾报警的烟雾报警器。整个设计由4大部分构成:烟雾传感器、A/D转换电路、80C51单片机、声光报警电路。
10、其中,烟雾传感器是将现场温度、声光等非电信号转化为电信号;转换电路是将完成将烟雾传感器输出的模拟信号到数字信号的转换。声光报警模块由单片机和报警电路组成,由单片机控制实现不同的声光报警功能。综合考虑各因素,本文选择NIS-09烟雾传感器用作采集系统的敏感元件。它灵敏度高,稳定性好,适合于火灾中气体的探测。A/D转换器选用AD574A转换器。3.系统硬件实现 3.1主控电路设计 硬件设计中最核心的器件是单片机80C51,它一方面控制A/D转换器实现模拟信号到数字信号的转换,另一方面,将采集到的数字电压值经计算机处理得到相应的二进制代码,与设定的值作比较。整个系统的软件编程就是通过汇编语言对单片机
11、80C51实现其控制功能 3.2外围接口电路设计在设计中我们之所以选用NIS-09烟雾传感器,是因为它的输出模拟量与我们所用的A/D转换器输入等级相符合。(NIS-09声光传感输出电压是5.6+0.4v,A/D转换器的输入量程是0+10V)声光传感器主要有以下两种:(1)散射式 在发光管和光敏电阻之间设置遮光屏,无声光时光敏元件接收不到信号,有声光时使光敏元件发出信号。(2)离子式用放射性同位素镅Am241放射出微量的a射线,使附近空气电离,当平行平板电极间有直流电压时,产生离子电流Ik。有声光时,微粒将离子吸附,而且离子本身也吸收a射线,其结果是离子Ik减小。若有一个密封装有纯净空气的离子室
12、作为参比元件,将两者的离子电流比较,就可以排除外界干扰,得到可靠的检测结果。 在本次设计中,我们选用NIS-09烟雾传感器。它是离子式烟雾传感器,是日本NEMOTO公司专为检测延误而精心设计的新型传感器。检测方式:离子型,一源两室。放射参数:电源电压是DC 9v,输出电压是5.6+0.4v 电流损耗是27+3pA ,灵敏度是0.6+0.1v。特性参数如下表所示:a灵敏度特性 (根据UL217标准风速0.1M/秒)b电源电压特性(25 60RH)c温湿度特性 温度特性(温度60)d温度特性(温度25)源: 放射元素是媚241,放射量是平均33.3KBq.=0.9uCi(29K37KBq)。工作环
13、境: 电源电压是DC6.0-18.0V,最大24V;温度是0-50,最大-10-60,温度95。保存温度-25-80,温度95。 3.3总电路设计根据要求,设计中我们选用80C51单片机。80C51单片机的主控电路包括时钟电路、复位电路。两电路的接法在3.1.4和3.1.5中分别做了详细的介绍,这里不再赘述。而传感器是将非电量需要转换成与非电量有一定关系的电量。当今信息时代,随着电子计算机技术的非速发展,自动检测,自动控制技术显露非凡的能力,而大多数设备只能处理电信号,也就需要把被测,被控非电量的信息通过传感器转换成电信号。可见,传感器是实现自动检测和自动控制的首要环节。没有传感器对原始信息进
14、行精确可靠的捕捉和转换,就没有现代自动检测和自动控制系统。没有传感器就没有现代科学技术的迅速发展。设计中,传感器我们选择的是NIS-09声光传感器。必须利用微粒的特点检测。而NIS-09烟雾传感器它的性能参数是我们选择它理由。烟雾传感器连接在A/D转换器的输入接口。我们将主控电路和外围接口电路(80C51与A/D转换器的接口电路、80C51与声光报警电路)连接起来,就得到了基于80C51的声光报警总电路图。当外部环境达到一定值时,烟雾传感器就会产生模拟电压,将它作为输出的模拟信号经AD574A转换器转换为80C51单片机所能识别的数字电压量。通过P1.0检测信号。当有信号输入时,经程序设定就会
15、驱动80C51单片机的P2.0。而P2.0是与声光报警电路相连接的。综上所述,得出总电路图如图3-11所示图3-11 总电路图4.软件实现KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。KEILC51标准C编译器为80C51微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强,更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到
16、uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision2IDE可为它们提供单一而灵活的开发环境。 C51V7版本是目前最高效、灵活的8051开发平台。它可以支持所有8051的衍生产品,也可以支持所有兼容的仿真器,同时支持其它第三方开发工具。因此,C51V7版本无疑是8051开发用户的最佳选择。C51工具包的整体结构, uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然
17、后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。4.2 程序流程在整个程序流程中,经常要控制一部分指令重复执行若干次,以便简短的程序完成大量的处理任务。这种按某种控制规律重复执行的程序称为循环程序。循环程序有先执行后判断何先判断后执行两种基本结构。而我们要选用的是先判断后执行。因为声光传感器的输出电
18、压量为5.66.0v之间。根据单极性输入的转换关系D=4096VIN/VFS,计算出它的数字量最小值:D1=40965.6/10=2294;最大值D2=40966/10=2458.然后把它们的数字量转化为二进制数。D1、D2转换为二进制数分别是100111110110、100110011010。由于AD574A输出12位数据,所以当单片机读取转换结果时,应分两次进行:当A0=0时,读取高8位;当A0=1时,读取低4位。AD574A的STS与80C51的P1.0线相连,故采用查询方式读取转换结果。我们将A/D转换器读取结果存入17H、18H、19H、20H单元中。其中17H存入的是较小数D1的高
19、八位10011111,18H存入的是较小数D1的低四位0110;19H存入的是较大数的高八位10011001,20H存入的是较大值的低四位1010。将数值存入单元以后,接下来就是比较。当被测的数值经计算机的转换在比较范围内,经程序设定80C51单片机的P2.0就会输出脉冲启动报警电路程序。5.调试 5.1 调试的步骤(1) 源文件的建立:使用菜单 “File-New”或者点击工具栏的新建文件按钮,即可在项目窗口的右侧打开一个新的文本编辑窗口,在该窗口中输入汇编语言源程序(4.2小节所示)。保存该文件,加上扩展名(.asm或a51),这里将文件保存为examl1.asm。(2)建立工程文件:点击
20、“Project-New Project”菜单,出现以个对话框,要求给工程起一个名字,我们输入examl1,不需要扩展名,点击保存按钮,出现第二个对话框。这个对话框要求选择目标CPU(即我们所使用的芯片型号80C51)点击ATMEL前面的“+”号,展开该层,点击其中的80C51,然后点击确定按钮。回到主界面,此时,在工程窗口的文件页中,出现了“Targ et1”,前面有 “+”号,点击“+”展开,可以看到下一层的“Source Group1”,这时的工程还是一个空工程,里面什么文件也没有,需要手动把刚才编写好的源程序加入,点击“Souce Group”使其反白显示,然后,点击鼠标右键,出现一个
21、下拉菜单。选中其中的“Add file to Group”Souce Group1”,对话框,要求寻找源文件,注意该对话框下面的“文件类型“默认为C Souce file (*.c),也就是以C为扩展名的文件,而我们的文件是以asm 为扩展名的,所以在列表框中找不到examl1.asm,要将文件类型该掉,点击对话框中”文件类型后的下拉列表,找到并选中“Asm Souce File(*.asm,*.a51)”,这样,在列表框中就可以找到examl1.asm文文件了。双examl1.asm文件,将文件加入项目,注意,在文件加入项目后,该对话框并不消失,等待继续加入其他文件,但初学时常会认为操作没有
22、成功而再次双击同一文件,这时会出现对话框,提示你所选的文件以在列表中,此时点击确定,返回前一对话框,然后,点击”Close”即可返回主界面,返回后,点击“Souce Goup 1”前的加号,会发现examl1.asm 文件以在其中。双击文件名,即打开源程序。(3)工程的详细设置:首先点击左边Project窗口的Target 1,然后使用菜单“Proget-Option for target target 1”即出现对工程设置的对话框,对这个对话框可谓非常复杂,共有8个页面,要全部高清可不容易,好在绝大部分设置项取默认值就行了。设置完成以后安确认返回主界面,工程建立、设置完毕。(4)编译、连接:
23、在设置好工程后,既可以进行编译、连接。选择菜单Project-Build target,对当前工程进行连接,如果当前文件已修改软件会先对该文件进行比阿尼,然后在连接以产生目标代码。编译过程中的信息将出现在输出窗口中的Build页中,如果源程序有语法错误,会有错误报告出现,双击该行,可以定到出错的位置,对源程序反复修改后,最终会得到如图5-1所示的结果,提示获得了名为examl1.hex的文件,该文件即可被编程器读入并写到芯片中,同时还产生了一些其他相关文件可被用于KEIL的仿真与调试。 5.2调试过程中遇到的问题及解决方法在进入环境以后,遇到了很多问题,总结如下:(1)提示无asm文件编译时候
24、提示:F:.XX.asmFile has been changed outside the editor, reload ?解决方法:重新生成项目,产生examl1.asm即可。(2)在进入Keil的调试环境以后,发现程序有错解决方法:将光标定位于需要修改的程序上,用菜单,DebugInline Assambly即可出现对话框,Enter New 后面的编辑框内直接输入需要修改的程序语句,输入完之后键入回车将自动指向下一条语句,可以继续修改,如果不在需要修改,可以点击右上角的关闭按钮关闭窗口。(3)程序调试时,一些程序必须满足一定的条件才能被执行到解决方法:这些条件往往是异步发生或难以预先设定
25、的,这类问题使用的单步实行方法是很难调试的,这时就要使用发哦程序调试中的另一种非常重要是方法-断点设置。断点设置的方法有多种,常用的是在某一程序行设置断点,设置好断点后可以全速运行程序,一旦执行到该程序行即停止,可在此观察有关变量值,以确定问题所在。在程序行设置/移除断点的方法是将光标定位于需要设置断点的程序行,使用菜单Debug/Insert/RemoveBreakPoint设置或移除断点(也可以用鼠标在该行双击实现同样的功能);Debug/Enable/Disable BreakPoint是开启或暂停光标所在懂行的断点功能;Dubug/Disale All BreakPoint暂停所有断点
26、;Debug/Kill All BreakPoint清除所有的断点设置。这些功能也可以用工具条上的快捷键进行设置。(4)输入程序时,有中文标点,用keil编译时出现错误解决方法:程序里有带中文标点,用英文重输入一遍(5)汇编出现数字、字母混淆解决方法:字母“O” 和 数字 “0”。参考文献1李全利,单片机原理及应用技术。北京:高等教育出版社,20042金发庆,传感器技术与应用。 北京:机械工业出版社,20043王曙霞,单片机实验与实训指导。西安:西安电子科技大学出版社,20074及力,Protel 99 SE原理图与PCB设计教程。北京:电子工业出版社,20075张玉莲,电子CAD(Prote
27、l99SE)实训指导书。西安:西安电子科技大学出版社,20076何利民,单片机高级教程。北京:航空航天大学出版社,20007李朝青,单片机原理与接口技术。北京:航空航天大学出版社,19998张毅刚,MCS-51单片机应用设计。哈尔滨:哈尔滨工业大学出版社,19979潘新民,微型计算机控制技术。北京:人民邮电出版社,199910李华,MCS-51系列单片机实用接口技术。北京:航空航天出版社,200011Intel,MCS-51 Family of Single Chip Microcomputer Users Manual,199012陈光东,单片微型计算机原理接口技术。武汉:华中理工大学出版社
28、,199913王福瑞,单片机测控系统大全,北京:航空航天大学出版社,1998致 谢毕业设计能够如期完成,我的指导老师给了我极大的帮助与支持。老师学识渊博,学风严谨,待人宽厚。在我遇到困难时能耐心解答直至我明白。尤其在我刚拿到一个带有陌生专业术语的题目想退缩时,老师的一翻教导令我受益匪浅。让我明白,没有付出,就没有回报的真谛。还有,人要不断的接受新知识,学习新知识,这样才能在以后的人生道路上坚强的走下去。老师要指导很多同学的论文,加上本来就有教学任务,工作量之大可想而知,而我对于单片机来说,是个初学者。所以,在设计的过程中,遇到很小的问题,都要劳烦老师讲解。在不断的接触中,老师的朴实无华,平易近人的性格对我影响颇深。在老师的指导和鼓励下,我才有信心去完成毕业设计,很荣幸成且幸运成为雷老师的学生。除老师之外,还要感谢我的同学们。他们给了我很多的建议和帮助。尤其在程序的编写方面,给了我很大的帮助。特此感谢!通过本次设计,让我明白了很多。最重要的是一个人如果无法独立完成一件事情,那么,同学和朋友就是你的依靠。再次感谢在设计中给我帮助的老师和同学!