资源中心

Resource Centers

2022-10-21

解决方案|三维海量目标实时监测系统

随着计算机软硬件技术的飞速发展,数据可视化已成为各行业数据展示和业务流程中不可或缺的重要环节。而可视化作为态势数据生态链的“最后一公里”,是业务员在相关系统中最能直接感知信息的重要环节,通过对目标数据进行接收存储、分发、预处理及可视化展现,充分利用态势显示来提高业务员的数据理解与预警能力,协助业务员对数据进行分析与决策,是提高业务人员工作效率的重要手段之一。

三维海量目标实时监测系统作为可视化软件大家庭中的一员,它以二三维一体化地理信息平台为基础,以数据为驱动,支持加载海陆空天目标的实施监测数据,通过标绘重点设施与区域,结合实时显示动态目标的轨迹信息与卫星状态,以及提供的历史回放功能,构建了可对目标进行实时监测的综合态势预警系统。



系统设计方案


01 系统架构

本项目根据已有系统结构和后期项目整合低耦合的原则,整体采用微服的架构模式,总体划分为 5 个模块:注册中心、网关服务、目标数据接收和分发、基础数据服务及目标态势展示与监控服务。

三维海量目标实时监测系统 - 系统架构图.jpg

△ 系统架构图

其中,服务端都采用 SpringBoot 作为基础框架,在其上整合 MyBatis、MySQL 等框架。SpringBoot 提供一个快速的 Web Application 实现框架,Redis、MySQL 等提供业务数据存储,MyBatis 则提供操作数据库的 API 封装接口。前端 UI 使用 Vue 作为基础框架,GIS 展示使用 FreeXGIS Online(恒歌地理信息平台-网页端)——支持多行业应用的在线版二三维 GIS 可视化地理信息平台。

平台网页端以无插件、轻量级的系统运行方式,广泛应用于高效的数据管理、展示及应用,支持包括地图数据、三维实景数据、互联网数据等多种时空数据的加载与展示,同时扩展了包括卫星、态势、气象环境等多种业务应用场景,用于满足用户的多元业务展示与应用的需求。



02 设计原则

为了保证数据及系统的稳定与安全,平台遵循可靠性、安全性、维修性、测试性和保障性等设计原则。


系统功能模块

01 注册中心

注册中心提供服务的发现与注册功能,注册中心可实现将各个业务模块的服务信息自动注册,并定时更新服务信息。同时,对外提供获取可用的服务实例信息的 API 接口,用户可通过该接口拿到当前注册中心所有可用的服务信息。


02 网关服务

提供智能路由与负载均衡功能,为用户通过界面访问业务数据提供桥梁。

智能路由:可实时接收并转发所有内外部的客户端调用。

负载均衡:支持限流控制,在服务访问量大时将访问分摊到多个服务单元进行执行。


03 目标数据接收与分发

目标数据接收与分发模块是整个项目中的核心模块,它给目标态势展示模块中的实时态势提供主要的数据支撑

目标接收模块:负责实时接收目标的数据,依据报文格式进行解析,对解析出的数据进行存储并通过分发模块,将数据信息传递到态势页面,进行业务呈现。

目标分发模块:它是态势部分与数据实时接收的桥梁,通过与态势展示模块建立 websocket 通信,在实时数据后台业务处理完成后,即将数据发送到态势页面进行业务展示。


04 基础数据服务

该模块是项目的基础模块,负责目标的历史数据、标记标绘数据、样式数据的增删改查。接口设计遵循 Restful 风格,对外提供统一的 Restful 风格接口,并且项目引入 Restful API 管理框架 swagger,对整个接口进行统一管理。


05 目标态势展示与监控服务

目标态势展示与监控服务模块是项目的业务展示部分,通过可视化技术手段,对业务处理过程进行可视化监控,对过程数据和结果数据进行可视化展示。

1. 目标态势显示

➢ 具备多种目标类型模型,支持卫星姿态及成像展示;

➢ 针对目标类型,支持目标的发射点及落点标记、预报功能,并提供属性信息展示;

兵棋推演.png

△ 目标位置信息及事件预报

➢ 针对卫星姿态,可获取卫星的弹道和载荷信息,依据数据进行态势绘制;

卫星仿真.png

△ 卫星位置信息及轨道绘制

➢ 支持显示目标射向,依据射向信息绘制目标射向态势;

➢ 支持对属性显示信息样式、态势中目标元素样式的修改。


2. 目标实时位置监测

➢ 具备实时接收目标属性数据、获取位置信息的能力,对目标实时位置轨迹进行绘制,对目标当前位置自动标记;

对海攻击-2.png

△ 目标位置信息及轨迹绘制

➢ 支持将目标属性数据流累积处理,实时绘制轨迹;支持设定追踪目标,跟踪目标并绘制轨迹;

➢ 提供动画轴功能,拖动动画轴改变播放位置,可对当前态势演播进行快进或快退。

➢ 支持以表格、图表等多种方式展示目标的实时位置信息及属性信息。


3. 目标监测预警

➢ 提供实时预报发现新目标的功能,并以消息弹窗形式或语音播报等其它形式的提示;

➢ 能够实时接收声、光、电预警信息,针对不同预警类型,发出不同预警提示;

➢ 支持设置预警范围,提高态势警戒能力。

➢ 支持以表格、图表等多种方式展示监测预警的信息。

综合态势-压缩.png

△ 目标监测预警及提示



关键技术


01 基于多线程的大数据处理

多线程(multithreading),是指从软件或者硬件上实现多个线程并发执行的技术,具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。

本项目在解决目标数据体量大、量级高的问题时,采用了多线程处理技术,有效提高了资源使用效率、提升了系统的利用率。

针对量级很高的数据处理,按照分步多线程的方式进行同步处理以提高数据的处理速度,以目标轨迹数据为例,为了提高服务的响应速度和请求效率,去线程池获得新的线程分别处理获取到的动目标轨迹数据,再去线程池获得线程同步去转换所需的位置数据格式,并进行异步绘制加载,以此类推达到对量级比较高的数据的分步,多线程处理,在保障 UI 界面操作流畅性的同时,可以高效绘制目标的轨迹,进行态势呈现。



02 基于前端浏览器的大数据缓存

IndexedDB 是一个事务型数据库系统,用于客户端存储大量结构化数据,有标准的数据库结构体系。同时,也是浏览器提供的本地数据库,可以被网页脚本创建和操作。IndexedDB 提供查找接口,建立索引,使用索引来实现对数据的高性能搜索。

在数据可视化等需要产生或存储大量数据的项目中,每次请求会消耗较大性能,从而影响用户体验,使用 IndexedDB 不仅能存储海量数据,还可以解决免去二次加载时网络请求的时间。在进行态势展示过程中,目标数据体量大,如果展示较长时间的数据,势必会多请求数据,基于网络等多种因素,展示效果会大打折扣。

基于这种情况,使用 IndexedDB 数据库进行数据缓存,针对目标数据进行合理的数据结构设计和相应的数据处理逻辑,在满足用户态势展示形式多样的同时,又能保证效率。


更多服务

More services