APP下载

Tekla Structure栏杆建模插件参数化设计

2023-03-21

船舶与海洋工程 2023年1期
关键词:实体模型栏杆立杆

邓 凯

(中海福陆重工有限公司,广东珠海519055)

0 引 言

当前浮式生产储油卸油装置(Floating Production Storage and Offloading,FPSO)上部模块模块化设计和建造技术已得到广泛应用,模块上碳钢或玻璃钢材质的栏杆通常设计为标准结构[1],建造方常用Tekla Structure软件(以下简称Tekla)进行三维建模[2],通常采用内置栏杆节点,根据设计方栏杆典型图纸和栏杆布置图纸进行细化建模。当内置节点不满足需求时进行二次开发,但基于内置节点进行二次开发[3]无法摆脱内置节点的框架约束限制,开发之后节点功能存在局限性,很少能满足生产项目的特定栏杆构造要求,造成建模存在速度慢、正确率低的问题。本文根据该软件的应用程序接口(Application Program Interface,API)[4],通过参数化编程开发,对栏杆参数进行分类和建模步骤封装,简化建模人员的操作,达到快速高效建模的目的。

1 技术背景说明

1.1 栏杆典型图要求

本文以中海福陆重工有限公司北美某项目为例进行分析,模块栏杆的设计以PIP STF05521 规范中的典型栏杆图(见图1)[5]为基准。栏杆分为固定式和可拆卸式2 种,其中:固定式栏杆由顶部扶手、横杆、立杆和踢脚板构成;可拆卸式栏杆是在固定式栏杆的基础上,将顶部扶手、横杆和踢脚板断开,并用螺栓与连接板彼此相连构成。立杆与H型钢或槽钢类型的安装梁通过角钢连接,与顶部扶手连接的立杆需削斜,栏杆与栏杆之间成直角转角接头,各组件的规格和相互间的定位距离有规定。

图2 为该项目采用的栏杆典型图,整体结构基于PIP STF05521 规范设计,但细节部分与其存在一定的差异,例如对角钢规格、栏杆与安装梁连接方式、定位距离和螺栓规格等进行了重新设计,特别是对栏杆相互垂直转角连接有专门的处理方式:栏杆相交成阳角(图2 的A-A剖面),行人位于栏杆转角外侧,转弯时可能会与转角碰撞,因此设计转角过渡处理,防止碰撞;栏杆相交成阴角,行人位于栏杆转角的内侧,不会与转角碰撞,两栏杆自然垂直即可。

图2 项目采用的栏杆典型图

1.2 Tekla内置栏杆节点分析

Tekla是钢结构制造商广泛使用的深化建模及出图软件,该软件拥有多种国际规范的型材库,可对零件进行切割等多种布尔操作。图3 为Tekla内置编号为1024 的常用栏杆扶手节点。

图3 Tekla内置编号为1024的常用栏杆扶手节点

该节点可自定义立杆水平距离、横杆竖直距离、栏杆总长度、与连接梁的偏移量,以及横杆、立杆、踢脚板的规格和材质等属性。针对该项目,该节点存在以下限制:

1)不能满足立杆顶部削斜要求;

2)不能处理图2 中C-C 剖面所示立杆与安装梁的螺栓连接形式;

3)不能处理可拆卸式栏杆具备的螺栓、螺栓连接板和长圆孔开孔;

4)不能处理栏杆垂直相交时项目的阴角和阳角的特殊要求。

因此,采用内置节点必然导致需将节点炸开之后进行修改模型工作,其能带来的建模便利性非常有限,特别是不能满足后3 点,导致无法在项目上直接使用,因此进行二次开发工作[6],编制栏杆插件。图4 为内置节点与插件建模效果对比。

图4 内置节点与插件建模效果对比

2 栏杆插件参数化开发

2.1 Tekla开发环境及插件介绍

插件的开发语言为C#,采用微软Visual Studio作为集成开发环境[7]。为实现插件同Tekla 通信,需使用Tekla软件提供的API接口。该接口是一种通用的程序接口,开发人员可通过该接口实现调用Tekla的命令,进而实现建模等具体操作[8]。本文主要采用Takla提供的3 种动态链接库(Dynamic Link Library,DLL)作为接口(见表1)。

表1 Tekla API的3 种DLL库

插件由3 个模块组成,各模块的功能见图5。

图5 插件各模块的功能

1)窗体模块为直接面向建模人员的模块,向建模人员展示插件的功能,如各项功能的说明;获取建模人员与Tekla的交互信息,如获取建模人员选择的安装梁和辅助梁等;获取建模人员的输入信息,如栏杆立杆的间距等。

2)实体模型模块将角钢、扁钢和螺栓等实体模型单独封装为一个模块,定义其物理规格信息和材质信息,这样做的目的有2 个:

(1)便于以后扩展实体模型,比如增加新的角钢规格和新的材质等;

(2)分离实体模型和功能操作,降低两者相互影响的程度,避免因实体模型改动导致相关功能操作的代码大幅度改动。

3)功能操作模块是核心模块,实现具体的扶手、立杆和踢脚板等基本栏杆组件的建立、切割和削斜等操作,以及进行栏杆的阴角和阳角建模、螺栓连接等操作,各类操作均在程序中定义为对应功能的“子程序”,并用实体模型作为子程序的传递参数,由此简化代码,实现代码块复用,形成模块化程序设计,使后续扩展其他功能时降低对当前代码的影响。

2.2 插件开发

插件开发面临的核心问题有2 个:

1)寻找实体模型与程序模型的对应关系,从而将物理属性(类型)、几何属性(外形尺寸、空间位置)和物理操作(切割、打孔等)“映射”到程序模型上。通过程序代码操作程序模型,进而实现操作实体模型。实体模型集合了栏杆中各种零件、零件的空间坐标及零件之间的切割关系,而程序模型是由Tekla DLL 提供的Beam、ContourPlate、Point和Boolean等“类”定义的。各种类内置的属性和功能模拟了实体模型的特性,比如:Point类是定义一个点的三维坐标,1 根梁的起点和终点坐标只需Point 类的2 个实例即可定义;Boolean

类是定义一种三维体的布尔运算操作,切割和打孔操作可通过布尔差集运算完成;TransformationPlane类是定义一种坐标系变换矩阵,当需对零件操作时,可实现全局坐标系到零件局部坐标系的转换,方便在零件上定位建模。[9]上述功能分别通过实体模型模块和功能操作模块实现。

2)寻找人工建模步骤中规律性强、重复性高和易错的步骤,梳理并规范相关流程,编写程序处理逻辑和代码,仅将需人工判断的信息作为程序的输入参数,本例中的输入参数分为2 类:一类是完全依赖人工判断的参数,这类参数通常是程序的起始条件,是程序无法自行确定的,包括选择安装梁和安装起点,判断栏杆起点和终点的形式,以及选择起点和终点辅助梁;另一类是半依赖人工判断参数,这类参数具有一定的调整范围,程序设置一个最低限度的默认数值,可接受人工输入范围内的任意数值,目的是允许栏杆建模时在许可范围内修改,提升灵活性。其余的安装梁类别,梁的高度、宽度、翼缘和腹板厚度信息,横杆与立杆间距,螺栓孔的直径、数量,螺栓连接板位置和厚度等均是固定的数值,不允许人工修改,作为程序的内置数据。顶部扶手建模、横杆和踢脚板建模、立杆建模、立杆顶部削斜、阳角和阴角搭接处理、打螺栓孔和螺栓连接板等操作均是在以上数据的基础上有规律地进行的,只需按项目的要求逐步完成即可,因此将这些步骤编制成程序进行自动处理,无需人工干预,从而发挥计算机运算速度快、准确度高的优势,达到替代人工操作的目的。这些功能将通过功能操作模块实现。

基于上述插件的设计思想,制订程序逻辑流程图(见图6),并完成3 个模块的编程和插件交互界面(见图7)设计。窗体底部和右侧的按钮为建模人员必须人为判断的完全依赖参数;中部深色背景框的参数为半依赖人工参数,建模人员可修改或选择默认值,当超出允许范围时,程序会提出错误警告进行纠错提示;其余各类信息(如立杆规格、横杆间距和踢脚板规格等)完全为程序内置数据,不能被建模人员修改。

图7 插件的交互界面

插件运行之后,若建模人员选择和操作正确,将一次性完成栏杆建模,无需作任何修改。插件对需要建模人员判断的数据和规律性步骤进行自动处理,使建模人员无需关注程序内部流程,仅关注输入参数即可准确高效地完成建模工作。

3 结 语

栏杆插件参数化开发跳出了Tekla软件内置节点的束缚框架,完全满足项目的特殊要求;对各类参数和流程建立了处理逻辑,封装了众多固定数据和操作步骤,仅留出必要的供建模人员输入的参数,大幅简化了建模人员操作。该插件经过项目中总计长约3 000 m 的栏杆建模测试,准确度达到100%,效率是常规做法的5 ~6 倍,累计直接节约180 工时,间接节约了校审的工时,在项目建设中发挥了巨大作用。此外,相对于内置节点版本控制难和易被修改的问题,该插件不仅可加密编译为可执行格式文件,而且可控制插件的使用寿命,定期分发新版,防止建模人员使用旧版,从而解决内置节点的问题。同时,插件具有良好的可扩展性,后续若有基于PIP STF05521 栏杆标准的项目,只需对插件进行部分针对性修改即可使用,无需重新编制。

猜你喜欢

实体模型栏杆立杆
跨过童年的栏杆
满堂碗扣支架间排距快速确定问题探讨
盘扣式钢管独立支撑塔架承载力研究
高大模板支架模型试验受力分析
高速公路手动栏杆智能化改进方案设计
超载下高支模碗扣式架体单元组装方式分析
高速公路自动栏杆机技改方案探析
建筑设计中的实体模型
建筑设计中的实体模型
F8F-1B“熊猫”舰载战斗机实体模型工作图