
系列写到第十五篇终于要碰一个很多工程师在实际项目里绕不开的活儿随机振动疲劳评估。前十四篇里我们用 nCode DesignLife 处理过静载工况下的应力-寿命分析、应变-寿命分析也聊过载荷谱的加工处理但那些多多少少带有简化色彩——给的是明确方向、单一幅值的力或力矩边界清楚结果也相对直白。现实里电子设备支架、车载模块、光伏逆变器这些产品在服役时面对的往往是宽带随机振动整车厂或业主方甩过来的是一条条 PSD 谱幅值不是固定值寿命不能靠单个应力循环拍板。这期案例我把场景设定为某车辆平台上的电子控制单元安装支架。铝合金挤压件两个支耳用螺栓固定到车身纵梁中间承托一个约三公斤的控制模块随机振动谱覆盖 20~2000 Hz。整个分析要回答三个问题第一在给定随机振动谱下支架能不能撑到设计寿命第二损伤最大点在哪需不需要调整结构第三哪一阶模态对疲劳贡献最大。适合已经完整跑通过一次静力疲劳流程、想进一步掌握频域疲劳方法的工程师参考。1. 案例背景与整体设计思路1.1 从静力疲劳到随机振动疲劳难度到底变在哪很多刚接触振动疲劳的人有个误区以为不过是把静力载荷换成一条随频率变化的曲线流程差不多。实际上工作重心发生了三个转移载荷从“确定值”变成“统计描述”分析域从时域或准静态换到频域疲劳算法从确定性幅值的雨流计数改成概率密度函数积分。在静力疲劳里我们给的是某个方向的力或力矩结构响应一次算完应力分布基本不变损伤集中在应力集中点。随机振动完全不同激励是宽带随机过程结构在主频附近会产生显著放大不同频率成分对疲劳的贡献不一样危险点不一定在静力作用下应力最大的位置而可能在某一阶模态应变能比较集中的区域。也就是说疲劳损伤和结构动态特性高度耦合不能把静态思维直接搬过来。还有一个容易忽略的点随机振动疲劳分析需要先有频响信息。DesignLife 本身不负责算结构的模态和频响它吃的是有限元软件算好的模态结果或者频率响应结果。所以前置工作要准备的东西比静力疲劳多一层——不是你随便导一个静力工况就能开算而是必须把模态提取、模态应力、约束自由度上的单位激励响应一起准备好否则后面根本没得算。1.2 为什么频域疲劳是工程默认路径处理随机振动疲劳理论上有时域和频域两条路。时域法思路很直白拿一条足够长的加速度时域曲线直接做瞬态动力学分析得到应力时间历程再用雨流计数统计循环最后按 Miner 线性损伤累计计算寿命。这种方法普适性最强对非平稳、非线性、大变形都能处理但代价是计算量极其恐怖——一个 50 万节点的支架模型瞬态分析要做到 2000 Hz时间步长已经压到亚毫秒级长时域跑下来要几百上千个工况步工程上很难接受。而且时域法还有一个隐含问题载荷样本的统计代表性。你计算用的那一段时域数据只是随机过程的一次抽样换一段不同时间的实测数据结果可能差不少。要得到稳定统计结果样本必须足够长这又把计算量往上推了几个量级。频域法恰恰规避了这些问题。它假设随机过程是平稳的、各态历经的用功率谱密度描述激励的统计特征结合系统频响函数得到响应的 PSD再用宽带随机疲劳概率模型直接推出应力幅值分布。工程上绝大多数随机振动规范给的就是 PSD 谱从源头就对上了。这也是 DesignLife 中 Vibration Fatigue 相关模块存在的原因——它让这件事变成一个十分钟内能出结果的常规分析。频域损伤计算的默认算法是 Dirlik 方法。Dirlik 基于大量蒙特卡洛模拟用应力响应 PSD 的前四个统计矩构造应力幅值概率密度函数工程实践证明它在绝大多数宽带随机过程下精度都不错所以作为默认选项是合理的。我也见过有人一上来就问能不能用窄带 Rayleigh 法——那更适合高 Q 值窄带系统普通宽带振动用 Dirlik 更稳妥。1.3 这期案例的分析流程总览用一个直观的对比来说明工作流差异。静力疲劳流程通常是FE 静力结果 → 应力分布 → 载荷循环定义 → 材料 SN/EN → 损伤累计随机振动疲劳流程则是FE 模态结果 → 模态应力 → PSD 激励 → 频响合成 → 概率应力幅 → 材料 SN/EN → 损伤累计注意多了“频响合成”这一环。在 DesignLife 里模态结果和谱载荷输入到振动疲劳模块后软件会按模态叠加的方式合成响应 PSD再进一步做疲劳计算。整个流程可以拆成五个环节准备好模态结果文件检查单位与模态截断定义材料建立或修改 SN 曲线构建 PSD 载荷通道确认激励方向和加载位置设置振动疲劳求解参数运行计算后处理解读损伤分布定位危险节点鉴于系列前十四篇已经把模型导入、材料映射这些基础操作讲透了这期我把重点放在频域特有的三个环节载荷谱处理、模态应力合成、概率损伤计算。这三个环节任何一个出错结果都会偏得离谱而且偏的原因往往藏在参数设置里不是一眼能看出来的。2. 材料曲线准备SN 方法与虚拟材料2.1 SN 曲线里最容易被忽略的三个参数做振动疲劳之前材料必须先在 DesignLife 里定义好。跟静力疲劳一样材料数据可以来自内置材料库也建议自己建一条虚拟材料尤其当供应商给出了实际零部件材料的疲劳数据时。SN 曲线的基础是 Basquin 关系对数坐标下是一条直线或折线。DesignLife 里的 SN 曲线定义包含了几个关键要素弹性模量 E、抗拉强度 UTS、SN 曲线各段的斜率和截距。很多人只盯着 SN 数据表把 E 和 UTS 当成摆设这是不对的。E 影响应力计算和疲劳寿命转换UTS 影响平均应力修正和高应力区的截断处理。举一个具体例子。假设某铝合金材料的 SN 曲线给定两个点(N11e3, S1256 MPa) 和 (N21e6, S296 MPa)。双对数坐标下的斜率 b1 可以这样手算log(S2/S1) / log(N2/N1) 代入数值 log(96/256) / log(1000) (-0.426)/3结果约 -0.142。DesignLife 中斜率参数 b1 一般直接取这个值普通钢大约在 -0.08 到 -0.15 之间铝合金通常更平缓一些。别看这个数字小它对损伤累计的影响是巨大的——斜率差 0.02寿命可能差出好几倍因为损伤是应力幅值的高次幂贡献。随机振动疲劳还有一个特点应力幅值不是固定一个值而是从很小到很大连续分布。SN 曲线在低周区的第二段斜率 b2 也会参与到损伤积分中。如果应力响应中偶尔出现大应力峰值而你的 SN 曲线没有定义低周段或者 UTS 截断设置不合理计算出的损伤会完全失真。所以建立材料曲线时不仅要把高周段做准低周段和高应力截断也要明确。平均应力修正在振动疲劳里同样重要。随机振动工况通常叠加一个静态预应力比如支架本身的自重、安装预紧力或热应力。这些静载会改变平均应力水平。DesignLife 默认的 Goodman 修正公式是Sa Saa × (1 - Sm/UTS)其中 Saa 是无平均应力影响的等效应力幅。实际项目中我不会一上来就关掉平均应力修正而是先看看静载对危险点平均应力的影响有多大。如果静载小修正效果不明显可以简化处理如果预紧力很大就必须保留修正否则结果偏保守或偏危险都不好说。2.2 在 DesignLife 中建立虚拟材料的实操在 DesignLife 的材料显示区域创建虚拟材料时我会按这个顺序操作选择疲劳分析方法为 Stress-Life (SN)输入弹性模量 E注意单位与 FE 模型一致通常是 MPa输入抗拉强度 UTS在 SN 数据表里填写循环数 N 与应力幅值 S 的对应关系设置平均应力修正方法默认 Goodman如果需要设定可靠性系数、表面处理系数这里有个细节DesignLife 里 SN 曲线的应力默认是按“应力幅值”定义的不是“应力范围”。这两个值差一倍很多人都被坑过。如果你手上的材料数据表用的是应力范围比如源自某些标准规范就必须除以 2 再填入或者在软件设置里切换定义方式。否则寿命计算结果会差一个跟斜率相关的巨大倍数。我建议在建立任何虚拟材料后都用一段简单的已知算例验证一下确保理解无误。表面处理系数和可靠性系数这两个参数平时很多人习惯不管。但它们对疲劳寿命影响很大尤其是铝合金焊接支架——焊接热影响区和母材的表面状态完全不同直接沿用母材的 SN 曲线会高估寿命。工程上最好根据实际表面状态折减打磨、喷涂、机加工表面的系数都不一样。如果没有实测数据宁可保守一些把表面系数往低了取。2.3 材料数据缺失时的工程兜底办法供应商说“我们没做过疲劳试验”怎么办这是项目里最常遇到的情况。我的做法是分层处理先找同牌号、同状态的标准材料数据作为基线再用表面处理系数和可靠性系数做折减。铝合金常见牌号如 6061-T6、6005A-T6 都有公开疲劳数据可参考把 UTS、E、SN 点填进去通常能满足初步评估。但要注意同牌号不同供应商、不同热处理状态的数据差异可能很大。如果结构是焊接件问题更复杂——焊缝处的疲劳性能主要取决于焊接质量、焊趾几何和残余应力母材 SN 曲线根本不能代表焊缝。这种情况我建议直接采用焊接接头疲劳等级曲线代替母材曲线比如国际焊接学会推荐的 FAT 等级曲线设计时按相应接头细节选一条 FAT 曲线而不是硬套母材数据。DesignLife 也支持焊线焊点疲劳分析后来的教程可以专门展开。3. 载荷谱的构建从路谱到 PSD 激励3.1 一条 PSD 谱的解读和单位换算PSD功率谱密度是随机振动工况的核心输入。它描述的是信号功率在频率轴上的分布单位常见有两种g²/Hz 和 (m/s²)²/Hz。两者之间相差一个重力加速度的平方也就是 9.80665² ≈ 96.17 倍。这个换算关系看着简单实际项目里因为这个差了百倍的情况我见过不止一次。拿到一条 PSD 谱我建议第一件事不是直接扔进软件而是手工核算一下总均方根值。假设一条典型的平台随机谱是这样20~200 Hz0.02 g²/Hz 平直段200~500 Hz从 0.02 线性降到 0.002500~2000 Hz0.002 平直段粗略积分一下面积第一段面积 0.02 × 180 3.6第二段按梯形近似 (0.02 0.002) / 2 × 300 3.3第三段 0.002 × 1500 3.0。总面积为 9.9开根号后的 RMS 大约是 3.1 g。这个值可以跟规范里给出的总 RMS 对照如果差得远说明 PSD 输入或者分段有误。把这个习惯固定下来能少踩很多坑。还有一个单位细节如果 FE 模型单位是毫米、吨、秒那么应力单位是 MPa加速度单位应该对应 mm/s²。但 PSD 通常以 g²/Hz 给出需要换算成 mm²/s⁴/Hz 再输入或者保持 g²/Hz 但设置好比例因子。DesignLife 中载荷通道有单位换算选项关键是把源单位和目标单位指对这一步错了后面全错。3.2 PSD 谱的通道映射与载荷方向在 DesignLife 里建立振动输入通道时需要明确三个信息通道名、激励方向、施加位置。激励方向通常在全局坐标系下指定X/Y/Z 或者组合方向。施加位置则是 FE 模型中承受激励的约束自由度一般对应螺栓连接处的节点组或刚性单元参考点。这里有一个很多人容易含糊的概念对加速度激励而言PSD 施加在“约束位置”的方向上。FE 模型里这些位置如果有约束自由度结构才能把加速度激励转化为惯性力。DesignLife 需要你给它提供在此处施加单位激励时结构的频响或模态参与信息。所以前置的有限元计算不是随便算个自由模态就行必须在约束位置建立好单位激励工况。耦合多节点和刚性单元的做法需要重视。很多工程师把固定点直接用单一节点约束这样边界过刚约束点周围应力不真实疲劳危险点容易假性地集中在螺栓孔边。工程上处理绑定约束时我建议用弹性连接或者 RBE3 分布耦合来柔化连接尤其当关注点正好在支架支耳附近。这个细节在静力疲劳里影响可能不大但在振动疲劳里危险点往往就在边界附近边界刚化会直接扭曲结果。3.3 同时施加多个方向时的经典处理方式实际产品往往三个方向同时受振。整车厂给出的 PSD 通常每个方向一条谱而且不一定同时强。处理方式有三种第一种是简单叠加就是把 X/Y/Z 方向各自的损伤算出来直接相加。前提是假设各方向激励的相位关系是随机的、互不相关的这种处理在 DesignLife 里可以通过分组加载和损伤叠加实现。第二种是平方根和先用各方向响应的统计矩合成一个综合响应再一次性计算损伤。这种方式适用于多方向激励同时作用、且幅值相当的情况结果往往比简单叠加更合理因为避免了线性叠加可能出现的过保守。第三种是主方向法看三个方向中哪一个 RMS 最大、哪一个方向结构响应最敏感直接按最严方向评估。工程预筛阶段我经常这么干快且直观但正式报告还是会做多向评估。我的经验是如果三个方向的谱互不相同且结构在各方向灵敏度差异明显先每个方向独立算损伤再叠加如果激励源是同一宽带随机过程、方向间相关性未知保守起见用直接叠加法也能接受。关键是方案要在报告中写清楚别让读者以为只算了一个方向就是全部工况。4. DesignLife 核心实操随机振动疲劳分析完整流程4.1 FE 结果导入和模型一致性检查落到具体操作。把某有限元求解器算好的模态结果导入 DesignLife文件格式可能是 .rst、.op2 或 .odb 等。导入后第一步不是配材料而是打开 FE Display 仔细检查几件事。第一是单位。FE 模型用的是毫米还是米材料模量是 MPa 还是 PaDesignLife 导入时通常有单位识别机制但自动识别不总是可靠。单位一旦错了后面所有应力、寿命都是废的。我每次都在计算前用一个小工况验证取一个已知应力水平的节点和 FE 软件里的原始结果核对。第二是模态数。随机振动分析需要覆盖激励频率范围。激励上限 2000 Hz那么模态提取至少要覆盖到 3000~4000 Hz按工程经验留 1.5~2 倍余量。如果有限元软件里只提取了前 20 阶模态、截止频率恰好压在 2000 Hz 附近尾部贡献会被截断损伤会明显偏低。打开模态列表检查最高模态频率是否足够高再看质量参与因子总和是否超过 90%。参与因子不够意味着模态集不完整后续频响合成会有明显失真。第三是模态应力或模态位移的存在。DesignLife 做振动疲劳需要模态应力数据如果 FE 结果里只有模态位移软件也可以自行恢复应力但精度和网格质量直接相关。我建议在 FE 侧直接输出模态应力场这样在 DesignLife 里减少一步恢复计算也能避开奇异网格带来的额外噪声。4.2 搭建 DesignLife 数据流和振动分析参数在 GlyphWorks 图形化环境中搭建流程基本是这几块FE Input 节点载入模态结果材料节点绑定到模型部件载荷输入节点载入 PSD 谱振动疲劳计算节点设置求解参数Result 输出节点查看云图和列表振动疲劳计算节点的核心参数我整理成一张常用表参数项推荐设置说明疲劳分析方法Stress-Life (SN)高周弹性振动工况的默认选择振动分析方法Dirlik宽带随机振动首选平均应力修正Goodman存在静态预应力时保留分析频率范围20~2000 Hz与 PSD 谱一致全局阻尼比0.02~0.05根据结构类型和实测数据设定载荷比例系数按单位换算g²/Hz 转 mm²/s⁴/Hz 时换算 G 和 1000阻尼比这个参数特别值得拿出来讲。随机振动下结构在共振峰附近响应幅度和阻尼直接相关阻尼从 1% 提到 5%共振峰幅值可以差 5 倍而疲劳损伤与应力幅的高次方成正比折算到寿命可能是几十倍的差异。如果客户给不出实测阻尼我建议做一次阻尼敏感性分析把 1%、2%、3%、5% 的寿命都算一遍看结果落在什么范围报告里也有底气。频率范围的设置也有讲究。DesignLife 内部会在设定范围内做频响合成和谱矩计算范围设得比 PSD 谱窄局部频带损伤会被忽略设得太宽可能会把 FE 模态未覆盖的高频噪声也算进去损伤虚高。稳妥做法是让分析频率范围略大于 PSD 谱覆盖范围但不超过最高模态频率。载荷比例系数这块如果 FE 模型单位是 mm、t、s材料模量是 MPaPSD 以 g²/Hz 做源单位输入软件内部需要把 g²/Hz 换算成 mm²/s⁴/Hz中间涉及 9810 的平方换算系数设错结果差好几个数量级。我的建议是在载荷通道属性里显式填写源单位和目标单位让软件自动换算不要手填换算后的数值。4.3 检查模态参与因子与频响覆盖模型跑通后不要着急看寿命云图先看中间过程量。DesignLife 有频响预览或模态参与因子的输出能直接看到每一阶模态对响应贡献的大小。对随机振动疲劳起主要贡献的往往是那些固有频率落在 PSD 谱峰值附近的模态以及质量参与因子大的模态。如果某阶模态参与因子为 0说明该模态没被激励起来对损伤没有贡献这是正常现象。反过来如果参与因子最大的模态固有频率在激励谱之外要检查载荷方向是否指对了——可能是把 Z 向激励加到了 Y 向自由度上方向错了大模态没被触发。我看过不少次算出来的损伤云图非常诡异危险点不在任何约束边界、也不在几何突变处而是孤零零出现在模型中间某个节点。排查半天发现是 FE 模态提取时某个局部约束没加好产生了一个不应该存在的局部模态。这种时候不要直接信结果回到有限元模型看模态振型确认哪些是真的、哪些是数值假象。频响覆盖检查同样重要。在 DesignLife 里可以导出一个控制点或约束点的响应 PSD对照激励 PSD看响应峰值是否出现在结构固有频率附近。如果响应谱形状异常比如出现了激励谱里完全没有的尖峰大概率是 FE 模态集里包含了一个不合理的刚体模态或虚假模态这种问题在其他软件里很难发现。4.4 结果解读损伤分布图与危险点定位计算完成后主要看两个输出Damage 云图和 Life 云图。Damage 无量纲直接表示损伤累计程度大于 1 意味着已经出现裂纹Life 云图通常以循环数或重复次数表示取决于你定义的是循环载荷还是载荷块。定位危险点有几个实用技巧。我在显示结果时习惯把损伤阈值设到设计损伤的倒数附近也就是设计寿命对应的损伤值然后隐藏低于该值的区域一眼就能看到哪些地方寿命不达标。再辅助用探针或列表提取损伤最大的前 20 个节点看它们是否集中在某个连续区域——如果最大节点是孤点很可能是网格奇异性造成的假危险点需要进一步核验。这期支架案例的典型结果是损伤集中在两个支耳根部过渡圆角处以及螺栓孔边缘附近损伤量级比中间托架面大得多。这是符合力学直觉的支耳根部约束刚度变化大振动放大明显加上应力集中疲劳损伤自然集中。如果损伤云图显示危险点在托架中央等无关紧要的位置就要怀疑边界条件或载荷映射出错了。寿命数值怎么解读比如某节点损伤为 0.08设计寿命对应 1000 小时振动那这个节点还有余量如果损伤为 2.5那提前出现裂纹的概率就很大了。注意这里的寿命是统计意义上的对应的是“在该随机载荷工况下维持到出现工程裂纹的估计”不是绝对值。做决策时一定要留安全余量通常用到设计寿命的 2~4 倍作为评估门槛。4.5 边界条件对危险点位置的影响做振动疲劳越久越发现危险点位置对边界条件极其敏感。支架端部如果用刚性六自由度约束约束点周边应力会虚高损伤最大位置往往紧贴约束边界靠近安装面一圈都被点亮。这样的云图客户看了确实直观但工程师要心里有数真实连接是螺栓加接触面不可能像理想刚体约束那么硬。解决办法是用 RBE3 分布耦合或者接触非线性模型来模拟真实连接让载荷通过多个节点分散传递。这个改动会明显降低约束点周边的虚假应力让真正由结构几何引起的应力集中浮出来。代价是前处理工作量增加但如果你关注的位置正是支耳和螺栓孔区域这一步不能省。我们项目团队在这类分析里的标准流程是第一轮全刚性约束快速摸底第二轮对危险区域做柔化边界复核。如果两轮分析的危险点一致结论可靠如果不一致以第二轮为准并且反思第一轮是否存在过度简化。5. 常见问题与排查技巧实录5.1 寿命异常时的第一轮排查清单随机振动疲劳的结果一旦看起来不对劲我有一套固定的排查顺序而不是漫无目的地试参数。下面这个表格基本覆盖了 90% 的情况症状常见原因排查动作寿命显示无限大PSD 单位换算错误激励太小手工积分 PSD 面积核对 RMS 量级寿命极短甚至全云图通红材料单位错误SN 曲线应力填成应力范围抽查危险节点应力值核对材料曲线危险点位置奇怪约束边界刚化、网格奇异性检查约束方式切换柔化连接重算损伤集中在单一节点网格局部奇异性细化网格或引入应力平均结果与模态工况对不上模态截断不足查看最高模态频率与参与因子第一步永远先核对 RMS。把 PSD 谱的面积手动积分一遍算出 RMS 加速度看是否符合常识。比如一个电气支架的振动试验谱如果 RMS 只有 0.5 g那寿命很长是正常的如果 RMS 有 10 g寿命短也是正常的。量级不对再往下排查才有意义。第二步核对危险节点的应力水平。在 DesignLife 里提取该节点的等效应力幅统计值比如 RMS 应力或特征应力拿材料和载荷的常识去对照。一个 3 公斤重、材料是常见铝合金的支架危险节点应力如果到了几千 MPa肯定是单位问题材料曲线不至于差这么多。5.2 阻尼参数为什么会影响寿命结果这么多经常会有同事跑过来问为什么我把阻尼从 2% 改成 1%寿命直接降了一个数量级我说这太正常了。随机振动激励下结构响应在共振峰附近幅值大致反比于阻尼比。阻尼比减半共振峰幅值翻倍应力响应的 RMS 也差不多等比例增长。而疲劳损伤对应力幅是高次幂敏感SN 斜率 b1 约 -0.1 到 -0.15应力翻倍对应的寿命变化接近 2 的 1/0.1 到 1/0.15 次方——几十到上千倍的变化都有可能。所以阻尼参数的选取不能拍脑袋。有以下几种做法有测试数据时用半功率带宽法从实测频响函数反算各阶模态阻尼没有测试数据时参考同类结构的经验范围钢结构 1%~3%铝合金铸件 2%~5%带橡胶衬套的支架还要考虑局部高阻尼区域实在只能给一个值时要在报告里做阻尼敏感性区间分析并说明选取理由。我在支架这类小型结构上常用 3% 左右作为基准然后额外跑一组 2% 和一组 5% 的对比工况。如果三者的危险点一致、寿命量级在可接受范围结论就稳如果三组结果差异大到影响设计决策那说明结构本质是阻尼敏感的需要获取更可靠的阻尼数据再下结论。5.3 Dirlik 方法适用性和多峰谱处理Dirlik 方法虽然默认且好用但并不是万能。它的适用范围是平稳高斯随机过程对绝大多数宽带振动谱效果不错。但如果 PSD 谱有明显的分离双峰比如低频 30 Hz 处一个尖峰、高频 1000 Hz 处又一个尖峰中间的频带几乎没能量Dirlik 的单峰概率密度假设可能就不够准确给出的损伤会偏大或偏小具体取决于峰值带宽和应力状态。这种多峰谱在新能源车上特别常见路面振动低频成分加上电机高频激励叠在一起天然形成双峰谱。处理手段我一般有两条路线一条是把 PSD 分频段拆开分别计算每个频段的损伤再叠加这样每个频段内部可以近似当成窄带或单峰宽带处理另一条是切换到更精细的多峰组合算法比如双峰法或基于雨流仿真的频域方法DesignLife 相关模块支持这类高级选项。工程上还有一个更简单的兜底思路如果多峰谱的两个峰相距很远且其中一个峰值对结构寿命几乎没贡献可以直接按保守的包络谱计算。包络谱会把低频和高频峰值都保留中间补平相当于多算了损伤结论偏安全。这个方法不适合精度要求很高的研究但适合工程决策。5.4 网格奇异性怎么处理随机振动疲劳里网格奇异性是个躲不开的坑。尖锐倒角、焊接趾端、分析中人为的约束点这些位置的应力理论上会随网格细化不断增大损伤也随之疯涨。于是出现一种很尴尬的局面同一结构网格加密一倍计算寿命降一倍让人根本没法判断真实寿命。我的处理建议是分层首先保证关注位置的网格足够细细化到应力梯度不再剧烈变化为止其次如果奇异点不可避免把它从损伤评价区域中排除或者做应力平均处理比如按热点应力法取距焊趾一定距离处的应力外推。DesignLife 支持对材料或焊线进行专门的参数设定合理使用这些功能比在母材应力上死磕更有效。对于这期支架的螺栓孔边缘如果采用理想刚性约束孔边应力奇异会非常严重。我们最终方案是在螺栓孔位置用了 RBE3 柔化连接孔边网格加密到 1 mm 以下再叠加一个应力平均范围。三个措施下来危险点的损伤数值从一种“发散”的状态收敛到了一个稳定区间这时候的寿命数据才有工程参考价值。还有一点振动疲劳的危险位置经常是焊点、焊线、螺栓孔边缘。这类局部位置不能只靠母材 SN 曲线和应力云图来评价因为局部微观几何、残余应力和连接工艺对寿命的影响超过了宏观应力本身。遇到连接部位直接使用 DesignLife 的焊点焊线疲劳功能或者连接件 SN 曲线结论才站得住。收尾与后续预告可能是我职业习惯太重每次做随机振动疲劳都会在正式出报告前多花 5 分钟做一件很土的事手工把 PSD 的面积积一遍算出 RMS 再跟规范或实测信号对上号。按钮和参数可以一个个细调单位制却从来不是靠界面能自动兜底的。第一次做振动疲劳时我在 g²/Hz 和 (m/s²)²/Hz 之间忽略了一个平方关系寿命结果接近无限当时以为是结构足够强后来手算 RMS 才发现激励量级差了十倍不止。从那以后单位制核验就成了我的固定动作。这期案例最终计算结果显示支架在给定随机振动谱下存在两个风险区域支耳根部过渡圆角和靠近约束的螺栓孔边缘其中支耳根部损伤最大。通过把刚性约束改为 RBE3 柔化连接再把阻尼按 2%~5% 做敏感性分析危险点始终没变寿命范围落在可接受区间的下限附近结论是需要增加根部圆角半径并提高局部表面质量等级。整个分析从 FE 结果导入到出报告熟练后大概半天能完成。随机振动疲劳后面还能扩展的方向不少。比如焊点焊线疲劳对于车身和电池包结构特别实用还有双轴比例载荷加载处理实际产品里多向振动耦合的问题以及基于试验数据的载荷谱制作把采集到的时域信号转化为规范的 PSD 谱。这些内容如果大家感兴趣后续教程可以一个一个展开。到第十五篇关于 nCode DesignLife 的静力和振动疲劳主流程已经基本完整剩下的就是大家在各自产品上多积累经验、多踩几个真实的坑。