疲劳 — CAE用语解说
疲劳分析(Fatigue Analysis)
听说过飞机因金属疲劳而坠毁的事故。疲劳具体是什么现象?
疲劳的理论基础
疲劳的基本概念
疲劳是材料在重复力的作用下破坏的现象,但为什么抗拉强度远大的应力也会破坏呢?
很好的观察。抗拉强度为400MPa的钢材,在循环应力下可能在200MPa处断裂。原因是「裂纹的发生和扩展」。材料表面或内部的微观缺陷(夹杂物或位错聚积)成为应力集中源,循环荷载作用下裂纹逐渐扩展。裂纹一旦产生,其尖端会非常锐利,应力集中系数可超过1000。这个从微观缺陷发展到宏观破坏的过程就是疲劳寿命。
裂纹扩展的机制是什么?拉伸和压缩应力的影响是否不同?
本质上,裂纹由拉伸应力打开,通过尖端塑性变形而扩展。压缩应力使裂纹闭合,对扩展的贡献很小。对于「完全对称循环」这种最基本的循环荷载:
S-N曲线是应力振幅与断裂循环次数的关系。这条曲线如何通过试验确定?
使用旋转弯曲疲劳试验机或轴向荷载疲劳试验机。例如,按照JIS Z 2273(金属材料疲劳试验通则)进行。准备10个以上同一材料的光滑试样,在不同应力振幅(例如±300MPa、±250MPa、±200MPa...)下进行试验。记录每个应力水平下试样断裂的循环数$$ N_f $$,在双对数图上绘制。重要的是确定「疲劳极限」——在10^7循环后曲线变平的区域。高强度钢的疲劳极限约为10^6循环,而铝合金没有明确的疲劳极限,即使在10^7或10^8循环时也会断裂。
疲劳的数值计算方法
疲劳寿命预测方法
用CAE预测疲劳寿命的主流方法是什么?如何从静力分析结果计算寿命?
主要有三种方法:「应力-寿命(S-N)法」「应变-寿命(ε-N)法」和「裂纹扩展(线性断裂力学)法」。应用最广泛的是S-N法,通常结合「修正Goodman法」或「平均应力修正」。步骤如下:首先通过静力结构分析得到单位荷载下的应力张量$$ \sigma_{ij}^{unit} $$。然后将实际荷载历史(时间序列数据)与其相乘,生成应力历史$$ \sigma_{ij}(t) $$。最后,使用雨流计数法等算法从应力历史中提取每个单元/节点的「等效应力振幅」和「平均应力」。
什么是「雨流计数法」?不能简单地用最大值减最小值作为应力振幅吗?
在复杂的变动荷载下这样做是不行的。例如,应力按100 → 50 → 80 → 30 MPa变化时,简单的最大-最小是100-30=70MPa。但实际上可以分解为「100→50→80」和「80→30」两个滞后环。雨流法将这个历史分解为每个独立的「循环」,提取每个循环的振幅和平均值。这就是Miner法则累积损伤计算的输入数据:
什么时候使用应变-寿命法?与S-N法有什么根本不同?
S-N法主要用于高循环疲劳(>10^4循环,主要是弹性变形),而ε-N法用于低循环疲劳(<10^4循环,塑性应变不可忽略的区域)。例如发动机启停或发电站热循环。基础方程是Coffin-Manson公式:
疲劳的工程应用
疲劳分析工作流程
用Ansys Mechanical实际进行疲劳分析时,步骤是怎样的?静力分析完成后还需要注意什么?
大体工作流程如下:1) 静力结构分析计算应力,2) 添加Fatigue Tool,3) 定义荷载历史(恒幅情况下为应力比R和循环次数,变幅情况下为时间序列表),4) 设置疲劳强度系数(表面粗糙度、尺寸效应、可靠度),5) 选择平均应力修正理论(Goodman、Gerber、Soderberg),6) 求解和结果检查。第4步「疲劳强度系数」特别重要。例如,机加工面(Ra=3.2μm)碳钢零件的表面修正系数应乘以0.8。磨削面接近1.0,但铸造面会降低到0.5以下。搞错这个会导致寿命预测相差数倍甚至数十倍。
荷载历史是复杂的实测数据时,如何实际地输入到CAE软件?
主要有两种方法。第一种是将静力分析结果(OP2、fil文件)和时间序列荷载数据(CSV、RPC III格式)送到专用疲劳软件(nCode DesignLife、FE-SAFE),由它们完成雨流计数和寿命计算。第二种是在Ansys Workbench中直接连接「nCode DesignLife」系统。无论如何,实测数据由于采样频率高而数据量庞大,必须先进行「峰值-谷值编辑」和「阈值滤波」进行去噪和数据削减。例如,应力范围小于材料疲劳极限一半的微小波动可以忽略(所谓「门控」处理)。
分析结果显示「寿命为1e6循环」时,这是绝对保证值吗?
不是。CAE疲劳寿命只是「概率性的参考值」。理由有三个。第一,输入的S-N数据本身具有实验性的离散性(通常寿命对数标准偏差约为0.2)。第二,无法完全模型化零件制造的离散性(残余应力、表面状态)。第三,无法完全再现实际使用环境(腐蚀、温度变化)。因此设计时需乘以安全系数(寿命系数)。汽车业界通常将所需寿命的3~10倍作为CAE寿命的目标。如果所需寿命为1e6循环,CAE应确认3e6~1e7循环,以此类推。
疲劳软件比较
主要软件特点
Ansys nCode DesignLife、MSC Fatigue(现在是Hexagon的FE-SAFE?)和FEMFAT有什么区别?各自的优势是什么?
首先,FE-SAFE原本是Safe Technology公司的产品,现为Hexagon旗下。FEMFAT是马格纳-施太尔子公司工程中心施太尔(ECS)的产品。简单说区别如下:nCode DesignLife与Ansys环境集成度高,工作流程直观,信号处理(数据削减)功能强大。FE-SAFE拥有丰富的多轴疲劳评估算法库(例如Critical Plane法),在非比例荷载评估方面口碑很好。FEMFAT在欧洲汽车OEM中市场占有率高,具有专业的焊接部疲劳评估功能(例如从体积网格自动生成虚拟点焊等)。
免费或低价CAE软件(如CalculiX、Code_Aster)也能进行疲劳分析吗?
可以,但功能和易用性受限。CalculiX本身没有疲劳模块,需要自行编写Python脚本实现雨流计数和Miner法则。Code_Aster拥有疲劳计算的`POST_FATIGUE`命令,可用于定幅荷载的S-N法和裂纹扩展分析(`DEFI_FISS_XFEM`)。但商用软件提供的高级平均应力修正、表面系数数据库和直观的荷载历史编辑GUI是没有的。对于研究用途或完全理解分析流程的情况很有价值,但工程实际中效率远不如商用软件。
Abaqus有疲劳分析功能吗?还是需要单独的插件?
Abaqus/CAE标准模块中有「Direct Cyclic」分析步用于低循环疲劳(考虑弹塑性应变)。但高循环疲劳的S-N法和通常的疲劳寿命预测功能不在标准提供范围内。因此工程实际中通常使用FE-SAFE与Abaqus的联动。Abaqus的结果文件(.fil或.odb)由FE-SAFE直接读取并进行疲劳计算。达索系统也推进了这种联动,SimCAE公司的「fe-safe for Abaqus」已成为事实上的标准解决方案。
疲劳问题排除
常见错误和对策
疲劳分析结果在应力集中部位出现「1e-5循环」这样短得荒唐的寿命值。这是什么原因?
几乎肯定是「忽视弹塑性,将过大的弹性应力直接代入S-N曲线」。出现尖锐的角或小圆角时,线性弹性分析在理论上应力趋于无穷大(奇点)。例如,计算的von Mises应力为1000MPa,实际上局部屈服会发生,应力会被限制在材料屈服强度(例如500MPa)。对策有两个:1) 修改几何形状以缓解应力集中(实际设计)。2) 用「Neuber法」等分析方法「弹性应力进行塑性修正」:
相反,各处寿命都显示「1e20循环」几乎无穷大。这样可以判断为安全吗?
这是危险的判断。主要原因有三个。第一,使用的S-N曲线「疲劳极限」以下的应力振幅进行计算。第二,平均应力修正应用错误(例如压缩平均应力很大,修正后等效振幅变得极小)。第三,最严重的是「荷载路径定义有误」。例如,多个静力荷载工况(弯曲和扭转)分别计算,疲劳分析中将其组合时,位相差或荷载比搞错,导致实际产生大合成应力的位置,个别应力分量被评为很小。首先检查疲劳分析输入的「应力振幅」等高线图,确认其物理上合理(在材料疲劳极限的数倍范围内)。
焊接部疲劳分析中,网格加密后反而寿命预测变长(非保守)。为什么会出现这种情况?
这是使用「简单热点应力法」而不考虑「应力梯度」时出现的现象。焊接缘部的表面应力会随网格细化(单元尺寸减小)而增大。但疲劳强度受「某体积范围内的平均应力」控制,极细网格得到的峰值应力直接与S-N曲线比较会导致非保守(危险)评估。IIW(国际焊接学会)推荐的对策是从焊接缘(例如缘部前5mm、10mm处)的点读取应力,线性外推求得「结构应力」,已被规范化。专用软件(如nCode的Weld许可或FEMFAT的WELD模块)将这个过程自动化。
相关话题
细节
错误