Reconstruction of Riser Profiles by an Underwater Robot Using Inertial Navigation

1 Biomedical Engineering Program (PEB/COPPE), The Alberto Luiz Coimbra Institute for Graduate Studies and Research in Engineering, Universidade Federal do Rio de Janeiro, Avenida Horacio Macedo 2030, Bloco H-338, 21941-914 Rio de Janeiro, RJ, Brazil 2 Department of Informatics and Automation, Universita Roma Tre, Via della Vasca Navale, 79, I 00146 Roma, Italy 3 Subsin Engineering, Rua Beneditinos, 16, 12th floor, 20081-050 Rio de Janeiro, RJ, Brazil


Introduction
One of the key elements of deep-water petroleum exploration is the production riser.Risers are the ducts that transport petroleum, water or gases from the exploitation well up to the production platform.Either rigid or flexible types of risers may be used in the oil field.Both types are submitted to a broad spectrum of failure causes [1]: mechanical loads, aging, corrosion, erosion, temperature effects, installation or fabrication nonconformities, and so forth.Therefore, the availability of inspection tools to assess riser integrity status in situ is highly desirable.Such procedures are performed mainly by visual inspection with remotely operated vehicles (ROVs) [2] or autonomous underwater vehicles (AUVs) [3].In some cases, sensors are installed directly on fixed points of the riser surface to measure strain and riser motion [4].Other types of nondestructive testing (NDT) techniques can be used, such as magnetic, radiographic, or ultrasound methods [5].In these cases, however, the operational constraints for using human operators are a major problem.A few papers address robotic devices specifically designed for underwater riser inspection.Psarros and his collaborators [6] proposed a robot that moves along the riser by using a mechanism composed of two parts.One part stays attached to the riser body, and the other part moves towards the riser's side, in a cyclical manner.
A major technical problem in robotic underwater inspection is the navigation and/or localization of the robot in a highly dynamic sea environment.Navigation is especially critical for AUVs and somewhat critical for ROVs. Lee at al. [7] addressed this problem by using several sensors fused by a multirate Extended Kalman Filter (EKF).The sensors set included a strapdown inertial platform, a Doppler velocity log (DVL), magnetic compass, and a depth sensor.However, they had sonar transducers installed in an underwater reference station and in the remote vehicle.Jouffroy and Opderbecke [8] addressed the problem of measuring the horizontal position of a ROV by using a gyro-Doppler together with an ultrashort baseline (USBL) acoustic positioning system.Diffusion-based observers were used to process a trajectory segment, instead of a typical point-by-point localization.He et al. [9] proposed an approach based on an invariance extended Kalman filter (IEKF) to address the problems of using sonar in shallow waters.In the case when the robot is mechanically linked to the inspected structure, the key problem is to localize precisely where it is at every instant of time.Such localization coordinates are associated to NDTs data and the flaws position can be precisely determined.
Recently, our group designed and built a prototype of a robotic device specifically designed to perform nondestructive testing (NDT) in production risers [10].The robot has neutral floatability and embraces the riser by moving along its outside (Figure 1), using a pair of thrusters for propulsion as well as polymeric wheels to guarantee sliding and correct alignment with the riser surface.In Figure 2 it is possible to observe how the robot attaches the riser by opening and closing its motorized arms.This operation is assisted by a human diver.It communicates with the operator's computer by means of an umbilical cable that transmits power, images and control commands.The dimensions of the robot and additional parameters used along the work are shown in Table 2.This robot will be able to perform several NDT procedures, such as ultrasound, imaging, and mechanical vibration measurements.
This paper proposes a kinematic model of the robot performing a riser profile cast mission, in a realistic simulated environment.Initially, a riser dynamic profile is estimated using a finite element model of the riser subjected to sea and ship motions.The nominal robot kinematic path (including position, velocity and acceleration), as it scrolls by the riser, is contaminated with experimental errors, simulated by IMU and depth sensor models.The simulated sensor data is used by a Kalman filter to estimate the original robot path.This path is a good estimate of the actual riser profile, if robot mission time is small, compared to platform motion.
The obtained profile can be used as an imposed displacement data for some structural analysis software based on finite elements techniques, that allows stress to be calculated.In addition, the localization algorithm can be used to associate each NDT measurement with its riser geometrical coordinate.These two aspects are intimately connected, and the localization algorithm can be used either to cast the profile, for fast robot runs, or localize the NDTs.
Reproducing the expected environmental conditions, to test the proposed approach, in a laboratory experiment is essentially impracticable.Field tests, by his turn, should require a expensive positioning system such as a 3D sonar, which does not operate at the required frequency resolution, due to the presence of vortex induced vibrations (VIVs).Therefore, a simulation of the riser application, together with simulated sensors, was used to assess the performance of the localization algorithm.Actually, a particular environmental and riser configuration scenario is being addressed in this paper.However, the approach is likely to be applicable to similar situations.Other devices that move along subsea pipe systems, such as flowlines, jumpers, and umbilicals, could employ some of the main ideas presented in this paper.No additional localization devices, such as sonar beacons, are needed.
The localization problem formulation used a standard Kalman filter as a sensor fusion algorithm based on a simple kinematic model of a strapdown IMU fused with a depth sensor.More sophisticated sensor fusion algorithms or statespace models for the system (e.g., dynamical models) could also be tested in future implementations, but the problem formulation would be probably quite similar.

Riser Simulation Conditions
The particular sea and ship motion conditions selected for running the simulations corresponded to a severe condition, relatively similar to that typically found in Campos Basin, in the southeast of South America coast.Actually, they were designed to be worse than the most severe scenario in which a robot is expected to operate (Table 1).Additionally, under milder sea conditions, the localization performance should be expectable to be better than shown here.
Data from a flexible free-hanging riser installed in a PETROBRAS (Brazilian State oil company) Turret Floating Production Storage Offloading (FPSO) oil platform, which is currently in operation in the Campos Basin, was used as the inputs for the riser simulation software FLEXCOM.This is a finite elements software customized for nonlinear static and dynamic analysis of offshore systems, used worldwide by the petroleum industry from the last 20 years, and validated against experimental tests and other finite elements packages [11,12].The software allows riser responses to be simulated with several kinds of platform characteristics, sea current profiles, hydrodynamic loads, regular and irregular waves, and so forth.Two situations were studied: static and  dynamic.In the static analysis, only the equilibrium configuration of the riser is considered, without motions other than from the robot itself.Three positions of the platform with relation to the wheel head were considered: standard and with a ship offset of 150 m in the directions near and far.
For the dynamic analysis, sea conditions with regular waves, reaching the ship 45 • obliquely, were used to generate the riser motion profiles.
To estimate numerically the localization system performance and calculate the associated displacement errors, the arrangement shown in Figure 3 was used.By simulating the kinematic model (Section 4), a physical profile of Euler angles, inertial accelerations, and depth was calculated.These simulated variables are then contaminated by noise, using the IMU and depth sensor instrumentation error models (Section 5), providing realistic sensor outputs.The trajectory run by the robot is estimated by a sensor fusion algorithm (Kalman filter), using such noisy sensor data (Section 6).Finally, both physical and estimated riser shapes are compared, to estimate the localization error along the run (Sections 7 and 8).

Architecture of the Localization System
The proposed localization system, that will be simulated numerically here, is shown in Figure 4.An IMU measures three accelerations, angular velocities, and Euler angles from the robot as it scrolls along the riser.Accelerations are measured in the local reference frame (see definition in Section 4).Using the Euler angles, the accelerations are transformed to the global reference system, using the classic strapdown inertial navigation approach [13].The simulated measurements from the IMU are fused by the Kalman Filter (KF) with the processed simulated external measurements from the depth sensor.Its output is an estimated state vector, that includes robot position, in the global reference frame.

Generation of Static and Dynamic Sensor Profiles
A simulated profile of inertial sensor physical excitation was obtained.First, the nominal or static riser geometry was obtained from the FEM (finite element model) analysis.The global reference system (X G , Y G , Z G ) was positioned in the turret center, such that X axis points to an arbitrary direction (e.g., north), Z points up, and Y is orthogonal to both (Figure 5).This reference frame is attached to the FPSO, being thus a slowly moving frame.However, due to the very low frequency of the FPSO movement compared to robot mission time span, the global reference frame was considered as being inertial.The local reference system (X l , Y l , Z l ) is localized in the geometric center of the riser section that coincides with the position, relative to robot height, where the inertial sensor is expected to be installed, and moves together with the robot.The center of the local reference system was defined, relatively to the global reference system, using the same nodes of the FEM mesh, which coordinates in the global reference system are P G i = (x(i), y(i), z(i)), i = 1, . . ., N (N is number of nodes in the mesh and the superscript G express the reference system).Each Z l vector is found from a unit vector  D u that connects node i to node i + 1 of the FEM mesh.The negative sign for defining Z l in ( 2) is due to the fact that D u points down: In the sequence, a particular Y l was chosen (along with its orthogonal counterpart X l ), such that it could represent one plausible mission trajectory.In the present version of the model, the robot communicates with the operator in the platform through an umbilical cable, and only a small amount of spin can be allowed, to prevent the cable from curling along the riser.Therefore, Y l is simultaneously orthogonal to a point sufficiently far in the X direction and to −Z l .The X l vector was orthogonal to both Z l and Y l .For each local reference system i, a directors cosine matrix (DCM) was defined as follows: where X l = (X 1x , X 1y , X 1z ) T is the unit vector that defines X l , and similarly Y l and Z l .Figure 4: Architecture of the proposed localization system architecture.The robot scrolling along the riser generates a set of kinematic variables that is measured by the IMU.The accelerations are transformed to the global reference system, using IMU attitude outputs, and considered as the inputs of the KF.To compensate the drift caused by integrated sensor noise, the KF fuses the IMU with depth sensor data, that is, an absolute measurement.Before entering in the KF, the external measurements are processed by the method described in Section 6, using IMU attitude data.
Euler angles ψ, θ, and φ were defined between the X G and X l , Y G and Y l , Z G and Z l axis, respectively.In every step, these angles were derived from the DCM matrix, by using the formulas presented by [14].The resulting transformation matrix from local to global reference system R G 1 = R x R y R z was posteriorly verified to be the same as DCM, in order to determine if singularities were present.A fixed point P S = (0, 0.5, 0) expressed in the local reference frame corresponds to the robot body point where the IMU will be possibly installed.This point was arbitrarily chosen within a reasonable Y distance from the riser section center, where the origin of the local reference frame is positioned.The coordinates of P S , expressed in the global coordinate frame, were assumed as the sensor displacement profile.

Sea Current Effect.
A linear current profile V cur from the maximum sea current velocity (V curmax ) at sea level to 0 at seabed [15] was considered as being aligned with the riser catenary plane.V curmax was assumed as 1.68 m/s, from Campos Basin data: where RZ cat is the rotation matrix associated with the catenary angle in the X G Y G plane, given by the following expression: , The robot can move freely along the riser in the Z l direction, but it was constrained in the other directions because it embraced the riser on the outside.If no water current was present, the nominal robot velocity propelled by a pair of thrusters should be V r in the direction of Z l .However, due to the presence of the current, the absolute velocity of the robot was found by considering the sea current velocity component that is projected over the robot's trajectory, which can change the robot's progression velocity: where V r abs is the absolute velocity and • the dot product.
From a preliminary study, V r was estimated as 1 m/s.Figure 6 illustrates robot Z l velocity in the particular sea current and thrusters conditions adopted in this paper.The effect of the longitudinal sheer between the robot and the riser due to the transversal current was not taken into account.This current component was expected essentially to increase the normal force that the robot applied to the outer surface of the riser.Because the riser was tightly fitted among the robot's rigid free wells to avoid longitudinal and torsional slipping, the increase in the shear force of the wheels that could decelerate the robot was considered to be negligible.Since all the elements of the FEM mesh have approximately the same length, the time steps are no longer uniformly distributed with such variable velocity profile.The resulting variable time array was calculated by: This nonuniform time array was inconvenient for future calculations of velocity and acceleration profiles, and a new set of (x(i), y(i), z(i)) was found by spline interpolation using a uniform time array with the same limits of t var .In the sequence, the local reference systems (X l , Y l , Z l ), the DCM matrix and the Euler angles were recalculated using this new set of coordinates, which were sampled by a uniform time array.All profiles were resampled at 5 Hz by spline interpolation, such that the high frequency riser motions could be followed (next subsection).The total mission time was T m = 1526 s, and a total of M = T m (s) × 5(Hz) = 7630 points were generated.f s = 20 Hz sampling rate.The analysis was run for a 100 second time span, but the first 50 seconds were disregarded to avoid the transient effect of the FEM solution.The second half of the time window was then replicated to reach the total mission time.Thus, the offset, phase, and amplitude parameters were preserved.This adjustment provided a matrix of ten lines (one for each node) and T m × f s columns, which was resampled by successive spline interpolations.The first interpolation reduced the number of columns to M, the second expanded the lines up to the original FEM mesh (171 nodes) and the third resampled the lines again up to M. Therefore, three M×M perturbation matrices Per x , Per y , and Per z were obtained, one for each coordinate X l , Y l , and Z l .In these matrices, each row was a particular riser deviation from the nominal profile and each column was a time step.The three components of a displacement vector d(i) were defined for each node i:

Riser Motion
This vector was decomposed into its normal d n and tangential d t parts.Because the robot was free to move along the riser, only the normal component of d vector was effectively transmitted to the robot: Therefore, the new coordinates x, y, and z (in the local reference frame) of the riser path were given by the following sequence of P 1 i new points, i = 1,

Vortex-Induced Vibration (VIV) Effect.
The sea current passing through a circular cylinder produces vortexshedding in the wake, which causes the structure to vibrate.This complex fluid-structure interaction is called Vortex Induced Vibration (VIV), and it occurs predominantly on the cross-flow direction [16].Simulating this effect is an arduous numerical problem.In this paper, we used experimental data obtained from a scale-model available at the Open-Source VIV Data Repository of the Center for Ocean Engineering at MIT [17].Cross-flow displacement data that is available for tests performed in a bare cylinder, 20 mm diameter and 10 m length, which was donated by ExxonMobil, was used in our simulations.Several fluid velocities and both linearly sheared and linear flow conditions may be used.We chose a strong condition of regular flow, of approximately 1 m/s, which provided greater displacements compared to the sheared flow for the same nominal velocity.
To adapt the experimental data to the riser that was being analyzed, the displacement was scaled by the test riser diameter and multiplied by the actual riser diameter.The frequency of shedding ( f st ) in cylinders with cross-flow is given by the following: where St is the Strouhal number, U is the fluid velocity, and D is the cylinder diameter.Keeping St fixed, the ratio of f st between the experiment and the riser was 14.78.This factor was used to scale the time vector, such that the frequency vector of the data spectrum, which was used to simulate riser VIV, was divided by this quantity.The set of ten points along the cylinder where displacements were measured was associated with the closest nodes of the FEM model.A window of data, without transient effects, was replicated ten times until the total mission time was achieved, similar to the previous section, and the same interpolation procedure was applied.Finally, the displacement caused by VIV was rotated to become perpendicular to the catenary plane and added to (10).
Figure 7 shows the RMS profiles of the riser displacements in the X G , Y G , and Z G directions as a function of the normalized riser length.The figure also shows the RMS of VIV perpendicular to the catenary plane.The number 0 is for the wheel head, and 1 corresponds to the turret.

Sensor Velocity and Acceleration Profiles.
To simulate IMU output, the expected physical acceleration at the sensor installation point must be found.This acceleration was used to feed the sensor model to find realistic sensor signals.The acceleration at point P S expressed in the global reference frame was given by the following well-known kinematic equation: The local acceleration a PSl and Coriolis terms are zero because the sensor is fixed in the robot body.α is the angular  acceleration and ω is the angular velocity.Angular velocity expressed in the global reference frame was calculated by the methods used in [14,18]: To solve ( 12) and ( 13), the time derivatives of displacement and rotation ẋ, ẍ, ẏ, ψ, and so forth were found by finite differences and considering all variables in the global reference system.

Instrumentation Model
A low-cost microstrain 3DMGX-1 IMU was the project choice.This is a compact and integrated device, suitable for a high-depth submarine application, where the electronic case must be as slender as possible, for mechanical structural reasons.It delivers 3D accelerations, angular velocities, and attitude/orientation matrix in a single-serial channel.The error characteristics of each output were modeled as a wideband noise plus a first order moving bias Markov process [19]: The wide-band sensor noise was defined as w bw = σ bw ν, ν = N[0, 1] (white noise, zero mean).σ 2 bw is the wideband noise variance.Scale factor error, 0.5% by sensor specifications, was considered as follows: SFE = 0.005 × sgn(U(−1, 1)), (15) such that U(−1, 1) is a uniform random variable in [−1, 1] and sgn is the signum function.This equation introduces a random error limited to 0.5% in the sensor output signal amplitude, when substituted in (14).
The moving bias was found by integrating the following finite difference equation with the Euler method: where Δt: sampling period (s), f s : sampling frequency (Hz), σ 2 sensor bias : bias input noise variance, σ 2 bias : random walk variance, τ r : time constant (s).

Determination of Sensor
Parameters.An experiment was performed to collect the error characteristics by keeping the sensor stationary in laboratory while recording signals.
Total acquisition time was 4 h 21 min, with a 75 Hz sampling frequency, after the internal temperature was stabilized.The first determined parameter was the time constant τ r .Two techniques were employed: the Allan variance plot [20] and the autocorrelation function [19].Both techniques gave different results (see Table 2).According to the likeness between the real and the simulated signals, one of the two timeconstant techniques was selected.For the attitude sensor, τ r determined by Allan variance was chosen, whereas for acceleration and angular velocity, autocorrelation provided the best results.Except for angular velocity (AngRate), the experiment time series was low-pass filtered before calculating σ bias , to better characterize the low-frequency component of the error.For σ bw , the high-frequency part was used.The cutoff frequencies were chosen by trial and error, and the agreement between the simulated and original error signals was observed for each case.Time series, Allan variance plot [21] and fast Fourier transform (FFT) were used to test the agreement between original and simulated error signals.
In the case of attitude simulation, the Euler angles were discretized in the interval comprising −180.0328• to 180 • , with steps of 0.1 • , corresponding to sensor resolution.For acceleration, the resolution of the sensor was 0.2 mg, and the angular velocity was 0.01 • /s.However, amplitude discretization was not implemented.Figure 8 shows the results for Pitch angle and Figure 9 shows the results for acceleration in the X l direction.For other angles, directions and angular velocities, the results were similar.
The water pressure-based depth sensor specified for this robot was the Digiquartz 8CB4000-I Depth Sensor (Paroscientific, Inc., Redmond, WA), provided a 0.01% accuracy and a resolution of 10 −8 m.In the simulations, we considered that the depth measures were corrupted by the addition of a Gaussian noise with σ = 0.2 meters, according to the estimates made by Jalving [22].

Localization Algorithm
The localization problem consisted of estimating a set of states, which included robot position, by reading accelerations as inputs and considering the depth sensor signals as the external measurements.Since a strapdown navigation scheme is used, the localization algorithm assumes that the accelerations measured in the local frame are transformed into the global frame, by using the rotation matrices calculated from Euler angles measured by the IMU.It is also assumed that if a DC-acceleration sensible accelerometer is being used, the vertical acceleration was compensated for gravity.The problem state equations are formulated as [23,24]: The state vectors and matrices are given by the following: A [9×9] is an identity matrix, such that the terms (1,4), (2,5), and (3,6) are equal to T; (4,7), (5,8), and (6,9) assumes the value −T; (1,7), (2,8), and (3,9) elements are −1/2T 2 .B [9×3] is a matrix of zeros except for the terms (1,1), (2,2), and (3,3) that are equal to 1/2T 2 ; (4,1), (5,2), and (6,3) elements are T.
H [3×9] is a matrix of zeros, with the exception of the (i,i) terms equal to 1.In such expressions, k is the sample number, X is the state vector, U the input vector, w is the process noise, P is the position, V is the velocity, a is acceleration, δa is the acceleration error, T is sampling period, Z is the external measurements vector, v is the sensor noise, and σ 2 is the variance of each associated variable.The observability matrix of this system had a full-rank, that is, 9.
An estimate X k of the state vector is found by a Kalman filter. Prediction: Update: where P is the state estimate error covariance matrix, R is the sensor noise covariance matrix, Q is the process noise matrix, and K is the Kalman gain.This is a standard, simple and generic implementation of a Kalman filter estimator.More sophisticated approaches could be tested as well, although the results obtained with the standard KF were satisfactory for the intended application, as will be addressed in Section 7. Unlike the kinematic models that are usually used for land robots [25] or those built to operate over flat surfaces [26], the state-space model used here to formulate the KF does not use any a priori information of the vehicle characteristics.Nor the dynamical characteristics of the sensors are included in this KF formulation.Thus, in principle, the localization algorithm proposed here could be applied for similar applications with different instrumentation, robot, and environmental characteristics.However, some tuning work on the covariance matrices should likely to be necessary.

Processing of the External Measurements for the KF.
Here, we focus the analysis on the key aspect of this particular localization problem, which is determining the external measurements vector T .O G kx , and so forth, are the coordinates of the robot position in the global reference frame as measured by an independent absolute sensor.The sensor, that is, in practice, available to perform such measurements is the depth sensor, which can only measure the Z G coordinate.The attempts to use this measurement exclusively in the Update phase of the KF gave nondrifting estimates in the vertical direction, as expectable, but not in the horizontal one.
We proposed the following method to estimate the complete Z k vector using data from Z k−1 , O G kz (depth sensor signal), and the Euler angles measured by the IMU.Considering Figure 10, the vector joining Z k to Z k−1 , in the local reference frame centered in Z k , is given by [0 0 L] T .This vector lies in Z l direction of the local reference frame 1 k , with modulus L, and coinciding with the instantaneous riser path.In the global reference frame, Z k−1 can be found as: Thus, The same difference calculated in (23) can be expressed by a vector of global coordinate differences: Since R 33 and ΔZ are known, by comparing ( 23) and (24), it is possible to find L as: Substituting L in ( 23), the KF external measurements vector Z k is found.Alternatively, the displacement L could be measured by an odometer.However, in this case, special constructive care should be taken into account to prevent slippage.In any case, this approach assumes a previous observation in the Correction phase of the KF.However, KF theory assumes conditional independence among the observations.Therefore, only suboptimal estimation performance is likely to be expected.

Static Results.
In the static case no riser motion is present.The standard position was used as the basis to generate the dynamic analysis and is an intermediary neutral configuration between the near (ship displaces towards wheel head) and the far (the opposite direction) positions.Figure 11 shows the robot trajectory and attitude, represented by the successive local reference frames, for the neutral position.In Figure 12, the associated localization errors are shown, as a function of distance from the seabed (using a grid of 1.680 points, or 1.44 Hz).The absolute errors associated with the neutral, far, and near configurations are shown in Figure 13, in a semilog scale.To study the impact in the localization error of the grid refinement grade, an additional error curve was generated, for the neutral configuration, with a 7,630 points (5 Hz) grid, the same used for the dynamic analysis.
Figure 12 shows that the greatest source of error occurs in the X G direction, while in the deepness coordinate Z G , the error is low.In addition, the total error increased as the robot tilted horizontally.This trend was expected due to the relative loss of accuracy of the depth sensor to estimate the L parameter when using ( 21)- (25).When the depth measure difference ΔZ between the two samples is small, a decrease in signal to Gaussian noise ratio is observed.From an application point of view, the robot should not work too close to the point where the riser periodically touches the seabed, the touch down point (TDP).This safety margin is established as being of 50 m.At this point, the expected positioning error for the static case was approximately 10 m.The error was slightly higher in the far case (Figure 13), where the riser was more horizontal than in the near condition.By increasing the sampling frequency (Figure 12), the error was likely to decrease in most of the path, but when the robot approximates to the TDP, the localization system fails.

