BME280 - датчик атмосферного тиску
Невеликий огляд датчика тиску, температури і вологості BME280 виробництва Bosch Sensortec у порівнянні з BMP280. Раніше я робив огляд датчика BMP280 (і більш ранніх версій BMP180 та BMP085). Ці датчики дуже схожі. Різниця у тому, що BME280 має гігрометр і за рахунок цього його корпус ширше ніж у BMP280. Кількість контактів і їх розташування на корпусах обох датчиків збігаються.
Інтерфейс
BME280 як і BMP280 працює по інтерфейсу I2C. Підтримується шина SPI, але я з цими датчиками працюю тільки по I2C. Схема підключення:Алгоритм роботи
![bme280_photo2](/uploads/2016/01/bme280_photo2-300x225.jpg)
![bme280_photo1](/uploads/2016/01/bme280_photo1-300x225.jpg)
Алгоритм роботи з BME280 і BME280 однаковий. Зчитуються калібрувальні коефіцієнти і дані датчиків. Потім, за вказаними в документації формулами, обчислюються реальні показники температури, тиску, та вологості, якщо Ви використовуєте BME280. Адреси регістрів (коригуючих коефіцієнтів і даних) для роботи з температурою і тиском у цих датчиків однакові. Формули розрахунку температури і тиску ідентичні. Якщо замінити BMP280 на BME280, то в програмній частині нічого змінювати не треба. Тиск і температуру буде вимірювати, як і раніше. А ось для вимірювання вологості бібліотеку доведеться доопрацювати.
Це наводить на думку, що схема вимірювання тиску і температури у них однакові. У BME280 лише додали гігрометр.
На перших сторінках документації BME280 впадає в очі, що він нібито менше шумить. Шум всього 0.2 Pa проти 1.3 Pa у BMP280!
Але це лише рекламний хід. Для BME280 рівень шуму вказаний із застосуванням вбудованого цифрового фільтра. Такі ж показники видає BMP280 з ідентичними налаштуваннями фільтра. Без фільтрації BME280 шумить так само як і BMP280, про що свідчить документація до датчика.
На практиці, при роботі у реальному проекті, де необхідна певна точність вимірюванні тиску, ніякої різниці між BMP280 і BME280 не помічено.
Гігрометр
Гігрометр у BME280 відключений. Тільки після виконання відповідних налаштувань, можна зчитувати актуальні дані гігрометра. Розрахунок вологості виконується за формулою з використанням коригуючих коефіцієнтів. Діапазон вимірювання вологості від 0 до 100%. Для відомості - більшість дешевих гігрометрів здатні вимірювати вологість від 20 до 80%.Режими роботи
Як і BMP280, BME280 має три режими роботи - Normal, Forced, Sleep. У режимі Normal - у відповідності з налаштуваннями датчик періодично виконує вимірювання. Значення пропускає через цифровий фільтр і Вам залишається тільки зчитувати дані, коли Вам зручно. У режимі Forced - датчик виконує вимірювання один раз по команді. Потрібно почекати, поки датчик закінчить вимірювання і тільки після цього зчитувати дані. У режимі Sleep - датчик переходить у режим мінімального споживання.Я тестував датчик тільки у режимі Normal. Оскільки для моїх задач інші режими не використовуються.
Висновки
Якщо для Ваших задач потрібен тільки датчик атмосферного тиску, а вологість абсолютно не важлива, тоді вистачить BMP280. Не варто переплачувати за гігрометр, який Ви не збираєтеся використовувати.BME280 ідеально підходить для метеостанцій, пристроїв для контролю кліматичних параметрів тощо.
Soft
Тестування датчика виконувалося на мікрокомп`ютері Raspberry Pi під операційною системою Raspbian. Бібліотека написана я на Python.Завантажити бібліотеку і приклад можна тут: https://github.com/avislab/sensorstest/tree/master/BME280
Успіхів.
Дивись також:
- Raspberry Pi — що це таке?
- Raspberry Pi — GPIO
- Raspberry Pi — UART
- Raspberry Pi — FT232
- Raspberry Pi — PWM і Сервопривод
- Raspberry Pi — DHT11
- Raspberry Pi - FM Transmitter
- Прошивка AVR мікроконтролерів за допомогою Raspberry Pi
- Raspberry Pi — LCD display 1602
- Raspberry Pi — WiFi
- Raspberry-Pi — I2C (TWI)
- Raspberry Pi - DS18B20
- Raspberry Pi Camera
- nRF24L01+ ATMEGA + Raspberry Pi
- BMP180 + Raspberry Pi + WH1602
- Wi-Fi Метео станція
- Raspbian. Apache + PHP + Python + MySQL
- Встановлюємо Raspbian на Raspberry Pi без клавіатури та монітору
- IR-дистанційне керування. Використання LIRC у Python
- Raspberry Pi. Raspbian. Відправлення пошти через аккаунт Gmail
- Neoway M590 – GSM/GPRS modem
- MPU-6050 – гіроскоп – акселерометр
- HMC5883L Магнітометр
- PWM контролер з інтерфейсом I2С на базі мікросхеми PCA9685
- Метеостанція на Raspberry Pi своїми руками
- Raspberry Pi. Live-stream video
Доброго вечора. Формулу розрахунку вологості Ви складали самі? Просто вона відрізняється від рекомендованої в даташиті. Чому питаю, бо пишу модуль для atmega і ніяк не можу побороти вологість - постійно виходять від'ємні значення (формула з даташита).
Уже все поборов. Виявляється неправильно зчитував калібровочні константи вологості. Не звернув уваги на те, що деякі зі здвигом.
Недавні записи
- Selenium
- Комп'ютерний зір (Computer Vision)
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
- Модуль драйверів напівмосту IGBT транзисторів
- Драйвер IGBT транзисторів на A316J
- AS5600. Варіант встановлення на BLDC мотор
- DC-DC для IGBT драйверів ізольований 2 W +15 -8 вольт
- U-FOC - Векторне керування безколекторними моторами
- FOC - своя реалізація векторного керування. Підбиваю підсумки 2022 року
Tags
raspberry-pi st-link bldc timer max1674 bluetooth eb-500 python ngnix rtc atmega servo avr pwm web tim uart remap brushless bme280 smd esp8266 eeprom bkp capture dht11 ethernet sensors websocket mongodb 3d-printer piezo rs-232 led css meteo i2c options exti html battery soldering bmp280 wifi mpu-9250 examples dma adc gpio sms motor solar hih-4000 lcd docker ssd1306 encoder dc-dc displays pmsm barometer watchdog java-script flask git gps mpu-6050 flash nvic books foc nodemcu programmator usb usart rfid mpx4115a stm32 ssd1331
Архіви