梁单元截面方向调整技巧:方向矢量应用

其实个人主要做机械结构方面的分析,很少接触到需要大量调整的梁结构。会考虑写这样一篇文章主要源于前几天夜谈会室友向我们抱怨,说做项目用NX Nastran调整了120根梁截面的方向,因为基体结构是个圆筒,所以调整起来异常麻烦。当时我想着没这么麻烦吧,于是第二天用hypermesh试了下,发现的确不是很容易,于是就该问题总结了一些方法,可能不是很好,但有总比没有好。下面用两个例子来进行说明:


第一个案例是这种圆筒结构(平面框架的就不说了),内部有横向以及纵向的U形辐条,其中槽口均朝向各截面圆心处。

梁单元截面方向的调整-方向矢量的图1

图 1 圆筒框架示意



第二个案例是任意曲面形式的结构,内部也有一定形式摆放的纵向U形梁,各槽口指向所在曲面的内法线方向(第一种的扩展)梁单元截面方向的调整-方向矢量的图2

图 2 曲面框架示意



1          方向节点和方向矢量

在进行案例的说明之前,有两个概念得先和大家说一下,就是梁单元的方向节点和方向矢量。其实从文章题目可以看出,我主要想强调下方向矢量的概念和使用。

梁单元截面方向的调整-方向矢量的图3

图 3 梁单元坐标系创建示意


首先我们得明白一点,梁截面的方向是与单元坐标系一致,因此我们的重点在于梁单元的单元坐标系是如何建立的。如上图所示梁单元,单元坐标系的原点在单元中心,根据1(I节点)→2(J节点)我们知道了梁单元的X方向,其次,我们指定了一个方向节点3(K节点),那么1→3实际定义了一个方向矢量V。利用X方向以及方向矢量V,根据右手定则(V叉乘X)可以得到单元坐标系的Y轴,再使用一次右手定则(X叉乘Y)就得到了Z方向。也就是上图中的白色(X),绿色(Y),蓝色(Z),这样截面的Y,Z就直接与单元坐标系的Y,Z对应上了。按照上面的坐标系,我们赋予一个L形截面,会得到如下对应结果:

梁单元截面方向的调整-方向矢量的图4

图 4 单元坐标系与截面坐标系的对应



所以说实际上方向节点并不是说直接指定截面的Z方向,而是通过生成一个方向矢量V与X方向叉积得到Y方向,再将X方向与Y方向叉积就得到了Z方向,当方向节点K恰好在I节点上方的时候,I→K就是Z方向。明白了这个我们其实就可以理解调整梁截面的方向其实有两种办法:①通过方向节点间接定义②直接通过各种方式给出方向矢量。

开始两个案例之前得先说明下:上述规则是ansys的并不一定适用于nastran或者其它软件,但是基本的方法是类似的,比如下面两个例子基于optistruct和nastran模板进行操作,它的截面方向与ansys正好相反,所以是X先叉乘V得到Z方向,然后Z叉乘X得到Y方向。



2          案例1

梁单元截面方向的调整-方向矢量的图5

图 5 案例一



首先,我们通过hyperbeam创建optistruct的U形梁截面,尺寸如下:

梁单元截面方向的调整-方向矢量的图6

图 6 截面尺寸



将截面形式赋予给横梁与纵梁的组件,并对横梁与纵梁进行网格划分,默认情况下会得到如下的截面形式:

梁单元截面方向的调整-方向矢量的图7

图 7 默认截面方向结果

可以看到,大部分梁的截面方向以及偏置都不是我们要的,因此需要进行调整。



2.1   横梁调整

首先调整横向的梁。通过观察我们可以知道,如果梁截面的Y方向刚好是沿着桶的轴向的,则槽口的方向(截面Z方向)恰好朝着径向,也就是我们需要的结构,因此使得这些梁单元的矢量方向指定为轴向(也就是全局的Y方向)则可以得到一个初步的结果,如下:梁单元截面方向的调整-方向矢量的图8

图 8 初次调整



如上,虽然槽口的方向趋势是对的,但是朝向却是反的,因为截面方向还和梁单元的IJ方向有关,所以再把反的部分(白色部分)使用负Y方向矢量摆正即可得到下面的正确朝向结果(建议更新的时候pin a,b一起更新)。

