基于物联网的盆栽远程监控技术应用分析
2020-10-21高波彭程王志勇李兆泽邢世杰周利杰
高波 彭程 王志勇 李兆泽 邢世杰 周利杰
摘要:针对室内盆栽长期无人看守养护的情况,研究设计了一种利用物联网技术的盆栽远程监测和控制系统。首先,该系统根据ZigBee轻型无线通信协议建立了由CC2530作为感知终端控制器的无线传感器网络,然后主控单元树莓派三代与感知层节点串口通信,并通过搭建Web服务器和数据库实现数据存储和互联网服务,最后远程用户可由Internet与Web服务器的信息交互,实现盆栽的远程监测和控制。通过现场演示证明,该盆栽物联网监控系统具有良好的可靠性。
关键词:盆栽;物联网;ZigBee;Web服务器;远程监控
0 引言
目前,物联网技术在智能家居领域得到了推广和应用[1-2]。其中,盆栽养护利用物联网技术可以远程监控植物所需的水、光和营养等环境数据,保证其能够健康生长。传统的物联网技术过分依赖感知终端和互联网的直接通信[3],这种方式会随着终端数量的增加而加重通信负担。鉴于此,本文采用基于ZigBee技术的无线传感器网络[4],可同时允许多个感知终端接入Internet,建立盆栽物联网监控系统,实现手机端实时远程状态监测和控制。
1 盆栽物联网监控系统设计
1.1 总体结构
盆栽物联网监控系统总体结构如图1所示,由下到上分别是感知执行层、网络层、应用层。其中,感知执行层包括传感器和执行模块,比如温度、湿度、光照强度等传感器以及水泵、遮阳电机、营养液投放器等执行单元。CC2530节点控制器利用ZigBee/Z-Stack协议栈建立无线传感器网络,形成数据汇集点并通过RS485串口与樹莓派三代主控制器进行信息交互。
网络层中,树莓派三代主控系统作为中枢节点实现感知层数据与Internet之间的交互。主控单元在Linux系统下搭建Web服务器和数据库,并通过Wi-Fi模块与互联网相连。Web服务器可以响应用户请求,数据库可以存储终端节点传输数据。
应用层由手机小程序和PC机端组成,通过Internet访问中枢节点Web服务器,获取盆栽实时数据和历史数据,并可以将用户需求下发给盆栽系统实现远程信息交互。
1.2 系统主要功能
基于物联网技术架构的盆栽监控系统,其主要功能包括以下四大方面:
(1)实时监测。针对盆栽环境数据,采用DHT11温湿度传感器实时采集空气环境温度和湿度,YL69湿度传感器监测土壤湿度,利用光敏电阻获取光照强度。同时,采用图像传输、电压/电流测量等方式获取系统运行数据。最终在物联网架构下,利用上述监测方式获取实时监测数据,并通过通信网络传输给主控系统,完成数据存储和交互。
(2)智能保护。为提高盆栽远程监控系统的稳定性和可靠性,设定了智能保护、休眠与复位功能。当监测数据出现异常告警后,会通过用户端及时提醒用户处理异常和故障。警告信号包括感知层传感器数据的异常(比如光照过强、温度过高、土壤水分过少等)、系统自身状态异常(比如过电压、过电流、过热、电池电量不足、水箱缺水、营养液不足等)。
(3)自动控制。用户可以根据需要,通过手机APP设置系统的工作模式,分为手动、自动模式。自动模式下,根据实时获取的监测数据,主控制器进行分析和判断,实现自主浇水、施肥、遮阳等自动控制功能。手动模式下,用户可以根据监控数据直接下发控制命令,完成盆栽的养护。其中,自动施肥属于定期施肥,施肥周期根据植物类型对营养需求不同而设定。
(4)网络通信。系统的网络通信技术涵盖了串口通信、Z-Stack协议栈、Web服务器和互联网技术,完成由感知层节点控制器CC2530、中枢点树莓派三代控制器到远程用户端的网络通信,实现信息的实时交互。
1.3 软件设计
系统主程序流程图如图2所示,主要包括初始化,建立通信网络,数据采集、传输和存储,系统分析判断,命令执行等部分。其中,数据采集包括上述环境数据和系统运行状态。当检测到系统正常运行时,系统会自动进入休眠,降低功耗。
2 技术要点分析
系统涵盖了以下五方面关键技术,包括无线传感器网络技术、自动浇水/施肥、数据库、Web服务器、用户端远程监控平台设计。
2.1 无线传感器网络技术
为了避免多传感器终端负载过重的问题,设计了一套基于ZigBee/Z-Stack协议栈的轻型无线传感器网络,可将网络内全部感知终端数据由CC2530控制器形成汇聚节点。CC2530控制器电路设计如图3所示。
2.2 自动浇水和施肥
自动浇水或施加营养液的关键是适时、适量。当系统判断需要浇水时,通过脉冲宽度调制方式驱动水泵电机。在这种方式下,驱动信号频率固定,通过调节触发脉冲的占空比来调控水泵电机转速。自动浇水对应电路如图4所示,其中光耦器件具有电气隔离的作用。定期自动施肥技术与此相似。系统通过连通器原理,能够显示水容量和营养液容量,并通过图片传输完成剩余量的判断。
2.3 数据库设计
为了实现系统监测数据的存储和查询,主控系统利用关系型数据库管理系统(MySQL)实现数据库管理。首先设计一个与感知层设备相对应的终端表“end_device”,然后建立能保存终端设备监测信息包的数据表“data”,最后利用connect()函数建立数据库连接对象,并用cursor()建立操控对象,使用execute()完成对数据库的操作。同时,为了降低数据采集量,设置定期清理不必要数据的程序。系统以2 h为一个周期,清理前2 h数据的同时,求得这2 h数据的平均值并存在“data_two_Hours”数据表里,方便用户查询历史数据。
2.4 Web服务器
Web服务器采用了Apache HTTP Server,其采用Python语言作为服务器端脚本语言来处理远程设备网络请求。同时配置了CGI扩展库和处理网络请求的API,并与MySQL数据库建立连接,在互联网服务基础上提供查询服务。在服务器中设定分别用来实现获取设备信息、实时数据和一定时间内历史数据的3个服务脚本,利用SQL语句与数据库交互。
2.5 远程监控平台
远程监控平台主要是指在手机小程序中开发的一套小程序,可通过访问互联网Web服务器获得盆栽环境信息,并将这些信息显示在手机上。用户也可以通过小程序发送控制命令给云服务器,再由云服务器通过网络下发给终端执行层,进而实现盆栽远程监控。同时,小程序中设计了基于历史数据和天气环境的信息,并根据盆栽类型,综合分析判断,给出养护建议。
3 实际应用情况
手机小程序可以显示智能花盆环境信息和系统信息,并可以通过微型摄像头拍照获取盆栽实时状况和水位信息,如图5(a)所示。利用APP可以对盆栽进行远程控制,亦可以获取历史数据,获得养护建议等,如图5(b)所示。经实际测试,基于物联网技术的盆栽监控系统实现了相关功能,具有较好的稳定性和可靠性。
4 结语
本文针对基于物联网技术的盆栽远程智能监控系统进行了设计与分析,并通过现场应用证明了其稳定性与可靠性。該系统解决了盆栽长期无人看守下的生长问题,在智能家居建设中具有重要的参考意义和应用价值。
[参考文献]
[1] 沈苏彬,范曲立,宗平,等.物联网的体系结构与相关技术研究[J].南京邮电大学学报(自然科学版),2009,29(6):1-11.
[2] 刘强,崔莉,陈海明.物联网关键技术与应用[J].计算机科学,2010(6):7-10.
[3] 王志勇,李光,高波.基于物联网的智能消防系统设计[J].河北工程技术高等专科学校学报,2017(3):9-12.
[4] 李燕,路文梅,李文才,等.基于物联网技术的远程抄表监控系统的设计与实现方式研究[J].河北水利电力学院学报,2018(1):25-28.
收稿日期:2020-02-26
作者简介:高波(1989—),男,河南信阳人,助教,从事电气工程及其自动化专业的教学和科研工作。
通信作者:李兆泽(1999—),男,河北石家庄人,研究方向:电气工程及其自动化。