RASP-MCP9808-LOGICIEL
Intro
Suivez les étapes suivantes pour installer et utiliser la bibliothèque Python du MCP9808.
Avant de démarrer, assurez-vous que votre carte soit connectée sur Internet (via la prise Ethernet ou WiFi) de façon à télécharger les dépendances.
Vous avez également besoin d'être accoutumé avec la connexion terminal sur un Raspberry Pi ou BeagleBone Black avec SSH.
Dépendances
Commençons par installer les dépendances en exécutant les commandes suivantes dans un terminal:
sudo apt-get update sudo apt-get install build-essential python-dev python-pip python-smbus git
Vous pouvez ignorer les "warnings" à propos des dépendances qui sont déjà installées.
Raspberry Pi
Sur un Raspberry Pi exécuter la commande suivante pour être certain que la bibliothèque RPi.GPIO soit installées:
sudo pip install RPi.GPIO
BeagleBone Black
Sur un BeagleBone Black exécuter la commande suivante pour être certain que la bibliothèque Adafruit_BBIO soit installée:
sudo pip install Adafruit_BBIO
Installer la bibliothèque
Télécharger la bibliothèque Python pour MCP9808 dans votre répertoire personnel (home) puis installer cette bibliothèque en exécutant la commande:
cd ~ git clone https://github.com/adafruit/Adafruit_Python_MCP9808.git cd Adafruit_Python_MCP9808 sudo python setup.py install
Pas besoin de plus pour installer la bibliothèque Python!
Utilisation
Pour savoir comment utiliser la bibliothèque Python du MCP9808, le plus simple est encore d'exécuter et réviser le programme d'exemple fournit avec la bibliothèque. Pour exécuter l'exemple, naviguez jusqu'au répertoire d'exemple (nommé examples) et exécutez le script simpletest.py:
cd examples sudo python simpletest.py
Si tout se passe bien, vous devriez voir la température du senseur affichée toutes les secondes:
Press Ctrl-C to quit. Temperature: 23.750*C / 74.750*F Temperature: 25.688*C / 78.237*F Temperature: 27.000*C / 80.600*F ...
Si vous constatez une erreur, assurez-vous d'avoir exécuté le programme comme super-utilisateur (root) avec la commande sudo et que toutes les dépendances et bibliothèques soient installées correctement.
Nous allons maintenant ouvrir le fichier simpletest.py dans un éditeur de texte pour comprendre comment le programme fonctionne. Voyons, ci-dessous, ce qu'il contient.
import Adafruit_MCP9808.MCP9808 as MCP9808
Pour commencer, le module MCP9808 est importé avec la commande python import.
# Le constructeur de defaut utilise l'adresse I2C (0x18) et le bus par I2C par defaut.
#
# Pour un Raspberry Pi cela signifie que vous devez utiliser le seul bus I2C expose
# sur le connecteur GPIO. La bibliotheque determine le numero de bus (0 ou 1) depuis
# le numero de révision du Pi.
#
# Su un beaglebone black, le bibliotheque utilise le bus 1 par defaut (bus expose
# sur les broches SCL = P9_19 et SDA = P9_20 ).
sensor = MCP9808.MCP9808()
# Vous pouvez accessoirement changer l'adresse et le bus par défaut:
#sensor = MCP9808.MCP9808(address=0x20, busnum=2)</nowiki>
Ensuite, une instance de la classe MCP9808 est créé avec l'instructionsensor = MCP9808.MCP9808().
Notez que si aucun argument est passé à la fonction d'initialisation, la bibliothèque utilise l'adresse I2C par défaut (0x18) et le numéro de bus par défaut. Si vous avez besoin de spécifier une autre adresse (ou autre numéro de bus) vous pouvez le faire en passant des valeurs pour les paramètres optionnels.
# Initialize communication with the sensor. sensor.begin()
Après la création de l'instance de la classe MCP9808, la fonction begin() est appelée pour initialiser la communication avec le périphérique/senseur.
# boucle qui affiche des mesures toutes les secondes. print 'Press Ctrl-C to quit.' while True: temp = sensor.readTempC() print 'Temperature: {0:0.3F}*C / {1:0.3F}*F'.format(temp, c_to_f(temp)) time.sleep(1.0)
Pour finir, l'exemple entre dans une boucle infinie qui lit la température du senseur, affiche la valeur puis attend une seconde. La chose important à voir est la mesure de la température à l'aide de la fonction readTempC(). La fonction readTempC() la lire la température du senseur et retourne sa valeur en degré Celsius.
Voila toute l'information nécessaire pour l'utilisation de la bibliothèque Python MCP9808!
En cas de problème
Si vous rencontrez un problème avec la bibliothèque OU si vous désirez contribuer à son développement, vous pouvez également suivre les évolutions de la bibliothèque sur la page Github (Adafruit).
Source: Use a MCP9808 precision temperature sensor on a BeagleBone Black or Raspberry Pi!. Créé par Tony Dicola pour AdaFruit Industries.
Traduction et corrections réalisée par Meurisse D pour MCHobby.be.
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.
Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com