APP下载

可视化多协议网络数据传输系统*

2021-12-02孙国辉李佳奇李超民

科技创新与应用 2021年34期
关键词:配置文件网关解析

孙国辉,李佳奇,李超民

(哈尔滨理工大学 计算机科学与技术学院,黑龙江 哈尔滨 150000)

随着无线通信技术、计算机技术、嵌入式技术、传感器技术等不断地发展,物联网各方面的技术也在日趋成熟,目前已经被广泛地应用在智能家居、智能交通、智慧农业、智慧城市、物流仓储、公共安防等诸多领域。物联网正在以全面感知、互联互通、智能处理等为特征,实现人与人、人与物和物与物之间的通信[1]。

目前,多协议网关产品在国内各大公司已经出现。2019 年9 月,小米公司推出了全新的米家智能多模网关,相对于前期网关产品,这套网关加入了对蓝牙协议的支持,成为新一代智能家庭控制中心。网关可以支持三种通信协议:ZigBee、WiFi、BLE&BLE。所在只需一个网关,就能够实现小米智能设备如小爱同学、小米米家智能门锁、米家LED 吸顶灯、米家空调伴侣2、米家无线开关、米家LED 吸顶灯等智能家居产品,打造强大的智能家庭系统实现定时开合窗帘、播放音乐、开门自动亮灯或一键关闭家中指定灯与电器。深圳奥卓领航有限公司推出的AnyPi 多协议网关解决方案,是一种支持Python/Javascript 可编程网关解决方案。这种IoT网关为异构连接、边缘计算、低功耗无线设备而设计,可用于大规模的低功耗无线设备的部署,实现Zigbee/BLE/WiFi/Lora 到互联网云服务之间的桥接,网关将采集的数据最终传输至AnyPi 的云服务。

这些网关在应用方式上分为两种,一种只支持自己的物联网产品族群。另一种是需要专业软件开发人员进行二次开发的可编程网关,编程语言常见为Python 或Javascript。而对于某些需要快速设计、快速实施的应用场景并不实用[2]。对于某些应用场景,存在如物联网产品设计开发过程中需要快速开发原型,物联网技术教学过程中需要的数据传输服务支持,学生或电子技术爱好者自制智能终端需要快速组网并接入开放设备云平台等此类需求。低成本可配置多协议网关系统是有应用前景的。

此外,物联网项目实施过程中,采用自行开发专用的网关技术进行协议转换存在大量的重复开发,这种过程会对人力物力造成浪费,导致增加生产成本[3]。

针对以上分析,本项目设计一套开放的、可配置的、可视化的多协议网络数据传输系统,包括硬件和软件设计方案。主要功能设计用于物联网系统设计中将不同通信协议所采集的数据汇聚、解析、上传到服务器的网关与系统的应用。同时,为使用者提供灵活的配置方式,使用者可通过手机端APP 快速建立非加密数据解析配置文件,下载至网关进行数据解析。同时可以根据需求在APP 端创建数据图形化配置文件与数据上传接口配置文件,用于数据的实时图形化展示与上传。使用者也可以对所监控的数据设置阈值与报警。在界面设计过程中,使用者可根据自己需求进行图形组合,灵活地进行自定义界面设计,并可将界面配置文件传输给网关系统进行实时展示。

1 系统整体结构设计

可视化多协议数据传输系统由硬件网关、可视化多协议数据汇聚系统、网关辅助APP 三部分组成。系统架构图如图1 所示。

图1 系统架构图

网关系统分为软件和硬件两个部分,它的软件部分主要分为应用层、协议网关抽象层和操作系统层。层次性的划分,使得每个层次均有其相应要实现的功能。其中:

(1)操作系统层:这一层主要实现的是当设备启动后执行操作系统,从而完成相关联的硬件的驱动,这样就可以随时等待连接来执行命令。

(2)应用层:这一层主要实现的是为用户提供交互平台,这里提供手动开启网关,更改网关配置,更改数据显示方式和数据封装等面向用户层面的功能。例如通过底层ZigBee 协议栈传输上来的数据包想要封装成Http 包的形式传输出去,就需要去掉其各层添加的头部或尾部信息,从而解析出真正传输的有用数据,再在数据中添加Http 包头信息,再封装成MAC 层分组、物理层分组、请求行以及请求头部等信息,最后通过WiFi 将数据传输出去。这一层是项目研究的重点方式,即如何实现有效的多种协议转换。

(3)网关抽象层:这一层就是为网关提供各种协议和服务所需的各种构件,同时为上层应用提供服务。

系统的具体实现流程是传感器通过ZigBee 或蓝牙网络向硬件网关传输数据,硬件网关关联的ZigBee协调器或蓝牙模块读取到该数据,并根据手机端APP所发送的配置文件解析该数据,同时通过网关汇聚系统二次解析处理后实时显示在网关配套的显示屏幕上。其中,系统的可视化的展示可由使用者设置,网关屏幕所展示的图形可通过APP 所生成的配置文件进行设计,如形状、位置、颜色等。其中,采集到的传感器数据也可根据网络配置文件的设置,进行封装并定向传输至远程服务器,具体的数据交互流程如图2 所示。

图2 可视化多协议数据传输系统数据交互图

