Research Article  Open Access
Development of a LowLevel Control System for the ROV Visor3
Abstract
This paper addresses the development of the simulation of the lowlevel control system for the underwater remotely operated vehicle Visor3. The 6DOF mathematical model of Visor3 is presented using two coordinated systems: Earthfixed and bodyfixed frames. The navigation, guidance, and control (NGC) structure is divided into three layers: the high level or the mission planner; the midlevel or the path planner; and the low level formed by the navigation and control systems. The nonlinear modelbased observer is developed using the extended Kalman filter (EKF) which uses the linearization of the model to estimate the current state. The behavior of the observer is verified through simulations using Simulink®. An experiment was conducted with a trajectory that describes changes in the and and yaw components. To accomplish this task, two algorithms are compared: a multiloop PID and PID with gravity compensation. These controllers and the nonlinear observer are tested using the 6DOF mathematical model of Visor3. The control and navigation systems are a fundamental part of the lowlevel control system that will allow Visor3’s operators to take advantage of more advanced vehicle’s capabilities during inspection tasks of port facilities, hydroelectric dams, and oceanographic research.
1. Introduction
Due to the growing interest around the world to perform offshore and underwater operations, several researchers have focused their interests on the construction of underwater vehicles that allow one to explore the ocean from a surface station. Underwater vehicles are used to perform different tasks such as observation, sampling, and surveillance. Regardless of whether they are operated by cable (ROVs) or are autonomous (AUVs), it is necessary to develop control strategies to achieve the desired vehicle movements [1, 2].
Several control schemes are based on the mathematical model of the system. Hence, having accurate models for prediction and control is desirable; however, this is not a simple task due to the highly nonlinear behavior that appears with the fluidvehicle interaction [3]. The navigation, guidance, and control (NGC) system for an underwater vehicle can have different degrees of sophistication, depending on the type of operation that is to be performed and the autonomy levels that need to be achieved [1, 2, 4, 5].
The desired level of autonomy will determine what kinds of algorithms are necessary to control the variables of interest, which are normally given by the position, attitude (orientation), and velocity of the vehicle with respect to an inertial reference system located at the surface [6]. Figure 1 shows a threelevel hierarchical NGC structure for an underwater vehicle; this kind of structure is useful to control and stabilize the vehicle [7].
One of the main components in the control structure’s lower level is the navigation system. This system provides an estimate of the position, velocity, and attitude of the vehicle with respect to an inertial system located at the surface control station at the harbor, from measurements made with different sensors (IMU, magnetometer, depth, DVL, and SSBL, among others). Given the characteristics of water, the development of underwater localization systems is not trivial and presents a number of challenges [8, 9].
The most common algorithm to achieve this task is the Kalman filter (KF). It is an estimator, statistically optimal with respect to a quadratic error function, which allows one to estimate the state of the vehicle [10]. Several Kalmanfilterbased navigation systems have been developed for years, and all of them depend on the instrumentation used in the vehicle. Caccia et al. [11] developed a Kalmanfilterbased acoustic navigation module to control the UUV Roby2. Caccia and Veruggio [12] used Kalmanfilter techniques to estimate the state using different sampling rates of a depthmeter and altimeter. Drolet et al. [13] presented an integrated sensor fusion strategy using multiple Kalman filters allowing different combination of sensors. Blain et al. [14] developed and tested a Kalman filter to merge data from an acoustic positioning system, a bathymeter, and a DVL. Loebis et al. [15] implemented an intelligent navigation system, based on the integrated use of the global positioning system (GPS) and several inertial navigation system (INS) sensors for AUV. Kinsey et al. [16] presented a survey with advances in underwater vehicle navigation and identified future research challenges. Lee and Jun [17] presented a pseudo long baseline (LBL) navigation algorithm using the EKF. Watanabe et al. [18] proposed an accurate tracking method to estimate AUV position by using a supershort baseline (SSBL) from the ship. Geng and Sousa [19] presented a hybrid derivativefree extended Kalman filter, taking advantage of both the linear time propagation of the Kalman filter and nonlinear measurement propagation of the derivativefree extended Kalman filter.
The control system is another component of the lower level of the control structure. It contains a set of algorithms that stabilize the state of the vehicle, so it can follow the commands generated in the path planning system. The control of an underwater vehicle is complex because there are highly nonlinear hydrodynamic effects resulting from the interaction with the environment that cannot be quantified [20]. Cohan [21] states that the development of control systems for ROVs is a current and promising topic for future developments; this can be verified with the number of papers that can be found in literature.
Caccia and Veruggio [12] implemented and tested a guidance and control system for underwater vehicles using programmed controllers to regulate speed at the low level in a hierarchical threelevel structure. Do et al. [22] developed a robust adaptive control strategy to ensure that a sixdegreeoffreedom vehicle follows a prescribed path using four actuators. Van de Ven et al. [23] presented a qualitative assessment of the performance of control strategies using neural networks, indicating the advantages, disadvantages, and application recommendations. Hoang and Kreuzer [24] designed an adaptive PD controller for dynamic positioning of ROVs when the mission is executed in places near submerged structures and requires great execution precision. Bessa et al. [25] used sliding mode controllers, combined with fuzzy adaptive algorithms for controlling depth in ROVs. Alvarez et al. [26] developed a robust PID controller for controlling AUV used in oceanographic sampling work. Subudhi et al. [27] presented the design of a feedback controller for tracking paths in vertical planes. Ishaque et al. [28] presented a simplification of the conventional fuzzy controller for an underwater vehicle. Herman [29] presented a decoupled PD setpoint controller which is expressed in terms of quasivelocities for underwater vehicles. Petrich and Stilwell [30] presented a robust control for an autonomous underwater vehicle that suppresses pitch and yaw coupling.
Gutiérrez et al. [31] developed the underwater remotely operated vehicle Visor3 for surveillance and maintenance of ship hulls and underwater structures of Colombian port facilities and oceanographic research. Visor3 has a threelayer hardware architecture: instrumentation, communications, and control [32]. Although much work has been done in mechanics and electronics, a closedloop control system was not developed for the ROV Visor3, so the capabilities of the vehicle are still completely dependent on the pilot skills.
This work addresses the first approach to develop the lowlevel control system for the ROV Visor3 that will help operators to maneuver and determine the position and attitude of the vehicle under certain scenarios such as in ports or dams inspection tasks. The second section presents the mathematical model of the vehicle, the third section shows the development of the nonlinear modelbased observer, and the fourth section presents the implemented control algorithms; then, the simulation results are shown, and some conclusions are presented.
2. Mathematical Model
To analyze the motion of Visor3 in a threedimensional space, two coordinate frames are defined: an inertial Earthfixed frame (this reference frame is considered as the NorthEastDown (NED) frame, attached to a port facility), where the motion of the vehicle is described, and a bodyfixed frame, which is conveniently fixed to the vehicle and moves with it, Figure 2. The acceleration of the Earth due to rotation is neglected for this work. The position and orientation of the vehicle are described relative to the Earthfixed frame aswhere is the position and is the orientation. The linear and angular velocities of the vehicle, relative to the bodyfixed frame, are given bywhere and are the linear and angular velocities, respectively.
The mathematical model that describes the 6DOF differential nonlinear equation of motion for an underwater vehicle, stated in [6], is given bywhere is the inertia matrix, which comprises the mass of the rigid body and the added mass, ; is the Coriolis and centripetal matrix, which includes a term due to rigid body and a term due to the added mass, ; is the damping matrix; is the gravitational and moments vector; is the force vector; and is the rotation matrix from the bodyfixed frame to the Earthfixed frame. For this work, it is assumed that the origin of the bodyfixed frame is located at the same point of the center of gravity of the vehicle.
Applying Newtonian laws of motion, the rigid body equation of motion for the vehicle is given byIn (4), the rigid body inertia matrix can be expressed aswhere is the mass of the vehicle, is the identity matrix, is the inertia tensor with respect to the center of gravity, is the gravity vector in the bodyfixed frame, and is a skew symmetric matrix. The centripetal and Coriolis matrix can be parametrized in the form of a skew symmetric matrix as follows:whereThe added mass due to the inertia of the surrounding fluid is given bywhere are the hydrodynamics addedmass forces and moments in each direction. Finding the 36 entries of is a difficult task, but this can be simplified by using symmetry properties of the vehicle. For this work, Visor3 is assumed to be symmetric with respect to , , and planes. Therefore, the addedmass matrix can be computed asThe hydrodynamic centripetal and Coriolis matrix can also be parametrized asFor underwater vehicles, damping is mainly caused by skin friction and vortex shedding. One approximation commonly used [6, 33, 34] is a term with linear and quadratic components, given byRestoring forces and moments, calculated from center of gravity, are given bywhere is the weight of the vehicle and is the buoyancy, is the density of the fluid, is the acceleration of the gravity, and is the volume of fluid displaced by the vehicle.
2.1. Transformations
To obtain the linear velocity in the Earthfixed frame from the linear velocity in the bodyfixed frame, a linear transformation must be applied. The transformation matrix is given bywhere and . The angular velocity transformation matrix is given bywhere .
Finally, the kinematic equations of the vehicle can be expressed as
3. Nonlinear ModelBased Observer
The development of the observer needs to account for the ROV high nonlinearities and coupled dynamics. Therefore, an extended 6DOF Kalman filter (EKF) that considers Coriolis, damping, and restoring forces has been developed. Equations (3) can be written as a statespace realization, as follows:where is a function of the state vector and is given byand is the input coupling matrix given byIn (16), is the input vector given by thrusters’ forces; is the measurement sensitivity matrix, which depends on the ROV sensors; and and are plant and measurement noises, respectively; they are assumed to be zeromean Gaussian white noise processes with covariance matrix and given byThe continuoustime model in (16) and (17) is discretized using a 1storder approximation Euler method as follows:whereand is the step time. The discretized system is given byThe objective of the EKF is to estimate the current state by using a linearized version of the system’s model. The EKF is executed in two steps: the predictor which calculates an approximation of the state and covariance matrix and the corrector which improves the initial approximation. The predictor equations for the EKF are is the a priori estimate of the state, is the a posteriori estimate of the state, is the predicted measurement, is the a priori covariance matrix, is the a posteriori covariance matrix, and is the state transition matrix defined by the following Jacobian matrix:The corrector equations for the EKF algorithm arewhere is the Kalmanfilter gain calculated asThe observation matrix is defined by the following Jacobian matrix:It is important to state that the EKF is not an optimal filter, due to the linearization process of the system. Furthermore, the matrices and depend on the previous state estimation and the measurement noise. Therefore, the EKF may diverge if consecutive linearizations are not a good approximation of the linear model in the whole domain. However, with good knowledge of the system’s dynamics, bias and noise compensation, and an appropriate configuration sampling time, this algorithm is good enough for application in control systems in marine vehicles.
4. Control Algorithms
The control of an underwater vehicle is complex because there are highly nonlinear hydrodynamic effects resulting from the interaction with the environment that cannot be quantified [20]. Additionally, disturbances from the environment may appear. Problems such as obtaining all the state variables for the vehicle can limit the design of such control algorithms.
Currently, the ROV Visor3 is driven through a joystick that sends power commands to a mainboard installed in the vehicle; this board translates commands into input signals for each motor. Figure 3 shows the current openloop control system implemented in Visor3.
4.1. Thruster Allocation
The task which consists in generating a particular command to be sent to each individual actuator according to the control law and thrusters configuration is called control allocation [33].
The thrust vector that describes the force generated by the thruster is given bywhere is the total number of thrusters. The total force and moment generated by the thrusters will bewhere is the thruster configuration matrix, which is a function of the thrusters position , as well as the azimuth and elevation angles, and , respectively. This vector is referenced to the bodyfixed frame. The thruster configuration matrix describes how the thrust of each motor contributes to the force or moment in each direction. The matrix is given bywhere is the column vector of the th thruster and is computed asThe rotation matrix is defined by the product of two rotation matrices:where and are described byrespectively; Visor3 has fixed heading and pitch angles for each thruster.
Now that the thrust provided by each thruster is known using (30), the input that must be sent to each motor has to be computed. The input could be the revolution speed of the motor or a voltage signal for the driver. Equation (30) is then rewritten aswhere is a diagonal matrix with the thrust coefficients described by the equation is a column vector with elements , where is the propeller velocity rate, is the water density, and is the propeller diameter. The thruster allocation problem is solved finding asAlthough may not be square or invertible, it can be solved using the MoorePenrose pseudo inverse given bySubstituting (38) into (39) yieldsThe voltage for each driver calculated from is given bywhere and are the gain of the th motor and driver, respectively. This last equation fails when saturation occurs in the actuators. Figure 4 shows how to change according to , with different values from multiplication .
4.2. Multivariable PID Control
The parallel noninteracting structure of the PID is given bywhere is the proportional gain, is the derivative gain, is the integral gain, and is the error defined byFor Visor3, each controller is designed for the control of one DOF; this implies that , , and are diagonal and positive matrices. In this work, heuristic methods were used to tune the gains of the PID controller. A high proportional gain acts rapidly to correct changes in the references. Due to the vehicle’s dynamics and the interaction with the fluid, a high derivative action is used to provide damping to the motion of the vehicle, when it is reaching the setpoint. Finally, it is decided that a small integral action can correct the steadystate error. This PID control can be improved, according to Fossen [6], by using gravity compensation and vehicle’s kinematics. The PID control signal is transformed byFigure 5 shows the implementation of (44). The controller needs the error and the position estimation to calculate the output.
5. Simulation and Results
The simulation of the ROV dynamics, the observer algorithm, and the controller were implemented in Simulink. Additionally, several functions can be constructed using conventional MATLAB code, providing great flexibility for highlevel programming.
Visor3 parameters were obtained using CAD models (SolidEdge® software) and CFD simulation (ANSYS® software). Table 1 contains all the model parameters used in the simulation to represent the dynamics of the vehicle.

The thruster simulation is divided into three steps: the driver, the motor dynamics, and the propeller dynamics. The lowlevel control of the system is managed by the driver. The driver regulates the torque by increasing or decreasing the current in order to maintain the velocity of the motor shaft. For this work, it is assumed that load changes generated for the propellers are regulated by the driver. In that order, only thrust is considered.
For this work, motors’ dynamics are not considered, since they present a fast time response in comparison with the dynamics of the vehicle. Figure 6 shows the dynamic response of the MAXON DC motor. The steadystate value is reached in less than 40 ms. The simulation model is represented only by a constant gain , which is the relationship between the maximum velocity and the nominal voltage and is described byThe motor used is a MAXON EC motor 136201 with a planetary gearhead GP 42C203113. The nominal speed, reduction, and the nominal voltage are taken from [35, 36] and used in (45) to obtain .
The driver’s function is to regulate the velocity when there are changes in the load. The driver receives an input voltage between 0 and 5 V (saturation) and transforms it to 0–48 V. Additionally, the driver can be configured to follow a prescribed acceleration curve, in order to decrease the current consumed by the motor in the initial operation.
The propellers used in Visor3 are the Harbor Models 3540 from the Wageningen Bseries with four blades. The coefficients and can be approximated using polynomials [37], given byFigure 7 shows and curves for Visor3’s propellers. In order to obtain the thrust and torque coefficients, a nominal advance speed of 1.5 m/s for the vehicle was assumed. The parameters for a thruster are shown in Table 2.

Visor3 has four controllable DOFs: surge, sway, heave, and yaw. Figure 8 shows the thruster location in Visor3 and Table 3 summarizes the parameters from thrusters position and orientation in Visor3.

The ROV dynamics were implemented as a continuoustime model, and the EKF runs in discrete time with a 0.05 s fixed sample time. The implementation was done using four main functions; see Figure 9:(i)ROV_Nolinear_Discrete: it calculates the next state of the ROV described by (23).(ii)ROVSal_Nolinear_Discrete: it calculates the output of the ROV according to the sensors.(iii)ROV_linear_Discrete: it evaluates the Jacobian in each state estimation described by (25).(iv)ROVSal_linear_Discrete: it evaluates the output of the ROV given the Jacobian described by (28).For the measurement matrix, it was considered that Visor3 has a MEMSENSE® IM050300C050A35 triaxial micro inertial measurement unit (μIMU) that provides three linear acceleration measurements and three angular velocities, with noise of 5.0 mg and 0.5°/s. In this work, all measurements are assumed to be made in the bodyfixed frame and a standard INS solution is proposed; that is, attitude and position are obtained through integration of signals from the IMU. The measurement matrix is given byTo test the performance of the EKF algorithm and its implementation, two different position references were commanded to the ROV: in the surge direction a position of 2 m (see Figure 10) and in sway 1 m (see Figure 10). Figure 10 shows the estimation of the position in the Earthfixed frame.
A simulation experiment was conducted with a trajectory that describes changes in the and and yaw directions. Figure 11 shows the result of the controller. The experiment was conducted with the following gain matrices:PID gains were obtained by trial and error; a high proportional gain generates fast but aggressive response; hence, a high derivative gain was added to increase damping and decrease oscillations in spite of having a slower time response. A small integral gain was used to eliminate the steadystate error. The PID with gravity compensation cancels the effects of restoring forces while the vehicle is moving. This PID with compensation has a better performance, but it requires a good estimation of the vehicle’s attitude. Additionally, Figure 12 shows that the regular PID is less energyefficient, due to the high changes in the control signal. This change in the control signal can reduce duty life of the thrusters. Finally, the regular PID structure is unstable when the vehicle moves far away from the origin, due to restoring forces and propagation error.
6. Conclusions
The dynamic model of the underwater remotely operated vehicle Visor3 has been presented. This model considers forces and moments generated by the movement of the vehicle within the fluid, damping, and restoring forces. The model was defined using bodyfixed and Earthfixed coordinate systems, and Visor3’s parameters were obtained using CAD models and CFD simulations.
The full ROV system and the EKF were simulated to compare the performance of the navigation system with the use of a PID + gravity compensation control algorithm that depends on a good estimation of the state. It is important to state that the estimation in large periods of time can diverge due to integration of the noise present in acceleration measurements to obtain the velocity of the vehicle in the bodyfixed frame. More sensors (such as SSBL and DVL) can be used in Visor3 to overcome such a problem; this will allow the navigation system to get the position of the vehicle in a more precise way, which is required for its regular operations: maintenance purposes can be performed in ships hulls and underwater structures within Colombian ports facilities.
As it was shown, the EKFbased navigation system is capable of filtering the noise in measurements and accurately estimates the state of the vehicle; this is important since a noisy signal that enters into the feedback system can cause greater efforts in the thrusters and more energy consumption. However, more simulations have to be carried out in order to determine how critical is the divergence in the position estimation caused by phenomena such as biases and losses in the communications.
Two different control algorithms were tested with the simulation of the ROV: PID and PID + gravity compensation. The PID with gravity compensation is capable of stabilizing the system in less time compared to the PID and decreases the energy consumption. On the other hand, the PID without gravity compensation loses tracking at different times; this may be caused by the force exerted from thrusters in order to compensate oscillations from the vehicle. In Visor3, the forward/backward thrusters are nonaligned with the body frame; therefore, they can cause pitch and roll oscillations. Finally, the simple PID goes unstable after some time period. However, the PID with gravity compensation needs a good estimation of the position and attitude. This PID strategy is a first approach to the motion control of the vehicle.
Implementing the proposed navigation system and the controller in Visor3’s digital system requires the knowledge of the dynamic response of the vehicle and appropriate selection of the sample time since it affects the EKF algorithm’s convergence. Moreover, many operations are in matrix form and with floatingpoint format, so the implementation of such navigation system and controllers requires a high computation capacity of the onboard processor. These algorithms are the first approximation to the real closedloop control system that will be implemented in Visor3.
Competing Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgments
This work was developed with the funding of Fondo Nacional de Financiamiento para la Ciencia, la Tecnología y la Innovación, Francisco José de Caldas; the Colombian Petroleum Company, ECOPETROL; Universidad Pontificia Bolivariana (UPB), Medellín; and Universidad Nacional de Colombia, Sede Medellín, UNALMED, through the Strategic Program for the Development of Robotic Technology for Offshore Exploration of the Colombian Seabed, Project 121053130550, Contract 02652013.
References
 G. N. Roberts, “Trends in marine control systems,” Annual Reviews in Control, vol. 32, no. 2, pp. 263–269, 2008. View at: Publisher Site  Google Scholar
 M. Chyba, T. Haberkorn, R. N. Smith, and S. K. Choi, “Design and implementation of time efficient trajectories for autonomous underwater vehicles,” Ocean Engineering, vol. 35, no. 1, pp. 63–76, 2008. View at: Publisher Site  Google Scholar
 F. Xu, Z.J. Zou, J.C. Yin, and J. Cao, “Identification modeling of underwater vehicles' nonlinear dynamics based on support vector machines,” Ocean Engineering, vol. 67, pp. 68–76, 2013. View at: Publisher Site  Google Scholar
 M. Candeloro, E. Valle, M. R. Miyazaki, R. Skjetne, M. Ludvigsen, and A. J. Sørensen, “HMD as a new tool for telepresence in underwater operations and closedloop control of ROVs,” in Proceedings of the MTS/IEEE (OCEANS '15), pp. 1–8, Washington, DC, USA, October 2015. View at: Google Scholar
 D. D. A. Fernandes, A. J. Sørensen, K. Y. Pettersen, and D. C. Donha, “Output feedback motion control system for observation class ROVs based on a highgain state observer: theoretical and experimental results,” Control Engineering Practice, vol. 39, pp. 90–102, 2015. View at: Publisher Site  Google Scholar
 T. I. Fossen, Guidance and Control of Ocean Vehicles, John Wiley & Sons, New York, NY, USA, 1994.
 J.H. Li, B.H. Jun, P.M. Lee, and S.W. Hong, “A hierarchical realtime control architecture for a semiautonomous underwater vehicle,” Ocean Engineering, vol. 32, no. 13, pp. 1631–1641, 2005. View at: Publisher Site  Google Scholar
 H.P. Tan, R. Diamant, W. K. G. Seah, and M. Waldmeyer, “A survey of techniques and challenges in underwater localization,” Ocean Engineering, vol. 38, no. 1415, pp. 1663–1676, 2011. View at: Publisher Site  Google Scholar
 M. Candeloro, A. J. Sørensen, S. Longhi, and F. Dukan, “Observers for dynamic positioning of ROVs with experimental results,” IFAC Proceedings Volumes, vol. 45, no. 27, pp. 85–90, 2012, Proceedings of the 9th IFAC Conference on Manoeuvring and Control of Marine Craft. View at: Publisher Site  Google Scholar
 M. S. Grewal and A. P. Andrews, Kalman Filtering Theory and Practice Using MATLAB, John Wiley & Sons, 2nd edition, 2001.
 M. Caccia, G. Casalino, R. Cristi, and G. Veruggio, “Acoustic motion estimation and control for an unmanned underwater vehicle in a structured environment,” Control Engineering Practice, vol. 6, no. 5, pp. 661–670, 1998. View at: Publisher Site  Google Scholar
 M. Caccia and G. Veruggio, “Guidance and control of a reconfigurable unmanned underwater vehicle,” Control Engineering Practice, vol. 8, no. 1, pp. 21–37, 2000. View at: Publisher Site  Google Scholar
 L. Drolet, F. Michaud, and J. Côté, “Adaptable sensor fusion using multiple Kalman filters,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, vol. 2, pp. 1434–1439, Takamatsu, Japan, November 2000. View at: Publisher Site  Google Scholar
 M. Blain, S. Lemieux, and R. Houde, “Implementation of a ROV navigation system using acoustic/Doppler sensors and Kalman filtering,” in Proceedings of the OCEANS, vol. 3, pp. 1255–1260, San Diego, Calif, USA, September 2003. View at: Publisher Site  Google Scholar
 D. Loebis, R. Sutton, J. Chudley, and W. Naeem, “Adaptive tuning of a Kalman filter via fuzzy logic for an intelligent AUV navigation system,” Control Engineering Practice, vol. 12, no. 12, pp. 1531–1539, 2004. View at: Publisher Site  Google Scholar
 J. Kinsey, R. Eustice, and L. Whitcomb, “A survey of underwater vehicle navigation: recent advances and new challenges,” in Proceedings of the IFAC Conference of Maneuvering and Control of Marine Craft, pp. 1–12, Lisbon, Portugal, 2006. View at: Google Scholar
 P.M. Lee and B.H. Jun, “Pseudo long base line navigation algorithm for underwater vehicles with inertial sensors and two acoustic range measurements,” Ocean Engineering, vol. 34, no. 34, pp. 416–425, 2007. View at: Publisher Site  Google Scholar
 Y. Watanabe, H. Ochi, T. Shimura, and T. Hattori, “A tracking of AUV with integration of SSBL acoustic positioning and transmitted INS data,” in Proceedings of the OCEANS—EUROPE, pp. 1–6, Bremen, Germany, May 2009. View at: Publisher Site  Google Scholar
 Y. Geng and J. Sousa, “Hybrid derivativefree EKF for USBL/INS tightlycoupled integration in AUV,” in Proceedings of the IEEE International Conference on Autonomous and Intelligent Systems (AIS '10), pp. 1–6, IEEE, Povoa de Varzim, Portugal, June 2010. View at: Publisher Site  Google Scholar
 F. Azis, M. M. Aras, M. Rashid, M. Othman, and S. Abdullah, “Problem identification for underwater remotely operated vehicle (ROV): a case study,” Procedia Engineering, vol. 41, pp. 554–560, 2012. View at: Publisher Site  Google Scholar
 S. Cohan, “Trends in ROV development,” Marine Technology Society Journal, vol. 42, no. 1, pp. 38–43, 2008. View at: Publisher Site  Google Scholar
 K. D. Do, J. Pan, and Z. P. Jiang, “Robust and adaptive path following for underactuated autonomous underwater vehicles,” Ocean Engineering, vol. 31, no. 16, pp. 1967–1997, 2004. View at: Publisher Site  Google Scholar
 P. W. J. Van de Ven, C. Flanagan, and D. Toal, “Neural network control of underwater vehicles,” Engineering Applications of Artificial Intelligence, vol. 18, no. 5, pp. 533–547, 2005. View at: Publisher Site  Google Scholar
 N. Q. Hoang and E. Kreuzer, “Adaptive PDcontroller for positioning of a remotely operated vehicle close to an underwater structure: theory and experiments,” Control Engineering Practice, vol. 15, no. 4, pp. 411–419, 2007. View at: Publisher Site  Google Scholar
 W. M. Bessa, M. S. Dutra, and E. Kreuzer, “Depth control of remotely operated underwater vehicles using an adaptive fuzzy sliding mode controller,” Robotics and Autonomous Systems, vol. 56, no. 8, pp. 670–677, 2008. View at: Publisher Site  Google Scholar
 A. Alvarez, A. Caffaz, A. Caiti et al., “Fòlaga: a lowcost autonomous underwater vehicle combining glider and AUV capabilities,” Ocean Engineering, vol. 36, no. 1, pp. 24–38, 2009. View at: Publisher Site  Google Scholar
 B. Subudhi, K. Mukherjee, and S. Ghosh, “A static output feedback control design for path following of autonomous underwater vehicle in vertical plane,” Ocean Engineering, vol. 63, pp. 72–76, 2013. View at: Publisher Site  Google Scholar
 K. Ishaque, S. S. Abdullah, S. M. Ayob, and Z. Salam, “A simplified approach to design fuzzy logic controller for an underwater vehicle,” Ocean Engineering, vol. 38, no. 1, pp. 271–284, 2011. View at: Publisher Site  Google Scholar
 P. Herman, “Decoupled PD setpoint controller for underwater vehicles,” Ocean Engineering, vol. 36, no. 7, pp. 529–534, 2009. View at: Publisher Site  Google Scholar
 J. Petrich and D. J. Stilwell, “Robust control for an autonomous underwater vehicle that suppresses pitch and yaw coupling,” Ocean Engineering, vol. 38, no. 1, pp. 197–204, 2011. View at: Publisher Site  Google Scholar
 L. B. Gutiérrez, C. A. Zuluaga, J. A. Ramírez et al., “Development of an underwater remotely operated vehicle (ROV) for surveillance and inspection of port facilities,” in Proceedings of the ASME 2010 International Mechanical Engineering Congress and Exposition, pp. 631–640, Vancouver, Canada, 2010. View at: Publisher Site  Google Scholar
 L. M. Aristizábal, S. Rúa, C. E. Gaviria et al., “Design of an open sourcebased control platform for an underwater remotely operated vehicle,” DYNA, vol. 83, no. 195, pp. 198–205, 2016. View at: Publisher Site  Google Scholar
 T. I. Fossen, Handbook of Marine Craft Hydrodynamics and Motion Control, John Wiley & Sons, London, UK, 2011.
 F. Dukan, ROV motion control systems [Ph.D. thesis], Norwegian University of Science and Technology (NTNU), Trondheim, Norway, 2014.
 Maxon EC Motor, “EC 45 $\oslash $45 mm, brushless, 150 Watt,” 2015. View at: Google Scholar
 MaxonMotor, Planetary Gearhead GP 42 C ∅42 mm, 3–15 Nm, 2015.
 M. Bernitsas, D. Ray, and P. Kinley, “KT, KQ and efficiency curves for the Wageningen Bseries propellers,” Tech. Rep. 237, Department of Naval Architecture and Marine Engineering, College of Engineering, The University of Michigan, Ann Arbor, Mich, USA, 1981. View at: Google Scholar
Copyright
Copyright © 2016 Santiago Rúa and Rafael E. Vásquez. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.