Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Construire un tireur LEGO Star Wars automatisé avec Arduino Uno

Composants et fournitures

Arduino UNO × 1
Moteur servo SG90 × 4
Fils de liaison (génériques) × 1
Canon tirant LEGO Star Wars × 4
Plaque d'essai (générique) × 1

Outils et machines nécessaires

Applications et services en ligne

À propos de ce projet

Ce projet vise à faire tirer automatiquement des canons LEGO. J'aime jouer avec les LEGO et utiliser des Arduinos, alors j'ai décidé de faire ce projet pendant mon temps libre. Les moteurs servo, avec leurs bras attachés, tournent en frappant le levier et en tirant le canon. Un excellent premier, deuxième ou troisième projet pour débutants !

Voici un guide étape par étape pour le réaliser.

Étape 1 : Le matériel

Étape 1 Partie 1 : Bases du matériel

Commencez par connecter 5 V sur la rangée positive et GND sur la rangée négative. Cela ressemble à ceci :

Construire un tireur LEGO Star Wars automatisé avec Arduino Uno

Étape 1 Partie 2 : Branchement du servo #1

Le servo a trois fils : le fil orange/jaune (signal) prendra un emplacement dans les broches DIGITAL (PWM~), le fil rouge (alimentation) ira sur VIN (n'importe quelle broche de la rangée positive), et le fil noir/marron (masse) ira sur la rangée négative connectée à la broche GND de l'Uno. La broche numérique que j'ai utilisée pour mon premier servo est la 7. Voici à quoi ressemble le schéma quand le premier servo est branché :

Construire un tireur LEGO Star Wars automatisé avec Arduino Uno

Étape 1 Partie 3 : Câblage des autres servos

Une fois que vous avez compris le principe avec les servos, le reste devrait être facile. Une chose à noter : vous devez rester cohérent avec les broches numériques que vous avez attachées à vos servos dans le code.

Par exemple, le code (disponible en bas de la page) indique :

secondCannon.attach(8);

Donc le deuxième servo doit être connecté à la broche numérique 8.

De la même façon, le troisième servo doit être attaché à la broche numérique 6, et le quatrième à la broche numérique 9.

Cependant, cela peut être changé pour n'importe quel ordre. Assurez-vous simplement de modifier à la fois le matériel et le logiciel pour la cohérence, sinon le code ne fonctionnera pas.

Pour fonctionner avec le code fourni, voici à quoi devrait ressembler le schéma :

Construire un tireur LEGO Star Wars automatisé avec Arduino Uno

Félicitations ! Vous avez officiellement terminé la partie matérielle de ce projet.

Étape 2 : Le logiciel

Maintenant, copiez-collez le code en bas de la page dans un sketch Arduino, et téléversez-le. Assurez-vous d'avoir la bibliothèque Servo avant de téléverser, sinon cela ne marchera pas ! Voici un guide étape par étape expliquant le code et ce qu'il signifie lors de l'exécution.

#include  // Inclusion de la bibliothèque pour les servos
Servo firstCannon;   // Définition du premier canon comme servo
Servo secondCannon;  // Définition du deuxième canon comme servo
Servo thirdCannon;   // Définition du troisième canon comme servo
Servo fourthCannon;  // Définition du quatrième canon comme servo

Ce code configure la bibliothèque Servo.h, qui jouera un rôle fondamental. Cela se voit dans les lignes suivantes, utilisant la bibliothèque pour définir quatre canons comme servos, c'est-à-dire des moteurs qui peuvent pivoter de 180 degrés.

void setup() {
  Serial.begin(9600); // Démarrage communication série
  Serial.println("Defend the Clones! Set up the defenses!"); // Affiche dans le moniteur série
  firstCannon.attach(7);   // Attache broche digitale 7 au premier canon
  secondCannon.attach(8);  // Attache broche digitale 8 au deuxième canon
  thirdCannon.attach(6);   // Attache broche digitale 6 au troisième canon
  fourthCannon.attach(9);  // Attache broche digitale 9 au quatrième canon
}

Le code void setup() est utilisé dans presque tout projet Arduino, et c'est du code qui ne s'exécute qu'une seule fois. Ici, nous démarrons la communication série à 9600 bauds. Ensuite, nous affichons des choses dans le moniteur série. Pour programmer les servos, nous devons connecter leurs noms à leurs broches numériques respectives. C'est le but du code .attach().

void loop() {
  Serial.println("Beginning firing sequence"); // Affiche dans le moniteur série
  firstCannon.write(180);  // Fait pivoter le premier servo de 180°, déclenchant le premier canon
  delay(100);              // Attend 1/10 de seconde
  firstCannon.write(0);    // Ramène le servo à la position d'origine pour rechargement
  delay(1000);             // Attend 1 seconde
  secondCannon.write(180); // Deuxième canon
  delay(100);
  secondCannon.write(0);
  delay(1000);
  thirdCannon.write(180);  // Troisième canon
  delay(100);
  thirdCannon.write(0);
  delay(1000);
  fourthCannon.write(180); // Quatrième canon
  delay(100);
  fourthCannon.write(0);
  delay(1000);
  Serial.println("All cannons fired");
  Serial.println("Prepare for reload");
  delay(10000);            // 10 secondes de rechargement
  Serial.println("Reloading Complete. Preparing to fire again");
}

C'est la pièce finale du code, utilisant la fonction void loop() qui permet au code suivant de s'exécuter indéfiniment. Ensuite, nous affichons dans le moniteur série que les canons vont tirer. Les servos de chaque canon doivent pivoter de 180 degrés, puis revenir à la position d'origine, un par un. Après cela, il y a 10 secondes (temps de rechargement) avant que le processus ne se répète.

Si vous avez d'autres problèmes lors du téléversement, commentez dans la section commentaires et je répondrai ASAP. Si ça marche, passez à l'étape suivante.

Étape 3 : Installation

La dernière étape nécessite les canons LEGO et du bon vieux ruban adhésif ordinaire. Le canon LEGO ressemble à ceci :

Construire un tireur LEGO Star Wars automatisé avec Arduino Uno

Exécutez le code. Observez dans quel sens le servo tourne. Collez le servo sur le canon LEGO de sorte que sa trajectoire le mette sur une trajectoire de collision avec le levier sur le dessus du canon sur l'image ci-dessus.

Bravo ! Vous avez officiellement terminé ce projet. Comme je l'ai dit, commentez ci-dessous si vous avez des questions.

Si vous avez aimé ce projet, regardez ces liens :

Code

Code du tireur LEGO

Collez ceci dans l'IDE Arduino

#include  // Inclusion de la bibliothèque pour les servos
Servo firstCannon;   // Définition du premier canon comme servo
Servo secondCannon;  // Définition du deuxième canon comme servo
Servo thirdCannon;   // Définition du troisième canon comme servo
Servo fourthCannon;  // Définition du quatrième canon comme servo

void setup() {
  Serial.begin(9600); // Démarrage communication série
  Serial.println("Defend the Clones! Set up the defenses!"); // Affiche dans le moniteur série
  firstCannon.attach(7);   // Attache broche digitale 7 au premier canon
  secondCannon.attach(8);  // Attache broche digitale 8 au deuxième canon
  thirdCannon.attach(6);   // Attache broche digitale 6 au troisième canon
  fourthCannon.attach(9);  // Attache broche digitale 9 au quatrième canon
}

void loop() {
  Serial.println("Beginning firing sequence"); // Affiche dans le moniteur série
  firstCannon.write(180);  // Fait pivoter le premier servo de 180°, déclenchant le premier canon
  delay(100);              // Attend 1/10 de seconde
  firstCannon.write(0);    // Ramène le servo à la position d'origine pour rechargement
  delay(1000);             // Attend 1 seconde
  secondCannon.write(180); // Fait pivoter le deuxième servo de 180°, déclenchant le deuxième canon
  delay(100);
  secondCannon.write(0);
  delay(1000);
  thirdCannon.write(180);  // Troisième canon
  delay(100);
  thirdCannon.write(0);
  delay(1000);
  fourthCannon.write(180); // Quatrième canon
  delay(100);
  fourthCannon.write(0);
  delay(1000);
  Serial.println("All cannons fired");
  Serial.println("Prepare for reload");
  delay(10000);            // 10 secondes de rechargement
  Serial.println("Reloading Complete. Preparing to fire again");
}

Schémas

Construire un tireur LEGO Star Wars automatisé avec Arduino Uno

Processus de fabrication

  1. Ruban Adhésif Polyvalent : Force, Flexibilité et Usages Quotidiens
  2. Ruban adhésif cellophane : histoire, production et impact environnemental
  3. Construire un Spybot Arduino piloté par Bluetooth
  4. FlickMote : Télécommande IR à gestes pour maison connectée
  5. TV-B-Gone DIY Arduino : Télécommande universelle pour toutes les TV
  6. Construire une horloge maître LED personnalisée avec alarme – Visible à 12 mètres
  7. Construire un jeu « Opération » géant animé type Lego Minifigure avec Arduino
  8. Find Me : Localisateur d'objets intelligent avec Arduino et Bluetooth
  9. SunGlass-BOT : Lunettes de soleil intelligentes à adaptation automatique à la lumière