1. Introduction
The incursion of drones has increased due to the need for spatial and temporal data coverage of specific areas where human intervention is risky, such as disaster areas, high-risk environments due to viral or radioactive contamination, and difficult-to-access areas due to great depths or heights. Drones are small mobile robots (3–20 kg) that can be terrestrial, aerial, and submarine.
In the last five years, Unmanned Underwater Drones (UUD) have become a standard tool for researching marine life, some examples of which include the monitoring, tracking, and imaging of a randomly moving shark [
1] and the study of a school of fish in an altered environment, as carried out in the tropical reservoir (oligo-mesotrophic and warm monomictic) located in southeastern Brazil [
2]. However, although underwater drones are a valuable tool for data collection and are becoming less expensive, they still have limitations due to possible equipment effects, such as different light intensities and the artificial noise, speed, size, and depth of the vehicle, resulting in the alteration of the behavior of the species to be studied.
In addition to marine life, shipwreck hulls and vestiges of war can also be found in the sea. Among these inorganic wastes, some that are considered marine litter include historical pieces or hazardous material. Every year, it is estimated that 5.1 million tons of mismanaged plastic enter the oceans worldwide. 75% of marine litter (ML) goes to beaches while the rest remains in seawater [
3]. This problem is an area of opportunity for collaboration between an aerial drone and an underwater drone, as presented in [
4], to acquire information on the progress and dimension of marine litter using the aerial drone while with the underwater drone, it is possible to obtain specifications of this garbage, such as the type of material and level of contamination in the water, reducing the costs of hiring planes, boats or divers.
Marine archaeology is an area of research that aims to rescue historical finds from the depths. For example, in [
5], a study with an underwater drone of a shipwreck from the fourth-century B.C. near the island of Chios, Greece, was carried out, obtaining qualitative and quantitative data documenting the condition of the ancient shipwreck. In the case of war material found on the seabed, a proposal is presented in [
6] to analyze the danger of this material through the BASTA project (Boost Applied ammunition detection through Smart data inTegration and AI workflows), tasked with identifying and improving underwater unexploded ordnance (UXO) detection approaches.
The UUDs can be equipped with a robotic arm to perform more complex tasks, obtaining an Underwater Vehicle Manipulation System (UVMS). Some tasks a UVMS executes are the collection of objects [
7] and marine products [
8] and the maintenance of underwater structures [
9], among others. Depending on the degrees of freedom of the manipulator robot to be coupled to the underwater drone, it will be challenging to carry out the assigned task for the UVMS due to the disturbances added to the drone caused by the movement of the manipulator.
When a UVMS has more than one manipulator robot attached to its mobile platform, the result is an underwater vehicle multi-manipulator system (UVMMS). Although some bio-inspired underwater robots known as bionics possess mechatronic multibodies, they differ from a UVMMS due to motion generation, as can be reviewed in [
10,
11].
The aggregated disturbances or interaction forces in a UVMS can be estimated by generating a mathematical model, which is acquired through different methodologies, depending on the researcher’s focus. Suppose the UVMS is analyzed as two independent systems. In that case, the UUD as vehicle is model with the methodology reported in [
12], where a movement of 6-DOF in an underwater environment with external forces is considered. The external component depends on the fluid, represented by the Euler–Lagrange technique. At the same time, the manipulator robot can define it using the Newton–Euler or Euler–Lagrange formulism.
Suppose it is desired to obtain the mathematical model as a coupled and unique system. In that case, there are some techniques presented in the literature, such as [
13] where the system is expressed as the sum of two forces, generalized active force and generalized inertia force, obtained from the analysis of linear and angular speeds and accelerations; while in [
14], the modeling strategy is derived from the Newton–Euler formulation, taking the base of the manipulator as a mobile base. However, the mentioned methodologies lack information to reproduce the technique.
This article presents a model of a UVMMS represented as a dependent system between its elements, that is, where the manipulator robot depends on the movement information of the underwater vehicle, and in turn, the underwater vehicle requires information about the torques generated due to the movement of the vehicle. This reaction also depends on the disturbances of the marine environment.
The contribution of this paper is to extend the dynamic model for marine vehicles, described by Fossen [
15], to the case of a particular family of UVMMS. A new notation is proposed to include the description of the vehicle as well as the manipulators in an intuitive way.
In the proposed analysis, the UVMMS consists of a 6-DOF (degree of freedom) underwater vehicle with
K serial robotic manipulators with actuated joints.
Figure 1 shows a scheme of the general system, where coordinate systems are represented using Red, Green and Blue color convention for the
X,
Y and
Z axes. This color code will continue to be used in later sections to indicate axes in free-body diagrams.
The suggested approach for calculating the mathematical model is separated into three phases: kinematic, kinetic, and external forces analyses. For each phase, the study will be carried out for the general case and then applied to the vehicle and the manipulator links. The modeling technique used to analyze this system is the Newton–Euler formulation.
2. Kinematics
Kinematics refers to the study of motion without considering the forces that cause it. A kinematic model [
16] includes a description of position
r, angular velocity
, linear velocity
v, angular acceleration
, and linear acceleration
a.
The system shown in
Figure 1 has a complex geometric structure; to describe the kinematics of each one of its elements, it is necessary to fix frames in several parts of the system. In the proposed analysis, frames are located at the beginning of each link [
17].
The origin of the inertial frame of the world is denoted by using the NED convention, the frame attached to the vehicle is represented by , the location of the center of gravity (CoG) of the vehicle is denoted by .
The origin of the frame attached to link l, of manipulator k, is denoted by and is defined using Denavit–Hartenverg convention (D-H), the attachment point of manipulator k is located at , the location of the CoG of link l of manipulator k is denoted by .
The total number of links of manipulator k is denoted by , and the end effector’s location is indicated by .
Notation for rotations will be defined as , which denotes the rotation matrix of origin relative to .
Explicit notation for positions, velocities, and accelerations will be defined using two subscripts , indicating the related frames, and one superscript k showing the frame used to express the quantity, i.e., denotes the relative position of origin relative to frame expressed in frame .
A simplified notation will be defined to improve readability: the latter subscript will be omitted when it refers to the inertial frame, and the superscript will be omitted when it relates to the local frame, i.e., velocity denoted using explicit notation is equivalent to in simplified notation.
When considering moving frames, the derivative of a vector concerning time, depends on the frame chosen to perform the calculation. The notation for derivatives will be defined using a left subscript indicating the selected frame, i.e., represents the derivative of in the inertial frame.
Note that, in general, the derivative of a vector in the inertial frame
is different from the derivative of the vector in the local frame
; the relation between these two concepts is obtained from the relation of the vectors to be derived
, as follows in Equation (1):
This is obtained using the product rule for derivation and the fact that the derivative of a rotation matrix can be expressed in terms of a skew matrix of the corresponding angular velocity, which can be written in product form.
To avoid confusion, Newton’s notation will be used to denote derivative in local frame .
2.1. General Motion between Two Moving Frames
Consider a frame
that is translating and rotating relative to frame
, which is also translating and rotating relative to inertial frame
, as shown in
Figure 2. In this subsection, the general motion of frame
is calculated, the equations found will be used to define the motion of the UVMMS links.
Although the next analysis is well known, there are several variations in the considerations and notation used in different areas, i.e., underwater vehicles and robotic manipulators, furthermore, particular movements are sometimes considered rather than the more general case, i.e., one of the frames is fixed or rotates but does not translate, etc. To avoid confusion with the existing literature, the angular and linear motion, to be used in the analysis of all elements of the UVMMS, is formulated here with the chosen notation.
2.1.1. Angular Motion
Orientation of frame
relative to
, denoted by rotation matrix
, is calculated as the result of the successive rotations
and
, as follows in Equation (
2):
Angular velocity of frame
relative to
, denoted by
, is calculated by the derivative of Equation (
2), which lends to Equation (3):
Angular acceleration of frame
relative to
, defined as
, is calculated in Equation (4):
2.1.2. Linear Motion
Position of frame
relative to
, denoted by vector
, is the sum of positions
and
, as follows in Equation (
5):
where relative position was calculated as
.
Linear velocity of frame
relative to
, defined as
, is calculated as follows in Equation (
6):
Linear acceleration of frame
relative to
, defined as
, is calculated as follows in Equation (
7):
The pose of
defined using Equations (
2) and (
5) can be described, using simplified notation, as follows in Equation (8):
Velocity Equations (3) and (
6) can be expressed in local frame by multiplying them by
, in simplified notation, as follows in Equation (9):
Acceleration Equations (4) and (
7) can be expressed in local frame by multiplying them by
, in simplified notation, as follows in Equation (10):
2.2. Movement of the Vehicle
In this analysis, a 6-DOF underwater vehicle is considered: its position is defined using Cartesian coordinates, and its orientation is defined by a rotation matrix, relative to
, using Roll, Pitch, Yaw (RPY) convention, as shown in
Figure 3.
Under these considerations, the pose of the vehicle, relative to
, is defined as follows in Equation (11):
where the rotations relative to
are defined as follows in Equation (
12):
where s.
and c.
. The vector of orientation using RPY convention, of the vehicle relative to
, is defined as
.
The velocity of
expressed in the local frame can be defined in terms of the velocity of the vehicle expressed in the world frame [
15], as follows in Equation (13):
The acceleration of
expressed in the local frame can be defined in terms of the acceleration of the vehicle expressed in the world frame, as follows in Equation (14):
2.3. Movement of Manipulator Links
In this subsection, the position, velocity, and acceleration of frame attached to link of manipulator k will be defined in terms of the motion relative to the previous link , to improve readability the notation has been omitted. However, this analysis must be done for each manipulator k.
To calculate pose, velocity, and acceleration of link , consider and in the equations of the general motion.
The pose of
is defined using Equation (8), as follows in Equation (15):
Relative rotation
and translation
between two consecutive links can be represented in matrix form
, which is called homogeneous transformation, as follows in Equation (
16):
Orientation and position defined in Equation (15) can be described in matrix form as follows in Equation (
17):
Considering all intermediate links, the position of the end effector can be evaluated as follows in Equation (
18):
where
is the generalized position vector of the end effector relative to
.
The transformation of
relative to frame
, is defined using DH parameters
, the relative homogeneous transformation is defined as in Equation (
19):
This is the transformation obtained when considering frame attached to link l when its origin is located at joint axis l, it is defined in terms of a rotation about , from to , an angle , followed by a translation along , from to , a distance , followed by a rotation about , from to , an angle , followed by a translation along , from to , a distance .
The relative velocity between link
l and previous link
depends on the type
of joint
as shows in
Figure 4. In the proposed analysis, it is considered to be either rotational or prismatic, as follows in Equation (
20):
Considering that joint
moves along axis
of the local frame of link
, the relative angular and linear velocity between consecutive links can be defined as follows in Equation (21):
where
is the complement of
.
The velocity of frame
, expressed in local frame
, is calculated using Equation (9), as follows in Equation (22):
The acceleration of frame
, expressed in local frame
, is calculated using Equation (10), as follows in Equation (23):
2.4. Movement of the CoG
To calculate the pose, velocity, and acceleration of the CoG of link l, consider a frame attached to link l, fixed at the CoG and having the same orientation as . In this case Equations (9) and (10) are reduced because is an identity matrix and and .
Under these considerations, the pose the CoG of link
l, is calculated by taking
and
in Equation (8), as follows in Equation (24):
where
is the link’s CoG position relative to local frame
.
Similarly, velocity of the CoG of link
l, is calculated by taking
and
in Equation (9), as follows in Equation (25):
Finally, acceleration of the CoG of link
l, is calculated by taking
and
in Equation (10), as follows in Equation (26):
Equations (24)–(26) are valid not only for the manipulators link’s CoG, but also can be used to analyse the vehicle’s CoG, considering .
Equations (15) and (22)–(26) are known as the forward recursion in the Newton–Euler formulation of the dynamic model of a robot manipulator, meanwhile the movement of vehicle defined by Equations (11), (13) and (14) are the initial conditions for this case of study.
3. Kinetics
Kinetics refers to the study of motion considering the forces that cause it. A kinetic model includes the translational and rotational movement of the CoG [
18].
When calculating the dynamic model of a mechanical system, the most popular approaches are the Euler–Lagrange formulation and Newton–Euler (NE) approach; in this work, NE was chosen because this formulation describes all the force and torque components in each link of the robot [
19]. This is useful to calculate the reaction forces of the manipulator to the vehicle, as well as to describe the forces on the links of the manipulators resulting from the movement of the vehicle, allowing the complete model to be rewritten in different levels of abstraction, as will be shown in
Section 5.
In this part of the kinetics analysis, gravity forces will not be considered, as they will be included as part of the restoration forces in the hydrostatic study.
3.1. General Motion of a Rigid Body
According to Euler’s first and second axioms, the relation between the forces and the movement generated on a rigid body is defined as follows in Equation (27):
where
and
denote the total moment and force applied at the CoG of link
l expressed in
,
represents the inertia matrix of link
l measured at
described in
.
Note that depends on the current orientation of link l, however it can be rewritten in terms of , the constant inertia relative to local frame , as follows: .
By calculating the derivatives in Equation (27), is calculated Equation (28):
Total force and moment can be expressed in local frame
, by multiplying Equation (28) by
, which using simplified notation, is calculated in Equation (29):
Note that in Equation (29) it has been substituted the fact that , which is obtained following the procedure describe in Equation (1).
To evaluate Equation (29), it is necessary to identify the total force and moment , applied at the CoG of each link.
3.2. Movement of Manipulator Links
In the same way, as in the kinematic analysis, the notation has been omitted to improve readability. However, this analysis must also be done for each manipulator k.
Based on
Figure 5, total force
and moment
, at the CoG of link
l, are calculated in Equation (30):
where
and
denote the force and moment exerted to link
l, expressed in local frame
.
The sum of external forces and moments are denoted by and , expressed in local frame , which includes the disturbances produced by the fluid or other sources.
Position of frame relative to , expressed in , is calculated as .
The required joint forces or moments
are found by taking the
component of the force or moment exerted to link
l, by previous link
, depending on
, as follows in Equation (
31):
3.3. Movement of the Vehicle
Using
Figure 6, total force and moments at the underwater vehicle are calculated as follows in Equation (32):
Equation (32) has the same structure as Equation (30); the difference is that in the analysis of the vehicle, several reaction forces are calculated, one for each manipulator at the first link, denoted by .
Position of frame relative to , expressed in , is calculated as .
Equation (30) is known as backward recursion in the Newton–Euler formulation of the dynamic model of robot manipulator, while Equation (32) propagates the reaction forces of all manipulators to the vehicle, the initial conditions of this recursion are the forces and moments at the end effectors when an object is being manipulated, which otherwise are zero.
4. External Forces
The marine environment generates external disturbances that interact with the system, such as the hydrostatic and hydrodynamic forces. Depending on craft type and the author’s interest analysis, these forces are computed differently [
20].
Given an underwater vehicle coupled with two manipulators [
21], the hydrodynamic effects considered are added mass, drag forces, buoyancy, and current waves. The parameters are obtained through Navier–Stokes equations.
In the modeling and control of lightweight underwater vehicle–manipulator systems [
22], the hydrodynamic effects of interest are added mass, hydrodynamic drag, restoring forces, and external disturbances, where the last consider the friction between the links of the manipulator, underwater currents and forces generated by the contact of the end-effector with the environment.
In this project, the hydrodynamics effects to be considered are restoration forces, including weight and buoyancy, added masses effects and damping forces. Other effects that are not considered, but can be added, are skin friction, lift, and non-linear drag forces; also, other environmental disturbances that can be contemplated are wind, waves, vortexes, and ocean currents [
15].
4.1. Restoring Forces
Restoration forces are analyzed in the field of hydrostatics, which studies incompressible fluids at rest; it includes gravitational force and buoyancy force .
Considering a NED convention for the world frame
, the gravitational force
and moment of link
l, expressed in
, are defined as follows in Equation (33):
where
g is the magnitude of gravity acceleration,
because gravitational force is exerted at the link’s CoG.
The buoyancy force
on link
i is proportional to the mass of the fluid displaced by the moving body, in the opposite direction of the gravitational force [
22], by Archimedes’ principle is defined as follows in Equation (34):
where
is the mass of the fluid displaced by the link, calculated as
where
is the density of the fluid and
the volume of the fluid displaced by link
l.
Center of buoyancy CoB relative to CoG is calculated as , where is the CoB expressed in local frame .
4.2. Added Mass Forces
When a submerged body moves, it must displace a volume of the fluid that surrounds it. In the hydrodynamics field, this phenomena can be modeled as a virtual mass added to the system [
15].
The mathematical expression of added mass forces highly depends on the geometry, velocity of the vehicle, frequency of the fluid, etc.; when considering a symmetric body and irrotational ocean currents, it can be approximated as follows in Equation (35):
is an inertia matrix due to added link masses l.
The relative acceleration due to the surrounding fluid is defined as where is the acceleration of the fluid expressed in inertial frame .
Considering irrotational fluid implies .
4.3. Damping Forces
Another hydrodynamic effect is the damping caused by the fluid’s viscosity that causes dissipative forces of drag (profile and superficial friction) and lifts that act on the body’s center [
23]. The lift forces are orthogonal to the velocity of the fluid, and the drag forces are parallel to the velocity of the fluid and act on the CoM of the body [
14].
Damping forces and moments are nonlinear and coupled; the following Equation (36) represents only the linear decoupled part of these phenomena:
where
and
represent the linear coefficients of the damping forces.
Considering the fluid forces in Equations (33)–(36), the total external force and moment are defined as follows in Equation (37):
Several other disturbances can produce an even more realistic simulation model; those can be added to Equation (37) in terms of the force and moment exerted on the CoG.
5. Different Approaches in Numerical Implementation of the Mathematical Model
In this section, an analysis of the different approaches used to implementing a numerical simulation of the mathematical model is presented. For a detailed description of a complete implementation, considering control inputs, hydrodynamic effects, and a specific kinematic configuration, refer to
Section 6.
Depending on the level of refinement chosen to represent the links of the mathematical model, three approaches are identified for the numerical implementation of the UVMMS mathematical model: refined, intermediate, and coarse approaches.
5.1. Refined Approach
The refined approach is to consider every link of the UVMMS as an individual system of equations. This approach would require representing each link using an independent set of forward and backward recursion equations, which relate its motion with the next and previous links as described in the kinematic and kinetic models.
In the case of the vehicle link, the state variables are
and
, which represents the velocity and position of the vehicle relative to
, expressed in
. Algorithm 1 shows the calculations used to represent the behavior of the vehicle link.
Algorithm 1 Mathematical model of the vehicle. |
|
In the case of a manipulator link, the state variables are
and
q. Algorithm 2 shows the calculations used to represent the behavior of a manipulator link.
Algorithm 2 Mathematical model of a manipulator link. |
|
Note that velocity and acceleration vectors, expressed in local frame , are defined to simplify the connection between link models.
The dynamics of the UVMMS are the behavior produced by the interaction of all the system links, as shown in the blocks diagram of
Figure 7.
Note that, in
Figure 7, each block shown represents an individual link of the UVMMS where Underwater vehicle is implemented using Algorithm 1 and Link k|m are implemented using Algorithm 2. The block called Total reaction calculates the sum of all reaction forces and moments produced by the manipulators on the vehicle, the expression is obtained from Equation (32), as shown in Algorithm 3.
Algorithm 3 Computation of the total reaction forces and moments produced by the manipulators. |
|
5.2. Intermediate Approach
An intermediate approach will be to consider each manipulator as a single system. This approach would require the implementation of the forward recursion from the first to the last link of every manipulator attached to it, and it will also need the implementation of the backward recursion to propagate the forces from each end effector to the vehicle. The required calculations are shown in Algorithm 4.
The dynamics of the UVMMS is the behavior produced by the interaction of the vehicle and the manipulators, as shown in the blocks diagram of
Figure 8.
Where represents the vector of control inputs, for manipulator k defined as and represents the vector of joint positions.
Note that, in
Figure 8, the blocks labeled as Robotic manipulator k represent the model of all the links in that kinematic chain, which is equivalent to the union of all the blocks labeled as Link k|m in
Figure 7, but the system of equations and the programming loops are implemented as in Algorithm 4.
Algorithm 4 Mathematical model of a complete manipulator. |
|
5.3. Coarse Approach
A coarse approach is to consider all the links of the UVMMS, including the vehicle, as a single system. This approach would require the implementation of the forward recursion from the vehicle link to the last link of every manipulator attached to it, it will also need the implementation of the backward recursion to propagate the forces from each end effector to the vehicle.
This approach can be implemented on a single process with a single vector input
, which represents the vector of control inputs for all the actuators of the UVMMS and a single vector output
. The complete model can be represented with a single block, implemented using Algorithm 5.
Algorithm 5 Mathematical model of a complete UVMMS. |
|
Note that this approach is equivalent to all the blocks shown in
Figure 8 but the programming loops for the forward and backward recursion required for each manipulator, using the equations of the vehicle as initial conditions, are implemented in a single function.
Although the three approaches presented in this section are equivalent, there are differences in computational cost and the level of detail of the information obtained: for instance, the refined approach has a higher computational cost but it allows the user to monitor the reaction forces and moments between any consecutive links; the intermediate approach, on the other hand, only allows the total reaction force and moment produced on the vehicle by the manipulators to be monitored; finally, the coarse approach can be faster, depending on the implementation, but is it not possible to monitor the reaction forces between any elements.
6. Simulation Validation
In this section, a numerical simulation of a particular UVMMS is presented. The system is built on an underwater vehicle with six degrees of freedom and four anthropomorphic manipulators attached to it, as shown in
Figure 9.
Unless otherwise specified, all the parameters are expressed in standard units: kilogram, meter, and second; however, to avoid scale problems during the numerical solution of the differential equations, the quantities can be coded using gram, millimeter, and second in their place. Signals can be transformed back to standard units when presented in the results.
6.1. Vehicle’s Parameters
The underwater vehicle is based on a customized BlueROV2 Heavy, its parameter values are taken from the literature [
24,
25].
The mass parameters of the vehicle, as used in Equations (26) and (29), are defined as follows:
The buoyancy parameters of the vehicle, as used in Equation (34), are defined as: , and .
In this case the mass of the fluid displaced by the vehicle is so the magnitude of the buoyancy force is , which is greater than the magnitude of the gravitational force, calculated as .
The inertia matrix due to added vehicle’s mass, as used in Equation (35), is defined as follows:
The linear damping parameters of the vehicle, as used in Equation (36), are defined as follows:
The configuration matrix of the thrusters
, which is the function of the orientation of each thruster
and relates the force in task space to the forces on each thruster, is expressed numerically as shown in Equation (
38):
6.2. Manipulator’s Parameters
For simplicity, all four manipulators are designed equally, and attached symmetrically at the bottom of the underwater vehicle. The transformation of the first link frame, of each manipulator
k, relative to the vehicle frame, is calculated as a translation in the three axes and a single rotation produced by the first joint, as follows in Equation (
39):
where
is defined as follows, according to
Figure 9:
Note that origin must be located at the same point as origin , so that axis intersects axis .
As the relative transformations of the second and third links involves more than one rotation and translation, they are calculated using the
Table 1:
The corresponding transformations are evaluated using Equation (
19), as follows:
Mass parameters of the links, as used in Equations (26) and (29), are defined as follows in
Table 2:
Hydrodynamic parameters, as used in Equations (34)–(36), are defined as follows in
Table 3:
The inertia of the added mass [
13], as well as the damping coefficients [
26], are approximated considering a cylindrical geometry and the viscosity of a fluid.
The density of the fluid is considered the same, for the three links and the center of buoyancy is considered at the same point as the center of gravity, for the three links .
The vector of control inputs is calculated using PID controllers for the position and orientation of the vehicle and the movement of the joints as shown in
Figure 10.
Where MOD block represents a modulus function that maps rotation angles to the range
,
is the rotation matrix of the vehicle to the inertial frame, defined in Equation (
12),
is the forward kinematics of the thrusters, defined in Equation (
38), and
denotes the pseudo-inverse of
. The saturation blocks are used to limit the maximum output of the actuators, which is
for joints and
, for thrusters.
6.3. Complete Simulation Diagram
A complete implementation of the UVMMS model simulation is presented in
Figure 11: as can be seen, a refined approach was used to implement the simulation of the rigid body dynamics, so each link of the system is modeled inside an independent block. With this approach, it is even possible to obtain the information on the reaction forces and moments, not only between the vehicle and the manipulators, but also between any two consecutive links.
A detail of the implementation of each manipulator is shown on
Figure 12, where the propagation of velocities and forces is shown in detail.
The mathematical model for the proposed UVMMS is validated through simulations with three different conditions: first, the moments produced by the underwater vehicle movement on the robotic manipulators are simulated by controlling the pose of the vehicle without controlling the manipulators; second, the moments produced by the robotic manipulators’ movement on the underwater vehicle are simulated by controlling the joints of the robotic manipulators without controlling the orientation of the underwater vehicle; and third, the complete behavior of the UVMMS is simulated by controlling all the elements of the system to compensate for reaction forces between both subsystems.
6.4. Simulation of Moments Produced by the Underwater Vehicle Movement on the Robotic Manipulators
In this test, a trajectory for the UVMMS is defined using the next expressions:
where
s,
s,
s,
s,
s and
s, with a simulation time of 40 s. The UVMMS trajectory tracking is implemented using a PD (Proportional-Derivative) controller, where the gains are assigned only for the underwater vehicle; they are shown in the following
Table 4:
Figure 13 shows the response of the UVMMS when the vehicle is following the defined trajectory using the PD controller: note that for the manipulator’s joints no trajectory has been defined, as they are not actuated in this test.
Note that the motion induced on the manipulators by the motion of the vehicle is produced by the inertia of the manipulator’s links and the forces produced by the velocity and acceleration terms in the equations of motion. It can be seen that from 15 s, there is a greater activity for the manipulator robot because the underwater vehicle begins its trajectory on the “y” axis and later with movement over .
6.5. Simulation of Moments Produced by the Robotic Manipulators Movement on the Underwater Vehicle
In this test, a trajectory for the robotic manipulators attached to the UVMMS is defined using the next expressions:
where
m,
s,
s,
s,
s,
s,
s, with a simulation time of 55 s. The signals are alternated between the different manipulators to avoid collisions. In this test, the depth is the only degree of freedom actuated on the underwater vehicle, all the other signals were turned off, because it is desired to observe the effect produced by the motion of the manipulators on the vehicle. The trajectory tracking for all the manipulators is implemented using a PID (Proportional–Integral–Derivative) controller with the same gains, and the gains are presented in
Table 5:
Figure 14 shows the response of the UVMMS when the manipulators are following the defined trajectory using the PID controllers. Note that for the vehicle no trajectory has been defined, as only the depth is actuated.
Note that the motion induced on the vehicle, by the motion of the robotic manipulators, is produced by the inertia of the vehicle and the reaction forces and moments produced by the motion of the manipulators. Trajectory tracking starts at 10 s, which is why oscillating movements are displayed in the orientation response of the manipulator vehicle. The effect on the vehicle can be observed when the movement of joint produces a change in the orientation of the vehicle.
6.6. Simulation of the Complete Behavior of the UVMMS When Fully Actuated
In this test, a trajectory for all the elements of the UVMMS is defined. For the vehicle, the next expressions are proposed:
where
m, with a simulation time of 20 s. The trajectory for the first manipulator is defined in task space, relative to the attachtment point, as follows:
The actual trajectories for the manipulator in joint space are obtained using inverse kinematics. Trajectory tracking is implemented using the controller gains defined in the previous test, which are shown on
Table 4 and
Table 5. The trajectory-tracking response of the UVMMS generalized coordinates is presented in
Figure 15.
Note that even when all the actuators of the system are controlled in this test, it is still possible to note the interactions forces between the systems; however, the effects are attenuated by the actuators.
Figure 16 shows the 3D representation of the trajectory followed by the UVMMS in the last test, which is a spiral movement of the underwater vehicle, maintaining the orientation to the center of the spiral.
7. Discussion
The importance of obtaining a model for an underwater vehicle multi-manipulator system (UVMMS) is to know the effects of interaction by coupling and propose an adequate control strategy. The Newton–Euler formulation was used to model the dynamics of an underwater 3-DOF anthropomorphic robot due to the analysis of the forces and reaction pairs between the links, providing sufficient information to adhere to the model of the underwater vehicle. The results obtained were as expected, observing the coupling effects between an underwater vehicle and a manipulator robot by following individual trajectories in synchrony by simulation.
Equations (23) and (26) are equivalent to the representation of Craig [
17] (Equations (6.47) and (6.48)) with relative linear velocity and acceleration equal to zero, because rotational joints where considered.
Note that Craig denotes the linear acceleration of link l relative to the inertial frame, rotated to the local frame, as , in contrast with the presented work where it is denoted by . The reader must not confuse with , in the notation of the presented work, because the latter represents the derivative of velocity expressed in local frame.
In fact, the relation between these variables is obtained by multiplying Equation (1) by
, as follows:
Equation (26) is also equivalent to the acceleration calculated by Fossen [
15] (Equation (3.33)) in the analysis of the CoG of an underwater vehicle. The equivalence is evident when substituting Equation (
45) in (26).
There are several examples in the literature that show the equivalences between the dynamic model obtained using NE and EL (Euler–Lagrange) methods. In particular, the formulation of Spong [
27] is clear and well explained. Although he uses a different convention to locate the frames on the links, the presented properties of the skew matrices were useful for the authors of the presented work to represent the velocities and accelerations in a vector and non-matrix manner, having the advantage of the reduction of terms.
The approach consulted in [
28] is a combination of the NE and EL (Euler–Lagrange) methods, expressed in a matrix manner and where the parameters are simplified assuming that the vehicle body is symmetrical in most of its planes. Although the analysis begins with the expression of velocities and accelerations over their 6-DOF, it ends up being expressed with the EL formulation.
Other works that use a decoupled approach [
29,
30,
31], are also equivalent to the presented work because, as shown in
Section 2, the corresponding equations are particular cases of the general equations of motions presented in this work.