You are on page 1of 52

Mälardalen University

School of Innovation Design and Engineering


Västerås, Sweden

Thesis for the Degree of Master of Science (120 credits) in


Computer Science with Specialization in Embedded Systems
30.0 credits

Methods for Automatic Hydraulics


Calibration in Construction Equipment

Peter Charbachi
pci13001@student.mdh.se

Filippo Ferrario
ffo16001@student.mdh.se

Examiner: Daniel Sundmark


Mälardalen University, Västerås, Sweden

Supervisors: Alessandro Papadopoulos & Saad Mubeen


Mälardalen University, Västerås, Sweden

Company Supervisor: Lars-Erik Larsson


Volvo Construction Equipment,
Eskilstuna, Sweden

2018-05-16
Mälardalen University Master Thesis

Abstract
In this thesis we investigate the problem of automatic calibration and control of hydraulic compo-
nents in the domain of construction equipment. Methods that are able to remove a costly manual
approach in favour of an automatic one are investigated and evaluated. The thesis aims to inves-
tigate what methods are available in achieving this goal as well as evaluate the performance and
applicability of such methods in the domain of construction equipment.
The literature indicates that a great focus is put on learning a model of the plant at run time
in order to provide accurate control. Common approaches to the problem are the Recursive Least
Square method and PID controllers for non-linear systems, but other methods are also present,
such as the Nodal Link Perceptron Network (NLPN).
The methods chosen to be compared are the existing method of manually calibrating two set
points for start and end current and interpolating between them; the use of a PI controller with a
static line inverse model; a PI controller with a static curve inverse model; a PI controller with an
NLPN adaptive inverse model and lastly, a completely NLPN based control strategy.
The methods were implemented in Matlab Simulink and evaluated in simulations based on
data collected from real wheel loaders in the construction equipment domain, produced by Volvo
CE. The simulations are performed on data from three machines and were evaluated twice for
the adaptive methods in order to evaluate how well the methods improved. The results were then
evaluated in terms of average absolute error, as well as a discussion of the behaviour shown in the
plots.
The evaluations indicates that the most effective method for control is the PI controller using a
static line inverse model. The method produces the smallest average error of both actions evaluated,
lifting and lowering of the boom, while the complete NLPN solution provide the worst results.

1
Mälardalen University Master Thesis

Table of Contents
1 Introduction 5
1.1 Thesis Goals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Background 7
2.1 Wheel Loader Machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Hydraulics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2.1 Spool Valves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.4 Artificial Neural Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.5 Proportional Integral Derivative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.6 Regression Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.6.1 Least Squares Estimation Method . . . . . . . . . . . . . . . . . . . . . . . 14

3 Problem Formulation 15
3.1 Calibration Principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 Existing Method of Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.4 Research Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4 Related Work 19
4.1 Nodal Link Perceptron Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2 Proportional Integral Derivative Control . . . . . . . . . . . . . . . . . . . . . . . . 19
4.3 Recursive Least Square . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.4 Hydraulic Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

5 Methodology 22
5.1 Data Anonymisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6 Nodal Link Perceptron Networks 24


6.1 General Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.2 Simulink Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
6.3 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

7 Simulations and Models 26


7.1 Speed Control Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
7.2 Simulated Plant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
7.3 Existing Interpolation Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
7.4 PI With a Line Inverse Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
7.5 PI with a Curve Inverse Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
7.6 PI with an Adaptive Inverse Model . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
7.7 Neural Network Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

8 Evaluation 31

9 Threats to Validity 41

10 Discussion 42
10.1 PI + Line Inverse Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10.2 PI + Curve Inverse Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10.3 PI + Adaptive Inverse Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10.4 NLPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.5 Final Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

11 Conclusion 45

2
Mälardalen University Master Thesis

12 Future Work 46

References 50

Appendix 51
A Actual Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

3
Mälardalen University Master Thesis

List of Figures
1 Wheel loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Wheel loader top and side view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 Wheel loader sub system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 Lifting and tilting of GET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5 Simplified diagram of the hydraulic system. . . . . . . . . . . . . . . . . . . . . . . 10
6 Intersection of a 5-way spool valve. . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
7 Structure of a general neuron for an artificial neural network. . . . . . . . . . . . . 12
8 Structure of a generic artificial neural network. . . . . . . . . . . . . . . . . . . . . 12
9 PID using error feedback. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
10 Polynomial Regression Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
11 Existing calibration method. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
12 Behaviour of the machine speed with regards to current. . . . . . . . . . . . . . . . 17
13 Research methodology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
14 NLPN Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
15 Simulink representation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
16 Simulation design of the plant. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
17 PID + Static Inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
18 PID + Adaptive Inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
19 Adaptive NLPN Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
20 Evaluation command used to test all solutions. . . . . . . . . . . . . . . . . . . . . 31
21 Evaluation of Existing method on each machine. . . . . . . . . . . . . . . . . . . . 32
22 Evaluation of PI + Line Inverse on each machine. . . . . . . . . . . . . . . . . . . . 33
23 Evaluation of PI + Curve Inverse on each machine. . . . . . . . . . . . . . . . . . . 34
24 Evaluation of PI + Adaptive Inverse first run on each machine. . . . . . . . . . . . 35
25 Evaluation of PI + Adaptive Inverse second run on each machine. . . . . . . . . . 36
26 Evaluation of NLPN method first run on each machine. . . . . . . . . . . . . . . . 37
27 Evaluation of NLPN method second run on each machine. . . . . . . . . . . . . . . 38
28 Lifting results of the evaluated methods compared to the baseline. . . . . . . . . . 39
29 Lowering results of the evaluated methods compared to the baseline. . . . . . . . . 40
30 Lowering results of the evaluated methods compared to the baseline. . . . . . . . . 40

4
Mälardalen University Master Thesis

1 Introduction
The domain of construction equipment contains a large variety of unique machines and vehicles.
All of these machines are tailored to excel at their specific tasks, being excavators for digging,
articulated haulers for transporting materials, compactors to flatten the ground or wheel loaders,
see Figure 1, for moving and loading materials. Every machine has its own purpose and thus a place
in the operators toolbox. Even though the machines are tremendously specialised towards their
specific task, they are still highly customisable, with a range of different attachments to further
tailor them to the current workload. Operating these machines is no easy task [1], an action that
seems as trivial as filling the wheel loader bucket with gravel is actually a rather challenging task
for a novice. It takes professional operators a lot of time and practise to become familiar enough
with the machines to manoeuvre them effectively and smoothly. If the machine becomes unsuitable
for the work task at hand and is required to be changed; or if its behaviour changes during its
lifetime, the operator might be introduced to a machine with an unfamiliar behaviour. In this
case, the operators experience and familiarity loses its relevance, which motivates the need for all
machines to display the same behaviour.

Figure 1: Wheel loader with a bucket attachment.

Hydraulics systems, which are a main part of construction equipment, consist of components
that posses individual characteristics. This individuality does not only manifest by the manufac-
turing of the component, but also by its usage and wear which is known as hysteresis. This in
turn results in a range of different machine behaviour which diverges from the behaviour that the
operator is familiar to. The described phenomenon does not only reduces operator productivity,
but can also negatively impact safety.
The current way to deal with this changing behaviour is done by the use of individual calibra-
tion of the hydraulic system, where the aim is to conform machine behaviour as well as improve
manoeuvrability. Calibration is a manual process and for this reason it represents a costly pro-
cedure for companies. Automatic calibration of the hydraulics is an approach to therefore reduce
cost and also improve machine quality.
This thesis focus on the investigation, development and evaluation of automatic calibration
methods for construction equipment hydraulics. The study is performed in collaboration with
Volvo CE, and is aimed at their wheel loaders machines. The focus will be on the wheel loaders
ground engaging tool (GET), also known as boom arm. However, the results of the study are not
limited to the wheel loaders’ GET, but could potentially be applied to other parts of the machines
hydraulic system such as steering as well as other construction equipment machines.

5
Mälardalen University Master Thesis

1.1 Thesis Goals


This thesis investigates methods used for automatically calibrating and operating the electro-
hydraulic system commonly found in construction equipment. The electro-hydraulic system, com-
pared to a traditional hydraulic system, makes use of electronic signals to control solenoids which in
turn control the hydraulic valve of the system. This design introduces challenges regarding control
of the hydraulic system where the control actuator used to operate the valve can be considered
distanced from the rest of the system. The solenoid valves are controlled with PWM (Pulse Width
Modulation) signals and do not have a perfect translation from signal to the actuation of the valve.
Due to various reasons, such as spring strength and areas with varying friction inside the valve, all
valves do not conform to the same behaviour. This individuality manifests as different strengths
of which the solenoids are required to use in order to achieve the desired flow rate.
In order to achieve sufficient control and manoeuvrability of the system, the current sent to
the solenoids needs to be chosen properly. The electronic control actuator, lever, is limited by its
area of operation, and thus need to encompass all behaviour of the system while also providing
an intuitive response. If the electronic control actuator is operated at 1%, then the output should
reflect this. A starting and stopping current are thus used to bound the control area. A current
too low and the valves will not open; while a current too high would lead to the solenoid fully
opening early and then continuing applying force above and beyond what is needed. While both
approaches are able to encompass the desired behaviour, the levers operation area would be filled
with dead movement and thus ruin the intuitive response that is desired. By bounding the current
to the area that provides any actual behaviour, it is possible to remove any dead movement while
improving the intuitiveness of the control.

1.2 Thesis Outline


Section 2 explains the background necessary to grasp the work. It consists of an explanation of the
system as a whole and its components, the existing method used as well as some understanding
of methods that are used hereinafter. A further explanation of the problem at hand is then
explained in Section 3, where this section also houses the research questions to be answered.
Section 4 provides the reader with some related work present in the area of automatic calibration
and control of hydraulic systems. The methodology of the thesis is then explained in Section 5,
where the processes used as well as the rationale of their acceptance are explained. A deeper
understanding of the specific method studied in this thesis is explained in Section 6 followed by the
explanation of the simulation and the models used in Section 7. An evaluation of the study done
is presented in Section 8 which is followed by Section 9 that describes the threats to validity before
being discussed in Section 10. A conclusion presented in Section 11 will follow the discussion,
where the results are compiled and used to answer the research questions. The thesis will lastly
present the future work in Section 12, where all methods and ideas not fully realised are discussed.

6
Mälardalen University Master Thesis

2 Background
This background section introduces the key elements necessary to better understand the work
presented in this thesis. First, a general knowledge of the machines and how they are operated
is provided. Following this, an explanation on their working hydraulics, spool valves and the
calibration process needed is given. The section is concluded with an introduction of the techniques
used in the thesis.

2.1 Wheel Loader Machines


Wheel loaders are machines that consist of four wheels, a driver cabin and ground engaging tool
(GET), with an operating weight ranging from about 5 metric tonnes to over 50, see Figure 2 for
a side and top view of a typical wheel loader. They exist in various sizes which in turn introduce
them to a broad set of applications. Small to mid-range machines see more work in construction
and material handling while the larger ones are more commonly used in mining areas [2].

Figure 2: Volvo L260H wheel loader design in side and top view.

A typical wheel loader is powered by a diesel engine which is responsible for not only driving
the wheels but also powering the hydraulic pump. Power to the wheels is transferred through a
torque converter and mechanical transmission, similar to the design found in cars and trucks. The
hydraulic pump, which is also powered by the diesel engine, handles task such as steering, braking
and controlling of the GET. Figure 3 shows how the diesel engine is the sole power source and
how the power travels to the tires as well as get transferred to the hydraulic pump. The hydraulic
pump then utilise that power to operate brakes, steering and GET, while both brakes and steering
are also used in the control of the tires.
Compared to a normal car, a wheel loader does not steer by turning the front wheels or even
the front axis. The front and rear axis are fixed, with the rear axis only able to flex a bit vertically
to keep as many wheels on the ground as possible in order to increase stability. Wheel loaders have
hydraulically controlled articulated steering, where the vehicle’s whole front section is connected to
the rear by an articulation joint. The rear axis supporting the engine is connected to the front axis
through this articulation joint and allows for power to be transferred in order to provide power to
all four wheels. The articulated steering allows the front axis of the vehicle to turn independently of
the rear, causing the front and rear tires to follow in each others tracks, see the top view in Figure
2. This is achieved with the use of two single acting hydraulic cylinders mounted on each side of
the articulation joint. To turn the vehicle, one of the hydraulic cylinders is pressurised to push the
vehicles front section around the joint. The single acting design of the hydraulic cylinder permits
only one of the cylinders two actions to be used, where only the extension action is allowed. This
requires the other cylinder to be left unpressurised permitting the oil to flow out of the cylinder in

7
Mälardalen University Master Thesis

Powertrain

Power Source Torque Converter + Machine Traction


Tires
(Diesel Engine) Mechanical Transmission & Speed

Brake
Hydraulic Pump
Hydraulic

Steering
Hydraulic

Implements
Tool Force &
Hydraulic
Speed
Ground Engaging Tool (GET)

Figure 3: Wheel loader sub system, based on the work of Cobo et al. [2].

order to perform the retraction of the piston.


The wheel loader’s hydraulically controlled GET is an iconic part of the machine. It is able
to be modified with a copious amount of different attachments, all aimed for various tasks. These
attachments could vary from buckets specially made to work with gravel or rock, forks following a
standardised pallet size, claws for carrying trees, or brushes for cleaning the road. The wheel loader
GET is the part of the machine responsible for engaging the environment and does this according
to the operator. These GET actions are often operated by the use of four levers that control the
hydraulic actuators. The levers responsible for controlling the GET varies between two designs,
the first is the hydraulic control, where the lever is a mechanical control to operate the hydraulic
valves. This approach requires hydraulic tubing to be connected inside the cabin, making it only
practical as an option for smaller machines. The other approach makes use of electric levers, where
the signal from the lever is transported to actuate a solenoid to open a valve. This approach is
exclusive for the control of larger machines, where laying hydraulic tubing into the cabin is costly
and impractical.

Figure 4: Lifting and lowering of the GET is shown on the left while tilting in and out is shown
on the right.

8
Mälardalen University Master Thesis

The first and second levers are responsible for the lifting and tilting actions of the GET respec-
tively, where the actions can be seen in Figure 4. These commands are essential to the functionality
of the machine, and for many attachments, the only actions applicable. They work by controlling
typically three hydraulic cylinders for larger wheel loaders or possibly two for smaller ones. One or
two hydraulic cylinders are used to perform the lifting action with the remaining hydraulic cylinder
being used for tilting. In order to provide both directions of actions, lifting and lowering, tilting in
and out, the hydraulic cylinders are required to be double acting. This means that they are able to
fill both chambers separated by the piston with hydraulic fluid, thus allowing them to be operated
in both directions. This design is different from the one regarding steering, where the hydraulic
cylinder’s retraction is dependant on the other cylinders extraction. The third and fourth levers
are different, they provide general purpose hydraulic actions which are dictated by the attachment.
Example of such actions can be road cleaning brush attachments which requires hydraulic fluid in
order to spin and operate. Other examples can be special fork attachments which have one height
modifiable fork arm, or bucket attachments that have the additional functionality to tip sideways.
All attachments and their actions are dependant on the GET which in turn makes them dependant
on the hydraulic system operating it.

2.2 Hydraulics
The increased digitalisation which has affected a magnitude of fields, has not advanced without
making an impact on the construction equipment domain [2]. Advances in autonomous machines
has even made its way into the construction equipment domain [3], with Volvo CE even introducing
prototype autonomous machines [4]. Other advances such as electric or hybrid machines has also
been making an appearance in order to reduce noise, fuel consumption and emissions. An example
of this is the EX2 fully electric excavator introduced by Volvo CE as part of their electromobility
product line [5]. This product line consist of vehicles and machines that are able to utilise an
electric motor to perform either the machines propulsion or main function [6].
The hydraulic system has also gotten changes, however more discrete. One such change affects
the control of the hydraulic actuators, which involve the introduction of electronic control by the
use of pulse-width modulation (PWM) signals and solenoids. The process and connections can be
seen in the simplified diagram shown in Figure 5. The operator commands the machine by the
use of the levers located in the cabin. These are then processed by an electronic control module
which converts the actions into PWM signals. The signals are then sent to operate the solenoid
valves inside the pilot valves controlling the hydraulic fluid, which in turn controls the main valve
that then controls the hydraulic cylinder. The solenoid valves operating the hydraulics are of the
proportional design, which allows the operator to gradually specify the size of the orifice of which
the hydraulic fluid exits. This design affects the rate of which the hydraulic fluid travels through
the valve to the hydraulic cylinder which translates into its operating speed. The use of pilot valves
allows for weaker valves and is able to better utilise power already trapped in the system, it does
however allow for more steps in between, which depending on their individual characteristics can
affect the overall behaviour.

2.2.1 Spool Valves


Hydraulic valves are used for controlling operations regarding hydraulics in a system by restricting
the flow of fluid (hydraulic oil) transported into the actuator. There are various kind of valves,
such as spool valves, servo valves and poppet valves, where electronically controlled variations also
exist [7, 8]. The focus in this thesis is on spool valves, which are the main valve used in the system
considered for evaluation. Spool valves consist of a ridged spool housed in a cylinder body with
various ports depending on configuration. Figure 6 shows a 5-way spool valve, where both tank
ports are connected internally, which in turn results in only four external ports. This valve is
similar to the “Main Valve” in Figure 5, whereas the “Pilot Valve” is a 3-way spool valve.
Control of the spool valve can be done with various methods, such as the previously mentioned
electronic and hydraulic control. The control strategy moves the spool inside the cylinder body
to open up or close off different paths in the valve to direct the hydraulic oil inside towards the
intended ports. The proportional versions of the valves also exist, which extend the functionality of

9
Mälardalen University Master Thesis

Hydraulic
Cylinder

Lift
Hydraulic
Cylinder O O O O
Main Valve Main Valve
Tilt T P T T P T

O O O O
Pilot Valve Pilot Valve Pilot Valve Pilot Valve
T P T P T P T P

Electronic
Control PWM
Module
(ECM) Pump 1 Tank Pump 2
Lever
Operator

Figure 5: Simplified diagram of the hydraulic system.

the mentioned valves by allowing an increased precision of the spool’s location inside the housing.
These valves are able to produce finer control of flow rate, which in a wheel loader hydraulic system
would be translated into the actions operating speed.
Due to the design of the spool valve, it is able to perform two actions at once, which intuitively
makes it a good choice for a hydraulic cylinder. It allows pressurised oil to travel to the direction
of choice, while allowing a path for the oil in the other cylinder to escape. Without a way to
release the oil in the other cylinder, vacuum and compressed oil would prevent the system from
performing as intended. Such a two action design, while keeping control of the system simple,
also makes adjustment to the control coarse, causing fine control of the system difficult. Methods
that handle control of the in-take and out-take separately do exist and are able to improve control
precision. This “independent metering” design, does not only increase control difficulty, but also
price, as it imposes the need for separate valves for every port, practically doubling the amount of
valves.

2.3 Calibration
Calibration is the process done in order to conform machine behaviour towards a desired uniform
behaviour. For the electronically controlled hydraulic systems, this process is manually done by
setting lower and upper ranges for the PWM signal of which the lever operates within. This
is achieved by a technician that is required to travel to the machine in person. The process of
calibration then requires the use of specialised equipment in order to analyse various hydraulic
machine actions and set the ranges for the PWM signals. These actions include lifting and tilt-
ing of the GET, which are operated and evaluated until deemed satisfying. The hydraulics can

10
Mälardalen University Master Thesis

A B

P→B P→A
T→A T→B

Tank Pressure

Figure 6: Intersection of a 5-way spool valve.

be considered satisfying when the control is consistent and smooth, i.e. no sudden uncontrolled
movements or jerking actions, and in line with the uniform behaviour. Such a calibration method
does not take into consideration any behaviour occurring whilst within the specified range, but
only aims to encapsulate it. To constantly achieve the desired behaviour of the control, repeatedly
calibrating the hydraulics is a necessary task. This becomes more apparent when major adjust-
ments to machine configuration are made, such as machine repairs. The changes in attachments
can also affect this, which due to the varying weight of the attachments are able to make existing
calibration inadequate. In order to avoid the need of manually calibrating the system to respond
to such changes, an automatic approach is investigated as a way to allow the machine to respond
and adapt itself. The calibration process can be seen as an optimisation problem, where the aim is
to minimise the difference between desired and actual machine behaviour. Optimisation strategies
work by constantly aiming to improve the current solution to a problem by maximising or min-
imising a property. This is done by modifying a set of parameters and evaluating whether the new
configuration provides a solution closer to the optimal result. This process is then repeated until
an acceptable solution is provided. The acceptable solution in these outcomes are often within a
predefined tolerance range of the optimal result. It is not impossible for optimisation problems
to be excessively large and unmanageable, which makes finding a perfect solution impractical. In
these cases a tolerance value is used to make the problem feasible.

2.4 Artificial Neural Network


Artificial Neural Networks (ANNs) are computational units that has been partially inspired by the
observation of biological systems as explained by Mitchell [9]. These biologically inspired learning
systems are built as complex webs of interconnected units also known as neurons or perceptrons
to mimic the biological connections found in the brain. A neuron follows a simple design that
consists of a number of real valued inputs, real valued weights, an activation function and a
single output. The amount of weights are mirrored by the amount of inputs plus the bias. The
weight of each input specifies its importance towards the activation function and in turn towards
the neuron as a whole. A visual description of the structure can be found in Figure 7. While
the design of artificial neural networks is inspired from the biological neural systems, there are
still many biological complexities that are neglected within ANN systems. The architecture used
when designing a typical ANN is built upon three kind of layers: input, hidden and output layer,
as depicted in Figure 8. The input layer acts as the neural networks interface, thus containing
one neuron per specified input to the system. Following the input layer is one or many hidden
layers, where every layer can have an independent and arbitrary number of neurons defined by
the architecture. For every hidden layer, each neuron’s input is connected to all the outputs from

11
Mälardalen University Master Thesis

X0 = 1
X1 W1

W0
X2 W2

X3 W3 ∑ Activation
Function
Output

Xn Wn

Figure 7: Structure of a general neuron for an artificial neural network.

neurons in the previous layer. The network ends with an output layer where the amount of neurons
is chosen depending on the task. For classification problems, the output layer usually contains one
neuron per category, whilst approximation problems often only use one neuron. The data sent to
such a network can be visualised as passing through a pipeline where every step is a network layer.
The training of a neural network is done with a technique called backpropagation. In this phase
the aim is to minimise a target scalar cost function (e.g., the average quadratic error) using a set
of training data samples. This is achieved by computing the gradient of the error with respect to
the network’s weights and using a minimisation technique.
Neural networks have been able to provide robust approaches for approximating real, discrete
and vector target functions. Additionally, ANNs were also deemed the most effective methods
for certain types of problems, such as the ability to interpret complex real world sensor data [9].
Their design makes them well suited for problems involving different kind of sensors, where the
training data is complex, noisy and derived from devices producing information about a specific
environment. After training, the ANN will eventually have constructed a set of weights unique to
its architecture that model a solution to solve the problem. These weights are not always simple
to be interpreted by a human but represents the key for an ANN to achieve its goal.

Output
Layer

Input
Layer

Hidden Hidden
Layer 1 Layer 2

Figure 8: Structure of a generic artificial neural network.

12
Mälardalen University Master Thesis

2.5 Proportional Integral Derivative


Proportional Integral Derivative (PID) control is the most common technique for feedback control
in engineering systems according to Åström and Murray [10]. The name of this method derives
from the combinations of the three components it is composed of. Their purpose is to produce
a correction based on the error, computed as a difference between the desired setpoint and the
measured one.

Ki e(τ)dτ

0

r e u y
∑ Kp e ∑ System

de
Kd
dt

Controller

­1

Figure 9: PID using error feedback.

Figure 9 illustrate the structure of a PID which compute an error value e as difference between
the setpoint r and the measured process variable y. Corrections to this method are applied ac-
cording to the three components, where P represent the proportional part of the error, can be seen
as the “present” error. I is the integral part of it and represents the accumulation of the “past”
error. And finally the last part, D can be considered as the prediction of the “future” error. In
fact, as stated by Araki [11], the PID controller can be understood as a controller that takes the
present the past and the future of the error into consideration. Thus, the control action is the sum
of all the three terms. The system tries to minimise the error e by adjusting over time the control
variable u.
The input/output relation of the constants in a PID controller with error feedback, as the one
illustrated in Figure 9, can be described according to Araki [11] as follow:
Z t
de
u = Kp e + Ki e(τ )dτ + Kd (1)
0 dt

where all the controller parameters are visible: the proportional gain Kp , the integral gain Ki and
the derivative gain Kd .
The PID is the most widely used controller in process control until today, according to Araki [11].
Investigations performed in Japan, showed that 90% of the controllers used by the industries are
PID controllers or modified version of this technique.

13
Mälardalen University Master Thesis

2.6 Regression Analysis


Regression analysis is a statistical technique used to identify a correlation between data in a dataset
and aims to construct a model that represents predictors relationship [12]. The resulting model
can then be used to estimate values in ranges the data set did not cover.
A model from such a regression analysis can be seen in Equation 2, that shows the form of a
model from a simple linear regression analysis. The β are the models unknown parameters that
the regression analysis aims to estimate whilst the variable x is often known as “predictor” or
“regressor” and y goes by the name “response”. The  is added to the model as the difference
between the observed value of y and the estimated result produced by the regression model and is
known as the “error”, which is modelled as a random variable with a given probabilistic distribution.
The error is seen as the red lines in Figure 10 and can also be seen as the distance between the
estimated result and the observed value.
This simple linear regression model plots a line through the data set and does this with one
regressor x, these two facts are what gave it its name simple linear regression model.

y = β0 + β1 x +  (2)

Other models also exist that consist of multiple regressors, known as multiple linear regression
models, or designs that does not produce a line, but a polynomial known as polynomial regression
models. Polynomial regression models aim to estimate a curve through the data set and can do
this with a curve of a predetermined arbitrary order. They are thus able to provide a better
representation for non-linear system, as compared to their linear counterparts. A general rule
for polynomial regression models is the use of as low order as possible for the regression model,
as transformations are preferred before increasing the model complexity. Model estimation for
polynomial regression models outside the range of the data set, known as extrapolation, as well
as inside the data set known as interpolation, can also be very hazardous, where polynomial roots
can appear at unexpected places.
A way to handle such methods is the piecewise regression models, such as the Spline method
or Piecewise Cubic Hermite Interpolating Polynomial. By splitting the variable space at different
locations, known as knots, it is possible to assign each section with their own function. This can be
useful to model real system, such as hydraulic valves. A polynomial will have difficulties capturing
the flat behaviour seen in Figure 12, whilst a piecewise method would be more appropriate.

Figure 10: Polynomial Regression Analysis.

2.6.1 Least Squares Estimation Method


The least squares method is a prediction method capable of function estimation [13]. It is possible
to perform both population based as well as sample based and has therefore seen common use in
literature, see Section 4.3. The latter approach, namely sample based, is also known as recursive
least squares, and operates with the same goal as the regular one but continuously adapts the
model to the ever growing data set.
The least square method attempts to estimate values for the regression models parameters, such
as β0 and β1 , in order find the parameters that produce the “least squares”. The least squares is
the criteria of minimising the sum of residual squares, where the residuals are also known as the
error . For more on Least Squares, we direct the reader to the work by Montgomery et al. [12].

14
Mälardalen University Master Thesis

3 Problem Formulation
In order to describe the problem addressed in this thesis, a first introduction of the working prin-
ciples and the existing method is presented. The problem formulation is described right after the
initial introduction. Concluding this section are the research questions, representing the funda-
mental core of this thesis.

3.1 Calibration Principles


In order to better understand the purpose of this thesis it is necessary to describe the current
calibration procedure. The current calibration method of hydraulic systems in construction equip-
ment is manually conducted, which makes it both a laborious and costly process. The customers
need to request and hire a specialised technician to travel to the machine in order to assess and
calibrate it. This process can take a long time, especially when considering the machine’s location.
Omitting calibration reduces the responsiveness and control of the machine which in turn affects
the safety and productivity of the system. Other than the cost introduced to the customer, the
calibration process is also costly for the company. It demands the need for educated technicians
and specialised hardware. Besides maintenance of the systems, the process also becomes costly
during manufacturing. Before delivering a system, the company needs to make sure that it respects
their quality guidelines. This includes hydraulic manoeuvrability and response, which require the
company to take the role of a customer and hire technicians to perform calibration. Depending on
the number of systems manufactured and the time taken for calibration, this cost could quickly
escalate.
A solution able to online calibrate the system while improving control would help keep the cost
down by reducing travelling and training time for the technician as well as the time they would
take to perform the calibration.
The problem with existing solutions lay in the use of electronic signals for control of the hy-
draulic operations. The electronic signal is acquired from the electrical levers located in the cabin
which basically outputs a percentage of the amount the lever was tilted in a certain direction.
This results in an output space of -100% to 100%, where the sign represent a different action, for
example lifting or lowering. Currently, the lever percentage value is mapped to a current between
two set calibration points. The set points are located in the input space of the solenoid pilot valves,
which is in the form of a PWM signal with a current ranging from 0 to one large enough to cover
the behaviour of all valves as specified by the manufacturer. These two set points are calibrated
or “set” accordingly to encompass the range in the solenoid valves input space where it produces
an actual machine response. The “start current” or 0% set point is set slightly below the current
where the valve is just beginning to open, where the “end current” or 100% set point marks the
current where the valve is fully open. Failing to properly set the start and end points would result
in similar scenarios as depicted in Figure 11(a) and 11(b). If the set points are placed too far
from the range of the actual machine response, it will lead to portions of the lever input space
being translated into a current that produces no actual machine response, see Figure 11(a). These
ranges cause what is known as deadpan, which reduce the manoeuvrability of the machine. It
will appear not only in the form of useless lever movements, but also introduce coarseness to the
control by compressing the active range. If the set points instead are set to trespass the range of
actual machine response, other problems arise, see Figure 11(b). Here the starting value is set so
high that the machine would produce too much current at the beginning of the lever movement,
thus causing jerking actions. By setting the end set point too low there is a limitation imposed on
the machine which restrains the machines potential which cause sluggishness. An ideal calibration
of the set points is shown in Figure 11(c). Here only the range of the actual machine response
is encompassed, removing any deadpan and jerking action while allowing the machine to perform
optimally.

3.2 Existing Method of Calibration


The current method of finding these set points varies depending on the action to be calibrated and
point under calibration, but the method is however still mainly done with the use of manual testing.

15
Mälardalen University Master Thesis

A)
A)
A) No
No Current
Current 0%
0% set
set point
point 100%
100% set
set point
point Max
Max Current
Current
No Current 0%6,7%
set point
13,3% 20,0% 26,7% 33,3% 40,0% 46,7% 53,3% 60,0% 66,7% 73,3% 80,0% 86,7% 100% set100,0%
93,3% point Max Current
6,7% 13,3% 20,0% 26,7% 33,3% 40,0% 46,7% 53,3% 60,0% 66,7% 73,3% 80,0% 86,7% 93,3% 100,0%
Deadpan
6,7% 13,3%
Deadpan 20,0% 26,7% 33,3% Actual 46,7%
40,0% machine respone
53,3% 60,0%
Actual machine respone 66,7% 73,3% 80,0% 86,7%Deadpan
93,3% 100,0%
Deadpan
0%
0%
5%
5%
10%
10% Deadpan
15%
15%
20%
20%
25%
25%
30%
30%
35%
35% Actual
40% machine
40%
45%
45% respone55%
50%
50% 55%
60%
60%
65%
65%
70%
70%
75%Deadpan
75%
80%
80%
85%
85%
90%
90%
95%
95%
100%
100%
0% 5% 10% 15% 20% 25% 30% 35% 40% 45% 50% 55% 60% 65% 70% 75% 80% 85% 90% 95% 100%

(a) Existing calibration with over estimated set points.


B)
B)
B) No Current
Current 0% set
set point
point 100% set
set point
point Max Current
Current
No 0% 100% Max
No Current 0%10,0%
set point
25,0% 40,0% 55,0% 70,0% 100% set100,0%
85,0% point Max Current
10,0% 25,0% 40,0% 55,0% 70,0% 85,0% 100,0%
Actual
10,0% machine
25,0% respone
40,0% 55,0%
Actual machine respone 70,0% 85,0% 100,0%
0%
0%
5%
5%
10%
10%
15%
15%
20%
20%
25%
25%
30%
30% Actual
35% machine
35%
40% respone
40% 45%
45%
50%
50%
55%
55%
60%
60%
65%
65%
70%
70%
75%
75%
80%
80%
85%
85%
90%
90%
95%
95%
100%
100%
0% 5% 10% 15% 20% 25% 30% 35% 40% 45% 50% 55% 60% 65% 70% 75% 80% 85% 90% 95% 100%

C)
(b) Existing calibration with under estimated set points.
C)
C) No
No Current
Current 0%
0% set
set point
point 100%
100% set
set point
point Max
Max Current
Current
No Current 0%10,0%
set point
20,0% 30,0% 40,0% 50,0% 60,0% 70,0% 80,0% 100% set100,0%
90,0% point Max Current
10,0% 20,0% 30,0% 40,0% 50,0% 60,0% 70,0% 80,0% 90,0% 100,0%
10,0% 20,0% 30,0% Actual 50,0%
40,0% machine respone
60,0% 70,0%
Actual machine respone 80,0% 90,0% 100,0%
0%
0%
5%
5%
10%
10%
15%
15%
20%
20%
25%
25%
30%
30%
35%
35% Actual
40% machine
40% 45%
45% respone55%
50%
50%
55% 60%
60%
65%
65%
70%
70%
75%
75%
80%
80%
85%
85%
90%
90%
95%
95%
100%
100%
0% 5% 10% 15% 20% 25% 30% 35% 40% 45% 50% 55% 60% 65% 70% 75% 80% 85% 90% 95% 100%

(c) Existing calibration with optimally set points.

Figure 11: Existing calibration method.

In order to perform calibration, the use of a weight on the boom is required, which is of importance
in calibrating some actions. This requirement is met by just equipping a bucket attachment on to
the machine. For the start current (0%) set point for the booms lifting action, the process is done
by setting a start current low enough to not cause any response from the machine. This while
still being within the range of acceptable currents which the calibrated set point is required to be
located within for the valve to be deemed fully operational. The current is then tested and the
hydraulic pressure after the main valve is measured to determine if there is any actual response.
If there is no response, the machine is left to settle for a few seconds before the current is raised
and tested again. This whole process is then repeated until the desired pressure is met. For the
end current (100%), the process differs, but still also depend on the approach of manual testing.
Two currents are first measured, one high enough to be certain that the valve is fully open, and
one lower than the first one but still higher than the previously set start current. A line between
the points is then calculated and used to estimate the actual end current. If this current does
not fall within the requirements, parts of this process will also be repeated. For setting the start
current for lowering the boom, the process is similar to lifting, where it is gradually increased until
a satisfying result is found. However, for the end current, the process is quite different, mainly due
to two reasons. The first one is due to gravity, where a fully open valve could lead to speeds too
high for the machine to operate ideally, thus requiring restrictions. The second reason is due to
something called the float function and the design of the valves in the machine. The float function
is a way that allows the operator of the machine to cause the boom and bucket to fall to the
ground and lay there. This can then be used by the operator to scrape or even out the ground
while operating the machine in reverse. To achieve this, the machine de-pressurises the cylinder
by fully opening both cylinder ports to the tank while also connecting the pressure intake directly
to the tank. This is a special state of the machine and is achieved with the special design of the
main valves. By applying extra pressure to the valve, which is done by increasing the current
above the end current thus trying to open the valve more than maximum, this state is activated.
It is only possible to achieve for the lowering action of the boom, and therefore impose problems
on the actions calibration process. The process that aims to find the end current uses a current
that is high enough to ensure that the valve is fully open. This action can accidentally activate
the float function of the machine, causing irregular and faulty data, while negatively impacting
safety. Another method is therefore constructed in order to calibrate the end current for the boom
lowering action. This action greatly depends on the need for a bucket or equally heavy attachment
to be connected to the boom and focuses on measuring the speed of the action. The boom is fully
raised with its attachment locked, before being lowered at a constant current. The speed of the

16
Mälardalen University Master Thesis

boom is measured and compared to an ideal speed. Depending on the result, the process might be
repeated multiple times after increasing or decreasing the current. The tilting in and out set point
calibration of the boom however follows the exact same process as the lifting calibration, where
the start current is gradually increased and the end current is calculated and tested.

3.3 Problem Statement


Due to the reality of hydraulic systems suffering from hysteresis where the machine’s behaviour
is subject to change over time and use, the method of calibration is used to conform machine
behaviour and ensure quality.
Speed

Current
Figure 12: Behaviour of the machine speed with regards to current.

A way to automate or remove the need of this process is therefore of interest as an approach to
reduce cost and increase manoeuvrability. The current solution, while able to produce an adequate
controllability of the complete machine behaviour, fails to further improve the control within the
actual machine response range. The machine behaviour is non-linear which in turn can cause
unwanted behaviour during operation. This non-linear nature of a machine’s speed in regards to
the current can bee seen in Figure 12, where the data is collected from the lifting action of one
wheel loader. Some interesting details can be recognised from this picture, the first one is the
non-linearity of the system, where the increased of current does not increase the speed in a linear
fashion. Another interesting aspect is related to the physical limitation of the system where after
a certain current, any further increase would not translate into an additional rise in speed. This is
an important section of the curve since it represents the ideal location to set the end current. It is
worth noting that the behaviour in Figure 12 does not start at zero current.
Having the automatic calibration performed and located on target hardware will introduce
additional problems, mainly regarding the embedded system nature. The calibration method will
need to exist on hardware alongside multiple software applications which all requires to collabo-
rate and share computing resources. Another limitation is presented in the solutions that require
designated hardware. Lastly the automatic calibration method will need to be effective. Auto-
matic calibration should ideally perform both better and faster than existing manual methods for
calibration in order to potentially replace current methods and increase their availability.

17
Mälardalen University Master Thesis

3.4 Research Questions


The thesis aims to answer the following research questions:

RQ1: What methods for automatic calibration of hydraulics are available and applicable to con-
struction equipment vehicles?
RQ2: How do methods for automatic hydraulic calibration perform at controlling hydraulics in con-
struction equipment vehicles?

18
Mälardalen University Master Thesis

4 Related Work
The thesis highly values the research written in areas closely related to the control and identification
of hydraulic systems. The following subsections will present the current techniques in use for the
control of a hydraulic system, where Section 4.1 describes an ANN based solution and Section
4.2 describes PID based techniques. Both approaches represent a great interest for this thesis,
since the proposed methods are inspired from the solutions derived from such papers. Section 4.3
explores approaches based on the Recursive Least Square method for identification of hydraulic
systems, while Section 4.4 describe other work in the field of hydraulic control.

4.1 Nodal Link Perceptron Network


For similarity reasons, this thesis is inspired by the work realised by Opdenbosch and Sadegh in their
investigation of automatic calibration for hydraulics [14–17]. Their research has been conducted
on a different set of valves from the ones this thesis focus on. The authors base most of their
research on the use of Electro-Hydraulic Poppet Valves (EHPV) [14–17], where this thesis instead
focus on another common kind of valve, namely spool valves. The process of automatic calibration
is referred to by Opdenbosch [14] as the ability to learn a systems inverse input-output. The way
they achieved this was by the use of neural networks, namely the Nodal Link Perceptron Network
(NLPN) developed by Nader Sadegh [18,19]. The NLPN, previously known as the functional basis
perceptron network [18], was designed as a control system for non-linear systems in mind, and can
work in both discrete and continuous time. It has a design that allows the system to learn the
control input as a function of the desired states of the plant. This only requires the network to learn
the input-state map of the plan, which is restricted to the desired states, and not the dynamics
of the entire plant. This design generally allows a neural network with fewer interconnections and
reduced training [18]. Compared to older neural network methods such as the work of Narendra
and Parthasarathy [20] where the learning of the inverse plant dynamics is done through an indirect
offline approach, the NLPN uses direct learning to achieve this.
The way the NLPN work is further described Section 6, but can be seen as an adaptive lookup
table [14, 17], and has been used to identify the inverse input-output model by Opdenbosch &
Sadegh in various work, see [16, 17,21]. In the work published in 2008 [21], Opdenbosch et al. used
a control technique called NLPN-based Input Matching (NBIM). An NLPN is trained to learn the
plants inverse input-state map online with the use of gradient descent technique. This is achieved
by learning flow conductance coefficient of EHPV in a closed-loop architecture. In later work,
Opdenbosch et al. [16] use the NLPN with an accompanying control system to control a hydraulic
actuator. The included INCOVA logic control system, developed by Pfaff and Tabor [22], was
introduced with the aim of equitably share the hydraulic flow among the components in the system.
The hydraulic actuator was controlled with the use independent metering EHPV configured in a
Wheatstone bridge and according to their experiments, this solution was able to produce good
results using active learning. In a later paper, Opdenbosch et al. [17] combined the NBIM control
technique with an additional algorithm in order to extended the functionality of the control system
to enable fault detection. The tracking performance of the control system was tested and validated
experimentally while the fault detection was done in computer simulation.

4.2 Proportional Integral Derivative Control


Research on Proportional Integral Derivative (PID) techniques are necessary for the work in this
thesis, where three of the four implemented methods are based upon the PID controller. The
focus of this section is in the field of hydraulics which uses a PID control approach. Cobo et
al. [2] investigated an approach using closed loop velocity control. Their approach use a standard
Proportional Integral (PI) and a dynamic valve transformation algorithm to remove jerking actions
in a wheel loaders racking motion. The system was modelled and further evaluated with the help
of a real world implementation for testing. The authors found that their solutions provided a
linearising effect, similar to pressure compensated load sensing hydraulic systems.
Aly [23] presented an optimisation method based on Genetic Algorithm (GA) for a PID con-
troller to be applied in a position control of a non-linear electro-hydraulic servo-system. The author

19
Mälardalen University Master Thesis

investigates the optimisation process behind the search of improved PID parameters which was
realised by the application of a Genetic Algorithm approach. The entire procedure is tested with
the use of Simulink and the results of these tests demonstrate that the optimised PID is able to
improve the performance of the hydraulic-servo system.
Liu and Daley [24] adopt an optimal tuning strategy to improve the performance of a non-
linear PID. By the use of the inverse model of the control dead-zone and a non-linear compensator,
they were able to remove the occurrence of unexpected overshoot, big steady-state error and long
settling times for closed-loop hydraulic systems. This solution was able to successfully improve the
hydraulic control system in their experiments.
Liu investigated a self tuning approach for improving PI controllers used to operate induction
motors [25]. By using a gradient descent optimization approach to the parameter space, the PI
controller’s constant were able to be tuned online. This approach allows the system to better adapt
to the highly non-linear behaviour of such system. Several other automated tuning procedures have
been investigated in the literature [26–31].
Zheng et al. [32] demonstrated the performances and higher control precision obtained in the
position servo control, compared to a conventional PID controller. This online adaptive tuning
PID controller is realised by the use of fuzzy logic and its ability to solve the contradiction between
response, frequency and overshoot for improving the control accuracy is investigate in this research.
Another research in the field of self-tuning PID has been presented by Çetin and Akkaya [33]. In
this article the authors analysed a Hybrid Fuzzy PID Controller with Coupled Rules (HFPIDCR)
for position control of the hydraulic system. The evaluation, performed by simulations, is compared
with the performance of a classic PID and a Fuzzy Logic Controller (FLC). The results of this
study demonstrate that HFPIDCR is more effective than the other controllers compared, where
its rise and settling time are shorter.

4.3 Recursive Least Square


The research on Recursive Least Square (RLS) is related to the work in this thesis by the fact that
two implemented methods rely on this technique for training the networks. One other method
also makes use of the population based version of this method to estimate the initial inverse
curve. Ghazali et al. [34] investigated offline and online identification of a hydraulic system by
using AutoRegressive with eXogenous input (ARX) models. The authors discovered that for
offline identification, modelling the system with a third order model is optimal, due to additional
increments of order providing no significant improvement. For online learning, the recursive least
squares method was used, and the conclusion was that both online and offline methods were able
to successfully model the system.
The work was later expanded upon by Ghazali et al. [35], where the authors adopt an RLS
method in order to achieve recursive identification of an electro-hydraulic system represented by
a discrete-time model in open-loop and closed-loop configurations. This techniques is used to
estimate the unknown parameters of the system based on auto regression.
A study on self tuning control for Electro-Hydraulic System was also conducted by Ghazali et
al. [36]. In this article a Recursive Least Square (RLS) method with covariance resetting technique
is proposed to estimate parameters of the discrete-time model. The proposed identification method
and self tuning controller are able to handle range of system dynamics without knowledge of the
actual system. This could represent a great advantage in the development of systems models
by reducing the engineering effort. The results denote that the proposed technique is capable of
adapting to changes occurring in the model parameters. A comparison with a fixed controller has
been adopted for achieving this.
In the same field, similar research as been conducted by Plummer and Vaughan [37], where
the application of an indirect (self-tuning) adaptive controller to an electro-hydraulic positioning
system is described, as well as RLS to estimate plant parameters. Results show its ability of
achieving a rapid adaptation to changes in the plant characteristics, providing good responds
under very significant and instantaneous changes. According to the authors, the comparison of
using an equivalent fixed coefficient controller was unable at achieving the same results in the same
situation. The performance of the described technique is achieved despite the presence of many
non-linear characteristics.

20
Mälardalen University Master Thesis

Kadissi et al. [38] investigate a control strategy based on a robust non-linear strategy called
backstepping for identification and real time control of an electrohydraulic servo system. Electro-
hydraulic systems are known to be highly non-linear and for this reason the authors based their
identification on the recursive least square technique. The experimental results are evaluated by
comparison with a real-time classic PID controller.

4.4 Hydraulic Control


Another approach presented to modelling a hydraulic system was performed by Ling et al. [39].
The authors make use of an Adaptive Neuro-Fuzzy Inference System (ANFIS) in order to model
the behaviour of an electro-hydraulic actuator. They evaluated the model by measuring the Root
Mean Squared Error of the model compared to the system and managed to produced a best fit
score of 98.86%. However worth noting is that the authors mention that the added complexity
of the model produced by this approach makes it unfavourable to the simpler approach which
produced a score of 97.82%.
Ghazali et al. [40] investigated ways to improve the quality of hydraulic models that have
otherwise been simplified with constants. This was realised by investigating the impact of the
hydraulic system receives by a change of system pressure and load effect. The authors found
that the system pressure is able to provide a significant impact on the behaviour of the system.
However, the authors were unable to successfully test the impact of the load on the system due
to limitations in their workbench. This is important to the work presented in this thesis, since
the same variables investigated are extremely influential in the hydraulics found in construction
equipment machines.
Other ways of calibration, that do not fully rely on NLPN and RLS were also investigated,
such as the work by Stephenson [41]. To diminish dead pan and improve the control of the electro
hydraulic actuator, Stephenson developed a method for calibrating the control of the hydraulic
valves [41]. By increasing current to the valve while measuring pressure of either the valve’s inlet
or outlet, the method manages to find the valve’s “start current”. This allows the system to ignore
the valves dead zone and thus removing the otherwise imposed dead pan in the controller.

21
Mälardalen University Master Thesis

5 Methodology
One of the most important qualities of science, according to Dodig-Crnkovic [42], is the continuous
re-examination and self-correction process it is subject to. This highlights the recursive nature
of the logic of science and the scientific method, which is based on a set of rules defining the
way to pose questions and formulating successful hypotheses. This entire procedure is achieved
through logical reasoning, observations and experiments, creating a very impartial process based
on replicability, where everyone is able to replicate a test under the same conditions and determine
if certain results are valid or not.
Considering that computer science has roots in multiple scientific fields, allows this process’
applicability. The mathematical roots gives it a more logical imprint, while other roots could give
it a more empirical one. Embedded systems is one branch of computer science where this dualism
between logical and empirical approach is applied.
For these reasons, this thesis will be based on an iterative process which will perform according
to the schema depicted in Figure 13, where the first step is represented by a study of the current
and existing system solutions. This step intends to provide an understanding of the calibration
process and allows for the extraction of metrics and methods for evaluation. The following four
steps are part of an iterative process, where solutions will be constantly explored, discovered and
evaluated. Exploration of existing methods, models and tools on the market is conducted to get
an extensive view of possible problem solutions. Solutions that are unsuited for the task will be
excluded and the exploration step will repeat.
A selection is done based on the results reported on the researched literature analysed during the
exploration phase. If a method seem promising the selected method is implemented as a Matlab
Simulink model in order to be evaluated. The evaluation step will give a direction to follow
according to its results, where the implemented method could be discarded and the procedure will
fall back into the “Select methods for further testing” step. On the other hand if it turn out to be
suitable for a possible implementation in a real machine, it will move forward in progress. Before
reaching the final comparison, all the implemented methods suited for a real machine application
must be evaluated in order to provide metrics for the final step.
The objective of this iterative process is the ability of changing direction during each step of the
research. Basing the progression on the results from the previous steps, allowing a more flexible
approach capable of giving a good direction from the early stages. Another important benefit of
this continuous approach is represented by the ease of fixing possible unsuitable approaches.

Explore existing
Implementation of
Study existing methods, models Select methods for
methods for
calibration solution and tools on the further testing
simulation
market

Evaluate simulation

Implementation of
Comparison of Evaluate real world methods for real Comparison of
methods implementation hardware simulated methods
(Proof of concept)

Figure 13: Research methodology.

22
Mälardalen University Master Thesis

The methods will be evaluated in simulation and real world tests performed on real machines.
The methods will be evaluated on their ability to confirm to a predetermined set of actions with
regards to the error between the desired and actual response. The methods are then to be compared
to each other as well as a baseline which will be the existing method explained in Section 3. An
identical evaluation will be performed for the real machine testing, where a similar control signal
will be used instead of lever movement in order to provide more accurate results.
The method will be evaluated looking at the absolute average error they produce for the pre-
determined control sequence and by studying the machines behaviour.

5.1 Data Anonymisation


This thesis has been conducted with the collaboration of Volvo CE. For this reason the thesis
makes use of proprietary non-public information. In order to protect this confidential information,
an agreement was made to keep parts of the data anonymised.

23
Mälardalen University Master Thesis

6 Nodal Link Perceptron Networks


This section aim to describe and give a general idea of the method called Nodal Link Perceptron
Networks (NLPN) constructed by Nader Sadegh [43]. This article presents an approach for tracking
behaviour of a general class of non-linear systems using a Perceptron Neural Network (PNN). His
work describes the functioning and properties of the NLPN functional approximator. It is essential
to describe this approach since the main method of this thesis is NLPN based and can be used to
approximate non-linear mappings according to Sadegh [18].

6.1 General Structure


An NLPN structure, depicted in Figure 14, is similar to a generic ANN previously described in
Section 2.4. This particular type of networks is well suited for approximating functions of the form
f : Rn → Rm . The architecture is very simple with a single hidden layer. One distinctive feature
of this network is that each neuron of the hidden layer has a particular activation function. All
these functions together form a set of basis functions which can be chosen arbitrarily.
As seen in Figure 14, the input is a vector in Rn . Each components is then passed to the
activation function which outputs a single scalar. Each element of the output is computed as a
linear combination of these values. To give a more mathematical explanation, we have
h i
W = [W]1 [W]2 . . . [W]m

is our RN ×m matrix of weights and


T
Φ(x) = [ φ1 (x) φ2 (x) . . . φN (x) ]

is the vector with our set of basis functions. We can express the function approximated by our
NLPN as
XN
fW (x) = WT Φ(x) =
 T
W i φi (x)
i=1
n m
where x ∈ R is our input vector and fW (x) ∈ R is the output.

Ф1
X1 [W1]
f1(x)
Ф2
X2
X

fm(x)
[Wm]
Xn
ФN

Figure 14: NLPN structure based on the image by Opdenbosch [14].

For more details regarding the described theory consult Opdenbosch dissertation [14].

6.2 Simulink Structure


The Simulink implementation for the NLPN was provided by Patrick Opdenbosch as examples of
1 to 1, 2 to 1, and 4 to 2 dimensional networks. The network consisting of a 1-dimensional input

24
Mälardalen University Master Thesis

to a 1-dimensional output is illustrated in Figure 15. This implementation allows the user to select
three different types of basis functions used for the approximation, a Triangular, Gaussian and a
Hyperbolic function.

Approximation x1
f(x)

Constant sigma

PHI_V
W

NLPN 1D to 1D
uT
phi(k)

W(k)

e(k)

RLS
Desired

Figure 15: Simulink representation.

The NLPN block of this design takes three inputs: an input vector, a constant sigma and a
matrix of weights. Sigma is used only in the case the Gaussian or the Hyperbolic basis functions are
chosen. This parameter is not applied in the case a Triangular basis function is used. The output
of this NLPN block consists of a scalar, representing the approximation of the desired function
and a vector of basis function, which are then used to compute the weights. Weights are computed
with a Recursive Least Square (RLS) block according to the error, computed as the difference
between the desired output and the approximation generated by the output from the NLPN. Once
adjusted, these weights are then passed back to the NLPN to improve the approximation. This
follows the iterative process that characterise a NN, where the predicted output is continuously
adjusted according to the learning process, represented by the RLS in this specific design.

6.3 Motivation
This particular method has been chosen for its flexibility. In fact the main advantage of using
basis functions, which are the main component of an NLPN, is the ability to arbitrarily select
a precision for the approximation. In addition to this, a good selection of basis functions are
capable of approximating even non-linear functions, which is a advantage for the scope of this
thesis. In addition to the aforementioned advantage, this design is simple to be extended to higher
dimensions, where multiple factors, such as pressure and load of the system, can be taken in
consideration. The NLPN is not consider a deep network, and for this reason the computation
required for the training is less than other NN based approaches.

25
Mälardalen University Master Thesis

7 Simulations and Models


The solution implementations were realised in the Matlab Simulink environment which is a
common tool used for simulation of systems [44]. Additionally, the Matlab Simulink environment
allows for code generation and is currently used at Volvo CE for the implementation of their
software along with its ability to communicate with other third party tools such as the rapid
prototyping tool called Speedgoat1 .
Simulink is a graphical block diagram based modelling technique where the user constructs
their applications by the interconnection of various blocks, allowing for a simulation model made
up from linked blocks, thus its name [44]. The Simulink environment is an addition to the original
Matlab program, which allows for easy communication between the two environments.
A PID based solution was initial considered due to its simple design and record of being used
in practise [10]. The initial PID strategy was however dropped after results from initial testing
aligned to the theory of the PID controller being unsuitable for such a non-linear system. The
early testing was done with the PID where the input was the error calculated from the reference
speed taken from the Speed Control block and the plant. The non-linearity present in the hydraulic
systems, especially the large deadpan in the valves start current, presented itself quite problematic
to handle for a PID, causing highly oscillating and unstable results. The PID being an approach
mainly used for linear problems, was as expected to be unable to alone handle such systems. This
method was then evolved into the solution explained in Section 7.4.

7.1 Speed Control Block


The speed control is an important component within the control strategy and is reused within
almost all implementations presented. Its main purpose is converting the percentage received from
the lever signal into a speed. It consists of a different construction depending on the action of
the system it will control. The lift action Speed Control block has two inputs, Max Speed and
Command. Since the machine maximum speed can vary depending on the hardware characteristics,
it is important for a control strategy that is able to satisfy both slower machines incapability to meet
the target speed, as well as not restricting faster machines from performing at optimal performance.
The maximum speed of the machine is found by the Max Speed block seen in Figure 17. An
initial maximum speed within a general range of allowed maximum speeds for the existing machine
is set inside the Max Speed block. The approach chosen is then to periodically lower the maximum
speed slightly within the block. This design depends on the fact that oscillations in the system are
present to further increase the maximum speed available to the plant. The block updates the value
by using the maximum of the previously set maximum speed and the result of a moving average
block. This is calculated as an average of the last predetermined set of samples.
The control strategy for the lowering action differs slightly, whereas the Speed Control block
does not take in consideration the maximum speed of the machine. Since lowering at the maximum
operating speed can become uncontrollable due to the effects of the GET load and the effect of
gravity, a predetermined speed limit for operating the lowering action is set. This removes the
need for the Max Speed block and simplifies the design.

7.2 Simulated Plant


The plant model used in the simulation is constructed based on partial real data, expertise knowl-
edge and heuristics. The data provided is similar to the data found in Figure 12, where it contains
a specified speeds with regards to a current. The data was however not complete, as there were
areas in the input space that were missing. The reason behind this lack of data derives from the
fact that retrieving it for the entire input space is time consuming for technicians and experts. For
this reason it was decided that a fitted curve through this space would provide a representation
within sufficient accuracy. Any inaccuracy could be argued to be a result of the individual machine
behaviour. The regression analysis method used to fit a function through the data set representing
the current to speed curve was the “Piecewise Cubic Hermite Interpolating Polynomial” or PCHIP.
The curve was interpolated by the use of the pchip(x,y) function available in Matlab [45]. The
1 https://www.speedgoat.com/

26
Mälardalen University Master Thesis

method was evaluated alongside the spline function, but produced similar results in the area with
extensive data points. The PCHIP method was thus chosen due to its increased linear behaviour
and reduced overshoot [45].
The dynamics of the plant appear as the time it takes for the system to respond to the command,
not to be confused with the delay of the system which represents the time for the system to receive
an action. The dynamics of the plant were realised with the use of a transfer function constructed
from real data as well as expert knowledge where the settling time is a given number. The delay
was included as a transport delay block based on expertise knowledge. The real data was acquired
from a Volvo machine by raising the GET from fully down position to high position with the engine
being in an idle state. In the end, the complete structure of the plant is realised in Figure 16.

In Current pchip Speed Out

Current Angle Speed


Transfer function Transport delay
function fitted to produce a responsible for plant dynamics responsible for delay in
speed depending on the current
the system

Figure 16: Simulation design of the plant.

7.3 Existing Interpolation Method


In order to increase the validity of any results and anchor any findings more in reality, a baseline was
considered. The method to act as a baseline was the existing method of interpolation explained in
3. The existing method is currently used in practise today, and whilst requiring manual calibration
is able to show how the present machines respond to the operator commands.
The calibrated set points were taken by plotting the data set containing the current to speed
relation of each machine and choosing the start and end current arbitrary based on the knowledge
and teaching we received from experts. The existing approach to calibrate using the special tool
in production has a small tolerance for error which was taken into account when choosing the set
points.

7.4 PI With a Line Inverse Model


Due to the PID’s inability to alone govern the control of the system, additional components were
added to the system. The design shown in Figure 17 shows a system were a PID is only responsible
of tuning the signal instead of alone controlling it. The choice of a PI controller instead of a
complete PID is based on the increased difficulty that occurs for tuning the controller and expertise
knowledge deeming the performance increase too small to justify.
This approach makes use of a static reference model of the plants inverse input-output in order
to control the system. The inverse input-output reference model is, as the name implied, an inverse
of the plant. For example, if a plant that takes a current and return an angle speed is consider, its
inverse model will take an angle speed as input and will return the current necessary to achieve
the desired speed. This makes using a perfect inverse input-output model of the system desired,
as control of the system will be the simple output of such a function. Such solutions are however
not necessarily simple and will suffer from the hysteresis in the system.
This initial approach makes use of a simple line to model the inverse of the plant. The static
inverse line for behaviour such as the one shown in Figure 12, is modelled by following the standard
notation shown in Equation 3. It is done by choosing two points within the range of acceptable
values within the behaviour, point pointstart to represent start current and 0 speed and pointend
to represent the end current and general maximum speed. The line representing the inverse model,
shown in Equation 6 is derived from 3 according to Equation 4 and 5. The data set of which the
two points were taken from were supplied by Volvo CE and includes partial data from various
models of machines and from a number of machines within each model. The points were chosen
arbitrary to represent all machines and their behaviour whilst also filling in gaps in the lower
current regions of the data. The fitness of this general static inverse model to the machine under
test is preferred, since it will remove the need for the PID to correct any discrepancies, but it is not

27
Mälardalen University Master Thesis

enforced and left for the PI controller. The tuning of the PI is sub-optimal and done following a
trial and error approach. The same PI design is used for all the implementations that makes use of
a PI controller. The lifting PI is saturated at the maximum current the valve can handle. for the
lowering PI is saturated at a current that is low enough to avoid activating the machines floating
function. The anti-windup method ”clamping” is also activated and the complete implementation
is done in discrete time in the Simulink PID block.

yend − ystart
y =m·x+k (3) m= (4)
xend − xstart

y−k
k = ystart − m · xstart (5) x= (6)
m

Speed Inverse Model Current

Static inverse model


to get a current

Lever Signal Command Calculate Error


Speed Control Speed Error PID Current Current Plant Speed
MaxSpeed
Lever to operate the system Calculate Current
Speed Control responsible for PID to balance error Wheel loader system
converting signal to reference speed

MaxSpeed Max Speed Speed

Calculates the max speed


available to the plant

Figure 17: PID with a static inverse model for controlling one action.

7.5 PI with a Curve Inverse Model


The second implementation is similar to the first one, where the same blocks are present for both
actions. The only difference between the methods lies within the Inverse Model block and the
function chosen to model the plant. The inverse function, while still constant during execution, is
constructed differently in an attempt to give a more accurate representation of the existing plant
and reduce the need for interactions from the PID to tune and adjust the current.
The construction of the inverse model is based upon the same data set provided by Volvo CE.
The data for all machines is then averaged to remove any major discrepancies before fitting a curve
through the data with the use of regression analysis. The regression analysis method used is the
least squares method which is a prediction method capable of function approximation [13]. The
method used to construct this was the built in Matlab function, polyfit(x,y,n) [46].
The order of the function chosen to represent the machine behaviour is a 5’th order polynomial
which was a choice based on the look of the data compared to the curve. In order for this solution
to be used similarly to the previous one, an inverse of the function is needed, however an inverse of a
polynomial is considerably more difficult than a line. The approach to handle this is by translating
the function in the speed axis in order for the requested speed to cross the x-axis. The function
is then solved by calculating its roots and use the smallest acceptable root, see pseudo code for
Algorithm 1 for a detailed explanation of the code. This approach avoids the need of inverting the
polynomial while still providing the functionality of the inverse model.

28
Mälardalen University Master Thesis

Algorithm 1 Pseudo code of function for finding a current capable of producing the desired speed.
1: procedure Find Roots(Polynomial, Speed)
Polynomial - List of coefficients for the polynomial
Speed - Reference speed of which to find a current to achieve
2: let f = Polynomial − Speed
3: let r be a vector containing the roots of f
4: Remove any imaginary roots ri from r
5: Remove any roots rk from r where
rk > M axCurrent OR rk < M inCurrent
6: if |r| > 0 then
7: let Current be the smallest root in r
8: else
9: let Current be 0
10: end if
11: return Current
12: end procedure

7.6 PI with an Adaptive Inverse Model


The third approach again uses a PI controller, but this time use it with the help of a self learning
inverse model. In order to reduce the need for the PI further, and rely solely on the inverse model,
it is desired for the model to give an accurate representation of the machine behaviour. Instead
of a static method similar to the methods explained in Sections 7.4 and 7.5 or methods where a
more specific curve tailored for this exact machine are used. A self adapting approach is chosen
which is able to constantly learn the machines inverse input-output model. This allows the method
to provide improved results as the inverse model is tailored to the machine while considering any
changes introduced, such as hysteresis.
The method chosen for constantly learning the plants inverse model is the Nodal Link Percep-
tron Network explained in Section 6. An NLPN network for every action, lifting and lowering, is
used for learning where each network has its own nodal grid, both however consisting of 18 points.
The grid for lowering ranges from 0 milli-radians to the predetermined maximum speed, whilst
the lifting action grid is overestimated to encompass all machines individual maximum speed. The
grid for both actions is constructed with 16 nodes equally separated between 0 and their maximum
speed as well as two additional nodes 1 milli-radian below and above zero and the maximum speed
respectively, as designed by Opdenbosch [14]. The learning of the NLPN is done with the use of
the Recursive Least Squares method which is explained in Section 2.6.1. The recursive least square
method is able to constantly adapt and improve the weights of the NLPN with the additional data
samples. The NLPN is initially loaded with pre-trained weights that were trained on a machine
not among the machines to be evaluated. The RLS block is designed with the same sample time
as the rest of the system, an initial state of the pre-trained weights, an initial covariance matrix of
1 and a forgetting factor of 1. The settings to reset covariance matrix and forgetting factor present
in the implementation were kept off.
The weights learned from the neural network which aims to represent the plants inverse input-
output model are then forwarded to a second NLPN in order to process the inverse function. The
second controlling NLPN is based upon an identical design as the first NLPN with regards to
nodal grid but lacks the Recursive Least Square learning element. The controlling NLPN is then
tasked the same as the inverse model block seen in previous implementations, and is responsible for
producing the current responding to the desired speed as shown in the control strategy in Figure
18.

7.7 Neural Network Implementation


The neural network implementation is the most different solution implemented compared to the
previous three. It makes use of no PI controller, but exclusively one neural network for each action.
The NLPN network controller makes use of the command signal in order to control the current

29
Mälardalen University Master Thesis

Speed
Weights Learning NLPN
Current
Weights
NLPN responsible for learning
Controlling NLPN Current
the inverse model
Speed

Adapting inverse model


to get a current

Lever Signal Command Calculate Error


Speed Control Speed Error PID Current Current Plant Speed
MaxSpeed
Lever to operate the system Calculate Current
Speed Control responsible for PID to balance error Wheel loader system
converting signal to reference speed

MaxSpeed Max Speed Speed

Calculates the max speed


available to the plant

Figure 18: PID with a learning inverse model for controlling one action.

which allows the nodal grid to be fully utilised. This is different from the method explained in
Section 7.6, where the NLPN uses the speed as an input. This design enables the removal of
one unknown, namely the size of the neural network input space. Previous design requires the
input space for the lifting neural network to be large enough to encompass the behaviour of all
machines, thus resulting in possible overestimation. This overestimation causes a trade off between
performance and accuracy in the form of the amount of nodal points. By bounding the input space,
it is possible to accurately place the input space in an area that is exercised, thus removing the
need for a trade off.
The NLPN design has another change that differs it from other methods, which is the saturation
error block shown in Figure 19. In the case of the user applying maximum command, the controller
should supply the minimum current necessary to fully open the valve. However, due to ambiguity
in the machine behaviour, where every current over the end current will produce the same speed,
the network can end up learning a model well outside the allowed saturation range. The error
calculation over this saturation block is there to prevent this and enforce a more accurate model.

Command
NLPN Current
Error
Lever Signal Command
Speed Control Speed Saturation
Learning NLPN Current Plant Speed
MaxSpeed Control Strategy
Lever to operate the system
Speed Control responsible for Calculate Error Wheel loader system
converting signal to reference speed

Saturation Error
MaxSpeed Max Speed Speed

Calculates the max speed


available to the plant

Figure 19: NLPN responsible for learning and controlling one hydraulic action.

30
Mälardalen University Master Thesis

8 Evaluation
In order to evaluate the methods, simulations and real target tests were initially considered to be
used. However, real target evaluation was deemed unable to be completed in time and therefore cut
out of the scope of this thesis and is instead moved to future work. The evaluation was supposed
to be conducted on a real-time target computer called Speedgoat, a rapid prototyping hardware
connected to the ECU of the machine to be tested. Signals are then received from the lever of the
machine, calculated on the Speedgoat and transferred back to the ECU in order to send the proper
current to the valves. Communication between these components suffered from major delays and
the source of this issue was not discovered, leading this type of evaluation as a future work. For
this reason the focus is shifted on a simulated approach.
The evaluation of the methods in simulation was done in the Matlab Simulink environment
and used a predetermined command signal which is shown in Figure 20. A real command signal was
not available during the evaluation phase, creating the necessity of constructing a signal instead.
This constructed command signal is exclusively used for the methods evaluation. This analysis was
performed on data sets from three different machines of the same model, which will be known as
machine A, B and C, and is done in order to evaluate how well the solutions perform on different
machines. In order to simulate a different machine, the simulation is changed by replacing the
current to speed function inside the plant to the one unique to the machine. The plant still uses
the same transfer function and delay block, but only changes the function of which the pchip block
process, see Figure 16.
This section focuses on the different solutions and their evaluations. Tables compiling and
displaying the actual data are available in Appendix A.

Evaluation Command
100

90

80

70
Command %

60

50

40

30

20

10

0
0 100 200 300 400 500 600 700 800 900 1000
Time (seconds)

Figure 20: Evaluation command used to test all solutions.

In order to set a baseline, the existing method is firstly evaluated and the results are shown
in Figure 21. This method makes use of a manually calibrated set of start and end points for
each machine. The existing method is able to produce good response in the higher commands
for Machine A and C, and does not produce any spikes in response for either action, excluding
the error caused by the dynamics of the system being unable to provide an instant transition in
speed. The method is however unable to produce the desired speeds in the middle to low command
ranges, and continues this trend through both lifting and lowering actions.
Evaluation of the second method, namely the method using a PI + Line Inverse model, is able
to produce promising results as shown in Figure 22. The method is able to produce better results
in regard to error as compared to the baseline. It is able to produce good responsiveness for the
higher commands and extends that responsiveness to the middle ranges as well with an additional

31
Mälardalen University Master Thesis

A; Lift - Existing Method - AVG Error: 33.1983 A; Lower - Existing Method - AVG Error: 64.5314
Speed mrad/s

Speed mrad/s
Machine Behaviour Machine Behaviour
Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(a) Machine A - Lifting. (b) Machine A - Lowering.

B; Lift - Existing Method - AVG Error: 32.6962 B; Lower - Existing Method - AVG Error: 95.366
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(c) Machine B - Lifting. (d) Machine B - Lowering.

C; Lift - Existing Method - AVG Error: 25.8646 C; Lower - Existing Method - AVG Error: 66.3285
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(e) Machine C - Lifting. (f) Machine C - Lowering.

Figure 21: Evaluation of Existing method on each machine.

32
Mälardalen University Master Thesis

decent response for the lower ranges. The method is able to produce similar results for both actions
and produced few spikes. Lifting does produce an interesting response at 600 seconds where the
command signal has some aggressive discrepancies.
Looking at the plot for lifting it is also possible to see how the machine is able to increase its
maximum speed close to 80 seconds into execution. As mentioned in Section 7.1, this response
is not available in the lowering command, and due to manually setting the input range is neither
present in the existing method.

A; Lift - PI + Reference Line - AVG Error: 9.1187 A; Lower - PI + Reference Line - AVG Error: 9.6724
Speed mrad/s

Speed mrad/s
Machine Behaviour Machine Behaviour
Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(a) Machine A - Lifting. (b) Machine A - Lowering.

B; Lift - PI + Reference Line - AVG Error: 8.4257 B; Lower - PI + Reference Line - AVG Error: 10.7261
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(c) Machine B - Lifting. (d) Machine B - Lowering.

C; Lift - PI + Reference Line - AVG Error: 9.3145 C; Lower - PI + Reference Line - AVG Error: 10.406
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(e) Machine C - Lifting. (f) Machine C - Lowering.

Figure 22: Evaluation of PI + Line Inverse on each machine.

Proceeding to the other method using a static inverse model, i.e. the method using a PI + Curve
Inverse model with results shown in Figure 23. The plots again show results of better control as
compared to the baseline. The method produces almost similar results to the PI + Line Inverse
model method for the lowering action, but does however seem to perform worse when considering
lifting. Spikes are also few, but still more present than previous methods. The discrepancy at 600

33
Mälardalen University Master Thesis

seconds is also more apparent in this method compared to the previous one.

A; Lift - PI + Reference Curve - AVG Error: 15.3165 A; Lower - PI + Reference Curve - AVG Error: 9.5631
Speed mrad/s

Speed mrad/s
Machine Behaviour Machine Behaviour
Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(a) Machine A - Lifting. (b) Machine A - Lowering.

B; Lift - PI + Reference Curve - AVG Error: 12.9822 B; Lower - PI + Reference Curve - AVG Error: 10.7321
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(c) Machine B - Lifting. (d) Machine B - Lowering.

C; Lift - PI + Reference Curve - AVG Error: 15.3585 C; Lower - PI + Reference Curve - AVG Error: 10.7508
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(e) Machine C - Lifting. (f) Machine C - Lowering.

Figure 23: Evaluation of PI + Curve Inverse on each machine.

The fourth method is the first adaptive one, the PI + Adaptive Inverse method and displays
the plots in Figure 24 for the first iteration and Figure 25 for the second. This method is able to
produce the overall best result across all machines for lifting, with few spikes and a low average
error. The lowering action however does not perform as well, where major spikes are present in
the results. The method was able to produce good results even on the first run of the evaluation
command, but was still able to improve these results for its second attempt. The second attempt
resets everything except the inverse model, resulting in the same rise in maximum speed for both
executions. The lowering action was still more prone to error with the presence of spikes that
diminished the results.
Lastly, the results from the approach exclusively based on the NLPN method were quite inter-
esting, seen in Figures 26 and 27 for run one and two respectively. In the initial phase of lifting, the

34
Mälardalen University Master Thesis

A-RUN1; Lift - PI + Adaptive Inverse - AVG Error: 6.9091 A-RUN1; Lower - PI + Adaptive Inverse - AVG Error: 22.4813
Speed mrad/s

Speed mrad/s
Machine Behaviour Machine Behaviour
Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(a) Machine A - Lifting. (b) Machine A - Lowering.

B-RUN1; Lift - PI + Adaptive Inverse - AVG Error: 7.9112 B-RUN1; Lower - PI + Adaptive Inverse - AVG Error: 20.3108
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(c) Machine B - Lifting. (d) Machine B - Lowering.

C-RUN1; Lift - PI + Adaptive Inverse - AVG Error: 7.344 C-RUN1; Lower - PI + Adaptive Inverse - AVG Error: 22.7646
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(e) Machine C - Lifting. (f) Machine C - Lowering.

Figure 24: Evaluation of PI + Adaptive Inverse first run on each machine.

35
Mälardalen University Master Thesis

A-RUN2; Lift - PI + Adaptive Inverse - AVG Error: 6.8233 A-RUN2; Lower - PI + Adaptive Inverse - AVG Error: 22.5498
Speed mrad/s

Speed mrad/s
Machine Behaviour Machine Behaviour
Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(a) Machine A - Lifting. (b) Machine A - Lowering.

B-RUN2; Lift - PI + Adaptive Inverse - AVG Error: 7.8158 B-RUN2; Lower - PI + Adaptive Inverse - AVG Error: 19.4521
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(c) Machine B - Lifting. (d) Machine B - Lowering.

C-RUN2; Lift - PI + Adaptive Inverse - AVG Error: 7.3017 C-RUN2; Lower - PI + Adaptive Inverse - AVG Error: 22.8229
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(e) Machine C - Lifting. (f) Machine C - Lowering.

Figure 25: Evaluation of PI + Adaptive Inverse second run on each machine.

36
Mälardalen University Master Thesis

method produced an oscillatory behaviour while also having difficulties increasing the maximum
speed as fast as previous methods. The NLPN also produced various aggressive spikes and ended
up unable to fully utilise the speed of the machine towards the second half of the execution for
both runs. For the lowering action, the NLPN method was able to produce much better results
with less noticeable spikes compared to the results for the lifting actions.

A-RUN1; Lift - NLPN - AVG Error: 37.5043 A-RUN1; Lower - NLPN - AVG Error: 17.3899
Speed mrad/s

Speed mrad/s
Machine Behaviour Machine Behaviour
Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(a) Machine A - Lifting. (b) Machine A - Lowering.

B-RUN1; Lift - NLPN - AVG Error: 29.9326 B-RUN1; Lower - NLPN - AVG Error: 18.559
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(c) Machine B - Lifting. (d) Machine B - Lowering.

C-RUN1; Lift - NLPN - AVG Error: 44.6342 C-RUN1; Lower - NLPN - AVG Error: 17.5383
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(e) Machine C - Lifting. (f) Machine C - Lowering.

Figure 26: Evaluation of NLPN method first run on each machine.

Figures 28 and 29 display bar plots of the average error for every method and every machine
exercising each action compared to the baseline or “Existing Method”. The figures display each
machines response to that action where the line at 1 represents the baseline and the values above
the bars is their value rounded to 1 decimal. It is seen that for lifting, all methods except the NLPN
one were able to produce a lower average error than the baseline. The most effective method for
lifting was evaluated to be the PI controller with the adaptive inverse function, resulting in an
average error of roughly five times less than the baseline during its second execution. The PI

37
Mälardalen University Master Thesis

A-RUN2; Lift - NLPN - AVG Error: 37.8551 A-RUN2; Lower - NLPN - AVG Error: 18.1794
Speed mrad/s

Speed mrad/s
Machine Behaviour Machine Behaviour
Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(a) Machine A - Lifting. (b) Machine A - Lowering.

B-RUN2; Lift - NLPN - AVG Error: 31.4031 B-RUN2; Lower - NLPN - AVG Error: 19.383
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(c) Machine B - Lifting. (d) Machine B - Lowering.

C-RUN2; Lift - NLPN - AVG Error: 38.9687 C-RUN2; Lower - NLPN - AVG Error: 18.3111
Speed mrad/s

Speed mrad/s

Machine Behaviour Machine Behaviour


Reference Speed Reference Speed
Error Error
Moving Average Moving Average
0 100 200 300 400 500 600 700 800 900 1000 0 100 200 300 400 500 600 700 800 900 1000
Time (seconds) Time (seconds)

(e) Machine C - Lifting. (f) Machine C - Lowering.

Figure 27: Evaluation of NLPN method second run on each machine.

38
Mälardalen University Master Thesis

controller and reference line inverse was a second, with 0.3 times the error of the baseline, followed
by the PI and Curve Inverse model and lastly the NLPN.

1.7
Lifting Action Error

1.5
1.5

Machine A
Machine B
Machine C 1.3
Method Average 1.2
1.1 1.1
Error relative to baseline

1.0

1
0.9

0.8

0.6
0.6 0.6
0.5 0.5
0.5

0.5
0.4
0.3
0.3 0.3 0.3 0.3 0.3
0.2 0.2 0.2 0.2
0.2 0.2
0.0

PI + Line PI + Curve PI + AI PI + AI Run 2 NLPN NLPN Run 2 Average

Methods

Figure 28: Lifting results of the evaluated methods compared to the baseline.

The lowering action, seen in Figure 29, shows that all methods were able to produce a lower
average error than the baseline, where all methods produced at least about one third of that error.
The PI + Line Inverse method and Curve Inverse method resulted in about half the error compared
to the PI + Adaptive Inverse method, which was the most effective method for the lifting action.
The NLPN was able to produce far better results for lowering than lifting and was no longer the
worst method for the action. The worst method for lowering is instead the otherwise best method
for lifting, the PI + Adaptive Inverse with an average error of 0.3 times less than the baseline
during its second execution. The method which achieved the best results for lowering was the PI
+ Line Inverse model method, however the difference between this method and the one utilising a
Curve Inverse model is minuscule.
The final results are displayed in the bar plot shown in Figure 30, and shows the average error
compared to the baseline for every method per action as well as an average of both actions. Looking
at this, it is apparent that the baseline is outperformed by most methods. The method utilising a
PI + Line Inverse model was able to provide the best results, with a combined average error of 0.2
times the baseline. The PI + Curve Inverse model and the method utilising an Adaptive Inverse
model are not far away, both with a rounded error of 0.3 times less than the baseline.

39
Mälardalen University Master Thesis

1.5 Lowering Action Error

Machine A
Machine B
Machine C
Method Average
Error relative to baseline

1.0
0.5

0.3 0.3 0.3 0.3


0.3 0.3 0.3 0.3 0.3
0.3 0.3 0.2 0.3 0.3
0.2 0.2 0.2 0.2
0.2 0.2
0.1 0.2 0.1 0.1 0.2 0.1
0.1 0.1
0.0

PI + Line PI + Curve PI + AI PI + AI Run 2 NLPN NLPN Run 2 Average

Methods

Figure 29: Lowering results of the evaluated methods compared to the baseline.

Machine Average Error per Action


1.5

Lifting
Lowring
Average 1.3
1.2
Error relative to baseline

1.0

0.7 0.7

0.6

0.5
0.5

0.4

0.3 0.3 0.3 0.3


0.3 0.3 0.3
0.2 0.2 0.2 0.2
0.2
0.1 0.1
0.0

PI + Line PI + Curve PI + AI PI + AI Run 2 NLPN NLPN Run 2 Average

Methods

Figure 30: Lowering results of the evaluated methods compared to the baseline.

40
Mälardalen University Master Thesis

9 Threats to Validity
The thesis made use of a data set to represent the machines which did not contain a complete
mapping of the machine’s current to speed behaviour. Due to the incomplete data set, a regression
analysis was used in order to estimate this data. The estimated version of the behaviour was used
as there still would be discrepancies between all the machines individual behaviour.
The dynamics of the plant were also not perfectly modelled in simulation and were instead
simplified for ease of use. The model was constructed from data retrieved from the lowering and
lifting actions of a similar machine used in the evaluations and the transfer function representing
the dynamics was then constructed by the use of expertise knowledge. The dynamics does not take
into account gravity, current angle or weight of the boom nor the current pressure in the hydraulic
system. The dynamics are neither unique to every machine.
The real target machine testing considered in this thesis was not completed in the end which
makes any concrete statements or conclusions inappropriate as they would be based on simplified
simulations. Additionally, the evaluation methods used, being the average of the error and eval-
uation of the resulting plots, are not able to provide a complete answer. The metrics should be
expanded upon with examples such as rise time and settling time.
The evaluation was only conducted on three machines of the same model. Further investigations
should be performed in order to produce more conclusive results.
Due to the lack of expertise knowledge and MATLAB being unable to automatically tune the
PI-controller, a sub-optimal method was used. The tuning of the PI controller could greatly affect
the affiliated methods, and should therefore be mentioned. Currently the same settings for the PI
controller are used in all evaluations in order to provide a fair comparison between the methods.

41
Mälardalen University Master Thesis

10 Discussion
This section presents a discussion of the results retrieved during the evaluation. The discussion
will focus on the results achieved by evaluating the methods simulations. Methods that are able to
control electro-hydraulic systems without the need of any individual calibration were investigated
and compared to each other as well as the baseline of using the existing individual calibration and
interpolation method. The methods were able to provide interesting results, some less stable than
others, but overall were able to construct a footing to base any future work upon.

10.1 PI + Line Inverse Model


Looking at the results shown in Section 8, the PI + Line Inverse model method provided the most
effective results according to the evaluation performed.
The results shown in Figures 22 and 30, demonstrate that the results from the considered
simplest implementation, excluding the existent one, was able to provide the most effective results.
The spikes, or overshoots, were not too aggressive and an otherwise low average error led this
approach to be the most interesting one. Computational wise, while again excluding the existing
method, this method is the most efficient, where the use of a pre-calculated inverse function is
used which reduced computation to the simple function of a line. The method managed to provide
similar results for both lifting and lowering actions which was quite interesting.
Due to the use of a static reference model, this method does still risk similar behaviour as
the initial and now discarded PID solution mentioned in Section 7. The system might respond
inappropriately if the machines behaviour is too far from the line inverse model, which would result
in yet another, however smaller, initial deadpan. Similar oscillating behaviour might also occur
but it might be possible for the PI controller to handle such a situation. Further testing is required
to confirm or deny this.

10.2 PI + Curve Inverse Model


The results from the PI + Curve Inverse model method, seen in Figure 23, were a bit surprising.
It was expected that the results from this solution would provide a more accurate response than
the method utilising a line inverse model. This was however not the case, where it was performing
slightly worse compared to the reference line method. For the lowering action, the method was
able to perform quite similar to the line inverse model method, if not identical. An evaluation
utilising a greater sample size is required to give a more accurate answer.
Looking at the plots in Figure 23, we see that overshoot and spikes were still apparent, and
look slightly identical to the previous method of PI + Line Inverse model.
It is believed that the reference curve used, which was fitted through a data set containing gaps,
might have affected the results negatively for the lifting action. Ideally this should be reconfirmed
in a future work, where the reference curve is modelled from a complete data set.
This method also suffer from the same risk as the PI + Line Inverse model method which is
imposed by the use of a static reference model, where unwanted and troubling results might appear
if the machine behaviour diverges too far from the inverse model.

10.3 PI + Adaptive Inverse Model


The PI controller with the adaptively learning inverse model was a very interesting method. It
was theorised to be the best method due to its ability to learn the system while adapting to the
dynamics of the plant. The method was able to produce the most effective results for the lifting
action, but was however, not able to perform similar results for the lowering action. All methods
were using the same initial plant inverse model which were then adapted during the evaluation
to further fit the machine. This lead to the method, even during its initial run, performing quite
interesting results for the lifting action. The method was able to produce an error lower than all
other methods for that action when comparing to the baseline. During the second run, the same
inverse model from run one was used and further improved upon, which was shown in a lower
average error produced in the second run.

42
Mälardalen University Master Thesis

The lowering action was however not able to produce as promising results. The plots of the
method as seen in Figure 24 and the second run of the method in Figures 25 show that the method
was producing some spikes during the lowering action. This behaviour was present in the tests
performed on all three machines, and a reason for this is still not confirmed. It is believed that the
initial learning was done on a machine with behaviour too drastic or perhaps stopped in the middle
of adapting to the plants dynamics which ended up biasing the initial inverse model. Letting the
method continue executing for longer might improve these results, however for this thesis, only two
runs were considered and longer and more thorough testing is left as future work. Additionally,
looking into extending the inverse model to better learn any plant dynamics might also improve
these results.

10.4 NLPN
The NLPN solutions makes use only of a Neural Network approach for controlling the plant. The
initial control model is again pre-trained, similarly to the PI + Adaptive Inverse model, using a
machine outside the evaluated machines. The plots of the first run, presented in Figure 26, show
an initial learning phase of the machine between 0 and 200 seconds where jagged results are present
in the behaviour.
The lifting action of the NLPN did produce some troublesome results, where looking at the
behaviour for Machine C’s first run, the method managed to produce quite a large spike of error
as compared to other machines and actions. The lifting action was also unable to fully utilise the
maximum speed of the plant by the end of the evaluation where it kept producing results lower
than demanded. Additionally the method was unable to produce a lower average error than the
baseline, which was the only method unable to do so of the ones evaluated, as seen in Figure 30.
The second run of the lifting action, seen in Figure 27, did not drastically improve the results and
was still unable to outperform the baseline. It did however remove the extensive spike of error
previously experienced by Machine C, while the average error managed to increase for Machine A
and B.
The lowering action’s results were much more promising. The spikes of error were fewer and
far less aggressive, and the average error was drastically better than the baseline. The difference
between the two runs were more impactful than for the lifting action. Instead of the machines
receiving a decrease in average error compared to the first run, all machines received a slight
increase.
Looking at the plots for this method regarding all machines and actions, it is also shown that
the method managed to produce some interesting results towards the end of the execution. The
error is quite high while the behaviour of the plant is at 0 speed. This indicates that the NLPN
was trying to apply a negative current and was instead receiving this error from the saturation
block shown in Figure 19. This block was used to prevent the plant from receiving illegal values,
being negative or too high currents which could damage the components. Ideally this block should
always output an error of 0, but in such cases where the output of the network produces the results
presented, it will attempt to correct this.
The reason for the lowering actions superior results compared to lifting is currently unknown.
The poor results from the lifting action can emerge from various reasons, such as an incomplete
initial control model or oversimplified simulation models.
The NLPN only method was also expected to have some difficulties in this evaluation as it
attempts to learn a “look up table” kind of interpretation of the control model. This makes it
difficult for the method to take into account any dynamics of the plant and its previous states
when trying to learn what command results in what speed. This leaves the NLPN lacking in
areas regarding dynamics as compared to the other methods, where the PI controller is able to
better handle such changes. Further extending the method to account for such dynamics should
be considered if attempting such a solution in any future work.

10.5 Final Considerations


The overall results of this thesis are mostly able to provide a footing to continue from in order
to further investigate approaches for automatic calibration. The methods tested could not be

43
Mälardalen University Master Thesis

completely confirmed nor denied to be either good or bad and do need to be further evaluated.
Various choices made during implementation were grounded in the time needed to understand and
implement them and thus sub-optimal solutions were used. The tuning of the PI controller is such
an example, where a more optimally tuned PI controller is necessary to completely confirm or deny
anything, the same goes for the Max Speed block.
Additionally, the simulations does not take into account any online changes to the system, such
as engine RPM, system pressure and weight on the boom. It is theorised that such changes would
completely change the behaviour of the adaptive models by causing the system to learn possibly
faulty inverse models. This would require extensive investigations in order to find ways of how to
handle such behaviour. It is expected that the static models would be better suited to handle such
models, where the reference model wont be changed and the PI controller would be able to provide
improved results.
Due to the many issues encountered and the lack of time, it was not possible to perform the
real world tests. These represent a fundamental weight in the ability to make any concrete claim
about the tested methods. What can be concluded from this work is that all methods provided
interesting results which makes them interesting to pursue with further investigation, and provides
a footing for future work.

44
Mälardalen University Master Thesis

11 Conclusion
In this thesis methods for automatic calibration and control of working hydraulics were investigated
and evaluated with the aim of removing the need for costly and manual calibrations. The research
questions this thesis aim to answer are;

RQ1: What methods for automatic calibration of hydraulics are available and applicable to con-
struction equipment vehicles?

RQ2: How do methods for automatic hydraulic calibration perform at controlling hydraulics in con-
struction equipment vehicles?

In order to answer RQ1, a literature review was performed and summarised in the related work
presented in Section 4. It was presented within literature that great focus is on learning the input-
output inverse model of the plant. Another topic of interest is seen in using the Recursive Least
Square method for achieving this, but also other method such as those using neural networks could
be found. PID controllers were also often seen in literature, where different methods of tackling
the non-linearity of the system were used.
RQ2 was unable to be completely answered as the evaluation could not be extended to cover an
accurate enough representation of the machine to be tested. This was aimed to be answered with
real target machine evaluations and the simulation results as well as their discussions in Section
8 and 10. A missing real target machine evaluation and a proper evaluation of the methods
applicability for the machine’s real environment, which includes weight on the boom, pressure in
the system, current angle of the boom and engine RPM, were not performed which makes any
concrete statements unwarranted. The thesis did however indicate that the methods evaluated
had potential, but still have room to grow.

45
Mälardalen University Master Thesis

12 Future Work
The research sparked a lot of interests to expand the scope, being ways of evaluation or control
strategies. The area of hydraulic control was tested and evaluated for the GET lifting and lowering
actions, but the other hydraulic actions or systems on a wheel loader and similar machines are not
properly investigated in this thesis. A future work could be to increase the evaluation of the control
strategies to cover tilting, steering as well as other machines such as excavators and articulated
haulers. Additionally, other and improved methods of evaluation would be investigated as well
as more accurate simulations. Methods such as rise time is worth investigating as responsiveness
is an important goal for these kind of vehicles. The simulations could also be expanded upon in
order to capture the real behaviour of the machine by not limiting the simulation to speed, but
also taking into account the current GET position in order for proper simulation of retardation,
speed and weight.
One of the most important tasks that was cut due to time constraints is the testing of the
investigated methods on the real target machine. The solutions were implemented for real target
hardware and were attempted to be tested with the use of the Speedgoat, but due to problems
in signal delays, the task had to be cut out of the scope. The real target testing is an important
task that should definitely be followed up on in any future work, since the admittedly limited
simulations might not have been able to properly display the system.
It should be worth reflecting on the direction the thesis took, which instead of trying to automate
the tedious parts of the existing solution, focused entirely towards trying to replace the existing
solution all together. In the future, methods towards improving existing solutions should be
considered more thoroughly.
Additionally, further improvements to the control strategy should be considered. Current
solutions are not perfect, where even the method deemed best still suffers from some spikes in
speed when performing drastic changes in command. Further improvements to the tuning of the
PI controller should be investigated as it might provide an additional increase in performance. The
adaptive methods are also subject to further improvements, where they currently are unable to
learn the dynamics of the plant and are thus in risk of skewing the inverse or control model of
the system. The adaptive methods could also be further improved upon by allowing additional
input data to be used for learning. Currently both implementations utilising the NLPN use only
one input being command or speed. For further increase in accuracy, additional inputs, such as
pressure, engine RPM and load weight could be considered. The pressure of the system is affected
by the RPM of the engine as well as other components. A sensor measuring these inputs could
help increase controllability by reducing overfitting where the same command produce two different
speeds due to system pressure and load weight. A possible extension of such systems could also
be investigated as a way for the machine to self diagnose the hydraulic system.
The addition of retardation is also a task that needs to be considered in the future. The
retardation helps slow down the GET when reaching the mechanical limit in order to reduce a
hard hammer action. It is important to investigate methods of keeping this same functionality
intact in order to not diminish any strength or selling points of the machines.
The Max Speed block could also be investigated and further improved upon. Current method
of realising the maximum speed is far from elegant and the method of relying on oscillations and
a moving average to increase the speed are non optimal. Methods that make use of the active
response could be investigated in order to provide more reliable results.
Lastly the use of valve position sensors should be investigated as they in theory could provide a
solution to a lot of different problems. The position sensors such as the ones explained in [47, 48],
are part of the hydraulic valves and returns a value related to the position of the spool inside
valve. This would directly translate to the opening of the valve which in turn leads to its flow
rate and the speed of the GET. These sensors are not affected by either pressure in the system,
weight on the GET nor the engine RPM and does this while providing a bounded maximum value.
These valves and their sensors are able to simplify the problem of control, but does so at a greater
financial cost. The valves were confirmed to be testable during this thesis, but due to the cost of
them, focus was instead put on solutions using existing hardware.

46
Mälardalen University Master Thesis

ACKNOWLEDGEMENTS
We would like to say our thanks to everyone who helped us during this thesis. Our thesis
supervisors Dr. Alessandro V. Papadopoulos and Dr. Saad Mubeen of the IDT department at
Mälardalen University Sweden who always offered us help and guidance whenever we were unsure.
Our supervisor Lars-Erik Larsson at Volvo CE who always answered any questions we had and
always managed to find time to help us out whenever asked. We would also like to thank Per
Verner at Volvo CE, for not only allowing us to attend the training in operating the wheel
loaders, travelling and experiencing the factory in which the machines are produced, but also the
hospitality. We would like to generally thank everyone at Volvo CE for their kindness and help
during our stay at the company. It was great fun listening to all experiences and the shared
knowledge as well as driving the machines with everyone.
A special thanks is in order for Dr. Patrick Opdenbosch, who so kindly offered us finished
implementation as well as guidance which were of great help in the process of this thesis.
Finally we would like to thank our families and friends for the support.

47
Mälardalen University Master Thesis

References
[1] S. H. Park, K. Alam, Y. M. Jeong, C. D. Lee, and S. Y. Yang, “Modeling and simulation of
hydraulic system for a wheel loader using AMESim,” 2009 Iccas-Sice, pp. 2991–2996, 2009.
[2] M. Cobo, R. Ingram, and S. Cetinkunt, “Modeling, identification, and real-time control of
bucket hydraulic system for a wheel type loader earth moving equipment,” Mechatronics,
vol. 8, no. 8, pp. 863–885, 1998.
[3] S. Sarata, Y. Weeramhaeng, and T. Tsubouchi, “Approach path generation to scooping po-
sition for wheel loader,” in Proceedings - IEEE International Conference on Robotics and
Automation, 2005.
[4] Press Release, “Building the world we want to live in: Volvo Construction Equipment unveils
futuristic innovations to drive sustainability and change,” https://www.volvoce.com/global/
en/news-and-events/news-and-press-releases/2016/building-the-world-we-want-to-live-in/,
2016, [Online; Accessed 15 March - 2018].
[5] Press Information, “EX2: Prototype electric excavators,” https://www.volvoce.com/global/
en/this-is-volvo-ce/what-we-believe-in/innovation/prototype-electric-excavator/, 2017, [On-
line; Accessed 3 May - 2018].
[6] Press Information, “Volvo CE unveils 100% electric compact excavator prototype,” https:
//www.volvoce.com/-/media/volvoce/global/global-site/news-and-events/images/2017/
volvo-ce-unveils-ex2-prototype-at-volvo-group-innovation-summit.pdf?la=en&v=XRU2Pw,
2017, [Online; Accessed 3 May - 2018].
[7] J. Watton, Fundamentals of fluid power control. Cambridge University Press, 2009.
[8] P. Opdenbosch, “Digital Hydraulic Actuator Control Using an Electro-Hydraulic PoppetValve
(EHPVTM),” pp. 1–7, 2003.
[9] Tom M. Mitchell, Machine learning, 1st ed. McGraw-Hill Science/Engineering/Math, 1997.
[10] K. J. Åström and R. M. Murray, Feedback Systems: An Introduction for Scientists and Engi-
neers, 2008, vol. 36, no. 4.
[11] M. Araki, “PID control,” Control systems, robotics and automation 2, vol. II, pp. 1–23, 2002.
[12] D. C. Montgomery, E. A. Peck, and G. G. Vining, An Introduction to Linear Regression
Analysis, fifth edit ed. John Wiley & Sons, 2012.
[13] T. Hastie, R. Tibshirani, and J. Friedman, The Elements of Statistical Learning. Springer,
2009, vol. 27, no. 2.
[14] P. Opdenbosch, “Auto-Calibration and Control Applied To Electro-Hydraulic Valves,” Ph.D.
dissertation, Georgia Institute of Technology, 2007.
[15] P. Opdenbosch, N. Sadegh, W. Book, T. Murray, and R. Yang, “Modelling an electro-hydraulic
poppet valve,” International Journal of Fluid Power, vol. 10, no. 1, pp. 7–15, 2009.
[16] P. Opdenbosch, N. Sadegh, W. Book, and A. Enes, “Auto-calibration based control for inde-
pendent metering of hydraulic actuators,” in Proceedings - IEEE International Conference on
Robotics and Automation, 2011, pp. 153–158.
[17] P. Opdenbosch, N. Sadegh, and W. Book, “Intelligent controls for electro-hydraulic poppet
valves,” Control Engineering Practice, vol. 21, no. 6, pp. 789–796, 2013.
[18] N. Sadegh, “A Perceptron Network for Functional Identification and Control of Nonlinear
Systems,” IEEE Transactions on Neural Networks, vol. 4, no. 6, pp. 982–988, 11 1993.
[19] N. Sadegh, “A Nodal Link Perceptron Network with Applications to Control of a Nonholo-
nomic System,” IEEE Transactions on Neural Networks, vol. 6, no. 6, pp. 1516–1523, 1995.

48
Mälardalen University Master Thesis

[20] K. S. Narendra and K. Parthasarathy, “Identification and control of dynamical systems using
neural networks,” IEEE Transactions on Neural Networks, vol. 1, no. 1, pp. 4–27, 1990.
[21] P. Opdenbosch, N. Sadegh, and W. Book, “Learning Control Applied to Electro-Hydraulic
Poppet Valves,” pp. 1525–1532, 2008.
[22] J. L. Pfaff and K. A. Tabor, “Velocity based electronic control system for operating hydraulic
equipment,” May 11 2004, US Patent 6,732,512.
[23] A. A. Aly, “PID Parameters Optimization Using Genetic Algorithm Technique for Electrohy-
draulic Servo Control System,” Intelligent Control and Automation, vol. 02, no. 02, pp. 69–76,
2011.
[24] G. Liu and S. Daley, “Optimal-tuning nonlinear PID control of hydraulic systems,” Control
Engineering Practice, vol. 8, no. 9, pp. 1045–1053, 2000.
[25] Z. Liu, “Self-tuning control of electrical machines using gradient descent optimization,” Opti-
mal Control Applications and Methods, vol. 28, no. 2, pp. 77–93, 3 2007.
[26] A. O’Dwyer, Handbook of PI and PID Controller Tuning Rules. London, UK: Imperial
College Press, 2009.
[27] A. V. Papadopoulos and A. Leva, “Antiwindup-aware PI autotuning,” in Proceedings IFAC
Conference on Advances in PID Control, vol. 2. IFAC, 2012, pp. 554–559.
[28] J. Berner, T. Hägglund, and K. J. Åström, “Asymmetric relay autotuning practical features
for industrial use,” Control Engineering Practice, vol. 54, pp. 231–245, 2016.
[29] O. Arrieta, A. Visioli, and R. Vilanova, “PID autotuning for weighted servo/regulation control
operation,” Journal of Process Control, vol. 20, no. 4, pp. 472–480, 2010.
[30] A. Leva, S. Negro, and A. V. Papadopoulos, “PI/PID autotuning with contextual model
parametrisation,” Journal of Process Control, vol. 20, no. 4, pp. 452–463, 2010.
[31] A. Leva and A. V. Papadopoulos, “Disturbance rejection in autotuners: an assessment method
and a rule proposal,” in American Control Conference (ACC), Jul. 2015, pp. 2876–2881.
[32] J. m. Zheng, S. d. Zhao, and S. g. Wei, “Application of self-tuning fuzzy PID controller for
a SRM direct drive volume control hydraulic press,” Control Engineering Practice, vol. 17,
no. 12, pp. 1398–1404, 2009.
[33] Ş. Çetin and A. V. Akkaya, “Simulation and Hybrid Fuzzy-PID control for positioning of a
hydraulic system,” Nonlinear Dynamics, vol. 61, no. 3, pp. 465–476, 2010.
[34] R. Ghazali, Y. M. Sam, M. F. Rahmat, and Zulfatman, “On-line identification of an electro-
hydraulic system using recursive least square,” SCOReD2009 - Proceedings of 2009 IEEE
Student Conference on Research and Development, no. SCOReD, pp. 471–474, 2009.
[35] R. Ghazali, Y. M. Sam, M. F. Rahmat, and Zulfatman, “Open-loop and closed-loop recursive
identification of an electro-hydraulic actuator system,” 2010 IEEE Conference on Robotics,
Automation and Mechatronics, RAM 2010, vol. d, pp. 285–290, 2010.
[36] R. Ghazali, Y. M. Sam, M. F. Rahmat, K. Jusoff, and A. W. I. M. Hashim, “Self-Tuning Con-
trol Of An Electro-Hydraulic System,” International Journal on Smart Sensing and Intelligent
Systems, vol. 4, no. 2, pp. 189–204, 2011.
[37] A. R. Plummer and N. D. Vaughan, “Robust adaptive control for hydraulic servosystems,”
Journal of Dynamic Systems, Measurement, and Control, vol. 118, no. June 1996, pp. 237–244,
1996.
[38] C. Kaddissi, J.-P. Kenné, and M. Saad, “Identification and real-time control of an electrohy-
draulic servo system based on nonlinear backstepping,” Mechatronics, IEEE/ASME, vol. 12,
no. 1, pp. 12–22, 2007.

49
Mälardalen University Master Thesis

[39] T. G. Ling, M. F. Rahmat, and A. R. Husain, “System identification of electro-hydraulic ac-


tuator system using ANFIS approach,” Jurnal Teknologi (Sciences and Engineering), vol. 67,
no. 5, pp. 41–47, 2014.
[40] R. Ghazali, C. C. Soon, H. I. Jaafar, Y. M. Sam, and M. F. Rahmat, “System identification
of electro-hydraulic actuator system with pressure and load effects,” Proceedings - 4th IEEE
International Conference on Control System, Computing and Engineering, ICCSCE 2014, no.
November, pp. 256–260, 2014.

[41] D. Stephenson, “Auto-calibration of a solenoid operated valve,” Jun. 4 2002, US Patent


6,397,655.
[42] G. Dodig-Crnkovic, “Scientific Methods in Computer Science.”
[43] N. Sadegh, “Nonlinear identification and control via neural networks,” in Winter annual
meeting of the American society of mechanical engineers, vol. 33, 1991, pp. 46–56.
[44] D. Xue and Y. Chen, System Simulation Techniques with MATLAB and Simulink. John
Wiley & Sons, 2013.
[45] MathWorks, “Documentation: pchip,” https://mathworks.com/help/matlab/ref/pchip.html,
[Online; Accessed 7 May - 2018].

[46] MathWorks, “Documentation: polyfit,” https://mathworks.com/help/matlab/ref/polyfit.


html, [Online; Accessed 10 May - 2018].
[47] C. Wood, “Valve position sensor,” Nov. 25 1997, US Patent 5,691,813.
[48] Y. Beyrak and J. C. Shader, “Hydraulic valve with a position sensor,” Sep. 14 2004, US Patent
6,789,570.

50
Mälardalen University Master Thesis

Appendix
A Actual Data

Result of average error for all methods exercising the Lift command.

Lift Machine A Machine B Machine C Average


Existing Method 33.20 32.70 25.86 30.59
PI + Line 9.12 9.31 8.43 8.95
PI + Curve 15.32 12.98 15.36 14.55
PI + AI 6.91 7.91 7.34 7.39
PI + AI Run 2 6.82 7.82 7.30 7.31
NLPN 37.50 29.93 44.63 37.36
NLPN Run 2 37.86 31.40 38.97 36.08
Average 20.96 18.87 21.13 20.32

Result of average error for all methods exercising the Lower command.

Lower Machine A Machine B Machine C Average


Existing Method 64.53 95.37 66.33 75.41
PI + Line 9.67 10.73 10.41 10.27
PI + Curve 9.56 10.73 10.75 10.35
PI + AI 22.48 20.31 22.76 21.85
PI + AI Run 2 22.55 19.45 22.82 21.61
NLPN 17.39 18.56 17.54 17.83
NLPN Run 2 18.18 19.38 18.31 18.62
Average 23.48 27.79 24.13 25.13

Result of the average for both Lifting and Lowering action by every method.

Total Lift Lower Average


Existing Method 30.59 75.41 53.00
PI + Line 8.95 10.27 9.61
PI + Curve 14.55 10.35 12.45
PI + AI 7.39 21.85 14.62
PI + AI Run 2 7.31 21.61 14.46
NLPN 37.36 17.83 27.59
NLPN Run 2 36.08 18.62 27.35
Average 20.32 25.13 22.73

51

You might also like