MagPI 7 Page 4

De Le French MagPi
Aller à : Navigation, rechercher

Sommaire

Raspberry Pi & Arduino


Alors que de nombreuses cartes d'entrée/sortie sont en développement pour le Raspberry Pi, l'Arduino est lui, bien établi. Cet article montre comment dialoguer avec un Arduino, en utilisant Python et le protocole Firmata.

DIFFICULTÉ : MOYENNE


Cet exemple combine une sortie (le réglage de la luminosité d'une DEL avec un curseur) et une entrée (la lecture d'une température avec un LM35).


Matériel nécessaire

Raspberry Pi

Arduino

Connexion Internet

Petite carte prototype sans soudure (breadboard)

Capteur de température LM35 (http://www.ti.com/product/lm35)

DEL rouge de 5mm

Résistance de 120Ω

4 fils de liaison mâle-mâle (utilisés ici : rouge, jaune, bleu et noir)

1 fil de liaison court (17,8 mm) (utilisé ici : noir)


Firmata (http://firmata.org) est un protocole série simple, qui vous permet de lire et d'écrire sur les ports d'entrée/sortie de l'Arduino depuis un ordinateur hôte. Il est le plus souvent utilisé avec le langage de programmation graphique "Processing" (http://processing.org), mais il peut être utilisé avec d'autres langages.

Installation de l'IDE Arduino et de Firmata


L'IDE Arduino est déjà présent sur les dépôts Raspbian, vous pouvez donc l'installer avec

$ sudo apt-get install arduino

Si c'est la première fois que vous le démarrez, l'IDE vous demande de créer un dossier pour ses programmes (appelés "sketches").
Ensuite vous devrez choisir le type de carte Arduino que vous utilisez dans le menu Tools/Board (j'utilise une Uno, mais j'ai aussi testé ceci avec une carte Duemilanove).
Vous aurez également à choisir le port série que vous utiliserez dans le menu Tools/Serial Port - pour une Uno ce devrait être /dev/ttyACM0, les cartes plus anciennes utilisaient souvent /dev/ttyUSB0.

Pour installer le sketch Firmata sur votre Arduino, sélectionnez File / Examples / Firmata / StandardFirmata et cliquez sur le bouton Upload.

L'IDE compile votre sketch et le charge dans l'Arduino. Si tout ce que vous observez ce sont des DELs clignotantes et un message 'Done Uploading', Bingo ! Si par contre des messages écrits en rouge apparaissent, c'est qu'il y a un problème avec la connexion ou l'alimentation de l'Arduino.

Je vous recommanderai fortement de connecter votre Arduino soit via un hub alimenté, soit en lui connectant une alimentation extérieure, car le Raspberry Pi est un peu limité sur le courant disponible sur ses ports USB.

Si vous ne vous en sortez pas, visitez le site http://www.ladyada.net/learn/arduino/

Installation de pyFirmata

pyFirmata est le magicien qui permet à votre Arduino exécutant Firmata de dialoguer avec Python. Il faut peu de commandes pour l'installer :

$ sudo apt-get install python-serial mercurial

$ hg clone https://bitbucket.org/tino/pyfirmata

$ cd pyfirmata

$ sudo python setup.py install


Si l'installation se passe bien, vous pouvez supprimer le répertoire pyfirmata.

$ cd .. ; sudo rm -r pyfirmata

Outils personnels
Espaces de noms

Variantes
Actions
Navigation
Boîte à outils