0% found this document useful (0 votes)
387 views

EMLabScript PartA

This document provides instructions for modeling a short-stroke ferromagnetic actuator using finite element analysis software. Students will use FEMM to build a 2D numerical model of the actuator and solve Maxwell's equations. They will then link FEMM to Matlab to analyze results. The document outlines setting up the software environment, introducing finite element modeling concepts, and configuring Matlab and FEMM for the modeling tasks. Students are expected to complete modeling and analysis tasks to understand actuator behavior.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
387 views

EMLabScript PartA

This document provides instructions for modeling a short-stroke ferromagnetic actuator using finite element analysis software. Students will use FEMM to build a 2D numerical model of the actuator and solve Maxwell's equations. They will then link FEMM to Matlab to analyze results. The document outlines setting up the software environment, introducing finite element modeling concepts, and configuring Matlab and FEMM for the modeling tasks. Students are expected to complete modeling and analysis tasks to understand actuator behavior.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Electromagnetic Characterisation of a Short-Stroke

Ferromagnetic Actuator: Part A


Dr. Nick Simpson

Department of Electrical and Electronic Engineering


University of Bristol
Email: [email protected]
Abstract
This laboratory exercise is concerned with the electromagnetic characterisation of a short-stroke ferromagnetic
actuator. Students will work in pairs to study prescribed aspects of the actuator behaviour using analytical and
numerical finite element analysis methods. Findings will be reported by means of an individual technical note
conforming to an IEEE academic paper template. Students are expected to complete the tasks and address the
questions raised in each section of this document in their technical note submission. Part A of the laboratory script
is associated with the first three-hour laboratory session and focuses on familiarising students with the steps necessary
to model the ferromagnetic actuator using Finite Element Method Magnetics (FEMM) and Matlab software. Part
B of the laboratory script is associated with the second laboratory session and introduces the concepts necessary
to analyse the behaviour of the actuator. Analytical modelling and analysis of results will be supported by lecture
material as the unit progresses.

I. I NTRODUCTION
Fig. 1a depicts a 3-d Computer Aided Design (CAD) rendering of a simple ferromagnetic linear actuator composed
of a stator core, an armature (mover or plunger) and two independently connected electrical windings of N turns.
Note that a practically realisable actuator would require a mechanical retaining arrangement to physically constrain
the motion of the armature, maintain the two fixed air-gaps and provide a physical end-stop to limit the variable
air-gap, in this case to 5 mm. In addition a return spring mechanism is necessary to move the armature back to
the 5 mm end-stop when the coils are not energised since the actuator is unidirectional i.e. force is only generated
in one direction.

Winding 1

Armature
Core

Variable
air-gap

Fixed
Winding 2 air-gap
Side view Rear view
(a) 3-d illustration of the actuator. (b) 2-d section view of the actuator.

Fig. 1: Examples of concentrated and distributed e-machine windings with round and rectangular conductors.

The actuator topology is in effect an inductor with two fixed air-gaps and one variable length air-gap. When
the windings are energised, in this case with Direct Current (DC), I , a magnetomotive force, M M F , is set up,

