城市地下综合管廊工程基于BIM技术的协同管理平台开发与应用
0 引言
目前, 我国正大力推进城市地下综合管廊工程建设。综合管廊空间小、管线高度集约的特点对设计质量提出了非常高的要求, 传统CAD的二维设计方式在设计过程中频繁暴露出专业设计冲突、协同效率低下等问题
本文研究的对象是基于BIM技术的城市地下综合管廊工程协同管理平台。在BIM技术方面, 国内外研究及应用基本相对成熟, 国内也逐步由初步阶段发展至深化阶段, 目前各企业都在积极探寻通过BIM技术扩展相应功能以进行项目全生命周期的管理方式。而在管廊工程方面, 国外很早就提出了相关概念及标准, 而近几年随着国家政策的推进, 国内管廊工程如雨后春笋般涌现, 相关技术也正在不断发展与应用, 将BIM技术与管廊工程相结合的项目管理方式也应运而生。将管廊工程协同管理工作基于BIM技术平台化的方式目前还处于起步阶段, 这也是未来管廊工程协同管理的一种新方式。
1 BIM技术在地下综合管廊的应用趋势
目前BIM模型在工程设计与施工不同阶段易出现割裂脱节, 即设计方的设计模型作用仅是为了满足甲方设计指标, 并没有应用至施工阶段
1) 数据无损传递基于BIM技术的设计-施工协同管理平台, 能够很好地连接设计阶段与施工阶段的工程BIM模型, 保证了各参与方间数据信息的统一。从设计、施工、运维阶段统一使用同一个模型, 在不同阶段内给模型添加不同信息, 这样便可以确保工程信息正确流转。如果在施工过程中发现问题, 设计人员可以根据反馈及时将最新的模型上传至平台, 之后施工人员下载更新后的模型, 修改完毕后, 还可以通过一键导出等方式生成设计变更文件, 大大提高了施工流程中重复性工作的效率。
2) 设计实时督查现在很多工程由于工期限至往往只能设计与施工交叉推进, 常规的设计方式不能对工程进行及时跟踪与监督, 而当工期临近时又通过突击作业提交最终结果, 这种形式下生成的设计文件通常错误较多, 并且会对之后的施工阶段造成影响。通过平台化的工作方式, 可以对工程设计阶段进行定时定期检查、设计结点成果检验, 保证施工。
3) 各专业协调设计城市地下综合管廊工程涉及多专业构件, 在设计阶段将结构进行建模后, 其他专业能够基于已建立好的模型添加各自构件, 自动绕开梁、柱以及其他专业的管线, 同时还可以借助可视化软件进行净空检查、排布规划、碰撞检测等方式。借此提高设计方设计阶段的准确性, 同时为后期施工增添保障。
4) 成本控制BIM软件通过其具备的属性化建模方式, 在模型建立初期即带有构建信息, 因此可以很轻松地通过工程量搭配定额等数据计算出成本等信息。并能够通过多种不同的方案模拟进行成本估算与方案比选, 确立最优方案, 在满足工程需求情况下尽可能节约资源。虽然目前我国BIM软件还不能做到完全规划项目成本的要求, 但随着软件的二次开发等新手段的应用, 很快便可以实现通过BIM技术控制成本的目标。
目前市面上基于Unity3D的建筑程序多停留在三维可视化浏览阶段, 而其他企业级工程管理平台多针对房建工程推出了相应的辅助功能, 在管廊工程中还存在信息缺失等问题。例如管廊模型无法大规模读取、管廊定额不兼容等。且各平台并不开放, 高级功能需要下载专用软件并收取较高费用。
2 平台在管廊工程协同管理中的应用方式
2.1 三维可视化协同管理
管廊工程在管线交汇处常会有复杂结点产生, 设计人员通常根据设计信息构建二维平面图纸, 分层分段绘制剖面图, 而现场施工人员在参考二维图纸时则需要较高理解能力。若在设计初始阶段即建立工程三维模型, 在施工时将模型交给施工人员进行参考, 便可以在结构施工阶段针对相关复杂节点进行三维立体的内部与外部浏览。即使是项目基层现场施工人员, 也可以很好地理解复杂结构的具体形式, 提高施工准确度。
2.2 模型信息协同管理
无论现浇或预制结构, 在施工时都需要对各部件进行质量控制。各结构的具体尺寸及材质等信息均由设计人员进行设计, 通过平台化的协同管理方式, 设计人员可以及时将构件信息赋予模型, 供各端口施工人员获取, 有了模型全部设计信息的施工人员便可以根据该信息对现场实际构件与模型进行比对并随时反馈, 及时纠错。即使设计信息因故突然修改, 施工人员也可以及时从平台处获取最新信息。确保施工阶段与设计阶段的结构完全一致。
2.3 进度信息协同管理
管廊工程施工呈线状排布, 且阵线较长, 在施工时通过流水段施工的方式
3 基于BIM技术的管廊工程协同管理平台基础功能开发
3.1 三维可视化功能开发
在建立管廊工程BIM模型三维可视化功能时, 需要借助摄像机来完成画面的捕捉与视角的移动, 借此让使用者感受到身临其境的效果, 而摄像机本身在Unity3D中不能进行移动等操控, 需要借助第一人称角色控制器, 将摄像机与控制器进行绑定, 以此达到相关浏览功能的目的
Unity3D平台中存在两种角色控制系统, 分别为第一视角控制器与第三视角控制器, 第一视角控制器以人的双眼为载体, 对建筑进行任意的浏览与查看, 第三视角控制器以人为主体, 在画面中将人物作为中心, 主要用于观察人在移动时与周围环境间的关系
在Unity3D中, 第一视角控制器主要由3部分构成, 分别为第一视角摇杆、图形、主相机。其中第一视角摇杆主要对人物进行操控, 控制其行进路线、运动方式与碰撞等。图形部分主要负责对控制器进行包裹, 通过其进行人物的定位与判断工作。主相机被绑定于图形之上, 负责对人物所浏览的部位进行画面获取, 它与我们眼睛的作用大抵相当。而这三者间, 图形与相机附属于人物之中, 对人物进行的操作, 同样会对这两者进行。例如对人物进行旋转, 那么相机所捕获到的画面也连同人物进行旋转。而对相机进行视角的旋转, 人物也连同进行旋转, 下面以相机移动速度为例相关代码:
3.2 模型信息显示功能开发
由于Unity3D软件中只能建立基本的三维图形结构, 并且不包含建筑中的部件属性信息。因此, 目前使用比较广泛的方法是在Revit中建立结构模型并导入Unity3D中, 但Unity3D存在只能读取模型结构, 不能读取模型属性信息的问题, 在平台中只能显示结构形态构造。因此针对Revit与Unity3D间存在的模型信息转移缺口问题, 通过对Revit的二次开发, 成功建立了Revit模型属性导出插件, 并对Unity3D进行了相应开发, 将Revit中BIM模型与部件信息在Unity3D中成功进行了链合并进行显示 (见图1) 。
3.3 进度管理功能开发
工程进度功能的实现要通过相关的人机交互才能够达成, 因此需要依靠Unity3D中的相关设置同时编写相应的交互功能指令才能做到。在Unity3D中, 人机交互功能需要借助交互界面, 即UI面板才能进行。通过对交互面板上的按钮进行相关操作, 来实现对模型相关信息的获取。由于本程序是基于最新版Unity3D而创建的, 因此Unity3D自带的UI交互系统为UGUI (见图2) 。
UGUI作为交互系统发展的产物, 其目的就是帮助用户更好地与软件进行交互。通过对操作界面的创建于按键的设定, 再根据需求编写相应按钮功能以定义该交互流程, 就可以达到实现相关功能的目的
在本程序的进度模块功能中, 首先需要创建一个带有年、月、日的日期面板, 同时还要调用在Revit中建立的模型, 场景为程序初始背景, 通过控制日期面板, 将工程计划进度信息反映至模型中。具体操作为:单击某道工序的截止日期, 模型将出现该工序截止日期时模型处的具体构造, 同时建立一个模型清空按钮, 使得单击该按钮后可以实现工程项目清零, 即所有构件消失的效果。为了达到这些操作, 首先需要建立UI日期面板, 当我们在Unity UI中创立物体时, 会自动生成Canvas以及与其对应的EventSystem控件。Canvas可以理解为一个容器, 它可以包含交互控制器中的按钮、图像、文字等内容。
之后根据需求创立日期面板, 将建立的按钮标识、文字、文本框等内容全部存放在Canvas下, UI面板建立好后, 需要通过脚本来对面板中的按钮进行相关功能设置, 将模型构件与日期面板中的相应日期根据计划工期进行一一对应, 通过扩展相关Unity3D功能, 编写相应代码达到按钮与模型对接的效果。具体操作代码部分如下:
Text YearMonthDay;//年月日
Text Year;//年
Text Month;//月
Button Month_Reduce;//月份加
Button Month_Add;//月份减
Button Year_Reduce;//年份减
Button Year_Add;//年份加
Button[]List_1;//日期的小格子的一行
Button[]List_2;//日期的小格子的二行
Button[]List_3;//日期的小格子的三行
Button[]List_4;//日期的小格子的四行
Button[]List_5;//日期的小格子的五行
Button[]List_6;//日期的小格子的六行
Button[]List_7;//日期的小格子的七行
Button[]list;//所有的…
4 平台的多端口发布及应用
4.1 PC端分布
Unity3D的PC端发布并没有太多的限制条件, 点击File列表下的Build&Run选项, 即进入了发布前的调试窗口。首先需要为发布的程序添加场景, 在本程序中拥有3个场景, 即初始界面场景、属性漫游场景、进度查看场景。因此将这3个场景添加进需要搭建的范围中, 之后需要对程序进行窗口设置, 包括全屏化、分辨率等因素。之后选择生成出的文件想要保存的文件位置, 点击确定后等待打包完成即可。
发布前需要对以设计完成的软件进行测试, 测试是指为了检验系统是否能满足用户需求, 系统功能是否完善、可靠而进行的一系列运行系统的工作。软件测试过程可以使用人工或者自动手段来进行。
为保证测试工作的顺利进行, 首先应搭建测试环境, 在系统中对用户的互动功能操作测试只需在Windows或Mac os系统中即可。为使测试机能顺利显示三维的用户图形场景界面, 计算机中应安装有DirectX, 最终发布效果如图3所示。
4.2 移动端分布
由于移动端与PC端中有些操作无法对应, 比如PC端可以用鼠标与键盘对模型进行操作, 而移动端并没有这些设备, 因此需要在操作方式上进行一些修改, 为了能让使用者在移动端有更简便的操作, 在漫游功能中添加了左右两个摇杆, 分别对应视角的平移操作与旋转操作。需要在Unity3D中通过对摇杆进行代码的编写以达到操控的目的。
首先对摇杆的方向进行定义:
private Vector3[]directionalVectors={Vector3.forward, Vector3.back, Vector3.right, Vector3.left};
private Transform_mainCameraTransform;
private Transform m_Cam;
private bool m_Jump;
private Vector3 m_CamForward;
private Vector3 m_Move;
接着对摇杆的速度进行定义:
在完成了对操控的定义后便可对整个项目进行打包发布, 使用Unity3D发布Android项目需要Java Development Kit (JDK) 和Android的SDK运行环境。而这些环境目前都是开放的, 从互联网上可以下载到相关文件, 并且下载到相关非中文路径中。打开Unity3D, 添加相关SDK与JDK引用, 完成之后, 将已经制作并建立好的场景添加到build里并且切换平台为Android平台图, 通过Player settings选项对发布的安卓平台版本、项目名称等工作进行设置, 最后通过Build键进行打包工作。打包完成后, 会在设置的路径下生成1个APK文件, 即Android Package。将该文件导入至手机中进行安装后便可使用, 最终发布效果如图4所示。
4.3 网页端发布
网页端发布较移动端更为简便, 因为不需要进行新的附加功能设置, 操控方式与PC端完全一致, 只是呈现的平台从PC改变至Web端。依然是在Build选项中, 加入已经做好的场景, 进行相应的设置, 注意将精简引擎代码选项勾选, 这样会允许代码为WebGL进行精简, 将所有项目中不需要的引擎代码删除。最终通过Build按钮生成Web端网页程序。
5 工程应用
某市政项目标段中包括位于K1+210—K2+165间的地下综合管廊工程, 其中K1+327—K1+362区段需上穿某地铁双线盾构区间, 为预制顶推施工方案, 投影长度约21.0m。K1+362—K1+873标段为明挖现浇区间段, 长度511.0m。K1+873—K2+165标段为暗挖标段, 需通过竖井施作导洞进行暗挖。
首先打开发布后的PC端Unity3D项目, 进入主界面, 应对应有程序名称与两个相对应的模块功能的进入按钮 (见图5) 。
单击第1个模块, 即属性浏览模块。通过键盘“W”, “S”, “A”, “D”键控制视角, 分别对应前进, 后退, 左移, 右移等平移操作, 同时鼠标负责视角的旋转。单击1个模型构件, 屏幕右侧出现该构件相关属性信息, 再单击新的构件刷新该信息 (见图6) 。
通过“ESC键”控制程序后退至上一菜单。再单击进入进度查看模块。首先通过“一键清零”按钮将模型全部清除。之后任意单击某一日期, 模型上即显示至该日时工程结构完成情况。再单击第2个日期, 显示下一时间内工程计划进度, 并将进度情况反映至模型上, 以此类推, 直至整个项目完成, 并与工程现场进行对照 (见图7) 。
PC端程序在应用时并不需要计算机具有较高配置, 因此运行起来基本流畅, 且对于设计阶段的信息获取也相当准确, 但运用PC端的人员多为项目技术部相关管理人员, 因此对于他们来说此平台的功能还略显缺少, 还需通过日后的补充进行开发与完善。
移动端需在PC版基础上对界面控制进行修改, 添加左右两摇杆。同时保留其他功能, 本模型以管廊工程暗挖段某一导洞分项为例进行简单展示, 进度功能的操作与PC端一致。
移动端程序的实用性非常符合项目现场人员需求, 但在使用过程中发现项目现场施工人员的手机安卓版本较低, 而平台程序则为较高版本, 于是通过对程序的处理将操作系统的版本限制进行了降低, 提高了程序的应用性。
项目各端口人员均反应将结构三维模型“随身携带”有助于他们在施工时理解与查看相关结构属性, 尤其是对于复杂节点具体内部构造与预埋件、固定支架等构件位置获取方面。并且在遇到问题时能够凭借掌握的信息与设计方进行及时反馈, 不再像以往在项目现场发现问题, 还要返回技术部, 查看二维图纸, 再凭借记忆与现场情况进行比对, 最后再反映至设计方的流程, 提高了协同管理的效率, 降低了工作难度。同时很好地弥补了通常在管廊结构内施工时无信号, 无法获取工程相关信息的问题。并且在施工时, 依靠新技术, 让项目最基层的施工人员也感受到了新科技的体验, 提高了工作兴趣。
网页端不需要进行新的附加功能设置并且操控方式与PC端完全一致, 因此直接在Unity3D中添加场景后搭建网页端程序即可。
网页端程序目前来看基本框架只要随着PC端的完善便可以随之进行完善, 但由于还未获得数据库的支持, 因此与互联网的连接还存在问题, 使得项目人员之间的联通还不够顺畅, 有待日后进行补充完善。
6 结语
1) 基于平台化管理的思想, 针对现有地下综合管廊工程BIM模型在不同阶段信息传递和衔接存在的不足, 采用Unity3D软件进行了二次开发, 建立了融合三维模型和工程信息的轻量化管廊工程协同管理平台。
2) 通过该平台的应用, 在设计阶段有望减少因碰撞、偏位等引起的错漏问题;施工过程中技术人员凭借随身携带的手机等移动设备可及时查看三维模型及相关信息, 协助开展实时质量控制与进度管理, 在一定程度上实现了管廊工程协同管理模式的优化和创新。
3) 程序平台目前仅具备若干基本功能, 后续研究可在此基础上通过进一步的开发, 针对不同的管理目标完善其程序架构和功能, 成为提高管廊工程协同管理效率的有力工具。
[2]张鹏飞. BIM技术在上海穿越共同沟地下通道建设中的应用分析[J].土木建筑工程信息技术, 2015 (4) :10-14.
[3]徐敏生, 杨海涛, 李卫东.市政BIM理论与实践[M].上海:同济大学出版社, 2016.
[4] LU G P, XUE G H, CHEN Z. Design and implementation of virtual interactive scene based on Unity3D[J]. Advanced Materials Research, 2011 (317) :2162-2167
[5] ANDREW TROELSEN. C#与.Net4高级程序设计[M]. 5版.北京:人民邮电出版社, 2011.
[6]满庆鹏, 孙成双.基于IFC标准的建筑施工信息模型[L].土木工程学报, 2011 (S1) :239-243.
[7]郑琳琳, 程淑珍, 孔祥利. BIM技术在六盘水综合管廊建设中的应用[J].施工技术, 2017, 46 (21) :66-69, 110.