Académique Documents
Professionnel Documents
Culture Documents
0
SOMMAIRE
TABLE DES ILLUSTRATIONS (FIGURES) .............................................................................................................. 3
INTRODUCTION ................................................................................................................................................ 4
COMPOSITION DE LA PLATEFORME ARDUINO................................................................................................................. 4
UTILISATION DE LA BREADBOARD ................................................................................................................................ 6
LISTE DU MATERIEL FOURNI KIT INITIATION ................................................................................................................... 7
LOGICIELS NECESSAIRES ............................................................................................................................................. 8
DIRECTIVES POUR CHAQUE EXERCICE............................................................................................................................ 8
1. EXERCICE 1 - BLINKY LED .......................................................................................................................... 9
1.1. OBJECTIFS ................................................................................................................................................. 9
1.2. SCHEMA DE CABLAGE .................................................................................................................................. 9
1.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................... 9
1.4. PRINCIPALES FONCTION A DECOUVRIR ........................................................................................................... 10
1.5. LE PROGRAMME ....................................................................................................................................... 10
1.6. LES ECUEILS PREVISIBLES............................................................................................................................. 10
2. EXERCICE 2 - BLINKY LED AND DIALOG PC .............................................................................................. 11
2.1. OBJECTIFS ............................................................................................................................................... 11
2.2. SCHEMA DE CABLAGE ................................................................................................................................ 11
2.3. PRINCIPALES FONCTION A DECOUVRIR ........................................................................................................... 12
2.4. LE PROGRAMME ....................................................................................................................................... 12
2.5. TRAVAIL A FAIRE EN SUPPLEMENT ................................................................................................................ 12
2.6. LES ECUEILS PREVISIBLES............................................................................................................................. 12
3. EXERCICE 3 – DETECTION D’UN NIVEAU DE SEUIL DE TENSION ANALOGIQUE ........................................ 13
3.1. OBJECTIFS ............................................................................................................................................... 13
3.2. SCHEMA DE CABLAGE ................................................................................................................................ 13
3.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................. 14
3.4. PRINCIPALES FONCTION A DECOUVRIR ........................................................................................................... 14
3.5. LE PROGRAMME ....................................................................................................................................... 15
3.6. LES ECUEILS PREVISIBLES............................................................................................................................. 15
3.7. TRAVAIL A FAIRE EN SUPPLEMENT ................................................................................................................ 15
4. EXERCICE 4 – EFFET DE FONDU D’UNE LED ............................................................................................. 16
4.1. OBJECTIFS ............................................................................................................................................... 16
4.2. SCHEMA DE CABLAGE ................................................................................................................................ 16
4.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................. 17
4.4. PRINCIPALES FONCTION A DECOUVRIR ........................................................................................................... 18
4.5. LE PROGRAMME ....................................................................................................................................... 18
4.6. LES ECUEILS PREVISIBLES............................................................................................................................. 18
5. EXERCICE 5 – VARIATEUR DE LUMINOSITE D’UNE LED ........................................................................... 19
5.1. OBJECTIFS ............................................................................................................................................... 19
5.2. CONSEILS ................................................................................................................................................ 19
6. EXERCICE 6 – CAPTEUR DE TEMPERATURE ............................................................................................. 20
6.1. OBJECTIFS ............................................................................................................................................... 20
6.2. SCHEMA DE CABLAGE ................................................................................................................................ 20
6.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................. 21
1
6.4. LE PROGRAMME A REALISER ........................................................................................................................ 21
6.5. CONSEILS ................................................................................................................................................ 21
7. EXERCICE 7 – AFFICHEUR 7 SEGMENTS ................................................................................................... 22
7.1. OBJECTIFS ............................................................................................................................................... 22
7.2. SCHEMA DE CABLAGE ................................................................................................................................ 22
7.3. TECHNOLOGIE DES COMPOSANTS ................................................................................................................. 22
7.4. TRAVAIL A REALISER .................................................................................................................................. 24
8. EXERCICE 8 – COMPTEUR ....................................................................................................................... 25
2
Table des illustrations (Figures)
3
Introduction
Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware
and software. It's intended for artists, designers, hobbyists, and anyone interested in creating
interactive objects or environments.
Arduino can sense the environment by receiving input from a variety of sensors and can affect its
surroundings by controlling lights, motors, and other actuators. The microcontroller on the board is
programmed using the Arduino programming language (based on Wiring) and the Arduino
development environment (based on Processing). Arduino projects can be stand-alone or they can
communicate with software running on a computer (e.g. Flash, Processing, MaxMSP). The boards can
be built by hand or purchased preassembled; the software can be downloaded for free. The
hardware reference designs (CAD files) are available under an open-source license, you are free to
adapt them to your needs. Arduino received an Honorary Mention in the Digital Communities section
of the 2006 Ars Electronica Prix. The Arduino team is: Massimo Banzi, David Cuartielles, Tom Igoe,
Gianluca Martino, and David Mellis
Caractéristiques :
ATmega328 16 MHz, mémoire Flash de 32 Ko, RAM de 2 Ko, EEPROM de 1 K
14 x GPIO (dont 6 sorties PWM)
4
6 x entrées analogiques (A0…A5)
Prise en charge des bus SPI et I²C
Connecteur USB
Embase ICSP
Bouton Reset
5
Utilisation de la breadBoard
La breadBoard est un support pour câbler un schéma électrique. Elle sera utilisée pour réaliser le
schéma électrique et relier celui-ci aux entrées sorties de la carte microcontrôleur Arduino UNO.
Sur la figure ci-dessus de la breaBoard nous avons rajouté les lignes grisées qui permettent de définir
les liaisons électriques 2 points reliés par un trait gris sont connectés électriquement.
6
Liste du matériel fourni KitBox initiation
Breadboard + cables 1
Potentiomètre 1
Switch 2
Buzzer 1
Afficheur 7 segments 1
7
Logiciels nécessaires
Arduino (http://arduino.cc/en/Main/OldSoftwareReleases)
Frtizting (http://fritzing.org/download/)
1 - Installez l’environnement de développement Arduino, pour cela télécharger la version 1.0.6 sur
arduino.cc. Utilisez la version avec installeur si vous êtes administrateur de poste.
2 - une fois installé (version Windows), une entrée menu Arduino dans la barre de lancement
vous permet de lancer l’IDE Arduino.
8
1. Exercice 1 - Blinky LED
1.1. Objectifs
Le programme ci-après génère un train de signaux carrés sur la sortie digitale n°13. La Led rouge est
branchée sur cette sortie, en série avec une résistance pour limiter le courant. Elle s’allume quand la
sortie N°13 est à l’état haut : 5V
9
LED : composant optoélectronique qui émet de la lumière lorsqu’il est parcouru par un courant. La
LED ne laisse passer le courant que dans un seul sens Anode vers Cathode. On reliera donc la borne
Anode au + (broche la plus longue) et la borne Cathode au – de la source d’alimentation. On évitera
de brancher la diode directement à la source d’alimentation et on utilisera en série une résistance
pour limiter le courant 15 mA par exemple. La LED rouge produit une chute de tension d’environ
1.8V ( cette chute de tension dépend aussi de la technologie de la LED et de sa couleur) . On peut
3.2
écrire 5𝑉 = 𝑈𝐿𝐸𝐷 + 𝑈𝑅 = 1.8 + 𝑅. 𝐼 => 𝑅 = = 213 Ohms
0.015
1.5. Le programme
10
2. Exercice 2 - Blinky LED and dialog PC
2.1. Objectifs
Le Firmware dans l’Arduino renvoi des informations sur le PC connecté via le port USB. Cela peut être
très utile pour relier l’Arduino à d’autres périphériques, mais aussi très utile pour avoir l’état d’une
variable ou du programme dans la phase débogage.
Pour cela on utilise le moniteur de liaison série disponible sur l’EDI, pour recevoir des informations
depuis la liaison USB/série entre l’ordinateur et la carte microcontrôleur. Une fois le programme
chargé dans le microcontrôleur, il faut ouvrir le serial monitor sur le PC (menu tools de l’IDE arduino-
>serial monitor). A vous de décoder, comprendre et faire fonctionner ce programme.
11
2.3. Principales fonction à découvrir
Serial.begin(vitesse) initialisation de la liaison série « vitesse »=9600bauds
Serial.print(texte) envoi vers le PC le contenu de « texte »
Serial.println(texte) envoi vers le PC le contenu de « texte », rajoute un saut de ligne à la fin, et un retour
en début de ligne
2.4. Le programme
12
3. Exercice 3 – Détection d’un niveau de seuil de tension analogique
3.1. Objectifs
Le programme ci-après détecte un seuil de tension analogique pour allumer une LED. Une résistance
variable, reliée au 5V, est branché sur la broche A0 de l’Arduino. Cette broche est une entrée
analogique pouvant récupérer une tension entre 0V et 5V. Une LED rouge est branchée sur la sortie
digitale n°3.
13
3.3. Technologie des composants
3.3.1. Potentiomètre
Un potentiomètre (appelé familièrement potar) est un type de résistance variable à trois bornes,
dont une est reliée à un curseur se déplaçant sur une piste résistante terminée par les deux autres
bornes. Ce système permet de recueillir, entre la borne reliée au curseur et une des deux autres
bornes, une tension qui dépend de la position du curseur et de la tension à laquelle est soumise la
résistance.
𝑡𝑒𝑛𝑠𝑖𝑜𝑛𝑀𝑎𝑥 5
= = 0,0049 𝑣𝑜𝑙𝑡 𝑝𝑎𝑟 𝑢𝑛𝑖𝑡é
2𝑛𝑏𝑖𝑡𝑠 1024
14
3.5. Le programme
15
4. Exercice 4 – Effet de fondu d’une LED
4.1. Objectifs
Le programme ci-après permet la décoloration d'une LED. Un bouton poussoir est relié sur la broche
3 de l’Arduino (configuré comme une entrée). Une LED est connecté à la proche 9 de l’Arduino
(configuré en sortie). L’objectif est de créer un effet de fondu de luminosité de la LED lors d’un appui
sur un bouton. Afin de créer cet effet de fondu, on utilise un signal PWM (Pulse Width Modulation)
permettant de moduler le signal de sortie (plus de détail dans la partie 5.3 de ce chapitre).
16
4.3. Technologie des composants
The duration of "on time" is called the pulse width. To get varying analog values, you change, or
modulate, that pulse width. If you repeat this on-off pattern fast enough with an LED for example,
the result is as if the signal is a steady voltage between 0 and 5v controlling the brightness of the LED.
In the graphic below, the green lines represent a regular time period. This duration or period is the
inverse of the PWM frequency. In other words, with Arduino's PWM frequency at about 500Hz, the
green lines would measure 2 milliseconds each. A call to analogWrite() is on a scale of 0 - 255, such
that analogWrite(255) requests a 100% duty cycle (always on), and analogWrite(127) is a 50% duty
cycle (on half the time) for example.
17
4.4. Principales fonction à découvrir
digitalRead(pin) : Lit la valeur de la broche numérique spécifiée « pin ». Cette fonction retourne
une valeur HIGH (niveau binaire 1) ou LOW (niveau binaire 0).
analogWrite(pin,value) : Génère une tension analogique « (signal PWM) sur la broche « pin »
4.5. Le programme
Vous utilisez des points de la breadboard non Analysez bien le schéma de câblage
reliés entre eux électriquement tel qu’il vous est donné, ainsi que le
schéma électrique de la breadboard,
et corrigez si nécessaire
Le bouton n’est pas bien connecté Brancher correctement le bouton
poussoir (vérifier le sens)
La compilation La compilation génère une erreur Vous avez fait une erreur de
génère une erreur syntaxe, n’avez-vous pas oublié un
point-virgule à la fin de chaque ligne
18
5. Exercice 5 – Variateur de luminosité d’une LED
5.1. Objectifs
A partir des exercices précédents, nous vous demandons de remplir l’objectif suivant :
5.2. Conseils
Faire le bilan des entrées/sorties et des composants que vous avez besoin
Faire le montage électronique sur la breadboard
Si nécessaire, préparer votre programme sur papier (fonction principale, type de
variable nécessaire, schéma bloc….)
Ecrire votre programme de manière structuré et bien commenté
Tester et valider les objectifs.
N’hésitez pas à tester progressivement votre programme. Vous pouvez l’écrire de manière
continue en validant chaque fonction principale séparément.
19
6. Exercice 6 – Capteur de température
6.1. Objectifs
L’exercice suivant a pour objectif de récupérer une valeur de température à partir d’un capteur
analogique (le LM35) et d’envoyer une valeur en degré au moniteur série. Ce capteur est connecté
sur une des broches des entrées analogiques de l’Arduino.
20
6.3. Technologie des composants
Le capteur de température LM35 est très facile à utiliser puisqu’il suffit de l’alimenter avec ses
broches VCC et GND. La broche centrale correspond au signal de la température sous forme d’une
tension analogique qui est proportionnel à la température en degré Celsius. La conversion elle aussi
est simple puisqu’un volt correspond à 100 degrés Celsius.
6.5. Conseils
Faire le bilan des entrées/sorties et des composants que vous avez besoin
Faire le montage électronique sur la breadboard
Attention au sens de branchement du capteur de température
Bien réfléchir sur le calcul de conversion Tension/Température
Si nécessaire, préparer votre programme sur papier (fonction principale, type de
variable nécessaire, schéma bloc….)
Ecrire votre programme de manière structuré et bien commenté
Tester et valider les objectifs.
21
7. Exercice 7 – Afficheur 7 segments
7.1. Objectifs
Le circuit ci-après permet d’afficher un chiffre sur un afficheur 7 segments. L'afficheur 7 segments est
connecté sur un décodeur BCD 74HC4511. On spécifie le chiffre à afficher en utilisant des fils de
prototypage câblés sur les entrées BCD du décodeur et reliés au +5V ou 0V. On utilisera des
résistances de 220ohms pour limiter le courant dans les diodes de l'afficheur comme dans l'exercice
N°1.
Dans un premier temps, la platine Arduino servira seulement pour l’alimentation des composants
22
Mais comment fonctionne ce composant ?
Comme son nom l'indique, il y a 7 LEDs dans un afficheur 7 segments (8 en comptant le point rouge
en bas à droite). Il existe principalement deux types d'afficheurs: anode commune et cathode
commune.
Cathode commune veut simplement dire : relié à la masse, s'allume avec un état haut
Anode commune : relié à l'alimentation, s'allume avec un état bas.
Il y a donc 8 pins à commander. Si nous souhaitons trois afficheurs, nous devrons utiliser ainsi 24
pins. Ce qui fait énormément de fils à brancher. Du coup, des décodeurs ont été inventé pour
simplifier ces branchements.
23
A partir des signaux envoyés sur les pins A,B,C et D du décodeur, il est possible d’activer les sorties a,
b, c, d, e, f, g correspondant aux pins d’entrées de l’afficheur 7 segments. Par exemple, si D=0, C=0,
B=0 et A=1, les sorties b et c du décodeur sont activées. Ainsi, les segments b et c de l’afficheur 7
segments sont allumés. Le chiffre 1 est ainsi représenté.
24
8. Exercice 8 – Compteur
8.1.1. Pilotage à l’aide de l’arduino
Il suffit de reprendre le schéma de câblage précédent et de relier 4 sorties digitales de l’Arduino aux
4 entrées du décodeur.
Vous pouvez alors écrire un programme permettant d’afficher des chiffres sur un afficheur 7
segments. Vous pouvez utiliser la fonction bitRead(X,n) qui retourne l’état du n° bit du mot X.
Pour aller plus loin, vous pouvez imaginer de créer un compteur de 0 à 9 à chaque fois que vous
appuyez sur un bouton poussoir ou encore d’afficher la valeur du chiffre des unités de la
température issus du capteur LM35 (utilisation de la fonction arduino bitRead()
25