简单的杆件系统
(作者:武汉老向 Email: hg_boy@sian.com.cn)
问题描述:
有一如图1所示的杆件系统,其左下节点1固定,右下节点7放在水平地面上。在其中三个节点上同时施加水平方向和垂直方向的作用力,其中水平作用力Fx=-1300 lbf,垂直作用力Fy=-1500 lbf,分析杆件系统的受力情况.
本实例来自MSC公司的培训教程,原教程是讲解如何用Patran做前处理,老向在这里直接取用,便于验证计算结果是否对得上,需要注意的是,例中的所有单位都是采用的英制单位.
图1. 杆件系统
图2.杆件系统受力图
准备工作:
先启动Hypermesh8.0, 在启动时弹出的”User Profile”对话框中选择”Nstran”作为profile.如下图所示:
图3.User Profile.
然后选择Nastran的模板.具体操作如下:点击菜单Preference,选择”Global Parameters”菜单项,点击下图所示的”Load…”按钮,从弹出的文件选择对话框中选择Nastran模板.
图4.模板选择
1. 创建材料属性.
材料总是要用的,先把材料准备好. 点击工具栏上的
图标,组件类型选择”materials”, card image 选
择”MAT1”,name后面输入”mat_steel”作为该材料的名字。
然后点击”create/edit”按钮,进入如下界面:
图5.材料定义
点击[E],[NU],出现文本框,在文本框中分别输入1.76e6,0.3,这两项分别是弹性模量和泊松比系数,输入完毕后返回主界面. 2. 创建节点.
因为模型比较简单,直接手工创建节点,然后创建单元.模型中一共有7个节点,节点的坐标见下表:
1 2 3 4 5 6 7
x y x 0 0 0 144 72 0 192 0 0 288 144 0 384 0 0 432 72 0 576 0 0 表1.节点坐标
按下快捷键”F8”,进入节点创建界面:
依次输入表1中的各个节点的x,y,z坐标值,然后点击”create node”按钮根据输入的坐标值创建节点,节点全部创建完后,如下图所示: (提示:在每次创建完一个节点后,按一下键盘上的“F”键,可以调整平面上节点的显示,使之充满整个屏幕,这样也便于观察所创建的节点的位置是否正确。)
3. 创建单元。
接下来创建杆单元,也就是Nastran里面的CROD单元。我们先看看CROD单元的卡片格式:
其中PID是一个索引号,它指向一个用PROD关键字所定义的杆的截面的属性。
所以,在创建CROD单元之前,必须先创建好杆的属性。
1) 创建杆的属性。 点击工具栏上的
按钮,
组件的类型选择”properties”,name后面输入字符串”prop_rod”作为该属性的名字,点击“card image”按钮,选择”PROD”属性,点击“material”按钮,选择先前已经创建好的名为”mat_steel”的材料。 然后点击”create/edit”按钮,进入如下界面:
在此界面中,我们可以输入和杆件截面形状和尺寸有关的一些数值,在本例中,我们只用到杆件的横截面积,所以,如上图,点击[A],然后在出现的文本框中输入5.25,5.25是杆件的横截面积大小,输入完毕后,返回主界面。
2)创建一个组,用来存放即将创建的CROD单元。
Hypermsh中,任何单元,材料,属性等,必须存放到相应的组中,在这里,我们创建一个名字为elem_rod的组来存放我们的CROD单元。
点击点击工具栏上的
按钮:
组件的类型选择”components”,name后面输入“elem_rod”,点击颜色按钮,根据自己的喜好为单元选择一种颜色,“card image”选择”no
card image”,然后点击”create”按钮创建该组,然后返回到主菜单界面。注意:因为是杆单元,我们之前已经创建好了一个prop_rod属性来描述杆的属性了,所以,这里无须再定义card image了。
(假如这里创建的是用来存放实体单元的组,则card image必须要选择PSOLID,如果是存放壳单元的组,card image就得选择PSHELL,总之,要根据具体情况具体分析,这里新手容易出错和犯迷糊的地方。)
2) 创建杆单元。
在创建杆单元之前,先要设置一下单元类型。操作路径:2dÆelem types ,进入如下界面,选择“1D”,
点击”rod”按钮,选择CROD,然后返回到主界面。
注:因为hypermesh中,CWELD,CTUBE,CONROD这几种单元类型,都是通过主界面中的rod面板来创建的,所以,这里选择CROD,则后面通过主界面创建出来的所有的单元的类型都为CROD。
当然,你也可以先把单元创建好,然后再到这里根据单元的实际类型,Update一下。
在主界面中,1DÆrods,进入如下界面:
点击property按钮,你会看到我们之前创建好的名为prop_rod的属性,选择它。
然后在屏幕上两两选择组成单元的节点,则单元自动被创建并显示在屏幕上,如下图所示:
注意:每个单元上面有“CROD”字符串作为标识,表明你创建的单元是CROD类型。 4. 创建载荷。
2,4,6号节点同时受到水平和垂直方向的作用力。如果为了省事,可以建立一个载荷组,把所有的力全部放到这个组中,但是,这样对载荷的修改就很麻烦,而且也不便于单独引用某一个载荷。在更一般的情况下,不同的载荷最好单独存放到不同的载荷组中。
这里建立两个组f_x, f_y,其中f_x用来存放所有的x方向的力,f_y用来存放y方向的力,然后再创建一个新的组f_xy,通过“LOAD”关键字,把f_x, f_y两个组的载荷叠加后放到f_xy组,在载荷步中引用载荷的时候,直接使用f_xy即可。(为什么要进行叠加?这个是和
Nastran求解器的结构有关的。在nastran的一个工况中只能指定一个载荷组,而本结构中,两个载荷组是同时施加的,所以,必须把两个载荷组叠加到新的载荷组中,在工况中指定新的载荷组。) 1) 创建水平载荷。
先创建载荷组f_x,用于存放载荷。 点击点击工具栏上的
按钮,进入如下界面:
组件类型选择“load collectors”,name 后面输入“f_x”作为载荷组的名字。Card iamge选择no card image, 点击颜色按钮,给载荷组选择一种颜色,然后点击”create”按钮,返回主界面。 在主界面中:
AnalysisÆforces,进入如下载荷定义界面:
选择要施加载荷的三个节点,即编号为2,4,6的三个节点。 力的方向选择x-axis,magitude后面输入-1300,此为力的大小。 Uniform size旁边的文本框中输入一个适当的数值,这个值是用来调整屏幕上代表力的箭头的大小的,这里可以输入100。 2) 创建垂直载荷。
先创建载荷组f_y,操作步骤参考上面的创建水平载荷组f_x的过程。
回到主界面,创建垂直方向的力,具体操作参考前面的水平力的施加。
选择2,4,6三个节点,选择y-axis,力的大小输入-1500,点击“create”按钮,最后返回主界面。
正确施加水平和垂直载荷后,屏幕上应该如下图所示:
5.创建约束。
结构的左下节点(1号节点)是固定的,因此,该节点应该被完全固定,也就是6个自由度全部约束住。
右下节点(7号节点)是放在水平地面的,因此,Y方向的移动自由度UY(2)被约束住。
本来,对于这个问题,可以创建一个load collector,然后把所有的约束都放到一个载荷组里面。但是,更一般的情况,应该把各种不同的约束单独存放,方便以后修改和使用。这里把节点1和节点7处
的约束分别单独放到两个不同的load collector中,然后再创建一个新的载荷组,通过SPCADD关键字,把这两个载荷组叠加到新的载荷组中。(为什么要叠加?理由和载荷组的叠加类似,不再重复。) 1) 创建载荷组bc_fixed。
载荷组类型选择”load collector”, name后面输入“bc_fixed”,card image选择no card image,点击颜色按钮,选择一种颜色来显示该组,然后点击”create”,然后点击”return”返回主界面。
在主界面中,Analysis-Æconstrains,进入如下约束定义界面:
在屏幕上选择1号节点,因为节点是被完全约束住的,所以,把dof1-dof6全部勾选。在size按钮旁边的文本框里输入适当的数值,用于调节屏幕中代表约束的三角形符号的大小,这里输入50。然后点击”create”按钮,最点击”return”按钮返回。 2) 创建载荷组bc_support。 操作步骤参考前面的。
在主界面中,Analysis-Æconstrains,进入如下约束定义界面:
在屏幕上选择7号节点,只勾选dof2,然后点击”create”并返回主界面。
6.创建载荷组”BC”,把bc_fixed, bc_support两个约束载荷组叠加到”BC”组中。
先创建一个新的载荷组”BC”:
组件类型选择“load collector”,name后面输入”BC”作为载荷组的名字,注意:此处与前面不同的是card image要选择“SPCADD”,然后点击”create/edit“按钮,进入如下界面:
先在最下边的SPCADD_Num_Set旁边的按钮中输入2,2代表有两个载荷组要进行叠加,输入之后,上面会出现两个黄颜色的按钮S(1),S(2),点击S(1)按钮2次,
从上图中选择之前已经创建好的bc_fixed组。
类似地,点击S(2)按钮两次,从列表中选择bc_support组。最后返回到主界面,这样,bc_fixed,bc_support这两个组通过SPCADD关键字被叠加到了”BC”这个载荷组中。
7.创建“Fxy“载荷组,把f_x,f_y这两个组叠加到”Fxy”组中。
组的类型选择”load collector”, name输入Fxy,card image选择”LOAD”,LOAD关键字的作用是把载荷按照一定的权重进行叠加。 然后点击”create/edit“,进入如下界面:
首先要在最下边的LOAD_Num_Set旁边的文本框中输入2,表示有两个载荷组参与叠加。界面上方会相应的出现2个黄颜色的按钮。 先在界面上方所有的文本框中输入数字1, 数字1代表参与叠加的载荷组的权重。
然后点击第一个黄色按钮”L1(1)”两次:
从出现的列表中选择f_x这个组。
类似的,点击黄色按钮L1(2)两次,从出现的列表中选择f_y。然后返回主界面。这样,f_x, f_y这两个组就通过”LOAD”关键字叠加到了Fxy这个新的组中。
8.创建分析工况。
在前面载荷和约束已经全部创建好了,现在可以创建工况了。 在主界面中,AnalysisÆsubcase,进入如下界面:
Name后面输入一个字符串代表工况的名字”LC1”, Type选择分析类型为linear static,也可以使用默认的Generic. 点击SPC旁边的”=”按钮,从出现的列表中选择“BC”这个组; 点击LOAD旁边的”=”按钮,从出现的列表中选择“Fxy”这个组。 注意:出现在文本框中的数字是你所选择的载荷组的编号,由于操作顺序等原因,你的文本框中的序号可能和上图中的不一致,这是正常的,你只要确保选择的是”BC”, “Fxy”这两个组就没问题。 9.定义控制卡片。
在主界面中,AnalysisÆcontrol card,进入如下界面:
1) 点击SOL按钮:
选择statics,返回到之前的界面。 2)选择PARAM按钮:
勾选下方的AUTOSPC, 点击上面的[POST_V1],编辑文本框中的数值为-2。返回到之前的界面。说明:此设置是为了让Nastran输出.op2文件,以便后面在hyperview中做后处理。 2) 选择Global_Case_Control按钮:
首先要勾选界面底部的OutPut项,勾选后,Output下面会出现一系列分支选项,从中勾选Displacement,勾选后,Displacement下面也会出现一些分支选项,勾选其中的Arguments选项,再勾选Arguments的分支选项中的Argument2,此时注意到界面上方会出现
这一行。
点击图中括号“()“中的按钮,选中”PRINT,PUNCH”这一项。 类似的,在OutPut的分支选项中选择STRESS,ELFORCE,SPCFORCE,并进行类似的操作,直到得到如下图所示的结果:
退出,回到主界面。说明:这些设置,是为了在.pch文件和f06文件中输出指定的结果。
10. 导出Nastran求解器可以识别的输入文件。 点击工具栏上的
图标:
选择export。
点击“write as…“,指定输入文件名字为truss.inp(或者turss.bdf, truss.dat,名字可以随便取的。)
11.运行Nastran,指定输入文件为truss.inp。
Nastran运行结束后,工作目录下会生成truss.pch,turss.op2,truss.f06等文件,后面将讲述如何使用hyperview和hypermesh做后处理。 12.使用HyperView做后处理。
使用hyperview做nastran的后处理,结果文件可以直接使用nastran生成的.op2文件,也可以把nastran生成的.pch文件在hypermesh中转化为hypermesh,hyperview都可以使用的.res格式后再用来做后处理。这里讲述前者。 1) 启动hyperview8.0.
点击Load model旁边的按钮,从文件对话框中选择之前生成的truss.inp文件或者turss.dat/turss.bdf文件。
点击Load results旁边的按钮,从文件对话框中选择nastran计算得到的truss.op2文件。
点击”Apply”按钮,读入模型文件和结果文件,如果你的模型文件后缀用的是.inp,则有可能会弹出一个如下图的对话框:
选择下面的“NASTRAN/OptiStuct Model Input Reader“,然后点击OK。 模型成功导入后,如下图所示:
2) 查看位移结果云图:
点击工具栏上按钮:
Result type选择Displacement,下面选择Mag,这表示总的位移,然后点击Apply,即可看到位移云图
3) 查看支反力。
4) 查看单元轴向内力:
5) 查看杆单元中的应力:
HyperView里面还有很多其他的名堂,需要自己慢慢探索。 由于这个例子比较简单,hyperview中的一些功能暂时还用不到。
结束语:
这个例子虽然很简单,但麻雀虽小,肝胆俱全,通过这个例子,可以很好的学习Hypermesh与Nastran的接口应用。
由于时间短,做的比较粗糙,错别字不少,后面的插图都懒得一一编号了,不影响阅读就行了,大家凑合着看吧,如果有错误或者不妥之处,欢迎大家指正。等我有空的时候再做一个复杂点的例子。有
空还想做几个HM和Abaqus的接口应用的例子。
例子虽然小,要描述清楚,也很费力,也花费了老向不少的休息时间,转载时请注明,请尊重我的劳动。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务