Делаем прототип домашней метеостанции за 10 долларов

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Обзор | Комфортный дом и бытовая техника

Сегодня, чтобы собрать рабочий прототип базовой домашней метеостанции не нужно обладать сильными навыками программирования (в нашем случае и подавно) или схемотехники. Достаточно умения «гуглить» и толики желания сделать что-то своими руками. В этом материале я расскажу и покажу, как за вечер собрать домашнюю метеостанцию с подключением к сети. Базовый бюджет — всего 10 долларов. 

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


Базовый набор комплектующих

Основой нашего будущего устройства является отладочная плата NodeMCU на базе модуля ESP8266. Я взял ее на Gearbest, но при желании вы можете поискать оную и на других площадках. 


Стоимость: $3.99


16

ESP8266 — это микроконтроллер китайского производителя Espressif с интерфейсом Wi-Fi. Модули на базе этого микроконтроллера в последнее время попросту взорвали DIY сообщество, в первую очередь из-за низкой цены (от 2-х долларов) и легкой доступности. Используемая нами NodeMCU содержит на борту необходимый для прошивки USB-UART преобразователь и стабилизатор питания, который понижает 5 Вольт от USB-порта до необходимых модулю 3.3 Вольт. 


DHT22 — цифровой датчик температуры и влажности. Является вторым необходимым компонентом для создания базового прототипа. Способен измерять температуру в пределах от -40 до 80 градусов по Цельсию с погрешностью в 0.5° и влажность с точностью 2%. 


Стоимость: $2.5


23

Для соединения модулей можно использовать шлейф с 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" с пояснениями по подготовке модуля к работе. Скачивайте файлы с ПО из первых двух пунктов инструкции. 


Снимок экрана 2016-07-26 в 21.35.58

Теоретически, после подключения модуля к компьютеру, Windows должна сама отыскать драйвера и установить их. На случай, если этого не произойдет, попробуйте идентифицировать на плате микросхему (отличается большим количеством «ножек») возле microUSB порта. Вероятнее всего это будут CP2102 или CH340 (драйвера к ним доступны по ссылкам).


После установки драйверов повторно подключаем нашу плату к компьютеру и запускаем программу NodeMCU Flasher, которую скачали ранее. В выпадающим списке выбираем присвоенный нашему устройству COM-порт. Скорее всего он будет один, в противном случае его номер можно уточнить в диспетчере устройств Windows. Во вкладке Config указываем расположение загруженного ранее blank-файла с расширением .bin. 



Для NodeMCU параметры во вкладке Advanced необходимо выставить в соответствии с нижеприведенным скриншотом, после чего возвращаемся на стартовую страницу и нажимам кнопку Flash. О завершении процесса прошивки программа просигнализирует зеленой галочкой в левом нижнем углу. 



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


  • «DHT22» — это наш датчик температуры и влажности;
  • «Время и NTP» — для отображения времени в веб-интерфейсе;
  • «Настройки по умолчанию». Нажимаем шестеренку возле этого пункта и вводим логин и пароль от точки доступа, к которой будет подключен модуль. Остальные пункты пока не трогаем.

Нажимаем клавишу «Скомпилировать» внизу страницы и на выходе получаем готовое к установке ПО. Скачиваем одним файлом.


5

Далее повторяется процесс с прошивкой 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 и в своем профиле создаем новый канал. 


10

На открывшееся странице заполняем название канала, отмечаем первых два поля field и записываем туда значения «temp» (первое поле) и «humidity / temp» (второе).


Теперь снова займемся модулем. В конструкторе прошивок в дополнение ко всем предыдущим отметкам добавляем «Thingspeak.com», компилируем прошивку и прошиваем по аналогии. К сожалению, все настройки на модуле придётся произвести заново, т.к. OTA-обновления с сохранением оных доступны только в платной версии ПО (цена вопроса всего 100 рублей на модуль). 


Возвращаемся на страницу созданного нами канала в сервисе Thingspeak.com и открываем вкладку «Api Keys». Нам понадобится код из поля «Write Api Key». Его нужно скопировать и вставить в соответствующее поле на странице «Servers» в веб-интерфейсе нашей метеостанции, предварительно не забыв установить отметку на «Enable Thingspeak.com send.». 


Показания будут отправляться каждые 5 минут. А выглядеть это в итоге будет следующим образом:


Внешний вид графиков поддается редактированию, так что вы вольны творить! :)


Итоги

5

Наверное кто-то спросит: «Почему итоговый результат отличается от представленного на приведенной выше и заглавной картинках?». Как минимум потому, что информации в этом материале новичкам в теме точно хватит на вечер-другой, а подключение дисплея и барометра потребуют наличия базовых навыков пайки и соответствующего оборудования. Если вы заинтересованы в дальнейшем совершенствовании метеостанции и моих заметках по этой теме, то обязательно напишите об этом в комментариях. Советую также периодически заглядывать в мой личный блог, где, возможно, материалы по данной тематике будут появляться раньше.

Автор не входит в состав редакции iXBT.com (подробнее »)
Об авторе
Geek. Дружу с электроникой и паяльником. Люблю гаджеты и пишу о них.

8 комментариев

На связи
Интересно как все это можно на GSM посадить минимальной ценой.
Заинтересован удаленно мониторить параметры среды в некоторых точках (не дома) и писать логи.
Есть ли подобные модули сразу с SIM картой и соединением данных?
Применять относительно дорогостоящие роутеры 3G-Wi-Fi не хочется.
Какое есть дешевое решение?
fragik
Конструктор прошивок GSM-модули поддерживает. Цена вопроса — 6 долларов, подключение максимально простое. А вот в возможностях уже нужно разбираться. 
B
судя по интерфейсу у автора Windows 95 или Win3.1?
fragik
Это вы по какому скриншоту определили? 
100002010397581@facebook
Спасибо, но я купил себе метеостанцию за 320 р. и не парюсь. Ну, если захочется поиграться в «сделай сам», возьму на заметку, спасибо
5511637@vkontakte
Вы меня конечно простите, но статья полна туфта, в принципе это что- то вроде «подцепили пару датчиков, привязали вифи модуль- крутяк».
Вот теперь давайте разберём.
Какой смысл от метеостанции, если она всецело зависит от внешних ресурсов, таких как вифи? Ну как вы себе представляете мониторить показания, например, в гараже. Ну вот нужно мне, я туда роутер должен поставить? Смешно, не так ли?Во вторых,10$ говорите? Хорошо, модуль стоит сейчас 360 рублей т.е. допустим 5$, датчик DHT порядка 170 рублей т.е. 2.5$, на картинке (первой) вижу значения давления, значит ещё датчик давления, пусть будет BMP180- 260 рублей (3$), индикатор, мелочёвка… Короче далеко не 10$, пусть не критично от 10, но не 10 уж явно. Но не суть, суть в том, что ЗАЧЕМ такая конструкция?!?!?  
Примерно 1,5  минуты гугления меня сразу же вывели на вполне вменяемые решения, например вот: http://radiokot.ru/circuit/digital/home/214/ и статистика тебе с датчиков и охрана и всё что хочешь, т.е. как бы люди лисапед уже придумали. Я не спорю, идея правильная, но реализация, как бы… Поэтому, не задеть или оскорбить, нет, не в коем случае, просто развивайтесь, думайте наперёд, ну и всего доброго! 

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

Сейчас на главной

Новости

Публикации

Подложка под ламинат: как правильно выбрать типы и варианты для разных нужд

Ламинат давно занял своё место в рядах популярных напольных покрытий благодаря своей привлекательности, долговечности и простоте укладки. Однако мало кто знает, что истинный потенциал ламината...

«Неубиваемый» SLIM: японский модуль бросает вызов лунной ночи (и побеждает!)

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

Можно ли использовать воду вместо воздуха в автомобильных шинах?

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

Как выбрать карту памяти для вашего смартфона или другой техники

Если вы уже принялись выбирать карту памяти для вашего смартфона или другой техники, то, наверное, обратили внимание, что выбор довольно широкий, и речь не только об объёме памяти. Ещё следует...

Безопасная езда: новые дорожные знаки, которые скоро появятся на дорогах

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

Хлеб из мух: новый суперфуд или маркетинговый ход?

Пищевая промышленность постоянно находится в поиске новых источников белка, и в последнее время внимание приковано к нетрадиционным вариантам. Одним из таких вариантов являются насекомые, а именно,...