Kudda is a prototype for an autonomous driving boat that utilizes an Arduino Uno as it’s sole computation unit.
Description

Kudda is a prototype for an autonomous driving boat which was built for the course "Prototyping". It uses three ultrasonic range sensors to detect obstacles in the front, slight left and slight right. If an obstacle is too close it starts to steer in the direction where it detects the clearest path.

Type

University project, third semester

Tools used

Arduino, ESP8266, HC-SR04, JavaScript, HTML, CSS

Partners

Lukas Kenntner
Jeannette Helmer

Rendering of our boat prototype
Prototype

Starting with styrofoam we tested each part of the boat individually and created numerous prototypes until we decided to mill the final shape out of polyurethane foam.

An Arduino Uno acts as the brain of the apparatus and manages the range sensors and two motors (left and right). The boat uses six NiMH rechargeable batteries as the power source.

Monitoring Tool

For debugging purposes we developed a tool to constantly monitor values measured by the sensors. Using a serial monitor was not an option since the usb cable between the Arduino and the laptop would interfere with steering the boat.

Instead we used an ESP8266 WiFi-Chip which we attached to the Arduino with a serial connection. The ESP8266 opens a network and with an app on the laptop (built with Electron) we were able to gain insight into how our boat "thinks".

We later decided to use the existing serial connection to send commands from the Monitoring Tool to the Arduino. The Enter key toggles the manual mode where the range sensors are disabled and the user can control the boat with the W/A/S/D keys.

User interface of the monitoring tool

Facts

~ 8 hours
battery life in autonomous mode
564
lines of code (prototype)
743
lines of code (monitoring tool)
Eager to see more?
Check out my other projects!