Combined kinematic and dynamic control of vehicle-manipulator systems

A vehicle-manipulator system (VMS) is a class of mobile robots characterised by their ability to carry or be a robotic arm and therefore also manipulate objects. The VMS class includes vehicles with a robotic manipulator, free-floating space robots, aerial manipulators and underwater vehicle-manipulator systems (UVMSs). All of these systems need a kinematic controller to solve the kinematic redundancy of the VMS and a dynamic controller to follow the reference given by the kinematic controller. In this paper, we propose a combined kinematic and dynamic control approach for VMSs. The approach uses the singularity-robust multiple task-priority (SRMTP) framework to generate a velocity reference combined with a dynamic velocity controller based on a robust sliding mode controller (SMC). Any SMC can be used as long as it can make the velocity vector converge to the velocity reference vector in finite time. This novel approach allows us to analyse the stability properties of the kinematic and dynamic subsystems together in the presence of model uncertainty. We show that the multiple setpoint regulation tasks will converge asymptotically to zero without the strict requirement that the velocities are perfectly controlled. This novel approach thus avoids the assumption of perfect dynamic control that is common in kinematic stability analyses for robot manipulators. We present two examples of SMCs that can make the velocity vector converge to the velocity reference vector in finite time. We also demonstrate the applicability of the proposed approach through a simulation study of an articulated intervention-AUV (AIAUV), which is a type of UVMS, by conducting three simultaneous tasks. The results show that both SMC algorithms can make all the regulation tasks converge to their respective set-points. In the simulation study, we also include the results from two standard control methods, a proportional-integral-derivative (PID) controller and a feedback linearisation controller, and we use two different AIAUVs to illustrate the advantages and robustness achieved from using SMC.


Introduction
A vehicle-manipulator system (VMS) is a class of mobile robots characterised by their ability to carry or be a robotic arm and therefore also manipulate objects [1,2] . The VMS class includes vehicles with a robotic manipulator, free-floating space robots, aerial manipulators and underwater vehicle-manipulator systems (UVMSs). Since these systems are generally redundant, they need a kinematic controller to solve the kinematic redundancy of the VMS and a dynamic controller to be able to follow the reference given by the kinematic controller. A common approach for developing a control system for a VMS is to design standalone control laws for the kinematic part and the dynamic part and to analyse the stability properties of the two subsystems separately. These methods were developed for fixed-base VMSs or for floating-base VMSs with a heavy base, and they do not work well for floating-base VMSs with a it is necessary to analyse the stability properties of the kinematic and dynamic subsystems together since the assumption that the references are perfectly tracked, which kinematic controllers are based on, is not a valid assumption for VMSs with a light base. Note that although the combined analysis is not strictly necessary for fixed-base manipulators or for VMSs where the mass of the vehicle is much larger than the mass of the manipulator arm, the control design and analysis proposed in this paper still hold for these types of systems.
To the best of the authors' knowledge, there are few examples of combined controllers in which the kinematic and dynamic subsystems are analysed together. However, many methods have been proposed for kinematic control, dynamic control or both, but the subsystems are analysed separately. For instance, in [3] , a task-priority inverse kinematic controller was used to address the tracking control problem of a snake-like robot manipulator. In [4][5][6][7][8] , kinematic control of a UVMS using the task-priority approach was extensively studied. Additionally, the singularity-robust multiple task-priority framework (SRMTP) has been used for the kinematic control of robot manipulators [9] , redundant robotic systems [10] and UVMSs [11] . For dynamic control, many methods have been proposed in the literature for underwater single-body vehicles, UVMSs and robot manipulators; see, e.g., [12][13][14] and the references therein. Specifically, in [15] , a model predictive controller was used for path following and trajectory tracking for industrial robots. In [16][17][18][19][20] , different sliding mode control (SMC) algorithms were used for the trajectory tracking problem of a UVMS. In [21] and [22] , a kinematic and dynamic controller was proposed for a hybrid robot manipulator and a quadrotor manipulator system, respectively, but the subsystems were analysed separately. However, there are some examples of combined controllers. In [23] , second-order inverse kinematics were combined with feedback linearisation. This method integrates inverse kinematic control with the dynamic control loop and analyses the stability properties of the integrated system. However, feedback linearisation requires perfect knowledge of the model parameters, as well as perfect measurements of position, attitude, joint angles, and velocities. Additionally, the possibility of utilising the kinematic redundancy of the system is somewhat limited with this method, and the method is prone to algorithmic singularities caused by non-compatible tasks. In [24] , fuzzy adaptive observers were combined with a backstepping-like feedback linearisation dynamic controller for wheeled mobile robots. The fuzzy adaptive observers are designed together with parameter adaptation laws to estimate the state-dependent disturbances in both the kinematics and the dynamics. However, the feedback linearisation controller requires perfect knowledge of the model parameters. In [25] , the authors combined a fuzzy SMC with feedback linearisation for robot manipulators, where the feedback linearisation controller uses estimates of the model parameters. However, the method is developed for single tasks only. For the method proposed in this paper, how much model knowledge is needed varies with the choice of SMC approach, as different SMC approaches need different information. However, most of them need estimates of the upper bound on the disturbances or the model uncertainties. The upper-bound estimates are typically used only to find gains for the control method. In this paper, we propose two different SMC approaches. The first needs the upper-bound estimates and an estimate of the gravity/buoyancy forces and moments, and the second needs no information as it uses adaptive gains. The method can also be employed for multiple tasks. The proposed method can therefore be applied for a considerably larger class of systems than the methods described above.
In this paper, we propose a novel approach for analysing the stability properties of the kinematic and dynamic subsystems together in the presence of model uncertainty. The main idea is to combine the SRMTP framework [9] with a robust SMC while ensuring that the task errors remain bounded. The kinematic 4stability analysis of the SRMTP method is based on the results in [10] . Any SMC can be used as long as it is able to make the velocity vector converge to the velocity reference vector in finite time. The reference vector is chosen as the output from the SRMTP inverse kinematic controller. The finite-time convergence prop-erty of the SMC allows us to show that the multiple set-point regulation tasks will converge asymptotically to zero without the strict requirement that the velocities are perfectly controlled. This novel approach then avoids the assumption of perfect dynamic control that is common in kinematic stability analyses for vehicle manipulators. The proposed method is illustrated with a simulation study, where the primary task is the position and orientation of the centre link of a UVMS, particularly an articulated intervention-AUV (AIAUV), and the secondary tasks are the orientation of the front end and the back end of the AIAUV. The AIAUV is a UVMS with multiple joints and multiple thrusters [11] . In the simulation study, we include results from two SMC algorithms and two standard control methods, a proportional-integral-derivative (PID) controller and a feedback linearisation controller, and use two different AIAUVs to illustrate the advantages and robustness we obtain from using SMC.
We provide two examples of SMCs that are able to make the velocity vector converge to the velocity reference vector in finite time: a firstorder SMC and the generalized super-twisting algorithm (GSTA) with adaptive gains [20] . The reason why we choose these two SMCs is that we want to demonstrate how both a basic SMC, i.e., a first-order SMC, and a higher-order SMC fit into the control scheme. The GSTA with adaptive gains is a second-order SMC that was proposed in [20] motivated by the super-twisting algorithm (STA) with adaptive gains proposed in [26] , for which the adaptive gains make it possible to maintain sliding in the presence of a bounded disturbance with an unknown boundary, and motivated by the GSTA without adaptive gains [27] , which provides finite-time convergence when both the perturbations and control coefficients are state-and time-dependent and the control coefficients are uncertain. The resulting GSTA with adaptive gains has the necessary theoretical properties to make the velocity vector converge to the velocity reference vector in finite time [20] , which the super-twisting algorithm with adaptive gains [26] does not have, and due to the adaptive gains, no conservative upper bound has to be considered on the perturbations and control coefficients to maintain sliding, as in the GSTA without adaptive gains [27] . Part of the analysis of the first-order SMC is based on [5] , which considers a set-point regulation problem for a UVMS. The control law proposed in [5] avoids the inversion of the Jacobian system, thus overcoming the occurrence of kinematic singularities, but they do not take the inverse kinematic problem into account. In this paper, we extend the analysis in [5] to show the finite-time convergence of the velocity controller.
The contributions of this paper can be summarised as follows. A novel approach is proposed for analysing the stability properties of the kinematic and dynamic subsystems together in the presence of model uncertainty. The main idea is to combine the SRMTP framework with a robust SMC while simultaneously ensuring that the task errors remain bounded. We present two examples of robust SMC that satisfy the required condition of making the velocity vector converge to the velocity reference vector in finite time. A simulation study is performed to demonstrate the effectiveness of the proposed method. Compared to our preliminary work in [28] , we extend the analysis performed in [28] to a larger class of systems and to a larger class of SMCs. We also include proof that the GSTA with adaptive gains makes the velocity vector converge to the velocity reference vector in finite time and include simulation results for the mentioned algorithm.
The remainder of this paper is structured as follows. The mathematical model of VMS is presented in Section 2 , and a brief introduction to inverse kinematic control and the SRMTP method is provided in Section 3 . The main stability analysis is described in Section 4 and demonstrated with a simulation study in Section 5 . Conclusions are drawn in Section 6 .

Vehicle-manipulator model
The model considered in this paper is presented in this section. The dynamics of a large class of systems can be described by the vehicle-manipulator model [1] , where n is the number of joints, = [ Θ ] ∈ ℝ 6+ , = [ ] ∈ ℝ 3 is the position, Θ = [ ] ∈ ℝ 3 is the Euler angle describing the orientation of the vehicle manipulator in the inertial frame, and ∈ ℝ is the vector representing the joint angles. The rotation matrix R Ib expresses the transformation from the inertial frame to the body-fixed frame, J k,o is the Jacobian matrix, and I n × n is the ( n × n ) identity matrix. The matrix M ( q ) is the inertia matrix, C ( q, ) is the Coriolis matrix, D ( q, ) is the damping matrix (for floating and submerged vehicles), g ( q, R Ib ) is the vector of gravity and buoyancy forces, and is the control input. The dynamic model in (1) can be formulated with respect to a coordinate frame having its origin at an arbitrary position on the vehicle manipulator. In this paper, we assume that the model is formulated with respect to an arbitrary link of the vehicle manipulator such that the velocity state vector, , is defined as where and are the body-fixed linear and angular velocities of the chosen link of the vehicle manipulator, respectively, and ̇ is the vector of joint velocities.

Inverse kinematic control
Robot manipulators are designed to perform specific tasks associated with either the internal configuration of the robot (joint/configuration space) or the external configuration with respect to the environment (operational/task space). A task that specifies a desired position and/or orientation of the end effector of the robot is an example of a common operational space task. A comprehensive collection of possible tasks for underwater robotic vehicles is presented in [13] . An m -dimensional task can be described by the task variable, ( ) ∈ ℝ , defined as where ( t ) is the vector of generalised coordinates describing the configuration of the vehicle manipulator defined in Section 2 . The function f ( · ) maps the configuration into the task space coordinates. The task variable i ( t ), the generalised coordinates ( t ) and the system velocities ( t ) have the following important differential relationship: where ( ( )) ∈ ℝ ×(6+ ) is the configuration-dependent task Jacobian matrix. Let , ( ) ∈ ℝ be the desired trajectory for the task variable i ( t ) and define the task error ̃ ∈ ℝ as ̃ = , − .
To determine the motion required to achieve convergence of the task error ̃ to zero, it is common to use the closed-loop inverse kinematic (CLIK) routine expressed as where + = ( ) −1 is the right Moore-Penrose pseudo-inverse of the task Jacobian, r is the reference velocity vector, and Λ i > 0 is a positive-definite gain matrix. The single-task approach can be extended to multiple simultaneous tasks using the SRMTP method [9] : where the null spaces of the task Jacobians are given by = ( − + ) , ) represents the combined null space of tasks 1 through − 1 . The null space matrices ensure that conflicting velocity components generated by the lower-priority tasks are filtered out such that these do not affect the satisfaction of the higherpriority tasks. In [10] , it is shown that all the task errors will converge to zero, provided that ( ) = ( ) ∀ ≥ 0 (i.e., neglecting the dynamics), that the tasks are compatible and specified as time-independent regulation tasks (i.e., ̇, = 0 ) and that the task gains Λ i are chosen appropriately.
In the next section, we extend the kinematic stability analysis in [10] by combining it with a dynamic control law for the model described in Section 2 , and we show that all the regulation task errors will converge asymptotically to zero without the strict requirement that ( ) = ( ) ∀ ≥ 0 .

Combined kinematic and dynamic stability analysis
In this section, we propose a combined kinematic and dynamic control law for the model presented in Section 2 performing an arbitrary number of regulation tasks. By combining the SRMTP method with an SMC that is finite-time stable (FTS), we show, by extending the Lyapunov analysis for regulation tasks presented in [10] to also include the system dynamics, that all the regulation task errors will converge asymptotically to zero without the strict requirement that ( ) = ( ) ∀ ≥ 0 . This novel approach then avoids the assumption of perfect dynamic control that is common in kinematic stability analyses for vehicle manipulators. We then provide two examples of SMC algorithms that satisfy the requirement of being FTS.
To be able to use SMC, we must first define a sliding variable. Define the sliding variable as ∈ ℝ 6+ is the reference velocity vector given as the output of the SRMTP inverse kinematics routine in (7) for regulation tasks (i.e., time-independent tasks). By differentiating (8) and inserting (1b) , we obtain and by using = + from (8) , we obtain the following equation describing the dynamics of s : Now, define ̃as a vector of all the regulation task errors, i.e., By taking the time derivative of (11) and using (4) , ̇, = 0 and = + from (8) , we have where is a matrix that contains the corresponding Jacobian matrices for the tasks. We make the following assumption about J ( ): (12) is bounded.

Remark 2.
Note that the matrix J ( ) will be bounded as long as singularities in the task representations are avoided. This is also necessary for the complete control method to be singularity-free.
The total error dynamics can then be described by (10) and (12) . Theorem 1. Assume that Assumption 1 is satisfied. Let the control input of (1) be given by the SMC law where s is the sliding variable in (8) and u SMC is any SMC that stabilises the sliding surface = 0 in finite time. The sliding surface = 0 is then an FTS equilibrium of (10) , which ensures asymptotic convergence of the regulation task errors, i.e., Proof. In [10] , it is shown that if the generalised velocities of the vehicle-manipulator follow the reference velocities, i.e., = , then the regulation task errors asymptotically converge to zero, i.e., lim →∞̃( ) = 0 . Here, we will extend this analysis to include the dynamic control part of the problem. The closed-loop dynamics (10), (13) is FTS by assumption, which means that = after some finite time T . This also implies that || s || ≤ 1 ∀ t ≥ 0, where 1 is a positive constant. Now, rather than assuming that = as done in [10] , we take into account that = + . We will now analyse the stability properties of the origin of (12) using the Lyapunov function candidate (LFC) ( ̃) = 1 2 ̃ ̃. The derivative of the LFC is, by (12) , as follows: From [10] , we have that where P ( ) is defined as where ̄ = 12 .. ( −1) . Note that P is positive definite [10] . By using (15) , we can write the LFC derivative as Since, as stated above, we have || s ( t )|| ≤ 1 ∀t ≥ 0, we can rewrite (17) as follows: where 0 < < min ( P ), since P is positive definite. By Assumption 1 , J ( ) is bounded; thus, the conditions of [29,Theorem 4.18] are satisfied. We can then conclude that the solutions are globally uniformly ultimately bounded, which means that ||̃( ) || ≤ 2 ∀ ≥ 0 , where 2 is a positive constant. Consequently, the regulation task errors will not escape to infinity when s ≠ 0. Now, after a finite time T , the sliding surface = 0 will be reached. Once the system trajectories are confined to = 0 , the error dynamics are given by and the origin of (19) is asymptotically stable and the regulation task errors will thus asymptotically converge to zero, i.e., lim →∞̃( ) = 0 [10] . □ Remark 3. This proof can be extended to include trajectory tracking tasks for link i by including + , ( , ( ) − Λ( ( ) − , ( ))) , where + , is the geometric Jacobian, which maps the velocity state vector to the linear and angular velocities of link i , , is the desired body-fixed velocity of the link frame of link i , Λ is a gain matrix, and i and i,d is the position and the desired position, respectively, of link i , as the primary task in (7). When the sliding surface and the tasks errors have gone to zero, i.e., − = 0 , , ( ) = , ( ) − Λ( ( ) − , ( )) remain, which will make ( ) − , ( ) converge to zero if Λ is chosen correctly and the tasks are orthogonal. Orthogonal tasks are a strict requirement, which in practice means that the tasks utilise separate degrees of freedom of the vehicle manipulator.

First-order SMC
In this section, we will show that a first-order SMC stabilises the sliding surface = 0 , where s is given by (8) , in finite time. Part of the analysis of the chosen first-order SMC is based on [5] , which considers a set-point regulation problem for a UVMS without taking the inverse kinematic problem into account. In this paper, we modify the analysis in [5] to show the finite-time convergence of the velocity controller.

Theorem 2.
Let the control input u SMC in (13) be given by where K d > 0, ̂ ( , ) represents the estimate of the gravity/buoyancy forces and moments, and The gain K is chosen as where K 0 > 0 and is an upper bound chosen to satisfy The sliding variable s in (8) of the system (10) , (20) will then converge exponentially and in finite time to the sliding surface = 0 .
Proof. Consider the LFC for the system (10), (20) which is positive definite as M ( q ) > 0. Differentiating (23) and inserting (8) and (10) yields The last term in (24) is equal to zero because ̇ − 2 is skew symmetric, cf., Remark 1 . Inserting (20) yields where we have used the Cauchy-Schwarz inequality. Using (21), (22) , we have The first term in (26) ensures exponential convergence towards the sliding surface = 0 , while the second term ensures, by use of the comparison lemma [29,Lemma 3.4] , that s reaches the sliding surface in finite time. Thus, we have exponential and finite-time convergence to the sliding surface. □

Remark 4.
To determine , we need to find an upper bound on the expression in (22) . This upper bound depends on the size of the task errors. To avoid , and thus K , becoming undesirably large, a reference model [30] can be used to obtain sufficiently smooth desired trajectories and avoid large jumps in the task errors when changing set-points. Such a reference model can also include saturating elements to limit the desired velocities.
Remark 5. The above analysis assumes ideal actuators. In practice, time delays and imperfections in the actuators will cause high-frequency chattering when SMC is applied. To eliminate the chattering problem, the discontinuous signum function in (20) is typically replaced by a high-slope saturation function. In this case, we achieve the ultimate boundedness of the task errors. For set-point regulation problems, integral action can be introduced in the control law to achieve zero steadystate error [29] .

Generalized super-twisting with adaptive gains
In this section, we present the GSTA with adaptive gains [20] and show that it stabilises the sliding variable s in (8) in finite time. In [20] , the GSTA with adaptive gains was proposed and employed for trajectory tracking for an AIAUV, and the tracking error for the AIAUV was shown to asymptotically converge to zero. In this paper, a different sliding surface is employed. We show that the GSTA can also be applied to stabilise the sliding variable s in (8) in finite time.

Case study
In this section, a case study using an AIAUV is presented to show the effectiveness of the proposed combined kinematic and dynamic controller using the two different SMC algorithms from Section 4 . To further highlight the advantages of using the SRMTP method combined with an SMC algorithm, we will also show the results in which the SRMTP method is combined with two standard control methods. We will also highlight the robustness the SMC algorithms provide by presenting the results for two different AIAUVs.

AIAUV model
The AIAUV is a lightweight underwater vehicle that has multiple joints and multiple thrusters [11] . The AIAUV is subject to hydrodynamic and hydrostatic parameter uncertainties, uncertain thruster characteristics, unknown disturbances, unmodelled dynamics and large coupling forces caused by joint motion. It is therefore an example of a vehicle manipulator for which we cannot assume that the reference output is tracked perfectly by the dynamic controller since it has a low mass and the coupling forces caused by the joint motion are large. For control purposes, the AIAUV is considered to be a floating-base manipulator operating in an underwater environment. The complete dynamic model of the AIAUV, including hydrodynamic forces, hydrostatic forces, and actuator forces, can thus be written with the same structure as a typical UVMS as in (1) . The generalised forces and moments, , created by the thrusters and the joint motors are given by = . (32) In this paper, we assume that the model is formulated with respect to the back end or base link of the AIAUV such that the velocity state vector, , is defined by where and are the body-fixed linear and angular velocities of the back end of the AIAUV, respectively, and ̇ is the vector of joint velocities. A detailed derivation of the AIAUV model can be found in [11] .
The simulation of the motion of the AIAUV is performed using MAT-LAB Simulink. The model is implemented with the method described in [31] and is based on the Eelume robot, shown in Fig. 1 . The AIAUV has a length of 3.37 m, weighs 85.6 kg and is assumed to be neutrally buoyant. The AIAUV has + 1 = 9 cylindrical links with radius 0.09 m, = 8 revolute joints and = 7 thrusters. The link frames are right-hand coordinate systems, in which the completely outstretched robot is placed such that the x -axes point forward and the z -axes point upwards. The properties of each link are presented in Table 1 . In the thrusters column, "2: Z, Y " means that the link has 2 thrusters: one thruster works in the z -direction, and one thruster works in the y -direction of the link frame. Joints 1, 3, 5 and 7 rotate around the z -axis, and joints 2, 4, 6 and 8 rotate around the y -axis. The joint rotation occurs in the link frame of the corresponding link, i.e., joint 1 rotates around the z -axis of link 1. The thruster allocation matrix is implemented as proposed in [11] . Note that the thruster configuration of the simulation model is singular in roll when the AIAUV is straight. For the simulations, the automatic fixedstep solver in Simulink was employed with a fixed-step size of 10 −4 . The physical parameters in the simulations are shown in Table 2 .

Simulation study
In this section, the combined kinematic and dynamic control of the AIAUV is demonstrated using the following three set-point regulation tasks: 1. Control the position and orientation of the centre link (main task) 2. Control the pitch and the yaw angle of the front end of the AIAUV 3. Control the pitch and yaw angle of the back end of the AIAUV This combination of tasks illustrates the ability of the AIAUV to move to a position of interest and then perform a double observation task by simultaneously adjusting the pitch and the yaw angles of the back end and the front end of the AIAUV. The expressions for the task error and the task Jacobian for task 1 are as follows: Task 1 -Position and orientation of the centre link where ̃ is the position deviation of the centre link and Θ is the orientation deviation of the centre link. The task Jacobian J 1 for task 1 is the identity matrix since the task is completely described by the position and orientation of the centre link. The second task is fulfilled using the two double-joint modules in front of the centre link, which means that the expressions for the task error and the task Jacobian for task 2 are as follows: Task 2 -Orientation of the front end where Θ is the orientation deviation of the front end and J cf is the front end Jacobian. The front end Jacobian relates the body-fixed velocities of the front end to the body-fixed velocity of the centre link and the joint velocities. The third task utilises the two double-joint modules behind the centre link; thus, the expressions for the task error and the task Jacobian for task 3 are as follows:

Task 3 -Orientation of the back end
where Θ is the orientation deviation of the back end, and J cb is the back end Jacobian. The back end Jacobian relates the body-fixed velocities of the back end to the body-fixed velocity of the centre link and the joint velocities. By using the two double-joint modules in front of the centre link to fulfil the second task and the two double-joint modules behind the centre link to fulfil the third task, the available degrees of freedom are divided between the tasks. Although unnecessary, this ensures that the tasks are compatible such that all tasks can be fulfilled simultaneously.
The reference velocities, r , are calculated according to Task 2 and task 3 are always compatible, which allows us to multiply task 3 only with the null space of task 1 N 1 . The set-points i,d are manually controlled and filtered through a third-order reference filter to avoid discontinuities and large jumps in the calculated reference velocities. The gain parameters in (34) are set to Λ 1 = diag (0 . 5 , 0 . 5 , 0 . 5 , 0 . 1 , 0 . 5 , 0 . 5) , Λ 2 = 0 . 5 2×2 , and Λ 3 = 0 . 5 2×2 . Table 1 In this section, the results using the AIAUV described by Table 1 will be used. Fig. 2 shows the results when the first-order SMC (20)  . For the GSTA with adaptive gains, a small boundary is placed on s for implementation purposes. The adaptive gains in (29) can then be expressed as

Results using the AIAUV described by
where the design parameter = [0 . 005 6 , 5 ⋅ 10 −5 8 ] . This is done because numerically, s will never be exactly zero.
To further highlight the advantages of using the SRMTP method combined with an SMC we will also show results where the SRMTP method is combined with standard control methods. We will show results with a PID controller and a standard feedback linearisation controller. The PID controller used is defined as where ̃= − and k p , k d and k i are controller gains. The reason we chose to include a PID controller as a standard control method is because it is one of the most widely used controllers and is known for obtaining good results if tuned correctly. However, it does not provide any stability guaranties and is difficult to tune for optimal performance. We therefore also include results using a feedback linearisation controller. The feedback linearisation controller gives stability guaranties and is easy to tune as long as the model parameters are known. The feedback linearisation controller used is defined as where ̃= − and k p is a control gain. Fig. 4 shows the results when the PID controller (36) is used, with the control gains chosen as = 250 , = 80 and = 10 .

Fig. 2.
Results when the first-order SMC is used for the AIAUV described by Table 1 Figs. 5 and 6 shows the results when the feedback linearisation controller (37) is used, with the control gain chosen as = 10 . The reason two figures are included for the feedback linearisation controller is because the feedback linearisation controller had problems when the thruster allocation scheme used was included; we therefore included one figure where the thruster allocation was used, i.e., Fig. 5 , and one figure where the thruster allocation was not used, i.e., Fig. 6 . The reasons why the feedback linearisation controller had problems with the thruster allocation scheme will be discussed in the discussion section below. Fig. 3. Results when the GSTA with adaptive gains is used for the AIAUV described by Table 1 Discussion Figs. 2 a and 2 b show the commanded and the actual position and orientation of the centre link corresponding to task 1 when the firstorder SMC (20) is used. There is a small deviation from the set-point for the centre link pitch angle due to the boundary layer of the saturation function, which is in agreement with ultimate boundedness described in Remark 5 . The results for tasks 2 and 3 are shown in Figs. 2 c and 2 d. The combined kinematic and dynamic control law is able to fulfil all the tasks simultaneously, as stated in Theorem 1 in combination with Theorem 2 , but some transient deviations can be observed for the front and the back orientations when changing the pitch and yaw set-points Fig. 4. Results when the PID controller is used for the AIAUV described by Table 1 for the centre link. These deviations occur because task 1 is the primary task and tasks 2 and 3 are secondary tasks. The first term in (34) does not consider the task errors for tasks 2 and 3. Satisfying the desired centre link orientation will therefore introduce errors in the orientations of the front and back ends. These deviations disappear as soon as the second term in (34) compensates for these task errors. Figs. 2 e and 2 f show the thruster forces and joint torques used. The control inputs are smooth and below 100 N, which is the limit for the thrusters. The control inputs are therefore feasible.
Figs. 3 a and 3 b show the commanded and the actual position and orientation of the centre link corresponding to task 1 when the GSTA with adaptive gains (27) is used. We now find that the small deviation  5. Results when the feedback linearisation controller with thruster allocation is used for the AIAUV described by Table 1 from the set-point for the centre link pitch angle is eliminated. This result occurs because when the GSTA with adaptive gains is used, we do not have to introduce a boundary layer. The results for tasks 2 and 3 are shown in Figs. 3 c and 3 d. As shown, the combined kinematic and dynamic control law is able to fulfil all the tasks simultaneously, as stated in Theorem 1 in combination with Theorem 3 , but some transient de-viations can be observed for the front and the back orientations when changing the pitch and yaw set-points for the centre link for the GSTA with adaptive gains. The reason why we are unable to remove these deviations is because they are introduced by the SRMTP method, as described when the transient errors for the first-order SMC was presented. The simulation results support the theoretical results, and we find that Fig. 6. Results when the feedback linearisation controller is used for the AIAUV described by Table 1 all the set-point tasks are fulfilled. Figs. 3 e and 3 f show the thruster forces and joint torques used. The control inputs are smooth and below 100 N, which is the limit for the thrusters. The control inputs are therefore feasible.
Figs. 4 a and 4 b show the commanded and the actual position and orientation of the centre link corresponding to task 1 when the PID con-troller (36) is used. We can see that when the PID controller is used, the reference is tracked; small deviations from the position and orientation are observed when the other set-points are changed. We also see that the transient error for pitch is much larger than that of the SMC algorithms. The PID controller also introduces some overshoot in all states. The results for tasks 2 and 3 are shown in Figs. 4 c and 4 d. The PID  Fig. 7. Results when the first-order SMC is used for the AIAUV described by Table 3 controller is able to fulfil all the tasks simultaneously; however, here, we not only have transient deviations for the front and the back orientations when changing the pitch and yaw set-points for the centre link but also note tendencies of overshoot and also some other transient errors. The transient errors caused by the changing of set-points are also larger than that of the SMC algorithms. We tried to increase the gains to determine if that led to better performance, but we then obtained a non-feasible control input. The only way to obtain a better performance would therefore be to find another combination of gains, with k p ≤ 250, that yielded better results. After excessive tuning efforts, the results shown here represent the best performance we could achieve. It is therefore clear that the SMC algorithms perform better Fig. 8. Results when the GSTA with adaptive gains is used for the AIAUV described by Table 3 than the PID controller, and they are also much easier to tune to obtain optimal performance. Figs. 4 e and 4 f show the thruster forces and joint torques used. The control inputs are smooth and below 100 N, which is the limit for the thrusters. The control inputs are therefore feasible.
Figs. 5 a and 5 b show the commanded and the actual position and orientation of the centre link corresponding to task 1 when the feedback linearisation controller (37) is used. We expect perfect tracking since there is no model uncertainty, and from the figures, we see that the position is perfectly tracked. For the orientation however, there are some small deviation in yaw. From Fig. 5 c we can see that task 2 is Fig. 9. Results when the feedback linearisation controller is used for the AIAUV described by Table 3 fulfilled, however, from Fig. 5 d, we see that task 3 is not perfectly fulfilled. It cannot follow the pitch reference perfectly, and there is a large jump in yaw. The reason task 3 is not perfectly fulfilled is because of the thruster allocation scheme. This can be seen from Fig. 6 , when we sent the calculated desired force in six degrees of freedom (6DOF) directly to the model, i.e. the thruster allocation scheme was not used. From Figs. 6 a-d we can see that task 1, task 2 and task 3 are fulfilled when the thruster allocation scheme is not used, and that the trajectories are perfectly followed, except for the small transient deviation for the front and the back orientation when the pitch and yaw set-points for the cen- tre link are changed, which are introduced by the SRMTP method. The reason the thruster allocation scheme is creating problems for the feedback linearisation controller is because we have to use a damped inverse to calculate the force that will be distributed to the thrusters, since the robot is un-actuated in roll when the joints angles are equal to zero. The un-actuated roll axis causes the inverse of the thruster configuration matrix to become singular, and a damped inverse therefore has to be used. However, the damped inverse does not obtain the commanded force in 6DOF that we sought, which created problems for the feedback linearisation controller. The reason why only the base is affected might be because task 1 is fulfilled given that it is the primary task, while task 2 is fulfilled because the joints are not affected. The reason the base is affected is therefore because the reference generated by the SRMTP method is for the base. We can therefore see that the feedback linearisation controller is much more sensitive to un-modelled dynamics, since the effects of the thruster allocation scheme are not visible for any of the SMC algorithms. Note that we chose = 10 because that was when we achieved the best performance when using the thruster allocation scheme. Figs. 5 e, 6 e, 5 f and 6 f show the thruster forces and joint torques used. The control inputs are smooth and below 100 N, which is the limit for the thrusters. The control inputs are therefore feasible.

Simulations with model parameter errors
In this section, we will show results where the AIAUV link lengths are reduced by 20%. The AIAUV simulation model is then given by the parameters in Table 3 . However, the model used to find the control inputs is not changed; this is to highlight the robustness of the SMC algorithms. This means that we keep the controller gains and the estimates of the model parameters as in Section 5.2.1 . Fig. 7 shows the results when the first-order SMC (20) is used, and Fig. 8 shows the results when the GSTA with adaptive gains (27) is used. Since the PID controller already showed that its performance is worse than the SMC algorithms, we did not include results from the PID controller in this section. For the feedback linearisation controller, we include only the results for the case where the thruster allocation scheme is not used, as shown in Fig. 9 .

Discussion
From Figs. 7 and 8 , we can see that the tracking results are almost identical to those obtained in Section 5.2.1 . We can therefore conclude that the SMC algorithms are robust to modelling uncertainties, as their performance is not affected by making the AIAUV smaller. From Fig. 9 , we can see that the feedback linearisation controller is greatly affected by the change of model. To obtain these results, we had to change the control gain to = 200 ; if we used the gains chosen in Section 5.2.1 , we could not obtain any stable results. With = 200 , we can see from Figs. 9 a and 9 b that task 1 is almost fulfilled, while in Figs. 9 c and 9 d, we can see that task 2 and 3 are not fulfilled. Figs. 9 e and 9 f reveal that the control input in this case is not feasible. We found that we had to set = 500 for all the tasks to be fulfilled with the feedback linearisation controller. Thus, for the feedback linearisation controller to work with modelling uncertainties, we have to tune the controller correctly, which can be difficult. The SMC algorithms are therefore much more applicable for the AIAUV which is prone to modelling errors and uncertainties.

Conclusions
In this paper, we have proposed a combined kinematic and dynamic control approach for vehicle-manipulator systems and presented an extended stability analysis for multiple set-point regulation tasks. The proposed method extends existing inverse kinematics control approaches to include dynamic control, and the analysis extends previous stability analyses and shows that the multiple set-point regulation tasks will converge asymptotically to zero without the strict requirement that the velocities are perfectly controlled. This novel approach thus avoids the assumption of perfect dynamic control that is common in kinematic stability analyses for vehicle manipulators. The applicability of the method is demonstrated through a simulation study of a deeply coupled articulated intervention-AUV performing three simultaneous tasks, and the results show that all the regulation tasks converge to their respective set-points. The simulation study also includes results from two standard control methods, namely, a PID controller and a feedback linearisation controller, and the results from two different AIAUVs to highlight the advantages and robustness we achieve when using SMC in the combined controller.

Declaration of Competing Interest
The authors declare that they do not have any financial or nonfinancial conflict of interests