Walid Remmas
email: walid.remmas@taltech.ee

Ahmed Chemori
email: ahmed.chemori@lirmm.fr

Maarja Kruusmaa
email: maarja.kruusmaa@taltech.ee

Inverse-model intelligent control of fin-actuated underwater robots based on drag force propulsion

Keywords:

A C T

Fin-actuated underwater robots usually control motion by changing the locomotion primitives of the fins, such as frequency, amplitude, phase shift, or in more complicated cases also the angle of attack. Modelling the generated thrust by an oscillating fin results in a highly non-linear model, thus making it difficult to derive a respective inverse model. In this work, we derived a dynamic model relating the generated thrust to the fins oscillating amplitude and frequency, and proposed the associated inverse-model. The proposed model's accuracy is evaluated by comparing both the theoretical and measured generated thrust for various frequencies. Furthermore, using the proposed fin model, we demonstrate hovering experimental results with the robot U-CAT. The results demonstrate the possibility to control fin-actuated vehicles using the proposed model to generate the fins oscillation amplitudes as control input.

Introduction

Underwater vehicles are capable of operating in different environments considered to be beyond the reach of human divers. Moreover, they can be used in hazardous environments and can operate as long as needed when tethered. Bioinspired Autonomous Underwater Vehicles particularly, have received considerable consideration [START_REF] Triantafyllou | Review of experimental work in biomimetic foils[END_REF][START_REF] Mannam | Review of biomimetic flexible flapping foil propulsion systems on different planetary bodies[END_REF], as they promise to harness optimization over millions of years of evolution.

Biorobotic technology has become one of the hot-spots in underwater robotics research in recent years [START_REF] Rb | Robotic fish locomotion & propulsion in marine environment: A survey[END_REF][START_REF] Scaradozzi | Bcf swimming locomotion for autonomous underwater robots: a review and a novel solution to improve control and efficiency[END_REF]. Inspired by the speed and agility of marine animals, the robotics community has created new propulsion systems that are able to imitate nature. Airfoil propulsion is common for many species. Flying animals (birds, bats, insects) generate both thrust and lift with flapping motions, while certain marine species use fin flapping to generate thrust mainly. Much effort has recently been made in the design of fin-actuated robots [START_REF] Morgansen | Geometric methods for modeling and control of free-swimming fin-actuated underwater vehicles[END_REF][START_REF] Wen | Novel method for the modeling and control investigation of efficient swimming for robotic fish[END_REF][START_REF] Georgiades | Simulation of an underwater hexapod robot[END_REF][START_REF] Licht | Design of a flapping foil underwater vehicle[END_REF].

Bio-inspired propulsion offers various advantages over conventional propellers: (i) Fin-actuated vehicles offer better locomotion efficiency [START_REF] Yu | Parameter optimization of simplified propulsive model for biomimetic robot fish[END_REF]. (ii) Biomimetic fins are environmentally benign, whereas screw propellers or turbines may harm the aquatic vegetation and animals [START_REF] Kruusmaa | Salmon behavioural response to robots in an aquaculture sea cage[END_REF]. (iii) Fins can be used for propulsion, maneuvering, and motion stabilization [START_REF] Weymouth | Biologically inspired force enhancement for maritime propulsion and maneuvering[END_REF]. Fin-actuated underwater vehicles [START_REF] Licht | Biomimetic oscillating foil propulsion to enhance underwater vehicle agility and maneuverability[END_REF] usually control motion by changing the locomotion primitives of the fins, such as frequency, amplitude, phase shift, or in more complicated cases also the angle of attack, stiffness or surface area. Previously, fin-actuated robots have been controlled using adaptive control [START_REF] Plamondon | Adaptive controller for a biomimetic underwater vehicle[END_REF], PID control [START_REF] Geder | Maneuvering performance of a four-fin bio-inspired uuv[END_REF], RISE control [START_REF] Chemori | Depth Control of the Biomimetic U-CAT Turtle-Like AUV With Experiments in Real Operating Conditions[END_REF], fuzzy logic control [START_REF] Remmas | Diver tracking in open waters: A low-cost approach based on visual and acoustic sensor fusion[END_REF], prioritization-based control [START_REF] Salumae | Motion control architecture of a 4-fin U-CAT AUV using DOF prioritization[END_REF] and bio-inspired CPG control [START_REF] Yao | Development of a turtle-like underwater vehicle using central pattern generator[END_REF][START_REF] Bal | Cpg-based autonomous swimming control for multi-tasks of a biomimetic robotic fish[END_REF].

To effectively control fin-actuated robots, a dynamic model relating the fin's actuation parameters (fin oscillations' amplitude, angle of attack, and frequency) to the generated thrust is essential. Several studies have been carried out in the literature to model the generated thrust by a flapping foil. In [START_REF] Plamondon | A trajectory tracking controller for an underwater hexapod vehicle[END_REF], the authors defined the average thrust as a function of the mass flow rate. The amplitude and frequency of the oscillating paddle are computed based on an optimization function. However, the proposed function is valid only for a certain range of mass flow rates. Authors in [START_REF] Giguere | Characterization and modeling of rotational responses for an oscillating foil underwater robot[END_REF] proposed a model based on lift force generated by the fins. The proposed model was used to simulate the robot's dynamics. The studies in [START_REF] Ramasamy | Biology-inspired robust dive plane control of non-linear auv using pectoral-like fins[END_REF][START_REF] Singh | Biorobotic auv maneuvering by pectoral fins: inverse control design based on cfd parameterization[END_REF][START_REF] Geder | Maneuvering performance of a four-fin bio-inspired uuv[END_REF] uses computational fluid dynamics to parameterize the forces generated by a mechanical flapping foil. The drawback is that the proposed model cannot run in real-time on robots with constrained computing capabilities. Authors in [START_REF] Harper | Modeling the dynamics of spring-driven oscillating-foil propulsion[END_REF] proposed a model which is presented as a low-order set of ordinary differential equations. Nevertheless, the approach in the paper involved only open-loop control.

In the present paper we propose a solution that allows the control of fin-actuated vehicles. A nonlinear analytical model based on drag-force generation is proposed and identified using experimental data. Most importantly we derived its associated inverse model, to control the generated thrust through amplitude and frequency modulation. The model is validated experimentally to control two degrees of freedom of a fin-actuated underwater robot U-CAT [START_REF] Salumäe | Design principle of a biomimetic underwater robot u-cat[END_REF]. The main contributions of this paper are as follows:

(1): An analytical model based on drag-force, relating the fins' generated thrust force to the fins oscillating amplitudes and frequency is investigated.

(2): An associated inverse model is also derived, discussed, and validated experimentally. The proposed inverse model is used to compute the required fins oscillating amplitude and frequency to control the robot.

(3): The proposed fin-model is implemented and validated experimentally for various operating conditions on the real fin-actuated robot to control its depth and yaw angle using amplitude modulation with various oscillating frequencies as control input.

The rest of the paper is organized as follows. Section 2 introduces the description and modelling of U-CAT biomimetic underwater vehicle. Then, section 3 is devoted to the proposed nonlinear analytical model for U-CAT soft fins, as well as the thrust control allocations. The controller is discussed in section 4 and the obtained experimental results are presented and discussed in Section 5. The paper ends with some concluding remarks and future work directions, in section 6.

U-CAT Biomimetic AUV : Description and modelling

This section is devoted to the description of U-CAT biomimetic AUV, as well as its dynamic modelling.

Description of U-CAT Biomimetic AUV

U-CAT (cf. Figure 1) is an autonomous biomimetic underwater robot developed within the European Union 7th Framework project ARROWS [START_REF] Salumae | The arrows project: adapting and developing robotics technologies for underwater archaeology[END_REF] (Archaeological Robot Systems for the World Seas). As opposed to other bioinspired underwater vehicles, the four-finned design of this vehicle is motivated solely by the end-user requirements and environmental constraints of the tasks in shipwreck inspection. Among others, it should closely video-inspect underwater objects. To fulfill the needs of shipwreck inspection for archaeological applications, U-CAT has been developed with the following main design requirements [START_REF] Salumäe | Design principle of a biomimetic underwater robot u-cat[END_REF]: (i) The main interest is the video footage from the interior of the shipwreck to identify objects of interest, (ii) The robot has to penetrate in confined spaces, accordingly, it should be small and highly maneuverable, (iii) The vehicle must also be capable of silent motion in order to not disturb the bottom sediments that would make visual observations impossible, (iv) The vehicle has to be untethered as the cable would significantly constrain the vehicle motions inside the wreck, (v) The cost of the vehicle has to be affordable for archaeologists with a limited budget. U-CAT has been specifically designed to meet all these end-user requirements of underwater archaeologists. Consequently, a 4-flipper design was emerged to control its six DOFs.

The four motors actuating the fins are oriented as illustrated in Figure 2. This configuration allows the robot to be holonomic. The fins were designed to point outwards to have more force generated in surge direction, as control in sway direction is only used for slow and precise movements within confined spaces. Moreover, the robot's center of mass is positioned slightly below its center of buoyancy, which makes U-CAT naturally stable in roll in pitch. The four independently driven flippers are used to achieve a high maneuverability in six DOFs, as illustrated in Figure 3.

Further technical specifications about U-CAT are detailed in Table 1.

Hydrodynamic model of the vehicle

Through considering inertial generalized forces, gravity and buoyancy, hydrodynamic effects and generalized forces, the dynamic model of an underwater vehicle [START_REF] Fossen | Marine Control Systems:Guidance, Navigation and Control of Ships, Rigs and Underwater Vehicles[END_REF] may be expressed as follows:

̇ + ( ) + ( ) + ( ) = (1) ̇ = ( ) (2)
where = [ , , , , , ] , = [ , , , , , ] represent the vectors of the vehicle positions in the earth-fixed frame and the velocities in the body-fixed frame respectively (cf. Figure 4). ( ) ∈ ℝ 6×6 represents a transformation matrix, mapping from the body-fixed frame to the earth-fixed frame. The matrices , , and denote the inertia including the added mass, the Coriolis-centripetal including the added mass, and the damping respectively. The vector represents the gravitational/buoyancy forces and moments. The term represents the vector of control inputs. Equation ( 1) describes the dynamics of the system in six DOFs, including the three translations and the three rotations. The input vector ∈ ℝ 6 considers six actions on the system to fully control it. The hydrodynamic parameters of this model have been experimentally identified on U-CAT prototype.

Fin modelling and thruster control allocation

U-CAT has a special four-fin actuation system, different from other fins-based biomimetic actuated robots. In this section we are interested in explaining how the robot fins are modeled using mathematical equations as well as the thrust control allocation. These mathematical relationships should be able to relate the control action (i.e. the amplitude of oscillations of the fins or their frequency) to the thrust generated forces by the fins.

Fin modelling

The thrust generation by fins can be classified into drag-based and lift-based propulsion [START_REF] Vogel | Comparative biomechanics : life's physical world[END_REF]. The amazing quick fish motions are mainly generated by an impacting force caused by a viscous drag known as drag-based thrust related to vortex generation [START_REF] Ahlborn | Experimental simulation of the thrust phases of fast-start swimming of fish[END_REF]. However, lift-based thrust is not very suited for quick motions, since it is generated in a continuous flow with an appropriate angle of attack of the fins, as observed in large fish with high-speed swimming. In the case of U-CAT, its actuation fins can be considered as caudal fins (i.e. tail fins). The oscillatory locomotion of a tail fin may generate thrust by a propulsive flow that is directed backward [START_REF] Sfakiotakis | Review of fish swimming modes for aquatic locomotion[END_REF]. When it comes to the problem of control of such robots (i.e. biorobotic flapping fin-actuated robots), the need of a model characterizing the relationship between the fin actuation parameters and the generated thrust force, can be noticed.

As illustrated in Figure 5, three main parameters can fully characterize the generated thrust; namely i) the amplitude of oscillations, ii) the frequency of oscillations, and iii) the angle of attack. In the sequel, an analysis is made to clearly explain how a needed thrust force is converted into fins oscillating magnitude (assuming a constant oscillating frequency), for the case of U-CAT. Two models will be introduced, a simple empirical model and nonlinear analytical model.

The first fin model: A simple empirical fin model

The first proposed fin model was used in [START_REF] Chemori | Depth Control of the Biomimetic U-CAT Turtle-Like AUV With Experiments in Real Operating Conditions[END_REF] for the case of depth control of U-CAT. The idea behind the proposed fin model was to find a relationship between the generated thrust force and the oscillating amplitude, since this last one was chosen as the control input of the hydrodynamic model of the vehicle. This relationship was experimentally identified on the test-bed of U-CAT leading to a second order polynomial function between and . The experimental procedure consists in generating oscillations of the fin for different values of the amplitude and the frequency and measure the generated thrust force. As reported in [START_REF] Salumäe | Motion control of a hovering biomimetic four-fin underwater robot[END_REF], the obtained experimental results are summarized in the curves of Figure 6. For instance, for the case of an oscillating frequency of 1.1 , the following relationship between the required thrust force and the oscillating amplitude was obtained based on a polynomial interpolation [START_REF] Chemori | Depth Control of the Biomimetic U-CAT Turtle-Like AUV With Experiments in Real Operating Conditions[END_REF]:

