长春大学
摘要:本文基于STM32单片机设计了一个温室控制系统,环境温湿度检测模块主要通过选取合适的传感器来对物流箱环境的温度和湿度进行检测,检测得到的数据经过一定的处理之后发送给单片机,单片机通过对这些环境参数进行分析得到当前环境与设置值的偏差,最终根据偏差通过控制相应的电机设备来对当前环境的温湿度进行调整。
关键词:STM32单片机;控制系统;物流箱
1 系统总体结构
硬件主要以STM32型单片机为核心,通过LCD实时地显示传感器DHT11检测到的温湿度值,阀值可以通过STM32存储,实现断电保存。过阀相应的报警驱动。本研究设计的温湿度控制器框图如图1所示。
图1 温湿度控制器方框图
整个系统的功能指标主要由温湿度传感器、除湿器以及散热风机决定。
温湿度传感器:采用集成温湿度传感器,其中温度测量范围为-55~+65℃,温控精度为±0.5℃;湿度测量范围为:0~99%RH,湿度测量精度为±3%RH;
除湿机:采用工业冷凝除湿机。
2系统的设计
2.1温湿度测量方法
2.1.1温度测量方法
DHT11温湿度传感器是一种数字式信号输出的湿度温度传感器,其湿度测量方法是通过传感器内部的湿敏电容和专门的读取电路来实现的。DHT11传感器内部包含了一个湿敏电容,该湿敏电容会随着周围空气中的湿度变化而变化。当湿敏电容受到湿度变化时,传感器内部的读取电路会将这种变化转换为相应的电压信号。
2.1.2湿度测量方法
传感器的静态特性指的是针对静态输入信号而言的,即传感器输出量与输入量之间的关系,在这种情况下,输入量和输出量都不随时间变化。因此,可以使用不包含时间变量的代数方程或者以输入量作为横坐标、相应输出量作为纵坐标绘制特性曲线来描述传感器的静态特性。衡量传感器静态特性主要考虑以下几个参数:线性度、灵敏度、迟滞、重复性和漂移等。
2.2传感器选型
2.2.1温度传感器的选择
采用数字化温度传感器。在采用数字化温度传感器作为备选方案时,共有两种器件可供选择,分别是美国DALLAS公司推出的DS18B20以及瑞士SENSIRION公司推出的温湿度传感器DHT11。下面就这两种器件分别进行简要的介绍并对芯片进行选型。DS18B20是一种支持“一线制总线”接口的温度传感器,具有微型化、低功耗、高性能、抗干扰能力强以及易于配置微处理器等特点,可以直接将温度信号装换成数字信号以供主控制器使用。
2.2.2湿度传感器的选择
在湿度传感器的选型中同样有很多传感器可供用户选择,正常使用的有HOS-21湿敏传感器、HS1101湿度传感器以及DHT11数字湿度传感器,由温度传感器的选型方案可知,数字式传感器由于其接口少、能直接输出数字信号、不需要外接信号处理电路等优点,应该成为本系统设计的首要选择,因此在综合考虑以上的因素之后选用DHT11温湿度传感器来作为系统的传感器选型。
2.3传感器检测电路
每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品为 4 针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。
DHT11传感器如下2-1所示:
图2-1DHT11传感器
(1)引脚介绍:
Pin1:(VDD),电源引脚,供电电压为3~5.5V。
Pin2:(DATA),串行数据,单总线。
Pin3:(NC),空脚,请悬浮。
Pin4(VDD),接地端,电源负极。
(2)接口说明 :
建议连接线长度短于20米时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻。
图2-2 DHT11典型应用电路
(3)数据帧的描述:
DATA 用于微处理器与 DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数部分用于以后扩展,现读出为零.操作流程如下:
一次完整的数据传输为40bit,高位先出。
数据格式:8bit湿度整数数据+8bit湿度小数数据
+8bit温度整数数据+8bit温度小数数据
数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据”所得结果的末8位。
(4)电气特性:VDD=5V,T = 25℃,除非特殊标注
表2-1 DHT11的电气特性
参数 | 条件 | Min | typ | max | 单位 |
供电 | DC | 3 | 5 | 5.5 | V |
供电电流 | 测量 | 0.5 | 2.5 | mA | |
平均 | 0.2 | 1 | mA | ||
待机 | 100 | 150 | uA | ||
采样周期 | 秒 | 1 | 次 |
注:采样周期间隔不得低于1秒钟。
2.7手机客户端整体实现
手机端的主要实现文件组成如图2-3所示。
图2-3手机客户端实现文件组成
程序在启动之后会 MainViewController.m 文件中 ViewDidLoad 函数。此函数实现中采用了 GCD 技术,比如监测网络连接状态的代码。
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY, 0), ^{ [self checkNetworkChange]; }); |
在手机客户端经过连接和注册后,程序进入正常工作状态,阻塞在 recv 函数上,等待服务器消息的到来。
开发将界面设计与实现进行分离,大大提高了程序的可扩展性。手机客户
端图形界面全部基于 UIKit 进行实现,界面元素的布局通过 Storyboard 故事板来完成。手机客户端的界面分为报警显示界面和设置界面两部分,下面对这两个部分的实现进行介绍。
1) 报警显示界面
报警显示界面如图2.11所示。
图2.11 手机客户端报警显示界面
参考文献
[1]严铿博, 袁帅, 佘乐欣, 黄煜伟, 周佳明, 王雪瑞. 新型户外智能恒温恒湿箱体[J]. 科技与创新, 2023, (20): 49-51.
[2]曾庆强. 浅谈棉花公证检验实验室恒温恒湿精密空调的维护保养和保养工作重点[J]. 中国纤检, 2023, (10): 49-50.
[3]冯显桓. 基于高低温双冷水机组的恒温恒湿洁净车间空调系统节能性分析[J]. 洁净与空调技术, 2023, (03): 84-89.