Next Article in Journal
Development of an Initial Burial Rate Estimation Simulator for Bottom-Contact Mines and a Reinforcement Learning-Based Mine-Laying Route Optimization Method
Previous Article in Journal
Tsunamites Versus Tempestites: A Comprehensive Review from the Precambrian to Recent Times
Previous Article in Special Issue
Navigating the Trade-Offs: A Quantitative Analysis of Reinforcement Learning Reward Functions for Autonomous Maritime Collision Avoidance
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Autonomous Navigation and Automated Control for a Small Balancing Hydrofoil Craft

Department of Electrical, Electronic and Computer Engineering, The University of Western Australia, Perth, WA 6009, Australia
*
Author to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2026, 14(1), 50; https://doi.org/10.3390/jmse14010050
Submission received: 28 November 2025 / Revised: 22 December 2025 / Accepted: 25 December 2025 / Published: 26 December 2025

Abstract

Hydrofoil vessels have recently re-gained interest, presenting a more efficient and comfortable alternative to regular vessels. However, research in hydrofoils is limited by the high cost and complexity of developing a complete vessel to use for experimental testing. This paper presents a novel low-cost, small autonomous hydrofoil that can be used to research different hydrofoil hardware and configurations, control routines for autonomous balancing while foiling, and autonomous driving algorithms for hydrofoil crafts. A modular design with low-cost, off-the-shelf electronics is proposed and developed. Three independent PID control loops were implemented and validated, enabling the boat to remain stable in a foilborne state. An onboard GPS was used to implement autonomous driving, allowing the boat to navigate between GPS waypoints in a river. Experimental testing of the vessel indicated suitability as a low-cost, easy-to-modify, and easy-to-use hydrofoil test bed. Future research should focus on aspects of the mechanical design, investigating new control methodologies to improve performance, and investigating the efficiency gains and feasibility of performing long-range autonomous missions.

1. Introduction

Climate change and conventional fossil fuels are becoming an increasingly large issue in modern society, creating a shift towards electric vehicles and sustainable fuels [1]. This has caused interest in hydrofoil crafts to resurface, as one key advantage of these types of vessels is that they offer substantial improvements in efficiency and fuel consumption. This was experimentally proven by Candela, who pioneered one of the first successful small, fully submerged electric hydrofoil crafts, the C-7. Testing showed that this craft consumed 80% less fuel compared to conventional diesel-powered boats [2]. Fully submerged hydrofoil crafts can also remain perfectly stable in rougher seas and will not sway or bounce on waves, which helps prevent sea sickness and is a key benefit for the transport industry. Hydrofoil crafts also offer improvements for autonomous boats, especially crafts required to conduct long-range missions. The increased efficiency of hydrofoil crafts increases their potential range, while also consuming less energy and so producing less pollution.
There are two main types of hydrofoil crafts, with the distinction correlating to the position of the hydrofoils (wings). Surface piercing hydrofoils have wings oriented in a V shape, with the tip of the wings protruding from the surface of the water [3]. These hydrofoil vessels are self-stabilizing when foilborne, as the angle of the wings provides self-righting moments should the vessel attempt to tip over in a direction. This simplifies the design and construction, as these vessels do not require control systems or control surfaces. However, their disadvantage is that they are unable to reject disturbances, offering inferior seafaring capabilities. Fully submerged hydrofoil vessels feature wings that are horizontal (parallel to the water surface) and designed to operate exclusively underwater. These crafts are inherently unstable, requiring control surfaces actuated by control software running in real time to keep the vessel stable when foilborne. Whilst increasing complexity and cost, the advantage of these vessels is that they can reject disturbances, offer enhanced seafaring capabilities, and remain perfectly stable in seafaring conditions.
Fully submerged hydrofoil crafts remain underexplored in the literature, as they have only recently gained attention. Research and innovation have historically focused on surface-piercing hydrofoil crafts, which are simpler due to their self-stabilizing nature. However, fully submerged hydrofoil crafts have gained popularity in recent years due to technological advancements, including the development of electric boats, improved sensors, and improved computer performance and capabilities. As such, physical platforms have only been developed in recent years, causing the literature to also be underdeveloped in terms of the autonomous driving of hydrofoil crafts. This is especially so in experimental research and testing, as research does not indicate the efficiency gains and feasibility of using hydrofoil crafts to perform long-range autonomous missions.
Research in autonomous driving has been carried out in terms of hierarchical path following [4], obstacle avoidance [5], and developing models/simulations for future testing [6,7]. This research has focused on simulation and simulation-based results for autonomous hydrofoil driving. There is a large gap in the literature regarding experimental testing and results. While the results of current literature are promising, further research can be explored using a physical platform and experimental testing to investigate the efficiency gains and real-world feasibility of autonomous driving in hydrofoil crafts, and whether it yields improvements compared to conventional watercraft. The focus on simulation-based testing and results is likely due to the significant cost, complexity, and time required to build fully submerged hydrofoil crafts. The inherently unstable nature of submerged hydrofoil crafts requires more complicated and expensive mechanical development (as pivoting wings or ailerons and elevators are required), coupled with sensors, an onboard controller, and well-tuned control software to maintain boat stability once the hull has lifted out of the water. This is difficult to develop from scratch on a budget and short timeframe, and adds significant overhead to any research.
This paper proposes a novel small hydrofoil testing platform, designed specifically to be used as a testing platform for researching hydrofoil hardware and software, including developing autonomous driving algorithms and experimentally testing them. The developed craft is one meter long, allowing it to be tested in smaller areas and transported easily. The hydrofoil craft uses off-the-shelf and affordable components, with a modular design that allows different sensors or mechanical configurations and wing profiles to be tested. Three PID loops, including a cascaded loop, were deployed onto the onboard microcontroller and are able to keep the boat foilborne and stable. Off-the-shelf sensors are paired with the PID loops and have demonstrated sound performance. A rudimentary autonomous waypoint driving algorithm has been tested and worked as expected, demonstrating a platform for further testing of more advanced autonomous driving capabilities, efficiency investigation, and improvement. Testing has shown that the chosen design, components, and software all work well together and present a useful platform to test different hydrofoil capabilities and changes. The developed design can be replicated and expanded to experimentally test and validate different control or autonomous driving methodologies.

2. Materials and Methods

2.1. Mechanical Design

The overall wing and mast design and placement were influenced by the requirements that the craft needed to be affordable, modular, and easy to work on/modify. Furthermore, the goal was to minimize submerging electronics, as this would lead to premature failure or the requirement to obtain costly fully waterproofed electronic parts. The chosen design uses a dual-wing configuration, with a large front wing producing most of the required lift and a smaller stabilizing wing at the rear. Table 1 illustrates a summary of the vessel’s design specifications.
Figure 1 illustrates the wing configuration. The front wing is situated just in front of the center of gravity, while the rear stabilizer wing is smaller and situated at the very back of the vessel. The front wing is split into two individually actuated wings, allowing their angle of attack (AoA) to be controlled independently to provide roll and pitch control. The wings are actuated by servos, which are kept inside the hull to minimize contact with water. A twin-mast design was chosen to facilitate this, as it provides a hinge mount for each wing half and shafts to run linking rods between the wing half and the servo in the hull.
An underwater thruster is used to provide propulsion, as this is simpler and introduces less wear than using gearing and shafts paired with a motor mounted in the hull. The underwater thruster is mounted underneath the rear wing, at the bottom of the rear mast. The rear mast is bolted off the back of the hull and can pivot around this point, which provides yaw control of the vessel. This design was chosen over a rudder as it is more robust and simpler, especially in such a small vessel.
Wings are a key component of hydrofoil vessels, and there are numerous factors to mathematically analyze, including the lift, drag, and profile [8]. The NACA wing profiles are well-researched aerofoil profiles that can be applied to hydrofoil crafts as well. A NACA2412 wing profile was chosen for this craft, as it is well researched and provides a good balance between lift and drag. The NACA2412 is also designed for slow velocities, which lends itself well to this hydrofoil vessel [9]. The National Advisory Committee for Aeronautics (NACA) have developed several different aerofoil types, characterized by their four-digit code. The NACA2412 profile has a maximum camber of 2% located at a distance of 40% from the leading edge and has a maximum thickness of 12%. The percentages are based on the aerofoil’s chord length [10]. While there may be better-performing wings for this application, which involves cruising speeds far slower than aircraft and wings submerged in water rather than air, the theoretical calculations (shown below) indicated satisfactory performance. As in-depth research, calculations, and testing of different wings to determine optimal wing type and design are not in the scope of this paper, the decision was made to simply use the NACA2412 profile.
Once the profile has been selected, there are still several other wing parameters that need to be calculated to suit the operating conditions [11]. The standard mean chord length (SMC) is the mean distance from the front to the back of the wing, in the direction of the fluid flow. The wingspan is the width of the wing, or the size of the wing perpendicular to the fluid flow. Multiplying these values together yields the wing’s cross-sectional area. The higher this value, the more lift the wing produces, but also the more drag it produces. The aspect ratio is the ratio between the wingspan and the chord length [8]. The higher the aspect ratio, the longer and narrower the wing is, producing less induced drag (better efficiency) but reducing structural strength. The lower the aspect ratio, the shorter and broader the wing is, producing more induced drag (less efficiency), but increasing structural strength. The SMC and wingspan can now be calculated for the front and rear wings, based on their required lift. The drag force for the designed wing can also be calculated. This is accomplished using the following equations [11]:
L = 1 2 C L p V 2 A ,
D = 1 2 C D p V 2 A ,
R = b S M C ,
A = b × S M C ,
where:
  • L is the lift force in Newtons;
  • C L is the coefficient of lift;
  • D is the drag force in Newtons;
  • C D is the coefficient of drag;
  • p is the fluid density in kilograms per cubic meter;
  • V is the desired velocity in meters per second;
  • A is the maximum projected area of the wing in square; meters
  • R is the aspect ratio;
  • b is the wingspan in meters;
  • S M C is the standard mean chord length in meters.
The parameters should now be populated to calculate the area of the wing, and thus the chord length and wingspan. The coefficients of lift and drag vary depending on the angle of attack [12]. As such, the ideal lift-to-drag ratio (maximum lift for the smallest amount of drag) varies with wing angle of attack. The angle of attack is the angle between the standard mean chord length and the fluid flow. At a 0° angle of attack, the wing is parallel with the flow and produces the least lift. As the angle of attack increases, the wing will produce more lift and more drag. For the NACA2412 profile, the optimal lift-to-drag ratio is at 4°. As such, the coefficient of lift used to determine the wingspan and chord length was 1.1854 [12]. The lift force in the calculation should be the vessel’s weight, which allows the vessel to set the wing to the optimal angle of 4° while cruising. An aspect ratio of 4 was chosen, as this is a good balance between structural strength and efficiency. The vessel’s weight during design was estimated as 5 kg. Previous experimental testing with the thruster demonstrated that 1.39 ms−1 was a safe and obtainable velocity. The 1000 kgm−3 density of pure water was used in the calculation. This was chosen as a good baseline value, since the vessel will be tested in varying conditions, and so an accurate water density value cannot be obtained. Using the equations, this yields:
49 = 1 2 × 1.1854 × 1000 × 1 . 39 2 × A ,
A = 0.0428 ,
4 = b S M C ,
0.0428 = b × S M C ,
b = 0.414 ,
S M C = 0.103 ,
The front wing surface area is thus calculated as 0.0428 m2, with a wingspan of 0.414 m and a mean chord length of 0.103 m.
As the front wings are designed to pivot, the formula can be repeated to calculate the lift force and drag force of the front wings for varying angles of attack.
Careful analysis of Table 2 demonstrated that the chosen wing size would provide adequate performance, yielding sufficient lift without inducing too much drag. Furthermore, a maximum wing travel of ±10° will provide sufficient roll and pitch control. This will yield a maximum lift force of 97.061 N (9.904 kg) and a vertical acceleration of 0.992 ms−2.
To simplify the design, the rear wing was based on the dimensions of the front wing. A large safety factor was used, and so the rear wing has the same chord length as the front wing but half the wingspan. This yields a wingspan of 0.207 m, a chord length of 0.103 m and a surface area of 0.0213 m2. While this was an overestimate, the rear wing is designed to be adjustable, so the wing could be adjusted to produce the exact amount of lift required. Furthermore, this safety factor allowed for error mitigation if the center of gravity of the final build was misplaced or any other issues arose.
Figure 2 demonstrates one half of the front wing assembly. The front wing is split in half, with one wing per mast forming the individual actuated twin wing design. A three-prong design at the bottom of the mast, paired with a through hole, is used to provide a mount and hinge for the wing. Both pairs of wings mount to their mast using the same shared 3 mm outer diameter steel rod, which ensures the wings are coupled to one another and rotate around a shared axis. The mast has two shafts, which are used to run control wire down to the wing, connecting the servo in the hull to the wing at the bottom of the mast. A dual control wire design (one wire on each side of the wing’s rotating axis) is used to create a robust and accurate actuation method.
The wings and masts are 3D printed out of polylactic acid (PLA), which was chosen for its affordability, accessibility, and ease of use. The masts are printed in two halves, glued together with epoxy, and reinforced with a 6 mm outer diameter steel rod. Each wing is also printed in two halves and reinforced with two 3 mm outer diameter steel rods. Each mast is bolted to the main hull using four M3 bolts, which allows for different designs to be mounted easily and rapid repairs/component replacements.
A single, pivoting mast was used at the aft of the vessel to support the rear wing and thruster, which can be seen in Figure 3. The red part denotes the mast, which was also 3D printed in three parts, glued with epoxy, and reinforced with a 6 mm steel shaft. The thruster is bolted to the bottom of the mast, with the rear wing mounted using a 3 mm steel rod. The rear wing is also bolted at the back, with an adjustable mechanism that can be used to change the angle of attack (and so the lift produced) of the rear wing. The white part at the top is the hinge, which uses an internal 6 mm steel rod to facilitate rotation. The green piece bolts the entire rear mast to the aft of the hull.
A pre-made commercial “toy” hull was used. This hull belongs to a remote-control small catamaran boat, the M41 from Traxxas, McKinney, TX, USA. This hull was chosen for simplicity, and because it offered high strength while also being light, weighing 1 kg.
The wings, masts and any other 3D printed parts were designed and modelled using AutoDesk Fusion360 (version 2605.1.52) with an education license. All the 3D printed parts were sliced using OrcaSlicer (version 2.2.0) and printed using a CR-10 SE from Creality, Shenzhen, China.

2.2. Electrical Design

The primary focus during the electrical design was to minimize cost while ensuring sufficient reliability from the sensors, processing speed from the microcontroller to provide sufficient control, and sufficient power to ensure the boat was able to rise on the foils.
A T200 thruster from BlueRobotics, Torrance, CA, USA was used to provide propulsion. This thruster has a maximum power output of 645 W, producing 66 N of thrust with a maximum flow speed of 4.5 ms−1. This is controlled by a Electronic Speed Controller (ESC) from BlueRobotics, Torrance, CA, USA and powered by a 6-cell, 7000 mAh Lithium Polymer (LiPo) battery from Zop Power, Shenzhen, China. A 300 W DC-DC buck converter from Tenstar Robot Store, Shenzhen China is used to step the battery voltage down to 5 V for the other onboard electronics.
The boat is controlled by an onboard microcontroller, which is an Arduino ESP32 T-Display-S3 from Lillygo, Shenzhen, China and is programmed using Arduino’s C++ through Platformio (version 6.1.18). A 6-axis (3-axis gyroscope and 3-axis accelerometer) inertial measurement unit (IMU) from is used to measure the orientation of the vessel. The specific IMU used is an MPU6050 from EstarDyn, Shenzhen, China, which features an onboard digital motion processor (DMP) that uses a proprietary MotionFusion algorithm that fuses the values to produce orientation and acceleration values. These values have been tested independently and have displayed sufficient repeatability, accuracy, and low drift. A waterproof A02YYUW ultrasonic sensor from DFRobot, Shanghai, China is used to measure the vessel’s height above the water. This sensor also provides a built-in, proprietary filtering algorithm that supplies a smoother and more stable value. This algorithm can be disabled, as it reduces the updating frequency of the sensor, but the decision was made to use it, as noisy and spiky data would yield poor performance in the control loops. A Neo-6M global positioning system (GPS) sensor from Ublox, Thalwil, Switzerland is used to measure the current global position and heading of the vessel. The NEO-6M uses an internal Kalman filter to smooth the raw satellite measurements and estimate the current coordinates and heading. This provides a reliable and accurate heading value, but is subject to latency, which is why it is fused with the IMU heading.
Three onboard DS3235 3.5 Nm waterproof servos from Dsservo, Dongguan, China are used to control the two wings and the rear mast (acting as a rudder). A Micro Maestro 6 Servo Controller from Pololu, Las Vegas, NV, USA provides a control interface between the microcontroller and servos.
A FS-i6x handheld transmitter from Flysky, Shenzhen, China, paired with an FS-ia6b receiver from Flysky, Shenzhen, China, is used to allow an operator on the shore to remotely control the craft and provide inputs.
Figure 4 illustrates the different electrical components and how they are wired together.
The majority of the electronics are mounted inside a sealed acrylic box to prevent water damage from any water ingress in the hull. The waterproof servos are mounted outside this enclosure, and so is the LiPo battery. Both of these are resistant to splashing and brief submersion. Additionally, the servo cable connections are kept inside the acrylic box to prevent water damage. The LiPo cable connection is covered in a removable plastic seal to prevent electrical shorts.
It should be noted that an in-depth parts list can be found in Appendix A.

2.3. Vessel Dynamic Model

A mathematical dynamics model is important to analyze and consider before exploring different control designs and routines. This is especially important in submerged hydrofoil boats, where well-performing control routines are required to ensure smooth and stable flight. To simplify the analysis, the dynamic models will be split into three separate 2D systems: the roll dynamics, the pitch (including heave) dynamics and the yaw dynamics. This is a reasonable approximation to make, as these three control areas are typically unlinked and independent during trivial foiling.
The heave and pitch dynamics can be modelled (respectively) using the following two equations:
m z ¨ = L f + L r m g ,
I θ ¨ = L f l f + L r l r ,
where:
  • m is the total vessel mass in kg;
  • z is the vertical displacement in meters (upwards positive);
  • L f is the front wing lift force in Newtons;
  • L r is the rear wing lift force in Newtons;
  • g is the acceleration due to gravity in meters per second;
  • I is the mass moment of inertia about the pitch axis in kilograms per meter squared;
  • θ is the pitch angle of the vessel (nose up positive);
  • r f is the distance from the center of mass to the front wing (fore direction positive);
  • r r is the distance from the center of mass to the rear wing (fore direction positive).
It should be noted that the effects of waves are neglected in this model, as the dynamics of a foilborne boat are largely unaffected by waves (provided the peak wave height is lower than the vessel cruising height). Rather, the waves cause sensor noise, which presents a separate problem. Only one angle is denoted for the front wings (despite the fact that they can move independently) as pitch control requires the front wings to move together, so they share the same angle. The CAD models on Fusion360 were combined and passed into an in-built tool to determine the mass moments of inertia for the complete vessel. It should be noted that these values are estimates and not fully accurate, as developing an accurate model (with the correct weights and component mounting locations) is non-trivial. It was not possible to model the hull in CAD, as a commercial hull was used and the manufacturer did not supply any CAD files or dimensions. Furthermore, it is difficult to accurately model and capture every part used and its correct weight and placement to obtain a true model in CAD of the physical vessel. As such, it should be noted that the mass moments of inertia provided are estimates. Substituting in the known constants, a mass of 5 kg, a gravity acceleration constant of 9.8 ms−2, an estimated mass moment of inertia of 0.4707 kgm2, a front wing distance of 0.03 m and a rear wing distance of −0.4 m yields the following simplified equations:
5 z ¨ = L f + L r 49 ,
0.4707 θ ¨ = 0.03 L f 0.4 L r ,
The lift equations can now be substituted to further simplify the dynamic models. The same constants provided in the previous wing calculations can be substituted here, which are the front wing area of 0.0428 m2, rear wing area of 0.0213 m3, velocity of 1.39 ms−1, and water density of 1000 kgm−3. Simplifying the coefficients of lift is non-trivial, as they change depending on the angle of attack of the wings. However, careful analysis of the coefficients of lift in Table 2 demonstrates a linear behavior in the operating range of the wings. As such, the coefficient of lift can be approximated in relation to the wing’s angle of attack by using linear regression. The sum of least squares method provides a line with a gradient of 0.190 and a y-intercept of 0.3445. Now, it should be noted that the wing angle of attack is based on its orientation relative to the vessel and the vessel’s orientation. As such, the orientation of the wing to be used in the formulas is the summation of the wing’s orientation relative to the vessel and the vessel’s orientation. For the front wings, θ f is used to denote the relative wing orientation, which is commanded by the control routine. As mentioned, the vessel orientation is denoted by θ and the rear wing relative angle is a fixed 0°. As such, the following simplified lift equations are obtained for the front and rear wings, respectively:
L f = 41.347 ( 0.19 ( θ f + θ ) + 0.3445 ) ,
L f = 7.8559 ( θ f + θ ) + 14.2440 ,
L r = 20.577 ( 0.19 θ + 0.3445 ) ,
L r = 3.9096 θ + 7.0888 ,
This can now be substituted into the original equations and simplified to yield the following heave and pitch dynamics equations, respectively:
5 z ¨ = 7.8559 ( θ f + θ ) + 3.9096 θ 27.6672 ,
0.4707 θ ¨ = 2.3568 ( θ f + θ ) 1.5638 θ + 1.4377 ,
This process can now be repeated to determine the roll dynamics equation. Only one equation is required here, as it is assumed the vessel only rotates in the roll axis but does not translate linearly. This is a reasonable assumption as the vessel does not typically move sideways during operation, and the wings are not able to prevent this in any case. It should be noted that the rear wing is not present in this model as it does not affect the roll orientation of the craft. It should also be noted that there are two variables present for the front wing angles, θ p for the left wing and θ s for the right wing. This is because roll movement of the craft requires a moment imbalance, so the two wings move separately (to produce a lift imbalance in the vessel’s roll direction). It is also assumed that the craft’s roll orientation will not affect the lift produced by the wings. This is reasonable as the control loop should always be maintaining a constant 0° roll angle. The following roll can now be modelled using the following equation:
I θ ¨ = L p l p + L s l s ,
where:
  • I is the mass moment of inertia about the roll axis in kilograms per meter squared;
  • θ is the roll angle of the vessel (left wing up positive);
  • L p is the left (port) wing lift force in Newtons;
  • L s is the right (starboard) wing lift force in Newtons;
  • r p is the distance from the center of mass to the left wing (port direction positive);
  • r r is the distance from the center of mass to the rear wing (port direction positive).
The same equation as before can be used to model the lift equations for the two front wings, except that the area of each wing is halved, so 0.0214 m2. This yields the following two lift equations for the left and right wings, respectively:
L p = 3.928 ( θ p ) + 7.122 ,
L p = 3.928 ( θ s ) + 7.122 ,
This can now be substituted into the original model. The mass moment of inertia in the roll direction is 0.089 kgm2, the left wing distance is 0.104 m, and the right wing distance is −1.04 m. This yields the following simplified roll dynamics equation:
0.089 θ ¨ = 0.409 θ p 0.409 θ s ,
Finally, the yaw dynamic model can be obtained. This model assumes the vessel only moves forward in a straight line, and so there is no need to consider sideways motion in the vessel. As the forward velocity of the vessel is directly proportional to the thruster power, and not of relevance to the control loops, only the yaw rotation model will be obtained. It should be noted that yaw rotation is simply caused by rotating the thruster so that it is no longer in line with the center of rotation, causing the boat to turn in the yaw. This yields the following model:
I θ ¨ = r t T sin ( θ t ) ,
where:
  • I is the mass moment of inertia about the yaw axis in kilograms per meter squared;
  • θ is the yaw angle of the vessel (turning left (port) positive);
  • r t is the distance from the center of mass to the left wing (aft direction positive);
  • T is the thruster force in Newtons;
  • θ t is the angle of the thruster or rudder. A value of 0 is in line with the axis of rotation, so no turning. Positive angle is such that the vessel will turn right.
The known values can now be substituted in, which is a mass moment of inertia of 0.449 kgm2 and a thruster distance of 0.4 m, yielding the following model:
0.449 θ ¨ = 0.4 T sin ( θ t ) ,

2.4. Software (Control) Design

Proportional Integral Derivative (PID) control loops were used to keep the craft stable once foilborne. The choice was made to use PID loops over other control methodologies as they are simple to program, computationally efficient, well-researched, and work well in a range of scenarios. Analysis of the theoretical dynamic models of the vessel show that PID control loops are applicable. The dynamic models are all time-invariant second-order systems, which lend themselves well to PID control. It should be noted that the dynamic models reveal that the system does not have any damping. While this is likely due to an over simplification of the system (for example, water will present a damping effect to the system), it is still a fairly accurate conclusion as the hydrofoil vessel is largely undamped. This can result in the control loops causing oscillation, and the vessel movements are largely undamped, causing the vessel to tip over/retain its current state unless the control routine changes the wing orientation. This will require careful tuning, and as it will later be seen in testing, required modifications to the PID loops to improve the vessel stability and performance. While there are a variety of other control methodologies that have been researched and could have been used, the scope of this paper does not involve identifying and testing the optimal control methodology, resulting in the decision to use PID loops. Furthermore, the dynamic models showed that PID loops would be a possible control loop for this application, so they were initially chosen due to their simplicity. The control tasks were split into three main parts: roll, height, and yaw.
Figure 5 demonstrates the roll control loop. The purpose of this is to keep the vessel stable in the roll axis (the axis in line with forward motion). The PID loop’s input sensor value is the craft’s current roll orientation, which is supplied by the MPU6050 IMU sensor. The setpoint is set to 0°, as the boat is currently designed to always remain level in the roll axis. The PID loop output is a PWM output, in milliseconds. It specifies the difference (in milliseconds) between the high duration of the left-wing and right-wing servos’ duty cycle. As such, a single output is mapped between two servos, providing a differential value and allowing the output to affect only the roll orientation of the craft. The PID loop runs at a frequency of 50 Hz. The parabolic modifier was added to the proportional term after initial testing demonstrated the roll response is non-linear. The hydrofoil vessel requires much higher proportional gains at high error to ensure a fast response, while requiring low proportional gain at low error to avoid oscillations. This was implemented by modifying the proportional term to be a function of error squared, instead of just error. This changes the output to a parabolic curve, instead of a linear curve, providing high gradients at high error, but low gradients at low error.
Figure 6 illustrates the height control of the craft. The purpose of this control loop is to keep the hull at a constant desired height above the water. It is also capable of controlling the boat’s pitch orientation, but it only does this in order to achieve the main goal of a constant, stable height. A cascaded PID system is used, where the outermost PID loop determines the required pitch angle and then feeds this into the pitch PID loop, which brings the vessel to that required angle. The outermost loop’s sensor input is the vessel’s current height above the water, which is supplied by the waterproof ultrasonic sensor. The sensor is coupled with roll and pitch correction calculations to ensure it provides an accurate altitude value. As the sensor only has an update rate of 100 ms, this PID loop only runs when a new sensor value is received, which occurs at a frequency of approximately 10 Hz. The setpoint is a constant fixed value in millimeters, which was pre-determined with experimental testing. This value can be modified depending on how far off the water the hull should be. The output of this control loop is the required pitch angle in radians, which is sent to the inner PID loop. A cascaded controller has been used here, as it will yield improved performance compared to using a single control loop with only one sensor reading (as opposed to both an ultrasonic and IMU sensor). The ultrasonic sensor and altitude loop should not control the wings directly. This is because the ultrasonic sensor is unable to capture the orientation of the craft, which can result in the vessel climbing/descending at the wrong angle (and thus velocity), or oscillating around the set altitude as the vessel struggles to maintain a constant neutral angle. By adding a pitch control loop with a direct pitch angle sensor value, the vessel is able to climb and descend at accurate angles (and thus velocities) and maintain a constant altitude without oscillation. The exponential modifier was applied again to the proportional gain of this loop, as the altitude response of the vessel is highly non-linear. This modifier was also required as the pitch output is restricted to a maximum of 10°. As such, the outermost loop needs to have a high output until the error becomes quite small. Once the error has decreased, the gain required is very small, as even a 1° pitch change will cause a rapid altitude change.
The purpose of the inner PID loop is to maintain the required pitch angle. The input sensor value is the current pitch angle, which is also supplied by the MPU6050. The setpoint is based on the required pitch orientation from the outermost control loop. The output is a single value and specifies the adjustment to the high period of the wing servos’ cycle time. This moves the wings together, which changes the pitch rather than the roll orientation of the craft. A parabolic modifier was not used for this control loop, as a standard PID loop was found to perform adequately while testing. This PID loop runs at a frequency of 50 Hz.
Figure 7 demonstrates the yaw control of the craft. Its purpose is to keep the heading of the craft at the required orientation. The input sensor value is the current yaw (heading) angle supplied by the MPU6050. It should be noted that the MPU6050 does not have any onboard magnetometers, and so the heading angle is not relative to true north. The yaw angle is repeatable and has minimal drift (0.5° per minute, experimentally determined), but it is not accurate. This makes the control loop capable of reliably maintaining a steady heading, but sensor fusion is used with the GPS sensor to maintain an accurate GPS heading for autonomous waypoint driving. This control loop operates at a frequency of 50 Hz. The output is in milliseconds and specifies the duration to modify the rudder servo uptime. The error calculation for this PID loop was modified, as there are two possible errors when dealing with heading. This is because the craft can rotate clockwise or counterclockwise, and the direction of the shortest angle to turn can vary depending on the situation. As such, the PID loop was updated to calculate both errors (a positive and a negative error) and only retains the error with the smallest magnitude. Testing demonstrated success using only a proportional gain, which is why this control loop does not have an integral or derivative term.
As each PID loop input (to calculate error) uses a value directly supplied by a sensor, and each sensor is using its own onboard, proprietary filtering, no additional filtering is performed on the onboard microcontroller. The sensor filtering and fusion are handled on the sensor side, and so the only sensor fusion taking place on the ESP32 is the fusion of the IMU yaw and the compass heading.
The GPS autonomous driving methodology was trivially designed to provide a simple but reliable proof of concept for autonomous driving of the small hydrofoil craft. The algorithm drives the vessel in a straight line between GPS waypoints. The onboard Neo-6M GPS sensor reports the current GPS coordinates each second. When this occurs, the microcontroller calculates the spherical distance to the desired waypoint from the current GPS location. From this, the required heading is calculated. The GPS sensor also reports the current heading each second, and so the error is then calculated based on the current GPS heading and the required GPS heading. This error is passed into the yaw PID loop by using addition to update the setpoint. This sensor fusion uses the accuracy of the GPS heading (which is also aligned with true north) to ensure the craft drives with an accurate heading, while using the higher update frequency of the MPU6050 to maintain a stable straight line until the next GPS heading update is received. Testing has indicated that there is latency in the GPS heading value while the craft is rotating rapidly in the yaw. As such, the vessel will rely exclusively on the MPU6050 yaw value until it has remained within ±20° of the yaw setpoint for 3 s. If this is not done, the GPS will output incorrect headings, which will result in excessive rotation and prevent the vessel from travelling in a direct, straight line to the target coordinate.

3. Results

3.1. Mechanical and Electronic Assembly

Figure 8 and Figure 9 demonstrate the complete vessel, which was able to successfully foil and remain stable once foilborne. It has been tested in both an outdoor pool environment (calm waters) and a river environment (0.1 m wave height). The vessel is 1100 mm long, 450 mm tall and 450 mm wide. It also weighs 5.03 kg. The wing and wing-pivoting design were successful in providing adequate pitch and roll control of the craft, and the wings produced sufficient lift to raise the hull out of the water without requiring the thruster to output maximum power.
Ensuring the hull is completely sealed and watertight has proven difficult, and some water ingress does occur during testing. While professional testing to determine an accurate ingress protection (IP rating) was not possible, experimental testing has revealed the degree of water ingress. Significantly larger amounts of water ingress occurred in the early stages of tuning, as the hull would drop rapidly down into the water, causing water to flood over the bow. The two hatches at the top of the vessel are difficult to waterproof (while being removable), and so waves over the bow or similar cause high water ingress. The catamaran design of the hull proved effective in drawing water away from the acrylic box, servos, and battery. Water ingress into the hull during normal operation and testing has been minimal, with around 50mL or less of water ingress during 30 min of operation. The acrylic box has proven resistant to any water ingress into the hull, with no water penetrating through the enclosure at any stage. As such, there has not been any water damage to any of the electronics in the vessel.
The CPU performance and loop cycle time were experimentally measured to evaluate the performance of the ESP32 and its ability to handle an increase in the complexity of the software. One ESP32 cycle is the time taken to complete all the current tasks, which includes sensor reading, reading the receiver, evaluating the PID loops (if required), evaluating the GPS data and headings, and logging. The ESP32 required an average of 3.337 ms per cycle, with a maximum cycle time of 4.947 ms and a minimum cycle time of 1.512 s. As the PID loops are designed to run at 50 Hz, the ESP32 cycle time is also capped at 50 Hz. At the end of each cycle, it simply waits the required time to ensure the overall cycle time is consistently 20.0 ms. The ultrasonic sensor data is read by processing the available data in the serial buffer each cycle. This required an average time of 0.019 ms, with a maximum time of 0.079 ms and a minimum time of 0.002 ms. The GPS sensor is also read by processing the data in the serial buffer each cycle. This required an average time of 0.216 ms, with a maximum time of 0.684 ms and a minimum time of 0.009 ms. The IMU data is only processed when the sensor sends a data available packet, though this always happens every cycle as the IMU update rate is faster than 50 Hz. Processing an IMU data packet required an average time of 2.47 ms, with a maximum time of 3.695 ms and a minimum time of 1.212 ms.
The ultrasonic sensor has worked in an exposed aquatic environment. However, while mechanically robust in water, the sensor will not output reliable data if the transmitter or receiver covers are exposed to water. Mounting the ultrasonic sensor above the surface of the water has proven to work well to mitigate this. The sensor has reliably output data at 100 ms during experimental testing, though the output is unable to detect and remove waves. Experimental testing of the GPS sensor has demonstrated an update speed of approximately 1 Hz. The GPS’s accuracy has not been verified, but testing has indicated sufficient accuracy for path planning and following. While the accuracy has not been verified, the GPS shows high precision and repeatability, yielding precise results with a resolution smaller than 1 m. As a result, the GPS coordinates and heading values have been sufficiently accurate to drive in a straight line to the target coordinates without significant drift.

3.2. First Stage of PID Control Routine Tuning

PID tuning for a hydrofoil craft is inherently difficult, as a baseline tune is required to ensure the craft has some ability to rise onto the foils and provide sufficient data for further tuning. The initial tuning stage focused on simultaneously tuning roll and pitch. The PID loops were tuned through manual testing. The proportional gain is first tuned to provide a fast response without oscillation. The integral gain is then tuned to eliminate steady-state error. The proportional and derivative gains were then modified together to provide a faster response without introducing oscillations. The roll loop is tuned first, and it is simply tuned quickly to achieve a functional baseline. The pitch PID is then tuned by applying a step input, as it must be able to handle rapid setpoint changes from the outermost loop. During this tuning phase, the outermost loop is not being used, and its output is replaced with a step input to the pitch loop, from 0° to 8° for 5 s, and then back to 0°. The altitude PID loop (the outermost loop) was then implemented and tuned alongside the other two PID loops. Once the height control was working well, the roll PID loop could be properly tuned. One key challenge that was identified is that the zero points for the wing orientations need to be accurately determined to ensure the PID loops perform adequately. The zero points are determined through experimental testing and require adjusting the pitch and the roll orientations of the wings to prevent passive drift. The vessel is tuned in a pool environment to reduce the impact of external factors and simplify the tuning process.
Figure 10 demonstrates the results after the first phase of tuning. It should be noted that each control loop has two subgraphs. The upper subgraph displays the setpoint and sensor input. The sensor input changes depending on the control loop, with the value being orientation in degrees for the roll, pitch, and yaw loops and height above the water in mm for the altitude loop. The lower graph displays the PID output, which is in PWM milliseconds for the yaw, roll, and altitude loops, and in degrees for the pitch loop. The roll PID loop is performing adequately, but struggles at higher errors. This can be seen as time increases, the vessel tips over in one direction, as the control loop is too slow to correct. The pitch PID loop is able to reliably track the setpoint, without oscillation or too much delay. It should be noted that the large deviation of the sensor from the setpoint at the end of the pitch PID graph is due to the boat falling back into the water, as the roll loop was unable to prevent the boat from tipping over. The altitude PID loop is able to maintain the setpoint without significant oscillation, but the response time is quite slow.
Table 3 quantitatively demonstrates this behavior. It should be noted that the rise time of the roll control is not determined as the vessel commences at the setpoint, and the rise time of the pitch control is also not determiend as the setpoint changes too rapidly. The maximum magnitude of the error has not been determined for the altitude loop, as the statistic is misleading since the vessel is naturally at maximum error around the time the test commences. The roll PID and altitude PID display high root mean square error (RMSE) and integral of absolute error values (IAE), which reflect an inability of the control loops to track close enough to the setpoint. The roll PID loop also has a large maximum error, reflecting its inability to recover the vessel once it begins to tip over. The rise time is indeed quite slow, at 3.34 s. It should be noted that due to the initial decrease in height (due to the rotation changes as the vessel initially accelerates rapidly), the rise time is taken as the time from the minimum sensor value until the setpoint is obtained. Table 3 also reflects the satisfactory performance shown in Figure 10 of the pitch PID loop. The RMSE and IAE are quite low (much lower than the roll loop), demonstrating the PID loop is performing well and keeping the vessel close to the setpoint with small error.
Figure 11 illustrates the results after the second phase of testing, which is after the parabolic proportional gain modifier has been implemented to help improve the results. The roll PID loop is still subject to oscillations with a slightly higher frequency than before. However, the maximum error is significantly lower than during the first phase. The altitude loop is now capable of bringing the vessel to cruising altitude faster than before, with the steady state oscillations also decreasing in amplitude. However, there is a large steady state error now, which is due to the lack of implementation of integral gain. As the visual performance of the vessel was satisfactory with those changes, the decision was made to move to implementing the autonomous driving.
Table 4 quantitatively reflects the improvements in the PID loops once the parabolic P gain was implemented. It should be noted that this test duration was higher than the previous, resulting in higher RMSE and IAE values. To ensure an accurate comparison before and after the parabolic gain was implemented, the roll loop was corrected by removing the last data values until the same number of samples were present as in the first test. This correction was not performed for the altitude PID loop, as an improvement was made to the altitude PID loop frequency, reducing it to improve the integral and derivative gain performance. As mentioned, the altitude PID loop exhibited a high steady state error. This was not tuned in this test as the steady state error was considered more trivial to remove than oscillations, and was not in the scope of the parabolic gain’s improvements. The vessel oscillated around an approximate setpoint of 120 mm above water, so the initial setpoint of 170 mm was replaced with 120 mm and the statistical values recalculated. The steady state error can then later be eliminated by implementing an integral gain or simply adding an offset to the setpoint. The roll PID loop’s RMSE and IAE have reduced significantly, showing the control loop is able to ensure the boat’s roll orientation remains closer to the setpoint with lower error. This is also reflected in the large decrease in the maximum error of the roll loop. The altitude PID loop’s RMSE and rise time have decreased, which shows the parabolic function was able to reduce the initial PID loop’s inability to handle the non-linear response. However, the IAE has increased, reflecting the increased oscillations in the altitude response. This is likely due to an improvement required on the parabolic gain tune and the lack of a derivative gain.
Figure 12 denotes the behavior of the yaw control loop after tuning the proportional gain. While a small amount of oscillation is observed on the graph, this is not observed on the boat during physical testing. The response was also determined to be fast enough and without steady state error, which is why the system was not further tuned by adding an integral or derivative gain.
Table 5 quantitatively reflects this behavior. It should be noted the maximum magnitude of the error is not calculated, as the statistic is misleading since the vessel naturally begins the test at maximum erro. The yaw control loop demonstrates a sufficiently low RMSE and rise time indicating a satisfactory ability in the vessel to maintain a desired heading. The IAE value is slightly high, indicating the control loop may benefit from a slight reduction in the proportional gain or an increase in the derivative gain.

3.3. Autonomous Driving Results

Figure 13 demonstrates the hydrofoil craft completing a simple autonomous mission. The vessel started at the first coordinate, with the numbers increasing to show the path of the hydrofoil vessel. The gold checkpoint indicates the target coordinate, which the vessel was able to reach. It should be noted that the vessel commenced the mission while facing 180° away from the target. Furthermore, the first GPS waypoints do not have a current heading reading. This is because the control routine does not use the GPS heading until the yaw has been stable for over 3 s, to ensure a stable and accurate GPS heading is received. The boat commences the mission 40 m from the waypoint. The raw data can be found in Appendix A.
The performance of the autonomous driving was quantitatively analyzed by projecting the coordinates onto a flat, local Cartesian coordinate frame using tangent plane approximation. The cross-track error was calculated for each point based on the ideal straight line path between the starting point and destination point. Statistical analysis of these values yielded a mean cross-track error of 1.798 m, an RMSE of 2.171 m, and a maximum error of 4.477 m.
Figure 14 demonstrates a more advanced autonomous driving test. The vertical distance between the target points is 37 m and the horizontal distance is 41 m. The raw data can be found in Appendix A.
The performance was once again analyzed quantitatively by using a cross-track error approach. As there are additional waypoints (multiple lines), the cross-track error for each waypoint is chosen as the smallest error found by checking against each of the line segments (each side of the rectangle). This yielded a mean cross-track error of 2.318 m, an RMSE of 2.953 m, and a maximum error of 7.043 m.

3.4. PID Control Routine Tuning Revised

The altitude and roll control routines offered satisfactory visual performance and satisfactory performance to test autonomous driving. As such, the decision was made to implement the autonomous driving routines and test them after the initial phase of tuning. However, quantitative analysis still demonstrated unsatisfactory performance, and an analysis of the graphs displayed undershoot in the altitude loop and oscillation in the roll and altitude loops. As such, further PID tuning was performed to eliminate this.
Figure 15 demonstrates the behavior of the control loops after they were further tuned. Visual analysis of the roll response demonstrates improvement over the previous tune, with the error oscillating around a 0° angle with a smaller amplitude, and with improved correction of steady state error. Table 6 quantitatively demonstrates this, with the RMSE, IAE, and maximum error magnitude reduced, indicating an improved ability in the vessel to remain at the roll setpoint. Analysis of the altitude graph demonstrates that the vessel is able to reach the setpoint with minimal overshoot and oscillation. However, the rise time has been reduced, which testing determined was necessary to prevent overshoot and oscillation.
While these changes yielded superior quantitative performance on the vessel, it should be noted that they increased the tendency of the vessel to oscillate (due to the improved responsiveness), especially when navigating turns. The vessel is also subject to altitude reduction when undergoing sharp turns, due to the loss of lift as linear velocity decreases and the altitude loop compensating too slowly.
It should also be noted that the oscillations are a product of the control loops responding inadequately, and not due to sensor noise. That is, the vessel is physically oscillating, which can be visible at higher amplitudes. The sensors have been tested independently, and output stable and repeatable values due to their onboard filtering algorithms.
The roll and altitude PID controllers were tested 10 times in the same conditions to verify the performance of these new parameter tunes. This is shown in Table 7 and Table 8. The roll exhibits a negative bias, indicating a potential control parameter or hardware issue (imbalanced vessel). The different statistical metrics have low standard deviation, indicating consistency in the PID loop performance. The altitude also exhibits a positive bias, though this is likely due to the slow rise time of the system. The standard deviation is higher than the roll, indicating this system performs less consistently, likely due to the fact that it is more difficult to perform small altitude changes compared to small roll changes.

4. Discussion

4.1. Hardware Results

The hardware design and selection, including the hull, masts, and wings, have demonstrated satisfactory performance throughout testing. There have been no structural failures in the vessel from the forces experienced during foiling and thruster propulsion. The main masts have been bolted on and so can be trivially removed to be replaced with new or different designs. The wings can also be trivially replaced as they are held in place by a removable steel rod. The electronics are mounted and wired in a non-permanent manner, allowing for different sensors to be tested or the microcontroller to be replaced. The light total mass and small form factor of the vessel simplify the testing process, allowing the vessel to be trivially tested in a wide range of environments. Overall, the vessel has functioned well as a hydrofoil testing platform, and the modular design allows for rapid prototyping and modification.
The water ingress into the vessel has been manageable. Water ingress in the hull is marginal during normal operation as the hull is kept out of the water. Furthermore, most of the water ingress occurs through the hatches at the top of the hull, which is uncommon during normal operation as the boat does not experience waves over the bow. Any water ingress into the vessel pools at the bottom of the catamaran hulls, which keeps it away from the acrylic box or exposed waterproof electronics, and prevents damage. This water can be trivially removed after operation using a syringe. As such, the level of waterproofing in the hull is adequate, and the acrylic box has demonstrated adequate performance in protecting the vulnerable electronics from the small amounts of water ingress into the hull.
The NACA2412 wing profiles with the pivoting wing design have also offered satisfactory performance. The craft is capable of rising on foils with the thruster operating at 50% maximum power. The pivoting wings create sufficient changes in their lift force to allow rapid changes in the pitch and roll orientation of the craft, and so provide sufficient response to be used by control loops. While the wing and mast design offers satisfactory performance, there are several optimizations that can be made and further research that can be carried out in this area. The NACA2412 profile is well-researched as an aerofoil, but a different wing profile may offer improved efficiency and performance in water for this application. Furthermore, mast design should also be revised, with in-depth stress and strain calculations and finite element analysis (FEA) performed. The design profile could be made smaller, or smaller reinforcing steel rods could be used, improving the efficiency of the vessel by reducing mass and drag. The actuation method of the wings can be improved. The pin and hinge joint in the wing is subject to creep deformation over time. This is quantified through the measured deformation of the holes in the hinge used to pass the steel rod through. The holes were initially circular, with an inner diameter of 3.10 mm. After around 12 testing sessions conducted with the vessel, the holes have become elliptical in shape, with a horizontal diameter of 3.20 mm and a vertical diameter of 3.30 mm. Whilst testing has not indicated performance loss, the design can be improved by changing the design or the construction material. This should involve reconstructing the wings with a composite material such as carbon fiber or glass fiber reinforced polymer (GFRP), as the weight increase from using steel or aluminum would be too substantial.
Figure 16 demonstrates an FEA analysis performed to investigate the strength gains of a GFRP design rather than a 3D-printed design. This was performed in Fusion360, with a fixed position constraint at the top of the masts and a remote force (simulating lift) applied to the bottom of the wings. The steel rods are present and used to mount different pieces together. Pin constraints were used to simulate these joints. It should be noted that the full wing was used in the analysis, but a portion of the wing has been hidden post-calculation to demonstrate the stress on the steel bar. A total lift force of 98 N (10 kg) is applied, simulating the combination of the vessel mass and the lift provided by the wings. The results indicate a maximum deflection of 0.007 mm at the rear wing tips. The safety factor is calculated by dividing the yield strength by the von Mises equivalent stress, and has a minimum value of 178.9. These results indicate that GFRP masts and wings would offer substantial strength and rigidity, offering a mechanical construction with increased strength and rigidity, and with a reduced impact from creep. It should be noted, however, that rebuilding the masts and wings with GFRP would increase the mass to 1.295 kg. Considering the more than sufficient strength of a full GFRP construction, an ideal compromise between strength and weight may be to use a 3D-printed interior with a GFRP exterior/shell.
The rear wing requires a negative AoA (approximately −5°) to offer stable performance when foiling and avoid breaching the surface and losing lift. This was empirically determined during testing. The expected rear wing angle can be determined by analyzing the dynamic model, specifically the pitch angular acceleration:
0.4707 θ ¨ = 0.03 L f 0.4 L r ,
A stable hydrofoil vessel at cruising height should not produce any net moments around the pitch angle. Substituting in the lift force at the front wing cruising angle, which is 49 N, and a net acceleration of 0° s−2 yields the following rear wing lift:
0 = 0.03 × 49 0.4 L r ,
L r = 3.675 ,
An interpolation of the coefficient of lift values yields a wing angle of −0.717° to achieve a lift force of 3.675 N. However, the rear wing angle of attack of −5° produces a lift force of −11.583 N, which is unexpected as the model indicates this should cause instability. This may be indicative of different factors, such as incorrect model parameters or an incomplete or incorrect model. The rear wing should ideally be angled at 4° AoA to optimize efficiency, and as such, this would be an important area to research. Further research should focus on further testing and measurement of the hydrofoil vessel to ensure the correct parameters are being used, and then investigating the validity of the model. The current results indicate that the rear wing should be redesigned with a much smaller surface area to reduce lift and drag. This is an important area to research, as an oversized rear wing will increase drag and reduce efficiency.
The low-cost microcontroller and sensors have all offered satisfactory performance for this vessel, with the accuracy of the sensors and processing speed of the microcontroller creating a functional, low-cost platform that can be used to test different hydrofoil control methodologies for stabilization and autonomous driving. Testing has indicated that the microcontroller still has a large amount of CPU time available to be used, allowing for more advanced autonomous driving algorithms to be implemented and tested. Future research should investigate improving autonomous driving by obtaining more advanced sensors. The lack of any onboard magnetometers has proven challenging for heading tracking, as GPS sensors are not as reliable in obtaining accurate live-time heading updates. Future research should also focus on obtaining additional ultrasonic sensors to improve altitude stability in seafaring conditions.

4.2. Balancing and Stabilization Control Results

The results obtained initially indicated that PID control offers limited performance for this hydrofoil craft. The PID performance in the pitch control has worked well, but has offered poorer performance in the roll and altitude control, due to their non-linear response. Testing revealed that these loops required high gains to ensure a rapid response with a suitable settling time. However, the higher the gains used, the higher the amplitude of oscillation around the setpoint. This created difficulty in tuning these loops, as it was not possible to find an ideal set of gains for a standard PID loop that would have a suitably small settling time without causing oscillations. This is in line with the analysis of the dynamic models; the system is inherently prone to oscillation due to the lack of any strong damping factors. Furthermore, testing indicated that there is a larger error in the roll axis than what was to be expected during normal operation. This results in the roll model being further inaccurate, as the roll angles are sufficiently large to reduce the lift produced by the wings. This is likely the reason why the roll oscillation is larger than expected and difficult to tune with a simple PID loop. As the vessel’s roll angle increases, the wings produce lower and lower lift, requiring much higher gains as the roll angle increases. A standard PID loop expects a more linear behavior and is unable to compensate for this.
There are many different types of control routines, of which some may be useful in alleviating this. The initial consideration was to pass the proportional term error through a logarithmic function. This would remove the linear behavior of the PID loop response, causing it to output small wing angle changes at low error to prevent oscillation and high wing angle changes at high error to reduce the settling time. Sliding Mode Control (SMC) was also considered, as it would be better suited to the non-linear behavior of the altitude control and offer improved disturbance rejection capabilities [13]. However, SMC is subject to chattering, and an SMC-based derivation of an intelligent adaptive disturbance compensating PID loop may offer further improved performance [14]. Model Predictive Control (MPC) has only recently been researched for hydrofoils, but offers promising stability for the hydrofoil vessel, especially for seafaring capabilities [15].
The ultimate decision was made to use a simple parabolic error modifier on the proportional term as a simplification of using a logarithmic modifier. This decision was made as the small hydrofoil vessel is designed as a proof of concept and a simplified testing platform that can be modified and expanded for further testing. As such, the decision was made to use the simplest method possible to accelerate the development and proof of the integrity of the design, and to provide simpler software that can be modified and expanded upon.
The parabolic modifier was implemented by modifying the proportional gain to be a function of error squared rather than error, changing it to a parabolic function instead of a linear function. This offered some improvement, increasing response time. However, it still tends to cause oscillation in the response, albeit at a lower amplitude. Further testing and improvement of the roll and altitude control loop indicate that improving the control loop behavior to reduce RMSE and IAE (effectively reducing the overall error) results in an increased tendency to oscillate, especially in seafaring conditions or while undergoing sharp turns. As such, lower RMSE and IAE can offer improved performance, as the slower response reduces overall oscillation and improves maneuverability, despite displaying poorer quantitative performance. Overall, the control loops have offered sufficient performance to sustain foiling and to test autonomous driving of the hydrofoil craft. However, the results indicate that PID loops remain non-ideal for the application of roll and altitude control in this type of vessel, due to the non-linear behavior of the vessel in altitude and roll. Furthermore, PID tuning for this vessel is difficult as the control loops do not respond well to varying conditions and require careful wing calibration and setting of neutral points. Future research should explore the application of more robust control mechanisms that are more effective in non-linear systems, such as SMC and MPC.
Operation during seafaring conditions can cause the ultrasonic sensor to be superficially wetted and output incorrect data. Future research should focus on improving the ultrasonic sensor or the mounting design and investigating sensor fusion and/or filtering to improve the seafaring capabilities of the vessel. Furthermore, testing in seafaring conditions demonstrated that the ultrasonic sensor is unable to output reliable readings, causing the vessel to oscillate. This was demonstrated during river testing with a wave height of 0.1 m (which is moderate compared to the vessel size), which caused altitude oscillations in the vessel. Using a single ultrasonic sensor to read altitude is unreliable, as water height varies in seafaring conditions due to waves. Future research should investigate the implementation of additional, spaced-out ultrasonic sensors, which can be fused along with a vertical acceleration reading from the IMU to output a much more reliable altitude measurement that is not impacted in seafaring conditions. A median filter was tested on the ultrasonic sensor’s output to help reduce spikes in the sensor reading. However, this was removed as it caused latency in the sensor value, which adversely affected the altitude control loop. The sensor output is currently 10 Hz, which is close to the slowest acceptable update frequency, as too low a frequency or increased latency in the sensor value will cause the PID loop to struggle as it lags behind the true height. As such, this indicated that filtering to improve the altitude PID loop performance would prove difficult and inadequate, and future research should focus on additional sensors and fusion, rather than additional filtering algorithms on the ultrasonic sensor. This is an important area to research, as improving the seafaring capabilities of the vessel will improve its efficiency and ability to perform long-range missions.

4.3. Autonomous Driving Discussion

Testing has indicated that the sensor choices, control software, and hardware design are adequate for autonomous driving, with the hydrofoil vessel completing several short-range, GPS waypoint driving missions. The quantitative analysis has yielded low cross-track error values, indicating sufficient accuracy and reliability in performing general GPS waypoint missions. As a result, the vessel has proven reliable for use in testing new hydrofoil autonomous driving capabilities and as a starting platform for investigating and performing long-distance autonomous missions. Future testing should focus on using the vessel to conduct further research in this area. The efficiency of the vessel while foiling can be evaluated and compared to a non-foiling state, allowing the improvements of foiling for long-range missions to be quantified. Further research can also be carried out in investigating the capabilities of the craft to drive between target coordinates that are further apart and completing longer missions to investigate the drift and efficiency capabilities. The algorithms can also be expanded to account for seafaring conditions or for underwater currents and other vessels.

5. Conclusions

The proposed and developed small autonomous hydrofoil boat has demonstrated success in achieving its required aims. The vessel is able to sustain a foilborne state with the hull above the water while responding to manual user inputs, and has also successfully completed two autonomous GPS waypoint missions in a river environment. The modular, low-cost, and reproducible nature of the craft presents a novel hydrofoil testing platform that can be used to develop and test different mechanical designs, sensors, and autonomous driving or control software. There are several areas of potential future work, but the most critical is stability. Different control types should be researched to implement a control methodology that yields superior performance than PID for the non-linear nature of the hydrofoil vessel. Additional sensors should be implemented with sensor fusion to improve the altitude stability of the vessel in seafaring conditions. The hinge joints and wing actuation rods should be redesigned and the material changed to improve the wear resistance and rigidity of the joint. Different hydrofoil profiles should be investigated to select a wing profile that will provide the most efficiency and ideal performance given the conditions for this vessel. Other future work should focus on investigating the efficiency of the vessel and the feasibility of the vessel performing long-distance autonomous missions. The required changes can then be implemented to experimentally test the boat’s performance in completing long-distance autonomous missions with high efficiency.

Author Contributions

Conceptualization, T.B.; Methodology, T.W.; Software, T.W.; Validation, T.W.; Formal analysis, T.W.; Investigation, T.W.; Resources, T.W. and T.B.; Data curation, T.W.; Writing—original draft, T.W.; Writing—review & editing, T.W. and T.B.; Visualization, T.W.; Supervision, T.B.; Project administration, T.W. and T.B.; Funding acquisition, T.B. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by RiverLab, a joint collaboration between the University of Western Australia and Woodside Energy Group Ltd. This research was also supported by an Australian Government Research Training Program (RTP), https://doi.org/10.82133/C42F-K220 (accessed on 25 November 2025).

Data Availability Statement

The data presented in this study are openly available at https://revproject.com/smallfoilboat/ (accessed on 26 November 2025).

Conflicts of Interest

The authors declare that this study received funding from RiverLab. The funder was not involved in the study design, collection, analysis, interpretation of data, the writing of this article or the decision to submit it for publication.

Abbreviations

The following abbreviations are used in this manuscript:
AoAAngle of attack
ESCElectronic speed controller
FEAFinite element analysis
GFRPGlass fiber reinforced polymer
GPSGlobal positioning system
IAEIntegral of absolute error
IMUInertial measurement unit
MPCModel predictive control
PIDProportional integral derivative
PLAPolylactic acid
RMSERoot Mean Square Error
SMCSliding mode control
SMCStandard mean chord (length)

Appendix A

Table A1. Hydrofoil vessel electronic part list.
Table A1. Hydrofoil vessel electronic part list.
Part LabelDescriptionManufacturerQuantity (Units)
ESP32 T-Display S3Vessel microcontrollerLilygo1
Micro Maestro 6-Channel6 Channel Servo ControllerPololu1
DS3235 35 kg servoServos used to actuate control surfacesDSServo3
T200 thrusterSubmerged thruster for vessel propulsionBlueRobotics1
Basic ESC 50050 A electronic speed controller to be used with the thrusterBlueRobotics1
7000 mAh 65 C, 6s LiPo BatteryOnboard battery used to power all electronicsZOP Power1
300 W DC-DC Buck ConverterOnboard buck converter used to step down LiPo voltage to 5 V.SZHJW Technology1
MPU6050 Motion SensorIMU sensor to read vessel orientation dataCore Electronics1
A02YYUW Waterproof Ultrasonic SensorUltrasonic sensor to read vessel height above the waterDFRobot1
FS-I6X TransmitterHand-held remote to control the vesselFlysky1
FS-IA6B ReceiverAllows the vessel to receive instructions from the transmitter.Flysky1
94 × 64 mm PCB BoardSolder PCB board with 2.54 mm hole spacing to useElectronics Store1
40 Pin Header Socket (Male)Used to connect different electrical components togetherElectronics Store2
40 pin Header Socket (Female)Used to connect different electrical components togetherElectronics Store2
30 pack Socket to Socket Prototyping Ribbon (DuPont)Used to wire the different electrical componentsElectronics Store2
NEO-6M GPS Breakout Board with AntennaGPS sensor to provide GPS location and heading of the vesselNEO-6M2
Cable GlandUsed to waterproof cable holesElectrical Store4
Table A2. Hydrofoil vessel mechanical part list.
Table A2. Hydrofoil vessel mechanical part list.
Part LabelDescriptionManufacturerQuantity (Units)
DCB-M41 Catamaran HullSmall remote control boat hull, no electronics includedTraxxas1
PLA Filament 1 kg, 1.75 mmPLA filament for 3D printingeSun1
6 mm Stainless Steel RodUsed to reinforce the mastsHardware Store∼700 mm
3 mm Stainless Steel RodReinforce and mount wingsHardware Store∼1800 mm
1.25 mm Galvanised Steel Tie WireControl rods for pivoting wingsHardware Store∼200 mm
M3 Stainless Steel 15 mm BoltFasten hardwareHardware Store16
M3 Stainless Steel 20 mm BoltFasten hardwareHardware Store8
M3 Stainless Steel WasherFasten hardwareHardware Store24
M3 Stainless Steel NutFasten hardwareHardware Store24
M5 Stainless Steel BoltFasten hardwareHardware Store3
M5 Stainless Steel WasherFasten hardwareHardware Store3
M5 Stainless Steel NutFasten hardwareHardware Store3
Table A3. GPS test one (single waypoint) raw data.
Table A3. GPS test one (single waypoint) raw data.
TimestampLatitudeLongitudeDesired LatitudeDesired LongitudeCurrent GPS HeadingDesired GPS HeadingCurrent IMU HeadingDesired IMU Heading
253,241.00−31.98256115.82239−31.98244115.822011.111775.062811.326475.27751
253,602.00−31.98256115.82239−31.98244115.822010.000000.000001.314855.27751
253,722.00−31.98256115.82239−31.98244115.822010.000000.000001.291135.27751
254,601.00−31.98255115.82240−31.98244115.822010.000000.000000.867495.27751
254,721.00−31.98255115.82240−31.98244115.822010.000000.000000.790815.27751
255,601.00−31.98254115.82241−31.98244115.822010.000000.000000.013275.27751
255,721.00−31.98254115.82241−31.98244115.822010.000000.000006.159665.27751
256,602.00−31.98252115.82240−31.98244115.822010.000000.000005.246435.27751
256,722.00−31.98252115.82240−31.98244115.822010.000000.000005.194435.27751
257,601.00−31.98252115.82237−31.98244115.822010.000000.000005.224085.27751
257,721.00−31.98252115.82237−31.98244115.822010.000000.000005.229995.27751
258,605.00−31.98251115.82234−31.98244115.822010.000000.000005.252645.27751
258,725.00−31.98251115.82234−31.98244115.822014.963724.955945.255715.24793
259,604.00−31.98251115.82231−31.98244115.822014.916244.961745.280335.32582
259,724.00−31.98251115.82231−31.98244115.822014.916244.961745.285495.33099
260,604.00−31.98250115.82229−31.98244115.822014.926544.966235.305185.34487
260,744.00−31.98250115.82229−31.98244115.822014.926544.966235.316765.35646
261,604.00−31.98250115.82226−31.98244115.822014.977334.966135.391425.38021
261,724.00−31.98250115.82226−31.98244115.822014.977334.966135.400215.38900
262,604.00−31.98249115.82223−31.98244115.822015.047844.955775.485645.39357
262,724.00−31.98249115.82223−31.98244115.822015.047844.955775.493925.40185
263,604.00−31.98248115.82220−31.98244115.822015.146804.927135.520695.30102
263,724.00−31.98248115.82220−31.98244115.822015.146804.927135.505725.28605
264,606.00−31.98247115.82217−31.98244115.822015.040164.907015.222095.08894
264,726.00−31.98247115.82217−31.98244115.822015.040164.907015.220715.08756
265,607.00−31.98247115.82215−31.98244115.822014.895654.925765.025375.05548
265,727.00−31.98247115.82215−31.98244115.822014.895654.925764.995365.02547
266,607.00−31.98247115.82212−31.98244115.822014.691795.004564.942115.25488
266,726.00−31.98247115.82212−31.98244115.822014.691795.004564.947845.26060
267,606.00−31.98247115.82209−31.98244115.822014.778195.085635.315955.62340
267,726.00−31.98247115.82209−31.98244115.822014.778195.085635.323545.63099
268,607.00−31.98246115.82206−31.98244115.822015.055525.072585.728855.74591
268,727.00−31.98246115.82206−31.98244115.822015.055525.072585.743225.76028
269,606.00−31.98244115.82204−31.98244115.822015.394114.755755.897445.25907
269,726.00−31.98244115.82204−31.98244115.822010.000000.000005.889685.25907
Table A4. GPS test two (four waypoints in a rectangle) raw data.
Table A4. GPS test two (four waypoints in a rectangle) raw data.
TimestampLatitudeLongitudeDesired LatitudeDesired LongitudeCurrent GPS HeadingDesired GPS HeadingCurrent IMU HeadingDesired IMU Heading
232,327.00−31.98253115.82228−31.98216115.822131.005665.951566.194804.85751
233,146.00−31.98253115.82228−31.98216115.822130.000000.000005.914564.85751
233,266.00−31.98253115.82228−31.98216115.822130.000000.000005.795084.85751
234,148.00−31.98252115.82229−31.98216115.822130.000000.000004.835664.85751
234,268.00−31.98252115.82229−31.98216115.822130.000000.000004.766864.85751
235,149.00−31.98250115.82229−31.98216115.822130.000000.000004.804524.85751
235,269.00−31.98250115.82229−31.98216115.822130.000000.000004.807774.85751
236,149.00−31.98248115.82228−31.98216115.822130.000000.000004.822504.85751
236,268.00−31.98248115.82228−31.98216115.822136.089105.903604.826554.64104
237,147.00−31.98245115.82227−31.98216115.822135.966765.901584.585204.52002
237,268.00−31.98245115.82227−31.98216115.822135.966765.901584.574194.50901
238,149.00−31.98243115.82225−31.98216115.822135.816485.913884.477084.57447
238,269.00−31.98243115.82225−31.98216115.822135.816485.913884.474884.57228
239,149.00−31.98241115.82224−31.98216115.822135.729225.936184.554584.76154
239,269.00−31.98241115.82224−31.98216115.822135.729225.936184.564354.77131
240,151.00−31.98239115.82222−31.98216115.822135.833945.944994.836274.94732
240,271.00−31.98239115.82222−31.98216115.822135.833945.944994.843274.95432
241,152.00−31.98236115.82222−31.98216115.822135.995215.926775.029844.96140
241,272.00−31.98236115.82222−31.98216115.822135.995215.926775.052694.98426
242,151.00−31.98234115.82222−31.98216115.822136.160495.877265.060634.77740
242,272.00−31.98234115.82222−31.98216115.822136.160495.877265.040704.75748
243,150.00−31.98231115.82221−31.98216115.822136.031165.851064.627174.44707
243,270.00−31.98231115.82221−31.98216115.822136.031165.851064.646834.46673
244,152.00−31.98229115.82220−31.98216115.822135.817365.873834.367094.42356
244,271.00−31.98229115.82220−31.98216115.822135.817365.873834.384474.44094
245,151.00−31.98227115.82218−31.98216115.822135.654345.934294.420484.70043
245,271.00−31.98227115.82218−31.98216115.822135.654345.934294.449614.72955
246,154.00−31.98225115.82216−31.98216115.822135.738825.979704.787455.02833
246,273.00−31.98225115.82216−31.98216115.822135.738825.979704.789785.03067
247,154.00−31.98222115.82216−31.98216115.822135.884205.943865.101665.16131
247,274.00−31.98222115.82216−31.98216115.822135.884205.943865.121545.18120
248,154.00−31.98220115.82216−31.98216115.822136.188065.742305.248014.80225
248,274.00−31.98220115.82216−31.98216115.822130.000000.000005.265464.80225
249,152.00−31.98218115.82216−31.98216115.822130.000000.000004.628714.80225
249,272.00−31.98218115.82216−31.98216115.822130.000000.000004.608524.80225
250,155.00−31.98216115.82215−31.98206115.822420.000000.000004.762554.80225
250,274.00−31.98216115.82215−31.98206115.822420.000000.000004.800504.80225
251,154.00−31.98213115.82214−31.98206115.822420.000000.000004.880964.80225
251,274.00−31.98213115.82214−31.98206115.822426.002891.288284.873320.15872
252,156.00−31.98211115.82213−31.98206115.822420.000000.000005.437480.15872
252,276.00−31.98211115.82213−31.98206115.822420.000000.000005.556850.15872
253,156.00−31.98209115.82215−31.98206115.822420.000000.000000.251860.15872
253,276.00−31.98209115.82215−31.98206115.822420.000000.000000.274170.15872
254,156.00−31.98208115.82218−31.98206115.822420.000000.000000.284450.15872
254,276.00−31.98208115.82218−31.98206115.822420.000000.000000.300650.15872
255,156.00−31.98208115.82221−31.98206115.822420.000000.000000.080270.15872
255,276.00−31.98208115.82221−31.98206115.822421.405511.457810.087490.13979
256,155.00−31.98208115.82223−31.98206115.822421.349841.478350.112140.24066
256,275.00−31.98208115.82223−31.98206115.822421.349841.478350.122300.25082
257,156.00−31.98207115.82226−31.98206115.822421.402551.493800.303000.39425
257,279.00−31.98207115.82226−31.98206115.822421.402551.493800.335150.42640
258,157.00−31.98207115.82229−31.98206115.822421.583711.464130.570610.45103
258,277.00−31.98207115.82229−31.98206115.822421.583711.464130.529210.40963
259,159.00−31.98208115.82232−31.98206115.822421.724731.370500.503460.14923
259,279.00−31.98208115.82232−31.98206115.822421.724731.370500.490710.13647
260,159.00−31.98208115.82235−31.98206115.822421.578821.288060.146966.13938
260,279.00−31.98208115.82235−31.98206115.822421.578821.288060.159476.15189
261,158.00−31.98207115.82238−31.98206115.822421.342681.344096.138836.14025
261,278.00−31.98207115.82238−31.98206115.822421.342681.344096.130336.13174
262,159.00−31.98205115.82241−31.98243115.822621.109332.682696.089481.37965
262,279.00−31.98205115.82241−31.98243115.822620.000000.000006.089481.37965
263,161.00−31.98205115.82243−31.98243115.822620.000000.000000.451271.37965
263,281.00−31.98205115.82243−31.98243115.822620.000000.000000.606721.37965
264,159.00−31.98205115.82245−31.98243115.822620.000000.000001.528531.37965
264,280.00−31.98205115.82245−31.98243115.822620.000000.000001.511461.37965
265,161.00−31.98208115.82246−31.98243115.822620.000000.000001.588121.37965
265,281.00−31.98208115.82246−31.98243115.822620.000000.000001.577251.37965
266,161.00−31.98210115.82247−31.98243115.822620.000000.000001.425811.37965
266,281.00−31.98210115.82247−31.98243115.822622.683622.772471.408091.49694
267,161.00−31.98213115.82248−31.98243115.822622.764252.768481.608871.61310
267,281.00−31.98213115.82248−31.98243115.822622.764252.768481.614491.61872
268,161.00−31.98215115.82249−31.98243115.822622.855882.755961.752651.65273
268,282.00−31.98215115.82249−31.98243115.822622.855882.755961.756281.65636
269,144.00−31.98218115.82250−31.98243115.822622.966892.732581.809811.57551
269,264.00−31.98218115.82250−31.98243115.822622.966892.732581.813431.57912
270,144.00−31.98220115.82250−31.98243115.822622.947342.710711.605491.36886
270,283.00−31.98220115.82250−31.98243115.822622.947342.710711.592161.35554
271,163.00−31.98223115.82251−31.98243115.822622.801082.707871.357541.26433
271,285.00−31.98223115.82251−31.98243115.822622.801082.707871.358931.26572
272,164.00−31.98225115.82253−31.98243115.822622.631082.730851.237781.33755
272,284.00−31.98225115.82253−31.98243115.822622.631082.730851.222261.32203
273,163.00−31.98227115.82255−31.98243115.822622.564062.758981.391561.58648
273,283.00−31.98227115.82255−31.98243115.822622.564062.758981.402001.59692
274,164.00−31.98229115.82256−31.98243115.822622.707012.760831.707031.76086
274,284.00−31.98229115.82256−31.98243115.822622.707012.760831.704141.75797
275,147.00−31.98232115.82256−31.98243115.822622.879622.713001.882171.71555
275,267.00−31.98232115.82256−31.98243115.822622.879622.713001.901651.73504
276,147.00−31.98234115.82256−31.98243115.822623.026232.614901.877901.46657
276,267.00−31.98234115.82256−31.98243115.822620.000000.000001.874921.46657
277,147.00−31.98237115.82257−31.98243115.822620.000000.000001.460651.46657
277,267.00−31.98237115.82257−31.98243115.822620.000000.000001.445181.46657
278,147.00−31.98239115.82258−31.98243115.822620.000000.000001.413211.46657
278,267.00−31.98239115.82258−31.98243115.822620.000000.000001.422401.46657
279,147.00−31.98241115.82259−31.98243115.822620.000000.000001.419441.46657
279,267.00−31.98241115.82259−31.98243115.822622.718702.127451.431820.84057
280,149.00−31.98244115.82261−31.98251115.822242.623234.474950.998722.85044
280,269.00−31.98244115.82261−31.98251115.822240.000000.000000.939032.85044
281,149.00−31.98245115.82263−31.98251115.822240.000000.000001.620312.85044
281,269.00−31.98245115.82263−31.98251115.822240.000000.000001.691662.85044
282,149.00−31.98248115.82263−31.98251115.822240.000000.000002.680482.85044
282,269.00−31.98248115.82263−31.98251115.822240.000000.000002.821652.85044
283,149.00−31.98249115.82261−31.98251115.822240.000000.000002.940662.85044
283,269.00−31.98249115.82261−31.98251115.822240.000000.000002.946852.85044
284,150.00−31.98250115.82258−31.98251115.822240.000000.000003.012702.85044
284,270.00−31.98250115.82258−31.98251115.822244.114614.682583.002423.57039
285,149.00−31.98251115.82255−31.98251115.822244.255464.716763.722564.18386
285,269.00−31.98251115.82255−31.98251115.822240.000000.000003.714244.18386
286,151.00−31.98251115.82253−31.98251115.822240.000000.000004.357464.18386
286,271.00−31.98251115.82253−31.98251115.822240.000000.000004.297594.18386
287,152.00−31.98249115.82251−31.98251115.822240.000000.000004.328724.18386
287,272.00−31.98249115.82251−31.98251115.822240.000000.000004.292374.18386
288,152.00−31.98247115.82249−31.98251115.822240.000000.000004.197914.18386
288,272.00−31.98247115.82249−31.98251115.822245.411224.518224.196233.30323
289,151.00−31.98246115.82246−31.98251115.822240.000000.000003.708853.30323
289,271.00−31.98246115.82246−31.98251115.822240.000000.000003.629033.30323
290,152.00−31.98245115.82243−31.98251115.822240.000000.000003.282653.30323
290,272.00−31.98245115.82243−31.98251115.822240.000000.000003.293103.30323
291,153.00−31.98246115.82241−31.98251115.822240.000000.000003.228933.30323
291,272.00−31.98246115.82241−31.98251115.822240.000000.000003.225643.30323
292,155.00−31.98247115.82238−31.98251115.822244.481484.356133.260503.13515
292,275.00−31.98247115.82238−31.98251115.822244.481484.356133.275703.15035
293,154.00−31.98248115.82235−31.98251115.822244.446234.333323.147463.03456
293,274.00−31.98248115.82235−31.98251115.822244.446234.333323.138813.02590
294,154.00−31.98248115.82232−31.98251115.822244.365424.324683.075043.03430
294,274.00−31.98248115.82232−31.98251115.822244.365424.324683.069203.02846
295,154.00−31.98249115.82230−31.98251115.822244.290374.357373.012223.07922
295,274.00−31.98249115.82230−31.98251115.822244.290374.357373.011223.07823
296,154.00−31.98251115.82227−31.98251115.822244.282174.465433.091363.27462
296,274.00−31.98251115.82227−31.98251115.822244.282174.465433.096223.27948
297,155.00−31.98251115.82224−31.98216115.822134.429476.020673.354334.94553
297,275.00−31.98251115.82224−31.98216115.822130.000000.000003.382834.94553
298,157.00−31.98251115.82221−31.98216115.822130.000000.000004.220624.94553
298,277.00−31.98251115.82221−31.98216115.822130.000000.000004.339414.94553
299,158.00−31.98249115.82220−31.98216115.822130.000000.000005.079874.94553
299,277.00−31.98249115.82220−31.98216115.822130.000000.000005.052604.94553
300,157.00−31.98247115.82220−31.98216115.822130.000000.000005.112204.94553
300,277.00−31.98247115.82220−31.98216115.822130.000000.000005.112194.94553
301,156.00−31.98244115.82220−31.98216115.822130.000000.000005.052084.94553
301,276.00−31.98244115.82220−31.98216115.822130.000000.000005.032784.94553
302,156.00−31.98242115.82220−31.98216115.822136.197846.049964.940424.79254
302,276.00−31.98242115.82220−31.98216115.822136.197846.049964.930764.78288
303,157.00−31.98241115.82220−31.98216115.822136.197846.043964.868804.71492
303,259.00−31.98241115.82220−31.98216115.822136.197846.043964.856954.70307
304,599.00−31.98241115.82220−31.98216115.822136.197846.042964.804024.64913
305,138.00−31.98241115.82220−31.98216115.822136.197846.044624.767694.61447
305,258.00−31.98241115.82220−31.98216115.822136.197846.044624.762714.60949
306,159.00−31.98241115.82220−31.98216115.822136.197846.043844.665654.51165
306,258.00−31.98241115.82220−31.98216115.822136.197846.043844.646474.49248
307,159.00−31.98240115.82220−31.98216115.822136.135536.046574.512634.42366
307,279.00−31.98240115.82220−31.98216115.822136.135536.046574.504634.41567

References

  1. Fawzy, S.; Osman, A.; Doran, J.; Rooney, D. Strategies for mitigation of climate change: A review. Environ. Chem. Lett. 2020, 18, 2069–2094. [Google Scholar] [CrossRef] [Scilit]
  2. Doyle, S. The Measure of the Candela Seven: An electric-powered hydrofoil speedboat that reduces energy consumption, noise and seasickness by ‘flying’ above the waves made an appearance on lakes in Switzerland last month. Eng. Technol. 2020, 15, 92–93. [Google Scholar]
  3. Meyer, J.; Wilkins, J. Hydrofoil Development and Applications [Plenary Session Paper]. In Proceedings of the High Performance Marine Vehicles Conference And Exhibit, Washington, DC, USA, 24–27 June 1992. [Google Scholar]
  4. Liu, S.; Xu, C.; Zhang, L. Hierarchical Robust Path Following Control of Fully Submerged Hydrofoil Vessels. IEEE Access 2017, 5, 21472–21487. [Google Scholar] [CrossRef] [Scilit]
  5. Matveev, K. Modeling of Autonomous Hydrofoil Craft Avoiding Moving Obstacles. In Proceedings of the SNAME Maritime Convention, Houston, TX, USA, 27–29 September 2022; p. D021S012R001. [Google Scholar]
  6. Moon, H.; Steel, G.; Dougherty, H.; Stilwell, D.; Brizzolara, S. Development of a Dynamic Model of Small Autonomous Hydrofoil Craft. In Proceedings of the OCEANS 2023—MTS/IEEE U.S. Gulf Coast, Biloxi, MS, USA, 25–28 September 2023; pp. 1–8. [Google Scholar]
  7. Zhao, Z.; Yan, R.; Wu, Z.; Wang, J.; Chen, M. Modeling for a Hydrofoil Marine Vehicle in Gazebo. In Proceedings of the 2025 IEEE 19th International Conference on Control & Automation (ICCA), Tallinn, Estonia, 30 June–3 July 2025; IEEE: New York, NY, USA, 2025; pp. 754–759. [Google Scholar]
  8. Abbott, I.; Doenhoff, A. Theory of Wing Sections: Including a Summary of Airfoil Data; Dover Publications: Mineola, NY, USA, 2012. [Google Scholar]
  9. Kumar, R. Design of NACA 2412 and its Analysis at Different Angle of Attacks, Reynolds Numbers, and a wind tunnel test. Int. J. Eng. Res. Gen. Sci. 2021, 3, 193–200. [Google Scholar]
  10. Hasan, S.; Islam, S.; Haque, M. Comparison of aerodynamic characteristics of NACA 0012 and NACA 2412 airfoil. Int. J. Res. Appl. Sci. Eng. Technol. 2020, 9, 2037–2045. [Google Scholar] [CrossRef] [Scilit]
  11. Glauert, H. The Elements of Aerofoil and Airscrew Theory; Cambridge University Press: Cambridge, UK, 1983. [Google Scholar]
  12. Kulshreshtha, A.; Gupta, S.; Singhal, P. FEM/CFD analysis of wings at different angle of attack. Mater. Today Proc. 2020, 26, 1638–1643. [Google Scholar] [CrossRef] [Scilit]
  13. Niu, H.; Zhao, S.; Muresan, C.; Ionescu, C. Enhanced Fractional-Order Nonsingular Terminal Sliding Mode Control for Fully Submerged Hydrofoil Craft with Actuator Saturation. J. Mar. Sci. Appl. 2025, 1–15. [Google Scholar] [CrossRef] [Scilit]
  14. Hongli, C.; Haokai, L.; Xiaojing, X.; Xiaoyue, Z. Design of Adaptive Sliding Mode Controller for Longitudinal Motion of Hydrofoil; IEEE: New York, NY, USA, 2019; pp. 1–9. [Google Scholar]
  15. Dongyang, X.; Bai, Y.; Zheng, K.; Mao, L.; Jiang, Y. Research on Longitudinal Attitude Control of Unmanned Hydrofoil Vessels Based on MPC. In Proceedings of the 2025 37th Chinese Control and Decision Conference (CCDC), Xiamen, China, 16–19 May 2025; IEEE: New York, NY, USA, 2025; pp. 1923–1926. [Google Scholar]
Figure 1. Early hydrofoil design demonstrating wing and mast configuration.
Figure 1. Early hydrofoil design demonstrating wing and mast configuration.
Jmse 14 00050 g001
Figure 2. Front wing and mast assembly. This is doubled, one assembly per side. (a) The front-side view of the mast, without a wing. (b) The front-side view of the mast and wing assembly. (c) Side view of the mast and wing assembly.
Figure 2. Front wing and mast assembly. This is doubled, one assembly per side. (a) The front-side view of the mast, without a wing. (b) The front-side view of the mast and wing assembly. (c) Side view of the mast and wing assembly.
Jmse 14 00050 g002
Figure 3. Rear wing and mast assembly. (a) Front view of the rear assembly. (b) The front-side view of the rear assembly. (c) Side view of the rear assembly.
Figure 3. Rear wing and mast assembly. (a) Front view of the rear assembly. (b) The front-side view of the rear assembly. (c) Side view of the rear assembly.
Jmse 14 00050 g003
Figure 4. Simplified electrical diagram of the electronics. Arrows indicate the directional flow of power or data.
Figure 4. Simplified electrical diagram of the electronics. Arrows indicate the directional flow of power or data.
Jmse 14 00050 g004
Figure 5. Roll control flowchart.
Figure 5. Roll control flowchart.
Jmse 14 00050 g005
Figure 6. Height control flow chart.
Figure 6. Height control flow chart.
Jmse 14 00050 g006
Figure 7. Yaw control flow chart.
Figure 7. Yaw control flow chart.
Jmse 14 00050 g007
Figure 8. Completed hydrofoil vessel.
Figure 8. Completed hydrofoil vessel.
Jmse 14 00050 g008
Figure 9. Completed hydrofoil vessel foiling in a pool.
Figure 9. Completed hydrofoil vessel foiling in a pool.
Jmse 14 00050 g009
Figure 10. First stage of PID tuning results. (a) Roll PID response. (b) Pitch PID response. (c) Altitude PID response.
Figure 10. First stage of PID tuning results. (a) Roll PID response. (b) Pitch PID response. (c) Altitude PID response.
Jmse 14 00050 g010
Figure 11. Second stage of PID tuning results. (a) Roll PID response. (b) Altitude PID response.
Figure 11. Second stage of PID tuning results. (a) Roll PID response. (b) Altitude PID response.
Jmse 14 00050 g011
Figure 12. Yaw PID response.
Figure 12. Yaw PID response.
Jmse 14 00050 g012
Figure 13. Autonomous driving to one target coordinate.
Figure 13. Autonomous driving to one target coordinate.
Jmse 14 00050 g013
Figure 14. Autonomous driving between four target coordinates in a rectangular shape.
Figure 14. Autonomous driving between four target coordinates in a rectangular shape.
Jmse 14 00050 g014
Figure 15. Third stage of PID tuning results. (a) Roll PID response. (b) Altitude PID response.
Figure 15. Third stage of PID tuning results. (a) Roll PID response. (b) Altitude PID response.
Jmse 14 00050 g015
Figure 16. Fusion360 finite element analysis of a GFRP wing and mast design.
Figure 16. Fusion360 finite element analysis of a GFRP wing and mast design.
Jmse 14 00050 g016
Table 1. Specification table for the initial hydrofoil design.
Table 1. Specification table for the initial hydrofoil design.
ParameterSpecification
Overall vessel length1.100 m
Overall vessel width0.450 m
Overall vessel height0.450 m
Front wing span0.414 m
Front wing chord length0.103 m
Front wing surface area0.043 m2
Front wing profileNACA2412
Rear wing span0.207 m
Rear wing chord length0.103 m
Rear wing surface area0.021 m2
Rear wing profileNACA2412
Mast height0.20 m
Mast cross-section area 5.05 × 10 4 m2
Mast MaterialPolylactic acid (PLA)
Mast Quantity3
Expected vessel weight5 kg
Expected vessel velocity1.39 ms−1
Control MethodPivoting front wings (pitch and roll control) and a pivoting rear mast (yaw control)
Propulsion MechanismSubmerged electric thruster
Table 2. Lift, drag, and ratio of the front hydrofoil wing at different angles of attack.
Table 2. Lift, drag, and ratio of the front hydrofoil wing at different angles of attack.
AoA (°) C L C D Lift to Drag RatioLift Force (N)Lift (kg)Drag Force (N)
−5.000−0.5630.047−11.933−23.376−2.3851.959
−4.000−0.3700.038−9.622−15.344−1.5661.595
−3.000−0.1810.027−6.729−7.525−0.7681.118
−2.000−0.0760.022−3.385−3.156−0.3220.932
−1.0000.1070.0224.9354.4270.4520.897
0.0000.3150.01718.83213.0601.3330.694
1.0000.5300.02422.13722.0262.2480.995
2.0000.7110.02726.09429.5173.0121.131
3.0000.9050.03327.03637.5783.8341.390
4.0001.1850.04227.91849.2265.0231.763
5.0001.1900.05920.05249.4055.0412.464
6.0001.4190.06322.38358.9316.0132.633
7.0001.6480.08020.65968.4536.9853.313
8.0001.8750.09619.54477.8517.9443.983
9.0002.0810.12516.64986.4228.8195.191
10.0002.3370.14615.98597.0619.9046.072
Table 3. Statistical analysis of error and PID performance of the first stage of tuning.
Table 3. Statistical analysis of error and PID performance of the first stage of tuning.
GraphRoot Mean Square Error (RMSE)Integral of Absolute Error (IAE)Rise TimeMaximum Magnitude Error
Roll10.01570.835N/A32.323°
Pitch5.78124.035N/A12.93°
Altitude69.000284.4323.343 sN/A
Table 4. Statistical analysis of error and PID performance of the second stage of tuning.
Table 4. Statistical analysis of error and PID performance of the second stage of tuning.
GraphRoot Mean Square Error (RMSE)Integral of Absolute Error (IAE)Rise TimeMaximum Magnitude Error
Raw Roll2.89774.707N/A6.481°
Corrected Roll1.79029.90N/A5.649°
Raw Altitude66.5011667.972InfiniteN/A
Corrected Altitude31.521556.9061.919 sN/A
Table 5. Statistical analysis of error and PID performance of the yaw stage of tuning.
Table 5. Statistical analysis of error and PID performance of the yaw stage of tuning.
GraphRoot Mean Square Error (RMSE)Integral of Absolute Error (IAE)Rise TimeMaximum Magnitude Error
Yaw36.8132492.81323.88 sN/A
Table 6. Statistical analysis of error and PID performance.
Table 6. Statistical analysis of error and PID performance.
GraphRoot Mean Square Error (RMSE)Integral of Absolute Error (IAE)Rise TimeMaximum Magnitude Error
Roll1.2209.305N/A3.486°
Altitude74.577514.6144.000 sN/A
Table 7. Mean, RMSE and IAE statistics of multiple roll control tests.
Table 7. Mean, RMSE and IAE statistics of multiple roll control tests.
MetricMeanStandard Deviation95% Confidence IntervalMinMax
Mean−0.7188458380.3186479030.227946978−1.1141117050.079869919
RMSE1.4760201470.3229952610.231056891.0269974642.097746675
IAE13.251055223.245123781N/A8.61011696418.47285832
Table 8. Mean, RMSE and IAE statistics of multiple altitude control tests.
Table 8. Mean, RMSE and IAE statistics of multiple altitude control tests.
MetricMeanStandard Deviation95% Confidence IntervalMinMax
Mean31.450491019.9684769237.13101880921.5884157549.16401691
RMSE69.31660833.3869591422.42288461265.0330765574.57746189
IAE497.159447132.55187278N/A443.4326155564.1348118
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Wehrli, T.; Bräunl, T. Autonomous Navigation and Automated Control for a Small Balancing Hydrofoil Craft. J. Mar. Sci. Eng. 2026, 14, 50. https://doi.org/10.3390/jmse14010050

AMA Style

Wehrli T, Bräunl T. Autonomous Navigation and Automated Control for a Small Balancing Hydrofoil Craft. Journal of Marine Science and Engineering. 2026; 14(1):50. https://doi.org/10.3390/jmse14010050

Chicago/Turabian Style

Wehrli, Tiziano, and Thomas Bräunl. 2026. "Autonomous Navigation and Automated Control for a Small Balancing Hydrofoil Craft" Journal of Marine Science and Engineering 14, no. 1: 50. https://doi.org/10.3390/jmse14010050

APA Style

Wehrli, T., & Bräunl, T. (2026). Autonomous Navigation and Automated Control for a Small Balancing Hydrofoil Craft. Journal of Marine Science and Engineering, 14(1), 50. https://doi.org/10.3390/jmse14010050

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop