Close
0%
0%

Green powered sailboat

The goal is to build a tiny autonomous sailboat able to travel potentially forever, powered using solar panels and wind.

Similar projects worth following
This project is based on the hope that one day in the near future, navigation could be more environmentally sustainable, this is a scale model but the idea is to extend the concept to all sorts of ships.

I’m going to assemble widely available electronic modules in order to make the hardware adjustable and extensible.
Furthermore I will upload code samples for each electronic module with the aim of explaining their working.

The ultimate software will be open source

I’m going to build up the whole sailboat by myself because I practice recreational sailing since I was 16 and I always wanted to build a sailboat.

In the end I’ll launch the sailboat, which will sail through the Lake Garda (length 51.6 km)

“A journey of a thousand miles must begin with a single step.” – Lao Tzu

The main challenges of constructing the sailboat will be:

  • To keep the electricity consumption very low so (after looking for many options) the best idea that has come to my mind is to use sails operated by servos and a propeller operated by a DC motor in case of fully charge of the battery (or strong wind) . The goal is to make it electrically self-sufficient.
  • To make the boat resistant enough to “survive” to the ocean’s waves (making it very robust and the sails foldable in case of heavy wind situations).
  • To make all the components as independent from each other as possible (to avoid that if something breaks everything goes under the sea).
  • I hope you will like my project! Please if you have any suggestions feel free to ask me I’ll be happy to discuss and answer!

    View all 13 components

    • power consumption analysis

      silvio biasiol12/01/2016 at 16:44 0 comments

      This is a table with the main power consumption that I will have. I'm planning to use a camera and image recognition, in addition to the sonar, to build a simple but effective obstacle avoidance system.

      component

      power mW

      utilization % (estimation)

      Arduino UNO/micro

      5v * 25mA/50mA = 125mW/250mW if active)

      5v * 4mA = 20mW (sleep mode and hardware modifications)

      80-90%

      HRXL‑MaxSonar (ultrasonic rangefinder)

      3.3v * 3.1mA = 10.23mW

      40%

      IMU (inertial measurement unit) * 2

      3.3v * 145-350µA = 0.725mW/1.75mW each

      100%

      GPS unit

      3.3V * 30mA = 99mW (average)

      3.3V * 12mA = 39.6mW (for the antenna)

      10%

      DYMOND D 47 Servo (for the rudder)

      5V * 250mA = 1250mW

      50%

      SW5513-4MA Sailwinch Servo (for the sail)

      5V * 110-350mA = 550mW/1750mW

      ??

      So the total power consumption should be around:

      1750mW + 1250mW * ½ + (39.6mW + 99mW) * 1/10 + 1.75mW * 2 + 10.23mW * ¼ + 250mW * 4/5 ≅ 2594.91mW ≅ 2.595W

      An eolic vertical turbine with an efficency of 35% (a round down estimate from average efficency), diameter of 10cm, height of 50cm and a wind speed of 7m/s c.a. (based on the average wind speed in Italy) should produce c.a. 3.230W (source: http://www.windstuff.org/calc/calc.php)

      If, in addition, I use 4 solar panels 85x115mm of 18V and 100mA I should get:

      18V * (100mA * 4) ≅ 7.200mW = 7.2W and supposing an efficency of 40% (day/night, circuit losess, water, dust, etc..) I should get c.a. 2.88W

      These are just estimations of course! Please feel free to correct me if I've said something wrong :)

    • hull construction

      silvio biasiol11/28/2016 at 18:24 0 comments

      So I managed to attach the drop keel and the rudder to the hull. I think it came out quite nice, here's some pics:

      more info on the howto will come under here ;)

    • anemometer

      silvio biasiol11/25/2016 at 12:05 0 comments

      I've designed with autodesk fusion 360 the anemometer that I would like to use. It is attached to the mast. It is composed by two main hardware parts:

      - The GY-87 IMU

      - the 12.4mm 300Rpm 6 Wires 6 Conductors Capsule Slip Ring 240V AC for Monitor Robotic SRC012C

      I didn't know about the existence of the second one, it is a very useful piece that allows to connect electric wires from two rotating components.

      Both of them can be purchased for a few dollars on the web. The IMU will provide the wind heading and is placed in the anemometer rotating part:

      while the second one will be placed between the rotating part of the anemometer and the base.

      Here's the page with the STL files:

      http://www.thingiverse.com/thing:1916259

      I'm wondering if to add a dc motor a the front extremity of the "arrow" in order to get some more electricity, probably in the next log I will add it :)

    • sorry

      silvio biasiol10/04/2016 at 13:17 0 comments

      Hello, I'm writing this log to inform everybody that unfortunately, I will not be able to finish the project within the concourse deadline due to university apprenticeship and exams. However, even if a little bit slowly I will continue to update and work on this amazing project in which I really believe. I would like to thank Hackaday and its users for the opportunity they have given me! I will keep you posted :)

    • Software architecture overview

      silvio biasiol04/28/2016 at 13:17 0 comments

      The software of the sailboat will be based on a layered system which can be seen above. The behaviour is based on a incremental process of data refinement level by level. The main entities will be:

      • Long Distance Route Planner (LDRP): it is the top level. It is not influenced by sensors readings nor by lower levels or obstacles. It divides the whole trip route in segments based on weather forecast, base-control choices and off-limit zones (eg coasts). As output it gives the next objective coordinates. The route is dynamic: the LDRP can change it in case of bad weather forecasts, base decisions or if the boat has drift away from the original route (due to marine currents or due to other meteorological phenomena) in any given moment.
      • Short Distance Route Planner (SDRP): it takes as input the next objective coordinates and divides the route to reach it in segments based on wind direction and strength. It is mainly in charge of avoiding the "not sailable" zones (in the following picture), maintaining an optimized route in regard to the wind strength and avoiding marine obstacles.

      Furthermore it can dynamically change the route in case of repentine changes of the wind conditions or if the boat has come too far from the next intermediate objective or if an obstacle is approaching. It gives as output the desired direction to follow in degrees) to reach the next intermediate objective.

      The following picture represent a typical LDRP and SDRP interaction:

      • At the bottom of the system there is the helmsman. It receives as input the desired direction from the SDRP (in degrees), the actual boat heading and speed. It operates the rudder computing (to put it simply) the difference between the SDRP desired direction and the actual boat direction and filtering the rudder movement speed with the actual boat speed to avoid rough tacking or jibing manoeuvres.
      • The last component is the bowman. It is in charge of pull and release the sails. It is completely independent to all the other entities and it makes decisions only based on wind strength and boat heading. This independence imitate real life conditions in which communication between helmsman and bowman is mainly unnecessary.

      I'm developing a little Java software that will visually simulate the path choosing algorithm in optimal conditions. It will also show the dynamic changing of the path in case of wind direction changes. Hopefully I will finish it soon and upload both the code and a demo version :)

    • Redundant sailing system

      silvio biasiol04/21/2016 at 13:22 0 comments

      Thanks to @Leonard that pointed out the possibility of creating a redundant system!

      Redundancy is basically the duplication of critical components of a system with the intention of increasing reliability of the system.

      In my case I'm going to use two Arduino that do the same task: sail the boat. In the event that one fails the other could take his place.

      One is gonna be the master Arduino which in normal conditions operates the sailboat by himself. The other one is gonna be the slave Arduino that will provide its sensors readings in case of failure of sensors of the master Arduino or will substitute the master Arduino in case of complete failure. They will be located in two independent waterproof enclosures.

      The only parts in common are the I2C bus between the master and the slave and the servos operating rudder and sails.

      The slave Arduino will be in standby mode most of the time in order to prevent as much as possible power consumption, periodically it will wake up to send a signal over the I2C to the master to see if everything is working fine. It can also be activated by the master in case of necessity.

      The master/slave choosing policy is quite simple: the slave periodically check if the master is alive and if it does not receive any answer switch to master mode. From its part the master periodically checks if the slave is not in master mode, if this occurs the master automatically switch to slave mode.

      There can be a problem in the scenario in which the connection between the Arduinos fails but both of them are still operating. In this case there will be two master Arduino in competition for operating the boat. I'm evaluating two options:

      1. To use a control circuit as an intermediary between the two Arduinos and the sails and rudder. If it receives two signals it listens only to one, based on statistics calculated on previously received commands. Obviously this choice has one BIG gap: the control circuit itself is a weak point if it fails.
      2. The options that I'm actually more willing to consider is to create more than one I2C bus between the Arduinos. So if the first bus fails to deliver the signal the second will be used and so on.

      If you have any questions or suggestions please feel free to comment :)

    • Electronics scheme

      silvio biasiol04/14/2016 at 12:59 11 comments

      So here's the first electronics diagram.

      It's schematic (and simplified) but enough detailed to give an idea.

      It doesn't represents all the hardware parts that I've decided to use but the main ones are here. So here are the new additions:

      EDIT:

      • Thanks to the suggestion of @M. Bindhammer I added a new picture of the diagram to make it more understandable :)
      • Also I added a light sensor to decide when to activate the position LEDs
      • Yet to be decided wich LEDs I will actually use, the ones in the schema are just representative.

    • Hull update

      silvio biasiol04/06/2016 at 09:21 0 comments

      I found this hull on the web. It is quite good to me because of the possibility to customize whatever I want.

      The purchase price amounts to € 29 plus € 9 of delivery charges.

      If, like me, you’re not a nautical expert but you wish to build up everything from scratch,

      my advice is to search the hull on websites like ebay.

      The best keywords to use are: “boat hull”, “fiberglass sailboat hull” or similar.

      You’ll have a chance to find many boats with interesting designs with could be traded close to you allowing you to save money on delivery charges.

      For the realization of the internal frame I’m going to use a 3d printer in order to optimize mass distribution and secure electronic components.

      I just wanted to thank @Durvir for letting me know that there are several “sailbot” competitions all over the world.

      I found a very interesting source of information (regarding both hardware and software), to witch I’m going to take a deep look :)

      Here it is:

      http://www.microtransat.org/links.php

    View all 8 project logs

    Enjoy this project?

    Share

    Discussions

    Modzer0 wrote 07/27/2018 at 07:04 point

    As an alternative to sail check out wave based propulsion. The motion of the waves will propel the craft and if you toss in some linear generators it will also produce power with the wave motion. The sea can be vicious so the fewer external moving parts, the better. 

      Are you sure? yes | no

    Simon wrote 12/20/2016 at 00:31 point

    There is similar to the project I worked on.  I took a similar boat to the World Robotic Sailing Championships.  

    https://www.hackster.io/anemoi/lean-green-rc-sailing-machine-2cdde5

      Are you sure? yes | no

    [deleted]

    [this comment has been deleted]

    silvio biasiol wrote 04/11/2016 at 18:07 point

    Thank you for the suggestion and nice project! :)

      Are you sure? yes | no

    Dave Merrett wrote 04/11/2016 at 11:55 point

    Nice work. Im very envious....I started a very similar project some years ago. Got hull, sw and electronics/ servos done, but never finished ( rigid, symmetrical) sail :(  Good luck. https://www.facebook.com/dave.merrett/media_set?set=a.102826460158.113015.776150158&type=3

      Are you sure? yes | no

    silvio biasiol wrote 04/11/2016 at 18:11 point

    It's a shame you didn't finish it! If you decide to restart building it I will be happy to help you with  code and suggestions!

      Are you sure? yes | no

    Nate Bowen wrote 04/08/2016 at 13:16 point

    What are your considerations for choosing between the Pi Zero and Uno?

      Are you sure? yes | no

    silvio biasiol wrote 04/09/2016 at 13:14 point

    Normally I would go for an Arduino because it's easier and it's real time (instead of the Pi that can have some latency because of OS subroutines delaying the calculations of the boat) but since I recently stumbled across the zero I'm evaluating the possibility to use it mainly because it's quite simple to implement GPS functions and it can do more "high level" tasks without adding extra hardware. Anyway 90% I will go for the Arduino or Ardupilot or simiar... Thank you for the question, hope I've been clear and sorry for the bad english 

      Are you sure? yes | no

    Nate Bowen wrote 04/09/2016 at 13:36 point

    Your English is fine enough! I'm sure I can't speak your native tongue. I appreciate your answer and definitely agree with your thoughts. I just can't get my head around the Pi, yet. I think most projects do just fine without a Linux OS overseeing everything. I think that non-OS projects are much simpler to get rolling (or sailing, in this case). 

      Are you sure? yes | no

    silvio biasiol wrote 04/07/2016 at 16:18 point

    Thank you! :)

      Are you sure? yes | no

    Alex Pedenko wrote 04/26/2016 at 20:29 point

    Aand one more:

    https://github.com/kolosy/ArduSailor

    Feel free to borrow as needed.

      Are you sure? yes | no

    silvio biasiol wrote 04/27/2016 at 08:50 point

    Wow nice job! Thank you :)

      Are you sure? yes | no

    silvio biasiol wrote 04/04/2016 at 10:05 point

    That's amazing! Thank you I'll have a look! :D The second one gives pretty useful advices for the wind vane..

      Are you sure? yes | no

    Richard Hogben wrote 04/01/2016 at 19:01 point

    Are there any autonomous sail projects in the RC community?

      Are you sure? yes | no

    silvio biasiol wrote 04/02/2016 at 22:51 point

    I've not looked around to be honest but I think that probably if you look around you can find some :)

      Are you sure? yes | no

    Durvir wrote 04/03/2016 at 18:38 point

    There is a World Robotic Sailing Championship going on for several years now. Have a look at http://www.roboticsailing.org/ for a collection of the past events. Maybe this helps you finding more information on autonomous sailing.

      Are you sure? yes | no

    Richard Hogben wrote 04/04/2016 at 18:14 point

    Really cool

      Are you sure? yes | no

    Similar Projects

    Does this project spark your interest?

    Become a member to follow this project and never miss any updates