Índice:

Arduino 3D Impresso Sumo Bot: 6 etapas
Arduino 3D Impresso Sumo Bot: 6 etapas

Vídeo: Arduino 3D Impresso Sumo Bot: 6 etapas

Vídeo: Arduino 3D Impresso Sumo Bot: 6 etapas
Vídeo: I Built an Arduino Powered Hexapod from Scratch 2024, Novembro
Anonim
Arduino 3D Impresso Sumo Bot
Arduino 3D Impresso Sumo Bot

Então, eu tinha um monte de peças espalhadas pela minha casa. Eu queria participar de uma competição de sumô em alguns meses, mas não tinha um bot. Em vez de comprar um bot ou usar um design existente que exigiria que eu comprasse coisas para o projeto, fui em frente e fiz meu próprio bot a partir do meu próprio design com minhas próprias peças. Você precisará do seguinte para este tutorial.

  1. Uma de cada parte impressa em 3D encontrada aqui.
  2. Uma bateria de 7,4 volts ou duas baterias 18650.
  3. Um suporte de bateria, se necessário.
  4. Arduino uno.
  5. Escudo de fuga do Arduino uno.
  6. Cabo USB para Arduino.
  7. Fonte de alimentação de bancada (opcional).
  8. Carregador (opcional).
  9. Fios e muitos deles.
  10. Servos de rotação contínua de engrenagem de metal de tamanho padrão.
  11. Dois sensores de comutação ir.
  12. Rodas servo de 7cm.
  13. Interruptor de ligar e desligar.

Este código está sendo alterado constantemente. O código para este robô pode ser encontrado aqui. Esta é a versão mais atualizada deste código de projeto. Aproveitar!

Etapa 1: montagem

Conjunto
Conjunto
Conjunto
Conjunto
Conjunto
Conjunto
  1. O robô usa dois servos de engrenagem de metal. Você vai querer parafusá-los usando parafusos e porcas m3 com os servos dentro do chassi voltados para fora em ambas as direções. Há apenas uma maneira de os servos entrarem no robô, então isso será bem direto.
  2. Anexe as rodas servo.
  3. Conecte os sensores IR de forma que fiquem voltados para baixo na frente do robô. Eles são presos por dois parafusos através dos orifícios M3 na frente do robô. Há fendas na parte inferior do robô para eles espiarem. Você deve ter cuidado para que os sensores não capturem o chassi e possam ver todo o caminho através das fendas. Você aprenderá mais sobre isso posteriormente enquanto testamos o robô para ver se seu trabalho prático funcionou.
  4. Coloque o sensor HC-SR04 dentro dos dois orifícios voltados para fora do robô de dentro. Os orifícios estão localizados na parte frontal do chassi.
  5. Coloque o Arduino Uno dentro do chassi com a blindagem.
  6. Conecte tudo de acordo com a lista de marcadores abaixo.

    1. Ligue a alimentação da fonte de alimentação de sua escolha ao botão liga / desliga. Você conectará o condutor positivo ou negativo ao switch. Se você escolheu o condutor negativo, este será o seu aterramento, enquanto se você escolheu o condutor positivo, este será o seu condutor de fonte de alimentação. O outro fio, dependendo se é positivo ou negativo, será positivo ou negativo.
    2. Conecte o terminal positivo a vin no Arduino e o terminal positivo nos servos.
    3. Conecte o aterramento ao aterramento nos servos e no Arduino.
    4. Conecte 5v do regulador de 5 volts no Arduino a todos os terminais positivos em cada um dos sensores.
    5. Conecte os sensores ao aterramento no Arduino.
    6. Por último, conecte o pino 7 do Arduino ao sensor IR direito, o pino 6 ao sensor IR esquerdo, o pino 8 a um dos servos, o pino 9 ao último servo.

Aviso: Deixar de conectar o robô corretamente pode fazer com que o robô fume e destrua os componentes eletrônicos

Etapa 2: primeiros sinais de vida

Aviso: Não conecte o robô ao seu computador enquanto estiver ligado ou com os servos sendo conectados. Não fazer isso pode causar danos ao seu computador

modo int = 3;

Esta linha de código acima é a variável crucial para o robô. Ele faz o seguinte se for igual a cada número listado abaixo.

  1. Embora igual a zero, o robô se move em um padrão específico.
  2. Se o modo for igual a um, o robô imprime a saída para o computador de cada uma das leituras dos sensores.
  3. Quando igual a dois, o robô evita arestas e obstáculos caso os encontre.
  4. O robô luta contra outros bots.

Estes são os diferentes modos do robô usados para testar e ajudar no progresso do robô. Você precisará alterar esse "3" para zero na primeira etapa deste tutorial.

Agora carregue o código para o robô. Você o verá se movendo para frente, para trás, para a esquerda e para a direita nessa ordem.

Etapa 3: pode ver

modo int = 0;

Altere a seguinte variável para "1" se a etapa anterior foi concluída. Agora, quando conectado ao seu monitor serial no Arduino, ele imprimirá o que o seu robô está vendo. "0" significa para os sensores de borda que ele está vendo algo. "1" significa que não está vendo nenhuma borda. Se você notar que a lógica está invertida, anote isso para as próximas etapas.

Não se preocupe com o sensor de ping. Ainda não consegui fazer isso funcionar. Este robô está sob intenso desenvolvimento.

Etapa 4: pode evitar a borda da mesa

void Avoid () {

int sensorStateLeft = digitalRead (leftSensor);

int sensorStateRight = digitalRead (rightSensor);

atraso (50);

if (Ping.ping_cm ()> = 15 && sensorStateLeft == 0 && sensorStateRight == 0) {

left.write (0); right.write (90);

}

if (Ping.ping_cm () <= 15 && Ping.ping_cm ()! = 0 || sensorStateLeft == 1 || sensorStateRight == 1) {

left.write (90);

right.write (0); }

}

Este código acima é o código invocado quando o modo é igual a dois. Se a etapa anterior foi concluída, altere o modo para igual a "2".

Se os sensores forem invertidos, sinta-se à vontade para inverter "sensorStateLeft" e "sensorStateRight" em cada uma das declarações "if" para igualar um número diferente do que foi dado, que é "1" ou "0".

Agora o robô pode evitar a borda de uma arena de sumô. Está quase pronto para a batalha. Sinta-se à vontade para testá-lo para ver se funciona ou não.

Etapa 5: BATALHA

Seu sumô está pronto para a batalha agora, com algumas alterações de código. Mude o modo para ser igual a "3" e inverta a lógica conforme necessário no vazio "Sumo". Agora seu robô deve estar evitando a borda da arena, mas não pode detectar outros robôs. Ele basicamente evita as bordas da arena e se move rápido o suficiente para empurrar um robô para fora da mesa. Aproveitar!

Etapa 6: Conclusão

Seu robô está pronto agora. Se houver algum problema ou comentário para este projeto, sinta-se à vontade para me avisar. Estou inacreditavelmente aberto a feedback porque não tenho ideia se este foi um tutorial bem feito ou não. Aproveitar!

Recomendado: