Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam

Топ прошлой недели

  • Oskanov Oskanov 8 постов
  • alekseyJHL alekseyJHL 6 постов
  • XpyMy XpyMy 1 пост
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Новости Пикабу Помощь Кодекс Пикабу Реклама О компании
Команда Пикабу Награды Контакты О проекте Зал славы
Промокоды Скидки Работа Курсы Блоги
Купоны Biggeek Купоны AliExpress Купоны М.Видео Купоны YandexTravel Купоны Lamoda
Мобильное приложение

Nodemcu

С этим тегом используют

Arduino Esp8266 Своими руками Все
54 поста сначала свежее
107
return.true
8 лет назад
Arduino & Pi

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01⁠⁠

Подключение ESP-01 к компьютеру

Подключение ESP-01 к компьютеру происходит несколько сложнее, нежели чем знакомые всем arduino. Повторюсь, если бы у меня не было чипа ESP-01 в хозяйстве, то надо выбирать уже готовые наборы с необходимой “обвязкой” на борту. Для того чтобы подключить ESP-01 к компьютеру нам потребуется USB-TTL адаптер, макетная плата и набор проводов папа-мама для макетной платы. Также, немаловажную роль играет источник питания. В самом начале своих экспериментов я не придал этому значения, и есп-ха постоянно перезагружалась, переставала отвечать на команды. В общем, обязательно используйте отдельный источник питания.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

На фото изображен USB-TTL адаптер на чипе CH340. Обратите внимание на перемычку, с помощью неё выбирается рабочее напряжение. Нам нужно 3.3V

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Макетная плата с DC-DC преобразователем. К косе проводов уходящих направо подключалась ESP.

Настоятельно рекомендую для подключения ESP-01 к макетной плате использовать специальный адаптер, ищется на али по запросу Breadboard Adapter for ESP-01. Он показан на следующем фото. Он позволит вам стабильно воткнуть ESP в макетную плату, чтобы ничего не болталось на проводах. Плюс, что еще немаловажно на этом адаптере распаян конденсатор на 0.1µF для сглаживания питания. В дальнейшем его можно использовать и в готовом девайсе, чтобы иметь возможность быстро вытащить-заменить чип.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Breadboard Adapter for ESP-01 очень сильно облегчит подключение чипа к макетной плате. У меня такого в момент сборки девайса не было.

Вот моя схема подключения. Честно стырена с просторов инета, единственное я добавил емкость на 10µF в разрыв кнопки RST. А то, там толи дребезг кнопки был, толи хз.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

«Напрямую» к питанию подключается только вывод VCC, остальные выводы: CH_PD, RESET, GPIO0, GPIO2, должны быть подтянуты к питанию (VCC) через резистор от 4,7 до 50 кОм. «Напрямую», к минусу (общему проводу) питания подключаем только GND, а GPIO0 подтягиваем (pulldown) тоже через резистор до 10k к GND для перевода модуль в режим загрузки прошивки. Об этом немного позже. Далее подключаем:

ESP8266 — RX ---> USB-TTL — TX,

ESP8266 — TX, ---> USB-TTL — RX.

Уже на этом этапе можно подать питание на схему, и убедиться что ничего не сгорело. При успешном старте заводской прошивки на модуле ESP8266 загорится красный светодиод (индикатор питания, на некоторых версиях модуля, например ESP-12, может отсутствовать) и пару раз мигнет синий (это индикатор передачи данных от модуля к терминалу по линии TX-RX, может иметь другой цвет).

Проверка подключения и прошивка

Для работы с esp мы будем использовать широко распространенную в узких кругах ESPlorer https://esp8266.ru/esplorer/#download Программа написана на java и будет без проблем работать под разными платформами (win, linux mac)


Подадим питание на модуль, запустим программу, выбираем нужный COM порт, и нажимаем open, и перезагрузим модуль. После этого в окне терминала мы увидим мусор из символов (из-за разных скоростей передачи) , а потом что-то типа:

wdt reset

load 0x40100000, len 25052, room 16

tail 12

chksum 0x0b

Это означает что модуль успешно стартует на стоковой прошивке и у вас есть с ним связь.


Отложим пока ESPlorer в сторону, он понадобится нам позже. Самое время прошить в наш модуль прошивку NodeMCU. Я выбрал эту прошивку по нескольким причинам: для обновления работы скриптов больше не нужно переводить модуль в режим прошивки, и нажимать кнопки на макетке (у меня все это дело немного глючило на макете) , возможность использовать готовые модули, наличие хорошей документации к API. Ссылка на документацию: https://nodemcu.readthedocs.io/en/master/


Благодаря сервису https://nodemcu-build.com/ мы можем собрать собственную версию прошивки только с теми модулями, которые нам нужны. Чем меньше модулей будет в прошивке, тем больше места останется для ваших данных и скриптов.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Заполняем email, ставим галочки на те модули что нам понадобятся, а именно: bit, CJSON, file, GPIO, HTTP, I²C, net, node, 1-Wire, timer, UART, WiFi и нажимаем Start Your Build.

Пока выполняется билд скачаем программу для прошивки. Если у вас не windows, то есть другие инструменты, например esptool, я использовал nodemcu-flasher https://github.com/nodemcu/nodemcu-flasher Скачиваем билд в зависимости от вашей операционной системы.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Проверяем почту, нам придет письмо с ссылками для скачивания нашей прошивки.

Примерно так будет выглядеть письмо. Скачиваем файл прошивки, нам нужна integer версия.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Теперь запускаем ESP8266Flasher.exe, переходим на вкладку Config, в первую строчку добавляем наш файл.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Переходим на вкладку Operation, перезагружаем нашу ESP-01 в режим прошивки таким образом: зажимаем кнопку FLASH и нажимаем RESET, отпускаем FLASH. Нажимаем Flash.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Если все прошилось успешно, ура-ура! Осталось совсем немного.

Теперь открываем ESPlorer, в правой части выбираем нужный порт, нажимаем Open и перезагружаем модуль нажав на кнопку RESET. Вы должны увидеть в терминале что-то похожее.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Пишем логику работы датчика

Логика работы датчика очень проста: после загрузки подключаемся к wi-fi точке, получаем ip-адрес. Один раз в минуту считываем показания и отправляем их в облако. Помимо этого создаем на 80 порту веб-сервер, обратившись к которому можно получить JSON с текущим значением температуры.

Дело за малым, создаем новый файлы, копируем в них содержимое и сохраняем в ESP, - Save to ESP. Прошивка NodeMCU предоставляет нам некий аналог файловой системы, можно сохранять, удалять файлы на ESP как на любой флэшке. При этом не требуется переводить модуль в режим прошивки, можно даже сделать обновление прошивки по воздуху.

Несколько слов отдельно стоит сказать про файл init.lua Именно он начинает исполнятся после загрузки модуля, и уже из него вызываются все остальные файлы на исполнение.

Точка-доступа и пароль задаются в этой строчке:

wifi.sta.config("YOUR_SSID_NAME", "YOUR_PASSWORD")

Вместо YOUR_SSID_NAME и YOUR_PASSWORD необходимо указать имя точки-доступа и пароль от неё. В моем случае настройки приходят с роутера по DHCP, поэтому ip-адрес здесь не указывается. В настройках роутера я закрепил за есп постоянный адрес.

Для сохранения данных мы будем использовать сервис https://thingspeak.com/

Там необходимо зарегистрироваться и создать канал. В один канал можно записывать сразу несколько показателей, например если помимо температуры мы бы измеряли влажность или что-то еще. Переходим на страницу API Keys и копируем оттуда Write API Key. Этот ключ необходимо вставить в файл application.lua на строчке 36 вместе YOUR_API_KEY

http.get("http://api.thingspeak.com/update?api_key=YOUR_API_KEY&fi..."..t, nil, function(code, data)

Также не забываем загрузить файл ds18b20.lua, в нем содержится логика для работы с датчикам DS18B20. Т.к. прошивку мы взяли integer, а температура является float числом, я этот файлик вероломно поправил для того, чтобы в результате работы возвращалась строка, но с разделителем точкой, как будто у нас есть поддержка работы с дробными числами.

Можно протестировать устройство, подключив датчик через макетную плату.

Вот принципиальная схема устройства, накидал быстренько.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост
Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

После включения устройства у вас в канале на thingspeak должны появиться данные, а также вы должны смочь зайти на ip-адрес, который назначился вашей esp в браузере и увидеть примерно следующее:

{

"sensor-name": "balcony",

"temperature": 20.7500,

"chipID": 170827,

"espMac": "5c:cf:7f:02:9b:4b",

"espIp": "192.168.20.38",

"heap": 32040,

"timerTicks": 835632668

}

Формат выдачи данных вы можете поменять самостоятельно поправив файл application.lua

Финальная сборка устройства

Я запаял все на макетной плате под пайку, такой зеленой, с отверстиями. Стабилизатор питания отдельный, на AMS1117. Питается сейчас от старого БП роутера длинк на 5V, за несколько месяцев ESP ни разу не зависла. Жду пока приедут антенна и приемник катушки (ну когда же уже!!!!!), для того, чтобы питать датчик за окном без проводов. Ковырять и сверлить стеклопакеты на утепленном балконе не хочу.

Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост
Wi-fi термометр на ESP8266. Часть 1. Собираем датчик температуры воздуха на ESP-01 Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

Заключение

Вот мы и закончили с вами наш температурный датчик. Все исходники файлов можно скачать на github. https://github.com/nossSpb/nodemcu-ds18b20-tutorial/tree/mas... Осталось все это дело упаковать в герметичный корпус и повесить за окно. Помимо текущих показаний, мы также имеем историю измерений в облаке на thingspeak, и тоже можем с ней работать. Об этом я расскажу в следующей части. Делитесь своими идеями в комментариях, задавайте вопросы. Спасибо что дочитали до конца.

Показать полностью 14
[моё] Сделай сам Esp8266 Arduino Электроника Программирование Nodemcu Своими руками Длиннопост
27
113
return.true
8 лет назад
Arduino & Pi

Wi-fi термометр на ESP8266. Часть 0. Подготовительная.⁠⁠

Привет, пикабу!

Все началось с того, что у меня уже довольно давно лежал чип ESP-01, один из самых первых, что появился на али. Очень долго до него не доходили руки, но наконец дошли. В предстоящей серии публикаций расскажу подробно о каждом этапе. Этой серией постов надеюсь разжечь интерес аудитории к микроконтроллерам и программированию, а также побудить повторить мой опыт. Видео не будет, будет много текста и картинок.

Wi-fi термометр на ESP8266. Часть 0. Подготовительная. Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

На картинке изображен модуль из второй части, который показывает текущие дату\время, показания датчика (датчик пока находится внутри квартиры)

Краткое содержание будущих частей:

Часть 1: Датчик на ESP-01 с беспроводным питанием за окно и температурным датчиком DS18B20. По шагам соберем с вами устройство, зальем прошивку, разберемся с esptool, ESPlorer, научимся сохранять данные в облако, а также показывать показания в браузере компьютера.


Часть 2: Модуль Wemos D1. Подключим экранчик через I2C, cделаем вывод показаний температуры с датчика на экран, соберем прошивку, сделаем синхронизацию времени через интернет, обсудим работу при потере интернет соединения.


Часть 3: Приложение под android. Установим android studio, сделаем приложение с одной activity, которое будет показывать температуру с нашего датчика.

Wi-fi термометр на ESP8266. Часть 0. Подготовительная. Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

На картинке изображен собранный ESP-01 в монтажной коробке, в финальной версии корпус изменился.

Часть 0. Вступительная. Что же такое ESP8266?

ESP8266 — микроконтроллер китайского производителя Espressif с интерфейсом Wi-Fi. Именно наличие wi-fi отличает данный контроллер от более известного и широко распространенного arduino. Да, многие, скажут, что к arduino возможно подключить соответствующий шилд, но зачем, если в данном микроконтроллере он встроен?


Существует множество модификаций данного чипа. В наших статья речь пойдет о подключении чипа ESP-01 и ESP-8266EX уже собранного с обвязкой от проекта wemos.cc (изображен на первой картинке)

Wi-fi термометр на ESP8266. Часть 0. Подготовительная. Сделай сам, Esp8266, Arduino, Электроника, Программирование, Nodemcu, Своими руками, Длиннопост

На картинке изображены разные типы модулей ESP8266

С помощью данного чипа можно самому создать управляемые через wi-fi различные устройства: датчики температуры, света, давления; управляемые через интернет лампочки или розетки, - спектр применения очень широк. Если вы хотите в модный ныне IoT (internet of things), то с помощью данного чипа легко начать. Именно поэтому данные чипы так полюбились diy-мастерам по всему миру.

Буду рад ответить на вопросы в комментариях, конструктивная критика приветствуется. Как говорится, подписывайтесь чтобы не пропустить.

Всем спасибо.

Показать полностью 3
[моё] Сделай сам Esp8266 Arduino Электроника Программирование Nodemcu Своими руками Длиннопост
51
10
kitsel
kitsel
8 лет назад

NodeMCU первое подключение и добавление плат в Arduino IDE⁠⁠

[моё] Nodemcu Esp8266 Arduino Видео
4
218
kitsel
kitsel
8 лет назад

WiFi термометр своими руками⁠⁠

WiFi термометр своими руками Термометр, Nodemcu, Своими руками, Сделай сам, Видео

Все питается от пяти вольт, то-есть от любой USB зарядки. При соответствующей настройке WiFi роутера градусник доступен в браузере как из домашней сети, так и из Интернет.
Потребуется сама платка NodeMCU

Датчик температуры DS18B20

Резистор 4.7 кОм

Все собирается как на схемке, после чего nodemcu можно подключить к usb компьютера открыть на нем arduino ide и загрузить скетч.
Все с алиэкспреса мне обошлось дешевле 250 рублей
скетч для arduino ide http://kitsel.ru/archives/wifi-thermometer-nodemcu-arduino-i...

Arduino IDE https://www.arduino.cc/en/Main/Software

Показать полностью 1
[моё] Термометр Nodemcu Своими руками Сделай сам Видео
60
193
ProstoBrat
ProstoBrat
8 лет назад
Arduino & Pi

WIFI часы на светодиодной матрице с бегущей строкой погоды⁠⁠

Здесь нет модуля точного времени, нет даже кнопок для настроек, просто nodeMCU и экран, т.е. светодиодная матрица, тем не менее это устройство пoказывает время и очень точно.

В этом варианте часов получаем время из интернета с сайта google, а так-же погоду в формате JSON, которая отображается бегущей строкой. Используем подключение по WIFI. Матричный модуль 32x8 MAX7219 подключен к NodeMCU (ESP826) по интерфейсу SPI.

WIFI часы на светодиодной матрице с бегущей строкой погоды Nodemcu, Esp8266, Max7219, Wifislax, Часы, Видео, Длиннопост
WIFI часы на светодиодной матрице с бегущей строкой погоды Nodemcu, Esp8266, Max7219, Wifislax, Часы, Видео, Длиннопост

Подключаем питание и какое-то время ничего не происходит, а это потому что наш NodeMCU соединяется по интернету с сервисами google и сервисами погоды. После того как время получено с сайта google в течении 15 секунд показывает точное время, далее пробегает бегущая строка. Помимо погоды, бегущей строкой можно отобразить любой текст русскими буквами, какую-нибудь поздравлялку, например.

Для отображения русских букв, библиотека Adafruit-GFX слегка модифицирована, она находится в архиве вместе со скетчем и другими необходимыми библиотеками. Качаем тут: https://yadi.sk/d/8H52USAeyg3Ux


И наконец видео по статье:

Показать полностью 2 1
[моё] Nodemcu Esp8266 Max7219 Wifislax Часы Видео Длиннопост
25
91
ProstoBrat
ProstoBrat
8 лет назад
TECHNO BROTHER

Светильник управляемый со смартфона на android по Wi-Fi⁠⁠

Ну бывает же лень просто встать, чтобы дотянуться до светильника, или даже до пульта своего чертовски умного дома, чтобы скажем изменить оттенок освещения. А спорим смартфон уж точно в зоне досягаемости)

Делаем светильник, управляемый со смартфона по WIFI, да еще и по протоколу UDP.

Что дает UDP протокол в управлении какой-то там лампой? А вот что: предположим  такой светильник не один, и все реализованы по разному, но управляются по UDP, становиться возможным с одного пульта, никак особо не заморачиваясь, синхронно управлять всем сразу!

схема слединений простая до безобразия, в качестве драйвера используем L298N (тот самый, что для двигателей)

Светильник управляемый со смартфона на android по Wi-Fi Управление по wifi, Nodemcu, Led, Светодиоды, Видео

Для работы приложения необходимо установить UDP Sender https://play.google.com/store/apps/details?id=com.hastarin.a...

скетч, android приложение и схему соединений качаем по ссылке: https://yadi.sk/d/SB5EUvHxvLe5N

Показать полностью 1
[моё] Управление по wifi Nodemcu Led Светодиоды Видео
12
17
ProstoBrat
ProstoBrat
8 лет назад
Arduino & Pi

UDP в MIT App Inventor 2 на примере программы управления роботом⁠⁠

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

Для таких целей существует протокол UDP, но для людей мало знакомых с android studio и прочими средами разработки android приложений, использующих визуальное программирование на пример в MIT App Inventor 2 от google, нет возможности использовать преимущество протокола UDP из визуального редактора. Но выход есть и для них - использовать возможность вызова служб и приложений в android.

На пример установив приложение UDP Sender из Play market, в android появится служба отправки UDP пакетов, которую можно вызвать из другого приложения, даже "написанного" в визуальном редакторе.

UDP в MIT App Inventor 2 на примере программы управления роботом Mit App Inventor, Nodemcu, Управление роботом по UDP, Esp8266, Android, Длиннопост

Всё, что нужно знать, чтобы использовать службу отправки UDP пакетов, это полное название пакета приложения, класс, который может взаимодействовать с другими приложениями ну и как формировать запрос из другого приложения.

Для UDP Sender приведу пример отправки UDP пакета с содержимым "send" на IP адрес 192.168.1.200 и порт 8888 из визуального редактора MIT App Inventor2.

UDP в MIT App Inventor 2 на примере программы управления роботом Mit App Inventor, Nodemcu, Управление роботом по UDP, Esp8266, Android, Длиннопост

Тут при нажатии "Кнопка2" пакет уйдет.

Более подробно, в том числе о скетче для arduino IDE для приема пакетов и исполнении команд смотрим в видео https://www.youtube.com/watch?v=QoNQS12oFFY

UDP в MIT App Inventor 2 на примере программы управления роботом Mit App Inventor, Nodemcu, Управление роботом по UDP, Esp8266, Android, Длиннопост

P.S. привожу ссылку на видео, по скольку прикрепить видос к посту не хватает кармы))

Показать полностью 3
[моё] Mit App Inventor Nodemcu Управление роботом по UDP Esp8266 Android Длиннопост
2
8
Dionisnation
Dionisnation
8 лет назад
TECHNO BROTHER

ARDUINO это просто: NodeMCU управление роботом с помощью гироскопа⁠⁠

К посту
@ProstoBrat, вот видосик

Гироскоп Nodemcu Робот Arduino Technobrother Видео
1
Посты не найдены
О Нас
О Пикабу
Контакты
Реклама
Сообщить об ошибке
Сообщить о нарушении законодательства
Отзывы и предложения
Новости Пикабу
RSS
Информация
Помощь
Кодекс Пикабу
Награды
Команда Пикабу
Бан-лист
Конфиденциальность
Правила соцсети
О рекомендациях
Наши проекты
Блоги
Работа
Промокоды
Игры
Скидки
Курсы
Зал славы
Mobile
Мобильное приложение
Партнёры
Промокоды Biggeek
Промокоды Маркет Деливери
Промокоды Яндекс Путешествия
Промокоды М.Видео
Промокоды в Ленте Онлайн
Промокоды Тефаль
Промокоды Сбермаркет
Промокоды Спортмастер
Постила
Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии