一种岛式多约束非连续界面砌块区域下料精细化排布方法与流程

文档序号:32162248发布日期:2022-11-12 03:01阅读:43来源:国知局
一种岛式多约束非连续界面砌块区域下料精细化排布方法与流程

1.本发明涉及建筑施工技术领域,特别是一种基于bim技术,通过自动化布图的方法,实现对含门窗洞口及相关附件的墙体结构的分区域下料。


背景技术:

2.建筑信息模型(building information modeling)是以建筑工程项目的各项相关信息数据作为模型的基础,进行建筑模型的建立,通过数字信息仿真模拟建筑物所具有的真实信息。它具有可视化,协调性,模拟性,优化性,可出图性五大特性特点。
3.在实际工程项目中,墙体尺寸不同,而在一个砌体填充墙中分不同的区域又要运用不同类型的砖块以及灰缝厚度。特别是当含门窗洞口的墙体轮廓长度不等于砖的长度的倍数,砖必须在长度方向上水平切割,若切割不当则易导致建筑材料的大量浪费。即便具有良好的施工图纸基础知识和丰富的实际砌筑经验,一般也无法充分考虑砌体墙的砖布置方案,砖块现场切割随意性过大,极有可能造成较为普遍的砌块建筑材料严重浪费、损耗,甚至可能将出现停工、返工等现象导致工程延期,直接或间接增加施工成本,造成不必要的损失。同时大量断砖、废砖将产生较多建筑垃圾,其消耗的材料、资源会给生态环境平衡带来负担。运用bim技术来指导施工是现阶段更好的选择,但现有的墙体构件自动化排布技术的应用仅仅局限于单一边界约束的一般墙体,无法应用于存在有门、窗洞口等岛式多约束非连续界面砌块区域的墙体,且一旦构件和非连续界面参数规格有变化时,需要手动更新模型,效率低下且难以寻找到最优方案。


技术实现要素:

