Arduino Cours Débutant 3

Librement inspiré du “Livre de projets Arduino” sous licence Creative Commons BY NC SA par Arduino Srl.

Introduction

Maintenant que vous maîtrisez les bases de l’électricité, il est temps de passer la partie où l’on contrôle des choses avec l’Arduino.

Vous fabriquerez votre propre panneau de contrôle avec des boutons et des lumières qui s’allument quand vous pressez les boutons.
Une LED verte sera allumée, jusqu’à ce que vous pressiez un bouton.
Lorsque l’Arduino reçoit un signal du bouton, la lumière verte s’éteindra et deux autres lumières se mettront à clignoter.

Les broches numériques de l’Arduino ne connaissent que deux états : lorsqu’il y a une tension sur une entrée, et lorsqu’il n’y en a pas.

Ces états sont communément appelés HIGH (haut) et LOW (bas). HIGH équivaut à dire “il y a une tension ici !” et LOW signifie “il n’y a pas de tension sur cette broche !”.

Quand vous mettez une sortie (OUTPUT) à l’état haut (HIGH) en utilisant une commande appelée digitalWrite( ), vous l’activez.

Mesurez la tension entre la broche et la masse, vous aurez 5 Volts. Lorsque vous mettez une sortie (OUTPUT) à l’état bas (LOW), vous la désactivez.

Les broches numériques de l’Arduino peuvent se comporter en entrée ou en sortie.

Dans votre code, vous les configurerez en fonction de la manière dont vous voulez les utiliser.
Quand les broches sont configurées en sorties, vous pouvez contrôler des composants comme des LEDs. Lorsqu’elles sont en entrées, vous pouvez vérifier si l’on appuie sur un bouton ou non.
Étant donné que les broches O et 1 sont utilisées pour la communication avec l’ordinateur, il vaut mieux commencer par la broche 2.

Même si les interrupteurs et les boutons sont déjà bien utiles, dans le monde physique les interactions ne se limitent pas à du tout ou rien.
Même si l’Arduino est un outil numérique, il est capable de remonter des informations depuis des capteurs analogiques pour mesurer des choses comme la température ou la luminosité.
Pour ce faire, vous allez tirer parti du Convertisseur Analogique-Numérique (CAN) dont est doté l’Arduino.

Les entrées analogiques AO à A5 peuvent renvoyer une valeur comprise entre O et 1023, image d’une tension comprise entre OV et 5V.

Vous utiliserez un capteur de température TMP36 pour mesurer la chaleur de votre peau. Ce composant délivre une tension variant en fonction de la température qu’il capte.
Il a trois pattes : une qui se connecte à la masse, une autre qui se connecte à l’alimentation, et une troisième qui communiquera la tension variable à l’Arduino.

Dans le programme pour ce projet, vous lirez ce qui sort du capteur et vous en servirez pour allumer ou éteindre des LEDs, indiquant votre température corporelle. Il y a plusieurs modèles de capteurs de température. Ce modèle, le TMP36, est pratique parce qu’il délivre une tension directement proportionnelle à la température en degrés Celsius.

L’IDE Arduino intègre un outil appelé moniteur série qui vous permet d’afficher des résultats venant du microcontrôleur. En utilisant le moniteur série, vous pouvez afficher des informations en provenance des capteurs, et avoir une idée de ce qu’il se passe dans votre circuit et dans votre code pendant qu’il tourne.

Matériel

On aura besoin de la carte Arduino 🙂
1 Breadboard
1 Bouton poussoir
3 résistances 220 Ω
1 résistance 10 kΩ
3 LED rouge
1 LED verte
un capteur de température TMP36

Premier montage : Utiliser des leds et un bouton poussoir

Breadboard

La seule difficulté de compréhension dans ce montage est la résistance de 10 kΩ sur le bouton.

Cette résistance est appelée résistance de rappel. Elle permet de connecter la patte à la masse lorsque l’interrupteur est ouvert, de manière à ce qu’elle lise un “LOW” lorsqu’il n’y a pas de tension aux bornes de l’interrupteur.

Code

Tous les programmes Arduino ont 2 fonctions principales.

  • setup()
  • loop()

Tout ce qui est dans setup() ne sera exécuté que une seule fois au lancement du programme.
Contrairement à ce qui se trouve dans loop() qui sera exécuté en boucle.

Une variable est un nom donné à une case mémoire de l’Arduino, permettant de garder une trace.
Nommez toujours vos variables avec un nom intelligible. (Pas “x” par exemple :)) Elles peuvent être de différents types.

  • int : pour les nombres entiers.
  • float : pour les nombres à virgules.
  • char : pour les caractères.

Ci-dessous, vous trouverez le code, très commenté afin de comprendre les premiers concepts importants.

En langage Arduino, il suffit de précéder une ligne par « // » pour commenter ou entourer un bloc par /* blablabla */.

La casse est importante !

Deuxième montage : Utiliser un capteur branché en analogique

Breadboard


La seule difficulté est de brancher les composants dans le bon sens.

Code

Les constantes sont des variables qui ne changent pas.
On les déclare comme une variable mais en préfixant par “const”.

En programmation, les virgules des nombres sont remplacés par des points.

Les informations envoyées de l’Arduino au PC sont visualisable par le “moniteur série”