Abstract
Our research aims to integrate FreeRTPS, a portable and minimalist RTPS (Real-Time Publisher-Subscriber), an implementation that provides an option for embedded ROS2 (Robot Operating System), applications where RAM(Random Access Memory)/ROM(Read-Only Memory) size is a critical factor, with FreeRTOS, a free real-time operating system for microcontrollers and small microprocessors. As a result, we have a portable system that enables sensing and the possibilities of real-time processing, while communicating with ROS2 nodes in small and low-cost devices. Even having tools to implement internal real-time processing the system not ensure that the communication with other nodes will have real time constraints, once that we look for processing and not communication real-time. Real-time processing is an important component especially in Robotics where many applications require some data processing as it comes in, what means that they need processing with time requirements. The chapter shows some concepts, how the system was developed, how to implement it on the STM32F4 microcontroller and some tests to show its capabilities. The main system was developed under Ubuntu 16.04, with a STM32F4 microcontroller, and the portability test was made under Microsoft Windows 10, with a Texas Instruments LM3S Stellaris board. All presented components are published on the wiki ROS link: http://wiki.ros.org/FreeRTPS%2BFreeRTOS.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
J. Kay, Introduction to Real-time Systems (2017), http://design.ros2.org/articles/realtime_background.html
J.A. Stankovic, Misconceptions about real-time computing: a serious problem for next-generation systems. Computer 21(10), 10–19 (1988). https://doi.org/10.1109/2.7053. ISSN: 0018-9162
M. Quigley, Bridging ROS to Embedded Systems: A Survey (2017), https://roscon.ros.org/2013/wp-content/uploads/2013/06/ros_and_embedded_systems.pdf
M. Quigley, ROS 2 on ‘small’ Embedded Systems (2017), https://roscon.ros.org/2015/presentations/ros2_on_small_embedded_systems.pdf
J. Kay, A. Tsouroukdissian, Real-Time Performance in ROS2 (2017), https://roscon.ros.org/2015/presentations/RealtimeROS2.pdf
T. Nagle., C. Philips, Digital Control Systems - Analysis and Design (Pearson Prentice Hall, 1995)
F.E. Páez et al., FreeRTOS user mode scheduler for mixed critical systems, in 2015 Sixth Argentine Symposium and Conference on Embedded Systems (CASE) (2015)
Escalonamento em Sistemas de Tempo Real (2018), http://www.ece.ufrgs.br/~fetter/ele213/sched.pdf
rosserial (2017), http://wiki.ros.org/rosserial
rosbridge suite (2017), http://wiki.ros.org/rosbridge_suite
uROSnode: a middleware targeted to embedded systems (2017), https://github.com/openrobots-dev/uROSnode
rosc (2017), http://wiki.ros.org/rosc
FreeRTPS (2017), https://github.com/ros2/freertps/wiki
R.M.A. de Almeida, Troca de contexto segura em sistemas operacionais utilizando técnicas dedetecção e correção de erros. Ph.D thesis. Universidade Federal de Itajubá, 2013
César Augusto Marcelino dos Santos. Sistema Dinâmico de Economia de Energia em RTOS. MA thesis. Universidade Federal de Itajubá (2017)
A. Silberschatz, P.B. Galvin, G. Gagne, Operating System Concepts, 9th edn. (Wiley, New Jersey, 2009)
H.M. Deitel, P.J. Deitel, D.R. Choffnes, Sistemas Operacionais (Pearson Education, 2005). ISBN: 85-7605-011-0
Multitasking (2017), http://www.freertos.org/implementation/a00004.html
License Details (2017), http://www.freertos.org/a00114.html
FreeRTOS FAQ - What is This All About? (2017), http://www.freertos.org/FAQWhat.html#WhyUseRTOS
FreeRTOS+UDP (2017), http://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_UDP/FreeRTOS_Plus_UDP.shtml
W.F. Lages. Sistemas de Tempo Real. Editora UFRGS (2014). ISBN: 978-85-386-0234-7
K. Ogata, Engenharia de controle moderno (Pearson Prentice Hall, 2011). ISBN: 9788576058106
Q. Li, C. Yao, Real-Time Concepts for Embedded Systems (CMP Books, Taylor & Francis, 2003). ISBN: 9781578201242
E. de Souza Leal, Projeto de uma controladora Single Loop com arquitetura ARM. MA thesis. Universidade Federal de Itajubá (2012)
M.S. Fadali., A. Visioli, Digital Control Engineering: Analysis and Design, Analysis and Design Series. (Elsevier Science, 2009). ISBN: 9780080922867
W. Woodall, ROS on DDS (2017), http://design.ros2.org/articles/ros_on_dds.html
Why ROS2 (2017), http://design.ros2.org/articles/why_ros2.html
ROS 2 middleware interface (2017) http://design.ros2.org/articles/ros_middleware_interface.html
Proposal for Implementation of Real-time Systems in ROS 2 (2017), http://design.ros2.org/articles/realtime_proposal.html
RTPS Introduction (2017), http://www.eprosima.com/index.php/resources-all/rtps
Prerequisites (2017), https://github.com/ros2/freertps/wiki/Prerequisites
Introdução ao JSON (2017), http://www.json.org/json-pt.html
Program Real-Time ROS Nodes on STM32 (2017), https://github.com/bosch-ros-pkg/stm32
ROS 2.0 NuttX prototype (2017), https://github.com/bosch-ros-pkg/ros2_embedded_nuttx
STM32F4DISCOVERY (2017), http://www.st.com/en/evaluation-tools/stm32f4discovery.html
STM32F407VG, High-performance foundation line, ARM Cortex-M4 core with DSP and FPU, 1 Mbyte Flash, 168 MHz CPU, ART Accelerator, Ethernet, FSMC (2017), http://www.st.com/en/microcontrollers/stm32f407vg.html
STMicroelectronics STM32F4DIS-BB (2017), https://www.digikey.com/product-detail/en/stmicroelectronics/STM32F4DIS-BB/497-13545-ND/3878236
Stellaris R LM3S6965 Evaluation Board, User’s Manual (2017), http://www.ti.com/lit/ug/spmu029a/spmu029a.pdf
Stellaris LM3S Microcontroller (2017), http://www.ti.com/product/LM3S6965
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer International Publishing AG, part of Springer Nature
About this chapter
Cite this chapter
da Silva Medeiros, L., Julio, R.E., Almeida, R.M.A.d., Bastos, G.S. (2019). Enabling Real-Time Processing for ROS2 Embedded Systems. In: Koubaa, A. (eds) Robot Operating System (ROS). Studies in Computational Intelligence, vol 778. Springer, Cham. https://doi.org/10.1007/978-3-319-91590-6_14
Download citation
DOI: https://doi.org/10.1007/978-3-319-91590-6_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-91589-0
Online ISBN: 978-3-319-91590-6
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)