基于ZigBee技术的农业大棚环境监测控制系统设计
作者: 杨忠华 何向锋
摘 要:我国设施农业起步较晚,温室大棚等农业设施存在功能单一、智能化程度低、光照不足、通风不良等问题。针对温室大棚存在的不足与局限性,以无线通信技术ZigBee为基础,设计了一套农业大棚环境监测控制系统。该系统由ZigBee无线传输模块、CC2530控制平台、基于窄带物联网(Narrow Band Internet of Things,NB-IoT)的阿里云物联网云监控模块、传感器数据采集模块等组成,可通过阿里云平台显示大棚内各种传感器监测到的数据,控制大棚内风扇、水泵、补光灯等设备工作,使温室大棚内各种参数保持在正常范围。该系统具有实时性好、耗能低、传输距离远、操作方便等优点,实用价值较高,可为智能农业大棚的设计提供参考。
关键词:智能农业大棚;ZigBee技术;传感器;物联网
中图分类号:TN925;TP212 文献标志码:B 文章编号:1674-7909(2023)07-151-4
0 引言
温室大棚因具有透光、保温性能,受环境影响较小,可为农作物提供良好的生长条件。但是,传统的温室大棚存在保温能力差、抗压能力差、通风不良等局限,极大地影响了其中农作物的产量和品质。笔者研究设计的智能农业大棚系统可实时采集空气温湿度、土壤湿度、光照强度等数据信息,并通过ZigBee技术将各终端采集的数据进行集中处理,实现远距离实时监控温室大棚内土壤湿度、光照强度等。同时,该系统可自动调节相关设备参数,保障农作物能够获取充足的光照、水分等,有效提高棚内农作物的产量和品质[1]。
国外在智能农业大棚方面的研究比我国起步早,研究成果丰硕。例如,美国学者研发了一种集温湿度控制、农业灌溉、肥料供给于一体的温室智能管理系统,能够实时监控和自动控制温室内的一系列指标[2]。以色列智能农业大棚发展迅速,借助计算机等设备实现了对环境条件的自动控制,如将控制中心的计算机与大棚内的喷灌设备建立通信,可无线控制滴灌和微喷灌系统进行灌溉和施肥,提高了水资源和肥料的利用率[3]。加拿大的智能农业大棚使用温室控制软件采集并分析大棚内的相关数据,显著降低了生产成本,有效减少了农药使用量[3]。
随着各种先进技术的不断涌现,融入计算机、互联网技术的温室大棚智能监控、控制系统真正使设施农业迈入了智能化、网络化阶段[4]。目前,我国温室大棚种植面积位列世界第一,但智能农业大棚的发展起步较晚,基础薄弱,依旧以普通塑料大棚为主,与国外相比存在较大差距[2]。我国智能农业大棚的不足主要表现在关键技术不够成熟、计算机一体化程度低、对环境指标的采集与控制较为落后。目前,国内开发的智能农业大棚系统只能进行监测和简单的控制,成本较高,对棚内环境的调节作用小,且带来的经济效益不高。因此,研究开发性价比高的智能农业大棚系统意义深远。
1 农业大棚环境监测控制系统总体方案设计
1.1 系统需求
通过实际考察,笔者选择利用ZigBee技术、窄带物联网(Narrow Band Internet of Things,NB-IoT)技术、CC2530芯片编程原理、阿里云技术等,结合应用各类传感器和功能元件,开发设计智能农业大棚系统,以期实现对大棚环境的远程监控和自动控制。该系统的具体功能需求如表1所示。
1.2 系统整体框架
根据系统的需求分析,农业大棚环境监测控制系统的总体框架如图1所示。系统分为ZigBee传感器终端、ZigBee协调器、云端三大部分。
1.2.1 ZigBee终端。该系统共包含两个传感器终端节点(可扩展为多个),且两者功能相同。终端节点接入传感器测量大棚环境温湿度、土壤湿度、光照强度,将采集的数据通过协议栈以单播模式发送给协调器。针对3种数据分别设置阈值,当采集的数据低于下限阈值时,系统会通过继电器自动控制水泵、打开补光灯;当大棚环境各项数据恢复正常后,继电器会自动关闭。
1.2.2 ZigBee协调器。协调器作为该系统的主控平台,主要负责两个方面的工作:一是通过连接Air724UG实现与阿里云的连接,将两个传感器终端节点的数据上传到阿里云平台进行实时监控;二是连接两个传感器终端节点,接收终端节点单播发送过来的数据。协调器可以通过按键分别控制两个终端节点上水泵、补光灯的开关,实现远程监控与控制。
1.2.3 云端。云端这一部分包含NB-IoT模块和阿里云平台。NB-IoT模块即Air724UG芯片,在数据传输单元(Data Transfer Unit,DTU)管理平台注册账号登录建立设备,通过三元组连接阿里云平台,将协调器的数据通过串口上传至阿里云,实现数据上云。NB-IoT模块可插物联网卡,当终端上传数据超出设定阈值时,Air724UG自动发送短信给预留手机号。阿里云平台通过建立物模型将NB-IoT模块上传的数据实时显示在面板,实时监控,实现智能农业大棚的可视化管理。
1.3 无线通信方案选择
大棚内部环境较为复杂,需要经常松土、浇水、施肥、喷药,不利于布线,并且布线成本高。无线通信方式节点布置较为灵活,更容易调整监控范围,所以笔者设计的农业大棚环境监测控制系统采用无线通信方式进行数据传输和远程控制[5]。常用的无线通信技术主要有ZigBee、Wi-Fi、蓝牙等。
1.3.1 ZigBee技术。基于ZigBee技术的无线传感网络技术是物联网行业应用非常广泛的技术之一,是以IEEE组织的802.15.4无线通信标准为基础实现的无线组网技术,可以很好地满足传输数据量小、传输范围在10~100 m的业务需求[3]。ZigBee技术具备设备成本低、设备兼容性强等特点[4],在增加射频发射功率后,传输范围可增加到1~3 km,能很好地适应占地面积广、环境温度较高、铺设电路困难等温室大棚环境,是无线传感器通信方案的最佳选择。
1.3.2 Wi-Fi无线通信技术。Wi-Fi俗称无线宽带,是一种可以将各种搭载Wi-Fi的终端设备连接在一起的技术。Wi-Fi无线通信技术覆盖范围小,只有30~45 m。Wi-Fi设备功耗较大,温室大棚环境下设备发热严重,影响设备寿命,并不适用于农业大棚环境监测控制系统。
1.3.3 蓝牙技术。蓝牙技术可以用于数据无线传输和语音通信。蓝牙设备价格友好、功耗低、稳定性强,但在传输过程中数据包较小,传输距离短,最大的组网规模只有8台设备,不适用于笔者所设计的农业大棚环境监测控制系统。
2 系统硬件选取
笔者设计的农业大棚环境监测控制系统硬件主要分为无线通信模块、传感器采集模块、其他模块3部分。
2.1 无线通信模块
无线通信模块包括1个协调器、2个传感器终端节点及NB-IoT模块,负责将传感器采集模块采集的数据上传至云端。协调器和终端节点均选用CC2530芯片作为处理器。当参数出现异常时,云端发出指令进行有效控制,使得大棚的环境温度、环境湿度、土壤湿度、光照强度维持在合理范围。
2.1.1 CC2530芯片
CC2530芯片是德州仪器公司生产的一款无线射频芯片[1]。CC2530芯片搭载增强型8051内核,具有很强的兼容性,可以兼容模数转换器、串口、各种传感器和外接模块。CC2530芯片具有稳定、安全的数据收发功能,能满足此次设计的需求。
2.1.2 NB-IoT模块
NB-IoT模块内置的Air724UG芯片由上海合宙公司研发,内置消息队列遥测传输(Message Queuing Telemetry Transport,MQTT)协议,可以通过串口与CC2530芯片相连,实现系统与阿里云的连接。系统通过DTU管理平台配置参数,并将Air724UG芯片通过三元组采用“一机一密”的方式进行通信,将数据实时显示在阿里云平台。用户可以随时通过阿里云平台查看大棚环境温湿度、土壤湿度、光照强度,还可以设置各项参数阈值。当环境数值超出阈值范围时,Core-Air724芯片可通过物联网卡发送短信给用户,实现警报功能。
2.2 传感器采集模块
传感器采集模块主要由DHT11温湿度传感器、GY-302光强度传感器及YL-69土壤湿度传感器组成。
2.2.1 DHT11温湿度传感器。DHT11温湿度传感器主要依靠数字信号采集技术和温湿度传感技术采集数据,由1个电阻式测湿元件和1个NTC测温元件构成,并与1个高性能8位单片机相连接[5]。设计中,每个ZigBee终端节点连接一个DHT11温湿度传感器,采集的温湿度数据精准度高、稳定性强。
2.2.2 GY-302光强度传感器。GY-302模块是一款基于I2C通信的16 bit的数字型传感器[6]。该传感器的核心是一块BH1750数字型光强感应芯片。BH1750是一种用于两线式串行总线接口的数字型光强度传感器,采用标准的I2C总线传输方式。笔者设计的系统包含2块GY-302模块,光照强度范为0~65 535 lx,不区分环境光源,接近于人眼的视觉灵敏度,在设计中表现良好。
2.2.3 YL-69土壤湿度传感器。该系统所使用的是电阻式土壤湿度传感器,包括传感器探头和传感器芯片。其中,传感器金属探头采用镀镍处理,防止传感器生锈。湿敏电阻为传感器的敏感元件。该土壤湿度传感器具有反应速度快、集成度高等特点,能够很好地反映温室大棚的土壤湿度情况。
2.3 其他模块
2.3.1 有机发光二极管(Organic Light-Emitting Diode,OLED)显示屏。OLED显示屏在玻璃基板上涂上有机涂层,整个屏幕水平方向分为8 page,垂直方向分为128 column,每个page-column包含8个像素,通过一个十六进制数控制,每个比特控制一个像素。当接通电源时,这些有机材料会发光,通过控制每个像素点的明灭实现对相应文字或图案的显示。OLED屏幕可视角大、功耗低、对比度高、厚度薄、反应速度快,可用于显示ZigBee协调器和终端的连接状态。
2.3.2 串口通信模块。CC2530芯片有2个串行通信接口:通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,UART)模式(USART0)和串行外设接口(Serial Peripheral Interface,SPI)模式(USART1)。每个通用同步/异步串行接收/发送器(Universal Synchronous/Asynchronous Receiver/Transmitter,USART)外设有5个相关的寄存器,通过寄存器可以设置2个USART接口,对应外部输入/输出(Input/Output,I/O)引脚的映射关系。笔者设计的系统采用CH340实现通用串行总线(Universal Serial Bus,USB)转串口。
3 系统软件设计
3.1 ZigBee协议栈
笔者采用事件轮询机制构建ZigBee协议栈。协议栈经过一系列硬件初始化后进入任务轮询,判断是否有事件发生。如果有,则比较优先级,调用事件处理函数执行事件,执行完毕继续轮询,判断是否有新的事件发生,周而复始地循环,直到有新任务出现。
3.2 传感器终端节点
系统包含2个功能相同的ZigBee终端节点,主要作用有2个:一是发送数据,通过单播模式将DHT11温湿度传感器、GY-302光强度传感器、YL-69土壤湿度传感器采集的数据发送给ZigBee协调器;二是自动控制,预设土壤湿度和光照强度的报警值,当环境数据超出正常范围时,ZigBee终端节点通过继电器自动控制水泵和打开补光灯,当数据恢复正常后,自动控制水泵和关闭补光灯。