PDF

Thermal Fatigue of a Surface Mount Resistor
Introduction
A surface mount resistor is subjected to thermal cycling. The difference in the thermal expansion between the materials introduces thermal stresses in the structure. The solder, connecting the resistor to the printed circuit board, is seen as the weakest link in the assembly. Because the operating temperature is high when compared to the melting point of the solder, creep deformation occurs. In order to ensure the structural integrity of the component, a fatigue analysis is performed where the life predictions from two different fatigue models are compared.
Model Definition
A resistor is fastened on a printed circuit board (PCB) with SnAgCu solder. The solder is connected to the printed circuit board through two copper pads and to the resistor through a NiCr conductor. In reality there are additional thin films around the resistor but they are disregarded in current analysis. A sketch of the surface mount assembly is shown in Figure 1.
Figure 1: Schematic description of the surface mount resistor.
The resistor is made out of alumina and has dimensions 3.2 mm x 0.55 mm. It is covered on both edges with a 0.025 mm layer of NiCr conductor. The thin layer continues 0.325 mm along the lower and the upper side of the resistor. The printed circuit board is large in comparison with the resistor and is here modeled 0.8 mm thick. It has two copper pads on the top side that are 0.025 mm thick and 1.05 mm wide. The thickness of the solder fillet between the copper pads and the NiCr conductor is 0.05 mm. The remaining shape of the solder joint varies greatly between each examined solder joint and is here modeled with two representative roundings.
Because the out-of-plane dimension is 1.55 mm, which is significant in comparison with the size of the resistor, the model is simulated in 2D, assuming plane strain conditions.
The elastic properties of the materials are summarized in Table 1.
The SnAgCu solder material exhibits creep behavior, which can be modeled by a Garofalo model where creep rate is described with
(1)
where is the creep strain tensor, T is the temperature, σe is the equivalent stress, R is the universal gas constant, and sij is the deviatoric stress tensor.
The thermal load during an operating cycle is prescribed as a temperature which varies between 20 °C and 70 °C. Each temperature change takes 2 minutes and is followed by a 3 minutes dwell. This means that one fatigue cycle requires 10 minutes, see Figure 2.
Figure 2: Temperature load.
Since the solder material is nonlinear, see Equation 1, simulation of several cycles may be required before a stable cycle is obtained.
Two fatigue models are evaluated. The first is a strain-based Coffin-Manson type model with the equivalent creep strain as the damage controlling mechanism, and the second is an energy-based Morrow type model with the dissipated creep energy as the damage controlling mechanism. The material constants for the Coffin-Manson model are εf=0.281 and c=-0.51. The material constants for the Morrow type model are Wf=55.0 J/m3 and m=-0.69.
Results and Discussion
The difference in the elastic and thermal properties introduces thermal stresses in the device. Although they are not very high, the solder experiences significant inelastic strains. In Figure 3 accumulated equivalent creep strain after six cycles is shown.
Figure 3: Creep strains in the solder joint.
The highest strains occur in the thin solder layer just below the resistor. It is mainly the shear strain component which contributes to the equivalent creep strain in that layer. The slightly higher values around the edge are also affected by modeling of a sharp corner. With a fillet instead, the strains will be somewhat lower. Nevertheless, the location of highest strain agrees well with the crack path in real applications.
In order to evaluate fatigue, it is important to obtain a stable load cycle. In applications involving solder joints, either inelastic strain or dissipated energy are typically used to predict fatigue. The change of creep strain during the first six cycles is therefore evaluated at a point just below the resistor, slightly shifted to the right form the sharp corner. The position of this point can be debated. It is however located in the area where the largest strains occur, and is therefore seen as the critical point. In Figure 4, the equivalent creep strain and the shear creep strain components are shown.
Figure 4: Creep strain development in a critical point below the resistor.
The dissipated energy represents a combined contribution of changes in stresses and strains during a cycle and is in Figure 5 shown with a shear hysteresis. The shear component has been chosen since it gives the dominating contribution to the equivalent creep strain in the critical point.
Figure 5: Shear hysteresis evaluated in a critical point just below the resistor.
It is clear from the two last figures that the first cycle is not representative for fatigue analysis, since its response differs significantly from the one experienced in the following cycles. Even after six cycles, the stress-strain loop has not stabilized. The temperature cycling can by extended with additional cycles to evaluate whether the state stabilizes further or not. Under some conditions, it may happen that the hysteresis loop is moving in stress-strain space. In this example additional cycles are not simulated since the difference in the creep strain and the dissipated energy between cycle five and six is small. Assuming that the consecutive cycles follow the trend and deform less as, well as dissipate less energy, the fatigue analysis based on the results of the sixth cycle gives a conservative fatigue prediction.
The fatigue life based on the Coffin-Manson model is shown in Figure 6, and the fatigue life based on the Morrow model is shown in Figure 7.
Figure 6: Fatigue life based on the creep strain.
Figure 7: Fatigue life based on the dissipated energy.
Fatigue based on strain gives lifetime of about 800 cycles, while the energy prediction gives 1400 cycles.
Application Library path: Fatigue_Module/Energy_Based/surface_mount_resistor
Modeling Instructions
From the File menu, choose New.
New
In the New window, click  Model Wizard.
Model Wizard
1
In the Model Wizard window, click  2D.
2
In the Select Physics tree, select Structural Mechanics>Solid Mechanics (solid).
3
Click Add.
4
Click  Study.
5
In the Select Study tree, select General Studies>Time Dependent.
6
Geometry 1
The geometry sequence for the model is available in a file. If you want to create it from scratch yourself, you can follow the instructions in the Appendix — Geometry Modeling Instructions section. Otherwise, insert the geometry sequence as follows:
1
In the Geometry toolbar, click Insert Sequence and choose Insert Sequence.
2
3
In the Geometry toolbar, click  Build All.
4
Click the  Zoom Extents button in the Graphics toolbar.
Global Definitions
Interpolation 1 (int1)
1
In the Home toolbar, click  Functions and choose Global>Interpolation.
2
In the Settings window for Interpolation, locate the Definition section.
3
From the Data source list, choose File.
4
Click  Browse.
5
6
Click  Import.
7
In the Function name text field, type thermLC.
8
Locate the Units section. In the Argument table, enter the following settings:
9
In the Function table, enter the following settings:
Solid Mechanics (solid)
1
In the Model Builder window, under Component 1 (comp1) click Solid Mechanics (solid).
2
In the Settings window for Solid Mechanics, locate the Thickness section.
3
In the d text field, type 1.55 [mm].
4
Locate the Structural Transient Behavior section. From the list, choose Quasistatic.
Linear Elastic Material 1
1
Click the  Show More Options button in the Model Builder toolbar.
2
In the Show More Options dialog box, in the tree, select the check box for the node Physics>Advanced Physics Options.
3
4
In the Model Builder window, under Component 1 (comp1)>Solid Mechanics (solid) click Linear Elastic Material 1.
5
In the Settings window for Linear Elastic Material, click to expand the Energy Dissipation section.
6
Select the Calculate dissipated energy check box.
Thermal Expansion 1
1
In the Physics toolbar, click  Attributes and choose Thermal Expansion.
2
In the Settings window for Thermal Expansion, locate the Model Input section.
3
From the T list, choose User defined. In the associated text field, type thermLC(t).
Linear Elastic Material 1
In the Model Builder window, click Linear Elastic Material 1.
Creep 1
1
In the Physics toolbar, click  Attributes and choose Creep.
2
In the Settings window for Creep, locate the Domain Selection section.
3
From the Selection list, choose Solder.
4
Locate the Model Input section. From the T list, choose User defined. In the associated text field, type thermLC(t).
5
Locate the Creep Model section. From the Material model list, choose Garofalo (hyperbolic sine).
6
Find the Thermal effects subsection. From the g  (T) list, choose Arrhenius.
7
In the Q text field, type 53200.
8
Click the  Zoom Extents button in the Graphics toolbar.
Symmetry 1
1
In the Physics toolbar, click  Boundaries and choose Symmetry.
2
Roller 1
1
In the Physics toolbar, click  Boundaries and choose Roller.
2
Materials
PCB
1
In the Model Builder window, under Component 1 (comp1) right-click Materials and choose Blank Material.
2
In the Settings window for Material, type PCB in the Label text field.
3
Locate the Geometric Entity Selection section. From the Selection list, choose Rectangle 1.
4
Locate the Material Contents section. In the table, enter the following settings:
Copper
1
Right-click Materials and choose Blank Material.
2
In the Settings window for Material, type Copper in the Label text field.
3
Locate the Geometric Entity Selection section. From the Selection list, choose Rectangle 3.
4
Locate the Material Contents section. In the table, enter the following settings:
Solder
1
Right-click Materials and choose Blank Material.
2
In the Settings window for Material, type Solder in the Label text field.
3
Locate the Geometric Entity Selection section. From the Selection list, choose Solder.
4
Locate the Material Contents section. In the table, enter the following settings:
NiCr
1
Right-click Materials and choose Blank Material.
2
In the Settings window for Material, type NiCr in the Label text field.
3
Locate the Geometric Entity Selection section. From the Selection list, choose NiCr.
4
Locate the Material Contents section. In the table, enter the following settings:
Alumina
1
Right-click Materials and choose Blank Material.
2
In the Settings window for Material, type Alumina in the Label text field.
3
Locate the Geometric Entity Selection section. From the Selection list, choose Rectangle 2.
4
Locate the Material Contents section. In the table, enter the following settings:
Mesh 1
1
In the Model Builder window, under Component 1 (comp1) click Mesh 1.
2
In the Settings window for Mesh, locate the Physics-Controlled Mesh section.
3
From the Element size list, choose Finer.
Free Triangular 1
In the Mesh toolbar, click  Free Triangular.
Distribution 1
1
Right-click Free Triangular 1 and choose Distribution.
2
3
In the Settings window for Distribution, locate the Distribution section.
4
In the Number of elements text field, type 30.
5
Click  Build All.
Study 1
Step 1: Time Dependent
Simulate a time history of 6 cycles.
1
In the Model Builder window, under Study 1 click Step 1: Time Dependent.
2
In the Settings window for Time Dependent, locate the Study Settings section.
3
In the Output times text field, type range(0,10,60*60).
4
From the Tolerance list, choose User controlled.
5
In the Relative tolerance text field, type 1e-4.
6
In the Model Builder window, click Study 1.
7
In the Settings window for Study, type Time History in the Label text field.
Solution 1 (sol1)
1
In the Study toolbar, click  Show Default Solver.
Force strict time stepping in order to improve the creep results.
2
In the Model Builder window, expand the Solution 1 (sol1) node, then click Time-Dependent Solver 1.
3
In the Settings window for Time-Dependent Solver, click to expand the Time Stepping section.
4
From the Steps taken by solver list, choose Strict.
5
In the Model Builder window, expand the Time History>Solver Configurations>Solution 1 (sol1)>Time-Dependent Solver 1 node.
6
Right-click Time History and choose Compute.
Results
Surface 1
1
In the Model Builder window, expand the Stress (solid) node, then click Surface 1.
2
In the Settings window for Surface, locate the Expression section.
3
From the Unit list, choose MPa.
Deformation
1
In the Model Builder window, expand the Surface 1 node.
2
Right-click Deformation and choose Enable.
3
In the Settings window for Deformation, locate the Scale section.
4
Select the Scale factor check box.
5
Contour 1
Display creep strain history. The shear component gives the largest contribution to the equivalent creep strain.
Creep Strain
1
In the Model Builder window, expand the Equivalent Creep Strain (solid) node.
2
Right-click Results and choose 1D Plot Group.
3
In the Settings window for 1D Plot Group, type Creep Strain in the Label text field.
Point Graph 1
1
Right-click Creep Strain and choose Point Graph.
2
In the Settings window for Point Graph, locate the Selection section.
3
From the Selection list, choose Point 1.
4
Click Replace Expression in the upper-right corner of the y-Axis Data section. From the menu, choose Component 1 (comp1)>Solid Mechanics>Strain (Gauss points)>solid.eceGp - Equivalent creep strain.
5
Click to expand the Legends section. Select the Show legends check box.
6
From the Legends list, choose Manual.
7
Point Graph 2
1
Right-click Point Graph 1 and choose Duplicate.
2
In the Settings window for Point Graph, click Replace Expression in the upper-right corner of the y-Axis Data section. From the menu, choose Component 1 (comp1)>Solid Mechanics>Strain (Gauss points)>Creep strain tensor, local coordinate system>solid.eclGp12 - Creep strain tensor, local coordinate system, 12 component.
3
Locate the Legends section. In the table, enter the following settings:
Creep Strain
1
In the Model Builder window, click Creep Strain.
2
In the Settings window for 1D Plot Group, locate the Legend section.
3
From the Position list, choose Upper left.
4
In the Creep Strain toolbar, click  Plot.
Display stress-strain hysteresis of the shear behavior.
Shear Hysteresis
1
In the Home toolbar, click  Add Plot Group and choose 1D Plot Group.
2
In the Settings window for 1D Plot Group, type Shear Hysteresis in the Label text field.
Point Graph 1
1
Right-click Shear Hysteresis and choose Point Graph.
2
In the Settings window for Point Graph, locate the Selection section.
3
From the Selection list, choose Point 1.
4
Click Replace Expression in the upper-right corner of the y-Axis Data section. From the menu, choose Component 1 (comp1)>Solid Mechanics>Stress (Gauss points)>Stress tensor, Gauss point evaluation (spatial frame) - N/m²>solid.sGpxy - Stress tensor, Gauss point evaluation, xy component.
5
Locate the y-Axis Data section. From the Unit list, choose MPa.
6
Locate the x-Axis Data section. From the Parameter list, choose Expression.
7
Click Replace Expression in the upper-right corner of the x-Axis Data section. From the menu, choose Component 1 (comp1)>Solid Mechanics>Strain (Gauss points)>Creep strain tensor, local coordinate system>solid.eclGp12 - Creep strain tensor, local coordinate system, 12 component.
8
In the Shear Hysteresis toolbar, click  Plot.
Add Physics
1
In the Home toolbar, click  Add Physics to open the Add Physics window.
2
Go to the Add Physics window.
3
In the tree, select Structural Mechanics>Fatigue (ftg).
4
Find the Physics interfaces in study subsection. In the table, clear the Solve check box for Time History.
5
Click Add to Component 1 in the window toolbar.
Fatigue, Coffin-Manson
In the Settings window for Fatigue, type Fatigue, Coffin-Manson in the Label text field.
Strain-Life 1
1
Right-click Component 1 (comp1)>Fatigue, Coffin-Manson and choose the domain evaluation Strain-Life.
2
In the Settings window for Strain-Life, locate the Domain Selection section.
3
From the Selection list, choose Solder.
4
Locate the Solution Field section. From the Physics interface list, choose Solid Mechanics (solid).
5
Locate the Fatigue Model Selection section. From the Criterion list, choose Coffin-Manson.
6
From the Strain type list, choose Equivalent creep strain.
Add Physics
1
Go to the Add Physics window.
2
In the tree, select Structural Mechanics>Fatigue (ftg).
3
Find the Physics interfaces in study subsection. In the table, clear the Solve check box for Time History.
4
Click Add to Component 1 in the window toolbar.
5
In the Physics toolbar, click  Add Physics to close the Add Physics window.
Fatigue, Morrow
In the Settings window for Fatigue, type Fatigue, Morrow in the Label text field.
Energy-Based 1
1
Right-click Component 1 (comp1)>Fatigue, Morrow and choose the domain evaluation Energy-Based.
2
In the Settings window for Energy-Based, locate the Domain Selection section.
3
From the Selection list, choose Solder.
4
Locate the Solution Field section. From the Physics interface list, choose Solid Mechanics (solid).
5
Locate the Fatigue Model Selection section. From the Energy type list, choose Creep dissipation density.
Materials
Solder (mat3)
1
In the Model Builder window, expand the Component 1 (comp1)>Materials>Solder (mat3) node, then click Solder (mat3).
2
In the Settings window for Material, click to expand the Material Properties section.
3
In the Material properties tree, select Solid Mechanics>Fatigue Behavior>Energy-Based>Morrow.
4
Click  Add to Material.
5
In the Material properties tree, select Solid Mechanics>Fatigue Behavior>Strain-Based>Coffin-Manson.
6
Click  Add to Material.
7
In the Model Builder window, under Component 1 (comp1)>Materials>Solder (mat3) click Morrow (fatigueEnergyMorrow).
8
In the Settings window for Morrow, locate the Output Properties section.
9
10
In the Model Builder window, under Component 1 (comp1)>Materials>Solder (mat3) click Coffin-Manson (fatigueStrainCoffinManson).
11
In the Settings window for Coffin-Manson, locate the Output Properties section.
12
Add Study
1
In the Home toolbar, click  Add Study to open the Add Study window.
2
Go to the Add Study window.
3
Find the Physics interfaces in study subsection. In the table, clear the Solve check box for Solid Mechanics (solid).
4
Find the Studies subsection. In the Select Study tree, select Preset Studies for Selected Physics Interfaces>Fatigue.
5
Click Add Study in the window toolbar.
6
In the Home toolbar, click  Add Study to close the Add Study window.
Fatigue
1
In the Model Builder window, click Study 2.
2
In the Settings window for Study, type Fatigue in the Label text field.
Step 1: Fatigue
1
In the Model Builder window, under Fatigue click Step 1: Fatigue.
2
In the Settings window for Fatigue, locate the Values of Dependent Variables section.
3
Find the Values of variables not solved for subsection. From the Settings list, choose User controlled.
4
From the Method list, choose Solution.
5
From the Study list, choose Time History, Time Dependent.
6
From the Time (s) list, choose From list.
7
From the Time (s) selection list, select time steps from 3000 s to 3600 s.
8
In the Home toolbar, click  Compute.
Two new plot groups are created. They show the cycles to failure for each fatigue model, see Figure 6 and Figure 7.
Results
Cycles to Failure, Coffin-Manson
1
In the Settings window for 2D Plot Group, type Cycles to Failure, Coffin-Manson in the Label text field.
2
In the Model Builder window, expand the Cycles to Failure, Coffin-Manson node.
Marker 1
1
In the Model Builder window, expand the Results>Cycles to Failure, Coffin-Manson>Surface 1 node, then click Marker 1.
2
In the Settings window for Marker, locate the Coloring and Style section.
3
From the Anchor point list, choose Lower right.
Cycles to Failure, Morrow
1
In the Model Builder window, under Results click Cycles to Failure (ftg2).
2
In the Settings window for 2D Plot Group, type Cycles to Failure, Morrow in the Label text field.
3
In the Model Builder window, expand the Cycles to Failure, Morrow node.
Marker 1
1
In the Model Builder window, expand the Results>Cycles to Failure, Morrow>Surface 1 node, then click Marker 1.
2
In the Settings window for Marker, locate the Coloring and Style section.
3
From the Anchor point list, choose Lower right.
Appendix — Geometry Modeling Instructions
Geometry 1
1
In the Model Builder window, under Component 1 (comp1) click Geometry 1.
2
In the Settings window for Geometry, locate the Units section.
3
From the Length unit list, choose mm.
Rectangle 1 (r1)
1
In the Geometry toolbar, click  Rectangle.
2
In the Settings window for Rectangle, locate the Size and Shape section.
3
In the Width text field, type 3.1.
4
In the Height text field, type 0.8.
5
Locate the Selections of Resulting Entities section. Select the Resulting objects selection check box.
Rectangle 2 (r2)
1
In the Geometry toolbar, click  Rectangle.
2
In the Settings window for Rectangle, locate the Size and Shape section.
3
In the Width text field, type 1.6.
4
In the Height text field, type 0.55.
5
Locate the Position section. In the x text field, type 1.5.
6
In the y text field, type 0.9.
7
Locate the Selections of Resulting Entities section. Select the Resulting objects selection check box.
Rectangle 3 (r3)
1
In the Geometry toolbar, click  Rectangle.
2
In the Settings window for Rectangle, locate the Size and Shape section.
3
In the Width text field, type 1.05.
4
In the Height text field, type 0.025.
5
Locate the Position section. In the x text field, type 0.825.
6
In the y text field, type 0.8.
7
Locate the Selections of Resulting Entities section. Select the Resulting objects selection check box.
Rectangle 4 (r4)
1
In the Geometry toolbar, click  Rectangle.
2
In the Settings window for Rectangle, locate the Size and Shape section.
3
In the Width text field, type 0.35.
4
In the Height text field, type 0.6.
5
Locate the Position section. In the x text field, type 1.475.
6
In the y text field, type 0.875.
7
Locate the Selections of Resulting Entities section. Find the Cumulative selection subsection. Click New.
8
In the New Cumulative Selection dialog box, type NiCr in the Name text field.
9
10
In the Geometry toolbar, click  Build All.
Quadratic Bézier 1 (qb1)
1
In the Geometry toolbar, click  More Primitives and choose Quadratic Bézier.
2
In the Settings window for Quadratic Bézier, locate the Control Points section.
3
In row 1, set x to 0.825.
4
In row 1, set y to 0.825.
5
In row 2, set x to 1.35.
6
In row 2, set y to 0.95.
7
In row 3, set x to 1.475.
8
In row 3, set y to 1.475.
9
Click  Build Selected.
Polygon 1 (pol1)
1
In the Geometry toolbar, click  Polygon.
2
In the Settings window for Polygon, locate the Object Type section.
3
From the Type list, choose Open curve.
4
Locate the Coordinates section. In the table, enter the following settings:
5
Click  Build Selected.
Circular Arc 1 (ca1)
1
In the Geometry toolbar, click  More Primitives and choose Circular Arc.
2
In the Settings window for Circular Arc, locate the Center section.
3
In the x text field, type 1.875.
4
In the y text field, type 0.875.
5
Locate the Radius section. In the Radius text field, type 0.05.
6
Locate the Angles section. In the Start angle text field, type 180.
7
In the End angle text field, type 270.
8
Click  Build Selected.
Line Segment 1 (ls1)
1
In the Geometry toolbar, click  More Primitives and choose Line Segment.
2
On the object ca1, select Point 2 only.
3
In the Settings window for Line Segment, locate the Endpoint section.
4
Find the End vertex subsection. Click to select the  Activate Selection toggle button.
5
On the object qb1, select Point 1 only.
6
Click  Build Selected.
Convert to Solid 1 (csol1)
1
In the Geometry toolbar, click  Conversions and choose Convert to Solid.
2
Select the objects ca1, ls1, pol1, and qb1 only.
3
In the Settings window for Convert to Solid, locate the Selections of Resulting Entities section.
4
Find the Cumulative selection subsection. Click New.
5
In the New Cumulative Selection dialog box, type Solder in the Name text field.
6
7
In the Settings window for Convert to Solid, click  Build Selected.
Point 1 (pt1)
1
In the Geometry toolbar, click  Point.
2
In the Settings window for Point, locate the Point section.
3
In the x text field, type 1.48.
4
In the y text field, type 0.87.
5
Locate the Selections of Resulting Entities section. Select the Resulting objects selection check box.
6
Click  Build Selected.
Ignore Edges 1 (ige1)
1
In the Geometry toolbar, click  Virtual Operations and choose Ignore Edges.
2
On the object fin, select Boundary 14 only.
3
In the Geometry toolbar, click  Build All.
Form Union (fin)
Click  Build All.