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.
# 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