Constrained Control Design for Dynamic Positioning of Marine Vehicles with Control Allocation

In this paper, we address the control design problem of positioning of over-actuated marine vehicles with control allocation. The proposed design is based on a combined position and velocity loops in a multi-variable anti-windup implementation together with a control allocation mapping. The vehicle modelling is considered with appropriate simplifications related to low-speed manoeuvring hydrodynamics and vehicle symmetry. The control design is considered together with a control allocation mapping. We derive analytical tuning rules based on requirements of closed-loop stability and performance. The anti-windup implementation of the controller is obtained by mapping the actuator-force constraint set into a constraint set for the generalized forces. This approach ensures that actuation capacity is not violated by constraining the generalized control forces; thus, the control allocation is simplified since it can be formulated as an unconstrained problem. The mapping can also be modified on-line based on actuator availability to provide actuator-failure accommodation. We provide a proof of the closed-loop stability and illustrate the performance using simulation scenarios for an open-frame underwater vehicle.


Introduction
Dynamic positioning of marine vehicles refers to the use of the propulsion system to regulate the vessel motion in the horizontal plane: North-position, East-position, and heading.In the case of underwater vehicles, this can be extended with the additional requirement of depth regulation.
In order to increase reliability, vehicles that operate in dynamic positioning are usually equipped with more actuators than the minimum required.Then, the forces used to control the motion can be produced by different combinations of the forces produced by the ac-tuators.This practice enables the vehicle to continue operation or to start a safe shut-down in case of an actuator failure by reconfiguring the forces produced by the remaining actuators.Within this framework, the ship motion control system is separated into two main components: • motion controller • control allocation mapping.
The motion controller generates demands for generalized forces (forces and moments) in the degrees of freedom in which the vehicle is controlled, namely, surge, sway, and yaw.Since the motion controller operates in terms of generalized forces, the control design and tuning can be done independently of the actuator configuration to certain extend.The control allocation mapping then transforms the controller demands into individual actuator commands such that the demanded generalized forces are implemented.This separation between motion control and actuator force allocation provides a modular design and makes the vessel motion control independent, to a certain degree, of the number of actuators available (Fossen, 2002).
The vessel actuator configuration is designed such that the control allocation problem has multiple solutions.This problem is normally posed as a constrained optimization problem, and it is solved on-line to find the actuator commands that implement the desired generalized forces while satisfying power, magnitude, rate, and other constraints-see, for example, Fossen and Johansen (2006), Peterson and Bodson (2006), Fossen et al. (2008), and references therein.
Due to the characteristics of the ship motion control problem, the controller is required to provide integral action to reject low-frequency disturbances due to currents, mean wave drift and wind forces (Perez, 2005).It is well known that the combination of integral action and limited actuation capacity can result in degraded performance and even instability of the closed-loop system if saturation is not handled appropriately (Goodwin et al., 2005).Matters become worse in the case of actuator failure since the likelihood of saturation increases.In a recent work, Perez (2009) combined the positioning control and control allocation problem using a particular anti-windup implementation, in which the actuator-force constraint set is mapped into a constraint set for the generalized forces.
In this paper, we extend the work of Perez (2009), by deriving analytical tuning rules that ensure stability and desired performance.These tuning rules can be used as a basis of auto-tuning control.Auto-tuning can simplify the commissioning of the control system, and for underwater vehicles, it provides a mean for control re-tuning if significant changes in mass distribution and hydrodynamic characteristics take place due to mission-dependent equipment configurations.Here, we also give a theoretical proof of the stability of the closed-loop.In addition, we show how the constraints can be adjusted online to accommodate actuator failures provided the vehicle remains fully-actuated after the failure.The performance of the proposed control system is demonstrated based on a simulation scenario of horizontal-plane positioning of a general open-frame vehicle with four actuators.We consider both nominal and actuator faulty cases.

Horizontal-plane positioning control
In this paper, we concentrate on the positioning problem in the horizontal plane, that is, surge, sway, and yaw.For the positioning problem and degrees of freedom being considered, the vehicle dynamics can be represented as The generalized position, velocity and force vectors are given by where n and e denote the North and East positions relative to a local geographical frame with a coordinate system convention of North-East-Down, and ψ denotes the heading or yaw angle relative to the North direction.The velocities are expressed in the vehicle's frame of reference (body-fixed frame) with a forwardstarboard-down coordinate-system convention.The surge and sway velocities are denoted by u and v respectively, and the yaw rate is denoted by r.The generalized velocity vector ν c represents the velocity of the current expressed in body-fixed coordinates.The surge and sway forces along the body-axis are represented by X and Y , and the yaw torque about the z-axis is represented by N .Equation ( 1) is a kinematic transformation that takes the body-fixed generalized velocity vector into the time derivative of the generalized position vector.The matrix R(η) is single axis rotation matrix about the vehicles vertical axis, that is R(ψ).Equation ( 2) is a vector equation of motion.The parameter M is the total mass and inertia matrix, which includes rigid-body and hydrodynamic added mass components.The second term in (2) represents Coriolis-centripetal forces, which appear as a result of expressing the equations of motion in body-fixed coordinates.This term has a component due to rigid body and another due to hydrodynamics (potential component of the current forces).The third term represents damping forces, which reflect the work done on the fluid due to the motion of the vehicle.We assume that the vehicle is neutrally buoyant, and therefore we do not consider gravity and buoyancy in (2).For further details on models of marine vehicles see Fossen (2002).
For vehicles manoeuvring at very-low speed, a few simplifications can be made to the model (2).First, the Coriolis-centripetal terms become small since these terms have a quadratic dependency on the velocities.Second, the nonlinear damping term in (2) is dominated by a linear damping at low speeds; and therefore, we can separate the effect of the current forces and consider them as a slowly varying disturbance (Fossen, 2002).These lead to the following model: In addition, we assume that the hydrodynamic coupling between yaw and sway is negligible.This assumption is motivated by the usual fore-aft quasi-symmetry of most surface vessel hulls, which also applies to some underwater vehicles (Smallwood and Whitcomb, 2003).The latter assumption leads to diagonal matrices in (5), and thus, to a fully decoupled kinetic model.

Positioning controller architecture
Figure 1 shows a block diagram describing the main functionality of a marine vehicle motion control system.The navigation system uses various sensors to provide reliable signals related to the vehicles velocity and position.The controller processes information related to desired position and the actual position and velocity generated by the navigation system.This information is used to produce generalized force commands that correct the motion of the vehicle.The allocation system maps the generalized force commands into appropriate force commands for the various actuators on the vehicle.The separation between generalized force control and actuator-force allocation makes the control tuning independent, to a certain extent, of the characteristics of the force actuators and provides the basis for fault accommodation in the presence of actuator failure.
Figure 2 shows a block diagram of the proposed position-regulation controller.This controller consists of an outer position-feedback loop with a proportional controller and an inner velocity-feedback loop with a proportional-integral controller.This architecture provides integral action in both position and velocity; that is, it regulates position despite constant force disturbances.In the proposed controller, the measured positions are transformed by the inverse of the kinematic transformation (1).This transformation results in a linearization of the kinematics provided that the vehicle heading rate is low (Fossen, 2002): The advantage of using the rotated variables (nonlinear controller), is that the control tuning can be addressed within a linear framework.
For surface vehicles, the generalized position and velocity vectors are wave-filtered before being used by the controller shown in Figure 2. The topic of wave filtering for positioning control of surface vessels goes beyond the scope of this paper.The interested reader should see, for example, Fossen and Perez (2009).

Unconstrained control allocation
The force vectors produced by the actuators can be decomposed into rectangular coordinates (along the longitudinal and transverse direction on the vessel) and combined into a single vector u, where N is the number of actuators.This vector is mapped into the generalized forces via the actuator configuration matrix B, which depends only on the location of the actuators on the vehicle: That is, we assume that the angles of the azimuth actuators, if any, are fixed.Since u has more components than τ , there are different vectors u satisfying (8) for a given value of τ .In order to limit the number of solutions, one can pose the problem as an optimization problem, like for example, The objective function u T Wu is representative of the total energy or control effort, where W is a positive definite matrix weighting the actuator cost.Thus, the control allocation seeks the solution that implements the desired generalized force τ d whilst minimizing the control effort.As shown in Fossen (2002), the solution of the above problem is given by Note that since B depends only on the location of the actuators on the vehicle, the right inverse B † can be pre-computed.
The optimization problem (9) does not take into account the fact that the vector u must belong to a constraint set due to the maximum force that the various actuators can produce.Adding this constraint to (9) requires on-line numerical optimization, and the solution ( 10) is no longer the optimal solution.Constrained numerical optimization brings out timefeasibility issues since the optimization algorithm must always provide a feasible solution within the required sampling period (Fossen and Johansen, 2006;Peterson and Bodson, 2006).An alternative to this approach is to constrain the desired generalized force τ d such that the constraints on u are always satisfied (Perez, 2009).By so doing, the force controller is also informed about reaching constraints, which prevents performance degradation due to the combination actuator saturation and integral action.This control method is described in the next section.

Constrained control via input scaling
One of the key issues in control design for systems that require integral action and present a potential for actuator saturation is that of integrator windup.That is, if the actuators saturate and the integral controller is not informed about the saturation, the integrators continue integrating the error signals but the control action is not seen by the system.This often produces a degradation of performance in terms of undesirable oscillations and even instability.Control schemes that deal with this effect are called anti-windup schemes (Bernstein and Michel, 1995).If a linear controller C(s) is minimum phase and biproper (as in the case of a PI and PID controller), then anti-windup can be achieved simply by implementation (Goodwin et al., 2001).This implementation is shown in Figure 3  (magnitude, rate, or a combination of both), and the gain Note that if the limitation is not active, the loop of Figure 3, reduces to the controller: When the limitation becomes active, it prevents the control signal τ d from exceeding its limits, and the constrained signal drives the states of the controller, which are all on the feedback path.This anti-windup strategy is simply a particular implementation of the original controller.That is, it does not require any additional design.The anti-windup scheme described above can be applied to the velocity PI controllers of the velocity loops of the vehicle positioning controller: where for i = u, v, r, In order to constrain τ d we need to construct a set such that One way of enforcing these constraint is by computing an unconstrained control τ uc and then scale it down if it is outside the constraint set, that is By scaling the vector τ uc , we preserve its direction.
In order to implement (16) we need to compute τ uc and then obtain α.This implementation leads to the complete control scheme depicted in Figure 4.
The explicit computation of the set T is not always easy.To simplify this computation we can consider an approximating polyhedron subset U ⊆ U of the actuator force components (Ruth et al., 2009): or alternatively, Using the set U , the following algorithm determines the scaling factor (Perez, 2009): 1. Compute the unconstrained control, and evaluate . Do this for all the components i = 1, ..., 4N .
Once the scaling factor is computed the control can be implemented as

Stability and control tuning
The proposed controller ensures asymptotic stability for position regulation provided that the following conditions hold for the parameters of the proportionalintegral velocity controllers ( 14) and the proportional position controllers: where T i v is the open-loop time-constant of the vehicle velocity response.The condition (20) ensures that there is no zero-pole cancelation between the velocity controller and the velocity response of the vehicle.The condition (21) establishes that the position control loop must be slower than the open-loop velocity response.
The stability proof follows from re-arranging the closed-loop system with control allocation into a Lure's system and application of Lyapunov and passivity theories (Khalil, 2000;Brogliato et al., 2007).Details of the stability proof are given in Appendix B. The fulfilment of both conditions ensure of passivity of the dynamic linear part of the Lure's system.
Based on the above conditions on the controller parameters, practical tuning rules can be obtained using, for example, the root-locus technique.The main idea is to create a faster velocity loop response and then set the proportional gain to obtain a position loop response that is slower than the open-loop velocity response.Therefore, we propose the following set of tuning rules.
Given the velocity response models, then, 1. set the zero of the velocity PI at a higher frequency than the pole of the velocity response ( 22), that is, 2. determine the proportional gain of the velocity PI controller, K i p , such that the velocity closed loop poles are real and above the zero of the controller.These conditions are satisfied when K i p is greater than the critical value K i pc given by 3. set the gain of the proportional position controller based on the closed-loop stability constraint (21).Faster response results when P i is selected closer to 1/T i v .0 The above tuning rules are practical and simple to follow.Note that the only data necessary for the tuning are the parameters of the simplified vehicle open-loop velocity response models ( 22).These parameters can be estimated from data of zig-zag tests.By combining the estimation with the above tuning rules, we obtain the basis of an auto-tuning controller.

