1 Introduction

Owing to the increased demand for underwater operations, various underwater vehicle-manipulator systems (UVMS) have been designed and developed to enhance the safety and efficiency associated with such operations. Farivarnejad and Moosavian [1] reported a control method for the dual-arm UVMS employed in the transport of a heavy cylinder. Conti et al. [2] proposed a control algorithm and grasping strategy for a free-floating single-arm UVMS. Stuart et al. [3] developed a tendon-driven underwater hand end-effector for the Ocean One UVMS. Turning of handle valves is a common task employed during testing of the operational performance of UVM systems. Carerra et al. [4] employed a learning approach for the valve-turning operation performed by a single-arm UVMS. Cataldi and Antonelli [5] devised an interaction control method facilitating valve-handle turning and pushing of a button. Cieslak et al. [6] proposed a kinematic controller for redundant UVMSs to handle operation panels, including handle valves. The authors, too, have previously reported an optimal configuration of the dual-arm UVMS for use in valve-turning operations [7].

The most important problem involved in performing underwater manipulations is the one related to managing disturbances that may occur during operation. In an underwater environment, oceanic currents are the main cause of disturbances, and extant researches have attempted to solve this problem via application of improved control methods. Kumar et al. [8] proposed a robust trajectory controller for UVMS based on the time delay control law and verified its performance through simulations. Han and Chung [9] proposed coordinated motion control to achieve stable motion in the event of underwater disturbances. Korkmaz et al. [10] proposed a control system based on inverse dynamics of an underactuated system operating under disturbances. Kim et al. [11] verified the position-keeping performance of a task-based controller under oceanic currents through simulations and experiments. In addition, the authors have previously proposed a UVMS method compensating for oceanic currents by the torque generated at manipulator joints [12]. However, limitations exist when compensating unknown disturbances exclusively through use of controllers.

Redundant manipulators are capable accomplishing several tasks simultaneously. By assigning priority to tasks, the manipulator can perform subtasks, such as disturbance compensation and torque distribution, without interrupting a main task. Khatib [13] proposed basics of redundancy resolution methods for robotic manipulators. Khatib [14] also proposed a redundancy-resolution method for the manipulator joint torque. Russakow et al. [15] applied the concept of operational space to branching-chain manipulators that possess multiple arms and proposed a redundancy resolution method for mobile manipulators. Dietrich et al. [16] reviewed and compared existing null-space projection methods for redundant manipulators.

Dual-arm manipulation methods are capable of performing intervention tasks much more complicated compared to single-arm methods owing to redundancy within the model and cooperation between the two arms. Yamamoto and Yun [17] analyzed the mobility and manipulability of multi-arm manipulators with regards to their kinematic and dynamic properties. Casalino and Turetta [18] proposed a control algorithm capable of handling non-holonomic multi-arm mobile manipulators. Korpela et al. [19] developed a framework for dual-arm aerial manipulator systems capable of performing handle-valve turning operations and verified its performance via experiments. The dual-arm manipulation method is commonly employed in UVMSs owing to the advantages it offers while performing tasks, such as increased manipulability and work space. Jun et al. [20] analyzed the manipulability of dual-arm UVMS and proposed tele-operated frameworks to facilitate task accomplishment in an optimal posture through application of redundancy resolution methods. Moe et al. [21] presented a trajectory-generation algorithm for planar dual-arm UVMS with a null-space projection method. Simetti and Casalino [22] designed a full-body controller capable of handling inequality constraints when performing transferring tasks.

Stability and accuracy of robotic systems could be improved by using of the operational environment. Grasping or clamping of environmental elements, such as handrails or pipes, results in creation of a reaction force, which prevents sudden movement or system collapse. Harada et al. proposed a humanoid-robot balancing method involving grasping of a handrail. Through experiments, their study demonstrated increased stability during motion of a robot climbing up a large step [23]. Koyanagi et al. [24] developed a pattern generator for humanoid robots involving touching of a handrail, and demonstrated increase in stability of the robot while walking over a rough terrain. Lehmann et al. [25] succeeded in increasing the accuracy of milling operations performed by clamping onto a rigid environment. This advantages can be applied to underwater manipulation when the system is fixed on the surroundings, by grasping.

In this paper, scientific comparison between manipulation methods of UVMS was conducted. Handle valve turning task was set as objective for UVMS. Three candidates of manipulation methods were considered, the first of which involved single-arm manipulation. The second method was based on dual-arm manipulation involving grasping two points on the valve handle. The last method comprised dual-arm manipulation that involved using one arm to grasp underwater pipes while the other arm was used to turn the handle valve; this was inspired by the idea explained in the previous paragraph. Each method was considered as a parallel manipulator, and kinematics associated with each method was solved. Desired vehicle and joint trajectories were generated by multiplying the pseudo-inverse and velocity Jacobian. Dynamics of the three techniques were also analyzed, and dynamic simulations were performed by MATLAB. A proportional-derivative (PD) controller was applied to make the UVMS follow the desired trajectory. Two kinds of oceanic currents were modeled using the first-order Gauss–Markov process–one being smaller, and the other, large. Simulations of the valve-turning operation performed using the three manipulation methods were independently executed with consideration of disturbances caused by the two types of oceanic currents; obtained results were compared against each other.

The remainder of this paper comprises of four parts. Section 2 explains configurations of the three manipulation methods, and the kinematics and dynamics associated with each method were subsequently solved. Simulation settings, such as the desired trajectory and disturbance modelling, have been described in detail in Sect. 3. Simulation results are discussed in Sect. 4, and lastly, conclusions drawn from this study are listed in Sect. 5.

2 Analysis of manipulation methods

2.1 Method configurations

The authors have previously designed and developed an underwater vehicle named a tilt thrusting underwater robot (TTURT), as depicted in Fig. 1 [26]. TTURT can produce motion with six degrees of freedom (DOF), and is equipped with four thrusters and two servo motors to tilt the thrusters. The platform-module concept was applied in TTURT design. There exist two connectors that can attach to working modules–one connector is located at the top of the vehicle while the other is located at the bottom. UVMS could be designed for TTURT by attaching arm modules at the attachment points [7].

Fig. 1
figure 1

Underwater vehicle named a tilt thrusting underwater robot (TTURT) with module-attachment point located on top, having a metal-ring shape

Handle-valve turning, which is an important underwater operation, was assigned as the objective task for the proposed UVMS. Owing to the limited number of attachment points, only the single- and dual-arm manipulation methods could be considered for the handle-valve turning task. The single-arm method involves no choice but to hold the valve handle with the end-effector of the solitary arm, this method will be called M1 in the rest of the paper. Dual-arm manipulation, on the other hand, offers two possible cases. In the first case, will be called M2, both UVMS arms are used to grab the valve handle, which is the typical method of operating with dual arms. The second case involves grabbing the valve handle with one arm, the other arm being used to clamp onto a nearby underwater pipe. This method will be called as M3.

The valve turning task requires only planar movement. To prevent external disturbance from oceanic current, the system movement is contrained into plane, which can withstand off-plane disturbance with its structural strength. The M3 was optimally designed in the previous research by distributing five joints on the working plane and deploying one joints to adjust valve plane [7]. The kinematic structure was selected and optimized to maximize dynamic manipulability of the system. To perform comparison study between three methods, the structures of other two methods were designed to be equivalent to M3. Schematic representations of the three candidate methods are depicted in Fig. 2.

Fig. 2
figure 2

Kinematic diagram of the three manipulation methods. The handle valve was considered as a virtual passive joint, marked in yellow. The working and clamping manipulators are marked in red and blue, respectively. a Single-arm manipulation (M1); b Dual-arm manipulation (M2) with manipulators grabbing at two points on the handle valve. c Dual-arm manipulation (M3) with clamping manipulator grabbing an underwater pipe located near handle valve. (Color figure online)

2.2 Kinematics modeling

When the proposed UVMS grabs the handle valve, the entire system could be considered as a parallel manipulator. The underwater vehicle could be modeled as a virtual 6 DOF joint, combination of three unlimited prismatic and three rotational joints located on the fixed base and at the center of the vehicle [15]. The handle valve was modeled as a virtual passive joint with virtual linkage extended up to the last manipulator joint. Therefore, when grabbing the handle valve, the entire system could be considered as a parallel manipulator attached to the ground. Figure 2 depicts the parallel kinematic modeling of the three manipulation methods.

Notations used for the three manipulation methods are described in Fig. 2. The upper arm that grabs the valve handle is referred to as the “working manipulator” while the lower arm, which grabs the valve handle or pipe, is called the “clamping manipulator.” The origin is denoted by \(\mathbf {O}\), and the position of the vehicle center is indicated as \(\mathbf {B}\). The i-th joint of the working manipulator is denoted by \({\mathbf {W}} _i\) while that of a clamping manipulator is denoted by \({{\mathbf {C}}} _i\). The third joint of clamping manipulator, \({{\mathbf {C}}} _3\) is perpendicular to the other joints to adjust position and orientation of the end-effector of working manipulator to the handle valve. Position of the virtual joint, which is equivalent to that of the handle valve, is denoted by \({\varvec{v}}\). \(L_{wi}\) and \(L_{ci}\) denote linkage lengths of the working and clamping manipulators. The i-th joint angle of the working manipulator is expressed as \(q_{wi}\) while that of the clamping manipulator is denoted by \(q_{ci}\). The end-effector of the working manipulator is indicated as \({\mathbf {E}}\). Lastly, the joint angle at the virtual joint\(|-\)indicating the angle of the handle valve\(|-\)is denoted by \(q_V\).

