Ansys疲劳分析.docx

上传人:b****6 文档编号:7844593 上传时间:2023-01-26 格式:DOCX 页数:14 大小:62.46KB
下载 相关 举报
Ansys疲劳分析.docx_第1页
第1页 / 共14页
Ansys疲劳分析.docx_第2页
第2页 / 共14页
Ansys疲劳分析.docx_第3页
第3页 / 共14页
Ansys疲劳分析.docx_第4页
第4页 / 共14页
Ansys疲劳分析.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

Ansys疲劳分析.docx

《Ansys疲劳分析.docx》由会员分享,可在线阅读,更多相关《Ansys疲劳分析.docx(14页珍藏版)》请在冰豆网上搜索。

Ansys疲劳分析.docx

Ansys疲劳分析

Ansys疲劳分析

影响疲劳的主要因素包括:

●载荷循环的次数

●每一个载荷循环中应力值的范围

●每一个载荷循环周期中平均应力值

●是否存在局部应力集中(localstressconcentrations)

ANSYS疲劳分析计算基于ASMEBoiler和pressurevesselcode(压力容器程序),第三节,来指导范围计算,简化弹塑性适用条件,并根据Miner’s准则累积计算实效总和。

ANSYS可进行下列疲劳计算:

●可以通过后处理已有的应力结果,来确定实体单元或壳单元的疲劳因子(也可以手动输入应力值来计算线单元模型的疲劳)

●对于某工况可以存储其应力和载荷。

●对于每一个位置可以定义其应力集中系数和每一个工况的缩放因子

其中,位置是指模型中的一个节点,将存储此处的疲劳应力。

位置一般选在易发生疲劳破坏的点处。

工况是指在一个特定应力循环周期内,不同时间出现的一系列应力条件。

载荷是指一种应力条件,是工况的一部分。

交变应力集度(alternatingstressintensity)用来度量两个不同载荷之间应力状态的差别。

进行疲劳分析通常由5个步骤:

1.调用ANSYS数据,进入后处理模块

2.确定大小(位置的数量,工况和载荷),定义疲劳材料属性,确定应力位置,并定义应力集中系数。

3.存储各种工况和载荷条件下的关注点的应力值;赋予工况重复和缩放因子。

4.激活疲劳计算。

5.查看结果。

14.3.1调用ansys数据,进入后处理模块

具体的过程为:

1.进入后处理模块,

Command(s):

/POST1

GUI:

MainMenu>GeneralPostproc

2.调用ansys数据,

Command(s):

RESUME

GUI:

UtilityMenu>File>Resumefrom

14.3.2确定大小,疲劳材料属性和位置

需要定义如下数据:

●位置、工况和载荷的最大值

●疲劳材料属性

●应力的位置和应力集中系数。

1.定义位置、工况和载荷的最大值。

疲劳计算默认最大值分别为:

5个节点位置,10个工况,每个工况中有3个载荷。

Command(s):

FTSIZE

GUI:

MainMenu>GeneralPostproc>Fatigue>SizeSettings

2.定义材料的疲劳属性。

为了计算疲劳因子,包含简化弹塑性的影响,必须定义材料的疲劳属性。

包含:

●S-N曲线,一个以循环的数量为横坐标,交变应力集度(

)为纵坐标的曲线,ASME的S-N曲线已经计算了最大平均应力的影响。

如果需要,必须调整S-N曲线,使其包含平均应力的影响。

如果不输入S-N曲线,交变应力集度将在所有可能的组合应力条件的组合下,以降序的方式列出来,但不计算疲劳使用因子。

Command(s):

FP

GUI:

MainMenu>GeneralPostproc>Fatigue>PropertyTable>S-NTable

●Sm-T曲线,以温度为横坐标,设计应力集度为纵坐标的曲线,如果想通过程序获取公称应力是否进入塑性阶段,则需要定义此曲线。

Command(s):

FP

GUI:

MainMenu>GeneralPostproc>Fatigue>PropertyTable>Sm_TTable

●弹塑性材料参数M和N(应变硬化指数)。

这些参数只在需要简化弹塑性计算时需要定义,这些参数值可以在ASME法规中查到。

Command(s):

FP

GUI:

MainMenu>GeneralPostproc>Fatigue>PropertyTable>Elas-plasPar

实例:

!

DefinetheS-Ntable:

FP,1,10,30,100,300,1000,10000!

AllowableCycles,N

FP,7,100000,1000000!

"

FP,21,650,390,240,161,109,59!

AlternatingStress-

FP,27,37,26!

IntensityRange,S,ksi

!

DefinetheSm-Ttable:

FP,41,100,200,300,400,500,600!

Temperature,°F

FP,47,650,700,750,800!

"

FP,51,20,20,20,18.7,17.4,16.4!

"DesignStress-Intensity

FP,57,16.1,15.9.15.5,15.1!

Value",Sm(=2/3*Syor

!

1/3*Su),ksi

!

Definetheelastic-plasticmaterialparameters:

FP,61,1.7,.3!

MandN

3.定义应力位置和应力集中系数

下列的项可以显式定义一个疲劳计算中关注节点的位置,并定义其应力集中系数,赋予此位置一个短的名称(20个字符)

Command(s):

FL

GUI:

MainMenu>GeneralPostproc>Fatigue>StressLocations

注意:

并不是所有的疲劳分析需要FL命令。

当使用FS,FSNODE,FSSECT命令时,节点的位置会被自动定义。

如果模型包含足够的网格精度,且不需要计算SCFS时,应力值就会有足够的精度。

当只计算一个节点时,可以删除名称。

如果不需要显式定义位置、SCFs或名称,可以完全不用FL命令。

下面是一个y轴作旋转中心的圆柱的实例,有两个壁厚,SCFs定义在外壁上:

FL,1,281,,,,Line1atinside

FL,2,285,,1.85,,Line1atoutside

FL,3,311,,,,Line2atinside

FL,4,315,,2.11,,Line2atoutside

14.3.3存储应力并赋予工况重复和缩放因子

14.3.3.1存储应力

为了进行疲劳计算,需要知道每一个点不同工况和载荷下的应力值,和每一个工况的重复数量。

可以存储位置、工况和载荷的每一种组合的应力,方法如下:

●手工存储应力

●从Jobname.rst中获取节点应力

●横截面的应力

注意:

ANSYS认为不存在“0”应力条件,因此在出现0应力工况时,需要显式输入。

下面是如何存储应力的命令,在一些情况下,首选LCASE,而不是SET。

Manuallystoredstresses:

FS

NodalstressesretrievedfromJobname.RST:

SET,FSNODE

Stressesatacross-section:

PATH,PPATH,SET,FSSECT

(Cross-sectioncalculationsalsorequiredatafromJobname.RST.)

14.3.3.1.1手工存储应力

在这种情况下,使用的不是后处理器中的疲劳模块,但是也是一种简单的疲劳分析。

线单元,如梁,必须用这种处理方法,因为疲劳模块不能从结果文件中获取数据。

Command(s):

FS

GUI:

MainMenu>GeneralPostproc>Fatigue>StoreStresses>SpecifiedVal

FS,201,1,2,1,-2.0,21.6,15.2,4.5,0.0,0.0

FS,201,1,2,7,450.3

注:

梁单元在一些特殊情况下只有轴向应力,可以只输入单向的应力(如SX),而将其他应力留为空值。

14.3.3.1.1Jobname.rst中的节点应力

当使用此项时,节点应力有六个组成部分。

这六个应力值可以在后面的命令FS中修改。

注:

在使用FSNODE命令之前,必须使用SET命令,也可能要用到SHELL命令。

SET命令从结果文件中读取对应载荷步的结果到数据库。

SHELL命令可以对壳单元选择结果的面是顶、中间还是底面(默认为顶面)。

Command(s):

FSNODE

GUI:

MainMenu>GeneralPostproc>Fatigue>StoreStresses>FromrstFile

SET,1!

Definedatasetforloadstep1

FSNODE,123,1,1!

Stressvectoratnode123assignedtoevent1,

!

loading1.

SET,2!

Definedatasetforloadstep2

FSNODE,123,1,2!

...event1,loading2

SET,3!

...loadstep3

FSNODE,123,1,3!

...event1,loading3

14.3.3.1.3.横截面处的应力

此选项在界面路径的终点计算并存储线性化的应力(通过PATH和PPATH命令定义)。

由于需要表示两个平面之间最短距离的厚度线性化,所以只用两个平面的节点以PATH命令来描述路径。

此选项从结果数据中获取应力信息,因此FSSECT命令之前必须使用SET命令。

用命令FSSECT存储的应力适量可以使用命令FS来修改。

Command(s):

FSSECT

GUI:

MainMenu>GeneralPostproc>Fatigue>StoreStresses>AtCrossSect

下面的例子来描述通过FSSECT输入。

如果节点的位置没有通过FL命令来定义,则本例中的FSSECT命令将自动赋予位置的号码给两个路径的节点,391和395.

PATH,Name,2!

Definethepathusingthetwosurfacenodes

PPATH,1,391

PPATH,2,395

SET,1

FSSECT,,1,1!

Storestressesatnodes391and395

14.3.3.2列出、显示或删除存储的应力

∙列出存储的应力:

Command(s):

FSLIST

GUI:

MainMenu>GeneralPostproc>Fatigue>StoreStresses>ListStresses

∙对某位置或工况,以载荷数量的函数形式显示应力:

Command(s):

FSPLOT

GUI:

MainMenu>GeneralPostproc>Fatigue>StoreStresses>PlotStresses

∙对某位置、工况和载荷,删除存储的应力条件:

Command(s):

FSDELE

GUI:

MainMenu>GeneralPostproc>Fatigue>StoreStresses>DeleStresses

∙删除某位置的所有应力:

Command(s):

FL

GUI:

MainMenu>GeneralPostproc>Fatigue>StressLocations

∙删除某工况下对所有载荷的全部应力:

Command(s):

FE

GUI:

MainMenu>GeneralPostproc>Fatigue>EraseEventData

14.3.3.3.赋予工况重复和缩放因子

此选项赋予工况数量。

也可以用来定义所有应力的缩放因子

Command(s):

FE

GUI:

MainMenu>GeneralPostproc>Fatigue>AssignEvents

FE,1,-1!

Eraseallparametersandfatiguestressesformerly

!

usedforevent1.

FE,2,100,1.2!

Assign100occurrencestoevents2,3and4,

*REPEAT,3,1!

andscaleby1.2.

FE,5,500!

Assign500occurrencestoevent5.

14.3.3.4.获取精确使用因子的方法

结构一般会承受各种各样的最大和最小应力,且出现的顺序是随机的。

因此,为了获得有效的疲劳使用因子,必须获取精确地所有可能的应力变化范围的重复度。

ANSYS程序采用被称为“雨量”范围计算方法,来自动计算所有应力的范围,并保持跟踪出现的数量。

对于产生最危险应力强度范围的载荷组合,在选定的节点的位置,进行所有工况范围的搜索。

对此范围内的应力,记录重复的数量,相应的剩余的重复次数减少。

至少有一个源工况会用完;后面出现的属于此工况的此应力条件就会被忽略。

这个程序继续运行直到所有范围和出现的数量被包含在内。

注:

疲劳模块的范围计数功能非常容易用错。

如果想获得精确地使用因子,必须努力仔细组合工况。

在组合工况时的注意事项为:

●理解ANSYS范围计数算法的内部逻辑。

●由于当最大(或最小)3D应力状态出现时,很难准确描述载荷步,所以需要很好的练习。

●在任意工况下,如果只考虑一个极限应力条件(局部最大或局部最小),就会获得一个相对保守的结果。

如果在一个工况下,组合多个极限条件,可能会产生不保守的结果,如下例所示。

考虑两个差别较小的循环:

LoadCycle1:

500repetitionsofSx=+50.0to-50.1ksi

LoadCycle2:

1000repetitionsofSx=+50.1to-50.0ksi

这些载荷循环很明显有1500个重复,交变应力集度为50ksi。

但是,如果粗心的将这些载荷只组成两个工况,将会获得不精确地范围计数,详细情况如下:

Event1,

loading1:

Sx=50.0

loading2:

Sx=-50.1

500repetitions

Event2,

loading1:

Sx=50.1

loading2:

Sx=-50.0

1000repetitions

可能出现的交变应力集度为:

a.

FromE1,L1toE1,L2:

50.05ksi

b.

FromE1,L1toE2,L1:

0.05ksi

c.

FromE1,L1toE2,L2:

50.00ksi

d.

FromE1,L2toE2,L1:

50.10ksi

e.

FromE1,L2toE2,L2:

0.05ksi

f.

FromE2,L1toE2,L2:

50.05ksi

以降低交变应力集度的方式选择组合:

d.

FromE1,L2toE2,L1:

50.10ksi

a.

FromE1,L1toE1,L2:

50.05ksi

f.

FromE2,L1toE2,L2:

50.05ksi

c.

FromE1,L1toE2,L2:

50.00ksi

b.

FromE1,L1toE2,L1:

0.05ksi

e.

FromE1,L2toE2,L2:

0.05ksi

范围计数继续进行,如下所示:

d.

500cyclesofE1,L2toE2,L1

-thisusesup500cyclesofE1andE2

a.

0cyclesofE1,L1toE1,L2

-E1isallusedup

f.

500cyclesofE2,L1toE2,L2

-thisusesup500morecyclesofE2

c.

0cyclesofE1,L1toE2,L2

-botheventsareallusedup

b.

0cyclesofE1,L1toE2,L1

-botheventsareallusedup

e

0cyclesofE1,L2toE2,L2

-botheventsareallusedup

因此,50ksi范围的只有1000个重复被计数,而不是1500个循环。

这个错误是由不恰当的工况组合方式导致的。

如果载荷被描述成独立的工况(如E1,L1≥E1;E1,L2≥E2;E2,L1≥E3;andE2,L2≥E4),则会得出如下范围计数:

d.

500cyclesofE2toE3

