admin管理员组

文章数量:1531696

2024年4月24日发(作者:)

Reliable Transmission

DOI

10.16667/.2095-1302.2022.06.014

可配置物联网网关设计与实现

施永贵

福建和盛高科技产业有限公司

福建 福州 350100

物联网网关作为物联网技术的核心组成部件

具有承上启下的作用

然而各类智能终端设备的数据传

摘 要:

输协议

格式都无法保持一致

导致每种设备的数据采集都需要开发有针对性的物联网网关程序

不仅网关设备难

以复用

二次开发难度高

还存在随着数据采集需求增长而导致云端负载过大的问题

为此

文中提出了一种层次

化的物联网网关框架

该框架基于分层思想

将网关功能分为5个层次

感知层

数据处理层

边缘计算层

传输

层和应用层

五层框架结合配置客户端即可实现完整网关功能

物联网

网关

层次化

可配置

数据协议

数据采集

关键词:

TP3-05 A 2095-1302

2022

06-0051-04

中图分类号:文献标识码:文章编号:

0 引 言

网关作为物联网技术的核心组成部件

具有承上启下的

作用

是用于连接感知层网络与上层公共网络的纽带

也被

视为一种协议转换器

网关正朝着效率

实时性

抗干扰能

力逐渐提升的方向发展

应用的场景也越来越多

在农业

工业

交通

智慧电网等诸多场景都有一席之地

应用场景

的增加导致网关种类随之增多

如家居智能网关

工业数据

网关和交通管控网关等

网关的功能是相通的

主要用于协

议转换

数据交互

网络互联互通

区别在于各网关的应用

场景不同

传统网关的创建方法是把现场设备的数据先收集到网

关节点

利用内嵌协议分析转换器将处理完毕的数据通过

MQTT物联网协议传送到客户自定义的云平台

[1-2]

存在支

持的数据协议较为单一

应用范围较小

开放性不足等问题

当现场使用的设备和数据协议发生改变时

需要重新对网关

程序进行二次开发

花费大量的人力物力

针对此类问题

设计一种支持多种接入协议

具备边缘计算特性以提高网关

的通用性

[3]

数据采集可配置以减少数据冗余

避免浪费传

输带宽的物联网网关就变得十分重要

将数据分析成标准格式后交给边缘计算层处理

[4]

图1 物联网网关总体设计框架

边缘计算层作为物联网网关的核心层

需要对转换后的

标准格式数据进行边缘计算

包括数据运算

逻辑判断

号联动和故障研判

边缘计算的内容需要预先设定

计算方

法由用户设定

传输层用于传输感知层采集的数据

使用4G网络

传输

应用层是指对采集设备的数据进行本地动态曲线显示

网关的本地显示使用微信小程序实现

[5]

1.2 硬件架构

物联网网关硬件平台由边缘计算核心板EC Core-L-1和

网关底板和扩展单片机STM32F4007IG组成

其连接和软件

架构如图2和图3所示

EC Core-L-1板卡构架了双嵌入式

操作系统

网络OS系统和容器Linux 系统

该板卡主要含

有内存

NAND FLASH

DDR3

RTC实时时钟

LTE 4G

2022

/

6

物联网技术

1 可配置物联网网关架构

1.1 软件架构

物联网网关整体框架可分为五层

如图1所示

感知层作为物联网关框架的第一层

用于采集各类接入

网关设备数据

并将采集的数据上传给数据处理层

数据处理层对感知层上传的数据包进行解析和协议转

收稿日期

修回日期

2021-08-07 2021-09-10

51

Reliable Transmission

模块

WiFi模块

电源管理模块

扩展单片机能扩接丰富的

模块

如USB接口模块

、(

PLC

电力载波模块

以太网接

口模块

LTE模块

外设通过USB和GPIO接口连接扩展单

片机

扩展单片机作为USB Device设备

核心板作为USB

Host控制器

实现核心板接口的扩展

图2 扩展单片机连接

图3 核心板与扩展单片机软件架构

2 网关可配置功能设计与实现

2.1 配置客户端软件

配置客户端需要实现采集网关及其下联设备的参数及信

因此界面需要包含多个输入框便于填写信息

以满足不

同的配置要求

首先

设备配置文件的参数输入

填入每个

设备的身份认证

三元组

然后

填入设备的数据协议参

目前为Modbus协议

最后

填入设备寄存器的对应地

址及其含义和计算系数

填写完成后保存

具体工作流程如

图4所示

一个输入框的参数为Modbus_RTU或Modbus_TCP

选择

Modbus_RTU之后就可以选择接口类型

485或PLC

),

若选

择485类型

则在设备参数区域的第三行输入串口信息

择 PLC则输入第四行的IP信息

同理

当第一个输入框选

择Modbus_TCP时

只需输入第四行的IP信息

接下来输

入设备属性的标识符和地址

按照设备使用说明中的信息填

界面右边部分是设备配置文件的菜单栏

可以看到各接

口下的设备数量

图5 配置客户端设备管理界面

配置客户端边缘计算界面如图6所示

左边显示已经创

建好的计算节点

右边为添加计算节点的部分

根据边缘计

算的设计

将一串长长的计算公式拆分成两两一组的计算节

将每个计算节点的信息输入框中

然后点击

插入

即可

图4 配置客户端工作流程

添加完成后选择

保存

”,

生成边缘计算的配置文件

配置客户端联动界面如图7所示

左边显示创建好的联

动任务

右边是输入联动任务的操作界面

本配置客户端将

联动任务拆分成监测设备和联动设备

当监测设备的目标值

达到阈值时触发联动设备动作

添加联动任务的方法与添加

边缘计算方法相似

即插入

保存

[6-7]

2.2 感知层配置实现

感知层主要负责识别网关连接的设备并采集数据

本设

根据配置客户端的工作流程

设计配置客户端各界面

客户端设备管理界面设计如图5所示

界面第一行输入框为

网关的参数信息

这些参数大多在阿里云物联网云平台创

建网关设备时生成

是网关连接阿里云物联网平台的唯一

身份认证

三元组

)。

填写完参数后需要点击按钮更新并保

存网关信息

界面左下部分的区域为设备参数输入框

52

物联网技术

2022

/

6

计使用多个线程采集不同接口下连接设备的数据

首先读取

配置客户端生成配置文件

判断类型后将数据分别复制到

不同的JSON对象中

分完大类后将提取每个类型的小类

按照配置文件的设计

Modbus_RTU_json对象的下一层是

485_json和PLC_json

故将Modbus_RTU_json对象解析成

485_json和PLC_json对象

485_json对象向下为各COM口

的对象

即所有设备信息的上一层

创建4个COM接口的

JSON对象存储设备信息

得到每个类型的设备信息JSON

数组后

将JSON数组内的设备信息取出存入对应的接口链

表中

每个设备的信息均存放在链表节点的json_data内

备信息提取完成后

各接口的采集线程开始工作

等待接口

的轮循时间

到达时间后开始判断每个设备的采集周期是否

到达

若到达采集周期

则按照当前设备节点的信息创建串

口或Socket连接

采集设备数据

采集后存储到当前设备链

表节点的数据缓存区即可

[8]

数据采集流程如图8所示

图6 配置客户端边缘计算界面

图7 配置客户端联动界面

图8 数据采集流程

Reliable Transmission

2.3 数据处理层配置实现

感知层采集到数据后

根据配置文件的内容判断是否对

采集的数据包进行协议解析和数据处理

若需处理

数据处

理程序按照当前线程的通信协议类型进行协议解析

解析完

成后

根据当前链表节点的信息判断是否需要其他处理

后将数据存储到链表缓存区

等待边缘计算层使用

数据处

理模块流程如图9所示

图9 数据处理模块流程

2.4 边缘计算层配置实现

将边缘计算需要的公式在配置客户端上按照规定方法写

生成的边缘计算配置文件将被传入网关指定文件夹内

在网关程序运行之初

将文件读取到程序缓存中等待使用

此设计将边缘计算的公式分解成两个一组的计算节点

便于

长公式的计算

数据处理层已将数据解析完成并存储到每个

设备的链表节点缓存中

存储时按照寄存器地址顺序进行

链表节点中还有关于设备寄存器地址和寄存器标识符的映射

关系表

因此在使用这些数据时可以直接用寄存器标识符来

调用数据

[9]

2.5 传输层软件设计与实现

阿里云物联网云平台提供基于设备端SDK开发

以在网关程序开发中结合云平台设计开发者使用的设备端

SDK

实现网关与物联网云平台的数据互通

子设备接入

云平台通过网关设备上报

网关设备会根据读取的配置客户

端的配置文件获取需要连接云平台的子设备数量

并且获取

每个子设备的三元组

在云平台创建设备生成的设备身份信

),

通过网关向云平台报备子设备并建立拓扑关系

子设

备可通过网关上发数据

本设计选择C-SDK进行网关开发

C-SDK安装完成后可使用其提供的API与云端通信

传输

其规定格式的数据包至云端

[10]

业务逻辑

SDK

HAL关

系如图10所示

2.6 应用层软件配置实现

应用层主要具备实时云动态曲线显示功能

手机端动态

曲线显示功能和远程控制终端设备功能

应用层的云端动态

2022

/

6

物联网技术

53

Reliable Transmission

曲线展示在阿里云物联网云平台已有工具可实现

只需配置

使用即可

手机端的动态曲线展示选用微信小程序实现

微信小程序上

可以使用云平台提供的云端SDK API实现云

平台的设备属性设置

设备服务调用

设备信息获取等功能

之后即可在微信小程序上实现物联网云平台的功能

微信小

程序可通过调用云平台的服务调用功能实现远程控制

控制

过程如图11所示

图10 业务逻辑、SDK、HAL关系图

图11 服务器远程控制设备

3 结 语

本文针对目前网关数据采集中协议转换复杂

难以复用

的情况

对网关整体框架进行设计

并通过引入分层的思想

将物联网网关整体架构分为5个层次

感知层

数据处理层

边缘计算层

传输层和应用层

实现了根据实际需求结合配

置客户端进行输入文件参数

数据协议参数

设备信息

缘计算公式等功能

使网关的利用率以及使用灵活度得到了

极大提高

具有较高的工程应用价值

参考文献

[3]沈文.基于边缘计算的自适应数据采集物联网关的研究与设计[D].

株洲

湖南工业大学

2020.

[4]陈梦亮.基于嵌入式Linux的物联网网关设计与实现[D].长沙

湖南大学

2020.

[5]杨艳.智慧茶厂的物联网网关系统设计与实现[D].长沙

湖南师

范大学

2019.

[6]张洪芳.物联网技术研究综述[J].中国新通信

2019

21

16

):

40.

[7]王宽.矿用融合网关设计及关键技术研究[D].北京

中国矿业大

2019.

[8]梁业彬.基于OpenWrt的智能家居通用网关的设计与实现[D].济

山东大学

2018.

[9]中华人民共和国科学技术部.

十三五

先进制造技术领域科技

创新专项规划

选编

[J].中国计量

2017

4

12

):

9-20.

[10]张艳玲

田军委

柯成虎.嵌入式智能家居物联网网关系统设

计[J].物联网技术

2016

6

8

):

105-107.

[1]赵峰.面向医疗的统一物联网网关的设计与实现[D].北京

北京

邮电大学

2020.

[2]孙常青

郑富全

胡代荣

等.基于云的工业物联网网关设计与

实现[J].信息技术与信息化

2020

45

12

):

166-168.

上接第50页

所提出的MIMO天线适用于国内外大部分5G-IoT应用

[10]

参考文献

2021

11

6

):

35-36.

[6]丁志清. 5G移动终端的紧凑型多频段MIMO天线研究[D].南昌

华东交通大学

2019.

[7]周晋

李建军

王锐.工业物联网无线化趋势浅析[J].物联网技

2021

11

6

):

84-86.

[8]丁志清

邢贝贝

姚婷

等.一种5G手机的紧凑型16单元多

频MIMO天线[J].太赫兹科学与电子信息学报

2019

17

6

):

1017-1022.

[9]邓开连

刘晓洁

高生

等.浅析5G技术在智能可穿戴设备中

的应用[J].物联网技术

2021

11

6

):

65-67.

[10]虞成城

任周游

赵安平.一种用于5G移动通信终端的双频

MIMO天线系统[J]. 微波学报

2019

35

6

):

40-44.

[1]麻鹏程

张馨丹.5G无线接入网络架构的设计探究[J].中国新通

2021

23

12

):

13-14.

[2]刘智臣.一种基于5G云化机器视觉的垃圾分拣系统研究[J].物

联网技术

2021

11

6

):

90-91.

[3]黄剑.浅析5G技术对工业互联网应用的影响[J].信息系统工程

2021

34

4

):

13-15.

[4]郝建军. 5G时代物联网前景展望[J].单片机与嵌入式系统应用

2021

21

7

):

3.

[5]王磊. 5G物联网场景下的SPN网络建设策略探讨[J].物联网技术

作者简介

丁志清

1994

—),

硕士研究生

研究方向为MIMO天线

王三山

1989

—),

硕士研究生

讲师

研究方向为物联网应用技术

54

物联网技术

2022

/

6

本文标签: 设备网关数据计算配置