Torque
Torque
JULIA JANSSON
CHARLOTTE RÅDAHL
Julia Jansson
Charlotte Rådahl
Cover: Valve control system consisting of a butterfly valve, gearbox and 2-phase
bipolar hybrid stepper motor.
iv
Torque Estimation Algorithms for Stepper Motor
JULIA JANSSON
CHARLOTTE RÅDAHL
Department of Electrical Engineering
Chalmers University of Technology
Abstract
Preventive health monitoring solutions of valve control systems for offshore applica-
tions are profitable due to possibility to plan maintenance work. Load torque is a
good indicator of system health as it provides information to the user whether the
controlling motor can generate enough torque to move the valve stem or if it is close
to its limits. To do this it is desirable to avoid expensive and large torque sensors,
opening up for the opportunity to investigate the possibility of estimating the torque
on the load based on motor parameters. The motor under investigation is a 2-phase
bipolar hybrid stepper motor with torque components from both the variable reluc-
tance and the permanent magnet in the rotor. Measurements confirm neglecting the
reluctance torque component to be acceptable, simplifying the derived motor torque
expressions. Based on a Simulink model of the system developed from mathemat-
ical expressions regarding motor and load together with measured motor specific
parameters, two motor torque estimation methods were developed and compared.
Simulations of the model were executed to estimate uncertainties in the load
torque algorithm. The load torque estimate was in turn depending on motor torque
algorithm simplifications in order to limit the number of sensors in a implementation
while upholding a approved tolerable accuracy. An estimation of the load torque
was presented based on the motor torque calculations derived from output power
and the assumption of a constant speed. The error of this estimate during a worst
case scenario is smaller than 13% having a total load torque above 2 Nm, a value
continuing to decrease with an increased load torque. In an implementation of this
algorithm, current sensors are the only necessary sensors while remaining parameters
are extracted from the reference values. The current sensors are used in systems
having a closed loop current control, making the suggested load torque estimation
not requiring any added sensors in an implementation.
Keywords: Load Torque Estimation, 2-phase Bipolar Hybrid Stepper Motor, But-
terfly Valve, Motor Torque, Simulink Model.
v
Acknowledgements
First and foremost we want to show our gratitude to Stefan Lundberg, our supervisor
at Chalmers University of Technology, for a tremendous patience when guiding us
through the snowy forest of motors. Without your knowledge and advise we would
not have learned half as much. We would also want to thank Richard Kahl and
Sigma Embedded Engineering for advice, feedback and the opportunity to write
this thesis. Without your support we would have never had this much fun while
learning at the same time. An additional thank to LK Valves for always taking the
time to answering our questions and providing this thesis with pictures of the valve.
We hope our work will be in your favour in order to prevent valve failures.
vii
Contents
1 Introduction 1
1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Aim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
6 Simulink Model 31
6.1 Valve Control System model implementation . . . . . . . . . . . . . . 31
6.1.1 Motor Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6.1.2 Mechanical System Block . . . . . . . . . . . . . . . . . . . . 35
6.1.3 Detent Torque Block . . . . . . . . . . . . . . . . . . . . . . . 36
ix
Contents
7 Simulation Results 39
7.1 Verification Of Model Motor Torque Estimation . . . . . . . . . . . . 39
7.2 Comparison Of Motor Torque Equations . . . . . . . . . . . . . . . . 41
7.2.1 Supply Voltage And Speed Variation . . . . . . . . . . . . . . 41
7.2.2 Resistance Variation . . . . . . . . . . . . . . . . . . . . . . . 45
7.2.3 Rotor Speed And Position Sensor Resolution . . . . . . . . . . 48
7.2.4 Reference Versus Simulated Rotational Speed . . . . . . . . . 51
7.3 Load Torque Assuming Constant Speed . . . . . . . . . . . . . . . . . 52
7.4 Load Torque Estimation During Worst Case Operation . . . . . . . . 54
7.5 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
8 Conclusion 59
Bibliography 61
x
1
Introduction
1.1 Background
The stepper motor is a device generating a stepwise rotational motion, which has
an advantage in applications where a precise position control is of importance [1].
A microcontroller determines the sequence to produce winding currents and conse-
quently a magnetic field in different phases, creating a rotational movement of the
motor shaft by defined steps [2]. A result of the microcontroller is the stepper mo-
tors ability to be well functioning as an open loop system. In a closed loop system
the number of steps achieved by the motor could be counted and made sure to be
exact, an option of accuracy however is not necessary in all applications [3].
Due to its capability of creating sequential steps, the stepper motor has found
application in for example computerised numerical control machines (CNC) and
disk drives [1, 4]. Another load controlled by a stepper motor could be a valve. In
applications requiring a lightweight system the butterfly valve is of interest. The flow
of fluids in a butterfly valve is regulated through a disk opening and closing through
a quarter turn, with a rubber lining ensuring a minimisation of leakages. Every
opening and closing will tear the valve and as the number of openings and closings
depends on the application the valve lifetime is difficult to estimate. One option
to determine the mechanical health of the valve is to measure the torque required
to alter the position of the valve. A system with a preventive health monitoring
method could prevent failures and limit subsequent material and economical damage.
Furthermore, a product informing the user when reparation is required give rise to
a new business model. The supplier can sell the product as a subscription instead
of an one time cost, opening an opportunity to secure the relationship between the
supplier and buyer by signing more extensive contracts. In addition, unnecessary
substitution of valves can be prevented due to the increased knowledge of each
products individual lifetime. Replacements could be planned and performed at a
time most suitable for the company, an interesting solution concerning industries
directed towards offshore applications such as oil rigs and ships due to the limited
maintenance availability.
The torque produced by the motor to close and open the valve can be mea-
sured using a torque sensor. However, adding parts to the system also increase the
number of damageable components. Together with increased cost and space it is
therefore important to limit the number of system components. To minimise these
factors, the torque could instead be estimated from the stepper motor. This is a
favourable method as it would utilise the existing hardware and the estimator could
1
1. Introduction
1.2 Aim
In this master’s thesis a Simulink model of a specific stepper motor and load system
is developed with motor parameters extracted through measurements. Based on
the model at least two algorithms estimating the load torque without using torque
sensors will be constructed. An evaluation of the load torque estimation will be
performed, with respective algorithms compared to each other to establish the most
suitable choice for the given valve control system.
1.3 Limitations
The design of the stepper motor, its controller and the valve will not be altered or
optimised with respect to the scope of this thesis. Neither will considerations regard-
ing different materials going through the valve be taken into account, and thereby
their effects on the system behaviour. This due to that all system components are
not, in the beginning of the project, decided by the company.
The system will be modulated to consider a specific stepper motor. However,
by changing the motor specific parameters the model can be applied to other stepper
motors.
The remote diagnosis application of the system where the load torque esti-
mation algorithms are developed in an embedded application, will not be designed
in this thesis. The conclusions will be based on results provided by a simulation
environment and verification in a real system will not be performed.
2
2
Valve Control System
This master’s thesis regard a valve control system consisting of a butterfly valve
controlled by a stepper motor. A schematic of the valve control system is shown in
Figure 2.1. The figure shows a power supply that feed a DC voltage to a drive circuit
regulated by a control circuit. Depending on the controller signals the windings of
the 2-phase stepper motor are energised in a specific order. The energised phases
A (A+, A−) and B (B+, B−) are seen in Figure 2.1 as a link between the drive
circuit and the 2-phase stepper motor. The current in the windings generate a
magnetic field which produce a torque that rotates the rotor. Through the gearbox
the mechanical torque is transformed to a preferred rotational force. This up scaled
force is used to open or close the valve and in turn control the flow. In the following
sections the components of the valve control system are described more in detail.
Figure 2.1: System components together with significant signals and their direc-
tion.
3
2. Valve Control System
the name implies the stepper motor generates a stepwise rotational movement of the
motor shaft. The motor drive is regulated by a controller designed to transmit logic
signals to create the most suitable stepwise rotation for the given application [6].
Figure 2.2: Construction of the hybrid stepper motor rotor. The opposite polarity
of the permanent magnet rotor can be noted as well as the rotor shaft and the grey
rotor teeth.
The variable reluctance, permanent magnet and a mixture of the two, called
hybrid, are the three most common types of stepper motors. A hybrid stepper
motor practice both the source of flux principle from the variable reluctance mo-
tor together with the principle of the permanent magnet. Applying the principle
from the permanent magnet, the flux components considers both the stator and the
permanent magnets in the rotor [2]. With a current through the stator windings
the stator teeth are polarised. As a result of their polarisation and the permanent
magnets in the rotor, a field between the windings and rotor teeth occur moving
the rotor. Consequently the torque depend on the field strength resulting from the
flux components, and the angle between the fluxes [2]. Observed in Figure 2.3 is the
distribution of the rotor teeth of a hybrid stepper motor. Energising phase B so that
B+ becomes a north pole, and B- a south pole, will attract the rotor teeth and lock
the position shown in Figure 2.3. Based on that position, energising phase A so that
A+ has a north polarity and A- becomes a south pole will create a counterclockwise
rotational force, aligning the closest south tooth with the positive A-phase and the
closest north tooth with the negative A-phase.
A variable reluctance motor instead use the principle of reluctance to generate
torque. Ohm’s law for magnetic circuits is expressed as
mmf = Ψ<, (2.1)
and describes the relation between the magnetic field force mmf, the magnetic flux
Ψ and reluctance < [2]. Reluctance is a magnetic property equivalent to resistance
in electrical circuits, i.e. the magnetic flux will flow through the path with least
magnetic reluctance [7]. The working principle of the contribution from the reluc-
tance motor can be described by neglecting the magnetic poles in Figure 2.3, i.e.
4
2. Valve Control System
Figure 2.3: Phase distribution of the rotor of a hybrid stepper motor. The figure
shows the rotor edge coinside with the shaft.
5
2. Valve Control System
described as
τA = τkA cos(θm ) = kIA cos(N1 θm ),
(2.2)
τB = −τkB sin(θm ) = −kIB sin(N1 θm ),
where IA = IB = constant, k a scaling factor, θm is the mechanical rotor position
at 0° in Figure 2.4, and N1 is a constant depending on the motor design. For the
example in Figure 2.4 N1 is 3, for one mechanical turn the rotor position will be
repeated three times. Each torque component contributes to the total torque as
τtot = τA + τB . (2.3)
H A
B
A+B
( k, k
)
1
Static Torque [Nm]
-1
-30 0 30 60 90
Mechanical Angle [deg]
As torque is a result of the motor winding energisation the sequence and ampli-
tude of the current fed to the windings are essential. The easiest stepping sequence
6
2. Valve Control System
is single stepping where the rotor move in a number of distinct position during one
electrical period [2]. The static torque curves shown in Figure 2.4 describe the torque
components of the motor structure provided in Figure 2.3, whereas the position il-
lustrated in Figure 2.3 refers to the static torque curves at 0 mechanical degrees.
In that position winding B is fed a positive current, indicating phase B+ having
a north polarity. At position 30°, a positive current is instead fed to winding A,
moving the rotor another step counterclockwise. The two remaining movements of
the electrical turn are performed by in turn energising winding B with a negative
current, followed by an applied negative current in winding A at 60° respectively
90°. The described sequence is denoted as B+, A+, B−, A− [10]. For every stepwise
rotation of the rotor, the teeth will oscillate around the new position before settling.
These oscillations can be viewed as a damped oscillating system and every new step
will result in the same damped oscillations [10]. The step length is described by
motor geometry according to
360°
step length = , (2.4)
Nr · Ns
where Nr is the number of rotor teeth and Ns implies the number of phases in the
stator [2]. The two states and six rotor teeth shown in Figure 2.3 result in a step
length of 30°. Increasing the step resolution results in a smoother shaft rotation.
After single stepping half stepping is the next level to an increased step resolution.
Half stepping is introduced by repeating having one phase on and afterwards two
phases on simultaneously [2].
To further increase step resolution the excitation mode microstepping is ap-
plied. As stepper motors with a high number of stator and rotor teeth are compli-
cated to manufacture it is advantageous to divide the rotating steps into subsets.
Such an action is achieved by applying winding currents unequal in amplitude while
energising two phases simultaneously. This technique requires a closer surveillance
as feedback to control varying motor parameters such as temperature [2]. With a
position dependent current expressed as
ˆ
IA = Isin(θe ),
(2.5)
ˆ
IB = Icos(θe ),
ˆ
τtot = kIA sin(θm ) + kIB cos(θm ) = k Icos(θm − θe ), (2.6)
7
2. Valve Control System
90◦
step length = , (2.8)
Nr
an equation true for all 2-phase bipolar hybrid stepper motors. With Nr = 50,
one mechanical turn of a 2-phase stepper motor is the result of 50 teeth alignment
periods. With one teeth alignment period being equal to one electrical period
θe = 360°
50
= 7.2° making one electrical period consisting of 4 steps making one step
length 1.8°. The mechanical angle in relation to the electrical angle is thereby derived
as θe = 50 · θm , indicating that one mechanical turn is translated into 50 electrical
periods. For a hybrid stepper motor the typical step length is 1.8° which provide a
higher angular position resolution compared to a variable reluctance motor [3].
vj = Rij + ej , (2.9)
8
2. Valve Control System
with R being the winding resistance, vj the applied phase voltage, i the system
current and ej the EMF for a specific phase j. The induced voltage depend on the
flux linkage as
dΨj
ej = , (2.10)
dt
consisting of both the winding inductance voltage and the induced back-EMF, ebj ,
seen in Figure 2.5.
ij R L
+ +
ωm θm
vj ej ebj +
−
− −
Figure 2.5: Circuitry of the stator windings, where resistance, inductance, EMF
and back-EMF are present, in addition to the winding applied input voltage and
the resulting winding current.
For a 2-phase stepper motor the total flux linkage in phase A and B are
described as
ΨA = LA (θe , i)iA + ΨM cos(θe ),
(2.11)
ΨB = LB (θe , i)iB + ΨM sin(θe )
where LA and LB are the position and current dependent inductance in winding A
respectively B. The currents iA and iB flows in respective phase while ΨM is the
maximum flux linkage from the permanent magnet through the winding. The angle
of the electrical period is denoted θe . By combining (2.10) and (2.11) the phase A
electrical dynamics are defined as
dΨA
vA = RiA +
dt
d
= RiA + (LA (θe , i)iA + ΨM cos(θe ))
dt
diA dLA (θe , i) d
= RiA + LA (θe , i) + iA + (ΨM cos(θe )) (2.12)
dt dt dt
diA
= RiA + LA (θe , i)
dt !
∂LA (θe , i) ∂θe ∂LA (θe , i) ∂i
+ iA + − ΨM ωe sin(θe ).
∂θe ∂t ∂i ∂t
The electrical dynamics for phase B is determined in the same manner and expressed
as
!
diB ∂LB (θe , i) ∂θe ∂LB (θe , i) ∂i
vB = RiB + LB (θe , i) + iB + + ΨM ωe cos(θe ).
dt ∂θe ∂t ∂i ∂t
(2.13)
9
2. Valve Control System
As a result of the permanent magnet in the hybrid stepper rotor there exists
a magnetic force unaffected of the winding energisation called detent torque τd [11].
Shown in Figure 2.6, τd exists between the stator and rotor adjacent teeth where the
latter attracts the former due to reluctance. With one electrical period being 7.2°
of one mechanical period, as described in Section 2.1.1, together with a step length
of 1.8°, there exist four steps within a period. One electrical period start with rotor
and stator teeth being aligned as shown in Figure 2.6 and ends when the rotor teeth
has moved four quarters.
One electrical turn will therefor result in four positions where the detent torque
is maximal as shown in Figure 2.7. An assumption of a periodical detent torque is
due to the expectation of the teeth being equally separated. The detent torque is
defined as [12]
τd (θe ) = Ad sin(4θe ), (2.14)
with Ad being the amplitude of the position dependent detent torque.
10
2. Valve Control System
1
0.8
0.6
0.2
0 0
-0.2
-0.4 -0.5
-0.6
-0.8
-1
-1
0 1 2 3 4 5 6 7
Electric Angle [deg]
Figure 2.7: Wave form of the normalised detent torque and normalised total phase
voltage over one electrical period.
11
2. Valve Control System
A bipolar two phase control is utilised by turning on and off switches in two H-
bridges controlling the direction of the current flow in the motor windings. Figure 2.9
illustrates the A phase drive configuration where switch S1 and S4 as well as switch
S2 and S3 work in pairs. When S1 and S4 are turned on the voltage and current
through the winding inductance will be positive. With S2 and S3 turned on the
voltage and current flow in the opposite direction. The switch pairs cannot be
turned on at the same time, but by being off simultaneously the output current will
reach zero. This is necessary as the inductance current can not change direction
instantaneously and the stored energy in the inductance is dissipated through the
diodes during off-time. Current is controlled by altering the voltage on the windings
though Pulse Width Modulation, PWM.
12
2. Valve Control System
mode[10]. Due to the direction of the current the windings will be energised in a
specific manner providing a four step rotation of the rotor. The bipolar drive is
suitable for the hybrid stepper motor [5].
13
2. Valve Control System
Figure 2.11: CAD model of the butterfly valve provided by Johan Deger at LK
Valves.
14
3
Load Torque Estimation
Torque is the rotational analogue to force, measured in newton meter and translating
Newtons second law F = ma into
dω
τ = J θ̈ = J , (3.1)
dt
where J is the body inertia equivalent the mass m and θ̈ the angular accelera-
tion equivalent the linear acceleration a. Superposition is utilised to measure a
net torque, hence the total torque of a motor is described as (2.15), relating the
produced electrical torque τe to the detent torque τd (θe ) and the load torque τl .
Rewriting (2.15) results in
dωm
τl = τe − τd (θe ) − J − Bωm , (3.2)
dt
which additionally includes the viscous damping constant B [9]. This constant
denotes for the friction and second order effects due to eddy currents and hysteresis
in the motor [9]. Noticeably, the produced electromagnetic torque is equal to the
sum of the applied load torque and the detent torque when the rotor speed is zero.
With an assumption of a constant rotational speed, i.e. the stepping of the motor
is smooth enough to be seen as uninterrupted reduce (3.2) to
Estimating τl by evaluating the detent torque, loss component Bωm and motor
torque for the specific system enables the possibility to monitoring the valve health
without the usage of a torque sensor. Both B and the detent torque are small
components compared to the motor torque, why the latter is the main focus when
trying to estimate τl .
15
3. Load Torque Estimation
where dWe is the electrical energy applied to the coupling field, dWf the energy
from electrical system reserved in the coupling field and the mechanical energy dWm
moving the rotor [5].
Dividing the electrical input energy dWe in its fundamental components, it
can be expressed as
dWe = (eA iA + eB iB )dt, (3.5)
where eA and eB are the induced EMF from a change in flux concerning each phase
as shown in (2.10) and iA and iB are the respective phase currents [5].
The relation between mechanical energy and torque τe is described as as [5]
Fixing the rotor in a set position making dθm = 0 and causing dWm to be zero,
entails (3.4) and (3.5) to merge in [5]
Using (2.10) in (3.7) and integrating over the rotor angles, the total amount of
energy stored in the coupling field is described as
Z ΨA Z ΨB
Wf = iA dΨA + iB dΨB . (3.8)
0 0
With the rotor rotating a small distance dθe together with an assumption of constant
currents during this period, (3.4), (3.6) and (3.8) form
With dθm approaching zero, (3.9) is reformulated, expressing the motor torque as
where the latter term Wf0 is the coenergy of the system. Coenergy is a concept not
having a physical aspect, however being used to express electromagnetic force [18].
In a motor assumed not to reach saturation the energy, as a function of angular
position and current, is linear in the magnetisation curve [5]. Coenergy resembles
the energy stored in the coupled field and is expressed as
Z iA Z iB
Wf0 = ΨA diA + ΨB diB . (3.11)
0 0
where LA (θe ) respectively LB (θe ) are the inductance of each phase depending on
electrical angle θe [5]. Inserting (3.12) in (3.11) together with θe = Nr · θm , then
16
3. Load Torque Estimation
(3.10) results in
1 ∂LA (Nr θm ) 1 2 ∂LB (Nr θm )
τe = i2A + iB
2 ∂θm 2 ∂θm
| {z }
Reluctance Torque (3.13)
− Nr ΨM iA sin(Nr θm ) + Nr ΨM iA cos(Nr θm ),
| {z }
Permanent Magnet Torque
where the former segment of the equation is the contribution from the reluctance
torque and the latter is the contribution from the permanent magnet.
As shown in (3.13) the contribution from the reluctance torque is depending
on a rotor position dependent inductance. With aligned stator and rotor teeth
the reluctance is low introducing a high flux at a given current, enabling a high
inductance. At a misaligned position, the reluctance at a given current is higher
resulting in a lower inductance. Due to the construction of the stator and rotor
teeth, the inductance is approximately periodic with an average phase inductance
L0 and a rotor position dependent inductance variation L1 [3]. Concerning the 2-
phase stepper motor the A and B position dependent inductance are 180° misaligned
from each other and expressed as
Using (3.14) in (3.13) the torque expression for a 2-phase stepper motor is
derived as
τe = i2A Nr L1,A cos(2Nr θm ) − i2B Nr L1,B cos(2Nr θm )
(3.15)
+Nr ΨM (−iA sin(Nr θm ) + iB cos(Nr θm )) .
Pin,A = vA iA
!
diA ∂LA (θe ) (3.18)
= Ri2A + LA (θe ) iA + ωe i2A − iA ΨM sin(θe ) ,
dt ∂θe
17
3. Load Torque Estimation
Pin,B = vB iB
!
diB ∂LB (θe ) (3.19)
= Ri2B + LB (θe ) iB + ωe i2B + iB ΨM cos(θe ) .
dt ∂θe
18
4
Motor and Measurement Setup
In this section the employed stepper motor is described together with measurement
setups to determine different motor specific parameters.
19
4. Motor and Measurement Setup
Figure 4.1: Simplified circuit description of motor module PD60-4-1160 with spec-
ifications stated in [21] and [20].
tation and enable microstepping [22]. Motor systems from Trinamic are operated
using the combined protocol and programming language Trinamic Motion Control
Language TMCL™. TMCL™ for motor applications is developed using a PC-based
integrated development environment from Trinamic TMCL-IDE, connected to the
motor through USB or field buses CAN, RS232 or RS485 [21]. Commands can be
stored in the application and performed as stand-alone operation or be operated
directly from a host. The TMCL-IDE furthermore offers a possibility to graphically
monitor motor behaviour and parameters in real time. A large range of parameters
can be altered to achieve an optimal application setting. However, in the project
the standard values are considered and no fundamental characteristics have been
changed.
The 2-phase bipolar hybrid stepper motor controls a butterfly valve from LK
Valves with a holding torque of 250 Nm. According to Johan Deger at LK Valves,
a gearbox with gear ratio 84:1 is used in the system to accomplish this torque. The
gear box is supposed to be ideal, why the load torque of the system τl equals the
torque acquired by the valve τv . Furthermore the gearbox should transfer a rotor
speed of 21 rpm – 97 rpm to a valve speed of 0.3 rpm – 1.2 rpm with an actuation
time of 13 – 60s. Due to the torque of the valve increasing with age, the motor
should be able to deliver a torque to move a load requiring 300 Nm, having a safety
margin of 20%.
20
4. Motor and Measurement Setup
Table 4.1: Specifications for Trinamic motor module PD60-4-1160 [19, 20].
Dimension Nema24
#Rotor Teeth 50
Rated Current, irms 2.8 A
Peak Current, imaxpeak 4A
Phase Voltage, vmax 51 V
Phase Voltage, vtyp 12, 24, 48 V
Holding Torque, τH 3.1 Nm
Phase Resistance at 20°, R 1.5W
Phase Inductance (typ.), L 6.8 mH
Rotor Inertia, J 840 g·cm2
ii R L
Multimeter ebi +
−
Figure 4.2: Measurement setup for winding resistance determination. The multi-
meter was connected to the open circuit winding.
21
4. Motor and Measurement Setup
Open circuit measurements result in zero current through the windings, establishing
the induced voltage being equal to the input voltage, arriving in
dΨA
eA = = −ΨM ωm sin(θe ), (4.2)
dt
dΨB
eB = = ΨM ωm cos(θe ). (4.3)
dt
The induced voltage was created by rotating the motor shaft in a known and con-
stant speed. By extracting the voltage curves over time using a digital oscilloscope,
the mechanical speed was derived. Knowing the induced voltage over time the exact
speed of the shaft rotation was established using the assumption of the induced volt-
age being two phase and offset by 90°. Such an estimation creates the opportunity
of constructing the two phases as a complex voltage vector V = VA + jVB . The
absolute of the created complex vector is the length of the vector and the ampli-
tude of the induced voltage. The mean value of the vector during a set number of
times will create a linear model whose slope is the frequency of the system. From
this frequency the correct speed of the rotation was calculated and the value of ΨM
determined.
22
4. Motor and Measurement Setup
Using the length l from the rotor centre to the point where the weight m
was measured the torque on the shaft at a specific angular position is calculated as
τ = m · g · l with g being the gravitational acceleration of 9.81 m/s2 . The sampling
23
4. Motor and Measurement Setup
frequency of the data, i.e. the data points analysed during the experiment, needs
to fulfil the requirement of the specific motor being bipolar and having 2 phases
together with one electrical turn being 7.2°. This translates into that for one electric
period there must be at least two measurement points.
24
5
Extracted Stepper Motor
Parameters
25
5. Extracted Stepper Motor Parameters
30
1.5
20
1
10
0.5
Voltage [V]
[mWb]
0 0
-10 -0.5
Voltage phase A -1
-20
Voltage phase B
|Complex voltage|
Mean complex voltage
-1.5
-30
-4 -3 -2 -1 0 1 2 3 4
Time [ms]
Figure 5.1: Induced voltages and their corresponding flux linkage values.
50
45
Voltage Angle [rad]
40
35
-4 -3 -2 -1 0 1 2 3 4
Time [ms]
Figure 5.2: Model of approximate linear model resulting in a speed of 324.67 rpm.
largest inductance value deviation for both phases. With the individual phase in-
ductance mean value differing by 15 µH, the total mean inductance for both phases
is calculated as 6.4 mH. As the maximum deviation is 0.23 mH and 0.265 mH for
phase A and B respectively, which is approximately 4% of the mean value, the induc-
tance deviates with ±2% from the mean inductance value. Thereby, the inductance
26
5. Extracted Stepper Motor Parameters
6.55
Phase A
Phase B
6.5
6.45
Inductance [mH]
6.4
6.35
6.3
6.25
0 1 2 3 4 5 6 7 8 9
Angle [deg]
Figure 5.3: The figure shows the position dependent inductance for phase A and
phase B.
27
5. Extracted Stepper Motor Parameters
explanation to this result shown in Figure 5.4 could be a static torque component
due to motor construction which needs to be applied to rotate the rotor. Conse-
quently the result shows a combined static and detent torque. Figure 5.5 shows the
detent torque without the static torque offset, resulting in amplitude of the position
dependent detent torque determined to be 0.05 Nm.
0.14
Clockwise
Counterclockwise
0.12
0.1
Detent Torque [Nm]
0.08
0.06
0.04
0.02
0 1 2 3 4 5 6 7 8 9
Mechanical Angle [deg]
Figure 5.4: Position dependent result with static torque from detent torque mea-
surement with rotor direction specified. The stars represent the outlines of one
mechanical step, i.e. 7.2°.
28
5. Extracted Stepper Motor Parameters
0.06
Clockwise
Counterclockwise
0.04
0.02
Detent Torque [Nm]
-0.02
-0.04
-0.06
0 1 2 3 4 5 6 7 8 9
Mechanical Angle [deg]
Figure 5.5: Position dependent without static torque result from detent torque
measurement with rotor direction specified. The stars represent the outlines of one
mechanical step, i.e. 7.2°.
29
5. Extracted Stepper Motor Parameters
30
6
Simulink Model
A model of the motor system was constructed using MATLAB Simulink. This
section will elaborate on the Simulink model constellation of module PD-4-1160
from Trinamic.
dω
J = τe − τl − τd (θe ) − Bωm , (6.1)
dt
which is a rearrangement of the relation presented in (3.2). As shown in Figure 6.1
the Load Torque block is a stand-alone component of the valve control system and
is thus not dependent on the remaining blocks. Mechanical speed and position are
calculated in the Mechanical System block and are required in order to generate τe
in the Motor block as well as the torque contribution from the Detent Torque block.
31
6. Simulink Model
the speed reference omega_e_ref is created using a ramping step function with a
reference frequency. Based on the desired electrical speed the reference frequency is
chosen. The created reference speed omega_e_ref is integrated to access the electri-
cal position theta_e_ref. Euler’s formula is used to compose its exponential complex
function. After multiplication with a reference current amplitude i_amp_ref, the
exponential complex function real and imaginary components are extracted to ex-
press the reference currents i_A_ref and i_B_ref as sine and cosine wave forms.
Signals i_A_ref and i_B_ref are the input variables to respective phase
Driver and Current Controller block illustrated in Figure 6.4. The figure only shows
the build up for the Driver and Current Controller block for phase A as the block
for phase B is identical. Within this block each current reference is compared to its
corresponding real phase winding current. The current difference act as an input to
the relay block in which the input is compared to the value 0.05 and -0.05, represent-
ing the width of the hysteresis band. If the reference current is 0.05 A larger than
the real phase current, indicating that the real phase current should increase, the
relay output is 1. For a reference current 0.05 A smaller than the real phase current,
the relay output is set to 0. As the function of the Driver and Current Controller
block is to create a phase voltage, the output from the relay, either 1 or 0, act as
an input to the switch block. In the switch block the relay output is compared to
the value 0.1. If the relay output is larger than 0.1, i.e. 1, a positive voltage V_pos
will be applied as winding voltage and vice versa, creating a PWM voltage with a
magnitude of either V_pos or V_neg.
The resulting voltage from Figure 6.4 act as an input to the block Electrical
32
6. Simulink Model
Figure 6.2: Motor block calculating the produced motor torque with individual
blocks determining the reference current, motor driver and current controller, the
motor electrical part and the mechanical motor characteristics.
Motor Component. Other input variables to the block Electrical Motor Component
are the mechanical speed omega_m and electrical position theta_e. A deconstruc-
tion of the block is shown in Figure 6.5 where the design of the block is derived
from (2.12) and (2.13). Measurements on the stepper motor conducted the position
dependent inductance to be negligible, reducing (2.12) and (2.13) to
diA
vA = RiA + LA − ΨM ωe sin(θe ),
dt (6.2)
diB
vB = RiB + LB + ΨM ωe cos(θe ).
dt
Noticeable in Figure 6.5 is the usage of omega_m instead of omega_e as stated in
the equation. The reason is that the flux component Psi_m was measured based
33
6. Simulink Model
Figure 6.4: Hysteresis Regulator block, exemplified with phase A, creating a phase
voltage depending on the difference between the reference and real phase current.
Figure 6.5: Electrical Motor block resulting in phase currents i_A and i_B.
Shown in Figure 6.6 is the close-up of the Mechanical Motor Component block
constructing motor torque τe . Due to the negligible position dependent inductance
(3.15) is reduced to
τe = Nr ΨM (−iA sin(Nr θm ) + iB cos(Nr θm )) . (6.4)
By applying the same reasoning as for the Electrical Motor Component equation,
Nr in (6.4) is neglected when constructing the model in Simulink. This because the
34
6. Simulink Model
measured flux component is based on the mechanical speed and not the electrical
speed.
Figure 6.6: Mechanical Motor Component block which calculates the electrical
torque produced by the motor using the real phase current, the electrical position
of the rotor and the maximum flux linkage using (6.4).
In the Mechanical System block seen in Figure 6.1 the angular speed and position of
the rotor is derived as described by (6.1), whereas the block components are shown
in Figure 6.7. By dividing the input variable with the rotor inertia J, the derivative
of the mechanical speed is obtained. An integration block is applied, creating the
mechanical speed. Thereafter the mechanical rotor position is created using an
additional integration block. Multiplying the mechanical speed by the number of
rotor teeth determine the electrical speed and thereby the electrical position can be
obtained using an integration block. Shown in Figure 6.7 is a modification block
and a 2*pi constant, which result in a electrical position value ranging from 0 to
2π. Both the mechanical speed and electrical position are used as input variables in
the Motor block. In addition, the mechanical speed is multiplied with the viscous
damping constant B creating the term Bωm described in (6.1) and seen in Figure 6.1.
35
6. Simulink Model
Figure 6.8: Detent Torque Block creating a sinusoidal torque component with four
maximas during one electrical period.
36
6. Simulink Model
Figure 6.9: Load Torque Block creating the aerodynamic torque component as
a triangular wave whose vertical offset is determined by the contruction torque
component.
37
6. Simulink Model
38
7
Simulation Results
Estimation mehods of the load torque τl in the valve control system are compared
based on the system employed in the Simulink model described in Chapter 6. Deter-
mining motor torque τe is a necessity when estimating τl and in the Simulink model
τe is generated by electrically modelling the motor as described by (3.15). Mo-
tor measurements determined the position dependent inductance to be negligable,
simplifying (3.15) to (6.4) and reproduced as τe1 according to
39
7. Simulation Results
range of 21 rpm – 97 rpm, resulting in the full speed range provided by Trinamic not
being evaluated. Instead the tests were performed in the mechanical speed range of
20 rpm – 200 rpm to demonstrate the curve shape trends.
The verification was executed by varying the mechanical speed and observing
the maximum applied load torque before reaching instability. In order to detect
system instabilities a curve defining the difference between the electrical reference
angle and the real electrical rotor angle was established. As the motor is described as
a microstepping synchronous motor, the applied winding current lead the real rotor
angle and thereby cause a rotation. System instability indicates an angle difference of
90°. Instability was noted when the rotor speed became high and negative, indicating
a loss of rotor and stator synchronism. By successively increasing τl the system was
forced in to instability, enabling observation of at which torque the instability occurs.
Observations were thereafter compared to the torque curve provided by the PD60-4-
1160 datasheet [20], where an increase in torque for low speeds, reaching a top value
of approximately 2.7 Nm at 50 rpm can be noted. The top is followed by a decrease
in torque where the value reach 1.5 Nm at 200 rpm and 0.8 Nm at 400 rpm.
Table 7.1: Parameter settings for simulation verifying the Simulink model motor
torque estimation being equal to the torque curve provided by Trinamic.
Vin 24 V
Iin,rms 2.8 A
R 1.4W
ωm 20 rpm – 200 rpm
τl,app 10 Nm
B 0.0024 Nms/rad
The results from the Simulink simulations are shown in Figure 7.1. It satisfac-
torily indicates the motor to manage a load over 2.5 Nm up to 100 rpm comparable
to the result in the datasheet for module PD60-4-1160 [20]. Comparing the torques
during the period 100 rpm – 200 rpm, the simulation results in a different maximum
torque than defined by Trinamic. However, due to the low resolution in the figure in
the datasheet for module PD60-4-1160 [20], the supposed torque at a given speed is
difficult to extract and the result rather demonstrates a satisfying trend verification.
40
7. Simulation Results
2.8
2.6
2.4
Max Load Torque [Nm]
2.2
1.8
1.6
1.4
1.2
1
20 40 60 80 100 120 140 160 180 200
Mechanical Speed [rpm]
Figure 7.1: Results from Simulink simulations with different rotational speeds and
their corresponding maximum allowed torque values.
41
7. Simulation Results
Table 7.2: Parameter setting for simulation measurement comparing motor torque
algorithms for two separate supply voltages and speed variations.
Vin 24 V & 48 V
Iin,rms 2.8 A
R 1.4 W
ωm 20 rpm – 200 rpm
τl,app 1 Nm
B 0.0024 Nms/rad
1.08
1
e
1.07 2
e
l,app
+B m
1.06
1.05
Estimated Torque [Nm]
1.04
1.03
1.02
1.01
0.99
20 40 60 80 100 120 140 160 180 200
Mechanical Speed [rpm]
Figure 7.2: Comparison of τe1 , τe2 and the total load torque with a supply voltage
of 24 V during different operational speeds.
42
7. Simulation Results
105
1
e
/ l,app +B m
2
104 e
/ l,app +B m
103
Estimated Torque Difference [%]
102
101
100
99
98
97
20 40 60 80 100 120 140 160 180 200
Mechanical Speed [rpm]
Figure 7.3: Relation in percentage between calculations of τe1 and τe2 with a supply
voltage of 24 V during different operational speeds.
Shown in Figure 7.2 and Figure 7.4 are the increase in generated motor torque
for respective supply voltage when increasing the mechanical speed. This is expected
due to the speed dependent term comprised as Bω. The curve representing the total
load torque is linearly increasing in both cases, whereas there is a slight variation in
τe1 and τe2 increment. As seen in Figure 7.2 and Figure 7.4, spikes occur in the same
applied speeds for both estimates, which are 125 rpm for 24 V input voltage and
100 rpm at 48 V voltage operation. These values are a result of system resonance,
a problem occurring in the real motor during certain speeds due to characteristics
of motor system and the load [2, 3]. The following simulations requiring a constant
speed will avoid these resonances. By considering the operational range provided
by LK Valves, a mechanical speed of 90 rpm is chosen for these simulations.
Further, the difference between the total load torque and the estimates are
depicted in Figure 7.3 and Figure 7.5. By comparing the figures concludes that
the differences are low. Including the spikes the maximum deviations are during
24 V 4.2% and 2.8% for τe1 respective τe2 and 0.9% and 2.8% for τe1 respective τe2
during 48 V. Neglecting the spikes, the maximum deviation shown in Figure 7.3
are 0.9% respective 1.7% for τe1 and τe2 . For operation with 48 V supply voltage
the maximum difference in percentage is 0.9% for τe1 and 1.1% for τe2 . Ideally
τe1 and τl,app + Bωm would be equal but due to the low motor inertia the curves
deviates from this assumption. Applying a low inertia result in the mechanical
speed oscillating in steady state, making the average detent torque not zero, causing
a torque difference between the estimated τe1 and the correct torque τl,app + Bωm .
43
7. Simulation Results
1.08
1
e
1.07 2
e
l,app
+B m
1.06
1.05
Estimated Torque [Nm]
1.04
1.03
1.02
1.01
0.99
20 40 60 80 100 120 140 160 180 200
Mechanical Speed [rpm]
Figure 7.4: Comparison of τe1 , τe2 and the total load torque with a supply voltage
of 48 V during different operational speeds.
Even so, the maximum difference is, neglecting the resonance frequencies, under 1%
and thereby the assumption of equality is acceptable.
Conclusions can be drawn that an increase in supply voltage will lower the
difference in percentage between the generated motor torque and the estimates,
making the estimates more accurate. This is however not unexpected as the system
is controlled using PWM and a higher voltage level would result in a better current
control and thereby a more adjustable system.
44
7. Simulation Results
105
1
e
/ l,app +B m
2
104 e
/ l,app +B m
103
Estimated Torque Difference [%]
102
101
100
99
98
97
20 40 60 80 100 120 140 160 180 200
Mechanical Speed [rpm]
Table 7.3: Parameter setting for simulation measurement comparing motor torque
algorithms for resistance variation.
Vin 48 V
Iin,rms 2.8 A
R 1W–2W
ωm 90 rpm
τl,app 1 Nm
B 0.0024 Nms/rad
45
7. Simulation Results
1.028
1
e
2
e
1.026 +B m
l,app
1.024
Motor Torque [Nm]
1.022
1.02
1.018
1.016
1.014
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2
Resistance [ ]
Figure 7.6: Comparison of τe1 and τe2 as a function of a varying resistance with a
mechanical speed of 90 rpm.
Shown in Figure 7.6 the estimate τe2 is more affected by the Simulink model
parameter variation than τe2 , an expected result. However, even if there occur a
spike at a resistance of 1.7 W, τe2 has a fairly constant amplitude, making the over
all difference between τl,app + Bω and τe2 constant due to the simulated system
being current controlled. With an increase in winding resistance, the PWM voltage
compensate and gain a higher average value in order to provide the required current.
This behaviour can also be concluded as the maximum deviation in Figure 7.6 is
0.7%, which is small in comparison to the resistance variation. Thereby, a variation
in all resistive components will not contribute to a large variation in the estimates.
During the second test the resistance value affecting the power loss was varied
to compare a calculation of τe2 with a resistance deviating from the value used in
the Simulink model. The Simulink model winding resistance was held constant at
1.4 W while changing the resistance in (7.2) from 1 W to 2 W. Except for R = 1.4W,
the second test had the same parameter settings as described in Table 7.3. The
variation in τe2 is shown in Figure 7.7 together with the total load τl,app + Bω.
In Figure 7.7 a linear decrease in the estimated motor torque is depicted. This
is expected as the average current is assumed to be constant over the two evaluated
periods and that the power loss term in (7.2) is linearly dependent on resistance,
resulting in the curve slope. A similar reason can be applied to τe1 which is directly
dependent on the measured motor value ΨM . This value act as a pure gain in the
system and a parameter variation of that component will have a linear affect of τe1
as well.
46
7. Simulation Results
1.8
2
e
1.6 l,app
+B m
1.4
1.2
Motor Torque [Nm]
0.8
0.6
0.4
0.2
0
0.8 0.9 1 1.1 1.2 1.3 1.4
Resistance [p.u]
Figure 7.7: Resistance variation in the power loss calculation affecting the esti-
mated motor torque calculated by τe2 and compared to the total applied load torque.
The resistance is defined in p.u. based on the measured winding resistance of 1.4 W
47
7. Simulation Results
Table 7.4: Parameter setting for simulation measurement comparing motor torque
algorithms with position and speed noise.
Vin 48 V
Iin,rms 2.8 A
R 1.4 W
ωm 90 rpm
τl,app 1 Nm
B 0.0024 Nms/rad
In order to obtain the desired information the noise level was implemented in
the Simulink model. Simulink block Uniform Random Number was applied in the
model to return a random number within a defined range. As the noise only should
impact the output and not affect the mechanical behaviour of the motor, the Uniform
Random Number block was added to the output signal before extraction. Because
τe1 is position dependent and estimate τe2 speed dependent, disturbances were at-
tached to respective components. Noise levels ranging ±0.5 · 10−4 to ±0.5 · 103 were
applied to the system and the resulting torque estimates were evaluated using the
disturbed sensor signals. The different torque estimates with noise implemented
were compared to corresponding ideal conditions with no implemented disturbance.
Figure 7.8 show the results obtained from noise simulations with a mechanical speed
of 90 rpm. The figure show the estimated torque deviation in percentage compared
the individual torque values when no noise was applied to the system. According to
Figure 7.8, a noise with a value higher than ±0.5 · 10−2 will affect the τe1 estimation.
A noise level of ±0.5 · 101 can be applied to the system before τe2 deviates. How-
ever, both algorithms have to be evaluated individually as the signals with applied
disturbance has different nominal values.
A summary of the noise dependencies is shown in Table 7.5, where the me-
chanical speed, its corresponding electrical speed, the maximum allowed noise level
before deviation and the required mechanical resolution are presented. Position de-
pendent estimator τe1 has a maximum noise level determined to ±0.5 · 10−2 . As the
electrical position varies between 0 and 2π rad, a noise of ±0.5 · 10−2 is calculated
48
7. Simulation Results
150
1
e
2
e
100
Motor Torque W Noise / Ideal Motor Torque [%]
50
-50
-100
-150
-4 -3 -2 -1 0 1 2 3
Noise ±0.5*10 x
Figure 7.8: Relation in percentage between τe1 and τe2 when noise is and is not
applied with a mechanical speed of 90 rpm. The applied noise levels reach ±0.5·10−4
to ±0.5 · 103 .
0.5 · 10−2 1
Mechanical Resolution = ± 360° · . (7.3)
2π 50
1
The term 50 in (7.3) represent the transformation from electrical degrees, considering
the number of rotor teeth. The required mechanical resolution for 90 rpm is 0.006°
as seen in Table 7.5. Angular resolution denotes the allowed difference between the
sampled current and rotor angle in order to obtain a correct motor torque estimate.
If instead exposing the system to a noise level of ±0.5 · 10−1 , i.e. a position
sensor with a resolution of 0.06°, the error increase to 6.64%. Further increasing the
noise to ±0.5 · 100 result in an error of 70% during 90 rpm operation, a larger error
than the 20% error margin defined by LK Valves. Table 7.5 present the resolution
of sensors with results from Figure 7.8. Figure 7.8 also show a maximum allowed
disturbance level of ±0.5 · 102 for τe2 , which translated from electrical rad/s to an
error in mechanical speed of ±477.5 rpm, an interesting result as the reference speed
was 90 rpm.
A further investigation of the speed observed by the simulated sensor result in
the values described in Table 7.6. According to Figure 7.8 and Table 7.6, a differ-
ence in reference and observed mean speed can be 90.39 rpm without disturbing the
motor torque estimation. This means even if a mean sensor speed is twice as high
as the reference during 90 rpm operation, according to Figure 7.8, the difference will
49
7. Simulation Results
only be 1.8%. The unexpected result presented in Table 7.6 is due to the mean value
of approximation of the extracted parameters being used when calculating τe2 , i.e.
by averaging the noise the impact on the calculation will be smaller. If instead using
the extracted values directly in (7.2) and thereafter calculating the mean of the two
extracted periods, another result in required resolution would probably be obtained.
However, the result provided in Table. 7.6 show that an implementation using av-
eraged values of speed will depend less on the speed resolution up to 477.5 rpm or
a noise level of ±0.5 · 102 . Even so, the most correct and probable resolution in
implementation would be ±4.77 rpm, which in noise levels refer to ±0.5 · 100 .
Table 7.5: Result from maximum position and speed sensor noise and correspond-
ing resolution when ωm = 90 rpm.
Table 7.6: The resulting reference speed and mean sensor speed from tests where
noise is applied to the system.
Applied Noise ±0.5 · 100 ±0.5 · 101 ±0.5 · 102 ±0.5 · 103
Reference Speed [rpm] 90 90 90 90
Mean Sensor Speed [rpm] 90.91 99.03 180.39 993.13
Speed Difference [rpm] 0.91 9.03 90.39 903.13
50
7. Simulation Results
1.5
1
Difference [Nmm]
0.5
0
2
e
-0.5
-1
20 40 60 80 100 120 140 160 180 200
Mechanical Speed [rpm]
Figure 7.9: Difference in calculating τe2 using the reference speed or calculating τe2
using the simulated speed when the supply voltage is 24 V. The outlying spike at
100 rpm has a value of 1.5 Nmm.
51
7. Simulation Results
0.05
0
Difference [Nmm]
-0.05
-0.1
2
e
-0.15
-0.2
-0.25
20 40 60 80 100 120 140 160 180 200
Mechanical Speed [rpm]
Figure 7.10: Difference in calculating τe2 using the reference speed or calculating
τe2 using the simulated speed when the supply voltage is 48 V. The outlying spike
at 120 rpm has a value of 19 Nmm.
52
7. Simulation Results
Vin 48 V
Iin,rms 2.8 A
R 1.4 W
ωm 90 rpm
τl,app 0 – 3.3 Nm
B 0.0024 Nms/rad
increased load torque to after 0.6 Nm not exceed a deviation of 0.7%. The error of
τl (τe1 ) is much smaller and overestimate the load torque with a deviation of 0.1% at
1 Nm.
102
l
( 1e ) / l,app
l
( 2e ) / l,app
101
Estimated Load Torque / Applied Load Torque [%]
100
99
98
97
96
95
94
0 0.5 1 1.5 2 2.5 3
Load Torque [Nm]
Figure 7.11: Relation in percentage between estimated and applied load torque
assuming a constant speed of 90 rpm, for the both τl (τe1 ) and τl (τe2 ).
53
7. Simulation Results
Results from the first test are shown in Figure 7.12 presenting the difference in
percentage between the estimated load torques τl (τe1 ) and τl (τe2 ) and the applied load
torque τl,app , where the estimated load torques both are comprised by the estimated
motor torque and the speed dependent torque component Bω. The figure shows a
constant τl (τe1 ), independent on the applied torque but with an overestimation of
approximately 10% which is explained by the +10% error of ΨM . In comparison,
the estimation of τl (τe2 ) is clearly dependent on the applied load. This is explained
by, due to the constant current amplitude and resistance, the loss component in the
54
7. Simulation Results
120
100
80
60
Motor Torque Difference [%]
40
20
l
( 1e ) / l,app
l
( 2e ) / l,app
0
-20
-40
-60
-80
-100
0.5 1 1.5 2 2.5
Applied Load Torque [Nm]
Figure 7.12: Relation in percentage between τl (τe1 ) and τl (τe2 ) varying the load
torque during worst case parameter settings.
estimation being constant and overestimated, making its influence on τl (τe2 ) high,
especially during low torque levels. Estimate τl (τe2 ) become better when increasing
the applied load torque, reaching a difference of 11% compared to the total applied
load torque.
The results from the second test is shown in Figure 7.13. The figure illustrates
the difference in percentage between the estimated load torques and the applied
load torque τl,app during different speed settings. Similar to the result in the first
test, estimation method τl (τe1 ) is more accurate and stable than τl (τe2 ), who show a
large deviation for lower speed settings due to the speed error being more prominent
during lower speeds. Due to it overestimating during the higher speeds τl (τe1 ) would
in an implementation for health monitoring provide a more secure system. Even
though the estimation of τl (τe2 ) approach the applied load torque in both Figure 7.12
and Figure 7.13, the estimate provide a minimum deviation of 11% and 3.2% for the
first respectively the second test. During the second test, and shown in Figure 7.13,
τl (τe1 ) is behaving similarly as in the first test, with a constant overestimation of
approximately 10%.
55
7. Simulation Results
120
100
80
Motor Torque Difference [%]
60
l
( 1e ) / l,app
l
( 2e ) / l,app
40
20
-20
20 40 60 80 100 120 140 160 180 200
Mechanical Speed [rpm]
Figure 7.13: Relation in percentage between τl (τe1 ) and τl (τe2 ) varying the speed
during worst case parameter settings.
7.5 Discussion
Finding a suitable load torque estimator depends both on accuracy and convenience
in implementation. Limiting the implemented components will both reduce the price
together with restraining the number of possible failing component. The possible
options for estimating the load torque, e.g. using motor torque estimator τe1 or
τe2 , are therefor compared regarding specifications of the algorithms and necessary
sensors.
To evaluate the Simulink model results τe1 was compared with a curve in
datasheet [20] regarding motor module PD60-4-1160 from Trinamic. The results
suggest the τe1 estimator to be similar to Trinamic’s own curve. It is however im-
possible to conclude if the Simulink model is being correct in terms of maximum
torque due to the limited information existing around Trinamic’s data extraction.
We do for example not know if the data from Trinamic is extracted from simulations
or measurements on the real motor and if there exist individual changes between
motors. It is moreover difficult to confirm the exact moment of error occurring in
the simulation environment making the extracted torque value slightly higher than
they would in a real case setup. Therefor the shape of the simulated curve and the
curve provided by Trinamic were compared by pattern rather than exact output
torques. Optimally, a comparison between the physical motor and its simulated
version should be executed with furthermore extensive tests. This was however not
possible to obtain due to the physical motor not being able to produce the desired
56
7. Simulation Results
57
7. Simulation Results
τe1 τe2
Current Sensor x x
Voltage sensor
Rotor position sensor x
Rotor speed sensor
ΨM x
Nr x
R x
58
8
Conclusion
By estimating the load torque of a valve controlled by a hybrid stepper motor, the
mechanical health of the system could be determined. A study has been made
to provide and evaluate algorithms for load torque estimation, using only motor
parameters. Two motor torque estimations have been evaluated, together with sim-
plifications of the load torque expression, in order to determine a suitable algorithm
to implement in the valve control system.
Due to the presented results of error deviations and the fewer required sensors
in an implementation compared to the other option as presented in Table 7.9, the
suggested method to estimate the load torque of the valve control system is expressed
as
VA iA + VB iB − (RA i2A + RB i2B )
τl = − Bωm , (8.1)
ωm
which is a combination of the motor torque estimate τe2 and the assumption of
constant mechanical speed while neglecting the detent torque. The detent torque
is negligible due to it being periodical, having an average of zero. Based on the
simulation results the assumption of constant speed resulted in an underestimation
for τe2 of 5.3% during an applied load of 0.2 Nm. However, for applied load torques
above 0.6 Nm the estimate did not differ more than 0.7%. During all load torque
levels applied to the system during the simulation the estimate τe1 had a maximum
deviation of 0.1%, making the assumption of constant speed reasonable for both
cases for applied load torques above 0.6 Nm. Noted in (8.1) the estimate depend on
the Bωm term, in turn depending on the mechanical system and mechanical speed.
For systems with a low B value, the term can be neglected, further reducing (8.1).
However, measurements and determination of B are necessary in order to conclude
the term to be neglected. It is additionally important to implement the estimator
using a high voltage, a well defined resistance and not estimating the load torque
during the closing and opening moment of the valve to provide a well functioning
algorithm.
During the last test the system was put in a worst case scenario, where the
estimates were evaluated during operation with low supply voltage, a 10% overesti-
mation of ΨM and R in calculations, as well as the assumption of having a mechanical
speed sensor with the resolution of 4.77 rpm and a mechanical position sensor with
an accuracy of 0.006°. According to the results, the load torque estimation τl (τe1 )
had a constant overestimation of 10% for variations in both speed and applied load.
This overestimation is due to the implemented error in ΨM , making it important
to accurately measure the component if that estimation is to be used. For τl (τe2 )
the load estimation was not acceptable for both low speed levels and applied load,
59
8. Conclusion
whereas the difference between the real and estimated load torque in percentage for
90 rpm and 1 Nm operation was 24%. However, as the reason for the large underesti-
mation of τl (τe2 ) is due to the direct impact on speed and resistance, the mechanical
speed and accurate measurements of winding resistance important parameters to
extract correctly when implementing the estimate. Due to the knowledge LK Valve
possess regarding the specific system and that the algorithm with this knowledge
can be altered for specific implementations, we assume this worst case scenario to
have a low probability of occurring.
Thereby, this study proves it theoretically possible to estimate the load torque
within reasonable error margins in a valve control system based only on parameters
from a 2-phase bipolar stepper motor. Before an algorithm implementation mea-
surements on the intended motor need to be conducted. Motor parameters such
as winding resistance, winding inductance and maximum flux linkage are motor
dependent and the conclusions drawn in this thesis only being valid for module
PD60-4-1160 from Trinamic. With a torque sensor on the load, the measured and
estimated τl can be compared to determine if the estimation is acceptable outside
the simulated environment. If the results are accurate, the estimation of τl is imple-
mented in hardware to be calculated in a real time system. Questions regarding a
hardware implementation require further investigation in order to obtain an optimal
mechanical health monitoring system.
60
Bibliography
61
Bibliography
62