Entorno basado en contenedores Linux para el desarrollo de aplicaciones robóticas

Autores/as

DOI:

https://doi.org/10.17979/ja-cea.2024.45.10943

Palabras clave:

Robotica Inteligente, Robótica conectada, Construcción de mapas, Aprendizaje automático, Sistemas multiagentes

Resumen

El desarrollo y despliegue de aplicaciones robóticas en investigación involucra desafíos como la gestión eficiente de hardware heterogéneo, especialmente GPUs, o la elaboración de configuraciones software con requisitos incompatibles, por ejemplo, conflictos de librerías y versiones. A menudo, estos problemas se convierten en una limitación para los investigadores, ya que dificultan la colaboración o incluso imposibilitan el desarrollo y despliegue de sus aplicaciones. En este trabajo, se presenta una solución consistente en un entorno basado en virtualización mediante contenedores persistentes de baja latencia, que ofrece plataformas de desarrollo completos, acceso directo al hardware y gestión automática de las comunicaciones, facilitando el desarrollo de aplicaciones robóticas en entornos heterogéneos complejos. El entorno propuesto se valida mediante su implementación real en un laboratorio de robótica. Concretamente, se presenta un experimento consistente en la creación de mapas semánticos con robots móviles, una tarea compleja que ha requerido el uso de contenedores que ejecutan nodos de ROS2 intercomunicados.

Citas

Cañete, A., Quemada, E., Ruiz-Sarmiento, J.-R., Moreno, F.-A., Gonzalez-Jimenez, J., 2024. Multimodal system for the orientation of mobile robots towards its interlocutor. XLV Jornadas de Automática.

da Silva, A. S., Kreutz, A., Weiss, G., Rothe, J., Ihrke, C., 2023. Devops in robotics: Challenges and practices. In: Software Architecture. ECSA 2022 Tracks and Workshops. Springer International Publishing, pp. 284–299. DOI: https://doi.org/10.1007/978-3-031-36889-9 20 DOI: https://doi.org/10.1007/978-3-031-36889-9_20

Faconti, D., 2024. Bonxai. https://github.com/facontidavide/Bonxai, accessed: 2024-06-03.

Fernández-Chaves, D., Ruiz-Sarmiento, J.-R., Petkov, N., Gonzalez-Jimenez, J., 2021. Vimantic, a distributed robotic architecture for semantic mapping in indoor environments. Knowledge-Based Systems 232, 107440. DOI: https://doi.org/10.1016/j.knosys.2021.107440 DOI: https://doi.org/10.1016/j.knosys.2021.107440

Graber, S., 2014. Lxc 1.0: Security features. https://www.stgraber.org/2014/01/01/lxc-1-0-security-features/, accessed: 2024-06-02.

Hafi, L. E., Ricardez, G. A. G., von Drigalski, F., Inoue, Y., Yamamoto, M., Yamamoto, T., 2022. Software development environment for collaborative research workflow in robotic system integration. Advanced Robotics 36 (11), 533–547. DOI: https://doi.org/10.1080/01691864.2022.2068353 DOI: https://doi.org/10.1080/01691864.2022.2068353

Jabbari, R., bin Ali, N., Petersen, K., Tanveer, B., 2016. What is devops? a systematic mapping study on definitions and practices. In: Proceedings of the Scientific Workshop Proceedings of XP2016. New York, NY, USA. DOI: https://doi.org/10.1145/2962695.2962707 DOI: https://doi.org/10.1145/2962695.2962707

Lumpp, F., Panato, M., Bombieri, N., Fummi, F., apr 2023. A design flow based on docker and kubernetes for ros-based robotic software applications. ACM Trans. Embed. Comput. Syst.Just Accepted. DOI: https://doi.org/10.1145/3594539 DOI: https://doi.org/10.1145/3594539

Macenski, S., Foote, T., Gerkey, B., Lalancette, C., Woodall, W., 2022. Robot operating system 2: Design, architecture, and uses in the wild. Science Robotics 7 (66). DOI: https://doi.org/10.1126/scirobotics.abm6074 DOI: https://doi.org/10.1126/scirobotics.abm6074

Malavolta, I., Lewis, G. A., Schmerl, B., Lago, P., Garlan, D., 2021. Mining guidelines for architecting robotics software. Journal of Systems and Software 178, 110969. DOI: https://doi.org/10.1016/j.jss.2021.110969 DOI: https://doi.org/10.1016/j.jss.2021.110969

Mavrinac, A., 2023. Devops for robotics. https://www.prosiglieres.com/posts/devops-for-robots/, [Accessed 2024-03-27].

Merkel, D., 2014. Docker: lightweight linux containers for consistent development and deployment. Linux journal 2014 (239), 2. DOI: https://dl.acm.org/doi/10.5555/2600239.2600241

Moncada-Ramirez, J., Ruiz-Sarmiento, J.-R., Matez, J.-L., Gonzalez-Jimenez, J., 2024. Large models for semantic mapping in mobile robotics. XLV Jornadas de Automática.

Pontarolli, R. P., Bigheti, J. A., de S ́a, L. B. R., Godoy, E. P., 2023. Microservice-oriented architecture for industry 4.0. Eng 4 (2), 1179–1197. DOI: https://doi.org/10.3390/eng4020069 DOI: https://doi.org/10.3390/eng4020069

Project, L., 2024a. Incus - next-generation system container and virtual machine manager. https://linuxcontainers.org/incus/, accessed: 2024-06-02.

Project, L., 2024b. Lxc - linux containers. https://github.com/lxc/lxc, accessed: 2024-06-02.

Ronanki, K. C., 2021. Robotic software development using devops. URL: https://urn.kb.se/resolve?urn=urn:nbn:se:bth-22024

Ruiz-Sarmiento, J.-R., Galindo, C., Gonzalez-Jimenez, J., 2017. Building multiversal semantic maps for mobile robot operation. Knowledge-Based Systems 119, 257–272. DOI: https://doi.org/10.1016/j.knosys.2016.12.016 DOI: https://doi.org/10.1016/j.knosys.2016.12.016

Saha, O., Dasgupta, P., 2018. A comprehensive survey of recent trends in cloud robotics architectures and applications. Robotics 7 (3). DOI: https://doi.org/10.3390/robotics7030047 DOI: https://doi.org/10.3390/robotics7030047

Soltesz, S., P ̈otzl, H., Fiuczynski, M. E., Bavier, A., Peterson, L., 2007. Container-based operating system virtualization: A scalable, high-performance alternative to hypervisors. ACM SIGOPS Operating Systems

Review 41 (3), 275–287. DOI: https://doi.org/10.1145/1272996.1273025 DOI: https://doi.org/10.1145/1272996.1273025

Wang, S., Liu, X., Zhao, J., Christensen, H. I., 2019. Rorg: Service robot software management with linux containers. In: 2019 International Conference on Robotics and Automation (ICRA). pp. 584–590. DOI: https://doi.org/10.1109/ICRA.2019.8793764 DOI: https://doi.org/10.1109/ICRA.2019.8793764

Wendt, A., Sch ̈uppstuhl, T., 2022. Proxying ros communications — enabling containerized ros deployments in distributed multi-host environments. In: IEEE/SICE International Symposium on System Integration. pp. 265–270. DOI: https://doi.org/10.1109/SII52469.2022.9708884

White, R., Christensen, H., 2017. ROS and Docker. Springer International Publishing, Cham, Ch. 9, pp. 285–307. DOI: https://doi.org/10.1007/978-3-319-54927-9 9 DOI: https://doi.org/10.1007/978-3-319-54927-9_9

Wu, B., Zhang, Z., Bai, Z., Liu, X., Jin, X., 2023. Transparent GPU sharing in container clouds for deep learning workloads. In: USENIX Symposium on Networked Systems Design and Implementation. pp. 69–85.

Wu, Y., Kirillov, A., Massa, F., Lo, W.-Y., Girshick, R., 2019. Detectron2. https://github.com/facebookresearch/detectron2.

Zhang, J., Keramat, F., Yu, X., Hern ́andez, D. M., Queralta, J. P., Westerlund, T., 2022. Distributed robotic systems in the edge-cloud continuum with ros 2: a review on novel architectures and technology readiness. In: 2022 Seventh International Conference on Fog and Mobile Edge Computing (FMEC). pp. 1–8. DOI: https://doi.org/10.1109/FMEC57183.2022.10062523 DOI: https://doi.org/10.1109/FMEC57183.2022.10062523

Descargas

Publicado

19-07-2024

Número

Sección

Robótica