一种温湿度采集控制系统硬件设计
摘 要
介绍以单片机STC89C52为核心,DHT11温湿度传感器等元器件组成的温湿度采集控制系统设计,构造简单,性能可靠,实现了对特定环境的温湿度监控以及报警,为实际工作环境提供了可靠保障。
【关键词】STC89C52单片机 温湿度传感器 自动检测
1 系统简介
作为现代工农业生产生活中非常重要物理参数,温度、湿度对生产、生活有密切的影响,从复杂的模拟量检测技术到现在的数字智能化检测技术,温湿度的检测系统向着智能化、小型化、低功耗的方向发展。因此设计可以及时、精确的反映场所的温湿度的变化,能够很好地满足生产生活对温湿度的控制要求,并且可以应用到温室等实际工作场所的温湿度采集控制系统意义重大。
2 系统方案
本系统能够实时显示当前环境的温湿度,允许用户设定温湿度标准值,当环境温湿度超过或低于标准值时,系统会以亮灯的方式进行报警提示,并且控制执行设备启动,待符合标准值时,报警恢复,控制执行设备停止运行,系统正常工作,工作指示灯亮。
2.1 功能介绍
本系统主要包括单片机、DHT11温湿度传感器、独立键盘、LCD1602液晶屏和报警二极管等。能够准确地检测出场所温湿度,通过LCD1602准确显示当前温湿度,利用执行继电器模拟控制散热/加热设备、除湿/加湿设备,实现温湿度控制。设有4个控制按键和系统复位按键,控制按键分别为:模式、温湿度设置、加温/加湿、减温/减湿。
2.2 控制器选取
本设计以单片机作为主控制器,负责处理由温湿度传感器送来的数据,并把处理好的数据送向显示器。STC89C52单片机是现代工农业生产生活中常见的控制系统应用芯片,它是一种高性能、低功耗的8位微控制器,具有8K在系统可编程Flash存储器,与工业80C51产品指令和引脚完全兼容,片上Flash允许程序存储器在系统编程,亦适于常规编程器,为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
2.3 传感器选取
本设计采用智能温湿度传感器,DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。该传感器包括一个电阻式感湿元件和一个NTC测温元件,可与一个高性能8位单片机相连接,采用单线制串行接口,使系统集成变得简易快捷,在极为精确的温湿度校验室中进行校准,校准系数以程序的形式存在OTP内存中,传感器内部在检测型号的处理过程中要调用这些校准系数。采用该传感器实现相对温度和湿度测量校准方便,支持数字输出,无需额外部件,能耗较低,保证较长的信号传输距离。
3 硬件制作
3.1 原理图制作
使用Altium软件制作硬件原理图,模块化、层次化设计单片机电路、温湿度传感器电路、显示电路、电源电路、晶振电路、执行继电器电路及按键电路。如图1所示。
3.2 PCB制作
(1)采用Altium软件将设计的原理图里的器件全部封装,在PCB工程下创建PCB图纸,在原理图界面,点击设计、更新PCB文件、生效更改、执行更改。
(2)在PCB图纸里更改线路,根据自己的需要,修改PCB板的大小,设置远点,用直线画出需要图纸大小的矩形,把器件根据需要摆放好。由于自动编程与实际产生不一致,需要再设置网络。
(3)在网表管理器中修改各触点的网络。全部修改完成之后在屏幕中上位置找到交互式布线连接,开始布线,生成PCB图。
4 元器件焊接
PCB板焊接过程包括手工插件、手工焊接、修理及检验,元器件在插装之前,必须对其可焊接性进行处理,可焊性差的首先要引脚整形,引脚间距要求与PCB板对应的焊盘孔间距一致。元器件在PCB板插装的顺序是先低后高,先小后大,先轻后重,先易后难,先一般器件后特殊器件,且上道工序安装后不能影响下道工序的安装。元器件插装后,其标志应向着易于认读的方向,并尽可能从左到右的顺序读出。元器件在PCB板上的插装应分布均匀,排列整齐美观,不允许斜排、立体交叉和重叠排列,焊接时要注意保证导电性能,焊点表面要光滑、清洁。
5 硬件调试
本设计能够实时显示出当前确切的温湿度,并且在高于预设值的时候报警。接通电源后,工作指示灯常亮,表示系统正常运行。接着显示器初始化,采用八位的数据端口,两行显示,其中第一行显示的湿度预设值,根据键盘可以设定标准值,第二行显示的是实时的温湿度值。温度标准值设定为上限40℃/下限10℃,湿度标准值设定为上限80%RH下限30%RH,若当前的温湿度值不在标准范围内,温度和湿度的控制灯亮,触发温湿度执行继电器。若温湿度没有超过预设值,LCD正常显示,闭合温湿度执行继电器。
参考文献
[1]沙占友.葛家怡,马洪涛.集成化智能传感器原理与应用.[M].北京:电子工业出版社,2004:74-81.
[2]唐颖.单片机原理与应用及C51程序设计[M].北京:北京大学出版社,2008:14-18.
[3]何希才.用传感器应用电路的设计与实践[M].北京:科学出版社,2007,165-170.
作者单位
内蒙古机电职业技术学院 内蒙古自治区呼和浩特市 010070