-
Notifications
You must be signed in to change notification settings - Fork 148
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
SpawnEntity, DeleteEntity, SetPose Services #363
Comments
This would be a nice addition. A PR would be welcome 😉 . |
I can give it a good go. First open source contribution attempt aha |
How is the progress on implementing these services? I would also like to help if needed. |
I've begun work on this fork and hacked a solution for my own purposes here: https://github.com/retinfai/ros_gz But more tweaking is needed before I want to submit for review. Would love collaboration – I haven't found a lot of time recently. |
which ros2 version and gazebo version are you using? I am running humble and garden. |
I'm using that too. ROS2 Humble & Gazebo Garden |
Cool, what do you think still needs to be done? You seemed to have all of the features working. I am mainly interested in the set_pose service and it works on my side as well. |
It's more like it's incomplete. I don't convert every field. But for set pose specifically, it gets confusing for me when gz.msgs.Pose doesn't map one to one to anything in the ROS side, so want to know the best practice for mapping 1 to N and vice versa. Set pose request (Entity and Pose on the ROS side) map to gazebo Pose but not all fields in Entity and Pose are used, so I exclude them. That sort of thing I'm glad it works on your side. Now that I think about it, you're right: just need to iron out some things |
I was wondering how to set the location of an entity spawned within Gazebo Garden. |
This is definitely supported. Checkout the message definition https://github.com/gazebosim/gz-msgs/blob/gz-msgs9/proto/gz/msgs/entity_factory.proto#L65 |
@azeey Looks like during spawn only by reading at the comment. |
If you're talking about the bridge supporting you're correct. But if you're talking about gazebo supporting it, gazebo does have a /model//set_pose service or something similar. You can call from a process |
@retinfai I'm not an expert but to call a gazebo service from a ros node, I need the bridge support ? |
That's correct, calling the service from a Ros node does require bridge support . Just wanted to clarify. In saying that, you can pull the fork, which does support it, while I fix issues and create a PR |
@retinfai Yes I'll do that! Thanks for the help |
Desired behavior
ros_gz_bridge support SpawnEntity, DeleteEntity, and SetPose services, so I can access them through ROS2 client calls.
Alternatives considered
Running gz services through Subprocesses
Implementation suggestion
Is it just
ros_gz_bridge/src/service_factories/ros_gz_interfaces.cpp
that needs to be changed? Not too sure, but just a thought.Additional context
Gazebo Garden, ROS2 Humble.
The interfaces for the services, request types, and response types are already supported in
ros_gz_interfaces
or otherThe text was updated successfully, but these errors were encountered: