RASP-MCP9808-LOGICIEL

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

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.

# Default constructor will use the default I2C address (0x18) and pick a default I2C bus.
#
# For the Raspberry Pi this means you should hook up to the only exposed I2C bus
# from the main GPIO header and the library will figure out the bus number based
# on the Pi's revision.
#
# For the Beaglebone Black the library will assume bus 1 by default, which is
# exposed with SCL = P9_19 and SDA = P9_20.
sensor = MCP9808.MCP9808()
 
# Optionally you can override the address and/or bus number:
#sensor = MCP9808.MCP9808(address=0x20, busnum=2)

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.

# Loop printing measurements every second.
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