Caminho de construçãoIntermediárioUm fim de semana

Construa um robô de coleta e colocação que sabe quando falhou

Um braço que pega peças de uma bandeja e as classifica em duas caixas, detecta uma preensão vazia, tenta novamente e registra quantos ciclos concluiu corretamente.

Esquema técnico de Construa um robô de coleta e colocação que sabe quando falhouTAPER 20°SERVOSPRING kGRASP LINECONE ±31° AT μ 0.6WINDOWCRUSHSLIP0 STEPS FITTHE KNOB IS A POSITION · THE WALLS ARE FORCES

O que você está construindo

Um braço que esvazia uma bandeja. As peças vão para uma de duas caixas conforme algum atributo que você consegue perceber nelas — tamanho, cor ou o suporte de origem — e a máquina funciona sem supervisão até a bandeja esvaziar ou algo dar errado; nesse momento, ela para e informa em qual estado parou.

O robô não é a parte interessante. Kits de braço robótico de 4 DOF custam £40, e a cinemática é uma página de trigonometria. A parte interessante é que uma máquina de coleta e colocação é julgada por uma porcentagem, e passar de “funcionou no vídeo” para “fez cinquenta seguidos” é um problema de engenharia diferente de fazê-la se mover.

Duas coisas levam você até lá, e ambas estão na garra.

As duas decisões que importam

1. O dedo não pode ser rígido

Esta é a que surpreende as pessoas, então vale deixar claro antes de imprimir qualquer coisa.

O controle da sua garra é uma posição — um ângulo de servo. Os limites do objeto são forças: um piso abaixo do qual a peça cai e um teto acima do qual ela é destruída. A relação de troca entre eles é a rigidez em série k de tudo que fica entre a haste do servo e o objeto, então a janela que você realmente precisa mirar é

window (mm) = ( min(F_crush, F_servo) − F_slip ) / k

Um dedo impresso rígido tem cerca de 25 N/mm. Um servo simples em um braço de alavanca de 30 mm resolve cerca de 0,524 mm de curso da mandíbula. Faça as contas para um morango e a janela será 0,108 mm — cinco vezes mais fina que um passo, o que significa que nenhum comando funciona e nenhum ajuste encontra um.

Dedo k Janela Posições de servo que funcionam
Impresso rígido 25 N/mm 0,108 mm 0
Almofada de espuma 4 N/mm 0,677 mm 1
Mola em série 0,8 N/mm 3,386 mm 7
Elemento flexível impresso 0,35 N/mm 7,739 mm 15

Coloque uma mola de 40 pence entre a haste do servo e o dedo, e o problema desaparece. Dimensione a sua no laboratório com seu próprio objeto e seu próprio braço de alavanca antes de gastar filamento e leia força, travamento e flexibilidade da garra com servo para o argumento completo.

2. Tem que existir uma etapa de verificação

O ciclo é aproximar, descer, preender, verificar, levantar, transferir e colocar. Sem o estado de verificação, toda falha é silenciosa: a garra fecha no vazio, o braço carrega ar sobre a mesa e abre sobre a caixa, e o contador diz que funcionou.

Um microswitch de alavanca na parte interna de um dedo custa cinquenta pence e um pino de entrada, e é a peça de maior valor desta construção. Leia-o após uma espera de 300–400 ms — um dedo flexível entra em ressonância depois de fechar, e amostrar durante essa ressonância é uma moeda ao ar — aplique debounce em três leituras consecutivas e dê à máquina de estados um estado RECOVER com nova tentativa limitada. O tutorial da máquina de estados mostra tudo.

A construção, em ordem

  1. Escolha o efetuador final. Se as peças forem planas e alcançáveis por cima, avalie primeiro uma ventosa e uma pequena bomba — isso vence qualquer coisa que você imprimir. Caso contrário, use dois dedos. Tipos de garra e força de preensão.
  2. Meça seu objeto. Massa em uma balança de cozinha, força de esmagamento na mesma balança com algumas peças descartáveis e μ com uma balança de bagagem puxada sobre o material da almofada. Esses três números decidem o projeto, e os números encontrados na internet estão errados para a sua peça.
  3. Verifique o fechamento por força. Se as faces onde as almofadas encostam tiverem uma conicidade maior que atan(μ), nada que você fizer com força vai segurar a peça, e você precisará de uma ranhura em V ou de outro ponto de preensão. Atrito e fechamento por força.
  4. Dimensione a garra no laboratório. Braço de alavanca a partir do objeto mais largo e depois verifique a janela contra o passo do servo. O simulador de garras.
  5. Imprima a garra com um mecanismo flexível ou uma mola em série, almofadas de TPU, um batente rígido e um microswitch. Garra com servo.
  6. Conecte corretamente cinco servos. PCA9685 por I²C, trilho separado para os servos e desacoplamento. Faça isso antes de escrever o software ou você perderá um dia depurando reinícios que são um problema de alimentação.
  7. Escreva a máquina de estados, não bloqueante, com VERIFY e RECOVER. Máquina de estados para coleta e colocação.
  8. Limite a aceleração com um perfil de movimento, para que a preensão que você dimensionou sobreviva à transferência.
  9. Execute cinquenta e conte.

A medição

Cinquenta ciclos consecutivos, sem supervisão, com um contador e um registro de falhas que anota em qual estado cada falha aconteceu. Esta é a entrega, e ela exige muito mais do que um vídeo.

Resultado O que significa
Acima de 95% Você tem uma máquina. Passe a detectar a pose em vez de fixá-la no código
80–95% Geralmente a pose de aproximação, ou pouco tempo de estabilização antes da verificação
Abaixo de 80% Geralmente a alimentação, ou uma garra dimensionada sem o termo de aceleração
Falha somente no final da execução Aquecimento do servo ou almofadas sujas. Ambos são reais e ambos parecem fantasmas

A tabela de falhas em o tutorial da máquina de estados mapeia a maioria dos sintomas às causas.

O que este projeto não é

Ele não faz visão e não planeja contornar obstáculos. A bandeja está em um lugar conhecido, as caixas estão em lugares conhecidos e o braço vai para onde é mandado. Isso é deliberado — o objetivo desta construção é deixar claro que a preensão é um problema separado e mais difícil do que parece quando comparada ao posicionamento, e confundi-los é o motivo pelo qual as primeiras construções de coleta e colocação travam.

Quando você quiser que o encontre a peça em vez de ser avisado de onde ela está, isso é calibração de câmera e pose de marcador, e fica sobre um ciclo de coleta funcionando, em vez de substituí-lo.

Roteiro do projeto

O caminho de construção

Siga a árvore tecnológica das peças até um robô funcionando. Cada nó é desbloqueado quando seus pré-requisitos são concluídos, e seu progresso fica salvo neste dispositivo.

0 / 21 concluídos

100%
Objetivo

Um braço que classifica uma bandeja e sabe quando falhou

O projeto inteiro

Tutorial

Qual efetuador final serve para este trabalho?

30 min

Abrir tutorial
Tutorial

Por que o dedo não pode ser rígido

30 min

Abrir tutorial
Tutorial

Levando a ferramenta até onde você quer

40 min

Abrir tutorial
Tutorial

Controlar cinco servos sem reiniciar a placa

30 min

Abrir tutorial
Caminho de aprendizagem

Preensão e efetuadores finais

Caminho de aprendizagem

Abrir caminho
Componente

O sensor de preensão

Microswitch de alavanca

Ver componente
Tutorial

Por que ele reinicia na terceira coleta

25 min

Abrir tutorial
Tutorial

O ciclo de coleta, com uma etapa de verificação

35 min

Abrir tutorial
Montagem

Classifique cinquenta peças sem supervisão

A medição

Componentes

Tutoriais deste caminho

Pratique antes de fazer a fiação

Ajuste no simulador ao vivo

O caminho de construção passa por um laboratório no navegador. Acerte o comportamento aqui e depois transfira suas configurações para o robô real.

Perguntas frequentes

Qual é a parte mais difícil de construir um robô de coleta e colocação?

Não são o braço nem a cinemática — é que a garra comanda uma posição, enquanto o objeto se importa com uma força. Com dedos impressos rígidos, a janela utilizável entre soltar uma peça e esmagá-la fica em torno de um décimo de milímetro, enquanto um passo de um servo simples move as mandíbulas cerca de meio milímetro. Nenhum comando cai na janela. A solução é uma mola ou um elemento flexível em série, que abre a janela na proporção de 1/k, e essa é a decisão que faz o projeto inteiro funcionar ou falhar. Dimensione-a no simulador de garras antes de imprimir qualquer coisa.

Por que meu braço robô solta a peça quando se move?

Porque você dimensionou a preensão para o peso, e o movimento exige mais. A força de preensão necessária é m(g + a)·SF/(μ·n), e em um braço rápido o termo de aceleração é maior que a gravidade. Uma preensão que segura um objeto de 58 g sem movimento, a 1,63 N, precisa de 1,93 N durante um levantamento de 250 mm em 0,9 s, e de 2,59 N se você fizer em 0,35 s — e a preensão cede cerca de 40 ms depois de o movimento começar, antes de o braço ter se deslocado visivelmente, e é por isso que parece uma falha da garra e não um erro de cálculo. Limite a aceleração com um perfil de movimento ou preenda com mais força; normalmente o perfil é a solução mais barata.

Como sei se a garra realmente pegou alguma coisa?

Um microswitch de alavanca na face interna de um dedo, ligado a um pino de entrada com um resistor de pull-up. Cerca de cinquenta pence, um fio e uma resposta digital direta. Coloque-o na parte flexível do dedo para que acione em uma força repetível, aplique antirrebote no software (três leituras consecutivas, não uma) e leia após uma espera de 300–400 ms para não amostrar a ressonância do dedo. A medição de corrente também funciona e ainda detecta esmagamento, mas exige um limiar calibrado e deriva conforme a bateria cai.

Preciso de cinemática inversa para isso?

Não estritamente — você pode ensinar poses à mão e guardar os ângulos das juntas, e para uma bandeja e duas caixas fixas isso é realmente suficiente. Você precisa de IK no momento em que quiser aproximação e recuo em linha reta, porque esses são movimentos cartesianos e ângulos de juntas ensinados à mão não produzem uma linha reta. Como se aproximar de uma peça de um ângulo a derruba e levantá-la ao longo de uma curva a arrasta, a maioria das construções acaba querendo os segmentos retos, e isso significa IK.

Quantos servos e qual potência?

Cinco: base, ombro, cotovelo, pulso e garra. Isso é mais canais do que um Uno deveria controlar por temporização sozinho, então use um PCA9685 por I²C. A alimentação é a parte que as pessoas subestimam — cinco servos simples se movendo juntos exigem vários ampères de corrente de pico, e o regulador de 5 V da placa vai sofrer queda de tensão e reiniciar o controlador no meio de uma coleta. Dê aos servos uma fonte própria com terra comum e algumas centenas de microfarads perto da placa.

O que conta como concluído?

Cinquenta ciclos consecutivos, sem supervisão, com contador e registro de falhas. Esse é um alvo muito melhor do que um vídeo de uma coleta bem-sucedida, porque força você a construir a etapa de verificação, a nova tentativa limitada e a fonte de alimentação que não sofre queda de tensão — exatamente as três coisas que separam uma demonstração de uma máquina. Abaixo de 95% há sempre uma causa específica, e o registro diz em qual estado a falha ocorreu.