Carma-platform v4.2.0
CARMA Platform is built on robot operating system (ROS) and utilizes open source software (OSS) that enables Cooperative Driving Automation (CDA) features to allow Automated Driving Systems to interact and cooperate with infrastructure and other vehicles through communication.
|
Core execution node for this package. More...
#include <localization_manager_node.hpp>
Public Member Functions | |
Node (const rclcpp::NodeOptions &) | |
Node constructor. More... | |
void | publishPoseStamped (const geometry_msgs::msg::PoseStamped &msg) const |
Callback to publish the selected pose. More... | |
void | publishStatus (const carma_localization_msgs::msg::LocalizationStatusReport &msg) const |
Callback to publish the provided localization status report. More... | |
void | publishManagedInitialPose (const geometry_msgs::msg::PoseWithCovarianceStamped &msg) const |
Callback to publish the initial pose deemed suitable to intialize NDT. More... | |
void | poseAndStatsCallback (const geometry_msgs::msg::PoseStamped::ConstPtr pose, const autoware_msgs::msg::NDTStat::ConstPtr stats) |
Synchronized callback for pose and stats data for usage with message_filters. Provides exception handling. More... | |
rcl_interfaces::msg::SetParametersResult | parameter_update_callback (const std::vector< rclcpp::Parameter > ¶meters) |
Callback for dynamic parameter updates. More... | |
carma_ros2_utils::CallbackReturn | handle_on_configure (const rclcpp_lifecycle::State &) |
Private Types | |
typedef message_filters::TimeSynchronizer< geometry_msgs::msg::PoseStamped, autoware_msgs::msg::NDTStat > | TimeSynchronizer |
Private Attributes | |
message_filters::Subscriber< geometry_msgs::msg::PoseStamped, Node > | ndt_pose_sub_ |
message_filters::Subscriber< autoware_msgs::msg::NDTStat, Node > | ndt_score_sub_ |
carma_ros2_utils::SubPtr< geometry_msgs::msg::PoseStamped > | gnss_pose_sub_ |
carma_ros2_utils::SubPtr< geometry_msgs::msg::PoseWithCovarianceStamped > | initialpose_sub_ |
carma_ros2_utils::SubPtr< carma_msgs::msg::SystemAlert > | system_alert_sub_ |
carma_ros2_utils::PubPtr< geometry_msgs::msg::PoseStamped > | pose_pub_ |
carma_ros2_utils::PubPtr< carma_localization_msgs::msg::LocalizationStatusReport > | state_pub_ |
carma_ros2_utils::PubPtr< geometry_msgs::msg::PoseWithCovarianceStamped > | managed_initial_pose_pub_ |
rclcpp::TimerBase::SharedPtr | pose_timer_ |
LocalizationManagerConfig | config_ |
std::unique_ptr< LocalizationManager > | manager_ |
std::shared_ptr< TimeSynchronizer > | pose_stats_synchronizer_ |
Core execution node for this package.
Definition at line 45 of file localization_manager_node.hpp.
|
private |
Definition at line 70 of file localization_manager_node.hpp.
|
explicit |
Node constructor.
Definition at line 25 of file localization_manager_node.cpp.
References localization_manager::LocalizationManagerConfig::auto_initialization_timeout, config_, localization_manager::LocalizationManagerConfig::fitness_score_degraded_threshold, localization_manager::LocalizationManagerConfig::fitness_score_fault_threshold, localization_manager::LocalizationManagerConfig::gnss_data_timeout, localization_manager::LocalizationManagerConfig::gnss_only_operation_timeout, localization_manager::LocalizationManagerConfig::localization_mode, localization_manager::LocalizationManagerConfig::ndt_frequency_degraded_threshold, localization_manager::LocalizationManagerConfig::ndt_frequency_fault_threshold, localization_manager::LocalizationManagerConfig::pose_pub_rate, localization_manager::LocalizationManagerConfig::sequential_timesteps_until_gps_operation, localization_manager::LocalizationManagerConfig::x_offset, localization_manager::LocalizationManagerConfig::y_offset, and localization_manager::LocalizationManagerConfig::z_offset.
carma_ros2_utils::CallbackReturn localization_manager::Node::handle_on_configure | ( | const rclcpp_lifecycle::State & | ) |
Definition at line 48 of file localization_manager_node.cpp.
References localization_manager::LocalizationManagerConfig::auto_initialization_timeout, config_, localization_manager::LocalizationManagerConfig::fitness_score_degraded_threshold, localization_manager::LocalizationManagerConfig::fitness_score_fault_threshold, localization_manager::LocalizationManagerConfig::gnss_data_timeout, localization_manager::LocalizationManagerConfig::gnss_only_operation_timeout, gnss_pose_sub_, localization_manager::LocalizationManager::gnssPoseCallback(), initialpose_sub_, localization_manager::LocalizationManager::initialPoseCallback(), localization_manager::LocalizationManagerConfig::localization_mode, managed_initial_pose_pub_, manager_, localization_manager::LocalizationManagerConfig::ndt_frequency_degraded_threshold, localization_manager::LocalizationManagerConfig::ndt_frequency_fault_threshold, ndt_pose_sub_, ndt_score_sub_, parameter_update_callback(), pose_pub_, localization_manager::LocalizationManagerConfig::pose_pub_rate, pose_stats_synchronizer_, pose_timer_, poseAndStatsCallback(), localization_manager::LocalizationManager::posePubTick(), publishManagedInitialPose(), publishPoseStamped(), publishStatus(), localization_manager::LocalizationManagerConfig::sequential_timesteps_until_gps_operation, state_pub_, system_alert_sub_, localization_manager::LocalizationManager::systemAlertCallback(), localization_manager::LocalizationManagerConfig::x_offset, localization_manager::LocalizationManagerConfig::y_offset, and localization_manager::LocalizationManagerConfig::z_offset.
rcl_interfaces::msg::SetParametersResult localization_manager::Node::parameter_update_callback | ( | const std::vector< rclcpp::Parameter > & | parameters | ) |
Callback for dynamic parameter updates.
Definition at line 129 of file localization_manager_node.cpp.
References localization_manager::LocalizationManagerConfig::auto_initialization_timeout, config_, localization_manager::LocalizationManagerConfig::fitness_score_degraded_threshold, localization_manager::LocalizationManagerConfig::fitness_score_fault_threshold, localization_manager::LocalizationManagerConfig::gnss_data_timeout, localization_manager::LocalizationManagerConfig::gnss_only_operation_timeout, manager_, localization_manager::LocalizationManagerConfig::ndt_frequency_degraded_threshold, localization_manager::LocalizationManagerConfig::ndt_frequency_fault_threshold, localization_manager::LocalizationManagerConfig::pose_pub_rate, localization_manager::LocalizationManagerConfig::sequential_timesteps_until_gps_operation, localization_manager::LocalizationManagerConfig::x_offset, localization_manager::LocalizationManagerConfig::y_offset, and localization_manager::LocalizationManagerConfig::z_offset.
Referenced by handle_on_configure().
void localization_manager::Node::poseAndStatsCallback | ( | const geometry_msgs::msg::PoseStamped::ConstPtr | pose, |
const autoware_msgs::msg::NDTStat::ConstPtr | stats | ||
) |
Synchronized callback for pose and stats data for usage with message_filters. Provides exception handling.
pose | The received pose message |
stats | The received stats message |
Definition at line 165 of file localization_manager_node.cpp.
References manager_.
Referenced by handle_on_configure().
void localization_manager::Node::publishManagedInitialPose | ( | const geometry_msgs::msg::PoseWithCovarianceStamped & | msg | ) | const |
Callback to publish the initial pose deemed suitable to intialize NDT.
msg | The msg to publish |
Definition at line 160 of file localization_manager_node.cpp.
References managed_initial_pose_pub_.
Referenced by handle_on_configure().
void localization_manager::Node::publishPoseStamped | ( | const geometry_msgs::msg::PoseStamped & | msg | ) | const |
Callback to publish the selected pose.
msg | The pose to publish |
Definition at line 119 of file localization_manager_node.cpp.
References pose_pub_.
Referenced by handle_on_configure().
void localization_manager::Node::publishStatus | ( | const carma_localization_msgs::msg::LocalizationStatusReport & | msg | ) | const |
Callback to publish the provided localization status report.
msg | The report to publish |
Definition at line 124 of file localization_manager_node.cpp.
References state_pub_.
Referenced by handle_on_configure().
|
private |
Definition at line 64 of file localization_manager_node.hpp.
Referenced by Node(), handle_on_configure(), and parameter_update_callback().
|
private |
Definition at line 51 of file localization_manager_node.hpp.
Referenced by handle_on_configure().
|
private |
Definition at line 52 of file localization_manager_node.hpp.
Referenced by handle_on_configure().
|
private |
Definition at line 58 of file localization_manager_node.hpp.
Referenced by handle_on_configure(), and publishManagedInitialPose().
|
private |
Definition at line 67 of file localization_manager_node.hpp.
Referenced by handle_on_configure(), parameter_update_callback(), and poseAndStatsCallback().
|
private |
Definition at line 49 of file localization_manager_node.hpp.
Referenced by handle_on_configure().
|
private |
Definition at line 50 of file localization_manager_node.hpp.
Referenced by handle_on_configure().
|
private |
Definition at line 56 of file localization_manager_node.hpp.
Referenced by handle_on_configure(), and publishPoseStamped().
|
private |
Definition at line 71 of file localization_manager_node.hpp.
Referenced by handle_on_configure().
|
private |
Definition at line 61 of file localization_manager_node.hpp.
Referenced by handle_on_configure().
|
private |
Definition at line 57 of file localization_manager_node.hpp.
Referenced by handle_on_configure(), and publishStatus().
|
private |
Definition at line 53 of file localization_manager_node.hpp.
Referenced by handle_on_configure().