Defines | Functions File Reference

vehicle position and velocity monitoring More...

#include <ros/ros.h>
#include <angles/angles.h>
#include <nav_msgs/Odometry.h>
#include <sensor_msgs/Imu.h>
#include <geometry_msgs/PoseStamped.h>
#include <art_msgs/GpsInfo.h>
#include <tf/transform_broadcaster.h>
#include <art_msgs/Shifter.h>
#include <art/frames.h>
#include <art/UTM.h>
#include "applanix.h"
#include "position.h"
Include dependency graph for

Go to the source code of this file.


#define NODE   "applanix"


void displayHelp ()
bool getNewData (applanix_data_t *adata)
bool getOdom (Position::Position3D *odom_pos3d, ros::Time *odom_time, ros::Publisher *gps_pub)
int getParameters (int argc, char *argv[])
void getShifter (const art_msgs::Shifter::ConstPtr &shifterIn)
bool GlobalToLocal (Position::Pose3D *current)
int main (int argc, char **argv)
void publishGPS (const applanix_data_t &adata, double utm_e, double utm_n, const char *zone, ros::Publisher *gps_pub)
void putPose (const Position::Position3D *odom_pos3d, const ros::Time *odom_time, tf::TransformBroadcaster *odom_broad, ros::Publisher *odom_pub, ros::Publisher *imu_pub)

Detailed Description

vehicle position and velocity monitoring

ROS odometry driver for the Applanix Position and Orientation System for Land Vehicles (POS-LV).

The odometry driver publishes its best estimate of the vehicle's location, velocity and yaw rate. It collects data from the Applanix Position and Orientation System for Land Vehicles (POS-LV) which provides differential GPS and accurate inertial navigation.

Jack O'Quin, Patrick Beeson

Definition in file

Define Documentation

#define NODE   "applanix"

Definition at line 59 of file

Function Documentation

void displayHelp ( )

Definition at line 370 of file

Get new Applanix data.

true if new data available.

Updates *adata if possible.

Definition at line 143 of file

bool getOdom ( Position::Position3D odom_pos3d,
ros::Time odom_time,
ros::Publisher gps_pub 

Get any new odometry data available

Updates odometry information, which will be published if valid packets available and this is not the first call.

Publishes GPS information, if new data received.

odom_pos3d-> updated position, if new data
odom_time-> updated time when new data received
gps_pub-> GpsInfo ROS topic publisher
true if odometry should be published

Definition at line 231 of file

int getParameters ( int  argc,
char *  argv[] 

get command line and ROS parameters

0 if successful

Definition at line 392 of file

void getShifter ( const art_msgs::Shifter::ConstPtr shifterIn)

subscriber callback for current shifter position data

Definition at line 291 of file

Global to local coordinate transform.

Translate current pose from UTM meters (northing, easting) to local coordinates by subtracting initial pose.

returns: true if initial pose, false otherwise

Definition at line 86 of file

int main ( int  argc,
char **  argv 

main program

Definition at line 441 of file

void publishGPS ( const applanix_data_t adata,
double  utm_e,
double  utm_n,
const char *  zone,
ros::Publisher gps_pub 

Publish GpsInfo message.

unpack Applanix grp2 and grp3 data to complete other fields

Definition at line 187 of file

void putPose ( const Position::Position3D odom_pos3d,
const ros::Time odom_time,
tf::TransformBroadcaster odom_broad,
ros::Publisher odom_pub,
ros::Publisher imu_pub 

Publish the current 3D Pose and accelerations

figure covariances of Pose and Twist
figure covariances of IMU data

Definition at line 300 of file

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Author(s): Jack O'Quin, Patrick Beeson, Alberto Alonso
autogenerated on Tue Sep 24 2013 10:42:52