Télécharger l'article Télécharger l'article

Voulez-vous apprendre à construire votre propre robot ? Il existe de nombreux types différents de robots que vous pouvez fabriquer vous-même. La plupart des gens veulent que le leur effectue des tâches simples, par exemple aller d'un point A à un point B. Vous pouvez en construire un avec des composants analogues ou vous pouvez aussi démarrer de zéro. C'est une excellente activité pour apprendre les bases de l'électronique et de la programmation.

Partie 1
Partie 1 sur 5:

Assembler le robot

Télécharger l'article
  1. Pour pouvoir construire un robot de base, vous avez besoin de plusieurs éléments simples. Vous trouverez la plupart de ces éléments dans un magasin d'électronique et sur de nombreux sites de vente sur Internet. Certains kits de base devraient aussi les proposer. Le robot que vous allez construire ne demande pas de soudure. Voici ce qu'il vous faut :
    • 1 Arduino Uno (ou un autre type de microcontrôleur)
    • 2 servomoteurs à rotation continue
    • 2 roues adaptées aux servos
    • 1 roue libre
    • 1 petite plaque d'essai (breadboard) avec une ligne positive et négative de chaque côté
    • 1 détecteur de distance (avec un connecteur à quatre fiches)
    • 1 petit interrupteur avec un résistor de 10 kΩ
    • des connecteurs sécables
    • 1 boîtier pour 6 piles AA avec une prise de 9 Votre DC
    • des câbles connecteurs
    • du ruban adhésif double-face résistant ou de la colle chaude
  2. Vous allez vous servir du boîtier comme d'une base pour la construction du robot.
  3. Alignez les deux servomoteurs au bout du boîtier. Cela doit être le bout d'où sortent les câbles d'alimentation. Les servos devraient toucher le bas et les mécanismes rotatifs de chacun doivent être tournés vers l'extérieur du boîtier. Il est important d'aligner correctement les servos pour que les roues soient droites. Les câbles des servos doivent dépasser sur l'intérieur du boîtier.
  4. Maintenez les servos en place avec du ruban adhésif ou de la colle. Vous devez vérifier qu'ils sont bien fixés sur le boîtier. L'arrière des moteurs doit être parfaitement aligné avec l'arrière du boîtier.
    • Ils devraient maintenant occuper la moitié de l'arrière du boîtier des piles.
  5. Collez la plaque d'essai perpendiculairement au boîtier. Elle doit dépasser un petit peu sur le devant du boîtier et sur les deux côtés. Assurez-vous de bien la fixer avant de continuer. La rangée A doit être la plus proche des servos.
  6. Fixez le microcontrôleur Arduino sur le dessus des moteurs. Si vous les avez bien fixés, il devrait y avoir un espace plat sur le dessus là où ils se touchent. Collez la plaque de l'Arduino dessus de façon à ce que le port USB et la prise d'alimentation soient tournés vers l'arrière, dans la direction opposée à la plaque d'essai. L'avant de l'Arduino ne devrait que dépasser légèrement sur la plaque d'essai.
  7. Appuyez fermement sur les roues pour les fixer au mécanisme rotatif du moteur. Cela pourrait vous demander un peu de force, car les roues sont conçues pour être serrées le plus possible sur l'axe afin de fournir la meilleure traction possible.
  8. Si vous retournez le châssis, vous devriez voir qu'une partie de la plaque d'essai dépasse du boîtier des piles. Fixez la roue libre dessus en utilisant des cales si nécessaire pour ajuster la hauteur de la roue. Cette roue libre va être la roue avant et va permettre au robot de tourner dans n'importe quelle direction [1] .
    • Si vous avez acheté un kit, la roue libre a peut-être été livrée avec des cales que vous pouvez utiliser pour vous assurer qu'elle touche bien le sol.
    Publicité
Partie 2
Partie 2 sur 5:

Faire les branchements

Télécharger l'article
  1. Vous allez vous en servir pour connecter les servomoteurs à la plaque d'essai. Appuyez sur les fiches pour les faire sortir de la partie en plastique afin qu'elles aient toutes la même taille des deux côtés.
  2. Insérez les deux connecteurs dans les emplacements 1-3 et 6-8 de la rangée E sur la plaque. Assurez-vous de les avoir bien enfoncés.
  3. Lorsque vous le faites, reliez le câble noir au côté gauche (fiche 1 et 6). Cela permet de connecter les servos à la plaque d'essai. Assurez-vous que le servo gauche est relié au connecteur gauche et le servo droit au connecteur droit.
  4. Reliez les câbles rouges des fiches C2 et C7 à la ligne rouge (positive) de la plaque d'essai. Assurez-vous d'utiliser la rangée en rouge à l'arrière de la plaque (celle qui est la plus proche du reste du châssis).
  5. Reliez les câbles noirs des fiches B1 et B6 à la ligne bleue (négative) de la plaque d'essai. Assurez-vous d'utiliser la rangée en bleu à l'arrière de la plaque. Ne les branchez surtout pas sur la rangée en rouge.
  6. Reliez les câbles connecteurs blancs des fiches 12 et 13 aux fiches A3 et A8 de l'Arduino. Cela permettra au microcontrôleur de contrôler les servos et de faire tourner les roues.
  7. Vous ne devez pas l'installer dans la rangée reliée au courant de la plaque d'essai, mais plutôt à la première rangée de fiches avec la lettre J. Assurez-vous de bien le placer au centre, avec un nombre égal de fiches de chaque côté.
  8. Branchez le câble connecteur noir de la fiche I14 à la première fiche disponible sur la rangée en bleu sur la gauche du détecteur. Celui-ci est relié à la terre.
  9. Branchez le câble connecteur rouge de la fiche I17 à la première fiche disponible sur la rangée en rouge sur la droite du détecteur. Celui-ci va alimenter le détecteur.
  10. Branchez un câble connecteur blanc de la fiche I15 à la fiche 9 de l'Arduino et un autre câble blanc de la fiche I16 à la fiche 8.. Celui-ci va permettre de transmettre les informations au microcontrôleur.
    Publicité
Partie 3
Partie 3 sur 5:

Brancher l'alimentation

Télécharger l'article
  1. Orientez-le de façon à ce que les câbles du boîtier ressortent par le bas à gauche.
  2. Connectez le câble rouge au deuxième ressort sur la gauche en bas. Vous devez être absolument sûr que le boîtier est orienté correctement.
  3. Connectez le câble noir au dernier ressort en bas à droite. Ces deux câbles vont vous aider à obtenir la tension appropriée à l'Arduino.
  4. Connectez les câbles rouge et noir aux fiches sur l'extrême droite à l'arrière de la plaque d'essai. Le câble noir doit être branché à la rangée bleue au niveau de la fiche 30. Le câble rouge doit être branché sur la rangée rouge au niveau de la fiche 30.
  5. Installez un câble noir entre la fiche terre (GND) de l'Arduino et la rangée bleue à l'arrière. Connectez-le à la fiche 28 sur la plaque.
  6. Reliez un câble noir à la rangée bleue à l'arrière à la fiche 29 sur la rangée bleue du devant. Ne branchez pas les rangées rouges, car cela pourrait endommager le microcontrôleur.
  7. Reliez un câble rouge entre la rangée rouge à l'avant sur la fiche 30 et la fiche 5 V de l'Arduino. Cela va alimenter le microcontrôleur.
  8. Installez le bouton dans l'espace entre les rangées sur les fiches 24-26. L'interrupteur vous permettra d'allumer et d'éteindre le robot sans devoir couper l'alimentation.
  9. Reliez un câble rouge entre la fiche H24 et la rangée rouge dans la prochaine fiche disponible sur la droite du détecteur. Cela va alimenter le bouton.
  10. Connectez-le directement à la fiche à côté du câble noir que vous avez connecté plus haut.
  11. Cela va permettra à l'Arduino de détecter l'état du bouton.
    Publicité
Partie 4
Partie 4 sur 5:

Installer le programme de l'Arduino

Télécharger l'article
  1. L'IDE est l'environnement de développement de l'Arduino et il vous permet de programmer les instructions avant de les envoyer sur la plaque. Vous pouvez le télécharger gratuitement sur arduino.cc/en/main/software . Décompressez l'archive en double-cliquant dessus et déplacez le dossier dans un coin dont vous vous souviendrez facilement. Vous n'allez pas vraiment installer le programme, vous allez simplement le lancer depuis le dossier extrait en cliquant sur arduino.exe .
  2. Branchez la prise jack à la prise sur la plaque de l'Arduino pour l'alimenter.
  3. En utilisant un câble USB, branchez la plaque à votre ordinateur. Windows ne va probablement pas la reconnaître.
  4. Cela permet de lancer le programme de gestion.
  5. Faites un clic droit sur Appareil inconnu dans la partie Autres appareils et choisissez "Mettre à jour le pilote ". Si vous ne voyez pas cette option, cliquez sur Propriétés , cliquez sur l'onglet Pilote , puis sélectionnez Mettre à jour le pilote .
  6. Cela vous permet de choisir le pilote qui vous a été fourni avec l'IDE d'Arduino.
  7. Vous trouverez les pilotes dont vous avez besoin dans le dossier que vous avez extrait plus tôt.
  8. Si vous avez un message d'avertissement à cause du programme inconnu, confirmez que vous voulez continuer.
    Publicité
Partie 5
Partie 5 sur 5:

Programmer le robot

Télécharger l'article
  1. Démarrez l’IDE d’Arduino en double-cliquant sur le fichier arduino.exe dans le dossier de l’IDE. Cela va ouvrir une page blanche pour un nouveau projet.
  2. Le code ci-dessus va faire avancer sans arrêt le robot en avant.
     #include 
     <Servo.h> // cela ajoute la librairie "Servo" au programme 
      
     // cela crée deux objets pour les deux servomoteurs 
     Servo 
     leftMotor 
     ; 
     Servo 
     rightMotor 
     ; 
     void 
     setup 
     () 
     { 
     leftMotor 
     . 
     attach 
     ( 
     12 
     ); 
     // si vous avez utilisé d’autres numéros pour les fiches, vous devez changer les numéros dans cette partie 
     rightMotor 
     . 
     attach 
     ( 
     13 
     ); 
     } 
     void 
     loop 
     () 
     { 
     leftMotor 
     . 
     write 
     ( 
     180 
     ); 
     // en rotation continue, 180 indique au moteur de tourner à pleine vitesse en avant 
     rightMotor 
     . 
     write 
     ( 
     0 
     ); 
     // si les deux moteurs sont à 180, le robot va tourner en cercle, car les moteurs sont inversés. 0 lui indique de reculer à pleine vitesse 
     } 
    
  3. Cliquez sur le bouton dans le coin en haut à gauche en forme de flèche vers la droite pour créer le programme et l’envoyer vers l’Arduino.
    • Vous devriez soulever le robot de sa surface, car il va rouler en avant sans s’arrêter dès que le programme a été installé.
  4. Ajoutez le code suivant à la boucle "void loop()" pour utiliser le bouton, juste au-dessus de la fonction "write()".
     if 
     ( 
     digitalRead 
     ( 
     2 
     ) 
     == 
     HIGH 
     ) 
     // cela détecte une pression sur le bouton connecté à la fiche 2 
     { 
     while 
     ( 
     1 
     ) 
     { 
     leftMotor 
     . 
     write 
     ( 
     90 
     ); 
     // "90" est une position neutre pour les servos, cela leur indique de tourner 
     rightMotor 
     . 
     write 
     ( 
     90 
     ); 
     } 
     } 
    
  5. Une fois que vous avez adapté le code pour l’interrupteur, vous pouvez l’installer sur l’Arduino et tester le robot. Il devrait avancer sans arrêter jusqu’à ce que vous appuyiez sur le bouton pour lui demander de s’arrêter. Le code complet devrait ressembler au suivant :
     #include 
     <Servo.h> 
      
     // vous créez deux objets servos 
     Servo 
     leftMotor 
     ; 
     Servo 
     rightMotor 
     ; 
     void 
     setup 
     () 
     { 
     leftMotor 
     . 
     attach 
     ( 
     12 
     ); 
     rightMotor 
     . 
     attach 
     ( 
     13 
     ); 
     } 
     void 
     loop 
     () 
     { 
     if 
     ( 
     digitalRead 
     ( 
     2 
     ) 
     == 
     HIGH 
     ) 
     { 
     while 
     ( 
     1 
     ) 
     { 
     leftMotor 
     . 
     write 
     ( 
     90 
     ); 
     rightMotor 
     . 
     write 
     ( 
     90 
     ); 
     } 
     } 
     leftMotor 
     . 
     write 
     ( 
     180 
     ); 
     rightMotor 
     . 
     write 
     ( 
     0 
     ); 
     } 
    
    Publicité

Vidéo de wikiHow: Comment construire un robot chez soi

Regarder

Exemple

Le code suivant va utiliser le détecteur fixé au robot pour le faire tourner à gauche chaque fois qu’il tombe sur un obstacle. Consultez les commentaires dans le code pour comprendre le rôle de chaque partie. Le code ci-dessous est le programme complet.

 #include 
 <Servo.h> 
  
 Servo 
 leftMotor 
 ; 
 Servo 
 rightMotor 
 ; 
 const 
 int 
 serialPeriod 
 = 
 250 
 ; 
 // cela limite les sorties de console à tous les quarts de seconde 
 unsigned 
 long 
 timeSerialDelay 
 = 
 0 
 ; 
 const 
 int 
 loopPeriod 
 = 
 20 
 ; 
 // cela fixe la fréquence de lecture du détecteur à 20 ms, ce qui correspond à une fréquence de 50 Hz 
 unsigned 
 long 
 timeLoopDelay 
 = 
 0 
 ; 
 // Cela assigne les fonctions TRIG et ECHO aux fiches de l’Arduino. Ajustez les numéros si vous avez choisi des fiches différentes 
 const 
 int 
 ultrasonic2TrigPin 
 = 
 8 
 ; 
 const 
 int 
 ultrasonic2EchoPin 
 = 
 9 
 ; 
 int 
 ultrasonic2Distance 
 ; 
 int 
 ultrasonic2Duration 
 ; 
 // cela définit les deux états possibles du robot : marche avant ou virage à gauche 
 #define DRIVE_FORWARD     0 
 #define TURN_LEFT         1 
 int 
 state 
 = 
 DRIVE_FORWARD 
 ; 
 // 0 = drive forward (DEFAULT), 1 = turn left 
 void 
 setup 
 () 
 { 
 Serial 
 . 
 begin 
 ( 
 9600 
 ); 
 // configuration des fiches du détecteur 
 pinMode 
 ( 
 ultrasonic2TrigPin 
 , 
 OUTPUT 
 ); 
 pinMode 
 ( 
 ultrasonic2EchoPin 
 , 
 INPUT 
 ); 
 // assignation des moteurs aux fiches de l’Arduino 
 leftMotor 
 . 
 attach 
 ( 
 12 
 ); 
 rightMotor 
 . 
 attach 
 ( 
 13 
 ); 
 } 
 void 
 loop 
 () 
 { 
 if 
 ( 
 digitalRead 
 ( 
 2 
 ) 
 == 
 HIGH 
 ) 
 // cela permet de détecter le bouton 
 { 
 while 
 ( 
 1 
 ) 
 { 
 leftMotor 
 . 
 write 
 ( 
 90 
 ); 
 rightMotor 
 . 
 write 
 ( 
 90 
 ); 
 } 
 } 
 debugOutput 
 (); 
 // cela permet d’imprimer des messages pour le débogage éventuel sur la console 
 if 
 ( 
 millis 
 () 
 - 
 timeLoopDelay 
 >= 
 loopPeriod 
 ) 
 { 
 readUltrasonicSensors 
 (); 
 // cela demande au détecteur de lire les données et de stocker les distances mesurées 
 stateMachine 
 (); 
 timeLoopDelay 
 = 
 millis 
 (); 
 } 
 } 
 void 
 stateMachine 
 () 
 { 
 if 
 ( 
 state 
 == 
 DRIVE_FORWARD 
 ) 
 // si aucun obstacle détecté 
 { 
 if 
 ( 
 ultrasonic2Distance 
 > 
 6 
 || 
 ultrasonic2Distance 
 < 
 0 
 ) 
 // s'il n’y a rien devant le robot. ultrasonicDistance sera négative pour certains détecteurs s'il n’y a pas d’obstacle détecté 
 { 
 // drive forward 
 rightMotor 
 . 
 write 
 ( 
 180 
 ); 
 leftMotor 
 . 
 write 
 ( 
 0 
 ); 
 } 
 else 
 //  si un obstacle est détecté 
 { 
 state 
 = 
 TURN_LEFT 
 ; 
 } 
 } 
 else 
 if 
 ( 
 state 
 == 
 TURN_LEFT 
 ) 
 // si l’obstacle est détecté, tourne à droite 
 { 
 unsigned 
 long 
 timeToTurnLeft 
 = 
 500 
 ; 
 // il faut 0,5 seconde pour tourner de 90 degrés. Vous devriez ajuster ce nombre si la taille des roues que vous avez choisies est différente 
 unsigned 
 long 
 turnStartTime 
 = 
 millis 
 (); 
 // enregistre le début de rotation des roues 
 while 
 (( 
 millis 
 () 
 - 
 turnStartTime 
 ) 
 < 
 timeToTurnLeft 
 ) 
 // reste dans la boucle jusqu’à ce que timeToTurnLeft soit terminé 
 { 
 // tourne à gauche, n’oubliez pas que les deux roues sont réglées à 180 pour tourner 
 rightMotor 
 . 
 write 
 ( 
 180 
 ); 
 leftMotor 
 . 
 write 
 ( 
 180 
 ); 
 } 
 state 
 = 
 DRIVE_FORWARD 
 ; 
 } 
 } 
 void 
 readUltrasonicSensors 
 () 
 { 
 // c’est pour ultrasonic 2. Vous devez changer cette commande si vous avez un détecteur différent 
 digitalWrite 
 ( 
 ultrasonic2TrigPin 
 , 
 HIGH 
 ); 
 delayMicroseconds 
 ( 
 10 
 ); 
 // gardez la fiche trig en position high pendant au moins 10 microsecondes 
 digitalWrite 
 ( 
 ultrasonic2TrigPin 
 , 
 LOW 
 ); 
 ultrasonic2Duration 
 = 
 pulseIn 
 ( 
 ultrasonic2EchoPin 
 , 
 HIGH 
 ); 
 ultrasonic2Distance 
 = 
 ( 
 ultrasonic2Duration 
 / 
 2 
 ) 
 / 
 29 
 ; 
 } 
 // ce code permet de déboguer le programme dans la console. 
 void 
 debugOutput 
 () 
 { 
 if 
 (( 
 millis 
 () 
 - 
 timeSerialDelay 
 ) 
 > 
 serialPeriod 
 ) 
 { 
 Serial 
 . 
 print 
 ( 
 "ultrasonic2Distance: " 
 ); 
 Serial 
 . 
 print 
 ( 
 ultrasonic2Distance 
 ); 
 Serial 
 . 
 print 
 ( 
 "cm" 
 ); 
 Serial 
 . 
 println 
 (); 
 timeSerialDelay 
 = 
 millis 
 (); 
 } 
 } 

Vidéo

À propos de ce wikiHow

Résumé de l'article X

Pour créer un petit robot autonome qui peut se déplacer et tourner, achetez un kit de base ou les composants nécessaires dans un magasin d'électronique. Vous aurez besoin d'un microcontrôleur, le petit ordinateur qui sera le cerveau du robot, de 2 servomoteurs à rotation continue pour entrainer les roues, de roues adaptées aux servos, d'une roue libre, d'une petite plaque d'essai pour assembler les circuits, d'un boitier à piles, d'un détecteur de distance, d'un interrupteur, et de câbles connecteurs. Fixez les servos au dos du support de piles avec du ruban adhésif double face ou de la colle à chaud, en veillant à bien disposer les extrémités rotatives des servos sur les grands côtés du boitier à piles. Fixez la plaque d'essai sur le boitier, à côté des servos, avec du ruban adhésif ou de la colle. Posez le microcontrôleur sur le dessus des moteurs et fixez-le solidement. Appuyez fermement sur les roues pour qu'elles s'insèrent sur les axes des servos. Placez la roue libre au bas de la plaque d'essai. Cette roue tournant librement à l'avant du robot, va lui permettre de se déplacer sans effort dans toutes les directions. Fixez le détecteur de distance à l'avant de la plaque d'essai. Branchez votre robot en connectant les servos, le microcontrôleur, l’interrupteur et le boitier de piles sur la plaque d'essai. Reliez le microcontrôleur à l'ordinateur avec un câble USB. Téléchargez depuis votre ordinateur vers le microcontrôleur un petit programme de contrôle. Votre robot peut alors aller vers l'avant, l'arrière, s'arrêter et contourner des obstacles. Testez votre robot sur une surface plane et lisse, et faites quelques essais pour voir ce dont il est capable. Pour davantage de conseils, par exemple sur l'utilisation du logiciel Arduino, continuez la lecture !

Cette page a été consultée 146 610 fois.

Cet article vous a-t-il été utile ?

Publicité