Posts

Building the Actuator for So Close

Image
So Close needs a way to set its sails. Not a new problem. Model boats have been using pulley servos for years, but they are a bit limited. I want a servo with more travel, more strength and not so expensive.  I had previously experimented with modifying a standard RC servo to make it into a pulley servo. By replacing the potentiometer which senses the position with a 10 turn potentiometer it made the servo turn about 7 times over the full travel, but I found spooling string up was unreliable. Very practical on a real sailboat with sailors that can solve the problem of a snagged line, but on an RC boat a minor tangle can be big trouble. I needed something with fewer points of failure. Abandoning the winch approach, I designed a linear actuator based on a gearhead motor and a 1m length of M6 threaded rod. A square nut runs on the threaded rod inside a square tube. As the rod rotates the nut is moved back and forth in the square tube. The screw thread of the rod has a 1mm pitch so ea...

Sailing Test Platform - So Close!

Image
With the autonomous navigation of a boat proven (see previous blog post ), it's time to prove we can sail an autonomous boat. We chose a sloop rig boat as it's a practical rig that we all understand (see future blog posts about wing sailing). Sticking to the philosophy of rapid iteration and easy construction, I designed a monohull boat around a length of 110 mm soil pipe.  Related posts: Link to So Close keel project Link to So Close actuator project Link to the DroneLink System - Robot Brains article Some stats: length                             2.4m exactly Beam         110mm  Draft 500mm Hight of the rig 1100 mm  Sail area 1 sqm  Actuator           800mm travel home brew linear actuator Keel mass 6 kg Displacement 11kg The boat has a completely round cross-section so has absolutely zero form st...

DroneNode Modules and Loosely Coupled Pub/Sub Messaging

Image
  Each boat (or other device) is based on a custom ESP32-based motherboard running our DroneNode firmware.  The firmware exposes a number of sensors, actuators, telemetry interfaces and control modules that can be configured for any given boat (device) through a simple config file.  To keep software modules loosely coupled, they communicate using a pub/sub messaging model.  This post describes both of these features in more detail. See the DroneLink Architecture - "Boat Brains" article for more detail on the overall system including the central server and web management interface. DroneNode Firmware Architecture The DroneNode firmware architecture is grouped into 5 logical blocks, as illustrated in the following diagram: Hardware - The physical interfaces exposed by the ESP32, including onboard Flash storage (LittleFS filesystem) and any peripheral devices connected to the ESP IO (digital/analog IO, I2C, SPI, Serial) Done System - Low-level functionality responsi...

Magnetically Coupled Waterproof Servo Prototype

Image
  A critical component of our Microtransat boat(s) is the actuators for rudder, wing sail, etc.  On the hunt for a rugged, waterproof and flexible solution I've been working on a prototype that uses a magnetically coupled output stage to keep the delicate motor, gearbox, and electronics completely waterproof.

DroneNode Motherboards - Evolution from v1 to v5

Image
Each boat (or other device) is based on a custom ESP32-based motherboard running our DroneNode firmware.   The motherboard exposes the ESP32 IO interfaces (digital/analog IO, serial, SPI) and includes an 8-channel I2C expander to make connecting peripheral devices extremely easy.  It has also evolved to include onboard GPS, RFM69 radio, QMC5883L compass, status Neopixel and micro-SD card reader as of v4. The same DroneNode firmware runs on all versions of the motherboard, maintaining backward compatibility and auto-detects hardware version based on an I2C scan of onboard devices. See DroneLink Architecture for how the motherboards fit into the overall DroneLink ecosystem. Version 1 - Simple beginnings Our first attempt at a motherboard to support early test boats (like the Paddles ) - calling it a motherboard is a stretch, given it was really just a breakout board for an ESP32 DevKit, an I2C multiplexer, and a bunch of connectors for expansion ports / I2C. Its simplicity ...

DroneLink Architecture - "Boat Brains"

Image
  From the moment we started discussing the Microtransat project, it was clear we would need a fairly sophisticated software/electronics stack to support the development process - what has evolved into our DroneLink platform.  Our initial requirements were for it to be flexible/extensible, support a fleet of test boats (traditional sail, wing sail or motorised) and help us monitor/learn as we went along.  It should also be easy to use by the non-developers on the team (i.e. the Joshes). A couple of years on and DroneLink has evolved into a competent platform for building not just autonomous boats, but a variety of autonomous devices - it underpins and manages our fleet of test boats, base stations, trackers and anything else we've needed as the project progresses. The diagram below illustrates the main components, explained in more detail below: Boat (Drone) Control Each boat (or other device) is based on a custom ESP32-based motherboard running our DroneNode firmware....

Test sail 3rd Jan 2023

Image
Another cold, dark, windy, and very wet evening at the lake.  Following the learnings from Sunday's sail, where the wind vane was causing us problems, we reconfigured EasySailor to use the Wing's compass and tail setting to infer the wind direction.  The hope was this would give us a more robust wind heading than the small wind vane on the hull.   We also added an RC receiver into the hull so we could take manual control if needed, hoping to avoid another rescue mission in the dinghy.   Things started off pretty well, we're getting much faster at setting up and checking compass calibrations before dropping the hull in the water.  As the wind was a strong South Westerly, we launched into the wind with a simple back-and-forth waypoint mission just offshore.  This was in case of issues, at least the boat would be blown back toward us! EasySailor steamed off toward the first waypoint and then immediately turned NE toward the second, reaching it soon a...