基于BIM技术的项目施工管理平台的搭建与应用*

2020-08-13 07:22
九江学院学报(自然科学版) 2020年2期
关键词:调用引擎轻量化

谢 允

(阜阳职业技术学院建筑工程系 安徽阜阳 236000)

目前,中国当前正面临着大规模的基本建设,建筑业作为国民经济的支柱产业已进入快速发展期。建筑业在快速发展的同时,主要存在着以下问题:技术与管理水平相对落后、建筑资源消耗浪费严重、建筑信息化程度水平较低和建筑业亟需高质量发展。针对目前建筑业向低污染、低能耗及绿色可持续发展方向的发展趋势,现有的二维平面图纸所承载的信息已不能满足业主等各方的信息需求[1]。利用BIM(building information modeling)技术搭建施工管理平台进行施工项目综合管理,实现精确的成本、进度和质量安全的管控,可节约资源、保护环境,提升建筑施工企业市场竞争力。

1平台功能设计

基于BIM技术、信息技术和互联技术搭建项目施工阶段综合管理平台,方便设计、建设、施工、监理、咨询等参与方对项目进行协同管理,在平台上进行成本、进度计划、资源需求、质量、安全、碰撞检查等进行集成化管理;利BIM施工模型和综合平台,对管线综合等复杂施工工艺进行施工模拟和三维技术交底等[2];同时,集成各分包单位的专业模型,管理各分包单位的深化设计和专业协调工作,如图1所示。

图1 BIM模型功能应用架结构

2关键技术

2.1建筑信息模型BIM技术

BIM技术是建筑行业的新工具,其核心是通过建立虚拟的建筑工程三维模型,利用数字化技术,为模型提供完整的、与实际情况一致的建筑工程信息库。借助包含建筑工程信息的三维模型,提高了建筑工程的信息集成化程度,从而为建筑工程项目的相关利益方提供了一个工程信息交换和共享的平台。BIM具有可视化、协调性、模拟性、优化性等特征。

2.2数字建造技术系统

数字建造技术系统(digital construction technology system,DCS)是以存放各种BIM模型的工程数据管理(BDM)服务器集群系统为核心,通过互联网与项目各参与方相连。工程开工前,由BIM技术团队成员建立初步的BIM模型,随着工程的进度的推进,各种信息附加在BIM模型上,模型集成的数据量逐渐增大,管理和共享的质量、安全、进度、成本等数据量也越来越大[3]。项目各参建单位都可以实时调用最新的BIM数据,用于项目综合管理,如图2所示。

图2 数字建造系统(DCS)

2.3 IT信息技术

信息技术(information technology,IT)是指用于处理和管控信息所采用的现代科技技术。利用计算机科学技术和基于互联网的通信技术等IT技术手段,进行设计、开发、安装和实施BIM综合管理应用平台,主要包括数字传感技术、计算机与智能技术、物联网技术、现代通信技术和数字控制技术。当前BIM技术和IT信息技术融合的已经成熟,实践应用已达到了较高程度,搭建平台具有技术上的可行性。

3平台搭建实现方法

3.1模型轻量化处理

模型轻量化处理主要是对RVT、Catia、Bentley、Naviswork2019(Nwd/Nwc)、IFC、FBX、DAE、OBJ、3DS等文件进行压缩处理,RVT、Catia、Bentley、Nwd/Nwc轻量化时服务器需要安装对应的建模软件。模型轻量化处理程序通过C#控制台程序编写,通过iis配置ftp服务进行上传文件。具BIM模型文件轻量化处理完成后,会在BIMEngineServerCustomerStationTools/output”路径下的文件中生成两个相同文件名的文件。①文件夹中保存的是三维模型渲染数据;②DB文件保存的是模型结构属性信息数据。通过Navicat for SQLite工具打开查看表结构和数据在目录/template/default/Twodevelopment/table.html下,程序可以通过连接SQLite数据库进行读取或同步数据到指定数据库中[4]。访问通过iis配置http路径指定到轻量化完成的./output路径下:

Varfilepath= 'http://117.34.118.8:9007/Tools/output/' + File + "/" + File + 'List.json'; AddModel(filepath, MileageID)的方式来加载模型,实现模型的轻量化。

3.2基于.net开发

3.2.1创建项目 首先在Microsoft Visual Studio2012下创建一个空项目,项目创建一个index.html页面,项目中引用jquery+css样式等文件,同时引用引擎包中的"3dEngin.js",确保3dEngin.js与token.json在同一个地方。

3.2.2创建模型结构树 在Index.html页面上,创建模型分部分项结构树,可以通过其它工具ztree.js等工具和后台数据库进行交互来实现。在模型分布分项结构树上,上传对应专业的模型文件到引擎指定的文件夹中,为了减轻网络传输将文件压缩为*.rar格式上传,模型包含在文件夹中直接压缩rar,保证rar与模型、文件夹名称一致。文件名不能有中文和特殊符号, 程序通过ftp协议进行文件上传到引擎轻量化指定的input文件夹中,引擎轻量化服务AutoEnCode.bat,自动检测input"中的模型,进行轻量化处理,处理结果存放于同级目录下的“Output”中,名称与 模型上传名称一致,同时将属性数据另存为DBTemp文件夹中*.db。属性文件是sqlite轻量化桌面数据库,程序引用微软提供的“System.Data.SQLite.dll”来读取*.db文件,批量同步到指定的数据库中。并将属性文件从DBTemp文件夹中移除(保证数据不会重 复插入)。

3.2.3创建模型渲染区域 在index.html页面中创建一个div容器:

《div id="webglContainer" style="height:100%"》《/div》

页面引用3dEngin.js

《script src="~/Themes/default/Content/Scripts/3dEngine.js》《/script》

页面加载时,对引擎画布区域进行初始化:

《$(function () 》

{ EngineInit("webglContainer",true,'./lib/cube.glb'); }

divId:展示模型的前台页面div标签的Id值。"webglContainer"

bCube:为true时显示指南针true

cubePath为方块的模型文件路径'./lib/cube.glb'

背景色为引擎默认色,可以通过接口进行设置背景颜色

3.2.4调用引擎添加模型进行渲染 在index.html可以通过点击模型分布分项结构树,获取需要加载的模型名称,如“modeltest”,通过js调用引擎接口来实现模型的渲染,如下:

《$(function () 》

{

EngineInit("webglContainer",true,'./lib/cube.glb');

var filepath = 'http://127.0.0.1:9007/Tools/output/' + File + "/" + File + 'List.json'; //轻量化服务器发布模型轻量化后的output路径为http网站,

var MileageID='7541'//模型结构树的id

AddModel(filepath, MileageID);//引擎加载模型

}

3.2.5引擎模型添加完成监控事件 在index.html页面调用引擎回调事件:

function OnLoadModelEnd(tag) {

//tag为加载完成模型的标识

//后续模型的加载,或其他业务接口的设置,模型透明,构件设置颜色等。

3.2.6模型结构绑定 在index.html对应的后台页面调用数据库读取来自*.db对应的model_tree(模型结构表)表,来查询模型建模的装配机构,此表为子父级树形表,通过字段“glid”(子集id)与“pGlid”(父级id)来区分。前台可以通过属性控件对构件的结构归属进行绑定。 *.db对应的model_type (模型专业类型表)表,来查询模型专业类型构件归属表,此表为子父级树形表,通过字段“glid”(子集id)与“pGlid”(父级id)来区分。前台可以通过属性控件对构件的结构归属进行绑定。

通过点击模型结构的层级可以获取包含的构件编号“externalId”,通过编号集合可以对模型构件进行控制显示、隐藏、透明、回复透明、局部展示等。

以上样例代码中的“7541”为模型文件添加时的自定义值。

构件局部展示:

《srcipt》ShowActors(GUIDARRAY)《/script》

接口说明:

设置模型中部分构件显示传入参数:

GUIDARRAY:为显示模型构件id的集合,id集合可以通过调用OnSelectionChanged(id)得到,调用OnSelectionChanged接口时模型操作模式必须是ID拾取模式

返回:0:设置成功 其它:设置失败。

何时调用:

在BIM轻量化引擎初始化完成调用,用户查看模型部分构件时可以调用此接口

调用方式:

显示部分构件: var actArray = [];

actArray.push('7541_2327');

actArray.push('7541_77396');

actArray.push('754133951');

ShowActors(actArray);

构件着色:

SetActorColor('7541_2327#7541_41736', 0, 0, 255);

构件透明:

SetActorAlpha('7541_10993#7541_2327', 0.3);

构件隐藏:

SetActorVisible('7541__10993#7541__2327', false);

3.2.7模型构件属性查询 在index.html 页面画布初始化完成后,设置引擎鼠标模型是为坐标拾取模式,图下代码: $(function ()

{

EngineInit("webglContainer",true,'./lib/cube.glb');

var filepath = 'http://127.0.0.1:9007/Tools/output/' + File + "/" + File + 'List.json';

//轻量化服务器发布模型轻量化后的output路径为http网站,

var MileageID='7541'//模型结构树的id

SetClickMode(2);

AddModel(filepath, MileageID);//引擎加载模型

}

通过调用引擎回调函数可以获取鼠标点击构件的id:

function OnSelectionChanged(id) {

//guids鼠标点击模型构件的id值,返回结果格式为"模型id_构件id"

var guid=id; //通过获取的id,在数据库对应的*.db表model_property 查询选择构件对应的属性。

}

模型查询结果如图3所示。

图3 模型查询结果图示

4平台应用结果分析

利用基于BIM的项目施工管理平台对安徽阜阳建工集团有限公司承建的“阜阳市资福寺安置区项目”进行全方位、多点面的应用和管理,效果良好。

4.1提升协同效率

BIM技术基于3D的BIM沟通方式,简单明确、可视化好、易理解,提高了沟通效率,利用互联网+BIM技术建立的协同管理平台,各建设责任主体分不角色进行授权,及时获得项目精准工程数据,避免了传递信息不对称的情况,减少了信息传递失真的情况。通过BIM施工管理平台的综合协调应用,减少了人为的错误,减少协同的时间投入,工作效率得以提高。利用现场结合BIM施工管理平台和移动智能终端,提升了现场问题沟通效率。

4.2减少变更、签证,避免返工损失

在BIM施工管理平台可以进行多专业综合碰撞检查,通过碰撞检查找出碰撞点,对模型重新进行修改,用正确模型指导施工,减少了变更、签证,节约了工期,避免了专业冲突和返工。

当前设计和施工的分离情况非常常见,设计单位为了自身的经济效益和出图效率,难免会降低设计深度,交付设计成果存在缺陷,在工程施工过程中才能发现问题。因此施工单位要对专业工程进行重新深化设计。施工单位受技术水平限制和多专业协调因难,专业冲突情形还十分普遍,返工情况常见。通过BIM施工管理平台对设计进行及时跟踪,发现出专业冲突和图纸问题,进而利用平台解决问题,带来的进度效益和经济效益非常明显。该项目通过应用BIM施工管理平台期比计划工期提前了23天。

4.3提高生产计划和采购计划编制效率

在施工过程中由于不能及时核算工程量,从而导致生产计划、采购计划编制滞后和误差率高,延误了进度,使建筑材料冗余或不足。原材料和施工机具设备不能按时进场,影响了工期,产生窝工损失。

借助BIM施工管理平台有效杜绝了这些情况,通过平台获取精准工程量数据,生产计划、采购计划编制效率和精准度大大提高,成本得到节约。通过应用实践,该项目节约成本比未使用BIM施工管理平台节约8.2%。

4.4辅助竣工资料归集,提高竣工资料管理水平

利用BIM施工管理平台,及时归集施工过程中形成的施工资料,利用CA 身份认证锁,各类签字印章可随时在BIM施工管理平台上签章,竣工资料在竣工时即时产生。同时平台可精确定位设备位置,提醒标注设备使用期限,为运维阶段业主方进行物业管理提供帮助。

5结语

充分利用BIM技术的可视化和协调性等特性,合理解决施工过程中存在的问题。建立基于BIM技术的项目施工管理平台,改进项目管理方法,形成基于BIM应用的施工管理模式和协同工作机制,明确施工阶段各建设责任主体的协同工作流程和工作职责及工作内容,为工程项目管理创造了更大的效益。

猜你喜欢
调用引擎轻量化
汽车轻量化集成制造专题主编
车坛往事4:引擎进化之屡次失败的蒸汽机车
核电项目物项调用管理的应用研究
一种轻量化自卸半挂车结构设计
一种轻量化自卸半挂车结构设计
系统虚拟化环境下客户机系统调用信息捕获与分析①
蓝谷: “涉蓝”新引擎
瞄准挂车轻量化 锣响挂车正式挂牌成立
用户:轻量化挂车的使用体验
利用RFC技术实现SAP系统接口通信