基于单片机的智能温室系统的设计与实现
2021-10-27何嘉凯杜雪梅郏浩杰赵玉荣沈静静王亓剑
何嘉凯,杜雪梅,郏浩杰,赵玉荣,沈静静,王亓剑
(安徽新华学院,安徽 合肥 230088)
0 引 言
温室种植在传统农业生产中占据重要地位,在传统温室中悬挂温度计,人工读取温度后进行室内温度调节,湿度等方面则通过工人的经验进行判断,决定是否进行灌溉[1]。这种工作方式对人力资源耗费极大,且测量精度不高,调节措施存在局限性,如何改进传统温室大棚效率低、监测精度差、生产成本高、实时性不强和消耗人力资源多等缺点是智能温室大棚的研究目的[2]。
温室栽培在国外最早可以追溯到公元前三年,到了20世纪70年代,西方一些国家投入了大量资金对智能温室进行研究[3]。目前为止,研究人员正在研发如何用计算机进行数据采集并利用计算机来控制温室中的环境因素。美国、荷兰和日本等部分发达国家的现代智能农业技术目前处于世界顶尖水平,他们使用智能化计算机系统控制温室内的温度、光照、水等因素,使这些因素达到适宜值。
荷兰对智能温室的研究起步较早,能够追溯到20世纪80年代,目前已取得了显著效果。美国和日本等国家也相继采用全智能化的控制系统技术,农业种植产量激增,温室面积在进一步扩大[4]。
中国的智能温室产业兴起时间不早,但发展迅速。中国当前农业种植产业链中产生效益最多,种植面积最大的就是日光温室大棚蔬菜。这些日光温室通过不断改良环境设置,逐步形成了节能性日光温室,各地区也相继建立了具有现代化气息的农业示范园。尽管我国温室面积较大,但其智能化程度不高,对此,有关部门引进了国外更现代化的设备和技术,根据我国农业发展水平以及不同地区的气候,对现有温室进行改造,发展具有中国本土特色的智能化温室控制技术,为建设与实现温室智能化夯实基础,促进中国智能温室的发展。
我国温室产业目前存在的一些问题:
(1)我国温室科学技术含量较低,在栽培管理和控制方面以传统经验为主,采用人工控制手段,不仅设备简陋,效率低下,种植效果也较差[5]。
(2)缺乏理论基础,环境调控技术落后。因为我国现有的温室设备简陋,类型单一,塑料温室容易受到环境影响,一旦遭遇极端天气则无法正常生产,当温度过高或日光太强时无法进行调节。
(3)缺少优秀的控制软件。目前中国大多数智能温室都引用国外的技术,费用高昂,成本较高[6]。自主研发的系统无法保证稳定性和有效性,温室调控易出现波动。
1 系统总体设计
单片机引脚连接温湿度传感器和继电器,外接LCD显示屏,通过CH340USB转换接口与上位机通信,实现数据传输。上位机界面可以显示温湿度传感器采集的数据,当数据超出设定值范围时蜂鸣器发出警报,LED灯闪烁,系统将启动继电器,模拟控制温湿度。系统总体框架如图1所示。
图1 系统总体框架
2 硬件设计
2.1 微处理器
系统的硬件部分对采集的数据进行加工处理,并通过串行端口传输给上位机。AT89C51单片机是一款具有高性能、低能耗特点的微控制器,含5个中断优先级,通过全双工进行串口通信[7]。在AT89C51中对振荡频率进行设计和配置。该芯片包含8位CPU和闪烁存储器,稳定性良好,系统可编程FLASH可以在传统的编程中使用,为诸多嵌入式系统提供了强大支撑。本设计选择将AT89C51作为主控制器,AT89C51电路如图2所示。
图2 AT89C51电路
2.2 温湿度传感器
DHT11数字温湿度传感器具有极高的可靠性和出色的稳定性,且传感器功耗低、传输距离长,所占用的体积小,连接方便,所以本设计采用DHT11传感器[8-11]。DHT11温湿度传感器电路如图3所示。
图3 DHT11温湿度传感器电路
2.3 LCD1602显示屏
本设计中,液晶显示屏选用LCD1602显示屏,它可以同时显示32个字符,采用标准的16脚接口设计。在本设计中,LCD显示屏与单片机的P1口连接,同时还连接了一个滑动变阻,防止因电压过高导致LCD显示屏亮度过高,从而损坏亮点。LCD1602电路如图4所示。
图4 LCD1602电路
2.4 继电器
继电器是一种电控装置,其通常由电机和线圈组成,用作控制元件,有扩大控制范围的效果[12]。在本设计中,继电器模块与51单片机的P2.6口连接,若温湿度超过上位机界面所设定的阈值则启动继电器,模拟现实中的温湿度调节。继电器的01引脚连接了1个LED灯,当继电器启动时LED灯闪烁。继电器电路如图5所示。
图5 继电器电路
3 软件设计
3.1 主程序设计
图6所示为主程序流程。按下系统电源键,初始化各模块,初始化完成之后,温湿度传感器模块工作任务开启,开始采集温湿度信息,并将采集的数据由模拟信号转换为数字信号输出,单片机模块将采集的数据传送给液晶显示屏显示,便于使用者直观观察。同时,单片机也可以通过串口与上位机通信,将采集的数据传输给上位机,通过上位机界面显示。
图6 主程序流程
3.2 功能实现
3.2.1 显示屏流程
本设计采用LCD1602显示屏。LCD显示屏初始化后通过与单片机P1口的连接,将数据传输给显示屏,显示数据。显示屏流程如图7所示。
图7 显示屏显示流程
3.2.2 温湿度检测流程
在本设计中,温湿度传感器模块接在单片机的P2.0口,能够实时采集环境中的温湿度。本设计选择的DHT11温湿度传感器能够完整输出所测量的温度和湿度,并通过数字方式显示。温湿度检测流程如图8所示。
图8 温湿度检测流程
4 测 试
4.1 下位机测试
下位机功能测试主要包括检测硬件之间是否能够顺畅通信,例如传感器和单片机之间的通信是否正常等,将DHT11传感器的程序烧录进微控制器之后,将微控制器的串口与电脑连接,打开串口调试助手,将波特率设置为9 600,串口选择COM3,晶振为11.059 2 MHz,然后观察串口调试助手界面出现的报文是否与预期一致。测试结果如图9所示,测试实物如图10所示。
图9 测试结果
图10 测试实物
图11所示为温湿度正常时的亮灯情况,图12所示为某一参数超限,系统发出警报时的亮灯情况。
图11 温湿度正常
图12 温湿度超出阈值
4.2 上位机测试
上位机功能测试主要包括串口收发是否正常以及是否存在数据丢失,测量值显示以及设备状态显示是否正常等。在测试串口时,一个节点在固定时间间隔发出固定的报文,上位机接收到报文后通过文本框的形式展示,在测试过程中观察是否有报文异常以及数据丢失的情况。改变温湿度,观察上位机界面显示的数值是否发生改变,测试上位机显示部分是否发生故障。图13所示为上位机测试结果。
图13 上位机测试结果
5 结 语
本设计通过DHT11温湿度传感器、AT89C51单片机、液晶显示屏、蜂鸣器等测试并显示温室环境中的温湿度,还能够将检测到的数据传送给上位机,与上位机界面手动设定的阈值进行比较,若超过阈值会启动继电器模拟温室系统及时调节,实现温室智能化,具有一定的推广价值。