基于Unity动态生成三维场景的仿真系统及其实现方法

文档序号:9327056阅读:1642来源:国知局
基于Unity动态生成三维场景的仿真系统及其实现方法
【技术领域】
[0001]本发明属于电力系统通信仿真技术领域,具体涉及一种基于Unity动态生成三维场景的仿真系统及其实现方法,适用于电力通信仿真系统的各类通信机房及通信传输设备的三维场景仿真,主要用于对电力系统通信工作人员、通信设备运行维护和检修试验人员的培训。
【背景技术】
[0002]随着电力系统自动化技术的发展,电力系统通信网络成为信息传输和自动化控制的关键因素。这就要求用于电力系统通信工作人员培训的仿真培训系统要更加现代化,更加切合实际,从而达到高效实训的培训目的。
[0003]目前的通信仿真软件系统中,主要是基于通信原理进行虚拟网络仿真,其无法真实模拟出在网运行的电力通信机房和通信设备所处的实际环境和现场的实际情况,培训中不利于通信工作人员更好的了解现场的通信机房和通信设备。而在通信机房现场环境下进行培训不仅容易损坏昂贵设备造成很大经济损失,而且容易使在网运行的业务中断引发不可预估的严重后果。但目前基于真实的现场环境并且可动态生成电力通信三维场景的可视化仿真培训系统尚不存在。

【发明内容】

[0004]本发明所要解决的技术问题是提供了一种观测直观、实时收发仿真数据、与实际电力系统通信工作紧密结合的基于Unity动态生成三维场景的仿真系统及实现方法。
[0005]本发明采用如下技术方案:
一种基于Unity动态生成三维场景的仿真系统,其包括三维仿真模型库、场景配置文件库、三维场景仿真模块和数据通信模块;所述三维场景仿真模块包括场景显示模块和场景操作模块,所述场景操作模块的控制输出端接入场景显示模块的指令输入端;所述三维仿真模型库和场景配置文件库的输出端接所述场景显示模块的数据输入端,所述场景操作模块经数据通信模块与外部的设备仿真程序相通信。
[0006]所述三维仿真模型库包括通信机房模型库和通信设备模型库;
所述通信机房模型库包括省级调度中心通信机房三维模型、地市级调度中心通信机房三维模型、110KV/220KV/500KV等各级厂站通信机房三维模型;所述通信设备模型库包括通信传输设备机框及单板三维模型、路由交换设备三维模型、通信电源设备三维模型、通信终端设备模型、配线架三维模型、通信纤缆三维模型以及仪器仪表三维模型。这些模型库中的模型以模型文件的形式存放在仿真系统资源文件库中。
[0007]所述场景配置文件库由自定义配置文件组成,该配置文件因通信仿真培训案例的不同而不同,这些自定义配置文件存放在仿真系统配置文件库中。
[0008]所述三维场景仿真模块包括场景显示模块和场景操作模块,该模块是真实通信机房的虚拟化可视化仿真场景,培训人员可在该场景中完成巡视和操作设备等功能。
[0009]所述场景显示模块根据通信仿真培训案例的需求,从场景配置文件库中动态读取并解析指定的自定义配置文件,根据解析后的数据,从三维仿真模型库中调取相关三维模型文件,从而显示出三维场景仿真模块。
[0010]所述场景操作模块用于实现对三维场景仿真模块中设备模型的操作功能。
[0011]所述数据通信模块由实时数据库和消息接收发送程序组成,该模块为三维场景仿真模块和外部设备仿真程序之间的数据通信提供了接口,是三维场景仿真模块能够实时获取外部仿真设备的运行状态,并据此设置和修改三维场景仿真模块中各个三维模型的状态,与此同时,三维场景仿真模块中的场景操作模块所做的操作信息也通过所述数据通信模块发送给外部的设备仿真程序。
[0012]利用基于Unity动态生成三维场景的仿真系统的实现方法,其实现步骤如下: 步骤1、创建三维模型:
具体创建包括:通信机房、通信设备的三维模型,所述通信设备包括设备子架、单板和光纤;
1-1、依据通信机房和通信设备的三维尺寸数据及机房结构图,在3DMAX建模工具中按照1:1的尺寸创建通信机房和通信设备的三维模型;并依据通信机房内饰图、通信设备外观图和通信设备布局图,创建通信机房、通信设备的材质来渲染通信机房和通信设备的三维模型效果;
1-2、在Unity中创建资源文件夹,并分类为通信机房模型库和通信设备模型库;将在3DMAX中创建好的通信机房三维模型文件拖入到通信机房模型库中,将通信设备三维模型文件拖入到通信设备模型库中;
在Unity中设置通信机房模型库中每种规格的机房的三维模型初始位置坐标,设置通信设备模型库中每种类型的设备的三维模型初始位置坐标,将上述设置好初始坐标的通信机房模型和通信设备模型保存成为预设模型文件,并分别存到Unity的通信机房模型库和通信设备模型库中;
步骤2、在Unity中新建C#程序读取自定义配置文件,自动生成三维场景仿真模块:
2-1、在所述自定义配置文件中分层次定义机房类型、网元个数、每个网元的设备型号、设备每个槽位的单板型号;
2-2、读取自定义配置文件,解析出所述自定义配置文件中的如下:数据机房名称、设备名称、单板名称以及网元数量;
2-3、根据从自定义配置文件中读取到的机房名称、设备名称、单板名称以及网元数量,通过C#程序循环调用Unity中模型资源文件载入函数,从Unity中的通信机房模型库和通信设备模型库中载入之前预设好的模型文件;
步骤3、在三维场景仿真模块中新建监听线程,订阅实时数据库的消息频道,从外部的设备仿真程序获取生成三维场景仿真模块所需的外部实时数据,
3-1、三维场景仿真模块与外部的设备仿真程序,通过Redis数据库的“订阅/发布”机制进行消息和数据的传输,三维场景仿真模块根据所订阅的消息频道,监听接收外部的设备仿真程序发送来的消息,并根据消息中的内容,实时更新三维场景仿真模块中设备模型的指示灯的状态;
3-2、三维场景仿真模块接收来自外部的设备仿真程序的消息并进行解析,此解析出所述消息的协议格式为:“状态标志_故障类型_网元设备ID_设备槽位ID” ;
3-3、根据解析出的所述协议格式,判断外部仿真设备的运行状态是否正常,如异常则进一步确定故障类型和故障位置,最后通过三维场景中对应故障位置模型的指示灯显示其为告警状态,如正常则按正常状态的指示灯显示规则刷新三维设备模型的指示灯状态;
步骤4、在三维场景中操作设备或修复设备故障,并将操作信息发送给外部的设备仿真程序,进行仿真计算和判断:
4-1、在三维场景中根据告警指示,在相应故障位置查找引发告警的故障设备,并根据故障类型进行相应的修复操作;
4-2、完成修复操作后,三维场景仿真模块向外部的设备仿真程序发送操作消息,其包括修复设备的ID和操作的类型;其消息格式为:“操作类型_网元设备ID_设备槽位ID” ;
4-3、三维场景仿真模块中的监听线程,接收外部的设备仿真程序发送来的仿真计算结果:
若之前修复操作无误,则所述三维场景仿真模块中的监听线程会
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1