Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Construa um Atirador Automatizado LEGO Star Wars com Arduino Uno

Componentes e Materiais

Componente Quantidade Observações
Arduino UNO 1 Esta é a placa que usei. Um Arduino Uno também funcionaria.
Motor micro-servo SG90 4 São os motores necessários para o projeto.
Fios jumpers (genéricos) 1
Canhão Atirável LEGO Star Wars 4
Protoboard (genérica) 1

Ferramentas e Máquinas Necessárias

Aplicativos e Serviços Online

Sobre o Projeto

Este projeto é sobre fazer canhões LEGO atirarem automaticamente. Gosto de brincar com LEGO e de usar Arduinos, então decidi fazer este projeto no meu tempo livre. Os motores servo, com seus braços acoplados, giram batendo na alavanca e atirando o canhão. Um ótimo primeiro, segundo ou terceiro projeto para iniciantes!

Este é um guia passo a passo de como fazer.

Passo 1: O Hardware

Passo 1 Parte 1: Básicos do Hardware

Comece com 5V indo para a fileira positivamente carregada e GND para a fileira negativamente carregada. Ficará assim:

Construa um Atirador Automatizado LEGO Star Wars com Arduino Uno
Protoboard com linhas de alimentação configuradas

Passo 1 Parte 2: Conectando Servo #1

O Servo tem três fios: o laranja/amarelo (sinal) ocupará um slot no pino DIGITAL (PWM~), o vermelho (alimentação) irá para VIN (qualquer pino na fileira positiva), e o preto/marrom (GND) irá para a fileira negativamente carregada conectada ao pino GND no Uno. O pino digital que usei para meu primeiro servo é o 7. Aqui está o esquemático com o primeiro servo conectado:

Construa um Atirador Automatizado LEGO Star Wars com Arduino Uno
Conexão do primeiro servo

Passo 1 Parte 3: Conectando o Restante dos Servos

Depois que você pegar o jeito com os servos, o resto será tranquilo. Uma coisa a notar: você deve manter a consistência com os pinos digitais que conectou aos servos no código.

Por exemplo, o código (encontrado no final da página) diz:

secondCannon.attach(8);

Portanto, o segundo servo deve ser conectado ao pino digital 8.

Da mesma forma, o terceiro servo deve ser conectado ao pino digital 6, e o quarto ao pino digital 9.

No entanto, isso pode ser alterado para qualquer ordem que você queira. Apenas certifique-se de alterar tanto o hardware quanto o software para consistência, caso contrário o código não funcionará.

Para rodar com o código fornecido no final, o esquemático deve ficar assim:

Construa um Atirador Automatizado LEGO Star Wars com Arduino Uno
Esquemático completo com 4 servos conectados

Parabéns! Você completou oficialmente a parte de hardware deste projeto.

Passo 2: O Software

Agora, copie e cole o código no final da página em um sketch do Arduino e faça o upload. Certifique-se de ter a biblioteca Servo antes de fazer o upload, caso contrário não funcionará! Abaixo um guia passo a passo explicando o código e o que significa ao rodar o programa.

#include <Servo.h> // Incluindo a biblioteca para os Servos
Servo firstCannon;  // Definindo o Primeiro Canhão como Servo
Servo secondCannon; // Definindo o Segundo Canhão como Servo
Servo thirdCannon;  // Definindo o Terceiro Canhão como Servo
Servo fourthCannon; // Definindo o Quarto Canhão como Servo

Este código configura a biblioteca Servo.h, que terá papel fundamental. Isso é mostrado pelas linhas seguintes, usando a biblioteca para definir quatro canhões como Servos, ou motores que podem girar 180 graus.

void setup() {
  // Código de setup, executado apenas uma vez
  Serial.begin(9600); // Inicia comunicação serial
  Serial.println("Defend the Clones! Set up the defenses!") // Imprime no Monitor Serial
  firstCannon.attach(7);   // Conecta Pino Digital 7 ao Primeiro Canhão
  secondCannon.attach(8);  // Conecta Pino Digital 8 ao Segundo Canhão
  thirdCannon.attach(6);   // Conecta Pino Digital 6 ao Terceiro Canhão
  fourthCannon.attach(9);  // Conecta Pino Digital 9 ao Quarto Canhão
}

O código void setup() é usado em quase qualquer projeto Arduino, e é executado apenas uma vez. Neste caso, iniciamos a comunicação serial a 9600 baud. Depois, imprimimos algo no Monitor Serial. Para programar os servos, precisamos conectar seus nomes aos respectivos pinos digitais. Esse é o propósito do código .attach().

void loop() {
  // Código de loop, executado infinitamente
  Serial.println("Beginning firing sequence") // Imprime no Monitor Serial
  firstCannon.write(180);  // Gira o primeiro servo 180 graus, disparando o primeiro canhão
  delay(100);              // Espera 1/10 de segundo
  firstCannon.write(0);    // Retorna o servo à posição original para recarregar
  delay(1000);             // Espera 1 segundo
  secondCannon.write(180); // Gira o segundo servo 180 graus, disparando o segundo canhão
  delay(100);
  secondCannon.write(0);
  delay(1000);
  thirdCannon.write(180);  // Gira o terceiro servo 180 graus, disparando o terceiro canhão
  delay(100);
  thirdCannon.write(0);
  delay(1000);
  fourthCannon.write(180); // Gira o quarto servo 180 graus, disparando o quarto canhão
  delay(100);
  fourthCannon.write(0);
  delay(1000);
  Serial.println("All cannons fired");
  Serial.println("Prepare for reload");
  delay(10000);
  Serial.println("Reloading Complete. Preparing to fire again")
}

Esta é a parte final do código, usando a função void loop() que permite que o código seguinte rode infinitamente. Imprimimos no Monitor Serial que os canhões estão prestes a atirar. Os servos de cada canhão devem girar 180 graus e voltar à posição original, um por vez. Depois, há 10 segundos (tempo de recarga) até o processo repetir.

Se tiver outros problemas ao fazer upload do código, comente na seção de comentários e responderei o mais rápido possível. Se funcionar, passe para o próximo passo.

Passo 3: Instalação

O último passo requer os canhões LEGO e fita adesiva comum. O canhão LEGO parece isto:

Construa um Atirador Automatizado LEGO Star Wars com Arduino Uno
Canhão LEGO Star Wars atirável

Rode o código. Veja para que lado o servo gira. Cole o servo no canhão LEGO de forma que sua trajetória o coloque em rota de colisão com a alavanca no topo do canhão na imagem acima.

Bom trabalho! Você finalizou oficialmente este projeto. Como disse, comente abaixo se tiver dúvidas.

Se gostou deste projeto, confira estes links:

Código

Código do Atirador LEGO (C/C++)

Cole isto na Arduino IDE

#include <Servo.h> // Incluindo a biblioteca para os Servos
Servo firstCannon;  // Definindo o Primeiro Canhão como Servo
Servo secondCannon; // Definindo o Segundo Canhão como Servo
Servo thirdCannon;  // Definindo o Terceiro Canhão como Servo
Servo fourthCannon; // Definindo o Quarto Canhão como Servo

void setup() {
  // Código de setup, executado apenas uma vez
  Serial.begin(9600); // Inicia comunicação serial
  Serial.println("Defend the Clones! Set up the defenses!") // Imprime no Monitor Serial
  firstCannon.attach(7);   // Conecta Pino Digital 7 ao Primeiro Canhão
  secondCannon.attach(8);  // Conecta Pino Digital 8 ao Segundo Canhão
  thirdCannon.attach(6);   // Conecta Pino Digital 6 ao Terceiro Canhão
  fourthCannon.attach(9);  // Conecta Pino Digital 9 ao Quarto Canhão
}

void loop() {
  // Código de loop, executado infinitamente
  Serial.println("Beginning firing sequence") // Imprime no Monitor Serial
  firstCannon.write(180);  // Gira o primeiro servo 180 graus, disparando o primeiro canhão
  delay(100);              // Espera 1/10 de segundo
  firstCannon.write(0);    // Retorna o servo à posição original para recarregar
  delay(1000);             // Espera 1 segundo
  secondCannon.write(180); // Gira o segundo servo 180 graus, disparando o segundo canhão
  delay(100);
  secondCannon.write(0);
  delay(1000);
  thirdCannon.write(180);  // Gira o terceiro servo 180 graus, disparando o terceiro canhão
  delay(100);
  thirdCannon.write(0);
  delay(1000);
  fourthCannon.write(180); // Gira o quarto servo 180 graus, disparando o quarto canhão
  delay(100);
  fourthCannon.write(0);
  delay(1000);
  Serial.println("All cannons fired");
  Serial.println("Prepare for reload");
  delay(10000);
  Serial.println("Reloading Complete. Preparing to fire again")
}

Esquemáticos

Construa um Atirador Automatizado LEGO Star Wars com Arduino Uno
Esquemático de conexões dos 4 servos ao Arduino Uno

Processo de manufatura

  1. Fita Adesiva Versátil: Resistência, Flexibilidade e Usos Cotidianos
  2. Fita Adesiva Transparente: História, Produção e Impacto Ambiental
  3. Construa um Spybot Controlado por Bluetooth com Arduino
  4. FlickMote: Controle Remoto IR por Gestos para Casa Inteligente
  5. DIY Arduino TV B-Gone: Controle Remoto Universal para Todas as TVs
  6. Construa um Relógio Mestre LED Personalizado com Alarme – Visível a 12 Metros
  7. Construa um Jogo Operação Animatrônico de Minifigura Lego Gigante com Arduino
  8. Find Me: Localizador Inteligente de Objetos com Arduino e Bluetooth
  9. SunGlass-BOT: Óculos Inteligentes que Ajustam Automaticamente à Luz
  10. Soluções de Energia Otimizadas para Projetos Arduino