that run applications developed with FreeRTOS, and has
also developed additional tools that provide functions that
OpenOCD does not support natively. One of the applications
developed by Espressif is useful to write the program in the
Flash memory of the µC and monitor its functioning through
diagnostic messages (logging) using a serial terminal.
The developed controller includes the necessary con-
nections for debugging using JTAG, which must work in
conjunction with a JTAG-to-USB adapter that has OpenOCD
support. On the Espressif webpage, the users can find the
design of an adapter board (ESP-Prog) that meets this
objective. ESP-Prog [34] is a development and debugging
hardware from Espressif which connects to a PC via a USB
cable.
E. Experimental evaluation
In a first stage, the design of each of the circuits that
make up the controller was validated independently. After
the design and final manufacturing of the controller PCB,
the corresponding integration tests were carried out.
The controller was mounted on the RoMAA robotic
research platform for the functional verification. In the
uploaded video
1
, the operation of the robot controlled from a
mobile phone through web access can be observed. Jointly,
an application that runs on the microcontroller to test the
functioning of each component of the board was developed.
This program was uploaded to the project repository. As
mentioned, the test program generates an HTTP server and
configures a WiFi network using the communication module
included in the SoC, allowing it to be accessed from a
web browser running on an external PC connected to said
network.
This program generates a web user interface whose main
functionalities are:
1) Actuating on each of the robot motors, adjusting their
speeds.
2) Actuating on the controller indicator LEDs.
3) Reading the pulse counters of the incremental optical
encoders.
4) Reading the battery voltages.
5) Reading the state of the controller pushbuttons.
6) Communicating via WiFi.
Furthermore, as mentioned, the correct functioning of
the micro-ROS environment with support for ESP32 was
evaluated by building and flashing in the controller an ex-
ample of a ROS node. This node is built using the ESP-IDF
framework and makes use of FreeRTOS. The node publishes
a standard message over a ROS topic and communicates
through a WiFi network. In a remote PC with connection to
the same network, the correct reception of the messages is
verified by running a ROS 2 agent that executes in a Docker
container.
IV. CONCLUSION AND FUTURE WORK
As a final result of the presented development, the
hardware of a controller for differential-drive robots was
obtained. It replaces a previous design used for more than
10 years at CIII. This new controller is based on a modern
1
https://www.youtube.com/watch?v=9FsznQ60jsQ
SoC that has native support for ROS 2 through its version for
embedded systems, micro-ROS; which was one of the main
design requirements. The new controller also presents some
improvements compared to the previous version: it uses a
switching power supply to optimize energy consumption,
it has a conditioning circuit for measuring the voltage
of the robot’s battery, it has general-purpose inputs and
outputs, and has the possibility of wireless communication
via WiFi. Along with the hardware development, some test
applications of the Expressif ESP32 SoC that the controller
has were carried out.
To validate the correct functioning of the controller, a test
application–based on an HTTP server–that allows actuating
and monitoring the correct functioning of all the components
of the controller was developed. This test application was
uploaded to the project repository. In addition, the necessary
documentation to setup up the software development frame-
work for the ESP32 SoC, provided by Espressif, as well as
the software for the implementation of micro-ROS nodes in
said SoC, are included. In both cases, Docker containers are
used, which makes installation and startup easier. This will
allow to carry out the software development stage that will
implement the final robotics application of the controller as
a micro-ROS node.
Future work will include the development of applications
for the evaluation and characterization of the operation
of each component of the controller in an independent
way, such as wheel speed measurement using incremental
optical encoders, battery voltage measurement, and other
subsystems. The aim is to finally develop an integrated
application for controlling a robot based on micro-ROS, in
order that those robots that use the controller have direct
support for ROS 2.
ACKNOWLEDGMENT
This work is funded by the National University of Tech-
nology under the grant UTN-PID 8477, “Navigation and
control of an AMR-type industrial mobile robot based on
ROS 2”. We thank Mar
´
ıa Laura Guerrini for the English
language editing of the manuscript.
REFERENCES
[1] A. Moshayedi, J. Li, and L. Liao, “AGV (automated guided vehicle)
robot: Mission and obstacles in design and performance,” Journal
of Simulation & Analysis of Novel Technologies in Mechanical
Engineering, vol. 12, pp. 5–0018, 11 2019.
[2] G. Ullrich, Automated Guided Vehicle Systems: A Primer with Practi-
cal Applications. Springer Publishing Company, Incorporated, 2014.
[3] L. Lynch, T. Newe, J. Clifford, J. Coleman, J. Walsh, and D. Toal,
“Automated Ground Vehicle (AGV) and sensor technologies- a re-
view,” in 2018 12th International Conference on Sensing Technology
(ICST), 2018, pp. 347–352.
[4] F. Gul, S. S. N. Alhady, and W. Rahiman, “A review of
controller approach for autonomous guided vehicle system,”
Indonesian Journal of Electrical Engineering and Computer Science,
vol. 20, no. 1, pp. 552–562, oct 2020. [Online]. Available:
https://doi.org/10.11591/ijeecs.v20.i1.pp552-562
[5] C. Ilas, “Electronic sensing technologies for autonomous ground ve-
hicles: A review,” in 2013 8TH International Symposium on Advanced
Topics in Electrical Engineering (ATEE), 2013, pp. 1–6.
[6] IFR, “Service robots,” https://ifr.org/service-robots.
[7] C. Cronin, A. Conway, and J. Walsh, “State-of-the-art review of au-
tonomous intelligent vehicles (AIV) technologies for the automotive
and manufacturing industry,” in 2019 30th Irish Signals and Systems
Conference (ISSC), 2019, pp. 1–6.
Revista elektron, Vol. 7, No. 2, pp. 53-60 (2023)
http://elektron.fi.uba.ar