A waypoint-tracking controller for a biomimetic autonomous underwater vehicle

A waypoint-tracking controller for a biomimetic autonomous underwater vehicle

ARTICLE IN PRESS Ocean Engineering 33 (2006) 2369–2380 www.elsevier.com/locate/oceaneng A waypoint-tracking controller for a biomimetic autonomous u...

278KB Sizes 12 Downloads 176 Views


Ocean Engineering 33 (2006) 2369–2380 www.elsevier.com/locate/oceaneng

A waypoint-tracking controller for a biomimetic autonomous underwater vehicle Jenhwa Guo a

Dept. of Engineering Science & Ocean Engineering, National Taiwan University, 73 Chou-Shan Road, Taipei 106, Taiwan, ROC Received 26 May 2005; accepted 2 November 2005 Available online 9 March 2006

Abstract This work develops a control system for the waypoint-tracking of a biomimetic autonomous underwater vehicle (BAUV). The BAUV swims forward by oscillating its body and caudal fin. It turns by bending its body and caudal fin toward the turning direction. The control algorithm uses the oscillating frequency to control the forward velocity, and applies a bodyspline offset parameter to control the heading velocity. The motion of the BAUV is undulatory, so moving averages of swimming velocity and heading errors are used as feedback signals. The stability of the control system is discussed using a Lyapunov function. Finally, the effectiveness of the control algorithm is experimentally confirmed. r 2006 Elsevier Ltd. All rights reserved. Keywords: Underwater vehicles; Biomimetic; AUVs; Underwater technology; Control

1. Introduction Interest in developing more efficient propulsion mechanisms for Autonomous Underwater Vehicles (AUVs) has recently increased. AUVs can be used in oceanography, military missions and commerce, and they perform such tasks as inspecting and repairing underwater structures, monitoring and detecting pollution Fax +886 2 23929885.

E-mail address: [email protected] 0029-8018/$ - see front matter r 2006 Elsevier Ltd. All rights reserved. doi:10.1016/j.oceaneng.2005.11.012


J. Guo / Ocean Engineering 33 (2006) 2369–2380

or leaking chemicals and mapping underwater terrain. Current AUVs are small robotic submarines powered by rotary propellers and driven by electric motors. The low efficiency of propellers with small diameters, and the large volume of the hulls raise problems associated with positioning, turning and hovering. Fish have a remarkable ability to remain very stationary and turn tightly and quickly. The shapes of fish are appropriate for swimming in water. Therefore, the shape and motion modes of fish have been imitated herein to develop a prototype AUV. An initial design of a biomimetic autonomous underwater vehicle (BAUV) is presented, that enables agility during turning and accurate waypoint-tracking. BAUVs can imitate the motion of a fish. A BAUV’s hull can typically be divided into many segments. As the angles at the joints between the sections of the BAUV change, the segmented hull interacts with the surrounding water, generating a thrust force. The joint angles change to generate (1) movement of the body and/or caudal fin (BCF) or (2) movement of the median and/or paired fin (MPF) (Sfakiotakis et al., 1999; Colgate and Lynch, 2004). The BCF control method is usually suitable for high speed movement, while the MPF control method is designed for maneuvering control at slow-speeds and hovering motions. Locomotion by BCF is of four types— anguilliform, subcarangiform, carangiform and thunniform. Anguilliform body dynamics can be simplified using a rod and pivot model, and the equation of motion can be linearized by assuming low swimming speeds (Bowtell and Williams, 1991). A lamprey uses a neural network to generate a rhythmic swimming motion; motorneuron activity is then transformed via the muscles into mechanical forces (Ekeberg, 1993). The most common BCF locomotion is the Carangiform as less energy is lost in lateral water shedding and vortex formation than with other BCF motions. Carangiform swimmers are propelled by undulating their bodies. The bodily undulations is confined to the last third of the body length. Kelly and Murray (2000) used a reduced Lagrangian formulation in which a fish is assumed as a rigid body, with its tail action represented by a point vortex of independently controlled position and strength. The MPF locomotion of most interest is the labriform mode of pectoral fin motion. Kato (2000) investigated the guidance and control of a fish robot. He described a hydrodynamic model of the motion of the pectoral fin, and tested the maneuverability of a fish robot equipped with a device to move the pectoral fin. The fish robot, with a pair of pectoral fins, swam on a pre-arranged course and hovered near a specific point in the water current under fuzzy control. Studies of BAUVs have tended to concentrate on the hydrodynamics or the modeling of fish. They have either analyzed the interaction between the body of robots and the water or established a mathematical model of the locomotion of fish. From a designer’s perspective, effective control algorithms must govern joint angles. Our earlier work established an optimal body-spline to enable the BAUV to swim forward (Guo et al., 2003a). Guo and Joeng (2004) presented a method for coordinating body segments and paired fins to control and guide the motion of the BAUV. Guo et al. (2004) presented measurement policies for a BAUV to perform environmental features localization. This work combines turning motion with the forward-swimming motion to design a control system to track waypoints of a BAUV. The effort of BAUV development

ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


herein focused on control of a Carangiform swimmer. In the near future, we will incorporate the movements of the median and/or paired fins in the BAUV system. Section 2 introduces the body-wave equation for the swimming forward and turning of a BAUV. Section 2 also provides experimental data of a BAUV’s turning characteristics. Section 3 presents the structure of the feedback control system. Section 4 presents experimental results concerning the waypoint tracking system. Finally, Section 5 draws conclusions.

2. Forward and turning motion Fig. 1 illustrates the testbed BAUV. Two coordinate systems are defined. They are the space-fixed coordinate system O–XY, the body-fixed coordinate system o–xy, as depicted in Fig. 2. Each set of coordinates can be transferred to another using the positional and angular relationships between two coordinate frames. Observations of fish (Dewar, 1993; Viedler and Hess, 1984) have indicated that their bodily motion can be described by traveling waves that increase in amplitude from the nose to the tail. In Fig. 3, y(x,t) is the body-spline equation. As suggested by Lighthill (1960), a body-spline equation to represent the bodily motion of the BAUV is defined as yðx; tÞ ¼ ðc1 x þ c2 x2 Þðsinðkx þ otÞ þ offsetÞ,


where y(x, t) is the transverse displacement of body, x the displacement along main axis, k ¼ 2p/l the body wave number, l the body wave length, c1 the coefficient of linear wave amplitude envelope, c2 the coefficient of quadratic wave amplitude envelope, o ¼ 2pf ¼ 2p/T the frequency of the body wave and T the period of the body wave. The parameter offset determines the offset of the centroid of the fish body as the BUAV swims. If the fish is in its turning mode, the parameter offset has a non-zero value. The maximal swing of the joint angles y1, y2 is at |offset| ¼ 2. Though real fish turn skillfully using not only a tail fin but also pectoral fins or ventral fins, this study of the BAUV concentrates on the tail fin. Fish swim by

Fig. 1. Photograph of the testbed vehicle

ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


Waypoint (x , y ) d d Y



e O






(xb , yb )

Fig. 2. Definitions of coordinate systems and parameters for a waypoint tracking problem


y (x,t)

y q1






Fig. 3. Body-spline of a swimming BAUV

Straight Turning Turning offset


Time Swing the tail to the left Fig. 4. Turning mode of the BAUV

oscillation of their tail fins. They swing their fins and bodies to generate a propulsion force and to control the direction in which they head. They also swing and tip to one side during turning. This mode is considered to be typical and the most important (Hirata et al., 2002). Fig. 4 defines the turning mode of the BAUV. Since the side fins are not involved, the swimming speed must be maintained by oscillating the tail fin, or else the BAUV will stop during the turning.

ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


Two sets of parameters are used to examine the characteristics of the BAUV’s turning mode. Set 1 is c1 ¼ 0.075, c2 ¼ 0.017, l ¼ 3.522. Set 2 is c1 ¼ 0.094, c2 ¼ 0.031 and l ¼ 6.51. The data obtained with set 1 refer to the optimal bodyspline and were obtained from free-running experiments on the testbed BAUV (Guo et al., 2003a). The variables are period T, offset and forward velocity. The BAUV swims forward at its maximum amplitude of oscillation. Fig. 5(a) depicts the setup of the model for water tank experiments and Fig. 5(b)–(d) plot typical experimentally obtained data. The BAUV was hung on a three-degree-of-freedom force gauge, which was fixed on a carriage cart above a water tank. The carriage cart ensures constant forward velocity of the model. The force gauge measured the force in the x and y directions as well as the moment in the z direction. Fig. 6(a) shows that set 1 describes a better forward-swimming mode in most oscillation periods. Fig. 6(b) indicates that set 2 yields a greater yawing moment than set 1 given the same offset because the oscillating envelope obtained with set 2 is larger than that obtained with set 1. Also in Fig. 6(b), the moment in the z-direction increased with the offset parameter. The BAUV turns faster as offset is increased.

250 200

force (gw)

150 100 50 0 -50 -100 -150 0


(b) 1000




600 moment (gw-m)

force (gw)

50 0 -50 -100 -150 -200


10 20 30 40 50 60 70 80 90 time (s)

400 200 0 -200 -400 -600


10 20 30 40 50 60 70 80 90 time (s)




10 20 30 40 50 60 70 80 90 time (s)

Fig. 5. Captive model measurements of forces and moment on the BAUV’s body: (a) model setup for measuring force and moment, (b) force in the x-direction, (c) force in the y-direction and (d) Moment in the z-direction.

ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


T = 4, Carriage Speed = 0 Moment in z-direction (gw-m)

Force in x-direction (gw)

offset = 0, Carriage Speed = 0 Set 1 Set 2

70 60 50 40 30 20 3




4.5 5 Period T (s)



Set 1 Set 2

250 200 150 100 50 0 0

0.05 0.1 0.15 0.2 0.25 0.3



offset = 0.15 offset = 0.35

0 (c)

Set 1



Angular Velocity (deg /s)

Moment in z-direction (gw-m)

Set 1, T = 4 2000 1800 1600 1400 1200 1000 800 600 400 200



Carriage Speed (m/s)


T =4


T =5

5 4 3 2 1 0

0.5 (d)

0.05 0.1 0.15 0.2 0.25 0.3 offset

Fig. 6. Data from the captive model and free running experiments: (a) force in the x-direction vs. oscillation period, (b) Moment in the z-direction vs. offset, (c) Moment in the z-direction vs. forward velocity and (d) relationship between offset and yawing velocity.

In Fig. 6(c), the BAUV has a variable initial velocity, and a higher initial velocity corresponds to the BAUV’s turning more quickly given a particular offset. Fig. 6(d) is obtained from free-running trials using the testbed BAUV in a water tank. The BAUV reached a steady forward speed, and then an offset was applied to the bodyspline. The relationships among the offset values and both the yawing rates and the sideslip velocities were measured. The offset of the body-spline is shown to be able to be used directly to control the yawing rate, which is proportional to the value of the parameter. The offset is proportional to the sideslip velocity but with a much smaller proportional coefficient.

3. Controller design This section presents a waypoint-tracking control system for the BAUV. In the forward swimming and turning modes described in the preceding

ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


section, the amplitude and the frequency can both be regularly varied to control the forward velocity of the BAUV. The offset parameter can be varied to control the angular velocity of the turning motion. The BAUV undulates, so the average forward speed, and the average heading error during the period of motion were fed back to control the forward velocity and heading of the BAUV. Unlike traditional underwater vehicles, BAUVs do not have direct control devices such as thrusters. The angles at the joints of a BAUV determine the motion of its body. BAUVs are moved by the forces of interaction with the surrounding fluid. The uncertainty of the hydrodynamic forces and limitations of the power supply and the propulsion mechanism make precisely controlling the motion of the BAUV difficult. The control system is considered as having two levels to overcome these difficulties. The local control level controls oscillations in the body-fixed coordinate frame that propel the BAUV forward. The global control level controls the performance of waypoint tracking in the space-fixed coordinate frame. On the global control level, the BAUV tracks waypoints by controlling the offset of body-spline. The so-called ‘‘line-of-sight’’ guidance scheme is applied here. Parameters of the lineof-sight guidance scheme are illustrated in Fig. 2. Fig. 7 shows the heading control system in block diagram. In Fig. 7, the heading error e is defined as the angle between the waypoint and the BAUV in the space-fixed coordinate minus the heading of the BAUV. e ¼ cd  c,


and c is the vehicle heading, while cd denotes the desired vehicle heading and is defined as   y  yd cd ¼ tan1 b (3) ; 0  cd o2p, xb  xd where (xb, yb), (xd, yd) represent the vehicle’s position and desired position, respectively. The objective of the guidance scheme is to diminish the heading error in a finite time interval. The fed back signal of the closed-loop control system is the average error in a swimming period, which is defined as R t0 þT e¯ ¼





(4) D


e _


offset k


+ . 


Fig. 7. Block diagram of the control system


ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


where T is the period of body-wave, and t0 is initial time in the period. In Fig. 7, the following definitions are applied: _ ¼ kT  offset þ D, c


where c is the heading angle in the O–XY frame; kT represents the heading dynamics of the BAUV, and is the transformation from offset of the body-spline to the heading velocity of BAUV, presented in Section 2. According to the experimental observations, kT is positive. D represents unmodelled dynamics of the heading responses. Define s and its time derivative s_ as   Z d 1 le T þ le e¯ ¼ e þ s¼ e dt, (6) dt T T 0 1 le e_ þ e, T T where le is a positive coefficient of e¯ . An error function is defined by s_ ¼

1 V ¼ s2 . 2 The time derivative of the error function is V_ ¼ s_s 1 ¼ sðc_ d  c_ þ le eÞ. T A control law for heading angle is designed such that _ offset ¼ k1 T ðcd þ le e þ s=ke Þ,





where ke is positive. ke determines the sensitivity of the error correction term by using s.  1  _ V_ ¼ s c_ d  kT k1 T ðcd þ le e þ s=ke Þ  D þ le e T 1 s2 sD ¼   . ð11Þ T ke T Since heading responses of the BAUV are always bounded, the unmodelled dynamics is also bounded; i.e. j D j oD, D is a positive constant, so that 1 s2 1 V_    þ Djsj T ke T pffiffiffiffiffi 2  2 ke D 1 jsj ke D pffiffiffiffiffi  . ð12Þ  þ T 2 4T ke Therefore, V_ remains negative by decreasing ke sufficiently and the system is stable in the Lyapunov sense except when s is small. To guarantee that the stability condition is always satisfied, a BAUV heading control system shall be designed such

ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


that a desired heading angle is considered being reached when s falls into a small distance from the desired angle. From Eq. (12), it can be inferred that the error function V obeys    1 2 V  Djsjke 1  exp  t , (13) 2 Tke where t represents the variable of time.

4. Experiments

3 2.5

ke = 90 ke = 150 Waypoint

y (m)

2 1.5 1 0.5 0 -0.5 -1 0




3 x (m)


averaged error (degrees)

The testbed BAUV has five components—head, caudal part, tail fin and two pectoral fins. The head segment, the tail fin and the pectoral fins are rigid, while a rigid link and some flexible materials support the caudal part. The net mass of the BAUV is 200 kg, and has length 2.4 m, width 0.4 m and height 0.7 m. A Doppler sonar as well as heading sensor, a depth meter are located in the abdominal part of the BAUV to sense its velocity, direction of motion, and its depth in the water, respectively. The movements of the body and the tail fin are controlled by servo motors. Two waypoint-tracking experiments are illustrated here. In the following, case 1 yields results concerning the tracking of a single target point. Case 2 involves three waypoints around which the BAUV swims. These points are (4, 0) m, (4, 2) m and (2, 2) m. When the distance between the BAUV and the target is under 0.5 m, the waypoint is considered to have been reached. In case 1, parameters are set to c1 ¼ 0.075, c2 ¼ 0.017, l ¼ 3.522, T ¼ 4 s, and le ¼ 2. The variable to be tuned is ke. In case 1, ke ¼ 90 and ke ¼ 150 were tested. Figs. 8(a) and (b) plot the trajectories and the average heading errors of the control system for tracking a single waypoint. The parameter ke influences the sensitivity of the control error. According to discussions in the previous section, if ke is getting


20 18 16 14 12 10 8 6 4 2

ke = 90 ke = 150





30 40 time (sec)



Fig. 8. Comparisons of trajectories of the BAUV that is tracking a waypoint with different values of ke: (a) trajectory of the BAUV with different values of ke and (b) average heading errors of the BAUV with different values of ke.

ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


smaller, then the heading error will be decreased faster. However, the heading error will take more time to stabilize when ke is large. Parameters in case 2 are the same as in case 1, and ke ¼ 90. Fig. 9(a) presents the results of tracking three waypoints arranged such that the BAUV must perform a wide turn. Figs. 9(b) and 9(c) plot the heading and offset during the maneuver. Fig. 9(d) plots the velocity of the BAUV in the body-fixed coordinate. During the turning motion, the offset of the body-spline is large, so the full amplitude of the tail oscillation could not be achieved. Hence, the magnitude of the velocity declined as the BAUV turned from 01 to 1801. The turning radius of the BAUV was 0.2 body length at the speed 0.1 m/s, as displayed in Fig. 9(d). The turning radius of a 2-m length rigid-hull underwater vehicle developed by the author (Guo et al., 2003b) at the speed of 0.1 m/s with 51 control surface deflection is about 0.6 body length. The smaller turning radius indicates higher maneuverability of the BAUV compared to conventional rigid-hull underwater vehicles.

3 2.5

Waypoint 3

Waypoint 2

y (m)

2 1.5 1 0.5

Waypoint 1


heading angle (deg)


-0.5 -1

0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 x (m)


2 1.6 1.2 0.8 0.4 0 -0.4 -0.8 -1.2 -1.6 -2

100 50 0 -50


20 40 60 80 100 120 140 160 180 time (sec)


20 40 60 80 100 120 140 160 180 time (sec)

(b) 0.6 0.5 surge speed (m /s)




0.4 0.3 0.2 0.1 0


20 40 60 80 100 120 140 160 180 time (sec)

-0.1 (d)

Fig. 9. Control experiments of the BAUV that is tracking three waypoints: (a) trajectory of the BAUV, (b) heading angle of the BAUV, (c) offset of the BAUV and (d) velocity in the x-direction of the BAUV.

ARTICLE IN PRESS J. Guo / Ocean Engineering 33 (2006) 2369–2380


5. Conclusions A method of combining the forward-swimming mode and the turning mode of a biomimetic autonomous underwater vehicle (BAUV) is used to control its motion and thus implement waypoint-tracking. The forward speed of the BAUV can be controlled by alternating the amplitude and frequency of body-wave equation. An offset parameter of the body-spline can be controlled to determine the heading velocity directly. The average forward speeds and heading errors during the period of motion are fed back to control the velocity and heading of the BAUV. The waypoint-tracking controller was experimentally demonstrated to enable satisfactory tracking by a testbed BAUV. The performance of the control system can be adjusted by changing the control parameters. It was shown by waypoint tracking experiments that the BAUV can be more maneuverable than conventional rigid-hull vehicles.

Acknowledgments The author would like to thank the National Science Council of the Republic of China, Taiwan for financially supporting this research under Contract No. NSC902611-002-030. Professor S.W. Cheng, F.C. Chiu, J.F. Tsai and J.S. Kuo are appreciated for their helpful comments, as well as Mr. Y.S. Ho, J. C. Chen, and C. H. Wu for assisting in the experiments. References Bowtell, G., Williams, T.L., 1991. Anguilliform body dynamics: modeling the interaction between muscle activation and body curvature. Philosphical Transaction of the Royal Society of London, B 334, 385–390. Colgate, J.E., Lynch, K.M., 2004. Mechanics and control of swimming: a review. IEEE Journal of Oceanic Engineering 29 (3), 660–673. Dewar, H., 1993. Studies of tropical tuna swimming performance: thermoregulation, swimming mechanics and energetics. Ph.D. Thesis in Marine Biology, University of California, San Diego. Ekeberg, O¨., 1993. A combined neuronal and mechanical model of fish swimming. Biological Cybernetics 69, 363–374. Guo, J., Chiu, F.C., Chen, C.C., Ho, Y.S., 2003a. Determining the bodily motion of a biomimetic underwater vehicle under oscillating propulsion. In: Proceedings of the IEEE International Conference on Robotic and Automation, Taipei, Taiwan. Guo, J., Joeng, Y.J., 2004. Guidance and control of a biomimetic autonomous underwater vehicle using body-fin propulsion. Proceedings of the Institution of the Mechanical Engineers Part M: Journal of Engineering for the Maritime Environment 218, 93–111. Guo, J., Chiu, F.C., Huang, C.C., 2003b. Design of a sliding mode fuzzy controller for the guidance and control of an autonomous underwater vehicle. Ocean Engineering 30, 2137–2155. Guo, J., Chiu, F.C., Cheng, S.W., Shi, P.C., 2004. Optimal measurement strategies for environmental mapping and localization of a biomimetic autonomous underwater vehicle. In: Kato, N., Ayers, J., Morikawa, H. (Eds.), Bio-mechanisms of Swimming and Flying. Springer, Tokyo, pp. 111–125. Hirata, K., Takimoto, T., Tamura, K., 2002. Study on turning performance of a fish robot. In: Proceedings of the First International Symposium on Aqua Bio-Mechanisms, Honolulu, Hawaii, pp. 287–292.


J. Guo / Ocean Engineering 33 (2006) 2369–2380

Kato, N., 2000. Control performance in the horizontal plane of a fish robot with mechanical pectoral fins. IEEE Journal of Oceanic Engineering 25 (1), 121–129. Kelly, S.D., Murray, R.M., 2000. Modeling efficient pisciform swimming for control. International Journal on Robust Nonlinear Control 10, 217–241. Lighthill, M.J., 1960. Note on the swimming of slender fish. Journal of Fluid Mechanics 9, 305–317. Sfakiotakis, M., Lane, D.M., Davies, J.B.C., 1999. Review of fish swimming modes for aquatic locomotion. IEEE Journal of Oceanic Engineering 24 (2), 237–252. Viedler, J.J., Hess, F., 1984. Fast continuous swimming of two pelagic predators, Saithe and Mackel: a kinematic analysis. Journal of Experimental Biology 109, 209–228.