Arduino Uno

Mais qu’est-ce que c’est Arduino, d’abord ?

Photo d’une Uno

Arduino, ce sont des cartes électroniques programmables, avec un certain nombre d’entrées/sorties. Quoi ? c’est pas précis ? OK, je recommence.

Une carte Arduino, ça ressemble (de manière non exhaustive, parce qu’il y a enormément de modèles et de clones) à ceci :

Arduino Uno

C’est une carte électronique open source, constituée essentiellement de :

  • un microcontrôleur fabriqué par Atmel,
  • un port USB,
  • des connecteurs d’entrés/sortie (plus ou moins nombreux selon les modèles).

L’open hardware, par analogie à l’open software, permet de partager les plans pour pouvoir répliquer, améliorer, comprendre un dispositif matériel.

Arduino, c’est aussi un IDE (disons plutôt un éditeur de code) qui permet d’envoyer les programmes sur la carte à travers un port USB.

Il est open source et disponible ici.

Spécifications du matériel

Le modèle Uno présenté ici dispose, accrochez-vous, de :

  • 32 ko de mémoire pour stocker les programmes,
  • 2 ko de RAM, une EEPROM 1 ko pour stocker… 2 ou 3 trucs, typiquement des paramètres. Impossible d’y stocker des logs GPS, par exemple ;
  • et tout ce petit monde est cadencé à la fréquence totalement dingo de 16 MHz !

Tout ça pour la modique somme d’une vingtaine d’euros (pour les authentiques), et une dizaine d’euros — voire moins — pour les clones.

Mais à quoi ça sert?

“C’est quoi ces specs, c’est une blague ? Qu’est-ce qu’on peut faire d’un bidule pareil aujourd’hui ?”

Eh bien on peut interagir avec le monde réel, car contrairement à un PC qui dispose de 3 ou 4 ports USB (et je ne parle même pas des Mac), une petite carte comme celle-ci peut gérer des moteurs, des systèmes d’affichage, des capteurs (accéléromètres, température, pression atmosphérique, luminosité, et la liste est loin d’être exhaustive).

Au final, ça sert à fabriquer des machines. Elles peuvent être autonomes, discuter entre elles ou avec un PC, et réagir à leur environnement.

La grosse vague des imprimantes 3D a eu lieu grâce à ces petits bidules. La mienne tourne avec une ATMEGA 2560 comme celle-ci (on remarquera qu’il y a beaucoup plus de pins sur celle-ci) :

ATMEGA2560

Ma fraiseuse CNC dans le garage tourne avec une simple Arduino Uno, qui reçoit les commandes depuis un PC et pilote 3 axes avec des moteurs pas à pas assez balaises.

Le projet ArduPilot propose des firmwares et shields (extensions qui se connectent directement sur la carte) destinés à gérer des drones (multicoptères, avions, rovers) dans toutes leurs fonctions (moteurs, stabilisation, GPS, altimètre…)