基于89C51单片机的家用煤气报警器的设计与实现_第1页
基于89C51单片机的家用煤气报警器的设计与实现_第2页
基于89C51单片机的家用煤气报警器的设计与实现_第3页
基于89C51单片机的家用煤气报警器的设计与实现_第4页
基于89C51单片机的家用煤气报警器的设计与实现_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、000 目目 录录 第一章 绪 论.1 1.1 选题背景.1 1.2 研究意义.1 1.3 开发工具介绍.2 第二章 需求分析.3 2.1 功能需求.3 2.2 硬件需求.4 2.2.1 at89c51 与 at89s51 单片机介绍.4 2.2.2 气敏传感器.4 2.2.3 a/d 转换器 .4 2.2.4 led 显示器接口及显示方式 .5 2.2.5 继电器.5 2.3 软件需求.6 第三章 总体设计与实现.7 3.1 系统总体设计.7 3.2 各模块的详细设计与实现.9 3.2.1 按键子模块.9 3.2.2 显示子模块.10 3.2.3 报警子模块.10 3.2.4 风扇控制子模块

2、.11 第四章 仿真与调试.12 总 结.13 致谢.14 参考文献.15 附录:.16 000 第 0 页 共 16 页 基于基于 89c51 单片机的家用煤气报警器的设计与实现单片机的家用煤气报警器的设计与实现 第一章第一章 绪绪 论论 1.1 选题背景选题背景 近年来随着人民生活水平的提高,管道煤气和罐装煤气已深入到寻常百姓家。 但由于使用不当或设备老化等原因导致的煤气泄漏极大地威胁着人们的生命财产 安全。煤气已成为人们生活中广泛应用的能源了,煤气泄漏事件时有发生,这在 某种程度上增加了城市的不安全和不稳定,给人们的人身安全和财产安全带来了 很多隐患,煤气泄漏所带来的危害已经让人们认识到

3、问题的严重性。随着煤气的 广泛应用,由于煤气泄漏所引发的爆炸,中毒和火灾事故也时有发生,这在某种 程度上增加了城市的不安全和不稳定。为了使煤气更好地造福于民,造福于社会, 减少并杜绝各种因燃气泄漏而引发的爆炸及火灾事故,各煤气使用单位及居民用 户选择一种适合的煤气报警器实为必要之举。 通常情况下,煤气是一种很安全的气体,但是它在空气中的含量如果超出一 定范围就会引起爆炸。采用煤气安全报警器,能够预防煤气浓度过高引起的煤气 中毒,在煤气浓度达到危险界限前发生警报,使得人们能尽早的发现问题,解决 问题,解除影响人生安全的隐患;而且当用户不在家的时候,能够启动排风扇, 自动排除空气中的煤气含量,有效

4、防止不必要的悲剧发生。 在市面上有很多煤气检测仪,但都是要有人在场的情况下使用,在无人在家 时发生煤气泄露我们就需要一个智能煤气报警器。这个报警器不仅能够准确检测 煤气的量并且能够在用户不在家的时候,能够启动排风扇,自动排除空气中的煤 气量,有效防止不必要的悲剧发生。 1.2 研究意义研究意义 通常情况下,煤气是一种很安全的气体,但是它在空气中的含量如果超出一 定范围就会引起爆炸。煤气报警器是专用的安全防护检测仪器,用来检测空气中 煤气浓度,并超限报警,因此使用煤气报警器对避免和控制事故具有重要意义。 采用煤气安全报警器,能够预防煤气浓度过高引起的煤气中毒,煤气报警器可以 实时显示现场浓度,有

5、独立控制模块单独显示、输出控制信号,设置一二级报警 点,当检查到煤气挥发浓度高于正常范围时,在煤气浓度达到危险界限前发生警 报,使得人们能尽早的发现问题,解决问题,解除影响人生安全的隐患;而且当 用户不在家的时候,能够启动排风扇,自动排除空气中的煤气含量,有效防止不 必要的悲剧发生。可以尽快采取相应措施防止不必要的人身伤亡和财产损失。 000 第 1 页 共 16 页 1.3 开发工具介绍开发工具介绍 目前用于电路原理绘图的开发软件有 protel99se、proteus 等。 protel99se 是应用于 windows9x/2000/nt 操作系统下的 eda 设计软件,采 用设计库管理

6、模式,可以进行联网设计,具有很强的数据交换能力和开放性及 3d 模拟功能,是一个 32 位的设计软件,可以完成电路原理图设计,印制电路板 设计和可编程逻辑器件设计等工作,可以设计 32 个信号层,16 个电源-地层和 16 个机加工层。 proteus 是电路原理图绘制软,该软件的特点: (1)实现了单片机仿真和 spice 电路仿真相结合。具有模拟电路仿真、数字电 路仿真、单片机及其外围电路组成的系统的仿真、rs232 动态仿真、i2c 调试器、 spi 调试器、键盘和 lcd 系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分 析仪、信号发生器等。 (2)支持主流单片机系统的仿真。 (3)件

7、调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能, 同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必 须具有这些功能;同时支持第三方的软件编译和调试环境,如 keil c51 uvision2、mplab 等软件。 (4)有强大的原理图绘制功能。是集单片机和 spice 分析于一身的仿真软件。 (5)具有其它 eda 工具软件的仿真功能,还能仿真单片机及外围器件。它是 目前最好的仿真单片机及外围器件的工具。 在本设计中采用的是 proteus 作为开发工具。 000 第 2 页 共 16 页 第二章第二章 需求分析需求分析 2.1 功能需求功能需求 煤气报警器

8、是通过气敏传感器探测周围环境中的煤气浓度,将检测到的煤气 浓度信号通过 a/d 转换器的转换将值传给控制器,当煤气浓度超过控制器或控制 电路中设定的值时,控制器通过报警借口进行报警提示,当浓度超过第二设定值 的时候就应用继电器驱动风扇进行排气,将空气较多的有害煤气排出去,以有效 的保障人身安全。煤气报警器的探测煤气的传感器主要有氧化物半导体型、催化 燃烧型、热线型气体传感器,还有少量的其他类型,如化学电池类传感器。这些 传感器都是通过对周围环境中的可燃气体的吸附,在传感器表面产生化学反应或 电化学反应,造成传感器的电物理特性的改变。 煤气报警器的核心部件为内置的气体传感器,传感器检测空气中气体

9、的浓度。 探测器将传感器检测到的气体浓度转换成电信号,通过 a/d 传输到控制器,气体 浓度越高,电信号越强,当气体浓度达到或超过报警控制器设置的报警点时,报 警器发出报警信号,当浓度值高于第二个设定的值时可启动排气扇设备,自动排 除隐患。 报警器可以应用蜂鸣器等发生器件进行提示功能,常用的有声光报警,音乐 报警等。声光报警是煤气泄漏使室内浓度达到报警器浓度后,报警器的红色指示 灯亮,蜂鸣器发出“辟-辟-”的报警声,所以叫做声光报警。音乐报警是使用音 乐芯片等方法,当声光报警是煤气泄漏使室内浓度达到报警器浓度后,播放设置 的音乐进行报警。本系统采用的是蜂鸣器报警。 系统功能模块如下所示: 煤气

10、报警系统功能模块 按 键 输 入 l e d 显 示 蜂 鸣 器 报 警 风 扇 控 制 图 1 系统功能模块图 000 第 3 页 共 16 页 2.2 硬件需求硬件需求 2.2.1 at89c51 与与 at89s51 单片机介绍单片机介绍 at89c51 带有 4k 字节可编程 flash 存储器,可擦除只读存储器可以反复 擦除 1000 次。具有三级程序存储器锁定、1288 位内部 ram、 32 可编程 i/o 线、 两个 16 位定时器/计数器、5 个中断源、可编程串行通道、低功耗的闲置和掉电 模式、片内振荡器和时钟电路等特性。该器件采用 atmel 高密度非易失存储 器制造技术制

11、造,与工业标准的 mcs-51 指令集和输出管脚相兼容。由于将 多功能 8 位 cpu 和闪烁存储器组合在单个芯片中, atmel 的 at89c51 是 一种高效微控制器 。 at89s51 相对于 at89c51 新增加很多功能,性能有了较大提升,价格基本 不变,甚至比 89c51 更低,89s51 内部集成看门狗计时器,不再需要像 89c51 那 样外接看门狗计时器单元电路。它的最高工作频率为 33mhz,而 89c51 的极限 工作频率是 24m,就是说 89s51 具有更高工作频率,从而具有了更快的计算速度。 由于 89s51 的优势,渐渐取代了 89c51,现在 89c51 已经停

