From 1038137709029703a1e9dbcec896d6790fa3a09c Mon Sep 17 00:00:00 2001 From: rafal-gorecki Date: Tue, 14 May 2024 11:33:20 +0200 Subject: [PATCH 1/3] Fix controller with namespace --- panther_controller/config/WH01_controller.yaml | 2 ++ panther_controller/config/WH02_controller.yaml | 2 ++ panther_controller/config/WH04_controller.yaml | 2 ++ panther_controller/launch/controller.launch.py | 2 +- 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/panther_controller/config/WH01_controller.yaml b/panther_controller/config/WH01_controller.yaml index d1ca2783c..519cd9907 100644 --- a/panther_controller/config/WH01_controller.yaml +++ b/panther_controller/config/WH01_controller.yaml @@ -14,6 +14,7 @@ imu_broadcaster: ros__parameters: use_namespace_as_sensor_name_prefix: true + tf_frame_prefix_enable: false sensor_name: imu frame_id: imu_link @@ -28,6 +29,7 @@ ros__parameters: left_wheel_names: ["fl_wheel_joint", "rl_wheel_joint"] right_wheel_names: ["fr_wheel_joint", "rr_wheel_joint"] + tf_frame_prefix_enable: false wheel_separation: 0.697 wheel_radius: 0.1825 diff --git a/panther_controller/config/WH02_controller.yaml b/panther_controller/config/WH02_controller.yaml index 9f3e11a6e..8b86ac421 100644 --- a/panther_controller/config/WH02_controller.yaml +++ b/panther_controller/config/WH02_controller.yaml @@ -14,6 +14,7 @@ imu_broadcaster: ros__parameters: use_namespace_as_sensor_name_prefix: true + tf_frame_prefix_enable: false sensor_name: imu frame_id: imu_link @@ -30,6 +31,7 @@ front_right_wheel_name: fr_wheel_joint rear_left_wheel_name: rl_wheel_joint rear_right_wheel_name: rr_wheel_joint + tf_frame_prefix_enable: false wheel_separation_x: 0.44 wheel_separation_y: 0.6785 diff --git a/panther_controller/config/WH04_controller.yaml b/panther_controller/config/WH04_controller.yaml index 10881ab8d..ad30d720c 100644 --- a/panther_controller/config/WH04_controller.yaml +++ b/panther_controller/config/WH04_controller.yaml @@ -14,6 +14,7 @@ imu_broadcaster: ros__parameters: use_namespace_as_sensor_name_prefix: true + tf_frame_prefix_enable: false sensor_name: imu frame_id: imu_link @@ -28,6 +29,7 @@ ros__parameters: left_wheel_names: ["fl_wheel_joint", "rl_wheel_joint"] right_wheel_names: ["fr_wheel_joint", "rr_wheel_joint"] + tf_frame_prefix_enable: false wheel_separation: 0.616 wheel_radius: 0.1016 diff --git a/panther_controller/launch/controller.launch.py b/panther_controller/launch/controller.launch.py index 3732c72cd..3f410225d 100644 --- a/panther_controller/launch/controller.launch.py +++ b/panther_controller/launch/controller.launch.py @@ -136,7 +136,7 @@ def generate_launch_description(): control_node = Node( package="controller_manager", executable="ros2_control_node", - parameters=[controller_config_path], + parameters=[robot_description, controller_config_path], namespace=namespace, remappings=[ ( From cc3fac278ab4e05ee91df00c2bb7eda0027a6604 Mon Sep 17 00:00:00 2001 From: rafal-gorecki Date: Tue, 14 May 2024 12:59:03 +0200 Subject: [PATCH 2/3] Remove const name --- panther_bringup/launch/bringup.launch.py | 2 +- panther_description/urdf/panther_macro.urdf.xacro | 2 +- panther_gazebo/launch/spawn.launch.py | 2 +- .../include/panther_hardware_interfaces/panther_imu.hpp | 1 - panther_hardware_interfaces/src/panther_imu.cpp | 5 ----- 5 files changed, 3 insertions(+), 9 deletions(-) diff --git a/panther_bringup/launch/bringup.launch.py b/panther_bringup/launch/bringup.launch.py index 180d26279..59a0717e0 100644 --- a/panther_bringup/launch/bringup.launch.py +++ b/panther_bringup/launch/bringup.launch.py @@ -313,7 +313,7 @@ def generate_launch_description(): ) other_action_timer = TimerAction( - period=7.0, + period=10.0, actions=[ battery_launch, lights_launch, diff --git a/panther_description/urdf/panther_macro.urdf.xacro b/panther_description/urdf/panther_macro.urdf.xacro index 03b74e21c..ef6505920 100644 --- a/panther_description/urdf/panther_macro.urdf.xacro +++ b/panther_description/urdf/panther_macro.urdf.xacro @@ -174,7 +174,7 @@ enu - + diff --git a/panther_gazebo/launch/spawn.launch.py b/panther_gazebo/launch/spawn.launch.py index 1686895ce..a3c05b65c 100644 --- a/panther_gazebo/launch/spawn.launch.py +++ b/panther_gazebo/launch/spawn.launch.py @@ -130,7 +130,7 @@ def launch_setup(context): # bringup.launch.py has a timerAction in it. If the timerAction in simulation.launch.py ​​is smaller than bringup.launch.py, the namespace will be overwritten, resulting creating nodes with the same namespace. group = TimerAction( - period=10.0 * idx, + period=12.0 * idx, actions=[ spawn_log, spawn_robot, diff --git a/panther_hardware_interfaces/include/panther_hardware_interfaces/panther_imu.hpp b/panther_hardware_interfaces/include/panther_hardware_interfaces/panther_imu.hpp index 17ac69e24..69f89dbde 100644 --- a/panther_hardware_interfaces/include/panther_hardware_interfaces/panther_imu.hpp +++ b/panther_hardware_interfaces/include/panther_hardware_interfaces/panther_imu.hpp @@ -144,7 +144,6 @@ class PantherImuSensor : public hardware_interface::SensorInterface std::vector imu_sensor_state_; rclcpp::Logger logger_{rclcpp::get_logger("PantherImuSensor")}; - inline static const std::string kImuSensorName = "imu"; inline static const std::array kImuInterfacesNames = { "orientation.x", "orientation.y", "orientation.z", "orientation.w", "angular_velocity.x", "angular_velocity.y", "angular_velocity.z", "linear_acceleration.x", diff --git a/panther_hardware_interfaces/src/panther_imu.cpp b/panther_hardware_interfaces/src/panther_imu.cpp index 5005f1aeb..fbda7c252 100644 --- a/panther_hardware_interfaces/src/panther_imu.cpp +++ b/panther_hardware_interfaces/src/panther_imu.cpp @@ -176,11 +176,6 @@ void PantherImuSensor::CheckSensorName() const if (!info_.sensors.size()) { throw std::runtime_error("Sensor is not defined in urdf!"); } - - if (info_.sensors[0].name != kImuSensorName) { - throw std::runtime_error( - "Wrong sensor name: '" + info_.sensors[0].name + "', '" + kImuSensorName + "' expected."); - } } void PantherImuSensor::CheckStatesSize() const From b4cf620b3d87cc9a069c0e81b236983f04a81aba Mon Sep 17 00:00:00 2001 From: rafal-gorecki Date: Tue, 14 May 2024 15:25:31 +0200 Subject: [PATCH 3/3] fix ekf --- README.md | 4 +++- panther_controller/config/WH01_controller.yaml | 1 - panther_controller/config/WH02_controller.yaml | 1 - panther_controller/config/WH04_controller.yaml | 1 - 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 72370a63a..86583d4b2 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,9 @@ if [ "$HUSARION_ROS_BUILD_TYPE" == "simulation" ]; then vcs import src < src/panther_ros/panther/panther_simulation.repos fi -cp -r src/ros2_controllers/imu_sensor_broadcaster src && rm -rf src/ros2_controllers +cp -r src/ros2_controllers/diff_drive_controller src +cp -r src/ros2_controllers/imu_sensor_broadcaster src +rm -rf src/ros2_controllers sudo rosdep init rosdep update --rosdistro $ROS_DISTRO diff --git a/panther_controller/config/WH01_controller.yaml b/panther_controller/config/WH01_controller.yaml index 519cd9907..72af2cd2e 100644 --- a/panther_controller/config/WH01_controller.yaml +++ b/panther_controller/config/WH01_controller.yaml @@ -29,7 +29,6 @@ ros__parameters: left_wheel_names: ["fl_wheel_joint", "rl_wheel_joint"] right_wheel_names: ["fr_wheel_joint", "rr_wheel_joint"] - tf_frame_prefix_enable: false wheel_separation: 0.697 wheel_radius: 0.1825 diff --git a/panther_controller/config/WH02_controller.yaml b/panther_controller/config/WH02_controller.yaml index 8b86ac421..e9d05917f 100644 --- a/panther_controller/config/WH02_controller.yaml +++ b/panther_controller/config/WH02_controller.yaml @@ -31,7 +31,6 @@ front_right_wheel_name: fr_wheel_joint rear_left_wheel_name: rl_wheel_joint rear_right_wheel_name: rr_wheel_joint - tf_frame_prefix_enable: false wheel_separation_x: 0.44 wheel_separation_y: 0.6785 diff --git a/panther_controller/config/WH04_controller.yaml b/panther_controller/config/WH04_controller.yaml index ad30d720c..df3934c8c 100644 --- a/panther_controller/config/WH04_controller.yaml +++ b/panther_controller/config/WH04_controller.yaml @@ -29,7 +29,6 @@ ros__parameters: left_wheel_names: ["fl_wheel_joint", "rl_wheel_joint"] right_wheel_names: ["fr_wheel_joint", "rr_wheel_joint"] - tf_frame_prefix_enable: false wheel_separation: 0.616 wheel_radius: 0.1016