1 #ifndef NMEA_GPS_PLUGIN_NMEA_GPS_PLUGIN_H_INCLUDED 2 #define NMEA_GPS_PLUGIN_NMEA_GPS_PLUGIN_H_INCLUDED 15 #include <gazebo/common/Plugin.hh> 16 #include <gazebo/physics/Model.hh> 17 #include <gazebo/physics/Link.hh> 18 #include <gazebo/physics/World.hh> 19 #include <gazebo/physics/physics.hh> 20 #include <gazebo/util/system.hh> 24 #include <nmea_msgs/Sentence.h> 25 #include <geographic_msgs/GeoPose.h> 40 #include <boost/optional.hpp> 48 namespace default_param
114 virtual void Load(physics::ModelPtr model, sdf::ElementPtr sdf);
119 virtual void Reset();
124 virtual void Update();
146 std::string getCheckSum(std::string sentence);
151 std::string getUnixTime(
ros::Time stamp);
161 nmea_msgs::Sentence getGPRMC(
ros::Time stamp);
166 nmea_msgs::Sentence getGPGGA(
ros::Time stamp);
171 nmea_msgs::Sentence getGPVTG(
ros::Time stamp);
172 nmea_msgs::Sentence getGPHDT(
ros::Time stamp);
177 std::string convertToDmm(
double value);
178 std::string getHexString(uint8_t value);
184 #if (GAZEBO_MAJOR_VERSION >= 8) 185 boost::optional<ignition::math::Pose3d> initial_gazebo_pose_;
192 #endif //NMEA_GPS_PLUGIN_NMEA_GPS_PLUGIN_H_INCLUDED
constexpr double reference_altitude
initial altitude of the robot
double orientation_gaussian_noise_
Sensor model of the nmea GPS plugin.
geodesy::UTMPose initial_utm_pose_
double reference_longitude_
double reference_altitude_
geographic_msgs::GeoPose current_geo_pose_
physics::ModelPtr model_ptr_
double reference_latitude_
constexpr double position_gaussiaa_noise
gaussian noise of the posision
double velocity_gaussian_noise_
constexpr double publish_rate
publish rate of the each sentence
constexpr double reference_longitude
initial longitude of the robot
const std::string nmea_topic
topic name of the nmea_sentence topic
geometry_msgs::Twist current_twist_
boost::optional< gazebo::math::Pose > initial_gazebo_pose_
constexpr double reference_heading
nitial heading of the robot
boost::optional< common::Time > last_publish_timestamp_
std::unique_ptr< GpsSensorModel > sensor_model_ptr_
physics::WorldPtr world_ptr_
double reference_heading_
ros::NodeHandle node_handle_
event::ConnectionPtr update_connection_
double position_gaussiaa_noise_
geographic_msgs::GeoPose initial_pose_
constexpr double orientation_gaussian_noise
gaussian noise of the orientation
physics::LinkPtr link_ptr_
Class of the NMEA gps plugin.
constexpr double velocity_gaussian_noise
gaussian noise of the velocity
constexpr double reference_latitude
initial longitude of the robot