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

51单片机控制的温湿度监控仪

发布时间:2021-05-17 发布时间:
|

  1 系统硬件组成

  本系统完成对温度、湿度的实时测量,配合有关控制部分即可对温度湿度进行实时控制,同时具有温度、湿度和露点显示功能,满足一般上业环境对温度、湿度和露点检测的需要。系统由STC89C51RC、RAM、键盘、温度传感器、湿度传感器、A/D转换电路、D/A转换电路等组成。如图1所示。

  

 

  STC89系列是具有Flash结构的51系列单片机,因此,程序存储器(ROM)可不用外扩,为了记忆校正后的参数,需要存储各种校正参数,本系统采用具有掉电保护功能的铁电存储器,以便在校正后,将校正参数存储下来。系统以温度传感器采用AD590集成温度传感器,具有传感精度高、工作性能稳定的特点。湿度传感器采用HS11OO湿度传感器,HS11OO电容式相对传感器采用独特的电容单元设计,适用于批量大、成本低的场合。其特点是:长期饱合后可迅速恢复、高可靠性和长期稳定性、快速响应等。

  本系统具有2路D/A转换输出,可对温度或湿度进行反馈控制。D/A采用两路DAC7512进行,DAC7512是一种轨对轨的低功耗的12位串行输入的D/A转换器,输出标准的4~20 mA电流信号,可满足对温度、湿度的控制需要。

  系统还具备与上位机通信的功能,采用RS422通信方式,可实行远距离的一对多点通信,上位机可查询多达64个采样点的温度、湿度和露点数据。

  系统还具备校准功能,可对温度进行2点校准,对湿度进行4点校准。另外,系统还具有露点显示功能,满足不同使用场合对露点显示的需要。

  2 软件设计

  由温度传感器输出的信号需经过信号调理后进行A/D转换,A/D转换采用ADS1110具有自校准功能的带内部基准电压的芯片,它采用I2C总线与主机进行通信,具有16位的转换精度。系统定时循环对温度和湿度进行采样,将采样结果经过单位转换后直接显示在显示屏上,同时进行露点的计算,将计算结果显示在显示屏上。采用定时扫描键盘的方式读键盘输入情况,并判断是否进行湿度或温度校准功能。系统的工作流程图如图2所示。

  

[page]

  按照下列步骤计算露点值:

  (1)测量相对湿度(RH)和环境温度(Tα,单位:℃);

  (2)使用下列公式计算饱和蒸汽压(Svp,单位:kPa):

  log(Svp(T))=(C1T-C2)/(T-C3)(T>0) (1)

  或

  log(Svp(T))=C4-C5/T(T<0) (2)

  (3)根据上式计算当前水汽压(Vp,单位:kPa)Vp=RH×Svp/100

  (4)根据式(1)或式(2)反推露点温度(Td,单位:℃),式(1)或式(2)中的温度T用露点温度Td代替,而饱和蒸汽压Svp用当前水汽压Vp代替。

  ADS1110DAC7512采用I2C总线与主机通信,因此需要采用I2C总线编程方式,读取A/D采样结果和输出相啦的控制信号,本系统中主机采用P3.4、P3.5口线与ADS1100进行通信,通信时需要注意的是采样频率的关系,不能太快,否则会产生“混淆”,使得读出的数据不正确。采用STC89的扩展口P4.0、P4.1、P4.2口线与DAC7512进行通信,输出D/A转换结果,利用该结果可以对湿度或温度进行实时控制。

  3 实验结果

  表1是在70%湿度情况下,采用本系统进行的温度和露点的测量结果,表2是在湿度一定情况下,采用本系统进行的露点随湿度变化测量结果。

  

 

  从表中可看出。采用本系统进行露点监测时,最大误差为0.6℃,相对误差小于1%。通过实验,该机温度测量误差在1%以内,湿度、露点误差在2%以内,能满足一般工业场合的需要。

  4 结束语

  由8位单片机控制的温度湿度监控仪,成本低,可靠性好,系统操作简便,测量精度可满足一般家电、农业大棚、办公自动化及工控系统对温度湿度控制及监测的需要,用于监测露点时,其误差小于2%,可用于一些需要监测露点的场合,能满足一般工业场合的需要。


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

热门文章 更多
如何升级STM32单片机的代码