Configuración del software
Instalación del SDK, conexión de red, planificación de doble brazo ROS2 con MoveIt2, panel de teleoperación del navegador, integración del modelo VLA y el pipeline de datos de un clic. Todo, desde el descubrimiento de red hasta la manipulación autónoma.
Ir a una sección:
Instalación del SDK
El VLAI L1 se controla a través de la roboticscenter SDK de Python, que proporciona tanto APIs de tareas de alto nivel como control de articulaciones de bajo nivel. Instale en su PC host.
Crear un entorno virtual
python -m venv ~/.venvs/vlai
source ~/.venvs/vlai/bin/activate
Instala el SDK
pip install roboticscenter[l1]
Verificar instalación
python -c "from roboticscenter import L1; print('SDK OK')"
rc --version # command-line tool
Conectando al L1
El L1 ejecuta su propia pila ROS2 a bordo y expone una API de control gRPC a través de su red local. Su PC host se comunica con él a través de WiFi o Ethernet.
Configuración inicial de la red
# Power on the L1 — it will connect to the configured WiFi automatically
# Then discover it on your network:
rc discover
# Output: L1-XXXX found at 192.168.1.45 (port 8888)
Conectar y verificar
rc connect --device l1 --host 192.168.1.45
# Output: Connected to VLAI L1 (firmware v2.1.4, battery: 87%)
# Or use the Python SDK:
from roboticscenter import L1
robot = L1(host="192.168.1.45")
robot.connect()
print(robot.get_status())
# {'battery': 87, 'arm_left': 'ready', 'arm_right': 'ready', 'base': 'ready'}
robot.disconnect()
Establecer una IP estática (recomendado para uso en laboratorio)
rc config set network.static_ip 192.168.1.100
rc config set network.gateway 192.168.1.1
rc config apply # reboots the L1 network stack
Control de brazo dual de ROS2 con MoveIt2
El L1 se envía con ROS2 Humble ejecutándose a bordo. Su PC host se conecta como un nodo ROS2 a través de la misma red. Necesita ROS2 Humble en su host.
Instalar ROS2 Humble en el host (Ubuntu 22.04)
sudo apt update && sudo apt install ros-humble-desktop \
ros-humble-moveit ros-humble-ros2-control \
ros-humble-ros2-controllers -y
Lanzar el puente ROS2 del L1
# On the L1 (via SSH or the onboard terminal):
ros2 launch vlai_l1_ros2 l1_bringup.launch.py
# On your host PC:
source /opt/ros/humble/setup.bash
export ROS_DOMAIN_ID=42 # must match the L1's domain ID
ros2 topic list # should show /l1/left_arm/joint_states, etc.
Planificación de MoveIt2 para brazo dual
source /opt/ros/humble/setup.bash
ros2 launch vlai_l1_moveit l1_moveit.launch.py
# In another terminal — plan and execute a bimanual task:
ros2 run vlai_l1_moveit bimanual_demo
# Executes: left arm picks object, right arm receives and places
Control de brazo individual a través de Python
from roboticscenter import L1
import numpy as np
robot = L1(host="192.168.1.45")
robot.connect()
# Move left arm to Cartesian pose (position + quaternion)
pose = {
"position": [0.4, 0.1, 0.35], # x, y, z in meters from base
"orientation": [0, 0, 0, 1] # quaternion xyzw
}
robot.left_arm.move_to_pose(pose, speed=0.3)
# Read current joint state
state = robot.left_arm.get_joint_state()
print("Left arm joints:", state.positions) # 8 values in radians
robot.disconnect()
Control de base móvil
desde el centro de robótica importar L1
Panel de teleoperación del navegador
El L1 incluye un panel de teleop del navegador integrado — no se requiere instalación de software. Navega a la IP del L1 en el puerto 8888.
Acceder al panel
# Open in browser:
http://192.168.1.45:8888
# Or launch via CLI:
rc teleop --device l1
El panel proporciona:
- Control del teclado WASD para la base móvil
- Joystick cartesiano para el brazo izquierdo/derecho (clic y arrastrar en la vista 3D)
- Botones de abrir/cerrar el gripper
- Transmisión de cámara desde todas las cámaras montadas
- Grabación de episodios con un clic para iniciar/detener
- Panel de estado de batería y estado de las articulaciones
Teleop VR (Desarrollador Pro y Max)
rc teleop --device l1 --mode vr
# Opens a WebXR session — put on Meta Quest and visit the displayed URL
Integración del modelo de Visión-Lenguaje-Acción
Los niveles L1 Developer Pro y Max incluyen computación a bordo capaz de ejecutar inferencia VLA localmente. Para todos los niveles, puedes ejecutar inferencia VLA en una PC host y transmitir acciones al robot.
Ejecutar OpenVLA en la PC host (cualquier nivel)
centro de robótica de instalación de pip[vla]
Inferencia VLA en el dispositivo (Desarrollador Pro/Max)
rc deploy vla \
--model openvla/openvla-7b \
--quantize int4 # fits in 6GB VRAM on V3 compute (70 TOPS)
# Now VLA runs on the L1's onboard compute — no host PC needed:
rc run policy \
--task "Pick up the blue block and place it on the red plate" \
--max_steps 50