Mathematical Modelling and 3D Simulation of a Virtual Robotic Fish

Similar documents
Model Reference Adaptive Control of Underwater Robotic Vehicle in Plane Motion

Trajectory Tracking of a Near-Surface Torpedo using Numerical Methods

THRUST ANALYSIS ON A SINGLE-DRIVE ROBOTIC FISH WITH AN ELASTIC JOINT

Parametric Research of Experiments on a Carangiform Robotic Fish

φ(r, θ, t) = a 2 U(t) cos θ. (7.1)

Autonomous Underwater Vehicles: Equations of Motion

Modeling and Motion Analysis of the MARES Autonomous Underwater Vehicle

Tuning and Modeling of Redundant Thrusters for Underwater Robots

Design and modelling of an airship station holding controller for low cost satellite operations

TTK4190 Guidance and Control Exam Suggested Solution Spring 2011

Research article Propulsive performance of biologically inspired flapping foils at high Reynolds numbers

Non Linear Submarine Modelling and Motion Control with Model in Loop

Control of the MARES Autonomous Underwater Vehicle

Quaternion Feedback Regulation of Underwater Vehicles Ola-Erik FJELLSTAD and Thor I. FOSSEN Abstract: Position and attitude set-point regulation of au

One Good Turn. For vehicle navigation and tracking this simulation accounts for the dynamics of the dynamic control loop. DR.

THRUST OPTIMIZATION OF AN UNDERWATER VEHICLE S PROPULSION SYSTEM

Simulation of Kinematic and Dynamic Models of an Underwater Remotely Operated Vehicle

u (surge) X o p (roll) Body-fixed r o v (sway) w (heave) Z o Earth-fixed X Y Z r (yaw) (pitch)

Active Yaw Stabilization for Smooth, Highly Maneuverable Underwater Vehicles

Research Article Investigation into the Dynamics and Control of an Underwater Vehicle-Manipulator System

Underactuated Dynamic Positioning of a Ship Experimental Results

Stability and Control

SEAKEEPING AND MANEUVERING Prof. Dr. S. Beji 2

Engineering Mechanics Prof. U. S. Dixit Department of Mechanical Engineering Indian Institute of Technology, Guwahati

We are IntechOpen, the world s leading publisher of Open Access books Built by scientists, for scientists. International authors and editors

Seakeeping Models in the Frequency Domain

Artificial Intelligence & Neuro Cognitive Systems Fakultät für Informatik. Robot Dynamics. Dr.-Ing. John Nassour J.

1. INTRODUCTION. Fig. 1 SAUVIM

On the effect of elastic nonlinearity on aquatic propulsion caused by propagating flexural waves

Near-Hover Dynamics and Attitude Stabilization of an Insect Model

Quadcopter Dynamics 1

Viscous investigation of a flapping foil propulsor

Exam - TTK 4190 Guidance & Control Eksamen - TTK 4190 Fartøysstyring

Development of a Fish-Like Propulsive Mechanism

Quadrotor Modeling and Control

Chapter 1 Lecture 2. Introduction 2. Topics. Chapter-1

Today. Why idealized? Idealized physical models of robotic vehicles. Noise. Idealized physical models of robotic vehicles

isplash-ii: Realizing Fast Carangiform Swimming to Outperform a Real Fish

Journal for Research in Ship Technology, Ocean Engineering and Related Subjects. Founded by Prof. Dr.-Ing. Kurt Wendel in 1952 DRAFT!

24/06/13 Forces ( F.Robilliard) 1

Mechanics of Flight. Warren F. Phillips. John Wiley & Sons, Inc. Professor Mechanical and Aerospace Engineering Utah State University WILEY

isplash-micro: A 50mm Robotic Fish Generating the Maximum Velocity of Real Fish

BIOINSPIRED robotic systems are becoming more and

Depth Control of the ROV with Fuzzy and PID Smoother Controller

Introduction to Flight Dynamics

UNDULATING PROPULSION SYSTEM DESIGN

Modeling and Control of 2-DOF Underwater Planar Manipulator

(3) BIOMECHANICS of LOCOMOTION through FLUIDS

Modeling of a Hexapod Robot; Kinematic Equivalence to a Unicycle

Fundamental properties of snake robot locomotion

Flight Dynamics and Control

A Discussion About Seakeeping and Manoeuvring Models For Surface Vessels

Design of Advanced Control Techniques for an Underwater Vehicle

THE BODIES and brains of fish have evolved to achieve

Mathematical Modelling and Dynamics Analysis of Flat Multirotor Configurations

Autonomous Robotic Vehicles

AA 242B/ ME 242B: Mechanical Vibrations (Spring 2016)

Simulation of Plane Motion of Semiautonomous Underwater Vehicle

Single-track models of an A-double heavy vehicle combination

Journal of Biomechanical Science and Engineering

DYNAMIC CHARACTERISTICS OF OFFSHORE TENSION LEG PLATFORMS UNDER HYDRODYNAMIC FORCES

Quaternion-Based Tracking Control Law Design For Tracking Mode

Chapter 8 Rotational Motion

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

A Biologically Inspired Computational Study of Flow Past Tandem Flapping Foils

Counter-propagating waves enhance maneuverability and stability: a bio-inspired strategy for robotic ribbon-fin propulsion

DYNAMIC MODELLING OF THE SEARAZOR - AN INTERDISCIPLINARY MARINE VEHICLE FOR SHIP HULL INSPECTION AND MAINTENANCE

Chapter 4 The Equations of Motion

In this section of notes, we look at the calculation of forces and torques for a manipulator in two settings:

Theory of Vibrations in Stewart Platforms

Robot Control Basics CS 685

A soft body under-actuated approach to multi degree of freedom biomimetic robots: A stingray example

AS3010: Introduction to Space Technology

Physics for Scientists and Engineers 4th Edition, 2017

TOPIC E: OSCILLATIONS SPRING 2019

Study on Motions of a Floating Body under Composite External Loads

Simulation of Spatial Motion of Self-propelled Mine Counter Charge

The... of a particle is defined as its change in position in some time interval.

A Biologically Inspired Robotic Ribbon Fin

COPYRIGHTED MATERIAL. Index

If the symmetry axes of a uniform symmetric body coincide with the coordinate axes, the products of inertia (Ixy etc.

Design of a Heading Autopilot for Mariner Class Ship with Wave Filtering Based on Passive Observer

Student name: This is a closed book examination. You are allowed 1 sheet of 8.5 x 11 paper with notes.

Physics Curriculum Guide for High School SDP Science Teachers

Simulating Biomimetic (flapping foil) Flows for Comprehension, Reverse Engineering and Design

Modelling of Opposed Lateral and Longitudinal Tilting Dual-Fan Unmanned Aerial Vehicle

Estimating Maneuvering and Seakeeping Characteristics with Neural Networks

Dynamics. describe the relationship between the joint actuator torques and the motion of the structure important role for

SCALE MODEL TESTS OF A FISHING VESSEL IN ROLL MOTION PARAMETRIC RESONANCE

Final Exam TTK4190 Guidance and Control

PHYSICS. Course Structure. Unit Topics Marks. Physical World and Measurement. 1 Physical World. 2 Units and Measurements.

Revised Propeller Dynamics and Energy-Optimal Hovering in a Monospinner

The role of flexibility on propulsive performance of flapping fins

Nonlinear Tracking Control of Underactuated Surface Vessel

Computation of Inertial Forces and Torques Associated with. Flapping Wings

1. Replace the given system of forces acting on a body as shown in figure 1 by a single force and couple acting at the point A.

Effect of wavelength of fish-like undulation of a hydrofoil in a free-stream flow

Moving Mass Control for Underwater Vehicles

A simplified method for calculating propeller thrust decrease for a ship sailing on a given shipping lane

BIOINSPIRED robotic systems are becoming more and

Transcription:

2014 8th Asia Modelling Symposium Mathematical Modelling and 3D Simulation of a Virtual Robotic Fish Ammar Ibrahem Majeed Abduladhem Abdulkareem Ali, SMIEEE Electrical Engineering Department Computer Engineering Department University of Basrah University of Basrah Basrah, Iraq Basrah, Iraq e-mail: ammar_19722@yahoo.com e-mail: abduladem1@yahoo.com Abstract- In this paper, a detailed mathematical model for a virtual robotic fish is presented including hydrodynamic forces and environmental conditions such as oceanic currents. Sony HandyCam camera is used to monitor a live carp fish. The useful monitoring data is extracted from the monitoring images that are used to analyse the locomotion of the fish and determine specific control variables during swimming. The locomotion control and autonomous navigation of the proposed virtual robotic fish is simulated in 3D using Matlab program. Experimental results show that the simulator provides a realistic and convenient way to develop autonomous navigation algorithms for the virtual robotic fish. A course of experimental results show that the control scheme was very effective in path planning and trajectory tracking problems. Keywords: Biomimetic; Mathematical modeling; 3D Simulation. I. INTRODUCTION With over 32.000 species and a billion years of evolution fish has migrated into almost every aquatic habitat in the world and displayed amazing adaption for locomotion even in the most hostile environments, both as predator and prey [1]. The mechanical systems in fish formed by evolution and natural selection are highly efficient. The main characteristic for aquatic animals is their use of oscillating fins to propel themselves. These highly flexible and manoeuvrable fins of various types enable them to move from place to place [2]. The tuna is known for its speed, the pike for its accelerations and the eel for its way of threading everywhere. A carp can make half-turn in one half-second. To imitate all these behaviours with robotized systems is a real challenge and requires to better known biomechanics of the stroke and the hydrodynamic characteristics of fish. In order to do so the fish swimming movements should be monitored and then analysed in order to derive the most accurate mathematical model which leads to select the sufficient number of links and joints for the artificial propulsive tail to mimic these swimming movements. These robot-fish could (or are already) be used in fields like the oceanographical observation, leaks detection on pipelines, underwater optical cables inspection, the search for mines, military applications, underwater archaeological exploration. There are many researches which try to include/understand and reproduce the abilities of fish with robotized systems. The RoboTuna project started in 1993 at MIT in USA with the objective to develop a better system of propulsion for the autonomous underwater vehicles. After RoboTuna, another robotic fish is designed at MIT: RoboPike, the robot pike (the pike interests the researchers for its fulgurating accelerations). RoboPike is not maintained in the aquarium by a system of pulley like its predecessor and can swim freely. But it is not autonomous: its navigation is directed by human and it is the computer which interprets the orders and returns the signals appropriate to each engine. The NMRI (National Maritime Research Institute) developed many projects of robotic fish (series PF and series PPF) with a view to apply, in the future, the capacities of fish to our boats and submarines. The PPF-04 is a small robotic fish of 19 cm and 400 g, remote controlled. Its size makes it possible to test it in a small tank (like a bathtub). Essex Robotic Fish, designed by Jindong Liu and Huosheng Hu at the Dept. of Computer Science in University of Essex, G.B. Their goal was to carry out a robot-fish which can swim like a real fish and which is autonomous. Engineers at the University of Kitakyushu have developed one of the most realistic biomimetic robots in the world. They designed a red snapper robotic fish known as Tai-robot-kun. Tai-robotkun weighs 7kg and mimics a real fish swimming silently in the water, and can go for as long as an hour with a full battery. Fish, in general, swim one of two ways; thrust is either generated by periodic movement of some portion of the creature s main body, or by any of a number of mechanisms involving the creature s median and pectoral fins [3]. The former method of propulsion, termed body and caudal fin (BCF) locomotion, is utilized by an estimated 85% of fish families and will be the focus of this paper because of its use by fast and efficient swimming fish species. Median and paired fins (MPF) swimming is favoured by species that swim slowly and are required to be highly manoeuvrable. There are four modes of swimming that fall under the method of body and caudal fin locomotion, see fig. 1; Anguilliform whole body undulation, Subcarangiform undulations confined to final half of body, Carangiform undulations confined to final third of body, and Thunniform undulations confined to the caudal fin and peduncle only [4]. Fig. 1. Gradation of swimming modes from (A) anguilliform, through (B) subcarangiform, and (C) carangiform, to (D) thunniform.[5] Scientists have identified two primary phenomena at work during fish swimming that are responsible for propulsive thrust [6]. The first is an added-mass effect whereby the fish body imparts momentum to the water directed backward and an equal opposing force is exerted on the fish propelling it forward. The second is a vorticity effect whereby the vortices 978-1-4799-6487-1/14 $31.00 2014 IEEE DOI 10.1109/AMS.2014.31 110

in the fish body s own wake impart a propulsive force, as the vortices in the fish s wake have a rotation and effect opposite that of a classical drag inducing Karman vortex street [3]. Added-mass effects are associated primarily with anguilliform swimming, while vorticity effects are associated primarily with thunniform swimming; subcarangiform and carangiform swimming utilize both phenomena. II. MATHEMATICAL MODELLING OF VIRTUAL ROBOTIC FISH The mathematical model of the Virtual robotic fish consists of three main parts; the modelling of the tail propulsion system, the fish dynamics, and the fish kinematics. The modelling of the tail propulsion system describes how the actuation system used within the tail in order to generate a motion of the caudal fin. The dynamics section allows for the calculation of how the forces and moments generated by the mechanical tail causes the robotic fish to move with reference to the body-fixed frame. The fish kinematics section describes how the body-fixed fish velocities generated by the dynamics section translate to an inertial fixed reference frame. Once the model differential equations have been developed they are put into state space form and a multi-rate simulation is constructed using the MATLAB environment. This paper is organized as follows; firstly a brief overview of the state space modelling technique is given followed by a description of the reference frames and model variables used. Each section of the model is then presented in turn starting with the robotic fish dynamics, followed by the modelling of the propulsion system section which discusses the different tail actuation schemes investigated and finally the robotic kinematics are discussed. A. Model Variables and Reference Frames When working with any vehicular system such as underwater robots, marine vessels, aircraft, spacecraft or automobiles it is convenient to define a number of standard variables for describing velocity, displacement, etc. and also to define reference frames or coordinate systems. For this model two reference frames are used, the Body-Fixed frame and an inertial Earth-Fixed frame. The Body-Fixed frame is attached to the vehicle (in our case the robotic fish) and moves with the vehicle as it moves. For simplicity the Body-Fixed frame usually has its origin located at the vehicles centre of gravity. The Earth-Fixed frame is assumed to be an inertial frame, i.e. it is fixed and does not move. Fig. 2 shows a diagram with the notation used for the Body-Fixed and Earth- Fixed reference frames. The velocities and accelerations generated by the dynamics section of the model are calculated with respect to the body-fixed reference frame. In most cases it is useful, particularly for navigation purposes, to know how the vehicle is moving in the Earth fixed reference frame. Fig. 2. Illustration of Body-Fixed and Earth-Fixed reference frames It is therefore usually necessary to translate the forces and velocities generated in the moving body fixed frame to forces and velocities in the Earth-fixed frame which is stationary relative to the body-fixed frame. This translation process is described in the vehicle kinematics section which follows after this section. As well as defining reference frames for the model it is convenient to define a number of variables which describe the motion of the vehicle within each of these reference frames. A standard notation has been developed for use with marine vessels by the Society of Naval Architects and Marine Engineers (SNAME) for describing the various forces and moments in each of the six degrees of freedom (DOF) [7]. This notation is shown in Table 1. TABLE I SNAME NOTATION FOR MARINE VESSELS For the purposes of developing mathematical models these variables are usually presented in vector form as shown in the following equations [8]: [ ] T, where [x y z] T and (1) ] T, where [u v w] T and [p q r] T (2) [ ] T, where [X Y Z] T and [K M N] T (3) Where, is the vector of linear and angular positions within the Earth-Fixed reference frame, is the vector of linear and angular velocities within the Body-Fixed frame and is the vector of forces and moments in the Body-Fixed frame. This notation shall be used throughout the remainder of this paper. B. Robot Fish Kinematics To translate the body-fixed velocities generated by the dynamics section of the model to velocities in the inertially fixed Earth frame a transformation is required. The transformation is made up of a series of rotations carried out in a specific order as outlined by Euler s Theorem on Rotation. In order to carry out this transformation the linear and angular velocities are dealt with separately, therefore the velocity 111

vector υ is split into two separate vectors υ 1 and υ 2 which are the linear and angular velocities in the body-fixed frame as shown previously in Equation (2). The corresponding vectors of linear and angular positions in the Earth-Fixed reference frame are given the notation and respectively also shown previously in equation (1). The standard notation for this transformation is shown in equation (4) for the linear velocities and in equation (5) for the angular velocities. (4) (5) Where and are the linear and angular velocities in the Earth-fixed frame respectively and J 1 and J 2 are the transformation matrices used; J 1 for the linear velocities shown in equation (6) and J 2 for the angular velocities shown in equation (7) [9]. Here for compactness c represents the cosine function, s represents the sine function and t represents tan. Therefore, the complete kinematic equation for translating from velocities in the body fixed frame to velocities in the Earth frame is given in equation (8) below. C. Robotic Fish Dynamics The dynamic model of the biomimetic robotic fish vehicle draws on techniques used to model conventional marine vessels such as AUVs and ROVs. These techniques are modified with addition or replacement of terms to represent the biomimetic nature of the prototype such as the thrust and drag equations for fish propulsion and the shape of the vehicle altered to resemble a fish. The standard vehicular model for a 6 DOF system is used for modelling this system and is shown in equation (9) [8]. This equation has the origin of the body fixed frame located at the center of gravity of the vehicle (robotic fish). (9) Where M is the inertia matrix (including added mass), C(υ) is the matrix of Coriolis and centripetal terms (including added mass), D(υ) is the damping matrix, g(η) is the vector of gravitational forces and moments, τ is the vector of control inputs and υ is the linear and angular velocity vector. How each of these terms is dealt with in relation to the modelling of the robotic fish vehicle is covered within the following sections. D. Rigid Body Dynamics For the purposes of modelling the dynamics of the system, the robotic fish vehicle is assumed to be a rigid body. This (6) (7) (8) assumption implies that the vehicle mass does not alter with time and that the shape remains constant. The development of the rigid body equations of motion is based on the Newton- Euler Formulation which is based on Newton s Second Law which relates the acceleration and mass of an object to the force acting on it. Mathematically, this is represented as: ΣF m a (10) Where m is the mass of the object in kg, a is the acceleration of the object in ms -2 and ΣF is the summation of all the forces acting on the body in Newtons. To develop the rigid body equations of motion Euler s first and second axioms are used. These axioms express Newton s Second Law in terms of both linear momentum p C and angular momentum h C shown in equations (11) and (12) [8]. Euler s 1 st Axiom (11) Euler s 2 nd Axiom (12) Here f C and m C are forces and moments referred to the body s centre of gravity, ω is the angular velocity vector, m is the mass of the body and I C is the Inertia about the body s centre of gravity. The derivation of rigid body equations of motion from Newton s Second Law and Euler s first and second Axioms can be found in [8] and [9]. The rigid body equations of motion for each of the 6 degrees of freedom for the Robotic fish vehicle can be stated as shown in equations (13) to (18) [8]. Surge (13) Sway (14) Heave (15) Roll (16) Pitch (17) Yaw (18) Here I x, I y and I z are the moments of inertia of the robotic fish about the X b, Y b and Z b axes respectively. E. Inertia Matrix The inertia matrix M is composed of two components as shown in equation (19), the rigid body inertia matrix and the added inertia matrix to take effects due to the added mass forces and inertia into account [8]: M = M RB + M A (19) To simplify the matrices it is assumed that the centre of gravity is located at the same position as the origin of the body-fixed frame. To give the robotic fish a degree of metastability the centre of buoyancy is set to coincide with the centre of gravity in the X b and Y b axes but is set slightly above the centre of gravity. This means that: (20) (21) 112

A large number of marine vessel models assume that the vehicle to be modelled is neutrally buoyant; the weight is equal to the buoyancy force. In reality achieving neutral buoyancy is a near impossible task without dynamic ballast system. The rigid body inertia matrix for the robotic fish simplifies to [8]: form. The hull of the robotic fish vehicle is also assumed to be prolate ellipsoid in shape, shown in fig. 3, and due to both these assumptions the added mass matrix can be simplified to only the diagonal elements as shown in equation (26). (22) The moments of inertia for the robotic fish are calculated using the standard equation for the moment of inertia of a prolate ellipsoid for simplicity. F. Coriolis & Centripetal Terms For modelling purposes the effect of the Coriolis and centripetal forces acting on the robotic fish, are dealt with together within one matrix C(ν). The centripetal force is caused when the motion of the robotic fish follows a curved path. The C(ν) matrix provides the correction required to model these additional movements within the model. Like the inertia matrix, the Coriolis and centripetal matrix is made up of two components; the Coriolis and centripetal terms due to the rigid body, C RB (ν), and the terms relating to the added mass effect, C A (ν) [8]. C( ) C RB ( ) C A ( ) (23) Here C RB (ν) can be represented as shown in equation (24), assuming that the origin of the body fixed reference frame coincides with the centre of gravity. (24) The actual effects of the added mass terms shown previously in equations (23) and (19) and the calculation of the appropriate terms are covered in the next section. G. Hydrodynamic Added Mass Terms The added mass is a representation of the pressure induced forces and moments due to a forced harmonic motion of the body that are proportional to the acceleration of the body. This phenomenon manifests itself mathematically within the mass and Coriolis matrices. The standard added inertia matrix M A containing the added mass derivatives is shown as [8]: (25) In order to simplify the model, assumptions can be made that simplify the matrix shown in equation (25). The two assumptions made are that firstly the motion of an underwater vehicle is usually low speed, non-linear and non-coupled and secondly that there are certain symmetries within the hull Fig. 3. Prolate Ellipsoid with semi-axes a, b and c. (26) These assumptions also lead to the added mass terms for the Coriolis and centripetal terms being simplified as shown in equation (27). (27) Using a prolate ellipsoid as the shape for the hull the model only has to consider six added mass derivative terms which can be calculated as shown in equations (28) to (32) [8]. Here e is the eccentricity and 0 and 0 are constants. (28) (29) (30) (31) (32) H. Restoring Forces and Moments The restoring forces and moments are the terms which take into account the gravitational and buoyancy forces. Two important parameters in calculating these forces and moments for underwater vehicles are the distance between the origin of the body-fixed reference frame, the centre of gravity (COG) and the centre of buoyancy (COB) of the vehicle. In many underwater vehicle models for simplicity the vehicle is assumed to be neutrally buoyant. The complete vector of restoring forces and moments due to gravitational and buoyancy terms are shown in equation (33) [8]. (33) 113

Where W=mg and B=ρgV are the robot weight and buoyancy forces respectively, V is the robot volume. One important aspect to consider in all marine vehicle design is the stability in roll. It is possible with correct positioning of the COG and COB to create a roll restoring moment which acts when the vehicle is subject an angular roll displacement taking it away from its upright position. For the robotic fish it is assumed that the COB is higher than the COG on the z-axis, but has equal x and y-axis terms. This produces moments which act to bring the robotic fish back to its equilibrium after the removal of any external forces as illustrated in fig. 4 [10]. drag coefficient for simple streamlined ellipsoidal bodies at sub-critical Reynolds Numbers [12], (36) Where a is radius of ellipsoid along x-axis and b is the radius of ellipsoid along y-z plane. J. Propulsion System Modelling The purpose of modelling the propulsion system is to allow for estimation of the control forces and moments (i.e. thrust and manoeuvring forces) to be made using the input commands to the system. These approximations of thrust are then feed into the dynamic section of the model. For modelling purposes, the propulsive system has been subdivided into three sections as shown in fig. 5. Fig. 4. Restoring forces for roll around x-axis (a) when upright i.e. no roll angular displacement and (b) with angular roll displacement, with COB and COG differ on z-axis. Many conventional underwater vehicles utilize this approach for passive roll control as no actuators are required. Although the aim of this project is to mimic a fish as accurately as possible, making the vehicle statically unstable would create a number of difficult problems with the design and control of the vehicle. Therefore, it has been decided to choose for simplicity and make the COG below the COB. The gravitational and buoyancy vector used for the simulation of the robotic fish vehicle is given in equation (34). (34) I. Hydrodynamic Damping Terms One force that acts on any vehicle operating in the underwater environment is hydrodynamic damping or drag. Damping is approximated using the standard equation for drag shown in equation (35) [11]. (35) Where ρ is the density of fluid (kgm -3 ), C D is the drag coefficient, A is the cross-sectional area (m 2 ) and U is the velocity of the vehicle (ms -1 ). This equation is used to calculate the drag force acting in surge, sway and heave and also used to estimate the rotational drag terms in roll, pitch and yaw. The equation for drag requires the drag coefficient C D to be known in each degree of freedom. As the body of the robotic fish is not just a prolate ellipsoid but an ellipsoid with fins, the drag due to these fins has to be taken into account when calculating the overall drag coefficient in each DOF. Firstly, for the main body in surge, sway and yaw directions the drag force can be estimated using the equation (36) for the Servo Angle and Frequency Servo Motor Model Servo Arm Displacement Tail Kinematics Lateral Displacement and Fin Angle Thrust Estimation Fig. 5. Flowchart of Tail Drive Propulsion System Model The input to the model is the desired tail beat frequency and amplitude which is passed to the servo motor model as servo frequency and arm angle. The output of each servo motor is the displacement of the servo's arm. These arms displacements are fed into the tail kinematics which rotates the tail links at specified angular positions at each joint in the tail. Knowing the angular position at each joint allows the caudal fin tip displacement to be calculated along with the angle the caudal fin makes with the tail centre line. With these caudal fin parameters known over time it is possible to estimate the thrust produced. From the literature surveyed there appears to be two main methods for estimating this thrust force: Vortex theory [13] and Elongated Body theory and its derivatives [14]. Both methods have their advantages and disadvantages. The vortex method estimates the thrust produced by analysing the vortices left in the wake as the fish swims. At present there does not appear to be a simple method of predicting the formation of the vortices and vortex parameters from the movements of the fish without the use of complex computational fluid dynamics methods, or direct observation and measurement of the vortices produced while swimming [15]. The other method that can be used to estimate the thrust produced by fish like propulsion is Lighthill s Large Amplitude Elongated Body Theory [14]. The idea behind this theory is the transfer of momentum between fish and water and assumes that the majority of this transfer happens at the caudal fin [15]. In this method both heave and pitch are assumed to be sinusoidal functions [16] and from observations of real fish and simulations the heave and pitch are approximately 90 o out of phase from one another. The equation used for the thrust estimate is given in equation (37). (37) 114

Where F Thrust is the surge thrust force (N), m v is the virtual mass per unit length (kg), w is the perpendicular velocity of tail (ms -1 ) and W is the lateral velocity of the tail tip (ms -1 ). K. Current Effects Control of robotic fish cannot neglect the effects of specific disturbances such as waves, wind and ocean current. In this paper wind and waves phenomena will not be discussed since the attention is focused to autonomous robotic fish performing a motion or manipulation task in an underwater environment. However, if this task has to be achieved in very shallow waters, those effects cannot be neglected. The effect of a small current has to be considered also in structured environments such as a pool. In this case, the refresh of the water is strong enough to affect the vehicle dynamics [17]. The ocean current, expressed in the inertial frame, was assumed constant and irrotational, i.e., (a) (c) (b) (d) (38) and ; its effects can be added to the dynamic of a rigid body moving in a fluid simply considering the relative velocity in body-fixed frame [9]; (39) in the derivation of the Coriolis and centripetal terms and the damping terms. III. VIRTUAL ROBOTIC FISH MATLAB SIMULATION Fig. 6 shows the GUI of a Matlab program that simulates a 3D swimming of the virtual robotic fish. The program enables the user to adjust the length of each tail link in addition to adjusting the body and nose lengths to simulate any fish species type. It is clear from the figure the simulated robotic fish has four links, with a virtual servo at each joint. The vertical dashed blue lines represent the positions of these servos. The user can set the amplitude and frequency of swimming and then by pressing the animate button the simulation starts. (e) Fig. 7. The animation frames of virtual robotic fish swimming at tail frequency of 1Hz and undulation angle of 42º. Fig. 8 shows a 3D Matlab simulation of a virtual robotic fish. The swimming is started with undulation frequency of 1 Hz and undulation angle of 42º. The simulation here was conducted at zero ocean current velocity. Fig. 8. The fish swimming simulation in Matlab for virtual robotic fish at tail frequency of 1Hz and undulation angle of 42º with zero ocean current velocity. Fig. 9 below represent the same simulation as above in fig. 8 but with 0.3m/s ocean current velocity toward y-axis as given in equation (40); m/s (40) It is clear from fig. 9 that the fish was drifted toward the positive y-axis due to the current in that direction. Fig. 6. Simulation of virtual robotic fish with Matlab. Fig. 7 shows the top view animation of fish swimming at tail frequency of 1Hz and undulation angle (the angle between the body center line and the tail tip maximum amplitude) of 42 º, the figure shows five selected frames of this motion. Fig. 9. The fish swimming simulation in Matlab for virtual robotic fish at tail frequency of 1Hz and undulation angle of 42º with 0.3m/s ocean current velocity toward positive y-axis direction. 115

IV. SIMULATION RESULTS The virtual robotic fish models are converted into state space form and simulated in the MATLAB environment. The robotic fish models have been evaluated through a number of simulations; trajectory test, forward propulsion, turning circle and zig-zag maneuver. A. Trajectory Test In order to demonstrate the effects discussed in this paper, the simplest task to be considered is one involving successive changes of the fish orientation in presence of ocean current. The simulation length (450s) can be divided in different period of 60s duration. The simulation was started firstly by putting the fish in water at the position, p(t = 0) = [0 0 1 0 0 0] T [m/deg] without knowledge of the current but with an estimation of the restoring parameters. The first 60s are used to adapt the effect of the current, see fig 14, where the desired position is constant. In the successive period the fish is required to move in roll and pitch from 0 deg to 10 deg and - 15 deg, respectively and come back to the original configuration and then reverse the roll and pitch angles and then return back to the original configuration. In the successive two periods the vehicle is required to move of 90 deg in yaw and come back to the initial position. Finally, 60s of steady state are given. The desired and actual orientations are shown in fig. 15. Figures 16 and 17, shows the linear and angular velocities of the fish during the simulation period. It is clear from fig. 16 the effect of the water current that drift the fish in the positive y-axis direction. This current effect was balanced by the fish swimming velocity in the reverse direction. Figures 18 and 19, shows the position and attitude angles errors. The position error, in fig. 18, was minimized to zero especially in the y-axis direction where the effect of the water current is exists. Fig. 17. Fish angular velocities as a function of time. Fig. 18. Fish position errors as a function of time. Fig. 19.. Fish attitude errors in term of Euler angles as a function of time. Fig. 20. Fish forces along x, y and z body axes as a function of time. Fig. 21. Fish moments around x, y and z body axes as a function of time. Fig. 14. Fish position as a function of time. The desired position is constant. B. Forward Propulsion Shown in fig. 22 is the simulation result for forward propulsion at the average speed for carp fish which is 0.35 m/s. This is accomplished at a tail beat frequency of 1Hz and undulation angle of 42º. Fig. 15. Fish attitude in term of Euler angles as a function of time. Fig. 16. Fish linear velocity as a function of time. Fig. 22. Simulated average surge velocity for robotic fish. 116

C. Turning Circle Shown in fig. 23 is the top view for x-y plan of simulated turning circle for a virtual robotic fish. The fish trajectory was started at point (x=0, y=0, z=-1). Fig. 23. Simulated turning circle for robotic fish. Fig. 24 shows how the yawing moment acts to turn the robotic fish to achieve the turning in a circle and in a zig-zag maneuver. Fig. 24. The yawing moment acts to turn the robotic fish to achieve the zigzag maneuver. D. Zig-Zag Manoeuver Shown in fig. 25 is the simulated response to a zig-zag maneuver. The zig-zag maneuver is generated by setting the tail centerline undulation angle to its maximum value until a yaw angle of 20 degrees is reached. Once 20 degree yaw angle is reached the tail centerline undulation angle is reversed to its maximum value until a -20 degree yaw angle is reached. Fig. 25. 20º - 20º Zig-Zag maneuver for virtual robotic fish. V. CONCLUSION This paper has presented a mathematical model of a biomimetic virtual robotic fish which utilizes a four links plus tail fin as a propulsion system. Development of the model is described. The development of the models provides a framework that allows for different types of actuation schemes for biomimetic propulsion systems to be evaluated. Simulation of turning circle and of zig-zag maneuver indicate that the propulsive system may provide improved maneuverability with a smaller steady turning radius and less overshoot during course changes. For these reasons and the other potential benefits of biomimetic propulsion systems discussed earlier, use of a fish-like propulsion system may be preferred in certain applications. The development of these detailed mathematical models provides a framework for evaluating the performance of different types of actuation systems for biomimetic propulsion systems. The Matlab simulation environment was designed and used to simulate any fish type species as it provides the ability to adjust the fish dimensions to get any fish body shape. REFERENCES [1] S. Asgeirsson, Motion Analysis of Arctic char and Atlantic salmon, M. Sc. thesis, Faculty of Mechanical Engineering, School of Engineering and Natural Sciences, University of Iceland, pp 19-26, 2013. [2] M. J. LIGHTHILL, Aquatic animal propulsion of high hydromechanical efficiency, J. Fluid Mech., vol. 44, part 2, pp. 265-301, 1970. [3] M. Sfakiotakis et al., Review of fish swimming modes for aquatic locomotion, IEEE Journal of Oceanic Engineering, vol. 24, no. 2, pp. 237-252, April 1999. [4] J.E. Colgate and K.M. Lynch, Control problems solved by a fish s body and brain: a review, in IEEE Journal of Ocean Engineering, vol. 29, no. 3, pp. 660-673, July 2004. [5] W. S. Hoar, Fish Physiology; Locomotion, ACADEMIC PRESS, INC., Volume VII, pp. 8-46, 1978. [6] S. Kamadulski, Optimization of Biomimetic Propulsion in a Fish Like Robot, M. Sc. Thesis, University of Illinois, pp. 2-5, 2012. [7] T.I. Fossen, Marine Control Systems, Marine Cybernetics, pp. 9-77, 2002. [8] T.I. Fossen, Guidance and Control of Ocean Vehicles, John Wiley & Sons Ltd, pp. 5-47, 1994. [9] G. Antonelli, Underwater Robots; Motion and Force Control of Vehicle-Manipulator Systems, Second edition, Springer, pp. 15-32, 2006. [10] C. M. Watts, Comparison Study of Biologically Inspired Propulsion Systems for an Autonomous Underwater Vehicle, PhD thesis, University of Glasgow, pp. 28-63, 2009. [11] K. H. Low, C. W. Chong, Chunlin Zhou, and Gerald G. L. Seet, An Improved Semi-Empirical Model for a Body and/or Caudal Fin (BCF) Fish Robot, IEEE International Conference on Robotics and Automation, pp. 78-83, 2010. [12] A. Tonello, Control and Guidance Systems for the Navigation of a Biomimetic Autonomous Underwater Vehicle, M. Sc. Thesis, Padova University, pp. 35-36, 2011. [13] K. Streitlien, and G. S. Triantafyllou, On Thrust Estimates for Flapping Foils, Journal of Fluids and Structures, Vol. 12, pp. 47-55, 1998. [14] M. J. Lighthill, Large-amplitude elongated-body theory of fish locomotion, Proceedings of the Royal Society of London, Vol. 179, pp. 125-138, 1971. [15] J. J. Videler, Fish Swimming: Fish and Fisheries Series 10, London, Chapman & Hall, pp. 8-24, 1993. [16] M. S. Triantafyllou, A.H. Techet and F. S. Hover, Review of Experimental Work in Biomimetic Foils, IEEE Journal of Oceanic Engineering, Vol. 29 (3), pp. 585-594, 2004. [17] G. Antonelli, S. Chiaverini, N. Sarkar and M. West, Singularity-free Adaptive Control for Underwater Vehicles in 6 DOF, Experimental Results on ODIN. In: IEEE International Symposium on Computational Intelligence in Robotics and Automation, Monterey, California, pp. 64 69, 1999. 117