Actuator-fault accommodation
The proposed controller offers a possibility of vehicle fault accommodation in the case of actuator failure provided that the vehicle remains fully-actuated after the failure.Should this be the case, one can simply change the actuator configuration matrix B and its pseudoinverse B † .Then, constraint set U and thus the scaling factor α are automatically re-computed with the algorithm proposed in Section 3.3.Note that the new actuator configuration and pseudo inverse matrices for the faulty case can be pre-computed.Therefore, once the fault diagnosis system identifies the failed actuator, this actuator can be switched off and the corresponding configuration and pseudo inverse matrices be used to compute the scaling factor of the anti-windup implementation.
If the actuator failure is such that vehicle becomes under-actuated after the failure, then one needs to consider control reconfiguration (change the set of inputoutput variables used to implement the controller).Control reconfiguration goes beyond the scope of this paper.

Simulation case study
In this section, we present numerical simulations that both verify and illustrate the performance of the proposed control system.We  Figure 7 shows the results of the first experiment, in which the vehicle is in position hold (regulation) in the presence of a constant ocean current and then after 20 seconds we set a reference set-point change in surge, sway and yaw simultaneously.This figure shows the demanded and actual surge, sway and yaw positions, velocities and generalized forces.As we can see from the demanded and actual generalized forces, the anti-windup scheme works such that the demands are feasible.Due to the saturation of the actuators, however, the velocity demands cannot be followed.Figure 8 shows the corresponding forces of the four actuators.As we can see from the latter figure, the forces remain within the constraints on the maximum force magnitude.The control system presents a good performance despite the actuators reaching the saturation levels.
Figures 9 and 10 show the results of a second experiment with the same environmental conditions and position set-point change as in the first experiment, but in this case the anti-windup is inactive (that is α = 1).In this case the controller is unaware of the limitation of the actuators, and this, as expected, produces a severe degradation in the positioning performance since the force demands are not feasible and the integrators windup.Although the vehicle finally goes to the desired position (in an inadmissible way), the stability of the closed-loop cannot not be guaranteed by the theory.
In the third experiment the ocean current and the reference steps are the same as the previous experiments, but the stern-port thruster is turned off to emulate a failure.The controller parameters remain unaltered and the matrix B adopts a new value given by the new actuator configurations, while the anti-windup strategy is active.The time evolution of demanded and actual velocities and generalized forces in surge, sway and yaw are shown in Figure 11.This simulation evidences that the performance of the control system is still good despite one thruster is unavailable, only a slight difference in the time response is appreciated between the controller with three or four actuators, as can be intuitively thought.Figure 12 shows the actuator forces, the stern-port force is compensated by the other actuators to produce the demanded generalized forces.The last experiment is the same as the third experiment but in this case we disable the antiwindup algorithm.Figures 13 and 14 show that under these conditions the closed loop becomes unstable.

Conclusions
In this paper, we have considered the design of a positioning controller in conjunction with control allocation for over-actuated marine vehicles.The proposed control architecture is based on a velocity loop implemented with a proportional-integral controller in antiwindup form and a position loop implemented with a proportional controller.This control architecture provides integral action for position regulation.
The use of control allocation allows the control design to be focussed on the generalized forces related to the degrees of freedom of concern rather than on actuator forces.In the proposed control system, we map the constraint set of actuator forces due to the limited authority of the actuators into a constraint set for the generalized forces.This approach results in a constrained control design with a simple, unconstrained, control allocation problem.
We provide an algorithm for an on-line implementa-tion of the mapping, and we prove closed-loop asymptotic stability using Lyapunov and passivity theory.The use of control allocation also provides the basis for actuator fault accommodation.The proposed controller offers the possibility of actuator fault accommodation provided that the vehicle remains fully-actuated after the failure.The tuning of the proposed control system is based on simple practical rules that follow from closed-loop stability considerations and performance.The key assumptions is that the hydrodynamic coupling between the different degrees of freedom is negligible.This assumption is motivated by the usual fore-aft quasisymmetry of most surface vessel hulls and some underwater vehicles.The tuning rules use only the parameters of the open-loop velocity response.These parameters can be estimated from data of zig-zag tests.By combining the estimation with the tuning rules, we obtain the basis of an auto-tuning controller.
The performance of the proposed controller is illustrated based on simulation case scenarios for a generic open frame underwater vehicle with four actuators in nominal and faulty modes.

A. Open-frame underwater vehicle model parameters
We consider a vehicle with a mass of 10,000 Kg, and it is of a similar form as the vehicle shown in Figure 5.The vehicle has four thrusters in an x-type configuration, namely, bow-starboard, bow-port, stern-port, and stern-starboard.The maximum force produced by each thruster is 150N, and for simplicity, we consider a symmetric force characteristic.The thruster configuration matrix is given by and the distances that determine the horizontal location of the thrusters in the vehicle are l 1 = 0.6m and l 2 = 0.4m for all four actuators.These distances are given with respect to the point at the centre of the box that encloses the vehicle.The matrix B for the faulty case is obtained from equation ( 26) taking off the row corresponding with the faulty actuator.For reason of symmetry, the weighted matrix W is chosen as the identity matrix.The vector equation of motion is formulated at the centre of the box that encloses the vehicle.Table 1 gives the parameters of the velocity response dynamic model and those of the controller.

B. Stability proof of the closed loop
In this appendix, we prove that the closed-loop system is asymptotic stable using Lyapunov and passivity theory (Khalil, 2000;Brogliato et al., 2007).Under the modeling hypothesis considered in Section 2, the closed-loop dynamics on each degree of freedom can be described as a feedback interconnection of a linear system and a memoryless function as follows where i indicates the degree of freedom surge, sway and yaw.The states x i 1 and x i 2 represent generalized momenta (m u u, m v v and m r r) and positions (n p , e p and ψ p ) respectively, x i 3 is the state of the velocity controllers, τ i is the generalized force, m i and dl i are the diagonal entries of the mass and damping matrices M and D of the model (5).
After the loop transformation shown in Figure 6, the nonlinearity in the feedback loop belongs to the sector [0, ∞].In this form, the asymptotic stability of the closed loop origin is equivalent to the absolute stability of the Lure's problem (Khalil, 2000).
Theorem 1 (Asymptotic stablity) The closedloop system obtained by the feedback interconnection of the linear system (27) and the memoryless function (28) with controller parameters satisfying has an asymptotic equilibrium point at the origin.
Proof First, we prove that the transfer function G T (s) = 1 + C(sI − A) −1 B is a positive real, where A, B and C are the matrices that characterize the linear system ( 27): • the poles of G T (s) are 0; − dl m ; − 1 • for all real ω for which jw is not a pole of G T (s), G T (jω) + G T T (−jω) ≥ 0 if and only if 0 < T I , 0 < P < dl/m and K p > 0, and Under these conditions G T (s) is positive real (Khalil, 2000).Given that the pairs (A, B) and (A, C) are controllable and observable respectively if 1/T I = dl/m and P = dl/m, and G T (s) is positive real, then there exist matrices P = P T > 0, L, and W such that This is the well-known Positive Real Lemma (Khalil, 2000;Brogliato et al., 2007), which proves that the linear system is passive with supply rate τ y and storage function V (x) = 1 2 x T Px.In order to prove stability of the closed loop, we consider V (x) as a Lyapunov function candidate.Then, using (30), the orbital derivative of V (x) results This proves Lyapunov stability of the closed-loop system, then asymptotic stability follows by applying the invariance theorem (Khalil, 2000), that is, The above equations establish that there is no invariant subset of the closed-loop system state space where V (x) = 0, unless the subset is the origin.Then, the origin is an asymptotically stable equilibrium point.

Figure 1 :Figure 2 :
Figure 1: Uninhabited underwater vehicle motion control system with control allocation.
. In this figure, Lim represents a saturation c ∞ e y C(s) −1 − c −1 ∞ τ uc τ d Lim

Figure 4 :
Figure 4: Vehicle positioning controller with velocity loop in anti-windup form with scaling.
consider a model of an openframe underwater vehicle-like the one shown in Figure 5.This vehicle has four thrusters in an x-type configuration, namely, bow-starboard, bow-port, sternport, and stern-starboard.Further details of the vehicle model are given in Appendix A.

Figure 5 :
Figure 5: Example of open frame underwater vehicle with x-type thruster configuration.Picture courtesy of Saab Seaeye Ltd, UK.

Figure 7 :
Figure 7: Performance of vehicle position regulation controller in current and position set point change.

Figure 8 :
Figure 8: Actuator forces for a vehicle change in position while in current.

Figure 9 :
Figure 9: Performance of vehicle position regulation controller in current and position set point change, for the case where the anti-windup is not active.

Figure 10 :
Figure 10: Actuator forces for a vehicle change in position while in current for the case where the anti-windup is not active.

Figure 11 :
Figure 11: Performance of vehicle position regulation controller in current and position set point change under an actuator fault.

Figure 12 :
Figure 12: Actuator forces for a vehicle change in position while in current with an actuator fault.

Table 1 :
Model and controller parameters