ros2_controllers icon indicating copy to clipboard operation
ros2_controllers copied to clipboard

Added tf_prefix to the left_wheel_names and right_wheel_names to solve Gazebo plugin issue.

Open suchetanrs opened this issue 1 year ago • 5 comments

The tf prefix is added to the odom_frame_id and the base_frame_id. However, it is not done to the left_wheel_names and right_wheel_names.

The differential drive controller is often used as a gazebo plugin like below.

    <gazebo>
      <plugin filename="libgazebo_ros2_control.so" name="gazebo_ros2_control">
        <namespace>${robot_namespace}</namespace>
        <robot_param>robot_description</robot_param>
        <robot_param_node>robot_state_publisher</robot_param_node>
        <parameters>package://robot_description/config/robot_control.yaml</parameters>
      </plugin>
    </gazebo>

Since this is defined inside a xacro, the Rewritten yaml cannot be used to add namespaces to joints. Adding the namespace in the cpp file bypasses this issue. In the PR, the convention is followed. That is, "robot_namespace/left_wheel_name". Please let me know if I need to change it in any other place. The modified changes solves my issue and seems to run correctly on the Gazebo simulator.

suchetanrs avatar Nov 13 '23 09:11 suchetanrs

Please fix the issues reported by the "Format" stage by running pre-commit run --all locally and adding the changes to the PR

bmagyar avatar Nov 30 '23 18:11 bmagyar

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 71.78%. Comparing base (9f7e9e9) to head (9078dd0). Report is 29 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff             @@
##           master     #831       +/-   ##
===========================================
+ Coverage   47.71%   71.78%   +24.06%     
===========================================
  Files          41       41               
  Lines        3871     3643      -228     
  Branches     1833     1786       -47     
===========================================
+ Hits         1847     2615      +768     
+ Misses        751      715       -36     
+ Partials     1273      313      -960     
Flag Coverage Δ
unittests 71.78% <100.00%> (+24.06%) :arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
...iff_drive_controller/src/diff_drive_controller.cpp 69.09% <100.00%> (+21.03%) :arrow_up:

... and 34 files with indirect coverage changes

codecov[bot] avatar Nov 30 '23 19:11 codecov[bot]

Hi @bmagyar ! After fixing the format issues, I synced my fork with the master since its been a while. I now have a build error in rolling binary build / binary (main). All the other checks seem to pass. is it ok?

suchetanrs avatar Feb 24 '24 20:02 suchetanrs

Hi @bmagyar ! After fixing the format issues, I synced my fork with the master since its been a while. I now have a build error in rolling binary build / binary (main). All the other checks seem to pass. is it ok?

Rolling binary build on main fails because of an API break, which hasn't been synced yet. That's fine and unrelated to this PR.

christophfroehlich avatar Feb 24 '24 21:02 christophfroehlich

Ah I see! Thanks @christophfroehlich :D

suchetanrs avatar Feb 24 '24 22:02 suchetanrs