Class VisualizeAzimuthNodelet
Defined in File visualize_azimuth_nodelet.hpp
Inheritance Relationships
Base Type
public rclcpp::Node
Class Documentation
-
class VisualizeAzimuthNodelet : public rclcpp::Node
Compute various azimuth values based on a magnetometer, IMU orientation and possibly also GPS coordinates.
Subscribed topics:
~azimuth(multiple types supported): The azimuth to visualize. Any type supported by compass_conversions package can be used:compass_interfaces/Azimuth,geometry_msgs/Quaternion,geometry_msgs/PoseWithCovarianceStampedorsensor_msgs/Imu. If other types thancompass_interfaces/Azimuthare used, either the resolved topic name must contain the azimuth type identification (e.g. end withmag/enu/imu), or you must provide parameters~input_referenceand~input_orientation.gps/fix(sensor_msgs/NavSatFix, optional): GPS fix messages from which the latitude, longitude, altitude and current year can be read. These are further used to compute magnetic declination and UTM grid convergence factor.utm_zone(std_msgs/Int32, optional): Optional UTM zone updates.
Published topics (see above for explanation):
~azimuth_vis(sensor_msgs/MagneticField, enabled by param~publish_mag_unbiased, off by default): The magnetic field measurement with bias removed.
Parameters:
max_rate(double, optional): If specified, visualization messages frequency will be at most this value [Hz].magnetic_declination(double, radians, optional): If set, forces this value of magnetic declination.utm_grid_convergence(double, radians, optional): If set, forces this value of UTM grid convergence.magnetic_models_path(string, default “$PACKAGE/data/magnetic”): Path where WMM magnetic models can be found. If set to empty string, the models will be searched in a default folder of GeographicLib. Environment variablesGEOGRAPHICLIB_MAGNETIC_PATHorGEOGRAPHICLIB_DATAinfluence the location of this folder.magnetic_model(string, optional): If set, forces using the given WMM model instead of determining the proper one by year. Example value is “wmm2020”.utm_zone(int, optional): If set, forces using this UTM zone instead of determining the proper one.keep_utm_zone(bool, default true): If true, the first determined UTM zone will be used for all future conversions.initial_lat(double, degrees, optional): If set, use this latitude before the first navsat pose is received.initial_lon(double, degrees, optional): If set, use this longitude before the first navsat pose is received.initial_alt(double, meters, optional): If set, use this altitude before the first navsat pose is received.~input_orientation(str, ‘enu’ or ‘ned’, default: unspecified): ENU or NED orientation to be used to interpret input messages (in case orientation cannot be derived either from message contents or topic name).~input_reference(str, ‘magnetic’, ‘geographic’ or ‘UTM’, default: no change): North reference to be used to interpret input messages (in case reference cannot be derived either from message contents or topic name).~input_variance(double, optional, rad^2): If specified, this variance will be used in the output messages if variance cannot be determined from the input messages (e.g. forQuaternionStamped).
Public Functions
-
explicit VisualizeAzimuthNodelet(const rclcpp::NodeOptions &options = rclcpp::NodeOptions())
-
~VisualizeAzimuthNodelet() override
-
void init()
Protected Functions