Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

There has been increasing interest in the development and application of the bio-inspired robots in academia and industry over the last 20 years, particularly due to the growing vitality in biomimetics [13]. As a small branch, extensive work on designing and controlling a variety of swimming robots has been done since the first fish robot (also known as robotic fish, or robot fish), RoboTuna, was developed at MIT [4]. In particular, astonishing swimming ability including high efficiency and maneuverability inspired us to improve the propulsive performance of manmade aquatic robotic systems [5, 6]. Rising missions like military defense and marine protection require high-performance autonomous underwater vehicles (AUVs), especially in the use of the fast propulsion and multi-directional maneuverability. As a paradigm of bio-inspired AUV, robotic fish will be more competent than current AUV propelled by rotary propellers. Besides advancing the understanding of fish swimming mechanisms, as an aquatic mobile platform, robotic fish will play an important role in fulfilling real-world tasks such as underwater exploration, mobile sensing, patrol, wreck surveying, search and rescue, and environmental monitoring [7, 8].

As the earliest vertebrate in the world, fish are undoubtedly the king from the perspective of underwater propulsion. In particular, fins are widely used by aquatic animals. The propulsion modes of swimming fish, from a functionality standpoint, are classically divided into body and/or caudal fin propulsion (BCF) and median and/or paired fin (MPF) propulsion [9]. Specifically, fish classes that use varying degrees of body undulation and/or caudal fin oscillations for thrust generation are examples of the BCF mode, while fish relying on paired fins (pectoral fins and pelvic fins) and/or median fins (dorsal fin and anal fin) for thrust production are categorized under the MPF mode. It is generally thought that no absolutely superior model exists among these modes since body shape and motor function level tightly depend on the fish habitats.

More recent evidence has suggested that fish actually rely on multiple control surfaces including the caudal fin, the pectoral fins, the pelvic fins, the dorsal fin, the anal fin as well as the body to achieve fast and maneuverable propulsion [10]. Particularly, the position, mobility, and hydrodynamic characteristics of the control surfaces are linked with the propulsive performance. These well-integrated, configurable multiple control surfaces provide an excellent paradigm to create and control high-performance underwater vehicles [11]. However, it is unrealistic to totally replicate a real fish due to the vast difference between the biological system and the engineering counterpart. Tradeoffs in engineering practice will have to be struck among biological mechanism, engineered method, feasibility, cost/gain, and so forth. The existing robotic fish, however, have predominantly used BCF, or pectoral fins (PF), or undulatory fins (UF) for propulsion and maneuvering. There have been few or limited studies related to simulating and constructing a robotic fish with multiple different fins, which are desirable for enhanced controllability and maneuverability. For example, inspired by the boxfish with multiple fins, Lachat et al. designed a miniature boxfish-like swimming and crawling robot with three actuated fins [12]; Kodati et al. [13] developed a robotic ostraciiform with a self-correcting mechanism to emulate the maneuverability of the boxfish. In these two boxfish-like robots, only two types of fins including pectoral fin and caudal fin were incorporated and examined, making them unavailable for the extensive exploration of various fin–fin and body–fin interactions.

This chapter, as a summary of our previous research on fishlike swimming [1417], aims at creating self-propelled, multi-joint robotic fish with multiple complemented gaits and improved swimming performance. Specifically, a design framework considering both mechatronic constraints in physical realization and feasibility of control methods is presented. Although there have been numerous studies of numerical optimal control methods to find a time- or energy-efficient state-to-state trajectory in motion planning, there have been few optimum procedures used to make an artificial fish system as effective as possible in propulsion, especially in thrust generation. Contrary to identical links with the same length, mass, and inertia in the physical model of anguilliform locomotion [18], our models focus more on an attribute of spindle-shaped fish body; i.e., the length of segments along spinal column is shorter and shorter in the direction from nose to tail. A locally optimal link-length-ratio is numerically calculated. Meanwhile, a central pattern generator—(CPG) centered control framework is applied to enhance the swimming performance. Particularly, the body wave-based control and the CPG-based control are comparatively investigated in terms of oscillatory signals and swimming stability. Finally, the proposed models and methods are verified in the developed robotic fish prototypes.

In the following sections, we will present our effort to the design and control of multi-joint robotic fish. We start by surveying fish-inspired biomimetic research in Sect. 2. We then proceed to investigate design framework and simulator for mimicry of fish swimming with a multi-joint configuration in Sect. 3. The CPG-centered swimming control is tackled in Sect. 4. Experiments and results are provided in Sect. 5. Finally, Sect. 6 concludes the chapter with the outline of future work.

2 Review of Bio-inspired Fish Swimming

In this section, we will restrict our attention to the main problem of mechanical design, swimming kinematics as well as motion generation and modulation for a class of self-propelled, multi-joint robotic fish. Note that the developed robotic fish in this work is only suited for shallow waters.

2.1 Ichthyology Basis

