Mis à jour le mercredi 18 octobre 2017
  • 10 heures
  • Facile

Ce cours est visible gratuitement en ligne.

Ce cours est en vidéo.

Vous pouvez obtenir un certificat de réussite à l'issue de ce cours.

J'ai tout compris !

Fabriquez votre propre robot Arduino

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Finalement un robot, ce n’est pas si sorcier.  Quelques pièces mécaniques, un peu d’électronique et une pincée de programmation sont suffisants pour commencer à fabriquer son propre robot ! Ça tombe bien, c’est ce que je vous propose de réaliser ensemble dans ce chapitre pour conclure notre première découverte des robots. 

Pour construire notre petit robot, vous avez compris que nous allons avoir besoin d’un certain nombre de composants. Rassemblez donc ces quelques éléments pour pouvoir suivre ce chapitre :

  • 1 carte Arduino Uno

  • 1 câble USB pour relier l’Arduino à l’ordinateur

  • 1 capteur de distance

  • 1 moteur / servo-moteur

  • 10 fils électriques

  • 1 breadboard

Préparez le terrain

Qu’est-ce qu’Arduino tout d’abord ? C’est une petite carte électronique programmable, dans laquelle vous allez pouvoir mettre un programme que vous aurez codé sur votre ordinateur. Elle se présente comme ceci : 

La fameuse carte Arduino Uno
La fameuse carte Arduino Uno

Pour en savoir plus, rendez-vous sur le site officiel (en anglais), et profitons-en pour télécharger l’interface de programmation d’Arduino. Cette interface sert à coder avec le langage Arduino (tout comme l'interface Thymio VPL servait à coder le Thymio), mais rassurez-vous, vous n’aurez pas vraiment besoin d'apprendre ce nouveau langage pour le moment : je vous fournis le code qui nous sera utile à la fin du chapitre, que vous n’aurez plus qu’à copier et coller dans l’interface. 

Cliquez sur l'onglet "Download" pour accéder à la page de téléchargement.

Téléchargez l'interface de programmation d'Arduino
Téléchargez l'interface de programmation d'Arduino

Cliquez ensuite sur le lien de téléchargement correspondant à votre système d’exploitation (Linux, Mac ou Windows) et une fois que le téléchargement est terminé, double-cliquez sur le fichier : laissez-vous guider, il n’y a rien de plus à faire.

Vous avez le matériel, vous avez le logiciel, il ne vous reste plus qu’à assembler tout ça pour créer un robot !

Assemblez le robot

Assembler le robot, ok. Mais pour faire quoi ? 

Votre mission, si vous l’acceptez, consistera à fabriquer un petit robot avec uniquement un capteur - ici un capteur de distance - et un actionneur - ici un moteur. Si le capteur de distance détecte quelque chose, alors votre moteur devra se mettre à tourner. S’il ne détecte rien, votre moteur ne tournera pas. 

Lorsque le capteur de distance détecte un objet, le moteur se met à tourner
Lorsque le capteur de distance détecte un objet, le moteur se met à tourner

Procédons par étape, et démarrons par votre premier défi : connecter le capteur de distance.

Connectez le capteur de distance à la carte Arduino

 

Commencez par le capteur de distance
Prenez votre capteur de distance

Remarquez ensuite que votre capteur de distance a trois fils : un rouge, un noir et un jaune. Par convention (et c’est le cas ici), le fil rouge correspond généralement à l’alimentation, le noir à la masse, et le jaune à la donnée.

En pratique, ça signifie qu’il faudra connecter le fil rouge à l’alimentation, c’est-à-dire à ce qui permet de délivrer de la tension électrique : cherchez une tension en volts sur votre carte Arduino, 3,3V ou 5V.

Il faudra aussi connecter le fil noir à la masse, pour fermer le circuit et ainsi laisser circuler le courant : cherchez la masse sur votre Arduino, ou "ground" en anglais, raccourci en GND.

Quant au fil jaune, il faudra le connecter à une broche analogique (celui que vous voulez, mais de préférence le A1 pour que ce soit directement compatible ensuite avec mon programme).

À ce stade, votre capteur de distance devrait être branché comme ceci :

Connectez le capteur de distance sur la carte Arduino
Connectez le capteur de distance sur la carte Arduino 

Et si votre ordinateur est allumé (ce qui est vraisemblablement le cas), votre capteur devrait fonctionner puisqu’il est alimenté ! Mais ça, vous ne pouvez pas vraiment le savoir pour le moment, puisqu’on n’a ni téléversé de programme dans la carte Arduino pour lui dire quoi faire, ni branché d’actionneur qui permettrait d’effectuer une action lorsque le capteur détecte quelque chose... 😏

Vous l’avez compris, c’est là qu’intervient votre deuxième défi : brancher le moteur.

Branchez le moteur sur la carte Arduino

Prenez le servomoteur
Prenez le servo-moteur

‌Comme pour le capteur de distance, votre moteur a trois fils, et vous allez devoir réaliser la même opération que pour le capteur de distance : le fil rouge doit être relié à l’alimentation, le noir à la terre et le jaune à la donnée (ici une broche "digital").

Alors, pour le fil jaune, pas de problème : il reste des emplacements libres (toujours pour des raisons de concordance avec mon programme, je vous suggère d’utiliser la broche digitale 7). Pour le fil noir, c’est pareil, vous pouvez toujours le brancher sur un autre GND. Mais pour le fil rouge ? Si vous avez branché votre capteur de distance sur 5V, vous pourriez tout-à-fait brancher votre moteur sur 3,3V, si c’est bien la tension que demande votre moteur. Mais s’il demande une tension de 5V pour pouvoir fonctionner correctement, vous allez être bien embêtés. C’est ici qu’entre en jeu la breadboard.

Breadboard composée de
Breadboard composée de 63 lignes

Chaque pin d’une même ligne de la breadboard est en fait relié aux autres pins de cette même ligne. Autrement dit, si vous branchez un fil sur l’alimentation 5V de votre Arduino d'un côté et sur n’importe quel pin de la breadboard de l'autre, comme ceci :

Breadboard connectée à l'Arduino
Breadboard connectée à la carte Arduino

... eh bien tous les fils que vous brancherez sur cette même ligne, seront liés à l’alimentation : tout se passe comme si vous branchiez chacun de ces pins à l’alimentation 5V.

Tous les fils sont connectés à l'alimentation 5V de la carte Arduino via la breadboard
Tous les fils sont connectés à l'alimentation 5V de la carte Arduino via la breadboard

À vous maintenant de brancher l’alimentation de votre capteur de distance et celle de votre moteur sur la breadboard, puis de les relier à l’alimentation 5V de votre Arduino.

Vous devriez obtenir quelque chose comme ça : 

Tout est relié !
Tout est relié !

Votre montage est terminé ? Il ne reste plus que le programme à téléverser dans votre carte, pour dire comment doivent se comporter moteur et capteur ! C’est votre dernier défi

Programmez le robot

Ce programme, je l’ai écrit pour vous, dans le langage que comprend Arduino. Il suffit de le télécharger ici. En l’ouvrant, vous risquez d’avoir le message suivant :

Cliquez sur ok
Créez le dossier en acceptant le message

Cliquez sur ok, et c’est tout !

Sinon, vous pouvez aussi copier/coller directement le code suivant dans l’interface de votre Arduino (que vous avez téléchargée tout à l'heure) :

#include <Servo.h>

Servo servo_pin_7;  // Si vous avez branché votre servomoteur sur un pin différent, remplacez le "7" par le numéro de votre pin

void setup()
{
  servo_pin_7.attach(7);    // Si vous avez branché votre servomoteur sur un pin différent, remplacez les "7" par le numéro de votre pin
}

void loop()
{
  servo_pin_7.write( 0 );   // Si vous avez branché votre servomoteur sur un pin différent, remplacez le "7" par le numéro de votre pin
  delay( 1000 );
  if (( (analogRead(A1)) > (400) ))     // Si vous avez branché votre capteur de distance sur un pin différent, remplacez le "A1" par le numéro de votre pin
  {
    servo_pin_7.write( 180 );   // Si vous avez branché votre servomoteur sur un pin différent, remplacez le "7" par le numéro de votre pin
    delay( 1000 );
    servo_pin_7.write( 0 );     // Si vous avez branché votre servomoteur sur un pin différent, remplacez le "7" par le numéro de votre pin
    delay( 1000 );
  }
  else
  {
    servo_pin_7.write( 0 );     // Si vous avez branché votre servomoteur sur un pin différent, remplacez le "7" par le numéro de votre pin
  }
}

Si votre carte arduino est bien reliée à votre ordinateur sur un port usb, cliquez ensuite sur téléverser et testez votre capteur de distance !

Téléversez votre programme dans la carte pour pouvoir tester le programme
Téléversez votre programme dans la carte pour pouvoir tester le programme

Est-ce que tout fonctionne ? Si oui, bravo vous venez de construire votre premier robot ! Eh oui, il ne ressemble peut être pas à ce que vous imaginiez (et il faudra encore le customiser un peu pour qu’il puisse faire la même chose que votre Thymio), mais techniquement vous avez là un bébé robot qui a déjà tout d’un grand. 😊

Si vous avez un peu de mal dans la construction, voici mon pas à pas en vidéo qui pourra peut-être vous éclairer :

Allez plus loin 

J'espère que cette première approche vous a donné envie d'aller plus loin ! Car Arduino est un véritable univers, ouvert à tous ceux rêvant de fabriquer et programmer leur propres objets électroniques, grands comme petits.

Dans les prochaines parties de ce cours, nous allons plutôt nous concentrer sur la programmation, avec le robot Thymio. Mais, si vous êtes intéressés pour poursuivre cette initiation Arduino, chez vous et dans vos classes, sachez qu'il existe de nombreuses ressources pour apprendre, ainsi qu'une grande communauté où trouver de l'aide.

Je vous propose donc 2 ressources francophones complémentaires pour vous lancer : 

En résumé

  • Arduino est une carte électronique programmable, sur laquelle on vient brancher différents composants électroniques.

  • Pour faire un début de robot avec une carte Arduino, il suffit de brancher un capteur et un actionneur sur la carte, puis de téléverser dans la carte un programme qui dictera les comportements des actionneurs en fonction des événements extérieurs détectés via les capteurs.

Exemple de certificat de réussite
Exemple de certificat de réussite