From afc129e98554c1499a80862f6f27235154059c23 Mon Sep 17 00:00:00 2001 From: mkquda <168697710+mkquda@users.noreply.github.com> Date: Tue, 11 Jun 2024 09:55:50 +0900 Subject: [PATCH] refactor(trajectory_follower_base): trajectory follower base add autoware prefix (#7343) * rename trajectory follower base package Signed-off-by: mohammad alqudah * update dependencies and includes Signed-off-by: mohammad alqudah * fix formats Signed-off-by: mohammad alqudah --------- Signed-off-by: mohammad alqudah --- .github/CODEOWNERS | 2 +- .../mpc_lateral_controller.hpp | 2 +- control/autoware_mpc_lateral_controller/package.xml | 2 +- .../pid_longitudinal_controller.hpp | 2 +- .../autoware_pid_longitudinal_controller/package.xml | 2 +- .../CMakeLists.txt | 2 +- .../README.md | 0 .../autoware_trajectory_follower_base}/input_data.hpp | 6 +++--- .../lateral_controller_base.hpp | 10 +++++----- .../longitudinal_controller_base.hpp | 10 +++++----- .../autoware_trajectory_follower_base}/sync_data.hpp | 6 +++--- .../visibility_control.hpp | 6 +++--- .../package.xml | 2 +- .../src/lateral_controller_base.cpp | 2 +- .../src/longitudinal_controller_base.cpp | 2 +- .../pure_pursuit/pure_pursuit_lateral_controller.hpp | 2 +- control/pure_pursuit/package.xml | 2 +- control/trajectory_follower_node/README.md | 4 ++-- .../trajectory_follower_node/controller_node.hpp | 4 ++-- control/trajectory_follower_node/package.xml | 2 +- 20 files changed, 35 insertions(+), 35 deletions(-) rename control/{trajectory_follower_base => autoware_trajectory_follower_base}/CMakeLists.txt (84%) rename control/{trajectory_follower_base => autoware_trajectory_follower_base}/README.md (100%) rename control/{trajectory_follower_base/include/trajectory_follower_base => autoware_trajectory_follower_base/include/autoware_trajectory_follower_base}/input_data.hpp (88%) rename control/{trajectory_follower_base/include/trajectory_follower_base => autoware_trajectory_follower_base/include/autoware_trajectory_follower_base}/lateral_controller_base.hpp (78%) rename control/{trajectory_follower_base/include/trajectory_follower_base => autoware_trajectory_follower_base/include/autoware_trajectory_follower_base}/longitudinal_controller_base.hpp (79%) rename control/{trajectory_follower_base/include/trajectory_follower_base => autoware_trajectory_follower_base/include/autoware_trajectory_follower_base}/sync_data.hpp (83%) rename control/{trajectory_follower_base/include/trajectory_follower_base => autoware_trajectory_follower_base/include/autoware_trajectory_follower_base}/visibility_control.hpp (88%) rename control/{trajectory_follower_base => autoware_trajectory_follower_base}/package.xml (97%) rename control/{trajectory_follower_base => autoware_trajectory_follower_base}/src/lateral_controller_base.cpp (92%) rename control/{trajectory_follower_base => autoware_trajectory_follower_base}/src/longitudinal_controller_base.cpp (92%) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index a2eeab9422b79..15d84dd1a97a0 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -58,7 +58,7 @@ control/predicted_path_checker/** berkay@leodrive.ai control/pure_pursuit/** takamasa.horibe@tier4.jp control/shift_decider/** takamasa.horibe@tier4.jp control/autoware_smart_mpc_trajectory_follower/** masayuki.aino@proxima-ai-tech.com -control/trajectory_follower_base/** takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp +control/autoware_trajectory_follower_base/** takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp control/trajectory_follower_node/** takamasa.horibe@tier4.jp takayuki.murooka@tier4.jp control/autoware_vehicle_cmd_gate/** takamasa.horibe@tier4.jp tomoya.kimura@tier4.jp evaluator/control_evaluator/** daniel.sanchez@tier4.jp takayuki.murooka@tier4.jp diff --git a/control/autoware_mpc_lateral_controller/include/autoware_mpc_lateral_controller/mpc_lateral_controller.hpp b/control/autoware_mpc_lateral_controller/include/autoware_mpc_lateral_controller/mpc_lateral_controller.hpp index e0775e1d09def..50ab923f5b4d6 100644 --- a/control/autoware_mpc_lateral_controller/include/autoware_mpc_lateral_controller/mpc_lateral_controller.hpp +++ b/control/autoware_mpc_lateral_controller/include/autoware_mpc_lateral_controller/mpc_lateral_controller.hpp @@ -19,8 +19,8 @@ #include "autoware_mpc_lateral_controller/mpc_trajectory.hpp" #include "autoware_mpc_lateral_controller/mpc_utils.hpp" #include "autoware_mpc_lateral_controller/steering_offset/steering_offset.hpp" +#include "autoware_trajectory_follower_base/lateral_controller_base.hpp" #include "rclcpp/rclcpp.hpp" -#include "trajectory_follower_base/lateral_controller_base.hpp" #include "autoware_control_msgs/msg/lateral.hpp" #include "autoware_planning_msgs/msg/trajectory.hpp" diff --git a/control/autoware_mpc_lateral_controller/package.xml b/control/autoware_mpc_lateral_controller/package.xml index 673d9d7896745..1e250dd89ce3f 100644 --- a/control/autoware_mpc_lateral_controller/package.xml +++ b/control/autoware_mpc_lateral_controller/package.xml @@ -19,6 +19,7 @@ autoware_control_msgs autoware_planning_msgs + autoware_trajectory_follower_base autoware_vehicle_info_utils autoware_vehicle_msgs diagnostic_msgs @@ -35,7 +36,6 @@ tf2_ros tier4_autoware_utils tier4_debug_msgs - trajectory_follower_base ament_cmake_ros ament_lint_auto diff --git a/control/autoware_pid_longitudinal_controller/include/autoware_pid_longitudinal_controller/pid_longitudinal_controller.hpp b/control/autoware_pid_longitudinal_controller/include/autoware_pid_longitudinal_controller/pid_longitudinal_controller.hpp index 08a6a51d3098b..98882509aaceb 100644 --- a/control/autoware_pid_longitudinal_controller/include/autoware_pid_longitudinal_controller/pid_longitudinal_controller.hpp +++ b/control/autoware_pid_longitudinal_controller/include/autoware_pid_longitudinal_controller/pid_longitudinal_controller.hpp @@ -20,6 +20,7 @@ #include "autoware_pid_longitudinal_controller/lowpass_filter.hpp" #include "autoware_pid_longitudinal_controller/pid.hpp" #include "autoware_pid_longitudinal_controller/smooth_stop.hpp" +#include "autoware_trajectory_follower_base/longitudinal_controller_base.hpp" #include "autoware_vehicle_info_utils/vehicle_info_utils.hpp" #include "diagnostic_updater/diagnostic_updater.hpp" #include "rclcpp/rclcpp.hpp" @@ -27,7 +28,6 @@ #include "tf2_ros/buffer.h" #include "tf2_ros/transform_listener.h" #include "tier4_autoware_utils/ros/marker_helper.hpp" -#include "trajectory_follower_base/longitudinal_controller_base.hpp" #include #include diff --git a/control/autoware_pid_longitudinal_controller/package.xml b/control/autoware_pid_longitudinal_controller/package.xml index 66f6a6dfcda8b..a84083eae2725 100644 --- a/control/autoware_pid_longitudinal_controller/package.xml +++ b/control/autoware_pid_longitudinal_controller/package.xml @@ -21,6 +21,7 @@ autoware_adapi_v1_msgs autoware_control_msgs autoware_planning_msgs + autoware_trajectory_follower_base autoware_vehicle_info_utils autoware_vehicle_msgs diagnostic_msgs @@ -36,7 +37,6 @@ tf2_ros tier4_autoware_utils tier4_debug_msgs - trajectory_follower_base ament_cmake_ros ament_lint_auto diff --git a/control/trajectory_follower_base/CMakeLists.txt b/control/autoware_trajectory_follower_base/CMakeLists.txt similarity index 84% rename from control/trajectory_follower_base/CMakeLists.txt rename to control/autoware_trajectory_follower_base/CMakeLists.txt index 98f86e468e819..74916a3d2e22f 100644 --- a/control/trajectory_follower_base/CMakeLists.txt +++ b/control/autoware_trajectory_follower_base/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.14) -project(trajectory_follower_base) +project(autoware_trajectory_follower_base) find_package(autoware_cmake REQUIRED) autoware_package() diff --git a/control/trajectory_follower_base/README.md b/control/autoware_trajectory_follower_base/README.md similarity index 100% rename from control/trajectory_follower_base/README.md rename to control/autoware_trajectory_follower_base/README.md diff --git a/control/trajectory_follower_base/include/trajectory_follower_base/input_data.hpp b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/input_data.hpp similarity index 88% rename from control/trajectory_follower_base/include/trajectory_follower_base/input_data.hpp rename to control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/input_data.hpp index 665a8604214dd..679f6334b7187 100644 --- a/control/trajectory_follower_base/include/trajectory_follower_base/input_data.hpp +++ b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/input_data.hpp @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -#ifndef TRAJECTORY_FOLLOWER_BASE__INPUT_DATA_HPP_ -#define TRAJECTORY_FOLLOWER_BASE__INPUT_DATA_HPP_ +#ifndef AUTOWARE_TRAJECTORY_FOLLOWER_BASE__INPUT_DATA_HPP_ +#define AUTOWARE_TRAJECTORY_FOLLOWER_BASE__INPUT_DATA_HPP_ #include "autoware_adapi_v1_msgs/msg/operation_mode_state.hpp" #include "autoware_planning_msgs/msg/trajectory.hpp" @@ -33,4 +33,4 @@ struct InputData }; } // namespace autoware::motion::control::trajectory_follower -#endif // TRAJECTORY_FOLLOWER_BASE__INPUT_DATA_HPP_ +#endif // AUTOWARE_TRAJECTORY_FOLLOWER_BASE__INPUT_DATA_HPP_ diff --git a/control/trajectory_follower_base/include/trajectory_follower_base/lateral_controller_base.hpp b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/lateral_controller_base.hpp similarity index 78% rename from control/trajectory_follower_base/include/trajectory_follower_base/lateral_controller_base.hpp rename to control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/lateral_controller_base.hpp index a70c4c18fedb3..f3501336928a3 100644 --- a/control/trajectory_follower_base/include/trajectory_follower_base/lateral_controller_base.hpp +++ b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/lateral_controller_base.hpp @@ -12,12 +12,12 @@ // See the License for the specific language governing permissions and // limitations under the License. -#ifndef TRAJECTORY_FOLLOWER_BASE__LATERAL_CONTROLLER_BASE_HPP_ -#define TRAJECTORY_FOLLOWER_BASE__LATERAL_CONTROLLER_BASE_HPP_ +#ifndef AUTOWARE_TRAJECTORY_FOLLOWER_BASE__LATERAL_CONTROLLER_BASE_HPP_ +#define AUTOWARE_TRAJECTORY_FOLLOWER_BASE__LATERAL_CONTROLLER_BASE_HPP_ +#include "autoware_trajectory_follower_base/input_data.hpp" +#include "autoware_trajectory_follower_base/sync_data.hpp" #include "rclcpp/rclcpp.hpp" -#include "trajectory_follower_base/input_data.hpp" -#include "trajectory_follower_base/sync_data.hpp" #include "autoware_control_msgs/msg/lateral.hpp" @@ -44,4 +44,4 @@ class LateralControllerBase } // namespace autoware::motion::control::trajectory_follower -#endif // TRAJECTORY_FOLLOWER_BASE__LATERAL_CONTROLLER_BASE_HPP_ +#endif // AUTOWARE_TRAJECTORY_FOLLOWER_BASE__LATERAL_CONTROLLER_BASE_HPP_ diff --git a/control/trajectory_follower_base/include/trajectory_follower_base/longitudinal_controller_base.hpp b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/longitudinal_controller_base.hpp similarity index 79% rename from control/trajectory_follower_base/include/trajectory_follower_base/longitudinal_controller_base.hpp rename to control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/longitudinal_controller_base.hpp index da5381091113f..b0f715692d079 100644 --- a/control/trajectory_follower_base/include/trajectory_follower_base/longitudinal_controller_base.hpp +++ b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/longitudinal_controller_base.hpp @@ -12,12 +12,12 @@ // See the License for the specific language governing permissions and // limitations under the License. -#ifndef TRAJECTORY_FOLLOWER_BASE__LONGITUDINAL_CONTROLLER_BASE_HPP_ -#define TRAJECTORY_FOLLOWER_BASE__LONGITUDINAL_CONTROLLER_BASE_HPP_ +#ifndef AUTOWARE_TRAJECTORY_FOLLOWER_BASE__LONGITUDINAL_CONTROLLER_BASE_HPP_ +#define AUTOWARE_TRAJECTORY_FOLLOWER_BASE__LONGITUDINAL_CONTROLLER_BASE_HPP_ +#include "autoware_trajectory_follower_base/input_data.hpp" +#include "autoware_trajectory_follower_base/sync_data.hpp" #include "rclcpp/rclcpp.hpp" -#include "trajectory_follower_base/input_data.hpp" -#include "trajectory_follower_base/sync_data.hpp" #include "autoware_control_msgs/msg/longitudinal.hpp" @@ -46,4 +46,4 @@ class LongitudinalControllerBase } // namespace autoware::motion::control::trajectory_follower -#endif // TRAJECTORY_FOLLOWER_BASE__LONGITUDINAL_CONTROLLER_BASE_HPP_ +#endif // AUTOWARE_TRAJECTORY_FOLLOWER_BASE__LONGITUDINAL_CONTROLLER_BASE_HPP_ diff --git a/control/trajectory_follower_base/include/trajectory_follower_base/sync_data.hpp b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/sync_data.hpp similarity index 83% rename from control/trajectory_follower_base/include/trajectory_follower_base/sync_data.hpp rename to control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/sync_data.hpp index 60c91019d10c3..6034719241430 100644 --- a/control/trajectory_follower_base/include/trajectory_follower_base/sync_data.hpp +++ b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/sync_data.hpp @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -#ifndef TRAJECTORY_FOLLOWER_BASE__SYNC_DATA_HPP_ -#define TRAJECTORY_FOLLOWER_BASE__SYNC_DATA_HPP_ +#ifndef AUTOWARE_TRAJECTORY_FOLLOWER_BASE__SYNC_DATA_HPP_ +#define AUTOWARE_TRAJECTORY_FOLLOWER_BASE__SYNC_DATA_HPP_ namespace autoware::motion::control::trajectory_follower { @@ -30,4 +30,4 @@ struct LongitudinalSyncData } // namespace autoware::motion::control::trajectory_follower -#endif // TRAJECTORY_FOLLOWER_BASE__SYNC_DATA_HPP_ +#endif // AUTOWARE_TRAJECTORY_FOLLOWER_BASE__SYNC_DATA_HPP_ diff --git a/control/trajectory_follower_base/include/trajectory_follower_base/visibility_control.hpp b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/visibility_control.hpp similarity index 88% rename from control/trajectory_follower_base/include/trajectory_follower_base/visibility_control.hpp rename to control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/visibility_control.hpp index c2419427ac961..1a50424ebec43 100644 --- a/control/trajectory_follower_base/include/trajectory_follower_base/visibility_control.hpp +++ b/control/autoware_trajectory_follower_base/include/autoware_trajectory_follower_base/visibility_control.hpp @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -#ifndef TRAJECTORY_FOLLOWER_BASE__VISIBILITY_CONTROL_HPP_ -#define TRAJECTORY_FOLLOWER_BASE__VISIBILITY_CONTROL_HPP_ +#ifndef AUTOWARE_TRAJECTORY_FOLLOWER_BASE__VISIBILITY_CONTROL_HPP_ +#define AUTOWARE_TRAJECTORY_FOLLOWER_BASE__VISIBILITY_CONTROL_HPP_ //////////////////////////////////////////////////////////////////////////////// #if defined(__WIN32) @@ -34,4 +34,4 @@ #error "Unsupported Build Configuration" #endif -#endif // TRAJECTORY_FOLLOWER_BASE__VISIBILITY_CONTROL_HPP_ +#endif // AUTOWARE_TRAJECTORY_FOLLOWER_BASE__VISIBILITY_CONTROL_HPP_ diff --git a/control/trajectory_follower_base/package.xml b/control/autoware_trajectory_follower_base/package.xml similarity index 97% rename from control/trajectory_follower_base/package.xml rename to control/autoware_trajectory_follower_base/package.xml index b36b4669be04e..283ab791c1ef9 100644 --- a/control/trajectory_follower_base/package.xml +++ b/control/autoware_trajectory_follower_base/package.xml @@ -1,7 +1,7 @@ - trajectory_follower_base + autoware_trajectory_follower_base 1.0.0 Library for generating lateral and longitudinal controls following a trajectory diff --git a/control/trajectory_follower_base/src/lateral_controller_base.cpp b/control/autoware_trajectory_follower_base/src/lateral_controller_base.cpp similarity index 92% rename from control/trajectory_follower_base/src/lateral_controller_base.cpp rename to control/autoware_trajectory_follower_base/src/lateral_controller_base.cpp index 6acdbc4a8f5eb..ce5c521089328 100644 --- a/control/trajectory_follower_base/src/lateral_controller_base.cpp +++ b/control/autoware_trajectory_follower_base/src/lateral_controller_base.cpp @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -#include "trajectory_follower_base/lateral_controller_base.hpp" +#include "autoware_trajectory_follower_base/lateral_controller_base.hpp" namespace autoware::motion::control::trajectory_follower { diff --git a/control/trajectory_follower_base/src/longitudinal_controller_base.cpp b/control/autoware_trajectory_follower_base/src/longitudinal_controller_base.cpp similarity index 92% rename from control/trajectory_follower_base/src/longitudinal_controller_base.cpp rename to control/autoware_trajectory_follower_base/src/longitudinal_controller_base.cpp index f7779158f5791..8fac86b3883a1 100644 --- a/control/trajectory_follower_base/src/longitudinal_controller_base.cpp +++ b/control/autoware_trajectory_follower_base/src/longitudinal_controller_base.cpp @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -#include "trajectory_follower_base/longitudinal_controller_base.hpp" +#include "autoware_trajectory_follower_base/longitudinal_controller_base.hpp" namespace autoware::motion::control::trajectory_follower { diff --git a/control/pure_pursuit/include/pure_pursuit/pure_pursuit_lateral_controller.hpp b/control/pure_pursuit/include/pure_pursuit/pure_pursuit_lateral_controller.hpp index 5b7b466dcb4dd..643a0d370a417 100644 --- a/control/pure_pursuit/include/pure_pursuit/pure_pursuit_lateral_controller.hpp +++ b/control/pure_pursuit/include/pure_pursuit/pure_pursuit_lateral_controller.hpp @@ -30,12 +30,12 @@ #ifndef PURE_PURSUIT__PURE_PURSUIT_LATERAL_CONTROLLER_HPP_ #define PURE_PURSUIT__PURE_PURSUIT_LATERAL_CONTROLLER_HPP_ +#include "autoware_trajectory_follower_base/lateral_controller_base.hpp" #include "pure_pursuit/pure_pursuit.hpp" #include "pure_pursuit/pure_pursuit_viz.hpp" #include "rclcpp/rclcpp.hpp" #include "tf2_ros/buffer.h" #include "tf2_ros/transform_listener.h" -#include "trajectory_follower_base/lateral_controller_base.hpp" #include #include diff --git a/control/pure_pursuit/package.xml b/control/pure_pursuit/package.xml index 32744d744f95f..ab3097c914b00 100644 --- a/control/pure_pursuit/package.xml +++ b/control/pure_pursuit/package.xml @@ -16,6 +16,7 @@ autoware_control_msgs autoware_planning_msgs + autoware_trajectory_follower_base autoware_vehicle_info_utils boost geometry_msgs @@ -32,7 +33,6 @@ tf2_ros tier4_autoware_utils tier4_debug_msgs - trajectory_follower_base visualization_msgs ament_lint_auto diff --git a/control/trajectory_follower_node/README.md b/control/trajectory_follower_node/README.md index 7b9e93e39fad9..1b63cd2064b29 100644 --- a/control/trajectory_follower_node/README.md +++ b/control/trajectory_follower_node/README.md @@ -6,13 +6,13 @@ Generate control commands to follow a given Trajectory. ## Design -This is a node of the functionalities implemented in the controller class derived from [trajectory_follower_base](../trajectory_follower_base/README.md#trajectory-follower) package. It has instances of those functionalities, gives them input data to perform calculations, and publishes control commands. +This is a node of the functionalities implemented in the controller class derived from [autoware_trajectory_follower_base](../autoware_trajectory_follower_base/README.md#trajectory-follower) package. It has instances of those functionalities, gives them input data to perform calculations, and publishes control commands. By default, the controller instance with the `Controller` class as follows is used. ```plantuml @startuml -package trajectory_follower_base { +package autoware_trajectory_follower_base { abstract class LateralControllerBase { longitudinal_sync_data_ diff --git a/control/trajectory_follower_node/include/trajectory_follower_node/controller_node.hpp b/control/trajectory_follower_node/include/trajectory_follower_node/controller_node.hpp index e9c69a2b2896d..beb5024a78e53 100644 --- a/control/trajectory_follower_node/include/trajectory_follower_node/controller_node.hpp +++ b/control/trajectory_follower_node/include/trajectory_follower_node/controller_node.hpp @@ -15,6 +15,8 @@ #ifndef TRAJECTORY_FOLLOWER_NODE__CONTROLLER_NODE_HPP_ #define TRAJECTORY_FOLLOWER_NODE__CONTROLLER_NODE_HPP_ +#include "autoware_trajectory_follower_base/lateral_controller_base.hpp" +#include "autoware_trajectory_follower_base/longitudinal_controller_base.hpp" #include "autoware_vehicle_info_utils/vehicle_info_utils.hpp" #include "rclcpp/rclcpp.hpp" #include "tf2/utils.h" @@ -23,8 +25,6 @@ #include "tier4_autoware_utils/ros/logger_level_configure.hpp" #include "tier4_autoware_utils/ros/polling_subscriber.hpp" #include "tier4_autoware_utils/system/stop_watch.hpp" -#include "trajectory_follower_base/lateral_controller_base.hpp" -#include "trajectory_follower_base/longitudinal_controller_base.hpp" #include "trajectory_follower_node/visibility_control.hpp" #include diff --git a/control/trajectory_follower_node/package.xml b/control/trajectory_follower_node/package.xml index c57a07155128a..b6d8b4bf774a9 100644 --- a/control/trajectory_follower_node/package.xml +++ b/control/trajectory_follower_node/package.xml @@ -24,6 +24,7 @@ autoware_mpc_lateral_controller autoware_pid_longitudinal_controller autoware_planning_msgs + autoware_trajectory_follower_base autoware_vehicle_info_utils autoware_vehicle_msgs motion_utils @@ -31,7 +32,6 @@ rclcpp rclcpp_components tier4_autoware_utils - trajectory_follower_base visualization_msgs ros2launch