当前位置:文档之家› 基于单片机的温湿度监控系统设计

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

第28卷 第12期基于单片机的温湿度监控系统设计刘宝元1 张玉虹1 姜 旭2 段存丽1 胡加兴1(1.西安工业大学光电工程学院 西安 710032;2.西安应用光学研究所 西安 710065)摘 要:温湿度是影响硝基软片生产和厚度检测的重要因素。

采用A T89S52单片机为控制中心,由ST H10温湿度传感器及1602字符型液晶模块构成硝基软片生产在线实时温湿度监控系统,实现对硝基软片生产环境的温湿度精确测量与控制。

实践证明,该系统电路简单、工作稳定、集成度高,调试方便,测试精度高,保证硝基软片生产线的产品质量与合格率,具有一定的实用价值。

关键词:单片机;温湿度;SH T10;自动检测;传感器中图分类号:TP212.1,TP273.5 文献标识码:AThe design of temperatureand humidity monitoring system based on SCMLiu Baoyuan 1 Zhang Yuhong 1 Jiang Xu 2 Duan Cunli 1 Hu Jiaxing 1(1.School of Optoelectronic Engineering ,Xi πan Technological University ,Xi πan 710032,China ;2.Xi πan Institute of Applied Optics ,Xi πan 710065,China )Abstract :The temperat ure and humidity are one of t he important factors which effect production of nitro films and detec 2tion of t ing A T89S52SCM as t he control center ,t he monitoring system is composed of temperat ure and hu 2midity sensor ST H10,1062character L CM module ,which achieves precision measurement and controlling.Practice has proved t hat t he system has stable task ,simple circuit ,high integration ,convenient debugging ,which certificates quality of nitro films.Therefore the system has a certain practical value.K eyw ords :single chip microcomputer ;temperat ure and humidity ;ST H10;automatic detection ;sensor ;作者简介:刘宝元,助教,硕士,主要研究方向为光电信息处理与光学精密检测。

0 引 言在日常生活中温湿度监控系统[123]应用很广泛,例如:粮库、机房、档案馆、特殊材料加工工场等场所,都必须严格控制环境的温度及相对湿度,使其保持在一定的范围内。

硝基软片生产线对于温湿度有着特殊的要求,需要装有温湿度在线监控系统,由用户根据环境要求设定系统的温湿度阈值;系统实时地测量显示环境的温湿度值,实现温湿度自动控制,使其在较宽的温度范围内具有较高的测试精度,同时还可以根据用户设定报警阈值报警,一旦发现环境温湿度超限,立即报警。

为此,我们设计了一款测量精度高、结构简单使用、工作稳定可靠的基于单片机的温湿度监控与自动控制升降系统,并受到了硝基软片生产客户的好评。

1 设计方案温湿度监控系统满足以下要求:1)按照国家计算机房B 级标准[4],温度18~28℃,相对湿度40%~70%;2)用户可以设置系统温湿度报警值;3)USB 口供电,提供温湿度调节控制信号,实现自动控制;4)检测得到的数据可以通过显示模块显示。

硬件设计不仅要满足系统需求,还要满足功能和外形尺寸要求。

根据设计要求确定了系统的总体方案,整个系统由单片机、温湿度传感器、显示模块、报警器、温湿度调节系统以及键盘等6部分组成。

系统功能原理图如图1所示。

用户预先输入温湿度报警值到程序中,该值作为系统阈值。

温湿度传感器监测值传输给单片机,当单片机比较监测到的数值超出所设定阈值时,驱动蜂鸣器报警,并为温湿度调节系统提供控制信号,实现自动控制。

温湿度调节系统包括加湿模块、除湿模块、加温模块和制冷模块。

图1 温湿度监控系统功能原理图2 硬件设计单片机是整个系统的控制中枢[5],它指挥外围器件协调工作,从而完成特定的功能。

硬件实现上采用模块化设计,每一模块只实现一个特定功能,最后再将各个模块搭接在一起。

这种设计方法可以降低系统设计的复杂性。

系统电路原理图如图2所示。

本系统主要硬件设计包括电源电路、蜂鸣器电路、晶振电路、复位电路、L CD 显示电路以及温湿度传感器电路。

控制电路的核心器件是由美国At mel 公司生产的A T89S52单片机,属于MCS 251系列。

A T89S52是一种低功耗、高性能的CMOS8位微控制器,具有8K 在系统可编程Flash 存储器,采用的工艺是At mel 公司的高密度非易失存储器技术;片上Flash 允许程序存储器在系统可编程,亦适于常规编程器;在单芯片上,拥有灵巧的8位CPU 和在系统可编程Flash ,使得A T89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案;价格低廉、性能可靠、抗干扰能力强。

因此广泛应用于工业控制和嵌入式系统中。

图2 系统电路原理图 系统的蜂鸣器电路、振落电路、复位电路如图3、图4、图5所示。

蜂鸣器额定电流I B ≤30mA ,而对于A T89S52单片机,P1口的灌电流为1.6mA ,拉电流为60μA ,由此可见,仅靠单片机的P1口电流是不能驱动蜂鸣器的,必须使用集晶体管放大电路,为了使单片机消耗的功率更小,所以使用PN P 型晶体管9012。

A T89S52采用的晶振电路采用11.0592M Hz 的无源晶振,微调电容大小取30p F 。

显示模块选用1602字符型液晶模块,是目前工控系统中使用最为广泛的液晶屏之一,电路图如图6所示。

1602字符型液晶模块是点阵型液晶,驱动方便,经编码后显示内容多样化。

系统的输入模块采用中断扫描的4×4矩阵键盘,相比定时扫描方式,提高了MCU的使用效率。

图3 蜂鸣器电路图第28卷 第12期 温湿度传感器选用瑞士SENSIRION公司生产的SH T10型贴片温湿一体数字传感器,其外形尺寸长宽高为7.47mm×4.93mm×2.5mm,温度量程-40℃~123.8℃,湿度量程0%R H~100%R H,测湿精度±4.5%R H,测温精度±0.5℃,湿度分辨率0.03%R H,温度分辨率0.01℃。

温湿度传感器电路如图7所示。

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

表1 温湿度监控系统中AT89S52的引脚功能配置引脚功能或控制对象说明P1.0蜂鸣器—P1.1、P1.2温湿度传感器P1.1:传感器时钟信号线,P1.2:传感器数据信号线RST单片机复位出现2个以上机器周期高电平时单片机复位XTAL2、XTAL1外部晶振—GND、Vcc电源为了提高电源性能,在Vcc与GND之间并联100nF滤波电容P2.3、P2.4数码管显示芯片P2.3:数码管显示芯片数据信号线,P2.4:数码管显示芯片时钟信号线温湿度调节系统通过温湿度调节四个模块完成温湿度控制P0.3、P0.2P0.1、P0.03 软件设计系统单片机代码采用C语言编写,以Keil uVision2为开发环境。

系统软件实现的功能:1)通过L CD显示温湿度值;2)比较监测到的温湿度值和报警设置值,发现超限则蜂鸣器报警提示;3)根据相应的温湿度值控制温湿度调节系统运行。

根据温湿度监控系统功能,系统软件流程图如图8所示。

温湿度传感器SH T11完成一次测量的工作顺序一般为:设置传感器分辨率→发送“启动传输”命令→发送测量命令→读输出的测量值→将输出测量值转换为物理量。

SH T10数据采集程序流程图如图9所示:图8 系统软件流程图图9 SH T10数据采集流程图 为了提高系统相对温度的测量精度,采用补偿湿度传感器的非线性[628]以获取准确数据,使用公式(1)修正输出数值:R H linear=c1+c2・SO R H+c3・SO2R H(1)式中:S O R H表示传感器的相对湿度输出数值(大约范围在90~3400),c1、c2、c3为湿度转换系数,具体数值见表2。

湿度传感器对电压基本上没有依赖性。

表2 湿度转换系数表S O R H c1c2c312bit-40.0405-2.8×10-68bit-40.648-7.2×10-4 对于温度的测量,由采用正比于绝对温度的能隙材料P TA T研发的温度传感器,具有极好的线性,用公式(2)将数字输出转换为温度值:Tem perat ure=d1+d2・SO T(2)式中:S O T表示传感器的温度输出数值,d1、d2为温度转换系数,具体数值见表3。

表3 温度转换系数表VDD d1[℃]d1[℉]SO T d2[℃]d2[℉] 5V-40.00-40.0014bit0.010.018 4V-39.75-39.5512bit0.040.072实现温湿度补偿函数部分程序:void calc_SH T10(float3p_humidity,float3p_tem2 perat ure){const float C1=-4.0;//for12Bitconst float C2=+0.0405;//for12Bitconst float C3=-0.0000028;//for12Bitconst float T1=+0.01;//for14Bit@5Vconst float T2=+0.00008;//for14Bit@5Vfloat rh=3p_humidity;//rh:Humidity[Ticks]12Bitfloat t=3p_temperature;//t:T emperature[Ticks]14Bit float rh_lin;//rh_lin:Humidity linearfloat rh_true;//rh_true:T emperature compensated hu2 midityfloat t_C;//t_C:Temperat ure[C]t_C=t30.01-40;//calc.temperat ure from ticks to[C]rh_lin=C33rh3rh+C23rh+C1;//calc.humid2 ity from ticks to[%R H]rh_true=(t_C-25)3(T1+T23rh)+rh_lin;// calc.temperat ure compensated humidity[%R H] if(rh_true>100)rh_true=100;//cut if the value is out side ofif(rh_true<0.1)rh_true=0.1;//t he p hysical possi2 ble range3p_temperat ure=t_C; //ret urn temperat ure[C]3p_humidity=rh_true; //ret urn humidity[% R H]}4 结束语本文设计的温湿度监控系统与我们研制的硝基软片厚度检测系统相连,经过客户测试使用,在正常温度范围内,系统读取的数值与水银温度计的读数一致,满足温度测试误差±0.1℃、相对湿度测试误差±3%的要求。

相关主题