Configuração do Software
Instalação do SDK, conexão de rede, planejamento de braço duplo ROS2 com MoveIt2, painel teleoperado do navegador, integração do modelo VLA e o pipeline de dados com um clique. Tudo, desde a descoberta de rede até a manipulação autônoma.
Ir para uma seção:
Instalação do SDK
O VLAI L1 é controlado via roboticscenter SDK Python, que fornece tanto APIs de tarefas de alto nível quanto controle de juntas de baixo nível. Instale no seu PC host.
Crie um ambiente virtual
python -m venv ~/.venvs/vlai
source ~/.venvs/vlai/bin/activate
Instale o SDK
pip install roboticscenter[l1]
Verifique a instalação
python -c "from roboticscenter import L1; print('SDK OK')"
rc --version # command-line tool
Conectando ao L1
O L1 executa sua própria pilha ROS2 embarcada e expõe uma API de controle gRPC pela sua rede local. Seu PC host se comunica com ele via WiFi ou Ethernet.
Configuração inicial da rede
# 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 e 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()
Defina um IP estático (recomendado para uso em laboratório)
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
Controle de Braço Duplo ROS2 com MoveIt2
O L1 vem com ROS2 Humble rodando a bordo. Seu PC host se conecta como um nó ROS2 pela mesma rede. Você precisa do ROS2 Humble no seu host.
Instale o ROS2 Humble no 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
Inicie a ponte ROS2 do 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.
Planejamento MoveIt2 de braço duplo
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
Controle individual do braço via 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()
Controle da base móvel
da importação do centro de robótica L1
Painel de Teleoperação do Navegador
O L1 inclui um painel de teleoperação do navegador embutido — nenhuma instalação de software necessária. Navegue até o IP do L1 na porta 8888.
Acesse o painel
# Open in browser:
http://192.168.1.45:8888
# Or launch via CLI:
rc teleop --device l1
O painel fornece:
- Controle do teclado WASD para a base móvel
- Joystick cartesiano do braço esquerdo/direito (clique e arraste na visualização 3D)
- Botões de abrir/fechar do gripper
- Transmissão de câmera de todas as câmeras montadas
- Início/parada de gravação de episódio com um clique
- Painel de status da bateria e do estado das juntas
Teleoperação VR (Developer Pro e Max)
rc teleop --device l1 --mode vr
# Opens a WebXR session — put on Meta Quest and visit the displayed URL
Integração do Modelo Visão-Linguagem-Ação
Os níveis Developer Pro e Max do L1 incluem computação a bordo capaz de executar inferência VLA localmente. Para todos os níveis, você pode executar inferência VLA em um PC host e transmitir ações para o robô.
Execute OpenVLA no PC host (qualquer nível)
pip instalar centro de robótica[vla]
Inferência VLA no dispositivo (Developer 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