Generally, as illustrated in Fig. 1, there exist two distinct propulsion modes for technical inspiration in developing robotic fish: BCF mode and MPF mode. The former is favorable for the cases requiring greater thrust and accelerations, while the latter for the cases demanding higher maneuverability. Meanwhile, in terms of movement’s temporal features, swimming locomotion can be categorized into periodic swimming characterized by a cyclic repetition of the propulsive movements and transient movement involving rapid starts, escape maneuvers, and turns. Meanwhile, studies of the dynamics of fish locomotion show that most fish synthetically use multiple control surfaces (e.g., tail plus caudal fin, pectoral fins, pelvic fin, dorsal fin, anal fin) to accomplish efficient and effective propulsion. Figure 2 shows the skeleton of a bony fish, which involves functionally complementary control surfaces. From the structural design standpoint, the vertebrae, cranium, jaw, ribs, and intramuscular bones make up the bony fish skeleton. Basically, the skeleton provides a foundation for the body and the fins, encases and protects the brain and the spinal cord, and serves as an attachment for muscles. Meanwhile, the tail is laterally compressed and corresponding tail vertebrae become smaller distally. That is, the lengths of skeleton elements, from the skull to the last caudal vertebra, tend to be smaller and smaller, offering some clues to the structural optimization.

Fig. 1
figure 1

Propulsion modes in fish swimming (Adapted from [9])

Fig. 2
figure 2

Illustration of the skeleton of a common bony fish

2.2 Biomimetic Principles

As an effective and efficient underwater propulsive system, fish are of some technological interest in developing innovative AUVs. Typically, this involves the following four aspects.

  • Hydrodynamics aspect Fish in nature vary greatly in body shape with significant hydrodynamic consequence. An important and intriguing mechanism associated with high-performance swimming is the shedding of vortex rings and recycling of vortex energy exploited by fish. For instance, a pair of abducted pectoral fins cause the formation of a drag wake, and the fish tail will recycle the energy of the pectoral fin vortices. Vortex interaction among different control surfaces (e.g., pectoral fins and tail) facilitates the generation of thrust. The fish tail shape also exerts certain effects on vortex formation patterns [19].

  • Propulsive mechanism Fish are propelled through the water by fins, body movements, or both. A fish can swim even if its fins are removed, though it usually has difficulty in governing direction and balance [20]. While swimming, the fins are driven by muscles attached to the base of the fin spines and the rays. In particular, fish with fairly rigid bodies depend mostly on active fin action for propulsion. Notice also that fish fins are flexible and move in a complex three-dimensional (3-D) manner.

  • Motion control So far, the control mechanisms of fish bodies and fins are not fully understood. In general, fish swim using multiple body segments and organizing left–right alternations in each segment so as to produce the body wave that propels them through water. These rhythmic motor patterns are internally produced by CPGs, i.e., central neuronal circuits whose activation can produce rhythmic patterns in the absence of sensory or descending inputs that carry specific timing information [21, 22]. Thus, neural system can generate and control a variety of motor behaviors via coordination among segmental CPGs. Typically, CPGs has the advantage of rhythmicity, stability, adaptability, and variety [23]. These fascinating properties make CPGs suitable for locomotion control of robots with multiple joints or DOFs and even of hyper redundant robots. Remarkably, CPGs eliminate the need for trajectory planning and precise knowledge of mechanical system properties.

  • Stability Another point to be emphasized for fish swimming is stability, a significant issue in real-world applications. With the center of buoyancy both below and anterior or posterior to the center of mass, most fish with swim bladders are hydrostatically unstable. This instability necessitates the use of hydrodynamic lift to control posture in concert with hydrostatic forces. Therefore, a fundamental tradeoff in locomotion design exists between stability and maneuverability. Although rhythmic patterns of body undulations are very similar in steady swimming, fish realistically carry out more individual maneuvers rather than swimming steadily.

Note that the locomotor methods employed by fish cannot necessarily be considered optimal, even if the biologically evolved designs are highly effective for fish adapting to their habitats. So we should not blindly copy biological structures and control mechanics in bio-inspired engineering, but selectively absorb the biological advantages in a hybrid fashion.

3 Design Framework for Multi-joint Robotic Fish

In this section, we focus our attention on the radical problem of fishlike swimming generation and modulation, as well as their robotic implementation.

3.1 Functional Design

Consider a multilink robotic fish, the key to this high-quality bio-mimicry is how to simplify the mechanism and generate the reasonable control data. That is, to quantify the lateral body motions of swimming fish, kinematic and anatomical data of vertebral column and tail should be paid much more attention. Typical of steady swimming is the contraction from head along the midline of the fish body. A widely used body wave is described by

$$ y_{\text{body}} (x,t) = (c_{1} x + c_{2} x^{2} )\sin (kx + \omega t) $$
(1)

where y body represents the transverse displacement of moving tail unit, x denotes the displacement along the head-tail axis, k indicates the body wave number (k = 2π/λ), λ is the body wave length, c 1 is the linear wave amplitude envelope, c 2 is the quadratic wave amplitude envelope, and ω is the body wave frequency (ω = 2πf = 2π/T).

As shown in Fig. 3, the oscillatory part of the robotic fish is commonly discretized as a multilink (or N-link) mechanism composed of several oscillating hinge joints actuated by motors in bio-inspired engineering. It can be modeled as a planar, serial chain of links along the axial body displacement, and the endpoints of the links in the chain can be achieved by numerical fitting to a discretized, spatial- and time-varying body wave. In the interest of simplicity, we consider the following discrete form of (1):

Fig. 3
figure 3

Illustration of the multilink-based fishlike swimming design

$$ y_{\text{body}} (x,i) = (c_{1} x + c_{2} x^{2} )\sin (kx \pm \frac{2\pi }{M}i) $$
(2)

where i denotes the ith variable of the sequences y body(x,i) (i = 0, 1, …, M–1) in one oscillation period, M indicates the discrete degree of the traveling wave, and the signs “+” and “–” represent different initial movement directions, which are dependent on different initial values. For more details on link-based body wave fitting, please refer to [14].

Taking more diverse sinusoidal motions exhibited in fishlike or snake-like locomotion into consideration, a generalized body wave that facilitates engineering realization is proposed below:

$$ y_{\text{body}} (x,t) = (c_{1} x + c_{2} x^{2} )\sin (k_{1} x + k_{2} x^{2} + t) $$
(3)

where k 1 denotes the linear body wave number and k 2 indicates the quadratic body wave number. The determination of k 1 and k 2 depends on the desired oscillation type and function.

When altering the swimming direction, the real fish usually uses the tail in collaboration with pectoral fins. We remark that the pectoral fins of the carangiform swimmer have minimal effects on propulsion and steering, which are neglected in the current robotic model. For the multilink robotic fish, various turning modes can be implemented by commanding specific deflected angle in each oscillation cycle to the part or all of moving links. So a corrected turning body wave is hypothesized to be yielded as follows:

$$ y_{{\text{body}}} (x,i) = (c_{1} x + c_{2} x^{2} )\sin (kx - \frac{2\pi }{M}i) + \sqrt {\frac{1}{4}D^{\prime 2} - x^{2} } - \frac{1}{2}D^{\prime } $$
(4)

where \( D^{\prime} \) is the diameter of the curved tail axis, having a bearing on the turning diameter D. An example of corrected turning body wave is demonstrated in Fig. 4, where c 1 = 0.05, c 2 = 0.09, k = 2π/3, M = 9, \( D^{\prime} = 8 \).

Fig. 4
figure 4

Demonstration of a corrected body wave in turning maneuvers

In this sense, fishlike movements, either forward propulsion or turning maneuvers, can be produced within a well-integrated body wave framework. The morphological parameters relevant to swimming motion mainly consist of the following:

  1. (1)

    The length ratio of the fish’s oscillatory part to that of the fish body (R l ). With the decrease of R l , in general, efficiency and speed of fish swimming remarkably increase, but maneuverability reduces to a certain extent.

  2. (2)

    The number of simplified joints in oscillatory part (N). In principle, larger value of N will lead to better maneuverability and redundancy, but harder construction and control of the robot.

  3. (3)

    The length ratio of each link (segment) in oscillatory part (l 1:l 2:…:l N ). The length of each link in the direction from nose to tail, as a rule, is getting smaller and smaller. Oscillatory amplitude, however, increases gradually and reaches its maximum at tail peduncle of the fish.

  4. (4)

    Characteristics of caudal fin [24].

On the other hand, the kinematic parameters are those fundamental physical quantities describing swimming performance and propulsive efficiency, which primarily include the following:

  1. (1)

    The form of the body wave y body(x, t), determining the type of fish swimming.

  2. (2)

    Transverse oscillatory amplitude of each joint in the body.

3.2 Dynamic Modeling of Robotic Fish

To simulate the dynamic behavior of the robotic fish, dynamic analysis is generally carried out in advance. We consider a three-dimensional model of robotic fish, taking into account both the carangiform and anguilliform natural swimming modes. Since the carangiform swimmer bears the virtue of keeping high-speed swimming in calm waters, whereas the anguilliform swimmer exhibits remarkable maneuverability especially in cluttered environment, we assume that the constructing robotic fish has a flexible rear body for maneuverability and an oscillating caudal fin for propulsion. As illustrated in Fig. 5, a robotic fish structurally consists of three parts: a stiff anterior body with a pair of pectoral fins for up-and-down motion, a flexible rear body, and an oscillating lunate caudal fin. Especially, the flexible rear body is designed as a multilink mechanism capable of anguilliform undulation, while the caudal fin moves in a fashion of oscillating fin mimicking carangiform oscillation. As stated previously, the length ratio of the fish’s oscillatory part to that of the fish body R l is a vital morphological parameter, and not all the body or the oscillatory portion takes part in thrust production at all time, it may be a feasible way to employ different length of the oscillatory part at various speeds. For a multilink robotic fish, this method can be easily operated by locking or unlocking some links. Therefore, the robotic fish can switch between anguilliform mode and carangiform one in order to achieve various motions and better swimming performance.

Fig. 5
figure 5

Demonstration of a robotic fish capable of 3-D swimming

To formularize the dynamics of the fish system, we consider that 3-D motion of the robotic fish can be divided into 2-D (two-dimensional), planar swimming plus diving/climbing motion in the vertical plane. Mechanically, the robotic fish can essentially be viewed as an open, tree-like multi-body system. The kinematic analysis is then integrated with hydrodynamic analysis on multiple moving elements to derive complete dynamic equations in a form suited for computer implementation as well as controller design. The following matrix representation of the equations of motion is derived as follows [25]:

$$ \left( {M(\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} ,t) + M_{I} \left( {\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} ,t} \right)} \right)\ddot{\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} } + K(\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} ,\dot{\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} },t) = \hat{Q}\left( {\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} ,\dot{\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} },t} \right) $$
(5)

where \( M(\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} ,t) + M_{I} \left( {\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} ,t} \right) \) indicates the mass matrix incorporating all masses and inertias of the multilink robot, which also contains the virtual terms associated with the accelerated surrounding fluid, and \( K(\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} ,\dot{\underset{\raise0.3em\hbox{$\smash{\scriptscriptstyle-}$}}{q} },t) \) includes the matrix of Coriolis/Centripetal term. Considering (5) is a nonlinear ordinary differential equation (ODE) in essence, we can apply a standard integration technique to solve the initial value problems for ODE in the Matlab/Simulink environment. The velocity and the trajectory can further be obtained via numerical tools; thus propulsive characteristics of the robot can therefore be predicted and assessed.

3.3 Design Framework for Robotic Fish

After conducting the dynamic analysis, it is necessary to verify the theoretical model by engineered robots. An integrated design scheme demonstrated in Fig. 6 is presented, which primarily involves morphological modeling, kinematic modeling, dynamic simulation, and parameter optimization. The procedure is detailed as the following steps:

Fig. 6
figure 6

Design framework of robotic fish in flowchart

Step 1. Abstract morphological and swimming characteristics from referenced biological model. Both morphological and kinematic models, in this step, are derived, which can provide a configuration frame to building prototypes.

Step 2. Incorporate the derived morphological and kinematic parameters into dynamic analysis of the employed propulsive model. Some biological control principles, at the same time, can be borrowed to accomplish fishlike motion. These simulations or empirical tests will provide a basis for functional predictions and evaluations.

Step 3. Adjust the hardware-based morphological parameters (e.g., R l , N, and l 1:l 2:…:l N ) conditioned by both constraints of the mechatronic system and predetermined performance. That is, optimize characteristic parameters according to the simulated results from step 2, and return to step 2 to reevaluate until satisfactory performances (e.g., good forward speed and small turning diameter) are achieved. Note that the adjustment of kinematic parameters mainly depends on prototype testing, which can be performed in an online or offline fashion.

Step 4. Conduct analyses of geometric space configuration and mass distribution of the robot, to empirically ensure a balance of maneuverability and stability.

Step 5. Develop the robot prototype, as well as motion control. Since hydrodynamic coefficients are generally determined experimentally, dynamic simulations can only provide a rough estimate, and rigorous hydrodynamic experiments on the prototype are needed to achieve desired performances.

3.4 Development of Digital Fish Simulator

To facilitate the design and control of robotic fish, a fish-inspired simulator platform called Digital Fish Simulator (DFS) is developed. The desired functions of the DFS mainly include the following three aspects:

  • Comparison between the multilink oscillations and the referenced body wave: The graphics of the moving multilink and the theoretical body wave can be comparatively displayed in one oscillation period, which provides an instructive guide to observe approximation degree.

  • Dynamic status display: Through sequentially display the motion states of moving links in one oscillation period, one can visually observe oscillatory amplitude and swimming trajectory.

  • Motion simulation: Motion animation embodies the most direct manifestation of swimming effect. A rendered fish body and a virtual swimming pool with obstacles, static or dynamic, will be devised. Motion control methods such as turning, obstacle avoidance, and other maneuvering controls can also be loaded and tested on site.

As a final step, the proposed fish-inspired steady and maneuvering swimming mechanisms, together with conceived control methods, are blended into the DFS via an Object-Oriented software engineering methodology (see Fig. 7). That is, we developed a custom-built executive routine to account for both theoretical and experimental factors. Specifically, basic input parameters involve fish body wave part and motor control part in the DFS. The former mainly includes link number (ranging from 2 to 10), discrete degree in one oscillation (ranging from 8 to 72), relative wave length (ranging from 0.3 to 1.0), phase difference (ranging from 75° to 90°), and link-length ratio. We remark that a strategy that is based on the geometric optimization of relative link lengths to approximate a given smooth, spatial- and time-varying body wave curve for enhanced swimming performance has been added to the DFS. Please refer to [15] for more geometric optimization details. The latter comprises maximum rotary angle of used motors, left rotary limit (LA), right rotary limit (RA), minimum link length, etc. Through body wave fitting-based optimal calculation, the swimming data is automatically generated from the simulator, which can directly be fed into the fish robots for control purpose. The supposed data in a specified form, in turn can directly fed into the simulator for visual verification. Therefore, a two-way swimming data exchange interface is achieved, facilitating subsequent robotic development.

Fig. 7
figure 7

Graphical user interface of the DFS

Besides steady swimming, fish in nature applies more maneuvering swimming. Typical maneuvering mechanisms include body-tail deflection, pectoral-fin stroke, stabilization control in pitch, fast-turn, backward swimming, and so on. Our current emphasis is restricted to the body-tail deflection-based maneuvers. By adding different deflections (i.e., dynamic offsets) to the straight, symmetric swimming gaits, various turns can be easily achieved. As investigated previously [16], the characteristic parameters associated with turning performance involve magnitude, position, and time of the deflections applied to the links. This turning control method now is employed to accomplish flexible obstacle negotiation with the aid of sensory perception. As demonstrated in Fig. 7, a controlled simulation environment with static and dynamic obstacles is created. Different obstacle avoidance approaches can then be loaded and tested in the DFS flexibly.

Furthermore, with the well-integrated DFS, many kinematics studies can be emulated and evaluated. For example, specific parameter combination P = {c 1, c 2, k 1, k 2} for diversified swimming motions can be defined as a predominant kinematic feature. According to the obtained simulation results, P 1 = {0.2, 0, 2.0, 0}, P 2 = {0.05, 0.09, 0.5, 0.1} and P 3 = {0.35, 0, 3.0, 0} are representative of anguilliform, carangiform, and snake-like swimmers, as depicted by Fig. 8. It implies that carangiform, anguilliform, and snake-like swimmers share multi-segment mechanical attribute despite their great difference in morphology. Further parameter optimization in conjunction with hydrodynamic analysis can be achieved and applied to the design of novel robotic fish.

Fig. 8
figure 8

Comparison of different swimmers in the DFS. a Anguilliform swimming, b carangiform swimming, c snake-like swimming

4 CPG-Based Swimming Control

To mimic the BCF-type swimming, the link-based body wave fitting is intuitively employed to produce fishlike motions. For simplicity, the movements of joints (corresponding to control surfaces in function) are considered as oscillatory in a harmonic (sinusoid) fashion that can be described below.

$$ \theta_{i} (t) = \overline{{\theta_{i} }} + A_{i} \sin (2\pi f_{i} t + \phi_{i} ){\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} (i = 1,2, \ldots ,N) $$
(6)

where θ i (t) represents the angular position of the ith control surface at time t, \( \bar{\theta }_{i} \) indicates the angular bias for asymmetric oscillations deviating from the median position, A i stands for the oscillatory amplitude, f i is the oscillatory frequency, and \( \phi_{i} \) is the phase difference. As a response to the input data, the swimming speed can be mediated by the magnitude of amplitude (A i ) and frequency (f i ), while the direction is influenced by the bias (\( \phi_{i} \)). The control commands are then wirelessly transmitted to the robotic fish in a remote control manner.

However, this body wave-based swimming control should be properly discretized and parameterized for a specific swimming gait. Moreover, the swimming stability of a desired gait and the smooth transition between two different gaits are hardly guaranteed. Inspired by the lamprey, an eel-like fish whose propulsion is governed by activity in its spinal neural network, some CPG-based models have been built to produce fishlike swimming. As summarized by Ijspeert, CPG-based control presents several attractive features including distributed control, the ability to deal with redundancies, fast control loops, and permitting the modulation of locomotion by simple control signals [22]. For the multi-joint robotic fish, as shown in Fig. 9, a complete CPG-centered control architecture is proposed. By coupling a set of nonlinear oscillators, a CPG network is built, involving one caudal CPG (O 1), three body CPGs (corresponding to O 2O 4), two pectoral CPGs (O 5 and O 6), and one pelvic CPG (O 7). Each swimming gait is then encoded with a standardized “template” corresponding to a CPG parameter set. With the proper tuning of feature parameters, diverse swimming gaits in three dimensions result. Notice that, in the interests of simplicity, a weak coupling scheme is adopted, where all self-couplings are eliminated. Considering that the pectoral fins and the pelvic fin can be individually controlled, the couplings to O 5, O 6 and O 7 are not intrinsic but optional. The dynamics of the ith oscillator is described as follows [26]:

Fig. 9
figure 9

Diagram of a complete CPG-centered control architecture

$$ \left\{ {\begin{array}{*{20}l} {\dot{u}_{i} = - \omega_{i} v_{i} + u_{i} \left( {\Gamma _{i}^{2} - u_{i}^{2} - v_{i}^{2} } \right) + \sum\limits_{j = 1,j \ne i}^{n} {a_{ij} v_{j} } } \hfill \\ {\dot{v}_{i} = \omega_{i} u_{i} + v_{i} \left( {\Gamma _{i}^{2} - u_{i}^{2} - v_{i}^{2} } \right) + \sum\limits_{k = 1,k \ne i}^{n} {b_{ik} u_{k} } } \hfill \\ \end{array} } \right. $$
(7)

where n indicates the total number of nonlinear oscillators in the CPG network. The state variables u i and v i denote the membrane and adjustment potential, respectively. ω i and Γ i stand for the intrinsic oscillatory frequency and amplitude. \( \sum\nolimits_{j = 1,j \ne i}^{n} {a_{ij} v_{j} } \) and \( \sum\nolimits_{k = 1,k \ne i}^{n} {b_{ik} u_{k} } \) are the coupling relationships of the ith oscillator with other oscillators in the CPG network. \( a_{ij} \) and \( b_{ik} \) are the corresponding coupling weights. It should be remarked that this coupling is just an assumption of the CPG model, and that whether the coupling scheme relates to biological existence or optimality is currently unproved.

To translate the rhythmic output signal of the ith oscillator to the motor actuating signal, a mapping function \( f_{i} (u_{i} ) \) is defined as follows:

$$ \theta_{m}^{i} = f_{i} \left( {u_{i} } \right) = \left\{ {\begin{array}{*{20}l} {\gamma_{i} u_{\hbox{max} }^{i} + u_{\text{b}}^{i} ,} \hfill & {u_{i} \, \ge \,u_{\hbox{max} }^{i} } \hfill \\ {\gamma_{i} u_{i} + u_{\text{b}}^{i} ,} \hfill & {0\, < \,u_{i} \, < \,u_{\hbox{max} }^{i} } \hfill \\ {0,} \hfill & {u_{i} = 0} \hfill \\ \end{array} } \right. $$
(8)

where \( \theta_{m}^{i} \) is the driving signal fed to the motor, \( \gamma_{i} \) is the transformation coefficient, \( u_{\hbox{max} }^{i} \) is the upper bound for the driving signal of the ith oscillator, and \( u_{\text{b}}^{i} \) is the potential bias when the ith control surface stays at its reference position. For simplicity, the reference positions of the body, and the caudal fin, and the pelvic fin are in the sagittal plane, and those of the pectoral fins are in the horizontal position.

Since the fishlike swimming is regarded as sinusoidal motions, the interactions of different control surfaces can be attributed to coupled factors among CPG units. According to our proposed CPG parameter determination method in accordance with the traveling body wave [27], a set of feature parameters for the fish CPG network can be sought. Thus, through the coordinated control of body CPG, caudal CPG, pectoral CPG, and pelvic CPG, a diversity of swimming gaits such as coordinated forward swimming, backward swimming, hybrid turning, sideward swimming, diving/surfacing, and braking, are implemented. Table 1 summarizes the relationships between the swimming gaits and the involved control surfaces. For all these gaits, the swimming speed can be altered by adjusting the frequency ω i and/or the amplitude Γ i . Meanwhile, the angular bias \( \bar{\theta }_{i} \) is used for turning maneuvers and 3-D swimming. Typically, \( 15^\circ \le \,\overline{{\theta_{1} }} = \overline{{\theta_{2} }} \, \le \,45^\circ \) is set for the BCF turning; \( \overline{{\theta_{5} }} = \overline{{\theta_{6} }} = 180^\circ \) for the MPF backward; \( 0\, < \,\overline{{\theta_{5} }} = \overline{{\theta_{6} }} \, < \,90^\circ \) for the PF-based diving; and \( - 90^\circ < \,\overline{{\theta_{5} }} = \overline{{\theta_{6} }} < \,0 \) for the PF-based surfacing. It is critical to find appropriate CPG patterns that are closely associated with viable swimming gaits. In this study, a dynamic model of robotic fish swimming using Kane’s method is first developed to guide the primary parameter search. A particle swarm optimization algorithm is further utilized to yield a relatively optimal parameter set [28]. The main control parameters that are empirically determined with the help of dynamic simulations are listed in Table 2. Note that an assumption is made in simplifying the CPG couplings that the descending weights are identical, implying that the ith CPG receives the influence from the (i–1)th one. Namely, \( a_{i,i - 1} = a_{1} \) and \( b_{i,i - 1} = b_{1} \), where i = 2, 3, …, n; so do the ascending coupling weights, holding \( a_{i,i + 1} = a_{2} \) and \( b_{i,i + 1} = b_{2} \). Note also that vision, infrared and depth sensing can be included in the control loop, serving as sensory feedback for online modulation.

Table 1 The relations between swimming gaits and control surfaces
Table 2 CPG parameter values applied to robotic fish

5 Experiments and Results

5.1 Development of Robotic Fish

To evaluate the conceived design ideas and control framework, we try to build different physical robots serving as a repeatable testbed. A conceptual design of robotic fish with multiple control surfaces entirely consists of several elements: a rigid head, a multilink soft body, a peduncle and caudal fin, a pair of pectoral fins and a pelvic fin. Notice that the pelvic fin is used instead of the anal fin for sideward maneuverability and for ease of installation and waterproof protection. More specifically, the multilink soft body consists of four servomotors connected in series with aluminum links, providing four independent joints (J 1J 4) around the yaw axis. The outside of the multilink soft body is wrapped by a compliant, crinkled rubber tube functioning as fish skin. It is worthwhile to note that the output torque of servomotors should increase from tail to head, so the driving motor for the first link has a bigger torque. Considering the caudal fin, in its final lash, may contribute as much as 40 % of the forward thrust in carangiform and thunniform swimming; a crescent-shaped caudal fin is connected to the last link via a slim peduncle made of polyvinyl chloride. The caudal fin is made of partly compliant material, polyurethane, for generating more thrust.

Concerning the accessory fins, as illustrated in Fig. 9, the pectoral fins are two oscillating foils laterally mounted at the rear lower position of the rigid shell, providing two independent joints (J 5 and J 6) around the pitch axis. Note that each pectoral fin, capable of 0°–360° rotation via a set of custom-built gears, can be controlled synchronously or independently. The pelvic fin located at the posterior bottom of the fish shell provides a single DOF joint (J 7) around the yaw axis. The imported pelvic fin plays a role like a rudder on a ship. For the purpose of waterproof protection, the rotations of the servomotors in these accessory fins are transmitted to the outside through a dynamic waterproof sealing. Currently, the oscillatory angles of J 1J 4 are restricted to ±60° that of J 7 is limited to ±90°, whereas those of J 5 and J 6 are expanded to ±180° allowing for both forward and backward swimming. Such an adequately large oscillation range permits large-amplitude and fast-swimming modes.

To date, as shown in Fig. 10, a series of robotic fish prototypes have been developed in our laboratory. These robots share the same multilink structure but serve different purposes. Through extensive simulations and experiments, robotic fishes have achieved vivid swimming and even performed some simple mobile sensing tasks. We remark that two control methods: body wave-based control and CPG-based control, have been adopted in our robotic fish capable of multimodal swimming. For the former, the swimming control data is derived from the DFS. But the latter CPG controller is solved online with an embedded system.

Fig. 10
figure 10

Prototypes of different robotic fishes. a A three-joint robotic fish for the Robofish Water Polo (~380 mm × 40 mm × 78 mm, L × W × H). b A three-link amphibious robot (~700 mm × 320 mm × 150 mm). c A multi-fin robotic fish with embedded vision (~680 mm × 260 mm × 220 mm). d An Esox lucius inspired multimodal robotic fish (~614 mm × 83 mm × 81 mm)

5.2 Experimental Results

In order to evaluate the proposed design and control methods for multi-joint robotic fish, extensive experiments on multi-fin robotic fish (see Fig. 10c) were conducted in an indoor swim tank with clear water. During experiments, unless otherwise specified, the data points and error bars shown in subsequent figures were the averages and standard deviations of three runs. Currently, the robotic fish have successfully achieved autonomous obstacle avoidance and 3-D swimming. Available propulsive modes include the BCF-type swimming, the MPF-type swimming, and their combination. More quantitative results will be provided below.

The first experiment concerned the stability comparison of the CPG-based control method against the boy wave-based control method in the BCF-type swimming. Figure 11 shows the comparative oscillatory signals of J 1J 4 calculated from (2) and (7), respectively. The amplitudes of two signals increase monotonically from head to tail. It is worth noting that the caudal fin functions as a principal propulsor in carangiform swimming. Since the caudal fin is rigidly attached to J 1 via the peduncle, the driving signal of J 1 should be carefully devised for highlighting the propulsive effect of the caudal fin. To this end, a minor phase lag is maintained between J 1 and J 2 (see Fig. 11b). With the oscillatory signals as the joint inputs of the robotic fish, Fig. 12 plots the measured pitch, yaw, and roll angles in the world reference frame. During testing, the oscillatory amplitude suddenly increased at 7 s, whereas the amplitude climbed steadily after 12 s. In contrast with the fish body wave method, the CPG-based control method obtained increased pitch and roll stability, yet without loss of yaw stability. Thanks to the intrinsic limit cycle characteristic of the CPGs that is insusceptible to small perturbations, the CPG-based control method provides the possibility to abruptly vary control parameters while ensuring smooth variations of swimming gaits. Just benefited by this enhanced swimming stability derived from the CPGs, for the embedded vision guided robotic fish, image dithering accompanied by the low-amplitude oscillation of the fish head could be effectively weakened so that steady image capture and visual tracking were available. Note that the CPG-based control method was applied in the following tests.

Fig. 11
figure 11

Comparative oscillatory signals for the BCF-type swimming. a Oscillatory sequence of J 1J 4 in the body wave-based control. b Oscillatory angles of J 1J 4 in the CPG-based control

Fig. 12
figure 12

Stability comparison of the CPG-based control method against the fish body wave method in the BCF-type swimming

A second experiment was performed to evaluate the propulsive speeds among different swimming modes. Fish modulate their speeds depending on a hybrid of oscillatory frequency and amplitude of the involved control surfaces. Similar methods can be adopted in the speed control of the robotic fish performing the BCF, the PF, or the BCF + PF swimming. As a demonstration, four swimming cases with various amplitudes were examined. Notice that length-specific speeds expressed as body lengths per second (BL/s) are applied in order to be comparable with other fish robots. The following relationship was also maintained during testing: Amplitude_III = k a Amplitude_II = \( k_{a}^{2} \) Amplitude_I, where k a  = 1.33. Figure 13 shows the obtained results in the BCF-type swimming: the forward speed directly increased with the oscillatory amplitude and frequency till the actuators peaked their speed limits. Compared with the BCF swimming termed “Amplitude I”, speeds were increased by 22.83 ± 9.10 % and 26.58 ± 7.73 % in “Amplitude II” and “Amplitude III”, respectively. Remarkably, a combination of the BCF-type and the PF-type termed “Amplitude III + PF” in Fig. 13 attained an enhanced speed over the entire range of oscillatory frequency. It is estimated that a speed increase of 33.34 ± 11.18 % was obtained in the “Amplitude III + PF” by contrast with the “Amplitude I”, while a speed profit of 5.22 ± 2.85 % was even earned relative to the “Amplitude III”. The induced speed increase in the “Amplitude III + PF” implies the cooperative capability of control surfaces in achieving a higher speed. The maximum swimming speed of 0.71 m/s (equivalent to 1.04 BL/s) was obtained at a higher frequency of 3.5 Hz.

Fig. 13
figure 13

Speed test of the BCF swimming by changing the oscillatory frequency and amplitude

At the same time, the robotic fish could swim forward or backward by flapping the pectoral fins reciprocally and fleetingly, i.e., perform labriform swimming. As shown in Fig. 14, the speed of the PF-type swimming also rose over the plotted frequency region, but with a relatively low value compared to the BCF-type swimming. This suggests the body shape of the developed robotic fish is more appropriate to carangiform swimming rather than labriform swimming as far as speed is concerned. Notice also that some speed difference (positive or negative) could be detected in the same oscillatory frequency for the PF-type forward and backward swimming, but the difference was not so significant. Despite the same oscillatory frequencies and amplitudes being adopted, entirely consistent results were hard to obtain primarily due to differences of anterior–posterior body shape.

Fig. 14
figure 14

Speed test of the PF swimming by changing the oscillatory frequency

The third experiment concerned the exploration of the turning maneuvers. The dependence of the obtained turning radius and angular speed on the angular bias is summarized in Table 3, where the angular bias was superposed on the rhythmically oscillated body joints (J 1 and J 2) to induce turns. According to the experimental data, increasing the angular bias will shorten the turning radius (represented by body length independent of body size, BL for short) and achieve a larger angular speed (represented by rad/s) simultaneously. Statistical analysis showed that, the turning radius was decreased by 17.13 ± 4.95 % whereas the angular speed was increased by 19.33 ± 12.58 % in the coordinated BCF + PF turns (where the left and right pectoral fins oscillate out of phase), compared with the BCF turns. Overall, the coordinated BCF + PF turning mode performed better than the BCF turning mode.

Table 3 Turning performance characterized by angular bias in different gaits at 2 Hz

In another braking testing with an initial speed of around 0.4 m/s (equivalent to 0.59 BL), the robotic fish stopped in 2.3 s with a cooperative operation of the pectoral fins, the dorsal fin, and the pelvic fin (typically holding the fins vertical to the main axis plane), whereas a longer 5.2 s were needed to halt the fish without any braking measure. This experiment partly highlighted the need for coordinated control surfaces in rapid brake.

5.3 Discussion

As a specific biomimetics branch, robotic fish has grown rapidly in recent years. As yet, the obtained swimming performance is inferior to that of the biological counterpart. There are a variety of reasons for this discrepancy. First, although biological system is a useful source of inspiration, how to transfer the advantages of biological fish to robotic fish still remains unsolved. Second, how to integrate hydrodynamic advantages of free swimming into a fishlike mechatronic system needs to be synthetically tackled. Third, using soft robotics-related single joint or multi-joint to better replicate fishlike swimming necessitates innovative mechanism and actuator design [29]. Fourth, CPGs are a suitable paradigm to solve the problem of locomotion control of robots with multiple joints or DOFs. However, in the absence of higher control commands or sensory feedback, the CPG controller will be unable to adapt itself to uncertain and ever-changing environments. So how to include rich sensory feedback in the control loop of the CPGs so as to realize reactive locomotor patterns is a potential topic for future research. In addition, the applicability of robotic fish as a mobile sensing platform or a specific vehicle should be better demonstrated via common marine tasks.

6 Conclusions and Future Work

This chapter has described an overall design and control for fish-inspired swimming simulation and robotic implementation. Within the systematic framework taking account of hydrodynamic characteristics, mechatronic constraints, and biological control model, the detailed design procedures for multi-joint robotic fish have been summed up. Both body wave-based control and CPG-based control are proposed and compared on a robotic fish with multiple control surfaces, in terms of oscillatory signals and swimming stability. In particular, a bidirectional swimming data exchange has been well integrated into the DFS, enabling fish swimming data generation and testing. Accompanying with this software platform, various robotic fish and applicable control framework have been developed and tested. The obtained results have demonstrated relatively satisfactory swimming performance.

In the future work, much more effort should be devoted to breaking through the performance bottlenecks and tuning characteristic parameters in a relatively optimum fashion. To this end, we should continue to learn from fish and advance comprehensive hydrodynamic design and control for high-performance aquatic robots.