Skip to content

Robcib-GIT/Helios_SoftRobot

 
 

Repository files navigation

Helios SoftRobot

Instalación y Configuración

Paso 1: Clonar el repositorio de Helios

Clona el repositorio de Helios utilizando Git:

git clone https://github.com/JaimeBravoAlgaba/Helios_SoftRobot.git

Paso 2: Crear un workspace de ROS2

Crea un directorio para el workspace de ROS2 y asegúrate de que esté vacío:

mkdir -p helios_ws/src

Paso 3: Instalar el paquete de helios_robot en el workspace

Copia el paquete de helios_robot al workspace de ROS2:

cp -r Helios_SoftRobot/Código/helios_robot helios_ws/src
cd helios_ws/src

Paso 4: Instalar el paquete micro_ros_setup

Clona el repositorio de micro_ros_setup y asegúrate de que esté en la rama correspondiente a tu versión de ROS2:

git clone https://github.com/micro-ROS/micro_ros_setup.git -b $ROS_DISTRO
cd ..

Paso 5: Compilar el workspace

Actualiza los dependencias y compila el workspace de ROS2:

rosdep update && rosdep install --from-paths src --ignore-src -y
colcon build --symlink-install
source install/local_setup.bash

Paso 6: Crear un agente de MicroROS

Crea un agente de MicroROS y configura el entorno:

ros2 run micro_ros_setup create_agent_ws.sh
ros2 run micro_ros_setup build_agent.sh
source install/local_setup.sh

Paso 7: Conectar el ESP32 y ejecutar el agente

Conecta el ESP32 al puerto USB y ejecuta el agente de MicroROS:

ros2 run micro_ros_agent micro_ros_agent serial --dev /dev/ttyUSB0

Paso 8: Resolución de errores comunes

Si aparece un error al conectar el ESP32, asegúrate de conceder acceso a tu usuario al puerto USB ttyUSB0:

  1. Comprueba el grupo de usuarios que tiene acceso al puerto:
stat /dev/ttyUSB0

Debería aparecer algo como: "Gid: ( 20/ dialout)"

  1. Añade tu usuario al grupo "dialout" o el que haya aparecido:
sudo usermod -a -G dialout $USER
  1. Da permisos de lectura y escritura al puerto:
sudo chmod a+rw /dev/ttyUSB0

Después de resetear el ESP32, deberían escucharse sus topics desde otro terminal.

Control por terminal

  • Puede utilizarse el archivo helios_robot.sh para lanzar automáticamente los nodos necesarios:
# Lanza el agente de MicroROS, la cinemática y la predicción de pose
# En la carpeta en la que se encuentre el archivo hacer:
./helios_robot.sh
  • Lanzar el nodo de visualización:
ros2 run helios_robot helios_robot_plot
  • Controlar la longitud de los cables, en metros:
# [L00, L01, L02, L03, L10, L11, ... L22, L23]
ros2 topic pub --once /helios_cables_cmd std_msgs/msg/Float32MultiArray "data: [0,0,0,0,  0,0,0,0,  0,0,0,0]"
  • Enviar comando en coordenadas theta y phi, en radianes:
# [th0, th1, th2, phi0, phi1, phi2]
ros2 topic pub --once /helios_sections_cmd std_msgs/msg/Float32MultiArray "data: [0,0,0,  0,0,0]"
  • Controlar la herramienta (dato de 0 a 255):
ros2 topic pub --once /helios_tool_cmd std_msgs/msg/Int8 "data: 127"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • G-code 98.3%
  • Other 1.7%