Building a Kinect Based Robot for under $500.00

In honor pf the one year anniversary of the Microsoft Kinect (http://buildsmartrobots.ning.com/profiles/blogs/one-year-anniversar...) I decided to write an article on how to build a Kinect based robot.  This is actually the second iteration of Kinectbot (I am not a very creative robot namer), the first attempt was taller but not very stable.  

Kinectbot alpha at Chitag 2010

 

kinectbot beta being sniffed by JoJo

 

Kinectbot beta part List:

--------------------------------------------------------------

Netbook $199.00

Microsoft Kinect $149.00

iRobot Create with serial cable $129.00

Parallax USB to Serial adapter   $14.99

12volt switching power supply     $3.99

Crate from Target       $6.00

Assortment of Plastic tie Straps     $2.00

Total:          $503.98

 

To keep the family accountant (my wife) from realizing how much I spend on robots, I buy the parts stealthily, over time.  The Netbook I used was purchased in 2008, when you could still buy a netbook from BestBuy with Linux on it.  My Asus EEE 701 has a 630Mhz Intel Celeron-M processor (my Android phone has more horsepower) with 512Mb of RAM.  I use a 8GB SD card for program storage.  In a nut shell, it is a dog slow machine that runs Linux and Libfreenect just fine for this purpose. 

 

 http://en.wikipedia.org/wiki/Asus_Eee_PC

 

The iRobot Create was a birthday gift for 2 years in a row 2008,2009.  I use the create for all of my "big" robots.  The iRobot Create is amazing low-cost robot base.  Extremely easy to use and very versatile.  You do have to be careful about balancing your robot.  The Create has two drive wheels at the 90 and 270 degree positions (left and right sides), and two small roller wheels at the 0 and 180 degree positions (front and back).  This leaves no support at the 45, 135, 225, and 315 degree positions.  The robot tends to tilt into one of these positions if the balance is too high.  I have found you are safest if you keep your robot height to about the width of the Create.  The Create ships with a DB9 RS232 serial cable that is about as useful as a floppy disk now days.  You will need to either buy the USB cable for the create, or use a USB to RS232 adapter.  I do not recommend the rechargeable battery from iRobot.  It goes bad fast.  I use the green AA battery adapter that comes with the low-cost Create kit.  You will go through regular AA batteries fast (use rechargeable AA batteries instead).  This thing will eat 12 akaline AA batteries every four hours of lite use.

 

 

What's in the Box

  • iRobot Create Programmable Robot
  • Battery Case (holds 12 non-rechargeable alkaline batteries. Batteries not included)
  • Create Robot Serial Cable
  • Create Robot 4th Wheel
  • Create Robot Screws (8-pack)

 

http://store.irobot.com/product/index.jsp?productId=2586252&cp=...

 

The Microsoft Kinect was purchased the day it came out.  At that time it came with an external 12 volt wall wart and adapter.  My understanding is not all Kinects come with the power supply and adapter.  This is something you need to verify when purchasing your Kinect, make sure it has an adapter and wall wart power supply.  You will be cutting the wall wart off, but you will use the adapter. 

 

Because the Kinect sensor's motorized tilt mechanism requires more power than can be supplied via the Xbox 360's USB ports,[45] the device makes use of a proprietary connector combining USB communication with additional power. Redesigned Xbox 360 S models include a special AUX port for accommodating the connector,[46] while older models require a special power supply cable (included with the sensor[44]) that splits the connection into separate USB and power connections; power is supplied from the mains by way of an AC adapter.[45]  http://en.wikipedia.org/wiki/Kinect

 

The Kinect sucks about 1.1 Amps of current at 12 volts.  This is a lot of power for a battery operated robot.  A switching power supply is used to keep the voltage conversions as efficient as possible.  I used some low-cost adjustable regulators from Wright Hobbies.  They seem to work fine, I am a little concerned about how well they will work when the battery voltage drops as they are depleted.  

 

http://www.wrighthobbies.net/catalog/product_info.php?cPath=49&...


http://www.wrighthobbies.net/datasheets/PT-PC031.pdf

 

 

The crate was actually purchased from Walmart for about $6.00.  I bought it in the fall before all the kids went back to college.  Anything can be used for the body as long as it is lite.  You must also keep in mind the height should not be too much higher than the Create's diameter, about 14 inches.  My crate is probably too big at 18 inches, although it feels stable, only carpet testing will tell.

 

Assembling the Robot - or - Why Tie Straps are the new Duck Tape

 

Kinectbot (like most of my robots) is held together by duct tape plastic tie straps.  I use them for everything from structural elements, to wire ties (I think their original purpose).  I buy plastic tie straps in bulk because I use them for everything around the house too.

 

Pictured - a future EMGbot

 

Kinectbot assembly is relatively straight forward, as pictured below:

 

A much more advanced robot called JoJo.  He looks almost exactly like a real dog, except for the camera eyes.  if you look closely, you can see the tie straps.

 

Summary

 

Kinectbot is an easy to build robot based off the Kinect and the iRobot Create.  The only assembly skill required, is the ability to tighten a plastic tie strap.  There was a little soldering  and of-course, the software.

The software is based on the ROS branch of the Libfreenect driver.  Since I started this robot a year ago, I am still using the release from December 2010.  if you want to learn more about the available drivers and SDK's for the Kinect, check out my article here:

http://buildsmartrobots.ning.com/profiles/blogs/one-year-anniversar...

 

The software uses a simple algorithm I developed to look for the furthest point from the robot, that it can fit into.  It basically scans a window the relative size of the robot across the image to create a depth profile.  A max is then found and it's centered calculated.  The robot always tries to move to the furthest point in a room.

 

Another version of the software follows the closest object ( between 3 and 5 feet from the robot ) around.  A limitation in the Kinect requires that the robot not get too close to anything.  The Kinect cannot "see" objects closer than 19".  In fact, objects too close actually appear as if they are very far away.  In earlier versions of the code, this caused the robot to bounce into walls a lot.   this latest version solves that problem by avoiding any object less than three feet from the robot.  i am thinking of adding a ultrasonic sensor to fill this hole in the data from the Kinect.

 




Views: 9186

Tags: Create, Kinect, iRobot, roomba

Comment by eric gregori on November 7, 2011 at 1:13am

I just noticed that the title of this article is building a robot for under $500.00 and my total was $503.98.  So to get under $500.00, take the game that came with the Kinect, and sell it to Gamestop (you can't use it for the robot anyway).  You should be able to get $4.00 for it.  

If gamestop will not take it, then sell the power supply that came with the Kinect (the one you cut off) on Ebay.  A 2 AMP, 12 volt switching power supply has to be good for $4.00.

 

Comment by Paul Jurczak on November 7, 2011 at 1:24am
Eric, where did you get these perforated metal brackets, which screw directly to iRobot Create?
Comment by eric gregori on November 7, 2011 at 8:19am

I have had those rails on my Kinect for so long I forgot they did not come with it.

Vex Robotics -> 275-1145 $14.99 for 4

http://www.vexrobotics.com/products/accessories/structure/rails.html

 

 

Comment by David Contreni on November 17, 2011 at 8:42am

I'm seriously impressed by what you've accomplished.  I think you've taken the prize on a low-cost creanect bot.  One thing I wonder tho--Are you having balance issues?  the kinect and the display from your netbook SEEM to make it forward heavy.  Tho my guess is you may have compensated with battery placemen

As for your robots "myopia" I noticed that a lot of robots, such as the turtle and polyro have the Kinect placed to the rear--which helps compensate for it's near-field short comings.

One last thing--have you looked into ROS yet?  I know it seems complicated but the turtle package would be virtually plug-in compatible for you, and the tutorials make getting started literally step by baby step.

Great job!

Comment by eric gregori on November 17, 2011 at 11:43am

I have not had any balance issues.  You can see the robot run here:http://youtu.be/5mf6433nvko

I have built a lot of robots with the kinect, and I have had a lot of problems with balance/tipover.

The front of the crate is actually over the top of the front of the metal brackets.  The Kinect would actually be just forward of the Create wheel base.  The laptop center of mass is directly over the wheels.  

As a matter of fact, I am looking into ROS.  I was planning on doing a write-up on it this weekend.

 

thanx

 

Comment by Todd mccartha on July 10, 2012 at 8:01pm

Where do I get the software to program it what to do? Can it be use by 11grade high school students for who can use it for personal use like serving food around in their  house? Is it free?  Is it open source? what's the name of it? Does it have text to speech and dose it have voice recognition tools. I'm kinda new to this. I use arduino before  for my robot brains but I wanna more advance capabilities like mapping by vision. interacting by talking and listening. I'm sorry if I sound kinda dumb but I have a create robot just laying around and I wanna do something amazing with it this summer with my summer job. so please comment if you have answers. I will be happy. Thank you

Comment by David Contreni on July 10, 2012 at 10:36pm

Most of the netbook/Create/Kinect robots use ROS which is in fact free.  ROS is built up of a number of modules related to various hardware components, that communicate with each other, along with monitoring and support tools.  Most of the programming is done under Python running on Ubuntu.  The programming is not exactly trivial, but the tutorials are generally excellent.  Text to speech, voice recognition, mapping, visual tracking, arm kinematics. . .ROS has an example of pretty much any sort of serious robotic research.

Comment by Todd mccartha on July 11, 2012 at 6:22am

I'm having trouble finding and downloading ROS. I would greatly appreciate it If somebody gave me a link that leads strait to the downloading paged of this wonderful software (Note: I need the software that is meant for Irobot create robot, netbook and the kinect). 

Comment by David Contreni on July 11, 2012 at 8:18am

Here are some ROS links.

The main wiki site, same link as above.

http://www.ros.org/wiki/

Download page.

http://www.ros.org/wiki/ROS/Installation

Linux, especially Ubuntu is best supported.  If you're new to Linux, it won't be difficult to come up to speed in Ubuntu, and what you need to know about Linux is trivial compared to ROS.  But Windows users are starting to make progress in ROS.  I'm guessing you may be new to the concept of a "repository."

http://www.ros.org/wiki/ROS/Installation

Tutorials.  Most are step by step.  Also, you might try searching for specific hardware  such as "arduino."  There are quite a few tutorials not listed on the main tutorial page.

This is a good forum for beginners.

http://forums.trossenrobotics.com/forumdisplay.php?137-ROS-Robot-Op...

Another good robot software site.  Not related to ROS, and nowhere near as popular.  But it's been used in some interesting projects, and is somewhat easier to get started with.

http://myrobotlab.org/

And finally, there are a LOT of Irobot Create, Kinect, and netbook projects out there, such as Bilibot, PolyRo, and the Turtlebot.  Here's the ROS page for the Turtlebot

http://www.ros.org/wiki/Robots/TurtleBot

Good luck with your project.

Comment by Mohamed Yehia on March 27, 2013 at 4:11am

David,I recently bought the irobot ,and  as you said that the OEM rechargeable battery is too bad,I'm looking for an alternative good battery.

There is circuitry inside the green battery pack that prevents rechargeable batteries from being recharged through the create, and has a low-voltage sensor inside, so using any store-bought rechargeable batteries in this battery container is not possible.

Now I have two questions.

1- Is there any protective circuitry inside to be removed so that  allowing the use of my own 

AA rechargeable batteries inside it??

2- How can I connect an external lithium polymer battery to the irobot instead of the green pack?.

Comment

You need to be a member of buildsmartrobots to add comments!

EMGRobotics

© 2014   Created by eric gregori.

Badges  |  Report an Issue  |  Terms of Service