Lee-JaeWon / Multi-Turtlebot3-Cartographer-And-Localization

Multi robots perform mapping or localization and navigation.
MIT License
17 stars 1 forks source link

What changes need to do.. #1

Closed PVijayaGanesh closed 1 month ago

PVijayaGanesh commented 6 months ago

What changes need to do?? If i want to do colcon build instead of catkin_make for ros1 noetic..?

please help me for this @Lee-JaeWon

Lee-JaeWon commented 6 months ago

@PVijayaGanesh This is an entirely different issue.

You would have to find a cartographer for ROS2 and figure out how to place multiple robots within that system.

Lee-JaeWon commented 6 months ago

@PVijayaGanesh

For cartographer, see below, and you'll probably need a Nav2 configuration.

https://ros2-industrial-workshop.readthedocs.io/en/latest/_source/navigation/ROS2-Cartographer.html

PVijayaGanesh commented 6 months ago

Thankyou for reply..

I need to add in my workpase which i building colcon build for Noetic Only..

Can you help me what changes need to to run it on three burger turtlebots... 1) Change map 2) change positions of bots in Map are enough..

please help me with the changes I have to do...

Thankyou in advance

@Lee-JaeWon

Lee-JaeWon commented 6 months ago

@PVijayaGanesh sorry for late reply.

It's not that simple.

First of all, noetic is not a colcon build, you'll have to use foxy or humble or something.

The sequence you'll probably need to do is something like this

  1. configure a cartographer for ros2
  2. load a single turtlebot burger in ros2
  3. match the map frame in cartographer with turtlebot's map frame(need to see turtlebot on map in rviz2)
  4. modify the namespace of turtlebot burger to increase the number of turtlebots to three

I'm not sure if I'm understanding your question correctly.

Please be a little more specific in your question.

If I have time next week, I'll try to reconfigure and update the new repositories.

Please feel free to ask questions.

Thank you.

PVijayaGanesh commented 6 months ago

@Lee-JaeWon

Thanks for the reply..

Actually I want to do Three Bot Navigation in my own map. I am asking you changinig map is enough to do it in Noetic with catkin_make only..

If changes need in any script means what changes need to do?? I am not writing any code or launch files. I will use your repo for multibot navigation..

Thankyou for your reply in advance...

Lee-JaeWon commented 6 months ago

@PVijayaGanesh Take a look at the code below

https://github.com/Lee-JaeWon/Multi-Turtlebot3-Cartographer-And-Localization/blob/main/launch/tb3_localization.launch#L24

You probably have a .pgm and a .yaml.

Just modify those lines with your directory and names and you're ready to use your map.

PVijayaGanesh commented 6 months ago

Thankyou @Lee-JaeWon I got clear idea..

This is out of our conversations..

I am using Burger Turtlebots.I am using Opencr with ros2 dashing flashed and rb5 board with noetic docker container. when i am trying bringup the turtlebot using this command..

command: roslaunch turtlebot3_bringup turtlebot3_robot.launch

Error: root@qrb5165-rb5:~/ff_ros1_ws# roslaunch turtlebot3_bringup turtlebot3_robot.launch ... logging to /root/.ros/log/da921bc6-e77e-11ee-a97c-f074e4055daf/roslaunch-qrb5165-rb5-2123.log Checking log directory for disk usage. This may take a while. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://qrb5165-rb5:40691/

SUMMARY

PARAMETERS

NODES / turtlebot3_core (rosserial_python/serial_node.py) turtlebot3_diagnostics (turtlebot3_bringup/turtlebot3_diagnostics) turtlebot3_lds (hls_lfcd_lds_driver/hlds_laser_publisher)

auto-starting new master process[master]: started with pid [2131] ROS_MASTER_URI=http://localhost:11311/

setting /run_id to da921bc6-e77e-11ee-a97c-f074e4055daf process[rosout-1]: started with pid [2141] started core service [/rosout] process[turtlebot3_core-2]: started with pid [2148] process[turtlebot3_lds-3]: started with pid [2149] process[turtlebot3_diagnostics-4]: started with pid [2150] [INFO] [1711024253.533947]: ROS Serial Python Node [INFO] [1711024253.539937]: Connecting to /dev/ttyACM0 at 115200 baud [INFO] [1711024255.653634]: Requesting topics... [ERROR] [1711024270.664243]: Unable to sync with device; possible link problem or link software version mismatch such as hydro rosserial_python with groovy Arduino [INFO] [1711024270.683843]: Requesting topics...

I am thinking that If you have any idea what i have to do next. It would be help full for me.. @Lee-JaeWon

I have other doubt need to change that Opencr flashed to ROS1 to compatible for rb5 with container Noetic..

Lee-JaeWon commented 6 months ago

@PVijayaGanesh

I'm not sure why opencr is ros2 and rb is ros1, it seems like they should be the same, or at least ros1 or ros2.

I always used to run a real turtlebot3, referenced the link below.

https://emanual.robotis.com/docs/en/platform/turtlebot3/quick-start/

https://emanual.robotis.com/docs/en/platform/turtlebot3/bringup/#bringup

Also, set your addresses carefully.

http://localhost:11311/ should be set to a specific address as far as I know.

Getting a real turtlebot running is tricky and takes time.

If you actively show errors and ask questions, I'll try to help.

Screenshot from 2024-03-24 23-12-52