GPS Reader
The GPS Reader module provides a way to interface RoboRealm to most NMEA GPS devices that can be hooked up
to a PC using either a USB or serial connection. GPS devices provide a wealth of information including
latitude and longitude that can be used to localize where your robot is, it's heading and where it should
go. The GPS Reader module interprets the NMEA text from the GPS device to provide you with a visible
interface of the course your robot has taken and allows you to specify waypoints that can be used
to create a path. Utilizing the variables produced by this module you can then steer your robot
towards its desired path.
Interface
Instructions
1. Communication - select the appropriate COM port that your GPS is connection to. Note that
4800 baud is set as a default communication rate which most GPS devices will use.
2. Load Simulation File - if you do not currently have a GPS device available (or are located
indoors) then you can instead specify a file that contains recorded NMEA statements. Once
specified this file will be read in and acted on just as if the information was being
passed from a GPS device.
3. Map - the white area will display the points specified by the GPS device in
black. The current robot location is specified in blue with the waypoints in
orange and the planned route in green. If you uncheck the "Center on Robot" checkbox
you can move the map around using the mouse to investigate the route. You can also use
the zoom dropdown to move towards and away from the map. If you want to clear the map and
start from a blank page press the Reset button. If you want to use the map for your own purposes
you can use the Marker module to pull in the GPS_MAP image that is produced by this module and
kept in memory.
4. Information - The number of satellites and date received by the GPS is displayed in the information
section. Use this interface to determine how well your connection is to any satellites. Remember,
if you go indoors you will lose all connections.
5. Waypoints - The main purpose of using GPS is to be able to steer the robot along some
known path. Using the waypoints interface you can enter in a new Latitude and Longitude coordinate
such as 5408.0079 and 01345.6965 and add that as a waypoint. Note that the first 2 and 3 digits
are the location degrees with the remainder being seconds. This is the format produced by most
NMEA GPS devices. Once this waypoint is added into the list you will see it displayed in the map
and additional variables will become active. The two most important variables are the GPS_ROBOT_HEADING
which gives you your current heading and GPS_WAYPOINT_HEADING which is the heading you should be on in
order to meet with the waypoint. Using these two variables you can decide on how to move the robot
to get to the waypoint. Once the waypoint is reached the module will automatically switch to the next.
You can also specify a variable that will contain the list of waypoints. Please note that this variable
needs to be created from VB or Python using the SetArrayVariable function in order for the waypoints
to be accessed correctly.
Note that the Waypoint Removal Distance is in minutes.
Resetting the waypoints resets the waypoints that have been visited back to zero and repeats the process.
You can chose to loop again and again through waypoints (auto reset) or specify a variable that when
non-zero will activate all the waypoints again.
6. Robot Color - the color marker used to identify the robot (circle with an arrow)
7. Route Color - the route between waypoints
8. Waypoints color - the color of the square that identifies the targeted waypoints
9. Visited color - the color of the waypoints that have already been visited
Variables
GPS_LATITUDE - the current GPS latitude value in degrees
GPS_LONGITUDE - the current GPS longitude value in degrees
GPS_DISTANCE - the total distance in meters that the robot has traveled
GPS_ALTITUDE - the current height of the robot (note this
is typically very inaccurate)
GPS_ROBOT_HEADING - the current orientation of the robot, i.e. direction
it is moving
GPS_WAYPOINT_HEADING - the orientation of the waypoint relative to the robot
GPS_WAYPOINT_DISTANCE - the distance in meters till the next waypoint
GPS_NUMBER_SATELLITES - the number of satellites currently being used by
the GPS device
GPS_DATE_TIME - the date time stamp as reported by the GPS satellites
If you need a sample GPS NMEA file to run via the simulation you can download this file, save
it to a known location and then specify that location in the File Simulation in the GUI
dialog. This file is the raw NMEA recorded from a GPS device while walking around the block from
Club Workshop in Denver, Colorado.
See Also
Path Planning
For more information
Wikipedia - Global Positioning System
GPS - NMEA sentence information
NMEA Data
| GPS_Reader Related Forum Posts | Last post | Posts | Views |
speed data
Hi STeven,
The NMEA protocal also provides speed data. I dont see this in the GPS reader module. Is... |
7 days |
1 |
32 |
Gps heading replacing with compass?
I have a usb navilock gps receiver connected to roborealm. As far as i know the gps reader is fully equiped to make my bot drive... |
0 months |
5 |
855 |
Using the new GPS module
I'm planning an autonomous boat project and am considering using RoboRealm for the guidance system using the new GPS Reader mod... |
0 months |
8 |
1334 |
avruart
hello,
i am new to microcontroller.
i am working on a project i want to receive serial data from gps... |
2 years |
2 |
655 |
Awesome new modules!
Hey STeven et. al.,
I just wanted to thank you for the three latest new modules. Not onl... |
2 years |
4 |
859 |
|