Concealed Desktop Storage and Retrieval Robot



For my final 12th grade engineering project, I set out to build a small-scale functional model of an Automated Storage and Retrieval System (ASRS) like the robots seen in Amazon's fulfillment center. The idea was as follows:

  1. A self-contained unit that hangs below a desk, concealed from above. It is connected to a computer that can send it requests.
  2. When a box is placed in the "mouth" of the robot, it automatically stores the box on a shelf and remembers it's location.
  3. When the computer sends a request to retrieve said box, the robot nagivates to the indexed location and delivers it back to the mouth.

The Design

Inspired by those automatic parking towers in Japan, The "carriage" is able to rotate around it's central axis to access the radial shelves. It can also move up and down between the top, or "mouth" and different shelf levels. Both axes use open-loop stepper motors with GT2 timing belt, with the vertical axis on an open-ended setup to save space. A large diameter "lazy susan" bearing allows the carriage and payload to pass up through the mouth to the surface above (note: originally, the rotary axis was driven with a gear, but this did not acheive a large enough reduction).


To be able to place and retreive boxes on the shelves,
a servo-drivenparallel four bar linkage keeps the
payload level throughout the arc. On the end-effector,
graphite-lubricated brass spikes interface with two holes
on the standard 3d printed containers.



Control System

A custom control PCB houses an arduino nano and a DRV8825 stepper driver, with an additional TB6600 driver connected externally. The arduino communicates to the computer over Serial over USB.

When the machine is powered on, It initiates a homing sequence to place the carriage in a known position (seen at the start of the video). When a command to store or retrieve a box is recieved, the arduino figures out the coordinates it must navigate through through a lookup table of storage locations. Once the coordinates are aquired, a custom motion profiling layer moves the carriage to the position with smooth acceleration to prevent jerk.

Due to the arc of the parallel linkage, the vertical axis and linkage servo must move in sequence using simplified inverse kinematics to prevent collisions.


More Images