Arduino Boat Robot for Ocean Cleaning
Smart autonomous plastic waste collector using dual BTS7960 motor drivers, a relay-controlled conveyor belt, and IoT-ready ESP32 expansion.
Project Overview
Smart Ocean Cleaning Robot
The Arduino-based boat robot navigates water surfaces autonomously while an onboard conveyor belt continuously scoops floating plastic waste and stores it in an onboard compartment. Designed for lakes, rivers, and coastal prototype testing — it's an ideal final-year engineering or IoT project.
Key Features
What Makes This Robot Special
Arduino UNO Control
Embedded control with digital HIGH/LOW logic and PWM motor speed management.
Dual BTS7960 Drivers
IBT-2 modules handle up to 43A per channel — ideal for high-torque DC motors.
Conveyor Belt System
Relay-activated conveyor scoops floating waste and transfers it into a storage bin.
IoT-Ready (ESP32)
Optional ESP32 upgrade enables Wi-Fi monitoring and remote control.
Battery Powered
Portable rechargeable battery system for standalone water deployment.
Full Navigation
Forward, reverse, left and right steering for complete water surface coverage.
Circuit Diagram
System Block Diagram
The diagram below shows how all components interconnect — from the Arduino UNO brain to motor drivers, relay, and optional IoT module.
System Operation
How the Robot Works
Propulsion System
- Two high-power DC motors driven by dual BTS7960 modules
- Forward and reverse motion via HIGH/LOW logic on pins 5 & 6
- Differential speed for left/right directional steering
- PWM support for variable speed control
Waste Collection Mechanism
- Relay on pin 7 activates conveyor belt motor
- Belt scoops floating plastic from the water surface
- Debris transfers into an onboard storage compartment
- Collection runs continuously during navigation cycles
Arduino Control Logic
- Timed movement cycles: move → stop → reverse → stop
- Digital pin outputs control all motor directions
- Relay switching manages conveyor operation
- Expandable to autonomous AI-based navigation via ESP32
Bill of Materials
Hardware Components
Source Code
Arduino Sketch
Upload this sketch to your Arduino UNO. Pins 5 and 6 connect to the BTS7960 motor drivers; pin 7 switches the relay for the conveyor belt.
/* * Arduino Sketch — Boat Robot for Cleaning Oceans * Controls propulsion motors via BTS7960 and * the conveyor belt via relay. */ // Pin definitions const int motorControlPin1 = 5; // BTS7960 Pin 8 (Left Motor DIR) const int motorControlPin2 = 6; // BTS7960 Pin 4 (Right Motor DIR) const int relayPin = 7; // Relay — Conveyor Belt void setup() { pinMode(motorControlPin1, OUTPUT); pinMode(motorControlPin2, OUTPUT); pinMode(relayPin, OUTPUT); // Initial state: stopped, belt off digitalWrite(motorControlPin1, LOW); digitalWrite(motorControlPin2, LOW); digitalWrite(relayPin, LOW); } void loop() { // Activate conveyor belt digitalWrite(relayPin, HIGH); // Move forward for 2 seconds digitalWrite(motorControlPin1, HIGH); digitalWrite(motorControlPin2, LOW); delay(2000); // Stop for 1 second digitalWrite(motorControlPin1, LOW); digitalWrite(motorControlPin2, LOW); delay(1000); // Move backward for 2 seconds digitalWrite(motorControlPin1, LOW); digitalWrite(motorControlPin2, HIGH); delay(2000); // Stop for 1 second digitalWrite(motorControlPin1, LOW); digitalWrite(motorControlPin2, LOW); delay(1000); // Repeat the cycle… }
Environmental Impact
Why This Project Matters
Ocean Plastic
Removes floating plastic before it breaks into microplastics
River & Lake Clean-up
Deployable in freshwater bodies for debris removal
Smart Automation
Reduces human exposure to polluted water environments
Smart City Ready
Aligned with green technology and smart city development goals
More Projects
Comments
Post a Comment