4.本发明的目的是提供一种岛式多约束非连续界面砌块区域下料精细化排布方法,其中岛式多约束非连续界面具体指含门窗洞口的墙体,实现对含门窗洞口及相关附件的墙体结构分区下料的自动化创建。
5.为实现上述目的,本发明采用如下技术方案:
6.一种岛式多约束非连续界面砌块区域下料精细化排布方法,包括以下步骤:
7.步骤一:根据所要创建的墙体构件需求,如若需要,则基于公制常规模型创建目标族,创建墙体模型及门窗洞口过梁等相关结构,确定所需排布构件并设置相应的参数;
8.步骤二:分析墙体的参数信息,确定墙体的可参数化数据、非参数化数据与自适应数据。尺寸可变的数据称为可参数化数据;将实际可变数据取允许范围内的某一数值,此类数据为非参数化数据;在满足边界约束条件、整数限制要求的前提下,由其他数据驱动变化的数据为自适应数据;
9.步骤三:在满足现行规范要求的前提下,设计墙体构件自动化排布方法,输入基于步骤二中的相关数据信息,结合计算机语言进行编程,调用可视化编程平台应用接口中的相关函数,参数化自动排布墙体构件;
10.步骤四:基于步骤三得到的自动排布相关结构后的墙体,再次使用计算机语言进
行编程,调用可视化编程平台应用接口中的相关函数,确定砌块区域下料的布置位置;
11.步骤五:将创建完毕的模型载入编程平台,运行程序,完成墙体自动化布设相关构件后的砌块区下料精细化排布工作。
12.所述步骤一中的模型由bim主流建模软件revit所创建。
13.所述步骤三和步骤四中的可视化编程平台是内嵌在bim技术主流软件revit平台的dynamo。
14.所述步骤中含有门窗洞口的墙体结构,门窗洞口设置规范及下料规范依据国家建筑标准《砌体结构工程施工质量验收规范》gb 50203-2011、《砌体填充墙结构构造》12g614-1、《砌体填充墙建筑构造》12sj105、《钢筋混凝土过梁》12zg313、《民用建筑设计统一标准》gb 50352-2019。
15.与现有技术相比,本发明具有以下特点和有益效果:
16.(1)本发明提供了一种高效、准确的模型创建方法,将bim主流软件revit与可视化编程平台相结合,优化了bim工作流程,缩短了建模时间;
17.(2)本发明设计了一种基于含门窗洞口墙体结构自动排布混凝土块的程序;
18.(3)本发明设计了一种基于含门窗洞口墙体结构的砌块区域下料优化算法;
19.(4)本发明可以减少施工过程中的返工和材料浪费,有利于建筑业绿色可持续发展。
附图说明
20.图1是含门窗洞口的墙体结构在砌块区域下料总流程图;
21.图2是在含窗洞口的墙体结构上自动排布混凝土块的流程图;
22.图3是在排布完混凝土块后在砌块区域下料布置流程图;
23.图4是优化不同厚度的灰缝组合流程图。
具体实施方式
24.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施实例,对本发明进行详细说明。此处所描述的具体实施例仅用于解释本发明技术方案,并不限于本发明。
25.上述发明内容可以通过计算机编程语言实现,并且依托可视化编程工具,使用计算机语言进行编程,调用可视化编程工具应用接口中的相关函数。
26.实施以含窗洞口墙体为例进行说明,操作步骤如下(见图1)
27.步骤一:根据所要创建的墙体构件需求,如若需要,则基于公制常规模型创建目标族,创建墙体模型及窗洞口等相关结构,确定所需排布构件并设置相应的参数;
28.1.根据施工设计图,使用revit创建含有窗洞口的墙体结构模型;
29.2.根据使用功能等需求,确定需要分区下料的自动化创建的墙体结构。
30.步骤二:分析墙体的参数信息,确定墙体的可参数化数据、非参数化数据与自适应数据。尺寸可变的数据称为可参数化数据;将实际可变数据取允许范围内的某一数值,此类数据为非参数化数据;在满足边界约束条件、整数限制要求的前提下,由其他数据驱动变化的数据为自适应数据;
31.1.目标墙体的尺寸,砖块、砌块尺寸,纵向灰缝的宽度可以设置变化,此类数据称为可参数化数据;
32.2.考虑到砌筑工程规范要求以及施工常用做法,我们将实际可变数据取允许范围内的某一数值,横向灰缝宽度设置为10mm,导墙区域砖块层数设置为3层,此类数据为非参数化数据;
33.3.根据以上参数的设置及边界条件、约束条件,由程序自适应确定导砌块区域的砖块排布方式为自适应参数。
34.步骤三:在满足现行规范要求的前提下,设计墙体构件自动化排布方法,输入基于步骤二中的相关数据信息,结合计算机语言进行编程,调用可视化编程平台应用接口中的相关函数,参数化自动排布墙体构件;(见图2)
35.墙体窗洞口混凝土块自动化排布方法
36.1.调用select model element节点,选取拟创建的墙体。再配合使用element.faces、surface.area、list.maximumitem函数计算出墙体每一墙面的面积并判断其中的最大面积值,结合list.filterbyboolmask节点过滤初始列表得到最大面积值所对应的墙面,以完成确定面积最大的面作为参考面;
37.2.调用element.getlocation及line.direction节点,提取墙体中心线及其方向向量,再配合使用surface.perimetercurves、wh_curve.getpoints、dictionary.valueatkey及line.bystartpointendpoint函数找到排砖参考面中各边的方向向量,再将其各边方向向量与墙体中心线的方向向量相对比,以完成在排砖参考面上确定一条与墙体中心线平行的横向控制线;
38.3.调用vector.zaxis()函数获取z轴方向上的方向向量,以此分别在上述横向控制线的上下一定距离确定两个点位,再调用geometry.doesintersect节点判断选择在墙面上的点位并结合line.bystartpointdirectionlength节点得到一条纵向控制线。再借助code block节点配以design script编程语言进行程序编写以判断更正纵向控制线的方向,以保证其为一条由下往上指向墙体高度方向的纵向控制线;
39.4.在上述所得纵向控制线上得到混凝土块放置高度所对应的控制点位数据,输入小砖块的尺寸、灰缝厚度以及导墙砖的层数确定导墙区域的高度。调用math.round函数,分别得到窗洞口底部至导墙上部的砌块层数、窗洞口高度范围内的砌块层数,结合混凝土块布设规则,在code block节点中使用design script语言编写程序,先计算出第一块混凝土块的高度位置sum[-1]。再调用for循环语句内嵌算法程序逻辑结构,将matlab算法运行结果中的灰缝厚度对应布设在相邻行的砌块中,灰缝厚度与砌块高度相加,得到所有混凝土块位于两条纵向控制线上的横向控制点位数据;
[0040]
5.调用curve.pointatsegmentlength节点,将上述所得到的各点位在对应纵向控制线上的截取长度转变为点位坐标。再调用familyinstance.bypoint节点与familytypes点,将此前所创建的可参数化混凝土块族放置在对应的点位坐标上,调用element.solids节点与solid.byunion节点将族转变为实体并组合成实体模型群。
[0041]
此步骤工作以窗洞口为例,完成了门窗洞口两侧的混凝土块放置方案及算法联动程序。
[0042]
步骤四:基于步骤三得到的自动排布相关构件后的墙体,再次使用计算机语言进
行编程,调用可视化编程平台应用接口中的相关函数,确定砌块区域下料的布置位置;(见图3)
[0043]
1.引入一种基于matlab的验证算法嵌入岛式多约束非连续界面的砖块递推排布应用,该种算法应遍历出多尺寸灰缝的所有排列组合形式,具体规则如下:
[0044]
(1)该种算法应遍历出不同厚度灰缝所有的的排列组合形式再设定公式进行累加,公式为:3
×
(zg+zhf)+zhf=x1,x
i-1
+qhf+qg=xi;
[0045]
(2)逐步累加计算得到x
i-1
~xi式的值,再将其按照公式min|x
i-cg|计算取得最小值。其中,zg、qg分别表示输入量中砖块、砌块的高度,zhf表示砖块层间的灰缝厚度、qhf表示砌块层间的灰缝厚度,cg表示输入量中的窗高。
[0046]
由此计算出任意一组数据在所有排列组合情况下的偏差值最小值,再寻优找到所有排列组合中的最小数据,并与规范要求相比较以确保数据有效性。此算法用于得出最优灰缝组合且可验证是否满足国家规范要求,此后继续对砌块区域的下料精细化排布(见图4)
[0047]
2.依据步骤三运行编写完成的程序,得到自动排布后含有混凝土块构件的墙体模型;
[0048]
3.由验证的算法得出最优灰缝组合,输入砖块尺寸、砌体尺寸、灰缝尺寸、墙体高度、窗体高度,编写design script中的正则表达式a..b..a,表示从起点a开始,到终点b结束,间距为a的一组等差数值列表list1控制点位数值列表。list1即为砌块区域的横向控制线定位点;
[0049]
4.调用line.bystartpointdirectionlength函数,以砌块区域横向控制线的定位点为起点,墙体水平方向中心线向量作为方向向量;调用geometry.intersect函数,求出延伸后初始横向控制线投影在导墙区域部分的线段,作为砌块区域横向控制线;
[0050]
5.使用for循环语句和if条件语句,调用ji1()函数,求出砌块区域奇数行标准砖布置位置,调用list.lastitem函数求出奇数行最后一块砖的布置点位,调用list.lastitem函数,求出奇数行最后一块砖的布置点位,调用list.additemtoend函数,求出砌块区域偶数行砖块布置位置。
[0051]
步骤五:将创建完毕的模型载入编程平台,运行程序,完成墙体自动化布设相关构件后的砌块区下料精细化排布工作。
[0052]
1.打开已经创建完成的墙体三维模型,选择目标墙体,运行程序,完成对含有构造柱、窗洞口、窗过梁、窗台梁、混凝土块的目标墙体模型的分区下料精细化排布工作。
[0053]
以上所述仅表达了本发明的优选实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形、改进及替代,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1