卢绪迪,郭艳利
(1.中集海洋工程研究院有限公司,山东 烟台 264670;2.鲁东大学 蔚山船舶与海洋学院,山东 烟台 264025)
海洋工程装备主要指海洋资源(特别是海洋油气资源)勘探、开采、加工、储运、管理、后勤服务等方面的大型工程装备和辅助装备,一般分为海洋油气资源开发装备、其他海洋资源开发装备、海洋浮体结构物[1-3]。海洋工程装备制造业涉及船舶与海洋工程、机械工程、通信工程、计算机科学与技术等多学科交叉融合,从技术到生产管理,单凭一己之力很难完成。我国海洋工程装备制造业起步较晚,尤其在高端海洋工程装备设计制造领域一系列关键技术难题亟待解决,但发展势头整体向好[4]。
海洋工程装备具有定制性、复杂性与专业性:一方面,受场地和安全管理要求限制,在大型装备交付之前,进行石油平台操作培训、安全演训时很难达到预期效果;另一方面,在向客户进行产品讲解、用户需求沟通及技术交流时,对接待人员专业知识及沟通能力要求很高,交流时间长,且有时效果并不理想。现如今,随着虚拟现实技术的发展,越来越多的行业引入虚拟现实技术以提高沟通质量、降低培训时间和人力成本、加强学习与理解深度[5-7]。针对海洋工程领域虚拟仿真系统的研究,2018年我国首个海洋工程数字化技术中心在天津正式建成,建立了海洋环境水力动力学和海洋工程装备模型[8];大连理工大学建立了基于DVS3D的流体与结构耦合作用仿真实验,构建了常见的水力学现象和海洋工程结构物[9]。青岛科技大学采用Unity3D技术构建了水下采油树操作培训仿真系统,实现了生产通道内的可视化模拟[10]。虚拟现实技术在船舶与海洋工程领域得到了广泛应用,但是针对自升式海洋平台的虚拟仿真系统鲜有报道[11-12]。
自升式海洋平台在海洋油气开发中不可或缺,且正朝着适用水深更深和大型化趋势发展,但其操作培训、安全演练和客户体验等存在高风险、高成本等特点[13]。为此,本文以TAISUN200B自升式海洋平台为基础,采用Unity3D软件和交互式技术,开发一种新型的多用途自升式海洋平台虚拟现实系统,并实现特色功能演练、在线维护,降低了开发成本和工作量,为海洋平台操作与安全演练、用户需求沟通和技术交流提供高效、安全的解决方案。
自升式海洋平台虚拟现实系统以TAISUN200B自升式海洋平台基础参数为支撑,基于Unity3D和VR技术开发,主要功能是实现平台漫游、模拟操作、故障处置及安全演练等。系统构架见图1,包括前端和后端2大部分:前端为虚拟现实交互环境,主要包括自主漫游、模拟操作、原理展示、故障仿真、灾害处置等模块;后端主要包括平台库、组件库、逻辑库和特效库等数据库。本系统通过后端数据库调用,完成平台模型拼接、作业场景部署、器件动作逻辑调用和设备运行逻辑调用等系统初始化。
图1 TAISUN200B自升式海洋平台虚拟现实系统构架
自升式海洋平台的模块组成、设备运行、作业场景等参数冗杂,对这些参数进行筛选和分类是建设本系统的基础和关键技术之一。对TAISUN200B自升式海洋平台虚拟现实系统在开发过程中所需的模型基础数据划分为模型组件、作业逻辑和情景特效等3类,针对每一类数据又进行了详细划分和设计。
为实现虚拟环境的高度还原,如模型组件等,在进行3D建模时需要根据功能要求、渲染等级、实现效果等采用分级处理,然后建立AutoDesk 3D Max模型轻量化及FBX模型导出规则和Assetbunle模型文件制作标准。标准包含的模型分为设备基本模型、房间门模型、设备碰撞模型、设备部署目标模型、预置视点模型、攀爬跳转节点模型、事件部署目标模型等。本文以事件部署目标模型制作标准为例进行具体说明。
事件部署目标模型中包含若干的空物体,每个空物体都代表有一个位置用于在场景中部署灾害等事件。该模型的建立须遵循以下标准:
(1)事件部署目标模型的父级位置和轴向应与该设备模型完全一致。
(2)事件部署目标模型中空物体的轴向需与即将部署的设备或事件对象轴向一致。
(3)模型须有唯一父级物体,导出FBX命名规则:设备名称_Special。
(4)个体预置视点模型命名规则: Special_节点编号(3位数,不足3位补0,如001)。
(5)父级物体中心位置与轴向和设备基本模型保持一致。
为有效存储数据和满足应用需求,必须构造最优的数据库模式,建立数据库及其应用系统。本系统以主要功能实现为导向,以构建的模型数据为基础,在系统后端部分建立组件库、逻辑库、特效库和平台库等4类数据库,对每一类数据库包含的内容进行详细设计,见表1。
表1 数据库内容设计
同时,进行数据库设计时还要建立统一的CFG配置文件编写规则,这些文件编写规则主要包括设备部署配置文件、器件动作配置文件、互动逻辑配置文件、事件管理配置文件、事件器件状态初始化配置文件、事件执行逻辑文件、Script文件下的机械动作脚本文件等。
本系统主要功能包括平台漫游、模拟操作、故障处置、安全演练及在线维护。具体原则如下:
(1)平台漫游:用户以第三人称视角全局俯瞰整个石油平台外观;以第一人称视角在石油平台甲板及内部工作区域漫游。
(2)模拟操作:用户对设备器件进行操作,反馈仪表显示状态及设备机构运行状态,驱动对应设备模型运行。
(3)故障处置:功能开始执行时,用户需配置模拟的故障;系统根据故障表现配置三维模型及后台状态初始化,再根据用户处理故障操作,对比故障处理流程,逐步反馈故障排查或处理操作后设备对应状态,最终接触故障状态。
(4)安全演练:功能开始执行时,用户在平面图中任意点部署灾情发生位置及大小级别,再根据灾情状况,用户进行灾害处置或紧急逃生。用户在火灾部署后可实现如下动作:以第三人称或监控设备视角观看自动消防设备针对火灾进行灭火;以第一人称视角前往级别较低火警现场,通过消防节点获取消防设备进行灭火;在火警级别较高时,用户以第一人称视角根据火情逃生自救。
(5)在线维护:通过平台式可自定义功能逻辑系统实现功能更新和维护,根据系统提供的设备部署、互动逻辑、器件动作、事件执行逻辑、机械动作脚本等配置文件编写规则,将扩展内容创建为标准配置文件并添加至指定的资源文件夹实现在线维护。用户可扩展资源文件结构见图2。
图2 用户可扩展资源文件结构图
本系统初始场景可自行配置,包括不同时段海洋环境、不同主体船型及海洋波浪强度等,场景加载以后即可进行平台漫游、模拟操作、故障处置及安全演练等功能演练;通过平台式可自定义功能逻辑系统进行系统资源创建,从而实现系统在线维护和功能更新。
3.1.1 系统初始化
系统初始化为整个系统的基础功能,是实现各个功能模块的基础,其主要功能是通过调用数据库中的配置文件及模型文件,动态组建石油平台,并为其赋予基本交互功能和运行逻辑。系统初始化内容包括平台模型拼装、作业场景部署、器件动作逻辑调用和设备联动逻辑调用等,具体如下:
(1)平台模型拼装:用户选择石油平台后,依据数据库中的装配参数,调用相关各项模型部署位置及设置附属关系。
(2)作业场景部署:将组装好的石油平台部署在作业场景模型中,并根据作业场景初始化石油平台状态。
(3)器件动作逻辑调用:调用器件动作逻辑,为设备的可操作器件设置执行逻辑,并进行档位状态初始化。
(4)设备联动逻辑调用:根据设备运行逻辑,将各设备之间数据输入输出建立映射接口,并初始化设备机构状态。
3.1.2 系统维护
本系统通过平台式可自定义功能逻辑系统实现功能更新和维护。在本案例中,首先根据系统提供的Assetbunle模型文件制作流程和制作标准、CFG配置文件编写规则及器件类型说明等文件要求,创建设备基本模型和设备碰撞模型,并导出为Assetbundle标准模型,最后将其配置为资源,由此即可完成吊车控制台功能的添加。
增加吊车控制台功能后,进入第一人称视角,在直升机平台上会看到自定义创建的控制台;右键点击控制台上的按钮,弹出Rotate选项,选中后平台左侧吊车会进行旋转;再次右键点击控制台上按钮,弹出Pause选项,选中后左侧吊车停止旋转。
本系统既可以第三人称视角全局俯瞰整个石油平台外观,也可以第一人称视角在石油平台甲板、内部工作区域及生活区域漫游,实现对平台结构设计和外观的整体感官印象。
本系统以第一人称视角模拟操作员对石油平台机械、设备及相关器件的操作,并根据数据库中存储的设备动作逻辑和运行逻辑,同步仪表屏幕显示、机械设备器运行。
本系统通过选择数据库中存储的故障并注入到当前石油平台运行系统中,模拟石油平台故障状态,再以第一人称视角模拟操作平台升降系统,排查平台故障原因,合理处置。
本系统通过对平台平面图的操作,设置火灾位置,可模拟平台消防系统自动运作、人员前往消防节点实施消防动作及人员通过安全通道逃生。
(1)基于Unity3D的自升式海洋平台虚拟现实系统以TAISUN200B自升式海洋平台数据为基础,提取模型组件、作业逻辑和情景特效3类数据,构建了组件库、逻辑库、特效库及平台库等系列数据库;通过调用该数据库,可驱动平台漫游、模拟操作、故障处置及安全演练4个功能模块。
(2)系统实现了TAISUN200B自升式海洋平台第三人称视角的全局俯瞰和第一视角局部的漫游;并能够在第一人称视角下对石油平台机械、设备及相关器件进行操作,沉浸式模拟钻井平台升降操作过程;还可以模拟平台自动处置系统运作、人员应急处置流程及弃船逃生规程;同时,能够通过规范模型、配置脚本文件进行系统维护,从而降低工作量和开发成本,并且为海洋工程装备展示、用户需求沟通及技术交流提供安全、高效的解决方案。