Используя раннюю разработку программы Погодная станция v3.18
создаю новую версию карманной погодной станции.
Основа погодной станции – датчики BME280 и DS18B20. В датчике BME280, в отличие от датчика BMP280, имеется чувствительный элемент для измерения ещё и относительной влажности, однако программа позволяет использовать и датчик BMP280. В этом случае относительная влажность не измеряется, а в её позиции выводится значение 50%.
Цифровой датчик ф.Даллас DS18B20 позволяет измерять внешнюю температуру с высокой точностью. В итоге устройство может измерять, обрабатывать и показывать:
Все настройки производятся в меню настроек, в которое можно перейти при длительном нажатии на кнопку MENU. Выход из меню настроек так же по длительному нажатию на эту кнопку.
Краткое нажатие: Регулировка яркости Долгое нажатие: Переход к МЕНЮ настройки
Краткое нажатие: Обнуление высоты В режиме МЕНЮ: Уменьшение значения
Краткое нажатие: Переход к экрану #2 Барографа и обратно к экрану #1 В режиме МЕНЮ: Увеличение значения Долгое нажатие: Обнуление массива барографа
Схема погодной станции была создана на основе: Arduino Pro Mini (можно использовать любую: Arduino UNO, Arduino Nano и подобные им где установлен микроконтроллер ATMega328P), датчике атмосферного давления и влажности BME280 (не путать с BMP280) и цифровом датчике температуры семейства DS18B20.
Погодная станция может работать от встроенного аккумулятора Li-Ion +3.7 В, или от внешнего источника напряжением +5В (+5В на контакт VCC). При работе от аккумулятора, используется повышающий DC-DC преобразователь на MT3608 (можно любой повышающий). На его выходе установлено напряжение +5 В.
Во избежании повреждения Ардуино, BME280, TFT дисплея – следует обратить внимание, что перед подключением преобразователя к устройству, необходимо заранее выставить на его выходе указанное напряжение!
Используемый мной образец BME280 работает в диапазоне напряжений +1.8...+5 В, что избавляет от необходимости применять стабилизатор на +3.3 В. Если у вас образец BME280 на напряжение +3.3 В, то добавьте для него стабилизатор на требуемое напряжение.
Внешнее питание +5В подаётся на Ардуино через разъём USB-micro.
Скетч имеет подробные пояснения, надеюсь будет легко понять как работает программа. Основа скетча – предыдущие разработки и опыты по использованию датчиков BME280 и DS1820.
Последняя версия скетча – v5.2.6 от 2025-03-22. В ней сделана доработка и устранение некоторых неточностей и оптимизация кода.
Конструкция этой версии собрана на монтажной односторонней плате размерами 50*70 мм. На неё установлены все модули и приклеен двухсторонним скотчем аккумулятор. Корпус придётся делать новый, однако, если у вас уже есть предыдущий вариант погодной станции версии от v3.16, то можно не изготавливать новый корпус, а перепрограммировать уже предыдущую версию, только потребуется в скетче произвести переключение кода на старую схему через комментирование определения.
// Настоящая настройка скетча на новую плату 092 #define NEW_CXEMA // Новая схема // Для настройки на старую плату v3.16-v3.18 сделать так: 092 // #define NEW_CXEMA // Новая схема
Собранная плата погодной станции. Дисплей установлен в разъём на плате.
Ниже на фото дисплей снят и видно расположение модулей погодной станции: Arduino Pro Mini, датчик BME280, модуль заряда аккумулятора на TP4056, Повышающий преобразователь на МТ3608, разъём внешнего питания, три кнопки управления.
Монтаж проводками на контакты монтажной платы. Так как это устройство единичное, то нет смысла делать печатную плату.
На экране #1 выводятся все измеренные параметры: давление, высота, влажность и температуры.
На экране #2 выводятся барограф – график изменения давления от времени, которое настраивается в меню настроек.
В меню настроек выбранный параметр подсвечивается жёлтым цветом. Перемещение по пунктам настроек при кратком нажатии на кнопку MENU. Изменение параметра через кнопки MINUS – убавить и PLUS – прибавить. Если в первом параметре Mode установлен 0, то происходит автоматическая смена экранов с информацией.
На фото видно, что погодная станция имеет небольшие размеры и легко поместится в карман. Внешний датчик подключен и с него выводится температура.
Аккумулятор от старого телефона. Ёмкость около 800 мАч. Для кратковременного использования хватает надолго, если нужна непрерывная работа длительно, то можно подключить к любой зарядке телефона с напряжением 5В.
При включении погодной станции выводится заставка, на которой указывается название, автор, версия прошивки, дата прошивки.
Если до включения погодной станции к ней подключен датчик DS18B20, то после начальной заставки выводится информация на подключенный DS18B20, а именно: чип, точность измерения, измеренная температура, из ROM - индивидуальная информация по датчику.
При работе погодной станции от аккумулятора, в верхнем правом углу дисплея выводится пиктограмма батарейки и указывается текущее напряжение на аккумуляторе.
Для полного завершения этой конструкции требуется изготовить корпус, однако для себя я продолжаю использовать предыдущую конструкцию со старой схемой.
2025-03-22Используемые библиотеки и программы:
На развитие сайта и проектов Arduino
Ниже на форме выберите/укажите сумму и источник перевода:Другим способом оказать помощь на развитие сайта.
Проект закончен, те небольшие неточности, которые были выявленны во время эксплуатации погодной станции, были устранены. На данный момент проект считаю завершённым.