Milo Guo

教程-知识分享-成长积累

使用Ansys进行简单的焊点剪切应力模拟

由于疫情封校,许多同学的实验都转成了模拟。本文使用Ansys Workbench 2020 R1的Static Structural模块对不同IMC层(假设只有Cu6Sn5)厚度焊点的剪切强度进行模拟,获得应力云图,确定焊点最先断裂处位置。本文假设读者已经对Ansys Workbench 与之Static Structural模块有了基本的了解。

Step 1 确认参数

1. PCB板厚:1.6mm。

2.铜焊盘厚度:35μm。

3. IMC层厚度(SAC305,D=0.4mm):1.5μm、2.9μm、3.9μm。

[1]周敏波,赵星飞,陈明强,柯常波,张新平.电子封装跨尺度凸点结构Sn3.0Ag0.5Cu/Cu微互连焊点界面IMC生长与演化及力学行为的尺寸效应[J].机械工程学报,2022,58(02):259-268.

Step 1 CAD模型绘制

为了便于计算,取焊点附近区域,采用以下参数近似绘制微焊点结构模型:

  1. PCB长宽0.5mm,厚0.1mm。
  2. 铜焊盘直径0.3mm,厚度35μm。
  3. 焊点直径0.4mm,上下截面圆直径0.3mm。
  4. IMC直径0.3mm。
  5. 查询SAC305及Cu6Sn5的物性参数(在此省略)。

由于笔者水平有限,未对焊点连接处边缘进行细节处理。绘制了三种不同IMC厚度的焊点模型用于仿真,下图展示了其中一种焊点模型。

焊点的近似模型

Step 2 有限元模型的建立与仿真

从左侧功能栏选取Gometry与Static Structural模块,根据需要连接。

Ansys Workbench项目流程

值得注意的是,需要在User License Preference设置里选择Use a separate license for each application选项才可以像上图一样连续共享模型数据,否则在模型设置时会报错。(已经设置的可以忽略)

导入模型,使用DesignModeler生成模型数据,A、E和F模块的Geometry都要进行下列操作。

Ansys Workbench可以使用.X_t格式的模型
在DesignModeler中进行Generate操作
生成后会出现模型预览

Generate 完毕后直接右上角X关闭DesignModeler即可,随后对E和F的Geometry重复进行上述操作即可。在Engineering Data(B2)格右键选择Edit进行工程数据选择操作。

添加需要的材料数据

下图可以见到B2、C2和D2同属下图的Engineering Data,因为在Ansys项目流程设置时我们已经共享了相关数据(流程图连线)。

单击Engineering Data Sources进入材料库

左键单击Data Source下方的库(找到需要的)然后在下方窗口中找到对应需要的材料,点击加号后C列会出现一个“书本”的图标,此时证明该材料已被加入项目。特别注意:无需添加所有的材料,后期可以在模型材料分配界面搜索添加(前提是材料库中有)。

添加需要的材料

在本实例中需要自行添加SAC305和Cu6Sn5两种材料的杨氏模量和泊松比,下面介绍添加流程(如果已有则直接使用即可)。

在Engineering Data Source界面单击Engineering Data Source选项卡切换到项目已使用的材料界面。

单击Engineering Data Source选项卡

在上窗口单击Click here to add a new material填写新材料名称,在左侧双击选择需要添加的物性参数,在下窗口填写对应的数据。特别注意,此时添加的材料只能在本项目中使用,打开其它项目后会消失。

单击Click here to add a new material输入新材料名称
双击左列添加各向同性弹性数据
在下窗口中填入物性参数

完成后直接关闭Engineering Data窗口,进入仿真设置环节。下图B、C和D三个Staic Structural模块分别使用了1.5μm、2.9μm和3.9μm三个厚度的IMC模型Geometry,因此需要分别对Model进行仿真设置(设置的参数相图,笔者暂未找到较为便利的数据共享方法,故只能重复操作)。下面以B模块的Model为例进行设置,读者自行重复C与D模块的设置以完成仿真模型的建立。

B、C和D三个Staic Structural模块分别使用了1.5μm、2.9μm和3.9μm三个厚度的IMC模型Geometry,需要分别对Model进行仿真设置

右键单击Model,选择Edit进行模型设置(后续的仿真设置也在此界面进行,无需切换)。

仿真设置

进入界面后首先展开左侧的Geometry目录树,对所有实体模型分配材料,在下窗格的Assignment处选择,设置完成后实体左侧会打钩(或者半勾,暂未发现影响,不清楚原因)。

展开目录树单击实体设置材料
单击下窗格的Assignment右侧窗格小箭头设置材料可以进行材料库与项目材料数据的全局搜索与查找

随后展开Connections目录树下的所有文件夹,确认接触面设置,若发现不合理的接触请删除后手动设置接触。本案例模型较为简单,自动接触设置均正常,故不阐述手动接触设置流,如有需要请自行查找资料。

确认接触设置

随后进行网格划分工作,单击Mesh,在下窗口中设置。在本案例中使用Mechanical网格,其他均为自动。

网格划分设置

设置完成后在Mesh处单击右键选择Generate Mesh划分网格,观察网格划分是否符合预期。

单击Generate Mesh划分网格
划分的网格符合预期

接下来添加仿真要素,设置外部条件:一个固定的底座和一个水平施加的剪切力。首先设置模拟时间20步,每一步为1秒。在Static Structural目录树右键添加Fixed Suppot固定住底座的所有面和焊盘的侧面,同时使用变力Force对钎料球施加剪切力,设置如下:

分析设置
使用Fix Support固定底座所有面
使用Tabular Data对钎料球施加变力

最后一步,添加求解量。在Solution右键添加Total Deformation(总形变)、Equivalent Elastic Strain(等效弹性形变)和Equivalent Stress(等效应力)三个求解量即可。对C和D重复上述步骤完成仿真设置,随后同时打开三个模块对应窗口分别点击Solve求解(在目录树Solution处单击右键即可看到)。

可以多开Mechanical窗口同时运算

Step 4 结果分析

下图对比了IMC层厚度分别为1.5μm、2.9μm、和3.9μm焊点在受到20g剪切力时的应力分布情况。

IMC厚度1.5μm
IMC厚度2.9μm
IMC厚度3.9μm

从上图可以看到应力集中的位置总是出现在IMC层的边缘位置,并且当IMC层厚度为2.9μm时出现了应力最大值181.16MPa。经过仿真发现IMC层厚度与IMC层最大应力并不是正比关系,具体原因有待分析,在此推测可能和本模型与真实焊点的差异性有关。在本次仿真中,最大应力出现在2.9μm厚度的IMC层中。

本文全部由本人原创

参考资料若侵权请联系我删除

本人对全文拥有最终解释权

若有其他疑问请邮件联系