问题描述:
一个设计笨重的钢盘,如图1所示,承受50 MPa 的拉伸载荷,需要进行优化,以减小重量而能承受最大von-mises 150 MPa为限。可以允许改变厚度 t1 和过渡圆角半径fil。
问题参数:
分析中使用如下材料特性:
E = 2.07e5 MPa
Thickness = 10 mm
u= 0.3
分析中使用如下几何特性:
厚度 t1变化范围=20.5到40mm (初始值为30)
过渡圆角半径fil变化范围=5到15mm(初始值为10)
图1 模型示意图
下面分别是利用菜单操作和命令流方式进行有限元分析的方法
一、GUI菜单操作如下:
第一步,清除内存准备分析
1) 清除内存:
GUI:Utility Menu>File>Clear& Start New
2) 更换工作文件名:
GUI:Utility Menu>File>ChangeJobname,输入hexplate
3) 定义标题:
GUI:Utility Menu>File>ChangeTitle,输入 theanalysis of a hexplate under tension
第二步,创建有限元模型
1) 进入前处理器:
GUI:Main Menu>Preprocessor
2) 定义单元类型并设置单元选项:
GUI:Main Menu>Preprocessor>Element Type>Add/Edit/Delete,选择单元PLANE82;单击Element Types对话框的Options按钮,弹出对话框,在K3后面的下拉列表中选择Plane strs w/thk
3) 定义厚度(实常数):
GUI:Main Menu>Preprocessor>Real Constants>Add/Edit/Delete,弹出对话框,点击Add按钮,弹出对话框,在THK值域输入10
4) 定义材料:
GUI:Main Menu>Preprocessor>Material Props>Material Models,弹出对话框,在右侧窗口中连续双击选择Structural>linear>Elastic>Isotropic,弹出窗口,在值域EX处输入2.07e5,在值域PRXY处输入0.3,单击OK按钮
5) 创建圆环:
Ø 定义inrad、t1和fil三个参数GUI:Utility Menu>Parameters>
Angular Units*AFUN对应的项从下拉列表选择为Degrees DEG;Utility Menu>
Parameters>Scalar Parameters,在Selection输入框输入inrad=200*cos(30)-20
$t1=30$fil=10
Ø 分别创建三个环GUI:MainMenu>Preprocessor>Modeling>Create>Areas>Circle>Partial Annulus,弹出对话框,在WP X对应的值域输入-200,在WP Y对应的值域输入0,在Rad-1值域输入inrad,在Theta-1值域输入-30,在Rad-2值域输入inrad+t1,在Theta-2值域输入30,单击Apply按钮确定。同样的方法建立另外两个圆环。其尺寸参数见表1所示。
圆环编号 | WP X | WP Y | Rad-1 | Theta-1 | Rad-2 | Theta-2 |
2 | 200*cos(60) | 200*sin(60) | inrad | -90 | inrad+t1 | -150 |
3 | 200*cos(60) | 200*sin(-60) | inrad | 90 | inrad+t1 | 150 |
表1 另外两个圆环的尺寸参数
6) 执行面的布尔运算然后删该面但保留线:
GUI:Main Menu>Preprocessor>Modeling>Operate>Booleans>Add>Areas,弹出对话框,点击Pick All按钮;MainMenu>Preprocessor>Modeling>Delete>Areas Only,弹出对话框,点击Pick All按钮
7) 对三内角倒角:
GUI:Main Menu>Preprocessor>Modeling>Create>Lines>LineFillet,弹出对话框,选一对内线,单击Apply按钮,弹出对话框,在RAD值域输入fil;依次选择第二对内线、第三对内线方法同第一对内线,完成对三对内线的倒角,最后的结果如图2所示
图2 倒角以后的示意图
8) 切除并只保留 0-60°内的区域,将用两次由工作平面分割线段的操作:
GUI:Utility Menu>WorkPlane>OffsetWP by Increments,弹出对话框,在XY,YZ, ZX值域依次输入0,90,0;MainMenu>Preprocessor>Modeling>Operate>Booleans>Divide>
Line by WrkPlane,弹出对话框,单击Pick All;然后沿Y轴旋转WP 60,XY, YZ, ZX值域依次输入0,0,60;MainMenu>Preprocessor>Modeling>Operate>Booleans>Divide>
Line by WrkPlane,弹出对话框,单击Pick All;UtilityMenu>WorkPlane>Display Working Plane,将其状态由on切换到off;最后删除所有的从 60°到 360°的线,其结果如图3所示。为了变换花样,也可采用命令,命令如下:
csys,1
lsel,s,loc,y,60,360
ldele,all,,,1
lsel,all
csys,0
lplot
图3 1/6模型(线)
9) 完成 1/6 对称模型后,创建缺少的线段,然后再建面:
GUI:MainMenu>Preprocessor>Modeling>Create>Lines>Lines>Straight Line,弹出对话框,分别拾取最下边两关键点以及沿 60°对称边的关键点;MainMenu>Preprocessor>Modeling
>Operate>Booleans>Add>Lines,弹出对话框,拾取最右边的两条线段,点击OK按钮,接着弹出的对话框中点击OK按钮;MainMenu>Preprocessor>Modeling>Create>Areas>Arbitrary>
By Lines,弹出对话框,选 Loop 选项,点选任何一个线段,应见一封闭线段,点击OK按钮,如图4所示
图4 1/6模型(面)
10) 划分网格:
GUI:Main Menu>Preprocessor>Meshing,点击Mesh Tool,弹出对话框,设定smart size 级别为3,点击Mesh按钮,弹出对话框,点击Pick All按钮,最后的网格图如图5所示
图5 网格图
第三步,静力学分析
1) 进入求解器:
GUI:Main Menu>Solution
2) 选择分析类型:
GUI:Main Menu>Solution-Analysis Type- New analysis,选中Static
3) 施加对称边界条件:
GUI:Main Menu>Solution>DefineLoads>Apply>Structural>Displacement>Symmetry B.C.>On Lines,弹出对话框,选择最底边以及左边60°的对称边两条线段
4) 施加压力载荷:
GUI:Main Menu>Solution>DefineLoads>Apply>Structural>Pressure>On Lines,弹出对话框,选择最右边的线段,然后单击OK,接着弹出对话框,在value栏里输入-50
5) 执行求解:
GUI:Main Menu>Solution>-Solve-Current LS
6) 退出求解器:
GUI:Main Menu>Finish
7) 保存结果:点击SAVE_DB工具条。
第四步,执行后处理
1) 进入后处理器:
GUI:Main Menu>Solution>General Postproc
2) 观察结果:
GUI:Main Menu>Solution>General Postproc>Plot Results>ContourPlot-Nodal Solu,弹出对话框,选择vonMises stress。如图6所示
图6 Von Mises应力云图
3) 获得最大等效应力 SMAX 和总体积 VTOT:通过命令流获得最大等效应力和总体积,
具体命令流如下:
nsort,s,eqv
*get,smax,sort,,max
etable,evol,volu
ssum
*get,vtot,ssum,,item,evol
4) 创建一个分析文件,此文件可用于以后的设计优化或to explore 设计域:
GUI:Utility Menu>File>Write DB Log File,写数据库日志到文件hexplate.lgw,注意选择最下边的下拉列表为Write essentialcommans only
第五步,优化设计
1) 执行第一次分析:
GUI:Utility Menu>File>Read Input from,选择hexplate.lgw文件
2) 调用优化程序并确定分析文件:
GUI:Main Menu>Design Opt>Analysis File>Assign,弹出对话框选择hexplate.lgw文件
3) 确定优化变量:
GUI:Main Menu>Design Opt>Design Variables,弹出对话框,点击ADD按钮,依次点击t1和fil,确保t1的min=20.5,max=40;fil的min=5,max=15
4) 确定状态变量:
GUI:Main Menu>Design Opt>State Variables,弹出对话框,点击ADD按钮,点击SMAX,确保max=150
5) 确定目标函数:
GUI:Main Menu>Design Opt>Objective,弹出对话框,在变量列表栏内选中VTOT
6) 运行时控制:
GUI:Main Menu>Design Opt>Controls,弹出对话框,将[OPKEEP]设置为“Save”
7) 优化方法的选择:
GUI:Main Menu>Design Opt>Method/Tool,弹出对话框,复选框选择Sub-Problem,接着弹出的对话框,参数采用系统缺省的值
8) 保存OPT数据库:
GUI:Main Menu>Design Opt>OptDatabase>Save,弹出对话框,在Filneame处输入hexplate.opt0
9) 执行优化:
GUI:Main Menu>Design Opt>Run,点击OK按钮执行优化
10) 列出设计集:
GUI:Main Menu>Design Opt>DesignSets>List,弹出对话框,List option选择ALL Sets,LKEY选择Only opt params,点击OK按钮,弹出优化结果,注意左右带*的就是最优解,如图7所示
图7优化结果列表
11) 曲线显示体积VTOT与优化序列号之间的关系:
GUI:Main Menu>Design Opt>DesignSets>Graphs/Tables,弹出对话框,X-variable parameter设置为Set number,Y-variableparams(<11)设置为VTOT,Graphor List Table设置为Graph PLVAR,图形窗口显示结果如图8所示。
图8 VTOT-Set number曲线图
12) 曲线显示体SMAX与优化序列号之间的关系:
GUI:Main Menu>Design Opt>DesignSets>Graphs/Tables,弹出Graph/List Tables of Design SetParameters的对话框,X-variable parameter设置为Set number,Y-variableparams(<11)设置为SMAX,Graphor List Table设置为Graph PLVAR,图形窗口显示结果如图9所示
图9 SMAX-Set number曲线图
13) 保存最优结果:
GUI:Main Menu>Design Opt>OptDatabase>Save,弹出对话框,在Filneame处输入hexplate.opt1,点击OK按钮确定。在命令窗口输入如下命令流:
resume,hexplate,bdb
/post1
file,hexplate,brst
14) 查看最优结果的von Mises应力云图:
GUI:Main Menu>General Postproc>ReadResults>First Set;Main Menu>Solution>General Postproc>Plot Results>ContourPlot-Nodal Solu,弹出对话框,选择vonMises stress,如图10所示。
图10 显示最优结果的von Mises应力云图
15) 退出分析:点击工具条QUIT,选择No Save退出ANSYS
二、命令流如下:
/clear,start
/title,the analysis of a hexplate under tension
/filname,hexplate
/prep7
et,1,82
keyopt,1,3,3
r,1,10
mp,ex,1,2.07e5
mp,nuxy,1,.3
*afun,deg
inrad=200*cos(30)-20
t1=30
fil=10
cyl4,-200,0,inrad,-30,inrad+t1,30
cyl4,200*cos(60),200*sin(60),inrad,-90,inrad+t1,-150
cyl4,200*cos(60),200*sin(-60),inrad,90,inrad+t1,150
aadd,all
adele,all
lfillt,22,23,fil
lfillt,23,24,fil
lfillt,24,22,fil
wprota,,90
lsbw,all
wprota,,,60
lsbw,all
csys,1
lsel,s,loc,y,60,360
ldele,all,,,1
lsel,all
csys,0
lplot
l,23,25
l,28,27
al,all
smrt,3
amesh,all
fini
/solu
dl,1,,symm
dl,2,,symm
sfl,9,pres,-50
sfl,21,pres,-50
solve
fini
save
/post1
plnsol,s,eqv
nsort,s,eqv
*get,smax,sort,,max
etable,evol,volu
ssum
*get,vtot,ssum,,item,evol
lgwrite,'hexplate','lgw','G:\db\',remove
fini
/clear,start
/filname,hexplate
/INPUT,'hexplate','lgw','G:\db\',, 0
fini
/opt
opanl,'hexplate','lgw',' '
opvar,t1,dv,20.5,40, ,
opvar,fil,dv,5,15, ,
opvar,smax,sv, ,150, ,
opvar,vtot,obj, , ,1.0,
opkeep,on
optype,subp
opsave,' hexplate','opt0',' '
opexe
oplist,all,0
plvaropt,vtot
plvaropt,smax
opsave,' hexplate','opt1',' '
fini
resume,hexplate,bdb
/post1
file,hexplate,brst
lplot
plnsol,s,eqv
注:新版软件遇到上述部分命令无法识别时请自行做相应修改。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删