Índice:

Robô quadrúpede equipado com Arduino impresso em 3D: 13 etapas (com imagens)
Robô quadrúpede equipado com Arduino impresso em 3D: 13 etapas (com imagens)

Vídeo: Robô quadrúpede equipado com Arduino impresso em 3D: 13 etapas (com imagens)

Vídeo: Robô quadrúpede equipado com Arduino impresso em 3D: 13 etapas (com imagens)
Vídeo: Placa Didática MSP430 2024, Novembro
Anonim
Robô Quadrúpede Equipado com Arduino Impresso em 3D
Robô Quadrúpede Equipado com Arduino Impresso em 3D
Robô Quadrúpede Equipado com Arduino Impresso em 3D
Robô Quadrúpede Equipado com Arduino Impresso em 3D
Robô Quadrúpede Equipado com Arduino Impresso em 3D
Robô Quadrúpede Equipado com Arduino Impresso em 3D

Projetos Fusion 360 »

Com base nos Instructables anteriores, você provavelmente pode ver que tenho um grande interesse por projetos de robótica. Depois do Instructable anterior onde construí um bípede robótico, decidi tentar fazer um robô quadrúpede que pudesse imitar animais como cães e gatos. Neste Instructable, vou mostrar o design e a montagem do quadrúpede robótico.

O objetivo principal durante a construção deste projeto era tornar o sistema o mais robusto possível, de modo que, ao experimentar vários passos de caminhada e corrida, eu não tivesse que me preocupar constantemente com falhas no hardware. Isso me permitiu levar o hardware ao seu limite e experimentar andanças e movimentos complexos. Um objetivo secundário era tornar o quadrúpede de custo relativamente baixo usando peças de hobby prontamente disponíveis e impressão 3D que permitia uma prototipagem rápida. Esses dois objetivos combinados fornecem uma base robusta para realizar vários experimentos, permitindo desenvolver o quadrúpede para requisitos mais específicos, como navegação, evitar obstáculos e locomoção dinâmica.

Confira o vídeo anexado acima para ver uma rápida demonstração do projeto. Continue para criar seu próprio Arduino Powered Quadruped Robot e vote no "Make it Move Contest" se você gostou do projeto.

Etapa 1: Visão geral e processo de design

Visão geral e processo de design
Visão geral e processo de design
Visão geral e processo de design
Visão geral e processo de design
Visão geral e processo de design
Visão geral e processo de design

O quadrúpede foi projetado no software de modelagem 3D Fusion 360 da Autodesk gratuito. Comecei importando os servo motores para o projeto e construí as pernas e o corpo em torno deles. Projetei suportes para o servo motor que fornecem um segundo ponto de articulação diametralmente oposto ao eixo do servo motor. Ter eixos duplos em cada extremidade do motor dá estabilidade estrutural ao projeto e elimina qualquer inclinação que possa ocorrer quando as pernas são feitas para suportar alguma carga. Os links foram projetados para segurar um rolamento enquanto os suportes usavam um parafuso para o eixo. Uma vez que os links foram montados nos eixos usando uma porca, o rolamento forneceria um ponto de articulação suave e robusto no lado oposto do eixo do servo motor.

Outro objetivo ao projetar o quadrúpede era manter o modelo o mais compacto possível para aproveitar ao máximo o torque fornecido pelos servo motores. As dimensões dos links foram feitas para atingir uma grande amplitude de movimento, minimizando o comprimento total. Torná-los muito curtos faria com que os suportes colidissem, reduzindo a amplitude de movimento, e torná-los muito longos exerceria torque desnecessário nos atuadores. Por fim, projetei o corpo do robô no qual o Arduino e outros componentes eletrônicos seriam montados. Também deixei pontos de montagem adicionais no painel superior para tornar o projeto escalonável para melhorias futuras. Uma vez pode adicionar sensores como sensores de distância, câmeras ou outros mecanismos atuados, como garras robóticas.

Nota: As peças estão incluídas em uma das etapas a seguir.

Etapa 2: Materiais necessários

Materiais necessários
Materiais necessários
Materiais necessários
Materiais necessários

Aqui está a lista de todos os componentes e peças necessários para fazer seu próprio Arduino Powered Quadruped Robot. Todas as peças devem estar comumente disponíveis e fáceis de encontrar em lojas de ferragens locais ou online.

ELETRÔNICOS:

Arduino Uno x 1

Servo motor Towerpro MG995 x 12

Arduino Sensor Shield (eu recomendo a versão V5, mas eu tinha a versão V4)

Fios de ligação (10 peças)

MPU6050 IMU (opcional)

Sensor ultrassônico (opcional)

HARDWARE:

Rolamentos de esferas (8x19x7mm, 12 peças)

Porcas e parafusos M4

Filamento de impressora 3D (caso você não tenha uma impressora 3D, deve haver uma impressora 3D em um espaço de trabalho local ou as impressões podem ser feitas online por um preço muito baixo)

Folhas de acrílico (4 mm)

FERRAMENTAS

impressora 3d

Cortador a laser

O custo mais significativo deste projeto são os 12 servo motores. Eu recomendo ir para a versão de gama média a alta em vez de usar as de plástico baratas, uma vez que tendem a quebrar facilmente. Excluindo as ferramentas, o custo total deste projeto é de aproximadamente 60 $.

Etapa 3: peças fabricadas digitalmente

Peças fabricadas digitalmente
Peças fabricadas digitalmente
Peças fabricadas digitalmente
Peças fabricadas digitalmente
Peças fabricadas digitalmente
Peças fabricadas digitalmente

As peças necessárias para este projeto tiveram que ser personalizadas, portanto, usamos o poder das peças fabricadas digitalmente e do CAD para construí-las. A maioria das peças são impressas em 3D, exceto algumas que são cortadas a laser em acrílico de 4 mm. As impressões foram feitas com preenchimento de 40%, 2 perímetros, bico de 0,4 mm e uma altura de camada de 0,1 mm com PLA. Algumas das peças requerem apoios, uma vez que têm uma forma complexa com saliências, no entanto, os apoios são facilmente acessíveis e podem ser removidos com alguns cortadores. Você pode escolher a cor de sua escolha para o filamento. Abaixo você pode encontrar a lista completa de peças e os STLs para imprimir sua própria versão e os projetos 2D para as peças cortadas a laser.

Nota: A partir daqui, as peças serão referenciadas usando os nomes na lista a seguir.

Peças impressas em 3D:

  • suporte do servo quadril x 2
  • espelho de suporte servo quadril x 2
  • suporte de joelho servo x 2
  • espelho de suporte de joelho servo x 2
  • suporte de rolamento x 2
  • suporte de rolamento espelho x 2
  • perna x 4
  • ligação da buzina servo x 4
  • elo de rolamento x 4
  • suporte arduino x 1
  • suporte do sensor de distância x 1
  • Suporte L x 4
  • bucha de rolamento x 4
  • espaçador servo chifre x 24

Peças cortadas a laser:

  • painel de suporte do servo x 2
  • painel superior x 1

No total, são 30 peças que precisam ser impressas em 3D, excluindo os vários espaçadores, e 33 peças fabricadas digitalmente no total. O tempo total de impressão é de cerca de 30 horas.

Etapa 4: preparando os links

Preparando os Links
Preparando os Links
Preparando os Links
Preparando os Links
Preparando os Links
Preparando os Links

Você pode começar a montagem configurando algumas peças no início, o que tornará o processo de montagem final mais gerenciável. Você pode começar com o link. Para fazer a ligação do rolamento, lixe levemente a superfície interna dos orifícios do rolamento e, em seguida, empurre o rolamento para dentro do orifício em ambas as extremidades. Certifique-se de empurrar o rolamento até que um lado esteja nivelado. Para construir o link do servo horn, pegue dois servo horns circulares e os parafusos que vieram junto com eles. Coloque as pontas na impressão 3D e alinhe os dois orifícios, em seguida aparafuse a ponta na impressão 3D fixando o parafuso do lado da impressão 3D. Eu tive que usar alguns espaçadores de chifre de servo impressos em 3D, pois os parafusos que foram fornecidos eram um pouco longos e cruzariam com o corpo do servo motor enquanto ele girava. Uma vez que os links estejam construídos, você pode começar a configurar os vários suportes e suportes.

Repita isso para todos os 4 links de ambos os tipos.

Etapa 5: Preparando os Servo Brackets

Preparando os Servo Brackets
Preparando os Servo Brackets
Preparando os Servo Brackets
Preparando os Servo Brackets
Preparando os Servo Brackets
Preparando os Servo Brackets

Para configurar o suporte do servo de joelho, simplesmente passe um parafuso de 4 mm pelo orifício e prenda-o com uma porca. Isso funcionará como o eixo secundário do motor. Do suporte do servo de quadril, passe dois parafusos através dos dois orifícios e prenda-os com mais duas porcas. Em seguida, pegue outro chifre de servo circular e prenda-o à seção ligeiramente elevada do suporte usando os dois parafusos que vieram com os chifres. Mais uma vez, eu recomendo que você use o espaçador da corneta do servo para que os parafusos não se projetem para dentro da lacuna do servo. Finalmente, pegue a peça do suporte do rolamento e empurre um rolamento para dentro do orifício. Pode ser necessário lixar levemente a superfície interna para um bom ajuste. Em seguida, empurre um rolamento no rolamento na direção de que a peça do suporte do rolamento dobre.

Consulte as fotos anexadas acima enquanto constrói os suportes. Repita esse processo para o resto dos colchetes. Os espelhados são semelhantes, apenas tudo é espelhado.

Etapa 6: montagem das pernas

Montando as pernas
Montando as pernas
Montando as pernas
Montando as pernas
Montando as pernas
Montando as pernas
Montando as pernas
Montando as pernas

Depois que todos os links e suportes estiverem montados, você pode começar a construir as quatro pernas do robô. Comece prendendo os servos nos suportes usando 4 parafusos e porcas M4. Certifique-se de alinhar o eixo do servo com o parafuso protuberante do outro lado.

Em seguida, conecte o servo do quadril com o servo do joelho usando a peça de ligação do servo horn. Não use um parafuso ainda para prender a buzina no eixo do servo motor, pois podemos precisar ajustar a posição mais tarde. No lado oposto, monte a ligação do rolamento que contém os dois rolamentos nos parafusos salientes usando porcas.

Repita este processo para o resto das três pernas e as 4 pernas do quadrúpede estão prontas!

Etapa 7: montagem do corpo

Montagem do corpo
Montagem do corpo
Montagem do corpo
Montagem do corpo
Montagem do corpo
Montagem do corpo
Montagem do corpo
Montagem do corpo

A seguir, podemos nos concentrar na construção do corpo do robô. O corpo aloja quatro servo motores que dão às pernas seu 3º grau de liberdade. Comece usando 4 parafusos e extremidades M4 para anexar o servo ao painel de suporte do servo de corte a laser.

Nota: Certifique-se de que o servo está conectado de forma que o eixo esteja no lado externo da peça, como visto nas fotos anexadas acima. Repita este processo para o resto dos três servo motores tendo em mente a orientação.

Em seguida, prenda os suportes em L em ambos os lados do painel usando duas porcas e parafusos M4. Esta peça nos permite fixar firmemente o painel do suporte do servo no painel superior. Repita este processo com mais dois suportes em L e o segundo painel de suporte do servo segurando o segundo conjunto de servo motores.

Uma vez que os suportes L estiverem no lugar, use mais porcas e parafusos M4 para prender o painel do suporte do servo ao painel superior. Comece com o conjunto externo de porcas e parafusos (para a frente e para trás). As porcas e parafusos centrais também seguram a peça do suporte do arduino. Use quatro porcas e parafusos para prender o suporte do arduino de cima para baixo no painel superior e alinhe os parafusos de forma que eles também passem pelos orifícios de suporte L. Consulte as imagens anexadas acima para esclarecimentos. Por fim, deslize quatro porcas nas ranhuras dos painéis do suporte do servo e use os parafusos para prender os painéis do suporte do servo no painel superior.

Etapa 8: juntando tudo

Juntando tudo
Juntando tudo
Juntando tudo
Juntando tudo
Juntando tudo
Juntando tudo

Assim que as pernas e o corpo estiverem montados, você pode começar a concluir o processo de montagem. Monte as quatro pernas nos quatro servos usando os chifres do servo que foram anexados ao suporte do servo do quadril. Finalmente, use as peças do suporte do rolamento para apoiar o eixo oposto do suporte do quadril. Passe o eixo pelo rolamento e use um parafuso para fixá-lo no lugar. Prenda os suportes de rolamento ao painel superior usando duas porcas e parafusos M4.

Com isso a montagem das ferragens do quaduped está pronta.

Etapa 9: Fiação e circuito

Fiação e Circuito
Fiação e Circuito
Fiação e Circuito
Fiação e Circuito
Fiação e Circuito
Fiação e Circuito
Fiação e Circuito
Fiação e Circuito

Decidi usar uma blindagem de sensor que fornecia conexões para servo motores. Eu recomendaria que você use a blindagem do sensor v5, uma vez que possui uma porta de fonte de alimentação externa integrada. No entanto, o que usei não tinha essa opção. Olhando a blindagem do sensor mais de perto, percebi que ela estava consumindo energia do pino 5v onboard do Arduino (o que é uma péssima ideia quando se trata de servo motores de alta potência, já que há risco de danificar o Arduino). A solução para esse problema foi dobrar o pino de 5 V na blindagem do sensor para que não se conectasse ao pino de 5 V do Arduino. Dessa forma, agora podemos fornecer alimentação externa por meio do pino de 5 V sem danificar o Arduino.

As conexões dos pinos de sinal dos 12 servo motores estão indicadas na tabela abaixo.

Nota: Hip1Servo se refere ao servo anexado ao corpo. Hip2Servo se refere ao servo conectado à perna.

Perna 1 (avançar à esquerda):

  • Hip1Servo >> 2
  • Hip2Servo >> 3
  • KneeServo >> 4

Perna 2 (frente à direita):

  • Hip1Servo >> 5
  • Hip2Servo >> 6
  • KneeServo >> 7

Perna 3 (traseira esquerda):

  • Hip1Servo >> 8
  • Hip2Servo >> 9
  • KneeServo >> 10

Perna 4 (traseira direita):

  • Hip1Servo >> 11
  • Hip2Servo >> 12
  • KneeServo >> 13

Etapa 10: configuração inicial

Configuração inicial
Configuração inicial
Configuração inicial
Configuração inicial

Antes de começar a programar andadas complexas e outros movimentos, precisamos definir os pontos zero de cada servo. Isso dá ao robô um ponto de referência que ele usa para realizar os vários movimentos.

Para evitar danos ao robô, você pode remover os links da buzina do servo. Em seguida, carregue o código que está anexado abaixo. Este código coloca cada um dos servos a 90 graus. Uma vez que os servos alcançaram a posição de 90 graus, você pode recolocar os links de forma que as pernas fiquem perfeitamente retas e o servo preso ao corpo fique perpendicular ao painel superior do quadrúpede.

Neste ponto, devido ao design das pontas do servo, algumas das articulações podem ainda não estar perfeitamente retas. A solução para isso é ajustar a matriz zeroPositions encontrada na 4ª linha do código. Cada número representa a posição zero do servo correspondente (a ordem é a mesma em que você conectou o servo ao Arduino). Ajuste esses valores um pouco até que as pernas estejam perfeitamente retas.

Observação: aqui estão os valores que eu uso, embora esses valores possam não funcionar para você:

int zeroPositions [12] = {93, 102, 85, 83, 90, 85, 92, 82, 85, 90, 85, 90};

Etapa 11: Um pouco sobre a cinemática

Um pouco sobre a cinemática
Um pouco sobre a cinemática
Um pouco sobre a cinemática
Um pouco sobre a cinemática
Um pouco sobre a cinemática
Um pouco sobre a cinemática

Para fazer com que o quadrúpede execute ações úteis, como correr, caminhar e outros movimentos, os servos precisam ser programados na forma de caminhos de movimento. Caminhos de movimento são caminhos ao longo dos quais o efetor final (os pés, neste caso) viaja. Existem duas maneiras de conseguir isso:

  1. Uma abordagem seria alimentar os ângulos de junta dos vários motores de uma maneira de força bruta. Essa abordagem pode ser demorada, tediosa e também cheia de erros, uma vez que o julgamento é puramente visual. Em vez disso, existe uma maneira mais inteligente de alcançar os resultados desejados.
  2. A segunda abordagem gira em torno de alimentar as coordenadas do efetor final em vez de todos os ângulos da junta. Isso é conhecido como Cinemática Inversa. As coordenadas de entrada do usuário e os ângulos da junta se ajustam para posicionar o efetor final nas coordenadas especificadas. Este método pode ser considerado como uma caixa preta que recebe como entrada uma coordenada e fornece os ângulos da junta. Para aqueles que estão interessados em como as equações trigonométricas desta caixa preta foram desenvolvidas, podem olhar o diagrama acima. Para quem não tem interesse, as equações já estão programadas e podem ser utilizadas utilizando a função pos que toma como entrada x, y, z, que é a localização cartesiana do efetor final e dá saída a três ângulos correspondentes aos motores.

O programa que contém essas funções pode ser encontrado na próxima etapa.

Etapa 12: Programando o Quadrúpede

Programando o Quadrúpede
Programando o Quadrúpede

Assim que a fiação e a inicialização forem concluídas, você pode programar o robô e gerar caminhos de movimento interessantes para que o robô execute tarefas interessantes. Antes de continuar, altere a 4ª linha no código anexado para os valores que você definiu na etapa de inicialização. Após carregar o programa, o robô deve começar a andar. Se você notar que algumas das juntas estão invertidas, você pode simplesmente alterar o valor de direção correspondente na matriz de direção na linha 5 (se for 1, torne-o -1 e se for -1, torne-o 1).

Etapa 13: Resultados finais: tempo para experimentar

Resultados finais: tempo para experimentar
Resultados finais: tempo para experimentar
Resultados finais: tempo para experimentar
Resultados finais: tempo para experimentar
Resultados finais: tempo para experimentar
Resultados finais: tempo para experimentar

O robô quadrúpede pode realizar etapas que variam de 5 a 2 cm de comprimento. A velocidade também pode ser variada, mantendo a marcha equilibrada. Este quadrúpede fornece uma plataforma robusta para experimentar vários outros passos e outros objetivos, como pular ou completar tarefas. Eu recomendo que você tente mudar os caminhos de movimento das pernas para criar seus próprios passos e descobrir como vários passos afetam o desempenho do robô. Também deixei vários pontos de montagem na parte superior do robô para sensores adicionais, como sensores de medição de distância para tarefas de evitar obstáculos ou IMU para andamentos dinâmicos em terreno irregular. Pode-se também experimentar um braço de garra adicional montado na parte superior do robô, uma vez que o robô é extremamente estável e robusto e não tomba facilmente.

Espero que tenha gostado deste Instructable e que o tenha inspirado a construir o seu próprio.

Se você gostou do projeto, apoie-o abandonando um voto no "Concurso Make it Move".

Happy Making!

Concurso Make it Move 2020
Concurso Make it Move 2020
Concurso Make it Move 2020
Concurso Make it Move 2020

Segundo prêmio no Make it Move Contest 2020

Recomendado: