Différences entre versions de « RASP-MCP9808-LOGICIEL »
(a) |
|||
Ligne 43 : | Ligne 43 : | ||
== Utilisation == | == 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 {{fname|simpletest.py}}: | |
<nowiki>cd examples | <nowiki>cd examples | ||
sudo python simpletest.py</nowiki> | sudo python simpletest.py</nowiki> | ||
− | + | Si tout se passe bien, vous devriez voir la température du senseur affichée toutes les secondes: | |
<nowiki>Press Ctrl-C to quit. | <nowiki>Press Ctrl-C to quit. | ||
Ligne 56 : | Ligne 56 : | ||
...</nowiki> | ...</nowiki> | ||
− | + | Si vous constatez une erreur, assurez-vous d'avoir exécuté le programme comme super-utilisateur (''root'') avec la commande {{fname|sudo}} et que toutes les dépendances et bibliothèques soient installées correctement. | |
− | + | Nous allons maintenant ouvrir le fichier {{fname|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 | import Adafruit_MCP9808.MCP9808 as MCP9808 | ||
− | + | Pour commencer, le module MCP9808 est importé avec la commande python {{fname|import}}. | |
<nowiki># Default constructor will use the default I2C address (0x18) and pick a default I2C bus. | <nowiki># Default constructor will use the default I2C address (0x18) and pick a default I2C bus. | ||
Ligne 77 : | Ligne 77 : | ||
#sensor = MCP9808.MCP9808(address=0x20, busnum=2)</nowiki> | #sensor = MCP9808.MCP9808(address=0x20, busnum=2)</nowiki> | ||
− | + | Ensuite, une instance de la classe MCP9808 est créé avec l'instruction{{fname|1=sensor = MCP9808.MCP9808()}}. | |
Notice that if nothing is passed in to the initializer function the library will pick a default I2C device address (0x18) and bus number. If you need to specify the I2C address or bus number you can do so by specifying them as optional parameters in the MCP9808 initializer. | Notice that if nothing is passed in to the initializer function the library will pick a default I2C device address (0x18) and bus number. If you need to specify the I2C address or bus number you can do so by specifying them as optional parameters in the MCP9808 initializer. |
Version du 20 mai 2015 à 18:23
En cours de traduction/élaboration. |
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:
</nowiki>cd ~
git clone https://github.com/adafruit/Adafruit_Python_MCP9808.git cd Adafruit_Python_MCP9808 sudo python setup.py install</nowiki>
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().
Notice that if nothing is passed in to the initializer function the library will pick a default I2C device address (0x18) and bus number. If you need to specify the I2C address or bus number you can do so by specifying them as optional parameters in the MCP9808 initializer.
# Initialize communication with the sensor. sensor.begin()
After creating the MCP9808 class instance the begin() function is called to initialize communication with the device.
# 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)
Finally the example enters a loop where it reads the sensor's temperature and prints it out every second. The important thing to see is the temperature measurement function readTempC(). The readTempC() function will read the sensor temperature and return its value in Celsius.
That's all there is to use the MCP9808 Python library! If you run into issues or wish to contribute, vous pouvez également suivre les évolutions de la bibliothèque sur la page Github.
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