2 系统功能设计

物联网是将标准工业设备、射频识别(RFID)、外围硬件系统等按约定协议进行通信,以实现智能识别、数据采集、定位、跟踪、监控和管理的一种网络技术。而构建物联网的核心就是物联网软网关,网关主要实现异构网络的通信,转发等功能,即按特定需求设计的网络协议的转换器[4]。

网关对数据的操作可以分为三类:数据接收、数据发送和数据显示。数据接收根据技术人员对网关启动前的人工配置,对各种协议传来的数据进行接收和解析。数据发送部分根据前期设定,将解析完成的数据重新封装,传送给对应的上位机。数据显示将解析好的数据用文本和图形两种方式实时地在屏幕上显示出来。网关系统功能实现划分如图3 所示。

图3 系统功能框图

针对网关需求的分析,对系统具体功能描述如下:

2.1 硬件网关

硬件网关主要是硬件解决方案,实现多协议数据的汇聚、转换和显示等功能,其构成包含微型电脑、触摸屏、ZigBee 模块、蓝牙模块、WiFi 模块、组网开关等。硬件网关的主体设计如图4 所示。

图4 硬件网关设计图

2.2 网关汇聚系统

网关汇聚系统主要是软件解决方案,包括硬件控制与APP 进行交互。具体实现配置、控制、报警等信息的交互,实现远程监控和远程配置。具体功能实现TCP/IP、Http、串口通信功能,数据格式配置文件管理,UI 配置文件管理,数据解析与实时数据图形化,数据封装与上传,报警管理。服务器端预期效果图如图5 所示。

图5 网关设置与运行图

2.3 网关辅助APP

创建数据解析配置文件,创建数据二次封装传输配置文件,创建图形显示配置文件,传输配置文件。

手机APP 预期效果图如图6 所示。

图6 手机APP 端设置图

3 技术方案

系统拟采用的技术方案及可行性分析如下:

3.1 移动端辅助APP

APP 采用Android 平台原生开发,配置文件的文件格式为XML,移动端可通过蓝牙或WiFi 与网关进行连接并传输已生成的配置文件。

3.2 网关系统

基于 Android Things 平台开发,Android Things 支持物联网通信协议 Weave。Weave 是一个不依赖底层的通信协议,可以运行在任何常见的物联网通信协议之上,如WiFi、Zigbee 等。串口通信基于9326 芯片及其官方库,该方案的优点是传输稳定,可进行数据加密传输。蓝牙与WiFi 数据传输使用Android6.0 以上版本系统原生库实现。网络传输采用Okhttp 第三方库实现。数据可视化生成方面,在Processing 第三方图形库的基础上对其方法进行二次封装,这种方式的优势是运行速度快,图形构建更灵活。

3.3 网关硬件

网关的智能处理系统采用树莓派3B,外接微雪ARPI600 网络模块扩展板,ZigBee 模块使用Xbee S2B Pro,蓝牙、WiFi、以太网模块已由树莓派集成,显示屏使用树莓派官方7 寸显示屏,串口通信接口外接9326芯片进行数据加密封装,开关与其他传感器使用相应的模块接入。

从硬件设计和实现层面,主要选择Android Things进行开发,所有整体架构是依据Android 的MVP 设计模式,配合View Model 而构成MVVM 模式的设计方案。其中,界面设计由Layout 编程包的xml 完成设置,显示视图。用户交互是用Activity 实现,后台运行的耗时和复杂的算法处理用Service 实现,同时采用图形转换类和硬件驱动类等进行配合以实现对于参数的可配置,数据的实时接收。在互不干扰的前提之下保持接收数据,解析数据,发送数据三条工作线程各自执行,互不影响。

解析数据工作分为两部分,一是根据设置对相应协议进行解析,将解析数据存入到线程安全的数组中;二是应根据数组中的数据以及相应配置封装成相应图形,根据当前已有的图形个数等信息设定出当前图形的位置和大小。并在实例化后将其加入图形列表中以便后续的绘制操作。

项目主要创新处是开发一套开放的,灵活可配置的多协议网络传输系统,为物联网项目架构提出低成本的、开放式的解决方案,主要的创新点有,设计并实现开放式的多协议网关,可用于Zigbee、蓝牙、WiFi、以太网、串口之间的协议转换及数据传递;设计并实现可配置且易用的图形化、可视化的数据展示平台;网关的多协议数据传输可通过手机APP 进行远程配置。

4 结束语

项目设计构建网关硬件,设计数据传输协议,构建物联网多模网关,设计并实现可配置图形生成程序,设计数据分析、封装配置文件。设计兼容性较好,易于操作的手机端辅助APP。实现以易于操作、兼容性好、可快速配置、图形设计自由的多模网关及系统。

猜你喜欢

配置文件网关解析
基于Docker的实时数据处理系统配置文件管理软件的设计与实现
基于FPGA的工业TSN融合网关设计
一种主从冗余网关的故障模式分析与处理
从Windows 10中删除所有网络配置文件
用软件处理Windows沙盒配置文件
互不干涉混用Chromium Edge
天地一体化网络地面软网关技术及其应用
睡梦解析仪
车联网网关架构的设计
电竞初解析