云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 多传感器火灾报警系统设计

多传感器火灾报警系统设计

  • 62 次阅读
  • 3 次下载
  • 2025/6/5 12:14:23

西南科技大学本科生毕业论文

4.2 软件开发环境简介

本系统的设计是以51系列单片机为核心展开的,该系列单片机所采用的技术已经相当成熟,针对此系列单片机开发过程发布的指令集也相当齐全,极大的简化了设计过程,考虑到软件开发的编程难度,单片机的软件设计使用C语言作为开发语言。

C语言是一种通用编程语言,既可用于PC程序设计,也可以对单片机进行程序设计,由于C语言既有高级语言很强的表达性和运算能力,又可以像低级语言直接对硬件进行操作,能够解决汇编编程中的很多问题。虽然从代码运行效率上来看C语言设计的软件代码冗余度较汇编代码更高,但却具有汇编程序不具备的高度可移植性,且本设计使用的单片机内置程序存储器有足够空间。此外由于汇编程序开发周期长,调试相对困难,程序可读性低等缺点,故使用C语言作为软件开发的语言。

设计所采用由Keil Software基于Windows开发的Keil μVision3单片机开发平台,软件包含一个高效的编辑器、一个项目管理器和一个制作工具,支持所有的KEIL 8051工具包括C编译器宏汇编器连接/定位器目标代码到HEX的转换器,软件具有如下特点:

1) 全功能的源代码编辑器; 2) 器件库用来配置开发工具设置; 3) 项目管理器用来创建和维护项目;

4) 集成MAKE工具可以汇编编译和连接嵌入式应用; 5) 对话框形式的开发工具的设置; 6) 源代码级CPU和外围器件的调试器;

7) 使用高级GDIAGDI接口在目标硬件上进行软件调试/同Monitor-51进行通信。 软件的运行界面如图4-1所示。

4.3 火灾报警系统软件流程

本系统的软件分为自检、传感器数据接收、数据分析处理与判断以及驱动显示和报警电路几个主要功能。程序开始运行后,系统首先对各个传感器进行初始化以便开始系统自检,随后系统进入自检阶段,软件将根据各个传感器返回的信息判断传感器功能是都正常,若发现异常将及时把错误信息显示出来,同时挂起系统,避免继续运行对系统可能造成的损害,若传感器正常,系统会根据环境温度对照事先写入的环境权重数值

24

西南科技大学本科生毕业论文

图4-1 Keil μVision3软件开发界面

表分配变量权值;然后系统开始进入循环检测各个传感器返回数据的监控状态,每一次遍历传感器返回信息后,将数据进行分析,判断是否有异常状况,数据判断方式根据设计的权重算法进行模糊判断,确定为异常时进行对应的消息提示或报警提示。软件总体流程图见图4-2。 开始 传感器异常提示初始化传感器系统自检 是传感器是否异常?是否气体异常?是气体浓度异常报警否否是是否暗火火灾?暗火火灾报警结束读取传感器数据 数据综合分析否 是是否明火火灾?是明火火灾报警 是否异常?否否 其它异常提示图4-2 软件系统总体流程图

本系统的报警方式分为2种:“显示警告消息”与“消息+蜂鸣器报警”。根据火灾从产生到发展各个阶段的特点,作了以下设计:

1) 火灾初期示警:

25

西南科技大学本科生毕业论文

由于火灾发生的初期往往会有易燃物闷烧而产生烟雾和一氧化碳等气体,而由于没有明火,温度的上升并不明显,根据这些特征,对火灾初期的检测就集中在烟雾与一氧化碳浓度的监控上,当监测到一氧化碳或烟雾浓度异常时,将显示气体浓度异常的警示消息,此时蜂鸣器不工作。

2) 暗火火灾告警:

火灾从初期开始继续发展,烟雾和一氧化碳浓度会继续升高,温度开始上升,但由于仍然没有明火,仍然不会使温度达到报警阈值,此时系统通过传感器检测到气体和烟雾浓度的继续升高,将启动蜂鸣器进行报警,同时将暗火火灾的消息显示出来。

3) 明火火灾示警:

当火灾发生至产生明火的状态时火势已经具有一定的规模了,由于明火的出现,温度会很快上升,同时消耗掉一定的一氧化碳和烟雾,使这两者的测量数值反而会有一定下降,在环境氧气消耗完之前,这个过程会持续。当系统检测到温度的快速上升同时存在烟雾和易燃气体时将显示明火火灾报警消息,并启动蜂鸣器报警。

4.4 软件各功能模块设计

4.4.1 系统自检模块设计

系统自检模块的功能是完成系统初期的传感器功能检测,测试传感器是否正常,并得出系统工作环境的数据以选择相应的数据权值。开机之后,通过主函数首先调用系统自检函数system_chk()进行自检,程序首先会有一个约500μs的延时,防止因为系统初启动不稳定造成的读数错误,之后程序会依次启动各个传感器所在的A/D转换器读取信号,由图3-3、图3-6所示的传感器电路可知若温度传感器故障或拔出时,A/D转换器的输入电压将为5V,转换结果将是255,则将此数据作为判断温度传感器是否正常的判断标准,而一氧化碳传感器和烟雾传感器故障或拔出时,A/D转换器的输入电压为0,相应输出值为0,则将此数据作为判断烟雾和一氧化碳传感器是否正常的判断标准。

传感器检测确认无误之后,在屏幕上显示“SYSTEM NORMAL”字样,然后根据读取到的温度信息对照权值分配表进行权值分配,最后进入系统正式运行状态。该模块的软件流程图如图4-3所示。

26

西南科技大学本科生毕业论文

开始延时500μs检测温度传感器否

是否正常?是显示错误信息检测CO传感器系统挂起否是否正常?显示错误信息

检测烟雾传感器系统挂起

是否正常?否显示错误信息

是对照权值表分配各数据权重系统挂起进入正式工作图4-3 自检模块软件流程图

4.4.2 各传感器数据采集与预处理模块

各传感器的数据都是通过A/D转换之后送入单片机的,因此在进行数据分析之前需要先启动传感器对应的A/D转换器读取数据。由于A/D转换器的采样与转换速度很快,往往会产生很多重复值,故设计了一个采样延迟和多次采样平均值的算法:启动A/D转换之后,每一次采样之前会延时1ms,除此之外每次读取的数据并不送入分析过程,而是先暂存在内存中,每读取30个数据之后去掉最高与最低一共10个数据之后取所有剩

27

搜索更多关于: 多传感器火灾报警系统设计 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

西南科技大学本科生毕业论文 4.2 软件开发环境简介 本系统的设计是以51系列单片机为核心展开的,该系列单片机所采用的技术已经相当成熟,针对此系列单片机开发过程发布的指令集也相当齐全,极大的简化了设计过程,考虑到软件开发的编程难度,单片机的软件设计使用C语言作为开发语言。 C语言是一种通用编程语言,既可用于PC程序设计,也可以对单片机进行程序设计,由于C语言既有高级语言很强的表达性和运算能力,又可以像低级语言直接对硬件进行操作,能够解决汇编编程中的很多问题。虽然从代码运行效率上来看C语言设计的软件代码冗余度较汇编代码更高,但却具有汇编程序不具备的高度可移植性,且本设计使用的单片机内置程序存储器有足够空间。此外由于汇编程序开发周期长,调试相对困难,程序可读性低等缺点,故使用C语言作为软件开发的语言。 设计所采用由Keil Sof

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com