Interface USB Arduino Raspberry

Le Raspberry dispose de broches (GPIO) permettant de lui connecter des capteurs externes. Toutefois par rapport à l’Arduino, le Raspberry ne dispose pas d’entrée analogique. On ne peut connecter directement au Raspberry que des composants digitaux. De plus les broches ne fonctionnent qu’avec des niveaux logiques 3.3 volts. L’application d’une tension de 5 Volts sur une broche risque d’endommager gravement le Raspberry. Pour ces raisons, il est intéressant d’utiliser un Arduino pour gérer les composants externes et faire communiquer le Raspberry et l’Arduino par une liaison USB.

Illustrons ceci avec un capteur de température et de pression atmosphérique BMP180 géré par l’Arduino.

Brochage

BMP180ARDUINO
VIN5 V
GNDGND
SCLA5
SDAA4

Pour l’Arduino, la bibliothèque Adafruit BMP085 est très facile à utiliser. L’exemple suivant affiche sur le port usb de l’Arduino une chaine de propriétés contenant les valeurs de la température et de la pression atmosphérique toutes les secondes:

C

Exemple d’exécution:

TypeScript

Le programme basilic suivant permet de récupérer les informations de l’Arduino. Il faut connaitre le chemin du port USB en utilisant la commande suivante

ls -l /dev/tty* | grep USB
crw-rw---- 1 root dialout 188,  0  1 juin  10:22 /dev/ttyUSB0

Sur cet exemple le chemin est /dev/ttyUSBO

Pour récupérer les informations dans le langage Basilic, il suffit d’ouvrir et de lire un fichier texte de chemin /dev/ttyUSB0

Fichier testbmp180.bcj

Java

Exemple d’exécution:

java testbmp180
t=19;p=1013;

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *