Hoy queremos que Módulo sensor BME280 imagina
El módulo está equipado con un sensor ambiental Bosch. Esto combina los 3 tipos de sensores diferentes: sensor de presión, sensor de humedad y sensor de temperatura. Todo en un pequeño paquete de 8 pines.
Está ubicado en una placa pequeña con 4 pines: VIN, GND, SCL y SDA.
Esto hace que sea muy fácil conectar el sensor a un microcontrolador a través de I²C.
Usamos uno en este ejemplo Microcontrolador AZ-Delivery, compatible con Arduino Uno-R3.
Conectamos los siguientes pines:
Microcontrolador AZ-Delivery, compatible con Arduino Uno R3 |
Módulo BME280 |
3.3v |
VIN |
GND |
GND |
SCL |
SCL |
SDA |
SDA |
Utilizamos 2 bibliotecas de Adafruit para nuestro proyecto: "Adafruit Unified Sensors" y "Adafruit BME280 Library"
Si aún no están instalados, la forma más fácil de integrarlos es a través del administrador de la biblioteca del Arduino IDE.
Luego abra el kit de prueba a través de "Archivo" → "Ejemplos" → "Biblioteca Adafruit BME280" → "bme280test".
Después de compilar y cargar el boceto, abrimos el monitor en serie haciendo clic en el símbolo en la esquina superior derecha (o con la combinación de teclas Ctrl + Shift + M):
Si aparece el mensaje "No se pudo encontrar un sensor BME280 válido, verifique el cableado" Aquí aparece, se debe ajustar una línea en el boceto.
estado = bme.begin ();
en
estado = bme.begin (0x76);
Ahora el sensor se lee correctamente:
Esperamos que disfrutes la publicación de blog de hoy con la nueva. Sensor BME280Me gustó y esperamos sus comentarios. ¡Hasta la próxima publicación de AZ-Delivery, su experto en microelectrónica!
4 comentarios
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
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
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
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