Configuración de OpenArm y primera demostración
Descabezar, ensamblar, conectar y ejecutar su primera demostración de teleoperación en OpenArm, el brazo robótico de código abierto diseñado para la recopilación de datos de capacitación de IA.
Descabezar, ensamblar, conectar y ejecutar su primera demostración de teleoperación en OpenArm, el brazo robótico de código abierto diseñado para la recopilación de datos de entrenamiento de IA.
Comenzante
1. Descabezar la caja 2. Asemblar 3. Instalar ROS2 Pkg 4. Conectar 5. Visualizar 6. Primer comando 7. Teleop 8. Grabar el episodio 9. Seguidores pasos
Pre-requisitos
- Un brazo robótico OpenArm ([disponible en la tienda RCSV](
T8 )) - Ubuntu 22.04 o 24.04 con ROS2 Humble instalado (ver guía de configuración)
- Superficies planas y estables (destacos o bancos de trabajo)
- Un cable USB-C (incluido en la caja)
- Opcional: cámara de pulsera Intel RealSense D405, brazo de mando para la teleoperatoria
Lo que lograrás
En aproximadamente 1
1 de la Comisión
Lo que hay en la caja
Abre el paquete OpenArm y comprueba que todos los componentes están presentes.
Componentes de OpenArm
Asamblea de los brazos
Armas preensambladas de 6 DOF con servos Dynamixel XM430
x1
■ El desarrollo de las redes sociales
Placa base
Placa de montaje de aluminio con patas de caucho
x1
Suministro de energía
Adaptador de corriente continua 12V 5A con conector de barril
x1
Cables USB-C
1.5m USB-C a cable de datos USB-A
x1
◎ El
El montaje de la cámara de muñeca
Montura impreso en 3D para RealSense D405 o webcam
x1
El equipo de montaje
Bolos M4, llave de Allen, clip de cable
bolsa x1
Tarjeta de inicio rápido
Tarjeta impresa con código QR enlazando a este tutorial
x1
El grifo
Grifas paralelas para la mandíbula, pre-anegadas a la muñeca
x1
Especificaciones de OpenArm
| Grados de Libertad | 6 DOF + gripper |
| Alcance | 550 mm |
| Carga Útil | 1.0 kg |
| Repetibilidad | ±0.1 mm |
| Servos | Dynamixel XM430-W350 |
| Connection | USB-C (USB 2.0) |
| Power | 12V DC, 48W peak |
| Weight | 3.2 kg |
| Software | ROS2, LeRobot, Python SDK |
2 de la Comisión
Asamblea física
OpenArm naves pre-ensambladas
- Aligar la placa base: Colocar el brazo en la placa base de aluminio. Alinear los 4 agujeros de montaje y asegurar con los pernos M4 incluidos con la llave Allen.
- Poder de conexión: Conecte el conector del cañón de la fuente de alimentación de 12V al puerto de la base del brazo.
- Cámara de muñeca montada (opcional): Deslice la cámara montada en el soporte de muñeca y asegure con los dos pequeños tornillos.
- ** Cables de ruta:** Utilice los clipes de cable incluidos para encaminar los cables USB-C y las cámaras a lo largo del brazo.
- Posición en el escritorio: Colocar el brazo montado en una superficie estable y plana con al menos 60 cm de espacio libre alrededor en todas direcciones.
** Seguridad:** Mantenga las manos alejadas de las articulaciones del brazo cuando se aporte. los servos de OpenArm son lo suficientemente fuertes como para pinchar los dedos.
3 El
Instalar el paquete OpenArm ROS2
Clone los paquetes OpenArm ROS2 en su espacio de trabajo y construirlos.
Copia# Asegúrese de que ROS2 es fuente /opt/ros/humble/setup.bash # Clone OpenArm paquetes en su espacio de trabajo cd ~/ros2_ws/src git clone
Inicio >>> abierto brazo_descripción Inicio >>> abierto brazo_control Inicio >>> abierto brazo_trae Finado <<< abierto brazo_descripción [2.1s] Finado <<< abierto brazo_control [3.4s] Finado <<< abierto brazo_trae [2.8s] Resumen: 3 paquetes terminados [4.2s]
4 de la Comisión
Conectar a través de USB-C
Conecte OpenArm a su computadora con el cable USB-C y configure permisos.
Copie # Conecte el cable USB-C y la energía en el brazo # Los servidores brillan brevemente sus LEDs # Compruebe si el dispositivo se detecta ls /dev/ttyUSB* #
Configure una regla de udev para que no necesite
Copie# Crea una regla de udev para el adaptador USB Dynamixel sudo bash -c 'cat > /etc/udev/rules.d/99-openarm.rules << EOF # OpenArm
Copia# Prueba de conectividad rápida
** Todos los 6 servos respondiendo?** Estás conectado y listo. Si falta algún servo, revisa el cable de cadena de margaritas entre los servos
5 El
Lanza la visualización RViz2
Ve su brazo en 3D lanzando la descripción del robot y RViz2.
Copia \ # Lanzar robot _state _publisher + RViz2 visualización ros2 lanzar abierto brazo _descripción display.launch.py
RViz2 se abre con el modelo OpenArm URDF mostrado.
- El modelo del brazo representado en el mirador 3D
- Deslizadores de interfaz gráfica de la editorial estatal conjunta en el lado
- El brazo se actualiza en tiempo real mientras se mueven los deslizadores
Si tienes el brazo conectado, lanza con retroalimentación de hardware en su lugar:
Copia# Lanzamiento con retroalimentación en vivo del hardware (armo debe estar conectado) ros2 lanzamiento openarm_bringup openarm.launch.py \ puerto:=/dev/openarm \ rviz:=true
Ahora, mueva físicamente el brazo suavemente (con la energía apagada o en modo con par apagado) y observa el modelo RViz2 seguir sus movimientos en tiempo real.
6
Ejecutar el primer comando de posición conjunta
Envía tu primer comando al brazo y lo trasladaremos a una posición segura.
Copie# Asegúrese de que el bringup se ejecuta en otra terminal: # ros2 lanzar openarm_bringup openarm.launch.py puerto:=/dev/openarm # Enviar el brazo a la posición de inicio (todas las articulaciones en 0) ros2 tema pub --once /target_joint_positions sensor_msgs/msg/JointState \ "{posición: [0.0, 0.0, 0.0, 0.0, 0.5]}"
El brazo debe moverse suavemente a la posición vertical de la casa con la agarre medio abierta.
Copia# Prueba una postura diferente
** Seguridad:** Comience con pequeños cambios en el ángulo de la articulación. Los grandes movimientos repentinos pueden causar que el brazo choque con la mesa o con él mismo.
7
Configurar la teleoperación
Ahora vamos a controlar el brazo de forma interactiva. Puedes usar el control de teclado (más simple) o un brazo líder (mejor para la recopilación de datos).
Optión A: Teléoperación de teclado
Copia# Lanzar teclado nodo de teleop ros2 ejecutar teclado abierto_traer arriba_teleop --port=/dev/openarm # Controls: # W/S
**Optión B: Leader Arm Teleoperación (recomendada para la recopilación de datos) **
Copia# Conectar el brazo líder al segundo puerto USB ls /dev/ttyUSB* # Debe mostrar /dev/ttyUSB0 (seguidor) y /dev/ttyUSB1 (líder) # Lanzar el líder-seguidor teleoperación ros2 lanzar el brazo abierto_traer teleop.launch.py \ seguidor_port:=/dev/ttyUSB0 \ líder_port:=/dev/ttyUSB1
Con el modo líder-seguidor, mover físicamente el brazo líder hace que el brazo seguidor refleje sus movimientos en tiempo real. Esta es la mejor manera de recopilar datos de demostración de alta calidad.
Senti la respuesta: El brazo seguidor debe rastrear los movimientos de su líder con un retraso mínimo (<50 ms). Si hay un retraso notable, compruebe si ambos brazos están en buses USB separados (no en un centro compartido) y reduzca la velocidad de control de 500 Hz a 200 Hz.
8 El
Graba el primer episodio de LeRobot
Es hora de grabar tu primera demostración. Establece una tarea simple (por ejemplo, recoger un objeto pequeño) y graba con LeRobot.
Copia# Activar el entorno LeRobot fuente /lerobot_env/bin/activar # Graba un solo episodio lerobot registro \ --robot-type=openarm \ --port=/dev/openarm \ --leader-port=/dev/ttyUSB1 \ --fps=30 \ --task="pick_object" \ --num-episodes=1 \ --output-dir=/datasets/openarm_first_demo # Presione Enter para comenzar a grabar # Realice la tarea con el brazo líder # Presione Enter para dejar de grabar
Grabación de episodio 1/1... Presiona Entrar a la grabación START. [Registro] Cuadro 0... 30... 60... 90... Presiona Entrar a la grabación STOP. Episodio 1 guardado: 127 cuadros (4.2s) a 30fps Dataset guardado a ~/datasets/openarm_first_demo/
Verifique su grabación:
Copia# Visualizar el episodio grabado lerobot visualizar-dataset \ --dataset-path=~/datasets/openarm_first_demo \ --episode=0
Felicidades. Tu primer episodio está grabado.
Se ha pasado de una caja sin abrir a un brazo robótico que trabaja y registra demostraciones de teleoperaciones. Es la parte más difícil que se hace.
9
Los próximos pasos
Tu OpenArm está configurado y grabado.
- Registrar 50 episodios de una tarea de pick-and-place siguiendo la guía de arranque rápido de LeRobot
- ** Entrenar su primera política de ACT** y ver el brazo realizar la tarea de forma autónoma
- Escala a más de 300 episodios para ajuste de VLA con el [tutorial de recopilación de datos]
- Afinar OpenVLA en sus datos con la guía de ajuste de VLA
¿Necesitas otro OpenArm?
Construir una instalación de múltiples brazos o equipar un laboratorio?
[Visita la tienda]
Solución de problemas
No se ha encontrado dispositivo /dev/ttyUSB
Verifique si el cable USB-C está firmemente conectado en ambos extremos. Pruebe un puerto USB diferente. Ejecute
Servo no respondiendo en la prueba de ping
Verifique el cable de cadena de margaritas entre el servo que no responde y su vecino. Reinicie ambos conectores. Si un solo servo no responde, su ID puede haber sido reiniciado.
El brazo se mueve a la posición equivocada
La calibración puede estar apagada. Reactiva
RViz2 muestra el brazo en la orientación equivocada
Asegúrese de que usted ha obtenido el espacio de trabajo:
El teleoperatorio del brazo del líder tiene una alta latencia
Asegúrese de que ambos brazos estén en controladores USB separados (no un centro compartido). Reduzca la velocidad de control: añada
Tutoriales relacionados
¿Qué es esto?
LeRobot Quickstart
Graba 50 demostraciones y entrena tu primera política
[
Recopilar datos de entrenamiento de robots
Escala hasta la recopilación de datos de producción con formato RLDS y calificación de calidad.
[
Guía de configuración de ROS2
Guía de instalación completa de ROS2 si aún no ha configurado su entorno.
[
Preguntas frecuentes
¿Qué es OpenArm y para quién es?
OpenArm es un brazo robótico de código abierto de 6 DOF diseñado específicamente para la recopilación de datos de entrenamiento de IA. Cuenta con un montaje de cámara de muñeca incorporado, soporte para el líder y seguidor para la teleoperatoria y integración nativa de LeRobot.
¿Cuáles son las especificaciones de OpenArm?
OpenArm tiene 6 grados de libertad, un alcance de 550 mm, una capacidad de carga útil de 1 kg, una repetibilidad de 0,1 mm y servos Dynamixel XM430. Se conecta a través de USB-C, pesa 3.2 kg y tira 48W en su punto máximo.
¿Necesito ROS2 para usar OpenArm?
ROS2 es recomendado para el conjunto completo de características (visualización RViz, planificación MoveIt2, interfaz de hardware de control ros2). Sin embargo, OpenArm también funciona directamente con la API Python de LeRobot sin ROS2
¿Puedo usar OpenArm con LeRobot?
Sí, OpenArm tiene soporte nativo de LeRobot. Se enumera como un robot soportado en la biblioteca de hardware de LeRobot y viene preconfigurado con las configuraciones correctas de YAML. Puede comenzar a grabar demostraciones inmediatamente después de la configuración física.
¿Dónde puedo comprar OpenArm?
OpenArm está disponible en la tienda [RCSV Store] en roboticscenter.ai/store. Se envía en 3
¿Fue útil este tutorial?
👍 Sí
Manténgase al frente en robótica
Obtenga las últimas noticias sobre las implementaciones de robots, la recopilación de datos y la IA física







