-
Notifications
You must be signed in to change notification settings - Fork 11
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
Multi-robot simulation with MP400 #65
Comments
Hello Vineet, the multi robot simulation branch is outdated. I would suggest you to look at the branch multi-robot-sim-with-xacro . I'll update the branch to make it work for you with MP-400 and give you the update. At the moment, we are in the process of migrating our whole simulation to the modern Gazebo. We were planning to release the new simulation package in few months. For now you will be able to use the above solution. But after transition, we are not planning to support the older version of Gazebo. Sorry that you got caught in the midst of this transition. |
Thank you! |
I guess, it's all up and ready, please checkout to the multi-robot-sim-with-xacro branch. Also pull the changes from the neo_fleet_rviz2 plugin Your env variables looks fine already. Just follow the three steps (sim launch, nav launch, rviz launch):
Gzclient might hang sometimes, or there maybe an issue with loading the plugins (seg faults). In that case, you need to restart the simulation. Try to check if the process are properly killed using the system monitor (just kill everything related to ros2 and Gz over there). We still haven't localized this issue in the Gazebo package. We'll get in touch with the maintainers and get it fixed ASAP. Sorry for the inconvenience if any caused. |
Thankyou @padhupradheep! There are still issues with more than 2 robots. For example when I spawn 3 robots - the configs/mp_400/navigation_2.yaml was absent.
|
Auto generation is already in the cards.. We didn't get the time to add it though. Check: #37 For the point 2, I believe that's the point of using the |
|
No, the idea with Here is an example of the same with MPO-700. You'll not be able to just see the robot model but you can determine the position of the robots using the TF's. Here is a related link: https://neobotix-docs.de/ros/additional_features/multi_robot_setup.html |
Oh, it looks like this is not happening on my setup. I'll try to debug it and see what's wrong. The image that you have attached is what I was trying to do. I'll get back to you in some time after a little debugging! |
Check if the Gazebo plugins are loaded and there maybe cases where gzclient does not probably startup.. |
Hey, I am trying to run simulations with more than 5 number of robot and one of the major problems I am currently facing is when I launch the simulation not all the robots manage to spawn / render and even if they do some assets like lidar are not loaded properly. I generally have to relaunch the entire simulation multiple times for it to spawn properly. |
Hey Vineet, At the moment, I don't have an immediate answer for you to be honest. My assumption is that, the gazebo plugins for the lidar and differential drives requires a lot of computation along with the computations needed for the physics. I guess internally when you try to spawn the robot models, there seems to be some sort of race condition, which does not allow the models to be loaded properly resulting in a lifeless simulation. It also depends upon the computational power that your PC / Graphics card offers. I'd add it to my ToDo's for further research. |
Hey Pradheep, |
Niceee... Sure.. feel free.. |
here is a small something that could be relevant |
So this is how I went about solving that issue: https://github.com/DockDockGo/neo_simulation2/blob/0bf9fd7865e2492c45ecc0f3ea9d633b9273617f/launch/multi_robot_simulation.launch.py#L134 All the updates that I have done are right now in this repo: https://github.com/DockDockGo/neo_simulation2 Do you have any suggestions on how to reduce the overhead that is caused by launching Nav2? |
Currently, the overhead should be from the localization, right? |
Yes, that would be my guess. For simulation purpose -> should neo_localization be replaced with a dummy localization node which publishes it's pose by accessing gazebo sim environment variables? I think doing this would allow for scaling to multiple robots in simulation. |
The best way I can think of now is to make the neo_localization a lifecycle node, and set it to idle, whenever the robot is idle too. That actually requires a complete refactor of the localization node, which I've been planning to do for past few years. I hope to do it sometime soon. Until then, AMCL could be an option, because I believe it already is implemented as lifecycle. Could you give that a try and tell if that helps? else, I'd think about a work around. |
Sure! |
I tried these steps, but I am getting this error in the navigation launch file |
Hey @simayadas23 Can you check if you are able to move the robot using the teleoperation? Could be because of the following conditions, you might not be able to move the robot.
|
Hey,
I am trying to run the multirobot simulation with mp400 but the rviz plugin is glitching out.
I understand the code base is supposed to work on mpo_700.
What changes should I make to make it work with mp_400??
This command does not work for me.
My mp400 do not show up in the drop down.
My environment variables are as follows:
MY_NO_ROBOTS=3
MY_ROBOT=mp_400
MAP_NAME=neo_workshop
I am running ubuntu 22.04 and ROS2 humble.
I have checked out to the multi-robot branch of neo_simulation2 and humble branch of neo_nav2_bringup
Thank you in advance! Let me know if you need any further clarification.
The text was updated successfully, but these errors were encountered: