ESP8266: отправка температуры на Народный мониторинг. Бюджетный вариант.

Тема в разделе "Глядите, что я сделал", создана пользователем ИгорьК, 3 мар 2015.

  1. ИгорьК

    ИгорьК Гуру

    UPD!!! Есть перспективнее вариант, идем сюда, если есть лишняя ESP32.
    =================================
    NEW!!!! Теперь и DHT-11 тоже! Дорогу высокоточным датчикам!

    Как получить и залить прошивку NodeMCU - здесь.
    Версия 2 - здесь. Но перед тем идти к ней изучите все что касается первой. Иначе будут вопросы.
    Версия для одного датчика для батареек и готовая прошивка NodeMCU - здесь.

    Версия 3 от 06.02.2018 - здесь.

    По традиции, как это выглядит. Видео - работают три датчика DS18B20:


    Фото. Народный мониторинг подтвердил прием:
    eps826602.png
    И как это выглядит на макетке:
    esp826603.jpg

    narod005.jpg

    А также, для этого устройства получаем код здесь.

    upload_2018-2-7_16-45-5.png
     
    Последнее редактирование: 10 июл 2018
    jn007, Kewralza15, aliaksandr и 4 другим нравится это.
  2. ИгорьК

    ИгорьК Гуру

    UPD 26.02.2016. Новая версия здесь.

    UPD 24.05.2016. Версия от батарейки для одного DS18b20 - здесь.

    Некоторые пояснения.
    Проект 100% рабочий и может тиражироваться вами по своему усмотрению.
    Почему он сделан (март 2015 г.).
    1. esp8266 будет снабжать информацией центральный процессор дома из других мест - вместо Народного Мониторинга без проблем можно загонять информацию в Arduino Yun. UPD 13.10.2015 - а еще лучше - в OpenHab.
    2. давно хотел сделать реально недорогой вариант. Дорогие уже были: раз, два, три. Сейчас, мне кажется, дешевле уже сделать не возможно, да? ;)
    3. как альтернатива вот этому безумному явлению.
    4. "Пацан сказал - пацан сделал".​
    При небольшой доработке код может вырубать устройство на необходимое время и периодически будить его для работы от батареек.
    Устройство работает с любым количеством датчиков DS18B20. Я использую три, для контроля улицы, дома и системы отопления.
    Датчики висят на gpio2 с подтяжкой к плюсу через резистор 4.7 ком.
    Обращаю внимание, что библиотечный файл ds18b20.lua лучше использовать мой. Там исправлена одна строчка. Тот что на официальном сайте отлично работает с одним датчиком, но не видит много. (Убил сутки, чтобы понять причину). В общем, все в одном архиве.
    Не забудьте в файле NarodMonFinal.lua найти строчку local dataN = "#ХХ-ХХ-ХХ-ХХ-ХХ-ХХ\n" и заменить буквы Х... на свои уникальные цифры, иначе ничего не получится.

    UPD.
    Ниже для новых прошивок неактуально. См. Комментарий к прошивкам.
    A еще не забудьте, в ручном режиме выполнить в окне ESPlorera перед загрузкой всего этого выполнить такие команды:
    Код (Lua):
    wifi.setmode(wifi.STATION)
    wifi.sta.config("НазваниеВашейСети","ВашПароль")
    wifi.sta.autoconnect(1)
    После всего этого в правом окошке ESPlorer наблюдаем ответы Народного Мониторинга.

    Вид устройства - проще не куда:
    00002.jpg
    00001.jpg
    ======================
    Опс... родная библиотека отрицательную температуру не знает. Надо поправить.
     

    Вложения:

    • final.zip
      Размер файла:
      2,1 КБ
      Просмотров:
      1.529
    Последнее редактирование: 12 янв 2018
    Dmiyriy, Securbond, Aleksander и 5 другим нравится это.
  3. ИгорьК

    ИгорьК Гуру

    UPD 15.03.2015. Библиотека DS18B20, которой известно больше о температурах в России, чем оригинальной. Приношу извинения за прошлую библиотеку - поверил без полевых испытаний одному уважаемому человеку.
    Оттестировано в морозилке кухонного холодильника :)
    Проверка библиотеки: температура в морозилке и над батареей отопления.
    2233144.jpg
     

    Вложения:

    Последнее редактирование: 15 ноя 2016
    Kewralza15, rico и glory24 нравится это.
  4. dolphin88od

    dolphin88od Нуб

    Повторил опыт! Спасибо!
     
  5. Recoshet

    Recoshet Нерд

    Повторил проект. Пока что работает http://narodmon.ru/10539
    [​IMG]
    [​IMG]
    [​IMG]
    [​IMG]
    Поместил текущую температуру в шапку своего сайта, http://naviris.ru/ Достаёт по API с народного мониторинга :)
     
  6. ИгорьК

    ИгорьК Гуру

    UPD 15/02/2016.
    Со времени создания этой ветки в NodeMCU произошли некоторые изменения, а именно - основной способ получения прошивки теперь - компиляция на сайте.
    Что нужно сделать.
    1. Перейти по адресу http://nodemcu-build.com/index.php
    2. Заполнить вначале дважды поле адреса своей почты.
    3. Промотать страничку ниже и составить такую картинку:
    32453245324.jpg
    Именно такую. Это важно.
    4. Еще ниже нажать на кнопку:
    2255.jpg
    5. Получить на почту ссылку на прошивку. Их придет две. Ваша - там где в названии присутствует слово "float".
    6. Со странички https://github.com/nodemcu/nodemcu-flasher скачать флашер в соответствии с операционкой.
    7. Запустить флашер, и во второй вкладке в первом поле выбрать полученный файл для загрузки в модуль.
    78643.jpg
    8. Нажать на кнопку Flash на первой страничке.
    67u4.jpg

    UPD. А если начинаются бешеные мигания светодиода - идем сюда!
     
    Последнее редактирование: 2 дек 2016
    rico и Securbond нравится это.
  7. modex

    modex Нерд

    Понравился ваш вариант, но не получается реалиовать. Я новичок в этих делах, прошу помощи :)

    Модуль esp-01
    VCC соединен с CH_PD
    Питание подается через 1117

    Модуль вроде как включается, один раз моргнет синий диод при включении и все, красный горит постоянно.
    В wi-fi, точка доступа не появляется.

    Подключаю к CP2102 UART TTL, схему подключения прикрепил ниже. RX и TX пробовал менять местами, и GPIO0 c GDN тоже пробовал убирать.
    Через ESPlorer не подключается к модулю, скорость выбирал 9600 и 115200.

    После чередований с RX\TX и GPIO0 на GDN, при попытке подключения через ESPlorer каким-то образом удалось заставить модуль моргать синим диодиком, но на этом дальше не пошло.

    Что делаю не так?
     

    Вложения:

    • 36zTLeIL38k.jpg
      36zTLeIL38k.jpg
      Размер файла:
      30,3 КБ
      Просмотров:
      2.604
  8. yucan

    yucan Гик

    У меня тоже не получается...Но точка доступа WI-FI появляется, в безопасном режиме. Подключиться к ней с ноута не могу никак .
     
  9. yucan

    yucan Гик

    Схема подключения правильная, я тоже так подключал при прошивке модуля. GPIO0 на GDN, VCC на CH_PD.
    После удачной прошивки GPIO0 отключаю от GDN, rx-tx соединяю вместе. Появляется точка доступа ""HomesSmart".
     
  10. modex

    modex Нерд

    Мне не удается даже подключиться к модулю, не говорю уже о прошивке :)

    Попробую питание от батарейки (18650) сделать, может в этом дело. Еще читал, рекомендуют электролит по питанию ставить, я этого не делал, не думаю что это такая важная деталь, без которой устройство вообще не работает.
     
  11. yucan

    yucan Гик

    У меня от батареек (3в) тоже модуль не работал. Только 1117 на 3.3 в. С электролитом 470 мк на выходе.
     
  12. yucan

    yucan Гик

    Я свой модуль, когда он только пришёл, сразу же проверил АТ-командами программой CoolTermWin. Только потом прошил.
     
  13. modex

    modex Нерд

    Подключил батарейку 3,7v (18650) и на 117 к выходу припаял конденсатор 100uf 25v. После этого удалось законектиться к нему и даже прошить!

    Дальше не знаю что делать :D
    Прошил nodemcu-master-10-modules-2016-02-19-07-24-10-float.bin, сделал как было сказано постом выше от Игоря (15/02/2016).
    Пытаюсь снова подключиться к нему, пишет "Can't autodetect firmware, because proper answer not received". При нажатии кнопки Chip Info - информацию не выдает, до прошивки выдавало.
    Как дальше действовать, как скрипт залить?



    UPD: Все получилось, команды отправил, скрипты разобрался как залить! К роутеру законектился, народмон увидел! Осталось датчик температуры приделать и будем тестить. Надеюсь будет все успешно и я доделаю независимую станцию (на батарейках, солнечной панели и карманным вифи модемом) и увезу на дачу.

    yucan, спасибо за поддержку! ;)

    Еще забыл, как сделать чтобы он просыпался, отправлял данные и дальше спать уходил, чтоб батарейку не жрал ?
     
    Последнее редактирование: 20 фев 2016
    ИгорьК нравится это.
  14. yucan

    yucan Гик

    Я до этого не дошёл. У меня ноут не хочет подключаться к точке доступа.
     
  15. ИгорьК

    ИгорьК Гуру

    Знали, но забыли? Круто! :)
     
  16. modex

    modex Нерд

    Да где-то попадалось :D
    С чипа на какую-то ножку нужно протянуть :)
    Получается, если кинуть перемычку, то он будет спать и больше ничего паять\программировать не нужно?

    В продолжение плясок:
    Датчик припаял, показывает комнатную температуру, народмон видит. Выкидываю сенсор за окно (сейчас -7 на улице), вылетает ошибка, народмон пишет что датчик повреждет. Исправленный файл из второго поста естественно загружен.
    Что за ерунда?

    UPD: вроде пошло дело, минус начал показывать.
    Есть такой еще недочет. После подачи питания, он сразу пытается отправить данные, но самих показаний видимо считать еще не успевает, по этому только со второго раза на народмоне появляются показания.
     
    Последнее редактирование: 20 фев 2016
  17. ИгорьК

    ИгорьК Гуру

    Типа да. Ну и еще кое-что в коде изменить.
    Таки да. Но... Это мой первый проект. Самый. Сейчас кое-что бы изменил, безусловно.
    Если это сильно напрягает - могу изменить код. Единственно, в железе реализовать и оттестировать нет возможности да и желания. Сейчас все по-другому. А выставлять мной лично не проверенный код не привык.
     
  18. yucan

    yucan Гик

    Тоже переключился на этот проект. С "HomesSmart" не получается никак. Скачал с сайта откомпилированную прошивку, прошил ESP-01 модуль. Теперь дело дошло до скрипта - вообще тупик. Понимаю, что нужно с помощью ESPlorera загнать - не пойму как. Как работать с этой программой и где сам скрипт?
     
  19. ИгорьК

    ИгорьК Гуру

    ...понимаю, что нужно писать тему про ESP8266 для начинающих...
     
  20. ИгорьК

    ИгорьК Гуру

    Попробуйте посмотреть эту тему: http://forum.amperka.ru/threads/Все-тот-же-esp8266.7480/