BME280 — датчик атмосферного давления, влажности и температуры

BME280 - датчик атмосферного давления, влажности и температуры

Сегодня расскажу о датчике BME280 с помощью которого можно получить показания влажности, температуры, атмосферного давления и высоту (расчетную). Данный датчик прост, предварительно откалиброван и для подключения не требуется дополнительных компонентов.

Технические параметры

► Напряжение питания: 3.3 В – 5 В
► Рабочий ток: 1 мA
► Диапазон измерения давления:  300 гПа – 1100 гПа (точность ±1.0 гПа)
► Диапазон измерения температуры: -40 °C до +85 °C (точность ±0.5 °C)
►Диапазон измерения влажности: 20 % до 80 % (точность ±3 %)
► Интерфейс: I2C
► Габариты: 12 мм х 10 мм

Общие сведения

Рассмотрим модуль поближе, в правой части расположен датчик BME280 фирмы Bosch (это приемник таких датчиков, как BMP180, BMP085). Данный датчик измеряет влажность, температуру и давление с помощью данных показаний осуществляется расчет высоты, но эти показания не точные, подробно о датчике можно посмотреть в документации. На обратной стороне установлен стабилизатор напряжения LM6206 на 3.3 В и преобразователь уровней I2C, поэтому можно подключить модуль к микроконтроллерам с 3.3 В или 5 В логикой, не боясь.

BME280 - датчик атмосферного давления, влажности и температуры

Назначение контактов:
► VCC, GND — питание модуля 3.3 В или 5 В
► SCL — линия тактирования (Serial CLock)
► SDA — линия данных (Serial Data)

Данный модуль работает по двухпроводному интерфейсу I2C, адрес по умолчанию 0x76, но есть возможность изменить на адрес 0x77. Если присмотреться на модуль, рядом с датчиком расположены контакты, по умолчанию левый и средний контакт замкнуты проводником. Необходимо острым предметом перерезать проводник и установить припоем перемычку между центральный и правым контактом,тем самым установив адрес 0x77. При необходимости можно вернуть адрес 0x76.

BME280 - датчик атмосферного давления, влажности и температуры

Подключение датчика давления BME280 к Arduino

Необходимые детали:
► BME280 — датчик атмосферного давления, влажности и температуры x 1 шт.
► Arduino UNO R3 (DCCduino, CH340G)x 1 шт.
► Провод DuPont 10x, 2,54 мм, 20 см, F-F (Female — Female) x 1 шт.

Подключение:
В данном примере используем датчик BME280 и плату Arduino UNO R3, все получение показание отправлять в «Мониторинг порта», принципе и все, осталось собрать схему по рисунку ниже. Для интерфейса I2C на плате arduino предусмотрено только два вывода A4 и A5, другие вывода не поддерживают I2C, так что учтите при проектирование.

BME280 - датчик атмосферного давления, влажности и температуры

Программа:
Для датчика BME280 разработана библиотека «Adafruit BME280 Library» с помощью которой можно упростить работу с датчиком. Так же, для работы датчика необходима дополнительная библиотека «Adafruit Unified Sensor«. Скачать библиотеки можно в конце статьи или можно скачать через «Менеджер библиотек» в среде разработки IDE Arduino.

Скачать скетч

При открытие окна «Мониторинг порта» можно увидеть показания.

BME280 - датчик атмосферного давления, влажности и температуры

Описание скетча:
Программа начинается с подключение библиотек Wire.h , Adafruit_Sensor.h и Adafruit_BME280.h .

Далее мы указываем переменную SEALEVELPRESSURE_HPA, необходимую для вычисления высоты, и создаем объект библиотеки Adafruit_BME280

В разделе void setup инициализируем последовательную связь с ПК и вызываем функцию begin(),

В разделе void loop используем следующие функции для считывания температуры, относительной влажности и барометрического давления из модуля BME280.
►  Функция readTempera () — считываем показания температуру с датчика.
►  Функция readPressure () — считываем показания атмосферное давление с датчика.
►  Функция readAltitude (SEALEVELPRESSURE_HPA) — расчет высоты (в метрах) из заданного атмосферного давления (в гПа) и давления на уровне моря (в гПа).
►  Функция readHumidity () — считываем относительную влажность с датчика.

BME280 - датчик атмосферного давления, влажности и температуры

Ссылки
Документация на BME280
Библиотека Adafruit BME280 Library
Библиотека Adafruit Unified Sensor

Купить на Aliexpress
  Контроллер Arduino UNO R3 на CH340G
  Контроллер Arduino UNO R3 на Atmega16U2
  Провода DuPont, 2,54 мм, 20 см
 BME280 — датчик атмосферного давления, влажности и температуры

Купить в Самаре и области
  Контроллер Arduino UNO R3 на CH340G
  Контроллер Arduino UNO R3 на Atmega16U2
  Провода DuPont, 2,54 мм, 20 см
 BME280 — датчик атмосферного давления, влажности и температуры

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *