Supervisory Cascaded Controllers Design: Experiment Test on a Remotely-Operated Vehicle C.S.CHIN*, M. W. S. LAU+, E. LOW+ *
School of Engineering, Mechatronics Department, Temasek Polytechnic 21 Tampines Ave 1, Singapore 529757
[email protected] +
Robotic Research Centre (RRC), Mechanical and Aerospace Engineering Department, Nanyang Technological University, 50 Nanyang Ave, Singapore 639798
Abstract The paper proposes a cascaded multi-controllers switching scheme for stabilization and pipeline tracking of a remotely operated vehicle (ROV) under hydrodynamic uncertainties. The ROV is inherently non-linear, highly coupled in motions and vulnerable to the hydrodynamic uncertainties. With controllers that cancel the nonlinear dynamic, the system is robust against the pre-defined values on the hydrodynamic added mass and the damping terms. The values used in these perturbed terms (or parametric uncertainties) were obtained numerically using the WAMIT software. Compared with other controllers such as Proportional-Integral and backstepping method, the pool test showed that the proposed method gives better time domain response and robustness against the perturbed terms.
1. Introduction Marine vehicles such as ship[1,2] and autonomous underwater vehicle(AUV)[3,4], remotely-operated vehicle(ROV)[5,7,8,9] dynamics are non-linear, highly coupled in motion and
susceptible to
hydrodynamic uncertainties. The performance can suffer significantly when the ROV is performing a pipeline inspection that involves both station-keeping and pipeline tracking operation at points on the pipeline that emphasize on the nonlinearities (at the pipeline bend) due to Coriolis and centripetal terms present in the ROV model.
Hence, a robust control system for pipeline tracking and
stabilization is required.
1
Recently, a switched system[10,11] could likely to handle this problem. The switched system is a hybrid system (is a dynamical system that contains interacting continuous and discrete event dynamics) that consists of several subsystems and a switching law indicating the active subsystem at each instant of time. One feature of a switched system is that its continuous state does not exhibit jumps at the switching instants. Only recent years, the switching control[11, 12, 13, 14] has been applied extensively. The need for switching stems[15] from the fact that typically no single controller can guarantee a desired behaviour to an uncertain system such as the ROV. The switching schemes provide an alternative to more traditional continuously tuned adaptive control algorithm where the conventional continuous adaptation is not always capable of performing satisfactorily and easy for implementation. This is particularly true whenever the plant switches among different modes of operation or if closed-loop signals are not sufficiently exciting. In both circumstances undesirable transients may typically arise due to slow adaptation. Furthermore, many (if not most) of the dynamic systems encountered in practice consists of both discrete and continuous dynamics.
Instead of using multiple controllers switching, the accuracy of the nonlinear ROV model can be improved by using multiple models [28-31]. However, this is expensive because each model requires the collection of model data (in this case, the ROV model) at a different level of operation along the reference pipeline. The number of models required can be large due to the inherent parametric uncertainties, and the proposed decoupled controller to remove the perturbed term inevitably increases. Besides, the aspects of the software and hardware implementation are rarely explained in literature. The multiple model control increases the computational complexity of the control algorithm; data logging system, task prioritizing or scheduling as multiple-controllers (although sometimes the numbers of controllers can be lesser than the models) are required for these multiple models. The number of process models ultimately employed and the relevant of the ROV models used, are some practical concern made by the control practitioner.
2
In [18], the cascaded control scheme was discussed without the multi-controllers switching scheme. There is no experiment results performed at that point in time. Motivated by the above problems, we proposed a cascaded supervisory system for multi-controllers switching during stabilization and position tracking. For a start, we limit to just two controllers design so as not to increase the computational complexity. In the proposed ROV system, the controller switching is primarily based on the reference pipeline inputs. To improve the asymptotic stability during the switching, a dwell time is included. However, due to measurement noise in the output and the nonlinear cross terms in the ROV dynamics, an observer [16] was designed to estimate the ROV positions.
Motivated by the above problems, we proposed a cascaded supervisory system for multi-controllers switching during stabilization and position tracking. In the proposed ROV system, the controller switching is primarily based on the reference pipeline inputs. To improve the asymptotic stability during the switching, a dwell time is included. However, due to measurement noise in the output and the nonlinear cross terms in the ROV dynamics, an observer [16] is designed to estimate the ROV positions. The paper is organized as follows. The cascaded supervisory model is described in section 2. The asymptotic stability of different controllers in the cascaded supervisory system is shown in section 3. In section 4, the experimental pool results of the proposed cascaded supervisory system are compared with other controllers. Conclusions are drawn in section 5.
2. Cascaded ROV Model for Stabilization and Tracking A station-keeping model is used to describe the ROV dynamic during point stabilization on the pipeline. As the roll and pitch motions are bounded, they are neglected in the modeling. This is mainly due to the meta-centric height being sufficiently large to provide adequate static stability to enable the gravitational and buoyancy force to act as self-restoring moments in these motions during the ROV’s maneuvering.
After adding an additional float (or balancing mass) to make the X-Y
coordinate of the center of buoyancy coincides with the X-Y coordinates of the center of gravity, the
3
ROV becomes neutrally buoyant, that is, the gravitational force due to ROV weight equals the buoyancy force due to water displaced by the submerged ROV. Hence with this design, the ROV would not sink and exhibit self-restoring forces in roll and pitch angular motion when deployed into the water.
The following are the nonlinear model used for the station-keeping mode and the
cascaded structure with the observer.
2.1 Station-Keeping Model The vehicle model used for the model-based control design is the Research Robotic Centre (RRC) ROV[8, 9]. This vehicle (see Figure 1) is neutrally buoyant and is controllable in four degrees of freedom (DoF) namely: surge, sway, heave and yaw. The ROV has two thrusters orientated longitudinally and two thrusters are orientated at an angle of 45 degrees from the X-Z plane. The four thrusters on the ROV platform can be seen in Figure 2.
Figure 1: Tracking error in body-fixed frame
The following assumptions can be made when deriving the ROV dynamic equation in order to simplify the modelling. There are namely: (a) ROV is a rigid body and is fully submerged once in water; (b) ROV is slow moving for operation such as pipeline inspection; (c) Disturbance due to wave is neglected as it is fully submerged; (d) Tether dynamics attached to the ROV is not modelled (will be included in future work); (e) The earth-fixed frame of reference is inertial. The moving
4
coordinate frame is fixed on the ROV and is called the body-fixed frame. The body-fixed frame is usually chosen to coincide with the center of gravity or the principal axes of inertia. The motions of the body-fixed frame are described relative to an inertial reference frame. For marine vehicles, it is usually assumed that the accelerations of a point on the surface of the Earth can be neglected. Indeed, this is a good approximation since the motion of the Earth hardly affects low speed marine vehicles such as ROV. As a result of this, an earth-fixed frame can be considered to be inertial.
With that, the station-keeping model was developed for ROV hovering at a fixed position above the pipeline. The standard SNAMES notations used for the marine vehicle [17] are shown in Table 1 in Appendix A.
Figure 2: Thrusters position on the RRC ROV platform The nominal nonlinear dynamic equation for the station-keeping model (variables labelled with subscript ‘s’) can be written as: 1 1 ν s M s [C s ( ν s ) D s ]ν s M s τ s
(1)
where ν s u v w r T is the body-fixed velocities, τ s Ts FT u [ x , y , z , ]T is the thrust input in which the voltage input u 4 , FT fT I 44 4 4 ( fT 0.92 for forward thrust and
fT 0.61 for reverse thrust) is the static thrust vs voltage relationship, Ts 4 4 is the thruster configuration matrix, Cs ( ν s ) 4 4 is the sum of Coriolis and centripetal and the added mass forces
5
and moments matrix, D s 44 is the linear diagonal damping matrix due to the surrounding fluid and M s 4 4 is the sum of the rigid body inertia mass and added fluid inertia mass matrix that is defined as a diagonal matrix M A diag{[ X u Yv Z w N r ]} . The details of the matrices in (1) are shown in Appendix A.
The Kinematics equations that translate the body-fixed coordinate to the earth-fixed coordinate[17] is:
η s J s ( ηs ) ν s where the earth-fixed position ηs x
cos sin transformation: J s ( ηs ) 0 0
y
sin cos 0 0
T z , ν s u
(2) T v w r and the Euler’s
0 0 0 0 . 1 0 0 1
Equation (1) and (2) can be expressed as a nonlinear time-invariant system or the state space equation in (3) for the ROV moving in surge, sway, heave and yaw. x s fs (xs , t ) gs ( u , t )
(3)
where the states are the velocities and the earth-fixed positions, xs [ ηs ν s ]T ,
J s (ηs )ν s ; gs ( u , t ) f s (x s , t ) 1 g s1 M s [C s ( ν s ) D s ] ν s and the vector g s1
g s2
g s3
0 31 g s2
g s3
; g s4 Ts FT u
g s4 can be found in Appendix A.
The corresponding perturbed model of the station-keeping mode is written as:
x s f s (x s , t ) g s ( u , t ) Δd s (x s , u , t ) where the hydrodynamic perturbed terms:
Δd s (xs , u , t ) Δfs ( xs , t ) Δg s ( u , t ) 0 41 0 41 ; 1 1 ΔM A [ΔD ΔC A ( ν s )]ν s ΔM A Ts FT u
6
(4)
are the uncertainties on the hydrodynamic added mass and damping forces terms. The upper bound of ΔM A , ΔC A ( ν s ) and ΔD used in the simulation are shown in Appendix A. The terms were obtained using computational fluid dynamic software: WAMITTM and ANSYSTM. Experiments[8, 9] had been conducted to verify these parameters.
2.2. Robustness Measure We have to test the robustness of the control system under the hydrodynamic added mass and damping perturbations. It is more difficult to obtain the hydrodynamic added mass and damping terms used in open-frame ROV as compared to the slender shaped AUV (where analytical solution is available in [17]). There are too many sub-components to be model numerically in the ROV. Besides, a “perfect” model for control could not be achieved in practice. Briefly, the steps used to obtain the hydrodynamic added mass and the damping perturbed terms are shown in [8,9].
Firstly, by analyzing the effect on these conditions, the perturbation on the added mass matrix can be obtained. The changes of the added mass matrix can be seen in the following conditions:
changes in the ROV’s shape due to dimensional error and extra components that are difficult to model, e.g. small cylinder that represent the front LED light ;
changes in the ROV’s center of buoyancy;
changes in fluid density around ROV.
In the first case, the ROV can be modeled without the extra components (such as a small cylinder) and with no change in the reference frame. The added mass is computed as: 0 0.0884 0 2.6127 0 21.0981 0 51 . 0026 0 2 . 9200 0 1 . 0534 0.0692 0 91.837 0 1.8883 0 M A 2.9199 0 3.5760 0 0.5795 0 2.5988 0 1.8884 0 6.7568 0 0 1 . 0537 0 0 . 5793 0 4 . 4147
(5)
By including those extra components (such as a small cylinder) and using the same reference frame, the added mass is:
7
0 0 0 0.5683 2.8284 21.724 0 51.5244 0 3.3080 0 1.0988 0.0147 0 94.300 0 1.9858 0 M A 0 3 . 3320 0 3 . 8803 0 0 . 7420 2.6862 0 1.9905 0 7.1148 0 0 0 0 4.7673 1.1078 0.7329
(6)
In the second case, with the extra components and a change in the reference frame to center of buoyancy, the added mass becomes: 0 0.0621 0 1.0083 0 21.1398 0 51 . 7013 0 5 . 9705 0 1 . 588 0.0918 0 92.4511 0 2.9191 0 M A 5.8866 0 4.2176 0 0.1719 0 1.0583 0 2.9489 0 2.7687 0 1.5863 0 0.171 0 2.3493 0
(7)
With the extra components and a change in the reference frame to center of gravity, the final MA becomes: 0.5748 0 0.0619 0 0 21.1403 0 51 . 7012 0 2 . 0928 0 0 . 3767 0.0917 0 92.4510 0 0.5871 0 M A 0 2.0090 0 3.6191 0 0.0235 0.5237 0 0.5594 0 2.6427 0 0 0.3783 0 0.0275 0 2.3033
(8)
As observed from these matrices, changes in the off-diagonal components are quite small as compared with the diagonal counterparts. Thus, the perturbation M A comprises only the diagonal terms, with the maximum values used as the upper bound for M A : 0 0 0 0 0 21.7240 0 51 . 7013 0 0 0 0 0 0 94.3000 0 0 0 M A 0 0 0 4 . 2176 0 0 0 0 0 0 7.1148 0 0 0 0 0 4.7673 0
(9)
The hydrodynamic damping due to skin friction is difficult to obtain for the open-frame ROV. Even with the application of the numerical method, the error can be at least ten percents of the computed value. Hence, the perturbation on the linear damping ΔD is at ten percent of the D matrix.
8
0 0 0 0 0 0.370 0 0 . 291 0 0 0 0 0 0 0.237 0 0 0 ΔD 0 0 0.166 0 0 0 0 0 0 0 0.145 0 0 0 0 0 0.011 0
(10)
2.3 Cascaded Structure of ROV The proposed cascaded structure of the ROV is shown in Figure 3. It consists of an inner loop for stabilization and a cascaded loop for pipeline tracking. The inner loop equation is used to describe the dynamic during the station-keeping operation whereby the ROV’s body-fixed velocity is regulated at a desired velocity. The detail of the important notations used in here can be found in Table 2 in Appendix A. outer loop Outer Controller
inner loop x s 2d
uO +
x s1d +
J s (.) -1
-
+ ~ xs1e
Inner Controller
+ u
+
Ts FT
τs
uI
Ms
+
1
+
1 s
Js (xs1)
+
-
x s1
x s1
x s2
1 s
f s 2e (.)
xˆ s2
x s2 Nonlinear Observer
xˆ s1
x s1
Figure 3: Closed-loop systems of cascaded RRC ROV For
inner
~ xs2e u~e
loop
v~e
dynamic
used
in
velocity
regulation,
the
velocity
error
T ~ re can be defined as:
~ w e
~ xs2e xs2d xˆ s2 where x s2d ud
states,
vd
wd
(11)
T T rd is the desired velocity states and xˆ s2 uˆ vˆ wˆ rˆ is the
estimate of velocity state xs2 . From Figure 3, the inner loop equations can be written as:
9
~ x s2e fs2e (~ xs2e , t ) gs2e ( uI , ~ xs2e , t )
(12)
where uI 4 is the inner-loop control law. For the outer loop dynamics used in ROV tracking control, it is convenient to compute the tracking error in the body-fixed frame (as shown in Figure 1) as:
~ xs1e J s1 (xs1 )(xs1d xˆ s1 ) where x s1d xd
yd
zd d
T
is the desired position states,
(13)
xˆ s1 xˆ
yˆ
T zˆ ˆ is the
estimate of position state xs1 and (xs1d xˆ s1 ) is the position tracking error in the earth-fixed frame.
J s1 (xs1 ) is the inverse of the Euler’s transformation (and its dependence of x s1 is not shown x s1e becomes: subsequently for clarity). The tracking error dynamic, ~
~ x s1e J s1 [J s1 J s (x s1d xˆ s1 )] J s1 (x s1d xˆ s1 ) J 1 J ~ x J 1 (x xˆ ) s
where
s
s1e
s
s1d
(14)
s1
x s1d J s (xs1 )xs2d , xˆ s1 J s (xs1 )xˆ s2 and ~ xs1e J s1 (xs1 )(xs1d xˆ s1 ) . Note that the
xs1e correspond to the error in the ROV longitudinal direction, the cross parameters in the vector ~ track error, the altitude error and heading error respectively. Hence, equation (14) becomes:
~ x s1e f s1e (~ x s1e , ~ x s2e , u O , t )
(15)
where the uO 4 refers to the control law.
The derivation of the inner and outer loop controller in (6) and (9) can be seen in [18]. The decoupled controllers for the inner and outer loop are designed such that the nonlinear coupled dynamic terms and hydrodynamic perturbations are cancelled and the loops are asymptotically stable based on the converse Lyapunov theorem [32]. There are three conditions to satisfy in the theorem that leads to the derivation of the controllers. The inner loop controller makes the state velocity error small. The terms in the inner loop controllers perform two main tasks: (a) cancel the nonlinear coupled dynamic behavior which we assumed that there is a prior knowledge from the ROV modeling, and (b) to
10
attenuate the perturbation due to the above-mentioned hydrodynamic uncertainties that we defined earlier. On the other hand, the outer loop ensures tracking to the pre-defined trajectory with least amount of coupling by (a) canceling the nonlinear coupled terms. That is basically, how the name decoupled controller arises and with Proportional term included, it becomes P-decoupled controller.
In summary, the control objectives are to maneuver the ROV to a desired position
xs1d xd
yd
T zd d on the pipeline with small velocity error, ~ x s2e under the assumed
perturbation on the hydrodynamic terms.
2.4. Observer Design for Station Keeping Mode A coordinate transformation[16] from body-fixed frame to earth-fixed frame is used in the observer design for the ROV. Due to the measurement noise in the sensors output and the quadratic cross terms appearing in the Coriolis and centripetal matrix C s ( ν s ) ν s , it makes the estimation complicated. Hence an observer that cancels the quadratic cross term that appears in the matrix is used. In this paper, the observer is used to estimate all velocity position xˆ
yˆ
uˆ
T vˆ wˆ rˆ and
T zˆ ˆ states. The following steps are used in the observer design for the station-
keeping mode. Note that the parameters used in the cascaded system can be found in section 2.2.
Basically, the steps involved in the coordinate transformation to cancel the nonlinear cross-terms
C s ( ν s ) ν s and derivation of the observer equation are as follows.
Coordinate transformation
Observer equation and the exponential convergence proof of the observer states
Full state observer error equations as shown in (10) and (11).
The observer gains K 01 and K 02 are obtained as shown in the (B.12) to (B.14) in the Appendix B. The matrices, K 01 and K 02 were obtained by ensuring that the Vobs 0 and Vobs 0 .However, the gains required some fine-tuning during the pool trial due to the external disturbances in the pool.
11
After
few
trials,
the
observer
gains
K 01 diag{[32,11,45,15]} and
are:
K 02 diag{[12,14,23,17]} .By substituting the observer equation into (15), the observer error equation for the outer-loop becomes:
~ xe ud cos vd sin uˆ rˆ~ ye u Ox xe
(16a)
~ y e ud sin vd cos rˆ~ xe vˆ u Oy ye
(16b)
~ ze wd wˆ u Oz ze
(16c)
~ e rd rˆ u O e
(16d)
where ~ xe , ~ ye , ~ ze ,~e are the position tracking errors in body-fixed frame and xe , ye , ze , e are the components of observer gains K 01~ ηs . u Ox , u Oy , u Oz and u O are the outer loop control law for the surge, sway, heave and yaw dynamic respectively.
See Appendix A for detail of
the u Ox , u Oy , u Oz and u O used in the equations.
Similarly, substituting the observer equation into (12), the observer error equation for the inner-loop can be expressed as: u~e ( m X u ) 1 X u u~e ( m X u ) 1[(Yv m )v~e ~ re x u Ix ] u
v~e (m Yv ) 1Yv v~e (m Yv ) 1[(m X u )u~e ~ re y u Iy ] v
~ (m Z ) 1[ Z w ~ w e w w e z u Iz ] w
(17a) (17b) (17c)
~ re ( I z N r ) 1 N r ~ re ( I z N r ) 1[(Yvu~e X u u~e )v~e u I ] r (17d) where
u~e ud uˆ ,
~ w wˆ and ~ v~e vd vˆ , w re rd rˆ e d
are the velocity errors.
u , v , w , r are the components of observer gains K 02 ~ν s . u Ix , u Iy , u Iz and u I are the inner loop control law for the surge, sway, heave and yaw dynamic respectively. x , y , z , are the thrust inputs to the ROV. See Appendix A for detail of u Ix , u Iy , u Iz and u I .
12
The error dynamic for both tracking and stabilization for the cascaded system becomes:
where ~ xs2e u~e
v~e
~ w e
~ x s1e fs1 (~ xs1e , ~ xs2e , uO , t )
(18a)
~ x s2e fs2 (~ xs2e , t ) gs2 ( uI , ~ xs2e , t )
(18b)
T ~ re is the velocity error, ~ xs1e ~ xe
~ ye
T ~ ze ~e is the position
tracking errors in body-fixed frame and the remaining functions are defined as: cos sin fs1 (~ xs1e , ~ xs2e , uO , t ) 0 0 (m X u ) 1 X u 0 f s2 (~ xs2e , t ) 0 0
0 0 ye uˆ rˆ~ ~ 0 0 rˆxe vˆ x s2d xs1 uO K 01 ~ wˆ 1 0 0 1 rˆ
sin cos 0 0
re ( m X u ) 1 (Yv m)~ (m Yv ) 1Yv 0 ( I z N r ) (Yv X u )u~e 1
0 0 (m Z w ) 1 Z w 0
0 (m Yv ) 1 (m X u )u~e ~ x s2e 0 ( I z N r ) 1 N r ~
(m X u ) 1 0 0 1 0 ( ) 0 m Y v ~ g s2 ( uI , xs2e , t ) 0 0 (m Z w ) 1 0 0 0
xs2 1 cos sin 0 0 0 0 ( u τ ) K sin cos 0 0 ~ xs1 I s 02 0 0 1 0 0 0 0 1 ( I z N r ) 1 0
uI , uO 4 are the inner and outer control law as mentioned and K 01 , K 02 4 4 are the observer gains.
2.5. Cascaded supervisory system for Station Keeping Mode With the cascaded systems model defined, the next step is to incorporate the proposed multicontrollers switching scheme (see Figure 4) into the cascaded system. To orchestrate these switching scenarios, the supervisor is required to perform the logic-based switching[13,14].
13
Figure 4: Cascaded supervisory system: a multi-controllers switching The inner and outer controllers switching sequence is selected from a set of stabilizing controllers switching sequence based on the different phases of the vehicle positioning defined by the reference input to ROV (as seen in Figure 5). As the ROV’s is neutrally buoyant with no unstable restoring force affect the ROV motion, the ROV system is shown to exhibits only kinetic energy. The Lyapunov function V can be chosen to represent the system’s total mechanical energy consisting of kinetic and potential energy. Since the ROV’s submerged in water is neutrally buoyant, the effect of potential energy become negligible. Hence, the ROV system only exhibits kinetic energy. To improve on the stability of the cascaded switched system, the kinetic energy after the switching must be less than or equal to kinetic energy before the switching[34]. To achieve this, we include the dwell time[19] for the transient to settle down. This indirectly ensures that less energy is present after the switching [see Proposition 1 in this paper]. Thus, it improves the stability during the switching. launch point
1
waterline
IC-1
3
2
10m x
IC-4
5m
IC-2
IC-3
y
0rad
IC-5
1.57 rad
90 deg
15m
5m
IC 1 [0
0
IC 2 [7.5 IC 3 [15 15m
7.5 0 0
0
15 12.5
IC 4 [ 20
0
10
IC 5 [ 25
0
12.5
0]T
0 0
0
0 0
0
0]T 0]T
0 0
0]T
0
0]T
End point
Figure 5: Example of reference pipeline profile
14
Since each controller design has their strength and weakness, switching amongst them increases the robustness of the control system. The hybrid switched controllers consisting of the more than one controller should not degrade the control system if individual controllers alone work fine. Although, the switching instant can cause problem in the stability, by ensuring the adequate dwell time to allow the transient to settle down could improve the switched instant. The controllers switching sequence is selected from a set of stabilizing controllers switching sequence that is asymptotically stable at different phase of ROV’s manoeuvring.
The cascaded system model in (18a) and (18b) with piecewise continuous switching signal (t ) can be written as:
~ x s2e (t ) fs2,σ ( t ) (~ xs2e , t ) gs2,σ ( t ) (~ xs2e , uI , t )
(19a)
~ x s1e (t ) fs1, σ ( t ) (~ xs1e , ~ xs2e , uO , t )
(19b)
where ~ x s2e is the velocity error state, ~ x s1e is the position tracking error in the body-fixed frame, the vector functions fs1, σ( t ) , fs2, σ( t ) , gs2, σ ( t ) are continuous and locally Lipschitz.
The subscript
(t ) { CO (t ), CI (t )} is the supervisory logic that is piecewise continuous from the right. Here, the CI (t ) CO (t ) Ι C 1,2,3 is the piecewise switching signals for inner and outer controllers defined as:
1, if P - decoupled controller ( ui,1 ), P - decoupled controller ( uO,1 ); CI (t ) CO (t ) 2, if P - decoupled controller ( ui,2 ), P controller ( uO,2 ); 3, if P controller ( u ), P - decoupled controller ( u ); i,3 O,3
(20)
where the P-decoupled controller[18] for the inner and outer loop consists of several components with intention to ensure a faster response, to cancel some nonlinear coupled dynamic behavior and to attenuate the perturbation due to hydrodynamic uncertainties.
The condition for the inner and outer controllers switching is that the energy after the switching must be less than or equal to energy before switching, that is: VI , i ~ xs2e , t VI , i 1 ~ xs 2e , t and
15
VO ,i ~ xs1e , t VO ,i 1 ~ xs1e , t . This ensures that the switching will not create instability in the position and velocity response.
Here the “energy” during the position tracking is determined as
1 T VO (~ xs1e , t ) m ~ xs1e ~ xs1e while the Kinetic energy of the ROV during the stabilization is computed 2 as: VI ~ xs2e , t
1 ~ T~ m xs2e xs2e . The asymptotical stability of the proposed supervisory system is 2
shown in the subsequent section.
3. Asymptotic stability of cascaded supervisory system with dwell time In most marine control literature such as for ships and ROV, asymptotic stability refers mainly on three DoFs[17,20,21,22] with no hydrodynamic perturbation. The asymptotic stability[23] of the cascaded supervisory system operate in four DoFs is then proposed. In the proof, Lyapunov stability of the cascaded supervisory system via multiple Lyapunov functions is used.
For cascaded supervisory system, it will be shown that if both inner and outer loops can satisfy the Proposition 1 under different inner and outer loop controllers, then the entire cascaded supervisory system(with different controllers) is asymptotically stable. A dwell time[24] between each inner and outer loop controllers switching is introduced in the cascaded supervisory system. With the dwell time, the asymptotic stability of the nonlinear-cascaded supervisory system can be improved as the explicit lower bound of the dwell time can be computed. In the plant, the scalar function
VO ~ xs1e , t and VI ~ xs2e , t are used to measure the “energy” of an outer and inner loop controller respectively.
Proposition 1 (Asymptotic Stability of the Cascaded Supervisory System with Dwell Time for
Controllers Switching[24])
16
To show the asymptotic stability of each inner controller i I C , the following conditions have to be met. To begin, a Lyapunov function VI , i ( ~ xs2e , t ) for positive constant i , i , i satisfying:
i ~xs2e VI ,i (~xs2e , t ) i ~xs2e VI ,i (~ xs2e , t ) VI ,i (~ xs2e , t ) fs2 (~ xs2e , t ) i ~ xs2e , i I C ~ t xs2e
(21)
(22)
are to be met and with the input and perturbation terms are bounded as:
(~ x s2e , i ) Ω C,i , gs2, i ( ~ xs2e , t ) d1 ~ xs2e
(23)
(~ x s2e , i ) Ω C,i , Δd s2,i (~ xs2e , t ) d 4
(24)
Then, the asymptotic stability of the cascaded supervisory system during each controller’s switching instant can be improved by a dwell time, D that can be computed as:
D
1 2 2 1 1 2
log
1 2 2 1
(25)
where 1, 2, 1 , 2 are positive constant.
Proof: With the input and perturbation terms bounded as expressed in (23) and (24) respectively, the
xs2e (t ) will decay exponentially and converge to the origin. Combining (21) and (22), trajectories of ~ the following expression can be obtained:
VI ,i (~ xs2e , t ) VI ,i (~ xs2e , t ) ~ fs2 ( xs2e , t ) i VI ,i (~ xs2e , t ) ~ t xs2e i
VI ,i (~ xs2e , t ) i VI ,i (~ xs2e , t ) i
(26)
This imply that the solution of (26) becomes,
V I ,i ( ~ x s2e , t 0 D ) e
i t i
V I ,i ( ~ x s2e , t 0 )
17
(27)
for all [t 0 , t 0 D ) . Let’s consider the case where i I C . For example, it takes on the value 1 on
[t 0 , t1 ) and 2 on [t1 , t2 ) and so on where t j 1 t j D , j 0,1. From the above inequalities, the switching occurs at t1 has to satisfy the following: 2
t VI , 2 (~ xs2e , t1 ) 2 VI ,1 (~ xs2e , t1 ) 2 e 2 VI ,1 (~ xs2e , t0 ) 2
2
(28)
and similarly, the switching occurs at t2 satisfy: 1
t VI ,1 (~ xs2e , t 2 ) 1 VI , 2 (~ xs2e , t2 ) 1 e 1 VI , 2 (~ xs2e , t1 ) 1
1
(29)
From (28) and (29), it implies that: 1 2
t VI ,1 (~ xs2e , t 2 ) 1 2 e 1 2 VI ,1 (~ xs2e , t0 ) 1 2
(30)
Hence, equation (30) shows that VI ,1 ( ~ xs2e , t2 ) is less than or equal to VI ,1 (~ xs2e , t0 ) if the dwell time, D at each switching instant is large enough to create a faster exponential convergence. By manipulating the (30), the explicit lower bound on D that guarantees the asymptotic stability (or in particular exponential stability) of the cascaded supervisory system can be computed as:
D
1 2 2 1 1 2
log
1 2 2 1
(31)
Thus, the cascaded supervisory system is asymptotically stable about the equilibrium by means of dwelling (that is computed analytically in the (31)).
4. Experimental Results To compare the experimental with the theoretical results, the proposed cascaded supervisory control (using P-decoupled controller) was applied on the RRC ROV. The RRC ROV as seen in Figure 6 is tethered by a 100 m long cable that supplies 230 VAC electrical powers through an AC generator (powered by gasoline). The umbilical cable dispensed from the tether drum provides the
18
communication and video signal lines that supports the RS-485 standard at a baud rate of 9600 via an RS-232C to RS-485 converter. The control system embedded inside the ROV consists of the industrial controller (incorporates an AMD 5x86-133 processor with 6 MB RAM), thrusters’ driver, navigation module and two cameras that were hosted on a QNX real-time operating system (QNXRT OS). All control algorithms were coded in C/C++ language and that include the thrusters’ driver for the thrusters’ speed and direction control and the navigation module such as the velocity Doppler, magnetic compass and pressure sensors. On the other hands, the Graphic-User-Interface (GUI) with joystick provides the real-time command input to move the ROV. The joystick accepts motion commands for the URV much like a normal joystick while in the camera control mode; the joystick is used to direct the orientation of the pan-tilt mechanism of the camera via RS232 . The outputs from the navigation sensors were saved in the Main PC for offline analysis. Communications between the modules are achieved through the LAN 100Base-T crossed cable with RJ45 connectors at both ends. The actual pool test setup can be seen in Figure 7.
Figure 6: RRC ROV control system setup for pool test
19
Figure 7: Actual setup for pool test As seen in Figure 8, a small pool measuring 10 m × 10 m × 5 m (depth) was used to test the control system of the vehicle. Due to the limitation of on-board sensors at the time of the test, only simple tests involving yaw and heave operation (using a pressure and magnetic compass sensor respectively) instead of the reference pipeline profile (in Figure 5) was conducted.
Figure 8: RRC ROV in small pool tethered by umbilical cable As shown in Figure 9, the observer was able to estimate the actual heading and altitude (as acquired by the pressure and magnetic compass sensor respectively). As seen in Figure 9, the height of ROV in metres with respect to the pool bottom was plotted. For the height measurement, we converted the
20
voltage to the equivalent pressure with some correction factor as recommended. The resolution of the pressure sensor is 0.01-0.5m and the compass is around 1 to 10 degrees. The magnetic compass can only register the heading angle as shown in Figure 9. We stored the angle at each time interval and re-plotted in the graph as shown in Figure 10. As observed, the start point indicates the zero deg heading angle. During the CW turn to the right, the angle of 90 degrees was registered and so on. In Figure 10, the magnetic compass for yaw angle was initially at 360 degrees angle before correcting itself to the zero degree angles that corresponds to the ROV initial position. It took almost ten seconds for the correction to complete. However, the observer was able to estimate the desired squared profile with small estimated error in the surge and sway position as the vehicle maneuvered a 90 degreed turn. 400
4 experimental (sensor ouput) experimental (observer )
350
experimental (sensor ouput) experimental (observer )
3.5
300
3 2.5
200
Z [m]
Heading [deg]
250
150
2 1.5
100 1
50
0.5
0 -50 0
10
20
30
40
50 60 Time in sec
70
80
90
0 0
100
20
40
60 Time in sec
80
100
120
Figure 9: Sensors and observer result for heading (left) and heave (right) DoF 2 1.5 t h e o re tic a l (o b s e rve r) d e s ire d e x p e rim e n t a l (o b s e rve r)
1 0.5
Y (m)
0 s t a rt p o in t
-0 .5 -1 -1 .5 -2
end p o in t
-2 .5 -3 -1
0
1
2
3
4
5
6
7
8
X (m )
Figure 10: Observer result (as compared with theoretical) for surge and sway DoF
21
To examine the tracking and stabilization of the proposed cascade supervisory system, the experimental results were compared with the theoretical results using the ROV Design and Analysis toolbox[25] written in MatlabTM. A small segment of the actual ROV test is shown in Figure 11. The ROV maneuvered from the initial station-keeping mode to the starting point on the horizontal plane. For consistency, the starting point for comparisons was set at point [-0.16 2.07 0.50 0 0 2.30]T where it coincides with the ROV when it began to yaw and move attitudinally to the required depth at point [-0.16 2.07 3.80 0 0 0.74]T.
Theoretical Experimental
0
= 90deg
-0.5 -1
Start point
z (m )
-1.5 -2
z =3.8m
-2.5 -3 -3.5 -4 -3 -2 -1 0
-0.5
0
0.5
1
1.5
2
2.5
y (m)
x (m)
Figure 11: 3D view of RRC ROV in pool test
The controller gains used in the test are explained. The P- decoupled controller gains have to be positive. We tuned the P-controller gains using the MATLAB/Simulink block diagram before the pool trial. The P-controller gains are as follows: inner loop: k pu 12, k pv 18, k pw 21, k pr 9 and Outer loop: k px 23, k py 31, k pz 11, k p 13 . Although the gains are positive, it was not straight forward as the first set of gains that were used did not perform well in the pool test. We went through a few times of trial and error to accommodate the un-modelled nonlinear effects due to the external disturbance in the pool test environment. The limitation during the test is the small pool size that causes some disturbance while the ROV was manoeuvring. Besides, we tried to include the integral term in the inner loop, it has some issues on the hardware. For cascade control, the inner loop
22
controller has to response faster as compared to the outer loop. Due to the velocities estimation process and the speed of the CPU, it was not fast enough for the outer loop to process. With that, we did not continue to include the integral term in the inner loop or the outer controller. The gains used in the PI-controller and backstepping gains were tuned using the MATLAB/Simulink block diagram. The process was mainly performed using trial and error method to see whether the response is reasonable as compared to the experimental results. If not, another set of gains were used. From the test, the following PI gains (k p 53, k i 28) are used. As for the backstepping gains, the controllers for each degree of freedoms are dependent on the model parameters. So we can only tune the following gains: ( K u 1.2, K v 2.5, K w 1.5, K r 2.1) In most scheduling scheme, one process needs to be switched out of the CPU so that another process in this case, a different controller scheme can run. This process is stored in a data structure called a process control block (PCB), or switch frame. The PCBs are stored upon a per-process stack in kernel memory. After the execution of the first process, it loads the PCB and the context of the second process. In doing so, the program counter from the PCB is loaded, and thus execution can continue in the new process.
To test the controller switching, the cascaded supervisory system with the switching signal CI (t ) CO (t ) 1 was used initially. Within a preemptive multitasking QNX operating system, the scheduler in PCB allows every task to run for some certain amount of time that is known as the time slice. The scheduler is run once every time slice to choose the next process to run. If the time slice is too short then the scheduler will consume too much processing time. Hence, we chose the time slice or the dwell time to allow the tasks to run. We took 5 seconds (as explained below) before the next process starts. Then, the switching of the controller from CI (t ) CO (t ) 1 to
CI (t ) CO (t ) 2 was achieved using the interrupt that is scheduled to allow the QNX operating system kernel to switch between processes when their time slices expire. Thus different controller will be used on the same ROV model for control.
23
In literature [33], there is no minimum dwell time imposed in application. This is mainly due to the limitation in systems hardware that consists of multiple sensors and actuators with different sampling rate and response time. In most cases, the dwell time must be greater than zero to be effective to improve stability. However, we tried to compute the theoretical dwell time using equation (25). We set the positive constant for the upper limit large enough such that it covers the respective functions in
(21)
and
(22)
adequately.
With
that,
the
constant
used
are
as
follows: 1 2 200, 1 2 100 . We substituted into the above equation to find the theoretical dwell time. It results to be 0.075second. Then, we set it to one second. Due to the time incurred on the task prioritizing and the estimation process, it was difficult to realize the dwell time of one second in the C/C++ program. With that, we set it to 5 seconds to accommodate the limitation.
As observed in the switching instant in Figure 12, there are some noises during, before and after the switching. This could be due to the external devices such as sensors and the power supply that interference with the embedded PC. The switching of the controller from CI (t ) CO (t ) 1 to
CI (t ) CO (t ) 2 was achieved using the interrupt that is scheduled to allow the QNX operating system kernel to switch between the processes. Before 30 seconds, the
first controller
CI (t ) CO (t ) 1 was used. It was only after 37 seconds, the second controller CI (t ) CO (t ) 2 was activated. Although the stipulated dwell time of 5 seconds was used, it takes around 7 seconds to switch. This may be due to the time needed to execute the program command lines. In practice, it is rather hard to enforce the dwell time.
24
X: 34.03 Y: 2.097
CI = CO = 2
2
Switching signal
X: 37.3 Y: 1.997
transient
CI = CO = 1
X: 30.08 Y: 0.9938
1
0
10
20
30 time (in sec)
40
50
60
Figure 12: Transient response at the witching instant The results of the simulated data and the actual one can be seen in Figure 13. For completeness, the response of the roll and pitch were included in the plots. The tracking profile matches the experimental result for the stipulated path. For the position tracking involving the heave and yaw DoF, the ROV was able to follow the simulation results with small steady-state error. However, the outputs show some oscillations in the surge and sway position (roll and pitch angle) due to the wave reflections from the wall as the ROV turns. However, the steady-state error was small. For comparisons purpose, only Proportional-Integral (PI) and backstepping controller were used. As compared to PI and Backstepping controller, the steady-state position and velocity error were higher than the proposed cascaded supervisory system using the P-decoupled controller. The response time of the proposed controller was found to be faster than other controllers.
As shown in Figure 14, the maximum thrust output from the proposed cascaded supervisory system with P-decoupled controller was lower than the PI and Backstepping controller. The initial high thrust force was needed to overcome the high inertial forces to move the ROV and the wave rebounded from the pool wall. With the ROV moving at a slow speed and the properly-laid tether, the tethered effect did not affect the ROV performance.
25
In summary, the proposed cascaded supervisory system was able to perform the position tracking and stabilization operation and was deemed to be robust against the hydrodynamic forces on the ROV and the wave reflection. Besides, the position and velocity responses were asymptotically stable to the steady state value without any divergent response. The thrust force was also lower as compared to the PI and Backstepping controller. As observed in the test, the swimming pool was not an appropriate test environment for testing the ROV. Due to the small size, the wave (generated by the thrusters) rebounded from the walls during the ROV maneuvering can cause external disturbance on the switched system. But the test did provide some insight to the switching control of the ROV. In the future, we should be able to test the vehicle in sea with the help of the external collaborator.
Time response
0.3
0
-0.2
20 30 Time(sec)
40
-0.1
-3
1
-0.2
-4
0
0
-0.08
P it c h r a t e ( r a d / s )
10
20 30 Time(sec)
40
0
10
20 30 Time(sec)
40
5
0
-0.04
-5
20 30 Time(sec)
40
-0.08
20 30 Time(sec)
40
10
20 30 Time(sec)
40
-15
0
10
20 30 Time(sec)
0.02
0
10
20 30 Time(sec)
0
40
0
10
20 30 Time(sec)
40
0
10
20 30 Time(sec)
40
2.5
2
0.01 0
-0.02
40
1
0.015 0.01 1.5
0.005 0
-0.005
1
0.5
-0.01
0
2
0.02 Theoretical-P-dec Experimental-P-dec Theoretical- P-Backstep Theoretical-P-PI
-10
-0.06 10
10
0.04 0.03
-0.02
0
0
0
0.02
3
2
-0.8
0.02
-0.06
3
-0.6
0.04
-0.04
4
0
0.06
-0.02
4
-0.4
0.04
0
5
0
P it c h a n g le (r a d )
10
5
-2
R o ll a n g l e (ra d )
0
6
1
-1
0.1
Y a w ra t e (ra d / s )
0
0.2
6
H e a v e p o s (m )
0.2
2
Y a w a n g l e (ra d )
0.4
S u rg e p o s (m )
0.4
Theoretical-P-dec Experimental-P-dec Theoretical- P-Backstep Theoretical-P-PI
S w a y p o s (m )
0.5
H e a v e v e l( m / s )
0.5
-0.5
R o ll r a t e ( r a d / s )
Time response
0.6
S w a y v e l( m / s )
S u r g e v e l( m / s )
1
-0.01 0
10
20 30 Time(sec)
40
-0.015
0
10
20 30 Time(sec)
40
0
Figure 13: Velocity (left) and position (right) response of RRC ROV using observer
26
120 Theoretical - P-Backstep Theoretical- P-PI experimental - P dec Theoretical - P dec
100 80
Thrust force (in Newton)
60 40 20 0 -20 -40
0
5
10
15
20
25
30
35
40
Time (sec)
Figure 14: Maximum thrust force output from the RRC ROV
5. Conclusions The cascaded supervisory system model for stabilization and position tracking was defined. The cascaded supervisory system with controllers’ switching was used The asymptotic stability of the system with dwell time was shown. As shown in the experimental result, the proposed cascaded supervisory system was able to perform the position tracking and stabilization operation and was robust against the hydrodynamic uncertainties and the external disturbance such as the wave reflection from the pool’s wall. Moreover, the position and velocity responses were asymptotically stable to the steady state value without any divergent response.
As seen in the comparisons with other controllers, the cascaded supervisory system exhibited a lower thrust force as compared to the Backstepping and PI controller. With different controllers designed, the velocity and tracking position error was found to be lowered than the Backstepping and PI controllers.
27
Acknowledgements The technical and financial support from NTU is sincerely appreciated. The authors would like to thank the reviewers for their invaluable comments and Mr. You Hong Eng for the ROV modeling.
References [1] Lefeber E. , Pettersen K. Y. and Nijmeijer H. Tracking control of an underactuated Ship. IEEE Transactions on Control Systems Technology, 2003, 11(1), 52-61. [2] Behal A., Dawson D. M., Dixon W. E. and Yang F. Tracking and regulation control of an underactuated surface vessel with nonintegrable dynamics. IEEE Transactions on Automatic Control, 2002, 47(3), 495–500. [3] Chiok, C. C., Hariharan K. and Teo C. L. A comparison of controller performance for an autonomous underwater vehicle. Proceedings of the 2nd International Conference on Recent Advances in Mechatronics, Istanbul, Turkey, 1999, pp. 402–407. [4] Jalving B. The NDRE-AUV flight controls system. IEEE Journal of Oceanic Engineering, 1994, 19(4) , 497-501. [5] Smallwood, D. A. and Whitcomb L. L. Preliminary Experiments in the Adaptive Identification of Dynamically Positioned Underwater Robotic Vehicles. In Proceedings of the 2001 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2001, pp.1803-1810. [6] Press W. H., Neukolsky S. A., Vetterling W. T. and Flannery B. P. Numerical Recipes in C. Cambridge, UK, Cambridge University Press, 1992. [7] Chin C. S, Lau M. W. S., Low E. and Seet G. G.
A pipeline tracking control of an
underactuated remotely operated vehicle. The Mediterranean Journal of Measurement and Control 2006, 2(1), 22-34. [8] Eng Y. H. Identification of hydrodynamic terms for underwater robotic vehicle. Master First Year Report, NTU, Robotic Research Center, Mechanical and Aerospace Engineering, 2007. [9] Eng Y. H., Lau M. W. S., Low E., Seet G. G. L. and Chin C. S. A Novel Method to Determine the Hydrodynamic Coefficients of an Eyeball ROV. AIP Conference Proceedings, Vol. 1089, 2009, pp. 11-22.
28
[10] Hespanha J. P. Stabilization of nonholonomic integrators via logic-based switching.
In
Hespanha, J. P., editor, In Proceedings of the 13th World Congress of International Federation of Automation and Control, 1999, pp. 467-472. [11] Hespanha J. P. and Morse A. S. Stabilization of nonholonomic integrator via logic-based switching. Automatica ,1996, 35, 385–393. [12] Lin W., Pongvuthithum R., and Qian C. Control of high-order nonholonomic systems in power chained form using discontinuous feedback. IEEE Trans. Automat. Control , 2002, 47, 108– 115. [13] Kolmanovsky I. and McClamroch N. H. Hybrid feedback laws for a class of cascade nonlinear control systems. IEEE Trans. Automatic. Control, 1996, 41, 1271–1282. [14] Kolmanovsky I. and Reyhanoglu M. Discontinuous feedback stabilization of nonholonomic systems in extended power form. In Proc. 33rd IEEE Conf. Decision Control, 1994, pp. 3469–3474. [15] Hespanha, J. P. Stabilization of nonholonomic integrators via logic-based switching. Proceedings of 13th World Congress International Federation of Automatic Control, vol. E, Nonlinear Systems I, 1997, pp. 467-472. [16] Do K. D., Jiang Z. P. and Pan J. A global output feedback controller for simultaneous tracking and stabilization of unicycle-type mobile robot. IEEE Transactions on Robotic and Automation ,2004, 20(3), 589-594. [17] Fossen, T. I. Marine Control Systems: Guidance, Navigation and Control of Ships, Rigs and Underwater Vehicles. Marine Cybernetics AS, 2002. [18] Chin C. S, Lau M. W. S., Low E. and Seet G. G. L. Robust and decoupled cascaded control system of URV for stabilization and pipeline tracking. Proc. of IMech. Part I: Journal of System & Control Engineering, 2008, 222(4), 261-278. [19] Astolfi A. and Schaufelberger W. State and output feedback stabilization of multiple chained systems with discontinuous control. Proc. 35th IEEE Conf. Decision and Control, Kobe, Japan, 1996, pp.1443–1447.
29
[20] Aguiar, A. P. and Pascoal A. M. Global stabilization of an underactuated autonomous underwater vehicle via logic-based switching. In Proceeding of 41st IEEE Conference on Decision and Control, 2002, 3, pp. 3267-3272. [21] Smallwood D. A. and Whitcomb L. L. Preliminary Experiments in the Adaptive Identification of Dynamically Positioned Underwater Robotic Vehicles. In Proceedings of the 2001 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2001, pp. 1803-1810. [22] Caccia M., Bono R., Bruzzone G. and Veruggio G. Modeling and identification of open-frame variable configuration unmanned underwater vehicle. IEEE Journal of Oceanic Engineering , 2000, 25(2), 272-240. [23] Pettersen, K.Y. and Egeland, O. Exponential Stabilization of an Underactuated Surface Vessel. In Proc. 35th IEEE Conference on Decision and Control, Kobe, Japan, 1996, pp. 967-971. [24] Astolfi, A. and Schaufelberger, W. State and output feedback stabilization of multiple chained systems with discontinuous control. In Proc. 35th IEEE Conf. Decision and Control, Kobe, Japan, 1996, pp. 1443–1447. [25] Chin C. S., Lau, M. W. S.,Low E. and Seet G. G. Software for Modelling and Simulation of a Remotely Operated Vehicle. International Journal of Simulation Modelling, 2006, 5(3), 114-125. [26] Lee, C. H. WAMIT theory manual report 95-2, Dept of Ocean Engineering, MIT, 1995. [27] Cavalletti M., Ippoliti G. and Longhi S. Multiple Model Control Using Neural Networks for a Remotely Operated Vehicle. In Proceeding of 14th Mediterranean Conference on Control and Automation, 2006 pp.1-6. [28] Bummit B. and Stentz, A. GRAMMPS: A generalized mission planner for multiple mobile robots in unstructured environments. In Proceedings of the IEEE Conference on Robots and Automation, 1988. [29] Sutton R. and Roberts G. N. Martronics: a philosophy for marine systems design. Proceedings of the Institution of Mechanical Engineers, Part M: Journal of Engineering for the Maritime Environment, 2009, 223(2), pp. 163-175. [30] Hespanha J., Liberzon D., Morse A. S., Anderson D. O. B., Brinsmead T. S. and Bruyne F. D. Multiple model adaptive control. Part 2: switching. International Journal of Robust and Nonlinear Control, 11, pp. 479-496. [31] Dougherty D. and Cooper D. A practical multiple model adaptive strategy for multivariable model predictive control. Control Engineering Practice, 11, 2003, pp. 649–664. [32] Khalil, H. Nonlinear Systems. Macmillan Publishing Co., 2nd edition, New York, 1996.
30
[33] Morse, A. S. Supervisory control of families of linear set-point controllers part 1: Exact matching, IEEE Transaction on Automatic Control, 1996, 41(10), 1413-1431. [34] Branicky M. S. Multiple lyapunov functions and other analysis tools for switched and hybrid systems. IEEE Transactions on Automatic Control, 1998, 43(4):475-482.
31
List of Notations Symbols
Descriptions
νs
body-fixed velocity vector, u
u
commanded input voltage vector
CO (t )
constant piecewise switching signal for outer controllers switching
CI (t )
constant piecewise switching signal for inner controllers switching
IC
controller index
D
dwell time
ηs
earth-fixed position vector, x
τ
external forces and moments vector in body-fixed
v w
coordinate x
y
p q r
T
z
T
y z T
Js
Euler transformation matrix
C(ν )
hydrodynamic added mass for Coriolis and centripetal matrix
MA
hydrodynamic added mass for mass inertia matrix
u I,dyn
inner loop control vector for states decouple
u I,pert
inner loop control vector for perturbation attenuation
u Ip
inner loop control vector for proportional controller
i
index for controller
t0
initial time condition
uI
inner control vector for station-keeping mode
Ds
linear hydrodynamic damping matrix in body-fixed coordinate
VI ,i
Lyapunov function for inner loop
VO ,i
Lyapunov function for outer loop
fs ( xs , t )
nominal nonlinear dynamic
gs ( us , t )
nominal nonlinear input dynamic
K 01 , K 02
observer gains
uO
outer control vector for station-keeping mode
32
u O,dyn
outer loop control input for states decouple
uOp
outer loop control input for proportional controller
k px , k py , k pz , k p
outer loop proportional controller constant
k pu , k pv , k pw , k pr
outer loop proportional controller constant
i , i , i
positive constant
fs (xs , t )
perturbed nonlinear dynamic
Δd s (x s , u , t )
perturbed hydrodynamic term
fT
thruster’s dynamic
FT
thruster’s dynamic matrix
Cs ( ν s )
total Coriolis and centripetal matrix in body-fixed coordinate
Ts
thruster configuration matrix
Ms
total inertia mass matrix
C A (ν )
uncertainty on hydrodynamic added mass for Coriolis and centripetal matrix
D
uncertainty on linear hydrodynamic damping matrix
M A
uncertainty on hydrodynamic added mass for mass inertia matrix
Appendix A DoF 1 2 3 4 5 6
Motion Descriptions Motions in the xdirection(surge) Motions in the ydirection(sway) Motions in the zdirection(heave) Rotations about the x-axis(roll) Rotations about the y-axis(pitch) Rotations about the z-axis(yaw)
Positions and Orientations x
Linear and Angular Velocities u
y
v
z
w
p
q
r
Table 1: Notations used in ROV
33
Symbols
Descriptions
x s2 v s u v w r , xˆ s2 vˆ s uˆ T x s1 η s x y z , xˆ s1 ηˆ s xˆ T x s2d u d vd wd rd T x s1d x d yd zd d T ~x ~ ~ ~ ~ ˆ ve w re s2e x s2d x s2 u e e ~ ~y ~z x s1e ~ xe ~ e T e e T u O u Ox u Oy u Oz u O , u I u Ix T
Actual and estimated velocity state
vˆ wˆ rˆ
T
Actual and estimated position state
T zˆ ˆ
yˆ
Body-fixed desired velocity state Body-fixed desired position state Body-fixed velocity error state Body-fixed tracking error state u Iy
u Iz
u I
T
Outer and inner controllers
Table 2: Notations used in cascaded structure derivation
State-space equations cos sin f s1 (~ xs1e , ~ xs2e , uO , t ) 0 0 (m X u ) 1 X u 0 f s2 (~ xs2e , t ) 0 0
0 0 ye uˆ rˆ~ rˆ~ 0 0 x vˆ e x s2d xs1 uO K 01~ wˆ 1 0 0 1 rˆ
sin cos 0 0
re (m X u ) 1 (Yv m)~ (m Yv ) 1 Yv
0 0
0 ( I z N r ) (Yv X u )u~e 1
(m Z w ) 1 Z w 0
0 (m Yv ) 1 (m X u )u~e ~ (A2) x s2e 0 ( I z N r ) 1 N r
~
(m X u ) 1 0 0 1 0 ( ) 0 m Y v ~ g s2 ( uI , xs2e , t ) 0 0 (m Z w ) 1 0 0 0
(A1)
xs2 1 cos sin 0 0 0 sin cos 0 0 (A3) 0 (u τ ) K ~ xs1 I s 02 0 0 1 0 0 0 0 0 1 ( I z N r ) 1
where K 01 , K 02 are the observer gain and τ s is the force and moment vector.
34
Matrices used in state-space equations: 1 1 0 0 Ts 0 0
0 sin cos sin
Xu 0 Ds 0 0
0 sin ; cos sin
0 Yv
0 0
0 0
Zw 0
m X u 0 Ms 0 0 0 0 ; 0 Nr
0 m Yv
0 0 0 ; gs2 0
gs2 0 0
1 m Z w
0 0
0
m Z w
0
0
0 (Yv m) r 0 0 Cs ( ν s ) 0 0 0 Yv u X u u T
1 gs1 m X u
1 m Yv
(A4) 0 I r N r
0 0
0 0 0 ( m X u )u 0 0 0 0
(A5)
T
0 0 ;
T
T
0 ; gs4 0 0 0
1 ; I r N r
(A6)
Perturbation matrices: 0 0 0 0 0 21.7240 0 51.7013 0 0 0 0 0 0 94.3000 0 0 0 M A 0 0 4.2176 0 0 0 0 0 0 0 7.1148 0 0 0 0 0 4.7673 0
0 0 0 CA ( ν ) 0 a u 3 u a2
a3
0
0
0
0 0
0 0
a3 u a2
0 u a1
0
b3
a3 0 u a1
u
a2
u
u u
u
a1 0
b3 u b2
0 u b1
where l
u
a1 21.0981u , a1 21.7240u l
u
l
u
a 2 51.0002v, a 2 51.7013v a3 91.8370 w, a3 94.3000 w l
u
l
u
b1 3.5760 p, b1 4.2176 p b2 2.7687 q, b2 7.1148q l
u
b3 2.4393r , b3 4.7673r
35
u
u
u a2 u a1 0 u b2 u b1 0
(A7)
(A8)
0 0 0 0 0 4.07 0 3.20 0 0 0 0 0 0 2.60 0 0 0 D 0 0 1.82 0 0 0 0 0 0 0 1.59 0 0 0 0 0 1.11 0
(A9)
Inner loop controllers u Ix , u Iy , u Iz and u I : u I u I,p u I,dyn u I,pert m X u X u K pv m X u 0 0 k pu 0 0 0 k 0 0 ~ pv x 0 0 k pw 0 s2e 0 0 0 k pr 0 0 m X u X u X u 0 - 0 0
0
0
m Yv Yv Yv
0
0
0
m Yv Yv m Yv
0
0
m Z w Z w Z w
0
0
0
m Z w Z w m Z w
0
0
0 0 I z N r N r N r
0 0 I z N r N r I z N r 0
re (Yv m)v~e ~ (m X )u~ ~ u e re 0 ~ v~ ( ) Y X u u e e v
0
re (Yv m)v~e ~ (m X )u~ ~ u e re 0 ~ v~ ( ) Y X u v u e e
(A10)
where the component uI, p ensure a faster response. The component uI,dyn is to cancel the nonlinear coupled dynamic behavior, for which there is a prior knowledge and to ensure stabilization with least amount of coupling. The component uI,pert is to attenuate the perturbation due to above-mentioned hydrodynamic uncertainties.
Outer loop controllers u Ox , u Oy , u Oz and u O : uO uO, dyn uO,p K
px ~ 0 0 ud cos vd sin uˆ rˆye k px 0 u sin v cos rˆ~ 0 ~ xe vˆ 0 k py 0 d d x 0 k pz 0 s1e 0 wd wˆ 0 0 k p rd rˆ 0
(A11)
where the component uO, p is to ensure a faster response and uO, dyn is to cancel some nonlinear couple dynamic behavior for which there is a prior knowledge and also to ensure tracking to the predefined trajectory with least amount of coupling.
36
Appendix B- Observer Design Coordinate Transformation A coordinate transformation of s to earth-fixed frame is used to cancel the quadratic cross terms appearing in the Coriolis and centripetal matrix. This can be written as:
ηQ Qo ( ηs ) ν s
(B.1)
where Qo ( ηs ) 4 4 , to be determined, is used to transform the body-fixed velocities ν s
s into (B.1) to to ηQ 4 . The coordinate ( ηs , ηQ ) can be obtained by substituting ν s J s ( ηs ) 1 η give:
ηQ Q o ( ηs )J s ( ηs ) 1 η s η s J s ( ηs )Q o ( ηs ) 1 ηQ
(B.2)
Differentiating (B.2) and substituting M ν s C( ν s ) ν s Dν s τ s with ν s Q o ( ηs ) 1 ηQ from (B.1), yields:
Q ( η )M 1C ( ν )]Q 1η Q ( η )M 1D Q 1η Q M 1τ η Q [Q o o s s s s o Q o s s s o Q o s s
(B.3)
The goal is to find Qo ( ηs ) such that the algebraic sum of the two terms in the first square bracket in (B.3) that contains the coupling term Cs ( ν s ) is zero. By expanding:
( η ) Q ( η )M 1C ( ν ) 0 Q o s o s s s s
(B.4)
and substituting the solution as Qo ( ηs ) J s ( ηs ) back into (B.4), the ten partial differential equations(PDEs) in (B.4) can be satisfied as seen in [18]. Hence, Qo ( ηs ) J s ( ηs ) is indeed the solution for the PDEs. With that, substituting Qo ( ηs ) J s ( ηs ) into (B.2) and (B.3) yields:
η s ηQ η Q D η ( ηs ) ηQ J s ( ηs )M s1τ s
37
(B.5)
(B.6)
where D η ( ηs ) J s ( ηs )M s1Ds J s ( ηs ) 1 . The problem has now been transformed into the earth-fixed
Q can be frame without the coupling term due to Coriolis and Centripetal matrix Cs ( ν s ) . The term η interpreted as the velocity along the earth-fixed frame.
Observer Equations The full states observer equation for the position and velocity states in the station-keeping mode are to be determined. The observer gains K 01 and K 02 satisfying the following constraint are obtained as follows. Equations (B.5)-(B.6) with the full-states observer become:
ηˆ s ηˆ Q K 01 ( ηs ηˆ s )
(B.7)
ηˆ Q D η ( ηs ) ηˆ Q K 02 ( ηs ηˆ s ) J s ( ηs )M s1τ s
(B.8)
ˆ s and ηˆ Q are the estimates of ηs and ηQ respectively. The observer error dynamic in (B.7) where η and (B.8) becomes:
~ η s ~ ηQ K 01~ ηs
(B.9)
~ η Q D η ( ηs )~ ηQ K 02 ~ ηs
(B.10)
where ~ ηs ηs ηˆ s , ~ ηQ ηQ ηˆ Q , K 01 and K 02 are the observer gains. To obtain these observer gains, the Lyapunov first method is used. A Lyapunov function Vobs ~ η s P01 ~ ηs ~ ηQ P02 ~ ηQ 0 T
T
is defined for all value of ~ ηs 0 , ~ ηQ 0 and determining its derivative Vobs for all ~ ηs and ~ ηQ . Then the K 01 and K 02 are obtained by ensuring that the Vobs 0 and Vobs 0 as shown. T T T T η P01~ η ~ η P01~ η ~ η Q P02 ~ ηQ ~ ηQ P02 ~ η Q Vobs ~ T [~ η ~ ηT K ]P ~ η~ ηT P [ ~ η K ~ η] Q
01
01
01
Q
01
T T [ ~ ηQ D η (η) ~ ηT K 02 ]P02 ~ ηQ ~ ηQ P02 [ D η (η)~ ηQ K 02 ~ η]
or simply the conditions can be written as:
38
(B.11)
T
T
(B.12)
P02 P02 0
(B.13)
K 01 P01 P01K 01 0,
P01 P01 0 T
P01 P02 K 02 0, T
D η ( η)P02 P02 D η ( η) 0
(B.14)
where D η ( η) is positive definite.
Exponential Convergence of Observer States
ˆ s and ηˆ Q can be shown to be exponential convergence by means of the The estimated state η Lyapunov first method. For compactness in the equations, ~ ηO (t ) [~ ηs (t )
P01 0
the Vobs in previous section becomes Vobs ~ ηO T
~ ηQ (t )]T is defined. Then,
0 ~ T ηO ~ ηO Po ~ ηO . Differentiating Vobs P02
along the solutions of (B.9)-(B.10) gives: T T Vobs ~ η O P0 ~ ηO ~ η O P0 ~ η O
[ ~ ηs
H0 ~ 2P K 2P 01 01 02 K 02 P01 P01 D η η s ~ ηQ ] ~ P02 2P 02 D η 2P 01 K 02 P02 ηQ
(B.15)
where ~ ηs ηs ηˆ s , ~ ηQ ηQ ηˆ Q and hence implying that ~ ηO ηO ηˆ O . After some
ηO (t ) becomes: manipulation, the ~ 2 2 ~ ηO (t ) 2 0 ~ ηO (to ) 2 e o (t t o )
where o 0 , 0 0 are positive constant and
.
2
(B.16)
is the Euclidean norm. Expanding (B.16), the
following can be obtained: 2 2 ~ ηs (t ) 2 o ~ ηs (to ) 2 e o (t t o )
(B.17)
Since the velocity estimate error, ~ νs ν s νˆ s can be transformed to the earth-fixed frame by means of ~ νs J s ( ηs ) 1 ~ ηs , the velocity estimate error is exponentially convergence as well.
39
Observer Error Equations To include the observer into the cascaded system, the observer equations in (B.5)-(B.6) need to be expressed as functions of the position estimate error ~ ηs and velocity estimate ~νs . By equating (B.10) to ~ η Q J s ( ηs )~νs J s ( ηs )~ν s and substituting (B.4) with Qo ( ηs ) J s ( ηs ) yields:
~ν M 1C (~ν )~ν M 1D ~ν K J ( η )-1 ~ ηs s s s s s s s s 02 s s
(B.18)
where ~ ηs ηs ηˆ s and ~νs ν s νˆ s . With ~ ηQ J s ( ηs )~νs ~νs J s ( ηs ) 1 ~ ηQ , (B.7) can be written as:
~ η s J s ( ηs )~νs K 01~ ηs
40
(B.19)