气象换监测系统设计.docx
- 文档编号:15162737
- 上传时间:2023-07-01
- 格式:DOCX
- 页数:15
- 大小:28.47KB
气象换监测系统设计.docx
《气象换监测系统设计.docx》由会员分享,可在线阅读,更多相关《气象换监测系统设计.docx(15页珍藏版)》请在冰点文库上搜索。
气象换监测系统设计
气象环境监测系统设计
摘要:
随着全球气候变暖和空气质量的急剧恶化,人们越来越关注空气和环境的质量,针对该需求,本课题设计了一套基于AT89C52单片机的气象环境监测系统。
本系统以AT89C52单片机为控制中心,采用GP2Y1010AU0F粉尘传感器,对空气中PM2.5的浓度进行测量,利用SHT11温湿度传感器监测环境温湿度。
传感器采集到的数据经过单片机处理后,通过LCD1602显示屏进行实时显示。
系统可以通过按键来设置PM2.5浓度的报警值,当环境中PM2.5的浓度超过设定值时,系统就会控制蜂鸣器发出报警。
经过仿真测试,实验结果表明,本系统实现了在正常环境下的温湿度监测和PM2.5浓度的采集,以及显示报警功能。
本系统结构简单,功能多样,成本低廉,稳定性好,测量精度高,具有一定的实用价值。
关键词:
AT89S52单片机、SHT11传感器、温湿度检测、PM2.5检测
MeteorologicalEnvironmentMonitoring
SystemDesign
Abstract:
Withtherapiddeteriorationofglobalwarmingandairquality,peoplearepayingmoreandmoreattentiontothequalityoftheairandtheenvironment.Inresponsetothisdemand,thisprojecthasdesignedaweathermonitoringsystembasedontheAT89C52microcontroller.ThesystemusestheAT89C52microcontrollerasthecontrolcenterandusestheGP2Y1010AU0FdustsensortomeasuretheconcentrationofPM2.5intheair,andusestheSHT11temperatureandhumiditysensortomonitortheambienttemperatureandhumidity.ThedatacollectedbythesensorisprocessedbytheSCManddisplayedinrealtimethroughtheLCD1602display.ThesystemcansetthealarmvalueofPM2.5concentrationbypressingthekey.WhentheconcentrationofPM2.5intheenvironmentexceedsthesetvalue,thesystemwillcontrolthebuzzertoissueanalarm.Afterthesimulationtest,theexperimentalresultsshowthatthesystemrealizesthemonitoringoftemperatureandhumidityandthecollectionofPM2.5concentrationinthenormalenvironment,anddisplaysthealarmfunction.Thesystemissimpleinstructure,diverseinfunction,lowincost,stableinstability,andaccurateinmeasurementhigh.Hasacertainpracticalvalue.
Keywords:
AT89S52MCU,SHT11sensor,temperatureandhumiditydetection,PM2.5detection
气象环境监测系统设计
第一章概述
1.1课题研究的背景与意义
环境监测不仅在工业、农业和国防等领域有重要作用,还与每个人生活与健康有着千丝万缕的联系。
随着社会的快速发展和生活水平的逐步提高,人们对于自己居住环境的要求也越来越高,对健康的关注度也越来越高。
伴随着工业和建筑业的迅速发展,以及大量汽车尾气的排放,空气中二氧化碳等温室气体的浓度升高,全球的气温也在逐年升高。
更为严重的是,汽车尾气以及工业废气中存在大量可吸入颗粒,即PM2.5,而这些可吸入颗粒与水汽混合后就构成了雾霾,将对人们的身体造成严重的威胁。
空气中温湿度的变化能够直接影响人体的舒适度和情绪,而PM2.5的浓度更是直接影响人体的健康,在这种情况下,对环境中的温湿度以及PM2.5浓度的监测就显得很有必要了。
在科技不发达的时代,温湿度的监测是通过人工实现的,监测工具都是速率低下,误差较大的被动式温湿度计,依靠人工轮流测量并记录环境状况等信息。
这种模式不仅效率低,而且测量出的温湿度数据误差比较大,缺乏科学性和严谨性,人力资源没有得到充分的利用,往往重大事故都是人为因素导致的。
而在当今时代,科技正在以一日千里的速度飞速发展和普及,各种高性能的环境监测设备也是层出不穷,不管是工业还是农业,对环境中温湿度监测的要求也在不断提高。
不仅需要较高的精度和反应速度,还要能够便于维护和管理,成本也是需要考虑的一个问题。
在这种背景,就需要设计出一种结构简单,功能多样,测量精度较高且成本低廉的环境监测设备,故本次设计不论对工业、农业还是家居,都具有普遍的意义。
1.2设计内容及要求
1、能够通过温湿度传感器采集空气的温度和湿度数据,并反馈给单片机;
2、单片机在收集到数据后,进行分析和处理,然后将数据直观的显示出来;
3、系统能够设定PM2.5的报警值,当检测的结果等于或高于报警值时,系统能够发出报警信号;
4、系统检测得到的温湿度数据精度要较高,温度误差不能超过1℃,湿度的误差不能超过1%RH,PM2.5的浓度误差不能超过0.002mg/m³;
5、系统要具有较好的稳定性,能够长时间工作,具备硬件复位功能;
1.3设计思路及方案选择
1.3.1设计思路
根据设计要求,硬件电路部分主要分为:
直流供电模块、单片机最小系统、温湿度监测模块、PM2.5监测模块、按键输入模块、液晶显示模块以及蜂鸣器报警模块。
本系统以AT89C52单片机作为系统的核心控制单元,负责整个系统的输入输出控制以及数据处理功能,采用SHT11模块作为温湿度传感器,对环境的温湿度数据进行实时监测,通过GP2Y1010AU0F粉尘传感器采集空气中PM2.5的浓度值,利用按键对报警阈值进行设置,用蜂鸣器作为报警装置。
系统运行过程中,SHT11温湿度传感器采集环境中的温度和湿度数据,通过模块的IIC接口与单片机进行通讯,AT89C52单片机利用I/O来模拟IIC通讯,对SHT11发送控制指令和接收温湿度数据。
同时GP2Y1010AU0F粉尘传感器采集到的空气中PM2.5浓度值数据经过自带的ADC芯片传唤为数字信号,通过SPI接口发送给单片机。
单片机在接收到两个传感器的数据后,经过处理后在LCD1602液晶上将温度、湿度以及PM2.5浓度值显示出来。
通过按键可以设定PM2.5浓度的报警值,长按对应的按键可以对设定值进行连加或者连减,设定值会实时在LCD1602上进行显示,当环境中PM2.5的浓度等于或大于设置的浓度值上限值时,蜂鸣器就会发出报警的声音。
温度和湿度参数不需要设置报警值。
直流电源模块为整个系统提供稳定的直流电源,来保证系统的稳定运行。
1.3.2主控系统方案选择
方案一:
采用ARM核微控制器STM32103c8t6作为系统的控制器。
STM32是ST(意法半导体)开发的基于ARM®Cortex®M处理器内核的32位闪存微控制器,STM32MCU融高性能、实时性、数字信号处理、低功耗、低电压于一身,它拥有丰富的外设功能,拥有高达72Mhz的系统主频。
拥有良好的开发生态系统和广阔的市场,并提供多种简单易用的软硬件开发工具,具有保持高集成度和开发简单的特点,同时价格也较高。
方案二:
采用AT89C52单片机作为整个系统的核心。
AT89C52是一个低电压,高性能的CMOS8位单片机,采用工业标准的C51内核,兼容标准MCS-51指令系统,它拥有40个引脚,最多32个外部双向输入输出端口(I/O口)。
拥有2个全双工串口,2个外部中断以及3个16位可编程定时器,价格低廉。
综上分析,本系统采用方案二,即AT89C52单片机作为整个系统的控制核心。
虽然STM32的总体性能和外设资源都远超AT89C52,但是本系统设计的功能复杂度比较低,采用STM32会浪费大量资源,而且其成本也是AT89C52的好几倍。
AT89C52虽然功能及外设比较少,但是在本系统中应用已经绰绰有余,既能达到预定的性能指标,又能节约大量成本。
故在本设计中选用AT89C52单片机做为系统的控制芯片。
1.3.3温湿度检测方案选择
方案一:
选用DHT11对环境温湿度数据进行采集。
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。
其内部由一个电阻式感湿原件和一个NTC式测温原件,这两者都与一个高性能的8为单片机相连,可通过单总线的方式与单片机进行通讯。
该产品拥有反应速度快、抗干扰能力强等特点。
方案二:
采用SHT11对环境温湿度数据进行采集。
SHT11是瑞士Scnsirion公司推出的一款数字温湿度传感器芯片。
芯片广泛应用于暖通空调、汽车、消费电子、自动控制等领域。
该芯片具有较高的集成度、测量精度可编程调节、测量精确度高、封装尺寸超小、高可靠性等特点。
其将将温度感测、湿度感测、信号变换、A/D转换等功能集成在一起,通过二线数字串行接口就能进行通讯,传输支持CRC校验,具有较高的可靠性。
综上分析,系统采用SHT11作为温湿度监测传感器。
DHT11传感器内部虽然有一个8位单片机,但是其单总线的通讯方式不能保证通讯数据的可靠性,而且相对价格也比SHT11贵很多。
SHT11虽然结构简单,但是其精度和功能并不比DHT11逊色,同时还具有较高的性价比。
综合考虑,选择方案二。
1.3.4显示方案选择
方案一:
采用TFTLCD进行显示。
TFTLCD具有较高的对比度和更丰富的色彩,荧屏更新频率也更快。
在亮度、对比度、功耗、寿命、体积和重量等综合性能上有很大的优势,具有优良的性能。
相对的,其成本也会比较高。
方案二:
采用LCD1602液晶显示。
LCD1602是点阵字符型液晶屏,模块自带英文字库和阿拉伯数字字库,通过单片机驱动,可以直接显示数字与阿拉伯字母,不需要对字符进行取模等各种复杂操作。
好处是价格低廉,非常适合对于显示效果要求不高的场合。
综合分析,本系统采用方案二。
TFT虽然显示效果好,色彩鲜艳,但是驱动需要的控制引脚比较多,对单片机的性能要求也比较高成本是LCD1602的好几倍。
LCD1602液晶驱动简单,虽然显示信息量少,但是用在该系统中已经足够,可以通过切换显示界面的方法来完成所有信息及数据的显示。
因此,选用LCD1602来实现显示功能。
1.4总体系统结构
根据设计要求及设计思路,系统结构主要组成部分为:
直流供电模块、AT89C52单片机最小系统、SHT11温湿度监测模块、GP2Y1010AU0F监测模块、按键输入模块、LCD602液晶显示模块以及蜂鸣器报警模块。
同时系统还需要软件控制程序才能正常工作,实现设计的功能,而程序部分也包含在单片机最小系统内部。
图1-1总体系统结构框图
第二章硬件系统设计
通过对实际应用的需求分析,系统硬件可以明确划为以下功能模块:
直流电源模块、温湿度传感器模块、PM2.5监测模块、蜂鸣器报警模块、按键输入模块、数据显示模块及单片机最小系统模块等7部分组成,其中单片机最小系统还可以分为晶振电路和复位电路两部分。
下面将对整个系统硬件部分各个模块的原理进行详细讲解。
2.1硬件系统结构及概述
本系统以AT89C52单片机为控制核心,结合6个功能模块,通过单片机程序的驱动,来实现整个系统的功能。
其中,PM2.5传感器用于检测环境中的可吸入颗粒物的浓度,SHT11温湿度传感器则用于监测环境的温湿度,两者采集到的数据经过处理后在通过LCD1602进行实时显示。
同时,系统还可以通过按键设定PM2.5浓度的报警值,当环境中PM2.5的浓度达到或者超过设定值时,系统就会控制蜂鸣器发出报警。
系统的硬件结构框图如图2-1所示:
图2-1硬件系统结构框图
2.2AT89C52单片机最小系统
单片机最小系统,顾名思义就是能够保证单片机正常工作并且能够发挥出功能的最简单的电路结构。
本系统采用的是AT89C52单片机,其最小系统需要有AT89C52单片机、直流电源、输入输出设备、时钟电路以及复位电路,最小系统结构框图如下:
图2-2单片机系统结构框图
直流电源部分用于输出稳定的5V电压,为整个系统中的单片机和其他设备供电;时钟电路相当于整个单片机系统的心脏,为单片机的正常工作提供稳定的动力;复位电路则为系统提供复位信号,输入输出设备为系统提供外界信息或者将系统处理后的数据反馈给外界。
如此才能组成一个完整的单片机最小系统。
系统的硬件原理图如下:
图2-3系统直流稳压供电模块原理图
图2-4单片机最小系统原理图
上图2-3为这个系统的供电模块,系统支持5~12V宽电压输入。
当打开b1拨动开关后,经过LM7805的降压稳压作用,输入的电压会降低到稳定的5V,供给系统的其他部分。
为防止电源反接烧毁芯片和模块,在LM7805的前端增加了二极管D2。
当电源反接时,二极管无法导通,从而保证系统的安全。
C2和C3是高频滤波电容,C1和C4是低频滤波电容,防止高频波和低频波通过电源进入LM7805,避免对后级电路造成影响,提高系统的稳定性。
D2是发光二极管,亮起时表明系统供电正常。
图2-4为整个系统的核心部分:
单片机最小系统,系统采用DIP40封装的AT892单片机作为处理器。
外部12Mhz无源晶振作为时钟信号源,单片机在工作时,必须在时钟信号控制下才能有序的进行。
晶振两端各并联一个22PF的电容,单片机的XTAL1和XTAL2引脚直接与晶振两端相连,整个电路与单片机内部的电路构成稳定的自激震荡器。
晶振用于给单片机提供稳定的时钟源,C6和C7是稳频电容,其作用是对振荡频率进行微调,使振荡的频率与晶振的频率一致,同时还可以稳定频率,从而保证系统时钟稳定,单片机能够正常工作。
复位电路在系统上电时会给单片机的RST引脚一个高电平信号,让系统在上电时能够自动复位,使程序从头开始运行,而当程序跑飞时,可以按下RSR按键,此时该电路结构会给单片机的RST引脚一个短暂的高电平信号,让系统再次复位,从而避免出现更严重的情况。
2.3SHT11温湿度监测电路
SHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
传感器内部包含一个电容式聚合体测湿元件和一个能隙式测温元件,并与一个14位的A/D转换器以及串行接口电路在同一个芯片上实现无缝连接。
所以在实际应用中,SHT11传感器只需要将两根串口线与单片机连接就可以完成控制和通讯。
其典型应用电路如下:
图2-5SHT11典型应用电路
图2-6SHT11与单片机连接原理图
SHT11的供电电压为2.4-5.5V,而系统的供电为5V,满足模块的供电需求。
根据数据手册可知,模块上电后,需要等待11ms来越过休眠状态,在这段时间理单片机不需要发送任何指令。
SCK是通讯同步时钟信号,DATA接口是一个三态门电路,用于数据的读取,外接上拉电阻可以将信号提拉到高电平,从而避免信号冲突,在本系统中,AT89C52单片机的P1.1I/O口内部有上拉电路,所以在实际应用中该上拉电阻可以省去。
2.4PM2.5检测电路
本系统的PM2.5检测电路采用GP2Y1010AU0传感器,该模块是一个基于光学传感器系统的灰尘传感器。
该传感器的主要结构组成为一个二极管(IRED)和一个光电管,其内部结构为对角分布。
在使用过程中,它可以通过检测空气中尘埃的折射来测量空气中粒子的浓度,输出的数据信号为模拟信号,因此想要得到最终的PM2.5浓度参数,还需要对数据进行A/D转换,该系统采用的A/D转换芯片为ADC0832。
传感器内部结构原理如下图所示:
图2-6GP2Y1010AU0传感器内部原理图
由于模块输出的是模拟信号,所以在实际应用过程中,需要将传感器输出的模拟信号转换为数字信号,然后才能推算出当前环境下空气中粒子浓度的大小。
由图2-6可知,模块的第⑤引脚为模拟信号输出端口。
PM2.5的监测电路如下:
图2-6PM2.5监测电路原理图
图2-6中PM1为6pin插座,用来连接GP2Y1010AU0传感器,1-6脚的定义与图2-5中引脚的定义一一对应。
模块⑥脚输出的模拟信号输入到ADC0832芯片的CH0引脚,芯片将模拟信号实时的转化为数字信号后,通过4根数据线将转换结果实时传输给单片机,信号线定义为:
CS、CLK、DO、DI。
第三章软件系统设计
3.1软件系统结构及概述
系统软件结构主要分为主程序、温湿度监测程序、PM2.5监测程序、按键检测程序、蜂鸣器报警程序和液晶显示程序。
其中主程序负责对各个控制模块的调度,在不同情况下调用不同的驱动函数,完成不同的任务,实现整体的控制效果。
温湿度监测程序负责驱动SHT11温湿度传感器,对环境的温湿度数据进行采集,得到的数据在进行处理后通过LCD1602显示。
PM2.5监测程序则负责驱动GP2Y1010AU0传感器,对环境中的PM2.5浓度进行监测,接收ADC0832传输过来的数据,通过算法滤波得到较为准确的PM2.5浓度值,然后在由LCD1602进行显示。
而按键检测和蜂鸣器驱动程序则是用来检测按键操作,根据操作显示不同的环境参数和设定的数据,同时为系统提供报警。
液晶显示程序则是驱动LCD1602液晶屏,在制定的区域显示制定的字符,同时控制屏幕的显示刷新。
3.2主程序设计
图3-1系统主函数流程图
图3-1为系统主函数流程图。
系统在上电或复位后,进入主函数,首先是初始化定时器0,定时时间设定为10ms,用于控制GP2Y1010AU0传感器对环境中的PM2.5浓度数据进行采集和转换,初始化时关闭蜂鸣器;然后对LCD进行初始化,配置LCD1602的显示模式为无光标显示,然后清除LCD的显示,等待下一次的显示控制信号;接下来是对单片机与SHT11通讯的连接复位,之后再次启动连接,此时整个系统的初始化配置就已经完成了。
然后进入程序的主体部分,由于LCD1602一次只能显示两行字符,不能将所有的数据全部显示在一个界面,所有需要通过一个按键来切换界面,如此才能显现其他信息,初始化时为界面0。
此时如果与按键按下,则对按键进行处理,否则就判断是否为界面0,如果为界面0,则进行温湿度监测,数据经过处理后在LCD1602上显示;如果不是则判断是否为界面2,如果是界面2,则监测当前PM2.5的浓度,数据处理后在LCD上显示出来。
完成这些任务后,系统会对PM2.5的浓度再次监测,同时判断是否达到设定的报警值。
执行完这些指令后,系统又从按键检测开始执行,由此循环往复。
3.3温湿度监测程序的设计
图3-2温湿度监测程序流程图
当选择温湿度监测显示界面,单片机会发送通讯指令,告诉模块进行数据采集,但是在这之前需要确定单片机和模块的通讯是否正常,如果连接出错,则进行连接复位操作;如果检测通讯正常,则发送指令。
模块在接收到控制指令后,会对当前的环境温湿度进行采集,数据经过处理后返回给单片机,而单片机对数据进行适当的修正和处理后,便存储起来,之后单片机会控制LCD1602将这些数据显示在指定的位置。
因为温湿度的采集是模块完成的,模块传输到单片机的只是数字信号,所以误差比较小,不需要进行很复杂的数据处理过程。
3.4PM2.5监测程序的设计
图3-3PM2.5浓度监测程序流程图
当选择PM2.5浓度监测显示界面时,系统会先判断定时器0的定时时间是否达到,如果没有达到,会继续等到,直到定时时间到达。
在达到定时时间后,单片机会获取传感器检测到的数据,因为PM2.5传感器属于输出的数据是模拟量,信号经过ADC0832转换成数字信号后才能发送给单片机,单次采集会存在较大误差,因此,需要进行多次采集,这里设定为接收6次数据后进行处理,得出的数据误差就会比较小,采集到的数据次数太少,会产生较大的误差,数据就不可靠。
如果采集的次数不够,系统会循环一直采集,直到采集的次数达到6此,通过对6次数据进行中值滤波后,在经过简单处理即为当前环境中的PM2.5浓度值,将该数据保存在对应的数组中,之后单片机会控制LCD1602将PM2.5的浓度值显示在设定的位置。
3.5按键设置及报警程序的设计
图3-4按键检测程序流程图
本系统中有4个按键,分别为界面按键(MENU)、设置按键(SET)、设置加(ADD)和设置减(DEC)。
系统初始化时全局变量MENU=0,设置使能变量SET=0,LCD显示第一个界面,在未按下MENU按键时,将一直显示第一个界面,即温湿度数据的显示。
如果按下MENU按键,则切换到第二个界面;如果按下SET按键,需要判断是否在第二个界面即MENU=1是否成立,如果是在第二个界面,使能设置取反,否则按键无效;如果按下的是设置加按键即ADD,判断设置使能SETEN=1是否成立,如果不成立则无效,如果成立则在设定值小于800的情况下,设定值会增加,如果设定值为800,则设定值不变;如果按下的是设置减按键即DEC,判断设置使能SETEN=1是否成立,如果不成立则无效,如果成立则在设定值不为0的情况下,设定值会减小,如果为0则不变。
第四章仿真系统的组建
为了测试本系统是否能够达到设计要求,完成课题要求的功能和参数指标,需要通过软件仿真来进行测试。
仿真的优点在于不需要花大量时间设计和制作PCB以及焊接元器件,非常节约成本,只需要一台电脑和两个软件,就可以完成整个仿真系统的组建及测试流程。
本系统的仿真分为3个步骤:
Proteus硬件电路设计、Keil软件程序设计以及软硬件综合仿真。
下面将根据这三个步骤对仿真系统的组建进行说明。
4.1基于Proteus的硬件仿真系统设计
Proteus软件是英国LabCenterElectronics公司出版的EDA工具软件。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
下面详细介绍利于proteus搭建硬件仿真系统的步骤。
首先在桌面新建一个文件夹,用于存放工程文件。
打开proteus软件,进行新建工程操作,依次点击File->NewProject,如图所示:
图4-1新建工程步骤
之后软件会打开一个对话框,用于修改工程名和工程存放位置,名字可以任意设定,需要注意的是,不能修改“.pdsprj”后缀名。
然后点击Browse来更改工程保存位置,选择好存放位置后点击“浏览文件夹”窗口的确定键,默认为“NewProject”,然后点击“Nxet”按钮。
图4-2工程存放位置设置
此时弹出原理图设计对话框,选择第二个选项,然后在列表中选择“DEFAULT”,进行下操作。
图4-3原理图设计配置
这里跳出PCBLayout设计对话框,工程不需要制作PCB,所以直接默认选项就可以了,直接点击“Next”,进入工程Firmware设置窗口,工程中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 气象 监测 系统 设计