Project tutorial

Make an Autonomous "Follow Me" Cooler © GPL3+

We use an Arduino to build an autonomous "follow me" cooler that connects to a smartphone via Bluetooth and uses GPS to navigate.

  • 45,320 views
  • 89 comments
  • 225 respects

Components and supplies

Cooler
×1
Medium-Density Fiber (MDF) Board, 1/4-Inch
×1
Wood, 1"x2"
8 Ft
×1
Wood, 1"x3"
8 Ft
×1
Wheel, 6-Inch
×2
Swivel Caster
×1
Geared 12V DC Motor
×2
Shaft Hub, 4 mm
×1
A000066 iso both
Arduino UNO & Genuino UNO
×1
Turnigy 2200mAh 3S 20C Lipo Pack
×1
Portible USB Charger
×1
L298n Motor Driver
×1
12002 04
Breadboard (generic)
×1
Parallax PAM-7Q GPS Module
×1
Adafruit HMC5833l Compass
×1
HC-05 Bluetooth Module
×1
M3 Nuts and Bolts
×4
M5 Nuts, Bolts, and Washers
×2
#4 x 1" Nuts and Bolts
×8
#6 x 1" Wood Screws
×6
#10 Nuts, Bolts, and Washers
×6
1/2" Washer
×2
Nails, 1"
×30
11026 02
Jumper wires (generic)
×1
Adafruit industries ada592 image 75px
USB-A to Micro-USB Cable
×1
Picture Hanging Command Strips
1 Pack
×1

Necessary tools and machines

09507 01
Soldering iron (generic)
Saw
Electric Drill
Jigsaw
Hammer

Apps and online services

About this project

In this project, we use an Arduino Uno to build an autonomous "follow me" cooler. The robot cooler connects to a smartphone via Bluetooth and uses GPS to navigate. All the electronics will be contained in the base so that other objects can be carried as well.

How We Built It

We created two videos about the build process for this project.

In this first video, Davis explains how to build the base.

Part 1. Davis explains how to build the base

To construct the base, we used a large piece of scrap 1/4" MDF board and a couple 1x3" planks to serve as the sidewalls. Standing the boards up on end to create a box helped keep the cooler in place while the base was moving.

We measured the MDF to be about 1 inch larger on each side than the dimensions of the bottom of the cooler. In this case, the cooler was 17.5x11.5", so we cut the MDF to be about 19.5x13.5". The extra space allowed the 1x3" boards to be nailed on top of the MDF. Our jigsaw worked well to cut this piece.

The 1x3" planks were cut to the same length as the depth of the base, but we made them about 2 inches shorter on the width so that they could align with the edges of the MDF. The planks were attached to the MDF with a few small nails.

In order to house the electronics, we made a small box using the same process as the base platform (albeit using some 1x2" planks instead of 1x3"). We eyeballed the dimensions here, but it turned out to be about 11x9". The electronics box was nailed to the bottom of our platform after we cut a hole in the MDF with our jigsaw.

Finally, we added the components for the drive system. The wheels used a couple 3D printed brackets (3D parts provided below) to mount our high torque 12v motors. A 3D printed connector was attached to a metal hub to mount the wheel on the motor shafts.

A simple swivel wheel was used on the back of the platform. It was attached with another 3D printed bracket.

Electronics

In the second video, Aaron adds the electronics to the base of the cooler.

Part 2. Aaron explains how to wire up the electronics

The electronics were installed in the box cutout under the platform. We used an Arduino Uno and a 5v battery to power the sensors, Bluetooth, and control logic. A 3s LiPo battery was used to power the motors.

A HC-05 Bluetooth module was mounted at the front of the platform for better range. The rest of the components including a L298N motor driver, PAM-7Q GPS, and HMC6883L compass were mounted inside and connected to the Arduino through the breadboard.

The compass works with I2C, so we connected the SLC and SDA pins to A5 and A4 respectively. The rest of the pins were connected through digital I/O. For more information on how we connected the wires, see the diagrams provided in the schematics section below.

The motors were powered by drilling holes through the platform and attaching them the L298N motor driver board. The 3s LiPo was connected as the main power source and we tied the ground together with the Arduino power source for control logic.

The following image shows what everything looked like once it was connected in the electronics box.

Motorized Lid

The motorized lid wasn't included in either of our build videos, so we posted some supplemental instructions on how to add it.

Our cooler lid had a couple notches that kept the lid snapped shut when it closed. Our servo wasn't strong enough to lift the lid when it was snapped shut, so we used a small Dremel tool to sand down the notches.

We used a MG996R high torque servo power the lid. We 3d printed a hinged arm to connect the servo horn to the top of the cooler. In order to keep it in place, we used some gorilla glue. The servo was mounted on the side of the cooler with a piece of 3M double sided outdoor mounting tape.

A hole was drilled on the back of the cooler to feed the servo wires through. We used a couple of extension wires to attach it to power, ground, and the signal wire pin 3 on the Arduino.

Preparing Your Blynk App

This is the configuration we used for our Blynk app.

Once you have everything configured property, verify and upload the code to your Arduino. If you are outside, it will take a few seconds for the GPS to acquire a satellite lock. Once it does, it will begin flashing.

Make sure your android device is paired with HC-05 bluetooth module. If it asks for a password, it should be default 1234 . Open Blynk and press play!

All of the code for this project is provided open source on our Github page. For more instructions on how to use it, view the README.md.

Custom parts and enclosures

Motor Mount
Motor mount used to mount DC motor to chassis. Mounts motor by clamping. STL file for 3D printing.
Wheel Hub Adapter
Hub/adapter to adapt a 4mm motor shaft hub to the 6-inch wheel. STL file for 3D printing.
Swivel Wheel Mount
A mount to attach the swivel wheel to the wooden frame of the chassis. STL file for 3D printing.
Actuator Attachment
Attaches the actuator arm to the top of the cooler lid.
Cooler Servo Mount
Mounts the servo inside the cooler.
Servo Horn Adapter
Attaches the servo horn to the actuator arm.
Lid Actuator Arm
Actuator arm for the motorized lid.
Pivot Cap 65
Cap for the the actuator attachment.
Pivot Cap 68
Cap for the servo horn attachment.

Schematics

Circuit Diagram
Cooler diagram ai7q6uo55s

Code

Source Code
This code should be loaded on your Arduino Uno. It powers the cooler base platform and servo motor.

Comments

Similar projects you might like

Plant Communicator

Project tutorial by Arduino

  • 250 views
  • 0 comments
  • 1 respect

The Nerd

Project tutorial by Arduino

  • 126 views
  • 1 comment
  • 0 respects

LED Matrix Display Badge

Project tutorial by FabLabAQ

  • 602 views
  • 0 comments
  • 2 respects

PICASO 4.0 The Infinite X- Axis CNC Wall Engraver

Project tutorial by Arnab Kumar Das

  • 122 views
  • 1 comment
  • 1 respect

Object Tracker and Updater

by Rupin Chheda

  • 152 views
  • 1 comment
  • 2 respects

Temperature Control

Project tutorial by reteprelleum

  • 1,188 views
  • 1 comment
  • 7 respects
Add projectSign up / Login