Измеритель атмосферного давления
Самодельный барометр с датчиком BMP180
Челпанов О, Барановский В.
Схема барометра представлена на рисунке ниже. Основой схемы является микроконтроллер PIC16F684, на который возложено несколько функций, это взаимодействие с датчиком BMP180 т.е. считывание одиннадцати калибровочных коэффициентов и данных о температуре и давлении. Правда на индикатор выводится только данные об атмосферном давлении, а так же анализ считанных данных и дальнейший математический расчет значения атмосферного давления в миллиметрах ртутного столба.
Общение контроллера с датчиком происходит по двухпроводной линии с использованием протокола I²C. После всех необходимых математических преобразований данных, считанных с датчика, контроллер выводит необходимую информацию о давлении на светодиодный индикатор TM1637.
Это светодиодный модуль, имеющий в своем составе четырехразрядный семисегментный светодиодный часовой индикатор и микросхему, преобразователь последовательного кода в параллельный, в данном случае, выполненный на многофункциональной специализированной микросхеме TM1637.
Внешний вид индикаторного модуля показан на фото, взятых с магазина ru.aliexpress.com.
Внешний вид устройства показан на фото ниже.
Питается схема от батареи напряжением 12 вольт. В схему введен диод D1, выполняющий функцию защиты от неправильного подключения батареи. Микроконтроллер питается от стабилизатора напряжения 5 вольт VR1 – микросхема LM78L05. Все конденсаторы, указанные в схеме – блокировочные. Печатная плата имеет топологию для применения SMD элементов и микроконтроллера в корпусе SOIC. Что бы запрограммировать контроллер, на плате предусмотрен пятиконтактный разъем. Рисунок печатной платы с расширением Lay6 находится в общем архиве с файлом загрузки микроконтроллера и общей схемой устройсва.
31 комментарий к “Измеритель атмосферного давления”
Проверка
А отрицательную температуру он мерит?
Здравствуйте. Нельзя ли попросить исходник у авторов разработки. Для повышения знаний в программировании на живых примерах?
я сбросил Кондратьеву еще один проект, там и давление и температура в одном стакане. если выложит посмотрите.
Здравствуйте, Валерий Юрьевич, а у Вас, случайно, нет исходника?
Проверка
так, для термо-барометра есть подправленная прошивка, кто собрал, пишите вышлю.
Как то мало функционала. К барометру ещё бы часы. Индикатор как раз соответствует.
«так, для термо-барометра есть подправленная прошивка, кто собрал, пишите вышлю»
Добрый день Владимир. А можете прислать подправленную прошивку
термо-барометра. Заранее большое спасибо.
моя почта ksn_zp@mail.ru
Здравствуйте Валерий Юрьевич ! Собрал барометр с датчиком BMP180 -работает , но завышает показания давления на 4-5 единиц. Скажите как можно это исправить (заменой BMP180 или надо корректировать прошивку PIC16F684 ). Даст ли увеличение точности показаний замена BMP180 на более новый датчик BMP280 ?
Здравствуйте, Олег Николаевич. Это не моя разработка, я думаю авторы прочитают Ваш комментарий и ответят.
«так, для термо-барометра есть подправленная прошивка, пишите вышлю»
Здравствуйте Владимир. Вышлите пожалуйста подправленную прошивку
термо-барометра.
Если можно и правленную для барометра.
Заранее большое спасибо
iarckin@yandex.ru
Здравствуйте.
Спасибо за отличную работу, люблю простые решения непростых задач.
Вышлите пожалуйста обновленную прошивку для этого проекта и для термометра+барометр из соседней темы.
Заранее спасибо.
dumdum@yandex.ru
вы с чем сравнивали показания барометра, говоря что он врет? если со стрелочным барометром, то у них есть регулировочный винт))) и их можно подкорректировать под электронный. самый лучший способ проверки собранного барометра, это приехать в аэропорт и сравнить. если показания будут сильно отличаться, заменить датчик барометра.
Я сравнивал с показаниями аэропорта, разница в 1мм рт.ст.
в arduino я вводил делитель ((p=bmp.readPressure ()/1.0125;) но тут есть где править)
тогда правильно начал показывать , датчики китайские, с десяток штук и все одинаково показывают на 10 единиц больше
здесь без программной правки не обойтись
если исходников жаль сделайте прошивки tm1637 и max7219 с делителем /1.0125
а искать точно такой датчик как у Вас... не реально это
почта : iarckin@yandex.ru
заранее спасибо
Здравствуйте!
Один вопрос авторам работы.
Я пытаюсь запустить дисплей TM1637.
Но что-то не происходит. Я не получаю предупреждение ACK.
Если ваша программа находится в ассемблере, вы можете отправить мне код для отправки данных на дисплей
Сколько искал барометро и пробовал делать — все не то. И вот собрал этот — все просто чудесно работает. С местным метеоцентром практически нет разницы (иногда бывает 1 мм рт ст, да и то скорее всего из-за пересчета их гПа в мм).
Спасибо авторам за прекрасную разработку.
Здравствуйте! Собрал вашу схему.Все работает, но все датчики показывают разное давление. Нужна прошивка-исходник на ASM для корректировки показаний для каждого датчика.Начали, так надо доделать.
Здраствуйте,собрал схему,работает отлично,но показания завышает на 10 едениц.Кто может поделитесь иправленной прошивкой. Заранее благодарен asokolko@bk.ru
Здравствуйте.Вопрос -на печатной плате возле датчика BMP180 и программатора есть пустые контактные площадки.Что туда ставить.Вышлите пожалуйста обновленную прошивку для термометра-барометра из соседней схемы.Спасибо.Валерий.
Cобрал обе схемы,обе работают обе,но,во первых,обе схемы завышают давление на 5-6мм.рт.ст,во вторых,у термобарометра иногда происходят глюки по давлению(думаю помехи помехуют.и,как говорилось выше,не очень удачная разводка платы,а так всё чудесно.Если можно,вышлите подправленную прошивку.
Привет, Игорь. Если товарищи Челпанов О, Барановский В. прочитают Ваш комментарий, то возможно вышлют. У меня ее нет.
Я собрал термобарометр, работает , но почему то при включениях неоднократных иногда может начать показывать давление 475 или 986 и в этом режиме остальные 2-е цифры локально правдивы.
Это не из за того ли,что MCLR висит в воздухе? И очень бы хотелось получить исходник. Или вы пожалуйста доработайте схему и прошивку(второе табло с динамикой, с правом выбора за какое время он будет показывать разницу в уходе давления, а то каждый раз записывать сложно). Может во втором варианте отказаться от температуры и на нем вести отображение запомненного значения давления? А так всё здорово, спасибо большое Вам.
Забыл попросить у авторов обновлённую прошивку термобарометра.
Вышлите пожалуйста, может там всё стабильно.
Спасибо.
Привет, Александр, извини, что долго. Разработка не моя, я просил у них исходник — не дали. MCLR попробуй подтянуть к земле.
ЗДРАВСТВУЙТЕ! БОЛЬШАЯ ПРОСЬБА К АВТОРАМ ПРОГРАММЫ, ВЫСЛАТЬ .ASM ФАЙЛ. МЫ СО СТУДЕНТАМИ СОБРАЛИ СХЕМУ И ПРОШИЛИ ПРЕДЛОЖЕННЫЙ .HEX ФАЙЛ, НО ЧТО-ТО ТАМ НЕ ТАК. ПОЖАЛУЙСТА, НАМ ОЧЕНЬ НУЖЕН /ASM ФАЙЛ, И СТУДЕНТАМ БУДЕТ ПОЛЕЗНО. СВОИ ПРОГРАММЫ ИСПРАВЛЯТЬ ЛЕГКО, А ВОТ В ЧУЖИХ ПОКОПАТЬСЯ, ЭТО ТРУДНЕЕ. бОЛЬШОЕ СПАСИБО И ЗА ЭТУ ПРОШИВКУ И, Я НАДЕЮСЬ, ЗА .ASM ФАЙЛ.
Привет, Ольга. Вы зачем кричите? Исходного файла у меня нет. Это разработка посетителей, а asm они не дали.
Странно. Прошивпл прошивкой с радиокота, показаний не добился от барометра(хотя киардуинн bmp180 подключил, все работает)
Прошил прошивкой отсюда — сразу заработало.
Ещё раз спасибо за прошивку и схему, но почему-то показания завышены, на 3-4 мм.рт.ст. переставляю датчик на макетку с ардуино, показывает правильно (сравниваю со смарт-чамами и обычным стрелочным) 3 датчика пробовал, все ведут себя одинаково. Как исправить?
Приветствую!
Можно ли вместо led TM1637 поставить led индикатор на FD650?
Можно ли как то прикрутить жк индикатор типа oled I2C sda/scl ?
FD650 — совершенно другая микросхема, под ее надо писать нову программу, так же, как и для 12С индикатора. А от авторов этой разработки и след простыл.