1. Définition : Qu'est-ce que c'est ?
Une carte Arduino est une petite (5,33 x 6,85 cm) carte électronique équipée d'un micro-contrôleur.
Le micro-contrôleur permet, à partir d'événements détectés par des capteurs, de programmer et
commander des actionneurs ; la carte Arduino est donc une interface programmable.
La carte Arduino la plus utilisée est la carte Arduino Uno.
La conception matérielle (schémas électroniques et typons) est distribuée sous
licence Creative Commons Attribution Share-Alike 2.5
[Link]
2. L'usage : Mais à quoi ça peut donc bien servir ?
Les possibilités d'utilisation sont infinies : SI on peut ...
détecter un ou plusieurs événements
(variation de température, mouvement,
présence, distance …)
ET
en fonction de ces événements,
agir sur le monde réel à l'aide
d'actionneurs (résistances chauffantes,
moteurs ...),
ALORS
on peut tout faire : bras de robot,
régulation de température, effets
lumineux, instruments de musique,
systèmes d'alarmes, ...
De nombreuses cartes additionnelles (« shields ») ont été créées afin d'enrichir les applications
potentielles, les seules limites sont notre imagination, le temps, et le budget (quelques dizaines
d'euros suffisent au départ pour s'équiper).
[Link]
3. Comment on s'en sert ?
Supposons que l'on veuille faire clignoter une lampe (DEL) à l'aide d'un bouton poussoir (BP).
Nous connectons le bouton poussoir (BP) à une entrée (E) de la carte Arduino et notre lampe (diode
lumineuse DEL) à une sortie (S) de la carte.
Mais nous devons également programmer la carte, de manière à ce que la diode lumineuse clignote.
Nous rédigeons le programme à l'aide d'un logiciel, installé sur un ordinateur.
Le programme doit sans cesse surveiller l'entrée connectée au bouton poussoir :
- si le bouton poussoir est appuyé il doit : allumer la diode, attendre 1 seconde, éteindre la
diode, attendre 1 seconde, puis recommencer (allumer la diode, attendre 1 seconde …).
- si le bouton poussoir n'est pas (ou plus) appuyé, il doit éteindre la diode.
[Link]
Il est possible de programmer le comportement de la carte Arduino de deux manières différentes :
Programmation en langage C Programmation par blocs
Une fois le programme créé, nous le téléversons, (=transférons) à la
carte Arduino à l'aide d'un câble USB, comme celui d'une imprimante.
Nous pouvons alors retirer le câble USB : notre carte Arduino est
autonome, elle nécessite alors toutefois une alimentation électrique
(pile 9V).
[Link]
4. Zoom sur la carte
Prise jack : Connexion USB (Universal Serial Bus):
- Permet de brancher une - Permet d’alimenter la carte en énergie
alimentation électrique (5V).
(pile, batterie, adaptateur secteur, - Permet de téléverser le programme dans la
+ au centre Vin 7 à 12 V). carte.
Microcontrôleur :
- stocke le programme et
l’exécute.
Entrées analogiques :
- Permet de brancher des Entrées et sorties numériques (Digital) :
capteurs et des détecteurs - Permet de brancher des actionneurs.
analogiques. - Permet de brancher des détecteurs.
[Link]
4.1. Les entrées/sorties numériques : de D0 à D13
Chacun des connecteurs D0 à D13 peut être configuré par programmation en
entrée ou en sortie, nous pouvons donc avoir par exemple les connecteurs 2 et 3
configurés comme des entrées et les connecteurs 7, 8 et 9 configurés comme des
sorties.
Il est par conséquent possible de connecter côte à côte des capteurs logiques
(interrupteurs par exemple) aux connecteurs 2 et 3 et des actionneurs aux connecteurs
7, 8 et 9.
Les signaux véhiculés par ces connecteurs sont des signaux logiques, c'est-à-dire
qu'ils ne peuvent prendre que deux états : HAUT (5 Volts) ou BAS (0 Volt), par rapport
au connecteur de masse GND, qui lui est toujours, par définition, à 0 Volt.
Attention : les connecteurs ne peuvent pas fournir en sortie un courant supérieur à
40 mA, ce qui interdit de brancher directement un moteur sur une sortie logique.
Remarquez le signe ~ sur les connecteurs 3, 5, 6, 9 10 et 11, nous verrons plus tard
sa signification (PWM) et son importance.
Vocabulaire : on qualifie parfois ces entrées/sorties de numériques, de logiques ou de
digitales, ces trois adjectifs sont ici considérés comme synonymes.
[Link]
4.2. Les entrées analogiques A0 à A5
Contrairement aux entrées/sorties numériques qui ne peuvent prendre que deux états
HAUT et BAS, ces six entrées peuvent admettre un millier de valeurs (1024 exactement)
analogiques comprises entre 0 et 5 Volts.
Nous pourrons donc avoir des valeurs de tension précises à 5 mV près (≈ 5V/1024) .
Exemple d'utilisation d'une entrée analogique : faire varier la luminosité d'une DEL
Si nous tournons le potentiomètre, le curseur
se déplace d'un bout à l'autre de la
résistance, et la tension de l'entrée A0 varie
de 0 V à 5 V (0V en bas, 5V en haut sur le
schéma).
Cette valeur analogique peut être ici utilisée
par le programme pour faire varier la
luminosité de la diode lumineuse.
On pourrait ainsi commander la vitesse de
rotation d'un moteur ou la position d'un
servo-moteur.
[Link]
Interface de connexion GROVE = Base SHIELD
Le module Grove Base Shield est une carte d'interface permettant
de raccorder facilement, rapidement et sans soudure les capteurs
et les actionneurs sur une carte compatible Arduino.
Il est équipé de 16 connecteurs de 4 broches :
- 4 entrées analogiques (A0, A1, A2, A3)
- 7 entrées-sorties logiques (D2, D3, D4, D5, D6, D7, D8)
- 4 interfaces I2C
- 1 interface UART
- 1 led indicateur de reset
- 1 bouton de reset via un bouton poussoir
Base
Carte Arduino
Exemple de montage
ENTREES OU SORTIES
NUMERIQUES
ENTREES ANALOGIQUES D2-D3-D4-D5-D6-D7-D8
A0-A1-A2-A3
Description des modules Grove par carte Arduino
Les modules Grove sont des composants plug-and-play open-source sans soudure et qui simplifie l'étude et les prototypes
électroniques en proposant une large gamme de capteurs et actionneurs. Les modules sont enfichables sur un Base Shield à
connecter sur une carte Arduino ou compatible.
Quelques modules
Modules
Fonctions Sonde Détecteur Del Buzzer Capteur IR Sensor à Microphone Afficheurs Joystick
Température mouvement Infra Rouge Ultrasons à segments