Gps bot
burp16
Posts: 14
Hey I have been working quite hard on making a robot that navigates itself according to the gps signal provided.
Here is what I have:
Evil Genius Carrier Board for the Electronics
Ping Sensor with mounting bracket so it can look at 180 degrees
Basic Stamp 2
An RC Car as the chassis
Two continuous rotation servos as the front power wheels which will be used for the steering
Two non powered back wheels
9 volt battery to power the stamp and 6 volt battery to power the servos
GPS Module - Garmin Etrex Vista
Now I have permanently attached everything and I bought the interface cable for the gps to make it a d-sub connection. Now how do I implement the gps to communicate with the stamp, would i have to buy a female to female connector so i can connect it to the carrier board or do I only use some of the ports of the d-sub?
Also I have no idea how to code this, can someone please help me with this because I need help now. I want to be able to implement everything I discussed before and then manage the steering with the servos. Now how is this achieved.
Also will I be needing a compass module or can I use the one implemented in the GPS because it is included and if so how.
I dont want to dock this project as I have been working really hard on the base structure and now the coding and the other couple of problems discussed are proving to be very big obstacle, please can someone go step by step with me at how to implement the coding. Your help will be greatly appreciated Thank You. I will post pictures of the base soon and again thanks.
Here is what I have:
Evil Genius Carrier Board for the Electronics
Ping Sensor with mounting bracket so it can look at 180 degrees
Basic Stamp 2
An RC Car as the chassis
Two continuous rotation servos as the front power wheels which will be used for the steering
Two non powered back wheels
9 volt battery to power the stamp and 6 volt battery to power the servos
GPS Module - Garmin Etrex Vista
Now I have permanently attached everything and I bought the interface cable for the gps to make it a d-sub connection. Now how do I implement the gps to communicate with the stamp, would i have to buy a female to female connector so i can connect it to the carrier board or do I only use some of the ports of the d-sub?
Also I have no idea how to code this, can someone please help me with this because I need help now. I want to be able to implement everything I discussed before and then manage the steering with the servos. Now how is this achieved.
Also will I be needing a compass module or can I use the one implemented in the GPS because it is included and if so how.
I dont want to dock this project as I have been working really hard on the base structure and now the coding and the other couple of problems discussed are proving to be very big obstacle, please can someone go step by step with me at how to implement the coding. Your help will be greatly appreciated Thank You. I will post pictures of the base soon and again thanks.
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Stephen
Here is a compass.
Rich H
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The Simple Servo Tester, a kit from Gadget Gangster.
most often you read in the data string from the gps and parse out the data you need to work with. The programming is up to you, you can do it any way you want to get the results you need.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Stephen
http://www.savagecircuits.com/gpsnav
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chris Savage
Parallax Engineering
·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Tom Sisk
http://www.siskconsult.com
·
thats the code your talking about i presume, i wanted to do the same thing and i couldn't understand how to translate the code so i can use it with my servo based bot. Help would be great
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Stephen
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Stephen
It has the nmea in/out option in the interface selection
Post Edited (burp16) : 6/4/2010 2:01:07 AM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Stephen
I believe that parsing the NMEA strings on a BS2 will leave very little room for performing calculations, object detection, decision making and driving the robot. My experience with a GPS (the Parallax one with "Smart" mode) autopilot was that I ran out of room on the BS2, and I only drove one servo and had no object detection. Granted, that was a few years ago and I could probably code more efficiently now but still, I think pursuing the notion of making a GPS guided robot using the BS2 and raw GPS data will lead to frustration and disappointment.
Please don't hesitate to correct me on my assumptions regarding the above.
Rich H
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The Simple Servo Tester, a kit from Gadget Gangster.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Stephen
The code sent by Serg has the setup provided but it is using a different gps and an actual compass module purchased from Parallax, here is the link again http://www.servomagazine.com/media-files/866/GPS_Guided_Car.zip this is the april 2008 issue
Do I need an actual compass module or can I just use the one on the gps.
This code is perfect except for the fact that it uses dc motors and a physical steering mechanism to drive to each waypoint. So can anyone help me convert it to moving it with solely servos, using two servos and if moved in opposite directions would rotate, if moved in same direction would go straight or backwards etc. with the ping sensor for object detection. Thank You
Post Edited (burp16) : 6/4/2010 4:05:54 PM GMT
Rich H
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The Simple Servo Tester, a kit from Gadget Gangster.
This way you have a shorter path to a working robot that you can demonstrate and the things you learn along the way can be applied to adding more complexity.
Rich H
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
The Simple Servo Tester, a kit from Gadget Gangster.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
- Stephen
Yes but how would i go on to receiving information from the gps, would i connect it to my computer then do what, thats where im lost? Im also doing a similar project.
Once you learn how to connect to the computer, and learn the terms used in the connections, and voltage specifications, then you will probably be able to connect to a BS2 for a future project.
Jim
The Robotics with the Boe-Bot Text v2.2 has every thing you need to set up a rodot platform with a BS2 and continuous rotation servos. You can find the downloads at the bottom right of this page:
·http://www.parallax.com/Store/Robots/AllRobots/tabid/128/CategoryID/3/List/0/SortField/0/Level/a/ProductID/302/Default.aspx
You can download "Roaming with the PING))) v.1 (.zip)" on this page:
·http://www.parallax.com/StoreSearchResults/tabid/768/txtSearch/Ping/List/0/SortField/4/ProductID/92/Default.aspx
This should keep you busy for a few days.
Jim
- a cable that connects to the Garmin on one side and has a standard DB-9 connector on the other.
- to set up the Garmin's interface to NMEA In/Out (it sounds as though you've found that already)
- then you need a breadboard-able Serial Interface adapter, like one of these:
http://www.awce.com/rs1.htm
You connect 5V and GND from your BS2 board to the +5V and GND pins of the adapter, and you send the output from the "T"·(yes, I know that sounds backwards) pin of the adapter to one of the BS2 I/O pins.
- Then you set·up the program to read the serial data coming in from that pin at 4800 8N1, and to parse it to look for the particular data you need. This is where the BS2 will be very limited: you cannot read in entire NMEA strings and parse out the part that you need, as you won't have enough memory. You can, however, read a particular part of the data (say, the latitude) on one "pass", and then another part of the data (say, the longitude) on the next pass, one second later. You could do both of those variables on the same pass, but you cannot do the entire GPS string. This limitation may or may not cause you problems.
- In order to read the data, you need a SERIN statement, using "WAIT" to look for the $GPGGA string, and then SKIP to jump to the part of that string that you're trying to read. This will involve learning to use SERIN, and counting bytes in the string. This site
http://home.mira.net/~gnb/gps/nmea.html#gpwpl
is one where you can see what kind of information you'll receive from the Garmin. I have spent this morning working with a similar setup, cabling my eTrex Legend to a terminal program to learn to send strings to set waypoints in the Legend. If you can connect temporarily to a terminal program it'll help you to ensure that your setup is working, and that you understand what it sent by the Garmin.
==============================
If you have given up on the GPS idea (and I think you probably don't have anywhere near enough to time to learn what you need to for that), you should simply find the BoE-Bot text at the link that hover1 gave you, read that, and use it to set up the rest of your project. It tells you how to do what you need to do in far greater detail than you're going to get in three days of exchanges on the forum. You should know that you're extremely unlikely to get the kind of help you wanted from a forum, particularly in such a short time before your deadline. Forums are for specific questions on items you're stuck on after you've taken the time and made the effort on your own for the project overall. Asking someone to take you step by step through all of the coding for a complex project is simply not very realistic. I strongly suggest that you take hover1's good advice in the above post, and read those links carefully, and work through those texts. You got good advice here, but put yourself into a position such that you weren't able to take advantage of it.