1. Introduction
Compared with robotic dolphins, biological dolphins have unique advantages in terms of motion. After parameter optimization, robotic dolphins often achieve excellent performance at certain speeds, but it is difficult to maintain excellent performance over a wide range. Considering the propulsion method of cetaceans, the fluke is a key organ for dolphin movement and the most important component in maintaining balance and controlling the speed in water. Depending on the rapid contraction and relaxation of muscles, coupled with a strong tail stock, biological dolphins drive a third of their bodies, producing powerful propulsion. Research has shown that fish actively contract their muscles to adjust the stiffness of their tails during swimming. For example, Flammang et al. [
1] found that the bluegill sunfish (
Lepomis macrochirus) stiffened its tail as its speed increased. Long et al. [
2] also showed that the American eel (
Anguilla rostrat) could increase its body stiffness by contracting its muscles and obtain net thrust during steady state swimming. Despite the need for further study on the mechanisms by which biological fish optimize their movement by adjusting the stiffness of their propulsion organs, this phenomenon serves as inspiration for bionic robotic dolphin research.
To optimize the performance of underwater bionic robots, researchers have attempted to introduce stiffness modulation mechanisms. For example, Chen et al. [
3] and Tong et al. [
4] installed passive stiffness components (torsion springs) in the tails of their robotic fish, and other researchers used adjustable stiffness devices [
5,
6], all of which improved the performance of the robots. In addition, some researchers have used special driving mechanisms to achieve variable stiffness effects, such as Park et al. [
7], who used artificial tendons to simulate the stiffness of fins. Zhong et al. [
8] showed that the optimal stiffness must change with the swimming speed to maintain high efficiency. If bionic robots wish to improve their performance over a wide speed range by changing their stiffness, they must calibrate the optimal parameters in advance and adjust the stiffness of the driving mechanism according to the motion state. This method has limited applicability.
The angle of attack (AoA), which refers to the angle between the relative water flow and the chord of a fin-like structure, is believed to play a crucial role in propulsion based on an oscillating hydrofoil [
9,
10,
11]. In steady fluid, the lift of a hydrofoil increases faster than its drag with an increasing AoA up to a critical value. However, if the critical AoA is exceeded, the drag increases continuously while the lift decreases sharply, which is known as the stall condition. Dynamic stall can delay the static stall and increase the critical AoA in the case of an oscillating hydrofoil [
12]. Thus, with the assistance of flow sensing, robotic fish can adjust their AoA accordingly to maintain maximum net thrust over a periodic stroke. Shen et al. investigated the wing motion of a real penguin and found that the feathering motion enabled active control of the AoA to improve the swimming performance [
13]. Toward the attitude holding task of a robotic fish swimming in the real world, Zheng et al. proposed a deep reinforcement learning (DRL)-based policy to maintain the desired angle of attack [
14]. Studies on cetaceans also suggest that a high AoA may help them to obtain thrust from water [
15,
16,
17]. Furthermore, numerical simulations of a fish-like swimmer demonstrated that a leading-edge vortex is formed as the AoA increases [
18]. The vortex is widely regarded as being correlated with propulsion, acceleration, and efficiency [
19,
20,
21]. Therefore, based on these findings, it is reasonable to conclude that the AoA has great potential value in studying propulsion or efficiency for bio-robotics. Specifically, biological fluke angle adjustment relies on the contraction/relaxation of the tail muscles, and with changes in tail “stiffness”, it can be used to find the optimal attack angle during movement in interaction with an external fluid.
Inspired by this phenomenon, the motivation of this study is as follows: when the caudal joint undergoes stable motion with a set of fixed parameters (such as amplitude and frequency), the optimal joint angle for the caudal joint is sought by incorporating feedback data on the attack angle, aiming to achieve a higher speed or energy efficiency. The main contributions of this method are twofold. Firstly, the adjustment of the caudal joint angle is performed in real time based on the feedback data of the attack angle, which closely resembles the behavior of biological fish. In contrast, in previous oscillatory motion, multiple experiments are required to find the optimal parameters (amplitude and phase offset). Secondly, this study utilizes the torque mode of the motor to control the caudal joint angle. Compared to the position mode, under equivalent conditions, the caudal fin exhibits smoother performance. Theoretically, this method can adapt to higher upper limits of frequency.
This paper proposes a caudal joint motion control scheme based on attack angle feedback for the high-speed swimming of bionic robotic dolphins, aiming to provide a reference for relevant research. Firstly, the kinematic characteristics of the designed bionic robotic dolphin are analyzed, elucidating the hardware basis of bionic robotic dolphins. Secondly, to solve the problem whereby the caudal motor cannot effectively cooperate with the waist joint motor during high-frequency motion, a friction force and latex skin recovery force compensation model is designed, and a joint angle control strategy based on fuzzy inference is proposed to achieve the expected joint angle tracking of the caudal joint in torque mode. Finally, to address the problem of the limited optimal flapping frequency range for open-loop control laws, a closed-loop control scheme based on the attack angle feedback of the caudal joint is proposed to improve the motion performance. Finally, a pool experiment is conducted to verify the effectiveness of the proposed motion optimization scheme.
The remainder of this paper is organized as follows.
Section 2 introduces the motion characteristics of the robotic dolphin’s joint.
Section 3 introduces the optimal AoA control law. The control algorithm of the caudal joint in torque mode is proposed in
Section 4. The control strategy of the caudal joint based on AoA feedback is presented in
Section 5.
Section 6 presents the experiments, and
Section 7 provides the conclusions of this paper.
3. Optimal Angle of Attack Control Law
The angle of attack is the angle between the plane of the fluke and the direction of water flow, which is a key variable in determining the propulsive force generated by the fluke.
Figure 4 shows the relationship between the AoA and the forces acting on the fluke. The fluid forces acting on the fluke in water can be divided into two components: lift
L perpendicular to the direction of motion and drag
D parallel to the direction of motion. Here, the direction of motion is the absolute velocity
of the fluke in the real world, which is composed of the forward velocity component
and the lateral velocity component
. Ignoring surface friction, pressure drag, and gravity, according to the lift–drag model, the force acting on the fluke can be represented as
where
and
are the components of lift and drag along the
x-axis,
is the angle between the direction of movement of the fluke and the forward direction,
is the fluid density,
S is the area of the fluke under force, and
and
are the lift and drag coefficients, respectively, which are related to the shape of the fluke and the AoA. For a given fluke,
and
are functions of the AoA, denoted as
and
. The net thrust acting on the fluke in the forward direction can be calculated as
When
, the dolphin can obtain net thrust, i.e.,
where
is the lift-to-drag ratio of the fluke. Referring to the lift and drag coefficients obtained from the CFD simulation in
Section 2.3, the curve of
is as shown in
Figure 5. According to Equation (
4), the maximum lift coefficient of the fluke is achieved at
, but the maximum lift-to-drag ratio of 6.44 occurs at
. Substituting these data into Equation (
7), we obtain
At this point, . This means that when the angle between the direction of motion of the fluke and the forward direction is less than , the net thrust is negative. In this case, the AoA should be set to zero; otherwise, negative net thrust will be introduced.
The core ideas of fluke AoA control are twofold: to maintain positive net thrust and to keep the fluke AoA as close as possible to the maximum lift coefficient. For the fluke chosen in this study, when the first criterion is met, is required. When the second criterion is met, is required, where the lift-to-drag ratio is 3.31, which corresponds to . Therefore, the following law for AoA variation is formulated:
When , the attack angle maintains the maximum lift coefficient, i.e., .
When , the attack angle cannot maintain the optimal lift coefficient; otherwise, it will result in negative net thrust. Therefore, a smoothed curve for is set in this interval.
When , .
Subject to the aforementioned constraints, a smooth variation in the AoA within the interval
is ensured by
where
,
, and
. For ease of understanding, Equation (
9) will be referred to as the optimal AoA control law model in this section. The relationship between the AoA and
is illustrated in
Figure 6.
4. Caudal Joint Control in Torque Mode
For multi-joint underwater bionic robots, the undulation frequency, joint angle amplitude, and phase difference are key parameters determining motion performance. Generally speaking, the undulation frequency usually has the most significant effect on the swimming speed, and a considerable proportion of high-speed bionic robots are capable of high-frequency swimming [
26,
27,
28]. However, there is always an upper limit to the undulation frequency when the mechanism characteristics are considered. This paper proposes a joint angle control algorithm based on motor torque mode, which further improves the motion performance of the robotic dolphin compared to the common motor position mode without requiring hardware changes. The proposed method can be widely employed in the joint angle control of bionic robots driven primarily by DC motors.
4.1. Problem Description
Considering the actuation frequency limitation of commonly used direct current (DC) motor profile position (PPM) mode, we choose to control the torque of the tail motor and use the cycle synchronous torque mode (CST) of the motor driver to realize joint angle control. A schematic diagram of the fluke movement under CST mode is presented in
Figure 7. In this mode, the swinging motion of the fluke within a single cycle is also divided into two stroke phases (stage 2 and 3) and two return phases (stage 1 and 4). In the stroke phase, as the caudal joint angle increases, the output torque of the motor also increases. The reverse process takes place during the return phase, where the motor torque gradually decreases. The above process is similar to adding an adjustable-stiffness torsion spring at the caudal joint, with the stroke and return phases being similar to the processes of energy release and storage of the torsion spring. However, fundamentally, both processes consume energy from the motor, and the motor can adjust the energy storage at any time as needed.
Taking the motion from point to point as an example, at the beginning of a control cycle, the controller determines the torque within this control cycle based on the current error and the current state of the motor. If the load exceeds the limit during this cycle, it will only increase the position error without damaging the joint. Compared with PPM, the drawback of CST mode is limited control accuracy, while its advantage is that the fluke is approximately a passive joint and can be combined with higher-frequency waist joint flapping under the same conditions.
The extreme performance of CST mode depends on the motor’s heat dissipation, which can be calculated using the Joule integral formula (
It):
where
is the actual winding temperature,
is the heat dissipation loss,
is the winding resistance value,
is the initial measured temperature, and
is the winding thermal time constant.
In brief, the control algorithm for the caudal joint in torque mode is illustrated in
Figure 8. Firstly, the deviation between the desired value
and the current position
returned by the motor position sensor is obtained. Secondly, a fuzzy inference system is designed to map the current position deviation to the underlying motion parameter
. Then, the current position
is input into a friction compensation model to calculate the friction force and the restoring force of the latex skin, and then output the compensating torque
. Next, the desired torque
, compensating torque
, and current actual torque
are combined to form the actual torque setpoint
. Finally, the torque controller integrated within the motor drive converts
and other motor parameters
into control signals for the caudal joint motor. It is worth noting that the “torque controller” depicted in
Figure 8 is provided by the motor manufacturer and is embedded within the motor drive board, ensuring that the motor outputs the desired torque according to the given command. With the above controller, the fluke continuously moves along the desired trajectory and eventually flaps in coordination with the waist joint to achieve forward swimming.
4.2. Resistance Compensation Model
The basic requirement in torque mode is to achieve precise force transmission between the fluke and the tail motor. In order to improve the accuracy of force transmission, mechanical structure improvements, including the use of industrial cone gearboxes instead of custom-made bevel gears, have been adopted. Another factor affecting the force transmission of the fluke is the joint frictional force and the restoring force of the waterproof latex skin.
Figure 9a shows a schematic diagram of the waterproof latex skin at the tail end. The waterproof skin is designed with multiple creases at the tail end to provide space for the tail joint’s motion. When the creases are stretched or compressed, there is a restoring force that returns them to their original shape. The magnitude of this restoring force is positively correlated with the deflection angle of the fluke. In addition, there is friction introduced into the movement due to the planetary reducer, coupling, and bevel gearbox connecting the fluke and the motor output shaft. The factors affecting the joint frictional force are numerous and difficult to model accurately. This paper collectively refers to the two types of forces mentioned above as resistance. From the experimental results, it can be seen that the restoring force of the waterproof skin mainly contributes to the resistance, while the joint frictional force accounts for a small proportion.
The resistance of the caudal joint has a significant impact on the force transmission of the fluke, so compensation for this resistance must be included in the control model. Considering that the factors contributing to resistance are rather complex, this paper constructs a resistance compensation model based on experimental data. Specifically, the fluke is balanced to zero buoyancy and immersed in water as shown in
Figure 9a. The required torque value for each caudal joint angle is recorded.
Figure 9b shows the relationship between the caudal joint angle and the resistance compensation value
, where the unit of the compensation value is one thousandth of the rated torque. The equation of the fitted curve for these two variables is
4.3. Fuzzy Inference System Design
During the flapping process of the fluke, the hydrodynamic forces acting upon it constantly change. The relationship between the output torque of the caudal joint and the actual deflection angle of the fluke is directly affected by the hydrodynamic forces within a control cycle, making it difficult to establish an exact relationship between the two. Therefore, this section adopts a fuzzy inference system to realize the underlying mapping between the position error and expected torque.
Figure 10 shows the structure diagram of the fuzzy inference system.
The main purpose of the fuzzy inference system is to generate the control torque of the caudal joint based on the position error of the caudal joint angle. This paper adopts a dual-input single-output fuzzy mapping structure. As shown in
Figure 10, the dual input variables are the position error
and the rate of change of position error
, while the single output is the desired torque
.
represents the desired position, and
represents the current actual position returned by the motor driver. Here,
and
, respectively, denote the discrete values at time
. The position error
at time
and its rate of change
are calculated as follows:
In addition, trigonometric and Z-functions are adopted as the membership functions in this paper. and represent the fuzzificated and , respectively. represents the output of the fuzzy controller, which is used to determine the torque of the caudal joint.
5. Control Strategy of Caudal Joint with AoA Feedback
As mentioned earlier, the motors of the robotic dolphin’s waist joint rotate at a constant speed, so the control law for the waist joint is fixed. The motion of the waist joint approximates a sine wave. Therefore, this section focuses on the design of the control law for the caudal joint. The angle of the caudal joint should be actively adjusted according to actual conditions to ensure that the AoA conforms to the optimal AoA control law described earlier.
Figure 11 shows a simplified linkage diagram for the robotic dolphin’s tail stalk and fluke. In this figure, the robotic dolphin moves along the positive
x-axis, and the tail stalk is flapping upwards. Let
be the angle between the tail stalk and the forward direction,
be the angle between the fluke and the forward direction,
be the angle of the caudal joint, and
and
be the lengths of the simplified tail stalk and fluke linkages, respectively. At this moment, the velocity of the fluke in the world coordinate system is denoted by
, which consists of
, the velocity component of the robotic dolphin along the
x-axis, and
, the velocity component of the leading edge of the fluke perpendicular to the tail stalk, which is caused by the rotation of the waist joint.
represents the angle between
and
, which can also be viewed as the angle of movement for the fluke and is the main parameter in the optimal AoA control law described earlier.
is the angle between the fluke and
, i.e., the AoA.
To calculate the expected AoA based on the optimal AoA control law, the fluke movement angle
needs to be calculated first. Examining
, we have
Based on the geometry,
, and we have
Using the above equation, we can further solve for
:
Considering that
is the velocity component of the leading edge of the fluke perpendicular to the tail stalk caused by the rotation of the waist joint, its magnitude is
Combining Equations (
13)–(
16), we obtain
Therefore, we establish a closed-loop control algorithm for the caudal joint based on AoA feedback, as shown in
Figure 12. Firstly, based on the internal state data of the robotic dolphin, we use the optimal AoA control law to calculate the expected AoA
for the current control cycle. Secondly, we use the feedback data from the AoA sensor to calculate the AoA deviation
and design a fuzzy controller to map
to the expected angle of the caudal joint. The fuzzy control process is similar to the design approach in
Section 4 and will not be repeated here. Finally, we adjust the angle of the caudal joint to the expected value.
The control framework shown in
Figure 12 requires real-time feedback on the pitch angle, joint angle, and swimming speed to determine the optimal expected torque. The pitch angle of the robotic dolphin is provided by the AHRS in the head, the joint angle and angular velocity data are from the motor driver, and the determination of the swimming speed requires external measurement or manual intervention.