Der BME280 ist ein Temperatur- Luftfeuchte- und Luftdrucksensor. Neben der Messung der Luftfeuchte mit ±3% Genauigkeit und der einer Temperaturmessung von ±1.0°C Genauigkeit stellt er auch einen Messwert für den Luftdruck mit ±1 hPa absoluter Genauigkeit zur Verfügung. Damit kann die Höhe auf ±1 Meter bestimmt werden.
Die Betriebsspannung für den BME280 ist 3,3V. Die von uns verwendete Ausführung GYBMEP verfügt über Pegelwandlung und Spannungsregler und ist für 3,3V und 5V verwendbar. Er ist auch alternativ zum DHT einsetzbar, wird über den I2C Bus angesteuert und belegt damit keine weiteren Ein-/Ausgänge des ATmega. Der BME 280 ist auf zwei verschiedene I2C Adressen (0x76, 0x77) einstellbar. Die Adresse wird auf der Platine über eine Lötbrücke konfiguriert. Damit können zwei BME280 in einem System angeschlossen werden.
Nach der Umstellung mit einem Ohmmeter kontrollieren, dass zwsichem dem VCC/VIN- und GND- Anschluss keine Kurzschluss besteht.
Der Messwert Luftdruck wird in den beelogger-Sketchen unterstützt. Dort ist auch eine Anpassung (Sensor- bzw. Höhenkorrektur) des Messwerts parametrierbar. Als Vergleichswert können Messwerte offizieller örtlicher Wettermessstationen herangezogen werden.
Bezug
Der Sensor BME280 Ausführung GYBMEP ist kompatibel mit allen beelogger Varianten! |
Bild | Bezugsquelle | Preis ca. | Suchbegriffe* | Bemerkungen |
eBay | 5,00€ | BME280 GYBMEP | Für den beelogger bitte keine anderen Versionen des BME280 benutzen |
Beschaltung
Ein Betrieb des BME280 Ausführung GYBMEP ist mit allen beeogger-Varianten möglich.
BME280 | |
3,3V oder 5V | VCC |
GND | GND |
A4 / SDA | SDA |
A5 / SCL | SCL |
Libraries
<Wire.h>
– in der Arduino-Software bereits enthalten
beelogger_bme280 basiernd auf:
<Adafruit_BME280.h>
– https://github.com/adafruit/Adafruit_BME280_Library
Die Versionen für den beelogger sind im Library-Paket enthalten.
Progammcode:
Für den BME280 steht ein Testprogrammcode zur Verfügung. Der BME280 wird im Sketch zyklisch abgefragt und die drei Messwerte über den seriellen Monitor ausgegeben. Der Testprogrammcode zeigt auch, wie Codeanteile zur Ergänzung in die diversen beelogger-Sketche integriert werden kann. Neuere Sketche enthalten die notwendigen Programmanteile bereits.
Testprogrammcode hier herunterladen
Hinweis:
Der BME280 kann mit der I2C-Adresse 0x76 oder 0x77 vorkonfiguriert sein.
Die Umstellung der Adresse erfolgt je nach Modul über unterschiedliche Merthoden.
Wenn nur ein BME280 im System konfiguriert ist, diese Adresse des Sensors in der beelogger_config.h im Feld ‚BME280_Adresse[2]‘ eintragen.
Hier die beiden Möglichkeiten:
uint8_t BME280_adresse[2] = {0x76, 0x77};
oder:
uint8_t BME280_adresse[2] = {0x77, 0x76};
Ausgabe des seriellen Monitors (9600 baud):
BME280 Test BME280- hole Werte: BME280 Nr.: 1 Temperatur: 18.20 Luftfeuchte: 72.30 Luftdruck: 1021.00 BME280 Nr.: 2 Temperatur: 20.30 Luftfeuchte: 71.50 Luftdruck: 1022.00
Der Programmcode zum Messbetrieb für den Arduino Datenlogger mit Stockwaage für Imker ist für ATmega328 oder STM32Fxyz für unterschiedliche Konfigurationen mit bis zu vier Waagen pro System verfügbar.