×
单片机 > 单片机程序设计 > 详情

基于单片机的温湿度监控系统设计

发布时间:2020-06-24 发布时间:
|

0 引言
    在日常生活中温湿度监控系统应用很广泛,例如:粮库、机房、档案馆、特殊材料加工工场等场所,都必须严格控制环境的温度及相对湿度,使其保持在一定的范围内。硝基软片生产线对于温湿度有着特殊的要求,需要装有温湿度在线监控系统,由用户根据环境要求设定系统的温湿度阈值;系统实时地测量显示环境的温湿度值,实现温湿度自动控制,使其在较宽的温度范围内具有较高的测试精度,同时还可以根据用户设定报警阈值报警,一旦发现环境温湿度超限,立即报警。为此,我们设计了一款测量精度高、结构简单使用、工作稳定可靠的基于单片机的温湿度监控与自动控制升降系统,并受到了硝基软片生产客户的好评。

1 设计方案
    温湿度监控系统满足以下要求:
    1)按照国家计算机房B级标准,温度18~28℃,相对湿度40%~70%;
    2)用户可以设置系统温湿度报警值;
    3)USB口供电,提供温湿度调节控制信号,实现自动控制;
    4)检测得到的数据可以通过显示模块显示。
    硬件设计不仅要满足系统需求,还要满足功能和外形尺寸要求。
    根据设计要求确定了系统的总体方案,整个系统由单片机、温湿度传感器、显示模块、报警器、温湿度调节系统以及键盘等6部分组成。系统功能原理图如图1所示。用户预先输入温湿度报警值到程序中,该值作为系统阈值。温湿度传感器监测值传输给单片机,当单片机比较监测到的数值超出所设定阈值时,驱动蜂鸣器报警,并为温湿度调节系统提供控制信号,实现自动控制。温湿度调节系统包括加湿模块、除湿模块、加温模块和制冷模块。

[page]

2 硬件设计
    单片机是整个系统的控制中枢,它指挥外围器件协调工作,从而完成特定的功能。硬件实现上采用模块化设计,每一模块只实现一个特定功能,最后再将各个模块搭接在一起。这种设计方法可以降低系统设计的复杂性。系统电路原理图如图2所示。本系统主要硬件设计包括电源电路、蜂鸣器电路、晶振电路、复位电路、LCD显示电路以及温湿度传感器电路。
    控制电路的核心器件是由美国Atmel公司生产的AT89S52单片机,属于MCS-51系列。AT89S52是一种低功耗、高性能的CMOS8位微控制器,具有8K在系统可编程Flash存储器,采用的工艺是Atmel公司的高密度非易失存储器技术;片上Flash允许程序存储器在系统可编程,亦适于常规编程器;在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案;价格低廉、性能可靠、抗干扰能力强。因此广泛应用于工业控制和嵌入式系统中。


    系统的蜂鸣器电路、振落电路、复位电路如图3、图4、图5所示。蜂鸣器额定电流IB≤30mA,而对于AT89S52单片机,P1口的灌电流为1.6mA,拉电流为60μA,由此可见,仅靠单片机的P1口电流是不能驱动蜂鸣器的,必须使用集晶体管放大电路,为了使单片机消耗的功率更小,所以使用PNP型晶体管9012。AT89S52采用的晶振电路采用11.0592MHz的无源晶振,微调电容大小取30pF。显示模块选用1602字符型液晶模块,是目前工控系统中使用最为广泛的液晶屏之一,电路图如图6所示。1602字符型液晶模块是点阵型液晶,驱动方便,经编码后显示内容多样化。系统的输入模块采用中断扫描的4×4矩阵键盘,相比定时扫描方式,提高了MCU的使用效率。

[page]


    本系统共设计了6个小模块,其中除了电源电路之外都和单片机有直接联系,具体的管脚定义如表1所示。

3 软件设计
    系统单片机代码采用C语言编写,以Keil uVision2为开发环境。系统软件实现的功能:
    1)通过LCD显示温湿度值;
    2)比较监测到的温湿度值和报警设置值,发现超限则蜂鸣器报警提示;
    3)根据相应的温湿度值控制温湿度调节系统运行。
    根据温湿度监控系统功能,系统软件流程图如图8所示。


    温湿度传感器SHTll完成一次测量的工作顺序一般为:设置传感器分辨率→发送“启动传输”命令→发送测量命令→读输出的测量值→将输出测量值转换为物理量。SHTlO数据采集程序流程图如图9所示:

[page]
    为了提高系统相对温度的测量精度,采用补偿湿度传感器的非线性以获取准确数据,使用公式(1)修正输出数值:
        式中:SORH表示传感器的相对湿度输出数值(大约范围在90~3400),c1、c2、c3为湿度转换系数,具体数值见表2。湿度传感器对电压基本上没有依赖性。


    对于温度的测量,由采用正比于绝对温度的能隙材料PTAT研发的温度传感器,具有极好的线性,用公式(2)将数字输出转换为温度值:
     


实现温湿度补偿函数部分程序:

4 结束语
    本文设计的温湿度监控系统与我们研制的硝基软片厚度检测系统相连,经过客户测试使用,在正常温度范围内,系统读取的数值与水银温度计的读数一致,满足温度测试误差±0.1℃、相对湿度测试误差±3%的要求。在生产温湿度超过一定值时,系统读数显示正确,报警指示灯点亮,实现温湿度监控与自动控制升降。实践证明,该系统电路简单、工作稳定、集成度高,调试方便,测试精度高,保证硝基软片生产线的产品质量与合格率,具有一定的实用价值。

 

 

 

 

关键字:单片机  温湿度  SHTl0  自动检测  传感器

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
基于单片机的医院护理呼叫对讲系统设计