2DREAM is a fully 3-D printed, small scale warehouse bot.

The bot is controlled by a Bluetooth controller and can split into two independent halves. When split, the sub-bots can handle smaller tasks independently.

Here, I am only using one hand to drive. The video makes it hard to see, but the robots can drive simultaneously.

One half of the 2DREAM Robot


Introduction

If you've seen the movie "Big Hero 6," you might remember the super-villain's small collaborative robots. On its own, each robot can't do much; when combined, they work to create some incredible effects. The same effect was envisioned for this project but on a much smaller scale. 

Most warehouse robots today manage inventory on their own. What if a bigger box needs to be lifted, beyond a bot's capacity? Instead of redesigning a better bot, this project proposes bots that can work together to move units. This saves cost in the long run; bots can be built with less capable components and each bot can do lighter work after the heavy job is done.

Initial Design Phase

This was a university Mechatronics project with full design freedom. Our design goals are below:

  1. Create two independent robots that have the ability to move freely in 2D space

  2. Each bot must be capable of lifting a payload from one position to another

  3. Bots must physically connect and move as a unit

  4. As a connected unit, the bots will gain increased maneuverability and strength

  5. Components must be 3-D printed or made from other cost-effective materials

Here are some prototypes from throughout my design process.

Initial chassis prints

 

Pylons bending; lift binding

Potential three motor setup. Stronger arms

Final setup with electronics. Offset arms for added space.

Software & Electronics

The software is available on Github. The robot is controlled by an ESP32 microcontroller. An Arduino program controls the following features:

  • Motors. A digital signal is sent to the motor drivers. The drivers then send an analog signal to each analog motor.
  • Limit switches. De-bounced and monitored for merge / split operations.
  • Magnets. Activated according to the limit switch behavior and the program state
  • Lift. Controlled using a PID loop. When both bots are engaged, two PID loops are used to synchronize the lifts.

A serial Bluetooth communication is established between the ESP32 and a computer. The following are handled by the computer:

  • Controller inputs. Sent via Bluetooth to the ESP32
  • Controller state. De-activates a controller if the robots are merged
  • GUI. Receives data from ESP32 and plots on a live interface.

Both robots are equipped an identical set of electronics

Both robots are equipped with a set of mecanum wheels. When paired together, the Arduino changes the driving mode accordingly. While merged, the robots are able to move on additional axes.

Maneuverability from mecanum wheels

Engineering Analysis (Lift Mechanism)

Using free body diagrams and the motor specs we can calculate the approximate lifting speeds for the motor. Friction values are taken from research papers approximating the friction forces acting on lead screws.

 

Bill of Materials

Part

Cost

Notes

Drive System

$5.04

Drive Motors  + Drivers

Lift Mechanism

$15.95

Lift Motor + DVR88 *Wholesale

Structural

$6.00

Chassis + Lift Plate

Magnetic Latch

$4.99

-

Misc

$8.00

ESP32, Cables, Batteries

TOTAL

$40.98

-