O que é Teleoperação — e por que isso é importante?
Teleoperação é o ato de controlar os movimentos de um robô remotamente em tempo real. No contexto do aprendizado de robôs, serve a um propósito específico e crítico: permite que os humanos transfiram sua própria inteligência física para uma forma que o robô possa aprender. Quando você teleopera um braço para pegar um objeto, o braço registra exatamente como você o moveu — cada ângulo de junta, velocidade e estado do gripper, a 50Hz. Essa gravação se torna uma demonstração. Com demonstrações suficientes, uma rede neural pode aprender a reproduzir seu comportamento sem nenhum humano no loop.
A qualidade da sua teleoperação determina diretamente a qualidade da sua política. Movimentos suaves, consistentes e deliberados produzem bons dados de treinamento. Movimentos bruscos, hesitantes ou inconsistentes confundem o modelo. É por isso que você está gastando uma unidade inteira em teleoperação antes de gravar uma única demonstração na Unidade 4 — você precisa se tornar proficiente antes que os dados comecem a contar.
Visão Geral dos Sistemas de Teleoperação
Abrange teleoperação em VR, feedback háptico, arquiteturas de líder-seguidor e considerações de latência. Leia antes da Unidade 3 se quiser entender todo o espaço de design. Abrir na Biblioteca de Robótica →
Configuração da Sessão de Teleoperação
A configuração da sessão prática está documentada em detalhes em hardware/openarm/data-collection. Siga esse guia a partir da seção "Configuração de Teleoperação". Os passos abaixo resumem o fluxo:
-
Escolha seu método de teleoperação
Para este caminho, use o método líder-seguidor (recomendado): um segundo braço OpenArm atua como o líder e você o move fisicamente enquanto o seguidor (seu braço de coleta de dados) espelha o movimento. Se você tiver apenas um braço, use a teleoperação por teclado com a classe do SDK SVRC
KeyboardTeleop— é mais lenta, mas funciona. -
Inicie o servidor de teleoperação
Com ambos os braços conectados e o ROS 2 em execução, inicie o nó de teleoperação:
ros2 launch openarm_teleop leader_follower.launch.py. Você deve ver o espelhamento do estado das juntas na saída do terminal imediatamente. A interface web emlocalhost:8080/teleopmostra uma visualização ao vivo. -
Defina a velocidade para 30% para sua primeira sessão
O parâmetro de velocidade no arquivo de lançamento padrão é 100%. Para sua primeira sessão, defina
speed_scale:=0.3. Uma velocidade mais lenta lhe dá mais tempo para reagir, reduz a chance de limites de juntas e produz demonstrações mais suaves. Aumente para 60–80% uma vez que você esteja confortável. -
Pratique o movimento da tarefa alvo
Antes de gravar qualquer coisa, passe 20–30 minutos praticando o movimento de pegar e colocar que você usará na Unidade 4. Busque posições de início e fim consistentes. O robô deve retornar à mesma pose inicial antes de cada tentativa. A consistência aqui é o que torna seu conjunto de dados aprendível.
-
Execute uma sessão contínua de 5 minutos
Teleopere continuamente por 5 minutos sem parar, desconectar ou acionar um erro. Isso confirma que seu braço, cabos e barramento CAN estão estáveis o suficiente para uma sessão de gravação completa. Se o braço parar ou gerar um erro durante este teste, diagnostique antes de passar para a Unidade 4.
Teleoperação com Luvas
Se você tiver uma luva de dados (como a Paxini Gen3 ou a luva Brainco), pode usá-la como uma interface de teleoperação mais natural que captura dados ao nível dos dedos. Isso não é necessário para a demonstração de pegar e colocar neste caminho, mas desbloqueia tarefas de manipulação ágil. Leia o guia de teleoperação da luva →
Unidade 3 Completa Quando...
Você pode teleoperar o braço continuamente por 5 minutos sem interrupções, erros de conexão ou limites de juntas. O braço segue seu braço líder (ou entradas do teclado) suavemente. Você praticou o movimento de pegar e colocar o suficiente para executá-lo de forma consistente — mesma posição inicial, mesma posição final, mesmo tempo de aperto — pelo menos 8 vezes em 10. Essa consistência é o que você levará para a Unidade 4.