Este proyecto implementa un sistema de visión artificial utilizando ROS, una cámara Kinect y una Jetson Nano de 2GB de RAM. El objetivo principal es capturar y procesar datos visuales del entorno físico circundante y representarlos en un espacio tridimensional utilizando RViz. Este sistema está diseñado para integrarse en un robot móvil de alto torque con capacidades de navegación autónoma y SLAM.
- Captura de datos: Utiliza la cámara Kinect para capturar puntos y vectores del entorno.
- Procesamiento: Procesa los datos capturados mediante nodos desarrollados en ROS.
- Visualización en 3D: Representación de los datos procesados en RViz para una visualización clara y detallada del entorno.
- Diseñado para complementar a posteriori sistemas de navegación autónoma mediante mapeo simultáneo y localización.
- Hardware:
- Jetson Nano (2GB o superior)
- Cámara Kinect
- Robot móvil de alto torque (opcional, para integración completa)
- Jetson Nano password: jetson
- Software:
- Ubuntu 20.04
- ROS (Robot Operating System)
- RViz
- Python 3.6+
- Configurar el entorno ROS 2 Foxy:
sudo apt update && sudo apt upgrade -y sudo apt install ros-foxy-desktop echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc source ~/.bashrc
- Clonar este repositorio:
mkdir ~/ros2_ws cd ~/ros2_ws/src git clone https://github.com/pericao320/ros2_ws.git
- Arreglar la ruta del paquete que no se reconoce
Ir a la carpeta:
Y cambiar el archivo kinect_ros2_component.hpp la linea N°6 de código:
cd /home/<usuario>/ros2_ws/src/kinect_ros2/include/kinect_ros2
En usuario pon tu nombre de usuario#include "/home/<usuario>/ros2_ws/src/libfreenect/include/libfreenect.h" - Compilar los paquetes:
cd ~/ros2_ws colcon build source install/setup.bash
- Conectar la cámara Kinect: Asegúrate de que la Kinect esté correctamente conectada a la Jetson Nano y sea reconocida.
-
Crear un workspace vacío:
mkdir -p ~/ros2_ws/src cd ~/ros2_ws colcon build
-
Clonar el repositorio en una carpeta separada:
mkdir -p ~/Documents cd ~/Documents git clone https://github.com/pericao320/ros2_ws.git
-
Copiar la carpeta
srcal workspace:cp -r ~/Documents/ros2_ws/src ~/ros2_ws/
-
Compilar los paquetes:
cd ~/ros2_ws colcon build source install/setup.bash
-
Conectar la cámara Kinect: Asegúrate de que la Kinect esté correctamente conectada y reconocida por tu sistema.
Si encuentras errores relacionados con la configuración de paquetes o bibliotecas, sigue estos pasos:
- Instalar dependencias faltantes:
Asegúrate de que todas las dependencias necesarias están instaladas, especialmente
libfreenect:sudo apt update sudo apt install libfreenect
- Actualizar las variables de entorno:
Si el paquete no se encuentra al intentar lanzarlo, asegúrate de incluir el espacio de trabajo en las rutas de ROS 2:
echo "source ~/ros2_ws/install/setup.bash" >> ~/.bashrc source ~/.bashrc
- Verificar la instalación del paquete:
Confirma que el paquete `kinect_ros2` está registrado: ros2 pkg list | grep kinect_ros2
-
Lanzar el sistema:
source ~/.bashrc ros2 launch kinect_ros2 pointcloud.launch.py
-
Visualizar en RViz:
- Abre RViz.
- Carga la configuración predeterminada proporcionada en este repositorio (
config/rviz_config.rviz). - Observa la representación en 3D del entorno circundante.
-
Conexión ROS_DDS: Configura estos en el archivo ~/.bashrc
export ROS_DOMAIN_ID=0 export RMW_IMPLEMENTATION=rmw_fastrtps_cpp # O puedes usar # export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
Este proyecto fue desarrollado como parte de la tesis titulada "Robot móvil de alto torque: visión artificial", en la línea de Innovación y transferencia de tecnología.


