Public Member Functions | Private Member Functions | Private Attributes
novatel_gps_driver::NovatelGpsNodelet Class Reference
Inheritance diagram for novatel_gps_driver::NovatelGpsNodelet:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 NovatelGpsNodelet ()
void onInit ()
void Spin ()
void SyncCallback (const std_msgs::TimeConstPtr &sync)
 ~NovatelGpsNodelet ()

Private Member Functions

void CalculateTimeSync ()
void CheckDeviceForData ()
 Reads data from the device and publishes any parsed messages.
sensor_msgs::NavSatFixPtr ConvertGpsFixToNavSatFix (const gps_common::GPSFixPtr &msg)
void DataDiagnostic (diagnostic_updater::DiagnosticStatusWrapper &status)
void DeviceDiagnostic (diagnostic_updater::DiagnosticStatusWrapper &status)
void FixDiagnostic (diagnostic_updater::DiagnosticStatusWrapper &status)
void GpsDiagnostic (diagnostic_updater::DiagnosticStatusWrapper &status)
void RateDiagnostic (diagnostic_updater::DiagnosticStatusWrapper &status)
bool resetService (novatel_gps_msgs::NovatelFRESET::Request &req, novatel_gps_msgs::NovatelFRESET::Response &res)
 Service request to reset the gps through FRESET.
void SyncDiagnostic (diagnostic_updater::DiagnosticStatusWrapper &status)

Private Attributes

NovatelGps::ConnectionType connection_
std::string connection_type_
 The connection type, ("serial", "tcp", or "udp")
std::string device_
 The device identifier e.g. /dev/ttyUSB0.
int32_t device_errors_
int32_t device_interrupts_
int32_t device_timeouts_
diagnostic_updater::Updater diagnostic_updater_
std::string error_msg_
double expected_rate_
ros::Publisher fix_pub_
std::string frame_id_
ros::Publisher gpgga_pub_
ros::Publisher gpgsa_pub_
ros::Publisher gpgsv_pub_
ros::Publisher gprmc_pub_
NovatelGps gps_
int32_t gps_insufficient_data_warnings_
int32_t gps_parse_failures_
ros::Publisher gps_pub_
std::string hw_id_
std::string imu_frame_id_
ros::Publisher imu_pub_
double imu_rate_
 The rate at which IMU measurements will be published, in Hz.
double imu_sample_rate_
 How frequently the device samples the IMU, in Hz.
ros::Publisher inscov_pub_
ros::Publisher inspva_pub_
ros::Publisher insstdev_pub_
novatel_gps_msgs::NovatelPositionPtr last_novatel_position_
ros::Time last_published_
ros::Time last_sync_
int32_t measurement_count_
boost::circular_buffer< ros::Timemsg_times_
 Buffer of gps message time stamps.
boost::mutex mutex_
ros::Publisher novatel_imu_pub_
ros::Publisher novatel_position_pub_
ros::Publisher novatel_velocity_pub_
stats::accumulator_set< float,
stats::stats< stats::tag::max,
stats::tag::min,
stats::tag::mean,
stats::tag::variance > > 
offset_stats_
 Stats on time offset.
double polling_period_
bool publish_diagnostics_
bool publish_gpgsa_
bool publish_gpgsv_
bool publish_imu_messages_
bool publish_nmea_messages_
bool publish_novatel_positions_
bool publish_novatel_velocity_
bool publish_range_messages_
int32_t publish_rate_warnings_
bool publish_sync_diagnostic_
bool publish_time_messages_
bool publish_trackstat_
ros::Publisher range_pub_
double reconnect_delay_s_
ros::ServiceServer reset_service_
stats::accumulator_set< float,
stats::stats
< stats::tag::rolling_mean > > 
rolling_offset_
 Rolling mean of time offset.
swri::Subscriber sync_sub_
 Subscriber to listen for sync times from a DIO.
boost::circular_buffer< ros::Timesync_times_
 Buffer of sync message time stamps.
boost::thread thread_
ros::Publisher time_pub_
ros::Publisher trackstat_pub_
bool use_binary_messages_

Detailed Description

Definition at line 161 of file novatel_gps_nodelet.cpp.


Constructor & Destructor Documentation

Definition at line 164 of file novatel_gps_nodelet.cpp.

Definition at line 200 of file novatel_gps_nodelet.cpp.


Member Function Documentation

Updates the time sync offsets by matching up timesync messages to gps messages and calculating the time offset between them.

Index of last synced timesync msg

Index of last synced gps msg

Definition at line 893 of file novatel_gps_nodelet.cpp.

Reads data from the device and publishes any parsed messages.

Note that when reading from the device, this will block until data is available.

Definition at line 578 of file novatel_gps_nodelet.cpp.

sensor_msgs::NavSatFixPtr novatel_gps_driver::NovatelGpsNodelet::ConvertGpsFixToNavSatFix ( const gps_common::GPSFixPtr &  msg) [inline, private]

Definition at line 835 of file novatel_gps_nodelet.cpp.

Definition at line 1068 of file novatel_gps_nodelet.cpp.

Definition at line 1020 of file novatel_gps_nodelet.cpp.

Definition at line 935 of file novatel_gps_nodelet.cpp.

Definition at line 1050 of file novatel_gps_nodelet.cpp.

Init method reads parameters and sets up publishers and subscribers. It does not connect to the device.

Implements nodelet::Nodelet.

Definition at line 209 of file novatel_gps_nodelet.cpp.

Definition at line 1093 of file novatel_gps_nodelet.cpp.

bool novatel_gps_driver::NovatelGpsNodelet::resetService ( novatel_gps_msgs::NovatelFRESET::Request &  req,
novatel_gps_msgs::NovatelFRESET::Response &  res 
) [inline, private]

Service request to reset the gps through FRESET.

Definition at line 549 of file novatel_gps_nodelet.cpp.

Main spin loop connects to device, then reads data from it and publishes messages.

Definition at line 342 of file novatel_gps_nodelet.cpp.

void novatel_gps_driver::NovatelGpsNodelet::SyncCallback ( const std_msgs::TimeConstPtr &  sync) [inline]

Definition at line 332 of file novatel_gps_nodelet.cpp.

Definition at line 997 of file novatel_gps_nodelet.cpp.


Member Data Documentation

Definition at line 506 of file novatel_gps_nodelet.cpp.

The connection type, ("serial", "tcp", or "udp")

Definition at line 467 of file novatel_gps_nodelet.cpp.

The device identifier e.g. /dev/ttyUSB0.

Definition at line 465 of file novatel_gps_nodelet.cpp.

Definition at line 535 of file novatel_gps_nodelet.cpp.

Definition at line 534 of file novatel_gps_nodelet.cpp.

Definition at line 533 of file novatel_gps_nodelet.cpp.

Definition at line 530 of file novatel_gps_nodelet.cpp.

Definition at line 529 of file novatel_gps_nodelet.cpp.

Definition at line 532 of file novatel_gps_nodelet.cpp.

Definition at line 487 of file novatel_gps_nodelet.cpp.

Definition at line 544 of file novatel_gps_nodelet.cpp.

Definition at line 496 of file novatel_gps_nodelet.cpp.

Definition at line 498 of file novatel_gps_nodelet.cpp.

Definition at line 497 of file novatel_gps_nodelet.cpp.

Definition at line 499 of file novatel_gps_nodelet.cpp.

Definition at line 507 of file novatel_gps_nodelet.cpp.

Definition at line 537 of file novatel_gps_nodelet.cpp.

Definition at line 536 of file novatel_gps_nodelet.cpp.

Definition at line 488 of file novatel_gps_nodelet.cpp.

Definition at line 531 of file novatel_gps_nodelet.cpp.

Definition at line 543 of file novatel_gps_nodelet.cpp.

Definition at line 489 of file novatel_gps_nodelet.cpp.

The rate at which IMU measurements will be published, in Hz.

Definition at line 472 of file novatel_gps_nodelet.cpp.

How frequently the device samples the IMU, in Hz.

Definition at line 474 of file novatel_gps_nodelet.cpp.

Definition at line 490 of file novatel_gps_nodelet.cpp.

Definition at line 491 of file novatel_gps_nodelet.cpp.

Definition at line 492 of file novatel_gps_nodelet.cpp.

novatel_gps_msgs::NovatelPositionPtr novatel_gps_driver::NovatelGpsNodelet::last_novatel_position_ [private]

Definition at line 541 of file novatel_gps_nodelet.cpp.

Definition at line 540 of file novatel_gps_nodelet.cpp.

Definition at line 514 of file novatel_gps_nodelet.cpp.

Definition at line 539 of file novatel_gps_nodelet.cpp.

Buffer of gps message time stamps.

Definition at line 518 of file novatel_gps_nodelet.cpp.

Definition at line 510 of file novatel_gps_nodelet.cpp.

Definition at line 493 of file novatel_gps_nodelet.cpp.

Definition at line 494 of file novatel_gps_nodelet.cpp.

Definition at line 495 of file novatel_gps_nodelet.cpp.

stats::accumulator_set<float, stats::stats< stats::tag::max, stats::tag::min, stats::tag::mean, stats::tag::variance> > novatel_gps_driver::NovatelGpsNodelet::offset_stats_ [private]

Stats on time offset.

Definition at line 524 of file novatel_gps_nodelet.cpp.

Definition at line 468 of file novatel_gps_nodelet.cpp.

Definition at line 482 of file novatel_gps_nodelet.cpp.

Definition at line 469 of file novatel_gps_nodelet.cpp.

Definition at line 470 of file novatel_gps_nodelet.cpp.

Definition at line 475 of file novatel_gps_nodelet.cpp.

Definition at line 478 of file novatel_gps_nodelet.cpp.

Definition at line 476 of file novatel_gps_nodelet.cpp.

Definition at line 477 of file novatel_gps_nodelet.cpp.

Definition at line 479 of file novatel_gps_nodelet.cpp.

Definition at line 538 of file novatel_gps_nodelet.cpp.

Definition at line 483 of file novatel_gps_nodelet.cpp.

Definition at line 480 of file novatel_gps_nodelet.cpp.

Definition at line 481 of file novatel_gps_nodelet.cpp.

Definition at line 500 of file novatel_gps_nodelet.cpp.

Definition at line 484 of file novatel_gps_nodelet.cpp.

Definition at line 504 of file novatel_gps_nodelet.cpp.

stats::accumulator_set<float, stats::stats<stats::tag::rolling_mean> > novatel_gps_driver::NovatelGpsNodelet::rolling_offset_ [private]

Rolling mean of time offset.

Definition at line 526 of file novatel_gps_nodelet.cpp.

Subscriber to listen for sync times from a DIO.

Definition at line 513 of file novatel_gps_nodelet.cpp.

Buffer of sync message time stamps.

Definition at line 516 of file novatel_gps_nodelet.cpp.

Definition at line 509 of file novatel_gps_nodelet.cpp.

Definition at line 501 of file novatel_gps_nodelet.cpp.

Definition at line 502 of file novatel_gps_nodelet.cpp.

Definition at line 485 of file novatel_gps_nodelet.cpp.


The documentation for this class was generated from the following file:


novatel_gps_driver
Author(s):
autogenerated on Sun Oct 8 2017 02:40:29