A la découverte de la carte Arduino


Présentation

Arduino est une plateforme de développement open-source basée sur une petite carte électronique programmable et d'un logiciel.

La carte électronique est construite autour d’un microcontrôleur et d'un certain nombre d’entrées et de sorties (les ports) permettant la connexion de capteurs (température, humidité…), ou d’actionneurs (moteur, DEL, servo-moteur…).

Le logiciel de programmation des cartes Arduino est une application, libre et multi-plateformes, servant d’éditeur de code et de compilateur, et qui peut transférer le programme au travers de la liaison USB.
Le langage de programmation utilisé est un mélange de C et de C++, restreint et adapté aux possibilités de la carte.

Il existe de nombreux domaines d'applications : robotique, domotique, modélisme, télécommunications, scientifiques, arts & spectacles, plus globalement informatique embarquée…

L'Arduino emprunte son nom au Bar di Re Arduino (en français « bar du roi Arduin »), lieu de réunion des concepteurs de la carte, à Ivrée en Italie du Nord.

Une famille de cartes Arduino

Il existe différentes cartes Arduino pour satisfaire différents types de projet. Nous utiliserons exclusivement la carte Arduino Uno.


Schéma d'un carte Arduino Uno


Le microcontrôleur

C’est le cerveau de notre carte. Il va recevoir le programme que nous allons créer et va le stocker dans sa mémoire avant de l’exécuter. Grâce à ce programme, il va savoir faire des choses, qui peuvent être : faire clignoter une LED, afficher des caractères sur un écran, envoyer des données à un ordinateur, mettre en route ou arrêter un moteur…

L’alimentation

Pour fonctionner, une carte Arduino a besoin d'une alimentation. Le microcontrôleur fonctionnant sous 5V, la carte peut être alimentée directement en 5V par le port USB ou bien par une alimentation externe qui est comprise entre 7V et 12V. Un régulateur se charge ensuite de réduire la tension à 5V pour le bon fonctionnement de la carte.

La connectique

Pour connecter à la carte des composants (résistances, diodes, moteurs…), la carte Arduino possède des broches (pins, en anglais).

Sur les Arduino et sur beaucoup de cartes compatibles Arduino, les broches se trouvent au même endroit. Cela permet de fixer des cartes d’extension, appelée shields en les empilant.
Les shields permettent d'augmenter les fonctionnalités des cartes Arduino.
Exemples : shield Wifi, shield SD, shield GPS…

Les principales broches Arduino que nous allons utiliser sont :


Les connexions entre les composants sont réalisées par des jumpers, sortes de petits câbles.



La platine d’expérimentation (breadboard)

Une platine d’expérimentation (appelée breadboard) permet de réaliser des prototypes de montages électroniques sans soudure et donc de pouvoir réutiliser les composants.



Le logiciel Arduino IDE

Le logiciel Arduino est un environnement de développement (IDE) open source et gratuit . C'est grâce à ce logiciel que nous allons créer et envoyer les programmes sur la carte Arduino.

Le logiciel Arduino est téléchargeable à l'adresse suivante: http://arduino.cc.



Les principaux boutons :

1 : Permet de vérifier si le programme ne contient pas d'erreurs.
2 : Charge (téléverse) le programme dans la carte Arduino.
3 : Crée un nouveau fichier.
4 : Ouvre un fichier.
5 : Enregistre le fichier.
6 : Ouvre le moniteur série.


Une version en ligne de l'éditeur de code est disponible à cette adresse: https://create.arduino.cc/editor




Structure d'un sketch Arduino

Pour être exécutable, un sketch Arduino doit contenir les deux fonctions suivantes :

La structure d'un sketch Arduino est toujours la suivante :

Le code minimal à utiliser lorsqu'on crée un programme est donc divisé en deux parties :

void setup() 	 
{   	
   // une ou plusieurs instructions
   // ... 
} 
 
void loop() 	 	 
{  
   // une ou plusieurs instructions
   // ... 	 	 
} 

L'instruction void permet de déclarer une fonction mais elle ne renvoie aucune valeur à l’appelant. (void peut être traduit par vide).
Dans une fonction, le code à exécuter est toujours compris entre une accolade ouvrante { et une accolade fermante }.

Les instructions sont des lignes de code qui disent au programme : “fais ceci, fais cela…” Ce sont donc les ordres qui seront exécutés par l’Arduino. Il est très important de respecter exactement la syntaxe, faute de quoi, le code ne pourra pas être exécuté.

Attention, chaque instruction doit se terminer par un point-virgule. Lorsque le code ne fonctionne pas, c’est souvent parce qu’il manque un point-virgule.

Comme dans tout langage de programmation, il est bon d'ajouter des commentaires dans les scripts.
Pour mettre en commentaire toute une ligne on utilise le double slash // :
Exemple :

Instruction1 ; // ceci est un commentaire sur une seule ligne
Instruction2 ;


Pour mettre en commentaire plusieurs lignes, il doit se commencer par : /* et se terminer par */
Exemple :

Instruction1 ; 
/*   ceci est un commentaire
     sur plusieurs lignes   */
Instruction2 ;

Statistiques du site