梁单元截面方向的调整-方向矢量的图9

图 9 截面调整一致



我们可以看看这些单元的坐标系都是怎么样的:

梁单元截面方向的调整-方向矢量的图10

图 10 单元坐标系示意



可以看到,Y为桶的轴向,X为切向,Z为法向,YZ截面恰好对应我们定义的U形截面。

方向调整好之后我们设置截面偏置(沿着单元坐标系的Z方向)就得到了最终的结果(偏置的大小可以通过hyperbeam测量)

梁单元截面方向的调整-方向矢量的图11

图 11 横梁最终结果



2.2   纵梁调整

纵梁调整原理和上面一致,都是创建合适的单元坐标系。我们观察纵梁,要达到预期要求,和上面类似只要所有梁单元的单元坐标系的Z方向指向圆心就行。这样我们只需要定义方向矢量为切线方向,那么Z方向就直接是我们需要的了。但是每根梁的切线表达在总体笛卡尔坐标系下表述会比较麻烦,因此建立局部柱坐标系,将这部分梁节点的位移坐标系(dispalcement system)转到柱坐标系下,则柱坐标系的Y方向就是切线方向。坐标系转好之后,直接按照displacemen system进行设置即可初次得到结果如下

梁单元截面方向的调整-方向矢量的图12

图 12 纵梁初次调整


和上面一样,由于节点IJ方向的原因,我们还需要将恰好相反的方向调整为-Y方向,最终得到如下截面方向:

梁单元截面方向的调整-方向矢量的图13

图 13 纵梁方向一致向内


同样,我们来看看梁单元的单元坐标系,如下:

梁单元截面方向的调整-方向矢量的图14

图 14 纵梁单元坐标系示意


可以看到,Y方向是切线方向,X方向是单元IJ定义的纵向,Z方向是发现向内。最后调整下截面的偏移即可得到最终的结果如下:

梁单元截面方向的调整-方向矢量的图15

图 15 最终结果

其实可以发现,横梁和纵梁的局部坐标系几乎是类似的,只是横梁的切线方向由IJ方向指定,所以定义纵向矢量,纵梁的纵向方向由IJ指定,所以定义切向矢量。

其实圆形的还算比较方便的了,我们只需要统一调整再局部微调就行,但是如果是下面这种非圆形的,我们不能使用局部柱坐标系又怎么办?这个时候需要直接创建矢量方向调整了,下面例子进行说明。


2.3   案例2

梁单元截面方向的调整-方向矢量的图16图 16 案例二



这个就是上面的圆筒的一个变种,说实话还没找到很好的方法,只能说提供一种。

参照上面圆筒的思路,我们其实只要有每根梁的切线矢量就很好使槽口指向法向,因此难点就在如何得到各个梁的切线方向(向上面一步就调整好应该很难)。好在hypermesh提供了比较健全的创建矢量的方法,能通过几何很快得到切线方向,如下:

梁单元截面方向的调整-方向矢量的图17图 17 创建切线矢量


梁单元截面方向的调整-方向矢量的图18图 18 切线矢量示意


那么利用这些切线矢量来更新梁单元指向就很方便了,如下所示,以最左边一根为例:

梁单元截面方向的调整-方向矢量的图19图 19 初次调整


全部调整完成后,我们也来看看单元坐标系的指向:

梁单元截面方向的调整-方向矢量的图20

图 20 单元局部坐标系示意

可以看到,局部坐标系的Z轴通过IJ定义的X轴与矢量定义的叉积定义,恰为我们需要的方向。



3 小结

通过上面两个例子其实截面方向(或者说单元坐标系)定义的方式已经比较明晰了。对于optistruct和nastran来说,梁单元的方向是直接由方向矢量控制的,对于ansys来说实际是通过方向节点间接得到方向矢量,但是原理基本相似。个人其实一直没有遇到上述问题,主要是因为建立的梁模型都是比较规则的框架,因此只需要几个方向节点就很好调整,但是一旦出现曲线或者环绕型框架,理解方向矢量以及方向节点就很有必要了,对于快速调整模型截面很有帮助。



免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空