Recolección de Datos
El VLAI L1 está diseñado para la recolección de datos de teleoperación a gran escala. Su flujo de trabajo de grabación con un solo clic, la sincronización de brazos duales y la teleoperación VR integrada lo convierten en el camino más rápido desde la entrega del robot hasta un conjunto de datos listo para entrenamiento.
Grabación de teleoperación VR bimanual
Conectar y verificar todos los sistemas
rc connect --device l1 --host 192.168.1.45
rc status # check: arms, base, cameras, battery all green
Mover L1 a la posición de grabación
Conduce el L1 al espacio de trabajo de la tarea usando WASD en el panel del navegador. Establece la altura de elevación para la tarea (por ejemplo, 130 cm para manipulación en mesa). Estaciona y bloquea las ruedas.
rc teleop --device l1 # open browser panel
# Drive to position, then lock:
python -c "from roboticscenter import L1; r=L1('192.168.1.45'); r.connect(); r.base.lock_wheels(); r.disconnect()"
Configura la escena de la tarea y las cámaras
Coloca los objetos de la tarea en posiciones de inicio consistentes. Verifica las vistas de las cámaras en el panel del navegador: ambas cámaras de muñeca (Desarrollador Max) y cualquier cámara externa deben cubrir el espacio de trabajo de la tarea.
Inicia la sesión de grabación a través de CLI
rc record \
--device l1 \
--task "Pick up the bottle and pour into the glass" \
--num_episodes 50 \
--output ~/datasets/l1-pour-v1 \
--teleop_mode vr # or: browser, leader_arms
# Press ENTER in VR to start each episode, ENTER again to end
Revisa los episodios
rc replay \
--dataset ~/datasets/l1-pour-v1 \
--episode 0
El visor muestra todas las transmisiones de cámaras + series temporales del estado de las articulaciones sincronizadas. Elimina episodios deficientes antes de enviar.
Empuje al HuggingFace Hub
huggingface-cli login
rc push_dataset \
--dataset ~/datasets/l1-pour-v1 \
--repo_id your-username/l1-pour-v1
Esquema del conjunto de datos L1
La tubería de grabación L1 produce un conjunto de datos multimodal con ambos brazos, la base móvil, todas las cámaras y anotaciones de lenguaje opcionales.
Lista de verificación de calidad
La teleoperación VR del L1 puede introducir problemas únicos de calidad de datos relacionados con la latencia y la coordinación bimanual. Revisa esto antes de enviar al Hub.
-
1La latencia de VR fue inferior a 50 ms durante la grabación Verifica el monitor de latencia en el panel del navegador durante la grabación. Por encima de 50 ms, los movimientos de la mano del operador retrasan las acciones del robot, creando un desajuste causal en el conjunto de datos. Regraba en un canal WiFi de menor latencia si es necesario.
-
2Ambos brazos se movieron como se esperaba (sin episodios de un solo brazo) Para tareas bimanuales, verifica que ambos brazos muestren movimiento significativo en
observation.left_arm_stateyobservation.right_arm_stateLos episodios dominantes de un solo brazo pueden indicar que el operador favoreció una mano. -
3La base móvil estaba estacionaria durante la manipulación del brazo A menos que estés grabando tareas de manipulación móvil,
observation.base_statedebería ser casi constante dentro de cada episodio. El movimiento de la base durante la manipulación provoca que el espacio de trabajo se desplace en relación con las cámaras. -
4Todos los flujos de cámara presentes durante todo el episodio El ancho de banda WiFi del L1 puede perder fotogramas bajo carga. Ejecuta
rc validate_dataset --dataset ~/datasets/l1-pour-v1para verificar si hay fotogramas faltantes en todos los flujos de cámara. -
5La instrucción de lenguaje coincide con lo que se demostró La instrucción de lenguaje se establece antes de que comience la grabación. Si el operador improvisó un enfoque diferente (por ejemplo, usó un brazo en lugar de dos), actualiza la instrucción o elimina el episodio.
Entrenando un VLA desde tu conjunto de datos
Una vez que tu conjunto de datos esté en HuggingFace Hub, ajusta finamente un VLA con el espacio de acción del L1.
Ajusta finamente OpenVLA con datos del L1
pip install roboticscenter[vla]
python -m roboticscenter.scripts.finetune_vla \
--model openvla/openvla-7b \
--dataset your-username/l1-pour-v1 \
--action_space l1_bimanual \ # registers the 16-DOF bimanual action head
--epochs 50 \
--output_dir outputs/openvla-l1-pour
Desplegar VLA ajustado en el dispositivo (Desarrollador Pro/Max)
rc desplegar vla \