Dynamic modeling of a robotic fish propelled by a compliant tail

Vladislav Kopman, Jeffrey Laut, Francesco Acquaviva, Alessandro Rizzo, Maurizio Porfiri

Research output: Contribution to journalArticlepeer-review


In this paper, a dynamic model for a robotic fish propelled by a tail with a flexible fin is presented. The robotic fish is composed of two links connected by an actuated joint; the frontal link is rigid and acts as the robotic fish body, while the rear link serves as the tail. The latter comprises a rigid element connected to a flexible caudal fin, whose underwater vibration is responsible for propulsion. The dynamics of the frontal link are described using Kirchhoff's equations of motion for rigid bodies in quiescent fluids. The tail vibration is modeled using Euler-Bernoulli beam theory and the effect of the encompassing fluid is described using the Morison equation. The thrust production is assessed from static thrust data in terms of the fin-tip displacement; other salient model parameters are estimated through a nonlinear least squares technique. The model is validated against experimental data on circular and S-shaped trajectories. The model can be used for simulation, prediction, design optimization, and control, as it allows for the description of the robot's motion as a function of the unique input of the system, that is, the servomotor angle. Within the latter application, a heading control algorithm, in which the controller is tuned on the basis of the dynamic model, is presented.

Original languageEnglish (US)
Article number6746185
Pages (from-to)209-221
Number of pages13
JournalIEEE Journal of Oceanic Engineering
Issue number1
StatePublished - Jan 1 2015


  • Biomimetics
  • dynamics
  • marine robotics
  • robotic fish
  • vibrations

ASJC Scopus subject areas

  • Ocean Engineering
  • Mechanical Engineering
  • Electrical and Electronic Engineering


Dive into the research topics of 'Dynamic modeling of a robotic fish propelled by a compliant tail'. Together they form a unique fingerprint.

Cite this