Ce tutoriel a été réalisé dans le cadre du projet "Parle à ma main" financé par la Fondation de France et un mécénat de la Fondation LAURENCE MATHIEU (Bourse Déclics jeunes). . La suite de ce tutoriel est Contrôler ses propres LEDs , puis Servomoteur Arduino ou La main bionique
Nous allons voir dans ce tutoriel:
Les ressources qui ont été utilisées pour créer ce tutoriel sont: https://wiki.electroniciens.cnrs.fr/index.php/Le_groupe_Arduino_:_Premiers_pas, et le livre "Arduino pour les nuls"
Une carte Arduino Uno
Des LEDs
Des fils/connecteurs
En résumé, voici les étapes du tutoriel qui sont détaillés par la suite :
• Installer le logiciel Arduino (ou IDE Arduino, c’est à dire que l’on peut écrire des programmes qui font fonctionner la carte Arduino) sur https://www.arduino.cc/en/Main/Software#
• Observer la carte Arduino pour voir les PIN 1 à 13, GND, voire la LED intégrée « L »
• Ouvrir l’IDE Arduino et brancher la carte Arduino avec son câble USB
• Paramétrer le PORT COM en allant dans le menu Options>Port:> et en choisissant le port où la carte est connectée dans l’IDE Arduino
Puis :
• pour faire clignoter la LED de la carte Arduino (ne demande que la carte Arduino et le câble USB)
◦ Ouvrir le sketch (ou programme) d’exemple « Blink » en allant dans le menu Fichier>Exemples>01.Basics>Blink dans l’IDE Arduino
◦ Téléverser le programme Blink dans la carte Arduino
◦ Regarder la LED intégrée L clignoter
• pour faire clignoter une LED branchée à la carte Arduino (demande la carte Arduino et le câble USB, une LED, et une résistance de 1K ohm ou une à deux autres LEDs, 2 fils conducteurs (si possible rouge et noir), et si possible une breadboard )
◦ Créer le circuit électronique en branchant à la PIN 12 de la carte le fil rouge qui sera branché de l’autre côté à la patte « + » de votre LED (éventuellement sur la breadboard). La patte « - » de la LED est branchée à une patte de la résistance. L’autre patte de la résistance est branchée au fil noir qui va être connecté de l’autre côté à la PIN GND.
◦ Ouvrir le sketch (ou programme) d’exemple « Blink » en allant dans le menu Fichier>Exemples>01.Basics>Blink dans l’IDE Arduino
◦ Enregistrer Sous « BlinkLED »
◦ Changer dans le sketch « LED_BUILTIN » par le nombre « 12»
◦ Enregistrer
◦ Téléverser le programme BlinkLED dans la carte Arduino
◦ Regarder la LED de votre circuit clignoter
• pour faire clignoter en même temps plusieurs LED branchées à la carte Arduino (demande la carte Arduino et le câble USB, trois LEDs de couleurs (par exemple Bleue, Verte et Blanche), et 3 résistance de 1K ohm ou 3 à 6 autres LEDs, au moins 4 fils (1 noir et trois rouges de préférence), et si possible une breadboard )
◦ Créer le circuit élétronique en branchant à la PIN 12 de la carte le premier fil rouge qui sera branché de l’autre côté à la patte « + » de votre LED Bleue (éventuellement sur la breadboard). La patte « - » de la LED bleue est branchée à une patte de la première résistance (sur une ligne non utilisée de la breadboard). L’autre patte de la première résistance est branchée à autre ligne de la breadboard que nous appellons « ligne de masse ». Cette ligne de masse est branchée reliée à la PIN GND par un fil noir. Brancher à
la PIN 8 de la carte le deuxième fil rouge qui sera branché de l’autre côté à la patte « + » de votre LED Verte (sur une ligne non utilisée de la breadboard). La patte « - » de la LED Verte est branchée à une patte de la deuxième résistance (sur une ligne non utilisée de la breadboard). L’autre patte de la deuxième résistance est branchée sur la « ligne de masse ». Brancher à la PIN 7 de la carte le troisième fil rouge qui sera branché de l’autre côté à la patte « + » de votre LED Blanche (sur une ligne non utilisée de la breadboard).
La patte « - » de la LED Blanche est branchée à une patte de la troixième résistance (sur une ligne non utilisée de la breadboard). L’autre patte de la troisième résistance est branchée sur la « ligne de masse ».
◦ Ouvrir le sketch (ou programme) d’exemple « Blink » en allant dans le menu Fichier>Exemples>01.Basics>Blink dans l’IDE Arduino
◦ Enregistrer Sous « BlinkTroisLED »
◦ Changer dans le sketch « pinMode(LED_BUILTIN, OUTPUT );» par « pinMode(12, OUTPUT); pinMode(8, OUTPUT); pinMode(7, OUTPUT); »
◦ Remplacer le code entre les accolades dans loop par « digitalWrite(12, HIGH); digitalWrite(8, HIGH); digitalWrite(7, HIGH); delay(1000); digitalWrite(12, LOW); digitalWrite(8, LOW); digitalWrite(7, LOW); delay(1000); »
◦ Enregistrer
◦ Téléverser le programme BlinkTroisLED dans la carte Arduino
◦ Regarder les LEDs de votre circuit clignoter
• pour faire clignoter en alternance plusieurs LED branchées à la carte Arduino (demande la carte Arduino et le câble USB, trois LEDs de couleurs (par exemple Bleue, Verte et Blanche), et 3 résistance de 1K ohm ou 3 à 6 autres LEDs, au moins 4 fils (1 noir et trois rouges de préférence), et si possible une breadboard )
◦ Créer le circuit élétronique comme dans l’exemple précédent (faire clignoter les LEDS en même temps)
◦ Ouvrir le sketch (ou programme) d’exemple précédent « BlinkTroisLED »
◦ Enregistrer Sous « BlinkTourneLED »
◦ Ajouter en première ligne du sketch « int ledBleue = 12; int ledVerte=8; int ledBlanche=7; »
◦ Modifier dans le sketch « pinMode(12, OUTPUT); pinMode(8, OUTPUT); pinMode(7, OUTPUT); » par « pinMode(ledBleue, OUTPUT); pinMode(ledVerte, OUTPUT); pinMode(ledBlanche, OUTPUT); »
◦ Remplacer le code entre les accolades dans loop par « digitalWrite(ledBleue, HIGH); digitalWrite(ledVerte, LOW); digitalWrite(ledBlanche, LOW); delay(1000); digitalWrite(ledBleue, LOW); digitalWrite(ledVerte, HIGH); digitalWrite(ledBlanche, LOW); delay(1000); digitalWrite(ledBleue, LOW); digitalWrite(ledVerte, LOW); digitalWrite(ledBlanche, HIGH); delay(1000);
◦ Enregistrer
◦ Téléverser le programme BlinkTourneLED dans la carte Arduino
◦ Regarder les LEDs de votre circuit clignoter
Le but est d’installer l’IDE (pour Integrated Development Environment, soit environnement de développement intégré en français ; c’est un logiciel pour permettre de créer ses propres programmes/applications).
Comme illustré sur l’image, une fois sur le site web https://www.arduino.cc/en/Main/Software#, descendre dans la section « Download the Adruino IDE » et cliquer sur le lien pour le téléchargement, c’est à dire sur « Windows Installer, for Windows XP and up » pour Windows. Si vous n’avez pas Windows, les liens pour les téléchargements pour Mac et Linux sont en dessous. Vous allez arriver sur une page visible dans l’illustration 2 où vous avez le choix de télécharger gratuitement l’IDE Arduino ou de faire un don pour soutenir Arduino.
Une fois sur cette page web (illustration ), cliquer sur le bouton « Just Dowload » pour télécharger gratuitement (ou sur « Contribute and Download » pour soutenir le projet avant de télécharger).
Le téléchargement va se lancer. Quand la fenêtre s’ouvre pour le téléchargement (illustration), cliquer sur Enregistrer le fichier.
Trouvez votre fichier téléchargé sur votre ordinateur, dont le nom commence par « arduino » (peut- être dans le dossier « Téléchargement », llustration), puis double-cliquez sur ce fichier. Si l’ordinateur vous le demande, autorisez l’application à effectuer des modifications sur votre ordinateur (c’est à dire à s’installer). Cela va ouvrir une nouvelle fenêtre pour réaliser l’installation.
Sur la fenêtre de l’assistant d’installation, votre première action est de lire les conditions d’utilisation (« Licence Agreement » en anglais) puis de cliquer sur « I Agree » si vous acceptez ces conditions.
Sur la fenêtre suivante, vous pouvez choisir de tout installer comme visible dans l’illustration:
Sélectionner ce que vous souhaitez télécharger (personnellement, je télécharge tout) puis cliquer sur le bouton « Next » (« next » signifie « Suivant »).
Vous allez installer (« install ») à l’étape suivante et voir l’état d’avancement du téléchargement (illustration). Acceptez les installations de LLC Ports et des drivers si votre ordinateur le demande, sinon le téléchargement sera bloqué.
Une fois l’installation finie, cliquez sur « Close » (« close » signifie « fermer » en français).
Pour ouvrir l’IDE Arduino, cliquez sur l’icône sur le bureau ou dans le menu Démarrer de Windows.
Arduino, c’est une carte électronique et un logiciel (l’IDE Arduino) qui permet d’expliquer à la carte quoi faire.
La carte Arduino permet de réaliser des circuits électroniques (en connectant pas exemple des lumières/LED) et de les contrôler.
La carte est visible ici sur les schémas (sources: www.arduino.cc et fritzing) et sur une photo (marque : Elegoo .
La carte dispose d’un élément métallique qui permet de connecter la carte électronique à l’ordinateur avec le câble USB fourni avec la carte (en haut sur les illustrations du milieu et du bas).
Si cet élément est placé en haut, les Pin (sorte de branches) sont sur la droite.
Il y a les Pin numérotées de 0 à 13 (en bas à droite sur les mêmes illustrations) qui permettent d’envoyer de l’électricité à des composants électroniques branchés sur la carte, il s’agit des « + » des circuits électroniques.
Il y a au dessus du 13 une Pin marquée « GND » (pour « ground », c’est à dire « masse » ou « terre » en français) qui correspond au « - » des circuits électroniques.
L’IDE Arduino permet d’écrire comment contrôler les circuits électroniques construits avec la carte Arduino, c’est à dire que l’on peut écrire un programme. Le « langage » de la carte Arduino est le « .ino ». On explique principalement :
• quoi faire au démarrage (dans la partie « setup » qui signifie « initialisation »)
• quoi faire ensuite en boucle (dans la partie « loop » qui signifie « boucle »)
• quelles Pin on contrôle (de 0 à 13)
Quand on ouvre l’IDE Arduino (l’icône du logiciel est visible sur l'illustration), un nouveau sketch (un programme) s'ouvre.
Un nouveau sketch (un programme) est ouvert, comme visible sur l’illustration, avec une partie « setup » et une partie « loop ».
La partie « setup » en haut est appelée une « fonction ». Set up veut dire "Initialisation". Cette fonction est composée :
La partie « loop» en bas est aussi une « fonction ». Loop veut dire "Boucle", et cette partie sera répétée en boucle. Cette fonction est composée de la même manière:
Arduino dispose d’un ensemble d’exemples, qu’on peut utiliser directement. En effet, votre carte a déjà une lumière (une LED pour Diode Électro-Luminescente en anglais) indiquée par un « L » sur votre carte, à côté des Pin GND et 13 (illustration).
Un exemple est déjà dans votre IDE Arduino pour la faire clignoter. Voici comment lancer l’exemple :
1. Connectez votre carte Arduino avec votre ordinateur via le cable USB
2. Sélectionner le « PORT COM » : il s’agit d’expliquer à votre ordinateur sur quelle « prise » est connectée votre carte. En effet, chaque élément de connectique (par exemple chaque port USB) correspond à une « porte de communication » ou « PORT COM » numéroté.
Il faut pour cela, une fois sur l’IDE Arduino, aller sur le menu « Options » puis sur « Port » et sélectionner l’option affichée (illustration).
En cas de doute, vous pouvez débrancher le câble USB connecté à la carte Arduino, voir si le port a disparu des options du menu et ré- apparaît quand vous le rebranchez.
3. Ouvrez le sketch « Blink » en allant dans le menu « Fichier » puis dans « Exemples », puis dans « 01.Basics » et enfin sélectionnez « Blink » (illustration).
Blink signifie « clignoter » en français. Ce programme permet de faire clignoter la LED « L » sur votre carte Arduino.
4. Cliquez sur la flèche « Téléverser » en haut à gauche qui charge le programme « Blink » sur la carte Arduino et l’avancée du téléversement peut être suivi grâce à la barre en bas à droite (illustration).
5. Attendre quelques secondes et la LED « L » sur votre carte Arduino devrait clignoter en s’allumant une seconde et s’éteignant une seconde.
Nous allons déchiffrer le code dans le programme « Blink »
Le texte suivant est entre les caractères « /* » et « */ » :
/*BlinkTurns an LED on for one second, then off for one second, repeatedly. Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set tothe correct LED pin independent of which board is used.If you want to know what pin the on-board LED is connected to on your Arduino model, check the Technical Specs of your board at: https://www.arduino.cc/en/Main/Products modified 8 May 2014 by Scott Fitzgerald modified 2 Sep 2016 by Arturo Guadalupi modified 8 Sep 2016 by Colby Newman This example code is in the public domain. http://www.arduino.cc/en/Tutorial/Blink*/C’est un commentaire sur plusieurs lignes, qui n’est pas lu par la carte Arduino. Les commentaires peuvent être écrits en commençant une ligne par « // » ou en mettant toute partie du texte entre « /* » et « */ ».
Le texte suivant correspond à la partie « setup » :
void setup() {// initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT);}La structure de cette fonction est décrite précédemment, dans la section sur l’IDE Arduino. Nous allons expliquer le corps de cette fonction, c’est à dire ce qui est entre les accolades :
Tout cela explique la signification de « pinMode(LED_BUILTIN, OUTPUT); » : on définit le contrôle de la LED « L » comme une sortie (la carte enverra de l’électricité pour contrôler la LED).
Le texte suivant correspond à la partie « loop » :
void loop() {digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a seconddigitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second}Cela signifie, comme détaillé juste après, que nous réalisons en boucle (= « loop » en anglais) les instructions suivantes qui permettent de réaliser un clignotement :
La structure de cette fonction loop est décrite précédemment, dans la section sur l’IDE Arduino. Voici le détail du corps de cette fonction, c’est à dire ce qui est entre les accolades :
Tout cela explique la signification de « digitalWrite(LED_BUILTIN, HIGH); » : allumer la LED « L », ou plus exactement ‘envoyer de l’électricité à la PIN de la LED « L ».
2. delay(1000); // wait for a second
Tout cela explique la signification de « delay(1000); » : attendre une seconde, ou plus exactement ‘décaler la prochaine instruction de 1000 millisecondes’.
3. digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
Tout cela explique la signification de « digitalWrite(LED_BUILTIN, LOW); » : éteindre la LED « L », ou plus exactement ‘ne pas envoyer de l’électricité à la PIN de la LED « L » .
Enfin de nouveau l’instruction pour attendre :
4. delay(1000); // wait for a second
En résumé, nous avons donc bien :
Si vous changez les chiffres dans l’instruction delay, vous changez le temps durant lequel la LED est allumée (premier « delay ») ou éteinte (deuxième « delay »). Il faut alors téléverser votre programme modifié (illustration 18 et instruction 15 « Connectez votre carte Arduino avec votre ordinateur via le cable USB »).
En résumé, nous allons :
Aller sur la page: Controler ses propres LEDS avec Arduino Uno