Printer Friendly

Path following of autonomous vehicle in 2D space using multivariable sliding mode control.

1. Introduction

The past few decades have witnessed an increased research effort in the area of motion control of autonomous vehicles. A typical motion control problem is trajectory-tracking, which is concerned with the design of control laws that force a vehicle to reach and follow a time parameterized reference (i.e., a geometric path with an associated timing law). The degree of difficulty involved in solving this problem is highly dependent on the configuration of the vehicle. For fully actuated systems, the trajectory-tracking problem is now reasonably well understood.

For underactuated vehicles, that is, systems with fewer actuators than degrees-of-freedom, trajectory-tracking is still an active research topic. The study of these systems is motivated by the fact that it is usually costly and often not practical to fully actuate autonomous vehicles due to weight, reliability, complexity, and efficiency considerations. Typical examples of underactuated systems include wheeled robots, hovercraft, spacecraft, aircraft, helicopters, missiles, surface vessels, and underwater vehicles. The tracking problem for underactuated vehicles is especially challenging because most of these systems are not fully feedback linearizable and exhibit nonholonomic constraints. The reader is refereed to [1] for a survey of these concepts and to [2] for a framework to study the controllability and the design of motion algorithms for underactuated Lagrangian systems on Lie groups.

The classical approach for trajectory-tracking of underactuated vehicles utilizes local linearization and decoupling of the multivariable model to steer the same number of degrees of freedom as the number of available control inputs, which can be done using standard linear (or nonlinear) control methods. Alternative approaches include the linearization of the vehicle error dynamics around trajectories that lead to a time-invariant linear system (also known as trimming trajectories) combined with gain scheduling and/or linear parameter varying (LPV) design methodologies [3-5]. The basic limitation of these approaches is that stability is only guaranteed in a neighborhood of the selected operating points. Moreover, performance can suffer significantly when the vehicle executes maneuvers that emphasize its nonlinearity and cross couplings. A different approach is to use output feedback linearization methods [6-8]. The major challenge in this approach is that a straightforward application of this methodology, which in general involves dynamic inversion, is not always possible because certain involutivity conditions must hold [9]. In addition, even when dynamic inversion is possible, the resulting controller may not render the zero-dynamics stable.

Nonlinear Lyapunov-based designs can overcome some of the limitations mentioned above. Several examples of nonlinear trajectory-tracking controllers for marine underactuated vehicles have been reported in the literature [10-17]. Typically, tracking problems for autonomous vehicles are solved by designing control laws that make the vehicles track prespecified feasible "state-space" trajectories, that is, trajectories that specify the time evolution of the position, orientation, and the linear and angular velocities, all consistent with the vehicles' dynamics [6, 11, 13-18], even though in practical applications one often only needs to track a desired position. This approach suffers from the drawback that usually the vehicles' dynamics exhibit complex nonlinear terms and significant uncertainty, which makes the task of computing a feasible trajectory difficult. Reference [19] presented a path following and trajectory tracking method combined with a nonlinear Lyapunov-based tracking control law to solve the problem of global boundedness and convergence of the position tracking error to a neighborhood of the origin that can be made arbitrarily small. Line-of-sight is a traditional method in the path following problem. Reference [20] proposed a 3-degree-of-freedom nonlinear controller for path following of marine craft based on a line-of-sight projection algorithm for minimization of the cross track error to the path. The desired speed along the path can be specified independently. The control laws in surge and yaw are derived using backstepping. Reference [21] considered a maneuvering problem solved by line-of-sight algorithm, which is used to steer a simplified vessel to and along a desired parameterized path.

In this paper, a path following method in 2D space using sliding mode approach with line-of-sight (LOS) projection algorithm is proposed here. Generally, this type of marine vehicle has to cope with a path in 3D space because waves always exist. The vehicle we use, however, is the underwater vehicle in the deep sea where there is few waves. Thus we limit the problem setting to 2D space. The desired geometric path consists of straight line segments connected by way points. The second control objective, speed assignment, is defined in terms of a prescribed speed along the body fixed v-axis of the ship. This speed will be identical to the path speed once the ship has converged to the path. Hence, the desired speed profile can be assigned dynamically.

2. Path following Controller Using Sliding Mode

The three-dimensional equations of motion for hydrodynamically shaped underwater vehicles have been described in general terms and are most conveniently developed using a body fixed coordinate frame and a global reference frame. The body fixed frame has components of motion given by the six velocity components relative to a constant velocity coordinate frame moving with the ocean current, and the velocity vector is represented as

v = [[u, v, w, p, q, r].sup.T], (1)

while the six components of position in the global reference frame are

[eta] = [[n,e,d,[phi],[theta],[phi]].sup.T], (2)


[??] = J([eta]) v. (3)

The angles [phi], [theta], and [phi] (spin, elevation, and azimuth) are related through Euler transformations to the body yaw, pitch, and roll motions. Control inputs from control surfaces, propeller speeds, thruster forces, and buoyancy adjustment in general may be considered as the vector, [tau](t). The vehicle motion may be described in terms of the nonlinear system equations of underwater robot:

M[??] + C (v) v + D (v) v + g([eta]) = [tau], [tau] = Bu, (4)

where M is the inertia matrix including the added mass, C(v)v is the vector of Coriolis and centripetal terms including the effects of the added mass, D(v)v is the vector of the hydrodynamic damping terms, g([eta]) is the vector of gravitational and buoyant generalized forces, [tau] is the vector of forces and moments acting on the vehicle, and B is the force distribution matrix. The mathematical model and specifications of the vehicle are given with standard unit as below:


Under the assumptions that (i) the body-fixed coordinate axis coincides with the center of gravity (CG), (ii) the mass distribution is homogeneous, (iii) the hydrodynamic damping terms of order higher than one are negligible, (iv) changes in the inertia are negligible, and (v) the heave, pitch, and roll modes can be neglected, the horizontal dynamics of the underactuated underwater vehicle can be illustrated in Figure 1 where [v.sub.1], [v.sub.2], and [v.sub.3] denote the surge, sway, and yaw velocities (see Figure 1) of the vehicle, F denotes a control force that is applied to produce a forward thrust, and t denotes a torque that is applied about the CG. It is noticed that there are only 2 actuators but 3 degrees-of-freedom. Thus it is an underactuated underwater vehicle.

The sliding mode controller is used for steering control and PI feedback controller is used for speed control. The linearized steering system dynamics are given by the third-order system:


where the subscript i means integral in this paper. According to hydrodynamic parameters of the robot, the values to place the sliding poles of the steering system arbitrarily at [-0.1, -0.2,0] become

[sigma] = 54.6 ([[psi].sub.i] - [[psi]]) + 819.3 ([[psi] - [[psi].sub.d] (t)) + 2731 (r - [r.sub.d](t)) (7)

and let [[psi].sub.d] be the objective heading, [[??].sub.ei] = [[psi].sub.e] = [psi] - [[psi].sub.d], and [[??].sub.e] = r; the steering control law results in

[[tau].sub.N] = -54.6 ([psi] - [[psi].sub.d]) + 989 (r - [r.sub.d]) + 4 taTh ([sigma]/0.2). (8)

We use a continuous function to define "practical" sliding surface dynamics using a "tanh" function. The powerful result of (8) means that if the coefficient of "tanh" function is large enough, then in spite of modeling uncertainty, nonlinear terms, and disturbances, the system response will be governed by the response of the [sigma] and by the choice of the sliding surface parameters: it is less influenced by the parameters of the vehicle dynamics as is more usual with linear feedback controllers. The denominator in the brackets of "tanh" function is sliding surface boundary layer parameters used to retain continuity of control as motion trajectories cross the sliding surface and prevent chattering.

This makes it possible to apply the sliding mode controller to actual systems.

The linearized speed system dynamics are given by the second-order system:


According to hydrodynamic parameters of the robot and letting [u.sub.d] be the objective speed, [[??].sub.e] = [u.sub.e], [u.sub.e] = u - [u.sub.d], the speed control law to place the poles of the speed system arbitrarily at [-1 + i, -1 - i] becomes

[X.sub.T] = -30.4557[U.sub.e] - 4212.5[u.sub.e]. (10)

To follow a set of straight line tracks that form the basis of many guidance requirements, a sliding mode controller is presented that has been experimentally validated under a wide variety of conditions. We use a combination of a line-of-sight (LOS) guidance [22] and a cross track error (CTE) control. With large heading errors, the CTE control cannot be guaranteed stable, while an LOS heading control will reduce heading errors to zero. Switching between these two controllers allows for reduction of both cross track and heading errors under all conditions. The variable of interest to minimize is the cross track error and is defined as the perpendicular distance between the center of the vehicle and the adjacent track line. The total track length between two way points i and i - 1 is given by [22]

[L.sub.i] = [square root of ([([X.sub.wpt(i)] - [X.sub.wpt(i-1)]).sup.2] + [([Y.sub.wpt(i)] - [Y.sub.wpt(i-1)]).sup.2])]. (11)

The track angle [[phi].sub.trk(i)] is defined by

[[phi].sub.trk(i)] = tan [2.sup.-1] ([Y.sub.wpt(i)] - [Y.sub.wpt(i-1]), [X.sub.wpt(i)] - [X.sub.wpt(i-1)]) (12)

and is a constant for a given set of adjacent way points. The cross track heading error [??][(t).sub.CET(i)] for the ith segment is defined as

[??][(t).sub.CET(i)] = [phi](t) - [[phi].sub.trk(i)] + [beta](t), (13)

where [beta](t) is the angle of sideslip and ([??][(t).sub.CET(i)] must be normalized to lie between -180 and 180 in degree. The difference between the current vehicle position and the next way point is

[??][(t).sub.wpt(i)] = [X.sub.wpt(i)] - X(t), (14) [??][(t).sub.wpt(i)] = [Y.sub.wpt(i)] - Y(t).

With the above definitions, the distance to the ith way point projected to the track line S[(t).sub.i] can be calculated using

S[(t).sub.i] = [[??][(t).sub.wpt(i)] [??][(t).sub.wpt(i)]] x [([X.sub.wpt(i)] - [X.sub.wpt(i-1)]) ([Y.sub.wpt(i)] - [Y.sub.wpt(i-1)])]/[L.sub.i]. (15)

Therefore, S[(t).sub.i] ranges from 0 to 100% of [L.sub.i].

The CTE may now be defined as

[epsilon](t) = S[(t).sub.i] sin ([[delta].sub.p] (t)), (16)

where [[delta].sub.p](t) is the angle between the LOS to the next way point and the current track line given by

[[delta].sub.p] (t) = tan [2.sup.-1] ([Y.sub.wpt(i)] - [Y.sub.wpt(i-1)], [X.sub.wpt(i)] - [X.sub.wpt(i-1)]) - tan [2.sup.-1]([??][(t).sub.wpt(i)] - [??][(t).sub.wpt(i)]) (17)

and must be normalized to lie between -180 and 180 in degree, and tan [2.sup.-1] is the inverse tangent function tan 2.

With the CTE defined, the sliding surface can be cast in terms of derivatives of the errors such that


Recalling that u is the nominal longitudinal speed of the vehicle. The sliding surface for the CTE controller becomes a second-order polynomial of the form

[sigma](t) = [??] (t) + [[lambda].sub.1] [??](t) + [[lambda].sub.2][epsilon](t). (19)

The condition for stability of the sliding mode controller is


The error integration element 0.04 [integral] [epsilon](t) is added into the "tanh" function to play a role of integration. This addition guarantees the following accuracy. To recover the input for control, the heading dynamics (6) may be substituted into (20) to obtain




and [[lambda].sub.1] = 6.0, [[lambda].sub.2] = 0.1, [eta] = 8, and [phi] = 0.5.

To avoid division by zero, in the rare case where cos([??](t)) = 0, the rudder command is set to zero since this condition is transient in nature. In addition, a bound of 30 degrees is used as a switch to LOS control which was described in [22].

3. Simulation Experimental Results

The simulation experiments were conducted to show the performances of presented approach of path following control for the underwater vehicle in 2D space. The planned trajectory was a rectangle area with 300 m x 5000 m. The vehicle's initial position was (0, -250). The speed of the vehicle was set at 2 knots. Two different conditions were applied to the simulation experiments. One is no sea current and the other is northern current with the speed of 0.5 knot. The trajectory following control with no current is given in Figure 2. The vehicle closely approaches the planned trajectory from the start point and then gradually coincides with the planned trajectory after a shrink vibration to slight extent. The vehicle trajectory also produces a small vibration at the corner as a result of the vehicle's turning radius itself. The following error is approximately 0.8 m. The trajectory following control performance is illustrated in Figure 3 under the condition of 0.5 knot current. The vehicle approaches the planned trajectory fast from the start point and gradually coincides with the planned trajectory after a shrink vibration except a little longer stabilizing process. The vehicle trajectory also produces a slightly greater vibration at the corner in Figure 3 than in Figure 2. This is because when the vehicle is moving forward, it is suffering from the 0.5 knot current with side direction. The following error in Figure 3 is approximately 1.1 m.

4. Conclusions

We proposed a solution to the path following problem for underactuated autonomous vehicles in the presence of possibly large modeling parametric uncertainty. For a general class of vehicles moving in 2D space, we demonstrated a following control law of multiple variable sliding mode that yields global boundedness and convergence of the position following error to a small neighborhood and robustness to parametric modeling uncertainty. The error integration element is added into "tanh" function in the sliding mode control. We illustrated our results in the context of the vehicle control applications: an underwater vehicle moves along with the desired paths in 2D space. Simulations show that the control objectives were accomplished.

5. Discussion

In Section 3, simulation experiments are shown, in which a step disturbance, that is, northern current with the speed of 0.5 knot, is constantly given. An I-action loop, compared with the complicated sliding mode controller proposed in this paper, may be more effective for such a disturbance. But the direct I-action loop may lead to instability in terms of modeling uncertainty. In future, we will design I-action loop as a suitable part in the sliding controller to not only reduce the following error but also keep the robustness. Besides, a problem that warrants further research is the control of underactuated vehicles with noise and in the presence of disturbances. For instance, the varied current is a considerable influence. This is our next research work.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.


This work was supported by both Grants from the Natural Science Foundation of China (no. 51309215) and Natural High Technology Research and Development Program of China (863 program) (no. 2011AA09A102).


[1] M. Reyhanoglu, A. van der Schaft, N. H. McClamroch, and I. Kolmanovsky, "Dynamics and control of a class of underactuated mechanical systems," IEEE Transactions on Automatic Control, vol. 44, no. 9, pp. 1663-1671, 1999.

[2] F. Bullo, N. E. Leonard, and A. D. Lewis, "Controllability and motion algorithms for underactuated lagrangian systems on lie groups," IEEE Transactions on Automatic Control, vol. 45, no. 8, pp. 1437-1454, 2000.

[3] J. S. Shamma and J. R. Cloutier, "Gain-scheduled missile autopilot design using linear parameter varying transformations," Journal of Guidance, Control, and Dynamics, vol. 16, no. 2, pp. 256-263, 1993.

[4] I. Kaminer, A. Pascoal, E. Hallberg, and C. Silvestre, "Trajectory tracking for autonomous vehicles: an integrated approach to guidance and control," Journal of Guidance, Control, and Dynamics, vol. 21, no. 1, pp. 29-38, 1998.

[5] W. J. Rugh and J. S. Shamma, "Research on gain scheduling," Automatica, vol. 36, no. 10, pp. 1401-1425, 2000.

[6] T. J. Koo and S. Sastry, "Output tracking control design of a helicopter model based on approximate linearization," in Proceedings of the 37th IEEE Conference on Decision and Control (CDC '98), pp. 3635-3640, December 1998.

[7] S. A. Al-Hiddabi and N. H. McClamroch, "Tracking and maneuver regulation control for nonlinear nonminimum phase systems: application to flight control," IEEE Transactions on Control Systems Technology, vol. 10, no. 6, pp. 780-792, 2002.

[8] J. R. T. Lawton, R. W. Beard, and B. J. Young, "A decentralized approach to formation maneuvers," IEEE Transactions on Robotics and Automation, vol. 19, no. 6, pp. 933-941, 2003.

[9] A. Isidori, Nonlinear Control Systems, Springer, London, UK, 3rd edition, 1989.

[10] J. Godhavn, "Nonlinear tracking of underactuated surface vessels," in Proceedings of the 35th IEEE Conference on Decision and Control, pp. 975-980, Kobe, Japan, December 1996.

[11] K. Y. Pettersen and H. Nijmeijer, "Global practical stabilization and tracking for an underactuated shipA combined averaging and backstepping approach," in Proceedings of the IFAC Conference on System Structure and Control, pp. 59-64, Nantes, France, 1998.

[12] F. Alonge, F. D'Ippolito, and F. Raimondi, "Trajectory tracking of underactuated underwater vehicles," in Proceedings of the 40th Conference on Decision Control, Orlando, Fla, USA, December 2001.

[13] Z.-P. Jiang, "Global tracking control of underactuated ships by Lyapunov's direct method," Automatica, vol. 38, no. 2, pp. 301-309, 2002.

[14] A. Behal, D. M. Dawson, W. E. Dixon, and Y. Fang, "Tracking and regulation control of an underactuated surface vessel with nonintegrable dynamics," IEEE Transactions on Automatic Control, vol. 47, no. 3, pp. 495-500, 2002.

[15] K. D. Do, Z. P. Jiang, and J. Pan, "Underactuated ship global tracking under relaxed conditions," IEEE Transactions on Automatic Control, vol. 47, no. 9, pp. 1529-1536, 2002.

[16] K. D. Do, Z. P. Jiang, and J. Pan, "Universal controllers for stabilization and tracking of underactuated ships," Systems & Control Letters, vol. 47, no. 4, pp. 299-317, 2002.

[17] E. Lefeber, K. Y. Pettersen, and H. Nijmeijer, "Tracking control of an underactuated ship," IEEE Transactions on Control Systems Technology, vol. 11, no. 1, pp. 52-61, 2003.

[18] E. Frazzoli, M. A. Dahleh, and E. Feron, "Trajectory tracking control design for autonomous helicopters using a backstepping algorithm," in Proceedings of the Americal Control Conference, pp. 4102-4107, Chicago, Ill, USA, June 2000.

[19] A. P. Aguiar and J. P. Hespanha, "Trajectory-tracking and path-following of underactuated autonomous vehicles with parametric modeling uncertainty," IEEE Transactions on Automatic Control, vol. 52, no. 8, pp. 1362-1379, 2007

[20] T Fossen, M. Breivik, and R. Skjetne, "Line-of-sight path following of underactuated marine craft," in Proceedings of the 6th IFAC Conference on Manoeuvring and Control of Marine Craft (MCMC '03), 2003.

[21] R. Skjetne, U. Jorgensen, and A. R. Teel, "Line-of-sight path-following along regularly parametrized curves solved as a generic maneuvering problem," in Proceedings of the 50th IEEE Conference on Decision and Control and European Control Conference (CDC-ECC '11), pp. 2467-2474, December 2011.

[22] D. B. Marco and A. J. Healey, "Command, control, and navigation experimental results with the NPS ARIES AUV," IEEE Journal of Oceanic Engineering, vol. 26, no. 4, pp. 466-476, 2001.

Daxiong Ji, Jian Liu, Hongyu Zhao, and Yiqun Wang

State Key Laboratory of Robotics, Shenyang Institute of Automation, CAS, Shenyang 110016, China

Correspondence should be addressed to Daxiong Ji;

Received 30 May 2014; Revised 12 August 2014; Accepted 13 August 2014; Published 20 August 2014

Academic Editor: Keigo Watanabe
COPYRIGHT 2014 Hindawi Limited
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2014 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Title Annotation:Research Article
Author:Ji, Daxiong; Liu, Jian; Zhao, Hongyu; Wang, Yiqun
Publication:Journal of Robotics
Article Type:Report
Date:Jan 1, 2014
Previous Article:Humanoid robot head design based on uncanny valley and FACS.
Next Article:Exponential tracking control using backstepping approach for voltage-based control of a flexible joint electrically driven robot.

Terms of use | Privacy policy | Copyright © 2021 Farlex, Inc. | Feedback | For webmasters