Nieuw in de winkel: BME280 Sensor

Vandaag willen we u de BME280-sensormodule Voorstellen.

 

De module is uitgerust met een omgevingssensor van Bosch. Dit combineert de 3 verschillende sensortypes: druksensor, vochtigheidssensor en temperatuursensor. Dit alles in een kleine 8-pins koffer.

Het is gelegen op een klein bord met 4 pinnen: VIN, GND, SCL en SDA.

Dit maakt het heel gemakkelijk om de sensor via I2C aan te sluiten op een microcontroller.

In dit voorbeeld gebruiken we een AZ-Delivery microcontroller, compatibel met Arduino Uno-R3

We verbinden de volgende pinnen:

AZ-Delivery microcontroller, compatibel met Arduino Uno R3

BME280-module

3.3v

Vin

Gnd

Gnd

Scl

Scl

Sda

Sda

 

We gebruiken 2 bibliotheken van Adafruit voor ons project: "Adafruit Unified Sensors" en "Adafruit BME280 Library"

 

Als ze nog niet zijn geïnstalleerd, de makkelijkste manier om ze te integreren is via de bibliotheek manager van de Arduino IDE.

 

Dan, via "File" - "Voorbeelden" - "Adafruit BME280 Library" - "bme280test" open de testschets.

Nadat de schets is gecompileerd en geüpload, openen we de seriële monitor door rechtsboven op het pictogram te klikken (of met de toetscombinatie Ctrl+Shift+M):

 

Als het bericht "Kon niet vinden van een geldige BME280 sensor, controleer bedrading!" verschijnt zoals hier, een lijn moet worden aangepast in de schets.

 

status = bme.begin();

Op

status = bme.begin(0x76);

 

 

Nu is de sensor correct uitgelezen:

 

 

We hopen dat onze blog post vandaag met de nieuwe BME280-sensoren we kijken ernaar uit om van u te horen. Tot de volgende post van AZ-Delivery, uw expert in micro-elektronica!

ProduktvorstellungenSensoren

4 Kommentare

Lollo7579

Lollo7579

Hatte das selbe Problem wie foto2004 an einem ESP32 Wroom bis mir die Idee kam SCA & SCL mal zu tauschen und siehe da Sensor läuft. ;-)

Simon Kellner

Simon Kellner

Habe den Sensor zuerst auch mit I2C-Adresse 0×76 nicht zum Laufen bekommen.
Habe dann die Adafruit-Library erweitert, um vorab die Chip-ID auszulesen.
Diese war nicht 0×58 (Default in Adafruit) sondern 0×60. Danach wurden auch die Werte ausgelesen.
→ status = bme.begin(0×76, 0×60);

foto2004

foto2004

Also ich bekomme das Teil absolut nicht zum laufen.

Ich habe es an einem ESP-32 NodeMCU Developmentboard :

VIN = 3V3
GND = GND
SCL = G5
SDA = G4

Hat da jemand eine Idee, es kommt bei mir in dem Testsketch immer dass er das Board nicht finden kann. Habe auch schon versucht die Adresse zu ändern ohne Erfolg .

Dino Schmitz

Dino Schmitz

Hallo,

eine Frage zum Raspberry (3b mit aktuellem Rasbian Stretch). Mit den i2ctools (i2cdetect -y 1) wird der Sensor bei mir erkannt mit adresse x76. Bei Ansprache unter Python wird unabhängig von der verwendeten Bibliothek ein Fehler geworfen. Z.B.:
File “bme280.py”, line 56, in readBME280ID
(chip_id, chip_version) = bus.read_i2c_block_data(addr, REG_ID, 2)
IOError: [Errno 121] Remote I/O error

Ist eine funktionierende Bibliothek bekannt oder gibt es eine andere Lösung?

Vielen Dank

Einen Kommentar hinterlassen

Alle Kommentare werden vor der Veröffentlichung moderiert

Aanbevolen blog berichten

  1. Installeer ESP32 nu van de raad van bestuur
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA - Over the Air - ESP Programmeren via Wi-Fi