Самодельный барометр на pic контроллере | Все своими руками






Измеритель атмосферного давления

Самодельный барометр с датчиком BMP180

Челпанов О, Барановский В.

Схема барометра представлена на рисунке ниже. Основой схемы является микроконтроллер PIC16F684, на который возложено несколько функций, это взаимодействие с датчиком BMP180 т.е. считывание одиннадцати калибровочных коэффициентов и данных о температуре и давлении. Правда на индикатор выводится только данные об атмосферном давлении, а так же анализ считанных данных и дальнейший математический расчет значения атмосферного давления в миллиметрах ртутного столба.


Самодельный барометр

BMP-180 Datasheet PDF

Общение контроллера с датчиком происходит по двухпроводной линии с использованием протокола I²C. После всех необходимых математических преобразований данных, считанных с датчика, контроллер выводит необходимую информацию о давлении на светодиодный индикатор TM1637.

Это светодиодный модуль, имеющий в своем составе четырехразрядный семисегментный светодиодный часовой индикатор и микросхему, преобразователь последовательного кода в параллельный, в данном случае, выполненный на многофункциональной специализированной микросхеме TM1637.

TM1637 Datasheet PDF

Внешний вид индикаторного модуля показан на фото, взятых с магазина ru.aliexpress.com.

Барометр своими руками
Внешний вид устройства показан на фото ниже.
Барометр своими руками

Питается схема от батареи напряжением 12 вольт. В схему введен диод D1, выполняющий функцию защиты от неправильного подключения батареи. Микроконтроллер питается от стабилизатора напряжения 5 вольт VR1 – микросхема LM78L05. Все конденсаторы, указанные в схеме – блокировочные. Печатная плата имеет топологию для применения SMD элементов и микроконтроллера в корпусе SOIC. Что бы запрограммировать контроллер, на плате предусмотрен пятиконтактный разъем. Рисунок печатной платы с расширением Lay6 находится в общем архиве с файлом загрузки микроконтроллера и общей схемой устройсва.

Скачать файлы проекта


Просмотров:3 946
31 комментарий




31 комментарий к “Измеритель атмосферного давления”

  • Валерий
    21 декабря, 2017, 16:24

    Проверка

  • Григорий
    21 декабря, 2017, 20:14

    А отрицательную температуру он мерит?

  • Виталий
    25 декабря, 2017, 13:39

    Здравствуйте. Нельзя ли попросить исходник у авторов разработки. Для повышения знаний в программировании на живых примерах?

  • Владимир
    26 декабря, 2017, 16:56

    я сбросил Кондратьеву еще один проект, там и давление и температура в одном стакане. если выложит посмотрите.

  • Виталий
    8 января, 2018, 22:35

    Здравствуйте, Валерий Юрьевич, а у Вас, случайно, нет исходника?

  • Валерий
    22 января, 2018, 15:59

    Проверка

  • Владимир
    9 февраля, 2018, 7:36

    так, для термо-барометра есть подправленная прошивка, кто собрал, пишите вышлю.

  • Сергей
    1 марта, 2018, 17:10

    Как то мало функционала. К барометру ещё бы часы. Индикатор как раз соответствует.

  • Сергей
    1 марта, 2018, 17:18

    «так, для термо-барометра есть подправленная прошивка, кто собрал, пишите вышлю»

    Добрый день Владимир. А можете прислать подправленную прошивку

    термо-барометра. Заранее большое спасибо.

    моя почта ksn_zp@mail.ru

  • Олег Николаевич.
    6 марта, 2018, 16:24

    Здравствуйте Валерий Юрьевич ! Собрал барометр с датчиком BMP180 -работает , но завышает показания давления на 4-5 единиц. Скажите как можно это исправить (заменой BMP180 или надо корректировать прошивку PIC16F684 ). Даст ли увеличение точности показаний замена BMP180 на более новый датчик BMP280 ?

  • admin
    7 марта, 2018, 15:11

    Здравствуйте, Олег Николаевич. Это не моя разработка, я думаю авторы прочитают Ваш комментарий и ответят.

  • Геннадий
    10 марта, 2018, 21:19

    «так, для термо-барометра есть подправленная прошивка, пишите вышлю»

    Здравствуйте Владимир. Вышлите пожалуйста подправленную прошивку

    термо-барометра.

    Если можно и правленную для барометра.

    Заранее большое спасибо

    iarckin@yandex.ru

  • Андрей
    19 марта, 2018, 12:53

    Здравствуйте.

    Спасибо за отличную работу, люблю простые решения непростых задач.

    Вышлите пожалуйста обновленную прошивку для этого проекта и для термометра+барометр из соседней темы.

    Заранее спасибо.

    dumdum@yandex.ru

  • Владимир
    23 марта, 2018, 4:23

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

    Я сравнивал с показаниями аэропорта, разница в 1мм рт.ст.

  • Геннадий
    28 марта, 2018, 18:45

    в arduino я вводил делитель ((p=bmp.readPressure ()/1.0125;) но тут есть где править)

    тогда правильно начал показывать , датчики китайские, с десяток штук и все одинаково показывают на 10 единиц больше

    здесь без программной правки не обойтись

    если исходников жаль сделайте прошивки tm1637 и max7219 с делителем /1.0125

    а искать точно такой датчик как у Вас... не реально это

    почта : iarckin@yandex.ru

    заранее спасибо

  • Венцислав
    22 мая, 2018, 12:57

    Здравствуйте!

    Один вопрос авторам работы.

    Я пытаюсь запустить дисплей TM1637.

    Но что-то не происходит. Я не получаю предупреждение ACK.

    Если ваша программа находится в ассемблере, вы можете отправить мне код для отправки данных на дисплей

  • Серг
    1 июня, 2018, 21:59

    Сколько искал барометро и пробовал делать — все не то. И вот собрал этот — все просто чудесно работает. С местным метеоцентром практически нет разницы (иногда бывает 1 мм рт ст, да и то скорее всего из-за пересчета их гПа в мм). 

    Спасибо авторам за прекрасную разработку.

  • Ильдар
    3 июня, 2018, 18:16

    Здравствуйте! Собрал вашу схему.Все работает, но все датчики показывают разное давление. Нужна прошивка-исходник на ASM для корректировки показаний для каждого датчика.Начали, так надо доделать.

  • АНДРЕЙ
    28 июля, 2018, 22:04

    Здраствуйте,собрал схему,работает отлично,но показания завышает на 10 едениц.Кто может поделитесь иправленной прошивкой. Заранее благодарен asokolko@bk.ru

  • Валера
    30 июля, 2018, 0:07

    Здравствуйте.Вопрос -на печатной плате возле датчика BMP180 и программатора есть пустые контактные площадки.Что туда ставить.Вышлите пожалуйста обновленную прошивку для термометра-барометра из соседней схемы.Спасибо.Валерий.

  • игорь
    29 января, 2019, 18:02

    Cобрал обе схемы,обе работают обе,но,во первых,обе схемы завышают давление на 5-6мм.рт.ст,во вторых,у термобарометра иногда происходят глюки по давлению(думаю помехи помехуют.и,как говорилось выше,не очень удачная разводка платы,а так всё чудесно.Если можно,вышлите подправленную прошивку.

  • admin
    29 января, 2019, 23:42

    Привет, Игорь. Если товарищи Челпанов О, Барановский В. прочитают Ваш комментарий, то возможно вышлют. У меня ее нет.

  • Александр
    3 февраля, 2020, 13:31

    Я собрал термобарометр, работает , но почему то при включениях неоднократных иногда может начать показывать давление 475 или 986 и в этом режиме остальные 2-е цифры локально правдивы.

    Это не из за того ли,что MCLR висит в воздухе? И очень бы хотелось получить исходник. Или вы пожалуйста доработайте схему и прошивку(второе табло с динамикой, с правом выбора за какое время он будет показывать разницу в уходе давления, а то каждый раз записывать сложно). Может во втором варианте отказаться от температуры и на нем вести отображение запомненного значения давления? А так всё здорово, спасибо большое Вам.

  • Александр
    3 февраля, 2020, 13:36

    Забыл попросить у авторов обновлённую прошивку термобарометра.

    Вышлите пожалуйста, может там всё стабильно.

    Спасибо.

  • admin
    6 февраля, 2020, 11:02

    Привет, Александр, извини, что долго. Разработка не моя, я просил у них исходник — не дали. MCLR попробуй подтянуть к земле.

  • Ольга
    22 февраля, 2021, 15:02

    ЗДРАВСТВУЙТЕ! БОЛЬШАЯ ПРОСЬБА К АВТОРАМ ПРОГРАММЫ, ВЫСЛАТЬ .ASM ФАЙЛ. МЫ СО СТУДЕНТАМИ СОБРАЛИ СХЕМУ И ПРОШИЛИ ПРЕДЛОЖЕННЫЙ .HEX ФАЙЛ, НО ЧТО-ТО ТАМ НЕ ТАК. ПОЖАЛУЙСТА, НАМ ОЧЕНЬ НУЖЕН /ASM ФАЙЛ, И СТУДЕНТАМ БУДЕТ ПОЛЕЗНО. СВОИ ПРОГРАММЫ ИСПРАВЛЯТЬ ЛЕГКО, А ВОТ В ЧУЖИХ ПОКОПАТЬСЯ, ЭТО ТРУДНЕЕ. бОЛЬШОЕ СПАСИБО И ЗА ЭТУ ПРОШИВКУ И, Я НАДЕЮСЬ, ЗА .ASM ФАЙЛ.

  • admin
    22 февраля, 2021, 15:11

    Привет, Ольга. Вы зачем кричите? Исходного файла у меня нет. Это разработка посетителей, а asm они не дали.

  • Сергей
    11 ноября, 2021, 1:03

    Странно. Прошивпл прошивкой с радиокота, показаний не добился от барометра(хотя киардуинн bmp180 подключил, все работает)

    Прошил прошивкой отсюда — сразу заработало.

  • Сергей
    26 апреля, 2022, 23:00

    Ещё раз спасибо за прошивку и схему, но почему-то показания завышены, на 3-4 мм.рт.ст. переставляю датчик на макетку с ардуино, показывает правильно (сравниваю со смарт-чамами и обычным стрелочным) 3 датчика пробовал, все ведут себя одинаково. Как исправить?

  • XYZ
    1 декабря, 2022, 1:31

    Приветствую!

    Можно ли вместо led TM1637 поставить led индикатор на FD650?

    Можно ли как то прикрутить жк индикатор типа oled I2C sda/scl ?

  • admin
    1 декабря, 2022, 1:40

    FD650 — совершенно другая микросхема, под ее надо писать нову программу, так же, как и для 12С индикатора. А от авторов этой разработки и след простыл.

Оставить комментарий