大空间火灾监控系统-建筑类毕业论文_第1页
大空间火灾监控系统-建筑类毕业论文_第2页
大空间火灾监控系统-建筑类毕业论文_第3页
大空间火灾监控系统-建筑类毕业论文_第4页
大空间火灾监控系统-建筑类毕业论文_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

XXXXXXX学院毕业设计题目姓名学号专业班级分院指导教师20XX年XX月XX日摘要大空间火灾监控系统主要应用于各种大型建筑及其它公共设施中,实现对这些场所早期的报警功能,达到预期的目的。这种火灾监控系统是一个集信号检测、传输、处理和控制与一体的控制系统。该系统采用DALLAS公司研制、生产的智能型DS18B20温度传感器,以及MQ-2烟雾传感器模块作为探测器,将探测器所检测到的能充分反映现场火灾因素采集到火灾控制器,经过火灾控制器根据预期设计好的火灾模式判断,实现对火灾早期的准确报警和对相应的现场消防设备的联动控制。为了适应不同规模的工程的应用,便于信息的远程传输和系统的安装、维护,该系统采用模块化结构,应用多种标准串行总线(如RS-485等)形成一个网络系统。在这个网络系统中,探测器完成对火灾信号的检测,然后数据传输到火灾控制器。同时,每个控制器可以通过RS-485总线将相应的报警信息传给位于各个位置的下位机,从而形成一个完整的防火、早期灭火局域网。关键词:火灾监控系统;传感器;模块化结构;局域网

Abstract:Largespacefiremonitoringsystemismainlyusedinvariouslargebuildingsandotherpublicfacilities,whichaimstoachievetheintendedpurposeofgettingearlywarningfunctionofthesesites.Thefiremonitoringsystemisacontrolsystemwhichiscombinedwithfunctionsofsignaldetection,transmission,processing,andcontrolandintegrated.ThedetectorofthissystemisDS18b20andsmokedetectorMQ-2sensormodule,theformerisdevelopedbyDALLASCompany,itisaintelligenttemperaturesensore.thebothdetectorscollectfactorswhichtheydetectandcouldreflectthefirescene,andthentransmittothefirecontroller.Afterreceivingthemessagefromthebothdetectors,firecontrollerdoestheaccurateearlywarningoffireandcontrolstherelevantscenefirefightingapparatuswiththereferenceoftheexpectedfiremodes.Inordertoadapttotheapplicationofdifferentscaleofprojects,tofacilitateremotetransmissionofinformationandsysteminstallationandmaintenance,thesystemisformedasanetworksystembyusingmodularstructureandtheapplicationofavarietyofstandardserialbus(e.g.RS-485,ect).inthisnetworksystem,thedetectorsdetectthefire,andthefiremessageistransferredtothefirecontroller,everylowercomputergetsthewarningmessagefromhomologouscontrollerthroughRS-485busatthesametime,inthisway,anetworkwhichcanpreventfireanddotheearlywarningoffireisbuilt.Keywords:Firesupervisorysystem;Firecontroller;Mainline;Localareanetwork目录摘要 IAbstract II1绪论 11.1火灾报警控制系统发展历史 11.2系统主要结构和功能 22方案论证 42.1火灾监控系统设计方案 42.2火灾监控系统方案论证 43系统硬件电路的设计 63.1中央处理器——STC89C51 63.1.1STC89C51RC/RD+系列单片机 63.1.2STC89C51RC/RD+系列单片机的内部结构 73.2STC89C51单片机最小系统 83.3下位机输入通道元器件选择 83.3.1传感器选择 83.3.2A/D转换器选择 103.3.3下位机数据采集系统设计 123.4键盘/显示接口电路设计 133.5报警电路设计 143.6电源电路设计 153.6.1+5V3A直流稳压电路原理 153.6.2+5V3A直流稳压电路参数设计 164系统软件设计 184.1主机程序流程图 184.1.1DS18B20子程序流程图 194.1.2MQ-2烟雾传感器模块子程序流程图 204.1.3LCD1602子程序流程图 214.1.4AD转换子程序流程图 224.2总体程序 235硬件制作及调试 245.1使用的仪器仪表及工具 245.2硬件制作与调试 245.2.1系统PCB板的设计 245.2.2系统硬件调试 255.3软件调试 256总结 27致谢 28参考文献 29附录1:电路原理图 30附录2:PCB板 31附录3:主要程序 321绪论1.1火灾报警控制系统发展历史火灾报警控制系统的研究开发在国外的起步比较早,我国是在二十世纪八十年代中期才有个别企业开始这方面的研究开发。随着越来越多的产品进入市场,国家也制定了相应的检验标准,当时都是多线制的开关量系统,整个系统呈星型接法,每个探测器分别用两根线与控制器相连,系统中的探测器只能反映出三种状态,分别表示报警、正常和故障,随后出现n+1线制的开关量系统,也就是说n个探测器共用一根地线,这样就在一定程度上减少了系统的布线。随着单片机技术的普遍应用,同时也因为多线制(包括n+1线制)系统在工程安装、布线和维修都很不方便,人们开始将单片机技术用于火灾报警控制系统。从而在二十世纪八十年代后期在国内出现了总线制开关量火灾报警控制系统,这种系统仍然采用开关量探测器,探测器被安装在编址底座上,底座同时具有检测探测器工作状态的功能和控制通信的能力。一定数量带有探测器的编址底座以并联的方式连接在两根串行总线上,形成一个通信回路(以下我们将这样的总线称为回路总线)。每台控制器可以用多个独立的回路总线。每个报警系统也可以由多台控制器通过特定的串行总线连接起来,以方便的适应不同规模的建筑物。这种总线制火灾报警系统的出现不仅使得该领域在技术上取得了较大的发展,而且也为工程施工、布线、调试、维护带来了极大的方便。人们不需要一根一根的对线、布线,而只要将探测器和安装底座像接灯泡一样并联在回路总线上。当系统发生报警或故障时,都能在控制器上反映出每个点的具体位置。但是这种控制系统与同时期的国外的火灾报警控制系统有一定的差距。一九九四年在国内规模最大的北京国际消防产品博览会上,国外一些厂家将他们的智能火灾报警控制系统拿来展出,使得国内同行们对智能火灾报警控制系统有了初步的了解。相比之下,我们当时流行的总线制开关量系统就显现出了很多弊端。如开关量系统只能反映出火灾发展过程中的两个状态,即要么是正常,要么是报警。它无法反映出火灾发生的全过程,难以实现对灰尘和潮湿等非火灾因素造成的探测器的灵敏度的漂移进行自动补偿,同时对超出补偿容限的探测器实施污染报警;无法根据使用环境和工作的时间段不同而对探测器的灵敏度自动调节;也不能对探测器本身的工作状态进行自动测试等等。此后,国内部分企业开始研究、开发智能型火灾报警控制系统。时隔两年,在一九九六年的北京国际消防产品博览会上,国内十几家企业都推出了自己的智能型系统,由于对智能型系统没有一个国家标准,所以各厂家所宣传的智能特性也各不相同。但都有一个明显的特征,就是网络化模块化,应用了一些成熟的、标准的现场总线技术。从此,使得我国的火灾报警控制系统的使用进入了智能化的时代。1.2系统主要结构和功能大空间火灾实验室监控系统是由火灾报警控制器、火灾探测器、手动报警装置、报警装置等组成。如图1.1所示。在图1.1中,各种典型的火灾探测器和手动报警按钮位于保护建筑内,下位机传送火警信号,控制器经正确判断或火灾确认后启动声报警装置,通告有关人员逃生,同时启动执行环节灭火。系统也应该报出系统的断线、短路及接地等故障。该系统的中心是火灾报警控制器。如图1.1所示,它主要分五部分:1.输入单元它接收人工或自动火灾探测器送来的信号,送至CPU加以判断,确认,并认识相应的编码地址。2.输出单元确认火灾信号后,输出单元一方面输出声,光报警信号,另一方面把相关信息发送给上位机,以便能从全局的角度采取灭火措施。3.监控单元监控单元的作用主要有两个:一个是检查报警控制器与探测器以及下位机与上位机之间的线路的状态是否存在断路,短路等故障,如果存在这些故障,报警器应给出故障声报警,以确保系统工作的可靠。监控单元的另一个作用是自动巡回检测,自动定期周而复始的逐个对编码探测器发出的信号进行检测,实现报警控制器的实时控制。4.记忆单元实时时钟记下第一次火灾报警的时间,直到火警消除,复位后方恢复正常。5.电源单元通常报警控制器的电源来自两个电源,即双电源。一个是采用220V市电整流进行正常供电。另一个是蓄电池,平时对其进行充电,当有火灾时,可在失去正常供电的情况下继续供电,以保证火灾监控系统的正常工作。6.时钟及时间记录火灾报警控制器本身应提供一个工作时钟,用于对工作状态提供监测参考。当发生火灾报警时,时钟应能指示并记录准确的报警时间。7.输出控制火灾报警控制器应具有一对以上的工作接点,用于火灾报警时的直接联动控制,如控制警铃、启动自动灭火系统等。输入输入单元CPU电源输出单元存储器监控单元外围接口温度传感器烟雾传感器声报警1602图1.1大空间火灾实验室监控系统框图2方案论证2.1火灾监控系统设计方案本次毕业设计的题目是“大空间火灾实验室监控系统建立——硬件设计”,该系统的工作对象是大型建筑的火灾安全,该系统主要是火灾探测器、信号调理装置、A/D转换器、火灾声报警装置、键盘显示装置、电源电路等装置构成。通过查阅相关的文献资料和筛选器件,最终确立了设计中上述各工作模块所采用的具体器件。火灾探测器分别采用DALLAS公司生产的一种DS18B20温度传感器及MQ-2烟雾传感器模块;信号调理装置即为几个简单的电阻和可变电阻,使得传感器的输出满足A/D转换器的输入即可;选用ADC0832作为该系统的A/D转换器;火灾报警装置由声报警系统组成。键盘显示装置直接与单片机的P3口相连,完成键盘输入和LED显示控制功能。只有上面所列的器件是不够的,要通过系统的整体框图把这些器件有机的连接成一个性能可靠的整体,理想的整体系统框图如图2.1所示。2.2火灾监控系统方案论证在上述最终方案确定之前,火灾报警控制器选用的是MC8051,理由是MC8051功能强大,外围电路简单,资料比较多,设计中会省去一大部分的工作。但通过查阅大量资料和与当今被广泛应用的器件进行比较,发现火灾报警监控系统的控制器对单片机的数据存储器和程序存储器的容量有一定的要求,而MCS8051只有256B的数据存储器,要是选用MCS8051单片机做火灾监控系统的火灾报警控制器,就需要对单片机进行扩展其数据和程序存储器,此举在当今单片机已得到广泛发展的今天是没有必要的。最终方案中所选用的STC89C51作为主控制器,其数据和程序存储器的容量是足够系统的要求的。温度传感器选用DALLAS公司的DS18B20,在测量精度、转换时间、传输距离和分辨率方面足够满足系统的要求。烟雾传感器采用比较流行的MQ-2烟雾传感器模块,该模块具有快速响应恢复、长期的使用寿命和可靠的稳定性、对烟雾有良好的灵敏度。中央控制台(上位机)中央控制台(上位机)输出通道(驱动电路)输入通道(数据通信,采集信号查询报警发令复位编辑键盘鼠标紧急广播报警灯火灾联动#1单片机#2单片机#8单片机探测器探测器…………图2.1理想系统整体结构图3系统硬件电路的设计3.1中央处理器——STC89C513.1.1STC89C51RC/RD+系列单片机STC89C51RC/RD+系列单片机是宏晶科技推出的新一代高速、低功耗、超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟、机器周期和6时钟、机器周期可以任意选择,HD版本和90C版本内部集成MAX810专用复位电路。1.增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051。2.工作电压:5.5V-3.3V(5V单片机)/3.8V-2.0V(3V单片机)。3.工作频率范围:0-40MHz,相当于普通8051的0-80MHz,实际工作频率可达48MHz。4.用户应用程序空间:4K/8K/13K/32K/64K字节。5.片上集成1280字节或512字节RAM。6.通用I/O口(35/39个),复位后为:P1/P2/P3/P4是准双向口/弱上拉(普通8051传统I/O口);P0口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。7.ISP(在系统可编程),IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成。8.有EEPROM功能。9.内置看门狗。10.内部集成MAX810专用复位电路(HD版本和90C版本才有),外部晶体20M以下时,可省略外部复位电路。11.共3个16定时器/计数器,其中定时器0还可以当成2个8位定时器使用。12.外部中断4路,下降沿中断或低电平触发中断,powerDown模式可由外部中断低电平触发中断方式唤醒。3.1.2STC89C51RC/RD+系列单片机的内部结构STC89C51RC/RD+系列单片机的内部结构框图如下图3.1所示。其中包含中央处理器(CPU)、程序存储器(Flash)、数据存储器(SRAM)、定时/计数器、UART串口、I/O接口、EEPROM、看门狗等模块。STC89C51RC/RD+系列单片机几乎包含了数据采集和控制中所需的所有单元模块,可称得上一个片上系统。AUX-RAM1024字节RAM地址寄存器AUX-RAM1024字节RAM地址寄存器RAM256字节程序存储器程序存储器ACCB寄存器堆栈指针双数据指针ACCB寄存器堆栈指针双数据指针TMP1/2ISP/IAP定时器0/1TMP1/2ISP/IAP定时器0/1ALU地址生成器ALU地址生成器定时器2定时器2WDTPSWEEPROM程序计数器串口WDTPSWEEPROM程序计数器串口ControlUnitPort0,1,2,3,4锁存器ControlUnitPort0,1,2,3,4锁存器RESETPort0,1,2,3,4驱动器Port0,1,2,3,4驱动器P0,p1,p2,p3,p4图3.1STC89C51RC/RD+系列单片机内部结构框图3.2STC89C51单片机最小系统STC89C51内部有闪存储器,芯片本身就是一个最小系统。在能满足系统的性能要求的情况下,可优先考虑采用此种方案。用这种芯片构成的最小系统简单、可靠。用AT89C52单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,与8031外扩展程序存储器的最小应用系统相比,该系统省去了外扩程序存储器的工作。该最小应用系统只能用作一些小型的数字量的测控单元。如图3.2所示。图3.2STC89C51的最小系统3.3下位机输入通道元器件选择3.3.1传感器选择随着经济技术和社会经济环境的发展,人员、设备和建筑对消防保护的要求也越来越高,促使火灾自动探测报警系统不断采用新技术来实现对人类生命和财产安全的可靠保障。如何进一步缩短火灾探测报警的时间,减少火灾的发生,及时采取有效防火、灭活措施,为减少火灾损失提供宝贵的时间等等。所以,有好的火灾探测器在现场可靠的运行是很重要的!由于本设计方案只针对普通的大空间可能发生的火灾,所以本设计方案选用感烟探测器和感温探测器两种。感温探测器采用DALLAS公司生产的DS18B20温度传感器。DS18B20是1—Wire,即单总线器件,具有线路简单,体积小的特点,超低的硬件开销,抗干扰能力强,精度高,附加功能强,是测温系统的不二选择。DS18B20的主要特征有:1)全数字温度转换及输出。2)先进的单总线数据通信。3)最高12位分辨率,精度可达0.5°C。4)12位分辨率时最大工作周期为750毫秒。5)可选择寄生工作方式。6)检测温度范围为-55°C~+125°C(-67°F~+257°F)。7)内置EEPROM,限温报警功能。8)64位光刻ROM,内置产品系列号,方便多机挂接。DS18B20芯片与单片机的接口如图3.3所示,采用两个DS18B20作为温度采集系统。图3.3DS18B20与单片机接口电路如图所示,DS18B20只需要挂到单片机的一个I/O口上,由于单总线为开漏所以需要外接一个10K的上拉电阻。感烟探测器采用的是MQ-2烟雾传感器模块,它能准确的探测到,CO,甲烷,烟雾等多种可能引发火灾的气体的存在。它灵敏度高,稳定性好,适用与火灾中气体的探测。该模块具有如下特点:1)具有信号输出指示。2)双路信号输出(模拟量输出及TTL电平输出)。3)TTL输出有效信号为低电平。(当输出低电平是信号灯亮,可直接接单片机)4)模拟量输出0~5V电压,浓度越高越有效。5)对液化气,天然气,城市煤气,烟雾有较好的灵敏度。6)具有长期的使用寿命和可靠的稳定性。7)快速的响应恢复特性。MQ-2烟雾传感器模块原理图如图3.4所示图3.4MQ-2烟雾传感器模块原理图3.3.2A/D转换器选择(1)ADC0832引脚结构及应用A/D转换电路采用美国国家半导体公司生产的8位双通道A/D转换专用芯片ADC0832,其引脚结构如图3.5所示,其中CS为片选使能,低电平芯片使能;CH0模拟输入通道0,或作为IN+/-使用;CH1模拟输入通道1,或作为IN+/-使用;GND为芯片参考0电位(地);DI数据信号输入,选择通道控制;DO数据信号输出,转换数据输出;CLK为芯片时钟输入;VCC(VREF)电源输入及参考电源输入(复用)。图3.5ADC0832的引脚结构图 ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一个的模拟量转换要求,其内部电源输入与参考电压复用,使得芯片的模拟电压输入在0V——5V之间。芯片转换时间仅为32uS,具有双数据输出,可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变得更加方便。通过DI数据输入端,可以轻易的实现通道功能的选择。 正常情况下ADC0832与单片机的接口应为4条数据线,分别为CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片被禁用,CLK和DO/DI的电平可以任意。当要进行A/D转换时,必须将CS使能端置位低电平并保持低电平直到转换完全结束。此时芯片开始转换工作,同时有处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第一个时钟脉冲的下降之前DI端必须是高电平,表示起始信号。在第二、三个脉冲下降之前DI端应输入2位数据用于选择通道功能,当此两位数据为“1”、“0”时,只对CH0进行单通道转换;当此两位数据为“1”、“1”时,只对CH1进行单通道转换;当此两位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。当此两位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1作为正输入端IN+进行输入。到第三个脉冲的下降之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行数据转换的读取。从第四个脉冲下降开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下降DO端输出下一位数据。直到第十一个脉冲时发出最低位数据DATA0,到此一个字节的数据输出完成。也正是从此开始输出下一个相反字节的数据,即从第十一个字节的下降输出DATA0。随后输出8位数据,到第十九个脉冲时数据输出完成,也标志着一次A/D转换的结束。最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以。作为单通道模拟信号输入时ADC0832的输入电压是0-5V且8位分辨率时的电压精度为19.53mV。ADC0832与单片机及MQ-2烟雾传感器模块的原理图如图3.6所示。图3.6ADC0832、MQ-2烟雾传感器模块及单片机接口电路(2)ADC0832内部逻辑结构ADC0832由一个8位输入寄存器、一个8位DAC寄存器和一个8位D/A转换器组成。结构图如图3.7所示。8位输入寄存8位输入寄存器8位D/A转换器8位DAC寄存器VREF数据输入数据输出图3.7ADC0832的内部逻辑结构图3.3.3下位机数据采集系统设计下位机的数据采集的主要流程为:现场的情况通过传感器来反映,而从传感器传出来的信号是模拟量信号,该模拟量信号通过A/D转换器,把模拟量转化为数字量,只有转化成数字量后,单片机才能接收到传感器传来的信号,下位机数据采集系统原理图如图3.8所示。图3.8下位机数据采集系统原理3.4键盘/显示接口电路设计本模块以STC89C51单片机为控制核心,由于本模块只用了5个按键,不需要译码器,直接与单片机的P3口相连,如图所示,大大简化了硬件设计,充分的利用了单片机的资源,这也是本设计的巧妙所在。可通过键盘来设置温度上下限,并在液晶显示屏1602上显示。通过软件编程,负责键盘扫描、消除抖动处理和显示输出工作。系统框架电路图如图3.9和图3.10所示。图3.9键盘接口电路图3.10显示接口电路3.5报警电路设计大空间火灾监控系统的报警系统主要是由声报警组成。在火灾可能发生或发生时在或者某个火灾探测器出现问题的时候,都需要火灾的声报警系统来提醒工作人员或告知有关人员逃生。下面分别对火灾监控系统的声报警系统做详细的介绍。火灾报警控制器在两种情况下发出声音报警:当检测到故障信号时(如传感器断线,电缆断线或传感器接触不良时)由蜂鸣器发出故障报警信号,蜂鸣器工作电流12mA,由P2.3经驱动放大电路驱动。原理图如图3.11所示;当检测到火灾时,由报警器发出警铃报警,它由三极管8550、电子和无源蜂鸣器相关电路够成。图3.11声报警系统电路原理图3.6电源电路设计本系统中,由于MQ-2烟雾传感器模块对电流要求比较高,故外加的稳压器必须达到足以提供模块工作以及其他电路工作的条件,所以本系统采用开关电源芯片LM2576完成从12V到5V的转换,为系统供电。3.6.1+5V3A直流稳压电路原理+5V直流稳压电源的工作电路,传统方式采用分立元件构成,该火灾监控系统采用美国国家半导体公司生产的3A电流输出降压型稳压器LM2576。它内含固定频率振荡器(52kHz)和基准稳压器(1.23V),并具有完善的保护电路,包括电流限制及热关断电路等,利用该器件只需极少的外围器件便可构成高效稳压电路。LM2576因其稳压精度高、工作稳定可靠、外围电路简单、容易设计和制作、体积小、重量轻、成本低、维修简单等优点,所以在各种电源电路中得到了普遍的应用。LM2576系列开关稳压集成电路的主要特性如下:

●最大输出电流:3A;

●最高输入电压:LM2576为40V,LM2576HV为60V;

●输出电压:3.3V、5V、12V、15V和ADJ(可调)等可选;

●振东频率:52kHz;

●转换效率:75%~88%(不同电压输出时的效率不同);

●控制方式:PWM;●工作温度范围:-40℃~+125℃

●工作模式:低功耗/正常两种模式可外部控制;

●工作模式控制:TTL电平兼容;

●所需外部元件:仅四个(不可调)或六个(可调);

●器件保护:热关断及电流限制;

●封装形式:TO-220或TO-263。LM2596的典型应用电路如图3.12所示,这是一个输出+5V直流电压的稳压电路。IC采用LM2576,C4、C5、C6、C7分别为输入端和输出端滤波电容,D1为续流二极管。L1为储能功率电感。图3.12+5V直流稳压原理图3.6.2+5V3A直流稳压电路参数设计根据设计要求,图3.17中电感L1的选择要根据LM2576的输出电压、最大输入电压、最大负载电流等参数选择,首先,依据如下公式计算出电压.微秒常数(E.T):E.T=(Vin-Vout)*Vout/Vin*1000/f上式中,Vin是LM2576的最大输入电压,Vout是LM2576的输出电压,f是LM2576的工作振荡频率值(52kHz)。E.T确定之后,就可参照参考文献所提供的相应的电压.微秒常数和负载电流曲线来查找所需的电感值。该电路中的输入电容C4一般应大于或等于100uF,安装时要尽量靠近LM2576的输入引脚,其耐压值应与最大输入电压值相匹配。而输出电容C6的值应根据下式进行计算(单位:uF):C=13300Vin/Vout*L上式中,Vin是LM2576的最大输入电压,Vout是LM2576的输出电压,L是经过计算并查表选出的电感L1的值,其单位是uH。电容C的耐压值应大于额定输出电压的1.5~2倍。对于5V电压输出而言,推荐使用耐压值为16V。二极管D1的额定电流值应大于最大负载电流的1.2倍,考虑到负载短路的情况,二极管的额定电流值应大于LM2576的最大电流限制。二极管的反向电压应大于最大输入电压的1.25倍,推荐使用IN582X系列的肖特基二极管。 Vin的选择应考虑交流电压最低跌落值(Vac-min)所对应的LM2576输入电压值及LM2576的最小输入允许电压值Vmin(以5V电压输出为例,该值为8V),因此,Vin可依据下式计算:Vin=(220Vmin/Vac-min)如果交流电压最大允许跌落30%(Vac-min=154V)、LM2576的电压输出为5V(Vmin=8V),则当Vac=220V时,LM2576的输入直流电压应大于11.5V,通常可选为12V。4系统软件设计4.1主机程序流程图为了便于系统维护和功能扩充,本系统采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序调用实现的。系统主程序流程图如图4.1所示。开始开始1602、18b20、MQ-2初始化1602、18b20、MQ-2初始化显示结果、处理数据显示结果、处理数据是否越警是否越警传送信号给报警器是传送信号给报警器否结束结束图4.1主程序流程图4.1.1DS18B20子程序流程图DS18B20子程序流程图如图4.2所示。开始开始初始化初始化DS18B20存在?DS18B20存在?否是ROM操作命令ROM操作命令存储操作命令存储操作命令读取温度值读取温度值返回返回图4.2DS18B20子程序流程图4.1.2MQ-2烟雾传感器模块子程序流程图MQ-2烟雾传感器模块子程序流程图如图4.3所示。开始开始初始化初始化MQ-2存在?否MQ-2存在?读取烟雾浓度是读取烟雾浓度返回返回图4.3MQ-2烟雾传感器模块子程序流程图4.1.3LCD1602子程序流程图LCD1602子程序流程图如图4.4所示。开始开始初始化初始化1602存在?1602存在?否是单片机向LCD写命令单片机向LCD写命令单片机向LCD写数据单片机向LCD写数据显示数据显示数据结束结束图4.4LCD1602子程序流程图4.1.4AD转换子程序流程图AD转换子程序流程图如图4.5所示。开始开始初始化初始化启动A/D转换启动A/D转换A/D转换完成?A/D转换完成?否是数据输出数据输出延时延时结束结束图4.5AD转换子程序流程图4.2总体程序总体程序见附录3主要程序。5硬件制作及调试本硬件的制作调试主要分为硬件调试和软件调试两部分。 经过初步的分析设计后,在设计制作硬件电路的同时,调试穿插进行,应用系统的硬件调试和软件调试是分不开的,许多硬件故障是在调试软件时才发现的。但通常是先排除硬件系统中明显的硬件故障后才和软件结合起来调试,如此才有利于问题的分析和解决,不会造成问题的积累,从而可以节约大量的调试时间。软件编程中,我首先完成单元功能模块的调试,然后进行系统调试。5.1使用的仪器仪表及工具 笔记本一台; 单片机仿真器一台; DT9205A型数字万用表一个; TLW-T调温烙铁一把; Keil开发软件一套。5.2硬件制作与调试5.2.1系统PCB板的设计 PCB即印刷电路板,是电子电路的承载体。在现代电子产品中,几乎都离不开PCB。PCB板的设计是电路设计的最后一个环节,也是对原理图的再设计。因此PCB板的设计是理论设计到实际应用一个十分重要的内容。印刷电路板(PCB)是电子产品中电路元件和器件的支撑体。因此,在进行PCB设计时,必须遵守印制电路板设计原则和抗干扰措施的一般原则,并应符合抗干扰设计的要求。本次设计采用Altium公司PROTEL系列设计完成SCH到PCB的设计,并且手工完成电路焊接以及整机的装配。5.2.2系统硬件调试 本系统的硬件调试分为以下阶段进行调试:(1)逻辑错误调试样机硬件的逻辑错误是由于设计错误和加工过程中的工艺性错误所造成的。这类错误包括:错线、开路、短路等几种,其中短路是最常见的故障。(2)器件调试元器件失效的原因有两个方面:一是器件本身已损坏或性能不符合要求;二是由于组装错误造成的元器件失效,如电解电容、二极管的极性错误,集成块安装方向错误等。(3)可靠性调试引起系统不可靠的因素很多,如金属化孔、接插件接触不良会造成系统时好时坏;内部和外部的干扰、电源纹波系数过大、器件负载过大等造成逻辑电平不稳定;另外,走线和布局的不合理等也会引起系统可靠性差。(4)电源故障若样机中存在电源故障,则加电后将造成器件损坏。电源的故障包括:电压值不符合设计要求,电源引出线和插座不对应,电源功率不足、负载能力差。在本次调试在调试样机加电之前,先用万用表和示波器,根据硬件电气原理图和装配图仔细检查样机线路的正确性,并核对元器件的型号、规格和安装是否符合要求。还特别注意电源的走线,防止电源之间的短路和极性错误,并重点检查扩展系统总线是否存在相互间的短路;或其它信号线的短路,由于本设计的印刷电路板布线密度较高,出现了几处因工艺原因造成短路,短路点用刻刀断开。对于样机所用的电源事先做了单独调试,调试好后,检查其电压值、负载能力、极性等均符合要求,然后加到系统的各个部件上。在不插片子的情况下,加电检查各插件上引脚的电位,仔细测量各地点电位是否正常,还特别注意单片机插座上的各点电位是否正常,防止了联机时会损坏仿真器。5.3软件调试软件调试与所选用的软件结构和程序设计技术有关。本系统采用模块程序设计技术,逐个模块调好以后,再进行系统程序总调试。在调试第一个任务时,同时也调试相关的子程序、中断服务程序和操作系统的程序。等逐个任务调试好以后,再使各个任务同时运行,在本次调试中操作系统中没有错误,在单步和断点调试后,进行了连续调试,因为单步运行时只能验证程序的正确与否,而不能确定定时精度、CPU的实时响应等问题。等全部完成后,反复运行多次,除了观察稳定性之外,还观察了用户系统的操作是否符合设计要求的操等,部分程序作了适当修正后系统能够正常运行。6总结本次毕业设计的主要任务是大空间火灾实验室监控系统的硬件设计,主要由硬件电路和系统软件两部分构成。在软件编写过程中,一定要注意的每个元器件的工作情况,确保各个芯片的时序的正确。从整体来说这是一个复杂的过程,要细心谨慎,沉着冷静,反复检查。本设计主要从硬件方面介绍,在软件部分也做了些大概介绍,此设计对于大空间提供全方位监控报警的智能火灾监控系统的研究也具有一定的借鉴意义。本大空间火灾实验室监控系统具体功能如下:1)高温报警功能如果当前大空间内的温度达到某一上限值(即火灾即将发生),火灾监控系统便会用喇叭播放报警。2)烟雾报警功能大空间的煤气、天然气等可燃气体或烟雾的浓度超标时,火灾监控系统便会报警,可有效防止火灾事故的发生,确保人身不受伤害。本系统采用最简单的电路、最便宜的电路芯片实现了完善的功能,具有很强的实用性,充分发挥了智能火灾监控系统的优越性。由于实践经验等方面的不足,系统在硬件和软件方面还存在一些缺陷,需要进一步加以改进和完善。致谢通过这次设计,我既巩固了过去学过的专业知识,又学到了许多新知识。通过理论与实践相结合,使我真正感受到了知识的力量,但也使我知道了自己的不足和一种危机感。我会在以后的工作中继续努力进取、不骄不躁,为祖国建设事业出一份力。本次毕业设计能够很顺利的完成,最主要的是孙老师的细心的解答和不断的鼓励,使我每当遇到困难的时候不急躁,在有所成就的时候不骄傲,才使我的本次毕业设计顺利的完成,再次对孙老师表达诚挚的谢意!由于本人水平有限,加之时间仓促,设计中疏漏和错误之处在所难免,希望老师给予谅解,同时也希望老师加以指正和批评,使我在以后的学习和工作中取得更大的成绩。参考文献[1]赵继文.传感器与应用电路设计.北京:科学出版社,2002.9:53~68[2]何希才.传感器及其应用电路.北京:电子工业出版社,2001.3:54~96[3]皮壮行.可编程序控制器系统的设计与应用实例.北京:机械工业出版社,2000:67~75[4]谢瑞和.串行技术大全.北京:清华大学出版社,2003.4:14~23[5]高海生等主编.单片机及应用技术大全[M].成都:西南交通大学出版社.1996:78-82[6]孙凯.火灾报警系统.传感器世界,2003(5):13-16[7]蔡得聪.传感器的发展方向及数字传感器的地位.电气自动化2003(9):21-23[8]将文光.多机通信技术.电气自动化2004(6):12-15[9]黄石.单片机与单片机之间的通信.商秋学院学报2003(5):19-24[10]杨野.火灾报警技术的发展.电气自动化2004(3):23-27[11]JohnL.Hennessy,DavidAPattersonComputerOrganizationandDesign:TheHardware/softwareInterface,SanFrancisco:MorganKaufmanPublisher,Inc,1997:78-82[12]ALWilliams,EmbeddedInternetDesign,McGrawhill,July2002:254-262[13]DreamtechSoftwareTeam,ProgrammingforEmbeddedSystems-CrackingtheCode,HungryMinds,April2002:145-147[14]沙占友.新型单片机开关电源的设计与应用[M].北京:电子工业出版社.2001:32-48[15]廉保旺,李勇,张怡,赵乃煌.智能火灾报警控制系统设计与实现.西北工业大学学报[N],1999,17(4):520-524附录1:电路原理图附录2:PCB板附录3:主要程序#include<reg52.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint#defineXTAL11059200//CUP 晶振频率#definebaudrate9600//通信波特率//定义1602指令集//#defineCMD_clear0x01//清除屏幕#defineCMD_back0x02//DDRAM回零位,数据指针清零#defineCMD_dec10x04//读入后AC(指针)减1,向左写#defineCMD_add10x06//读入后AC(指针)加1,向右写#defineCMD_dis_gb10x0f//开显示_开光标_开光标闪烁#defineCMD_dis_gb20x0e//开显示_开光标_关光标闪烁#defineCMD_dis_gb30x0c//开显示_关光标_关光标闪烁#defineCMD_OFF_dis0x08//关显示_关光标_关光标闪烁sbitDQ=P2^0;//温度输入口2^0uinttemp;//variableoftemperature定义一个变量ucharflag1,flag;//定义一个标志,标志温度是负还是正,1为负,0为正ucharup=30,down=12;//设定上下限值,默认值sbit KEY1=P3^3;sbit KEY2=P3^4;sbit KEY3=P3^5;sbit KEY4=P3^6;sbit KEY5=P3^7;sbitbeep=P2^4;//************************************/串口初始化**************************************/voidStartUART(void){ EA=1;//"中断总允许"TMOD=0x20; //定时器1工作于8位自动重载模式,用于产生波特率 TH1=(unsignedchar)(256-(XTAL/(32L*12L*baudrate))); TL1=(unsignedchar)(256-(XTAL/(32L*12L*baudrate)));//定时器0赋初值 SCON=0x50; //设定串行口工作方式 PCON&=0x00; //波特率不倍增 TR1=1; //启动定时器1 IE=0x00; //禁止任何中断}//************************************通过串口将接收到数据发送给PC端**************************************voidR_S_Byte(ucharR_Byte){ SBUF=R_Byte;while(TI==0); //查询法 TI=0; }/***************************************//*延时子程序*//***************************************/voiddelayus(uinti)//delay{while(i--);}voidDelay(unsignedints){ unsignedinti; for(i=0;i<s;i++); for(i=0;i<s;i++);}/************************************************//*初始化ds18b2子函数**//************************************************/voidInit_DS18B20(void){ucharx=0;DQ=1;//DQ复位delayus(8);//稍做延时DQ=0;//单片机将DQ拉低delayus(80);//精确延时大于480usDQ=1;//拉高总线delayus(14);x=DQ;//稍做延时后如果x=0则初始化成功x=1则初始化失败delayus(20);}/*************************************************//*读字节子函数*//*************************************************/ReadOneChar(void){uchari=0;uchardat=0;for(i=8;i>0;i--){DQ=0;//给脉冲信号dat>>=1;//数据右移一位DQ=1;//给脉冲信号if(DQ)//DQ为1dat|=0x80;//读出数据delayus(4);//延时}return(dat);}/*************************************************//*写字节子函数*//*************************************************/voidWriteOneChar(unsignedchardat){uchari=0;for(i=8;i>0;i--){DQ=0;DQ=dat&0x01;//写入一位数据delayus(5);DQ=1;dat>>=1;//右移一位数据}}/******************************************//*发送温度转换命令*//******************************************/voidtmpchange(void)//DS18B20beginchange{Init_DS18B20();//初始化DS18B20delayus(200);//延时WriteOneChar(0xcc);//跳过序列号命令WriteOneChar(0x44);//发送温度转换命令}/******************************************//*读出温度函数并且显示温度*//******************************************///uinttmp()//getthetemperature//{// chara=0,b=0,c=0;//Init_DS18B20();//初始化ds18b2子函数//delayus(1);//WriteOneChar(0xcc);//跳过ROM命令//WriteOneChar(0xbe);//发送读取数据命令//temp_data[0]=ReadOneChar();//连续读两个字节数据//temp_data[1]=ReadOneChar();//temp=temp_data[1];//temp<<=8;//temp=temp|temp_data[0];//两字节合成一个整型变量。//TempBuffer[5]=temp_data[0];//TempBuffer[6]=temp_data[1];// //returntemp;//返回温度值//}voidprintTemperature(void){ //写一个字节 ucharx,y,M,N,tt; uinti=0; floatbb; unsignedchara=0,b=0,c=0; Init_DS18B20();//初始化ds18b2子函数 delayus(1); WriteOneChar(0xcc);//跳过ROM命令 WriteOneChar(0xbe);//发送读取数据命令temp=ReadOneChar();//连续读两个字节数据tt=ReadOneChar(); //低字节 i=tt; i<<=8; i=i|temp;//把温度传感器读出的两个字节转换成一个字节 if(tt&0xf8) { flag=1; i=(~i+1); } //使用DS18B20的默认分辨率12位,精确度为0.0625度,即读回数据的最低位代表0.0625度 bb=i*0.0625; i=bb*10+0.5;//放大10倍输出并四舍五入 if(i<=down*10|i>=up*10) { beep=0; Delay(1800); beep=1; } else beep=1; x=up/10; y=up%10; print2(0x89+5,x+0x30); print2(0x89+6,y+0x30); M=down/10; N=down%10; print2(0x89+0x40+5,M+0x30); print2(0x89+0x40+6,N+0x30); if(flag) print2(0x83,'-'); a=i/100; if(a>0x09) { print(0x84,"--.-"); } else { print2(0x84,a+0x30);//显示温度十位 b=i/10-a*10; print2(0x85,b+0x30);//个位 print(0x86,".");//"." c=i-a*100-b*10; print2(0x87,c+0x30);//小位1位 } print2(0x88,0xdf);//度C print2(0x89,0x43); }//**********************************主函数**********************************/voidmain(void){ StartUART(); init();//1602初始化 init_1602();//1602开始画面 Delay(6000); while(1) {// if(KEY1==0)// { // Delay(1000);// if(KEY1==0)// {// up++;// while(!KEY1);//松手检测// }// }// if(KEY2==0)// { // Delay(1000);// if(KEY2==0)// {// up--;// while(!KEY2);// }// }// if(KEY3==0)// { // Delay(1000);// if(KEY3==0)// {// down++;// while(!KEY3);// }// }// if(KEY4==0)// { // Delay(1000);// if(KEY4==0)// {// down--;// while(!KEY4);// }// } printTemperature(); } }ExcelXP的八则快速输入技巧如果我们在用ExcelXP处理庞大的数据信息时,不注意讲究技巧和方法的话,很可能会花费很大的精力。因此如何巧用ExcelXP,来快速输入信息就成为各个ExcelXP用户非常关心的话题,笔者向大家介绍几则这方面的小技巧。1、快速输入大量含小数点的数字如果我们需要在ExcelXP工作表中输入大量的带有小数位的数字时,按照普通的输入方法,我们可能按照数字原样大小直接输入,例如现在要在单元格中输入0.05这个数字时,我们会把“0.05”原样输入到表格中。不过如果需要输入若干个带有小数点的数字时,我们再按照上面的方法输入的话,每次输入数字时都需要重复输入小数点,这样工作量会变大,输入效率会降低。其实,我们可以使用ExcelXP中的小数点自动定位功能,让所有数字的小数点自动定位,从而快速提高输入速度。在使用小数点自动定位功能时,我们可以先在ExcelXP的编辑界面中,用鼠标依次单击“工具”/“选项”/“编辑”标签,在弹出的对话框中选中“自动设置小数点”复选框,然后在“位数”微调编辑框中键入需要显示在小数点右面的位数就可以了。以后我们再输入带有小数点的数字时,直接输入数字,而小数点将在回车键后自动进行定位。例如,我们要在某单元格中键入0.06的话,可以在上面的设置中,让“位数”选项为2,然后直接在指定单元格中输入6,回车以后,该单元格的数字自动变为“0.06”,怎么样简单吧?2、快速录入文本文件中的内容现在您手边假如有一些以纯文本格式储存的文件,如果此时您需要将这些数据制作成ExcelXP的工作表,那该怎么办呢?重新输入一遍,大概只有头脑有毛病的人才会这样做;将菜单上的数据一个个复制/粘贴到工作表中,也需花很多时间。没关系!您只要在ExcelXP中巧妙使用其中的文本文件导入功能,就可以大大减轻需要重新输入或者需要不断复制、粘贴的巨大工作量了。使用该功能时,您只要在ExcelXP编辑区中,依次用鼠标单击菜单栏中的“数据/获取外部数据/导入文本文件”命令,然后在导入文本会话窗口选择要导入的文本文件,再按下“导入”钮以后,程序会弹出一个文本导入向导对话框,您只要按照向导的提示进行操作,就可以把以文本格式的数据转换成工作表的格式了。3、快速输入大量相同数据如果你希望在不同的单元格中输入大量相同的数据信息,那么你不必逐个单元格一个一个地输入,那样需要花费好长时间,而且还比较容易出错。你可以通过下面的操作方法在多个相邻或不相邻的单元格中快速填充同一个数据,具体方法为:首先同时选中需要填充数据的单元格。若某些单元格不相邻,可在按住Ctrl键的同时,点击鼠标左键,逐个选中;其次输入要填充的某个数据。按住Ctrl键的同时,按回车键,则刚才选中的所有单元格同时填入该数据。4、快速进行中英文输入法切换一张工作表常常会既包含有数字信息,又包含有文字信息,要录入这样一种工作表就需要我们不断地在中英文之间反复切换输入法,非常麻烦,为了方便操作,我们可以用以下方法实现自动切换:首先用鼠标选中需要输入中文的单元格区域,然后在输入法菜单中选择一个合适的中文输入法;接着打开“有效数据”对话框,选中“IME模式”标签,在“模式”框中选择打开,单击“确定”按钮;然后再选中输入数字的单元格区域,在“有效数据”对话框中,单击“IME模式”选项卡,在“模式”框中选择关闭(英文模式);最后单击“确定”按钮,这样用鼠标分别在刚才设定的两列中选中单元格,五笔和英文输入方式就可以相互切换了。5、快速删除工作表中空行删除ExcelXP工作表中的空行,一般的方法是需要将空行都找出来,然后逐行删除,但这样做操作量非常大,很不方便。那么如何才能减轻删除工作表中空行的工作量呢?您可以使用下面的操作方法来进行删除:首先打开要删除空行的工作表,在打开的工作表中用鼠标单击菜单栏中的“插入”菜单项,并从下拉菜单中选择“列”,从而插入一新的列X,在X列中顺序填入整数;然后根据其他任何一列将表中的行排序,使所有空行都集中到表的底部。删去所有空行中X列的数据,以X列重新排序,然后删去X列。按照这样的删除方法,无论工作表中包含多少空行,您就可以很快地删除了。6、快速对不同单元格中字号进行调整在使用ExcelXP编辑文件时,常常需要将某一列的宽度固定,但由于该列各单元格中的字符数目不等,致使有的单元格中的内容不能完全显示在屏幕上,为了让这些单元格中的数据都显示在屏幕上,就不得不对这些单元格重新定义较小的字号。如果依次对这些单元格中的字号调整的话,工作量将会变得很大。其实,您可以采用下面的方法来减轻字号调整的工作量:首先新建或打开一个工作簿,并选中需要ExcelXP根据单元格的宽度调整字号的单元格区域;其次单击用鼠标依次单击菜单栏中的“格式”/“单元格”/“对齐”标签,在“文本控制”下选中“缩小字体填充”复选框,并单击“确定”按钮;此后,当你在这些单元格中输入数据时,如果输入的数据长度超过了单元格的宽度,ExcelXP能够自动缩小字符的大小把数据调整到与列宽一致,以使数据全部显示在单元格中。如果你对这些单元格的列宽进行了更改,则字符可自动增大或缩小字号,以适应新的单元格列宽,但是对这些单元格原设置的字体字号大小则保持不变。7、快速输入多个重复数据在使用ExcelXP工作表的过程中,我们经常要输入大量重复的数据,如果依次输入,无疑工作量是巨大的。现在我们可以借助ExcelXP的“宏”功能,来记录首次输入需要重复输入的数据的命令和过程,然后将这些命令和过程赋值到一个组合键或工具栏的按钮上,当按下组合键时,计算机就会重复所记录的操作。使用宏功能时,我们可以按照以下步骤进行操作:首先打开工作表,在工作表中选中要进行操作的单元格;接着再用鼠标单击菜单栏中的“工具”菜单项,并从弹出的下拉菜单中选择“宏”子菜单项,并从随后弹出的下级菜单中选择“录制新宏”命令;设定好宏后,我们就可以对指定的单元格,进行各种操作,程序将自动对所进行的各方面操作记录复制。8、快速处理多个工作表有时我们需要在ExcelXP中打开多个工作表来进行编辑,但无论打开多少工作表,在某一时刻我们只能对一个工作表进行编辑,编辑好了以后再依次编辑下一个工作表,如果真是这样操作的话,我们倒没有这个必要同时打开多个工作表了,因为我们同时打开多个工作表的目的就是要减轻处理多个工作表的工作量的,那么我们该如何实现这样的操作呢?您可采用以下方法:首先按住“Shift"键或“Ctrl"键并配以鼠标操作,在工作簿底部选择多个彼此相邻或不相邻的工作表标签,然后就可以对其实行多方面的批量处理;接着在选中的工作表标签上按右键弹出快捷菜单,进行插入和删除多个工作表的操作;然后在“文件”菜单中选择“页面设置……”,将选中的多个工作表设成相同的页面模式;再通过“编辑”菜单中的有关选项,在多个工作表范围内进行查找、替换、定位操作;通过“格式”菜单中的有关选项,将选中的多个工作表的行、列、单元格设成相同的样式以及进行一次性全部隐藏操作;接着在“工具”菜单中选择“选项……”,在弹出的菜单中选择“视窗”和“编辑”按钮,将选中的工作表设成相同的

温馨提示

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

评论

0/150

提交评论