发布时间:2026-06-30 14: 30: 00
当设备在运行中被加热、冷却,或者只有一部分区域受到热源影响时,零件的材料会发生膨胀或收缩,而且因为周围结构的限制,还会在内部产生相互拉扯的应力。用Abaqus来处理这一类热应力问题,比较常用的办法是采用顺序耦合的方式:先把热传导分析做完,拿到整个模型的温度分布,然后再把这些节点上的温度数据传到专门做结构分析的模型里面,去计算位移和应力。温度变化对结构受力影响比较大,而结构的变形反过来对温度的影响却很小的时候,这种先算温度、再算受力的做法就很合适,通常所说的顺序耦合热应力分析,就是由一个热分析步加上一个后续的应力分析步组合起来的。
一、Abaqus里怎么完成热应力分析
热应力分析在动手之前,就要把它看成两套模型来准备,一套专门用来算温度,另一套专门用来算结构响应,虽然这两套模型可以用同一套几何外形和网格,但它们所用的单元类型、材料参数和分析步骤是完全不一样的。
1、先搭好热传导分析的模型
在【Property】模块里,先要把材料的导热系数定义好,如果分析的是温度随时间变化的瞬态过程,那还要再把密度和比热容补充进去。接着进入【Step】模块,创建一个Heat transfer类型的分析步,然后到【Load】模块里,把温度边界条件、热流、对流或者辐射这些载荷加上去。有一点很容易混淆:在热传导分析当中,给模型的某个位置指定一个已知的温度,应该用边界条件的方式去施加,不要把它错误地当成预定义温度场来用,因为二者的含义在软件里是不同的。
2、把节点处算出来的温度结果保存下来
热分析的任务提交计算以后,可以进到【Visualization】里面,查看温度随着时间推移是怎么变化的。后面要做结构分析的时候需要读取每个节点上的温度值,所以在热分析的场输出里面,一定要把NT也就是节点温度这个量保留下来。Abaqus在温度相关的分析里,既可以输出节点位置的温度NT,也可以输出单元上的温度TEMP,我们做顺序耦合的时候主要用的是节点温度。
3、建立用来计算结构受力的模型
比较快捷的做法是把前面热分析的模型直接复制一份,然后把里面的热传导单元替换成相应的应力分析单元,再重新创建一个Static General分析步。在材料属性这一块,这个时候还要补上弹性模量、泊松比以及热膨胀系数这几个关键参数,因为只有知道了材料受热后会膨胀多少,软件才能根据参考温度和热膨胀系数算出热应变,而模型上施加的约束条件又会进一步影响最终的热应力结果。
二、热载荷传递的顺序应该怎么检查
在顺序耦合的热应力分析里面,真正需要从热模型传递给结构模型的东西,是那些算出来的节点温度数据,而不是把之前加在热模型上的热流、对流这一类载荷原封不动地再照搬一遍。如果把这个传递的内容或者顺序弄错了,结构分析虽然也有可能跑通,但是算出来的应力结果会和真实情况偏离得很远。
1、确认读入的温度场确实是从热分析结果里来的
进到结构模型的【Load】模块,沿着【Predefined Field】→【Create】→【Other】→【Temperature】这条路径把设置窗口打开,在Distribution那一栏里选择【From results or output database file】,然后再去指定前面那轮热分析所生成的结果文件,以及要从哪一个分析步、哪一个增量步里面读取温度。Abaqus本身允许把前一次热分析得到的温度分布,当作当前结构模型里的一个预定义温度场来使用。
2、核对读入的时间点与分析工况是不是对得上
对于瞬态热分析,不能只是随意挑最后一个增量步就把温度读进来,因为升温、保温和冷却各个阶段的温度分布是完全不一样的,结构应力的最大值也有可能出现在中间某一个时刻,而不是结束时刻。所以在设置读取结果文件的时候,一定要看清所选的分析步Step、增量步Increment或者具体的时间点,是不是正好对应着当前要考察的工况。
3、核对热模型与结构模型的网格和实例名称是否一致
当热模型和结构模型用的是同一套网格时,它们的节点编号以及部件实例的名称都应该保持一模一样。相关的帮助文档里也明明白白地提醒过,从热模型转换到应力模型的时候,节点编号必须保持一致,软件本身并不会主动去判断两个模型里的节点位置是不是真的重合在一起,这就要求我们在复制模型的时候格外注意这一点。
三、热应力分析结果出现异常时怎么回头排查
如果发现计算出来的热应力结果明显不对劲,先别急着去修改模型或者重新画网格,可以试着从温度场的分布、材料参数的填写,还有约束条件施加的位置这几个方向,一层一层往回找,通常很快就能发现问题是出在哪一个环节。
1、先观察一下温度云图合不合理
要是云图上显示整个零件的温度几乎处处相同,而实际的工作状态下明明是只有局部区域被加热了,那就说明温度边界或者时间相关的设置很可能有错误。如果在云图上看到某些地方温度突然出现很尖锐的跳变,那还要再仔细检查一下零件之间的接触导热定义、网格在这些区域的疏密程度,以及材料导热系数的设定是不是恰当。
2、回头确认热膨胀系数和参考温度
热膨胀系数这个参数一旦漏填,就算结构模型已经正确地读入了温度数据,也没有办法得到正确的热应变,因为软件缺少了温度和应变之间的关键换算依据。参考温度设置的如果不合适,模型在一开始就会被误认为已经发生了热胀或者冷缩,这样算出来的热应力自然也会带着一个整体的偏差。
3、看看施加的约束是不是过于强硬
热应力的大小和边界约束条件之间的关系十分紧密。零件如果能够比较自由地热胀冷缩,那么产生的热应力往往是很小的;但要是把它的自由度固定得太多,应力就会被人工地放大。所以在施加边界条件的时候,要尽量贴近零件真实的装配关系和连接方式,不能纯粹为了让模型容易收敛,就把整个零件所有的自由度都锁死。
总结
关于Abaqus怎么做热应力分析以及热载荷传递顺序该怎么检查,在操作上可以按照下面的顺序来整理:先跑通热传导分析,把节点温度NT的结果妥善保存好,再到结构分析里通过【Predefined Field】的方式把这些温度结果读进来。在检查的过程中,重点要放在分析步和增量步的选取是否准确、节点编号和实例名称有没有对应上、热膨胀系数是否已经填写,以及结构上的约束强度是不是合理这几个方面。只有把温度从热模型到结构模型这一整条传递链路理顺了,后面算出来的热应力结果才有继续判断和分析的意义。
展开阅读全文
︾