The above kinematics of the three manipulation methods was solved in accordance with the theory of parallel manipulators [27]. The minimum number of joints required to express the system configuration were referred to as independent joints, represented by \({\varvec{q}}_u\). All other joints were called dependent joints, denoted by \({\varvec{q}}_v\). Joints that controlled by actuators were called active joints, \({\varvec{q}}_r\). Table 1 lists a grouping of joints for each manipulation method. The vector \({\varvec{\eta }}=[x,~y,~z,~ \varphi ,~ \theta ,~ \psi ]^{\top }\) indicates the position and orientation of the vehicle in the earth-fixed coordinate frame; \({\varvec{q}}_w=[q_{w1},~q_{w2}~,q_{w3}]^{\top }\) and \({\varvec{q}}_c=[q_{c1},~q_{c2}~,q_{c3}]^{\top }\) represent joint vectors for the working and clamping manipulators, respectively; \(q_{Vc}\) is the handle valve angle with respect to the clamping manipulator, which is required for M2 to fully represent its configuration.

Table 1 Independent and active joints corresponding to three manipulation methods

Constraint equations were derived to resolve forward kinematics corresponding to the three manipulation methods. Vehicle position and orientation could be derived using joint angles and lengths of manipulators, which should be equivalent to the actual vehicle position and orientation. Figure 3 depicts how constraint equations for the three manipulation methods were derived. In case of M1, the earth-fixed vehicle position and orientation vector must be equal to that derived using joint angles of the working manipulator (\({\varvec{\eta }}_w\)). For M2 and M3, \({\varvec{\eta }}\) must be equivalent to \({\varvec{\eta }}_w\) and \({\varvec{\eta }}_c\)\(|-\)the position and yaw orientation derived using joint angles of the clamping manipulator. Additionally, in the case of M2, the difference between the handle valve angles \(q_V\) and \(q_{Vc}\) must remain constant during operation, because both manipulators grab the same structure. Constraint equations corresponding to the three manipulation methods could, therefore, be expressed as follows:

$$\begin{aligned} {{\mathbf {g}}}_{M1}({\varvec{q}}_{all})= & {} {\varvec{\eta }}_w-{\varvec{\eta }}, \end{aligned}$$
(1)
$$\begin{aligned} {{\mathbf {g}}}_{M2}({\varvec{q}}_{all})= & {} [({\varvec{\eta }}_w-{\varvec{\eta }})^{\top },~({\varvec{\eta }}_c-[x,~y,~z,~\psi ]^{\top })^{\top },~q_V-q_{Vc}-\beta ]^{\top }, \end{aligned}$$
(2)
$$\begin{aligned} {{\mathbf {g}}}_{M3}({\varvec{q}}_{all})= & {} [({\varvec{\eta }}_w-{\varvec{\eta }})^{\top },~({\varvec{\eta }}_c-[x,~y,~z,~\psi ]^{\top })^{\top }]^{\top }, \end{aligned}$$
(3)

The vector \({{\mathbf {g}}}_{Mi}\) indicates constraint equation for the i-th manipulation method; \(\beta\) denotes the angle between the last linkages of the working and clamping manipulators while grabbing the handle valve in M2. The roll and pitch derived from clamping manipulator was removed due to dependencies along the derived z position of the vehicle. All constraints must equal zero during the proposed UVMS operation. The specific terms of Eqs. (13) were derived by using screw theory [28].

Fig. 3
figure 3

Constraints of manipulation methods—a M1, b M2, and c M3. Position and orientation of the vehicle must be same as that derived using manipulator angles

The constraint Jacobian could be obtained by differentiating the constraint equations with respect to time. With the constraint Jacobian, relations between the independent and all other joint velocities could be obtained. Derivation of these relations proceeds as follows:

$$\begin{aligned} \frac{d{{\mathbf {g}}}_{Mj}({\varvec{q}}_{all})}{dt}= & {} {\mathbf {G}}_{Mj}\dot{{\varvec{q}}}_{all,Mj} = {\mathbf {0}}, \end{aligned}$$
(4)
$$\begin{aligned} \dot{{\varvec{q}}}_{v,Mj}= & {} {{\varvec{\Phi }}}\dot{{\varvec{q}}}_{u,Mj}, \end{aligned}$$
(5)
$$\begin{aligned} \dot{{\varvec{q}}}_{all,Mj}= & {} {{\varvec{\Lambda }}}\dot{{\varvec{q}}}_{u,Mj}, \end{aligned}$$
(6)
$$\begin{aligned} \dot{{\varvec{q}}}_{r,Mj}= & {} {{\varvec{\Gamma }}}\dot{{\varvec{q}}}_{u,Mj}, \end{aligned}$$
(7)

Subscript \(_{Mj}\) indicates involvement of the vector in the j-th manipulation method. Equation (4) describes differentiation of the constraint equation with respect to time. Aligning the row of the constraint Jacobian and performing matrix inversion, Eqs. (5) and (6) could be obtained. Relations between the independent and active joint velocities could also be deduced by selecting the row of Jacobian \({{\varvec{\Lambda }}}\) given by Eq. (7).

