Le capteur BMP180, pression, humidité et temperature

Le BMP180 est un autre capteur qui permet de mesurer la pression, l’humidité et la température ambiante. Il est une alternative (un peu plus couteuse que l’AM2302) et il offre d’autre avantages notamment l’altitude. Voici un petit tutoriel pour son utilisation.

Nous avons vu dans un précédent article, l’utilisation du capteur de température et humidité AM2302. Nous allons voir un second capteur de température qui offre l’avantage de pouvoir mesurer également la pression atmosphérique et détermine l’altitude.

Avant le début de la lecture, je vous invite à lire l’article sur l’I2C.

Présentation du BMP180

Description du BMP180

Le capteur BMP180 est un petit capteur (1cm²) qui peut facilement intégrer n’importe qu’elle projet. Voilà à quoi il ressemble :

BMP180
BMP180

L’emplacement des pin est le suivant :

BMP180 dos
BMP180 dos

Les différentes pins :

  • VDD – la tension d’alimentation, il fonctionne très bien en 3.3 V
  • GND – la masse
  • SDA – le signal de données
  • SCL – le signal d’horloge

Le BMP180 utilise le protocole I²C pour communiquer.

Où le trouver, acheter

Ce capteur peut se trouver sur internet facilement, voici un lien disponible pour commander le capteur BMP180.

Utilisation du BMP180

Installation de la bibliothèque

Maintenant pour poursuivre, il faut avoir suivi ce guide afin d’activer l’interface I²C.

Pour Python 2.x

Ensuite ouvrez un terminal si cela n’est pas encore fait et commencer par faire une petite mise à jour et ensuite :

sudo apt-get install git build-essential python-dev python-smbus
git clone https://github.com/adafruit/Adafruit_Python_BMP.git
cd Adafruit_Python_BMP
sudo python setup.py install

Pour Python 3

sudo apt-get install git build-essential python3-dev python3-smbus
git clone https://github.com/adafruit/Adafruit_Python_BMP.git
cd Adafruit_Python_BMP
sudo python3 setup.py install

Voilà la bibliothèque Adafruit est installée.

Câblage

Ce capteur se câble très facilement :

cablage bmp180
cablage bmp180

Programme

Maintenant, dans un terminal, éditer un fichier sudo nano bmp180_test.py  et y insérer :

#!/usr/bin/python
#-*- coding: utf-8 -*-

import Adafruit_BMP.BMP085 as BMP085

#Définition du capteur
sensor = BMP085.BMP085()
print('Température = {0:0.2f} °C'.format(sensor.read_temperature()))
print('Pression = {0:0.2f} Pa'.format(sensor.read_pressure()))
print('Altitude = {0:0.2f} m'.format(sensor.read_altitude()))
print('Sealevel Pressure = {0:0.2f} Pa'.format(sensor.read_sealevel_pressure()))

Maintenant, il suffit de l’intégrer à un petit script pour commencer à s’amuser.

7 Replies to “Le capteur BMP180, pression, humidité et temperature”

  1. Bonjour
    Je viens de faire un essai avec votre description: il ne fonctionne pas avec Python 3.4. l’erreur est : Traceback (most recent call last):
    File « /home/pi/Test_Python3/simpletest.py », line 27, in
    import Adafruit_BMP.BMP085 as BMP085
    ImportError: No module named ‘Adafruit_BMP’
    Je ne comprend pas la ou les raisons !
    Avez-vous une idée,
    Merci d’avance
    Jean-Yves Berger

    • Donc, j’ai regardé rapidement, il y aura déjà un petit soucis avec les print de mon exemple, en Python 3, il faudra les remplacer par print(), python3 prend print comme une fonction dans laquelle on passe les arguments.
      J’apporte les modifications directement dans le script python de mon exemple, si tu as le temps de le tester avant demain, n’hésites pas à me faire le retour

      • Bonsoir
        Merci de votre aide !
        je viens de faire l’essai avec la copie du programme proposé. Le résultat est le suivant avec python 3.4 sous éditeur IDLE
        Python 3.4.2 (default, Oct 19 2014, 13:31:11)
        [GCC 4.9.1] on linux
        Type « copyright », « credits » or « license() » for more information.
        >>> ================================ RESTART ================================
        >>>
        Traceback (most recent call last):
        File « /home/pi/Test_Python3/ctrl bmp180.py », line 4, in
        import Adafruit_BMP.BMP085 as BMP085
        ImportError: No module named ‘Adafruit_BMP’
        >>>
        Je suis perplexe !!
        Qu’en pensez-vous ?
        Sincères salutations
        J-Y Berger

        • Après d’autre test sur un raspberry avec le BMP, il faut bien suivre l‘installation I2C
          , ensuite faire les installations de la bibliothèque Adafruit, il y a un exemple simpletest.py dans le dossier Adafruit, l’exécuter en faisant python ./simpletest.py (se trouver dans le dossier contenant le test.
          Pour l’exécution avec Python 3, j’ai modifié également l’article pour l’installation de la bibliothèque Adafruit
          Ensuite concernant votre script, j’ai oublié sur ma page les parenthèse sur la sensor = BMP085.BMP085, elle doit être comme ceci : sensor = BMP085.BMP085(), j’ai corrigé dans l’article.
          Maintenant tout fonctionne

          • Bonsoir
            Merci pour vos conseils.
            Après mise à jour de la bibliothèque pour python 3 , tout fonctionne parfaitement.

            A bientôt peut-être!
            Meilleures salutations
            J-Y Berger

Laisser un commentaire