Метеостанция на основе ESP8266
Всем привет. Тоже хочу поделиться небольшим опытом создания полезной фигни «из г и палок»©.
Последнее время на муське стали массово появляться обзоры разных микроконтроллерных штучек от разных рукастых товарищей. Давно мечтал что-нибудь помикроконтроллировать, но вот реальной цели не было.
В конце концов, после очередного обзора твердо решил: надо поднимать свою самооценку.
Перефразируя старый анекдот
Теория – это когда известно как, но ничего не работает Практика – это когда все работает, но никто не знает как ЗДЕСЬ мы объединяем теорию с практикой: ничего не работает и никто не знает почему…Микроконтроллеры – это там, где совмещаются паяльник и программирование.
Поскольку сам я имею маааленький опыт в паянии и еще меньший — в программировании, я покажу, что можно сделать с микроконтроллерами практически без паяния и без программирования! Для начала, я сел «изучить вопрос». У меня было общее (скромно) представление о МК, поэтому стал собирать частности… В моем детстве были популярны программистские байки.
Вот одна из множества, поясняющая, зачем что-то изучать перед тем как делать:
Жили в общежитии в соседних комнатах два аспиранта. Один из них занимался какими-то вычислениями (назовем его Математик), а второй (назовем его ИТшник) – обслуживал институтскую гордость (что-то типа БЭСМ6). Необходимое отступление – в те времена компьютер был… ну… ну как сегодня – Токамак: все знают, что он существует, но мало кто может запустить на нем свой проект.
Так вот – у Математика была работа – обсчет нескольких страниц каких-то данных. У ИТшника – был доступ к вычислительной машине. Логично, что Математик, по-соседски, попросил ИТшника просчитать свои данные на машине. ИТшник – за пару ночных дежурств, ввел данные, забил алгоритм, обсчитал и распечатал результат: несколько колонок цифр на длинном рулоне бумаги.
Две ночные смены сэкономили Математику несколько месяцев работы с железным Феликсом!… Через пару дней ИТшник, проходя мимо комнаты Математика, увидел, что тот сидит над знакомым рулоном распечатки и что-то дописывает к колонкам цифр. Зайдя к другу, он увидел, как тот рядом с каждой цифрой дописывает ее синус и косинус, используя Таблицы Брадиса.
После того как ИТшник обрел дар речи, он спросил – ??? (нецензурщина опущена). На что Математик пояснил – оказывается он НЕ ЗНАЛ, ЧТО ЭВМ УМЕЕТ ВЫЧИСЛЯТЬ ТРИГОНОМЕТРИЧЕСКИЕ ФУНКЦИИ…С момента прочтения этой притчи я, перед тем как начать пользоваться чем-либо, сначала стараюсь выяснить возможности этого «чего-либо».
Пропускаю большую часть своих исследований возможностей ардуины и момент перехода поисков в плоскость esp8266. Главное, что в конце концов я оказался на странице проекта Homes Smart.
В данном проекте нам не придется программировать. И почти не придется работать паяльником: как и большинство проектов с ардуиной – все соединения можно выполнить на дюпонд-проводах). Почти, т.к. модули и датчики приходят от китайцев без припаянных гребенок – потребуется сначала их впаять. Вот так приходит от китайцев:Но паяльником нужно будет поработать один раз – можно собрать все скопом и попросить какого ни будь рукастого ремонтника. Некоторые возможности проекта (помимо метеостанции) постараюсь описать в конце обзора. Тут только скажу, что часть возможностей проекта – платная. «Аж» 100руб на каждый модуль esp. Но для метеостанции вполне достаточно бесплатной версии. ЕСП-шки пришли к новому году. Датчики пришли еще раньше, по ходу дела дошли и прочие железки. Поскольку все праздники стояла «отличная» погода – морозы за -20 с ветром – я, в перерывах между праздничными возлияниями, стал реализовывать задумку.
Процесс прошивки модуля подробно описан как на странице проекта, так и в предыдущих обзорах. Не буду повторяться (итак обзор получился тяжелым), тем более, что прошить модуль можно не только UART-переходником, но и ардуиной (причем не единственным способом).
Итак – цель: собрать домашнюю метеостанцию, передающую показания на narodmon.ru Берем модуль esp8266. Модулей этих несколько версий. Наиболее часто встречающиеся:
esp-01
Версия имеет малое количество портов (ограничение в расширении функционала) и стандартно 512к памяти (впрочем – скорее всего памяти будет 1м). Зато он дешевле других и имеет гребенку для соединения.
esp-07
У 07 антенна керамическая + есть разъем для внешней антенны. Если актуально – берем его. Памяти 1М или (скорее всего) 4М.
esp-12
От 07 отличается печатной антенной и чуть меньшей ценой. Для просто метеостанции – подойдет любой. Я выбрал esp-12.
Модуль питается от 3,3в. Подача на него 5В может вывести его из строя. Для питания были заказаны стабилизаторы (ну или в местных магазинах поискать). Пока они не пришли – я питал модуль от 3,3 выхода ардуины.
Можно воспользоваться готовым стабилизатором, или регулируемым стабилизатором
А можно взять модуль esp-12, уже установленный на переходную плату со стабилизатором питания, интерфейсом для прошивки и гребенкой (с учетом всех наворотов, необходимых для отдельного esp12 – наверное еще и дешевле получится). В каментах подсказали другой вариант — дешевле.
Взяв паяльник в руки понял, что зрение уже не то 🙁 Гребенку к ардуине припаивал практически на ощупь. А когда взял в руки esp12 – так чуть не побежал искать мелкоскоп… Паяться к ней без оптики для меня оказалось нереально. Для решения этой проблемы (а также для того чтобы можно было пользоваться дюпонд-кабелями) – были заказаны модули-переходникиПрипаять esp12 на переходник оказалось проще чем я думал – площадки переходника залужены и нужно только намазать площадки esp каким ни будь флюсом, выставить ровно и прикасаться к луженым площадкам тонким жалом. Не забыть смыть флюс. Вот что получилось у меня:Переходник, помимо гребенки, имеет площадку для установки стабилизатора. К сожалению – площадка рассчитана на какой-то другой стаб (с другим расположением выводов), поэтому заказанные мной 1117 пришлось припаять немного колхозно. Ну и, чтобы припаянный стаб заработал, надо удалить перемычку (просто смахнуть паяльником средний резистор на лицевой стороне). Работает! Я добавил еще один пин в проходное отверстие – для вывода 3,3в на внешние потребители. Вот что получилось (3.3 выход – красный провод не в общем ряду):На случай, если меня читают старшие товарищи, да, я знаю, что стабилизатор питания требует, чтобы рядом с его выводами стояли конденсаторы. Керамика и электролит. Просто я в хламе не нашел ничего подходящего, поэтому оставил так. Все работает, но конденсаторы я все еще ищу и припаяю обязательно.
Для того, чтобы все соединить, нам понадобится комплект проводов и, желательно, монтажная плата
Подключаем модуль согласно схеме, скачиваем прошивку (в зависимости от размера памяти на нашем модуле (как определить — есть на странице проекта) и заливаем в esp-шку любым способом.
У меня прошивка не залилась с первого раза – пришлось сначала залить бланк («пустой» набор, как бы затираем старую прошивку – вся инфа есть на странице проекта), а потом прошить еще раз – успешно. После прошивки заходим на модуль в safe-mode и настраиваем подключение к роутеру (все по инструкции со страницы проекта), выставляем логин-пароль. Все.
Остальное можно настроить потом. На всякий случай выключаем safe-mode и включаем модуль – он должен подключиться к роутеру и быть доступным по адресу, который ему выдаст роутер. Если все подключается – разбираем «прошивочную» схему и начинаем собирать метеостанцию.
Если у вас модуль не 01, то просто читаем со схемы на странице проекта название контактов и находим такие же на своем модуле.
Для метеостанции нужны датчики. Как минимум – датчик температуры. Прошивка может работать с классическим далласом
Для его подключения потребуется резистор. На схеме проекта — 1,5кОм. По даташиту 4,7кОм (цена – копейки, валяется у каждого радиолюбителя в хламе). У меня работает 1,5. Если полистать форум проекта — то многим приходиться подбирать резистор, в зависимости от длины и качества кабеля до датчика.
Но можно взять готовый датчик с резистором
Можно добавить датчик влажности.
Кстати, в нем встроен и датчик температуры, так что можно одним этим датчиком мерить два параметра. Только встроенный датчик температуры – очень неточный.
Ну и, если мы претендуем на звание метеостанции, добавим датчик давления.
В нем тоже встроен датчик температуры, но датчик давления не рекомендуют выкидывать на улицу – т.е. давление (и температуру) он будет измерять в комнате. Я к этим трем датчикам добавил еще один датчик влажности – для замера влажности в комнате (для второго датчика требуется платная версия прошивки).
Итак – датчик температуры и влажности припаиваем к длинному кабелю (я использовал 4-жильный телефонный шнур – метров 7). Можно и не паять, но соединение без пайки на открытом воздухе быстро окислится. Впрочем – даже паяное соединение лучше чем либо защитить (лаком, термопистолетом, эпоксидкой итп – главное не попортить датчики).
На другой конец кабеля припаиваем куски разрезанного дюпонд-кабеля. Кабель я выбросил за окно прямо через створку (летом может что-нибудь придумаю)Еще два куска дюпонда припаиваем к тому, чем будем питать нашу конструкцию (я припаял к миниУСБ разъему, и питаю все от телефонного зарядника).
После чего – паяльник можно убрать обратно на антресоли.После подключения всех датчиков, проверяем все еще раз. Особенно убеждаемся в правильности соединения цепей питания. Включаем. Подключаемся к нашему модулю по адресу, который выдал ему роутер (см в настройках роутера.
Лучше сразу, там же в настройках dhcp, выдать модулю постоянный адрес, чтобы не искать его каждый раз после перезагрузки). Переходим по ссылке Hardware и выставляем галочки согласно подключенным датчикам. У меня так:Нажимаем Set и затем возвращаемся на main. Все, наша метеостанция работает.
На главной странице увидим показания наших датчиков.Но, если мы желаем отправлять данные датчиков на всеобщее обозрение, переходим в Servers. Включаем галочку на narodmon.ru.
Теперь данные с датчиков будут отправляться на сервер народного мониторинга.
Предварительно регистрируемся на народмоне по инструкции, находим свои датчики и настраиваем видимость. Все, теперь можно видеть свои данные на карте, строить графики по переданным показаниям, сравнивать свои показания с «соседними» (если такие есть) и пытаться прогнозировать погоду.
Поигравшись с таким вариантом станции, я понял, что мне не хватает локального отображения показаний. Благо, проект поддерживает ряд экранов. У меня под рукой оказался 1602 (16 символов * 02 строки)
Сразу скажу – экраном я не удовлетворен. На него помещается максимум 4 показания, и то не без ущербности. Я вывожу на него время (да – встроенные часы синхронизируются через интернет), давление, температуру за бортом и влажность. Температура и влажность в комнате – остались без контроля 🙁 Заказал себе экран 2004 – 20 символов * 04 строки, но он еще едет.
Для подключения экрана потребуется контроллер (он одинаковый для 1602 и 2004)
Контроллер также потребует пайки к экрану (ну я паяльник не убирал далеко. А если кто будет повторять – не забудьте про это). Подключил – все отлично, кроме яркости экрана. Она избыточна (особенно для темной стороны темного времени суток). На плате контроллера экрана есть перемычка – отключающая подсветку. Решил поставить туда ключ и управлять им датчиком движения.
Данный датчик также неоднократно обозревался на муське. Основное — он питается от 5в (и выше), но управляющий сигнал – 3,3в. Попавшиеся под руку MOSFETы не открывались от 3,3 :(. И я рискнул поискать что-нибудь в хламе.
Попалось что-то типа КТ817 (думаю, и КТ315 подошел бы, но у него ноги не удобные для дюпонд-кабелей).
На базу подал сигнал с датчика движения, а эмитер-коллектор подсоединил вместо перемычки (кого куда – методом научного тыка, хотя можно было и вызвонить где на перемычке плюс, а где минус, но это дольше :)В результате получил бонус – транзистор из-за большого сопротивления перехода (или из-за неполного открытия) снизил яркость экрана до приемлемой. Теперь экран работает отлично: при сработке датчика движения показания в меру яркие и читаются легко.
Вот, в таком виде станция работает у меня с новогодних праздников. Историю показаний можно посмотреть тут.
Кстати, важный момент. Если сравнить показания в солнечный зимний день с показаниями соседних станций (например, 21 января), можно заметить, что мои показания – ниже (реальная температура в январе у нас была только отрицательная).
Все потому, что «соседские» датчики просто нагреваются солнцем. Я же учел этот момент – по уму датчик надо монтировать в тень, но не всегда это возможно.
Я просто сделал из фольги короткий тубус и закрепил датчики внутри:Конструкцию к лету думаю усовершенствовать: сделать два тубуса один-в-другом с защитой от осадков и с инжекцией циркулирующего воздуха.
А так же – перенести подальше от стены дома (соседи снизу открывают форточки, что заметно влияет на показания)
Так же в планах добавить LED индикатор для индикации часов – чтобы считывать показания на расстоянии.
Ну еще есть идея сделать проекцию часов на потолок, но придется искать подходящую линзу (наличные кредитки-френеля слишком длиннофокусные).
Ну и в конце, как обещал, кратко расскажу, что же еще можно подключить к этому модулю и какие задачи он может решать (полный список см на странице конструктора прошивки):
— Различные датчики температуры, влажности, давления, освещенности. — Дисплеи, помимо описанного мной – семисегментные, ОЛЕД, ТФТ — АЦП (например – мерить влажность почвы) — RC приемник и передатчик 433 и 315 МГц (да-да, открывать ворота и не только) — ИК приемник и передатчик — ФМ-радио (не знаю как оно сюда попало, но есть) — RTC (часы с независимым ходом. То, о чем уже полвека мечтают все владельцы микроволновок)
— Управление выключателями Livolo
— Отправка СМС
— Бегущая строка (лучше один раз увидеть)
— Работа с прерываниями — ШИМ — Обновление прошивки через интернет (после первой прошивки вам не надо больше подключать программатор) — Термостат (поддержка температуры или влажности) — Календарь и часы с синхронизацией через интернет, ну и программированием событий по времени и дням недели (в будни включаем кофеварку в 6 утра, в выходные – в 12) — Чтение и управление состоянием портов (подключаем переключатели и/или реле – поливаем огороды итп) — Конструктор кода (кому нужно делать что-то что не умеет прошивка) — Логический модуль (программируем действия простой логикой без знания языков программирования) — «кнопки» на главной странице модуля для управления портами (если надо полить огород не по расписанию) — Берет прогноз с гисметео (в демонстрации бегущей строки данные из него)
— Может передавать данные и управляться с разных сервисов (сам не пользовался, но в описании выглядит красиво, например тут и тут
— Наверное еще что-то, о чем я забыл или понятия не имею. Вывод. Модуль отличный! Вариантов применения – уйма. Цена – копейки (даже с умирающим рублем). Описанный проект позволяет на основе этого модуля, без знания даже основ программирования и с минимальными навыками пайки, собрать и настроить под свои нужды много интересных и/или полезных вещей. Автор проекта активно его развивает и общается в форуме проекта. Без устали отвечает на вопросы, берется за реализацию новых фишек (если они укладываются в концепцию проекта). Минусы проекта – это продолжение его плюсов (и наоборот): платная версия «про». Закрытый код.
Рекомендую. Рекомендую как модуль esp-12, так и прошивку проекта homes-smart.ru
Еще несколько фото общего вида и датчиков которые стоят в комнате
Если кто-то смог дочитать обзор до сюда, то вот небольшой бонус
Роберт Хайнлайн «Дверь в лето»
… Еще будучи пушистым котенком, Пит выработал для себя простую философию, согласно которой Я отвечал за жилье, еду и погоду, а ОН – за все остальное. За погоду он взыскивал с меня особенно строго, а зимы в Коннектикуте хороши только на рождественских открытках. Этой зимой Пит регулярно инспектировал свою дверь, но не выходил через нее – ему не нравилось белое вещество, покрывающее землю, и он начинал приставать ко мне, требуя открыть ему большую дверь…
PS Еще раз огромное спасибо всем тем рукастым товарищам, которые пилили обзоры по микроконтроллерам и прочим проводкам-лампочкам. Именно вы заставили мою самооценку победить мою лень 🙂 Upd 29.01.16 Пришли экранчик и матричные дисплеи. Не удержался, в один присест запаял гребенки и побежал испытывать…
OLED экранчик, размером маааахонький…
И еще такое: Матричный дисплей. Соединяется в цепочку до 10шт.
Источник: https://mysku.ru/blog/aliexpress/37928.html
Метеостанция своими руками (Погодная станция)
» Схемы » Измерения · Применение микроконтроллеров
26-03-2009
Метеостанция отображает текущую влажность, температуру (внутри и снаружи помещения) и давления. Календарь и часы прилагаются. Удобный пользовательский интерфейс состоящий из трех кнопок.
Диаграмма изменения параметра за 42 часа. Все работает на микроконтроллере PIC 18F452, который находится в спящем режиме. Сенсоры включаются лишь при необходимости.
Звучит неплохо? Оказывается, Вы можете собрать такое устройство своими руками! Как? Читайте дальше…
Вначале некоторые комментарии. Во-первых, устройство питается от 9 В элемента питания (можно использовать «Крону», но лучше воспользоваться последовательно соединенными «пальчиковыми» элементами по 1.5 В – их должно хватить на несколько месяцев). Устройство «ест» 8-9 мА во включенном состоянии и 2-3 мА – в режиме сна. Передатчик менее прожорливый.
Базовая станция работает 5 секунд, потом переходит в режим сна на 45 секунд. Передатчик работает каждые 30 секунд.
Теперь немного об управлении: для входа в меню используется средняя кнопка «Меню» (логично, не правда ли?). Изменения значений – левой и правой кнопкой – больше и меньше соответственно, в нормальном режиме эти кнопки используются для просмотра истории разных параметров. Нажав любую кнопку в режиме сна, вы перейдете в нормальный (активный) режим.
В левой части дисплея отображаются (сверху вниз):
- Внешняя температура
- Давление
- Внутренняя температура
- Относительная влажность
- Календарь
- Часы
В правой части:
- Самое большее значения за прошедшие 42 часа
- График изменения параметра за прошедшие 42 часа
- Самое маленькое значение за прошедшие 42 часа
Новый данные с сенсоров поступают каждые 50 секунд, с такой же частотой обновляется и дисплей. Гистограмма обновляется каждый час. Все данные записываются в EEPROM и загружаются при включении, так что при отключении питания данные не будут утеряны.
Немного о нестандартных радиодеталях, которые понадобятся для этого проекта:
MPX 4115A – сенсор давления. Самая дорогая деталь для этого проекта.
TC77 SPI – температурный сенсор.
H1 – сенсор влажности. С изменением влажности меняется емкость.
RX+TX433 – дешевые модули для обмена информацией между базовой станцией и передатчиком.
Схема (ниже вы можете найти ссылку на эту схемы в формате Eagle PCB):
Нажмите для увеличения
Схема базовой станции (ниже вы можете найти ссылку на эту схемы в формате Eagle PCB):
Нажмите для увелиения
Вначале придется настроить датчики давления и влажности. Внимание! Для точной настройки вам понадобится точный мультиметр. Для этого вначале настраиваем VREF- (PIC RA2, pin 4) до 2 V 40 используя R9. То же самое повторяем с VREF+ (RA3, pin 5) настраивая его до 4 V 70 подстраивая R8.
Загружаемые файлы для базовой станции.
Загружаемы файлы для сенсора – передатчика:
Печатная плата – базовая станция:
Печатная плата – передатчик:
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться. |
Фрагменты обсуждения: | Полный вариант обсуждения » |
- Эта “метеостанция своими руками” предназначена для работы в походных условиях, а не внутри и снаружи помещения, как сказано вначале статьи. Батарейки, собственный экран. Гораздо проще и удобней было бы использовать для этого ноутбук.
- Не могу скачать прошивки 🙁 Можете запостить в другом месте ? или замылить на allmail@ mail.ru
- Довольно все замудренно и дороговато.
- Согласен, что замудренно, но полюбому получается сопостовимо (по деньгам) с китайскими погодниками, а устройство рекомендую рассматривать как один из “кубиков” умного дома, чуточку поправив прошивку данные можно передавать по RS232 например на ПК используемый как фоторамка-центр управления дома или КПК.
- К стати прошива и исходники нормально скачиваются с англоязычной странички проекта
- Смутно представляю, для чего такая сложность в быту. Самая крутая станция не даст прогноза сравнимого с тем, что дает космическая съемка. Разве что – в походах в такую глушь, где нет ни мобильного ни радио-интернета. И то врядли: все серьезные компании, у которых жизнь может от погоды зависеть, (планеристы, альпинисты) имеют спутниковый навигатор, а значит – и выход на прогноз.
- Так это устройство не дает прогноза, а выводит на экран текущие значения параметров погоды. И основное назначение ее не походное, а, к примеру, измерение параметров в теплице и передача ее в дом. Кстати, начало статьи можно перевести и следующим образом: “Погодная станция с измерением давления, относительной влажности, внутренним и отдаленным наружным измерением температуры” , где не говорится о помещении.
- Схема немного мудреная, но интересная и найдет применение в быту и производстве, для отслеживания параметров помещений, для автоматизации каких-либо процессов.
- Доброе время суток! Укого есть скачанные файлы печатки и прошивки, скиньте, пожалуйста форум ,или на [email protected] . Заранее благодарен!
- Ну,если ,ни у кого нет файлов прошивки и печатной платы, то скажите – какой КРЕТИН удалил все ети файлы?
- Советую успокоиться, такое ощущение, что весь мир Вам по гроб чем-то обязан. См. страницу первоисточника http://www.elxproject.com/elx/news.php?readmore=36
- У меня уже года два такая с беспроводным датчиком температуры и влажности.
- Да нет , никто мне ничем не обязан. За резкость,конечно, извиняюсь – просто был я по етой ссылке.Такое впечатление по етой ссылке создалось,что я, просто категорически обязан зарегиться в Face Book, а ето “сильно” раздражает.Скачать не получилось. Просьба – если укого есть, скачанный архивчик – скинте ,пожалуйста, если не трудно, на форум. Заранее благодарю. P.S Я так думаю, форумы ,кроме основной функции, так же существуюти для того,что бы избавлять людей от подобного геморроя – просмотра дибильной рекламы и принудительной регистрации в соцсетях и.т.д
- Пожалуйста, архив во вложении. Схемы, печатки, исходники, прошивки. Не стоит принимать “близко к сердцу”, но на будущее вам – не стоит сразу ругаться и возмущаться. Я, как и многие форумчане, прекрасно понимают, что вам нужна какая-то инфа, файлы, схемы и возможно даже очень срочно нужны, но не всегда вы это получаете моментально. Я видел вашу просьбу в сообщении от 28.07.2013, но ответить или чем-то помочь до сегодня не мог (может и других пользователь форума похожая ситуация) Если бы админ быстренько не вмешался, то возможно, что в ваш адрес посыпались бы высказывания и слова “определенной направленности”, а дальше “цепная реакция” с ругней, и в итоге обсуждение (тема) разрастается не по делу и остается очень плохое мнение о форуме в целом… Удачи! Если чего, спрашивайте, поможем чем сможем!
- Добрый день VADZZ! Благодарю за архивчик!
Полный вариант обсуждения » |
При перепечатке материалов с сайта прямая ссылка на РадиоЛоцман обязательна.
Приглашаем авторов статей и переводов к публикации материалов на страницах сайта.
Источник: https://www.rlocman.ru/shem/schematics.html?di=54511
Как сделать погодную станцию своими руками
Предлагается методика изготовления погодной станции для дома или дачи. За основу возьмём плату Ардуино и набор сенсоров: температуры, влажности, давления и датчик углекислого газа. Данные будут выводиться на LCD дисплей, а питание осуществляться от блока питания для мобильного телефона или батареек.
В наше время возник призрак энергетического кризиса. Человечество ищет разные ответы на этот вызов, предлагая решение в виде атомной энергии или источников альтернативной энергетики.
Но что они представляют собой? Может ли «обычный» рядовой человек получить возможность наслаждаться плодами технического прогресса, собрав то, что позволит эксплуатировать источники электричества, своими руками? Да, и реализация будет показана в статье на примере ветровой энергии.
Любой турист знает, как важно иметь при себе вдали от цивилизации портативный источник энергии. И если обычные батарейки не отличаются долговечностью, то в ваших силах собственноручно создать «походную» электростанцию. Будьте уверены, такой электрогенератор не займет много места, а пользу принесет ощутимую…
Микроконтроллер ESP32, обладающий возможностями коммуникации по WiFi и Bluetooth, набирает популярность, и на его основе уже создаются различные полезные электронные устройства и оборудование. Его очень высокая (среди микроконтроллеров) вычислительная мощность, потрясающий дополнительный функционал и довольно низкая цена позволяют применять ESP32 в достаточно сложных проектах.
Метеостанция отображает текущую влажность, температуру (внутри и снаружи помещения) и давления. Календарь и часы прилагаются. Удобный пользовательский интерфейс состоящий из трех кнопок.
Диаграмма изменения параметра за 42 часа. Все работает на микроконтроллере PIC 18F452, который находится в спящем режиме. Сенсоры включаются лишь при необходимости.
Звучит неплохо? Оказывается, Вы можете собрать такое устройство своими руками! Как? Читайте дальше…
Подробнее: www.rlocman.ru
ОтветитьУдалитьОтветыТатьяна Пироженко06.04.2015, 10:25У нас пока такие данные
Источник: http://www.chsvu.ru/kak-sdelat-pogodnuyu-stanciyu-svoimi-rukami/
Делаем прототип домашней метеостанции за 10 долларов
Сегодня, чтобы собрать рабочий прототип базовой домашней метеостанции не нужно обладать сильными навыками программирования (в нашем случае и подавно) или схемотехники. Достаточно умения «гуглить» и толики желания сделать что-то своими руками. В этом материале я расскажу и покажу, как за вечер собрать домашнюю метеостанцию с подключением к сети. Базовый бюджет — всего 10 долларов.
Базовый набор комплектующих
Основой нашего будущего устройства является отладочная плата NodeMCU на базе модуля ESP8266. Я взял ее на Gearbest, но при желании вы можете поискать оную и на других площадках.
Стоимость: $3.99
ESP8266 — это микроконтроллер китайского производителя Espressif с интерфейсом Wi-Fi.
Модули на базе этого микроконтроллера в последнее время попросту взорвали DIY сообщество, в первую очередь из-за низкой цены (от 2-х долларов) и легкой доступности.
Используемая нами NodeMCU содержит на борту необходимый для прошивки USB-UART преобразователь и стабилизатор питания, который понижает 5 Вольт от USB-порта до необходимых модулю 3.3 Вольт.
DHT22 — цифровой датчик температуры и влажности. Является вторым необходимым компонентом для создания базового прототипа. Способен измерять температуру в пределах от -40 до 80 градусов по Цельсию с погрешностью в 0.5° и влажность с точностью 2%.
Стоимость: $2.5
Для соединения модулей можно использовать шлейф с BLS-разъемами ($0.9) или беспаечную макетную плату с набором соединительных проводов ($3.74).
Подключение и настройка
Несмотря на доступные 4 вывода, подключается наш датчик всего по 3 проводам: питание +5В (1 вывод), земля (4) и линия передачи данных (2). Питание для датчика берем либо с пина VUSB, либо с 3V, если первого на вашей плате не оказалось. Линию данных подключаем к порту GPIO14 (пин D5).
Напомню, что навыков программирования в нашем случае не нужно абсолютно никаких. Прошивку для модуля будем генерировать с помощью сайта WiFi-IoT.ru, автором которого является Максим Малкин, также известный по проекту домашней автоматизации homes-smart.ru. Для начала попросту регистрируемся на WIFi-IoT и подтверждаем почту.
Перед сборкой прошивки необходимо подготовить приобретенный модуль к работе и очистить его от возможного предустановленного китайского ПО.
Для этого нам понадобится рабочий USB-microUSB кабель и компьютер или виртуальная машина с Windows.
После регистрации на сайте вы попадете на англоязычную страницу «Getting started» с пояснениями по подготовке модуля к работе. Скачивайте файлы с ПО из первых двух пунктов инструкции.
Теоретически, после подключения модуля к компьютеру, Windows должна сама отыскать драйвера и установить их. На случай, если этого не произойдет, попробуйте идентифицировать на плате микросхему (отличается большим количеством «ножек») возле microUSB порта. Вероятнее всего это будут CP2102 или CH340 (драйвера к ним доступны по ссылкам).
После установки драйверов повторно подключаем нашу плату к компьютеру и запускаем программу NodeMCU Flasher, которую скачали ранее.
В выпадающим списке выбираем присвоенный нашему устройству COM-порт. Скорее всего он будет один, в противном случае его номер можно уточнить в диспетчере устройств Windows.
Во вкладке Config указываем расположение загруженного ранее blank-файла с расширением .bin.
Для NodeMCU параметры во вкладке Advanced необходимо выставить в соответствии с нижеприведенным скриншотом, после чего возвращаемся на стартовую страницу и нажимам кнопку Flash. О завершении процесса прошивки программа просигнализирует зеленой галочкой в левом нижнем углу.
После данных манипуляций модуль готов к загрузке прошивки, которую нам еще предстоит скомпоновать. Идем в конструктор и отмечаем необходимые нам пункты:
- «DHT22» — это наш датчик температуры и влажности;
- «Время и NTP» — для отображения времени в веб-интерфейсе;
- «Настройки по умолчанию». Нажимаем шестеренку возле этого пункта и вводим логин и пароль от точки доступа, к которой будет подключен модуль. Остальные пункты пока не трогаем.
Нажимаем клавишу «Скомпилировать» внизу страницы и на выходе получаем готовое к установке ПО. Скачиваем одним файлом.
Далее повторяется процесс с прошивкой blank-файла, только вместо него выбираем уже загруженную на компьютер прошивку. После завершения процесса полностью перезагружаем модуль (отключаем и подключаем заново USB-кабель) и отправляемся в админ-панель роутера в поисках модуля.
Так как мы не использовали предварительное присвоение статического IP, роутер должен сам выдать ему адрес. Напомню, что админ-панель обычно находится по адресу 192.168.0.1 или 192.168.1.1. Моему модулю роутер выдал адрес 192.168.1.142. После перехода по этому IP попадаем в веб-интерфейс нашей метеостанции.
Предварительно необходимо будет ввести стандартный логин «esp8266» и пароль «0000» во всплывающем окне.
Теперь нужно указать модулю к какому порту подключен датчик, чтобы первый смог считывать его показания. Делается это на странице «Hardware». Соответствующей отметкой активируем первый датчик, а в строке GPIO указываем 14-й порт. Произойдет инициализация и на главной странице интерфейса появится отображение температуры и влажности. Ура!
Напоследок не забудьте на странице «Main» изменить пароль для входа в систему и часовой пояс для отображения времени.
Также необходимо перевести модуль на статический IP-адрес (кнопка внизу страницы), чтобы после перезагрузки роутера ваша метеостанция не «потерялась».
Если разбираетесь в настройках своего роутера, то лучше сделать бессрочную аренду IP-адреса для модуля, вместо установки статического IP.
Прототип готов, теперь перейдя по установленному IP-адресу можно посмотреть температуру и влажность в месте, где вы установили датчик.
Подключение метеостанции к сервису метрик Thingspeak.com
Но просто смотреть температуру не интересно. Необходима визуализация данных, чтобы можно было проследить какие-то тенденции в изменении показаний. Для этого регистрируемся в сервисе метрик Thingspeak.com и в своем профиле создаем новый канал.
На открывшееся странице заполняем название канала, отмечаем первых два поля field и записываем туда значения «temp» (первое поле) и «humidity / temp» (второе).
Теперь снова займемся модулем. В конструкторе прошивок в дополнение ко всем предыдущим отметкам добавляем «Thingspeak.com», компилируем прошивку и прошиваем по аналогии. К сожалению, все настройки на модуле придётся произвести заново, т.к. OTA-обновления с сохранением оных доступны только в платной версии ПО (цена вопроса всего 100 рублей на модуль).
Возвращаемся на страницу созданного нами канала в сервисе Thingspeak.com и открываем вкладку «Api Keys». Нам понадобится код из поля «Write Api Key». Его нужно скопировать и вставить в соответствующее поле на странице «Servers» в веб-интерфейсе нашей метеостанции, предварительно не забыв установить отметку на «Enable Thingspeak.com send.».
Показания будут отправляться каждые 5 минут. А выглядеть это в итоге будет следующим образом:
Внешний вид графиков поддается редактированию, так что вы вольны творить!
Источник: https://nnmlab.com/diy-weather-station-getting-started/
ESP32 и Ардуино
19 июня 2017 в 14:12 (МСК) | сохранено19 июня 2017 в 14:24 (МСК)<\p>
Случилось то, чего все так долго ждали и о чём так много говорили — новые модули ESP32 стали широко продаваться и пошли в народ.
Сегодня мы поговорим об этих модулях с точки зрения непрофессионального пользователя, привыкшего работать с Ардуино и создавать небольшие проекты для домашней автоматизации или просто для удовольствия и самообучения.
Работает ли это вообще? Что там с поддержкой этих модулей в Arduino IDE? Стоит ли платить больше или лучше ограничиться ставшим уже привычным ESP8266? Мы постараемся вместе ответить на все эти вопросы, а в конце статьи я дам ссылку на реальное воплощение работы ESP32 с Ардуино — дистрибутив бесплатной версии Arduino Mega Server для платформы ESP32.
Я не буду здесь подробно останавливаться на спецификациях ESP32, вы без труда найдёте их в Интернет: каждый обзорщик считает своим долгом привести простыню спецификаций в начале обзора ESP32. Скажу только, что они впечатляют и если подходить к делу серьёзно и вдумчиво, то можно потратить не один год на изучение всех возможностей модуля и эксперименты с ним. Оставим это профессионалам (или тем, кто считает себя таковым) и сосредоточимся на практической стороне вопроса, понятной и доступной простому смертному. Начнём с цены. На данный момент модуль ESP32 в китайских интернет-магазинах стоит 350 рублей и 500 в варианте платы с обвязкой и USB интерфейсом. Это против 100 и 160 рублей для модуля ESP8266, соответственно. Как видим, разница в три с лишним раза, хотя абсолютные значения невелики, каждый, при желании, может позволить себе потратить 350 — 500 рублей на микроконтроллер. Для сравнения, Arduino Mega 2560 в том же Китае стоит 600 рублей, а в России около 1000 (плюс ещё стоимость Ethernet Shield). Осталось только выяснить, стоит ли платить в три раза больше, чем за ESP8266 и что мы за это получим. (Забегая вперёд скажу, что на мой взгляд, безусловно стоит.) Для того, чтобы что-то сделать с модулем, нужно сначала иметь его поддержку в Arduino IDE. На данный момент поддержка ESP32 в Arduino IDE находится хоть и на начальном, но вполне приличном и работоспособном уровне. Те, кто боится встретить тут непреодолимые трудности, может не беспокоиться — основные функции работают нормально и вы, скорее всего, не заметите никакой разницы по сравнению с работой на других контроллерах. Несколько хуже дела обстоят с драйверами устройств, но это, безусловно, временное явление. Модуль настолько популярен, что поддержка любой периферии неизбежно появится в ближайшее время. Теперь немного практической информации об инсталляции поддержки ESP32 в Arduino IDE. Интернет полон инструкциями на эту тему, вы их также можете в изобилии найти в нём. Замечу только, что все инструкции делятся на «старые», там, где упоминается Python и «новые», где упоминается GIT. Вам, естественно, нужно руководствоваться новыми. Из множества инструкций лучшей можно назвать (как это ни странно) официальную инструкцию от производителя модуля.
github.com/espressif/arduino-esp32
Которой я и рекомендую пользоваться. Единственное замечание: GIT использовать необязательно, можно просто скачать дистрибутив и распаковать его в нужную директорию.
Примечание. Все нижеизложенное касается инсталляции под Windows 7 64-bit, поскольку все эксперименты я производил именно на ней, в других операционных системах пути могут отличаться от указанных.
Файлы дистрибутива должны находиться в папкеC:UsersUserDocumentsArduinohardwareespressifesp32
где C: — это имя вашего диска с Windows, а User — это имя пользователя в операционной системе (и то и другое у вас может отличаться от указанных). Многие пользователи жалуются, что у них ничего не работает и не появляется поддержка ESP32 в Arduino IDE.
Тут дело вот в чём: поскольку драйвера ESP32 только разрабатываются, то несколько изменён порядок расположения системных директорий.
В качестве папки для расположения скетчей в настройках Arduino IDE должна быть указана папкаC:UsersUserDocumentsArduino
(с теми же поправками на диск и имя пользователя), а файлы дистрибутива должны располагаться внутри этой папки так, как рекомендует производитель. Если не будет учтён этот момент, то поддержка ESP32 в Arduino IDE не появится и ничего работать не будет.
Часто приходится слышать, что поддержка ESP32 есть только в последних версиях Arduino IDE, это не так — ESP32 прекрасно работает в более ранних версиях, например, дистрибутив Arduino Mega Server для ESP32 разрабатывался в версии 1.6.5 r2. Теперь поговорим о преимуществах ESP32 перед его предшественником, ESP8266.
На таких очевидных вещах как мощность процессора и объём оперативной памяти я останавливаться не буду, скажу только, что нужно сильно постараться, чтобы загрузить ESP32 полностью на задачах DIY и домашней автоматизации. Ахиллесовой пятой его предшественника, модуля ESP8266, было (и есть) экстремально малое количество выводов.
После работы с такими контроллерами как Arduino Mega и Arduino Due с их десятками цифровых и аналоговых пинов, работа с ESP8266 вызывает недоумение: счёт GPIO идёт буквально на единицы и это сильно ограничивает применение этого модуля в реальных проектах.ESP32 если не полностью, то в значительной степени лишён этого недостатка.
Количество доступных выводов значительно увеличено, появилось также множество аналоговых входов.
Полностью свободными и доступными для использования можно назвать 13 выводовGPIO 2, 4, 12, 14, 13, 15, 16, 17, 25, 25, 27, 32, 33
В случае необходимости к ним можно добавить ограниченно функциональные и работающие только на входGPIO 34, 35, 36, 39
Если пожертвовать некоторыми возможностями и не использовать в конкретных проектах Serial, SPI или I2C, то к этому числу можно добавить ещё 8 пиновGPIO 1, 3, 5, 18, 19, 21, 22, 23
Ну и возможно удастся использовать ещё 6 выводов, которые предназначены для работы с внутренней флеш-памятью (например, если подключить внешнюю SD карту)GPIO 6, 7, 8, 9, 10, 11
Как видим, с ESP8266 нет никакого сравнения — новый модуль выглядит просто отлично по количеству возможных подключений и это очень ценно в реальных проектах, в которых дорог каждый пин. Я уже упоминал мощный процессор, теперь несколько слов нужно сказать о скорости сетевой работы. Я затрудняюсь сказать с чем это связано, возможно с мощным процессором, возможно с оптимизацией сетевого стека, но модуль ESP32 под управлением Arduino Mega Server показал рекордную сетевую производительность.Загрузка страницы с объёмным кодом CSS и JavaScript и обилием графики занимает всего одну с небольшим секунды — быстрее, чем на любом другом протестированном контроллере, включая проводные контроллеры с W5100 и W5500 Ethernet интерфейсом. Применительно к Arduino Mega Server это снимает все ограничения на использование графики и любых JavaScript библиотек как по размеру, так и их количеству. ESP32 это чрезвычайно высокотехнологичное устройство, одно только сухое перечисление доступных возможностей может занять не одну страницу, а перечисление достоинств и возможностей с комментариями займёт целый том. Поэтому я на этом ограничусь, чтобы не загромождать статью и приведу несколько примеров работы с кодом на ESP32 в среде Ардуино.
Это то, что применительно к Arduino Mega мы привыкли называть EEPROM. В ESP32 этой памяти нет как таковой, но у этого модуля есть её аналог и соответствующая библиотека для работы с ней. Называется эта память «NVS» (Non-volatile storage). Но для нас нет никакой разницы — можно точно так же сохранять значения и читать их после выключения и последующего включения контроллера. Пример использования. Подключаем библиотеку:#include
Создаём объект prefsPreferences prefs;
Инициализируем хранилище с идентификатором, например, «nvs»:prefs.begin(“nvs”, false);
false относится в выбору режима чтение/запись, в данном случае и чтение и запись. Сохраняем байт под именем «addr»:prefs.putUChar(“addr”, 65);
Читаем сохранённый байт:byte b = prefs.getUChar(“addr”, 0);
Подобным же образом можно сохранять и читать значения любых других типов данных. Теперь удаляем хранилище.prefs.remove(“nvs”);
Если разобраться, то это даже проще, чем работа со стандартной энергонезависимой памятью EEPROM на контроллерах Ардуино. Ещё одно нововведение, которое может поставить в тупик начинающего пользователя — в ESP32 отсутствует привычная функция AnalogWrite(). В первый момент это очень непривычно, но на самом деле эта функция всего лишь заменена своим более функциональным аналогом. Рассмотрим пример. Начнём с подключения соответствущей библиотеки, хотя библиотекой в полном смысле слова это назвать нельзя, скорее это специализированный файл с описанием нужных функций. Дело в том, что не все функции присутствуют напрямую в Arduino IDE, часть функций доступна в файлах, находящихся в каталоге…DocumentsArduinohardwareespressifesp32coresesp32
В данном случае нас интересует файл работы с ШИМ и светодиодами, который мы подключаем следующей инструкцией:#include “esp32-hal-ledc.h”
Далее нам нужно установить номер канала (0), частоту ШИМ (например, 50 Гц) и разрешение (8 бит).ledcSetup(0, 50, 8);
Номера каналов могут устанавливаться в диапазоне от 0 до 15, а разрешение от 1 до 16 бит. При выборе разрешения 8 бит, диапазон данных, управляющих ШИМ, будет находиться в интервале от 0 до 255. Далее нам нужно привязать наш канал (0) к какому-либо выводу GPIO, в данном случае к выводу 22:ledcAttachPin(22, 0);
И нужно не забыть обычным образом настроить 22-й пин на выход.pinMode(22, OUTPUT);
Всё, теперь мы можем управлять, например, яркостью свечения светодиода, просто указывая номер канала и значение ШИМ (яркости) из диапазона от 0 до 255.ledcWrite(0, 50);
Дистрибутив Arduino Mega Server, ссылку на который я дам в конце статьи, кроме полностью работоспособной системы являет собой обширный сборник структурированного кода, протестированный и проверенный на работоспособность на модуле ESP32. Вы можете его использовать как обучающее пособие для вхождения в тему программирования под ESP32. Arduino Mega Server для ESP8266 имеет подтверждённые аптаймы в несколько месяцев и демонстрирует абсолютно стабильную работу и у меня нет никаких причин думать, что у модуля ESP32 могут быть какие-то проблемы со стабильностью. По крайней мере за всё время создания дистрибутива AMS для ESP32 я не наблюдал ни единого сбоя или несанкционированной перезагрузки модуля. Всё работает очень чётко и предсказуемо. Это ещё один представитель экосистемы AMS, включающей в себя контроллеры и платы Arduino Mega, Due, 101, M0, AMS Home, ESP8266, Sonoff, ESP32, OLIMEX ESP32-EVB и т. д. Благодаря мощному процессору и быстрой сетевой работе модуля ESP32, интерфейс Arduino Mega Server содержит обилие графики и скриптов и это никак не сказывается на скорости его работы — страницы загружается почти мгновенно.Всё работает стабильно и предсказуемо, никаких сбоев или неадекватного поведения системы или модуля не выявлено. Ниже приведён лог загрузки AMS, из которого можно узнать некоторые подробности о системе.Температура модуля, измеряемая встроенным датчиком температуры колеблется от 50 градусов Цельсия при старте до 55 градусов в процессе работы. Во время работы ток потребления модуля составляет около 130 мА.
Не нужно быть особым экспертом, чтобы предсказать, что сейчас как грибы после дождя начнут появляться платы на ESP32 всевозможных форматов и с разнообразным функционалом. Вот одна из первых ласточек OLIMEX ESP32-EVB, очень интересная плата для которой в ближайшее время выйдет специализированный дистрибутив Arduino Mega Server.Вот, собственно и всё, что я могу сказать о новом модуле ESP32 и его работе с Ардуино. Впечатления он оставляет исключительно положительные, мне по крайней мере, было очень приятно и интересно с ним работать. Немного портит картину отсутствие библиотек для поддержки датчиков и периферии, но это временное явление и вскоре с этим всё будет в порядке.
Скачать дистрибутив Arduino Mega Server для ESP32 вы можете на странице загрузки официального сайта, вскоре там появится и соответствующая документация, а пока вы можете воспользоваться краткой инструкцией из файла readme.txt, находящегося в дистрибутиве.
Источник: https://sohabr.net/gt/post/290205/
Домашняя usb метеостанция
Здравствуйте уважаемые друзья сайта “Радиосхемы“! Ещё давно хотел собрать домашнюю метеостанцию, изначально планировалось сделать автономную конструкцию с ЖК индикатором и т.д.
, но когда руки уже почти потянулись к текстолиту, у меня произошла ситуация, верней в одной из компаний в которой я тружусь, а именно, в серверной комнате сломался кондиционер. Последствия могли бы быть очень печальны, если бы мне не понадобилось заехать туда по другим вопросам, но слава богу всё обошлось.
После этой ситуации понял, что идея метеостанции требует срочной реализации, только совсем уже в другом виде. Итак, обо всём по порядку.
Представляемая конструкция – это USB примочка к ПК, которая передаёт данные с датчиков по средствам UART – USB с интервалом 2 секунды, соответственно, на ПК установлена программа, которая помимо обработки и отображения полученных данных передаёт их, при желании, на WEB сервер, зайдя на который можно отслеживать все показания в режиме реального времени и как вы понимаете, находясь в любой точке мира. Блок передаваемых данных выглядит следующим образом:
- +data
- humidity:хх
- tempepature:хх
- pressure:ххх
- -data
Перемычки JP1, JP2, JP3 предназначены для «зануления» определённых значений, то есть при установленной перемычке JP1 значение влажности будет всегда 0, при установленной JP2 значение температуры всегда будет 0 и при JP3 значение давления всегда 0.
Схема самодельной метеостанции
Схема очень проста и по сути состоит из 4 основных компонентов. Это МК, датчик атмосферного давления + температуры, датчик влажности и USB – UART преобразователь.
Сразу скажу, что все компоненты покупал на всем известном электронном аукционе, причём покупал сразу в виде готовых модулей.
Поясню почему готовыми модулями, во первых – цена датчика (или микросхемы) отдельно и цена модуля ничем практически не отличается, во вторых – готовый модуль уже имеет всю необходимую обвязку, такую как подтягивающие резисторы, стабилизаторы и прочее, в третьих – это намного упрощает конструкцию, а соответственно и её реализацию. Теперь немного о каждом модуле по отдельности.
Датчик давления и температуры
Потрясающий во всех отношениях датчик атмосферного давления и температуры BMP180.
Несмотря на свои крошечные размеры, этот датчик позволяет выдавать удивительно точные показания, как температуры, так и атмосферного давления. Сам датчик имеет размеры ~3х3 мм, готовый модуль ~10х13 мм, питание датчика 3.3 вольта, поэтому на платке имеется стабилизатор. Интерфейс I2C.
Датчик влажности DHT11
DHT11 является датчиком влажности + температуры, довольно хорош в своей ценовой категории. Но есть небольшой минус, это – точность.
Если погрешность по влажности вполне в пределах нормы, то с показаниями температуры всё не так хорошо, но нам и не нужны его данные по температуре т.к. температуру будем брать с BMP180.
Штыри на модуле перепаяны на прямые, изначально модуль идёт с угловыми штырьками и к тому же они припаяны с другой стороны.
USB – UART преобразователь
Вообще микросхем и готовых USB – UART преобразователей огромное количество, я остановился на этом. Данный модуль работает на микросхеме FT232RL, а вот изготовитель этой микросхемы далеко не FTDI как заявлено на корпусе этой микросхемы, проще говоря, используемая микросхема – это китайская подделка.
Но в этом нет ничего страшного, за исключением того, что компания FTDI решила бороться с подделками очень хитрым способом, они выпустили драйвера, которые затирают ID микросхемы на не оригинальных чипах, после чего подделка перестаёт работать.
Для того чтобы этого не случилось – достаточно использовать драйвера НЕ ВЫШЕ версии 2.08.14 и тогда никаких проблем не будет, разницы в работе не оригинала вы не заметите.
Если всё же это случилось и устройство перестало правильно определяться в диспетчере устройств, то ничего не потеряно, в любом поисковике вы найдёте решение этой проблемы за 5 минут, на этом я не буду останавливаться.
Для своих целей, мне пришлось немного допилить модуль, перепаяв на нём штырьки, с угловых на прямые, и с прямых на угловые.
Сделать это не повредив ПП достаточно просто, сначала необходимо тонкими кусачками разделить пластиковые втулочки между штырями, после чего выпаять по отдельности каждый штырь вместе с втулкой, затем убрав лишний припой – впаять уже нужные штыри с нужной стороны. Прошивать МК нужно вот с такими фюзами:
После того, как все модули будут допилены и готовы, можно приступать к сборке. Печатная плата в моём варианте имеет итоговый размер 45 х 58 мм, делал фоторезистивным способом, хотя в виду простоты – лут здесь тоже актуален. Все файлы для платы и прошивки скачайте в общем архиве.
Весь набор необходимых компонентов для устройства.
Сборка метеостанции
Сборка прибора заняла пол часа, после чего был уже вполне работоспособный вариант устройства.
Теперь поделюсь своими секретами.
После того, как монтаж ПП закончен, я делаю следующее: смываю все остатки флюса и мусора обычным растворителем, после чего купленной для этих целей зубной щеткой очищаю поверхность от волокон, застрявших между точками пайки в результате отмывки, затем перехожу к следующему процессу- покрытие лаком «медной» стороны ПП. Для этого, сначала, в листе бумаги прорезаю окно по размеру ПП, после чего изолентой приклеиваю ПП к этому листу, как показано на рисунке.
Следующий этап – это нанесение лака, для этого использую обычный, автомобильный аэрозольный лак, который используют для тонирования фар и прочего, стоит такой баллон около 150 рублей, продаётся в любом автомагазине. После высыхания получаю вот такой результат.
Всё, все этапы сборки метеостанции закончены, можно отклеивать бумагу.
А вот и готовый, полностью рабочий вариант устройства.
Подытожу касаемо аппаратной части. Стоимость готового устройства, не считая текстолита и расходных материалов, используемых для изготовления и монтажа ПП, составила около 500 рублей.
Программа
Теперь от аппаратной части к программной. Программа состоит из одного исполняемого exe файла. При первом запуске, программа будет пошагово «просить» произвести необходимые настройки, сначала происходит инициализация COM порта, программа выдаст вот такое окно:
Кроме номера порта, в настройках ничего менять не надо! После выбора порта, необходимо нажать кнопку «повторить попытку» в стартовом окне программы. Следующим этапом программа «попросит» произвести «рабочие» настройки.
Здесь указываются оптимальные границы показаний с датчиков, эти значения влияют на графическое отображение значений в основном окне программы, красная стрелка вверх означает завышенное значение, вниз – заниженное и зелёная галочка – в норме соответственно.
Что касается оптимальной границы давления, то как таковой её нет, это значение зависит от географических координат вашего города, а верней высоты, на которой расположен ваш город относительно уровня моря, проще всего границы атмосферного давления можно взять из таблицы высот или методом наблюдения.
По желанию можете указать вариант запуска программы (свёрнутый/ не свёрнутый режим). Есть ещё один раздел – это логин, пароль, частота отправки и галочка разрешить отправку данных на WEB сервер. Здесь немного подробней.
Эта настройка, при желании, разрешает отправку значений температуры, влажности и давления на глобальный WEB сервер meteolk.
ru – это ресурс созданный специально под этот проект, по сути это просто личный кабинет, где содержится вся информация полученная метеостанцией и ничего кроме этого.
Для того чтобы можно было пользоваться этим ресурсом необходимо сначала зарегистрироваться для возможности дальнейшей идентификации пользователя, для этого просто заходите на сайт и нажимаете «Регистрация». Так сказать пользуйтесь на здоровье, мне не жалко. На странице регистрации указываете имя, логин и пароль.
Всё, на этом регистрация закончена, и учётные данные можно указывать в программе. Это можно сделать и позже, перейдя в настройки через «Меню», не обязательно при первом запуске.
После того как будут произведены все настройки, нажимаете сохранить и в окне запуска программы нажимаете кнопку «повторить попытку».
Если всё нормально, то программа запуститься и появится основное окно, после этого создадутся файлы настроек и при последующих запусках, никаких настроек производить уже будет не нужно.
В меню «дополнительно» есть опция «считать данные с контроллера», здесь поясню.
Каждые пол часа в оперативку микроконтроллера записываются значения температуры, влажности и давления, всего таких записей может быть 100, если получилось так, что программа не была запущена и вам нужно посмотреть статистику, то при помощи этой опции можно посмотреть данные, это 2-е суток, если таковые есть конечно.
При помощи «стереть данные МК» вся собранная ранее статистика и хранящаяся в оперативке – затирается. Помимо текущих, отображаемых значений, есть ещё значения «макс.» и «мин.», это максимальные и минимальные значения, которые были зарегистрированы за время работы программы.
С программой всё, на остальных менюшках не буду останавливаться, думаю, что и так всё интуитивно понятно. Вернусь немного к личному кабинету. После регистрации, можно зайти под своей записью, кстати, можно также зайти под логином «test» и паролем «test», это ради ознакомления. Если у вас есть данные, то вы увидите вот такое окно:
При желании, данные можно посмотреть в графическом варианте, в виде графиков.
Источник: http://radioskot.ru/publ/izmeriteli/domashnjaja_usb_meteostancija/15-1-0-962