Hola a todos, en mi entrada anterior compartí cómo comencé a explorar ROS2 Humble con Turtlesim; ahora doy un paso más creando mi propio nodo en C++ que publica datos dentro de ROS2 y aquí explico todo lo que hice paso a paso para que puedas reproducirlo en tu sistema.
Paso 1 Crear un paquete nuevo Dentro de tu workspace ejecuta los comandos correspondientes en la terminal: cd ~/ros2_ws/src y ros2 pkg create --build-type ament_cmake pkg_2 Esto crea la carpeta pkg_2 y genera los archivos necesarios CMakeLists.txt package.xml include/ y src/ dejando listo un paquete C++ para ROS2 Tu estructura debería verse así pkg_2/ +-- CMakeLists.txt +-- include/pkg_2/ +-- package.xml +-- src/
Paso 2 Escribir el nodo Crea el archivo fuente con cd pkg_2/src y nano my_node.cpp En este archivo puedes implementar un nodo básico en C++ que inicializa rclcpp y crea un nodo simple aunque aún no publique mensajes Este es el esqueleto básico para arrancar y verificar que el nodo está vivo y listo para comunicarse
Paso 3 Editar CMakeLists.txt Modifica CMakeLists.txt para indicar cómo compilar tu ejecutable y enlazar con rclcpp Asegúrate de tener find_package rclcpp REQUIRED y ament_target_dependencies nombre_del_objetivo rclcpp entre las instrucciones de compilación
Paso 4 Actualizar package.xml Abre nano ../package.xml y añade la dependencia necesaria en el xml agregando <depend>rclcpp</depend> Esto permite que la herramienta de construcción detecte que tu paquete depende de rclcpp
Paso 5 Construir el paquete Sitúate en la raíz del workspace cd ~/ros2_ws y ejecuta colcon build luego source install/setup.bash Explicación breve colcon es el front end de construcción que descubre paquetes en src/ determina el orden de compilación a partir de package.xml y ejecuta ament_cmake u otra herramienta configurada Los resultados se colocan en build/ install/ y log/
Paso 6 Ejecutar el nodo Lanza tu nodo con ros2 run pkg_2 my_node Deberías ver salida similar a INFO my_cpp_node Hello guys this is nagu o un mensaje equivalente indicando que el nodo se ha arrancado correctamente
Errores típicos y su significado Paquete pkg_2 no encontrado significa que no has hecho source install/setup.bash del workspace o que compilaste en otro overlay Errores de linker referencias indefinidas indican que olvidaste ament_target_dependencies o find_package para rclcpp Errores en tiempo de ejecución relacionados con DDS pueden deberse a que falta la implementación rmw o a variables de entorno mal configuradas Seguridad de red o firewall también pueden bloquear el descubrimiento DDS
Qué sigue En la próxima entrada ampliaré este nodo para que publique mensajes a intervalos regulares y crearé un nodo suscriptor para recibirlos y así demostrar la comunicación ROS2 completa Mientras tanto te animo a experimentar y a combinar estas capacidades con soluciones profesionales de desarrollo
En Q2BSTUDIO somos una empresa de desarrollo de software dedicada a crear aplicaciones a medida y software a medida para empresas de todos los tamaños Nuestra experiencia abarca desde soluciones de inteligencia artificial e ia para empresas hasta servicios de ciberseguridad y pentesting pasando por servicios cloud aws y azure y servicios inteligencia de negocio Integrar un nodo ROS2 en un flujo de trabajo industrial o de IOT es un ejemplo perfecto de cómo podemos adaptar software a medida a tus necesidades Si buscas ayuda para pasar de prototipo a producto podemos ayudarte en Desarrollo de aplicaciones y software a medida y también ofrecemos consultoría para aprovechar agentes IA y pipelines de datos mediante servicios de inteligencia artificial integrados con soluciones de Business Intelligence como power bi
Comandos de interés y diagnóstico Para listar nodos en ejecución usa ros2 node list Para ver logs en tiempo real usa ros2 topic echo /rosout Si trabajas con despliegues en la nube recuerda que desde Q2BSTUDIO podemos ayudarte a configurar despliegues escalables sobre servicios cloud aws y azure y a asegurar tus comunicaciones y datos con prácticas de ciberseguridad robustas
Felicidades ya has creado tu primer nodo C++ en ROS2 y has puesto las bases para construir comunicaciones más complejas No demuestres mejora en su lugar sigue experimentando y si necesitas soporte profesional en desarrollo de software a medida inteligencia artificial ciberseguridad o servicios en la nube contacta con Q2BSTUDIO
Palabras clave aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws y azure servicios inteligencia de negocio ia para empresas agentes IA power bi

.jpg)
