Skip to main content

Writing Global Path Planners Plugins in ROS: A Tutorial

  • Chapter
  • First Online:
Robot Operating System (ROS)

Part of the book series: Studies in Computational Intelligence ((SCI,volume 625))

Abstract

In this tutorial chapter, we demonstrate how to integrate a new planner into ROS and present their benefits. Extensive experimentations are performed to show the effectiveness of the newly integrated planners as compared to Robot Operating System (ROS) default planners. The navigation stack of the ROS open-source middleware incorporates both global and local path planners to support ROS-enabled robot navigation. Only basic algorithms are defined for the global path planner including Dijkstra, A*, and carrot planners. However, more intelligent global planners have been defined in the literature but were not integrated in ROS distributions. This tutorial was developed under Ubuntu 12.4 and for ROS Hydro version. However, it is expected to also work with Groovy (not tested). A repository of the new path planner is available at https://github.com/coins-lab/relaxed_astar. A video tutorial also available at https://www.youtube.com/playlist?list=PL8UbFU8tzwRjkxccq2zLkmTkOOYela5fu.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 189.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 249.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 249.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Relaxed A*. https://github.com/coins-lab/relaxed_astar (2014)

  2. Robot Operating System (ROS). http://www.ros.org

  3. K. Wyrobek, E. Berger, H. Van der Loos, J. Salisbury, Towards a personal robotics development platform: rationale and design of an intrinsically safe personal robot, in IEEE International Conference on Robotics and Automation, ICRA 2008 (IEEE, 2008), pp. 2165–2170

    Google Scholar 

  4. M. Quigley, E. Berger, A.Y. Ng, STAIR: hardware and software architecture, in AAAI, Robotics Workshop (Vancouver, BC 2007), pp. 31–37

    Google Scholar 

  5. E. Marder-Eppstein, E. Berger, T. Foote, B. Gerkey, K. Konolige, The office marathon: robust navigation in an indoor office environment, in 2010 IEEE International Conference on Robotics and Automation (ICRA), May 2010, pp. 300–307

    Google Scholar 

  6. P. Goebel, ROS By Example, edited by. Lulu. http://www.lulu.com/shop/r-patrick-goebel/ros-by-example-hydro-volume-1/ebook/product-21393108.html (2013)

  7. OpenSLAM. https://openslam.org/

  8. G. Grisetti, C. Stachniss, W. Burgard, Improved techniques for grid mapping with rao-blackwellized particle filters. IEEE Trans. Robot. 23(1), 34–46 (2007)

    Article  Google Scholar 

  9. S. Thrun, D. Fox, W. Burgard, F. Dellaert, Robust Monte Carlo localization for mobile robots. Artif. Intell. 128(1–2), 99–141 (2000)

    Google Scholar 

  10. Adding a global path planner as plugin in ROS. http://www.iroboapp.org/index.php?title=Adding_A_Global_Path_Planner_As_Plugin_in_ROS

  11. Writing a global path planner as plugin in ROS. http://wiki.ros.org/navigation/Tutorials/Writing%20A%20Global%20Path%20Planner%20As%20Plugin%20in%20ROS

  12. E.W. Dijkstra, A note on two problems in connexion with graphs. Numerische Mathematik 1(1), 269–271 (1959)

    Article  MathSciNet  MATH  Google Scholar 

  13. B.P. Gerkey, K. Konolige, Planning and control in unstructured terrain, in Workshop on Path Planning on Costmaps, Proceedings of the IEEE International Conference on Robotics and Automation (ICRA) (2008)

    Google Scholar 

  14. D. Fox, W. Burgard, S. Thrun, The dynamic window approach to collision avoidance. IEEE Robot. Autom. Mag. 4(1), 23–33 (1997)

    Article  Google Scholar 

  15. Carrot planner header. http://docs.ros.org/hydro/api/carrot_planner/html/carrot_planner_8h_source.html

  16. Carrot planner source. http://docs.ros.org/hydro/api/carrot_planner/html/carrot_planner_8cpp_source.html

  17. Pluginlib package. http://wiki.ros.org/pluginlib

  18. Plugin description file. http://wiki.ros.org/pluginlib/PluginDescriptionFile

  19. Plugin export. http://wiki.ros.org/pluginlib/PluginExport

Download references

Acknowledgments

This work is supported by the iroboapp project “Design and Analysis of Intelligent Algorithms for Robotic Problems and Applications” under the grant of the National Plan for Sciences, Technology and Innovation (NPSTI), managed by the Science and Technology Unit of Al-Imam Mohamed bin Saud University and by King AbdulAziz Center for Science and Technology (KACST). This work is also supported by the myBot project entitled “MyBot: A Personal Assistant Robot Case Study for Elderly People Care” under the grant from King AbdulAziz City for Science and Technology (KACST).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Maram Alajlan .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Alajlan, M., Koubâa, A. (2016). Writing Global Path Planners Plugins in ROS: A Tutorial. In: Koubaa, A. (eds) Robot Operating System (ROS). Studies in Computational Intelligence, vol 625. Springer, Cham. https://doi.org/10.1007/978-3-319-26054-9_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-26054-9_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-26052-5

  • Online ISBN: 978-3-319-26054-9

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics