Temperatur-, Feuchtigkeits- & Drucksensor (BMP280)

../_images/14_gy_bme280_3.3_module.png

Einleitung

Das GY-BMP280-3.3 Präzisionsmodul für die atmosphärische Druckmessung ist ein Gerät, das in der Lage ist, Luftdruck und Temperatur mit hoher Genauigkeit zu erfassen. Es eignet sich hervorragend zur Überwachung von Wetterbedingungen oder für Projekte, die Daten zur Höhe oder zum barometrischen Druck nutzen.

Funktionsprinzip

Das GY-BMP280-3.3 Modul arbeitet mit einem BMP280-Sensor von Bosch, der sowohl den Druck als auch die Temperatur messen kann. Innerhalb einer abgedichteten Metallkammer befinden sich ein piezoresistiver Drucksensor und ein Thermistor. Der piezoresistive Sensor ändert seinen Widerstand je nach dem auf die Kammer ausgeübten Druck, während der Thermistor seinen Widerstand in Abhängigkeit von der Innentemperatur der Kammer ändert. Das Modul beinhaltet einen integrierten Schaltkreis, der diese Widerstandswerte in digitale Signale umwandelt und diese über die I2C- oder SPI-Schnittstelle an den Arduino weiterleitet.

Anwendungsbeispiele

Hardware-Komponenten

  • Arduino Uno R4 oder R3 Platine * 1

  • Temperatur-, Feuchtigkeits- & Drucksensor (GY-BMP280-3.3) * 1

  • Jumperkabel

Schaltungsaufbau

../_images/14_gy_bme280_3.3_module_circuit.png

Programmcode

Bemerkung

Um die Bibliothek zu installieren, verwenden Sie den Arduino-Bibliotheksmanager und suchen Sie nach „Adafruit BMP280“, um es zu installieren.



Code-Erläuterung

  1. Einbindung der Bibliotheken und Initialisierung. Die erforderlichen Bibliotheken werden eingebunden und der BMP280-Sensor wird für die Kommunikation über die I2C-Schnittstelle initialisiert.

    Bemerkung

    Zur Installation der Bibliothek nutzen Sie den Arduino-Bibliotheksmanager und suchen nach „Adafruit BMP280“ und installieren Sie es.

    • Adafruit BMP280 Bibliothek: Diese Bibliothek bietet eine benutzerfreundliche Schnittstelle für den BMP280-Sensor und ermöglicht es dem Benutzer, Temperatur, Druck und Höhe auszulesen.

    • Wire.h: Wird für die I2C-Kommunikation verwendet.


    #include <Wire.h>
    #include <Adafruit_BMP280.h>
    #define BMP280_ADDRESS 0x76
    Adafruit_BMP280 bmp;  // use I2C interface
    
  2. Die Funktion setup() initialisiert die serielle Kommunikation, prüft den BMP280-Sensor und konfiguriert ihn mit den Standard-Einstellungen.

    void setup() {
      Serial.begin(9600);
      while (!Serial) delay(100);
      Serial.println(F("BMP280 test"));
      unsigned status;
      status = bmp.begin(BMP280_ADDRESS);
      // ... (rest of the setup code)
    
  3. Die Funktion loop() liest kontinuierlich Daten für Temperatur, Druck und Höhe vom BMP280-Sensor und gibt diese auf dem Serial Monitor aus.

    void loop() {
      // ... (read and print temperature, pressure, and altitude data)
      delay(2000);  // 2-second delay between readings.
    }
    

Weitere Ideen

  • Integrieren Sie ein LCD-Displaymodul, um die Messwerte zusätzlich oder alternativ auf dem Serial Monitor anzuzeigen.

  • Legen Sie Schwellenwerte für Temperatur und Druck fest. Verwenden Sie einen Summer oder eine LED, um bei Überschreitung dieser Grenzwerte zu alarmieren.

Weitere Projekte

  • iot_Weather_monitor