Relations between the handle-valve angular velocity \(\dot{q}_V\) and independent joint velocity vector \(\dot{{\varvec{q}}}_u\), through use of the forward Jacobian of the respective manipulation methods, can be derived as follows:

$$\begin{aligned} \dot{q}_V= & {} {\mathbf {J}}\dot{{\varvec{q}}}_{all,Mj}, \end{aligned}$$
(8)
$$\begin{aligned} \dot{q}_V= & {} ({\mathbf {J}}_{u,Mj}+{\mathbf {J}}_{v,Mj}{{\varvec{\Phi }}})\dot{{\varvec{q}}}_{u,Mj}={\mathbf {J}}_{f,Mj}\dot{{\varvec{q}}}_{u,Mj}. \end{aligned}$$
(9)

Equation (8) could also be derived using the relation between the vehicle yaw and manipulator joint angles. Substituting Eqs. (5) and (6) to obtain Eq. (9), which is the forward Jacobian of j-th manipulation method, \({\mathbf {J}}_{f,Mj}\).

2.3 Dynamic modeling

Parallel dynamic modeling of the proposed manipulation methods was obtained by modifying the dynamics equation of the free-floating dual-arm UVMS, thereby making them adhere to constraint equations. Figure 4 depicts the free-floating dual-arm UVMS. The conventional dynamics equation for an underwater vehicle in the body-fixed frame of reference can be written as follows [29]:

$$\begin{aligned} {\mathbf {M}}_{v}\dot{{\varvec{v}}}+{\mathbf {C}}_{v}({\varvec{v}}){\varvec{v}}+{\mathbf {D}}_{v}({\varvec{v}}){\varvec{v}}+{\mathbf {g}}_{v}={\varvec{\tau }}_v. \end{aligned}$$
(10)

The vector \({\varvec{v}}=[u,~v,~w,~p,~q,~r]^{\top }\) denotes the body-fixed vehicle velocity; \({\mathbf {M}}_{v}\) represents the inertia matrix with added mass terms of the vehicle; \({\mathbf {C}}_{v}({\varvec{v}})\) denotes the centrifugal and Coriolis force matrix, which has been neglected in this study owing to low operating speeds of the system. The hydrodynamic drag matrix is denoted by \({\mathbf {D}}_{v}({\varvec{v}})\); \({\mathbf {g}}_{v}\) denotes gravity as well as buoyancy vector, which has also been neglected because the system can be considered to maintain neutral buoyancy, since the center of buoyancy and center of mass coincide. \({\varvec{\tau }}_v\) denotes the thrust force vector of the vehicle. Corresponding terms for the TTURT vehicle have been calculated by the authors in their previous study [26].

Fig. 4
figure 4

Notation diagram of free-floating dual-arm UVMS

Dynamic equation of the fixed underwater manipulator could be written as follow [29]:

$$\begin{aligned} {\mathbf {M}}_{m}\ddot{{\varvec{q}}}+{\mathbf {C}}_{m}(\dot{{\varvec{q}}})\dot{{\varvec{q}}}+{\mathbf {D}}_{m}(\dot{{\varvec{q}}})\dot{{\varvec{q}}}+{\mathbf {g}}_{m}={\varvec{\tau }}_m. \end{aligned}$$
(11)

where the vector q denotes the manipulator joint angle vector; \({\varvec{\tau }}_m\) denotes the manipulator joint torque. All other notations bear the same meanings as in Eq. (10).

To put the above equation together, however, interactions between the vehicle and manipulators must be considered. The iterative Newton–Euler dynamics algorithm, reported in Schjoberg’s research [29], was employed to put together the above equations, vehicle dynamics, and dynamics of the working and clamping manipulators. After grouping the resulting terms, equations corresponding to each subsystem could be arranged as follows:

$$\begin{aligned} {\mathbf {M}}({\varvec{\zeta }})\dot{{\varvec{\zeta }}}+{\mathbf {D}}({\varvec{q}},\dot{{\varvec{q}}}, {\varvec{\zeta }}){\varvec{\zeta }}={\varvec{\tau }}, \end{aligned}$$
(12)

where,

$$\begin{aligned} {\mathbf {M}}({\varvec{\zeta }})= & {} \left[ \begin{array}{ccc} {\mathbf {M}}_v+\mathbf {H}_w({\varvec{q}}_w)+\mathbf {H}_c({\varvec{q}}_c) &{} ~{\mathbf {M}}_{Cw}({\varvec{q}}_w)~ &{} ~{\mathbf {M}}_{Cc}({\varvec{q}}_c) \\ {\mathbf {M}}_{Cw}^{\top }({\varvec{q}}_w) &{} {\mathbf {M}}_{w}({\varvec{q}}_w) &{} \mathbf {0} \\ {\mathbf {M}}_{Cc}^{\top }({\varvec{q}}_c) &{} \mathbf {0} &{} {\mathbf {M}}_{c}({\varvec{q}}_c) \end{array}\right] , \end{aligned}$$
(13)
$$\begin{aligned} {\mathbf {D}}({\varvec{q}},\dot{{\varvec{q}}},{\varvec{\zeta }})= & {} \left[ \begin{array}{ccc} {\mathbf {D}}_v({\varvec{v}})+{\mathbf {D}}_{w1}+{\mathbf {D}}_{c1}~ &{} ~ {\mathbf {D}}_{w2} &{} ~ {\mathbf {D}}_{c2} \\ {\mathbf {D}}_{w3} &{} {\mathbf {D}}_{w} &{} \mathbf {0} \\ {\mathbf {D}}_{c3} &{} \mathbf {0} &{} {\mathbf {D}}_c \end{array}\right] . \end{aligned}$$
(14)

