You are on page 1of 17

sensors

Article
A Novel Method to Enhance Pipeline Trajectory
Determination Using Pipeline Junctions
Hussein Sahli * and Naser El-Sheimy
MMSS Research Group, Geomatics Engineering Department, University of Calgary,
2500 University Dr. NW. Calgary, AB T2N 1N4, Canada; elsheimy@ucalgary.ca
* Correspondence: hasahli@ucalgary.ca; Tel.: +1-587-891-6494

Academic Editor: Gert F. Trommer


Received: 27 January 2016; Accepted: 13 April 2016; Published: 21 April 2016

Abstract: Pipeline inspection gauges (pigs) have been used for many years to perform various
maintenance operations in oil and gas pipelines. Different pipeline parameters can be inspected
during the pig journey. Although pigs use many sensors to detect the required pipeline parameters,
matching these data with the corresponding pipeline location is considered a very important
parameter. High-end, tactical-grade inertial measurement units (IMUs) are used in pigging
applications to locate the detected problems of pipeline using other sensors, and to reconstruct
the trajectories of the pig. These IMUs are accurate; however, their high cost and large sizes limit
their use in small diameter pipelines (8 or less). This paper describes a new methodology for
the use of MEMS-based IMUs using an extended Kalman filter (EKF) and the pipeline junctions
to increase the position parameters accuracy and to reduce the total RMS errors even during the
unavailability of above ground markers (AGMs). The results of this new proposed method using a
micro-electro-mechanical systems (MEMS)-based IMU revealed that the position RMS errors were
reduced by approximately 85% compared to the standard EKF solution. Therefore, this approach will
enable the mapping of small diameter pipelines, which was not possible before.

Keywords: pipeline junctions; Kalman Filter; inertial measurement unit; PLJ; INS; PIG

1. Introduction
Advances in micro-electromechanical-systems (MEMS) technology combined with the
miniaturization of electronics, have made it possible to produce low cost and lightweight chip-based
inertial sensors. These chips are small, lightweight, reliable and they consume very little power.
They have therefore found a wide spectrum of applications in the automotive sector and other
industrial applications. MEMS technology, therefore, can be used to develop navigation systems that
are inexpensive, small, and consume low (microwatt) power. The attractive advantages of MEMS
technology have led to remarkable research progress in the field of MEMS inertial sensors. However,
on the negative side, the performance currently achieved by these low cost sensors is relatively poor
due to their sensor errors. The goal of this paper is henceforth to introduce new constraints for pipeline
navigation to increase the position parameters accuracy and reduce the total RMS.
Pipelines are the lifelines of a dynamic countrys infrastructure; they provide fuel, water, and
all kinds of other needs that touch millions of lives. In addition, they represent one of the safest
transportation methods available for crude oil, natural gas, and chemical fluids; they provide
a transport medium with speed, efficiency and reliability. Furthermore, they are considered an
eco-friendly option. So-called smart pipeline inspection gauges (pigs, Figure 1) commonly carry out
inspection and fault identification of these pipelines.

Sensors 2016, 16, 567; doi:10.3390/s16040567 www.mdpi.com/journal/sensors


Sensors 2016, 16, 567 2 of 17
Sensors 2016, 16, 567 2 of 16

Sensors 2016, 16, 567 2 of 16

Figure 1. Smart Pipeline Inspection Gauge (Nord Stream AG).


Figure 1. Smart Pipeline Inspection Gauge (Nord Stream AG).
Pigs are devices/tools that can be inserted into the pipeline and travel throughout the length of
the pipeline,
Pigs are devices/tools driven forward that by canthe bedifferential
inserted into pressure across the
the pipeline and tool [1,2].throughout
travel Pigs carry embedded
the length of
computers and sensors, to acquire information and to perform various maintenance operations in a
the pipeline, driven forward by the differential pressure across the tool [1,2]. Pigs carry embedded
pipeline. The piggingFigure procedure 1. Smart Pipelinethe
requires Inspection
pipelineGauge
contents(Nord toStream
be flowing AG). to facilitate the pigs
computers and sensors, to acquire information and to perform various maintenance operations in
movement. In general, the pigs total journey length can vary from hundreds of meters to hundreds
a pipeline. PigsThe
of kilometers arepigging
devices/toolsprocedure
[3]. A varietythat can
of methods
requires
be inserted the pipeline
are usedinto
contents
the pipeline
for pipeline andtotravel
inspection
be flowing
suchthroughout
to facilitate
as ultrasonic the length the
techniques, of pigs
movement.
echo sounding, radiography, and cameras. In the past, the position determination of the pig used to of
the In
pipeline, general,
driven the pigs
forward total
by the journey
differential length can
pressure vary
across fromthe hundreds
tool [1,2]. of
Pigsmeters
carry to hundreds
embedded
computers
kilometers
be achieved[3]. and
Awith sensors,
varietya setof oftomethods
acquire wheels
velocity information
are used and
for
(odometers). to perform
pipeline various
Theseinspection
wheels maintenance
such the
provide operations
as ultrasonic
longitudinal in a
techniques,
speed
pipeline.
echo sounding,
of the pig thatThe pigging
radiography, procedure
can be integrated and cameras. requires
to provide the
Inthe pipeline
thedistance
past, the contents
position
traveled to be flowing
determination
along to
the pipeline. of facilitate
theOptic
Fiber the pigs
pig used
Gyroto be
movement.
achieved(FOG)- with aInset
and/or general,
Ring theGyro
Laser
of velocity pigs total (odometers).
journeyhigh-end
(RLG)-based
wheels length These
can vary
inertial from hundreds
navigation
wheels provide of meters
systems
the has beento hundreds
longitudinal proposed
speed of
of
to kilometers
be included [3].inAthe variety of methods
positioning solution are used[4], for pipeline
which is inspection
currently being such
used as for
ultrasonic
this techniques,
purpose in theGyro
the pig that can be integrated to provide the distance traveled along the pipeline. Fiber Optic
echo
large sounding,
diameter radiography,
inspection tools.and cameras. In the past, the position determination of the pig used to
(FOG)- and/or Ring Laser Gyro (RLG)-based high-end inertial navigation systems has been proposed
be achieved
This work withaddresses
a set of velocity
the issue wheels (odometers).
of providing These wheels
a MEMS-based aided provide
inertial the longitudinal speed
to beofincluded
the pig in the
that can be positioning
integrated solution
to provide [4], which istraveled
currently being usednavigation
for this Optic system
purpose to
in the
replace the current high-end tactical gradethe distance
IMUs. MEMS-based along
inertial the pipeline.
sensors areFiber
characterized Gyro by
large(FOG)-
diameter inspection
and/or Ringand Lasertools.
Gyro (RLG)-based high-end
large uncertainties high noise (i.e., bias, scale factorinertial navigation systemsTherefore,
and non-orthogonality). has been proposed
the errors
This
to be work
included addresses
in the the issue
positioning of providing
solution [4], a
which MEMS-based
is currently
in position, velocity and attitude of the motion pig grow rapidly in standalone mode. Therefore,
aided
being usedinertial
for navigation
this purpose system
in the to
replacelarge the
aiding currentinspection
diameter
navigation high-end
systemstools. tacticalessential
become grade IMUs. to solve MEMS-based
the unpredictable inertial
problems sensors are errors
of sensor characterized
and
by large This work
uncertainties addresses
and the
high issue
noise of providing
(i.e., bias, a MEMS-based
scale factor
noises [1]. The aided information will be derived mainly from odometer sensors, pipeline modeling and aided inertial
non-orthogonality). navigation system
Therefore, to the
errorsreplace
in the
position, current
velocity high-end
and
and Global Navigation Satellite System (GNSS). tactical
attitude grade
of the IMUs.
motion MEMS-based
pig grow inertial
rapidly sensors
in are
standalone characterized
mode. by
Therefore,
aiding large uncertainties
Due
navigation to the systems and high
distance become noiseessential
underwater (i.e.,orbias, scale
underground,
to factor
solve theand
and/ornon-orthogonality).
the material
unpredictable that Therefore,
problems the of
pipeline
sensortheiserrors
made and
errors
in position, velocity and attitude of the motion pig grow rapidly in standalone mode. Therefore,
noisesof,[1].it isThe
not aided
possible for the pig towill
information communicate
be deriveddirectly mainly with
from theodometer
outside world. The collected
sensors, pipelinedata is
modeling
aiding
saved navigation
internally systems
and becomelater
processed essential to solve the unpredictable
(post-processed). The process problemsthat
requires of sensor
extra errors and
navigation
and Global Navigation Satellite System (GNSS).
noises
sensors[1]. beTheused aided information
to improve the will be derivedofmainly
performance the pigsfrom odometer sensors, methods.
pipeline modeling
Due
and to the
Global distance
Navigation underwater
Satellite or underground,
System (GNSS). and/orlocationthe material estimation
that the pipeline A wheel
is made of,
odometer, for instance, can measure traveled distances (by counting the number of wheel
it is not possible
Due to the for the pig
distance to communicate
underwater directly with the outside world. The collected data is saved
revolutions) that are translated later or into underground, and/or the material
velocity measurements. that the pipeline
These measurements can isbemade
used
internally
of, it isand
as external
processed
not possible
updates for
later
for the
the pig
(post-processed).
to communicate
navigation algorithms.
The
directly process
Figurewith therequires
outside
2 illustrates
that extra
the world.
main parts The of navigation
collected datasensors
the navigation is
be usedsaved to improve
internally the
and performance
processed later of the pigs
(post-processed). location The estimation
process
sensors of a typical pig tool. Supports are mainly the front and end parts that provide the sealing for methods.
requires that A
extrawheel odometer,
navigation
sensors
for instance,
the main be
can used
measure
parts. to improve
These traveled
supports thehaveperformance
distancesnominal (byof the pigs
counting
diameters thelocation
larger thanestimation
number theofpipewheel methods. toAproduce
revolutions)
diameter wheel
that are
odometer,
translated
efficientlater for instance,
into [2].
sealing velocity
The pig can measure
measurements.
body is contained traveled
These distances
measurements
between (by counting
the two supports. the number
can be used as external updates of wheel for
revolutions)
the navigation that are translated
algorithms. Figure 2later into velocity
illustrates measurements.
the main parts of the These measurements
navigation sensorscan of abetypical
used pig
as external updates for the navigation algorithms. Figure 2 illustrates the main parts of the navigation
tool. Supports are mainly the front and end parts that provide the sealing for the main parts. These
sensors of a typical pig tool. Supports are mainly the front and end parts that provide the sealing for
supports have nominal diameters larger than the pipe diameter to produce efficient sealing [2]. The
the main parts. These supports have nominal diameters larger than the pipe diameter to produce
pig body is contained
efficient sealing [2].betweenThe pig body the two supports.
is contained between the two supports.

Figure 2. Main pig tool components.

Figure 2. Main pig tool components.


Figure 2. Main pig tool components.
Sensors 2016, 16, 567 3 of 17

An above ground marker (AGM) is another device that can be installed on the surface of the
ground above the pipeline. This device detects and records the passage of the pig in the pipeline.
AGMs provide the navigation coordinates of their position (latitude, longitude, and height) along with
the pigs time passage. This information is used as a coordinate update (typically called CUPT) in the
estimation algorithm. The cost of these devices often minimizes their use. Usually, these AGMs are
installed every 13 km [5] when the pig uses high-end tactical grade IMUs.
A nonlinear
Sensors 2016,sensor
16, 567 fusion algorithm has been applied in [6] to estimate the trajectory 3 of 16of pipeline

pigs. IMUs along with odometers and AGMs are the sensors that have been used for navigation
An above ground marker (AGM) is another device that can be installed on the surface of the
purposes.ground
The filterabovestates have been
the pipeline. propagated
This device detects andusing thethe
records IMU withofan
passage theupdate from
pig in the the odometer
pipeline.
while the AGM is not reached.
AGMs provide The coordinates
the navigation AGM performs of theirposition updateslongitude,
position (latitude, when the andpig passes
height) along underneath.
with the pigs time passage. This information is used as a coordinate update
Similarly, in [7], an IMU along with an odometer and reference GPS have been used to simulate (typically called CUPT)
in the estimation algorithm. The cost of these devices often minimizes their use. Usually, these AGMs
pig data. The results shows that by decreasing the position reference updates, the accuracy increased
are installed every 13 km [5] when the pig uses high-end tactical grade IMUs.
due to the propagation
A nonlinear of IMU
sensor errors.
fusion algorithm has been applied in [6] to estimate the trajectory of pipeline
To allow proper
pigs. IMUs alongmaintenance
with odometers operations
and AGMs and to sensors
are the reconstruct thebeen
that have pipeline
used fortrajectory
navigation in certain
projects, apurposes.
positionThe filter statestechnique
referencing have been propagated
is required using the IMU
to find the with
exactancoordinates
update from the odometer
of the defective parts
while the AGM is not reached. The AGM performs position updates when the pig passes underneath.
detected by the pigs sensors. The core of this work, therefore, is to improve the accuracy of the final
Similarly, in [7], an IMU along with an odometer and reference GPS have been used to simulate
reconstructed trajectories
pig data. The resultsby introducing
shows new sources
that by decreasing the positionof reference
information and
updates, theadding
accuracynew constraints to
increased
the estimation
due totechnique.
the propagation of IMU errors.
Generally, To the
allow pigproper maintenance
carries inertialoperations
sensors and to reconstruct the
(accelerometers andpipeline trajectory inalong
gyroscopes), certainwith other
projects, a position referencing technique is required to find the exact coordinates of the defective
sensors, to assess its position coordinates. To minimize possible cumulative errors arising from the
parts detected by the pigs sensors. The core of this work, therefore, is to improve the accuracy of the
MEMS-IMU, final the sensor fusion
reconstructed technique,
trajectories which involves
by introducing new sources pairing inertial sensors
of information and addingwithnew non-inertial
sensors, isconstraints
implemented. An odometer
to the estimation and AGM, employed as non-inertial sensors, are used to update
technique.
the algorithm.Generally, the pig carries inertial sensors (accelerometers and gyroscopes), along with other
sensors, to assess its position coordinates. To minimize possible cumulative errors arising from the
Different estimation techniques can be used in such applications. The Extended Kalman Filter
MEMS-IMU, the sensor fusion technique, which involves pairing inertial sensors with non-inertial
(EKF) [8,9] is commonly
sensors, is implemented.used An forodometer
sensor andfusion
AGM, integration
employed asinnon-inertial
navigation applications,
sensors, are used to especially
for nonlinear
updatedynamic models. It has been selected to demonstrate the newly proposed algorithm
the algorithm.
in this paper.Different
In Sectionestimation
2, the techniques
idea ofcan thebenew
used in such applications.
algorithm will beThe Extended Kalman
introduced. TheFilter
Methodology
(EKF) [8,9] is commonly used for sensor fusion integration in navigation applications, especially for
section (Section 3) will demonstrate the algorithm implementation, and the results
nonlinear dynamic models. It has been selected to demonstrate the newly proposed algorithm in this
will be discussed in
Section 4. paper. In Section 2, the idea of the new algorithm will be introduced. The Methodology section
(Section 3) will demonstrate the algorithm implementation, and the results will be discussed in
2. New Information
Section 4.

2. New
2.1. Pipeline Information
Junctions
2.1. Pipeline
Pipelines consist of multiple pieces of pipeline and fittings (bends, T-connections, valves . . . etc.).
Junctions
The pipeline pieces are fabricated
Pipelines consist inpieces
of multiple straight-line
of pipelineshapes. Different
and fittings methods can
(bends, T-connections, be
valves used
etc.).to connect
The pipeline pieces are fabricated in straight-line shapes. Different methods can be used
these pipeline pieces with each other, such as push on, flanges, and welding techniques, as shown in to connect
these pipeline pieces with each other, such as push on, flanges, and welding techniques, as shown in
Figure 3. In all cases, a small gap tolerance will appear between two pieces.
Figure 3. In all cases, a small gap tolerance will appear between two pieces.

(a) (b)

(c)
Figure 3. Pipeline joints: (a) flange type; (b) push-on type; (c) welding type.
Figure 3. Pipeline joints: (a) flange type; (b) push-on type; (c) welding type.
Sensors 2016, 16, 567 4 of 17
Sensors 2016, 16, 567 4 of 16
Sensors 2016, 16, 567 4 of 16
The
The connection
connection point
point between
between two two pipelines
pipelines is is called
called the
the pipeline
pipeline junction/joint. These junctions
junction/joint. These junctions
can
can bebe detected
Thedetected
connectionusing
using magnetic
point between
magnetic flux
flux leakage
twoleakage
pipelines(MFL) and
is called
(MFL) andtheelectromagnetic acoustic
pipeline junction/joint.
electromagnetic transducers
These junctions
acoustic transducers for
for
pipeline
pipeline analysis
can be detected purposes.
analysisusing However,
magnetic
purposes. due to
flux leakage
However, due to sudden
suddenand
(MFL) vibrations of the
the pig
electromagnetic
vibrations of pigacoustic
while
while passing through
transducers
passing throughfor
pipeline
pipeline junctions,
pipeline junctions, INS
analysis purposes.sensors
INS sensors are
However,sensitive enough
due enough
are sensitive to sudden to capture these
vibrations
to capture these junctions.
ofjunctions. Sample
the pig while
Sample accelerometer
passing through
accelerometer
pipeline
pipeline data outputs
junctions, INS for a MEMS-based
sensors are sensitive IMU (SiIMU02)
enough to and
capture a high-end
these tactical
junctions.
pipeline data outputs for a MEMS-based IMU (SiIMU02) and a high-end tactical grade IMU (LN200) grade
Sample IMU (LN200)
accelerometer
are
are illustrated
pipeline
illustrated in Figures
data outputs
in for a4
Figures and
and 55,respectively.
4 MEMS-based As
As seen,
IMU (SiIMU02)
respectively. seen, repetitive
and pattern
a high-end
repetitive pattern spikes
tactical
spikes appear.
grade IMUStudying
appear. (LN200)
Studying
different IMUs
are illustrated
different signals
IMUsinsignals collected
Figurescollected from
4 and 5, from different
respectively. pigs for
differentAspigs different
seen, pipelines
forrepetitive trajectories
differentpattern
pipelinesspikes shows a repetitive
appear. Studying
trajectories shows a
signal/pattern
different IMUs in all the
signals accelerometers
collected from signals.
different Taking
pigs into
for consideration
different pipelines
repetitive signal/pattern in all the accelerometers signals. Taking into consideration the speed the speed of the
trajectories pig,
of the
shows thea
distance
repetitive
pig, between two
signal/pattern
the distance spikes
between is
in all equal
twothespikes to the length
accelerometers of
is equal tosignals.the fitting
Taking
the length or the
of into pipeline pieces.
consideration
the fitting Therefore, of the
the speedpieces.
or the pipeline the
pattern
pig, therepresents
distance the
betweenpipeline
two junction
spikes is(PLJ).
equal Such
to information
the length of is
theused as
fitting
Therefore, the pattern represents the pipeline junction (PLJ). Such information is used as a new a new
or the constraint
pipeline to the
pieces.
estimation
Therefore, to
constraint techniques
the
thepattern (as
estimation explained
represents
techniques in Section
the pipeline 3.2).
junction
(as explained (PLJ). 3.2).
in Section Such information is used as a new
constraint to the estimation techniques (as explained in Section 3.2).

Figure 4. Accelerometer outputMEMS (SiIMU02).


Figure 4. Accelerometer outputMEMS (SiIMU02).
Figure 4. Accelerometer outputMEMS (SiIMU02).

Figure 5. Accelerometer outputLN200.


Figure 5. Accelerometer outputLN200.
Figure 5. Accelerometer outputLN200.
2.2. Detecting Pipeline Junctions
2.2. Detecting Pipeline Junctions
To detect the spikes in the signal, different methods have been used in the signal processing
To detect
literature. the
In this spikes
paper, in the signal,
a discrete waveletdifferent methods(DWT)
transformation have been used
has been in the
used signalthese
to detect processing
spikes
literature. In this paper, a discrete wavelet transformation (DWT) has been used to detect
due to its simple implementation. The definition of wavelet transform can be written as: these spikes
due to its simple implementation. The definition of wavelet transform can be written as:
Sensors 2016, 16, 567 5 of 17

2.2. Detecting Pipeline Junctions


To detect the spikes in the signal, different methods have been used in the signal processing
literature. In this paper, a discrete wavelet transformation (DWT) has been used to detect these spikes
due to its simple implementation. The definition of wavelet transform can be written as:

1 ta
Sensors 2016, 16, 567 Xw pa, bq ? x ptq M dt 5 of 16 (1)
Sensors 2016, 16, 567 b b 5 of 16

Here x p.q is the input, and M p.q is the 1


mother The parameters paq is real number that
wavelet.
, = 1 (1)
, =
represent a time location. pbq is a positive real number that represents the scaling. Many (1) types of

Here . can
mother wavelets beinput,
is the used and . ispattern
in signal detection
the mother wavelet.applications,
The parameterssuch as the number
is real Haar basis
that and
represent . is location.
Here a time . is the mother
the input, andis a positive wavelet. The parameters is real number that
Mexican Hat. Figure 6 illustrates the MexicanrealHatnumber
motherthat represents
wavelet the scaling.
that has Many
the following types
model:of
represent a time location.
mother wavelets can be used isin asignal
positive real number
pattern detectionthat represents such
applications, the scaling. Manybasis
as the Haar typesand
of
mother wavelets can be used in signal pattern
Mexican Hat. Figure 6 illustrates the Mexican 5 detection
applications, such as the Haar basis and
2 4Hat mother2wavelet
wavelet2 that has the following model:
Mexican Hat. Figure 6 illustrates the
M Mexican 2t et that has the following model:
ptq ? Hat1mother (2)
23 (2)
=2 12 e
= 3 1 2 e (2)
3

Figure 6. Mexican Hat mother wavelet.


Figure6.6.Mexican
Figure Hatmother
Mexican Hat motherwavelet.
wavelet.
The Mexican Hat mother wavelet has been applied to detect the signal patterns (pipeline
The Mexican
junctions) as shownHat mother7. wavelet
in Figure For has
more has beenabout
details applied
the to detect
wavelet the signal patterns (pipeline
The Mexican Hat mother wavelet been applied to detect thedetection technique,
signal patterns please
(pipeline refer
junctions)
junctions)
to [1014].as shown in Figure 7. For more details about the wavelet detection technique, please refer
as shown in Figure 7. For more details about the wavelet detection technique, please refer to [1014].
to [1014].

Figure 7. Pattern detected using WL.


Figure 7. Pattern detected using WL.
Figure 7. Pattern detected using WL.
Since these patterns represent the pipeline junctions, a constraint is introduced here and called
Since these patterns represent
Pipeline Junction Constraint (PJC). This the pipeline
constraint junctions,
fixes botha constraint
the heading is introduced here and
and pitch angles called
during the
Pipeline
Since
movement Junction
theseinside Constraint
patterns (PJC).
represent
the pipeline piece This
the constraint
pipeline
(not fixes
during junctions, both
the junctions) the heading
a constraint and pitch angles
is introduced
[15]. New measurement during
herefor
model andthecalled
PJC
movement
Pipeline
will Junction inside
be introduced thein pipeline
Constraint Section piece
(PJC).
3.2. It is(not
This during the
constraint
noticeable that junctions)
fixes angle[15].
roll both the
is freeNew
headingmeasurement
to rotateand themodel
pitch
along angles for
pipeline PJC the
during
axis.
will be introduced
Therefore, rollthe
angle in Section 3.2.
will notpiece It is
be included noticeable that
in PJCthe roll angle
measurement is free to rotate along the pipeline axis.
movement inside pipeline (not during junctions) model.
[15]. New measurement model for PJC
Therefore,
Until roll
now, angle
we will not bethat
assumed includedthe in PJC between
period measurementtwo model.
junctions
will be introduced in Section 3.2. It is noticeable that roll angle is free torepresents
rotate alonga straight pipe. axis.
the pipeline
Until now,
However, due towe theassumed
fittings that bends),
(i.e., the period
this between twocannot
assumption junctions
be represents true
considered a straight
all the pipe.
time.
Therefore,
However,
roll angle will fittings
not be included in PJC assumption
measurement model.
Therefore, due to the
the PJC model will (i.e., bends), this
be supported by a bend detection cannot be considered
algorithm (BDA) totrue all the
detect the bends
time.
Therefore, the PJC model will be supported by a bend detection algorithm
and disable the PJC model during the bend periods. BDA is introduced in the next section. (BDA) to detect the bends
and disable
Finally,the
it isPJC model
useful during the
to mention bend
that anyperiods.
junctionBDA is introduced
detection functioninshould
the next
be section.
executed prior to
Finally, it is useful to mention that any junction detection function
the navigation offline process to save the pipeline junctions file. This file will be used should be executed prior to
as an input to
the navigation offline process
the navigation offline process. to save the pipeline junctions file. This file will be used as an input to
the navigation offline process.
Sensors 2016, 16, 567 6 of 17

Until now, we assumed that the period between two junctions represents a straight pipe. However,
due to the fittings (i.e., bends), this assumption cannot be considered true all the time. Therefore, the
PJC model will be supported by a bend detection algorithm (BDA) to detect the bends and disable the
PJC model during the bend periods. BDA is introduced in the next section.
Finally, it is useful to mention that any junction detection function should be executed prior to the
navigation offline process to save the pipeline junctions file. This file will be used as an input to the
navigation offline process.
Sensors 2016, 16, 567 6 of 16

2.3. Bend Detection Algorithm (BDA)


2.3. Bend Detection Algorithm (BDA)
Sensors 2016, 16, 567 ` 6 of 16
The used IMU has three gyroscopes that measure and record the angular rates , x, , y ,of
The used IMU has three gyroscopes that measure and record the angular rates
z of
pigs 2.3.
motion
pigsBend around
Detection
motion aroundthree axes
Algorithm x,
(BDA)
three axes y, and z, respectively. The axes are defined as shown in
, , and , respectively. The axes are defined as shown in Figure 8.Figure 8.
The x-axis angular
The x-axis raterate
angular px q measures
measuresthethe
rate change
rate changeofofthe
theroll
roll angle, while y and
angle, while and z measure
measure the
The used IMU has three gyroscopes that measure and record the angular rates , , of
rate change
the rate of the pitch
change of theand heading
pitch angles,
and heading respectively.
angles, respectively.
pigs motion around three axes , , and , respectively. The axes are defined as shown in Figure 8.
The x-axis angular rate measures the rate change of the roll angle, while and measure
the rate change of the pitch and heading angles, respectively.

Figure 8. Pig defined axes.


Figure 8. Pig defined axes.
To detect whether the pig is located inside a fitting (bend), the change in heading and/or pitch
Figure 8. Pig defined axes.
To detect
angles whether
of the the pig
pig in motion is located
should inside
not exceed a fitting
a certain (bend), the .change
threshold in heading
This threshold can beand/or
selectedpitch
byofsensor
angles the calibration.
pig in motion The changenot
should rate for both
exceed a the and
certain axes are
threshold pC monitored
th q. This at every
threshold epoch.
can be The
selected
To detect whether the pig is located inside a fitting (bend), the change in heading and/or pitch
change
by sensor of the angular velocity magnitude can be compared
the y threshold to the selected
and z axes are. This threshold . For
anglescalibration. The change
of the pig in motion shouldrate for both
not exceed a certain monitored atcan
threshold every epoch. The
be selected
simplicity,
change of the both values
angular are merged
velocity as follows:
magnitude can be compared to the selected threshold
by sensor calibration. The change rate for both the and axes are monitored at every epoch. th q. For
pCThe
simplicity,
changeboth values
of the are velocity
angular merged magnitude
as follows:can be compared to the selected threshold . For
= + (3)
simplicity, both values are merged as follows: b
Here is called a resultant angular Rrate. y2 ` the
Selecting 2
z threshold is the most important part in (3)
= + (3)
this method. By plotting different resultant angular rates for different IMUs, it has been noticed that
the best
Here Rvalue to select
is called a resultant is angular
the meanrate.
valueSelecting
of the static
theperiod (during
threshold the most
is the calibration time). part
important
Here is called a resultant angular rate. Selecting the threshold is the most important part in
Checking
in this method. theBy
condition
plotting ofdifferent
this threshold should
resultant be donerates
angular at every
for iteration and
different IMUs,before
it applying
has been the
noticed
this method. By plotting different resultant angular rates for different IMUs, it has been noticed that
PJC
that the constraints as shown in Figure 9.
the best value to
best value to select
select pCth qisisthe
themean
meanvalue
valueofof the
the static
static period
period (during
(during the calibration
the calibration time).time).
Checking the condition
Checking the conditionof this threshold
of this should
threshold bebe
should done
done atatevery
everyiteration
iterationand
and before
before applying the PJC
applying the
PJC constraints
constraints as shown as in
shown in Figure
Figure 9. 9.

Figure 9. Algorithm for corrected state estimation.

Figure 10 illustrates the values that have been calculated before compensating for gyro
Figure 9. Algorithm for corrected state estimation.
biases and scale factors. Threshold can for
Figure 9. Algorithm be corrected
selected as the estimation.
state mean value of all resultant angular
rates of and during the static period of the pig before it begins moving.
Figure 10 illustrates the values that have been calculated before compensating for gyro
biases and scale factors. Threshold can be selected as the mean value of all resultant angular
rates of and during the static period of the pig before it begins moving.
Sensors 2016, 16, 567 7 of 17

Figure 10 illustrates the R values that have been calculated before compensating for gyro biases
and scale factors. Threshold pCth q can be selected as the mean value of all resultant angular rates of y
and z during the static period of the pig before it begins moving.
Sensors 2016, 16, 567 7 of 16

Figure 10.
Figure 10. Selecting
Selecting threshold criteria.
threshold criteria.

3. Methodology
3. Methodology
To cater for all three-dimensional dynamics of the pig motion, a total of six sensors are used in
To cater for all three-dimensional dynamics of the pig motion, a total of six sensors are used in
a full IMU, which comprises three gyroscopes and three accelerometers. In addition to the IMU, the
a full IMU, which comprises three gyroscopes and three accelerometers. In addition to the IMU, the
odometer is used to measure the displaced travel distance of the pig. AGMs and their measurement
odometer is used to measure the displaced travel distance of the pig. AGMs and their measurement
model will be shown in this section, although the target is to use the fewest number of AGMs
model will be shown in this section, although the target is to use the fewest number of AGMs
as possible.
as possible.
3.1. Dynamic
3.1. Dynamic Error Model
Error Model
A MEMS-based
A MEMS-based IMU IMUwas wasthe
themain
mainsensor
sensorused
usedtotocollect
collectthe
the pigs
pigs motion
motion data.
data. EKF
EKF waswas used
used as
as an estimation technique to overcome the poor performance and non-linearity
an estimation technique to overcome the poor performance and non-linearity of the dynamic system of the dynamic
system
in in thisBoth
this work. work. Both dynamic
dynamic and measurement
and measurement models developed
models developed in this
in this section tosection
estimatetothe
estimate
states
the states of the system. The state vector to be estimated was designed to include the
of the system. The state vector to be estimated was designed to include the errors associated witherrors associated
withposition,
the the position, velocity,
velocity, attitude,
attitude, andand
the the stochastic
stochastic bias
bias errors
errors associatedwith
associated withthethegyroscopes
gyroscopes and
and
accelerometers. The
accelerometers. The state
state vector
vector was
was defined
defined asas follows
follows [16]:
[16]:
= T (4)
x r v bg ba (4)
where:
where:
Position error 3 1
Velocity
r Position p3 3 1q 1
error
error
Attitude error 3 1
v Velocity error p3 1q
Gyroscope bias error 3 1
Attitude error p3 1q
Accelerometer bias error 3 1 .
bg Gyroscope bias error p3 1q
The
ba dynamic modelbias
Accelerometer is non-linear
error p3 and
1q. can be represented in discrete form as follows [17,18]:
= , + , (5)
The dynamic model is non-linear and can be represented in discrete form as follows [17,18]:
where is the dynamic model, is the stochastic model, and is the process noise.
x
The linearized error state systemk`
model
1 f px
can , kq ` g px
k be expressed
k , kq was:
k (5)

= + (6)
where:
: is the 15 1 state vector
: is the 15 15 transition matrix
Sensors 2016, 16, 567 8 of 17

where f is the dynamic model, g is the stochastic model, and w is the process noise.
The linearized error state system model can be expressed as:

xk`1 k xk ` Gk wk (6)

where:

xk`1 : is the p15 1q state vector


k : is the p15 15q transition matrix
Gk : is the p15 1q noise distribution matrix
wk : is the unit-variance white Gaussian noise.

By applying Taylor series expansion and ignoring the higher order terms, the linearized system
model in the local level frame (LLF), represented as north, east, and down (NED), can be expressed
as follows: fi fi fi
I F1 0 0 0 rk r
0 I F 0 F3 ffi ffi ffi
2 ffi vk ffi v ffi
xk`1 0 F4 I F3 0 ffi ffi ` ffi wk (7)
ffi ffi ffi
ffi ffi ffi
0 0 0 F5 0 fl bg fl F7 fl
0 0 0 0 F6 ba F8
where: T T
rk k , k , hk , vk vkN , vkE , vkD

T T
k rk , pk , Ak , bg bgx , bgy , bgz (8)

T
ba bax , bay , baz
1
fi
R M `h 0 0
1
F1 0 0 fl .t (9)
ffi
p R N `hqcos
0 0 1
fi
0 fu fn
F2 f u 0 f e fl .t (10)
ffi
fn fe 0
fi
R11 R12 R13
F3 R21 R22 R23 fl .t (11)
ffi
R31 R32 R33
fi
R11 R12 R13
F3 R21 R22 R23 fl .t (12)
ffi
R31 R32 R33
1
fi
R M `h 0 0
0 1 0 ffi
F4 fl .t (13)

R `h
N
tan
0 R N `h 0
fi
x 0 0
F5 0 0 fl .t (14)
ffi
y
0 0 z
Sensors 2016, 16, 567 9 of 17

fi
f x 0 0
F6 0 0 fl .t (15)
ffi
f y
0 0 f z
fi fi fi
vn r
fl , v ve fl , p (16)
ffi ffi ffi
r fl
h vd A
b fi
a 2
fi 2 f x 2f x
b2 x x b ffi
F7
2
2 y y fl , F8
ffi 2 f y 2f y ffi
ffi (17)
a b fl
2
2 z z 2 f z 2f z

where:

Reciprocal of the correlation time of the process


2 Variance of the white noise associated with the random process
RM Meridian radius of curvature (North-South)
RN Prime vertical radius of curvature of the Earths surface (East-West)
, , h Latitude, longitude and height, respectively
f n, f e, f d Specific forces in east, north and up directions, respectively.

Rij Rotation matrix Rlb elements from body to local level frame.
t Rate change of time.

The linearized measurement error model can be expressed as:

zk Hxk ` k (18)

Here H is the design matrix and is the measurement noise. Both process and measurement
noises are assumed to be white and uncorrelated to each other. Readers can refer to [19] for more details
about measurement models. In this work, a new measurement model has been developed specifically
for pipeline navigation. The mathematical equations will be demonstrated in the next section.

3.2. Pitch & Heading Measurement Model


The rotation matrix (direct cosine matrixDCM) is updated at every epoch. The attitude angles
(roll, pitch, and heading) can be calculated using this matrix. Heading and pitch angles of the pig in
the pipeline are computed from the elements of the following (DCM) [19]:
fi
a a 12 a 13
l l
` v T l
` v T 11
Rv Rb Rb rI s Rb Rb a 21
a 22 a 23 fl (19)
ffi
a 31 a 32 a 33

where Rkj represents the DCM from pjq to pkq frames, pb, l, vq represent the IMU body, local level
(navigation), and vehicle (pig) frames, respectively. The rotation matrix from the body to vehicle
(pig) frame is calculated after installing the IMU in the pig. Rvb is constant and does not change. pq
represents the skew-symmetric matrix of the rotation vector pertaining to the error of the attitude
DCM and can be expressed as follows:
fi
0 A p
A 0 (20)
ffi
r fl
p r 0
Sensors 2016, 16, 567 10 of 17

Let bij and cij represent the ijth elements of Rvb and Rlb , respectively. The Rlb can be written
as follows:
fi
cosp cosA cosr sinA ` sinr sinp cosA sinr sinA ` cosr sinp cosA
Rlb cosp sinA cosr cosA ` sinr sinp sinA sinr cosA ` cosr sinp sinA fl (21)
ffi
sinp sinr cosp cosr cosp

From Equation (19), the required a ij elements to be used for heading and pitch angles calculation
can be expressed as follows:

a 11 b11 pc11 ` c21 A c31 pq ` b12 pc12 ` c22 A c32 pq ` b13 pc13 ` c23 A c33 pq

a 21 b11 pc21 ` c31 r c11 Aq ` b12 pc22 ` c32 r c12 Aq ` b13 pc23 ` c33 r c13 Aq

a 31 b11 pc31 ` c11 p c21 rq ` b12 pc32 ` c12 p c22 rq ` b13 pc33 ` c13 p c23 rq (22)

a 32 b21 pc31 ` c11 p c21 rq ` b22 pc32 ` c12 p c22 rq ` b23 pc33 ` c13 p c23 rq

a 33 b31 pc31 ` c11 p c21 rq ` b32 pc32 ` c12 p c22 rq ` b33 pc33 ` c13 p c23 rq

From Equation (21), heading and pitch can be calculated as follows:

sinA a
A tan1 tan1 21 (23)
cosA a11

sinp a31
p tan1 tan1 b (24)
cosp a232 ` a233

Similarly, the estimated heading and pitch angles can be calculated from Equation (19) as follows:

sin A a
A tan1 tan1 21 (25)
cos A a 11

sin p a 31
p tan1 tan1 b (26)
cos p a 2 ` a 2
32 33

Ideally as per the algorithm assumption, the heading and pitch angles do not change in the
pipeline piece; the change in these angles should be zero. Therefore, the approximated changes of
heading and pitch angles model can be expressed as follows:

zvp,A e r
e (27)

where e is the computed heading and pitch vector, and r


e is the measured heading and pitch vector.
The measurement design matrix can be expressed as follows:
B p B p B p ff
B r B p B A
H p,A B A B A B A
(28)
B r B p B A

The design matrix elements are expanded in the Appendix. Finally, the innovation sequence of
EKF at each epoch can be calculated as follows:

ek zvp,A H p,A x (29)


T
where xk represents the error state vector r p A .
Sensors 2016, 16, 567 11 of 17

4. Results
This section introduces the equipment used and describes the pipeline inspection test performed
to assess the efficacy of the PLJ algorithm. The results of the proposed methodPipeline junctions
integrationWill be discussed in detail and compared with the results of the traditional method of the
EKF-based odometer/AGM integration for pipeline navigation. In figures and tables, EKF/PLJ will be
referred to as the new developed method, while EKF will be referred to as the normal EKF method.
Please note that odometer and AGM (if available) are used in both methods. The developed method
was examined through real pipeline inspection trajectories, using as few AGMs as possible.
The pigs data and the reference trajectory have been provided by M/s ROSEN. A SiIMU02 (by
UTC Aerospace Systems, Brea, CA, USA) MEMS-based inertial sensor was used for the experiment.
SiIMU02 is a six degree of freedom inertial system that uses solid-state devices to measure the angular
rate and linear acceleration. Table 1 shows the IMU specifications. The forward velocity time stamp
was synchronized with the IMU data. The odometer standard deviation (STD) is 0.15 m{s.

Table 1. MEMS-IMU Specifications.

Gyroscope Accelerometer
Bias Repeatability p1q 100 {h 10 mg
Bias Instability 6 {h? 0.5 mg?
Random Walk 0.5 { h 0.5 m{s{ h
Diameter (55.88)
Size (mm)
Depth (35.56)

One point worth noting is that the pig operator did not provide the AGMs positions, however,
they provided the full reference trajectory. As a result, an artificial AGMs were extracted from the true
reference trajectory. The total pig journey distance is almost 3 km over a total travel time of 1 h.
For comparison purposes, the proposed algorithm was applied for two different scenarios. In both
scenarios, the position of the first and last point of the trajectory is known. The first point represents
the pig pipeline inlet and the last point is the pig pipeline outlet.

Scenario #1: Processed IMU & odometer data using one AGM (after 20 min)
Scenario #2: Processed IMU & odometer data using no AGM.

4.1. Scenario #1
In this scenario, one AGM was added after 20 min of motion to provide position update (CUPT)
to the navigation algorithm. Figure 11 shows the solutions of the EKF-based and EKF/PLJ-based,
where both solutions are compared against the reference trajectory. The EKF/PLJ proposed solution
showed an improvement over the standalone EKF solution, which is clearly noticed in Figure 12. The
figures illustrate the north, east, and height position errors for both methods. The errors in the north
and east direction are clearly smaller in the EKF/PLJ algorithm. However, the height error is slightly
smaller using EKF only. The maximum and RMS position errors (in meters) for each solution are
shown by bar graphs in Figures 13 and 14 respectively.
to theInnavigation algorithm.
this scenario, one AGM Figure 11 shows
was added afterthe solutions
20 min of the
of motion EKF-based
to provide and EKF/PLJ-based,
position update (CUPT)
where both solutions are compared against the reference trajectory.
to the navigation algorithm. Figure 11 shows the solutions of the EKF-based and The EKF/PLJ proposed solution
EKF/PLJ-based,
showed an improvement over the standalone EKF solution, which is clearly noticed
where both solutions are compared against the reference trajectory. The EKF/PLJ proposed solutionin Figure 12. The
figures
showedillustrate the north,
an improvement east,
over theand height position
standalone errors for
EKF solution, bothismethods.
which The errors
clearly noticed in the12.
in Figure north
The
and eastillustrate
figures directionthe
arenorth,
clearly smaller
east, in the EKF/PLJ
and height algorithm.
position errors However,
for both the The
methods. height error
errors inisthe
slightly
north
Sensorssmaller
and 16,using
2016,east 567 EKFare
direction only. The smaller
clearly maximum and
in the RMS position
EKF/PLJ errors
algorithm. (in meters)
However, for each
the height solution
error 12 of 17
are
is slightly
shown
smallerby bar graphs
using in Figures
EKF only. 13 and 14,and
The maximum respectively.
RMS position errors (in meters) for each solution are
shown by bar graphs in Figures 13 and 14, respectively.

Figure 11. TrajectoriesCase #1.


Figure 11. TrajectoriesCase #1.
Figure 11. TrajectoriesCase #1.

Figure 12. Position Errors-EKF & EKF/PLJ Scenario #1.


Figure 12. Position Errors-EKF & EKF/PLJ Scenario #1.
Figure 12. Position Errors-EKF & EKF/PLJ Scenario #1.
Sensors 2016, 16, 567 12 of 16

Figure 13. Maximum Position ErrorScenario #1.


Figure 13. Maximum Position ErrorScenario #1.
Sensors 2016, 16, 567 13 of 17
Figure 13. Maximum Position ErrorScenario #1.

Figure 13. Maximum Position ErrorScenario #1.

Figure 14. RMS Position ErrorsScenario #1.


Figure 14. RMS Position ErrorsScenario #1.
4.2. Scenario #2
Figure 14. RMS Position ErrorsScenario #1.
4.2. ScenarioScenario
#2 #2 is similar to scenario #1, without adding any AGM. Directly from the output
trajectory, the
4.2. Scenario #2difference between both solutions is clear, as shown in Figure 15. The position errors
Scenario
for each#2 is similar
method to scenario
are shown #1,16.
in Figure without adding any AGM. Directly from the output trajectory,
Scenario
the difference between#2 isboth
similar to scenario
solutions #1, without
is clear, adding
as shown in any AGM.
Figure 15.Directly from theerrors
The position outputfor each
trajectory, the difference between both solutions is clear, as shown in Figure 15. The position errors
method are shown in Figure 16.
for each method are shown in Figure 16.

Figure 15. TrajectoriesScenario #2.

Figure 15. TrajectoriesScenario #2.


Figure 15. TrajectoriesScenario #2.
Sensors 2016, 16, 567 13 of 16

Figure 16. Positions ErrorsEKF & EKF/PLJ Scenario #2.


Figure 16. Positions ErrorsEKF & EKF/PLJ Scenario #2.
The bar graphs in Figures 17 and 18 show that the proposed EKF/PLJ method greatly improve
the accuracy of the results.
Sensors 2016, 16, 567 14 of 17
Figure 16. Positions ErrorsEKF & EKF/PLJ Scenario #2.
Figure 16. Positions ErrorsEKF & EKF/PLJ Scenario #2.
The
The bar
bar graphs
graphs inin Figures
Figures 17
17 and
and 18
18 show
show that
thatthe
theproposed
proposedEKF/PLJ
EKF/PLJ method
method greatly
greatly improve
improve
the The bar
accuracy graphs
of the in Figures
results.
the accuracy of the results. 17 and 18 show that the proposed EKF/PLJ method greatly improve
the accuracy of the results.

Figure 17. Maximum Position ErrorsScenario #2.


Figure 17. Maximum Position ErrorsScenario #2.
Figure 17. Maximum Position ErrorsScenario #2.

Figure 18. RMS Positions ErrorsScenario #2.


Figure 18. RMS Positions ErrorsScenario #2.
Figure 18. RMS Positions ErrorsScenario #2.

EKF/Odometer integration for pipeline navigation, using the developed method of EKF/PLJ,
had a maximum position error of 11.59 m in the north direction, and EKF/odometer solution only had
a maximum position error of 76.41 m in the same direction. This is an overall average improvement of
85%. Despite all the improvements in the horizontal plane (north and east directions), the above bar
graphs reveal that height errors have slight increase using the new EKF/PLJ method. This increase
does not affect the total solution for the pipeline trajectory, especially, if we consider that the pipeline
is usually located 15 m below the Earth surface. Finally, the results can be summarized as shown in
Tables 2 and 3 where north, east, height maximum and RMS errors for both scenarios are shown.
Sensors 2016, 16, 567 15 of 17

Table 2. North, East & Height Errors.

Maximum Error
Method North (m) East (m) Height (m)
EKF 31.99 72.89 3.28
Scenario #1
EKF/PLJ 11.83 10.77 7.03
EKF 76.41 51.94 1.99
Scenario #2
EKF/PLJ 11.59 8.48 5.99

Table 3. North, East & Height Errors.

RMS Error
Method North (m) East (m) Height (m)
EKF 17.7 25.05 1.61
Scenario #1
EKF/PLJ 7.11 5.80 2.91
EKF 46.72 34.58 1.03
Scenario #2
EKF/PLJ 7.35 5.91 2.31

5. Conclusions
The main objective of this work was to increase the accuracy of pipeline navigation. Based on the
reality of constructing the pipelines (i.e., straight shapes), and how they connect to each other, pipeline
junctions have been modeled and included as new measurements to update the navigation estimation
algorithm. The new developed algorithm will also lead to a reduction in the total required number of
AGMs. Two different testing scenarios were discussed based on real pipeline data that was collected
using a MEMS-IMU-based system. These results show that the newly proposed method is capable of
reducing the trajectory navigation RMS error by around 80% over one hour of operation and without
using any AGM along the pig journey.

Acknowledgments: This work was supported in part by research funds from TECTERRA Commercialization
and Research Centre, the Canada Research Chairs Program, and the Natural Science and Engineering Research
Council of Canada (NSERC). Special thanks to ROSEN Canada Ltd. (Calgary, AB, Canada) for providing the pigs
navigation data.
Author Contributions: Hussein Sahli and Naser El-Sheimy conceived and designed the algorithm; Hussein Sahli
analyzed the data; Hussein Sahli and Naser El-Sheimy wrote the paper.
Conflicts of Interest: The authors declare no conflict of interest.

Appendix A
The elements in Equation (28) can be calculated as follows:
B p B p B p ff
B r B p B A
H p,A B A B A B A
B r B p B A

?EQ5 r2pb21 c21 `b22 c22 `b23 c23 qEQ9 `2pb31 c21 `b32 c22 `b33 c23 qEQ8 sEQ4
B p EQ7
EQ3 EQ7

Br EQ1

?EQ6 r2pb21 c11 `b22 c12 `b23 c13 qEQ9 `2pb31 c11 `b32 c12 `b33 c13 qEQ8 sEQ4
B p EQ7
EQ3 EQ7

Bp EQ1
B p
0
BA
Sensors 2016, 16, 567 16 of 17

B A pb11 c11 ` b12 c12 ` b13 c13 q pb11 c31 ` b12 c32 ` b13 c33 q

Br pb11 c11 ` b12 c12 ` b13 c13 q2 ` pb11 c21 ` b12 c22 ` b13 c33 q2
B A pb11 c21 ` b12 c22 ` b13 c23 q pb11 c31 ` b12 c32 ` b13 c33 q

Bp pb11 c11 ` b12 c12 ` b13 c13 q2 ` pb11 c21 ` b12 c22 ` b13 c33 q2

pb11 c21 `b12 c22 `b13 c23 q2
` 1 pb11 c11 ` b12 c12 ` b13 c13 q2
B A pb11 c11 `b12 c12 `b13 c13 q2
1
BA pb11 c11 ` b12 c12 ` b13 c13 q2 ` pb11 c21 ` b12 c22 ` b13 c33 q2
where

EQ1 pb11 c31 ` b12 c32 ` b13 c33 q2 ` pb21 c31 ` b22 c32 ` b23 c33 q2 ` pb31 c31 ` b32 c32 ` b33 c33 q2

EQ2 pb11 c11 ` b12 c12 ` b13 c13 q2 ` pb11 c21 ` b12 c22 ` b13 c23 q2
c
3
Q3 2 pb21 c31 ` b22 c32 ` b23 c33 q2 ` pb31 c31 ` b32 c32 ` b33 c33 q2

EQ4 b11 c31 ` b12 c32 ` b13 c33

EQ5 b11 c21 ` b12 c22 ` b13 c23

Q6 b11 c11 ` b12 c12 ` b13 c13

EQ7 EQ28 ` EQ29

EQ8 b31 c31 ` b32 c32 ` b33 c33

EQ9 b21 c31 ` b22 c32 ` b23 c33

References
1. Tiratsoo, J. Pipeline Pigging Technology, 2nd ed.; Butterworth-Heinemann College: Woburn, MA, USA, 2001.
2. Tolmasquim, S.T.; Nieckele, A.O. Design and control of pig operations through pipelines. J. Pet. Sci. Eng.
2008, 62, 102110. [CrossRef]
3. Davidson, R. An Introduction to Pipeline Pigging: Pigging Products & Services Association; Pipes & Pipelines
International: Beaconsfield, UK, 1995.
4. Hanna, P.L. Strapdown inertial systems for pipeline navigation. In Proceedings of the IEE Colloquium on
Inertial Navigation Sensor Development, London, UK, 9 January 1990.
5. Sahli, H.; Moussa, A.; Noureldin, A.; El-Sheimy, N. Small pipeline trajectory estimation using MEMS based
IMU. In Proceedings of the 27th International Technical Meeting of the Satellite Division of the Institute of
Navigation (ION GNSS+ 2014), Tampa, FL, USA, 812 September 2014.
6. Santana, D.D.S.; Maruyama, N.; Massatoshi Furukawa, C. Estimation of trajectories of pipeline PIGs using
inertial measurements and non linear sensor fusion. In Proceedings of the 2010 9th IEEE/IAS International
Conference on Industry Applications (INDUSCON), Sao Paulo, Brazil, 810 November 2010.
7. Chowdhury, M.S.; Abdel-Hafez, M.F. Pipeline Inspection Gauge Position Estimation Using Inertial
Measurement Unit, Odometer, and a Set of Reference Stations. ASME. ASME J. Risk Uncertain. Part B
2016, 2, 021001-1021001-10. [CrossRef]
8. Grewal, M.S.; Andrews, A.P. Kalman Filtering: Theory and Practice Using MATLAB; John Wiley & Sons, Inc.:
Hoboken, NJ, USA, 2015.
9. Kalman, R.E. A new approach to linear filtering and prediction problems. J. Basic Eng. 1960, 82, 3545.
[CrossRef]
10. Graps, A. An introduction to wavelets. IEEE Comput. Sci. Eng. 1995, 2, 5061. [CrossRef]
11. Mesa, H. Adapted wavelets for pattern detection. In Progress in Pattern Recognition, Image Analysis and
Applications; Sanfeliu, A., Corts, M., Eds.; Springer Berlin Heidelberg: Berlin/Heidelberg, Germany, 2005;
pp. 933944.
Sensors 2016, 16, 567 17 of 17

12. Meyer, Y. Wavelets: Algorithms and Applications, 1st ed.; Society for Industrial & Applied: Philadelphia, PA,
USA, 1993.
13. Vetterli, M.; Herley, C. Wavelet and filter banks: Theory and design. IEEE Trans. Acoust. Speech Signal Process.
1992, 40, 22072232. [CrossRef]
14. Wickerhauser, M.V. Adapted Wavelet Analysis from Theory to Software, 1st ed.; A K Peters/CRC Press: Wellesley,
MA, USA, 1994.
15. El-Sheimy, N.; Sahli, H.; Moussa, A. Methods and Systems to Enhance Pipeline Trajectory Reconstruction
Using Pipeline Junctions. Patent Tech. ID# 524.28, 7 July 2015.
16. Noureldin, A.; Karamat, T.B.; Eberts, M.D.; El-Shafie, A. Performance enhancement of mems-based INS/GPS
integration for low-cost navigation applications. IEEE Trans. Veh. Technol. 2009, 58, 10771096. [CrossRef]
17. El-Sheimy, N. Introduction to INSWith Applications to Positioning and Mapping; ENGO623 Course Notes;
University of Calgary: Calgary, AB, Canada, 2012.
18. Noureldin, A.; Karamat, T.B.; Georgy, J. Fundamentals of Inertial Navigation, Satellite Positioning and Their
Integration; Springer: New York, NY, USA, 2012.
19. Shin, E.-H. Estimation Techniques for Low-Cost Inertial Navigation; University of Calgary: Calgary, AB,
Canada, 2005.

2016 by the authors; licensee MDPI, Basel, Switzerland. This article is an open access
article distributed under the terms and conditions of the Creative Commons Attribution
(CC-BY) license (http://creativecommons.org/licenses/by/4.0/).