Tutoriels

Apprendre l ‘Arduino, pour les débutants

Moussasoft Arduino Uno Maroc

Contrairement à ce que l’on pourrait penser, c’est pas si compliqué de programmer un Arduino, tout le monde peut le faire avec un peu de bonne volonté.

C’est quoi l’Arduino ?

Les Arduinos sont des cartes électroniques basée sur des microcontrôleurs AVR du fabricant Atmel, qui nous permettent de contrôler, automatiser, hacker des trucs de la vie réelle, comme lancer la machine à café automatiquement au moment du réveil, ou être notifiés du courrier quand il y en a dans la boîte aux lettres, y a plein de possibilités.

Types d’Arduino

L’Arduino existe sous plusieurs tailles selon le nombre de composants qu’on veut utiliser dans notre projet, le plus connu aujourd’hui c’est l’Arduino UNO,

CaractéristiquesArduino MegaArduino unoArduino Nano
Caractéristiques101x53mm68x53mm45x18mm
MicrocontrôleurAtmega2560Atmega328Atmega328
Horloge16MHz16MHz16MHz
Entrée Analogique1688
Entrée / sortie Numérique542222
voltage de fonctionnement5V5V5V
Port UART411
Mémoire vive (Flash)256 Ko32 Ko32 Ko
Comparaison entre Arduino Mega2560, UNO et Nano.

Au milieu de la carte Arduino il y a une puce noir, c’est le microcontrôleur, et c’est ça concrètement qu’on va programmer en langage C/C++. Et sur les côtés de la carte il y a des broches sur lesquels on peut connecter facilement des composants et c’est là tout le génie de l’Arduino.

Présentation De La Carte Arduino Uno
Apprendre L 'Arduino, Pour Les Débutants 8

Les bases de l’Arduino

Quand on a une idée de projet Arduino, la première chose à faire c’est de lister les composants dont on a besoin, ensuite on va dessiner le schéma électrique avec les bonnes connexions sur l’Arduino, et si vous vous demandez comment on fait pour savoir ou brancher les composants ?

C’est simple, pour avoir une idée sur le schéma de câblage, on fait une petite recherche sur google image avec le nom de notre capteur suivi par Arduino, 

On peut distinguer trois sections de broches sur l’Arduino:

  1. Les broches  numériques (digital en anglais), c’est là qu’on brancher la plus part de nos composants (moteurs, capteurs etc ), et qui peuvent prendre deux états logiques, 5v pour l’état HAUT et 0v pour l’état BAS.
  2. Les broches analogiques peuvent par contre prendre une infinité de valeurs entre 0 et 5v, utile pour les potentiomètres ou les joystick par exemple.
  3. Les broches d’alimentation, servent à alimenter notre schéma.
Présentation Des Pins De Broches Numériques, Analogiques Et Pins D'Alimentation De La Carte Arduino.
Les Signaux Numériques Et Analogiques.
Apprendre L 'Arduino, Pour Les Débutants 9

Les avantages d Arduino.

Pour conclure cette présentation et vous motiver pour apprendre et à exploiter l’Arduino, voici une petite synthèse de ces avantage.

  • Economique : les cartes à microcontrôleur sont bon marché, et l’éditeur IDE est gratuit. Il faut savoir qu’une carte à microcontrôleur coûte environ 20 à 40 euros.
  • Se programme facilement : le langage est très simple,
  • Multiplateforme (Windows, Mac, Linux) : c’est un système Multiplateforme, qui peut s’installer sur différents OS Windows, Mac, Linux ou android.
  • Logiciel et le matériel sont Open-source : le schéma de la carte est disponible pour tous et le langage est libre de droit,
  • librairies : il existe de nombreuses librairies, ce qui représente un grand nombre de fonctions facile à programmer
  • Extension matériels : de nombreuses extensions matériels sont aussi disponibles, communément appelées Shields, facile à utiliser et compatible l’Arduino.
  • Communauté : il y a une communauté très active, de nombreux blogs, chaines Youtube et sites web de passinnés vous permettrons de retrouver beaucoup de ressources en ligne.

Faire clignoter une led avec Arduino.

Pour comprendre rapidement comment ça fonctionne, on va prendre l’exemple simple d’une LED (diode électroluminescente) qui s’allume et s’éteint toutes les secondes.

Premier Exemple Avec Arduino, Faire Clignoter Une Led.
Apprendre L 'Arduino, Pour Les Débutants 10

Comme la LED va avoir uniquement que deux états, soit HAUT ou BAS ( allumée ou éteinte), nous allons donc la brancher sur les pins numérique, dans notre exemple, pin 13.

Vous avez remarquer la présence d'une résistance en série avec la led, en général de valeur entre 200 ohm à 1k ohm, le role de cette résistance est de protéger le LED, en effet, la résistance limite le courant et aussi réduit la tension aux bornes de la LED. 

Programmation d’Arduino :

Avant de programmer l’ Arduino, nous devons avoir l’IDE, le logiciel Arduino qu’on retrouve gratuitement sur le site officiel, téléchargeable ici.

il faut savoir que sur tous les programmes Arduino, on trouve obligatoirement deux fonctionnes, la fonctionne setup(), exécutée une seul fois au démarrage et qui sert à initialiser nos composants, et la fonctionne loop() qui tourne en boucle tout le temps.

Une chose très importante à savoir aussi, lorsque on branche un composant sur l’Arduino, nous devons configurer ce pin dans la fonctionne setup(), soit en entrée ou en sortie, est ce que ce composant a besoin d’information (dans ce cas c’est en sortie), ou est-ce que c’est un composant qui va donner de l’information ( dans ce cas c’est une entrée).

void setup() {
// configuration la pin 13 en sortie 
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH); // Allumage de la LED : état haut = HIGH
delay(1000);                     // délai d’une seconde,le code est en pause.

digitalWrite(13, LOW); // Extinction de la LED : état bas = LOW
delay(1000);                    //  délai d’une seconde,le code est en pause.
}

La fonctionne pinMode est presque tout le temps présente dans tous les programmes Arduino, elle sert à configurer les pins d’Arduino sur lesquels nous avons connecté nos capteurs , moteurs, boutons poussoirs et autres composants soit en entrée INPUT ou soit en sortie OUTPUT, dans notre exemple la led est une sortie d’Arduino, car elle va recevoir des commandes de l’Arduino, c’est donc une information qui va partir d’Arduino vers la LED.

Pour la fonctionne digitalWrite(), comme son nom l’indique, elle permet d’écrire numériquement sur un pin de sortie, autrement dit, envoyer 5V = HIGH ou 0v = LOW sur ce pin, et ainsi allumer la led ou l’éteindre, il existe aussi la fonctionne digitalRead(),vous l’avez deviné, celle-ci sert à lire l’information sur un pin d’entrée.

La dernière fonctionne que nous allons voir dans cet article, est la fonctionne delay(), cette fonctionne met en pause l ‘execution du programme durant un moment X, l’unité de temps est en milliseconde, il n’est pas très recommandé d’utiliser cette fonctionne dans des programmes un peu plus avancés, car cela risque de perturber le bon déroulent du programme, mais mettez plutôt à sa place la fonctionne millis() , que nous allons abordé dans notre prochain article.

Comment programmer l’Arduino.

Pour transférer notre programme à l’Arduino, il faut d’abord sélectionner le type de la carte qu’on veut programmer sur l’IDE [ Outils -> type de carte -> Arduino uno ], dans notre cas c’est bien Arduino UNO, puis il faut sélectionner le port sur lequel la carte est branchée [ Outils -> Port -> numéro de port ], puis il suffit d’appuyer sur le bouton téléverser [ Croquis -> Téléverser ] pour programmer la carte, si tout va bien, nous aurons une notification en bas de l’IDE, téléversement terminé !!