轮毂弯曲疲劳寿命预测:我对比了nCode两种主流方法,结果居然一模一样
做轮毂CAE的工程师,大概率都被这两个问题折磨过:
第一,ANSYS Mechanical的nCode DesignLife插件里疲劳方法那么多——最大主应力法、临界面法……到底选哪个?不同方法算出来的寿命能差几倍,老板问起来你敢拍胸脯说哪个对吗?
第二,仿真预测寿命和台架实测对不上。我见过最夸张的,仿真说3万转就裂,台架跑到12万转还好好的——到底是模型建错了,还是这个方法本身就偏保守?
本文用一个实测过的锻造铝合金轮毂,在ANSYS Mechanical 2024 R1的nCode DesignLife集成环境里,把弯曲疲劳寿命预测的完整流程跑一遍,对比两种最主流的方法,告诉你上面两个问题的答案。结论可能有点反常识,但都是实测数据说话。
——————————————————————————————
一、案例说明:一个实测过的锻造轮毂
先交代背景,后面所有数据都基于这个案例。
轮毂类型:锻造铝合金轮毂,材料6061-T6
试验标准:SAE-J2530(国内对应GB/T 5334)
试验结果:台架弯曲疲劳试验 11.5万转 出现宏观裂纹
材料参数如下,做轮毂的朋友应该很熟悉:
密度 (kg/m³) |
弹性模量 (Pa) |
泊松比 |
2700 |
7.27×10¹⁰ |
0.3 |
有限元模型用ANSYS Workbench的Static Structural模块,轮毂采用10节点四面体单元,基本网格5mm,应力集中区球形或面尺寸加密到0.5mm。弯曲加载臂长1m,用5个实体简化螺栓把弯曲加载臂和轮毂连接起来,螺栓与加载臂材料采用默认“Structural Steel”,两者接触采用绑定接触,而螺栓和轮毂及轮毂安装面和加载臂法兰盘面采用摩擦接触,摩擦系数为0.2,加载第一步为螺栓预紧力设置,预紧力为50000N,后续加载步采用“lock”设置。

轮毂装配示意图
载荷是360°全循环旋转弯矩,拆成X和Y两个方向,每18°一个工况,一圈共21个工况(初始第1步为螺栓预紧力加载)。内轮缘固定约束,加载臂末端施力。Static Structural算完这21个工况后,直接在同一个Mechanical环境里插入nCode DesignLife分析系统做疲劳计算——不需要导出结果再导入独立软件,这也是集成环境最大的便利。
关于这个模型的详细受力机理、为什么要360°全循环而不是单一弯矩加载、危险点的主应力波动规律——这些内容我单独写了一篇深度文章,用5个实测轮毂案例做了验证,文末有链接。
——————————————————————————————
二、nCode DesignLife疲劳寿命预测完整流程(ANSYS Mechanical集成环境)
很多教程一上来就讲理论,看完还是不会操作。我直接按ANSYS Mechanical里nCode DesignLife插件的实际操作步骤来,每一步在哪设、设什么、为什么这么设,都说清楚。
步骤1:完成Static Structural分析(21个工况)
疲劳分析的前提是有应力结果。在Static Structural系统里完成21个加载角度的静力学求解,其中第 1 步为螺栓预紧力加载,后 20 步为 18° 间隔的弯曲疲劳加载工况,确保每个工况都有完整的应力张量结果(不是只看等效应力)。
关键提醒:求解前在Analysis Settings里把Stress结果项确保打开,且要包含应力张量。nCode DesignLife做疲劳分析需要六个应力分量(σx, σy, σz, τxy, τyz, τxz)来计算主应力和方向,只导等效应力的话精度会差很多。

X方向加载力示意图

Y方向加载力示意图
步骤2:插入nCode DesignLife分析系统
在Mechanical的Outline里,选中Static Structural系统,点击顶部工具栏的DesignLife标签页,选择Life Analysis(寿命分析),系统会自动在Static Structural下方插入一个nCode DesignLife分析系统。
插入后分析树结构如下:
• nCode DesignLife (C5)
- Analysis Settings(分析设置,核心参数都在这里)
- Solution Group(解组,关联上游Static Structural的结果)
- Load Mapper(载荷映射,把后20个工况排成时间序列)
- Materials(材料,设置SN曲线)
- Solution (C6)(求解结果,输出寿命云图)
nCode DesignLife结构树示意图
步骤3:载荷映射(Load Mapper)
轮毂弯曲疲劳是360°旋转载荷,20个工况对应20个加载角度。在nCode DesignLife里需要通过Load Mapper把这20个工况按时间序列排列,模拟弯矩旋转一圈的过程。
具体设置:
• 载荷类型:基于上游Static Structural的20个载荷步(Load Steps)
• 工况顺序:按0°→18°→36°→…→342°排列
• 每个工况持续时间相同(因为是匀速旋转)
• 总时间:1秒代表1圈(后续通过比例因子扩展到目标循环次数)

Load Mapper的Detail面板示意图
步骤4:Analysis Settings核心参数设置——这就是本文对比的关键
这一步是整个疲劳分析的核心,两种方法的对比就在这里切换。选中Analysis Settings,在左下角Details面板里设置以下参数:
参数项 |
设置值 |
说明 |
Analysis Domain |
Time based |
基于时间域分析 |
Analysis Type |
Stress Life |
应力寿命法(高周疲劳用这个) |
Mean Stress Correction |
FKM |
平均应力修正方法(关键,见下文) |
MultiAxial Assessment |
None |
多轴评估方式,必须设为None才能激活Combination Method |
Combination Method |
Abs Max Principal / Critical Plane |
应力组合方法(两种疲劳方法在这里切换) |
Solution Location |
AveragedNodeOnElement |
结果输出位置 |
Number of Analysis Threads |
4 |
求解线程数(按电脑配置调整) |
这里有个容易踩的坑,必须先说清楚:
Combination Method这个下拉选项不是随时都能用的。只有当MultiAxial Assessment设为None时,Combination Method才会被激活,才能在Abs Max Principal和Critical Plane之间切换。如果MultiAxial Assessment选了其他选项,Combination Method会变灰不可用。
所以本文对比的两种方法,都是在MultiAxial Assessment = None的前提下,通过切换Combination Method实现的:
方法A:最大主应力法(Abs Max Principal)
• MultiAxial Assessment 设为 None
• Combination Method 设为 Abs Max Principal
• 核心思想:在所有载荷工况中,找出每个节点上绝对值最大的主应力(不管拉还是压),作为等效单轴应力计算损伤
• 优点:计算快,物理意义明确
方法B:临界面法(Critical Plane)
• MultiAxial Assessment 设为 None
• Combination Method 设为 Critical Plane
• 核心思想:不把多轴应力简化成一个标量,而是在空间中搜索所有可能的平面,找到损伤最严重的那个"临界面",基于该平面的法向应力计算损伤
• nCode集成环境的临界面法使用法向应力模型(Normal Stress)
• 优点:理论上更精确,尤其适用于非比例多轴载荷;缺点:计算量大
其他有名的多轴疲劳模型比如Findley、Matake、Papadopoulos,nCode集成环境没有内置,需要自己二次开发——这个以后有机会再聊。

Combination Method中Abs Max Principal和Critical Plane示意图
步骤5:平均应力修正——为什么选FKM而不是Goodman
这是很多人容易忽略、但对结果影响很大的一步。在Analysis Settings的Mean Stress Correction下拉选项里,nCode提供了多种方法:
方法 |
是否考虑压平均应力 |
特点 |
Goodman Tension Only |
✗ 只考虑拉 |
经典方法,对脆性材料偏保守 |
Gerber Tension Only |
✗ 只考虑拉 |
对延性材料更友好 |
FKM |
✓ 拉压都考虑 |
德国机械工程标准,目前主推 |
我选FKM,原因很明确:Goodman Tension Only和Gerber Tension Only在nCode里的实现只考虑拉平均应力的修正,不考虑压平均应力的有益影响。而轮毂弯曲疲劳工况下,危险点在一个循环内既受拉又受压(这个机理在深度文章里有详细推导),如果只用Goodman Tension Only,会把压应力阶段的有益效果忽略掉,导致寿命评估过于保守。
FKM方法同时考虑拉压平均应力,是目前疲劳工程界主推的修正方法,结果更合理。从实际操作界面也能看到,我自己的模型就是设的FKM。
步骤6:材料设置(Materials)与损伤累计
在nCode DesignLife的Materials分支里,为轮毂材料6061-T6指定SN疲劳曲线。可以用nCode材料库内置的铝合金SN曲线,再结合自己的试验数据做系数修正。
损伤累计模型用nCode默认设置:
• 损伤累计模型:Miner线性累计损伤(Palmgren-Miner法则)
• 循环计数方法:雨流计数(Rainflow Counting)
Miner法则的核心假设是:每个应力循环造成的损伤线性叠加,总损伤达到1时发生失效。这个假设在工程上广泛使用,对高周疲劳来说足够用了。

材料6061-T6示意图
步骤7:求解并查看寿命结果
所有设置完成后,选中nCode DesignLife的Solution (C6),点击Solve求解。求解完成后,在Solution下插入Life(寿命)结果,就能看到每个节点的疲劳寿命云图(单位:循环次数)。
可以同时插入多个Life结果,分别对应不同的疲劳方法设置,方便对比。
——————————————————————————————
三、两种方法结果对比:居然一模一样
跑完两种方法,结果如下:
预测方法 |
预测疲劳寿命 |
台架实测寿命 |
基于最大主应力法(Abs Max Principal) |
2.756万转 |
11.5万转 |
基于临界面法(Critical Plane) |
2.756万转 |
11.5万转 |
没错,两种方法算出来的寿命完全一样,都是2.756万转。
从寿命云图上看,两种方法的最低寿命位置也完全一致,都在辐条与轮辋过渡的应力集中区,和台架试验的实际裂纹位置吻合。


基于最大最主应力云图 基于临界面法向应力云图

实际疲劳裂纹部位示意图
——————————————————————————————
四、关键讨论:为什么一样?为什么偏保守?
4.1 为什么两种方法结果完全一样?
这是本文最有意思的发现。临界面法理论上更"高级",但在这个案例里和最简单的最大主应力法结果完全相同。
原因在于轮毂弯曲疲劳工况下,危险点的应力状态有一个特殊规律:
在360°全循环加载过程中,危险点的三个主应力呈现出非常稳定的波动模式——
• σ1(最大主应力):主要在正值(拉应力)区间波动,在某个加载角度达到拉应力最大值
• σ2(中间主应力):始终在零附近波动(理论上应为零,因为轮毂表面是平面应力状态)
• σ3(最小主应力):主要在负值(压应力)区间波动,在与σ1最大值相差180°的加载角度达到压应力最大值
换句话说,危险点在一个循环内,本质上是在同一条直线上承受拉-压交替的单轴应力状态。σ2≈0意味着这是一个平面应力问题,而σ1和σ3方向共线、相位差180°,意味着临界面法搜索到的"最危险平面"就是垂直于σ1/σ3方向的那个平面——在这个平面上,法向应力就是最大主应力本身。
所以在这个特定的应力状态下,临界面法退化为最大主应力法,两者结果自然完全一致。
这个规律不是猜的,我用5个不同造型的实测轮毂案例做了验证,每个案例都提取了危险点的应力张量和主应力波动曲线,计算了主应力方向余弦,结论一致。而且基于这个机理,还能预测裂纹的扩展方向——和实际裂纹方向对比,吻合度很高。完整推导和5个案例在我的深度文章里,点击文末链接即可查看。
4.2 为什么仿真2.756万转,实测11.5万转?
差了4倍多,是不是模型错了?
不一定。这里有两个关键原因:
第一,"实测寿命"的定义问题。
台架试验说的"11.5万转出现裂纹",指的是宏观裂纹被观察到的时间。但疲劳裂纹的萌生(从无到有产生微观裂纹)可能发生得更早——也许几万转的时候微观裂纹已经出现了,只是还没扩展到肉眼可见的程度。nCode预测的是裂纹萌生寿命,不是宏观裂纹出现寿命。两者本来就不该完全相等。
第二,FKM平均应力修正本身偏保守。
FKM方法作为工程标准,在制定时就考虑了安全裕度,对压平均应力的有益效果估计偏保守。再加上材料SN曲线的分散性、网格精度的影响,最终结果偏保守是正常的。
关键是:偏保守不是坏事,恰恰是工程设计需要的。
作为轮毂前期设计验证的工具,我们需要的不是"精确预测台架第几万转开裂",而是"在设计阶段就能判断哪个方案更安全、修改哪个位置能有效提升寿命"。一个稳定偏保守的预测流程,只要不同方案之间的相对关系准确,就完全可以用于设计迭代——这也是我做轮毂疲劳仿真课程的核心思路:不追求绝对精确,追求工程上可用、可复现、可自动化的保守预测流程。
——————————————————————————————
五、结论
通过这个实测锻造轮毂案例,我们得到三个明确结论:
1. 在轮毂弯曲疲劳工况下,nCode的最大主应力法和临界面法预测结果完全一致。原因是危险点的主应力波动具有特殊性(σ1拉、σ2≈0、σ3压,方向共线),临界面法退化为最大主应力法。所以做轮毂弯曲疲劳,在Analysis Settings里直接选计算更快的Abs Max Principal就够了,不用纠结临界面法。
2. 预测寿命偏保守(2.756万转 vs 实测11.5万转),但这是合理的。原因包括裂纹萌生与宏观裂纹的定义差异、FKM修正的保守性等。保守预测可用于轮毂前期设计修改验证,只要相对关系准确即可。
3. 完整的预测流程是可复现、可自动化的。从ANSYS Mechanical建模加载→nCode DesignLife疲劳分析→结果解读,每一步的参数设置都是标准化的,完全可以用IronPython脚本实现自动化批量计算——这也是我后续课程进阶篇的重点内容。
——————————————————————————————
写在最后
如果你是做轮毂设计或仿真的工程师,这篇文章的流程你照着做一遍,应该能在ANSYS Mechanical的nCode DesignLife插件里跑出自己的疲劳寿命预测结果。但有几个深层问题,这篇文章受篇幅限制没有展开:
• 为什么危险点的主应力会呈现"σ1拉、σ2≈0、σ3压"的波动模式?这个规律对任何轮毂造型都成立吗?
• 怎么从主应力方向预测裂纹的扩展方向,而不只是找到危险点位置?
• 5个不同造型的实测案例,裂纹方向和主应力方向的对比结果如何?
这些内容我整理成了一篇深度技术文章,用5个实测轮毂案例完整推导了弯曲疲劳工况下的内部受力机理,包括应力张量分析、主应力方向余弦计算、裂纹方向预测验证。有需要的朋友可以点击下方链接查看。
参考资料:
[1] ANSYS 2024R1 DesignLife 2024.0 Release Notes.
[2] SAE J2530-2013, Passenger Car and Light Truck Wheels—Impact Test Procedure / Fatigue Test.
[3] GB/T 5334-2009, 乘用车车轮性能要求和试验方法.






















全部评论 (0)