-
-
Notifications
You must be signed in to change notification settings - Fork 157
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
Renan/webots ros2 cpp #212
Conversation
DeepCode failed to analyze this pull requestSomething went wrong despite trying multiple times, sorry about that. |
Very nice! Thank you for this initiative!
Yes, we want to do everything through What is your motivation behind this? We have been considering moving everything to C++ because of This is a very big change (most probably needed one). Therefore, we have to understand challenges quite well and tailor the design carefully. We should keep the following in mind:
|
I was the main contributor of the Miron-Project, which uses Webots simulator and ROS1 to test some academic research (mainly contextual navigation). The project ended in 2020. In my spare time, I started to learn ROS2 and to integrate Navigation2 (ROS2) on the same Tiago project. My goal was to accomplish the same results with ROS2. I manage to integrate everything with the webots_ros2 python package, but I am getting huge offsets in localization and problems to set goals sometimes (I think ROS2/Navigation2 is not stable yet or maybe the problem is mixing python with C++ ? I have to debug). Currently, I am working with Gazebo (at my current job), but I like to explore other simulators in my spare time. I had a nice experience with Webots before, I like the webots_ros API and I think webots_ros2 is a nice start to play with ROS2. And, I will probably try multi-robot soon on webots ROS1, because I am not happy with Gazebo for this particular purpose. I will take a look at the ros2_control and the other links you shared, in my spare time, and share with you my thoughts on this integration. But, as you said, this is a big change and it requires a well thought (software architect) design. This draft is currently only a ROS2-cpp version of some sensors (not IMU, which should be in ros2_control). |
Nice project!
Maybe the odometry is not correct, like wheel separation or wheel radius, or there is some bug in sampling? Anyhow,
We can have a video call to discuss the new design :) I will try to specify some design ideas before. |
That would be great. Feel free to add me to a channel where we can discuss it. |
Implemented in #221 |
Description
Webots-ROS2 Cpp interface
It requires a lot of sensors and controllers integration yet, but it is a starting point.
It needs an example (launch file with the
wb_task_node
).And a minimal diff_driver_controller (ros2_control integration?).
Please feel free to improve.
In the core, It adds a launch file to just launch webots simulator without controllers (because that would be a job for the cpp node).
Affected Packages
List of affected packages: