Skip to content
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

how to implement in move_base #3

Open
samim-17 opened this issue Jan 16, 2025 · 4 comments
Open

how to implement in move_base #3

samim-17 opened this issue Jan 16, 2025 · 4 comments

Comments

@samim-17
Copy link

I used move_base for navigating my drone and currently the global planner is Dijsktra. How can I implement this local planner to follow the global path more?

@MoffKalast
Copy link
Owner

Hmm I'm not sure, the first problem would be that this isn't actually a move_base compatible local planner, it's more of a standalone lite nav stack.

I haven't gotten around to documenting the global planning yet since it's about 90% done and not merged to main yet, but the obstacle_avoidance branch can have it take Range and LaserScan readings to identify obstacles, which it then plans around using Theta*.

In theory if the global planner from move_base outputs a Path that's not overly granular it should be possible to just remap topics and it would drive along it. The action server bit for starting, stopping, and status wouldn't really link together though (since those are standalone bool/empty topics here), so I'm not sure what happens in terms of that exactly.

@samim-17
Copy link
Author

Thanks for the information. Just another question since you are more familiar with the path planning.
Currently I'm using RTAB for SLAM in drone equiped with rpi4. For global planning I've used dijkstra but facing a little problem in choosing the local planner. What local planner you suggest If I want to follow the global path more closely and uses less computational power?

@MoffKalast
Copy link
Owner

MoffKalast commented Jan 16, 2025

Well in general none of the local planners on move_base were ever all that good even in 2D, DWA is probably the theoretical best. For Nav2 there's Pure Pursuit which works really well for land robots and doesn't use much CPU, and there's MPPI which is generally best overall but demands more compute. Not sure if any of them work well in 3D though.

Might be worthwhile to look more into what Pixhawk/Ardupilot use for this sort of thing since whatever approach they have is actually designed for flying robots and it's able to run on microcontrollers, and then implement something adhoc?

FWIW this package also assumes 2D XY movement since it was designed around AGVs and USVs, so it likely won't be much help.

@samim-17
Copy link
Author

Thank you so much for the information. Will look forward into it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants