Comment faire un robot à la maison (avec des images)

Table des matières:

Comment faire un robot à la maison (avec des images)
Comment faire un robot à la maison (avec des images)

Vidéo: Comment faire un robot à la maison (avec des images)

Vidéo: Comment faire un robot à la maison (avec des images)
Vidéo: Comment TRANSFORMER des CARTES en IMAGE sur MINECRAFT ! (map) 2024, Novembre
Anonim

Vous voulez apprendre à fabriquer votre propre robot ? Il existe de nombreux types de robots que vous pouvez construire vous-même. La plupart des gens veulent voir un robot se déplacer facilement d'un point A à un point B. Vous pouvez construire un robot entièrement à partir de composants analogiques ou acheter un kit de démarrage. Faire votre propre robot est un excellent moyen d'apprendre l'électronique et la programmation informatique.

Étape

Partie 1 sur 5: Assemblage du robot

1123333 1
1123333 1

Étape 1. Assemblez vos composants

Pour construire un robot de base, vous aurez besoin de quelques composants simples. Vous pouvez trouver la plupart ou la totalité de ces composants dans votre magasin d'électronique local ou chez certains détaillants en ligne. Certains kits comprennent tous ces composants. Ce robot ne nécessite aucune soudure:

  • Arduino Uno (ou autre microcontrôleur)
  • 2 servos 360 degrés
  • Servo assorti à 2 roues
  • 1 roue libre
  • 1 carte de test (planche à pain ou carte de projet) qui n'a pas été soudée (recherchez une carte de test qui a deux rangées positives et négatives de chaque côté)
  • 1 capteur de proximité (avec câble de connexion à quatre broches)
  • 1 bouton poussoir
  • 1 résistance 10kΩ
  • 1 câble USB A vers B
  • 1 jeu d'en-têtes cassables
  • 1 support de 6 piles AA avec prise de courant 9V DC.
  • 1 paquet de 22. câbles de démarrage ou câble simple
  • Isolation va-et-vient (ruban double) ou pistolet à colle
1123333 2
1123333 2

Étape 2. Tournez le compartiment des piles de manière à ce que son dos plat soit orienté vers le haut

Vous allez construire le corps du robot en utilisant le compartiment de la batterie comme base.

1123333 3
1123333 3

Étape 3. Disposez deux servos dans la même direction à l'extrémité de la baie de batterie

Cette extrémité est l'extrémité où le câble sort de la batterie. Les servos doivent toucher le fond et le mécanisme de rotation de chaque servo doit être orienté vers l'extérieur des côtés du compartiment à piles. Il est important que ces servos soient correctement disposés pour que les roues soient droites. Les câbles du servo doivent sortir par l'arrière du compartiment à piles.

1123333 4
1123333 4

Étape 4. Collez les servos avec votre isolation ou votre colle

Assurez-vous que le servo est fermement attaché au compartiment de la batterie. L'arrière du servo doit être aligné avec l'arrière du compartiment à piles.

Maintenant, les servos devraient occuper la moitié de l'espace à l'arrière de la baie de batterie

1123333 5
1123333 5

Étape 5. Collez la carte de test perpendiculairement à l'espace restant dans le compartiment des piles

Cette carte de test pendra légèrement sur le devant du compartiment à piles et s'étendra des deux côtés. Assurez-vous que la planche de test est bien serrée avant de continuer. La rangée « A » doit être la plus proche du servo.

1123333 6
1123333 6

Étape 6. Fixez le microcontrôleur Arduino au sommet du servo

Si vous fixez correctement le servo, il devrait y avoir une partie plate des deux servos qui se touchent. Collez la carte Arduino à cet endroit plat de sorte que les connecteurs d'alimentation USB et Arduino soient orientés vers le bas (loin de la carte de test). L'avant de l'Arduino chevauchera la carte de test.

1123333 7
1123333 7

Étape 7. Installez les roues sur les servos

Appuyez fermement les roues sur le mécanisme d'asservissement rotatif. Cela peut nécessiter une force considérable car les roues sont conçues pour avoir des trous qui correspondent exactement à la forme de la pointe du servo.

1123333 8
1123333 8

Étape 8. Installez la roue libre au bas de la carte de test

Si vous retournez le robot, vous verrez une petite planche de test suspendue au compartiment de la batterie. Attachez la roue libre à cette partie suspendue. Utilisez une cale si nécessaire. La roue libre sert de roue avant qui permet au robot de tourner facilement dans n'importe quelle direction.

Si vous avez acheté un kit, la roue libre peut avoir des cales que vous pouvez utiliser pour vous assurer que la roue est libre de toucher le sol

Partie 2 sur 5: Câblage du robot

1123333 9
1123333 9

Étape 1. Coupez deux en-têtes à 3 broches

Vous l'utiliserez pour connecter le servo à la carte de test. Poussez les broches vers le bas à travers les en-têtes, de sorte qu'elles sortent à égale distance des deux côtés.

1123333 10
1123333 10

Étape 2. Insérez les deux en-têtes dans les broches 1-3 et 6-8 de la rangée E sur la carte de test

Assurez-vous qu'ils sont insérés fermement ou fermement.

1123333 11
1123333 11

Étape 3. Connectez les câbles du servo à l'embase, avec le câble noir sur le côté gauche (broches 1 et 6)

Cela connectera le servo avec la carte de test. Assurez-vous que le servo gauche est connecté à l'en-tête gauche et que le servo droit est connecté à l'en-tête droit.

1123333 12
1123333 12

Étape 4. Connectez le cavalier rouge des broches C2 et C7 à la broche rouge du rail (positif)

Assurez-vous d'utiliser le rail rouge à l'arrière de la carte de test (plus proche du reste du corps du robot).

1123333 13
1123333 13

Étape 5. Connectez le cavalier noir des broches B1 et B6 à la broche bleue du rail (masse)

Assurez-vous d'utiliser le rail bleu à l'arrière de la carte de test. N'attachez pas le câble à la broche de rail rouge.

1123333 14
1123333 14

Étape 6. Connectez les cavaliers blancs des broches 12 et 13 de l'Arduino à A3 et A8

Cela permettra à l'Arduino de contrôler le servo et de tourner la roue.

1123333 15
1123333 15

Étape 7. Fixez le capteur à l'avant de la carte de test

Le capteur n'est pas monté sur le rail d'alimentation externe sur la carte de test, mais sur les deux premières rangées de broches portant la lettre (J). Assurez-vous de le placer en plein milieu avec un nombre égal de broches vides de chaque côté.

1123333 16
1123333 16

Étape 8. Connectez le cavalier noir de la broche I14 à la première broche du rail bleu à gauche du capteur

Cela mettra le capteur à la terre.

1123333 17
1123333 17

Étape 9. Connectez le cavalier rouge de la broche I17 à la première broche de rail rouge à droite du capteur

Cela fournira de l'énergie au capteur.

1123333 18
1123333 18

Étape 10. Connectez les cavaliers blancs de la broche I15 à la broche 9 sur Arduino et de I16 à la broche 8

Cela fournira des informations du capteur au microcontrôleur.

Partie 3 sur 5: Installation du câble d'alimentation

1123333 19
1123333 19

Étape 1. Retournez le robot pour voir le compartiment de la batterie à l'intérieur

Disposez le compartiment à piles de manière à ce que le câble sorte par le bas à gauche.

1123333 20
1123333 20

Étape 2. Connectez le fil rouge avec le deuxième ressort en partant de la gauche en bas

Assurez-vous que le compartiment des piles est correctement aligné ou orienté dans la bonne direction.

1123333 21
1123333 21

Étape 3. Connectez le fil noir avec le dernier ressort en bas à droite

Ces deux fils aideront à fournir la bonne tension à l'Arduino.

1123333 22
1123333 22

Étape 4. Connectez les fils rouge et noir aux broches rouge et bleue qui se trouvent sur le côté droit à l'arrière de la carte de test

Le fil noir doit aller à la broche du rail bleu sur la broche 30. Le fil rouge doit aller à la broche du rail rouge sur la broche 30.

1123333 23
1123333 23

Étape 5. Connectez le fil noir de la broche GND de l'Arduino à l'arrière du rail bleu

Connectez le fil à la broche 28 sur le rail bleu.

1123333 24
1123333 24

Étape 6. Connectez le fil noir de l'arrière du rail bleu à l'avant du rail bleu sur la broche 29 pour les deux rails

Ne connectez pas le rail rouge car vous pourriez endommager l'Arduino.

1123333 25
1123333 25

Étape 7. Connectez le fil rouge de l'avant du rail rouge sur la broche 30 à la broche 5V sur Arduino

Cela fournira de l'énergie à l'Arduino.

1123333 26
1123333 26

Étape 8. Insérez le bouton-poussoir dans l'espace entre les broches 24-26

Cet interrupteur vous permettra d'éteindre le robot sans avoir à couper l'alimentation.

1123333 27
1123333 27

Étape 9. Connectez le fil rouge de H24 au rail rouge sur la prochaine broche vide à droite du capteur

Cela fournira de l'énergie au bouton.

1123333 28
1123333 28

Étape 10. Utilisez une résistance pour connecter H26 au rail bleu

Connectez-le à la broche directement à côté du fil noir que vous venez de connecter dans les étapes précédentes.

1123333 29
1123333 29

Étape 11. Connectez le fil blanc de G26 à la broche 2 sur Arduino

Cela permettra à Arduino de détecter les boutons-poussoirs.

Partie 4 sur 5: Installation du logiciel Arduino

1123333 30
1123333 30

Étape 1. Téléchargez et extrayez l'IDE Arduino

C'est là que Arduino est développé et vous permet de programmer des instructions que vous pouvez ensuite télécharger sur votre microcontrôleur Arduino. Vous pouvez le télécharger gratuitement sur arduino.cc/en/main/software. Décompressez le fichier téléchargé en double-cliquant sur le fichier et en déplaçant le dossier qu'il contient vers un emplacement facile d'accès. Vous n'installerez pas réellement le programme, mais vous l'exécuterez simplement à partir d'un dossier extrait en double-cliquant sur arduino.exe.

1123333 31
1123333 31

Étape 2. Connectez le compartiment de la batterie à l'Arduino

Insérez la prise arrière de la batterie dans le connecteur de l'Arduino pour l'alimenter.

1123333 32
1123333 32

Étape 3. Insérez Arduino dans votre ordinateur via USB

Il y a de fortes chances que Windows ne reconnaisse pas l'appareil.

1123333 33
1123333 33

Étape 4. Appuyez sur

Gagner + R et tapez devmgmt.msc.

Cette commande ouvrira le gestionnaire de périphériques.

1123333 34
1123333 34

Étape 5. Cliquez avec le bouton droit sur Périphérique inconnu sous Autres périphériques et sélectionnez Mettre à jour le logiciel du pilote

Si vous ne voyez pas cette option, cliquez sur Propriétés, sélectionnez l'onglet Pilote, puis cliquez sur Mettre à jour le pilote.

1123333 35
1123333 35

Étape 6. Sélectionnez Parcourir mon ordinateur pour le logiciel pilote

Cela vous permettra de sélectionner les pilotes intégrés fournis avec l'IDE Arduino.

1123333 36
1123333 36

Étape 7. Cliquez sur Parcourir, puis ouvrez le dossier que vous avez extrait précédemment

Vous y trouverez le dossier des pilotes.

1123333 37
1123333 37

Étape 8. Sélectionnez le dossier des pilotes et cliquez sur OK

Confirmez que vous souhaitez continuer si vous êtes averti d'un logiciel inconnu.

Partie 5 sur 5: Programmation de robots

1123333 38
1123333 38

Étape 1. Ouvrez Arduino IDE en double-cliquant sur le fichier arduino.exe dans le dossier IDE

Vous serez accueilli avec un projet vierge.

1123333 39
1123333 39

Étape 2. Collez ou collez le code suivant pour faire avancer votre robot

Le code ci-dessous permettra à votre Arduino de fonctionner.

#include // ceci ajoute la bibliothèque "Servo" au programme // la commande suivante crée deux objets servo Servo leftMotor; Servo droitMoteur; void setup() { leftMotor.attach(12); // si vous avez accidentellement échangé les numéros de broche de votre servo, vous pouvez échanger les numéros ici rightMotor.attach(13); } boucle vide() { leftMotor.write(180); // avec une rotation de 360 degrés (rotation continue), le nombre 180 indique au servo d'avancer à pleine vitesse. rightMotor.write(0); // si les deux valeurs sont 180, le robot tournera en cercle car le servo est inversé. « 0 » indique au robot de se déplacer « en arrière » à pleine vitesse. }

1123333 40
1123333 40

Étape 3. Créez et téléchargez le programme

Cliquez sur le bouton flèche droite dans le coin supérieur gauche pour créer et télécharger un programme sur l'Arduino connecté.

Vous voudrez peut-être soulever le robot de la surface car le robot continuera à avancer après le téléchargement du programme

1123333 41
1123333 41

Étape 4. Ajoutez une fonction d'interrupteur d'arrêt (interrupteur d'arrêt)

Ajoutez le code suivant à la section "void loop()" de votre code pour ajouter une fonction de commutateur d'arrêt au-dessus de la fonction "write()".

if(digitalRead(2) == HIGH) // cette commande s'exécute lorsque le bouton est enfoncé sur la broche 2 Arduino { while(1) { leftMotor.write(90); // "90" est la position neutre du servo, qui indique au servo d'arrêter de tourner à droiteMotor.write(90); } }

1123333 42
1123333 42

Étape 5. Téléchargez et vérifiez votre code

Avec le code de l'interrupteur d'arrêt déjà ajouté, vous pouvez télécharger le code et tester le robot. Le robot doit continuer à avancer jusqu'à ce que vous appuyiez sur le bouton de l'interrupteur d'arrêt, ce qui entraînera l'arrêt du robot. Le code complet ressemblera à ceci:

#include // la commande suivante crée deux objets servo Servo leftMotor; Servo droitMoteur; void setup() { leftMotor.attach(12); rightMotor.attach(13); } boucle vide() { if(digitalRead(2) == HIGH) { while(1) { leftMotor.write(90); Moteurdroit.write(90); } } gaucheMoteur.write(180); Moteurdroit.write(0); }

Exemple

Le code suivant utilisera des capteurs installés sur le robot pour le faire tourner à gauche chaque fois que le robot rencontre un obstacle. Regardez les commentaires dans le code pour plus de détails sur la façon d'utiliser chaque partie. Le code ci-dessous est le programme complet.

#include Servo leftMotor; Servo droitMoteur; const int serialPeriod = 250; // ce code donne au délai de sortie de la console tous les 1/4 de seconde (250 ms) unsigned long timeSerialDelay = 0; const int loopPeriod = 20; // ce code définit la fréquence de lecture du capteur à 20 ms, ce qui correspond à 50 Hz long timeLoopDelay = 0; // ce code attribue les fonctions TRIG et ECHO aux broches de l'Arduino. Ajustez les nombres ici si vous les connectez d'une manière différente const int ultrasonic2TrigPin = 8; const int ultrasonic2EchoPin = 9; int ultrasonic2Distance; int ultrasonic2Duration; // ce code définit deux états possibles du robot: continuer vers l'avant ou tourner à gauche #define DRIVE_FORWARD 0 #define TURN_LEFT 1 int state = DRIVE_FORWARD; // 0 = continuer vers l'avant (DEFAULT), 1 = tourner à gauche void setup() { Serial.begin(9600); // ce capteur détermine la configuration des broches pinMode(ultrasonic2TrigPin, OUTPUT); pinMode(ultrasonic2EchoPin, INPUT); // cela affecte le moteur aux broches Arduino leftMotor.attach(12); rightMotor.attach(13); } void loop() { if(digitalRead(2) == HIGH) // ce code détecte un ''stop'' { while(1) { leftMotor.write(90); Moteurdroit.write(90); } } debugOutput(); // ce code imprime les messages de débogage sur la console série if(millis() - timeLoopDelay >= loopPeriod) { readUltrasonicSensors(); // ce code demande au capteur de lire et de stocker des données sur la distance mesurée stateMachine(); timeLoopDelay = millis(); } } void stateMachine() { if(state == DRIVE_FORWARD) // si aucun obstacle n'est détecté { if(ultrasonic2Distance > 6 || ultrasonic2Distance < 0) // si rien n'est devant le robot. ultrasonicDistance sera négatif pour certains ultrasons s'il n'y a pas d'obstacles { // avancer rightMotor.write(180); gaucheMoteur.write(0); } else // s'il y a un objet devant nous { state = TURN_LEFT; } } else if(state == TURN_LEFT) // si un obstacle est détecté, tourner à gauche { unsigned long timeToTurnLeft = 500; // prend environ 0,5 seconde pour tourner à 90 degrés. Vous devrez peut-être ajuster cette valeur si la taille de vos roues diffère de celle de l'exemple unsigned long turnStartTime = millis(); // garde la condition lorsque le robot commence à tourner while((millis()-turnStartTime) < timeToTurnLeft) // garde ce cycle jusqu'à ce que timeToTurnLeft (500) soit passé { // tourne à gauche, rappelez-vous que lorsque les deux sont "180", le robot va tourner. Moteurdroit.write(180); gaucheMoteur.write(180); } état = DRIVE_FORWARD; } } void readUltrasonicSensors() { // c'est pour les ultrasons 2. Vous devrez peut-être modifier cette commande si vous utilisez un autre capteur. digitalWrite (ultrasonic2TrigPin, HAUT); délaiMicrosecondes(10); // tirez la broche TRIG vers le haut pendant au moins 10 microsecondes digitalWrite(ultrasonic2TrigPin, LOW); ultrasonic2Duration = pulseIn(ultrasonic2EchoPin, HIGH); ultrasonic2Distance = (ultrasonic2Duration/2)/29; } // ce qui suit est pour le débogage des erreurs dans la console. void debugOutput() { if((millis() - timeSerialDelay) > serialPeriod) { Serial.print("ultrasonic2Distance: "); Serial.print(ultrasonic2Distance); Serial.print("cm"); Serial.println(); timeSerialDelay = millis(); } }

Conseillé: