0% found this document useful (0 votes)
185 views19 pages

Building A Self Driving Boat ArduPilot Rover

The document describes the process of building a self-driving boat using ArduPilot software. The project began as a university student project in 2018 to create an autonomous boat that could map blue-green algae levels in a lake, but it faced challenges and was not successful. In 2020, the author worked to complete the project on their own by installing the ArduPilot autopilot system to prove autonomous navigation capabilities. The boat is constructed in two parts - the physical hull and power systems, and the "brain" controller box. The document provides details on the origins of the project, the original design challenges, and the 2020 upgrade to add autonomous navigation functionality.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
185 views19 pages

Building A Self Driving Boat ArduPilot Rover

The document describes the process of building a self-driving boat using ArduPilot software. The project began as a university student project in 2018 to create an autonomous boat that could map blue-green algae levels in a lake, but it faced challenges and was not successful. In 2020, the author worked to complete the project on their own by installing the ArduPilot autopilot system to prove autonomous navigation capabilities. The boat is constructed in two parts - the physical hull and power systems, and the "brain" controller box. The document provides details on the origins of the project, the original design challenges, and the 2020 upgrade to add autonomous navigation functionality.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

instructables

Building a Self-Driving Boat (ArduPilot Rover)

by Basement Engineering

You know what's cool? Unmanned self-driving The project was nished in two parts and the
vehicles. They are so cool in fact that we (my uni Instructable follows the same structure. I'm going to
colleagues and me) started to build one ourselves refer to the rst part as the "muscles" as it includes all
back in 2018. That is also why I set out this year to of the power electronics and the boats hull. Then I'm
nally nish it in my free time. going to go over the "Brain" which is a little box on top
of the boat, that contains the main controller and all
of the receiver transmitter stu .

T he o rig ins o f t he Ke nt e rpris e


ht t ps://www.yout ube.com/embed/fH5AfD628rk

Allright, here ist the backstory to this project, if you


haven't heard it in the video already. This project
started in 2018 when I was still in university. We were
In this Instructable I want to share this project with
at the end of the 4th semester going towards the 5th.
you and get you into building your own self-driving
At our university you get to do a team project for
vehicle. I also made a little YouTube Video that
about 6 months. You can either choose from a list of
scratches the surface of the project and gives you a
prepared projects (good chance of a good grade) or
quick rundown of all the mishaps along the way. This
start your own project (no one ever did this before to
Instructable is the correlating guide that explains how
my knowledge). You also get 12 Credit points for this
this thing actually works.
project, which makes it worth as much as the
bachelors thesis. This way failing can really make a
W ho is t his Ins t ruct a ble f o r a nd ho w t o re a d
di erence in your overall grade.
it
I of course I decided to start a project from scratch
This Instructable actually has two purposes. First and
and found 4 poor souls to follow me on this journey
foremost, I want to share what I have built and
into a dumpster re of a team-project. We started of
learned and get you guys interested in building self
with the minimum required team size of 5 people but
driving vehicles. The secondary purpose is to
2 of us later left. We were also given 1500€, BUT we
document the project and most of it's details so the
were not allowed to spend it on any of those lovely
next student group at my old university, that picks up
chinese webshops that always have the latest and
the project knows whats up.
greatest electronics. Instead we were bound to good
old german electronics suppliers. Spoiler: It is kind of
If you are just here for fun, you can ignore details like
impossible to get self driving boat components this
parameter lists and precise wiring diagrams. I'll try to
way.
keep the steps very generic in the beginning, so they
can be applied to any ArduPilot RC boat and put the
T he O rig ina l Ide a
details at the end.

Building a Self-Driving Boat (ArduPilot Rover): Page 1


When we thought of an idea for the project, we So there it was, the Kenterprise, an autonomous
thought about doing something drone related measuring vehicle that was neither autonomous nor
because drones are just the coolest thing ever. measuring anything. Not much of a success as you
However normal ying drones are already a thing and can see. We got grilled during our nal presentation.
we wanted to build something more novel. So we Luckily our professor acknowledge our heard work
decided to build a drone boat. We got this idea and still gave us an ok grade, worse than any other
because of a nearby lake. project group in the past few years but ok.

The lake covers an area of 12km^2 and is mostly just T he 20 20 Upg ra de


1.5m deep. This means that it heats up in the summer
month, while there is also less water in it. You know I would consider calling this student project an
what lifeform loves warm waters: Cyanobacteria, also absolute dumpster re, but as the old saying goes:
referred to as blue algea in germany. Under the right "the scars of a dumpster re make you stronger". This
conditions these things can reproduce in no time and experience really helped me to appropriately scale my
cover large areas while producing toxins that can goals and stay focused in all of my following projects.
harm humans and animals alike. The purpose of the I also still love the idea of an unmanned vehicle that
boat was to regularly sweep the surface of the lake can help biologists to do lake surveys and the general
and measure the algea concentration. Then the appeal of building a self driving boat. That is why now,
collected data can be printed to a heatmap to one year later, I wanted to nish it using my newly
understand under which circumstances algea starts gained FPV drone knowledge, the beautiful Open
do build up and also to issue real time warnings to Source Project ArduPilot and the power of cheap
locals and tourists. electronics sites.

Another Spoiler: We we were never able to build a The goal was not to turn it into a fully edged
measuring assembly for blue algea and t it onto a measuring boat, but to get all the systems up and
boat, as such assemblies are verrrry costly and are running and install an autopilot. It does not have to
usually housed in a 1mx1mx2m rack on a ship, which be perfect. I just wanted to see this boat drive itself as
is an impractical size for a 1m long boat. The new a proof of concept.
focus is to automatically and cheaply create depth
maps o the lake to enable the local biologist to see I am then going to pass the WORKING autonomous
how the lake bed changes over time. Right now boat on to the university for future projects such as
scanning it is very costly due to the necesary manual mapping the seabed. By the way, I was not alone. My
labor. friend Ammar, who was also in the project group back
in 2018 helped me with testing the boat.
A Do w nw a rds Spira l
Without further ado, lets get into it
Back to the story. In the rst two months of gathering
background knowledge and planning we considered
what such a boat would need: A hull, an electric drive
train, self-driving capabilities, internet controlability, ...
. That was when I decided that we should build almost
everything ourselves with a focus on autonomous
driving. This was a bad idea, an idea that was pretty
much doomed to fail and guess what it did? Exactly, 6
months later we had poured our time and sweat into
a huge RC boat, the Kenterprise (Infographic in image
4). On the way we struggled with limited money, no
available electronics and bad team management,
which I take most of the responsibility for.

Building a Self-Driving Boat (ArduPilot Rover): Page 2


https://youtu.be/fH5AfD628rk

Download

https://www.instructables.com/ORIG/F12/HLJ7/KFS9DYJO/F12HLJ7KFS9DYJO.mp4

Step 1: Muscles: the Hull

Building a Self-Driving Boat (ArduPilot Rover): Page 3


The hull is the biggest part of the boat. Not only interior. This allowed me to know the approximate
because of it's huge dimensions (100cm*80cm) but weight of the boat before building it. I also did a few
also because it took a lot of time to build this custom buoyancy calibrations by inserting a "water line",
structure. If I would do it again, I would de nitely go cutting the vehicle with it and calculating the volume
for of the shelf parts. An o the shelf RC boat was that was underwater. The boat is a catamaran as this
unfortinately not in the cards for us, as those boats kind of vehicle promises a higher stability, then a boat
have a very limited payload capacity. Something like a with a single hull.
bodyboard or a surfboard or just a couple of PVC
Pipes from the hardware store would have been a After a ton of modeling hours we started to bring the
much simpler solution that I can only recommend. boat to life by cutting the basic shape of the two hulls
out of polystyrene plates. They were then cut to
Anyways, our hull started with a 3D model in Fusion shape, holes were lled and we performed a lot of
360. I made a very detailed model and went through sanding. The bridge that connects the two hulls is just
multiple iterations before we actually started building a big wooden box.
it. I made sure to give each component in the model
the appropriate weights and even modeled the We covered everything with 3 layers of bre glass. This

step took about 3 weeks and involved days of manual which translates to sinking and the Star Trek
sanding to get a decently smooth surface ( 0/10 Spaceship "USS Enterprise". We all thought that this
would not recommend). After that we painted it in a name is absolutely suitable for the monstrosity that
nice yellow and added the name "Kenterprise". The we created.
name is a combination of the German word "kentern"

Building a Self-Driving Boat (ArduPilot Rover): Page 4


Download

https://www.instructables.com/ORIG/FTV/A40L/KH0ZY78P/FTVA40LKH0ZY78P.pdf

Step 2: Muscles: Propulsion System

Building a Self-Driving Boat (ArduPilot Rover): Page 5


A boat without motors or sails has the driving longer to heat up.
characteristics of a piece of driftwood. Therefore we
needed to add a propulsion system to the empty hull. The motor shaft is connected to the prop through two
universal joints, an axel and a so called stern tube,
I'd like to give you another spoiler: The motors we that is meant to keep the water out. You can see a side
choose are way too powerful. I'm going to describe view of this assembly in the second image. The motor
the current solution and it's shortcomings and also is mounted at an angle with a 3D printed mount and
propose an alternative propulsion system. the props are also printed (because i broke the old
ones). I was pretty surprised to learn that these props
T he curre nt s o lut io n can withstand the forces of the motors. To support
their strength I made the blades 2mm thick and
We did not really know how much thrust the boat printed them with 100% in ll. Designing and printing
needed so we got ourselves two of these racing boat the props is actually a pretty cool opertunity to try out
motors. Each of those is meant to power a 1m long RC di erent kinds of props and nd the most e cient
racing boat and the corresponding electronic speed one. I attached the 3D models of my props.
controller (ESC) can deliver 90A continuously (this
consumption would drain a big car battery in an A po s s ible Alt e rna t iv e
hour).
Testing showed that the boat only needs 10-20% of
They also require water cooling. Usually you would the throttle range to slowly move around (at 1m/s).
simply connect the ESC and the Motor with some Going straight to 100% throttle causes an enormous
tubing, put the inlet to the front of the boat and current spike, that completely disables the whole
place the outlet in front of the propeller. This way the boat. Also the requirement of a cooling system is
propeller pulls the lake water through the cooling pretty annoying.
system. However, the lake in question is not always
clean and this solution may clog the cooling system A better solution could be so called thrusters. A
and cause a motor failure while out on the lake. That's thruster has the the motor directly connected to the
why we decided to go for an internal cooling loop propeller. The whole assembly is then submerged and
that pumps the water through a heat exchanger on therefore cooled. Here is a Link to a small thruster
top of the hull (image 3). with the corresponding ESC. This can provide a max
current of 30 A, which seems like a more appropriate
For now the boat has two water bottles as reservoirs size. It will probably create way smaller current spikes
and no heat exchanger. The reservoirs simply and the throttle does not have to be limited so much.
increases the thermal mass so the motors take much

Building a Self-Driving Boat (ArduPilot Rover): Page 6


View in 3D Download

https://www.instructables.com/ORIG/FUH/G0P6/KFWJNI5Z/FUHG0P6KFWJNI5Z.stl

View in 3D Download

https://www.instructables.com/ORIG/F8L/UEZO/KFWJNI60/F8LUEZOKFWJNI60.stl

View in 3D Download

https://www.instructables.com/ORIG/FSJ/2Y5D/KFWJNI61/FSJ2Y5DKFWJNI61.stl

Step 3: Muscles: Steering

Propulsion is cool, but a boat also needs to turn. There the boat unable to steer. The nal weak point is the
are multiple ways to achieve that. The two most hole for those wires. This hole was so close to the
common solutions are Rudders and di erential thrust. water, that reversing caused it to be submerged,
therefore ooding the interior of the hull.
Rudders seemed like an obvious solution so we went
for it. I modeled a rudder assembly in Fusion and 3D Instead of trying to x those issues, i removed the
printed the rudders, hinges and a servo mount. For rudders all together, closed the holes and went for a
the servos we choose two big 25kg Servos to make di erential thrust solution. With di erential thrust,
sure that the relatively big rudders were able to the two motors turn in the opposite direction to make
withstand the drag of the water. Then the servo was the vehicle turn. As the boat is almost as wide as it is
positioned inside the hull and connected to the short and the motors are positioned far away from
rudder on the outside through a hole using thin wires. the center this allows turning on the spot. It only
I attached a video of the rudders in action. It is quite requires a little bit of con guration work
pleasing to watch this mechanical assembly move. (programming the ESC's and the main controller).
Keep in mind that a boat that uses di erential thrust
Although the rudders were looking great, the rst test will dirve in circles if one of the motors fails. I might
drives revealed that the turning radius with them is have experienced that once or twice due to the
around 10m which is just terrible. Furthermore the current spike problem described in the step before.
rudders tend to disconnect from the servos, making

Building a Self-Driving Boat (ArduPilot Rover): Page 7


Download

https://www.instructables.com/ORIG/F16/8ZU3/KFQU0S1J/F168ZU3KFQU0S1J.mp4

View in 3D Download

https://www.instructables.com/ORIG/FCZ/6KTI/KFWJO0JF/FCZ6KTIKFWJO0JF.stl

View in 3D Download

https://www.instructables.com/ORIG/F2N/YRM7/KFWJO0JG/F2NYRM7KFWJO0JG.stl

View in 3D Download

https://www.instructables.com/ORIG/F25/E000/KFWJO0JH/F25E000KFWJO0JH.stl

Step 4: Muscles: Battery

To me it seems like RC Components, such as the ones used in this boat, can be powered by pretty much anything,
ranging from a watch battery all the way to a nuclear power plant. Obviously this is a little bit of an exaggeration
but they have a fairly wide voltage range. This range is not written into the data sheats, at least not in Volts. It is
hidden in the S-rating. This rating describes how many battery cells in series it can handle. In most cases it refers to
Lithium Polymere (LiPo) cells. Those have a voltage of 4.2V when fully charged and a voltage of around 3V when
empty.

The boats motors claim to be able to handle 2s to 6s which translates to a voltage range of 6V all the way to 25.2V.
Although i wouldn't always trust the upper limit, as some manufacturers are known to place components on their
boards that can only withstand lower voltages.

This means that there is a wide variety of usable batteries as long as they can deliver the required current. And I
actually went through a couple of di erent batteries before building a proper one. Here is a quick rundown of the
three battery iterations that the boat went through (so far).

1. LiPo B a t t e ry Pa ck

When we planned the boat we did not have any clue how much energy it would consume. For the rst battery we
choose to build a pack out of the well known 18650 Lithium Ion cells. We soldered them into a 4S 10P pack using
nickel strips. This pack has a voltage range of 12V to 16.8V. Each cell has 2200mAh and is rated at a maximum
discharge rate of 2C (pretty weak) so 2*2200mA. As there is 10 cells in parallel it can deliver peak currents of just
44A and has a capacity of 22Ah. We also equipped the pack with a battery management board (more on BMS later)
that takes care of charge balancing and limits the current to 20A.

Building a Self-Driving Boat (ArduPilot Rover): Page 8


Upon testing the boat it turned out that 20A of max current is waaaaay less than the motors consume and the BMS
was constantly cutting the power if we weren't careful with the trottle stick. That is why I decided do bridge the
BMS and connect the Battery straight to the motors to get the full 44Amps. Bad Idea!!! While the batteries managed
to deliver slightly more power, the nickel strips, connecting the cells could't handle it. One of the connections
melted and caused the wooden interior of the boat to produce smoke.

Yeah, so this battery was not really suitable.

2. Ca r B a t t e ry

For my 2020 proof of concept, I decided to use a bigger battery. However, I did not want to spend any extra money
so I used an old car battery. Car batteries are not meant to be fully discharged and recharged, they should always
be kept at full charge and only used for short current burst to start an engine. That is why they are called starter
batteries. Using them as a battery for an RC vehicle signi cantly reduces their lifespan. There is another type of lead
battery that often has the same form factor and is specially designed to be discharged and recharged multiple
times called a Deep Cycle battery.

I was well aware of the short comings of my battery, but I wanted to quickly test the boat and the battery was old
anyway. Well, it survived 3 cycles. Now the voltage dips from 12V to 5V whenever I hit the throttle.

3. LiFe Po 4 B a t t e ry Pa ck

"Third time is a charm" is what they say. As i still didn't want to spend my own money, I asked my university for help.
Sure enough they had my dream battery all along. Our Uni takes part in the "Formula Student Electic" competition
and therefore has an electric race car. The racing team previously switched from LiFePo4 cells to 18650 LiPo cells as
they are lighter. So they have a stash of multiple used LiFePo4 cells that they don't need anymore.

Those cells di er from LiPo or LiIon cells in their voltage range. The have a nominal voltage of 3.2V and it ranges
from 2.5V to 3.65V. I assembled 3 of those 60Ah cells into a 3S pack. This pack can deliver Peak currents of 3C aka.
180A and has a max voltage of just 11V. I decided to go for a lower system voltage to decrease the motor current.
This pack nally allowed me to drive the boat for more than 5 minutes and test the self driving capabilities.

A w o rd o n ba t t e ry cha rg ing a ns s a f e t y

Batteries concentrate energy. Energy can turn into heat and if this heat takes the shape of a battery re, you've got
a problem on your hand. That's why you should treat batteries with the respect they deserve and equipt them with
the right electronics.

Battery cells have 3 ways of dying.

1. Discharging them to below their minimum voltage rating (cold death)


2. charging them above their maximum rated voltage (may cause swelling, re and explosions)
3. drawing too much current or shorting them (so I really have to explain why this might be bad)

A battery management system prevents all of those things, that is why you should use them.

Building a Self-Driving Boat (ArduPilot Rover): Page 9


Building a Self-Driving Boat (ArduPilot Rover): Page 10
Step 5: Muscles: Wiring

The Wiring for the muscle part is shown in the rst drop over the shunt resistor. The rest of the wiring is
image. On the bottom we've got the battery which just red to red and black to black. As the servos are
should be fused with an appropriate fuse (right now not really used anymore, they can just be ignored. The
there is none). I added two external contacts to cooling pumps are the only component of the boat
connect a charger. It would be a good idea to replace that requires exactly 12V and they don't seem to work
those by a proper XT60 connector. well if the voltage is higher or lower than that.
Therefore they need a Regulator if the battery voltage
Then we have a big battery switch, that connects the is above 12V or a step up converter if it is below that.
rest of the system to the battery. This switch has an
actual key and let me tell you, it is so satisfying to turn With rudder steering both of the ESC signal wires
it and see the boat come to life. would go to the same channel on the brain. However
the boat now uses di erential thrust aka. skid
The brain is connected to the batteries ground while steering, so each ESC needs to have its own separate
the ESCs and Servos are separated by a shunt resistor. channel and the servos aren't needed at all.
This allows the current to be measured through the
little orange connection as it causes a small voltage

Step 6: Brain: Components

The brain is a big box full of interesting electronics. Many of which can be found in FPV racing drones, and some of
them were actually taken out of my own drone. The rst image shows all of the electronic modules. They are neatly
stacked on top of each other using brass PCB stando s. That is possible because FPV-components come in special
form factors refered to as the stack site. From bottom to top our stack contains the following:

Po w e r D is t ribut io n B o a rd ( PDB)

This thing does just what the name implies and distributes the power. Two wires from the battery come in and it
o ers multiple solder pads to connect di erent modules to the battery. This PDB also o ers a 12V and a 5V
regulator.

Flig ht Co nt ro lle r ( FC )
Building a Self-Driving Boat (ArduPilot Rover): Page 11
The ight controller runs the ArduPilot Rover Firmware. It does a variety of things. It controls the motor controllers
through several PWM Outputs, it monitors the battery voltage and current, it connects to the di erent sensors and
input and output devices and it also features a gyroscope. You could say that this little module is the actual brain.

RC Re ce iv e r

The receiver is connected to a remote control. In my case it is a FlySky remote for RC planes that has ten channels
and even establishes two way communication so the remote can also receive signals from the receiver. It's output
signals go straight to the FC through a single wire using the so called I-bus protocol.

Vide o Tra ns m it t e r ( V T X)

The brain box features a little analog camera. The video signal of the camera is passed to the FC that adds an on
screen display (OSD) to the video stream, containing information such as the battery voltage. It is then passed on to
the VTX which transmits it to a special 5.8GHz receiver on the other end. This part is not strictly necessary but it is
cool to be able to see what the boat sees.

On top of the box are a bunch of antennas. One is from the VTX, two from the RC Receiver. The other two antennas
are the following components.

Te le m e t ry M o dule

The 433MHz antenna belongs to a telemetry module. This little transmitter is an input/output device that connects
the ight controller to the ground station (a laptop with a 433MHz USB dongle). This connection allows the
operator to remotely change parameters and get data from the internal and external sensors. This link can also be
used to remotely control the boat.

GPS a nd Co m pa s s

The big round thing on top of the boat is actually not an antenna. Well it kind of is but it is also a whole GPS module
and a compass module. This is what enables the boat to know it's position, speed and orientation.

Thanks to the growth of the drone market there is a wide variety of components to choose from for each module.
The most likely that you might want to switch is the FC. If you want to connect more sensors and need more inputs
there is a variety of more powerful hardware options. Here is a list of all the FC's that ArduPilot supports, there is
even a raspberry pi on there.

And here is a little list of the exact components i used:

FC: Omnibus F4 V3S Aliexpress


RC Receiver: Flysky FS-X8B Aliexpress
Telemetry Transmitter Set: 433MHz 500mW Aliexpress
VTX: VT5803 Aliexpress
GPS and Compass: M8N Aliexpress
Enclosure: 200x200x100 mm IP67 Aliexpress
Remote Control: FLYSKY FS-i6X Aliexpress
Video Receiver: Skydroid 5,8 Ghz Aliexpress

Building a Self-Driving Boat (ArduPilot Rover): Page 12


Step 7: Brain: Wiring

The brain gets its operating voltage straight from the to the back of the enclosure (see image 3).
battery. It also gets an analog voltage from the
current shunt and it outputs the control signals for To mount the stack to the box I used a 3D printed
both of the motors. Those are the external connection base plate. As the components (especially the VTX)
that are accessible from the outside of the brain box. produce heat I also attached a 40mm fan with yet
another 3D printed adapter. I added 4 black plastic
The inside looks much more convoluted. That's why I pieces to the edges to screw the box onto the boat
made the little wiring diagram in the rst picture. This without the need to open the lid. The STL les for all
shows the connections between all of the di erent of the 3D printed parts are attached. I used epoxy and
components that I described in the previous step. I some hot glue to stick everything to the.
also made a couple of extension cords for the PWM
output channels and the USB port and routed them

Building a Self-Driving Boat (ArduPilot Rover): Page 13


View in 3D Download

https://www.instructables.com/ORIG/F1C/BTCA/KFS9DYDK/F1CBTCAKFS9DYDK.stl

View in 3D Download

https://www.instructables.com/ORIG/FF9/PKV4/KFS9DYDL/FF9PKV4KFS9DYDL.stl

View in 3D Download

https://www.instructables.com/ORIG/F65/469D/KFS9DYDM/F65469DKFS9DYDM.stl

Step 8: Brain: ArduPilot Setup

The Ardupilot Wiki describes how to setup a rover in great detail. Here is the Rover documentation. I am only going
to scratch the surface here. There are basically the following steps to get an ArduPilot Rover up and running after
everything is wired up correctly:

1. Flash ArduPilot Firmware to FC (Tipp: you can use Beta ight, a common FPV drone software, for that)
2. Install a Ground Station software like Mission Planner and connect the board (see mission planner UI
in image 1)
3. Do a basic hardware setup
calibrate gyro and compass
calibrate remote control
setup output channels

4. Do a more advanced setup by going through the parameter list (image 2)


voltage and current sensor
channel mapping
LEDs

5. Do a test drive and tune the parameters for throttle and steering (image 3)

And boom, you've got a self-driving rover. Of course all of those steps and settings take some time and things like
calibrating the compass can be quite tedious but with the help of the docs, the ArduPilot forums and YouTube
tutorials you can eventually get there.

Building a Self-Driving Boat (ArduPilot Rover): Page 14


ArduPilot gives you an advanced playground of houndreds of parameters that you can use to build pretty much
any self-driving vehicle you can think of. And if you are missing something you can engage with the community to
build it as this great project is open source. I can only encourage you to try it, as this is problably the easiest way to
get into the world of autonomous vehicles. But here is a little pro tip: Try it with a simple vehicle before building a
giant RC boat.

Here is a little list of the Advanced settings that I did for my particular hardware setup:

Changed Channel mapping in RC MAP


Pitch 2->3
Throttle 3->2

Activated I2C RGB LEDs


Frame Type = Boat
Setup Skid Steering
Channel 1 = ThrottleLeft
Channel 2 = ThrottleRight

Channel 8 = FlightMode
Channel 5 = Arming/Disarming
Setup Current and Battery Monitor
BATT_MONITOR=4
Then reboot. BATT_VOLT_PIN 12
BATT_CURR_PIN 11
BATT_VOLT_MULT 11.0

Building a Self-Driving Boat (ArduPilot Rover): Page 15


Step 9: Brain: Custom LED Controller

Let's face it, RGB LED's are very cool. They look good, My FC does not support scripting but I put 36
they have increased performance in gaming PC's for addressable LED's on the outside of my brain box and
years and in case of an ArduPilot vehicles, they I want to see all of them light up. To achieve that, I put
actually serve a purpose. They show you what's going an Arduino Nano in between the FC and the LED's. To
on inside the controller. Green is good, red is bad and the FC it behaves like an I2C RGB LED controller, that
there is also a lot of color codes in between here is a is able to make an LED strip light up in a single color.
full list. On the other end it controls the 36 WS2812b LED's. My
custom LED controller is basically just a translator
ArduPilot Rover supports a variety of LED types, such that turns the smart addressable LED's into a dumb
as addressable WS2812b RGB LED's aka. NeoPixels. RGB strip. I attached the Arduino sketch.
However, it only supports a single LED out of the box.
It also supports scripting, so you can write your own I am pretty sure that there is a way to make multiple
LED control script to control more LED's BUT your WS2812b LED's work with just the ArduPilot FC. This
ight controller has to have at least 2MB of RAM, to was just the easiest way for me after googling around
support this feature. for an hour.

Building a Self-Driving Boat (ArduPilot Rover): Page 16


Download

https://www.instructables.com/ORIG/F9C/G8JH/KFS9DU2E/F9CG8JHKFS9DU2E.ino

Step 10: Doing a Couple of Missions

After all of that hard work, the boat is nally able to the creation of ArduPilot.
drive itself, meaning that I can click on the map in my
mission planner software to create a waypoint I hope you enjoyed this Instructable and I hope that i
mission, upload it to the boat and it will drive the pre- got you hooked on ArduPilot as well.
con gured route. Although the boat is not perfectly
tuned and is also not yet well tested (this will Thank you for reading and a big thanks to everyone
hopefully be done by future project groups), it is able who supported our project team back in 2019 and me
to follow simple routes and sends a constant stream during my 2020 upgrade. A special thanks to Ammar
of telemetry data to the ground station. for helping me.

To me it is just a magic moment when I ip the switch If you have got any questions, that this Instructable
on my remote control and the boat just starts moving didn't answer, feel free to leave them in the
on its own, without me touching the throttle stick. comments. I will try my best to respond and expand it
And the route is highly repeatable. I can just store my if necessary, although it might not be instantly. Also if
waypoint map in a little le and the boat will drive the you build your own ArduPilot rover share it. I would
same route again and again and again. This makes it love to take a look at it. And one more thing, if you
possible to sample certain points on surface of a lake liked this project, you might want to vote for it in the
and generate heatmaps over time. This can make 2020 Make it Move Contest.
trends, that usually happen too slow or on too big of
a scale to notice visible. Therefore the Kenterprise a Happy Making
great survey vehicle that is relatively easy to operate
thanks to the great work of all the people involved in

Building a Self-Driving Boat (ArduPilot Rover): Page 17


Download

https://www.instructables.com/ORIG/FDL/AF4Q/KFWJN1XW/FDLAF4QKFWJN1XW.mp4

Superbe réalisation , cela aurait été super de pouvoir cartographier le fonds de l'étang avec le gps /
écho sondeur , (profondeurs , nature du sol , température...) . peut-être pour plus tard ? ...
Thanks, the university is actually planning on incorporating such a sensor in the future to use the
boat for autonomous lake mapping. There is also the option to attach some kind of external
assembly that takes water samples at certain coordinates to be analysed in a lab and used for
water quality mapping.
génial, cela devrait beaucoup aider le milieu halieutique , espérant que ce projet ne soit pas limité
aux lacs , et s étende également aux fleuves et rivières , véritablement et définitivement un super
projet , tenez nous aux courants de son évolution et encore merci pour le partage ....
haaaa aux fait petite sujétion : pourquoi ne pas utiliser des hydrojets au lieu des hélices ,
l’avantage est de pouvoir passer là où il y’a des herbiers sans risque d’entrave ?
un peut comme ce model que je suis en trains de rénover .

Excellent description of your project. You did so much more than just buy a bunch of modules on
Aliexpress (or similar) and screw them together. I enjoyed reading about the parts of the project
where you really thought you had found the optimal approach, but testing showed that it definitely
Building a Self-Driving Boat (ArduPilot Rover): Page 18
wasn't :-)

And yes, autonomous vehicles ARE cool. even with their many flaws :-)

There are a few Arduino spectrophotometers here on Instructables - if blue green algae have a
predictable absorption spectrum, a spectrophotometer like this might be able to measure their
presence... https://www.instructables.com/Science-With-Rainbows-Spectrophotometry/
Thank you. You are probably right, I had to do a teeny tiny little bit more, to turn everything into a
moving vehicle, even swim through cold water a couple of times, tha are not shown in the video .
But it was definitely worth it.

We actually had a very expensive algea sensor that was loaned to us by a professor, that uses a
similar approach. Algea are fluorescent. The sensor simply shines light of a certain wavelength at
the algea and measures the wavelength and intensity of the light that comes back to determine the
algea concentration.
I even designed and 3D printed a full measuring assembly with pumps, sampling chambers,
sediment filtering and so on. I attached a couple of renderings. But as we had limited time to
produce a working prototype and realized that we designed the boat to small for all of that stuff, we
had to scrap that idea. I am actually thinking about incorporating an additional chapter on "the tale
of the lost measuring assembly" into the Instructable .

Your video made me laugh, and that isn't easy to do. Excellent project, of course. One random
questions; those props seem quite small. How did you arrive at the correct size?
Thank you, that is a very welcome reaction . The prop size is most certainly not ideal. Their design
was mainly driven by coincidence and the limits imposed by the previously designed hull.
I simply took a look at the props, that came with the stern tubes for the boat. The ones that I
accidentially broke and remodelled them in Fusion. They were about 30mm in diameter and had 3
blades. I scaled them up as much as possible until they would almost touch the bottom of the hull
in my model. After the First printed pair of propellers broke, I reduced the diameter a little bit and
increased the blade thickness to 2mm.
The project has probably schown, that I am not much of a boat guy but they work surprisingly well.
wow! thats cool!

Thank you:)

Thank you. I hope it gets a bunch of people to play around with ArduPilot. Well knowing that the
first and second and third and the ... attempt to make a vehicle self driving might fail, but those
issues are to bei expected and they can get there eventually:).
I enjoyed this quite a bit. It's great that you revisited it and saw it through to completion. Also, your
video is fantastic and really quite funny. Well done all around! : )
Thank you. I'm glad that you liked it. Especially the Video . It would habe been a real Shame to
leave this project unfinished. It might have been a pain in the a** but it was super interesting.
Maybe i'll sommeday finish all of my others unfinished projects as well

Building a Self-Driving Boat (ArduPilot Rover): Page 19

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy