4. 光机结构热分析建模流程
做光机热耦合分析,说白了就是把一个连续的结构体,拆成有限个离散的小单元。这个过程叫网格划分。网格质量直接决定了计算精度和收敛性。我见过不少新手,模型建得挺漂亮,一算就崩,十有八九是网格出了问题。
4.1 网格划分的核心原则
网格不是越密越好,也不是越粗越快。这里有几个我踩过坑之后总结出来的原则:
- 疏密有度:应力集中区、温度梯度大的区域(比如镜片边缘、支撑点附近),网格要加密。远离这些区域的地方,可以适当放粗。我习惯在关键区域至少划分3-4层单元来捕捉梯度变化。
- 形状规整:尽量用六面体单元,少用四面体。六面体在同样节点数下精度更高。如果模型复杂必须用四面体,那就用二阶四面体(10节点),别用一阶的。
- 避免畸形:单元的长宽比、扭曲角、雅可比都要控制在合理范围内。我个人的底线是:长宽比不超过5,扭曲角小于30度,雅可比不低于0.7。
- 过渡平滑:从密网格到粗网格,过渡要平缓。相邻单元的尺寸比不要超过1.5倍。突然跳变会导致计算误差。
4.2 单元类型选择
单元类型选错了,结果就是错的。光机结构里最常用的就两类:实体单元和壳单元。我分别说说。
4.2.1 实体单元
实体单元用于三维实体结构,比如镜体、镜座、结构支架。它有三个方向的自由度,能模拟真实的体积变形。
| 单元类型 | 节点数 | 特点 | 适用场景 |
|---|---|---|---|
| 一阶六面体(C3D8) | 8 | 计算快,但容易剪切闭锁 | 简单拉伸、压缩,不推荐用于弯曲 |
| 二阶六面体(C3D20) | 20 | 精度高,无闭锁问题 | 光机结构首选,镜体、镜座 |
| 一阶四面体(C3D4) | 4 | 容易生成,但精度低 | 仅用于复杂几何的粗算 |
| 二阶四面体(C3D10) | 10 | 精度尚可,计算量适中 | 复杂形状的替代方案 |
我个人习惯:能用六面体就用六面体。尤其是镜片这种对变形精度要求极高的零件,二阶六面体是首选。如果模型太复杂,实在画不出六面体,那就用二阶四面体。一阶四面体我基本不用——算出来结果你也不敢信。
4.2.2 壳单元
壳单元用于薄壁结构,比如遮光罩、薄壁支撑筒。当厚度远小于其他两个方向的尺寸时(一般厚度/长度 < 1/10),用壳单元比实体单元效率高得多。
壳单元的核心是定义中面和厚度。你想想看,一个薄板,厚度方向只有几个毫米,如果用实体单元,厚度方向至少要画3-4层网格,节点数一下就上去了。用壳单元,一个面网格就搞定,厚度作为属性输入。
常用的壳单元有:
- S4R:4节点四边形壳单元,减缩积分,通用性强。我大部分薄壁结构都用它。
- S3R:3节点三角形壳单元,用于过渡区域,精度略低于S4R。
- S8R:8节点二阶壳单元,精度更高,但计算量也大。
4.3 边界条件设定
边界条件设错了,算出来的变形就是错的。光机结构里,边界条件主要分三类:位移约束、热载荷、接触与连接。
4.3.1 位移约束
位移约束模拟的是结构怎么固定。常见的约束方式:
- 固定约束:所有自由度都锁死。用于模拟安装基座、刚性连接点。
- 简支约束:只限制位移,不限制转动。用于模拟支撑点。
- 对称/反对称约束:如果结构对称,可以只建一半模型,在对称面上施加对称约束。能大幅减少计算量。
4.3.2 热载荷
热载荷就是温度场。有两种施加方式:
- 直接施加温度场:如果你已经通过热分析算出了温度分布,可以直接把节点温度作为载荷施加到结构模型上。
- 施加对流/热流边界:在热-结构耦合分析中,先算温度场,再算热变形。
注意:热膨胀系数要设置正确。不同材料的膨胀系数差异是热变形的根本原因。我习惯在材料属性里同时定义参考温度(一般为装配温度)和热膨胀系数。
4.3.3 接触与连接
光机结构里,零件之间不是焊死的。镜片和镜座之间是胶粘或机械压紧,镜座和结构之间是螺钉连接。这些连接方式都要在边界条件里体现。
| 连接方式 | 模拟方法 | 注意事项 |
|---|---|---|
| 胶粘 | Tie约束或Cohesive单元 | 胶层厚度、弹性模量要输入 |
| 螺钉连接 | Coupling或Bolt预紧力 | 预紧力大小影响接触刚度 |
| 压圈压紧 | 接触对 + 摩擦 | 摩擦系数0.1-0.3 |
| 滑动支撑 | 接触对 + 无摩擦 | 允许切向滑动 |
嗯,这里要特别提醒:接触分析是非线性的,计算时间会比线性分析长很多。如果只是初步评估,可以用Tie约束或弹簧单元来简化。但最终验证时,一定要用接触。
4.4 知识体系框架
我把这一章的核心逻辑画成了图,方便你理解各部分之间的关系:
4.5 实战中的常见问题
最后,我分享几个实际项目中遇到过的坑:
- 网格太粗导致应力奇异:有一次我算镜片支撑点的应力,结果应力值一直不收敛。后来加密网格才发现,那个位置有应力集中,粗网格根本捕捉不到。
- 单元类型选错导致变形模式错误:用一阶六面体算薄板弯曲,结果算出来的变形量只有实际的一半。这就是剪切闭锁。换成二阶单元就对了。
- 边界条件过约束:把镜片边缘全固定,算出来的热应力比实际大好几倍。实际上镜片是浮动的,应该用弹性支撑。