Home » Community » Forums » GDNet Lounge » Autonomous RC Car Hack (Day ...)
  Intel sponsors gamedev.net search:   
[Control Panel] [Register] [Bookmarks] [Who's Online] [Active Topics] [Stats] [FAQ] [Search]

Add Forum to Favorites |  Send Topic To a Friend | View Forum FAQ | Track this topic

Page:   1 2 »»

 Last Thread Next Thread 
 Autonomous RC Car Hack (Day ...)
Post New Topic  Post Reply 
I was shopping at Wal-Mart and I saw this RC car and of course like any normal human being I thought how I could put a computer on it. I knew I had a Basic stamp 2 just sitting around at work attached to a GPS receiver. So I picked it up for $50 bucks.

I plan on using my sister's Compaq because it has a serial port. Until eventually I can get a stripped down laptop and permanently mount it to the chassis. Also later tonight my buddy will drop of a webcam which I plan to use for vision.

The chassis appears to be driven forward and backward by a DPDT relay. While the steering is controlled by what looks like a stepper motor (identified only by the 2 common, and 4 control ribbon cable coming out of it).

That bummed me out and I thought of hard wiring the RC Remote to the receiver and controlling the input switches with relay. Then I noticed that the receiver chip appeared to be this tiny vertical board soldered onto the control board. With convenient pin out labels as you'll see in red.

The new plan is to whack this RF board off and control the chassis with two DPDT relays as originally anticipated.


The goods:
Photobucket - Video and Image Hosting

Photobucket - Video and Image Hosting

Basic Stamp 2, Garmin GPS receiver, 7.2 volt battery:
Photobucket - Video and Image Hosting

Some electronic stuff I brought home from work:
Photobucket - Video and Image Hosting

The chassis:
Photobucket - Video and Image Hosting

Closeup of RF board connecting to control board:
Photobucket - Video and Image Hosting

Mock up:
Photobucket - Video and Image Hosting

[Edited by - honayboyz on January 9, 2007 1:58:06 AM]

 User Rating: 1291   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Tell me, have you ever actually FINISHED a project? Or are you like me, and basically have your work spaced covered in nearly finished projects?

Sounds like fun, and at least your projects are impressive.

 User Rating: 1339   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

How are you planning to get around the resolution limit of civilian GPS?

ravuya: [Website][Not Your Journal]

 User Rating: 1950   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

Quote:
Original post by Talroth
Tell me, have you ever actually FINISHED a project? Or are you like me, and basically have your work spaced covered in nearly finished projects?


Can't say that I have.. though there have been so many. Yes, who isn't like you? And is any project really every finished? I have many projects that are so close to finished that I tell people they're finished, yet every week I delegate time to making improvements to that particular project.

Quote:
Original post by Ravuya
How are you planning to get around the resolution limit of civilian GPS?


Simple answer, vision. Complex answer, experimentally determine the best solution including dead reckoning, vision, and GPS. The GPS will mostly likely be used as a wake-up awareness convenience to answer the questions "where am I?" and "what time/date is it?"

 User Rating: 1291   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by Ravuya
How are you planning to get around the resolution limit of civilian GPS?


is that restriction still up? I thought it had been removed again.



"aut viam inveniam aut faciam"---[My Site]---[Some Research and Development]---[3H-GDC]---[An Art Gallery]

 User Rating: 1567   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

bah, I went to rate you up for all the cool projects you do, but sadly I've already done so.

Are you going to build some sort of protective cage around your sister's laptop? Also, how did you convince your sister to let you use it? Mine has never let me use something of hers in robotics.

 User Rating: 1339   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by Talroth
Are you going to build some sort of protective cage around your sister's laptop? Also, how did you convince your sister to let you use it? Mine has never let me use something of hers in robotics.


The cage: Probably not, Hopefully I will have a dedicated machine for it before it gets permanent. I'm looking for a 20 dollar Win98 machine with a busted screen. Until then, it will probably get carried behind the machine or strapped with a sturdy bungee cord haha.

The convo:

Me: I'm taking your laptop and putting it on my robot.
Her: NO!
Me: It's ok I'm just going to plug stuff into it and program on it..
Her: Well is it going to put a bunch of junk on it?
Me: Trust me, It will be in better condition when you get it back then when I got it..

(I can't say that much about its physical condition but at least it will be functional inside. [she’s one of those limewire types..]).


 User Rating: 1291   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by Ravuya
How are you planning to get around the resolution limit of civilian GPS?


Can you explain this to me?

On topic: Cool project. I wish I knew something (anything) about engineering to do something like this. If you finish it let us know.

 User Rating: 1351   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Update:

I desoldered (ok I really just broke it off) the RF unit and soldered on a some leads. I powered up the chassis and touched the leads together to confirm that I could indeed operate it with 4 digital signals.

I also got a nice 4 digital channel 27mhz receiver and transmitter out of it. I'll probably re-use this as a remote control for the device (but not in the directional sense).

Needed information:

I want this thing to be driven primarily by vision which is rather new to me. The only image processing program I ever made was about 5 years ago. It loaded an avi into a picturebox (vb6) and let the user select a pixel to identity a color range. Then for future frames it searched an area around the last found match looking for a pixel closest to the reference color.

It was a far shot from what I am trying to acheive here but like I said it was 5 years ago. I'm going to have to process an image and identify the ground plane. I figure it would start with a lower resolution de-sampling, then an edge detection. Then I would some how have to identify the lines that would converge in the horizon and use these as my boundaries. Any suggestions?

SticksandStones:
From what I know, the military is the only ones who are provided with the full capabilites (resolution/precision) of GPS. Whether its due to some consipiracy or the fact that their equiptment is a $1,000,000.00, I don't know.

What I do know is that I was standing in the parking lot with the GPS setup till it got a fix, plugged it into the computer got the LAT and LON dump, plugged it into TerraServer and got an image centered right in the parking lot.

In other words the GPS is probably not much use navigating the inside of your home. But anywhere in the front and back yard is fair game.

Also, you don't need to know anything about engineering to do this stuff. Engineering is planning and reporting and all the bullshit that slows you down (and saves you money) when you start a project. You just need to aquire something, strip it down, and mess with it.


Pictures:
Leads soldered on:
Photobucket - Video and Image Hosting

27mhz receiver:
Photobucket - Video and Image Hosting

Photobucket - Video and Image Hosting

 User Rating: 1291   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Use two GPS receivers. One in a fixed location and the other on the mobile device. You can find the relative position between two receivers much more accurately than the absolute position of one within the world.

 User Rating: 1268   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by LilBudyWizer
Use two GPS receivers. One in a fixed location and the other on the mobile device. You can find the relative position between two receivers much more accurately than the absolute position of one within the world.


If you are going to use a fixed base somewhere that can communicate with the unit, why not just use it as a base point, and triangulate the position of the unit from that? Should be easier to get a fix, I also don't see how taking two units of imprecise data can net you a better single data point.

 User Rating: 1339   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by SticksandStones
Quote:
Original post by Ravuya
How are you planning to get around the resolution limit of civilian GPS?


Can you explain this to me?
In the United States, civilian GPS units are accurate to 10-15 meters. The military GPS units are accurate to sub-meter resolution in many cases.

I don't know if this restriction has been lifted; I'm waiting for the Galileo project to gain traction before purchasing a civilian GPS device.

ravuya: [Website][Not Your Journal]

 User Rating: 1950   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

Quote:
Original post by Ravuya
Quote:
Original post by SticksandStones
Quote:
Original post by Ravuya
How are you planning to get around the resolution limit of civilian GPS?


Can you explain this to me?
In the United States, civilian GPS units are accurate to 10-15 meters. The military GPS units are accurate to sub-meter resolution in many cases.

I don't know if this restriction has been lifted; I'm waiting for the Galileo project to gain traction before purchasing a civilian GPS device.


The Confederation bridge was built with GPS assisted cranes, with placement down to a fraction of an inch, (I think fraction of a millimeter even) back in 94. I think civilian handhelds aren't perfect simply for cost reasons more than military. Also I don't think there is much demand for per millimeter GPS outside of the military and engineering. If I'm out backpacking, getting inside of 50m is more than enough really. From there you should be able to find anything big enough to get marked on a map.

 User Rating: 1339   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by Talroth
The Confederation bridge was built with GPS assisted cranes, with placement down to a fraction of an inch, (I think fraction of a millimeter even) back in 94. I think civilian handhelds aren't perfect simply for cost reasons more than military. Also I don't think there is much demand for per millimeter GPS outside of the military and engineering. If I'm out backpacking, getting inside of 50m is more than enough really. From there you should be able to find anything big enough to get marked on a map.


No, for a while there was definitely an error level introduced in civilian GPS units to specifically make their accuracy lower than possible. It was called Selective Availability, and it's been disabled since 2000.



"aut viam inveniam aut faciam"---[My Site]---[Some Research and Development]---[3H-GDC]---[An Art Gallery]

 User Rating: 1567   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

Quote:
Original post by Talroth
Quote:
Original post by LilBudyWizer
Use two GPS receivers. One in a fixed location and the other on the mobile device. You can find the relative position between two receivers much more accurately than the absolute position of one within the world.


If you are going to use a fixed base somewhere that can communicate with the unit, why not just use it as a base point, and triangulate the position of the unit from that? Should be easier to get a fix, I also don't see how taking two units of imprecise data can net you a better single data point.


He's assuming the receivers are precise yet not accurate. They both tell you the wrong answer, but they're off by the same amount. It would allow you to determine the error in the fix but you'd have to know the true position of the reference receiver. It dosn't seem cost effective to have a dedicated "error interpreter" receiver. I don't think it's worth it.

I got the relays hooked up between the microprocessor and the chassis. One thing I'm growing concerned about is the speed of this thing. This thing is FAST!! If it is tracking a person in a room, and it needs to reorient it is going to be a rather surprising maneuver.

 User Rating: 1291   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Even when Selective Availability was enabled, civilian GPS receivers were still precise and off by the same vector.



"aut viam inveniam aut faciam"---[My Site]---[Some Research and Development]---[3H-GDC]---[An Art Gallery]

 User Rating: 1567   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

Quote:
Original post by Ravuya
Quote:
Original post by SticksandStones
Quote:
Original post by Ravuya
How are you planning to get around the resolution limit of civilian GPS?


Can you explain this to me?
In the United States, civilian GPS units are accurate to 10-15 meters. The military GPS units are accurate to sub-meter resolution in many cases.

I don't know if this restriction has been lifted; I'm waiting for the Galileo project to gain traction before purchasing a civilian GPS device.


With free public WAAS corrections, you can get down to 3 meter accuracy >95% of the time most places in north america. Most newer quality GPS recievers have a waas channel.

If you need more accuracy, or worldwide coverage, a commercial service like omnistar or navcom can give you accuracy down to 10-15 cm in real time, for only several thousand dollars for a receiver plus an annual subscription.

It is possible to get accuracy down to millimeters, but usually that's using survey-grade equipment costing mucho dinero, and doesn't give you real time results - usually you need to record the signals and do postprocessing, as well as having multiple receivers set up in a differential GPS setup like someone described above.

 User Rating: 1419   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by honayboyz
Quote:
Original post by Talroth
Quote:
Original post by LilBudyWizer
Use two GPS receivers. One in a fixed location and the other on the mobile device. You can find the relative position between two receivers much more accurately than the absolute position of one within the world.


If you are going to use a fixed base somewhere that can communicate with the unit, why not just use it as a base point, and triangulate the position of the unit from that? Should be easier to get a fix, I also don't see how taking two units of imprecise data can net you a better single data point.


He's assuming the receivers are precise yet not accurate. They both tell you the wrong answer, but they're off by the same amount. It would allow you to determine the error in the fix but you'd have to know the true position of the reference receiver. It dosn't seem cost effective to have a dedicated "error interpreter" receiver. I don't think it's worth it.

I got the relays hooked up between the microprocessor and the chassis. One thing I'm growing concerned about is the speed of this thing. This thing is FAST!! If it is tracking a person in a room, and it needs to reorient it is going to be a rather surprising maneuver.


No, it wouldn't allow you to fix a position. You would not know your absolute position within the world any better with two receivers. Rather you just know where one receiver is relative to the other far better than you know the absolute position of either receiver. If you know where the fence or storage shed in your backyard is relative to the fixed receiver then you can tell pretty accurately if the mobile one is getting close to either. That's how they build bridges using GPS. What WAAS does is gather the information needed for correction off the internet, calculates a correction factor and broadcasts it.

 User Rating: 1268   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Update:

In the past three days I've worked on the robot once..

In my previous post I mentioned how the RC car was way too fast. Well to work around this I decided to modify the 6 cell battery into a multi-voltage power supply by taking positive leads in between certain cells.

GND --{  }-- 1.33v --{   }-- 2.66v --{   }-- 4v... etc.


I control the drive of the robot with 5 relays, 2 for reverse and 3 for the 3 different speeds. (2.66v, 5.33v, 8v) I drive the relays with 4 diode protected transistor driver circuits so the most I ever blow up is a 15cent transistor. The relays are SPDT automotive relays.

Note: If you ever attempt to modify a multiple cell RC car battery *MAKE SURE* you drain alllll the power first. When I unwrapped it, and the cells touched each other they nearly welded themselves together. It stunk real bad and the power output of the battery dropped significantly.

Vision: I have read these two papers Monocular Vision, and Color Image Segmentation, and I think I have a pretty good understanding of what needs to take place.

1.) Convert image into YUV space for more intuitive color comparison.
2.) Interpret every pixel and categorize by color.
3.) Project scan lines from the reference point (bottom center of image)
4.) Determine objects along scan line.
5.) Detect intersection of object with ground plane by finding the closest point to the reference point.
6.) Plot these objects in some map for avoidance

The GPS will be used to look up old maps to "remember" objects.

Learning: The robot will have to be taught what colors it should avoid. I plan on implementing this with a blue tooth headset and Microsoft’s Speech SDK.

The robot will enter a new environment and scan the colors. Using a histogram it will determine what objects it believes are the ground and immovable (large) objects. It will then confirm its suspicions via voice.

Robot: Am I correct in assuming the ground is an dark grey color?
Me: Yes

Robot: What is the large white object?
Me: That is the wall.
Robot: Should I avoid it?
Me: Yes (the answer "wall" could generate this response automatically)

Robot: What is the small black object?
Me: that is my shoe
Robot: should I avoid it?
Me: no, follow it


Some pictures:

Motor drive relays:
Photobucket - Video and Image Hosting

Relay drive circuits:
Photobucket - Video and Image Hosting

schematic: (dont remember where I printed the drive schematic, sorry)
Photobucket - Video and Image Hosting

The hand drawn schematic on the left will not work.. should be scribbled out :). The one on the right has a flaw, above the two reverse relays the inputs should be reversed on one of them (to create the flip flop reversing effect). They are in the real thing, the image just dosn't correspond (also one relay is not purchased yet).

[Edited by - honayboyz on December 27, 2006 3:14:25 PM]

 User Rating: 1291   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Sounds like a cool project. As far as vision stuff goes, a lot of people have done similar stuff (although less complex) with Sony AIBO's to make them play soccer against each other. I don't have any links at the moment, but it may be worth tracking down some of those papers as well.

You may also be interested in looking at papers that talk about difference of Gaussians and salience as interest point selectors, which are often used in object detection.



__________________________________________
Bananas: Nature's Go-gurt.
[Radical Racers] [The Hopeless Chaos Vault]

 User Rating: 1444   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

To get things going, it would be easier to start with sonic obstacle detection instead of using a webcam and trying to process the image data. If you're got some money to spend you might have some fun using the sensors that come with the lego mindstorm set for gathering the information you need.

 User Rating: 1598   |  Rate This User  Send Private MessageView ProfileView Journal Report this Post to a Moderator | Link

Have you thought about using the Open Computer Vision Library?
Intel has their fingers in it - looks promising.

http://www.intel.com/technology/computing/opencv/

Looks neato - good luck with it :-)

-M

 User Rating: 1188   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

it's gonna talk to you?! Sweet. Too bad it's not a black trans am!



 User Rating: 1030   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by Funkymunky
it's gonna talk to you?!


Quote:
Original post by "The Demented Cartoon Movie"
"THIS IS YOUR ONBOARD COMPUTER SYSTEM. YOU ARE ABOUT TO CRASH. WHAT DO YOU WANT TO DO?"
"Uh... muhh... I can't decide!"
"STEERING PREVENTS ACCIDENT."
"Well, yeah, but uh-"
"DO YOU WANT TO CRASH?"
"Well, not really!"
"THEN MAYBE YOU SHOULD STEER!"
"But I'm BAD at that!"
"DO YOU WANT TO CRASH?"
"Well, not really, it's just that-"

*BOOM*


 User Rating: 1423   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Forget GPS and all that junk...Your robot will learn by itself how to navigat in certain environment because you will program it to do so with a neural network.

Unless you don't want to...which is cool too!

 User Rating: 1242   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link
Page:   1 2 »»
All times are ET (US)

Post Reply
 Last Thread Next Thread 
Forum Rules:
You may not post new threads
You may not post replies
You may not edit your posts
You may not use HTML in your posts
Jump To:
Administrative Options: