Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Description fixes #200

Merged
merged 5 commits into from
Mar 8, 2023
Merged

Conversation

roni-kreinin
Copy link
Collaborator

Description

For the bumper I have renamed the main link that sets the visual and collision to "bumper" and added a "bump_front_center" dummy link for the front center bump sensor. This way the transform published by the robot does not offset the bumper mesh.

For the wheel drops I added a static transform publisher for each wheel.

Fixes #125 and #170.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)

How Has This Been Tested?

Tested on physical robot. RVIZ no longer shows the wheel drop error and the bumper is in the correct position.

image

image

Checklist

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation

justinIRBT
justinIRBT previously approved these changes Mar 7, 2023
@alsora
Copy link
Contributor

alsora commented Mar 7, 2023

Hi @roni-kreinin, I tested this PR but I see some problems.

  • on gazebo classic: I still get the RViz errors for wheels and wheel drops (all other transforms are ok)
    Screenshot from 2023-03-07 11-04-41

  • on gazebo ignition: it looks like neither the /odom topic nor the odom TF frame are present.
    This error is not related to this PR, but it prevents me from validating it (Rviz shows errors for all frames).
    Note that I already included Remap odom topic #206
    I checked with ros2 topic info /odom --verbose and there are no publishers for the topic (only the subscribers that we define in the create 3 simulator nodes), I think that the diff drive controller is not being loaded (I don't see logs about it crashing)

@roni-kreinin
Copy link
Collaborator Author

@alsora With the latest changes I am able to see the odom topic correctly.

~/create3_ws/src# ros2 topic info /odom --verbose
Type: nav_msgs/msg/Odometry

Publisher count: 1

Node name: diffdrive_controller
Node namespace: /
Topic type: nav_msgs/msg/Odometry
Endpoint type: PUBLISHER
GID: 01.10.27.94.d9.0b.90.04.2d.70.f3.e1.00.00.69.03.00.00.00.00.00.00.00.00
QoS profile:
  Reliability: RELIABLE
  History (Depth): KEEP_LAST (1)
  Durability: VOLATILE
  Lifespan: Infinite
  Deadline: Infinite
  Liveliness: AUTOMATIC
  Liveliness lease duration: Infinite

Subscription count: 2

Node name: motion_control
Node namespace: /
Topic type: nav_msgs/msg/Odometry
Endpoint type: SUBSCRIPTION
GID: 01.10.a0.d9.79.9a.f6.ec.36.fd.43.74.00.00.5a.04.00.00.00.00.00.00.00.00
QoS profile:
  Reliability: BEST_EFFORT
  History (Depth): KEEP_LAST (5)
  Durability: VOLATILE
  Lifespan: Infinite
  Deadline: Infinite
  Liveliness: AUTOMATIC
  Liveliness lease duration: Infinite

Node name: robot_state
Node namespace: /
Topic type: nav_msgs/msg/Odometry
Endpoint type: SUBSCRIPTION
GID: 01.10.ad.7a.5f.93.83.2a.98.20.3c.2b.00.00.19.04.00.00.00.00.00.00.00.00
QoS profile:
  Reliability: BEST_EFFORT
  History (Depth): KEEP_LAST (5)
  Durability: VOLATILE
  Lifespan: Infinite
  Deadline: Infinite
  Liveliness: AUTOMATIC
  Liveliness lease duration: Infinite

Although I can see that the QoS are not the same.

I still see the errors in RViz when the fixed frame is odom though. From the tf tree I can see that the transforms for the wheeldrops are not being stamped with sim time, which may be the issue.

image

@alsora
Copy link
Contributor

alsora commented Mar 7, 2023

The sim-time thing was reported here #203 with a proposed fix.

@roni-kreinin
Copy link
Collaborator Author

roni-kreinin commented Mar 7, 2023

Yep, that fixed it.

I will test if the static transforms are needed after this fix.

@roni-kreinin
Copy link
Collaborator Author

image

Looks good to me.

Removed static transforms for wheeldrops
Copy link
Contributor

@alsora alsora left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tested the PR successfully both on Gazebo Classic and Ignition

@alsora alsora merged commit f8ab281 into iRobotEducation:main Mar 8, 2023
alsora pushed a commit that referenced this pull request May 15, 2023
* Renamed bumper mesh link to "bumper", added dummy bumper zone for "bump_front_center.

* Added static transform publishers for left and right wheel drop links.

* Added /tf_static remapping to allow namespacing

* Added use_sim_time paramter to joint_state_publisher
Removed static transforms for wheeldrops
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

RViz2 Link Issue: No Transform from left wheel to odom
3 participants