Equation (12) represents the dynamic equation of the entire UVMS. The term \({\varvec{\zeta }}=[{\varvec{v}}^{\top },~{\varvec{q}}_{w}^{\top },~{\varvec{q}}_{c}^{\top }]^{\top }\) represents the UVMS velocity vector, and subscripts vw, and c indicate the involvement of the term with the vehicle, working manipulator, and clamping manipulator, respectively. The term \({\mathbf {M}}\) represents the inertia matrix including added mass terms, and \({\mathbf {D}}\) represents the hydrodynamic drag. \(\mathbf {H}\) denotes inertia added from a manipulator to the vehicle; \({\mathbf {M}}_C\) denotes the reaction force and moment induced between a manipulator and vehicle; \({\mathbf {D}}_i\) indicates quadratic drag terms caused by interactions between the vehicle and manipulators; the vector \({\varvec{\tau }}=[{\varvec{\tau }}_v^{\top },~{\varvec{\tau }}_w^{\top },~{\varvec{\tau }}_c^{\top }]^{\top }\) is the drive force and torque vector, which comprises vehicle thrust force and joint torques of the two manipulators. The physical terms mentioned on Eqs. (13) and (14) were obtained in our previous work [27]. The manipulator linkages were considered to be of a thin cylindrical shape, terms related to which were calculated.

The body-fixed UVMS dynamic equation could be modified into a constrained dynamic equation, equivalent with a parallel manipulator. Cheng’s work addressed method for deriving constrained dynamics of the parallel manipulator by using constraint Jacobians of the system [30]. The inertia and drag terms of free-floating dynamics, Eq. (12), can be changed into those of constrained dynamics as follows:

$$\begin{aligned} \hat{{\mathbf {M}}}_{Mj}= & {} {{\varvec{\Lambda }}}_{Mj}^{\top }{\mathbf {M}}_{Mj}{{\varvec{\Lambda }}}_{Mj}, \end{aligned}$$
(15)
$$\begin{aligned} \hat{{\mathbf {D}}}_{Mj}= & {} {{\varvec{\Lambda }}}_{Mj}^{\top }{\mathbf {M}}_{Mj}\dot{{{\varvec{\Lambda }}}}_{Mj}+{{\varvec{\Lambda }}}_{Mj}^{\top }{\mathbf {D}}_{Mj}{{\varvec{\Lambda }}}_{Mj}. \end{aligned}$$
(16)

Equation (15) shows the inertia matrix of constrained dynamics and Eq. (16) is the drag matrix of which. \({{\varvec{\Lambda }}}_{Mj}\) denotes constraint Jacobian of the j-th manipulation method which was derived in previous section. \({\mathbf {M}}_{Mj}\) and \({\mathbf {D}}_{Mj}\) denote inertia and drag matrices of body-fixed dynamics–Eq. (12). With this conversion, the dynamics terms were changed into terms of independent joints. The constrained parallel dynamics with respect to joint angle of independent joints can be written as follows:

$$\begin{aligned} \hat{{\mathbf {M}}}_{Mj}\ddot{{\varvec{q}}}_{u,Mj} +\hat{{\mathbf {D}}}_{Mj}\dot{{\varvec{q}}}_{u,Mj} ={{\varvec{\Gamma }}}_{Mj}{\varvec{\tau }}_{r,Mj}. \end{aligned}$$
(17)

Equation (17) represents the dynamic equation of the j-th manipulation method with respect to its independent joints, \({\varvec{q}}_{u,Mj}\). \({\varvec{\tau }}_{r,Mj}\) is the force and torque vector of active joints corresponding to the j-th manipulation method. In case of M1, clamping manipulator terms does not used, since M1 only contains working manipulator only.

3 Simulation setup

3.1 Objective task and trajectory generation

Figure 5 depicts dimensions of the handle valve along with the desired valve-turning angle. The objective task involved turning the handle-valve through 90° in the counterclockwise direction. The radius of the handle valve was set as 200 mm, and its height from the base was set as 400 mm. In case of M3, the clamping point of the clamping manipulator was set 450 mm away from the base of the handle valve, which was randomly decided with respect to the handle valve dimensions. The initial grabbing point on the handle valve was located 45° counterclockwise from the base pipe. The desired angular velocity profile is depicted in Fig. 6. A second-order velocity profile was used to obtain the desired trajectory, thereby preventing rapid changes in angular acceleration. The maximum angular speed was set as \(1/16 \pi\) rad/s.

Fig. 5
figure 5

The dimensions of the handle valve and the objective trajectory

Fig. 6
figure 6

Desired end-effector trajectory with respect to time—a Desired end-effector positions at same time interval (30 ms); b desired angular velocity of handle valve \(q_V\); velocity is negative owing to counterclockwise direction

Linkage lengths and initial configuration of the proposed manipulation methods were obtained from the authors’ previous work with the valve dimensions and the clamping position described above [7]. The linkage lengths of dual-arm manipulator were optimized to have maximum dynamic manipulability during the handle-valve turning operation. Results of the optimization were applied to determine linkage lengths for manipulation methods. Table 2 lists linkage lengths corresponding to the three manipulation methods. Method M1 involves no clamping manipulator, hence results corresponding to only the working manipulator have been listed. In case of M2, length \(L_{c3}\) of the third linkage of the clamping manipulator was extended to have same horizontal length as that of M3, because the height of the clamping point here is different from that in case of M3. Initial configurations of the proposed manipulation methods were set using initial joint-angle results for the working manipulator as well as the position and orientation of the vehicle. Initial joint angles of the clamping manipulator were calculated to fit the configuration, since it possessed a unique solution.

Table 2 Linkage lengths for three manipulation methods

Desired joint trajectories of manipulation methods were derived using a generalized inverse method. The entire system possessed more actuators compared to the system’s DOF, and the number of the independent joints was greater compared to the objective task’s DOF−unity. Use of the redundancy-resolution method is, therefore, required to determine the desired UVMS trajectory. Desired velocities of independent joints could be derived as follows:

$$\begin{aligned} \dot{q}_{V,d}= & {} {\mathbf {J}}_{f,Mj}\dot{{\varvec{q}}}_{u,Mj,d}, \end{aligned}$$
(18)
$$\begin{aligned} \dot{{\varvec{q}}}_{u,Mj,d}= & {} {\mathbf {J}}_{f,Mj}^{\ddagger }\dot{q}_{V,d}, \end{aligned}$$
(19)

where subscript d indicates desired value. \({\mathbf {J}}_{f,Mj}^{\ddagger }\) denotes the weighted pseudoinverse, which could be mathematically expressed as:

$$\begin{aligned} {\mathbf {J}}_{f,Mj}^{\ddagger } =({{\varvec{\Gamma }}}^{\top }{{\varvec{\Gamma }}})^{-1}({\mathbf {J}}_{f,Mj} ({{\varvec{\Gamma }}}^{\top }{{\varvec{\Gamma }}})^{-1})^{\dag }. \end{aligned}$$
(20)

where superscript (\(\dag\)) is Moore-Penrose pseudoinverse. This trajectory of independent joints is minimizing joint velocity norm of all actuated joints as follows:

$$\begin{aligned} min{\Vert \dot{{\varvec{q}}}_{r,Mj,d}\Vert }^2 =min{\Vert {{\varvec{\Gamma }}}\dot{{\varvec{q}}}_{u,Mj,d}\Vert }^2 \end{aligned}$$
(21)

which is equivalent with Eq. (19).

3.2 Disturbance modeling

Oceanic currents were modeled to simulate disturbances. The speed and direction of oceanic currents were modeled using the first-order Gauss–Markov process [26, 30]. Equations used to obtain the oceanic currents were as follows:

$$\begin{aligned}&\dot{v}_{ocean}+\mu _0{v}_{ocean}=w_v(t), \end{aligned}$$
(22)
$$\begin{aligned}&\dot{\theta }_{ocean}+\mu _0{\theta }_{ocean}=w_{\theta }(t), \end{aligned}$$
(23)

Terms \({v}_{ocean}\) and \({\theta }_{ocean}\) in the above equations denote the speed and direction of oceanic currents in the earth-fixed reference frame; \(w_v(t)\) and \(w_{\theta }(t)\) denote Gaussian white noise corresponding to the said speed and direction; \(\mu _0\) is arbitrary constant. Two oceanic current models were considered, as already mentioned. Gaussian white noise power for speed \(w_v(t)\) was set as 20 dB and 30 dB for the slow and fast oceanic currents, respectively. The corresponding value of \(w_{\theta }(t)\) was set as 25 dB for both models, and \(\mu _0\) was set as 0.001. Figure 7 depicts time histories of speed and direction of the two oceanic-current models.

Fig. 7
figure 7

Time histories of oceanic-current models used for simulating the effect of external disturbances a speed variation in slow oceanic-current model; b direction variation in slow oceanic-current model; c speed variation in fast oceanic current model; d direction variation in fast oceanic-current model

In the simulation oceanic currents were considered as additional vehicle velocities [31]. Terms related to hydrodynamic parameters in the dynamic model were function of the relative vehicle velocity with respect to the water. The relative vehicle velocity vector could be obtained by subtracting the oceanic-current vector from the vehicle velocity, and substituting this relative velocity term in the hydrodynamic force-related terms yielded the disturbance induced dynamic equation given by:

$$\begin{aligned}&\tilde{{\varvec{v}}} = {\varvec{v}}-{\varvec{v}}^{B}_{ocean}, \end{aligned}$$
(24)
$${{\mathbf {M}}}({\tilde{\varvec{\zeta }}}){\dot{{\varvec{\zeta }}}}+{{\mathbf {D}}}({\varvec{q}},{\dot{{\varvec{q}}}}, {\tilde{\varvec{\zeta }}}){\tilde{{\varvec \zeta }}}={\varvec{\tau }},$$
(25)

The term \({\varvec{v}}^{B}_{ocean}\) denotes the velocity of oceanic currents in the body-fixed reference frame of the vehicle; \(\tilde{{\varvec{v}}}\) denotes the relative velocity with respect to water; and \({\tilde{\varvec{\zeta }}}=[\tilde{{\varvec{v}}}^{\top },~{\varvec{q}}_w^{\top },~{\varvec{q}}_c^{\top }]^{\top }\) denotes the UVMS velocity vector with due consideration of relative vehicle velocity. Modifying Eq. (25) with the method presented in Sect. 2.3, the parallel dynamics equation under the influence of oceanic currents could be obtained.

3.3 Simulation setup

With the derived dynamic equation above, simulations of UVMS operation based on the proposed manipulation methods were performed for comparison. Desired trajectories of independent and active joints were derived using the forward and constraint Jacobians, respectively. A PD controller was designed to make the active joints adhere to desired trajectories in accordance with the following equation:

$$\begin{aligned} {\varvec{\tau }}_{r,Mj} =({{\varvec{\Gamma }}^{\top }})^{\dag }({\mathbf {K}}_{P,Mj} {\varvec{e}}_{Mj}-{\mathbf {K}}_{D,Mj}\dot{{\varvec{e}}}_{Mj}), \end{aligned}$$
(26)

where \({\varvec{e}}_{Mj}={\varvec{q}}_{u,Mj,d}-{\varvec{q}}_{u,Mj}\) represents the error in independent joints of the j-th manipulation method, and \({\mathbf {K}}_{P,Mj}\) and \({\mathbf {K}}_{D,Mj}\) denote controller gains. Values of controller gains for each manipulation method are listed in Table 3. The term diag() refers to a diagonal matrix comprising elements (*). Figure 8 depicts the simulation control diagram. The gains were increased until the simulation of each method diverges.

Fig. 8
figure 8

Control diagram for dynamic simulation

Table 3 PD controller gain values for each method

4 Results and discussions

Simulations of the handle-valve turning operation were performed for the three proposed manipulation methods, and results obtained were subsequently analyzed. All simulations were programed in MATLAB Simulink, and each simulation lasted ten seconds; the sampling time was set as 1 ms.

Figure 9 depicts desired trajectories of the three manipulation methods derived using the kinematic equation. In each case, the vehicle demonstrates only two-dimensional motion on the \(x{-}y\) plane owing to limitations imposed by constraint equations. In cases M1 and M2, the vehicle covers a large distance around the handle valve, since valve turning is the primary task to be performed by the vehicle. In the case of M3, however, the vehicle covers a relatively short distance compared to the other two methods. This is because the working manipulator can turn the valve handle owing mainly to the fixed end of the clamping manipulator.

Fig. 9
figure 9

Desired trajectories of the three manipulation methods derived using the kinematics equation. Initial and final configurations are depicted using thick lines. Red and blue lines, respectively, denote linkages of the working and clamping manipulators. The vehicle is denoted by the black-colored box shape. a Vehicle trajectory in method M1; b vehicle trajectory in method M2; and c vehicle trajectory in method M3. (Color figure online)

Errors induced in the handle-valve trajectory when using the three proposed manipulation methods are depicted in Fig. 10. The errors of three cases were bounded to nearly zero, but due to the disturbance, the error is not completely zero. There were no meaningful differences on the valve angle error between three manipulation methods, which means the simulations were converged, and gains of the controller were well tuned.

Fig. 10
figure 10

The error of the handle valve angle trajectory. The black line indicates the error of the method M1, and the red line is the error of the method M2. The error of M3 is drawn as blue line. a Error graph without disturbance; b error graph under slow oceanic current; c error graph under fast oceanic current. (Color figure online)

Time histories of the joint torque of the working manipulator when using methods M1, M2 and M3 are depicted in Fig. 11 while Fig. 12 depicts corresponding time histories of the joint torque of the clamping manipulator. Among the three manipulation methods, M3 demonstrates generation of the smallest torque at the working manipulator while M2 generated larger torque than M3. M1 showed the largest torque values between three manipulation methods. Owing to high speed movement of the vehicle, working manipulators of methods M1 and M2 are required to withstand vehicle-water interactions and drag forces, and corresponding results for the clamping manipulator demonstrate similar tendencies. The M3 method demonstrates a smaller value of the clamping manipulator joint torque compared to M2. Under presence of oceanic curret, manipulator linkages were subjected to drag forces caused by oceanic current. Owing to the reaction force generated at the clamping manipulator in M3, the additional force required for compensating the disturbance can be reduced. Thus, when oceanic currents were applied to UVMS, the observed wobbling of manipulator torque was small in case of M3.

Fig. 11
figure 11

Time histories of the joint torque developed at the working manipulator. The torque at joint W1, which is closest to the vehicle, is indicated by black line. The red line describes torque at joint W2, and blue line indicates torque at joint W3, the last joint of working manipulator. a Working manipulator torque under absence of disturbance; b working manipulator torque under slow oceanic currents; c working manipulator torque under fast oceanic currents. (Color figure online)

Fig. 12
figure 12

Time histories of joint torque at clamping manipulator. Black line denotes joint torque of C1 joint located closest to the vehicle. Red and blue lines similarly denote torques developed at the C2 and C3 joints, respectively. a Joint torque of clamping manipulator without disturbance; b Joint torque of clamping manipulator under slow oceanic currents. c Joint torque of clamping manipulator under fast oceanic currents. (Color figure online)

Figure 13 depicts time histories of the vehicle thrust force while Fig. 14 depicts corresponding trends in vehicle yaw torque. The vehicle thrust along x and y directions and yaw torques were analyzed because the vehicle demonstrated two-dimensional motion in the x-y plane. Owing to the large movement of the vehicle, the thrust force and yaw torques involved in methods M1 and M2 were observed to be significantly larger compared to those involved in M3. Moreover, under the influence of oceanic currents, the level of thrust wobble was observed to be much larger when employing methods M1 and M2. This is natural, because the vehicle, in these methods, is required to handle all forces induced by oceanic currents. When clamped onto the surrounding environment, the joint torque at the manipulator could also be used to compensate for external disturbance. Therefore, in case of M3, the required vehicle thrust force is significantly reduced.

Fig. 13
figure 13

Trends in vehicle thrust force observed during underwater operation. The sway and surge (i.e., x- and y-components of the thrust force) force components are denoted by black and red curves, respectively. a Trends in thrust force under absence of disturbance; b trends in thrust force under slow oceanic currents; c trends in thrust force under fast oceanic currents. (Color figure online)

Fig. 14
figure 14

The yaw torque of the vehicle thrust. The black line indicates the yaw torque of the method M1, and the red line is that of the method M2. The yaw torque of M3 is drawn as blue line. a Yaw torque without disturbance; b Yaw torque under slow oceanic current; c Yaw torque under fast oceanic current. (Color figure online)

In all cases, the valve angle error, joint torque, and vehicle thrust force were observed to have increased under the influence of oceanic currents. Figure 15 shows the summary of the simulation results. The M3 method demonstrates smallest values of the average joint torque, and vehicle thrust force with respect to time. The main reason behind these trends is the existence of the reaction force generated at the end-effector of the clamping manipulator in M3. Without clamping on the environment, vehicles forces are mainly used for valve turning and compensating for the underwater disturbance, thereby leading to generation of driving manipulator torques and vehicle thrust forces. Therefore, use of the M3 manipulation method yields efficient results, especially under disturbance, such as those caused by oceanic currents. The major problem associated with the use of M3 lies in searching for an appropriate environment near the workspace, which must be resolved prior to applying the M3 method in actual UVMS operations.

Fig. 15
figure 15

Summary of results obtained via valve-turning simulations. The blue and red bars indicate simulation results obtained without oceanic disturbances and those obtained under influence of fast oceanic currents, respectively. a Total trajectory error (integrated w.r.t. whole operation time) divided by total operation time, which can be represented by average trajectory error; b average joint torque at the working manipulator with maximum average value; c Average joint torque at the clamping manipulator with maximum average value; and d average thrust force vector magnitude (combine surge and sway thrust force). (Color figure online)

5 Conclusions

In this paper, three candidate manipulation methods for a UVMS performing an underwater handle-valve turning operation were considered and their performances compared by means of dynamic simulations. The three candidate methods were considered to be parallel redundant manipulators, and kinematics and dynamics of the three methods were derived. Desired vehicle trajectories for the three manipulation methods were calculated using the Moore-Penrose pseudoinverse method. Handle-valve-turning simulations was programmed and performed to compare performances of the three manipulation methods, and two types of oceanic currents were used to model external disturbances to be employed during simulations. The dual-arm manipulation method (M3) involving use of one arm to clamp onto environmental elements demonstrated the best performance among the three candidate methods. Not only were the disturbance effects reduced when employing M3 but the joint torque and vehicle thrust force values were also smaller compared to the other two methods. We proved the advantages of grabbing environment with one manipulator with dynamics simulation data. A comprehensive experimental investigation concerning performance of the dual-arm manipulation method involving clamping of one arm onto environmental elements is intended to be performed as a future research.