基于BIM+GIS技术的水利工程数字孪生系统应用研究
2022-12-17华陆韬薛苍松吴根仙
华陆韬,朱 灿,薛苍松,吴根仙
(1·浙江省水利水电勘测设计院有限责任公司,浙江 杭州 310002;2·桐庐县林业水利局,浙江 桐庐 311500)
1 问题的提出
近年来,随着物联网、大数据、云计算、人工智能等新一代信息技术的发展,使得数字孪生的实施逐渐成为可能。在水利部大力推进数字孪生流域、数字孪生水利工程建设,积极推动新阶段水利高质量发展的背景下[1],数字孪生技术的应用需求不再局限于数字化表达,更多的是与水利业务的深度融合,结合工程规划、建设管理与运行维护等各阶段的业务需求,实现水利工程建设全生命周期的数字化映射。
目前,数字孪生在航天航空与城市管理领域应用广泛,而在水利行业尚处于起步探索阶段。现阶段的水利应用主要集中在对工程结构的虚拟仿真及可视化展示[2],但与工程调度、洪水演进等水利业务融合方面缺少深入研究及技术参考,主要表现在缺少基于数字孪生技术的场景建设框架及数据驱动模型的技术手段,缺少基于数字孪生技术的水利业务应用实践。针对上述问题,本文提出基于BIM(Building Information Modeling)+GIS(Geographic Information System)技术的水利工程数字孪生系统应用研究,提供场景构建、轻量化处理、行为映射与数据驱动等技术流程与方法,并与相关水利业务融合,实现物理世界的数字化映射,助推智慧水利体系建设。
2 水利工程数字孪生系统技术路线
本研究基于Unreal Engine 4引擎与Cesium for unreal插件开发。采用Revit、3Dmax、Blender、Qgis、CityEngine等平台对空间数据与接口进行处理与集成,然后通过Cesium for unreal插件存储和调用处理后的空间数据,最后利用Unreal Engine 4引擎的蓝图脚本模块对空间数据进行接口挂接,并且利用其脚本库语言构建前后端数据库访问的桥梁,实现业务功能的开发。总体技术架构主要包括基础设施层、数据汇聚层、应用服务层及业务应用层(见图1)。具体各层主要包括:
图1 系统技术架构图
(1)基础设施层。该层主要包括物联感知设备、智能终端、计算机基础网络等。
(2)数据汇聚层。该层主要包括空间数据库、业务数据库、专题数据库以及集成的交互接口库。
(3)应用服务层。该层主要是通过引擎的蓝图脚本模块连接沟通基础设施层和数据汇聚层,实现跨层间的消息传递与数据访问。
(4)业务应用层。该层主要根据相关的业务需求,开发相应的业务功能,如应急预警、水雨情、淹没分析等功能模块。
3 水利工程数字孪生系统场景构建与集成
3.1 BIM+GIS场景构建
BIM场景基于Autodesk Revit平台构建,通过建立统一的水利BIM执行标准,对BIM模型建设与应用进行整体规划[3]。依据标准,实现多专业协同建模,并对模型构件不断深化加工,对信息数据不断迭代完善,形成全生命周期BIM模型数据;然后采用数模分离的技术,利用插件将BIM数据导出为FBX与JSON两类数据,其中FBX继承模型的网格信息,JSON继承模型构件的属性信息。数模分离相较于数模一体,优点是避免轻量化过程中模型属性信息丢失及因属性信息变更引起的BIM模型返工。
GIS场景基于CityEngine平台构建,构建对象主要为主工程以外的周边地形与环境。主要流程是:原始数据准备,包括栅格数据(DEM、DOM等)和矢量数据(建筑、水系、路网、植被等),通过Qgis平台对原始数据进行加工和处理;建立数据标准,包括名称、代码、分类编码等,将多源数据拟合匹配;定义坐标,平面坐标系的数据需要转化为统一的地理坐标系数据(通常采用WGS84、CGCS2000),满足GIS数据标准化需求;然后将处理后的GIS数据传递到CityEngine平台中,利用CGA规则语法对真实的几何信息进行描述。
3.2 轻量化处理
将BIM+GIS模型数据以FBX格式移交到3Dmax中,进行轻量化处理,缩小BIM模型体量。轻量化主要从以下2个维度展开:
(1)几何维度。几何维度的轻量化可在BIM参数化几何描述向三角网格化几何描述转换的过程中,利用LOD技术(Levels of Detail)降低非重要构件的颗粒度,减少模型的整体面数,提升模型渲染的资源使用率。
(2)渲染维度。通常计算机在加载三维物体时会采用API调用绘制的方式,即加载一个物体,调用一次API绘制。调用绘制是计算机渲染的过程,调用次数越多,CPU消耗越大。实例批量绘制技术可针对渲染过程,有效降低CPU的占用率。
3.3 数据驱动模型的交互接口集成
水利工程数字孪生系统中的交互接口包括移动旋转类、网格动画类、骨骼动画类以及材质纹理类。此类信息接口的集成依托blender平台,将3Dmax处理后的模型以fbx格式整合到blender中,利用blender平台的开源特性,编写相关交互接口,最后将模型和交互接口集成发布成一个gltf文件,基本过程如下:
3.3.1 移动旋转类
定义交互对象的模型ID,在曲线编辑器中根据交互需求定义线性动作,设置动作持续区间,增加动作字段,添加动作编码。
3.3.2 网格动画类
创建网格变形,对模型的网格顶点定义描述,根据交互需求定义变形函数,设置变形持续区间,添加编码。
3.3.3 骨骼动画类
创建骨骼,确保物体表面足够细分到可以让后续变形实现。在编辑模式下,增加armature骨骼修改器,绑定先前创建的骨骼,选定骨骼,在Pose Mode姿势模式下调整骨骼方位,物体即可相应形变。
3.3.4 材质纹理类
Shader编码,在blender shader编辑器中采用32位无符号整数对模型对象的shader进行编码定义,常用材质纹理类的交互实现有2种:①针对同一对象编写多套材质,用0,1编码来控制当前材质状态,0表示不显示,1表示显示,可用来控制物体的高亮显示;②uv线性动画,在模型的uv上编写线性动画,实现纹理的动态交互效果。
将gltf格式作为主要工程在数字孪生系统中状态、行为映射的载体。其二进制编码,可完整保留上述类型的交互接口,同时优化数据结构,减少与渲染无关的冗余数据,提升渲染速度。gltf数据基本结构见图2,gltf文件中集成的闸门启闭接口见图3。
图2 gltf数据结构示意图
图3 大坝模型闸门启闭接口示意图
4 水利工程数字孪生系统应用接口开发
水利工程数字孪生系统所需的应用接口使用远程调用协议(RPC)+蓝图脚本的框架开发。
首先建立通讯连接。水利工程数字孪生所关联的数据存储服务器有很多,使用RPC协议可通过网络从远程服务器上请求服务,而不需要了解底层网络技术协议。RPC协议假定某些传输协议的存在,如TCP或UDP。在OSI模型中,RPC跨越了传输层和应用层[5],有利于分布式网络部署的信息通讯。
然后通过Unreal Engine 4的蓝图脚本创建接口,主要包括3个步骤:创建接口声明函数、实现接口及调用接口。
4.1 创建接口声明函数
在ContentBrowser菜单下选择Blueprints创建interface,常规接口利用蓝图脚本直接定义,特殊的接口可通过FunctionLibrary函数库编写,将编写后的函数命名存储,方便以后在不同的接口中调用,简化工作流程,提高效率。此外,还可通过MacroLibrary创建自定义宏库。
4.2 实现接口
创建一个新的蓝图类,双击打开蓝图类,在蓝图中自定义函数接口。通过蓝图类实现接口对特定应用功能进行封装,提升函数复用性。例如在场景中显示一个静态模型,通常要选择Actor作为父类,还需手动添加StaticMesh组件,相对麻烦,采用蓝图类实现接口,只需添加一个StaticMeshActor,然后在子面板中添加模型,易于后续模型的更替,将此蓝图命名保存,可供下次使用。
4.3 调用接口
接口的本地调用可通过函数指针来制定,在蓝图类中添加。远程调用则要使用Call ID映射,由于远程进程的地址空间不同,所以在RPC中,所有函数必须拥有唯一身份编码的ID信息。在远程调用时必须添加该ID,同时分别维护一个函数和Call ID的对应表。在实际调用过程中,客户端先查询对应表,找出相应的Call ID并传给服务端,服务端通过查表来确定客户端需要的函数,执行相关命令。
此外,水利工程数字孪生系统使用Cesium for unreal插件调用空间数据。
5 水利工程数字孪生系统业务应用与实践
上述技术路线在建德市三江洪水风险图系统、姚江上游西排工程数字化平台、省管海塘智慧建管平台、高坪桥水库运维系统、台州集聚区智慧建管平台(见图4)、千岛湖配水工程智慧平台等项目中得到应用实践。
图4 水利工程数字孪生系统主界面图
常规业务功能包括三维场景可视化、BIM数据属性查看、空间分析、淹没分析、洪水演进、工程调度、运维管理、水雨情查询等。此类业务的驱动数据涉及工程属性、特征参数、设计指标以及物联设备的实时数据。在构建行为映射前需要进行分类、编码、命名,采用结构化方法建立演算模型、调度模型、耦合模型等,然后根据模型类型选择不同的实现方式,最后依托Unreal Engine 4的蓝图脚本进行编码开发。例如水闸的智能调度数据来源有:闸门实时运行数据、实时水情数据、实时监控数据。根据业务需求建立调度模型,按照运行要求进行耦合模型计算,获得调度映射模式,包括闸门名称、闸门状态、闸门开启度等,通过远程消息发送及地址调用的方式实现闸门的远程调度与实时监控。在智能调度过程中,将物联设备反馈的数据与映射模型进行对比验证,可精确定位闸门运行中发生的异常情况,以便及时修正,为工程智慧化运行提供有力保障。
应用实践证明:以BIM+GIS等空间数据为基底构建水利工程数字孪生系统,通过在计算机数字世界中建立与真实世界的数据驱动模型,融合多源异构数据,结合水利业务需求,实现数字世界对物理世界的状态和行为的精确表达;同时,结合云计算、大数据、人工智能等技术,构建“2+N”智慧水利业务应用体系,包含建设流域防洪应用、建设水资源管理与调度应用等,建设N项业务应用,打造具有预报、预警、预演、预案功能的智慧水利系统,实现多尺度、多维度、深层次的数据挖掘、分析、仿真等,使原本抽象的决策依据更加具体,有利于提升决策效率。
6 结 语
本文基于BIM+GIS技术,依托Unreal Engine 4引擎平台,结合Cesium for unreal插件开发,对场景及数据驱动模型的构建与集成、应用接口开发、业务应用等关键性技术及流程进行阐述,提供关于BIM数据轻量化、GIS数据可视化、行为映射集成等问题的解决思路与方法。最后以系统应用为例,印证数字孪生技术在流域及水利工程建设中的应用价值,为建设完善智慧水利体系提供动力与支撑。