Open cccleon opened 1 year ago
Hi @cccleon , can you please update your feature request to follow the template?
<!-- If you're not sure on the specifics of the feature or would like a broader
discussion, please consider posting a proposal to
http://community.gazebosim.org/ instead.-->
## Desired behavior
<!-- Describe the current problem and the feature you want implemented.-->
## Alternatives considered
<!-- Describe alternate solutions or features you've considered.-->
## Implementation suggestion
<!-- Provide a suggestion on how to implement this feature, which could help us
expedite this implementation.-->
## Additional context
<!-- Provide any other additional context (e.g., screenshots) about your feature
request.-->
It looks like the MecanumDrive system lacks an updateOdometry function unlike the ackermann and diffDrive systems. To get odom and TF you'll need to first calculate accurate odom for a Mec drive, and then copy that odom message exactly over to a Pose_V message for Tf. The publishers are in the mec drive file, but unused.
It looks like the MecanumDrive system lacks an updateOdometry function unlike the ackermann and diffDrive systems. To get odom and TF you'll need to first calculate accurate odom for a Mec drive, and then copy that odom message exactly over to a Pose_V message for Tf. The publishers are in the mec drive file, but unused.
Thanks for your reply. You are right. The publisher is defined in line 308 but unused.
Add updateOdometry function in MecanumDrive.cc
Caculate the odometry message from joint states and publish.
Maybe users can specify the
Hi @cccleon , can you please update your feature request to follow the template?
<!-- If you're not sure on the specifics of the feature or would like a broader discussion, please consider posting a proposal to http://community.gazebosim.org/ instead.--> ## Desired behavior <!-- Describe the current problem and the feature you want implemented.--> ## Alternatives considered <!-- Describe alternate solutions or features you've considered.--> ## Implementation suggestion <!-- Provide a suggestion on how to implement this feature, which could help us expedite this implementation.--> ## Additional context <!-- Provide any other additional context (e.g., screenshots) about your feature request.-->
Thanks for your reply! I think the problem is the lack of updateOdometry function as @andyblarblar mentioned.
Add updateOdometry function in MecanumDrive.cc
Caculate the odometry message from joint states and publish.
Maybe users can specify the
Hi @danilogsch,
thank you for your contributions! I added some comments in the gz-math PR https://github.com/gazebosim/gz-math/pull/486
Feel free to ask any question you have!
HI @ahcorde , I resolved most of it, on the gz-sim PR I am not able to rebase and sign off the commit, I am closing that to open a new one.
Thanks for your excellent work! I use the mecanum plugin in my sdf file: `<plugin filename="ignition-gazebo-mecanum-drive-system" name="ignition::gazebo::systems::MecanumDrive">
By running 'ign topic -l', I can see the topic "/model/xxx/odometry", but I get nothing when I echo this topic. Additionally, "odom" frame is not in the TF tree, and there is no element like "publish_odom_tf" or "odom_frame" in MecanumDrive.cc, which can be found in the source code of navigation2 tutorial(diff-drive) .The tutorial uses 'libgazebo_ros_diff_drive.so', but I can't find the mecanum_drive.so