1
M M F = N1 I1 + N2 I2 , giving rise to an associated flux, φ, which is limited by the reluctance, R, of the magnetic
circuit. The interaction of the current, magnetic field and the mechanical system results in attractive force between
the pole faces of the air-gaps. Here the two fixed air-gaps are of equal dimension, as such, balanced attractive forces
are imparted on the armature so no net motion is induced. However, the variable air-gap imparts an unbalanced
force which tends to move the armature toward the stator core, thereby, reducing the reluctance, increasing the
inductance and storing more energy in the magnetic field.
In this laboratory, students will analyse the electromagnetic behaviour of the ferromagnetic actuator using both
analytical and numerical techniques. The theory necessary to understand the operation of the actuator is contained
within Section B of the course notes, [1]. The laboratory script is split into two sections, A and B which take place
over two three-hour laboratory sessions. Part A (this document), focuses on familiarising students with the steps
necessary to model the ferromagnetic actuator using numerical Finite Element Method Magnetics (FEMM), [2],
and Matlab software, which is available for use on your personal computers to enable study beyond the formal
laboratory session. Part B of the laboratory script introduces the concepts necessary to analyse the electromagnetic
behaviour numerically and analytically, and sets out the bulk of the coursework tasks along with the required
technical note format, submission dates and the marking scheme.
II. I NTRODUCTION TO F INITE E LEMENT A NALYSIS
The laws of physics can typically be described by Partial Differential Equations (PDEs) which must be solved
over a geometric domain to yield a quantitative measure of the variable of interest which may be temperature,
magnetic flux, magnetic field intensity, pressure etc. If the geometric domain of interest is simple, for example
rectangular or cylindrical and the PDE to be solved is linear then a number of analytical methods exist to establish
a solution subject to boundary conditions. Examples are the calculation of magnetic flux density, B , in the air-gap
of a Permanent Magnet (PM) electrical machine, necessary to predict back-EMF, v , and torque capability, τ , [3],
[4]. However, if the geometric domain is of a complex shape or the PDE to be solved is non-linear, as is the case
for electromagnetic problems if non-linear material BH curves are to be modelled, then analytical methods are no
longer suitable. Instead, a numerical model of the PDE can be constructed, typically using dicretisation (meshing)
which can be solved using numerical methods to yield an approximation of the real solution of the continuous
PDE. The finite element method (FEM) is used to compute such approximations. A detailed description of FEM
formulaitons is beyond the scope of this unit, however, the interested reader may find [5] and [6] useful.
In the case of the ferromagnetic actuator studied in this laboratory, it is assumed that the applied winding current,
I , is DC (Direct Current), i.e. the current is time-invariant, and that both linear and non-linear core materials must
be modelled. Hence, a magnetostatic model is required in which the magnetic field intensity, H , current density,
J , and the magnetic flux density, B , must obey Maxwell’s Equations (1) and (2), [7], subject to the constitutive
relationship between B and H , representing the BH curve, for each material in the model, (3). If the material
being modelled is non-linear (i.e. it has a non-linear BH curve) then the permeability, µ, is a function of the flux
density, B , (4).

∇×H =J (1)

∇·B =0 (2)

B = µH = µr µ0 H (3)

B
µ (B) = (4)
H (B)

B =∇×A (5)

2
 
1
∇× ∇×A =J (6)
µ (B)
FEMM finds a field which satisfies (1) to (3) using a Magnetic Vector Potential approach where the flux density,
B , is defined in terms of the magnetic vector potential, A as, (5), which naturally satisfies (2) since ∇·(∇ × A) ≡ 0.
Hence, FEMM solves the magentic vector potential formulation, (6), which combines all of the conditions to be
satisfied in to a single equation and once A is found, B and H can be determined by differentiating A. In the general
3-d case, A is a vector with x, y , and z components in the Cartesian space, however, in the 2-d case considered
here, only the z component, out of the page exists. The form of, (6) is an example of an eliptic PDE which arises
in many engineering fields, as such, a large number of tools have been developed to solve them numerically over
arbitrarily shaped domains accounting for non-linear materials and sources, [5], [6].
III. C ONFIGURE FEMM AND M ATLAB
The Matlab and FEMM software can be used in isolation, however, when linked through ActiveX technology
they become a simple yet powerful analysis tool for electromagnetic and thermal problems. Follow the steps below
to set up your software environment:
Note: It is recommended to read each section in its entirety before implementing the instructions to avoid
missing information and having to repeat operations.
1) Create a folder called EMLab in the top level of your Documents folder - this folder will be used to contain
all of your modelling files and results
2) Open Matlab from the program menu - use the latest version available
3) Change the Matlab working directory (at the top of the window) to the EMLab folder that you created in
step 1.
4) Link FEMM and Matlab by adding the necessary FEMM files to the Matlab path
- execute addpath(genpath(’C:\femm42’)) in the Matlab command prompt, note the use of single
quotes
5) Confirm a successful link by executing openfemm() in the Matlab command prompt - a FEMM window
should appear - if not, seek help from a laboratory demonstrator
6) Go to the course page in Blackboard (https://www.ole.bris.ac.uk/), navigate to Electromagnetics Lab,
Fig. 2, and download the EMLabfiles.zip to your EMLab folder
7) Extract the contents of EMLabfiles.zip to the root (top level) of your EMLab folder
Note that steps 2-5 must be repeated each time Matlab is restarted to establish the necessary software
link and set up the current working directory.

3
Fig. 2: Laboratory support files available on Blackboard, https://www.ole.bris.ac.uk/.

IV. C ONSTRUCTING THE ACTUATOR MODEL IN FEMM


FEMM uses a Boundary Representation (B-rep or BREP) solid modelling approach in two dimensions, in which
points (nodes) are created in the x-y plane and connected using line or arc segments to form closed regions which can
be assigned material and physical properties. Hence, it is necessary to draw the cross-section geometry, Fig. 1b of the
actuator, Fig. 1a, in FEMM. Although FEMM can be fully controlled through the Graphical User Interface (GUI), it
is often more convenient and time-efficient to use the ActiveX programming interface via Matlab to automate model
construction and analysis using scripts, see FEMM_programming_manual.pdf and Matlab_primer.pdf
in your EMLab folder for a full list of Matlab commands and help with creating Matlab scripts and functions.
Coursework Task 1: Create a new Matlab .m script file named construct_actuator.m in your EM-
Lab directory to add the necessary commands to line by line. The script can be executed by calling con-
struct_actuator from the Matlab command prompt. Note that the script stores variables in the workspace
and will overwrite without warning. Adding a ; after a Matlab command will suppress the output in the command
window. This script file will be uploaded alongside your technical note, ensure that appropriate formatting and
comments are used.
A. Prepare the Model File
The EMLabfiles.zip included a FEMM template file (femm_template.FEM) which contains a library
of materials including Copper, Electrical Steel (linear and non-linear versions) and Air, along with predefined
circuits, Winding_1 and Winding_2. To start building your model open the FEMM software, openfemm(),
load the template file, opendocument(’femm_template.FEM’) and save as your actuator model using the,
mi_saveas(’actuator.fem’) command. Note that the mi_ function name prefix relates to magnetics
input while the mo_ prefix relates to magnetics output.
B. Add the Nodes
Note: A 3-d CAD model of the actuator is provided in EMLabFiles.zip in .iam and .stp format which
can be opened using Autodesk Inventor or similar. This model can be used to confirm dimensions.
The nodes representing the core, armature and the windings of the actuator are given in Tables I to VI and
are conveniently available in Matlab .mat format in your EMLab directory as corep.mat, moverp.mat,
coil1p.mat, coil2p.mat, coil3p.mat and coil4p.mat respectively. Nodes can be added using the
command mi_addnode(x,y) where x and y are the X-position and Y-position, either individually by specifying a
single value for x and y or in bulk by loading the nodes from the .mat files, for example, load(’corep.mat’),

4
mi_addnode(corep(:,1),corep(:,2)). It is not recommended to add the nodes manually, however, this
could be achieved by selecting the Operate on Nodes button, Fig. 3, pressing tab, entering the X- and Y-
coordinates, and then pressing OK.
Grouping entities such as nodes, line segments, arc segments and material labels into objects, for example the
core, using assigned group numbers allows object entities to be selected simultaneously which eases manipulation of
the actuator model later in the analysis. Group numbers can be assigned to the nodes using the GUI, see section 2.3
of the FEMM_manual.pdf, or programmatically using mi_selectnode(x,y) to select the node, setting the
node properties, mi_setnodeprop(’<None>’,1), and then clearing the selection, mi_clearselected().
This sequence of commands must be repeated for each node, hence implementing a for loop within a sub-function
is recommended.

Operate on Nodes Operate on Segments


Run analysis

Operate on Run mesh


Block Labels View results
generator

Fig. 3: Illustration of the main FEMM toolbar.

Node Number X-position [mm] Y-position [mm] Group Number


1 70.0 20.5 1
2 90.0 20.5 1
3 90.0 57.5 1
4 0.0 57.5 1
5 0.0 -57.5 1
6 90.0 -57.5 1
7 90.0 -20.5 1
8 70.0 -20.5 1
9 70.0 -37.5 1
10 20.0 -37.5 1
11 20.0 37.5 1
12 70.0 37.5 1

TABLE I: Nodes representing the Core

Node Number X-position [mm] Y-position [mm] Group Number


1 25.1 -20.0 2
2 115.1 -20.0 2
3 115.1 20.0 2
4 25.1 20.0 2

TABLE II: Nodes representing the Armature

5
Node Number X-position [mm] Y-position [mm] Group Number
1 20.5 -71.2 3
2 69.5 -71.2 3
3 69.5 -58.0 3
4 20.5 -58.0 3

TABLE III: Nodes representing the top half of Winding_1

Node Number X-position [mm] Y-position [mm] Group Number


1 20.5 -23.8 4
2 69.5 -23.8 4
3 69.5 -37.0 4
4 20.5 -37.0 4

TABLE IV: Nodes representing the bottom half of Winding_1

Node Number X-position [mm] Y-position [mm] Group Number


1 20.5 23.8 5
2 69.5 23.8 5
3 69.5 37.0 5
4 20.5 37.0 5

TABLE V: Nodes representing the top half of Winding_2

Node Number X-position [mm] Y-position [mm] Group Number


1 20.5 71.2 6
2 69.5 71.2 6
3 69.5 58.0 6
4 20.5 58.0 6

TABLE VI: Nodes representing the bottom half of Winding_2

C. Add the Line Segments


The actuator geometry under consideration is rectilinear and as such is composed of line segments only. Line
segments must be added between appropriate nodes to form closed regions representing the core, armature and
windings. The line segments may be added and assigned appropriate group numbers programmatically using
the mi_addsegment(), mi_selectsegment(), mi_setsegmentprop() and mi_clearselected()
commands within a sub-function which cycles through the nodes loaded from the .mat files. Since there are
relatively few line segments to add, the GUI may be used, however, Matlab is recommended. For the GUI method,
select the Operate on segments button in the GUI (line segment symbol), Fig. 3, select the starting node
followed by the ending node to create a line segment. Right-click on the newly created line segment, press
space-bar and enter the appropriate group number to match that of the nodes, then press OK. Repeat this process
until you form the actuator cross-section geometry as illustrated in Fig. 1b and Fig. 4.

6
Fig. 4: 2-d actuator geometry implemented in FEMM.

D. Create an Emulated Open Boundary


Given computer memory limitations, the finite element model must be limited to a discrete number of unknowns,
as such, the domain which is to be modelled must be geometrically bounded, yet represent the infinite space in
which the actuator is modelled. This is achieved using a series of circular shells which emulate the impedance of
an unbounded domain creating an Improvised Asymptotic Boundary Condition, [8]. FEMM conveniently provides
an automated mechanism to create such a boundary, mi_makeABC(n,R,x,y,bc) where n is the number of
desired shells, R is the radius of the solution domain, (x,y) is the centre point of the solution domain and bc
is the boundary definition, either Neumann or Dirichlet, [9]. However, by executing the mi_makeABC() without
specifying parameters, FEMM will choose appropriate parameters given the existing geometry and construct a
boundary for you, Fig. 5.

Fig. 5: 2-d actuator geometry implemented in FEMM with an Improvised Asymptotic Boundary Condition.

E. Assign Material and Circuit Properties


Material properties must be added to each of the core, armature, winding and air regions of the solution domain.
This can be achieved using the GUI by selecting the Operate on block labels button (two concentric circles

7
symbol), Fig. 3, and clicking at an appropriate location within a region. Right-click the block label, press
space-bar and select the appropriate block type, enter the group number, then press OK. The core and armature
will initially be set to core_linear while the winding regions will be set to copper. The remaining region
bounded by the Improvised Asymptotic Boundary Condition must be assigned as air. Material or block labels
may be added using the mi_addblocklabel(x,y) which must then be selected, mi_selectlabel(x,y),
modified, mi_setblockprop(’blockname’, automesh, meshsize, ’incircuit’, magdirec-
tion, group, turns), and deselected, mi_clearselected().
The actuator features two windings, winding_1 and winding_2 of N = 100 turns which are represented by four
discrete regions in the 2-d geometry. The windings are separately excited by 10A current sources. The upper and
lower region of each winding is assumed to be connected in series, due to the 2-d nature of the model, the end-
winding cannot be represented. Assign the predefined circuits to the appropriate copper regions, right-click
on the block label, press space-bar, choose the circuit and enter the number of turns, N = 100. The number of
turns should be negative in the upper winding regions and positive in the lower winding regions to indicate windings
out of and in to the page respectively. Circuit assignment can and is recommended to be achieved programmatically
using the mi_setblockprop() command as above.
F. Check the Problem Definition and Excitation
The FEMM template file should have an appropriate problem definition, nonetheless, it is important to check this
definition by clicking Problem in order to avoid misinterpretation of the results later in the analysis. The problem
definition should match Fig. 6 and can be updated using the GUI or using the mi_probdef() command, see
FEMM_programming_manual.pdf.

Fig. 6: Example FEMM problem definition.

G. Mesh the Model


As discussed in Section II, the actuator geometry and surrounding region must be discretised using an appropriate
method, in this case, Delaunay triangulation. FEMM uses Triangle, [10], to automatically generate a suitable mesh.
Generate the mesh using the mi_createmesh() command or by clicking Run mesh generator from the
FEMM toolbar, Fig. 3. The Mesh will load automatically. If an error message appears, ensure that each region of
the model has been assigned an appropriate block label. Notice the irregular triangle areas which are generated,
the quality i.e. the regularity of triangle shapes and mesh density i.e. the number of triangles in a given region
influence the accuracy of the numerical solution to the magnetic vector potential. Meshing considerations will be
covered in Part B of the laboratory script.

8
H. Analyse the Model
Use the mi_analyse() and mi_loadsolution() commands to analyse the model and load the results
respectively. When calculating the solution, the fkern window will appear briefly, Fig. 7. If the model has been
correctly implemented, you should see a results output similar to that shown in Fig. 8. If your model does not solve
as expected or you encounter an error, seek help from a laboratory demonstrator.

Fig. 7: Fkern calculation window.

Fig. 8: Illustration of the FEM solution of the actuator.

I. Conclusion
In this laboratory exercise you have learned how to interface FEMM and Matlab to programmatically generate
a 2-d magnetostatic model of a ferromagnetic actuator. Before the next laboratory session you should use the
resources available in EMLabFiles.zip to improve your Matlab script. Part B of the laboratory exercise will
cover model meshing considerations, how to programmatically move the armature, apply current and measure
various parameters such as winding loss, inductance and force. These operations will be used to characterise the
behaviour of the actuator numerically which can be compared to your analytical analysis, the methods of which
will be covered in forthcoming lectures. The remaining coursework tasks will be set out along with the required
technical note format, submission dates and the marking scheme.
R EFERENCES
[1] N. Simpson and D. Drury, “Industrial electronics 2: Electro-mechanical energy conversion,” Lecture Notes, 2019.
[2] D. Meeker. (2019) Finite element method magnetics (femm). [Online]. Available: www.femm.info
[3] Z. Xia, Z. Zhu, and D. Howe, “Analytical magnetic field analysis of halbach magnetized permanent-magnet machines,” IEEE
Transactions on Magnetics, vol. 40, no. 4, pp. 1864–1872, 2004.

9
[4] T. Lubin, S. Mezani, and A. Rezzoug, “Exact analytical method for magnetic field computation in the air gap of cylindrical electrical
machines considering slotting effects,” IEEE Transactions on Magnetics, vol. 46, no. 4, pp. 1092–1099, 2010.
[5] X.-Q. Sheng and W. Song, Essentials of computational electromagnetics. John Wiley & Sons, 2011, vol. 757.
[6] P. P. Silvester and R. L. Ferrari, Finite elements for electrical engineers. Cambridge university press, 1996.
[7] D. Fleisch, A student’s guide to Maxwell’s equations. Cambridge University Press, 2008.
[8] K. Sugahara, “Improvised asymptotic boundary conditions for magnetostatic field problems in ellipsoidal and elliptic cylindrical
domains,” IEEE Transactions on Magnetics, vol. 53, no. 6, pp. 1–4, June 2017.
[9] G. James, D. Burley, D. Clements, P. Dyke, and J. Searl, Modern engineering mathematics. Pearson Education, 2007.
[10] J. Shewchuck. A two-dimensional quality mesh generator and delaunay triangulator.triangle,. [Online]. Available: http:
//www.cs.cmu.edu/~quake/triangle.html

10

You might also like