Let's Make Robots!

Rad Robot 2.0 V2 (FPV based bot)

Striker121's picture
Multipurpose manually controlled platform with wireless video.
Cost to build: 
$140
Time to build: 
26 hours
Weight: 
2260 grams

--------------------------------MOST RECENT UPDATE-----------------------------------------------------------

As of 10/06/2011 I've successfully gotten the robot working and brought it to maker faire. Was an interesting time meeting some of the Maker's from the site and recieved a few interesting ideas from other people's projects. Unfortunately I ran into some issues with the robot itself at the faire; the huge amount of wireless activity essentially jammed the wireless and paralyzed it. It did work pretty perfectly however at home and initially before all the people began arriving so it's been functional.

Prior to the Faire I bought a PS2 adapter cable from Lynxmotion which has made interfacing with controller a thousand times easier than via my shoddily soldered ultra-thin wire interface. I also modified the code to handle wireless lag far more effectively by modifying how it handled the time between wireless signals, or to be more accurate I fixed the immensely stupid and jerky system I had previously.  :D

Following Maker Faire I drastically modified the chassis to be an open frame with a wooden (soon to be Lexan) sheet on top in order to give me far more room to build without having to worry about closing the thing up. In cutting the battery pack out of the frame I've also learned an important lesson, every DIY problem can be solved with a dremmel. I'll be posting updated pictures shortly and hopefully I'll be able to find some Lexan sheets and standoffs to make a multilevel platform for the hardware.

Beyond the Lexan, future plans mainly include switching to an Xbee for far more reliable wireless and using LiPo batteries instead of the current incredibly aged NiMH I'm using that came with the toy originally in 2000.

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

Now back to my normally scheduled parts rant (WITH PICTURES)!

 

The camera is a CX-161 bought from CCTVOhio.

The camera

The camera takes pretty nice video and is also incredibly cheap as far as quality CCD cameras go.

Next is the wireless video tx/rx pair from Sunsky. They're the 800mw units they sell and according to others they have 3 mile range with the stock antennas. I haven't had a large enough open area to test this, but the range IS long. Found HERE: http://www.sunsky-online.com/view/13087/1.2GHz+800mW+8+Channel+Digital+Wireless+AV+transmitter+%26+receiver.htm

On the left is the receiver, right is transmitter

The motors are driven by Sparkfun's TB6612FNG driver board, works great and takes only minimal effort to drive.

and finally we have the RF links, which are also from Sparkfun. 

http://www.sparkfun.com/commerce/product_info.php?products_id=8946 and 

http://www.sparkfun.com/commerce/product_info.php?products_id=8949.

Overall they work great together, have pretty nice range (Although VASTLY shorter than the video transmitter) and are dirt cheap. Using the Arduino Virtualwire library makes controlling them pretty easy as well. In the future I plan to get a pair for Xbee Pros in order to have control range as long as the video feed.

Oh, and I almost forgot the pan/tilt kit from Dagu that aims the camera. Found HERE on LMR. Overall it works nicely and it's cheap, although I had a LARGE amount of trouble putting it together as using the regular instructions (or maybe my own stupidity) resulted in ALOT of friction from the screw heads craping the metal. I added an extra washer though and it works pretty nicely, although the Y axis servo can't align perfectly, it tends to only get 1 or 2 steps away from the destination before being unable to move such small increment and the motor will get stuck attempting (and failing) to move that last step. Honestly I don't think its a big problem as long as it doesn't get worse. I also had to grind off some excess plastic from the servo collar/bracket as it was preventing it from screwing flat into the metal. The grinding fixed ALL problems in that case.

 

 

 

---------------------------------EVERYTHING BELOW THIS LINE IS OLD AND KEPT FOR REFERENCE-----------------------------------------EDITED August 1st, 2011:

As of a month ago I finally got EVERY individual part working and a number of them working together. Right before I left for the current 40 day vacation I'm currently on I was able to finish up the wireless coding and the motor driver code has been done for months now (It works too!). My only issue is that I've been finishing individual parts because the small boarduino I'm using in the finished project, a regular arduino is too large, isn't programmable over USB and since I moved to a modern gaming rig of a computer it lacks such antiquated things as serial ports :(   By the time I get back however I'll have myself a USB-Serial cable and will likely be finally completely totally finished in a day or two.

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

I'll throw up more pictures when I get the chance, but I'm already almost complete with the build. The first thing I had done was take the chassis from a Rad Robot toy and simply remove everything but the base, leaving a hollow cavity for anything I'd want to add, mounts on the top for my video transmitter and camera pan/tilt (from Dagu), and most IMPORTANTLY it leaves me with a fully working motor and drive system. I'll get more details up on parts and the programming soon as well as more pictures, and HOPEFULLY a video of the fully working thing tomorrow. Currently EVERY part works fine by itself, I just need to get them all interconnected properly, as well as finish the wireless packeting and the controller (Currently going with a PS2 controller.) After an excessive amount of troubleshooting I found out both that using a PS2 controller requires a pullup resistor on the data line, and that using Bill Porter's PS2 library for Arduino requires that the ORIGINAL pins must be used, changing the pins in the sketch made it not work at all for me. Anyway, as it stand I know have a working controller and just need to finish coding. Most of the code is done already so I should be finished today or tomorrow!

As of 9/22/10 I seem to only need to use a different servo library to get it working completely. Apparently the Virtualwire and the standard servo library conflict with eachother. So one more day likely and a bunch of tweaking (Like transmission rates, time between transmissions, and variables like how fast the POV mount moves.)

As of 10/6/10, after a huge number of AP class related tests, homework, and projects I am finally back to working on the robot as of last night. I fixed the servo issue by using the SOFTWARE servo library and I found another problem (now fixed) with the VirtualWire library. Turns out the VirtualWire library uses a Push To Talk button for radios that goes HIGH when you send data, something completely not used on my TX/RX pair. This PTT used Pin 13 which was also used as part of my PS2 controller wiring. I took out the code and it now works fine.

Right now I only really need to do/fix two three (Who am I kidding, I'm bound to find more) ∞+3 things.

  1. Finish soldering parts/wires onto the protoboard that holds the receiver and servo headers. I'm wiring everything in such a way that it should take the smallest number of wires on the Arduino as possible to control everything. I think this will be finish by tonight (10/6/10). FINISHED
  2. The FINAL thing to do is finish the part of the code that drivers the motors. I already have a previous bit of code that could move the robot forward, left, right, and in reverse so I just need to merge the two codes and fix any pin conflicts.
  3. The FINAL final thing I need to do is find another 9v barrel plug. I'm so used to only needing to power one Arduino for projects, or running one off USB and one off 9v that I never bothered getting another one. I'll probably just salvage the clip cap from an old RC controller and solder that to a barrel plug from some random wall cart laying around

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
ignoblegnome's picture

Hey, sorry to hear about your misfortunes at Maker Faire, but I'm glad you've kept this project going. One day I'll hack my own RAD 2.0, but for now I'll enjoy your work vicariously.

Dan M's picture

I am interested in the video cameras you are using. I am considering getting one or two for robot use. I need to figure out how to program for object recognition, though, since that would be my whole point in having video on the robot.  It probably needs to be a different robot project than the one I have been working on. It will probably need more processing power than a picaxe will handle.

Anyway, though, how is the picture? (resolution, etc.)  And they only have black & white left, no colour cameras. Do you have colour?

Striker121's picture

I don't know much about object recongnition, but depending on the method b/w might work just as well as color. My color camera however does have nice resolution and very clear detail and colors. I believe the resolution is around 480x400 or so. Certain far more expensive cameras would provide quite a lot more detail though. If you want information on other cameras I recommend looking through the FPV (First Person Video) section of this forum http://www.rcgroups.com/forums/index.php The reviews are all based around RC planes but they're generally pretty concise and informative and also most of the same issues apply (Besides weight perhaps). If you DO decide to get the camera I used, remember that they're not made anymore and as such can be a pain to find. That website was one of the only people with them in stock ANYWHERE.

Dan M's picture

Thanks, I will check it out.  Actually, that is probably high enough resolution. The higher the resolution, the more pixels, which would mean the more memory used up storing the pictures and the more processing speed and power needed to recognise objects.

 

As long as there are enough pixels to identify one object from another is all a robot needs.

 

UltraMagnus's picture

Nice to see someone else sees the potential of this toy, it really is very hackable.  The board on my V1 was easy to hack for the h-bridge motor drivers.

ignoblegnome's picture

Good to know. Whenever I get around to ripping him apart, I come back with some questions.

Striker121's picture

There were ALOT of basic parts on the control board in the brain. I'd REALLY recommend salvaging those. I used the Sparkfun motor driver simply for the ease of use.

Looks like it could be pretty fun to drive around! Stick some LEDs on it and you could go at night. About the SparkFun TX-RX pair, I got the 315Mhz version and at 450m LOS I was only missing 5-10% of packets. I verified the distance with Google Earth and my Garmin eTrex. I haven't compared it to the 433Mhz version because I haven't bought it but I think you might get more distance out of the 315Mhz because of less interference. Just my take on it.

Striker121's picture

Apparently the 434mhz one is said to get a bit more range, but the range your saying.....this should be epic. Especially as seeing that my robot should work fine with over 50% packet loss. (Or atleast it might, really need to work on the transmission timings.)

Huh, Ok. Guess I'm wrong :). Good to know that that though. Keep in mind that I used 1/2 wavelength antennas, not 1/4 like SparkFun suggests. With the 1/4 antennas I was only getting about 55m LOS.