Patran中球扁钢截面的创建

撰文/ 中船重工(武汉)船舶与海洋工程装备设计有限公司 何勇

通过分析在Patran 中创建任意形状截面的原理,提出了通过二次开发编写专用函数,快速创建球扁钢截面的方法。对编程思路作了详细阐述,并介绍了编程难点及其解决措施,对比了本文方法及CSR 中的等效截面法的模拟精度。本文所述方法对提高球扁钢截面的模拟精度及创建速度具有积极的参考价值。

一、引言

作为一款通用的有限元前处理软件,Patran 提供了丰富的型材截面库,可方便地创建造船工程中常用的扁钢、角钢、T 型材和槽钢等标准形状的型材截面。但球扁钢作为造船工程专用的型材,并没有被Patran 纳入标准截面库。作为替换手段,在实际建模中很多人按《散货船结构共同规范》第3 章第6 节4.1.1 中提供的公式将球扁钢截面转换为“等效的”角钢截面进行模拟。分析表明,这种转换方法精度不够高,离工程实际应用要求的精度尚有一定的距离,因此有必要研究能更精确地模拟球扁钢截面的方法。

二、Patran 中创建任意形状截面的原理

事实上,Patran 提供了创建非标准形状型材截面的方法,即Beam Library 面板中的Create\Arbitrary Shape\Boundary Loops 方法。这种方法通过截面轮廓上的点来定义截面,轮廓点的坐标可以直接在面板中输入,或者通过拾取数据库中已存在的面,由软件自动计算并填写,还可以通过外部文件导入。

利用已知轮廓点的坐标,Patran 调用内部函数arbitrary_section_create 便可完成截面的创建。所生成的截面轮廓由若干直线段组成,各直线段由各轮廓点两两依次连接得到。

三、球扁钢截面分析

图1 所示为球扁钢的截面形状及尺寸参数,图中h 为球端高度,b 为腹板宽度,t 为腹板厚度,r1 为球端圆角半径。分析图1 不难看出,在忽略腹板端部圆角的情况下(事实上,忽略此圆角对球扁钢的截面属性影响极小,以HP200×10 为例,此圆角的半径r ≤ 3),球扁钢截面的轮廓由5 根直线段AB、BC、CD、EF、GA 及两段圆弧线DE、FG 组成,圆弧线DE 和FG 所对应的圆心角分别为60°和150°。

根据前面所述Patran 创建任意形状截面的原理,对于直线段AB、BC、CD、EF、GA,只需提供点A 到点G 的坐标,程序便可自动依次连接各点生成。而对于圆弧线DE 和FG,若只提供D、E 和F、G 的坐标,生成的将是直线段而非圆弧线。利用圆内接正N 边形当N → + ∞时即为其外接圆的原理,不妨用若干条正多边形的边来近似圆弧线DE 和FG。

从上述分析可以看出,直接在Beam Library 面板中逐个输入轮廓点的坐标创建球扁钢截面是不可取的,因此有必要借助Patran 的二次开发语言PCL 编写专门的函数,实现快速创建。

四、编程思路、难点及解决措施

为了快速方便地创建球扁钢截面,编写了db_create_bfs_section 函数。为减少用户输入,此函数只有两个输入参数,第一个为球扁钢规格,为形如“HP200×10”的字符串,第二个为用于指定是采用新标准(GB/T 9945-2001 热轧球扁钢)还是旧标准(GB 9945-88 造船用球扁钢)的整数,0 为新标准,1 为旧标准。之所以需要指定标准的版本,是因为球扁钢新标准规定了两种不同的系列,即新标准表和旧标准表。当腹板宽度b 和厚度t 相同时,两种系列的球端高度h 不同,如HP160×8 的h 新标准表为30,而旧标准表为36。

编写函数体时,首先需得到要创建的球扁钢截面的腹板宽度和厚度。利用PCL 提供的str_substr 和str_index等字符串函数,不难从第一个输入参数中获得这两个尺寸。接下来需要得到球扁钢截面的球端高度h 和圆角半径r1,这是编写此函数的难点。研究新标准表不难发现,尽管对于同一腹板宽度b 的球扁钢,其h 和b、t 之间存在一致的关系,但不同b 之间的球扁钢的规律却并不相同,如HP120×6 ~ HP120×8(h 为23 ~ 25) 的h 和b、t 之间存在h=0.15b+t-1 的关系, 但HP180×8~HP180×11(h为33 ~ 36)和HP200×9 ~ HP200×12(h 为37 ~ 40)却分别是h=0.15b+t+1 和h=0.15b+t-2 的关系。因此这种通过b 和t 算得h 和r1 的方法将非常麻烦。本文提供一种根据b 和t 查询得到h 和r1 的方法。此方法先将球扁钢截面库定义为一个二维数组,每一行对应新标准表或旧标准表中的一种腹板宽度,各行的列元素依次为“b、r1、t1、h1、t2、h2……”。根据这种排列原则,新标准表所列系列对应一个17×12 的数组,旧标准表所列系列对应一个15×6 的数组。查询时,先判断球扁钢所在行,提取该行第2 列的元素作为球端圆角半径r1,再判断腹板厚度t 所在列,提取该列后面的第一个元素作为球端高度h。

球端高度和圆角半径另外编写函数get_bulb_size 获取。值得注意的是,PCL 函数只有一个返回值,因此在编写此函数时,可以定义返回值选项输入参数,用于选择返回何值,如可规定为0 时返回球端高度,为1 时返回圆角半径。

图2 所示为在Patran 命令行执行db_create_bfs_section(“HP160×8”,0) 命令所生成的HP160×8 球扁钢截面及其由Patran 计算得到的截面属性。

五、精度对比

表中给出了五种不同规格的球扁钢分别由旧标准查得、按本文方法创建并由Patran 算得及按CSR 中的方法创建并由Patran 算得的截面属性。表中A 为截面积,Gy 为截面形心在图1 所示坐标系中的垂向坐标,Ix 为相对于水平中和轴的截面惯性矩,tanθ 为截面主轴与y 轴的夹角的正切值,误差为相对误差(%)。从表中可以看出,创建球扁钢截面时,本文所述方法要比CSR 中的等效截面法精确得多,截面积误差不超过0.1%,截面形心垂向坐标误差不超过1%,水平惯性矩误差不超过3%。

六、结语

通过Patran 二次开发编写只有两个输入参数的函数,实现了球扁钢截面的快速创建,模拟精度较CSR 中的等效角钢截面法有明显的提高,对如何在Patran 中高效精确地创建球扁钢截面有良好的借鉴意义。

浏览次数:  更新时间:2015-09-17 14:23:06
上一篇:PTC Creo助FourthWing缩短50%上市时间
下一篇:基于螺旋线铣削大导程滚珠丝杠的应用
网友评论《Patran中球扁钢截面的创建》
Top