-thisusesup500cyclesofE2andE3

a.

0cyclesofE1toE2

-E2isallusedup

f.

500cyclesofE3toE4

-usesup500morecyclesofE3,and500ofE4

c.

500cyclesofE1toE4

-usesup500morecyclesofE4

b.

0cyclesofE1toE3

-E3isallusedup

e.

0cyclesofE2toE4

-E2andE4arebothallusedup

这种情况下的累积疲劳破坏将在50ksi的范围内进行1500次的重复计算。

●相反的,对于每一个最大或最小应力情况下使用单独的工况有时会变得过于保守。

在这种情况下,选择那些应该一起计数的载荷,并将他们集中到同一工况中。

下面的例子描述一些工况怎样合理地包含多个极限应力条件:

考虑一个由下面两种载荷循环组成的载荷历程:

LoadCycle1:

500repetitionsofSx=+100.1to+100.0ksi

LoadCycle2:

1000repetitionsofSx=+50.1to+50.0ksi

很明显,这些循环中最差的组合将产生交变应力集度为25ksi的500次重复。

上面例子中的过程,重组这些载荷为两个工况将产生一个精确的25ksi的500次重复,把每一个载荷条件看成一个独立的工况会产生一个过于保守的25ksi的1000次重复。

14.3.4激活疲劳计算

现在,已经定义了位置、应力、工况和材料参数,就可以在一个特定的位置进行疲劳计算。

这个位置是通过位置的编号或节点本身定义的。

Command(s):

FTCALC

GUI:

MainMenu>GeneralPostproc>Fatigue>CalculateFatig

14.3.5.查看结果

疲劳计算结果在输出文件中打印出来。

如果通过命令/output生成一个输出文件(如Jobname.out),那么可以通过查看此文件来查看结果。

Command(s):

*LIST

GUI:

UtilityMenu>List>Files>Other>Jobname.OUT

如果输入了S-N曲线,输出就是交变载荷集度与相应的工况/载荷,使用的循环,允许的循环,温度和部分使用因子的表格形式。

据此得出特定位置的累积使用因子,所有位置都可以重复得出这个信息。

如前所述,FTCALC输出显示了任一给定交变应力集度的工况和载荷对。

这个信息可以帮助隔离由最大疲劳破坏引起的瞬态(工况/载荷)。

修改工况的一个简单方法就是修改存储的疲劳数据文件jobname.fatg。

(这个选项可以在命令FTCALC之前或之后执行)。

数据将以等效的疲劳模块命令写入文件jobname.fatg。

可以通过编辑jobname.fatg来修改工况,然后使用命令/input重读修改后的疲劳命令。

Command(s):

FTWRITE

GUI:

MainMenu>GeneralPostproc>Fatigue>WriteFatigData

14.3.6其他范围计数方法

“雨量”范围技术方法,无论各种载荷的时间历程是否清楚都是有用的。

但是,如果疲劳分析中的时间历程是已知的,就可以通过对每一个工况进行单独的疲劳分析FTCALC,并手工添加使用因子来避免过度保守的结果。

14.3.7.实例输入

下面是一个疲劳分析的实例:

!

EnterPOST1andResumetheDatabase:

/POST1

RESUME,...

!

NumberofLocations,Events,andLoadings

FTSIZE,...

!

MaterialFatigueProperties:

FP,1,....!

Nvalues

FP,21,...!

Svalues

FP,41,...!

Tvalues

FP,51,...!

Smvalues

FP,61,...!

Elastic-plasticmaterialparameters

!

Locations,StressConcentrationFactors,andLocationTitles

FL,...

!

StoreStresses(3DifferentMethods)

!

StoreStressesManually:

FS,...

!

RetrieveStressesfromtheResultsFile:

SET,...

FSNODE,...

!

StoreStressesataCross-Section:

PPATH,...

SET,...

FSSECT,...

!

EventRepetitionsandScaleFactors

FE,...

!

ActivatetheFatigueCalculations

FTCALC,...

!

ReviewtheResults(Listtheoutputfile)

FINISH

19.5.POST1–疲劳模块

疲劳计算基于ASMEBoiler和压力容器代码,第三节。

疲劳计算的步骤如下:

1.每一个载荷相互比较来计算最大交变剪切应力:

●首先,应力差分矢量计算如下

(19-50)

其中,

为载荷ei的应力矢量,

为载荷ej的应力矢量。

●第二,基于

计算应力集度,使用方程2-87。

(2-87)

●接着,中间最大交变剪切应力为:

(19-51)

●最大交变剪切应力计算如下:

其中,Ke由下列表格确定

分析类型

范围

Ke

弹性(基于应力峰值)

所有

1.0

简化的弹塑性(基于应力的线性化)

σn<3S

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1