12、产,本设计原意 是采用 89s51,由于在 proteus 元件库中没找到此型号的单片机,而 89c51 与 89s51 单片机完全兼容,所以在仿真中采用的是 89c51 单片机。 2.2.2 气敏传感器气敏传感器 气敏传感器是一种将某种气体体积分数转化成对应电信号的转换器。探测头 通过气体传感器对气体样品进行调理,通常包括滤除杂质和干扰气体、干燥或制 冷处理仪表显示部分,控制器需要把气体传感器检测到的电信号转换成数字信号, 这就需要与 a/d 转换器进行了联合使用 气敏传感器是一种将气体的成份、浓度等信息转换成可以被人员、仪器仪表、 计算机等利用的信息的装置!气体传感器一般被归为化学传感器的

13、一类,尽管这 种归类不一定科学。 “气敏传感器”包括:半导体气敏传感器、电化学气敏传感器、催化燃烧式 气敏传感器、热导式气敏传感器、红外线气敏传感器等等,考虑到性能,价格等 方面的因素,建议采用半导体气敏传感器。 经气体传感器检测的煤气浓度电信号输入到单片机,一方面由数码管进行显示,另 一方面和存储器中的设定值进行比较当前值大于设定值 1 时,报警电路发出报警信 号;当前值大于设定值 2 时,一方面发出报警信号,另一方面启动风扇排除气体。 2.2.3 a/d 转换器转换器 a/d 转换器是一种能把输入模拟电压或电流变成与它成正比的数字量,即能 把被控对象的各种模拟信息变成计算机可以识别的数字信

14、息。a/d 转换器种类很 多,但从原理上通常可以分为四种:计数器式 a/d 转换器,双积分式 a/d 转换 器,逐次逼近式 a/d 转换器,并行 a/d 转换器。1 000 第 4 页 共 16 页 计数器式 a/d 转换器结构很简单,但转换速度很慢,很少采用。双积分式 a/d 转换器抗干扰能力强,转换精度高,但是速度不够理想,常用于数字式测量 仪表中。并行 a/d 转换器转换速度最快,但因结构复杂而制造价较高,只用于那 些转换速度极高的场合。计算机中广泛采用逐次逼近式 a/d 转换器作为接口电路, 它的结构不太复杂,转换速度高,adc0809 是一种 8 位逐次逼近式 a/d 转换器, 也是

15、常用的一种。1 2.2.4 led 显示器接口及显示方式显示器接口及显示方式 led 显示器有静态显示和动态显示两种方式。 (1)静态显示就是当显示器显示某个字符时,相应的段恒定地接通或截止 值到显示另一个字符为止。每位的段选线分别与一个 8 位锁存器的输出口相 连,显示器中的各位相互独立,而且各位的显示字符已经确定,相应锁存的输出 将维持不变。也因为如此,静态显示器的亮度较高。这种方式编程容易,管理也 较简单,但占用的 i/o 口线资源较多。8 (2)动态显示方式在控制多位 led 显示时较静态显示有很大的优势,它能 简化电路,降低成本,将所有位的段选线并联在一起,由一个 8 位 i/o 口

16、控 制,而共阴极(阳极)公共端分别由相应的 i/o 口线控制,实现各位的分时选通。 由于各位的 led 所有段选皆由一个 i/o 口控制,因此在每一瞬间各位的 led 会 显示相同的字符。想要每位显示不同的字符,就必须采用扫描方法轮流点亮各位 led,即在每一瞬间只使某一位显示字符,在此瞬间段选控制 i/o 输出相应字符 段选码,而位选则控制 i/o 口在该显示位送入选通电平,以保证该位显示相应字 符。动态扫描采用延时 1ms,因人的视觉暂留时间为 0.1s,所以造成的视觉效果 看过去每个数码总在亮。8 单片机中常使用 7 段 led 构成“8” ,另外还有一个小数点发光二极管,以 显示数字、

17、符号及小数点。这种显示器又分为共阴极和共阳极,发光二极管的阳 极连在一起的称为共阳极显示器,阴极连在一起的称为共阴极显示器。共阳极显 示器的公共端接电源,低电平的时候段码点亮,而共阴极则相反,当高电平的时 候段码点亮。 2.2.5 继电器继电器 继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系 统(又称输出回路) ,通常应用于自动控制电路中,它实际上是用较小的电流去 控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电 路等作用。继电器驱动就是一个典型的、简单的功率驱动环节。继电器驱动就是 单片机与其他大功率负载接口,起到控制作用,三极管起到放大作用。 单

18、片机接收气敏传感器检测到得值并进行判断,根据判断的结果控制相应引 脚输出高电平或低电平,从而控制继电器线圈中能否有电流经过,达到控制电风 扇转动或停止的目的,继电器用来实现对电风扇的自动控制。 000 第 5 页 共 16 页 2.3 软件需求软件需求 本设计采用的是汇编语言编写程序,汇编语言是一种人们用来代替机器语言 进行程序设计的语言,采用汇编语言编写的程序叫做汇编语言程序,该程序虽然 不能为计算机直接执行,但它可由“汇编程序“翻译成机器语言程序。 具体在 proteus 中导入汇编程序的步骤为: 1.新建一个扩展名为.asm 的文件,写入程序 2.打开绘制好的 proteus 原理图 3

19、.点击源代码添加/删除源文件 图 2 proteus 中源代码文件的添加 选择.asm 文件,确定即可。 000 第 6 页 共 16 页 第三章第三章 总体设计与实现总体设计与实现 3.1 系统总体设计系统总体设计 经气体传感器检测的煤气浓度电信号经过 a/d 转换器将采样值输入到控制器,一 方面由数码管进行显示,另一方面和存储器中的设定值进行比较当前值大于设定值 1 时,报警电路发出报警信号;当前值大于设定值 2 时,一方面发出报警信号,另一方 面启动风扇排除气体。 根据系统的需求分析,该系统的主要实现以下功能: (1)实现对煤气泄漏的实时监测; (2)实时跟踪显示现场煤气浓度; (3)当

20、浓度超过第一个设定的值后发出声光报警; (4)当浓度超过第二个浓度值时自动启动排风扇; (5)故障排除后,继续进行检测。 系统功能模块组成框图如图 3 所示: 图 3 系统功能模块组成 at89c51 a/d 报警 电源 led 显示 显示 按键电路 气敏传感器 继电器 显示 风扇 显示 000 第 7 页 共 16 页 系统主程序流程图如图 4 所示: 开始 系统自检 数据初始化 采样子程序 采样值设 定值 1 控制报警程序 风扇控制 采样值设定 值 2 n y y n 图 4 主程序流程图 000 第 8 页 共 16 页 3.2 各模块的详细设计与实现各模块的详细设计与实现 根据系统功能

21、模块分析可知本系统主要有按键电路模块,显示模块,报警模 块,风扇控制模块组成,以下做具体分析。 3.2.1 按键子模块按键子模块 (1)硬件设计 按键电路是用于仿真气敏传感器检测到的煤气浓度,按键电路可以任意设定 一个数值,它代表了需要显示的煤气浓度。理论上是用 a/d 转换器将气体传感器 检测到的电信号传到控制器单片机里,在这里用独立式的按键电路来输入一个检 测到的数据。键盘分为独立连接式和行列式两种。本设计采用的是独立连接式的 方法,特点是电路较为简单,编程相对容易。具体的实现电路如图 5 所示: 图 5 按键电路 (2)软件设计 分别对 p1.0、p1.1、p1.2 端口编程,实现分别控

22、制数码管的个位、十位、百 位的加 1 操作。关键程序如下: go: jnb gset,s1 ;判断 k1 键是否按下,按下则转到 s1 s1: lcall delay ;延时消除抖动 jb gset,a1 ;判断 k1 是否真的按下,没按下继续检测,按下顺序执行 inc setg ;个位值加 1 mov a,setg ;将要显示的值放到 a cjne a,#10,j0 ;判断 a 里的值是否增到 10,不等于 10 跳到 j0 mov setg,#0 ;到 10 则重新赋值为 0 inc sets ;个位到 10 之后,十位加 1 mov a,sets cjne a,#10,j1 mov se

23、ts,#0 ljmp k2 000 第 9 页 共 16 页 j0: jb gset,go ;等待 k1 键抬起 lcall display sjmp j0 以上程序是对个位数字的控制,十位、百位也是同样的方法。 3.2.2 显示子模块显示子模块 (1)硬件设计 在第二章介绍了详细的显示方式是静态显示方式和动态显示方式,本设计采 用的是动态显示方式,结合按键电路的输入,在数码管上显示按键电路输入的值, 在本次设计中我采用的是共阴数码管, 实现电路如图 6 所示: 图 6 led 显示电路 (2)软件设计 单片机的 p0 口控制数码管的段选,p2.0、p2.1、p2.2 分别控制数码管的个位、

24、十位、百位。关键显示子程序如下: display: mov a,setg clr p2.0 movc a,a+dptr mov p0,a lcall delay setb p2.0 以上是对个位的赋值控制,对十位、百位的控制方法一样。 3.2.3 报警子模块报警子模块 (1)硬件设计 报警电路时用于当控制器接收到的数据大于预先设置的值时发生提示,以此 让人们尽早的发现问题,解决问题,避免的不必要的灾害发生。电路如图 7 所示: 000 第 10 页 共 16 页 图 7 报警电路 (2)软件设计 本设计用单片机的 p2.5 端口来控制报警。当检测到的浓度高于第一个设定 值时,给单片机一个命令:

25、clr p2.5,此时就会发出“辟-辟“的报警提示, setb p2.5 表示关掉报警。 3.2.4 风扇控制子模块风扇控制子模块 (1)硬件设计 风扇控制也是煤气报警系统的重要组成部分,只要空间中的煤气浓度大于设 定的第 2 个值时,便自动启动风扇进行排气,直到浓度小于所设定的值。这个部 分的电路在当家庭人员不在家时有重要的作用。当检测的浓度高于一定值时,单 片机引脚输出高电平,通过继电器实现弱电控制强电,打开电风扇,当浓度低于 一定值时,单片机引脚输出低电平,控制电风扇停止转动。 电路图如图 8 所示: 图 8 风扇控制电路 (2)软件设计 本设计用单片机的 p2.7 端口来控制风扇。当浓

26、度高于第二个设定值时,给单 片机一个命令,setb p27,单片机 p27 引脚输出高电平,继电器线圈得电有 电流经过,常开触点闭合,电风扇电路接通,电风扇开始转动。当浓度低于第二 个设定值时,执行 clr p27,单片机 p27 引脚输出低电平,继电器线圈中没 有电流经过,常开触点保持原断开状态,电风扇电路断路,电风扇停止转动。 000 第 11 页 共 16 页 第四章第四章 仿真与调试仿真与调试 把程序载入单片机之后,单击源代码全部编译进行程序调试,之后跳出 的对话框会提示程序是否出错,以及是哪里出错。在做的过程中出现了以下问题, 下面做一个概括: (1)proteus 仿真错误,提示“

27、 real time simulation failed to start” 意思是“实时仿真启动失败“,后来换了电脑,重新安装程序又可以了。 (2)提示“simulation is not running in real time due to excessive cpu load“ 偶尔会出现这样的提示,经查证是电脑配置不佳,速度慢导致的,不过对程 序的运行无影响。 (3)提示“address out of range“ 语句 jb rel 中 rel 是补码形式的 8 位偏移量,以下一条指令第一字节地址 为基址。地址偏移量在-128+127 范围内。跳转的地址超过了它偏移量的范围。 00

28、0 第 12 页 共 16 页 总总 结结 煤气已成为人们生活中必不可少的能源了,煤气泄漏事件时有发生,给人们 的人身安全和财产安全带来了很多隐患,所以怎样防止煤气中毒与爆炸已成为人 们的迫切需要.为此我选择“基于 89c51 单片机的家用煤气报警器的设计与实现 “作为毕业设计的题目。 本篇论文是根据设计的内容做一个阐述。论文一开始详细介绍了选题背景, 研究目的,以及功能需求、硬件需求、软件需求的分析,介绍了完成设计需要的 条件,之后又详细介绍的系统每个部分的功能及实现方式。 虽然基本完成了该系统要实现的功能,但这个系统还存在着不足。首先从设 计的每个模块来看,出于仿真的角度考虑,可能每个部分的设计相对简单化了, 按着这个设计做实物的话还是存在问题的。 其次,设计的功能还没那么全。要是有业务的小区,要是能把报警连接到业 务那里会更全面,因为小区门口一整天都会有人把守,这样业务的人员也能及时 的发现问题,三重保障,防止意外发生。 000 第 13 页 共 16 页

温馨提示

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

评论

0/150

提交评论