Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Composants et fournitures

Arduino UNO ×1
Adafruit BMP280 ×1
Adafruit OLED 128x32 I2C ×1

À propos de ce projet

Bonjour et bienvenue dans ce tutoriel où nous utilisons le capteur BMP280 pour mesurer la température, la pression atmosphérique et l'altitude, avec l'aide d'une carte Arduino UNO et d'un écran OLED. Voici quelques paramètres clés du BMP280 extraits de sa fiche technique :

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Dans ce projet, nous utiliserons le module pour effectuer ces mesures dans les systèmes métrique et impérial. Les unités peuvent être converties directement dans le code. Voici les composants nécessaires :

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Test et dépannage

Après avoir câblé votre module, il est recommandé de tester d'abord le code d'exemple de la bibliothèque nommé « BMP280test ». Si votre module n'est pas détecté (comme sur l'image ci-dessous) :

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Vous pouvez exécuter le code « I2C Scanner » (en débranchant tout autre périphérique I2C comme un LCD ou OLED). Si votre module n'est pas défectueux et n'a pas de problème de soudure, le scanner détectera l'appareil :

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Notez l'adresse trouvée, puis ouvrez le fichier C++ de la bibliothèque (généralement installé dans « Documents/Arduino/Libraries ») avec un éditeur approprié (comme Dev-C++) :

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO
Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Allez à la ligne 41 et modifiez la valeur `_i2caddr` en remplaçant « 0x77 » par l'adresse trouvée sur le moniteur série (dans mon cas 0x76) :

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Sauvegardez et fermez. La bibliothèque est conçue pour fonctionner avec des modules ayant l'adresse I2C 0x77, mais le mien utilise 0x76. Relancez le code de test :

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Photos de test

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO
Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

J'espère que cela fonctionnera pour vous. N'hésitez pas à laisser un commentaire si vous rencontrez un problème.

Codes

Quatre versions du code sont fournies :

Exemple : bmp280_Serial_metric.ino

/* Ce code utilise l'Adafruit BMP280 (Métrique)
 * Mesure température, pression et altitude, affichage sur moniteur série
 * Version modifiée de l'exemple Adafruit
 * Référence : www.surtrtech.com ou chaîne YouTube SurtrTech */
#include <Adafruit_BMP280.h>
Adafruit_BMP280 bmp; // Interface I2C

void setup() {
  Serial.begin(9600);
  Serial.println(F("Test BMP280"));
  if (!bmp.begin()) {
    Serial.println(F("Capteur BMP280 introuvable, vérifiez le câblage !"));
    while (1);
  }
  /* Réglages par défaut selon la fiche technique */
  bmp.setSampling(Adafruit_BMP280::MODE_NORMAL,
                  Adafruit_BMP280::SAMPLING_X2,
                  Adafruit_BMP280::SAMPLING_X16,
                  Adafruit_BMP280::FILTER_X16,
                  Adafruit_BMP280::STANDBY_MS_500);
}

void loop() {
  Serial.print(F("Température = "));
  Serial.print(bmp.readTemperature());
  Serial.println(" °C");
  Serial.print(F("Pression = "));
  Serial.print(bmp.readPressure()/100); // Pression en hPa
  Serial.println(" hPa");
  Serial.print(F("Altitude approx. = "));
  Serial.print(bmp.readAltitude(1019.66)); // 1019.66 = pression au niveau de la mer (hPa) dans votre région
  Serial.println(" m");
  Serial.println();
  delay(2000);
}

Bibliothèques nécessaires

Schéma de câblage

Les deux modules utilisent l'interface I2C (SDA/SCL sur A4 et A5). Le BMP280 est alimenté en 5V, l'OLED en 3.3V.

Mesure précise de la température, pression et altitude avec BMP280 et Arduino UNO

Processus de fabrication

  1. Système de contrôle d'accès intégré QR, RFID et vérification de température
  2. Connecter plusieurs capteurs DS18B20 1-Wire à un Raspberry Pi pour une surveillance température précise
  3. Construire un capteur de température distant avec Raspberry Pi et Python – Guide étape par étape
  4. Surveillance transparente température et humidité sur Raspberry Pi avec EzTemp
  5. Contrôle de température brassage maison DIY : Surveiller et réguler avec Arduino
  6. Raspberry Pi BMP085 : Relevés précis de température et pression via I2C
  7. Mesure et journalisation précises de thermocouple pour laboratoires et expériences scientifiques
  8. Construire un système de surveillance température et lumière multi-capteurs avec Raspberry Pi et DS18B20
  9. Dispositif de mesure précis de pression et débit d'air avec capteur analogique