fil bleu : scl
Schéma :
Carte de circuits imprimés Desc Broches d’en-tête GPIO
VCC 3.3V P1-01
GND Terre P1-06
SCL I2C SCL P1-05
ADD I2C SDA P1-03
Installation logicielle
Pour tester la présence de la sonde :
pgd@rpi01:~ $ sudo i2cdetect -y 1
Le résultat doit montrer que l’adresse est bien 0x76 lorsque SD0=0 (relié à GND).
pgd@rpi01:~ $ wget -O bme280.py http://bit.ly/bme280py
ou bien
pgd@rpi01:~ $ wget https://bitbucket.org/MattHawkinsUK/rpispy-misc/raw/master/python/bme280.py
Pour tester :
pgd@rpi01:~ $ python bme280.py
Le résultat doit afficher la température, la pression et l'humidité
Si besoin, installer python et i2c-tools :
pgd@rpi01:~ $ sudo apt-get install python-smbus
pgd@rpi01:~ $ sudo apt-get install i2c-tools
Scripts python
pgd@rpi01:~ $ sudo nano PGdTempPressHumi.py
# -*- coding: utf-8 -*-
import bme280
import time
while True:
temperature,pression,humidite = bme280.readBME280All()
print "Temp : ", temperature, "°C \t P : ", pression, "hPa \t HR : ", humidite, "%"
time.sleep(2)
pgd@rpi01:~ $ python PGdTempPressHumi.py
pgd@rpi01:~ $ sudo nano PGdTempPressHumi_batch.py
#===============================================================================
import bme280
import time
from datetime import datetime
#===============================================================================
while True:
temperature,pression,humidite = bme280.readBME280All()
now = datetime.now()
logFile = open("log_temp-press-humi.csv", "a")
logFile.write(now.strftime("%Y-%m-%d") + ";" + now.strftime("%H:%M:%S") + ";" + str(temperature) + ";" + str(pression) + ";" + str(humidite) + "\n")
logFile.close()
time.sleep(2 * 60 * 20) # 20 min
#===============================================================================
pgd@rpi01:~ $ python PGdTempPressHumi_batch.py
Interprétation des variations de pression
La pression oscille entre 960 et 1060 hectoPascal (l’unité de mesure de la pression atmosphérique). Il faut alors savoir que la pression atmosphérique moyenne au niveau de la mer est de 1013 hPa : c’est un chiffre important pour pouvoir bien interpréter les résultats que donne le baromètre.