基于LoRaWAN-Server的态势呈现平台设计

2020-10-12 14:44杨心元杜丹王凯
计算机与网络 2020年16期
关键词:物联网

杨心元 杜丹 王凯

摘要:基于LoRaWAN-Server,设计了一套由服务器、应用服务器及Web前端组成的态势呈现平台,介绍了系统的总体设计思路,以及系统服务器、Web前端的具体设计和实现。通过搭建试验验证系统,对LoRaWAN-Server以及前端处理能力进行测试试验,有效证明了LoRaWAN-Server处理多终端接入和管理的优势。系统充分发挥了LoRaWAN-Server在大规模组网、呈现服务等方面突出的优点,对未来物联网系统的设计、开发和部署具有一定的参考意义。

关键词:LoRaWAN-Server;物联网;态势呈现

中图分类号:TP393文献标志码:A文章编号:1008-1739(2020)16-55-3

0引言

随着科学技术的发展以及现代社会的需求,信息化平台已成为互联网发展的一个重要方向,态势总览与指挥控制平台系统能够广泛应用于城市管理等多个领域。高品质的大数据可视化分析决策系统,拥有悦目的视觉设计和复杂的计算程序,与最新的前端呈现技术相结合构建出效果非凡的系统[1]。与此同时,随着物联网在世界各领域的蓬勃发展,更加符合物联网的通信技术的研究和实现[2]。

LoRaWAN-Server是LoRaWAN网络中连接网关和前端服务平台的协议处理器,提供终端节点接入鉴权、网关接入控制、LoRaWAN协议解析、数据传输、数据加解密及数据格式转换等功能,是物联网中不可缺少的一个关键服务器[3]。

1系统总体设计

系统采用了标准的LoRaWAN通信协议,相比于网状网络,LoRaWAN网络架构是一个典型的星形拓扑结构,消除了同步开销和跳数,具有结构简单和低功率等特点[4]。

系统主要由终端节点、基站、LoRaWAN-Server、前端服务器以及前端构成。终端节点上报位置等参数信息;基站负责转发终端节点消息至LoRaWAN-Server;LoRaWAN-Server主要完成用户和设备的管理、通信协议的解析、网络安全和网络管理及采集信息等功能;前端服务器主要提供消息交互接口和地图服务。前端主要包括信息呈现、设备管理前台操作等功能,系统构架如图1所示。

2系统软件设计

系统软件主要包括数据接口和可视化界面,系统软件设计如图2所示。

2.1數据接口设计

数据接口设计包括数据库接口、WebSocket接口和MQTT接口三部分。

(1)数据库接口

服务器具有2个数据库管理软件,PostgreSQL用来存储设备数据,前端通过此数据库接口获取终端上报的位置、运动以及健康信息,PostgreSQL对数据完整性和严肃性要求高,对商业数据逻辑封装性好,尤其是地理数据、密集运算及重型负载应用等优势特别明显,对于处理数据量大且无法预测的情况,PostgreSQL能够稳定存取[5]。另一个数据库Redis,用来存储会话(如节点地址及入网密钥等),前端通过此数据库接口进行终端入网管理,基于Redis数据库设计轨迹数据的存储方案及数据存储结构,提高了在线平台的实时存储效率[6]。数据库管理软件数据来源如图3所示。

(2)WebSocket接口

服务器中内嵌WebSocket服务器,前端建立WebSocket连接与服务器通信,实现服务器浏览器间异步、双工。在通信过程中,WebSocket协议头最多占用14 Byte,且不用定期主动轮询,从而节省带宽占用、节约终端电量及实现高效传输,客户端对话模拟演示如图4所示。

(3)MQTT接口

服务器收到数据后,连接到MQTT代理服务器,前端通过MQTT代理服务器与服务器通信。采用发布/订阅模型的MQTT协议是一种轻量级的消息传输协议,具有低功耗、节省流量和可扩展性强的优点[7]。

2.2可视化界面设计

可视化界面设计包括二维地理信息和三维仿真模型两部分。

(1)二维地理信息

终端节点规模大、数量多、分布广,面临直观管理挑战。地图分布实际利用TWaver GIS结合Tomcat地图服务,构建二维地图展示场景单位、设施的数据状态、实时跟踪节点和精准定位。兼容OpenstreeMap,BingMap,GoogleMap,MapABC等主流地图,可实现不同应用场景,对应不同展示效果的功能。二维地图展示与节点呈现结构模块如下:

①init模块:主要完成地图的初始化功能。initMap模块用new twaver.gis.Map(container“,myMap”)创建地图,并应用map.addLayer(“mapABC”, GISConsts.EXECUTOR_TYPE_MAPABC)加载mapABC地图。

②get模块:$.ajax (“rxframes”,{type:“GET”,data:{_filters,_page:“1”},function(){//parseFun()}}),从PostgreSQL数据库获取终端节点信息。

③Show模块:用creatTopo主要完成节点拓扑呈现。new twaver.ElementBox()创建network视图对象,new twaver.vector. Network(box)创建box容器,new twaver.gis.Adapter()创建适配器对象,adapter .bindNetworkAndMap (network, map )绑定network和map,new twaver.gis.geometry.GeoCoordinate(lat,ln);new twaver.Node(); Box.add(node); node.setClient(GISSettings. GEOCOORDINATE,geo)将含有经纬度信息的节点放在box中。二维地图展示场景如图5所示。

(2)三维仿真模型

态势数据挖掘分析可视化平台,结合二维地理信息系统可视化技术与三维地理信息系统可视化技术的优势,以最佳方式实现环境可视化和态势可视化。借助二维视图进行准确标绘,利用三维视图进行更加逼真的态势显示。TWaver MONO(HTML5 3D)技术以三维仿真模型,呈现从九轴传感器所获取的运动姿态以及终端运动外形、空间位置,支持全球30 m精度高程地形。

3系统测试与分析

搭建系统演示环境,并对系统的功能和性能参数进行了测试,启动终端设备上报位置信息、运动信息和环境数据,通过基站转发数据至服务器,前端通过数据库接口做节点呈现。测试时,同时开启200个终端发送数据,测试结果如表1所示。

通过测试结果可以看到,在不同距离,同时确保多个基站能收到所有终端数据时,服务器丢包率为0、前端展示节点率100%,有效证明了LoRaWAN-Server在多节点稳定接入以及态势平台稳定呈现的优势。

4结束语

根据现代应用场景多终端接入、环境可视化的需求,提出了基于LoRaWAN-Server的地图服务与三维视图解决方案,设计了基于LoRa的终端和基站设备,并搭建了系统演示环境,对LoRaWAN-Server的服务性能进行了测试。通过测试结果可以看到,与传统Web服务器相比,LoRaWAN-Server具有支持网络安全、多节点稳定接入的优点,更加适用于物联网的部署[8],并且该系统具有很强的场景适应性,根据用户提供不同的服务,相信在以后的应用过程中,应用领域会越来越广泛。

参考文献

[1] ALESSANDRA S E.Augmented Humanity Using Wearable and Mobile Devices for Health and Wellbeing[J]. International Journal of Human-Computer Studies SpecialIssue,2017,2(4): 1-41.

[2]刘映江,胡泽.基于LoRaWAN物联网技术的农田环境监测系统的设计[J].数字通信世界, 2017(12): 120.

[3] TAHSIN C M D,ETHIOPIA N.Security of Join Procedure and Its Delegation in LoRaWAN[J].Procedia Computer Science,2018(7):204-211.

[4]侯义斌,王进.LoRaWAN技术研究[J].读书文摘,2017(13):38.

[5]刘鑫.MySQL和PostgreSQL的对比选择[J].沈阳工程学院学报(自然科学版),2011,7(2):171-173,177.

[6]閆密巧,王占宏,王志宇.基于Redis的海量轨迹数据存储模型研究[J].微型电脑应用,2017,33(4):9-11.

[7]林浒,张家铭,杨海波.基于MQTT协议的即时消息业务设计与实现[J].计算机系统应用,2017,26(3):219-224.

[8] MATTIA R,PAOLO F. Evaluation Of the LoRaWAN Solution for Distributed Measurement Applications[J]. Instrumentation and Measurement,IEEE Transactions,2016,5 (6):37-41.

猜你喜欢
物联网
基于高职院校物联网技术应用人才培养的思考分析
基于LABVIEW的温室管理系统的研究与设计
论智能油田的发展趋势及必要性
中国或成“物联网”领军者