INTRODUCTION
Overview
Download and Install
Quick Start
Documentation
Publications

NONFRAMEWORK CODE
Driver Interfaces
Drivers
Libraries
Utilities

FRAMEWORK CODE
Interfaces
Components
Libraries
Utilities

Full Software Listings

DEVELOPER
Tutorials
Examples
Dev Guide
Dashboard

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         

Gps2Localise2d
[ComponentsStand-Alone ComponentsIceBox ServicesC++LinuxQNX]

Converts GPS information to Localise2d. More...

Converts GPS information to Localise2d.

Provides
  • orca_interface_home
  • orca_interface_localise2d [Gps2Localise2d.Provides.Localise2d]
  • orca_interface_status
Requires
  • orca_interface_gps [Gps2Localise2d.Requires.Gps]
gps2localise2d.png
Operation

Converts GPS data into Localise2d.

There are two problems here:

  1. You tend to get really big numbers that are hard to handle.
  2. We don't necessarily know where the global coordinate system is rooted, so we can't line up with it.

This is solved using the 'Offset' parameter, which specifies the coordinates of Gps2Localise2d's origin in the MapGrid coordinates. Gps2Localise2d will report all position estimates as an offset from that origin.

To get sane numbers, use the following procedure:

  1. set the Offset parameter to [0,0,0];
  2. hook gps2localise2d up to the real GPS unit; and
  3. copy the x-y values from the Localise2d object that gps2localise2d reports into the 'Offset' parameter, and restart gps2localise2d. gps2localise2d should now report Localise2d readings somewhere near the origin.

In more detail, gps2localise2d does the following to compute a pose:

  1. converts from lat/lon to a map-grid representation (currently assumes MGA);
  2. subtracts the Offset to produce a the pose of the GPS antenna in Gps2Localise2d's coordinate system;
  3. subtracts the antennaOffset to produce the vehicle pose.

It does this by: # - converting from lat/lon to a map-grid representation (currently assumes MGA), then # - subtracting the offset between the map-grid origin and the coordinate system (this offset must be configured manually), then # - subtracting the offset from the GPS antenna to the platform's centre (this is read from the GPS component).

The relationships between:

  • the MapGrid origin,
  • the antenna pose in MapGrid coordinate system,
  • the origin used by Gps2Localise2d (set by Offset), and
  • the Localise2d data reported by Gps2Localise2d are illustrated below:
                                   antenna
                             ------->0
                         |  / Loc2d  ^
                         | /        /
                 Offset  |/        /       
                     --->+-----   /           
                    /  Gps2L_CS  /
                |  /            /
                | /            /poseInMapGridCS
                |/            /
     MapGrid_CS +----        /
                 \          /
                  ----------
    
Configuration
  • Gps2Localise2d.Config.Driver (string)
    • valid values are { "simple" , "odometrybased" }
    • description as below
    • default: simple
  • Gps2Localise2d.Config.Offset (Frame2d) [m, deg]
    • Pose of Gps2Localise2d's origin in the MapGrid coordinate system.
    • See above for tips on setting this.
    • Format: x y z roll pitch yaw (space separated)
    • Default: 0.0 0.0 0.0
  • Gps2Localise2d.Config.MinNumSatellites (int)
    • Minimum number of satellites required to declare the GPS frame valid
    • Default: 4
  • Gps2Localise2d.Config.MaxTimeDifferenceSeconds (double) [s]
    • Maximum allowed time period between GPS frames to compute a valid speed estimate based on position differentials
    • Default: 2.5
  • Gps2Localise2d.Config.SpeedDifferenceFactor (double)
    • If abs(reportedSpeed-computedSpeed) > SpeedDifferenceFactor * reportedSpeed, frame is discarded
    • reportedSpeed is what we get from receiver, computedSpeed is computed based on position differentials
    • Default: 2.0

An example configuration file is installed into [ORCA-INSTALL-DIR]/share/orca/cfg/ directory.

Drivers

Simple

Reports a single Gaussian, with the mean being the reported GPS position, and the x-y uncertainties being those reported by the GPS unit. Assumes that heading information is unreliable, so reports heading s.d. of 2*pi.

OdometryBased

Just like "simple", but assumes that heading is calculated internal to the GPS unit by differentiating position. Heading is therefore most reliable when the platform is travelling fast and in a straight line. Odomtery information is used to make a better guesstimate at the heading uncertainty.

Requires:

  • orca_interface_odometry2d [Gps2Localise2d.Requires.Odometry2d]
Authors
Alex Brooks, Tobias Kaupp
 

Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)


Generated for Orca Robotics by  doxygen 1.4.5