Automated generation of FE models to substitute electronic devices
First of all, the required electronic devices
must be abstracted as substitute FE models
so that they are available in the electronic
device database. Generating substitute FE
models is a semi-automatic process and
consists of manual data retrieval steps and
an automatic construction step (Fig. 3). First,
the electronic device’s geometric information
must be retrieved from the datasheet. Then,
the type of the electronic device is selected in
ANSA and the input mask is completed with
the relevant geometric information. ANSA
then automatically generates the substitute
FE model, which can be used in the ABAQUS
FE solver. The final FE model contains
one B31 element in each pin, a set
of soldering nodes (the endpoints of
the pins that would be connected to
the PCB by a solder joint) and a set
of contact surfaces (eg. SOIC surfaces
that would be connected to the PCB by
a heat paste).
At the moment, the simulation process
supports a limited set of electronic
device types (see Fig. 4), considered
to be the most relevant for power
electronics in the automotive sector:
SMD resistors, power resistors,
MLCCs, electrolytic capacitors, SMD
diodes, SOICs, and transformers.
The algorithm was implemented as an ANSA plug-in (with Python 3.3) [3]
and is not dependent on any external library. The plug-in can, therefore,
be easily installed in ANSA using the integrated BETA Packager Installer.

Fig.3 - Automated generation of FE models to substitute electronic devices: retrieval of an electronic device’s geometric
information (data taken from the 8-Lead SOIC Package: Fairchild FAN7171_F085) (a), data entry in the ANSA plug-in (b),
automatic generation of the substitute FE model (c).
Automated placement of substitute FE models in the overall model
Once the substitute FE models of all occurring types of electronic
devices on the PCB have been built and are available in the electronic
device database, the devices can be placed on the FE model of the PCB.
Before placing the substitute FE models, it is mandatory to have an FE
model of the overall model containing the PCB (either as a shell or solid
mesh) and a set of shell elements or solid facets representing the top and
bottom surfaces of the PCB in ANSA.
A Pick-and-Place file is used to enter the positional information of the
electronic devices, for instance exported from the PCB layout software
Altium Designer. The Pick-and-Place file contains information about the
x and y coordinates of an electronic device in the local coordinate system
of the PCB, the rotation of the device and whether the device should be
placed on the top or bottom surface of the PCB. For each item in the
Pick-and-Place file, the corresponding substitute FE model is merged
into the overall model, rotated and translated to the position in the Pickand-
Place file (see Fig. 5). The B31 elements of all substitute FE models
are collected in an element set. The soldering nodes and contact surfaces
of all substitute FE models are collected in
node and surface sets. Finally, these sets are
connected to the PCB via TIE contacts.
This algorithm was also implemented as an
ANSA plug-in (with Python 3.3) and is not
dependent on any external library. The plug-in
can therefore be easily installed in ANSA using
the BETA Packager Installer.

Fig. 4 - Electronic device types supported in the proposed simulation process: SMD resistors (a), power resistors (b),
MLCCs (c), electrolytic capacitors (d), SMD diodes (e), SOICs (f), BGA-chips (g), and transformers (h).
Automated generation of solder joint submodels
The geometric information used to generate the electronic devices’
substitute FE models can be reused to generate the solder joint submodels.
Thus, in the routine, the user must first select (in the electronic
device database) the substitute FE model for which they want to build
a corresponding solder joint sub-model. The routine then loads the
available geometric information from the previously constructed
substitute FE model. Next, the user specifies additional information about
the corresponding generic or layout-specific pad dimensions on the
PCB, which can either be retrieved manually from the electronic device’s
datasheet or automatically from a PCB layout software such as Altium
Designer. Once the mandatory geometric information has been specified,
the sub-model construction algorithm starts. The different stages of the
construction algorithm are shown in Fig. 6 (right side). In the first stage,
CAD models of the pin and of a cutout zone of the PCB are created. To
this end, the geometric information is applied to a parametric CAD model
of the corresponding solder-joint type in FreeCAD. The parametrized
CAD model is then automatically exported from FreeCAD as a standard
for the exchange of product model data (STEP) file and automatically
loaded into ANSA.
In the next stage, the solder meniscus geometry is automatically
calculated. The calculation starts by generating a simple initial shell
mesh of the solder surface, which is adapted to the geometry of the pin
and the pad. The software Surface Evolver [4] is then used to calculate
the meniscus by considering the solder material’s surface tension at
solder temperature, the gravitation, and the pin and pad dimensions. The
final geometry is automatically loaded as a STEP file into ANSA.
In the last stage, several geometry and mesh processing routines are
applied automatically to the model in ANSA. The stage involves the
projection of the relevant curve on surface (CONS) of the three parts (pin,
solder, PCB), the cutting of the relevant faces at the projected CONS,
the topographic (TOPO) routine, the shell mesh generation, the volume
definitions, the solid mesh generation, and the definition of material
properties, constraints, boundary conditions, and loads. At the end, the
algorithm exports two input decks, one for the ABAQUS FE solver and one
for the NASTRAN FE solver.
Currently, the proposed simulation process supports a limited set
of solder joints considered to represent the most important types of
solder joint types for power electronics in the automotive sector: SMD
capacitors, SMD resistors, gullwing leads, and ball-grid arrays (see Fig.
7).
The algorithm was implemented as an ANSA plug-in (with Python 3.3)
and is not dependent on any external library. However, the algorithm
requires the Surface Evolver and FreeCAD to be installed. Nevertheless,
this plug-in can also easily be installed in ANSA using the integrated
BETA Packager Installer. In plug-in settings, the user must specify the
path of the Surface Evolver and FreeCAD installation directories.