是的!
宋老师又要来讲桁架建模了!实在是太太太太执着了,我自己都快感动哭了/(ㄒoㄒ)/~~其实这一切的契机还是因为在设计大赛期间,有三四个桁架结构的项目实在是见猎心喜,但是因为参赛时间的限制,只能笼统的讲一下大致思路,并且让工程师尝试了最不会犯错的一种做法;设计大赛结束以后,宋老师也是抓耳挠腮了许久,还是想结合一些不同的场景和不同实现方法给大家讲一下关于桁架这个“深渊”问题。
让我们回顾一下为什么用CIM来做桁架结构很适合。首先,桁架结构的主要构件,也就是上下弦杆、腹杆和水平系杆,这些构件本身自体就是“横平竖直”的状态,是特别符合CIM建模线族空间的理想状态的。换句话说,其实只要我们有了骨架线,有了构件的线族,抓起来拼一拼,大致的框架模型就能创建出来了。但是,大家也都清楚,其实桁架结构最磨人的还是节点的部分。
让我们用设计大赛的参赛作品举例(优秀奖案例14号作品);
(链接:
https://www.wolai.com/midasit/6CCAekM85NWudqtVYpGFmq#9Mu9yPRx2w9LJKusjsoYUA)
本质上,这个做法就是最不会出错的一个做法,框架搭建完成后,提取出部分的实体,在单独建立节点板和接头板的实体模型,最后组成了这样一个桁架节点。这样的做法是相对还原十年前钢结构加工厂的建模方式的,就是需要依靠用户大毅力大决心的把每个节点都一五一十的创建出来;一般来说,我做到第七个节点开始就要道心破碎,陷入冷笑和幽怨的循环中了。所以我称之为勤能补拙之法。
但是,我也还是要强调一句,这一类的机械操作其实是还原度最高的教科书做法。繁琐、重复不是他的错,问就是单纯效率不高并且过程比较折磨罢了。
偷懒是第一生产力,偷懒的前提是,要绞尽脑汁想尽方法找偷懒的渠道。首先我们第一个能想到的可能就是在参数化这方面做做文章;我们先回顾一下在之前技术连载中,廖老师讲到了通过参数化点族,实现了钢锚箱的实例建模:
midas CIM项目应用连载(10)│斜拉桥钢锚梁参数化三维设计
回过头来,我们再来好好剖析一下这篇技术连载中最精华的部分,其实就是针对板件实现了外观尺寸的“截面参数化”和位置关系表达的“约束点参数化”,两者结合,就可以通过修改拉索角度来实现钢锚箱的整体建模。(详细的操作还是需要跟着教程好好熟悉一遍)
本文中,我会用一个桁架拱的项目为例;
(老规矩,老朋友都习惯了的操作,以上项目数据都是我现编的,纯建模角度考虑,如有雷同,算我们心有灵犀)
1.骨架线的实现
我们可以通过导入dwg到CIM中,然后分配一下上下弦杆和斜、直腹杆等线族到空间线上;当然可以这样做,但是这样不符合宋老师的人设,所以,我们还是先把简单的事情复杂化一下,把这些骨架线通过“约束路径”的形式在装配族中表达出来:
通过控制“主约束路径”的起/终点Z方向偏移距离,配合以“子路径”的直腹杆最终完成所有路径的搭建;这里又会有工程师说了,就光建立这些约束路径就已经要下楼吞云吐雾几次了,有没有便捷一点的方式?不要急,相信宋老师的人设,卖个关子先。
2.节点板参数化
然后我们再回头来设计一下这个节点,这里以A8四向节点为例,节点大致长这个样子;
所以我们现在开始要对这块节点板动手:
一、首先要明确一下基点位于桁架节点上的四条辅助线:
节点左侧弦杆骨架线
节点右侧弦杆骨架线
直腹杆骨架线
斜腹杆骨架线(增加难度,斜腹杆骨架线稳定经过基点竖直向上300mm处)
二、通过弦杆、腹杆高使用偏移、剪切及延长补充一下外轮廓线
三、确定板件尺寸
这一步,也是反应了设计师在设计节点的时候对构造的考虑,这里我们只要记得,按照“按住一个调整方向添加一个参数指标”的逻辑顺序去形成面域后添加参数数据。
最终装配后的效果如上,并且对以上弦杆和节点板添加超级剪切的关系,完善模型效果。
3.函数的逻辑嵌套关系
截面参数化对大家来讲可能就是一个按部就班的环节,该给的约束加上,距离约束及参数表的链接给上,基本上板件形状大家能够按照一定的设计依据和构造要求完成;
那么接下来的问题就是怎么去统一参数,目标是,只填写一次参数,就能把节点板还有上弦杆的构造等甚至是杆件位置都能通过参数表达出来。
首先我们来明确一下参数表里“基本参数”和“约束参数”的关系,官方的解释我就不再赘述了,大家只要去了解一下,跨越层级后,下层空间的“基本参数”会成为上层空间的“约束参数”。如果我们需要直接用上层空间的“基本参数”去控制下层空间的“基本参数”,就要在上层空间里遗传性的增加下层空间的参数条目。很绕口令对不对😵,那让我们来看具体的例子。
很遗憾,也就是说我们想要在装配族里直接通过装配族的“基本参数”来调控节点板节点,就需要做3次这样的工作。截面参数化→点族→装配族,后面就可以直接在装配族里对参数呼来喝去了。
tips:
此处也有一些小贴士可以和大家分享。因为节点板两侧接弦杆的形状是依靠截面参数化里两条参考线为依据的,参考线的角度值是靠反正切函数求得的,所以需要的是上弦杆梁端端的△Z来确定。兜兜转转好像又和骨架线的Z偏移值产生关系了,用脱口秀的行话来说就是callback了。所以也需要充分利用一下这些数值了。
装配族中快速建立节点的Z坐标,可以通过在表格中统计最后复制进参数表
通过对主约束路径绑定偏移值,后续由修改就可以完全通过参数表来进行改动
最后我们将上弦杆和腹杆都拼装上去,并且对单个节点板调整部分参数(这里宋老师没有每个节点都用“基本参数”归纳,所以需要手动选择单个点族对它进行参数编辑,有兴趣的工程师可以做个总表,通过总表来控制全部族库)。
最终上部节点的拼装成果
我们来最终尝试一下改变单个节点的位置,可以发现,首先该节点影响到的左右两侧上弦杆发生了位置上的变化,其次就是节点板的外部尺寸也跟着节点的位置和对应两侧上弦杆斜率发生了改变,到这里宋老师也是松了一口气,还以为会翻车,还好还是比较给我面子,人设立住了!
我们来总结一下这个环节的几个要点:
首先参数化得搞的明白,无论是截面参数化还是参数化逻辑嵌套,尽量要一条路走到头,在开始的时候把有哪些参数想透彻;
实现自适应变化的过程就是参数传递的过程;
不要忽略约束面、约束路径的参数化链接,他没有出现在“参数-链接”选项中,但是仍然是可以进行参数设定的;
简单的事情复杂考虑,复杂的事情简单去做(这样显得我很厉害)。
坚持看到这里的工程师,我要为你先鼓掌一下。接下来最后一部分内容,我想给大家引一条路,正如程航老师在CIM常规桥建模助手发布会上说的那句“授人以鱼不如授人以渔”:
https://www.bilibili.com/video/BV1Lhz1YoEWY/?spm_id_from=888.80997.embed_other.whitelist&bvid=BV1Lhz1YoEWY&share_source=weixin
为什么这么说呢,大家如果对CIM的智能模板有所了解的话就会知道,其实CIM的api已经悄悄对大家敞开大门许久了。我们在CIM中通过左侧程序栏控制输出的一些功能,其实都是可以通过指令的方式让CIM来实现自动化作业的,比如说我们之前看到的骨架线:
让我们先来玩个帅的:
可以看到,我将建立骨架线这一环节通过csv脚本文件的方式导入了CIM中,软件会自动把指令完成操作,得到骨架线路径以及约束点(节点)。当然,如果大家有兴趣还可以做一个前端的页面,只要导出的csv文件能够符合读入的数据格式就可以完成属于自己的“智能模板”。
目前只是展示了骨架线的建立,实际上在脚本文件中还可以体现分配线族和点族,以及对其添加对应的参数的过程,也就是省去了手动装配的工作,并且可以配合自训AI数据库的AI分析,把点线族的参数类似化学方程式配平般完善到最合理的状态;
PS: 具体的智能模教程和文字说明都已经上传官网和B站,各位工程师可以在线上获取学习课程和资料。
在本届的设计大赛中,就已经有看到有工程师已经能够熟练的使用智能模板完成项目:
https://www.wolai.com/midasit/6CCAekM85NWudqtVYpGFmq#5zLgN1wrZdDWVAdonXx4Az
简单的事情好像逐渐变得稍微有点复杂了,又是建立参数化的节点,又是联动参数,最后还有智能模板。似乎宋老师在给大家挖一个巨大的坑等着大家往下跳;但还是不要怀疑宋老师想要带领大家“抄近道”的决心,用对了工具和方法,看似在给自己挖坑,实际上“这世界总有人在忙忙碌碌挖宝藏”。简单和繁琐的判别可能换个立场就会截然不同,条条大路通罗马,在这里也只是希望给工程师们开辟一条小道,或许初次涉足有些绕路,但是路总会越走越宽,越走越顺!
期待下一次再来立人设,完结,撒花❀❀❀!
CIM官方网站:https://cim.midasit.cn
微信公众号:midas CIM
CIM资料库:
https://midasit.wolai.com/rzYJFuvRJBsw9Jn7jSyf7u
QQ官方交流群:732508808