Brought to you by:
Paper

Distributed flow sensing for closed-loop speed control of a flexible fish robot

, , , and

Published 23 October 2015 © 2015 IOP Publishing Ltd
, , Citation Feitian Zhang et al 2015 Bioinspir. Biomim. 10 065001 DOI 10.1088/1748-3190/10/6/065001

1748-3190/10/6/065001

Abstract

Flexibility plays an important role in fish behavior by enabling high maneuverability for predator avoidance and swimming in turbulent flow. This paper presents a novel flexible fish robot equipped with distributed pressure sensors for flow sensing. The body of the robot is molded from soft, hyperelastic material, which provides flexibility. Its Joukowski-foil shape is conducive to modeling the fluid analytically. A quasi-steady potential-flow model is adopted for real-time flow estimation, whereas a discrete-time vortex-shedding flow model is used for higher-fidelity simulation. The dynamics for the flexible fish robot yield a reduced model for one-dimensional swimming. A recursive Bayesian filter assimilates pressure measurements to estimate flow speed, angle of attack, and foil camber. The closed-loop speed-control strategy combines an inverse-mapping feedforward controller based on an average model derived for periodic actuation of angle-of-attack and a proportional-integral feedback controller utilizing the estimated flow information. Simulation and experimental results are presented to show the effectiveness of the estimation and control strategy. The paper provides a systematic approach to distributed flow sensing for closed-loop speed control of a flexible fish robot by regulating the flapping amplitude.

Export citation and abstract BibTeX RIS

1. Introduction

Fish attract scientific curiosity for their graceful locomotion, maneuverability, and energy efficiency [1]. Research shows that there are many performance advantages of fish locomotion that traditional underwater robots lack, such as turning sharply with a small radius, harvesting energy through collective behavior, and swimming without disturbing the environment [2]. Inspired by nature, scientists and engineers have made great efforts in designing and developing fish robots [3, 4] that mimic real fish in order to improve the performance of underwater vehicles. Besides helping to answer the fundamental scientific questions about how fish interact with water, bio-inspired fish robots have many other potential applications, such as aquatic environmental monitoring, reconnaissance and surveillance, search and rescue, and public exposure to science and technology.

Fish robots are typically designed in two segments. The front segment holds the electronic components, including a battery, a micro-controller, navigational sensors, etc, whereas the back segment serves as the fish tail, usually flapped by a servo motor to provide thrust [58]. Other designs of fish robots, especially suited for thrust generation, involve the use of pumps that change the net buoyancy of the fish [9], pneumatic and hydraulic actuators to generate the tail-flapping motion [10], and smart-material actuators, such as ionic polymer metal composites and shape memory alloys, which bend when supplied with electrical current [11, 12].

Although the multi-segment design is able to realize fish-like swimming motion by flapping the tail segment, the maneuverability achieved is still far less than real fish. Flexibility plays an important role in fish behavior by enabling high maneuverability for predator avoidance and swimming in turbulent flow [13]. This work describes a novel flexible fish robot that deforms in a continuous way when flapped. The flexibility of the body is achieved by the property of the material of the robot, rather than the rotational links between rigid parts. Silicone rubber material is molded into a Joukowski foil [14, 15] shape conducive to modeling the fluid dynamics.

Flow sensing via the lateral line is important for fish to navigate in unknown, murky, and cluttered environments [16]. The lateral line is a flow-sensing organ comprised of distributed neuromasts located superficially on and under the skin, which fish use to detect movement and vibration in the surrounding water [17]. The recent development of artificial lateral-line systems shows promise for the application of flow sensing and control to underwater robots [1826].

Time and frequency domain methods have been successfully applied to characterize uniform flow and Karman vortex streets for rigid fish-like robots with artificial lateral-line systems [1821]. However, the robots used previously are typically either stationary or towed in water, rather than self-propelled. One exception is [22], which describes a self-propelled fish robot and demonstrated satisfactory flow-relative station-holding using flow sensing; an empirical model based on experimental data, which relates the pressure measurements to the flow parameters (relative speed and angle of attack), is used for flow estimation. A CFD-based flow model accurately estimates the flow field [23], but is not used in real-time closed-loop control due to the computational complexity. The work presented below uses an analytical flow model for a cambered Joukowski foil and estimates the flow field of a self-propelled flexible fish robot using an artificial lateral-line system comprised of distributed pressure sensors. The measurements consists of pairwise pressure differences between pressure sensors, analogous to canal measurements in the lateral line [17].

This paper briefly reviews two flow models for a cambered Joukowski foil: a quasi-steady potential-flow model and an unsteady vortex-shedding model (see [2734]). Whereas existing literature describes a Joukowski foil rotating about the origin of the foil-plane, this paper extends the results to the flow past a cambered Joukowski foil rotating about an arbitrary center of rotation. The quasi-steady potential-flow model is adopted for flow estimation due to its tractability, whereas the higher-fidelity vortex-shedding model is used in simulation to generate the flow field as ground truth for testing the flow estimation and closed-loop control algorithm. The deformation of the robot body is modeled using a time-varying parameter (the camber ratio) to develop a dynamic model for the flexible fish robot.

We propose a comprehensive strategy for flow sensing and closed-loop control of a flexible, Joukowski-shaped fish robot. For estimation of angle-of-attack, flow speed, and camber ratio, a recursive Bayesian filter assimilates spatially distributed pressure-sensor measurements. A feedforward inverse-mapping controller hastens convergence to the desired average swimming speed, and a feedback proportional-integral (PI) controller reduces the steady-state error between the estimated and actual swimming speed. A testbed consisting of a flow tank, gantry system, and air-bearing linear guide demonstrates one-dimensional swimming control. The experimental results show the effectiveness of the closed-loop control and flow-sensing algorithm.

The contributions of this paper are (1) a flow-estimation algorithm for a flapping, flexible fish robot using distributed pressure measurements; (2) the derivation of a dynamic model for a free-swimming flexible fish robot, including vortex-shedding for flow-field generation and flapping motion with hydrodynamic and thrust forces; (3) a closed-loop control strategy for swimming-speed regulation using a feedforward controller based on an averaged model combined with a feedback controller that utilizes the estimated flow; and (4) the experimental setup and implementation of speed control of a flapping fish robot with distributed flow sensing. These contributions help to understand and build novel, soft underwater robots that maneuver and navigate with flow sensing capability.

The remainder of the paper is organized as follows. Section 2 describes the flow model for a Joukowski-shaped flexible fish robot, including the quasi-steady potential-flow model (section 2.1) and the vortex-shedding model (section 2.2). Section 3.1 presents the dynamic motion model of the fish robot with hydrodynamic and thrust forces. Section 3.2 derives an average model for the swimming robot with periodic actuation. Section 4 proposes the speed-control swimming strategy. Section 5 presents the Bayesian estimation algorithm for flow sensing with distributed pressure measurements. Section 6 presents simulation results for open-loop flow sensing and closed-loop speed control. Section 7.1 introduces the design and fabrication of the fish robot and the experimental testbed. Sections 7.2 and 7.3 present the experimental results for open-loop flow estimation and closed-loop speed control, respectively. Section 8 provides concluding remarks.

2. Flow model for a Joukowski-shaped flexible fish robot

This paper adopts the shape of a Joukowski foil for the design of the fish robot in order to utilize potential-flow theory to model the surrounding flow field. In fluid dynamics, potential-flow theory [27, 28] describes the velocity field as the gradient of a scalar function, the velocity potential, which is applicable to incompressible, irrotational flow. This section describes the two-dimensional flow past a cambered Joukowski foil, first using the quasi-steady potential-flow method and then using the unsteady vortex-shedding method.

2.1. Quasi-steady potential-flow model

The fish robot modeled as a Joukowski foil takes the shape of the output of the Joukowski transformation of a circle. The Joukowski transformation, which is essentially a conformal mapping, is expressed as [14]

Equation (1)

where the set of points ξ is prescribed to be a circle with radius R centered at ξ0 in the complex ξ-plane. The x coordinate of the intersection of the circle and the xξ-axis is the Joukowski transformation parameter a, which is approximately one quarter of the chord length l of the foil. The image of the mapping in the z0-plane defines the boundary of the fish robot (figure 1). The origin of the z0-plane is O0. The x0-axis points along the chord line from the leading edge to the trailing edge.

Figure 1.

Figure 1. Illustration of reference frames I and O. TE denotes the trailing edge and LE the leading edge.

Standard image High-resolution image

Define the body-fixed reference frame (the z-plane) by translating the z0-plane from point O0 to the point O, about which the fish robot flaps or rotates. The center of rotation for the flapping motion is chosen to be the one-quarter point along the camber line, as measured from the leading edge. Let z0O be the coordinate of point O in the z0-plane. The transformation from the ξ-plane to the z-plane is

Equation (2)

A two-dimensional fluid with velocity Uf flows past the foil-shaped fish robot. The inertial frame I is defined so that the incoming flow velocity Uf is aligned with the xI-axis. The flow velocity relative to the body is denoted U. The angle between the x-axis and the direction of the relative velocity U is the angle of attack α, with the nose pitching up chosen to be the positive direction (figure 1).

Assume that the circle radius R and the area of the Joukowski foil are constant during the flapping motion, even when the shape changes. (This assumption is based on the incompressibility of the foil material.) The area of the Joukowski foil [33] is

Equation (3)

Parameter k describes the instantaneous shape of the fish robot, i.e.

Equation (4)

Along with the constant R, the shape of the fish robot is determined by the placement of the circle center ${\xi }_{0}={x}_{{\xi }_{0}}+{\rm{i}}{y}_{{\xi }_{0}},$ as described next.

In the foil plane, there are two shape parameters for the Joukowski foil: the camber ratio H and the thickness ratio T [14]. Intuitively, the camber ratio describes how much the foil bends. Under the assumption that $| {\xi }_{0}| \ll a,$ which is normally true for a moderately cambered Joukowski foil, H and T are linearly dependent on the vertical and horizontal displacement of the center of the circle, ${x}_{{\xi }_{0}}$ and ${y}_{{\xi }_{0}},$ respectively, i.e.

Equation (5)

Equation (6)

Assume that the flexible fish robot changes its shape while maintaining a cambered Joukowski foil profile, meaning that each state of the deformation corresponds to a Joukowski foil shape with a varying camber ratio H. The camber ratio captures the degree of bending during the deformation. Meanwhile, given a camber ratio H that corresponds to the swimming state of the fish robot, the shape parameters in the ξ-plane, ${y}_{{\xi }_{0}},{x}_{{\xi }_{0}},$ and a, are functions of R, H and k.

According to potential-flow theory [14, 15], the flow in the complex circle plane (ξ-plane) generates the flow in the corresponding foil plane (z-plane), according to a conformal map. In an inviscid, incompressible, and irrotational fluid, the quasi-steady complex potential of the flow in the ξ-plane is a function of the relative flow speed U, the angle of attack α, the radius R, and the center ξ0. The complex potential [14]

Equation (7)

represents the sum of three elementary flow fields: a uniform flow, a doublet, and a point vortex located at the center of the circle. The vortex circulation Γ is evaluated by enforcing the Kutta condition [14], which requires the trailing edge to be a stagnation point. The vortex circulation is [14]

Equation (8)

Here $\beta =\mathrm{arcsin}({x}_{{\xi }_{0}}/R)\approx 2H$ is the phase angle of the center point ξ0. Under the assumption that $| {\xi }_{0}| \ll a,\beta $ is approximated by 2H, which leads to

Equation (9)

The conjugate flow velocity $\bar{f(z)}=u-{\rm{i}}v$ in the z-plane (the overline notation $\bar{\cdot }$ denotes the conjugate operator) is calculated using the complex potential in the ξ-plane and the Joukowski transform function, which yields

Equation (10)

where ξ is obtained using the inverse Joukowski transform

Equation (11)

(The root outside the ξ-plane circle is used.) With the quasi-steady potential-flow model and the shape-parameter relationship in the Joukowski transformation, the flow field around the fish robot foil can be calculated given any parameter set (U, α, H).

2.2. Vortex-shedding flow model

The quasi-steady potential-flow model (10) does not describe the unsteady or transient effects caused by the flapping motion of a flexible fish robot. This subsection presents a second flow model used for simulation, which features discrete-time vortex shedding. In this model, a vortex is shed into the flow from the trailing edge of the foil at every discrete time step. The shed vortices convect with the flow according to the local fluid velocity. The net circulation around the robot body contributes to drag, which is not predicted by the quasi-steady potential-flow theory. The accuracy of the vortex-shedding method has been investigated and validated [3335]. However, the system complexity increases with time and grows too fast for real-time use. We instead use the vortex-shedding method for simulating the flow field to test the effectiveness of the quasi-steady potential-flow model for flow-parameter estimation.

Let Ω be the angular velocity of the fish robot with counter-clockwise rotation about the pivot point O chosen to be the positive direction ($\dot{\alpha }=-{\rm{\Omega }}$). In the vortex-shedding model, the complex flow potential with respect to the ξ-plane is

Equation (12)

The corresponding (unit) complex potential is denoted by WΩ. Γ0 represents the vortex circulation at the center of the circle and Γk represents the circulation of the kth vortex located at position ξk. The complex potential is

Equation (13)

The complex velocity in the z-plane using the vortex-shedding method is

Equation (14)

Equation (14) describes the entire flow field except at the vortex locations, which are singular points and thus the flow is undefined. Using Routh's rule [36, 37], the kth vortex conjugate velocity $\bar{f({z}_{k})}={u}_{{z}_{k}}-{\rm{i}}{v}_{{z}_{k}}$ is

Equation (15)

The circulation strength Γk of the vortex shed into the flow at the point ξk is evaluated by enforcing the Kutta condition at the trailing edge.

The position of the shed vortex zk may be modeled using one of several existing approaches. This paper adopts the '1/3 arc-length' method introduced by Streitlien and Triantafyllou [38], which places the shed vortex at the one-third point of the arc tangent to the camber line at the trailing edge and passing through the previous vortex point: i.e.

Equation (16)

Here the trailing-edge coordinate is ${z}_{{\rm{TE}}}=2a-{z}_{O}^{0}$ and θ is the arc angle satisfying

Equation (17)

where $\beta =\mathrm{arcsin}({y}_{{\xi }_{0}}/R)$ as before.

When the fish robot rotates about the point O, the z-reference frame also rotates with it, while the shed vortices move as predicted by Routh's rule in the inertial frame. Therefore, the vortex coordinates with respect to the z-plane are

Equation (18)

where zk(N) is the kth vortex coordinate in the z-plane at the Nth time step, T is the time step, and Δα is the change in the angle of attack from the Nth time step to the (N + 1)th time step.

3. Dynamic model of a flexible fish robot

This section presents a dynamic model of a flexible fish robot with hydrodynamic and thrust forces. The averaged dynamic model with periodic actuation input is used to calculate the feedforward control input in section 4.

3.1. Dynamic model

Let ${\boldsymbol{\Pi }}={\bf{J}}\omega $ and ${\bf{P}}={\bf{Mv}}$ denote the total angular and linear momenta of the robot-fluid system, respectively, where ω is the angular velocity of the body-fixed frame with respect to the inertial frame expressed in the body-fixed frame, ${\bf{v}}$ is the corresponding translational velocity, ${\bf{J}}$ is the inertia matrix, and ${\bf{M}}$ is the mass matrix. Both ${\bf{J}}$ and ${\bf{M}}$ include the added-mass effect that describes the additional effect (force) resulting from water acting on the fish robot during acceleration or deceleration. Assume the off-diagonal terms in the inertial matrix are negligible and the added mass and added inertia do not vary significantly during the flapping motion. The dynamics of the fish robot are governed by Kirchhoff's equations [28, 39, 40], i.e.

Equation (19)

Equation (20)

where ${\bf{T}}$ is the external moment vector and ${\bf{F}}$ is the external force vector.

For the planar motion of the fish robot, which is the focus of this paper, we have

Here J is the sum of the inertia of the robot and the added inertia in the pitching direction, and m1 and m2 are the sum of the mass of the robot and the added mass in the surge and sway directions, respectively. Figure 2 illustrates the hydrodynamic pitching torque Tp; the thrust force Ft, generated by the flapping motion of the foil with the −x-axis direction as positive; the drag force Fd, in the opposite direction of the motion of the robot relative to the fluid; and the lift force Fl, perpendicular to the relative-flow direction.

Figure 2.

Figure 2. Schematic of hydrodynamic forces and moments.

Standard image High-resolution image

The dynamics for planar motion in first-order form are

Equation (21)

Equation (22)

Equation (23)

The hydrodynamic forces and moment are modeled following aerospace engineering conventions [41, 42], i.e.

Equation (24)

Equation (25)

Equation (26)

where ${C}_{{\rm{p}}},{C}_{{\rm{d}}}^{0},{C}_{{\rm{d}}},$ and Cl are hydrodynamic coefficients that can be identified using flow tunnel experiments, and Kp is the pitch damping coefficient.

In this paper, the angle of attack is the control input. Selecting a sinusoidal waveform for the control profile implies

Equation (27)

where ϕctrl is the phase angle of the angle of attack, and A and f represent the amplitude and frequency of the periodic control input αctrl, respectively. The thrust force generated by the periodic actuation (27) is approximated as [6]

Equation (28)

where ${\bar{F}}_{{\rm{t}}}$ and ${\hat{F}}_{{\rm{t}}}$ are the mean and maximum thrust force in one flapping period, respectively. The mean and maximum thrust force depend on the product of the amplitude and frequency of the flapping motion [6], i.e.

Equation (29)

Equation (30)

The parameters k1, k2, k3, and k4 are identified by force-sensing experiments (and typically k2 and k4 are approximately equal to 2 [6]).

Define V as the speed of the fish robot with respect to the inertial frame, with the −xI-axis direction as positive. The inertial flow speed along the xI-axis is Uf. Therefore, the relative speed of the flow with respect to the robot is U = Uf + V. We also have ${v}_{1}=-V\mathrm{cos}\alpha $ and ${v}_{2}=-V\mathrm{sin}\alpha .$

This paper focuses on one-dimensional swimming. The robot moves along the xI-axis and the angle of attack is directly controlled, so the dynamics become

Equation (31)

Modeling camber dynamics is a challenging fluid-structure-interaction problem that may involve continuum mechanics and boundary-value partial differential equations. However, a tractable model captures the camber motion sufficiently well for the purpose of real-time control. The camber kinematics are a linear function of the second derivative of the angle of attack with respect to time, i.e.

Equation (32)

where Kh is the camber-dynamics coefficient.

3.2. Average model for a fish robot with periodic control input

The fish robot dynamics with sinusoidal actuation input is inspired by the flapping motion of swimming fish. The swimming speed U oscillates in a periodic waveform. For one-dimensional swimming with the angle of attack as the control input, we apply the averaging method [43] to capture the averaged dynamics of the motion, which is later adopted in the feedforward controller design described in section 4.

Rewrite the system equation (31) with periodic control input (27) in the state-space form

Equation (33)

where u = [A, f]T represents the parameterized control variables. The dynamic equation (33) is periodic with time period T = 1/f, i.e.

Equation (34)

In order to understand the average effect of the oscillatory swimming motion, for example, to study the mean swimming speed, an averaging method is applied to obtain the average system [43]

Equation (35)

where

Equation (36)

To facilitate this calculation, assume that $\mathrm{sin}\alpha \approx \alpha $ and $\mathrm{cos}\alpha \approx 1,$ which is valid when α is sufficiently small. We also know that ${\int }_{0}^{T}\mathrm{sin}(4\pi f\tau ){\rm{d}}\tau =0$ and ${\int }_{0}^{T}\mathrm{cos}(4\pi f\tau ){\rm{d}}\tau =0.$ The average model (35) is expanded using (36) to obtain

Equation (37)

where

Equation (38)

The average model (37) requires the averaged system state $\frac{1}{T}{\int }_{0}^{T}U(\tau ){\rm{d}}\tau $ to change more slowly than the oscillating control input.

4. Speed control for one-dimensional swimming

Speed control is important for underwater robots to accomplish tasks such as station-holding and path following. This section presents a feedback strategy for speed control of a flexible fish robot in one-dimensional swimming. The design includes a feedforward controller based on the average model and a feedback PI controller to reduce the steady-state error.

The thrust generation of such a fish robot is highly dependent on the oscillatory Reynolds number [6]

Equation (39)

where l is the characteristic length of the fish robot and ν is the kinematic viscosity of water. Note the oscillatory Reynolds number Ref is proportional to the product of the flapping amplitude A and flapping frequency f. We elect to control the oscillatory Reynolds number, while keeping the flapping frequency constant, which means the amplitude A is treated as the control variable to influence the generated thrust force. This choice simplifies the controller design by reducing the actuation redundancy, while still providing desirable speed-control performance, as presented next.

Consider a closed-loop control strategy that includes a feedforward controller and a feedback controller, as shown in figure 3. Given the desired average speed Udes, the feedforward controller outputs the corresponding control input by solving an inverse mapping problem. Specifically, the control input A is obtained by solving the polynomial equation derived from the average model (37) with $\dot{U}=0,$ i.e.

Equation (40)

Figure 3.

Figure 3. Block diagram for the closed-loop control system, combining feedforward and feedback control.

Standard image High-resolution image

Since the feedforward controller does not compensate for the speed regulation error caused by unmodeled dynamics and external disturbances, we include a feedback controller to improve the system performance. A PI controller is adopted to demonstrate the proposed control strategy, i.e.

Equation (41)

where ΔA is the control variation of the angle-of-attack amplitude about the feedforward steady-state control value, ΔU = UdesU is the difference between the desired speed and the actual speed, and KP and KI are the proportional and integral gains, respectively. The feedback control term requires real-time sensing and estimation, as described next.

5. Flow estimation using Bayesian filter with distributed pressure sensors

Flow estimation for underwater robots is a challenging problem, especially for low-speed operations. This section describes a distributed flow-sensing algorithm using a Bayesian filter. The algorithm assimilates distributed pressure measurements to estimate the relative flow speed U for the purpose of closed-loop control. The Bayesian filter also estimates the angle of attack α and the camber ratio H for the flexible foil, unlike the previous paper [44], which only estimated relative flow speed and angle of attack for a rigid foil.

Consider a flexible fish robot equipped with Np pressure sensors located at positions ${z}_{{p}_{i}}$, i = 1, ..., Np. Each pressure sensor measures the local static pressure modeled by Bernoulli's equation for inviscid, incompressible flow along a streamline [15, 45]:

Equation (42)

where pi is the predicted static pressure at location ${z}_{{p}_{i}},\;f({z}_{{p}_{i}})$ is the local flow velocity, ρ is the water density, and C is a constant; $\phi =\left(W+\bar{W}\right)/2$ is the time-dependent velocity potential.

Similar to the lateral-line system in fish [16], the pressure differences between each sensor pair form the individual flow measurement of the fish robot. The flow measurement equation is [44, 46]

Equation (43)

There are Nm = (Np)!/2!/(Np − 2)! possible measurements in total, i.e. the combinatorial number of sensor pairs. We assume a quasi-steady flow for estimation purposes, meaning there is no unsteady effect, i.e.

Equation (44)

Define ${{\bf{z}}}_{{\rm{p}}}={[{z}_{1},\ldots ,{z}_{{N}_{{\rm{p}}}}]}^{T}$ and ${\rm{\Delta }}{\bf{p}}=[{\rm{\Delta }}{p}_{12},\ldots ,$ ${\rm{\Delta }}{p}_{1{N}_{{\rm{p}}}},{\rm{\Delta }}{p}_{23},\ldots ,$ ${\rm{\Delta }}{p}_{2{N}_{{\rm{p}}}},\ldots ,{\rm{\Delta }}{p}_{{N}_{{\rm{p}}}-1{N}_{{\rm{p}}}}{]}^{T}$ as the vectors representing sensor locations and flow measurements, respectively. Assuming the flow measurements of the fish robot Δp are corrupted with Gaussian noise, then the actual ith element of the measurement vector is

Equation (45)

where ηiN(0, σi2) is drawn from a zero-mean Gaussian distribution with variance σi. Here the Gaussian distribution of the flow measurement is based on the assumption that the pressure sensor output is corrupted with Gaussian noise and the fact that the summation of two Gaussian variables is also Gaussian.

Given the pressure-difference measurements, a flow model for the flapping fish robot is used to reconstruct the flow field. Although the vortex-shedding model (14) is a reliable model for describing the flow field, the discrete-time vortex addition is not suitable for real-time feedback control. A more tractable model is the quasi-steady potential-flow model (10). Let ${\boldsymbol{\Lambda }}={[U,\alpha ,H]}^{T}$ represent the flow parameter vector. The Bayesian filter estimates ${\boldsymbol{\Lambda }}$ based on distributed flow measurements.

The Bayesian filter, also known as recursive Bayesian estimation [47], is a general probabilistic approach for estimating an unknown probability density function (pdf) recursively over time using incoming measurements and a mathematical process model. In this work, the flow measurements ${\rm{\Delta }}\tilde{{\bf{p}}}$ are assimilated recursively at each step to infer the most likely parameter vector $\hat{{\boldsymbol{\Lambda }}}.$ The Bayesian formula for calculating the posterior probability of the flow parameters from the acquired measurements is [47]

Equation (46)

where $p({\rm{\Delta }}\tilde{{\bf{p}}}| {\boldsymbol{\Lambda }})$ is the likelihood function of the new measurements ${\rm{\Delta }}\tilde{{\bf{p}}}$ given the parameters ${\boldsymbol{\Lambda }},\;p({\boldsymbol{\Lambda }}(t)| {\bf{D}}(t))$ and $p({\boldsymbol{\Lambda }}(t)| {\bf{D}}(t-{\rm{\Delta }}t))$ are the posterior and prior pdf for time t, respectively, ${\bf{D}}(t)=\{{\rm{\Delta }}\tilde{{\bf{p}}}(t),{\rm{\Delta }}\tilde{{\bf{p}}}(t-{\rm{\Delta }}t),\ldots ,{\rm{\Delta }}\tilde{{\bf{p}}}(0)\}$ represents all pressure difference measurements up to time t, and κ is the coefficient that ensures the total probability of the posterior over the parameter space is equal to 1. This paper uses a grid-based Bayesian filter rather than a particle filter to discretize the parameter space.

The assumption of Gaussian noise in the flow measurements leads to a Gaussian likelihood function,

Equation (47)

where i = 1, ..., Nm is the index for the ith element of the pressure-difference vector ${\rm{\Delta }}\tilde{{\bf{p}}}.$

The prior pdf $p({\boldsymbol{\Lambda }}(t)| {\bf{D}}(t-{\rm{\Delta }}t))$ is generated from the posterior $p({\boldsymbol{\Lambda }}(t-{\rm{\Delta }}t)| {\bf{D}}(t-{\rm{\Delta }}t))$ calculated at time t − Δt; the initial condition of the prior probability $p({\boldsymbol{\Lambda }}(0)| {\bf{D}}(-{\rm{\Delta }}t))$ is a uniform distribution. The prior updated by the Chapman–Kolmogorov equation [48] is

Equation (48)

where $p\left({\boldsymbol{\Lambda }}(t)| {\boldsymbol{\Lambda }}(t-{\rm{\Delta }}t)\right)$ represents the time evolution of the pdf of the motion. This paper uses a normal distribution to model the probability density diffusion over time, i.e.

Equation (49)

where $g({\boldsymbol{\Lambda }})$ is the time-evolution function of estimation parameters governed by the dynamic model (31)–(32) and Σp is the process variance matrix.

6. Simulation of flow estimation and closed-loop control

Simulations are used to evaluate the distributed flow-sensing algorithm and the speed-control strategy. First is simulated flow estimation during a sinusoidal control input with constant amplitude. The simulated flow field is generated from the vortex-shedding model (14). The fish dynamics obey the motion model (31) and (32). Values for the coefficients of the hydrodynamic model were obtained experimentally using the setup described in section 7. Six pressure sensors are distributed on each side of the fish robot, which measures 20 cm in total, with a distance along the center line of 2.5, 7.5, and 10 cm from the leading edge. The inertial flow speed is set to 20 cm s−1. The flapping actuation frequency and amplitude in simulation are 0.75 Hz and 15°, respectively. The remaining parameters used in simulating the flexible fish robot are shown in table 1.

Table 1.  Model parameters used in simulation and experiments.

Parameter Value Parameter Value
m1 1.0 kg m2 1.5 kg
CD0 30 kg m−1 CD 100 kg m−1
CL 10 kg m−1 KH 0.1
k1 49.6 kg m k2 2
k3 87.6 kg m k4 2

Figure 4 shows snapshots of the flapping fish robot in a uniform flow field. A vortex is introduced at each time step to capture the unsteady effect of the flow. The Bayesian estimation results are shown in figure 5. The speed estimate is accurate, whereas the angle-of-attack estimate has a phase lead over the actual waveform. Also, the amplitude of the camber ratio is overestimated, perhaps from using a simplified flow model in the Bayesian estimation. However, the speed control uses the average of the relative flow speed over one period of flapping actuation and, based on the simulation results, the quasi-steady flow model used in the Bayesian filter provides a satisfactory estimate of the flow field.

Figure 4.

Figure 4. Snapshots of unidirectional swimming of the fish robot using the vortex-shedding method. (a) t = 0 s; (b) t = 0.2 s; (c) t = 0.4 s; (d) t = 0.6 s; (e) t = 0.8 s; (f) t = 1 s; (g) t = 2 s; (h) t = 3 s. V is the the swimming speed of the robot with respect to the inertial frame and Uf is the uniform flow speed with respect to the inertial frame.

Standard image High-resolution image
Figure 5.

Figure 5. Marginal probability densities for the states of the Bayesian filter in the flow-sensing simulation: (a) the relative flow speed U; (b) the angle of attack α; and (c) the camber ratio H.

Standard image High-resolution image

The speed-control strategy is also tested in simulation with the system parameters in table 1. The average estimated flow speed ${\int }_{0}^{T}\hat{U}{\rm{d}}t$ is fed back to the fish robot at the end of each flapping period. In the speed-control simulation, the control variable A (the flapping amplitude) is calculated using the control strategy described in section 4, which consists of a combined feedforward and feedback controller. The flapping frequency is set to 0.75 Hz. A step function of 20 cm s−1 is used as the speed reference command, as shown in figure 6. The feedforward-only and feedback-only simulations are conducted for the purpose of comparison. In order to test the robustness of the controller, 15% larger values of k1 and k3 were used in simulation than in the control calculation.

Figure 6.

Figure 6. Moving average of relative flow speed U for various control combinations. The averaging-window size is equal to one control period.

Standard image High-resolution image

Figure 6 shows the moving average of the relative speed U for the feedforward inverse-mapping controller, the feedback PI controller, and the combined feedforward–feedback controller. Observe that the speed regulation error for pure feedforward control is 1.5 cm s−1 (7.5%), whereas the feedforward–feedback control strategy leads to a tracking error of 0.2 cm s−1 (1%). On the other hand, the convergence speed of pure feedback control is slower than both the feedforward control and feedforward–feedback control. The feedback control reduces the tracking error, especially considering the modeling error and system disturbances, whereas the feedforward controller speeds up convergence. The satisfactory performance of the speed-control simulation further validates the effectiveness of the proposed control strategy and the flow-estimation algorithm.

7. Experimental results for flow estimation and closed-loop control

This section presents the experimental design and results for evaluating the flow-sensing and control algorithm for a flexible fish robot. We first discuss the fabrication of a flexible fish robot with distributed pressure sensors, and then introduce the design of the experimental testbed, which consists of a flow tank, a gantry system and an air-bearing linear guide for supporting one-dimensional swimming. The experimental results for open-loop flow sensing and closed-loop speed control are presented to demonstrate the effectiveness of the proposed estimation and control strategy.

7.1. Experimental setup

Silicone rubber (Ecoflex 00-30 from Smooth-On) is the flexible material chosen for the fish robot. This platinum-catalyzed type of silicone rubber is versatile and easy to use. Cured rubber is soft and strong with Shore 00-30 hardness, which rebounds to its original form without distortion after stretching. A mold of the fish robot was designed in SolidWorks, as shown in figures 7(a) and (b), and then the mold was manufactured using a high-precision 3D printer. The mixed silicone rubber compound is poured into the mold and then kept in a vacuum chamber during curing to avoid bubbles. For actuation of the angle of attack, a mini shaft from MakerBeam was inserted before the molding process at the one-quarter-point of the chord, behind the leading edge. For the pressure sensor ports, holes of radius 1 mm were placed on each side of the mold at a distance along the center line of 2.5, 7.5, and 10 cm behind the leading edge. We packaged six pressure sensors (Servoflo MS5401-BM) with appropriately sized tubing, and fixed the sensors to the center shaft. Each pressure sensor outputs analog voltage in proportion to the local pressure. The whole fish robot measures 20 cm long, 3.6 cm wide, and 12 cm tall as shown in figure 7(c).

Figure 7.

Figure 7. Illustration of the molding design for the fish robot: (a) mold interior; (b) mold assembly; and (c) the fish robot after molding.

Standard image High-resolution image

The experimental testbed for holding the fish robot and guiding the motion was designed to facilitate the flow-sensing and control experiment; a schematic is shown in figure 8. A double-rail linear guide is mounted to a 80/20 frame, which is placed over a Loligo flow tank. We used two linear motion air bearings (NEWWAY porous air bearing) to allow for low-friction horizontal motion. A gantry platform was mounted on those bearings to support the fish robot. Two load cell sensors (300 g measurement range) mounted vertically at equal distance from the center detect the force and torque in the surge and pitching directions, respectively. A dc servo (Savox 0235MG) sits between the two load cells. The servo arm is bolted to an L-shape MakerBeam rigidly attached to the fish to control the angle of attack. This setup was used for water-tunnel experiments to identify the hydrodynamic coefficients in table 1, and to investigate the thrust-force generation from the periodic flapping motion [6, 49]. When the air bearing is turned on, the fish robot moves freely along the guiding rail. The entire test platform is placed over a 185 L flow tank, which generates a uniform flow field within an enclosed test section that measures 25 × 25 × 87.5 cm, as shown in figure 9.

Figure 8.

Figure 8. Schematic of the testbed.

Standard image High-resolution image
Figure 9.

Figure 9. The experimental setup. (a) Side view; (b) front view.

Standard image High-resolution image

7.2. Open-loop flow-sensing experiments

This subsection presents results from testing the recursive Bayesian estimation algorithm during one-dimensional swimming. The fish robot is still for the first 5 s, and then flaps for 10 s. The angle-of-attack actuation signal is sinusoidal with a frequency of 0.75 Hz and a constant amplitude of 10°. The uniform flow speed is 18.74 cm s−1, which is calibrated using a OTT MF-Pro flow meter. The air bearing operates throughout the experiment to allow the fish to move forward and backward. The measurement data is acquired from the pressure sensors using DAQ 6225 from National Instruments. The data is then transmitted via USB to a laptop that runs the Bayesian filter for data assimilation in Matlab 2013b. The control commands for the angle of attack are sent via serial communication to an Arduino UNO that drives the servo. The system parameters identified before the experiments have the same values as listed in table 1. Figure 8 shows the data stream for the flow-sensing experiment.

Figure 10 presents the measurement data from all six pressure sensors. The data for each sensor has been pre-processed by subtracting the still-water pressure measurement taken before the experiment, in order to eliminate the influence of nonuniform and possibly time-varying bias from the pressure sensors. We find that the second and third sensors on each side have the peak pressure almost at the same time, whereas the first pressure sensor has a phase lag about 54° (0.2 s in time). Ideally, in a quasi-steady laminar flow chamber, all three sensors on the same side should have the same temporal behaviors. However, in our experimental setup, due to the size limitation of the flow tank, water is reflected from the wall of the tank and bounced back to different parts of the fish body at different times, which contributes to the phase difference. In addition, the first sensor rotates in the opposite direction compared to the other two sensors, which enhances the phase difference.

Figure 10.

Figure 10. The distributed pressure-sensor measurements in the open-loop flow-sensing experiment.

Standard image High-resolution image

Figure 11 shows the time evolution of the marginal probability densities. Observe that the estimated angle of attack α (figure 11(b)) has the same oscillation frequency as the actual angle of attack, with a slightly larger amplitude and a negative phase shift. The estimated camber ratio H (figure 11(c)) has a sinusoidal-like waveform, as predicted in simulation. The estimated relative speed U (figure 11(a)) oscillates around a constant value at twice the actuation frequency. The speed oscillation arises from the periodic thrust force generated by the flapping motion. The fish robot has the same inertial speed as the uniform flow and consequently exhibits station-holding behavior. (The gantry air tubing and electrical wiring restrict motion of the robot to within the test section.) The average estimated relative flow speed 18.74 cm s−1 is equal to the incoming uniform flow speed, as observed in figure 11(a).

Figure 11.

Figure 11. Marginal probability density for the states of the Bayesian estimation in the open-loop flow-sensing experiment. (a) the relative flow speed U; (b) the angle of attack α; (c) the camber ratio H.

Standard image High-resolution image

Figure 12 shows the moving average of the estimated relative flow speed U, which is used as the observed true speed to be compared with the referenced value in the closed-loop control experiment. The moving-average window size is equal to one flapping time period. The shaded area shows the standard deviation of the estimate over the corresponding average time window. The results suggest that it takes only one flapping period for the averaged estimated flow-speed to converge, which permits fast closed-loop speed control performance. Note the flow-speed estimation is more accurate during fish flapping (5–15 s) than during fish resting (0–5 s), with significant difference in terms of estimation error (5% versus 60%). This observation shows that the fish robot senses unsteady flow better than steady flow at zero angle of attack; checking the observability Gramian of the robot's dynamic model with pressure measurements as the system output shows that the flow speed at zero angle of attack is unobservable [44, 46].

Figure 12.

Figure 12. The moving average of the estimated relative flow speed U with a window size equal to one flapping time period. Gray area represents ± one standard deviation of estimated U over the corresponding moving-average time window.

Standard image High-resolution image

7.3. Closed-loop speed-control experiments with flow estimation

This subsection describes the closed-loop speed-control experiment for a fish robot swimming freely in the surge direction. The objective is to match the speed between the robot locomotion and the incoming flow by controlling the flapping amplitude.

The fish robot rests in water at the beginning of the experiment for 5 s, and then conducts closed-loop speed control for 20 s. The flow tank speed starts at 20.6 cm s−1 and then drops to 12.48 cm s−1 at t = 16 s. The closed-loop control strategy combining feedforward and feedback control (see section 4) is implemented using distributed flow estimation to automatically regulate the flapping amplitude A. The actuation frequency is fixed at 0.75 Hz. The feedback control is calculated at the end of each flapping time period based on the average estimated flow speed during the previous interval.

Figure 13 shows the pressure-measurement data for the six sensors distributed equally on each side. The amplitude of each pressure oscillation changes significantly at t = 5 s and t = 16 s, which corresponds to the step change in the flow speed. At t = 5 s, the robot starts to flap, thus generating periodic pressure oscillations at each sensor location. At t = 16 s, the amplitude of pressure measurements drops significantly corresponding to the decrease in relative flow speed. A phase shift is observed between the first sensor on each side and the other two sensors on the same side as in the open-loop flow-sensing experiments.

Figure 13.

Figure 13. The distributed pressure sensor measurements in the speed-control experiment.

Standard image High-resolution image

Figure 14 shows the time evolution of the marginal probability densities in the recursive flow estimation. The estimated flow speed oscillates around the desired reference speed and has a transient at t = 16 s when the flow speed decreases. The estimated angle of attack and camber ratio also reflect the step change. There is a noticable phase lag in angle-of-attack estimation as time progresses. Such an estimation error comes from the usage of a quasi-steady potential flow model in the recursive Bayesian filter, which ignores the unsteady effects. However, this simplification is necessary for the feasibility of real-time computation and control. In addition, it does not influence the control performance which depends on the average of the estimated angle of attack rather than the instantaneous value.

Figure 14.

Figure 14. Marginal probability density for the states of the Bayesian filter in the closed-loop speed-control experiment. (a) The relative flow speed U; (b) the angle of attack α; (c) the camber ratio H.

Standard image High-resolution image

Figure 15 shows the moving average of the estimated relative flow speed U with a time window size of one control/flapping period. The shaded area represents one standard deviation of U over the corresponding moving-average time window, illustrating the amplitude of the relative-flow speed oscillation. The average flow speed converges to the reference value. The transient from the step change in swimming speed lasts about three control periods, and the steady-state tracking error is 1 cm s−1 (5%).

Figure 15.

Figure 15. The moving average of relative flow speed U with a time window size equal to one control period. Gray area represents ± one standard deviation of estimated U over the corresponding moving-average time window.

Standard image High-resolution image

Figure 16 shows the commanded angle of attack. The output of the feedforward controller is close to the total control output in the steady-state period, which indicates that the inverse mapping of the derived average model is a good choice for feedforward control. The tracking error is compensated by the feedback PI controller. The quick convergence and small tracking error further validate the control strategy and flow-sensing algorithm.

Figure 16.

Figure 16. The amplitude of the commanded angle of attack.

Standard image High-resolution image

8. Conclusion

This paper presents a flow-sensing algorithm using distributed pressure sensors for closed-loop speed control of a flexible fish robot. We design and model a fish robot utilizing Joukowski transformation to facilitate fluid modeling. We introduce two flow models for the cambered Joukowski-foil-shaped robot, including a quasi-steady potential-flow model for real-time flow estimation and a discrete-time vortex-shedding model for simulating the flow. A recursive Bayesian filter assimilates pressure measurements for estimation of flow parameters. We derive the dynamics of a flexible fish robot and present a reduced model for one-dimensional free swimming. The closed-loop speed-control strategy includes a feedforward inverse mapping controller based on an average model for periodic angle-of-attack actuation and a feedback PI controller utilizing the estimated flow information. We also present the fabrication of a flexible fish robot and the design of the experimental testbed. The proposed flow-sensing and speed-control strategy was tested and validated in both simulation and experiments. In particular, the speed-control experiment using flow estimation and flap-amplitude regulation achieved fast convergence (within three control periods) and small tracking error (5%) for a step reference input. In ongoing work, we are investigating a flow-sensing and control algorithm for three-dimensional swimming locomotion of a flexible fish robot.

Acknowledgments

This work was supported by the Office of Naval Research under Grant No. N000141410249.

Please wait… references are loading.