基于LoRa和NB-IoT的温室大棚数据采集系统网关设计

2023-05-24 04:45王东杨杰
无线互联科技 2023年5期
关键词:温室大棚无线通信云平台

王东 杨杰

摘要:温室大棚环境参数检测系统在使用WiFi,Bluetooth,GPRS,ZigBee,4G等通信技术时,要么存在通信距离短,要么存在功耗高的缺点,而LoRa和NB-IoT刚好解决了这一看似矛盾的问题。文章应用LoRa和NB-IoT无线通信技术,设计了温室大棚数据采集系统网关,实现了接收数据采集终端上报的数据并转发到OceanConnect物联网平台,推送到应用服务器,并详细介绍了网关的软硬件设计。通过对这两种无线通信技术的组合,在一定范围和特定场景下能够降低无线通信的功耗和费用,具有一定的实用价值。

关键词:温室大棚;LoRa;NB-IoT;无线通信;数据采集模块;云平台

中图分类号:TP277文献标志码:A

0 引言

目前,物联网无线通信主要采用WiFi,Bluetooth,GPRS,ZigBee,4G等通信技术,这些通信技术要么存在通信距离短,要么存在功耗高的缺点[1-3]。而LoRa和NB-IoT刚好解决了这一看似矛盾的问题,既能进行远距离通信,又解决了低功耗。LoRa网络无后期网络运行费用,但无法直接连接到互联网,而NB-IoT虽然能通过核心网连接到互联网,但是需要后期运行费用。本文结合LoRa和NB-IoT各自的优势设计了用于温室大棚环境数据采集系统的网关,该网关能够在对供电和成本要求严格、数据量小的应用场合具有较好的优势。

1 系统架构

系统架构如图1所示,数据采集模块由MCU、LoRa模块及用于环境参数检测的传感器构成,负责将采集的数据发送到由MCU、LoRa模块和NB-IoT模块构成的网关,再由网关将数据经核心网转发到华为的OceanConnect物联网平台[4],并推送至应用服务器进行解析和储存,供用户查询和使用。

2 网关硬件电路设计

网关模块主要负责与各数据采集模块进行通信,接收由数据采集模块上报的环境数据,并将收到的数据通过NB-IoT模块转发到云端,供管理人员查看。网关模块主要包括电源模块、单片机最小系统、LoRa通信模块以及NB-IoT通信模块。

2.1 电源选择

本网关模块在进行LoRa通信和NB-IoT模块发射时功耗最大,但LoRa和NB-IoT并不同时通信。根据ATK-LoRa-01的技术参数,LoRa模块供电电压为3.3 V~5 V,最大电流为118 mA(可调);NB-IoT模块供电电压为3.1 V~4.2 V,射频发射状态最大为250 mA;MCU选择STC8A8K64S4A12芯片,该芯片供电电压为2.0 V~5.5 V。故电源选择ER26500型电池,8 500 mAH电量,电压3.6 V,最大能提供300 mA的电流,完全能够满足系统的电源要求。同时为了方便电路调试,本文设计了USB供电和USB转TTL模块,其电路如图2所示。当不需要该部分时,只需要断开SW4或此部分电路不焊接,将电池接入VCC即可。

2.2 单片机最小系统

本系统选择的MCU为STC8A8K64S4A12,无需外部复位和晶振电路,接入电源即可工作,提供IDEL和STOP两种低功耗模式,最低可降至0.1 μA,具有4个串口。其中,串口1用于MCU的程序更新下载和调试使用,串口2用于与NB-IoT模块通信,串口3用于与LoRa模块通信,电路如图3所示。

2.3 LoRa通信模块

为了使系统功耗低、传输距离远,本文选择了正点原子ATK-LoRa-01模块,该模块是基于SX1278设计开发的LoRa扩频传输模块,工作频率410~441 MHz,传输距离大于3 000 m,待机功耗2.3 μA,支持AT指令配置,3.3 V~5 V供电,工作电流2.3 μA~118 mA。通过串口与单片机的串口3进行数据交换,其AUX引脚连接单片机P32,MDO引脚与单片机P07连接,用于检测LoRa模块的状态以及对LoRa模块进行控制。

2.4 NB-IoT模块主要电路设计

与互联网连接的模块选择NB-IoT通信,模块选择移远BC35-G。该模块是一款高性能、低功耗的多频段NB-IoT无线通信模块,PSM下最大电流5 μA,射频发射状态最大250 mA,接收状态50 mA,供电电压3.1 V~4.2 V。

BC35-G模块包含一个 USIM 接口,支持 3GPP 规范的功能,并通过模块内部的电源供电,支持 1.8/3.0V 供电。根据BC35-G硬件设计手册进行电路设计,但要注意外部 USIM 卡座要靠近模块摆放,同时,外部 USIM 卡信号线布线远离 RF 走线和 VBAT 电源线,外部 USIM 卡座的地与模塊的 USIM_GND 布线要短而粗。在外部 USIM 卡的引脚增加了TVS 管确保良好的 ESD 防护性能。为了更好地调节射频性能,本文设计了π形匹配电路,且电路元件尽量靠近天线放置。在和MCU的串口连接线路中,需要串联一个1 kΩ的电阻,以防止漏电,增加功耗,BC35-G模块主要接口电路和最终制作的网关电路板实物如图4所示。

3 软件设计

根据系统架构可知,网关与互联网通信使用NB-IoT通信,网关与数据采集模块之间的通信采用LoRa通信。本网关模块选择使用NB-IoT设计的目的在于其低功耗以及多个数据采集终端共用资费以节省通信费用,故同一个网关模块所连接的数据采集终端数量不会很多,设定为最大16个,而上传数据的频率也不高,只是在给定的时间间隔点上由数据采集模块采集环境数据上传,网关与各数据采集模块之间的LoRa通信采用轮询的方式进行,网关需要提前设置好数据采集模块的地址,因此需要提前在应用服务器上配置好每个网关下数据采集模块的地址列表。又由于同一个网关会上传多个数据采集模块的数据,而OceanConnect需要根据配置的解码插件对接收到的数据进行解码,所以数据中必须包含数据采集模块的地址,故设计网关向服务器上传数据通信协议如表1所示。

若网关地址不为0,终端地址为0,代表数据为网关发送;若数据包中数据为全0,则表示向服务器请求终端地址列表。

服务器接收到网关请求数据采集模块地址列表时,下发数据仅为终端地址列表数据,其通信数据格式如表2所示。

网关和数据采集模块之间采用定向传输,网关向服务器获取到数据采集模块地址列表和通信信道后,根据既定的规则对数据采集模块进行轮询,网关向数据采集模块发送信息的数据格式如表3所示。

数据采集模块被网关唤醒后,立即采集相关传感器的数据,形成数据包,上传到网关,其数据格式如表4所示。

系统通电时,首先初始化NB-IoT模块和LoRa模块,然后通过NB-IoT模块向服务器请求数据采集模块地址列表,将LoRa模块设置成唤醒模式,按既定规则发送命令唤醒数据采集模块上传数据,完成数据接收后,将LoRa模块设置成省电模式,并将收到的数据打包上传到服务器,完成数据发送后,整个网关所有模块进入休眠状态,以节省功耗,然后等待下一次通信。网关固件流程如图5所示。

4 服务器软件开发

服务器端主要分为两部分:一是OceanConnect物联网平台的设置;二是应用服务器软件开发。

OceanConnect物聯网平台的设置主要是根据网关向服务器上传数据的通信数据格式,进行Profile定义、编解码插件开发以及设置数据推送服务。

应用服务器软件开发主要包括接收由OceanConnect物联网平台推送的JSON数据,对数据进行解析和储存,供用户进行查询。应用服务器软件主要使用ASP.NET开发WebAPI接口,在POST接口中接收数据,并对数据进行解析和存储,当接收到网关请求数据采集终端的地址时,则可以根据设置好的数据采集模块地址列表数据生成数据包,利用NB-IoT模块上传数据后的eDRX窗口下发预先设置好的地址列表数据。

5 结语

利用LoRa和NB-IoT无线通信技术设计无线网关,用于野外数据采集等场合的无线通信,能够较好地利用各自的优势,在一定范围和特定的场景下降低无线通信的功耗和费用,较其他通信模块有更广的适应范围。

参考文献

[1]金恩曼,陈培余.一种智能大棚的温湿度检测系统[J].数字技术与应用,2019(7):85-87.

[2]蒋震,王筝,曹中强,等.基于NB-IoT的温湿度采集系统设计与实现[J].信息化研究,2018(6):63-69.

[3]冀汶莉,王佳豪,王新伟.基于LoRa的农业大田土壤多参数监测系统设计[J].无线电工程,2023(2):456-464.

[4]贾婷,安璐,廖明,等.基于STM32的铁路运输站内NB-IoT可视化云BAS系统设计[J].计算机测量与控制,2022(4):209-215.

(编辑 王雪芬)

猜你喜欢
温室大棚无线通信云平台
阿克塞县温室大棚小气候观测及气象服务系统建设
无线通信技术在测绘工程中的应用分析
基于PLC、变频器和触摸屏技术的温室大棚控制系统设计
企业云平台建设研究
花卉生产温室发展规划探讨