四、接触与连接建模:螺栓连接简化、胶粘界面模拟、光学元件支撑方式
接触和连接,是光机结构有限元分析里最容易翻车的地方。我见过太多人,模型建得漂漂亮亮,一算接触就飞掉,或者结果跟实测差好几倍。说白了,接触设置不是「点几下鼠标」的事,你得理解背后物理。
这一章,我把几个最常用的场景拆开讲:螺栓怎么简化、胶粘界面怎么处理、光学元件怎么支撑,还有接触刚度那个让人头疼的参数。
4.1 螺栓连接简化:别把螺栓画成艺术品
很多新手喜欢把螺栓、螺纹、垫圈全画出来。嗯,精神可嘉,但没必要。有限元模型不是CAD模型,你画得越细,网格越烂,计算越慢,还不一定准。
我个人习惯,根据分析目的选简化方式:
| 简化方式 | 适用场景 | 精度 | 计算成本 |
|---|---|---|---|
| 梁单元 + 刚性连接 | 整体变形、模态分析 | 中等 | 低 |
| 实体螺栓 + 预紧力 | 螺栓根部应力、疲劳 | 高 | 高 |
| 耦合约束 + 预紧力 | 组件级装配、热分析 | 较高 | 中等 |
| 纯绑定接触 | 快速评估、概念设计 | 低 | 极低 |
具体操作上,我一般这么干:
- 螺栓位置:在螺栓孔中心建一个参考点。
- 梁单元:从参考点延伸到被连接件表面,给截面属性(直径按螺栓公称直径)。
- 预紧力:用梁单元的热膨胀或直接加力模拟预紧。
- 连接方式:参考点与被连接件孔边用耦合约束(Coupling)或分布耦合(Distributing Coupling)。
! 示例:Abaqus 中用梁单元模拟螺栓
*Element, type=B31, elset=Bolt-1
1, 100, 101
*Beam Section, elset=Bolt-1, material=Steel, section=CIRC
0.004
*Coupling, constraint name=BoltHead-1, surface=Surf-BoltHead-1
100, 1, 6
*Cload
100, 1, 5000.0 ! 预紧力 5000 N
4.2 胶粘界面模拟:粘接不是「粘住就行」
光机结构里,胶粘用得越来越多。尤其是小镜片、棱镜、窗口,用胶粘比用机械压圈省空间、减少应力。但胶粘界面的有限元模拟,坑不少。
胶粘层很薄,通常0.05~0.2 mm。你想想看,如果按实际厚度画一层实体网格,长宽比会大到离谱,计算根本跑不动。所以得简化。
我常用的三种方法:
- 方法一:绑定接触(Tie)——最简单,适合胶层刚度远大于被粘件的情况。但忽略胶层柔度,算不出胶层应力。
- 方法二:弹簧/阻尼单元——在粘接面节点间加弹簧,刚度按胶层材料参数算。适合热分析,能反映胶层变形。
- 方法三:内聚力模型(Cohesive Zone Model)——最精确,能模拟脱粘过程。适合做胶层失效分析,但参数难获取。
| 方法 | 胶层应力 | 脱粘模拟 | 参数获取难度 | 计算成本 |
|---|---|---|---|---|
| 绑定接触 | 无 | 否 | 低 | 极低 |
| 弹簧单元 | 近似 | 否 | 中 | 低 |
| 内聚力模型 | 精确 | 是 | 高 | 中 |
关键参数:胶层等效刚度
用弹簧单元时,切向刚度 Kt = G·A / h,法向刚度 Kn = E·A / h。
其中 G 是胶的剪切模量,E 是弹性模量,A 是粘接面积,h 是胶层厚度。
举个例子:环氧胶 E=3 GPa,G≈1.15 GPa,粘接面积 100 mm²,胶厚 0.1 mm,算出来 Kn ≈ 3×10⁶ N/mm。这个值不小,但比刚性绑定还是软一些。
我在一个棱镜粘接项目中遇到过问题:用绑定接触算热应力,结果镜面变形很小,但实际装调时发现棱镜偏了。后来换成弹簧单元,胶层柔度一加进去,变形量就对上实测了。所以,胶层柔度不能忽略,尤其是温度变化大的场合。
4.3 光学元件支撑方式:柔性支撑 vs 三点支撑
光学元件对变形极其敏感。你想想看,一个直径100 mm的反射镜,面形误差只要λ/10(约63 nm),成像质量就明显下降。所以支撑方式的选择,直接决定分析成败。
4.3.1 三点支撑
最经典的方式。三个支撑点呈120°分布,静定结构,不产生多余约束力。适合中小口径镜片(直径<300 mm)。
有限元建模要点:
- 支撑点位置:通常放在镜片背面,距边缘0.6~0.7倍半径处(等挠度环位置)。
- 接触设置:用「无摩擦接触」或「仅压缩接触」,允许镜片在支撑点处有微小滑动。
- 约束:三个点分别约束轴向位移,其中一点约束径向和切向,防止刚体位移。
4.3.2 柔性支撑
大口径镜片(直径>300 mm)或者对热稳定性要求高的系统,必须用柔性支撑。柔性支撑通过薄壁结构或柔性铰链,释放热应力和装配应力,同时保持定位精度。
有限元建模时,柔性支撑本身就是一个精细结构,不能简化成刚性约束。我一般这么做:
- 支撑结构单独建模:柔性铰链、薄壁梁、弹簧片,全部用实体或壳单元。
- 接触设置:支撑与镜片之间用「无摩擦接触」或「小滑移接触」。
- 边界条件:柔性支撑的安装面固定,镜片自由。
- 载荷:重力、温度变化、装配预紧力。
柔性支撑的刚度是关键。太硬,失去柔性效果;太软,定位不稳。我习惯用「刚度比」来评估:支撑轴向刚度 / 镜片轴向刚度 ≈ 0.01~0.1 比较合适。
4.4 接触刚度设置:那个让你头疼的参数
接触刚度(Contact Stiffness)是有限元接触分析里最玄学的参数。设小了,穿透大,结果不准;设大了,收敛困难,甚至振荡。我刚开始做接触分析时,被这个参数折磨了好几个项目。
接触刚度的物理意义:两个面接触时,程序在界面处加一个「惩罚弹簧」,弹簧刚度就是接触刚度。刚度越大,穿透越小,但方程越病态。
我的经验法则:
- 默认值:大部分软件默认接触刚度是1.0(比例因子),对应接触面法向刚度≈相邻单元刚度。这个值对大多数金属件够用。
- 调大:如果穿透量超过允许值(一般允许穿透=单元尺寸的1%~5%),把刚度调到2~5。
- 调小:如果收敛困难,出现振荡或跳步,把刚度降到0.1~0.5。
- 自适应:Abaqus 的「自动接触刚度」挺好用,它会根据穿透量自动调整。我一般先用自动,不行再手动。
还有一个容易被忽略的点:接触刚度对模态分析的影响。如果你做预应力模态(先加预紧力再算模态),接触刚度会影响模态频率。刚度越大,连接越刚,频率越高。我建议做模态时,接触刚度用默认值,然后做一次灵敏度分析——把刚度翻倍和减半,看频率变化。如果变化超过5%,说明接触刚度对结果敏感,你得小心了。
接触刚度设置检查清单
- 检查穿透量:后处理看接触压力/穿透云图,穿透量应小于单元尺寸的5%。
- 检查收敛历史:如果迭代步数突然增加,或者出现「跳步」,考虑降低刚度。
- 检查接触压力分布:压力应该平滑分布,不应该出现单点奇高。
- 做灵敏度分析:刚度±50%,看关键结果变化是否在可接受范围内。
好了,接触与连接建模这块,核心就是这些。螺栓别画太细,胶粘别忽略柔度,支撑方式选对,接触刚度调好。做到这四点,大部分接触问题都能搞定。