Student Projects

Showing results for 
Search instead for 
Did you mean: 

Marius - The Sailboat Drone

Contact Information

University: ISEN Toulon (Institut Supérieur d’Electronique et du Numérique) – SUPMECA

Team Members: Audrey Callamrd (2014), Baptiste Cruvellier (2014), Benoit Couraud (2016), Maxime Monfort (2014), Majid Klitim (2014), Anthony Meunier (2014), Kevin Giraud (2014)

Faculty Advisers: Cédric Anthierens, Elodie Pauly, Remy Vauché

Email Address:,

Submission Language: English

Project Information

Title: Marius, the sailboat drone

Description: Marius is a self-designed sailboat aiming to sail on the Mediterranean Sea. Its robust design makes it possible to find its own way from the starting point to destination, enduring hard sailing conditions (wind, waves, temperature …). This project was carried out by students from two French universities; electronic engineers from ISEN Toulon, and mechanical engineers from SUPMECA.

Marius is able to self-navigate from one point to another, adapting his course to the wind and wave conditions. In the same time, it sends its current position by e-mailing a remote operator, it is able to avoid detected obstacles, and it can also be controlled wirelessly by an operator.


NI Hardware:  NI cRIO-9076

                         NI 9201

                         NI 9263

                         NI 9870

NI Software:   LabVIEW 2012

                         LabVIEW Real-Time Module 2013

Other Hardware: Anemometer CV7-V from LCJ sensors

Compass A5022 from Fluxgate World

GPS MP-350 from USGlobalSat and SPOT satellite messenger

Accelerometer ADXL330

Wireless Module Uncord (Bluetooth)

Motors pilot card ESCON 36/2 DC

                              Motor SGP67S from Buehler

Motor SGP100S from Buehler


                              Solar panel JPEMHP12-35

                              MPPT regulator STECA-1010

                              Battery 12V – 90 Ah

The Challenge

A sailboat drone is subject to numerous constraints that make it necessary to have a very robust design. Indeed, unlike other drones, a sailboat drone has to adapt its trajectory to the wind, as wind makes it impossible to reach some destination using geodesic lines. Furthermore, wind changes and waves will change the boat’s position and orientation. Thus, a sailboat drone first has to be smart enough to generate its trajectory in respect to the wind conditions and obstacles, and secondly to react to any change in position and orientation due to environment impacts. In addition to these tasks the sailboat has to fulfill, the sailboat has to manage its energy consumption, and its design must be such that every hardware on the boat is robust enough to resist to extreme conditions as those experienced in the sea.

These challenges can be discomposed into several smaller challenges:

First, the control unit has to be fast, robust, able to receive a complex algorithm, and to deal with numerous inputs and outputs from different types.

Concerning the energy management, the sailboat has to make sure its energy resources are large enough to reach the destination point.

Concerning the sensors, a sailboat has to be aware of its position in respect to the starting point and the destination, but also to determine the wind speed and direction, its orientation, its inclination, the surrounding obstacles, and the energy capacity.

Concerning the actuators, the sailboat has to deal with two actuators, one for the rig, and one for the mainsail.

The sailboat drone also has to be traceable from the ground, otherwise, it would not be possible to recover it in case of major issues.

Finally, it is also necessary to make it possible to control it when the boat is at sight, so operators can access to it more easily.

All these challenges make the sailboat drone project a very complex and multidisciplinary project that necessitate reliable hardware and software.

The Solution


A sailboat drone is a very complex system that merges mechanical design with electronics and electrical systems. The solution presented here can be discomposed into different parts:

  • Mechanical design of the boat
  • Actuators
  • Sensors
  • Energy supply
  • Control unit
  • Parallel nice to have solutions

We will present here the design proposed for all of these parts.

Mechanical design of the boat

The design of the boat has entirely been home-made. One can see below the overview of the boat, with the main components that will be detailed in Fig. 1.

Figure 1. Marius sailboat overview

The length of the boat was fixed a little bit below 2m, and 80cm wide. As the project was only 6 months long, the choice has been made for a simple design, with robustness as a priority. Thus, the final hull adopted the shape of displacement hulls, in order to gain in stability during sailing. The design method adopted consisted first in designing the shape of the hull using Delftship software, then computing hydrodynamics behavior of the shape with WinArgos, and finally integrating the hull to all other equipment on CATIA software. Several tries led to the following shape for the hull (see Fig. 2) :

Figure 2. Hull Delfish model

Hydrodynamics computations led to good results in terms of stability, which validated the design. Manufacturing has also been home-made. The method used is the stitch and glue method that consists in using wood boards, assembled together and maintained in the wished form by temporary wires, and then glued together using epoxy resin. Finally, joints between wood boards are reinforced and waterproofed by stratification of glass fiber, as seen in Fig. 3.

Figure 3. Manufacturing of the Hull

For the design of the rig, NACA profiles have been used in order to determine its shape. Then, metal reinforcement have been used in order to insure robustness of this part of the boat that is subject to large torques. The manufacturing of the rig consisted in assembling a reinforced metal skeleton giving the NACA shape to the rig, and then cutting wood blocks put around and inside the skeleton so they follow the NACA shape, as shown in Fig. 4.

Figure 4. Manufacturing of the Rig

The rudder blade is the part of the sailboat that will make it turn. For this main component, the same design and manufacturing method as for the rig has been used: a NACA profile (NACA 0012) has been used to determine a metal skeleton, filled with wood blocks that are then cut to follow the NACA profile. The skeg is a component that will improve the stability of the boat, and its controllability. In the case of Marius, we also use the skeg to protect the rudder. Thus, the two components are merged together, with the skeg in front of the rudder, as shown in Fig. 5.a on the 3D caption.

Figure 5. Skeg (blue) with the rudder (left picture), and the skeg and the rudder metal skeleton on the right hand picture

Finally, the mast is a 2.4m stainless tube fixed to the deck and the bottom of the hull, which increases the robustness of the whole boat.


Two continuous current permanent magnet motors are used to control Marius: one for the mainsail, and one for the rudder. The two motor-reductors receive the command from two 4-quadrant PWM servo controller cards that are themselves controlled by the control unit of Marius. The functioning of the rudder actuator is straightforward as the motor axis is directly connected to the rudder axis. For the mainsail, the choice has been made to design an efficient and robust actuation system: As one can see below, instead of using a mainsheet to control the mainsail, it has been chosen to design a circular rail on which a slider moves. This slider is linked to the boom thanks to a short sheet. The slider is driven by a W-shaped chain/sprocket system actuated by the DC motor placed in the hull underneath a trapdoor. The mechanism is presented in Fig. 6.

Except the W-shaped chain, the rest of the mechanism is fixed on the trapdoor and thus can be taken off the deck for maintenance. .

Figure 6. Mainsail Actuation Chain

The integration of all these components of the sailing base gives the following results, presented in Fig. 7:

Figure 7. CATIA (CAD) view of the boat

Sensors for navigation

As it has been presented, in order to navigate, a sailboat drone needs several sensors in order to adapt its course to the environment conditions, and to react to perturbations. The sensors used for Marius meet the requirements of robustness and reliability. They use the protocol standard NMEA, well-known in the sailing accessories. The NMEA protocol consists in a communication by frames of ASCII characters, easily interpretable by the control unit, at a symbol rate of 4800 bauds. Furthermore, for a simplex communication, only two wires are necessary (RxD and TxD). The list of the different sensors used for navigation is given below:

  • Anemometer
  • Compass
  • GPS
  • Accelerometer
  • CmuCam + MAX232
  • Temperature sensor (for the Control Unit)
  • Battery voltage measurement
  • Motors position

The repartition of the sensors on the sailboat is presented in Fig. 8, except for the CmuCam that is situated at the top of the mast.

Figure 8. Sensors and Control Unit Repartition

Energy Management

The trajectory of a sailboat drone depends on the environment (waves, wind, etc), and thus cannot be accurately forecast. Therefore, it is not possible to forecast the electrical consumption of the boat for a given destination. This is why it has been decided to install a power supply on the boat, and to have enough battery capacity to store enough energy for the boat to function properly during 3 days.

  • Power Supply

Solar panels have been installed on the deck of the boat, so Marius can be autonomous as long as the solar panels can harvest energy from the sun. Given the space restrictions, 2 solar panels of 30W each have been installed, and connected to a MPPT regulator, that intends to adapt the voltage of the DC-bus so the solar panels provide as much power as possible.

  • Energy Storage

Electricity is stored in a 90 Ah gel battery, for a voltage of 12V. This voltage is then reduced to power all devices at the required voltage.

Control Unit

As it has been mentioned before, the control unit has to be able to receive a complex code that implement sailing algorithms, but it also has to be compatible with all the sensors and actuators, be reliable, and consume a low power. For these four reasons, the choice has been made to use a Compact RIO 9076 along with C-modules (9201for the analog inputs – 9263 for the analog outputs – 9870 for serial interface). The input voltage is between 9 and 30V, which corresponds to what is available from the batteries, and its consumption is around 0.28Amps at 12V.

Control Software

Due to its simplicity of use, and especially the fast interoperability with other devices, LabVIEW was chosen to implement Marius control algorithm

The control of Marius is based on an algorithm described by L.Jaulin and F. Le Bars (IRSC’12 in Cardiff. A simple controller for line following of sailboats). This algorithm is implemented in the main VI of the project and will be detailed in the next section. The structure of the code implemented in the cRIO is presented below (to simplify the understanding, only the main control software part is represented in Fig. 9, and not additional features as the target tracking, or obstacles avoiding):

Figure 9. Marius Code Architecture

Data from the sensors is sent to the cRIO. Then, subVIs decode the received frame in order to provide the main algorithm with data that it can process. The algorithm then computes the angles the rudder and mainsail motors have to respect. These angles are then translated into voltage (after a control loop) so the PWM cards can feed each motor with the required command.

Control Algorithm

The control algorithm aims at determining the rudder and the mainsail orientations so the sailboat reduces the error distance between itself and the line that links two following waypoints, as shown in Fig. 10.

Figure 10. Marius' Sailing Algorithm Configuration

In order to do so, the algorithm first computes the distance error between Marius and the line between the two waypoints (using waypoints coordinates and the GPS position that has been projected on a flat space having the starting point as origin). This distance tells the controller unit if the boat is far or close to the line, and if it is on the right side or left side. Then, the new angle to be followed (new trajectory) is computed, so the boat will converge toward the line. This angle is computed using the distance error, amongst other parameters. Comparing this angle to the actual wind direction, the algorithm determines if the new trajectory can be followed or not. If it can, this new angle is not changed, otherwise, the boat will adopt a keep close hauled strategy. Knowing the direction we want the boat the follow, the algorithm determines the rudder angle, and the mainsheet length so the boat goes in the right direction, and harvest as much wind thrust as possible.

Thus, this algorithm needs a fast calculation of the new trajectory to follow from the current position, orientation and wind direction that is provided by the Real-Time CompactRIO control unit.

Nice to Have Add-ons

In addition to this control algorithm, the design team has implemented different options that make the use of Marius easier.

  • GPS real-time tracking

Finally, when a sailboat drone is left to explore an area during a few days, it is necessary to get its position in real-time from a remote location. Instead of following Marius, it has been chose to add a GPS tracker to the boat that sends an e-mail to an operator every five minutes to communicate its exact location. In order to do so, the functionalities of a SPOT tracker system have been used, and adapted to our needs by adding a PIC microcontroller that commands the SPOT tracking system to send an e-mail every five minutes. The integration of the SPOT tracker and its control system is presented in Fig. 11.

Figure 11. Tracking System Integration to the Boat

  • Bluetooth link for remote control

In order to make it easier to park, it has been decided to implement a Human Machine Interface so it is possible for a remote operator (remote, but still close enough to the boat) to take control of the sailboat and directly command its waypoints. This is done by a Bluetooth link between the boat and a Bluetooth-equipped computer. The LabVIEW HMI can be seen in Fig. 12.

Figure 12. Graphical User Interface for Bluetooth Control of Marius trajectory

As one can see, this HMI displays the different waypoints on a google map. It also provides all sensors values, and makes it possible to switch Marius mode, from a path self-determining strategy, or a Target-following strategy, so Marius adapts its trajectory to follow a known-target.

  • Target tracking and obstacles avoiding

In order to be able to follow a moving target or to avoid other boats or obstacles, Marius is equipped with a camera (CmuCam) that is configured to send the position of pixels representing a known-target, or an obstacle. This information is then processed by the LabVIEW control software so it directly changes the next way point to be followed, and thus allows Marius to adapt its course to the target/obstacle. In order to have a smooth trajectory, and avoid noise perturbation in the camera data (due to the boat’s own movement/oscillations), a Butterworth filter and a PI controller have been implemented

Marius Design Process Information

Marius has been designed and built in one year, and has now entered in its test phase. Thus, Marius with all the additional features is in its beta-test version, and will be fully functional before October 2014. Today, it is able to navigate and fulfill most of the requirements, as shown in Fig. 13.

Figure 13. Marius Navigation - Test Phase