Подключение датчика атмосферного давления BMP280 к ардуино

Модуль датчика атмосферного давления BMP280

Приборы для измерения давления атмосферы называются барометры. Барометры были изобретены в 1644 году. Первые барометры содержали в своем устройстве ртуть, что делало их достаточно небезопасными.  С приходом электроники, а в частности, микроэлектроники, многие сложные и громоздкие приборы были заменены на компактные и безопасные. Датчик давления к ардуино bmp280 – отличный пример замены прибора на электронный вариант.

Датчик атмосферного давления к Ардуино
Внешний вид датчика BMP/BME 280

Модуль ардуино для измерения атмосферного давления BMP 280 использует в своем устройстве датчик, разработанный фирмой BOSCH. Данная модель датчика улучшенная версия датчика BMP180. В новой модели разработчики предусмотрели два интерфейса подключения датчика, а также несколько режимов энергосбережения.

Описание модуля BPM 280

Подключение датчика осуществляется с помощью одного из двух интерфейсов:

  • SPI;
  • I2C.

Модуль атмосферного давления имеет следующие режимы энергосбережения:

  • NORMAL – это обычный режим работы в котором программно устанавливается частота преобразования данных. После измерения модуль сохраняет данные и переходит в режим энергосбережения.
  • SLEEP – спящий режим, в этом режиме модуль расходует минимальное количество заряда.
  • FORCED – это режим пользовательского управления. Модуль просыпается и производит измерения подачей внешнего сигнала. Измерив давление, модуль снова переходит в спящий режим.

Особенностью данного модуля является то, что в дополнение к измерению атмосферного давления в модуль добавлен датчик температуры.

Электрическая схема модуля BMP 280 представлена ниже:

Электрическая схема BMP280
Рисунок 2. Электрическая схема модуля измерения давления BMP280

Cхемы подключения датчика атмосферного давления  к ардуино

Подключение по интерфейсу I2C осуществляется следующим образом:

Подключение BMP280 к ардуино по I2C
Рисунок 3. Подключение BMP280 к ардуино по интерфейсу I2C

Подключение по интерфейсу SPI:

Подключение BMP280 по SPI:
Рисунок 4. Подключение BMP280 к ардуино по интерфейсу SPI

Скетч для работы с датчиком атмосферного давления

Для работы с данным модулем одной из самых простых библиотек это – Adafruit_BMP280. Более подробно библиотека будет рассмотрена в отдельной статье. А сейчас рассмотрим пример кода для работы с датчиком атмосферного давления:

#include              // Библиотека для работы с шиной I2C
#include               // Библиотека для работы с шиной SPI
#include   // Библиотека для работы с датчиком BMP280

// Для подключения по шине I2C
Adafruit_BMP280 bmp;

// Для подключения по аппаратному SPI (указываем только номер пина CS)
#define PIN_CS 10
Adafruit_BMP280 bmp(PIN_CS);

// Для подключения по программному SPI (указываем все пины интерфейса)
#define PIN_SCK  13
#define PIN_MISO 12
#define PIN_MOSI 11
#define PIN_CS   10
Adafruit_BMP280 bmp(PIN_CS, PIN_MOSI, PIN_MISO,  PIN_SCK);

void setup() {
  Serial.begin(9600);                      // Для вывода отладочной информации в терминал
  if(!bmp.begin()) {                       // Если датчик BMP280 не найден
    Serial.println(“BMP280 SENSOR ERROR”); // Выводим сообщение об ошибке
    while(1);                              // Переходим в бесконечный цикл
  }
}

void loop() {
 // Выводим значение температуры
  Serial.print(F("Temperature = "));
  Serial.print(bmp.readTemperature()); // Функция измерения температуры
  Serial.println(" *C");

  // Выводим значение атмосферного давления
  Serial.print(F("Pressure = "));
  Serial.print(bmp.readPressure());  // Функция измерения атм. давления
  Serial.println(" Pa");

  // Выводим значение высоты
  Serial.print(F("Approx altitude = "));
  Serial.print(bmp.readAltitude(1013.25)); // Функция измерения высоты
  Serial.println(" m");
}
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии