Roblox

Created on 17 Oct 2021

Robots that move blocks...together!

> A swarm of miniature robots that pick up and rearrange colored blocks! Controlled by their overlord—a computer with a camera looking down...who said Big Brother wasn't watching!? ### General Idea We plan to make a super-basic swarm robotics demo. The field will consist of a large, flat area with 1 inch colored blocks. Several identical robots with wheel encoders and grippers will drive around, picking up the blocks, and taking them to a central location to assemble a structure. If time permits, we want to allow the arm to move vertically so that we can build vertically as well. The robots will get global localization data from a central manager. This manager will have several cameras pointed down onto the scene. Using the cameras, the manager will use computer vision to identify the location of the blocks and the robots themselves (each robot will have some sort of fiducial like an Aruco marker on it). The manager will also act as a global planner; however, each robot will be able to drive to a new pose on its own. ### MVP and stretch goals `MVP:` One robot can reliably move blocks and create a 2D structure `Goal 1:` Three robots can work together to create a 2D structure `Goal 2:` Three robots can work together to create a **3D** structure `Goal 3:` Improve the path planning so that the robots work in parallel more effectively (less waiting-around for other robots to get out of the way) ### Schedule `Before Build18:` - Get a proof-of-concept of the CV localization working, try out the motors/encoders for accuracy, experiment with camera calibration `Day 1:` - Assemble all the robots, write drivers to move motors/actuate the gripper/read the encoders - Get path-planning software working (drive to arbitrary [x,y,theta]), commanded remotely through an XBEE radio `Day 2:` - Calculate global location of robot using computer vision, use this data to improve the robot's odometry - Write *basic* path planner to tell robot to drive to a location, pick up cube, and drop it somewhere else. `Day 3:` - Design algorithm to generate "moves" to build a structure out of the blocks - Test, refine, fix bugs, etc. `Day 4:` - Extend software to work with multiple robots at the same time - Test, refine, fix bugs, etc. `Day 5:` - Demo! ### [Parts List](https://docs.google.com/spreadsheets/d/1L6ZM_VUaGWGXHjoVnJDLTCvDecMezbizA5AA7FMBCGw/edit?usp=sharing) Please refer to the "Build18" Sheets for what to buy

@rdudhagr

Ravi Dudhagra

@jefftan

Jeff Tan

Part Cost Quantity Total
Logitech Brio Webcam $169.00 2 $338.00
4K Webcam for CV stuffs
Gearmotor with encoder $12.50 4 $50.00
A gearmotor with encoder, 200RPM 6V
XBEE USB to Serial adapter $18.95 2 $37.90
serial adapter for XBEE's
Teensy 4.1 (No headers) $26.95 2 $53.90
The brains of the operation
Battery holder $1.50 2 $3.00
For 18650 Cells
Wheels $2.95 2 $5.90
Wheels for the robots
Ball casters $2.49 4 $9.96
Casters for the robots
Project Totals: 18 $498.66
Track 2 Base Budget: $500.00
Preferred Vendor Budget Bonus: $50.00
Remaining Budget: $51.34