Dynamic Results
. By including the wave and VIV effects in the riser nodal displacement profile, the robot trajectory becomes more complex (Figure 14), as expectable.The associated localization errors are shown in Figure 15, using the 5 Hz mesh.reliability seems to be key aspect for localization accuracy in this problem.Using a higher grade low drift IMU instead of a low-cost one could eliminate the need for external measurements in a critical region but at the price of increasing payload, cost and volume.Acoustic positioning systems could be used to localize the robot in the most horizontal parts of the trajectory.However, these systems work at a very low sampling frequency (0.1 to 1 Hz) [8] and, at best, they could only probably cast the external motion envelope of the robot.More practically, improved accuracy could be achieved in the section close to the TDP by using an odometer to estimate L in (25).As such, the mechanical setup of an odometer should be accomplished very carefully to prevent slippage.Preinstalled RFID (Radio Frequency Identification) [27] tags or visual marks along the riser, signaling the actual length, are possibilities that could be explored.Switching the depth sensor with other kinds of sensors for external measurements, close to TDP, could be performed by using a fuzzy expert system [28].In future studies, experimental laboratory and field tests should be performed, using an acoustic localization system to assess the bounds of the navigation errors estimated in this work.

Figure 2 :
Figure 2: Transversal view of the robot frame showing how it attaches the riser, by opening and closing its motorized arms.The polymeric free wheels that effectively touch the riser surface are also shown.

Figure 3 :
Figure3: Overview of the system simulation analysis.A dynamic riser profile is generated through an FEM analysis.Using robot's kinematical and instrumentation model, the expected sensor readings are used to reconstruct the riser profile by the localization algorithm, which is compared to the original profile from FEM output.
accelerations in sensor ref. frame

Figure 5 :
Figure 5: Side and upper views of the FPSO and riser configuration.Global (X G , Y G , Z G ) and local (X l , Y l , Z l ) reference systems position and orientation are shown.The FPSO and riser catenary plane are considered as being aligned with the sea current, forming an angle φ cat with the X G direction in X G Y G plane.

Figure 7 :
Figure 7: RMS of riser motion in X l , Y l , and Z l directions and VIV perpendicular to the catenary plane.

Figure 8 :
Figure 8: Comparative results for real and simulated IMU sensor error for Pitch angle.(a) Window of the time series (degrees).(b) Allan variance plot (degrees).(c) FFT of time series (degrees 2 ).

Figure 9 :
Figure 9: Comparative results for real and simulated IMU sensor error for X l acceleration, in g (Earth acceleration of gravity at sea level).(a) Window of the time series (g).(b) Allan variance plot (g).(c) FFT of time series (g 2 ).

Figure 10 :
Figure 10: Position external measurements Z k−1 and Z k and the corresponding local reference frames (X l , Y l , Z l ).L is the scalar displacement between the two positions.

Figure 11 :Figure 12 :Figure 13 :
Figure 11: Problem neutral configuration, showing the FPSO, the riser profile and the robot attitude.The orthogonal arrows express the successive local reference frames position and orientation along the riser path.Only 1/8 of the 171 FEM mesh nodes used in the static analysis is shown to facilitate visualization.

Figure 16 :Figure 17 :
Figure 16: X G Z G plane close to TDP for the dynamic condition, showing simulated robot trajectory (dashed), simulated and processed external measurements from depth sensor and IMU models (Δ) and Kalman Filter estimates (clearer dots).

Table 1 :
Parameters used in the simulations.

Table 2 :
Identified parameters for the IMU sensor model1.R xx means that used time constant is from autocorrelation, and Allan from Allan variance plot.Low cut and high cut correspond to the cutting-off frequencies of the low-pass and high-pass filter used to calculate σ bias and σ bw , respectively.σ bw and σ bias have the same unities of their respective measurement variables.
1 * Used in the simulations.