基于BIM技术的建筑工程构件管理与共享平台研发
2021-10-15龚旭峰王鸣翔王露倩
陈 统 龚旭峰 王鸣翔 王露倩
中天建设集团有限公司 浙江 杭州 310020
1 项目背景
城镇管网改造工程PPP项目位于浙江省温州市文成县大峃镇、黄坦镇等5个镇,建设内容包括给排水系统、电力系统、通信系统和燃气系统等,其中新建给水管约172 km、新建污水管约253 km、新建雨水管约100 km、新建电力管线约57 km、新建综合通信管线约35 km、新建燃气管道约20 km。
该项目参与方众多、项目周期长、专业种类多、信息类型复杂,若按传统的信息传递方式,容易导致数据格式不兼容、信息丢失、无效数据冗余等问题。因此,该项目从设计阶段到运维阶段全过程采用BIM技术,通过数字化仿真模拟工程所具有的真实信息,并通过建设基于Revit软件的构件库平台来保证构件模型数据的一致、安全、有效。
2 构件库平台的需求设计
2.1 主要功能设计
BIM构件库平台的主要功能包括归类存储、编码命名、浏览检索、上传审核、下载使用、加密保护、账号管理、激励机制设置、数据统计和数据备份等。
2.1.1 归类存储
对族文件进行有效分类是构件库存储、编码、快速检索、上传/下载等功能开发的基础[1]。本项目的构件按四级目录结构存储。第1级为专业,包括建筑、结构、给排水、强电、弱电和燃气等;第2级为专业子系统,如生活给水、消防给水、雨水和污水等;第3级为构件类型,如流量表、阀门和水泵等;第4级为样式/尺寸/材料等,如旋翼式水表和螺翼式水表等。
2.1.2 编码命名
在对构件进行有效分类后,按照统一标准对其进行命名及编码,可以确保构件的唯一性[2],并提高构件平台的检索效率。
本研究参考了GB/T 51269—2017《建设信息模型分类和编码标准》,按四级目录结构设置9位编码,中间以“-”隔开,如图1所示。
图1 项目构件编码格式
2.1.3 浏览检索
构件库平台提供树状结构目录的导航浏览,也提供关键字检索功能,方便用户快速定位所需构件。平台可显示每个构件的三维预览图,也能动态显示/隐藏构件详细参数,方便用户下载前的筛选与查看。
2.1.4 上传审核
构件库平台为有权限的用户提供构件模型上传功能。管理员根据内部BIM建模标准,对上传后的构件进行审核,包括文件格式、参数名称、约束设置等,在确认合格后,发布至共享平台。如果构件模型不符合标准或当前平台已有类似构件,管理员会将意见及时反馈给建模人员,协助提升构件模型质量。
2.1.5 下载使用
构件库平台在Revit软件环境中,提供构件模型直接下载、布置使用等功能,同时还应提供快捷操作方式,并确保多个用户对同一文件同时访问的时效性及内容的完整性。
2.1.6 加密保护
构件模型是制作者的劳动成果,也是项目组织的核心资产之一[3],在分享的同时要保证其内容安全,防止信息外泄。构件库平台应采取数字加密等安全技术,保护构件模型的知识产权。
2.1.7 账号管理
本研究设置多级用户权限,包括未授权用户、普通用户、管理员和超级管理员。平台只供已注册且被授权的用户使用。其中普通用户具有访问、下载等基础权限;管理员一般为项目参与方负责人,其权限包括授权普通用户、审核构件模型等;超级管理员负责分配管理员权限。
2.1.8 激励机制设置
为了促进构件库平台的良好发展,应采取一定的激励措施,奖励族模型制作者,鼓励知识创新[4]。本研究设置构件签名与积分奖励这2种机制。构件签名是在构件库主浏览页面中,每个构件缩略图都可以显示制作者的姓名;积分奖励是对于审核通过或被下载次数较多的构件模型的制作者,给予一定积分的奖励,并定期以其他形式结算奖励。
2.1.9 数据统计
构件库平台不仅要记录每个构件模型的制作者、上传时间、下载次数、下载者、下载时间和使用评价等,也要记录用户的行为,包括下载内容,上传/下载次数等。通过详细的数据统计,可以分析构件模型的使用趋势,也可以根据结果奖励相关人员[5],对构件模型的受欢迎度进行排序等。
2.1.10 数据备份
构件库平台应定期对数据进行备份,保证数据安全,本研究对云服务器端的数据库数据每天备份一次,构件模型文件每周备份一次。
2.2 系统架构设计
构件库平台采用C/S架构,即构件模型文件、用户信息等数据存放在云端服务器,用户通过本地Revit客户端进行访问。
3 构件库平台的开发与实现
3.1 技术实现
构件库平台是基于Autodesk Revit软件的构件模型管理与分享软件,采用C#语言、NET Framework 4.6、Revit 2016 SDK进行二次开发,以插件形式集成到Revit工具栏中,支持Revit 2016及以上版本。
平台采用MySQL数据库存储用户及构件信息,并部署在阿里云服务器,构件模型以rfa文件格式存放在云端服务器指定目录下。
构件库平台开发采用5层架构,分别为表现层、服务层、业务层、数据访问层及公共基础设施层,如图2所示。
图2 构件库平台开发的5层架构
3.1.1 表现层
表现层(user interface layer,UIL)包括UI用户界面和UI逻辑。构件库平台的用户界面采用WPF(windows presentation foundation)技术及Revit API提供的外部应用程序接口IExternalApplication。UI逻辑采用WPF MVVM(model-view-view model)模式,可以将UI用户界面和UI逻辑完全分离。
3.1.2 服务层
服务层(service layer,SL)的功能是组织各个业务对象,消除表现层与业务层之间的耦合。构件库平台服务层采用WCF(windows communication foundation)技术,可以方便地通过配置达到远程调用服务的目的。
3.1.3 业务层
业务层(business layer,BL)包含系统所需要的业务过程的实现,并与下层的数据访问层交互。业务层包括领域模型、业务规则、业务逻辑、DTO映射层及核心中间件(包括第三方组件,工作流引擎等)。
3.1.4 数据访问层
数据访问层(data access layer,DAL)的功能包括对MySQL数据库的读写,以及对构件模型文件的访问,也包括事务处理和并发控制等。操作数据库的方法采用.NET Framework提供的MySql.Data类库,操作文件的方法采用System.IO类库。
3.1.5 公共基础设施层
公共基础设施层(common infrastructure layer,CIL)包括业务实体、通用模块、异常模块、配置模块、日志模块以及第三方组件等,其余4层均可依赖于公共基础设施层。
3.2 主要功能实现
3.2.1 Revit工具栏
构件库平台以Revit软件插件的形式集成到Revit软件工具栏中,主要包括账号管理、族库系统和帮助信息。
1)账号管理系统的功能包括账号登录、退出、注册、密码重置、账号信息显示/修改。
2)族库系统的功能包括族上传、分类显示、搜索、加载/布置、个人族库。
3)帮助信息的功能包括显示版本信息、更新说明及管理员联系方式。
3.2.2 浏览检索页面
构件库平台主浏览界面包括导航栏、搜索栏、主浏览区域及页面跳转栏。每个构件均显示三维轴测图并提供下载按钮。
3.2.3 构件模型文件加密
采用Revit API提供的可扩展存储(extensible storage)及外部事件实现对构件模型文件的加密保护,BIM构件加密/解密机制如图3所示,加密后的效果如下:
图3 BIM构件加密/解密机制
1)若Revit软件加载构件库平台插件,则可以正常浏览构件模型及内部参数,但无法将构件模型文件保存或另存。
2)若Revit软件卸载构件库平台插件,则无法显示构件模型及内部参数。
4 结语
构件模型是工程项目BIM应用的基础要素,构件库平台的建设能保证项目全生命周期中构件数据的标准统一。本文所开发的构件库平台交互方便、信息完备、安全性高,能够确保构件模型具有较高的可复用性,显著提高BIM应用效率[6-7]。
构件库平台已于2019年正式上线,在温州市文成县管网改造工程中广泛应用,受到了各级业务人员的肯定,为该项目其他BIM技术的应用奠定了基础。