How to make an autonomous basketball playing robot using an iRobot Create as a base

Picture of How to make an autonomous basketball playing robot using an iRobot Create as a base
This is my entry for the iRobot Create challenge. The hardest part of this whole process for me was deciding what the robot was going to do. I wanted to demonstrate the cool features of the Create, while also adding in some robo flair. All of my ideas seemed to either fall in the category of boring but useful, or cool and impractical. In the end cool and impractical won out and the basketball playing robot was born. After some thought I realized that could be practical. Suppose that you use orange paper, and that all of your trash cans have green backboards...

Step 1: Aquire parts

Because of the time limit of the contest, most of the parts I used were "off the shelf".

"Stock" Robot Parts Used:
Create (x1) -- from iRobot www.irobot.com
XBC V.3.0 (x1) -- from Botball www.botball.org
Create-Roomba cable (x1) -- from Botball www.botball.org
Servo (x2) -- from Botball www.botball.org
Sharp rangefinder (x1) -- from Botball www.botball.org
Assorted LEGO bricks -- from LEGO www.lego.com
6-32 machine screws (x4) -- from McMaster www.mcmaster.com

"Created" Robot Parts Used:
3/8" thick extruded PVC sheet -- this stuff is awesome, but I can't remember where I got it from, but it is just like this stuff http://www.lynxmotion.com/Category.aspx?CategoryID=62

Other parts:
Orange "POOF" ball -- from WalMart
Basketball goal looking trash can -- from Lowes
Green "backboard" -- extra PVC painted bright green
msuresh38 months ago
hey, ur model was really great, can u also make a robot that can play badminton please.....I'm dancing some problems with buying the correct parts for it
Timmers2 years ago
Have you seen this, pretty cool creation.

GBC? u mad but GJ =)
Zacattack6 years ago
hmmm this is awesome, great job, im definatly using the XBC for my next robot, either for a hexapod or an autonomous race car (using one of those hobby class rc cars)
Hawaii000007 years ago
How did you get the code for the camera?
Matthew Oelke (author)  Hawaii000007 years ago
The program I am using is called IC, which is basically C. IC has library functions to return information from the camera, like blob size, x axis, y axis, ect. IC supports 16 blobs across 3 channels so I can track up to 48 blobs at a time. Then you just take the values returned and make everything else happen.

If you are interested in IC check out Botball.org for more information.
Nice job! I really like the idea of using a GBA as a microcontroller, but 300 bucks for it is too much for my budget, maybe someone could make a Open Source version, like the Arduino...
golfball7 years ago
This is so cool! I want to build one but like everyone else i couldn't possably afford it, good work!
so it senses ledges..... I want to build one and put a orange ball on the edge of the grand canyon
Dantex7 years ago
where you bought the camera?
Matthew Oelke (author)  Dantex7 years ago
Thornburg7 years ago
Nice, the only thing that I would have done, is make it pick up your dirty clothes and put it in the wastebasket. It would be pretty hard determining what not to pick up, things that are to heavy could break the the arms. Still I thought this was a really great idea.
Matthew Oelke (author)  Thornburg7 years ago
gilby8 years ago
So this is a great start for a laundry sorting robot or a robot to clean up my house. It goes great with the rest of the roomba products!
This bot is autonomous? It scored 5 of 5 - better than what I would have scored!
Matthew Oelke (author)  cobracommander8 years ago
Yes, this robot is completely autonomous. It was loaded with code before hand and then ran the code all on it's own, i.e. no live controls were used.
zieak8 years ago
Now if only my socks were all orange balls...
gamer8 years ago
really cool, if it wasnt 900 bucks, id make one. whats the image displayed on the gameboy screen?
Matthew Oelke (author)  gamer8 years ago
Initially the image is the Gameboy logo as the GBA boots. Then it loads IC and has a main menu. When I run the robot I have it print the battery charge. The XBC is only $292. So if you have some LEGO bricks and/or a Create or a Roomba, It can be done for much less.
meowcat148 years ago
Wow, that's really cool! You have awesome commenting on your code. I want one of my own!
Matthew Oelke (author)  meowcat148 years ago
Thanks, I wanted it to be easy for other people to use and understand. Remember kids, always comment your code. :)
wow this looks cool, and so is your pic of Scott from ctrlaltdel
Matthew Oelke (author)  btop8 years ago
That is very cool, what is the total cost? +
Matthew Oelke (author)  BurningApple8 years ago
Let's see...

Create + battery+ doc = $260
XBC starter kit (xbc, cam, LEGO bricks, sensors) = $579
PVC + paint + screws = about $20
Total cost = $859

I already had the XBC starter kit from Botball, so the cost to me was the cost of the Create. I think I'll add this to the instrucable.