热应力算出2000MPa?先别怀疑材料,是你的约束把模型锁死了
结构钢屈服才 250~345MPa。算出 2000 多兆帕,八成不是材料要炸,是模型过约束了。
做热结构耦合,最容易出的两个事故:一个是热应力大得离谱,一看就是假的,但不知道该松哪里;另一个是求解器直接报「包含无效数据」,翻半天找不到缺了什么。
这篇把 ANSYS Workbench 瞬态热 + 热结构耦合这一讲拆开:稳态和瞬态怎么选、三种耦合做法的差别、材料参数漏哪个会出事,以及热应力为什么会被约束「放大」到失真。
一、稳态解是瞬态的终点,别拿 1 秒的结果当稳态
把稳态热分析直接改成瞬态热分析,操作是一样的,改完之后分析设置里会多出两个选项:「时间控制」和「时间积分」。剩下的关键是——你要算多久。
同一个模型,只改求解时间,结果差别巨大:
求解时间 → 温度结果
1 秒 → 最低温度才 73 ℃,温度远未达到均匀分布
10 秒 → 温度已升到 290 ℃ 左右
15 秒 → 基本达到 299 ℃,与稳态解一致
结论:稳态结果就是瞬态的极限状态。
只关心最终温度 → 用稳态,省算力;
关心「多久达到稳定」「中途峰值多少」→ 必须做瞬态,而且时间要给够。
图1 同一模型:1s 最低温仅 73℃,15s 才基本稳定在 299℃
二、热结构耦合的三种做法
做法 A|顺序耦合 · 网格一致
插入瞬态结构分析,导入载荷来自上游热分析。此时热和结构共用同一套网格、单元类型一致,结构步数不一定要和热分析相同。
⚠ 最容易踩的坑:默认情况下它只读取结束时刻的温度场,其他时刻的温度场你根本拿不到。想按时间步传递(比如取第 15 步),必须在导入载荷里把加载方式改成斜坡(Ramped)或步进(Stepped)。
做法 B|顺序耦合 · 网格不一致
热和结构的网格并不需要一致。温度场变化平缓,网格可以画得粗一点;结构网格则按应力梯度需求细化——这样能省不少算力。
代价是:从外部导入温度载荷时会有容差设置(因为网格对不上),默认是「全部读取」。同时需要重新生成网格、重新指定材料(默认材料里比热容往往是空的,要自己补)。
做法 C|直接耦合
热和结构在同一个分析里同时求解:插入塑性生热 / 粘塑性生热,把结构和热的开关都打开,热弹簧打开,分析步长给 0.1 秒。
实测下来,直接耦合的结果与顺序耦合基本一致。所以除非有强双向耦合需求(如大变形显著改变传热路径),一般用顺序耦合就够了,成本更低。
图2 导入载荷设置:默认只读结束时刻,需改斜坡/步进才能按时间步传递
图3 直接耦合:插入塑性生热,结构与热开关同时打开
三、材料参数:漏一个就报错,漏两个就白算
参数 → 缺了会怎样
热膨胀系数 → 必须有,没有它根本无法计算热膨胀,热应力恒为 0
比热容(定压比热) → 瞬态热分析必须;稳态热分析可以不需要← 最高频的坑
密度 → 自定义材料最常漏的一个,缺了直接报错「里边包含无效数据」
弹性模量 → 必须,否则结构求解无法进行
图4 典型报错「包含无效数据」:回去检查自定义材料,把密度补上
几个可以直接抄的参考值:结构钢热膨胀系数 1.25×10⁻⁵ /℃、比热容 434 J/(kg·℃);复合材料的弹性模量按材料库查表填入(讲稿里查到的量级在 2.3×10¹¹、70 GPa、泊松比 0.34 附近)。
另外,热膨胀系数可以输入随温度变化的表格,不必只给一个常数。做宽温区工况时,这一点会明显影响热应力结果。
图5 材料参数:热膨胀系数、比热容、密度、弹性模量,一个都不能少
四、热应力 2000MPa 是怎么来的
热应力产生的三个条件
热膨胀系数 × 温差 × 约束
约束越强,热应力越大。三者缺一,热应力就出不来。
道理很简单:热载荷下,结构如果能自由膨胀,它可以一直膨胀下去而几乎不产生应力。应力是「膨胀被挡住」才产生的。
所以同一个模型、同一套温度场,只改约束,热应力能差出一个数量级:
施加两个固定支撑 → 热应力达到 2000+ MPa
打开热弹簧 / 弱弹簧 → 结构可以自由膨胀,热应力明显变小
改用远程位移,释放部分自由度 → 等效应力「相当于释放了好多」
释放 Z 方向 → 应力明显下降
约束越少、释放的自由度越多
热应力越小
图6 两个固定支撑下的热应力:局部达到 2000 多 MPa
图7 打开热弹簧让结构自由膨胀后,热应力骤降
工程含义:算出 2000 MPa,绝大多数情况下不是真的,而是过约束造成的假象。真实结构里总有间隙、垫片、螺栓滑移、支撑柔性。
看到离谱的热应力,先别急着改材料、改结构,先问一句:这个约束在实际产品里真有这么刚吗?
五、远程位移:刚性还是柔性,差别很大
用远程位移(Remote Displacement)来放松约束时,要注意它的行为类型:
柔性(Deformable) 位移可以分配,远端区域允许变形,约束更「软」,更接近真实的弹性连接
刚性(Rigid) 该方向不分配位移,相当于常用的 RBE2 刚性单元,会把远端区域强行拉成刚体,容易在连接处产生虚假应力集中
可以只约束平动、释放三个转动,也可以反过来——热应力问题里,释放转动通常能显著降低虚假应力
图8 远程位移的刚性 / 柔性选择:柔性可分配位移,刚性等同 RBE2
图9 逐步释放自由度后,等效应力明显下降
六、多物体 + 温度压力联合载荷
真实产品往往不止一个零件,也不止热载荷。以管道为例:
热分析 给 10 秒。1 秒时热分布还不均匀,10 秒已经完成热传导
结构分析 取 1 秒的结果就够了(结构响应关注的是该时刻的应力状态)
联合载荷 温度 + 管道内压 0.2 MPa(方向朝外)同时施加
别忘了 多物体装配的接触需要更新,否则载荷传不过去
图10 温度 + 0.2MPa 管道内压的联合载荷工况
顺带一提,网格不一致的顺序耦合在导入温度载荷时会有容差控制,默认「全部读取」;而结果对比下来,直接耦合与顺序耦合基本一致——所以在没有强双向耦合需求时,别为了"更高级"去付直接耦合的算力代价。
图11 直接耦合与顺序耦合的结果对比:基本一致
✅ 热结构耦合调试清单
1. 选分析类型:只要终态温度用稳态;要升温过程/中途峰值用瞬态,且时间要给够(本例 15s 才稳定)
2. 选耦合方式:顺序耦合(网格可一致可不一致)优先;强双向耦合才上直接耦合
3. 检查导入载荷:默认只读结束时刻,要按步传递就改斜坡/步进
4. 检查材料四件套:热膨胀系数、比热容(瞬态必须)、密度、弹性模量
5. 看到「包含无效数据」:先查自定义材料的密度和弹性模量
6. 热应力离谱时:检查是不是过约束——用热弹簧/远程位移释放自由度,逐个试
7. 远程位移:柔性可分配位移;刚性等同 RBE2,易产生虚假应力集中
8. 多体装配:接触记得更新,温度和压力可以联合加载
扫码添加小助理,回复关键词「ANSYS」获取转行学习路径与课程大纲










评论0