Обзор датчика давления BMP180 (BMP080)

4
Обзор датчика давления BMP180 (BMP080)

Датчик BMP180 (3.3В, GY-68) — является недорогим и простым в использовании сенсорным датчиком, позволяющий измерить атмосферное давления и температуру окружающей среды. Используют данный датчик для определения высоты (чем выше, тем меньше давление), а так же в самодельных метеостанциях.

Обзор датчика давления BMP180 (BMP080)

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

► Напряжение питания: 3.3 В – 5 В
► Рабочий ток: 0.5 мA
► Диапазон измеряемого давления:  300 гПа – 1100 гПа
► Интерфейс: I2C
► Время срабатывания: 4.5 мс.
► Точность измерения давления: 0,1 гектопаскаль;
► Точность измерения температуры: 0,1°С;
► Габариты: 15 мм х 14 мм

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

Рассмотрим модуль поближе, в левой части расположен сам сенсорный датчик BMP180 фирмы Bosch. Так как датчик BMP 180, работает от 3.3В (а почти все платы Arduino работают на 5В), на плате предусмотрен стабилизатор напряжения XC6206P332MR в корпус SOT-23, который выдает на выходе напряжение в 3.3В, рядом установлена обвязка стабилизатора, состоящая из двух керамических конденсаторов на 1 мкФ. Подключение осуществляется по интерфейсу I2C, линии SCL и SDA выведены на группу контактов на другой стороне модуля, туда же выведено и питание. Последние два резистора на 4.7 кОм, необходимы подтяжки линии SCL и SDA к питанию, конечно при необходимости их можно выпаять, если используете несколько устройств на I2C линии.

Обзор датчика давления BMP180 (BMP080)

Назначение контактов:
► SCL — линия тактирования (Serial CLock)
► SDA — линия данных (Serial Data)
► VCC —  «+» питание
► GND —  «-» питание

Принципиальная схема датчика BMP180, показана ниже.

Обзор датчика давления BMP180 (BMP080)

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

Необходимые детали:
► Барометрический датчик давления BMP180 (3.3В, GY-68) x 1 шт.
► Arduino UNO R3 (DCCduino, CH340G)x 1 шт.
► Провод DuPont 10x, 2,54 мм, 20 см, F-F (Female — Female) x 1 шт.

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

Обзор датчика давления BMP180 (BMP080)

Теперь, о программной части, для нашего удобства разработана библиотека BMP180 Breakout Arduino Library v.1.1.2, которая позволяет упросить работу с датчиком, скачиваем и устанавливаем ее, кстати датчик BMP180 и BMP080 похожи, включая и команды, так что библиотека у них одна.

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

Загружаем скетч в плату arduino и если все правильно подключено, в окне мониторинг порта, можно увидеть температуру и атмосферное давление.

Обзор датчика давления BMP180 (BMP080)

Ссылки
 Библиотека BMP180 Breakout v.1.1.2

Купить на Aliexpress
  Контроллер Arduino UNO R3 на CH340G
  Контроллер Arduino UNO R3 на Atmega16U2
  Провода DuPont, 2,54 мм, 20 см
  Барометрический датчик давления BMP180 (3.3В, GY-68)

Купить в Самаре и области
  Контроллер Arduino UNO R3 на CH340G
  Контроллер Arduino UNO R3 на Atmega16U2
  Провода DuPont, 2,54 мм, 20 см
  Барометрический датчик давления BMP180 (3.3В, GY-68)

4 комментария для “Обзор датчика давления BMP180 (BMP080)

  1. В итоговом коде сказано, что для нахождения давления необходимо сначала вычислить температуру. Это необходимо при каждом измерении? В моей ситуации просто важно иметь актуальную информацию о давлении (датчик будет перемещаться относительно уровня моря) и не критично ошибиться на 1 градус по Цельсию. Можно ли выставить время обновления давления в 0.25 сек, а температуры — в 2 сек., или каждый раз надо измерять обе величины?

    1. Значение температуры используется для корректировки данных давления и влажности. Поэтому без него не обойтись, придется вычислять каждый раз.

  2. Зачем в данном случае подтяжки линий SCL и SDA к питанию через резисторы?

    1. Потому что формирование импульсов на шине происходит путем подтяжки той или иной линии к земле внутренними транзисторами датчика и процессора. Не будет резисторов — не будет и изменения уровней, то есть передачи данных. То есть резисторы подтяжки обязательны.

      Но! Если к этой же шине уже подключены резисторы на плате микропроцессора или на другом датчике, подключенном параллельно, то необходимости в них уже нет.

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

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