Arduino

« Arduino » expliqué aux enfants par Vikidia, l’encyclopédie junior
Aller à : navigation, rechercher
Confusion Ne pas confondre avec Raspberry Pi !
Arduino Logo.svg

La carte Arduino est une carte électronique programmable (appelée microcontrôleur) utilisée pour réaliser des montages électroniques. Facile d'utilisation, elle permet de s'initier aisément à l'électronique et à la programmation. Elle devra se connecter sur un ordinateur pour permet le téléversement des commandes à exécuter (le code ou le programme).

Elle est open source ce qui signifie que chacun peut construire son propre microcontrôleur et la diffuser (sans toutefois utiliser le terme Arduino dans le nom de la carte). Ainsi, il existe de nombreuses de copies (clones) sur Internet moins chères que l'officiel (telle que la Arduino Uno R3 à env. 20 €).

Il ne faut pas confondre Arduino (une carte de composant électronique où se trouve un microcontrôleur contrôlant des modules d'environnement, par exemple : mesurer la température, le mouvement, contrôler un moteur, etc.) et Raspberry Pi (un nano-ordinateur pouvant accueillir un système d'exploitation).

Cartes[modifier | modifier le wikicode]

Il existe actuellement treize modèles de microcontrôleurs Arduino :

  • la Uno ;
  • la Mega 2560 possède plus d'entrées/sorties et de mémoire ;
  • la Due est comme la Mega, mais avec un processeur plus rapide ;
  • la Nano est une version naine ;
  • la Leonardo, la 101, l'Esplora, la Micro...1

Des coffrets de divers constructeurs sont accessibles afin d'expérimenter facilement plusieurs dizaines de composants ou modules (utilisation d'un afficheur, déclencheur physique selon un module sensitif comme l'odeur, l'infrarouge, le mouvement, l'humidité dans la terre, captation d'onde wifi...). Des codes de programmations, des schémas et de la documentation sont fournit pour chaque leçon.

Shield[modifier | modifier le wikicode]

Les shields (ou cartes d'extension) servent à étendre les capacités ou à ajouter des fonctions sur la carte Arduino. Par exemple : permettre l'accès à l'Internet, contrôler 2 moteurs électrique ou ajouter un écran tactile... Un shield comporte toujours une carte (le support ou circuit imprimé), des composants et un ou des circuits intégrés. Le nom shield, plutôt spécifique à Arduino, est aussi appelé circuit électronique.

Projets réalisés à l'aide d'une carte Arduino[modifier | modifier le wikicode]

Un drone quadricopter.

Et bien d'autres...

Schéma de construction.

Exemple de montage[modifier | modifier le wikicode]

Faire clignoter une LED[modifier | modifier le wikicode]

On peut voir deux fils sur le schéma :

  • un fil noir : la masse, c'est comme la polarité moins (-) d'une pile ;
  • un fil rouge branché sur le pin 8 qui va allumer la LED (polarité : +) ;
  • on remarque aussi une résistance (le composant marron entouré de bandes de couleurs) destinée à diminuer (résister) le courant afin que la LED (rouge ici) ne grille pas.

Remarque : la LED possède un sens : le fil le plus long se branche du côté du courant +. La résistance ne possède pas cette particularité.

Le code[modifier | modifier le wikicode]

int pinLed = 8;

void setup()
{
 pinMode(pinLed, OUTPUT);
}

void loop()
{
 digitalWrite(pinLed, HIGH);
 delay(500);
 digitalWrite(pinLed, LOW);
 delay(500);
}

Explications[modifier | modifier le wikicode]

  1. pinLed = 8 : indique l'emplacement du pin (connecteur) n° 8 relié à la LED (celui en fil rouge).
  2. void setup() : fonction d'initialisation du programme (prépare les données de base au démarrage de la carte).
  3. pinMode(ledPin, OUTPUT) : configure le connecteur spécifié afin qu'elle se comporte comme une entrée (INPUT) ou une sortie (OUTPUT).
  4. void loop() : c'est le programme à proprement parler. Cette partie du code boucle (loop en anglais) à l'infini.
  5. digitalWrite(pinLed, HIGH) : envoie du courant "HIGH" (TOUT) dans le pin "pinLed".
  6. delay(500) : le programme se met en pause pendant 500 millisecondes, soit une demi-seconde.
  7. digitalWrite(pinLed, LOW) : aucun courant envoyé, l'instruction assigne "LOW" (RIEN) dans le pin "pinLed".
Programmation par mBlock.

Logiciels de développement[modifier | modifier le wikicode]

Afin de développer son programme d'automatisation, la carte Arduino s'utilise avec le code du langage C ou C++. À l'aide du logiciel libre Arduino, on téléversera (injectera) le code qu'on aura créer dans la carte Arduino.

On peut aussi utiliser un langage graphique (ou visuel sous forme de bloc) pour programmer les cartes. mBlock, un des plus utilisés, a été développé afin de contrôler le robot mBot, lui-même construit autour d'une Arduino. Il en existe d'autres : ardublock, Blockly...

Initiation[modifier | modifier le wikicode]

Apprendre l'électronique avec peu de programmation

  • Divers magasins en ligne proposent des coffrets (starter kit) d'initiation de qualités et de quantités (de composants) variables avec documentation en français.

Apprendre le développement de logiciels

Pour débuter dans la programmation de l'Arduino, des cours gratuits en ligne sont accessibles. Le temps d'étude et de pratique est d'environ quinze heures chacun. Ces cours sont destinés aux enseignants comme aux adolescents

Histoire[modifier | modifier le wikicode]

Un des 5 développeurs du projet raconte les possibilités d'Arduino avec les possibilités que chacun peut développer souvent à peu de frais et à tout âge : Massimo Banzi, Comment Arduino rend l'imagination open-source (YouTube sous-titré en français).

Portail des techniques — Tous les articles sur les moyens de transport, l'informatique, les outils et les matériaux…