周林树
(福建宁德技师学院,福建 宁德 352100)
随着现代化通信和传感技术的逐步成熟与完善,环境参数监测系统已成为当今种植业、养殖业等产业的一个研究热点[1-2]。采用单片机控制温度、湿度和光照强度,不仅具有控制方便,结构简单,灵活性大的优点,而且可以大大提高温度、湿度和光强度控制的技术指标,从而大大提高产品质量和数量[3-4]。传统的方法是靠人工测试和读取,并判断温度和湿度是否偏离正常值,然后采取相应的调整措施,消耗了大量的人力和物力。随着国民经济的快速发展,农业产业规模不断扩大,温室种植的农产品种类日益增多。对于很多温室来说,传统的温度控制措施已经显示出很大的局限性[5-6]。微控制器和各种传感器检测技术的发展,解决了环境参数检测和传输过程出现的难题。本文使用单片机作为控制核心对环境参数检测系统展开应用研究,对环境的温度、湿度及光照度进行实时监控,以促进生产,带来效益。
环境参数检测系统的整体设计,本系统包括传感器测量单元、显示单元、继电器控制单元及处理器单元等,针对各单元的设计方案进行选择,最后确定本设计为最终方案。硬件电路的设计,包括单片机最小系统电路、传感器测量单元、键盘和液晶显示电路的工作原理和电路设计。
采用STC89C52 单片机构成的最小系统见第64页图1。
一个温湿电阻式元件和一个连接到高性能8 位微控制器的NTC 温度测量元件构成了带有校准数字输出的DHT11 温湿度传感器,它具有超快的响应,强大的抗干扰性和高可靠性等优点。通过单元机可直接读取温湿度数据,该传感器与单片机通信的接口方式见第64 页图2。
采用BH1750 光照传感器来检测环境光照度参数。通过I2C 的通信方式可直接输出数字信号,见第 64 页图 3。
nRF24L01 是一种单片射频无线收发器。nRF24L01 适合在2.4~2.5 GHz 的频段工作,其内部由晶体振荡器模块、功率放大器模块、调制器模块、频率合成器模块以及其他功能模块组成,且用于平均功率的配置和通信通道。最大传输速率为2Mb/s,传输工作电流为9mA,接收工作电流为12.3mA,用于低功耗和待机两种操作模式。nRF24L01 与单片机的通信接口方式见第64 页图4。
系统主程序工作流程如下。发送端:系统通电工作时要先进行内部的初始化,温度和照度由发送器测量,在周围的环境里DHT11 采集到温湿度与光照度后,将测量数据发送到MCU STC89C52 进行处理,再将处理后的数据在1602 显示屏中显示出来。之后通过nRF24L01 无线模块将数据发送到接收侧。
图1 STC89C52 单片机控制系统电路图
图2 DHT11 温湿度传感器接口电路图
图3 BH1750 光照传感器接口电路图
图4 nRF24L01 无线模块接口电路图
接收端:系统初始化后再对发送端传送过来的数据进行处理和储存,最后控制液晶1602 显示瞬时温湿度与光照度。在数据传输时,先将nRF24L01配置为发送模式,再定时通过SPI 端口将接收的TX_ADDR 节点的地址和实际的TX_PLD 数据写入nRF24L01。数据传输成功时,如果片选端CE 的电平为低电平,则nRF24L01 进入待机模式1;如果数据堆栈未知则CE 为高电平,则进入待机模式2。接收数据状态,nRF24L01 调整到接收模式,然后延迟130 μs 以接收状态来等待数据访问。当接收方检测到有效地址和CRC 时,将数据包保存到RIF FIFO,并将RX_DR 位中断标志置为高,降低IRQ,产生中断,并通知MCU 接收数据。如果此时启用自动响应,则接收机同时输入返回信号,该返回信号返回传输状态。当数据接收成功时,如果CE 降低,nRF24L01 将进入备用模式1。在写寄存器之前一定要进入待机模式或掉电模式。相应的状态和数据信息是从MISO 输出给MCU。与SPI 相关的控制指令共有8 个,当需要使用时,这些控制指令由nRF24L01 的MOSI 输入。该系统发送端和接收端的无线通信程序流程见第65 页图5。
在不同环境下对温湿度进行多次测量,如同栋实验楼不一样的房间,在室内和室外进行采集,测量端和接收端的数据见第65 页表1。
在不同的环境下对光照度进行多次测量,在同一层楼不同测试点的室内 (灯下) 和室外进行采集,测量端的数据第65 页见表2。
综合以上的数据分析,测量端与接收端有一些数据上的误差,在温湿度的采集中,除了DHT11温度传感器和液晶显示器自身带有一定的延时之外,误差比较大的原因在于传输的过程中,nRF24L01 无线模块在长距离过程中可能会造成数据丢失。
图5 无线通信程序流程图
表1 不同环境下测量端温度和相对湿度数据
表2 不同环境下测量端光照度数据 (lx)