Índice:

Hexapod: 14 etapas (com imagens)
Hexapod: 14 etapas (com imagens)

Vídeo: Hexapod: 14 etapas (com imagens)

Vídeo: Hexapod: 14 etapas (com imagens)
Vídeo: Chile Spanish talks #2 2024, Novembro
Anonim
Hexapod
Hexapod
Hexapod
Hexapod
Hexapod
Hexapod

Há alguns anos estou interessado em brincar e criar robôs e me inspirei muito no Zenta, aqui você encontra seu canal no Youtube https://www.youtube.com/channel/UCmCZ-oLEnCgmBs_T e seu site

Você pode encontrar muitos kits de muitos fornecedores diferentes na Internet, mas eles são muito caros, até 1.500 $ + por um hexapod 4 DoF, e os kits da China não são de boa qualidade. Então, decidi criar no hexapod do meu jeito. Inspirado no hexápodo Phoenix da Zenta, você o encontrará em seu canal no Youtube (e um kit você pode encontrar em https://www.lynxmotion.com/c-117-phoenix.aspx, comecei a criar o meu próprio do zero.

Para a criação, defina as seguintes metas / requisitos para mim:

1.) Divirta-se muito e aprenda coisas novas.

2.) Design orientado a custos (droga, minha empresa me estragou totalmente)

3.) Peças feitas de madeira (porque é mais fácil para a maioria das pessoas e também para mim cortar madeira)

4.) Usando ferramentas disponíveis gratuitas (software)

Então, o que usei até agora?

a) SketchUp, para o projeto mecânico.

b) Madeira de faia 4mm e 6mm (1/4 ).

c) Arduino Uno, Mega, IDE.

d) Servos digitais padrão (encontrados na amazon por um bom preço).

e) Dosuki e Serra de fita, furadeira, lixa e lima.

Etapa 1: Construção de Pernas e Suportes Servo

Construção de Pernas e Suportes Servo
Construção de Pernas e Suportes Servo
Construção de Pernas e Suportes Servo
Construção de Pernas e Suportes Servo
Construção de Pernas e Suportes Servo
Construção de Pernas e Suportes Servo

Primeiro eu estava fazendo uma pesquisa na internet para descobrir como fazer um robô, mas não tive muito sucesso em encontrar boas informações de como fazer um projeto mecânico. Então, eu estava lutando muito e finalmente decidi usar o SketchUp.

Depois de algumas horas aprendendo fazendo com o SketchUp, terminei meu primeiro desenho das pernas. O fêmur é otimizado para o tamanho dos chifres de servo que estou usando. Como descobri, o original parece ter cerca de 1 de diâmetro, mas minhas pontas de servo têm 21 mm.

Fazer uma impressão com a escala certa não estava funcionando corretamente com o SketchUp no meu computador, então salvei como PDF, fiz uma impressão com 100%, fiz algumas medições e finalmente imprimi novamente com o fator de escala correto.

Na primeira tentativa, estava criando apenas artes para duas pernas. Para isso empilhei duas tábuas, colei (para papel de parede) a impressão nela e recortei as partes com um modelo de serra de fita artesanal.

Material usado: madeira de faia 6mm (1/2 )

Depois fiz alguns experimentos, não documentei, e fiz algumas otimizações. Como você pode ver, a tíbia é um pouco grande assim como o fêmur.

Para montar os chifres do servo através do fêmur, 2 mm do material deve ser cortado. Isso pode ser feito de diferentes maneiras. Com uma tupia ou com uma broca Forstner. O Forstner tinha apenas 200 mm de diâmetro, então tive que fazer um pouco do pós-guerra manualmente com um cinzel.

Etapa 2: Otimizando o fêmur e o Tibia

Otimizando o Femur e Tibia
Otimizando o Femur e Tibia
Otimizando o Femur e Tibia
Otimizando o Femur e Tibia
Otimizando o Femur e Tibia
Otimizando o Femur e Tibia
Otimizando o Femur e Tibia
Otimizando o Femur e Tibia

Mudei um pouco o design.

1.) Tibia agora está se adaptando ao servo que estou usando muito melhor.

2.) O fêmur agora é um pouco menor (cerca de 3 de eixo a eixo) e se ajusta às pontas do servo (diâmetro de 21 mm).

Eu estava usando 6 placas de madeira de 6 mm e colei-as com fita dupla-face. Se não for forte o suficiente, você pode fazer um furo em todas as placas e usar um parafuso para fixá-las. em seguida, as peças são cortadas imediatamente com a serra de fita. Se você for forte o suficiente, também pode usar um quebra-cabeças:-)

Etapa 3: Projetando o Servo Bracket

Projetando o Servo Bracket
Projetando o Servo Bracket
Projetando o Servo Bracket
Projetando o Servo Bracket
Projetando o Servo Bracket
Projetando o Servo Bracket
Projetando o Servo Bracket
Projetando o Servo Bracket

Agora é hora de projetar o suporte do servo. Isso é fortemente projetado em relação ao servo usado que usei. Todas as peças são feitas de madeira de faia 6 mm novamente veja o próximo passo.

Etapa 4: Corte e montagem de suportes de servo

Corte e montagem de suportes de servo
Corte e montagem de suportes de servo
Corte e montagem de suportes de servo
Corte e montagem de suportes de servo

Novamente cortei seis partes ao mesmo tempo, todas na serra de fita. O método é o mesmo de antes.

1.) Usando fita dupla-face, para colar as placas.

2.) Parafusos para ter mais estabilidade durante o corte (não mostrado aqui).

Depois usei um pouco de cola de artesanato para colar os modelos e dois parafusos SPAX (ainda não aplicados na foto).

Em comparação com o hexápode original, não estou usando rolamentos de esferas ainda, em vez disso, estou usando apenas parafusos de 3 mm, arruelas e porcas de auto-fixação posteriormente para montar as pernas com o corpo / chassi.

Etapa 5: montagem das pernas e teste

Image
Image
Montagem das pernas e teste
Montagem das pernas e teste
Montagem das pernas e teste
Montagem das pernas e teste

Nas duas primeiras fotos você vê a primeira versão de uma perna. Em seguida, você verá a comparação das peças novas e antigas e uma comparação das peças novas (versão dois) com o original (foto no fundo).

Finalmente, você fará um primeiro teste de movimento.

Etapa 6: construção e montagem do corpo

Corpo de construção e montagem
Corpo de construção e montagem
Corpo de construção e montagem
Corpo de construção e montagem
Corpo de construção e montagem
Corpo de construção e montagem

O corpo que tentei reconstruir a partir de fotos. Como referência, usei a sirene do servo, que assumi com 1 "de diâmetro. Portanto, a parte frontal passa a ter uma largura de 4,5" e a intermediária 6,5 ". Para o comprimento assumi 7". Mais tarde, comprei o kit original do corpo e o comparei. Eu estava chegando muito perto do original. Finalmente fiz uma terceira versão, que é uma cópia 1: 1 do original.

O primeiro kit de carroceria que fiz em madeira com dobra de 6 mm, aqui você vê a segunda versão feita de madeira com dobra de 4 mm, que descobri ser forte e rígida o suficiente. Diferente do kit original, eu estava montando o chifre do servo em cima, resp. através do material (você pode ver isso também com o fêmur). O motivo é que não estou com vontade de comprar chifres de alumínio caros, em vez disso, quero usar os chifres de plástico já fornecidos. Outra razão é que estou chegando mais perto do servo, então as forças de cisalhamento são menores. Isso torna a conexão mais estável.

A propósito, às vezes é bom ter Ganesh a bordo. Obrigado ao meu amigo Tejas:-)

Etapa 7: Primeiros testes elektrônicos

Image
Image
Tibia e Coxa EV3
Tibia e Coxa EV3

Todas as artes estão reunidas agora. OK, eu sei que não está muito bonito, mas na verdade estou experimentando muito. No vídeo você pode ver a reprodução de algumas sequências predefinidas simples; na verdade, não há cinemática inversa implementada. A marcha predefinida não está funcionando corretamente porque foi projetada para 2 DoF.

Neste exemplo, estou usando o servo controlador SSC-32U da Lynxmotion, você o encontrará aqui:

Alguns dias atrás eu também estava usando outro controlador PWM (controlador PWM de 16 canais Adafruit, https://www.adafruit.com/product/815), mas o SCC tem alguns recursos interessantes, como diminuir a velocidade dos servos.

Então, é isso agora. Em seguida, tenho que descobrir como fazer os trabalhos de cinemática inversa (IK), talvez eu irei programar uma marcha simples como a predefinida no controlador SSC. Já encontrei um exemplo pronto para usar aqui https://github.com/KurtE/Arduino_Phoenix_Parts, mas ainda não o executei. Não tenho ideia do porquê, mas estou trabalhando.

Portanto, aqui está uma pequena lista de tarefas pendentes.

1.) Programe uma marcha simples, como embutida no SSC.

2.) Programe uma classe / wrapper de controlador PS3 para o Arduino Phoenix.

3.) Pegue o código de KurtE executando ou escreva meu próprio código.

Os servos que estou usando encontrei na Amazon https://www.amazon.de/dp/B01N68G6UH/ref=pe_3044161_189395811_TE_dp_1. O preço é muito bom, mas a qualidade poderia ser muito melhor.

Etapa 8: primeiro teste de marcha simples

Como mencionei na última etapa, tentei programar minha própria sequência de marcha. Este é muito simples, como um brinquedo mecânico, e não é otimizado para o corpo que estou usando aqui. Um corpo reto simples seria muito melhor.

Então, desejo-lhe muita diversão. Eu tenho que aprender IK agora;-)

Observações: Ao observar as pernas com atenção, você verá que alguns servos estão se comportando de maneira estranha. O que quero dizer é que eles nem sempre estão se movendo suavemente, talvez eu tenha que substituí-los por outros servos.

Etapa 9: Portando o controlador PS3

Esta manhã eu estava escrevendo um wrapper para o código do Phoenix. Levei algumas horas, cerca de 2-3, para fazer isso. o código não foi finalmente depurado e eu adicionei alguma depuração extra ao console. Funciona até agora:-)

Mas, por falar nisso, quando eu estava rodando o código do Phoenix, parecia que todos os servos rodavam invertidos (direção oposta).

Quando você quiser experimentar por si mesmo, você precisa do código de KurtE como base https://github.com/KurtE/Arduino_Phoenix_Parts. Siga as instruções para instalar o código. Copie a pasta Phoenix_Input_PS para a pasta da biblioteca do Arduino (geralmente a subpasta da pasta de esboço) e a pasta Phoenix_PS3_SSC32 para a pasta de esboço.

Info: Se você não tem experiência com Arduino e ferramentas e tem alguns problemas, entre em contato com a comunidade Arduino (www.arduino.cc). Quando você tiver problemas com o código Phoenix de KurtE, entre em contato com ele. Obrigado.

Aviso: Entender o código, na minha opinião, não é nada para iniciantes, então você deve estar muito familiarizado com C / C ++, programação e algoritmo. O código também tem muitos códigos compilados condicionais, controlados por #defines, o que torna muito difícil de ler e entender.

Hardwarelist:

  • Arduino Mega 2560
  • Blindagem de host USB (para Arduino)
  • Controle PS3
  • Servo controlador LynxMotion SSC-32U
  • Bateria de 6 V (leia os requisitos de todo o seu hardware, caso contrário, você pode danificá-lo)
  • Arduino IDE
  • Alguns cabos USB, interruptores e outras peças pequenas, conforme necessário.

Se você gosta de um controlador PS2, encontrará muitas informações na Internet sobre como se conectar ao Arduino.

Então, por favor, seja paciente. Vou atualizar esta etapa, quando o software funcionar corretamente.

Etapa 10: Primeiro teste IK

Image
Image

Eu encontrei uma porta diferente do código Phoenix que funciona muito melhor (https://github.com/davidhend/Hexapod), talvez eu tenha problemas de configuração com o outro código. O código parece estar um pouco bugado e os movimentos não parecem muito suaves, mas para mim isso é um grande passo à frente.

Por favor, considere, o código é realmente experimental. Tenho que limpar e corrigir bastante e publicarei uma atualização nos próximos dias. A porta PS3 é baseada na porta PS3 já publicada, e descartei os arquivos PS2 e XBee.

Etapa 11: segundo teste IK

A solução foi tão fácil. Tive que corrigir alguns valores de configuração e inverter todos os ângulos do servo. Agora funciona:-)

Etapa 12: Tibia e Coxa EV3

Tibia e Coxa EV3
Tibia e Coxa EV3
Tibia e Coxa EV3
Tibia e Coxa EV3

Não resisti, então fiz novas tíbias e coxa (servo braquetes). Esta é agora a terceira versão que fiz. Os novos são mais redondos e têm um aspecto mais orgânico / biônico.

Portanto, o status real é. O hexapod está funcionando, mas ainda tem alguns problemas com algumas coisas.

1.) Não descobri porque o BT tem um atraso de 2..3 segundos.

2.) A qualidade do servo é ruim.

Coisas para fazer:

* A fiação dos servos deve ser melhorada.

* Precisa de um bom porta-bateria.

* Tem que encontrar uma maneira de montar a eletrônica.

* Recalibre os servos.

* Adicionando sensores e um monitor de tensão para a bateria.

Etapa 13: Fémur de forma lisa

Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa

Há alguns dias já fiz um novo fêmur porque não estava totalmente satisfeito com o anterior. Na primeira foto você verá as diferenças. Os antigos tinham um diâmetro de 21 mm nas extremidades, os novos têm um diâmetro de 1 polegada. Fiz furos de afundamento no fêmur com minha fresadora com uma ferramenta de ajuda simples, como você pode ver nas próximas três fotos.

Antes de fazer os furos no fêmur, faz sentido fazer todos os orifícios, caso contrário, pode ser difícil. O chifre do servo se encaixa muito bem, o próximo passo, não mostrado aqui, é dar às bordas um formato arredondado. Para isso usei uma fresadora com raio de 3 mm.

Na última foto você verá uma comparação entre a antiga e a nova. Não sei o que você pensa, mas gosto muito mais do novo.

Etapa 14: etapas finais

Image
Image
Passos Finais
Passos Finais
Passos Finais
Passos Finais
Passos Finais
Passos Finais

Vou terminar este tutorial agora, caso contrário, ele se tornará uma história sem fim:-).

No vídeo você verá o código Phoenix de KurtE rodando com algumas de minhas modificações. O robô não está se movendo perfeitamente, desculpe, mas os servos baratos têm uma qualidade ruim. Encomendei outros servos, acabei de testar dois deles com bons resultados e ainda estou à espera da entrega. Então, desculpe, não posso mostrar como o robô funciona com os novos servos.

Vista traseira: Um sensor de corrente de 20 amperes, à esquerda do potenciômetro de 10 k. Quando o robô anda, consome facilmente 5 amperes. À direita do pote de 10 k você verá um pixel OLED de 128x64 mostrando algumas informações de status.

Vista frontal: Um sensor ultrassônico simples HC-SR04, ainda não integrado no SW.

Vista lateral direita: acelerador MPU6050 e giro (6 eixos).

Vista do lado esquerdo: alto-falante piezo.

O projeto mecânico agora está mais ou menos pronto, exceto dos servos. Assim, as próximas tarefas serão integrar alguns sensores ao SW. Para isso, criei uma conta no GitHub com o SW que estou usando, que se baseia em um instantâneo do Phoenix SW de KurtE.

OLED:

Meu GitHub:

Recomendado: