掌桥专利:专业的专利平台
掌桥专利
首页

一种基于BIM的重力坝结构设计合规性检查方法

文献发布时间:2023-06-19 11:22:42


一种基于BIM的重力坝结构设计合规性检查方法

技术领域

本发明涉及水工结构模型技术领域,具体涉及一种基于BIM的重力坝结构设计合规性检查方法。

背景技术

建筑信息模型(Building Information Modeling,BIM)是以三维数字技术为基础,集工程实体与功能为一体的数字化模型。随着BIM技术在土木工程领域的快速推广,其在水利工程建设中的应用日益加深,以BIM模型作为设计成果交付是未来设计领域发展趋势。在利用BIM技术进行水工结构正向设计过程中,BIM模型的精度及所包含的信息对于后期模型结构计算及运维分析至关重要。因此,如何有效实现重力坝BIM模型合规性检查是保证最终BIM模型全生命周期正常工作的关键。

重力坝设计受其地形地质条件影响严重,故所创建的结构模型应该与其地质模型进行关联,从而实现同步调整以满足分析需要。重力坝中常需布置廊道以满足灌浆、观测检修、交通等需要,廊道位置的控制在空间上呈现三维曲线形式。虽然Revit作为主要的BIM建模软件已经有了广泛应用,就针对于上述中重力坝BIM模型的创建,Revit的建模机制难以满足。而Civil 3D利用自身功能可以实现对地形地质的精确创建,并且利用其部件编辑器中目标参数及输入/输出参数的控制,实现重力坝模型的参数化设计以及结构与地形的结合。因此,选用Autodesk Civil3D作为重力坝BIM模型创建平台。

现阶段BIM设计模型的审查工作均是以人工审查为主,存在效率低下、出错率高的问题。Civil3D本身可以实现对道路设计进行规范校核,但对于包括水利在内的其它领域BIM模型并不能进行自动化审查。此外,Civil3D本身适用于地形及道路等线性结构的整体创建,难以对重力坝结构模型进行局部的动态调整修改。上述问题的存在,导致所创建模型的模型精度低、效率低、信息化程度不够。

发明内容

本发明目的在于提供一种基于BIM的重力坝结构设计合规性检查方法,使所创建重力坝结构初始BIM模型能够实现合规性自动检查,从而提高模型精度及模型动态修正效率。

为实现上述目的,本申请的技术方案为:一种基于BIM的重力坝结构设计合规性检查方法,包括:

建立重力坝结构的各断面部件,并沿坝轴线装配生成重力坝结构初始BIM模型;

创建数据访问节点包以及数据传输节点包,将所述初始BIM模型参数信息导出并存储到数据库中;

在所述数据库中建立所述重力坝结构的材料信息库和规则知识库;

应用程序连接所述数据库并进行交互;

对初始BIM模型参数信息进行合规性检查,如存在不符合相关规范要求的信息则发出警报,并按照相关规范条文进行修改。

进一步地,建立重力坝结构的各断面部件,并沿坝轴线装配生成重力坝结构初始BIM模型,具体为:

利用部件编辑器创建水工结构基本部件,设定部件的输入/输出参数,从而保证模型后续便于查看修改;设定部件的目标参数,从而保证重力坝结构能够与地形实时关联;设定部件中各单元的代码、几何关系、几何类型,从而保证各单元之间的联动。

进一步地,通过使用工作流中的“Decision”对结构进行判断设计,根据情况选择对应部件设计流;使用“Switch”能在多种设计流中进行选择,使创建的部件根据需要进行合理选择;通过使用工作流中的“Sequence”及“Flowchart”对复杂的部件设计流根据功能进行管理;

将创建的重力坝部件导入所创建的地形文件中进行装配,装配过程中对部件的目标参数、输入/输出参数、单元联动性进行调试,不满足的单元需要进行调整,最后通过调整重力坝各部分结构所在位置,形成重力坝结构初始BIM模型。

进一步地,创建数据访问节点包以及数据传输节点包,将所述初始BIM模型参数信息导出并存储到数据库中,具体为:

利用Dynamo for Civil3D编写可视化程序实现对初始BIM模型数据访问及传输,因该部分程序具有通用性,故将其打包成数据访问节点包及数据传输节点包,便于后续工作使用;

通过获取Civil3D模型文件中的Corridor及Baseline,在其基础上通过程序访问获取初始BIM模型参数信息,所述参数信息包括桩号坐标值、坝高、坝顶/底宽、上/下游坡比、廊道距上游面距离、体积等数据;

进一步地,所述数据传输节点包具有输入输出双向功能,在上述获取模型信息后,利用数据传输节点包将初始BIM模型参数信息通过Excel表的形式输出,并储存在数据库中;

所述可视化程序能够打开事务,找到用户意图修改的属性,分配新值后将更改信息提交到数据库,具体是从Excel表中读取属性设置值,并更新初始BIM模型中相应对象上的值;

在此过程中,可以使用户在无需深入了解应用程序API的情况下进行开发,并且能够高效进行数据库和事务处理,进行数据的序列化更改和模型的动态更新。

更进一步地,在所述数据库中建立所述重力坝结构的材料信息库和规则知识库,具体为:Civil3D模型本身属性不够全面,并且软件本身不便进行外部属性的添加。在此根据GB 50010-2010《混凝土结构设计规范》在数据库中批量导入创建材料信息库,所述材料信息库主要包括混凝土等级、密度、弹性模量、泊松比、抗拉/压强度等,并对材料进行ID编码;

将初始BIM模型涉及的SL319-2018《混凝土重力坝设计规范》批量录入数据库,录入形式参照规范目录进行拆分,将结构及构造作为关键词,其后是所对应结构的参数值范围、设计要求;无法直接进行拆分的非规则化属性通过筛选后,以文本形式将构造对应的整条规范进行显示以便进行人工较核;

对所述数据库中的各数据表之间建立主/外键访问关系及几何计算关系,对数据的格式及约束关系进行初步验证。

更进一步地,应用程序连接所述数据库并进行交互,具体为:通过C#编程语言基于Civil3D开放API开发相应的功能插件,所述功能插件包括以下四个模块:

主体设计模块,用于添加或调整所述重力坝结构初始BIM模型中的所述断面部件对应模型;

细部设计模块,用于添加或调整所述重力坝结构初始BIM模型中的非结构构件和构造措施等;

信息管理模块,用于对所述重力坝结构初始BIM模型的几何属性信息、材料信息、非结构构件和构造措施信息进行增删改查操作;

规则检查模块,用于对所述重力坝结构初始BIM模型进行合规性检查;

更进一步地,通过ADO.NET技术将所述功能插件中各模块与数据库进行交互连接,从而实现直接通过各功能模块对应的用户界面对数据库中数据以及模型参数进行更改。

更进一步地,通过规则检查模块对初始BIM模型参数信息进行合规性检查,如存在不符合相关规范要求的信息则发出警报,并按照相关规范条文进行修改,具体为:

首先,在所述数据库中设定相应的数据约束规则,在保证要进行检查的信息的完整性同时,还能够实现对简单设计参数是否满足规范进行初步验证;其次,将数据库中提取的初始BIM模型属性信息表与规范信息表进行主/外键关系设置来实现关联映射,后对结构及构造的属性信息进行遍历循环比较,从而实现初始BIM模型的合规性检查;

对不符合规范要求的设计参数进行警示,并生成对应报告清单,后按照相关规范要求,通过主体设计模块和/或细部设计模块对参数进行修改,相应Civil3D中的BIM模型进行动态更新;所述动态更新是基于Dynamo数据传输节点包在进行数据更改后驱动模型的更新来实现。

本发明由于采用以上技术方案,能够取得如下的技术效果:

(1)通过将Dynamo可视化编程与C#代码编程两种开发方式结合应用,实现了基于Civil3D对重力坝结构设计的合规性检查,在实现开发目标的同时降低了开发难度;

(2)创建自定义节点包进行数据的提取传输及模型修改,便于后期的重复使用,极大的减少了工作量,并且有效解决了Civil3D属性提取及细部修改困难的问题;

(3)通过与SQL Server数据库的交互关联,便于进行后期检查规则修改以及数据库文件更新,能够有效提高BIM模型合规性检查效率及准确性;

(4)通过基于Civil3D开发的重力坝功能插件对应的UI界面,能够方便快捷地实现对重力坝模型参数的动态调整以及模型信息的完善。

附图说明

图1是一种基于BIM的重力坝结构设计合规性检查方法流程图;

图2是基于Civil3D开发功能插件各模块的用户界面图;

具体实施方式

本发明的实施例是在以本发明技术方案为前提下进行实施的,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述实施例。

实施例1

本实施例提供一种基于BIM的重力坝结构设计合规性检查方法,结合附图1-2进行说明,具体包括如下步骤:

S1,利用Civil 3D的部件编辑器建立重力坝结构的各断面部件,并沿坝轴线装配生成重力坝结构初始BIM模型,具体为:

利用部件编辑器创建水工结构基本部件,所创建的基本部件包括但不限于非溢流坝段、溢流坝段、闸墩、帷幕灌浆、廊道、交通桥等,设定部件中各单元的代码、几何关系、几何类型,设定部件的输入/输出参数,设定部件的目标参数;通过使用工作流中的“Decision”对部件进行判断设计,使用“Switch”在多种设计流中进行选择;通过使用工作流中的“Sequence”及“Flowchart”对复杂的部件设计流根据功能进行管理;

根据情况选择对应部件设计流,具体如在进行溢流部件设计时,溢流顶部曲线常用的有克-奥曲线和WES曲线,对其两种曲线均进行分别设计,后通过“Decision”及“Switch”进行判断选择所需要的形式;

以所述的溢流坝部件为例进行说明,开敞式堰顶曲线采用WES幂曲线进行确定,计算公式如下:

式中:H

反弧段通常采用圆弧曲线,反弧半径结合下游消能设施确定,根据SL319-2018《混凝土重力坝设计规范》规定挑流消能反弧半径R为:

R=(4~10)h

式中:h—校核洪水闸门全开时反弧最低水深;

根据设计规范对所述溢流部件参数在部件编辑器中进行定义,并将上述关系式进行输入,WES幂曲线计算中,将H

优选地,为便于对各参数进行几何关系的设定,将参数使用首字母进行替代,例如最大坝高为zdbg,下游坡度为xypd,C20混凝土分区点为C20,由此通过“坡度和增量Y”的方式,取坡点为起点,坡度-xypd,增量Y为-(zdbg-C20),如此便将下游坡与各参数进行关联,其他部位也通过关系式确定,从而满足模型的动态调整。

将创建的重力坝部件导入所创建的地形文件中进行装配,装配过程中对部件的目标参数、输入/输出参数、单元联动性进行调试,不满足的单元及部件需要进行调整,最后通过调整重力坝各部分结构所在位置,形成重力坝结构初始BIM模型。

S2,利用Dynamo for Civil3D创建数据访问节点包以及数据传输节点包,并将初始BIM模型参数信息导出存储到SQL Server数据库中,具体包括如下步骤:

获取Civil3D模型文件中的Corridor及Baseline等对象,在其基础上通过可视化程序访问并获取模型信息;还可以通过选取对象ID方式选择对应模型实体,所获取的信息包括桩号坐标值、坝高、坝顶/底宽、上/下游坡比、廊道距上游面距离、体积等数据。

Civil3D自身对于一些细部结构无法直接创建,在此通过获取所选控制线上桩号的坐标点(x,y,z)位置信息,对其进行△x,△y,△z的改变来实现特定位置细部构造的设计。

需要注意的是,在上述进行坐标点等其他数据提取时,可能需要根据传输的数据格式进行转置、优先级设置等操作。

对所述的节点根据其功能创建成组,并进行整理打包成自定义节点,即所述的数据访问节点包及数据传输节点包。对节点包设置数据输入接口,在输入发生修改后,Dynamo可以同步更改模型和数据库。

所述的数据传输节点包具有输入输出双向功能,在上述获取模型信息后,利用数据传输节点包将模型信息通过Excel表的形式输出,并通过批量导入的方式储存在SQLServer数据库中。

由于Dynamo文件与Civil3D模型之间具有1对1的关系,故在对Dynamo文件进行命名时采用<类别>_<任务>_<版本>.dyn的形式。

所述Dynamo可视化程序能够直接打开事务,找到用户意图修改的属性,分配新值后将更改提交到数据库,具体是从Excel表中读取属性设置值,并更新模型中相应对象上的值,在此过程中,可以使用户在无需深入了解应用程序API的情况下进行开发,并且能够高效进行数据库和事务处理,进行数据的序列化更改和模型的动态更新。

S3,在SQL Server数据库中建立所述重力坝结构的材料信息库和基于重力坝结构设计相关规范的规则知识库,具体为:

Civil3D模型本身属性不够全面,并且软件本身不便进行外部属性的添加。在此根据《混凝土结构设计规范》在SQL Server中进行批量导入创建材料信息库,主要包括混凝土等级、密度、弹性模量、泊松比、抗拉/压强度等,并对材料进行ID编码。

还将模型涉及的《混凝土重力坝设计规范》批量录入SQL Server数据库,录入形式参照规范目录进行拆分,将结构及构造作为关键词,其后是所对应结构的参数值范围、设计要求。

无法直接进行拆分的非规则化属性通过筛选后,以文本形式将构造对应的整条规范进行显示以便进行人工较核。

上述材料属性以及规范批量导入数据库的实现,主要是通过C#编写读取Excel的通用数据访问类和导入及查询数据的方法,下面以DataGridView控件中的数据进行导入为例,其它控件数据导入流程与此一致,具体包括如下步骤:

首先需要编写SQL Server数据库的通用数据访问类,其次需要编写能够读取Excel的通用数据访问类;接着便是编写从Excel数据表中导入数据的类,并添加查询Excel数据表的方法;在Civil3D中开发的UI界面通过控件将要进行导入的封装数据列表进行展示;最后将控件中要进行导入的数据保存到数据库中。

所述数据库的创建是根据三范式原则来实现的,对所述数据库中各数据表之间建立主/外键访问关系及几何计算关系,从而保证各个数据表结构设计的合理性,使结构的几何属性信息、材料属性信息、相应规范条文等数据表既保持独立又彼此相联系。

S4,利用C#编程语言基于Civil3D的开放API开发功能插件,并实现应用程序与SQLServer数据库的连接与交互,具体为:

如图2所示,通过C#编程语言基于Civil3D开放API开发相应的功能插件,最后通过.dll文件的形式在Civil3D中进行加载,功能插件包括以下四个模块:

主体设计模块,用于添加或调整所述重力坝结构初始BIM模型中的所述断面部件对应模型;

细部设计模块,用于添加或调整所述重力坝结构初始BIM模型中的非结构构件和构造措施等;

信息管理模块,用于对所述重力坝结构初始BIM模型的所述几何属性信息、材料信息及非结构构件和构造措施等信息进行增删改查操作;

规则检查模块,用于对所述重力坝结构初始BIM模型参数及结构形式进行合规性检查;

优选地,通过ADO.NET技术将上述的插件中各模块与SQL Server数据库进行交互连接,从而实现直接通过各功能模块对应的用户界面对数据库中数据以及模型参数进行更改,具体步骤包括:

首先,连接数据库需要引入SQL Server对应的两个命名空间System.Data和System.Data.SqlClient,后进行创建对象,封装连接字符串,然后打开连接。通过用户界面发出指令,Command对象负责对数据源执行指令,Connection对象负责连接数据源,如此实现动态交互更新;DataReader从数据库读取对象,在用户界面中进行查看;DataAdapter从数据库中填充DataSet并进行解析更新。

S5,对重力坝结构模型信息进行合规性检查,如存在不符合相关规范要求的信息则发出警报,并按照相关规范条文进行修改,具体步骤如下:

规则检查的实现主要包括两个部分:

首先,所述在SQL Server数据库设定相应的数据约束规则,保证要进行检查的信息的完整性,主要包括实体完整性、域完整性、引用完整性,还能够实现对部分设计参数是否满足规范进行初步验证;

其次,在所述S3创建的规则知识库的基础上,将数据库中提取的模型属性信息表与规范信息表进行主/外键关系设置来实现关联映射,以要进行检查的建筑构件为对象,对其所包含的属性以及相应的规范条文查询提取到两个集合中,后对结构及构造的属性信息进行遍历循环比较,从而实现模型的合规性检查;

所述溢流堰采用挑流消能的方式时,下游反弧段半径R在主体设计模块中的溢流坝设计窗口进行设定,基于上述的规则检查,当R所取的值不在(4~10)h范围内时进行警示,对R的值进行调整以后,基于所述的Dynamo数据传输节点包在进行数据更改后驱动模型的更新。

同样,对其它不符合规范要求的设计参数进行警示,并生成相应的检查报告清单,后按照相关规范要求,通过主体/细部设计模块对参数进行修改,Civil3D中的重力坝结构BIM模型随之进行动态更新。

本发明的实施例有较佳的实施性,并非是对本发明任何形式的限定。本发明实施例中描述的技术特征或技术特征的组合不应当被认为是孤立的,它们可以被互相组合从而达到更好的技术效果。本发明优选实施方式的范围也可以包括另外的实现,且这应被发明实施例所属技术领域的技术人员所理解。

相关技术
  • 一种基于BIM的重力坝结构设计合规性检查方法
  • 一种网络设备配置合规性的检查方法
技术分类

06120112900667