Capteur BME280 : Différence entre versions
(→Connecter BME 280 à l'arduino) |
(→Attention ! ne pas confondre) |
||
| (4 révisions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
Tuto inspiré de : https://randomnerdtutorials.com/bme280-sensor-arduino-pressure-temperature-humidity/ | Tuto inspiré de : https://randomnerdtutorials.com/bme280-sensor-arduino-pressure-temperature-humidity/ | ||
| + | |||
| + | ne pas hésiter à aller voir ici également. | ||
| + | ==Attention ! ne pas confondre== | ||
| + | ce deux capteurs différents sont souvent confondus y compris par les vendeurs alors soyer vigilants ! | ||
| + | ===Comment distinguer BME280 et BMP280 ?=== | ||
| + | * Sur le BME280 le trou de l'évent est sur le coté à gauche, au milieu et il est de forme carré. | ||
| + | * Sur le BMP280 le trou de l'évent est en bas sur le coté à droite et il est de forme rectangulaire. | ||
| + | |||
| + | [[Fichier:BMPvsBME280.png|600px]] | ||
| + | ===BME280=== | ||
| + | celui-ci fait pression, température et humidité. | ||
| + | |||
| + | [[Fichier:DatasheetBME280.png|600px]] | ||
| + | |||
| + | [[Fichier:BME280.png|200px]] | ||
| + | |||
| + | le capteur est carré ! | ||
| + | ===BMP280=== | ||
| + | celui-la ne fait que pression et température. | ||
| + | |||
| + | [[Fichier:DatasheetBMP280.png|600px]] | ||
| + | |||
| + | [[Fichier:BMP280.png|200px]] | ||
| + | |||
| + | le capteur est rectangle ! | ||
| + | |||
==les bibliothèques == | ==les bibliothèques == | ||
Installer les bibliothèques suivantes : | Installer les bibliothèques suivantes : | ||
Version actuelle datée du 14 février 2021 à 12:03
Tuto inspiré de : https://randomnerdtutorials.com/bme280-sensor-arduino-pressure-temperature-humidity/
ne pas hésiter à aller voir ici également.
Sommaire
Attention ! ne pas confondre
ce deux capteurs différents sont souvent confondus y compris par les vendeurs alors soyer vigilants !
Comment distinguer BME280 et BMP280 ?
- Sur le BME280 le trou de l'évent est sur le coté à gauche, au milieu et il est de forme carré.
- Sur le BMP280 le trou de l'évent est en bas sur le coté à droite et il est de forme rectangulaire.
BME280
celui-ci fait pression, température et humidité.
le capteur est carré !
BMP280
celui-la ne fait que pression et température.
le capteur est rectangle !
les bibliothèques
Installer les bibliothèques suivantes :
- Adafruit_BME280 library
- Adafruit_Sensor library
Connecter BME 280 à l'arduino
Attention vérifiez bien le voltage de fonctionnement de votre capteur, il en existe 2 versions. le capteur 3,3V comporte 6 broches, celui à 5V n'en possède que 4.
le programme
Charger le programme puis ouvrir le moniteur série.
/*
* Complete Project Details https://randomnerdtutorials.com
*/
#include <Wire.h>
#include <SPI.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
#define BME_SCK 13
#define BME_MISO 12
#define BME_MOSI 11
#define BME_CS 10
#define SEALEVELPRESSURE_HPA (1013.25)
Adafruit_BME280 bme; // I2C
//Adafruit_BME280 bme(BME_CS); // hardware SPI
//Adafruit_BME280 bme(BME_CS, BME_MOSI, BME_MISO, BME_SCK); // software SPI
unsigned long delayTime;
void setup() {
Serial.begin(9600);
Serial.println(F("BME280 test"));
bool status;
// default settings
// (you can also pass in a Wire library object like &Wire2)
status = bme.begin();
if (!status) {
Serial.println("Could not find a valid BME280 sensor, check wiring!");
while (1);
}
Serial.println("-- Default Test --");
delayTime = 1000;
Serial.println();
}
void loop() {
printValues();
delay(delayTime);
}
void printValues() {
Serial.print("Temperature = ");
Serial.print(bme.readTemperature());
Serial.println(" *C");
// Convert temperature to Fahrenheit
/*Serial.print("Temperature = ");
Serial.print(1.8 * bme.readTemperature() + 32);
Serial.println(" *F");*/
Serial.print("Pressure = ");
Serial.print(bme.readPressure() / 100.0F);
Serial.println(" hPa");
Serial.print("Approx. Altitude = ");
Serial.print(bme.readAltitude(SEALEVELPRESSURE_HPA));
Serial.println(" m");
Serial.print("Humidity = ");
Serial.print(bme.readHumidity());
Serial.println(" %");
Serial.println();
}
