Rad Robot 2.0 V2 (FPV based bot)

--------------------------------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

 

Multipurpose manually controlled platform with wireless video.

  • Control method: 434mhz RF links
  • CPU: Arduino Duemilanove
  • Operating system: N/A
  • Power source: 6v 800mah NiCD, 12v 1800mah Li-ion, 9 volt Alkaline
  • Programming language: Arduino C++
  • Target environment: indoor, Outdoors

This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/rad-robot-2-0-v2-fpv-based-bot

Parts

The camera is a CX-161 bought from CCTVOhio.

P1030161.jpg

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.

P1030159.jpg

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

P1030163.jpg

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 preventing it from screwing flat into the metal. The grinding fixed ALL problems in that cause.

How much did the camera +

How much did the camera + receiver + shipping set you back?

 

Liking that chassis, keep posting progress :slight_smile:

You should however edit your original post instead of posting a new comment, it will confuse people.

Is the tx/rx this

Is the tx/rx this one:

http://www.sunsky-online.com/view/13087/1.2GHz+800mW+8+Channel+Digital+Wireless+AV+transmitter+%26+receiver.htm

?

Yep, thats the one, works

Yep, thats the one, works great.

Ah, didn’t realize how the

Ah, didn’t realize how the system on LMR worked. I’ll go do that now :slight_smile: Also it was around $90 with shipping. The CX-161 is the cheapest CCD camera EVER made really, atleast that works well (At $20). Then the Sunsky system cost around $70 with the shipping. The links for both should be up now. I’d hurry if you want the camera though. They’re not made anymore so if they go out of stock, they’re gone permanently. In fact that was the ONE site I could find them on that had non-crazy pricing. (They also come really recommeded as THE cheap camera for anything remote controlled, although impossible to find now.

How is it connected ? you

How is it connected ? you just attacnehd a 12 V battery to it ?

And the camera ?

I’m not home currently so I

I’m not home currently so I can’t post pictures, but I’m using a 9.6v RC car battery connected to a regulator in order to output 12v. The camera is powered by the arduino at 5v, but it has two grounds. One is connect to the 5v arduino ground, and the other is connect to the 12v ground. It seems a bit strange to me, but it only works if BOTH are connected. Like I said I’m not home so I haven’t been working on it for a few days, but when I get back it should be running pretty soon, if I can just get the the PS2 controller working :frowning:

 

FINALLY!

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!

Keep it up! I have a RAD 2.0

Keep it up! I have a RAD 2.0 too, so I’ve been following your progress.

SparkFun TX-RX pair

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.

Nice to see someone else

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.

Good to know. Whenever I get

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

There were ALOT of basic

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.

Apparently the 434mhz one is

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

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.

Now THAT is really god to

Now THAT is really god to know. I’ll be sure to cut some 1/2 wave antennas then.

Pictures!

I’m afraid I’m cluttering up the comment section but I just had to post some pictures and I can’t seem to edit a comment once it’s been reply’d to.

A1.jpg

Made them by coiling some 26 AWG wire around a pencil.

 

A2.jpg

Poked the ends into the end of a hot glue gun, coating them in glue, to keep them from shorting out on something.

Thanks

Thanks again, that technique certainly will be usefull.

Hey, sorry to hear about

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.