= -0.01170 4 2 + 0.4363 4 + 0.2480 (3)
Where denotes the oscillating amplitude, and stands for the generated thrust force by the four fins of the robot.

The proposed fin model: A nonlinear analytical model

In the aim of improving the model of the fins and its fidelity, a more advanced model had to be computed. We investigate a drag-based force model to estimate the generated thrust by an oscillating fin. In the oscillating motion of a fin (as illustrated in Figure 5), the rotational force must be sufficient to overcome the inertia and drag. In [START_REF] Azuma | Swimming by Fanning[END_REF] the author proposed a force balance expression for fin paddling as a simple linear motion. Accordingly, to estimate the fin rotation required force, a rotational force balance had to be considered. Then the force balance of a rotating fin was expressed as a torque balance between the angular momenta of the oscillating motion of a tail fin and the drag as follows [START_REF] Kikuchi | Morphological considerations of fish fin shape on thrust generation[END_REF]:

= ( - ) (4) = 1 2 ( ) 2 = 2 (5)
where denotes the inertia moment of the rotating fin, represents the angular velocity of the fin, is the force for rotating the fin, is the distance between the rotation axis and the center of gravity of the fin, and is the drag acting on the fin.

stands for the rotational drag coefficient, and is the projection area of the fin. Equation ( 5) can be reformulated differently to include momentum of the transported fluid whose volume is . In other words, this implies that the fin converts the momentum of fluids to drag. The angular component in parallel to the swimming direction of the rotational force is used as thrust F. It can be expressed by the following relationship:

= | | = ( 2 + ) | | (6)
where is the angle of the fin, being the angle between the fin cord line and the thrust direction. Equation ( 6) characterizes the instantaneous thrust generated by a rotating fin. The lift component is neglected in our modelling approach since the main generated thrust for bio-inspired robots with low swimming velocities is drag-based. Moreover, neglecting the lift component makes the derivation of the inverse model analytically possible, and its implementation in real-time feasible. Now the idea is to find the relationship between the oscillation amplitude and the generated thrust. A fin obtains the thrust force through a reaction of motion of the surrounding fluid induced by its rotation. The rotating fin translates the force of fin rotation into a thrust. In drag-based thrust generation, the thrust is related to drag, which is based on a momentum transfer theory [START_REF] Schlichting | Boundary-layer theory[END_REF]. In fact, the fluid surrounding a rotating fin is pushed out at a velocity corresponding to the fin velocity, which accordingly enables the fin to obtain a drag as thrust. The theoretical thrust generated by a rotating fin was estimated by momentum theory, and can be expressed as follows [START_REF] Kikuchi | Morphological considerations of fish fin shape on thrust generation[END_REF]:

= ∫ ( 2 + ) | | (7)
where stands for time-averaged theoretical thrust during one cycle. Equation ( 7) can be rewritten as follows:

= 2 ∫ - ( 2
+ ) | | (8)
and due to symmetry, equation ( 8) can be rewritten as follows: In the case of U-CAT control, we consider that the oscillating frequency is constant and we use the oscillation amplitude as a control input. Consequently, the angular acceleration will be equal to zero. Then, equation ( 9) may be reduced to:

= 4 ∫ 0 ( 2 + ) ( ) (9)
= 2 ∫ 0 ( ) ( ) (10)
From equation [START_REF] Gkliva | Development and experimental assessment of a flexible robot fin[END_REF], one can deduce the thrust:

= -2( )( ( ) -1) (11)
Now, the inversion of equation ( 11) leads to the expression of the control input (i.e the oscillating amplitude) in terms of the required thrust force, as follows :

= arccos - 2 + 1 (12)
knowing that = we can express equation ( 12) in function of the needed thrust and the oscillating frequency as follows:

= arccos - 8 ( ) 2 + 1 (13)
In equation ( 13), all constants are known (as summarized in Table 2), and the coefficient was identified based on the experimental fins' thrust data [START_REF] Gkliva | Development and experimental assessment of a flexible robot fin[END_REF]. A minimal RMS 1 error between the experimental assessment of the fins and the proposed analytical model is obtained for = 0.23. Figure 7a depicts the evolution of the oscillating amplitude versus the horizontal thrust. It can be noticed that the proposed inverse solution matches the experimental data, with an RMS error of 1.154 • . Moreover, the proposed analytical inverse model is valid for various frequencies, as illustrated in Figure 7b, where the RMS error between the proposed model and the gathered experimental data is less than 3 • for all the studied frequencies. This clearly shows that the proposed model is able to capture the main dynamics of the generated thrust. Based on equation [START_REF] Harper | Modeling the dynamics of spring-driven oscillating-foil propulsion[END_REF], one can plot the evolution of the required oscillating amplitude versus the thrust force and for different values of the oscillating frequency. The obtained result is displayed in Figure 8, where we can observe different curves, each one corresponds to a chosen frequency. From this result, it can be noticed that for a given needed thrust force, the higher is the frequency the lower is the needed amplitude of oscillations. Using equation ( 13), a 3D plot of the needed control input (i.e. the fin oscillating amplitude) in function of the required thrust force and the fins oscillating frequency can be depicted. The obtained result is displayed in Figure 9a. Besides, using Equation [START_REF] Harper | Modeling the dynamics of spring-driven oscillating-foil propulsion[END_REF], one can also plot in 3D the evolution of the thrust force versus both fins oscillating amplitude and frequency. This result is illustrated in the 3D plot of Figure 9b. According to the results of Figure 9b, one can observe that low oscillation frequencies are not able to produce enough thrust force whatever the oscillating amplitude. However, with higher frequencies, one can have a fast thrust increasing with the oscillating amplitude.

In the sequel we will be interested in the thrust control allocation used in the proposed control scheme and implemented in U-CAT.

Thrust control allocation

In the previous section, the model of fins was presented, it enables to compute the needed oscillation amplitude for a given frequency to generate a required thrust force. Now let us tackle the problem of computation of the angle of attack in the case of multi-degrees-of-freedom control while dealing with the saturation of the control action. All these issues are addressed in the following.

Saturation

According to the fins model introduced above and particularity the curves of Figures 9a and9b, the thrust force depends mainly on two parameters, namely the oscillation frequency and the amplitude. For instance, for a frequency of 1.1

, the maximum thrust force is 7.2 , achievable by the four flippers of the robot (i.e. a thrust of 1.8 generated by each flipper). The control vector that gathers the forces for the case of 3-DOF control (surge, depth and yaw) is denoted by = [ , , ] and the normalized vector is expressed as:

= [ , ,
].

Fins direction control

Since we are interested in the control of U-CAT AUV in hover mode [START_REF] Salumäe | Motion control of a hovering biomimetic four-fin underwater robot[END_REF], the fins orientation is initialized as follows:

Φ = [Φ , Φ , Φ , Φ ] = [0, -, -, 0] (14)
Where and stand for the right and left front fins respectively, and stand for the right and left back fins respectively (as illustrated in the Figure 2). Using the prioritizing functions described in the previous section, the fins directions will be either in the same initial configuration (for surge action), or will be reoriented vertically (upward or downward depending on the heave action direction) using the following equation:

⎡ ⎢ ⎢ ⎢ ⎣ Φ Φ Φ Φ ⎤ ⎥ ⎥ ⎥ ⎦ = ⎡ ⎢ ⎢ ⎢ ⎣ 0 - - 0 ⎤ ⎥ ⎥ ⎥ ⎦ + ⎡ ⎢ ⎢ ⎢ ⎣ 1 1 1 1 ⎤ ⎥ ⎥ ⎥ ⎦ 2 (15)
This allows the robot to be in the configuration ( ) illustrated in Figure 3 when surge action is high, and to smoothly switch to configuration ( ), the orientation angle varies from 2 to - 2 depending on the heave action. The yaw control is achieved by oscillating at the same time either fins and or fins and . Even if the yaw propulsion is more efficient when the fins are oriented as in the initial configuration (illustrated in Figure 2), this equation allows to control three DOFs at the same time (namely surge, heave, and yaw).

Fins oscillating amplitude control

As stated above, three main parameters can be used in motion control of U-CAT; namely i) the fins oscillation frequency, ii) the fins oscillation amplitude, and iii) angle of attack. In this wok we consider that the oscillation frequency is constant (equal to 1.1

), the two other parameters should be enough to control the motion of the vehicle. The oscillation amplitude is used as a control input to define the needed thrust force to achieve the desired motion. The angle of attack should be computed in real-time to define the best orientation of this thrust force as stated in the previous section. The required fins oscillating amplitude is given by the following relationship:

( ) = arccos - 2 + 1 (16)
For instance, in the case of 3-DOF control (surge, depth, and yaw), the vector of amplitudes of oscillation of the fins is expressed by:

⎡ ⎢ ⎢ ⎢ ⎣ ⎤ ⎥ ⎥ ⎥ ⎦ = ⎡ ⎢ ⎢ ⎢ ⎣ ( ) 1 (-) (-) 1 ( ) (-) 1 (-) ( ) 1 ( ) ⎤ ⎥ ⎥ ⎥ ⎦ ⎡ ⎢ ⎢ ⎣ ( ) ( ) ( ) ⎤ ⎥ ⎥ ⎦ (17)
where , , and stand for the different fins of U-CAT as illustrated in Figure 2, (.) is the Heaviside function and (.) is the function ( 16) converting the propulsion force into fins oscillating amplitude.

Fuzzy logic control using the inverse fin model

In this study, a Mamdani fuzzy controller is implemented for trajectory tracking. The choice of this controller has been made based on a comparative study of various control schemes in different operating conditions (nominal case, buoyancy change, external disturbance rejection) [START_REF] Remmas | Modelling and control of a bio-inspired underwater vehicle U-CAT[END_REF]. The fuzzy controller gave the best results for heading and depth control in terms of tracking performance accuracy, and in terms of sudden changes (chattering) in the control force output. U-CAT is a highly maneuverable AUV, and is sensitively affected by sudden changes outputs. Therefore, the fuzzy logic controller was chosen as it gave the best performance.

To synthesize a Mamdani-based fuzzy controller, it is necessary to go through the following four steps:

• Step 1: Fuzzy knowledge base construction

•
Step 2: Fuzzification of the system inputs

•
Step 3: Execute all applicable rules in the rulebase

• Step 4: Defuzzifcation of the fuzzy outputs to get crisp values

The control architecture of the resulting fuzzy Inference System is illustrated in Figure 10.

Fuzzy knowledge Base

The Mamdani controller is mainly based on expertise and intuition, that can be exploited in two bases: a data base, and a rule base.

The data base includes all the fuzzy variables (the controller inputs and outputs: in our case the inputs are the robot depth and yaw angle ∈ ℝ 2×1 expressed in earth frame and their first-time derivative ̇ ∈ ℝ 2×1 , the output of the controller will be the needed thrust force vector ∈ ℝ 2×1 ). The membership functions are illustrated in Figure 11 and the rule table is summarized in 3.

The membership functions are of trapezoidal type, and are defined as follows:

= {[ , , ], , [-1 , 1 ]} ̇ = {[ , , ], , [-2 , 2 ]}

RMS error

Yaw RMS error (radians) Depth RMS error (m)

Figure 12: RMS tracking errors for the nominal case using different fins oscillating frequencies.

• Scenario 3 (External disturbances rejection): the robot is subject to an external disturbing force. This experiment was conducted using a constant oscillating frequency (1.1 ).

It is worth to note that the parameters of the proposed controller are tuned for the nominal case and kept the same for all the other scenarios. The parameter to be varied for Scenario 2 is the robot's buoyancy . For Scenario 3, the external disturbance is applied in such a way to affect mainly the yaw angle of the vehicle. The sampling period (sensors feedback sample time) was set to 100 . The controller's loop runs at a frequency of 5 . The parameters of the proposed Mamdani fuzzy controller are summarized in Table 4.

Experimental scenario 1: Control in nominal case

The RMS errors for depth and yaw tracking are depicted in Figure 12. Figure 12 shows that the proposed fin model gives satisfactory results for all the tested oscillating frequencies ranging from 0.8 to 2 . The best performance was obtained when the fin's oscillating frequency is set to 1.1 , with RMS errors of 0.15 and 4.01 • for depth and yaw tracking respectively. The obtained tracking results with an oscillating frequency of 1.1 are shown in Figure 13. We notice on Figure 13 that the proposed control scheme ensures satisfying results in the nominal case. The robot is able to track the desired trajectories, even when both degrees of freedom are varying at the same time. The associated control signal for depth varies with a high frequency, but this results in small fins direction changes, and the control performance is not affected. In this case, both control signals are within the admissible region of the robot actuators.

Experimental scenario 2: Robustness test towards buoyancy change

In this scenario, a buoyancy foam of 300 3 was fixed on the top center of the robot to increase its buoyancy, as shown in Figure 14. The robot floats to the surface when the fins are not actuated since the robot's neutral buoyancy is lost in this configuration. The obtained experimental results for this second scenario are depicted in Figure 15. We can notice that, despite the increased buoyancy, the robot is able to track both desired trajectories for depth and yaw simultaneously. Slight oscillations can be noticed for yaw tracking, which is due to the robot's fins constant movement to compensate for the increased buoyancy. The depicted RMS errors for this scenario are 0.29 and 10.42 • for depth and yaw tracking respectively. Despite the increased buoyancy, the robot's tracking performance remains accurate.

Experimental scenario 3: External disturbances rejection

In this scenario, the robot was subject to an external disturbance. A stick was used to disturb the robot twice and orient it at a random angle. A first slight disturbance was applied while the robot was diving, then a stronger one was applied when robot reached a stable depth. The results are shown in Figure 16. The time of the disturbances is shown in the top right plot of Figure 16. For the first external disturbance, we notice that the robot recovered to the desired yaw angle, even-though it was in a diving phase (fins oriented vertically). For the second stronger disturbance, the robot managed to recover quicker since the fins were oriented horizontally when the robot was not in a diving phase, which produces a greater torque force by the four fins. The depicted RMS errors for this scenario are 0.17 and 14.64 for depth and yaw tracking respectively.

Conclusion and future work

In this paper, the problem of dynamic modelling and control of fin-actuated underwater vehicles was tackled. In terms of modelling, beyond the dynamic model of the vehicle, the idea was to find an appropriate dynamic model representing the fins of the robot. The proposed model is based on a nonlinear analytical relationship between the amplitude and frequency of oscillations, and the needed thrust force to control fin-actuated vehicles. The model was validated experimentally evaluated by comparing the generated thrust for various operating frequencies. The results confirm the validity of the proposed model for various oscillating frequencies. The proposed model and its respective inverse model were both implemented on a fin-actuated AUV and several experiments were carried out and discussed. Using the proposed model, we show the possibility to use amplitude modulation with a predefined constant frequency to control a fin-actuated AUV. The obtained results show the effectiveness and robustness of the proposed model for numerous oscillating frequencies. In future work, we will investigate the accuracy of the proposed model in different Reynold regimes and different flow velocities. Moreover, we plan to develop solutions that allow to use both amplitude and frequency modulation as control inputs.

Figure 1 :

 1 Figure 1: View of U-CAT bio-mimetic AUV operating in real conditions in Rummu Lake in Estonia. The flippers (flexible green parts) are made of Silicon and actuated with Brushless DC (BLDC) motors.

Figure 2 :

 2 Figure 2: Definition of the four fins and illustration of their initial configuration in hover mode.

Figure 3 :Figure 4 :

 34 Figure 3: Illustration of how the four independently driven flippers are used to separately actuate the six DOFs of the robot. The DOFs framed in red are the subject of the actual study regarding control (i.e. depth and yaw)

Figure 5 :

 5 Figure 5: Illustration of the oscillating motion on one fin and its main characteristics.

Figure 6 :

 6 Figure 6: Evolution of the generated mean fin thrust for different actuation parameters (oscillation amplitude ranging from 0 to 60 • and oscillation frequency ranging from 0.5 to 2.6 ) [27].

Figure 7 :

 7 Figure 7: (a): Validation of the proposed theoretical model for fin amplitude allocation, with experimental data for a constant frequency = 1.1 . (b): Evolution of the RMS error between the proposed theoretical model and the experimental data for different frequencies (in green = 1.1 , is the robot's fins' constant oscillating frequency used within our control scheme .)

Figure 8 :

 8 Figure 8: Estimated single fin needed oscillating amplitude versus the required thrust for different oscillating frequencies.

Figure 9 :

 9 Figure 9: (a): Evolution of a Single fin oscillating amplitude in function of the required thrust and the oscillating frequency. (b): Evolution of the estimated thrust generated by the four fins in function of the oscillating amplitude and oscillating frequency.

Figure 10 :

 10 Figure 10: Block diagram of the proposed Fuzzy logic controller.

Figure 13 :

 13 Figure 13: Obtained experimental results using the proposed fin model and a fuzzy-logic controller in the nominal case (at an oscillating fins frequency of 1.1 ).

Figure 14 :

 14 Figure 14: U-CAT pictured with an added buoyancy foam fixed on its top.

  •

Figure 15 :

 15 Figure 15: Obtained experimental results using the proposed fuzzy-logic controller in the case of an increased buoyancy.

Figure 16 :

 16 Figure 16: Obtained experimental results using the proposed fuzzy logic control for external disturbances rejection scenario.

Table 1

 1 Main technical specifications of the U-CAT robot

	Technical specification	Specification / Description
	Attitude sensor	MPU-6050 IMU
	Depth sensor	GEMS 22CS Series Pressure Sensor
	Batteries	4x HP Compaq NX8200 8cell batteries
	Maximal speed (surge) 0.25 m/s
	Maximal depth	100m
	Autonomy	∼6 hours
	Mass	19 Kg
	Dimensions	560mm × 329mm × 258mm
	Fins' material	Zhermack Elite Double 22

Table 2

 2 Summary of the fin's parametric values of the theoretical model.

	( ∕ 3 )	( 2 )	( )
	997	0.02	0.1

Table 4

 4 Summary of the universe of discourse parameters used in the membership functions.

		1		2	1	2	3
	Depth	0.18	0.1	-8.5	0	8.5
	Yaw	0.24 0.08 -4.8	0	4.8
	0.35
	0.3
	0.25
	0.2
	0.15
	0.1
	0.05
	0
	0.8	1	1.2	1.4	1.6	1.8	2
		Fins' oscillation frequency

RMS: Root Mean Square.

Acknowledgements

This work is financed through Estonian Research Council Grant IUT-339.

Fuzzification process

To use the Mamdani controller, the measured data collected with U-CAT sensors is converted into fuzzy values. To this end, the previously defined membership functions are used. Each value of the input vectors ∈ ℝ 2×1 and ̇ ∈ ℝ 2×1 will have three membership degree values: , and where take real values in the interval [0, 1].

Inference engine

In our case study for the control of the robot U-CAT, the chosen t-norm operation is the minimum t-norm, and the used t-conorm operation is the maximum t-conorm. The membership degrees of the nine rules are computed using t-norm operation as follows:

The variable ̃ denotes the error between the current and the desired state ̃ = -, and ̇̃ stands for its first-time derivative.

We conclude the membership degree of the output (thrust force to be generated by the robot's fins) using the chosen t-conorm as follows :

Defuzzification process

In the literature, the following five defuzzifying methods are the most used:

• Centroid of area (COA) method,

• Bisector of area (BOA) method,

• Mean of maximum (MOM) method,

• Smallest of maximum (SOM) method, and

• Largest of maximum (LOM) method.

In our case we have chosen to use the Center Of Gravity (COG) method. Consequently, the output of the inference engine (representing the control input of the robot) will then be computed as follows:

Where 1 , 2 and 3 are constants. In our case 1 = -3 , 3 > 0 and 2 = 0, 3 is the maximum achievable propulsion force by the four fins of the robot.

Experimental results

In this section, the obtained experimental results are presented and discussed. The experiments were carried out in a laboratory water-tank. The water-tank has a limited depth of approximately 1 meter, therefore, the desired depth trajectory was generated to satisfy this constraint. For all the presented scenarios, the desired depth trajectory varies from 0 to 0.8 , and the desired yaw angle varies from 0 to 1.5 rads.

To demonstrate the performance and robustness of the proposed control scheme, different experimental scenarios have been studied for the case of 2-DOF (depth and yaw) motion control. Accordingly, the following experimental scenarios have been conducted:

• Scenario 1 (Nominal case): In this scenario, The robot is not subject to any external disturbance or uncertainty.

To demonstrate the validity of the proposed fin model, this scenario was conducted five times using five different oscillating frequencies (0.8 , 1.1 , 1.4 , 1.7 , 2.0 ).

• Scenario 2 (Robustness test): A buoyancy foam was attached on the robot to increase its buoyancy in order to test the robustness of the control law towards this unexpected change. This experiment was conducted using a constant oscillating frequency (1.1 ).