2024年4月26日发(作者:)
全面感知
Comprehensive Perception
DOI
:
10.16667/.2095-1302.2021.01.007
基于ZigBee和OneNET云平台的智能农业温控系统
张 萍,胡应坤
(
广东工贸职业技术学院
,
广东 广州 510510
)
当前农业生产多采用传统生产模式
,
生产效率低下
。
如何以较低成本提升农业生产的信息化水平
,摘 要:
提高生产效率是具有现实意义的研究课题
。
文中提出了一种较低成本的解决方案
:
使用ZigBee进行环境数据采
集及设备控制
,
基于STM32开发物联网网关进行协议解析
、
封装和数据转发
,
通过中国移动免费的物联网云平台
OneNET实现网关和手机APP的点对点通信
。
实验证明
,
手机APP可实时远程查看环境的温湿度数据
,
根据需要发
出控制指令开启或关闭相应设备
,
进行温度调控
。
该方案扩展性强
,
可支持新增的环境监测设备及控制设备
,
易于推广
。
物联网
;
云平台
;
STM32
;
ZigBee
;
OneNET
;
Android
关键词:
TP315 A 2095-1302
(
2021
)
01-0025-04
中图分类号:
文献标识码:文章编号:
0 引 言
我国虽是农业大国
,
但并非农业强国
,
农业信息化水平
有待进一步提高
。
传统农业多为粗放种植
,
生产效率低下
,
考虑利用信息化手段对传统农业进行改造
。
文中按照物联网
三层体系结构构建了智能农业温控系统
[1]
,
该系统可对农田
进行实时监控
、
精细管理
,
提高农业生产率
。
2 数据流程
数据流分为两类
,
即采集到的传感器数据
(
上行数据
)
及用户通过手机APP发出的控制指令
(
下行数据
)。
智能农
业温控数据流程如图2所示
。
1 系统结构
智能农业温控系统由四部分组成
,
即手机APP
,
OneNET云平台上的虚拟设备
,
智能农业温控系统网关
,
ZigBee子系统
。
ZigBee子系统由协调器和终端组成
,
采用
ZigBee无线通信
,
也可与智能农业温控系统网关通过串口通
信
。
智能农业温控系统结构如图1所示
。
[2]
图2 智能农业温控数据流程
上行数据流
:
ZigBee采集终端接温湿度传感器
,
采集温
湿度数据
,
通过ZigBee无线通信方式发送给ZigBee协调器
,
协调器通过串口发送给网关
,
网关再经OneNET云平台发送
给手机APP
,
手机APP展示实时温湿度数据
。
下行数据流
:
手机APP发出设备控制指令
,
经OneNET
云平台发送至网关
,
由网关通过串口发送给协调器
,
协调器
借助ZigBee无线通信方式将命令发送至ZigBee控制终端
,
ZigBee控制终端通过继电器外接设备控制设备运行
。
3 系统实现
3.1 手机APP
手机APP以Android Studio作为开发平台
,
设计了登
图1 智能农业温控系统结构
录
、
日志
、
温湿度显示
、
温湿度控制4个UI
,
手机APP借
助EDP协议与云平台通信
。
手机APP工作流程如图3所示
。
3.2 OneNET云平台上的虚拟设备
手机APP
、
智能农业温控系统网关采用EDP协议与中
国移动通信集团的物联网开放云平台OneNET通信
,
借助云
平台实现手机APP和智能农业温控系统网关的点对点通信
。
OneNET云平台上虚拟设备显示界面如图4所示
。
2021
年
/
第
1
期
物联网技术
收稿日期
:
修回日期
:
2020-07-04 2020-08-06
基金项目
:
广东工贸职业技术学院2020校级科研课题
:
基于云平
台的物联网系统构建研究广东省教育
(
2020-ZK-09
);
科学规划2020年度研究项目
:
基于校企合作
“
十三五
”
背景下的嵌入式系统课程教学改革研究与实践
(
高等教
育科学研究专项
)(
2020GXJK526
)
25
Copyright©博看网 . All Rights Reserved.
全面感知
Comprehensive Perception
图3 手机APP工作流程
微处理器模块通过串口外接ZigBee协调器
,
通过SDIO
口读取SD卡数据
。
在ZigBee子系统内部
,
采集终端和控制
终端通过协调器与微处理器模块通信
。
3.3.2 软件部分
基于STM32库函数开发网关程序
,
使用中断和轮询实
图4 OneNET云平台上虚拟设备显示界面
现多任务并行
。
程序有3个串口中断
,
功能如下
:
(
1
)
串口1是调试接口
,
可通过串口1打印调试信息
,
在实际使用时可关闭
;
(
2
)
串口2连接ZigBee协调器
,
负责接收采集终端的
数据及发送控制信息至控制终端
;
负责发送数据给云平台
,(
3
)
串口3连接ATK-ESP8266
,
并接收云平台反馈的信息
。
主流程采用轮询方式
,
定时检查串口2是否有新的温湿
度数据
,
串口3是否有云平台发送的指令
,
若有新指令则将
解析出来的结果通过串口2发送给ZigBee协调器
。
SD卡存储关键配置信息
,
如设备ID
、
目的设备ID
、
APIKey
、
接入热点名
、
接入热点密码
、
云服务器IP地址
、
云服务器端口等
。
智能农业温控系统网关流程如图6所示
。
3.4 ZigBee子系统
ZigBee子系统
[4]
包含协调器
、
终端和外接模块
。
协调
器和终端的主控芯片为CC2530单片机
,
内置Z-Stack协议栈
,
可实现ZigBee无线通信
。
外接模块包括DHT11温湿度数字
传感器和风扇控制电路
。
云平台上建有2个虚拟设备STM32网关
、
手机客户端
,
分别对应智能农业温控系统网关和手机APP
。
网关和手机
APP登录云平台时
,
需发送APIKey和设备ID
[3]
至云平台
。
相同的APIKey即表示设备需要关联到同一个应用
,
平台接
收到设备ID即表示真实设备上线
。
以EDP协议进行数据传
输时
,
需在EDP协议中填入目的设备ID
,
云平台根据目的
设备ID转发
,
实现点对点通信
。
3.3 智能农业温控系统网关
智能农业温控系统网关包括硬件和软件两部分
。
3.3.1 硬件部分
硬件主要包括五大模块
:
无线通信
(
WiFi
)
模块
、
ZigBee协调器模块
、
微处理器
(
主控
)
模块
、
SD卡读取
(
存
储
)
模块
、
供电模块
,
如图5所示
。
图5 智能农业温控系统硬件模块
协调器不但负责组建和维护ZigBee通信网络
,
同时还
负责与外部通信
,
将采集终端采集的数据转发至外部
,
或从
外部接收指令转发给相应的控制终端
。
终端使用不同GPIO
口外接DHT11温湿度采集模块和风扇控制电路
,
具有数据
采集和控制设备功能
。
文中使用DHT11
[5]
作为温湿度传感器
。
DHT11是一款
能够采集温湿度数据的数字传感器
,
与单片机等微处理器
进行简单的电路连接就能够实时采集本地湿度和温度数据
。
DHT11与单片机之间可采用单总线通信
,
仅仅需要一个I/O
微处理器模块采用STM32F103ZET6作为MCU
,
其具有
64 KB SRAM
、
512 KB FLASH
、
2个基本定时器
、
4个通用
定时器
、
2个高级定时器
、
5个串口
、
1个 USB以及112个
通用I/O口等
,
能满足现有需求和后续功能拓展需求
。
无线通信模块采用ALIENTEK推出的高性能UART-
WiFi模块ATK-ESP8266
。
微处理器模块只需进行简单的串
口配置
,
即可通过ATK-ESP8266板载的TCP/IP协议栈传输
数据
。
26
物联网技术
2021
年
/
第
1
期
Copyright©博看网 . All Rights Reserved.
全面感知
Comprehensive Perception
口即可
。
采集一次
,
共产生40 bit的温湿度数据
,
通过单总
线一次性传给单片机
,
数据采用校验和方式进行校验
,
有效
保证了数据传输的准确性
。
模块功耗较低
,
采用5 V电源电
压时
,
模块最大平均工作电流为0.5 mA
。
终端和DHT11接
线如图7所示
。
间使用自定义协议2
。
在ZigBee子系统内部
,
ZigBee协议
之上承载自定义协议2
。
EDP
、
JSON
、
ZigBee都是目前使
用较为广泛的协议或数据格式
,
下面详细介绍自定义的两种
协议
。
图8 利用继电器控制风扇开关接线图
图9 智能农业温控系统通信流程
4.1 自定义协义1
自定义协义1用于终端和云平台通信
,
定义EDP协议
中的消息体格式
,
主要支持三种功能
。
(
1
)
手机APP登录内容格式如图10所示
。
设备Id长度
(
2 B
)
设备Id
APIKey长度
(
2 B
)
APIKey
图10 手机APP登录内容格式
图6 智能农业温控系统网关流程
(
2
)
手机APP下发控制命令格式如图11所示
。
设备Id长度
(
2 B
)
设备Id
数据类型格式
(
1表示JSON格式
)
数据长度
(
2 B
)
实际数据
(
符合JSON格式
)
图11 控制命令内容格式
图7 ZigBee终端与DHT11接线图
(
3
)
网关上传温湿度数据格式如图12所示
。
设备Id长度
(
2 B
)
设备Id
实际数据
{温度
,
湿度}
采用继电器控制风扇开关接线如图8所示
,
智能农业温
控系统通信流程如图9所示
。
图12 温湿度数据格式
4 通信协议
智能农业温控系统中
,
手机APP
、
网关和OneNET云平
台通信
,
底层采用EDP协议
,
在EDP数据部分使用JSON
数据格式
,
在JSON上承载自定义协议1
。
网关和协调器之
4.2 自定义协义2
自定义协义2用于网关和ZigBee子系统内部通信
。
(
1
)
控制终端的命令
,
即从网关
→
协调器
→
终端
。
命令
格式如图13所示
。
2021
年
/
第
1
期
物联网技术
27
Copyright©博看网 . All Rights Reserved.
全面感知
Comprehensive Perception
开始字符
(
1 B
)
(
固定为0x3a
)
终端地址
(
2 B
)
功能码
(
1 B
)
数据
(
n
B
)
校验
(
1 B
)
结束符
(
1 B
)
(
固定为0x23
)
图13 命令格式
校验
(
1 B
)
按字节进行异或操作得到
,
用于校验数据
在传输过程中是否发生变化
。
目前功能码只支持2个值
,
后
期添加新功能后
,
可设定新的功能码
,
如图14所示
。
0x0a
0x01
控制终端风扇的开关
查询所有传感器数据
,
查询功能时
,
数据字段为空
图16 采集温湿度数据界面
图14 功能码
当功能码确定之后
,
数据字段表示具体操作
,
如功能码
为0x0a
,
数字字段1表示关风扇
,
0表示开风扇
。
(
2
)
具体某个终端响应
,
即从终端
→
协调器
→
网关
,
格
式如图15所示
。
开始字符
终端地址
(
1 B
)
(
2 B
)
(
固定为0x3a
)
功能码
(
1 B
)
数据
(
n
B
)
校验
(
1 B
)
结束符
(
1 B
)
(
固定为0x23
)
图17 接收控制命令界面
6 结 语
本文基于物联网云平台构建的智能农业温控系统
,
可利
用手机实时监控农作物周边环境温度
,
远程控制降温设备
(
比
如风扇
)
的开启
、
关闭
。
设计时考虑到后续功能的拓展
,
可
以外接传感器采集环境数据
,
或外接控制设备进行环境调控
,
扩展性好
。
参考文献
图15 终端格式
终端地址即该终端的地址
,
功能码与数据均来自接收到
的命令
。
比如开启地址为0001的风扇
:
命令
(
协调器
→
终端
)
为3A 00 01 0A 00 31 23
响应
(
终端
→
协调器
)
为3A 00 01 0A 00 31 23
(
3
)
查询传感器数据
,
即网关
→
协调器
→
终端
。
比如命
令为3A 00 FF 01 C4 23
,
其中3A为起始码
,
00FF表示所有
传感器
,
协调器会将该命令发给网络中所有节点
,
01表示查
询功能
,
无数据字段
,
C4为校验码
,
23为结束码
。
终端
→
协调器
→
网关
。
比如数据
:(
4
)
传感器数据响应
,
3A 00 FF 01 1E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
92 23
,
其中3A为起始码
,
00FF来自收到命令中的地址字段
,
01为功能码
,
表示查询所有传感器数据
,
92为校验码
,
23
为结束符
。
考虑到功能拓展
,
设计协议时有一定冗余
,
16个
字节表示数据来自4个终端节点
,
每4个字节表示每个终端
节点外接4种不同的传感器
,
目前只实现了每个终端节点外
接温湿度传感器
,
因此只有1个字节的数据是有效的
,
其他
均为0
。
5 系统运行结果
通过智能农业温控系统网关串口1输出调试信息
。
采集
温湿度数据界面如图16所示
,
接收控制命令界面如图17所示
。
[1]周汉达
,
李晓良
,
陈庆生
,
等.基于云平台的智能农业大棚系统
[J].物联网技术
,
2020
,
10
(
4
):
62-64.
[2]丁飞
,
吴飞
,
艾成万
,
等.基于OneNET平台的环境监测系统设
计与实现[J].南 京 邮 电 大 学 学 报
(
自 然 科 学 版
),
2018
,
38
(
4
):
28-33.
[3]刘佳
,
张莉
,
贾林涛
,
等.基于OneNET云平台的智能办公室管
理系统设计[J].华为科技学院学报
,
2019
,
16
(
2
):
118-124.
[4]吕振
,
林振杨
,
何武林
,
等.基于ZigBee的大棚农业监测系统的
设计与实现[J].贵州农业科学
,
2012
,
40
(
4
):
227-230.
[5]王金宝
,
谷文
,
张
珽
.湿度传感器的应用研究[J].科技风
,
2016
,
29
(
19
):
49-58.
[6]陆承佳.基于Node MCU与OneNET的物联网应用技术研究[J].
单片机与嵌入式系统应用
,
2020
,
20
(
5
):
18-21.
[7]朱照红.WiFi和ZigBee混合自组织组网技术在飞行器通信系统中
的应用研究[J].电子测试
,
2018
,
25
(
24
):
35-37.
[8]王冬.基于物联网的智能农业监测系统的设计与实现[D].大连
:
大连理工大学
,
2013.
[9]葛年明
,
周泉
,
沈春梅.基于STM32的物联网开发应用系统设计
[J].微型机与应用
,
2012
,
31
(
17
):
80-83.
[10]李甬
,
韩斌
,
熊铁军
,
等.构建基于STM32的PM
2.5
含量实时
检测系统[J].微型电脑应用
,
2020
,
36
(
6
):
33-36.
[11]LIANKY
,
HSIAO S J
,
SUNG W T. Intelligent multi-sensor
control system based on innovative technology integration via
ZigBee and WiFi networks [J]. Journal of network and computer
applications
,
2013
,
36
(
2
):
756-767.
作者简介
:
张 萍
,
江西抚州人
,
硕士
,
广东工贸职业技术学院物联网应用技术专业专任教师
,
研究方向为物联网应用
。
胡应坤
,
广东揭阳人
,
硕士
,
广东工贸职业技术学院电气自动化技术专业专任教师
,
研究方向嵌入式系统
应用
。
28
物联网技术
2021
年
/
第
1
期
Copyright©博看网 . All Rights Reserved.
发布评论