Revista Elektrón (Dec 2023)

Differential-drive Mobile Robot Controller with ROS 2 Support

  • Gustavo Albarran,
  • Juan Nicolodi,
  • Dante Ruiz,
  • Diego Gonzalez-Dondo,
  • Gonzalo Perez-Paina

DOI
https://doi.org/10.37537/rev.elektron.7.2.184.2023
Journal volume & issue
Vol. 7, no. 2
pp. 53 – 60

Abstract

Read online

Autonomous Mobile Robots, known as AMRs, are used in the internal logistics of many types of industries and production sectors. This type of robots replaces the traditional Automated Guided Vehicles (AGVs). In the case of AGVs, the path to follow is previously defined, and these robots do not have the ability to choose a different path. On the other hand, AMRs are more flexible, safe, and precise, due to the incorporation of technologies reserved until recently for research, such as autonomous navigation, computer vision systems, and Simultaneous Localization and Mapping (SLAM) technology, among others. Many of these technologies are implemented using the Robot Operating System (ROS). ROS is a set of free and open-source software libraries and tools for building robot applications. Its new version, ROS 2, was developed to be applied to production environments. This paper describes the development of a controller for a differential-drive AMR with support for ROS 2 using its implementation for embedded systems, micro-ROS. This controller is the evolution of a previous version that was used in different mobile robots for over 10 years at CIII (UTN). It is worth clarifying that this work is mainly focused on hardware development. However, some preliminary software tests have been carried out, mainly to evaluate the correct functioning of the differential-drive robot controller. Firstly, the design requirements are defined, and a microcontroller with native support for micro-ROS is selected. Then, the development of each controller stage is described, such as the power supply, the USB communication, the battery voltage sensing, the debugging port, and the final PCB design. Finally, the initial software tests that allow verifying the correct operation of the controller and the improvements compared to the previous version are mentioned.

Keywords