Приветствую Вас, Гость! Регистрация

Персональный сайт Пьяных А.В.

Пятница, 03.05.2024


Главная » Статьи » Электроника » Arduino и т.п.

NodeMCU. Управление 4 реле из приложения Android по WiFi.

  Сегодня я буду рассматривать возможность управления 4 реле из приложения мобильного устройства с ОС Android по сети WiFi. В статье я рассмотрю три решения.

   1. С помощью готовых библиотек aRest.
   2. Написанной «руками» программы для NodeMCU.
   3. С помощью облачного сервиса Blynk.

   Для первых двух решений будет создано приложение в сервисе MIT App Inventor 2, работающее в ОС Android. Третье решение предусматривает использование готового приложения поставляемого сервисом Blynk.

   Начнем сначала.

   Чип ESP8266

   Чип ESP8266 разработан специально для «интернета вещей». Существует два варианта использования этого чипа. Первый – в качестве моста UART-WIFI для подключения к микроконтроллеру и управления АТ-командами. Второй вариант – чип сам исполняет роль управляющего контроллера. По моим оценкам в среде любителей электроники чип чаще используется как управляющий контроллер.

   Возможности чипа:

  • Поддержка 802.11 b/g/n
  • Встроенный 32-bit MCU с низким энергопотреблением
  • Встроенный 10-bit ADC
  • Встроенный стек TCP/IP
  • Встроенный усилитель ВЧ сигнала
  • Поддержка разнесения антенн
  • WiFi 2.4 GHz, поддержка WPA/WPA2
  • Поддержка  STA/AP/STA+AP режимов
  • SDIO 2.0, (H) SPI, UART, I2C, I2S, IR Remote Control, PWM, GPIO
  • STBC, 1x1 MIMO, 2x1 MIMO
  • A-MPDU & A-MSDU aggregation & 0.4s guard interval
  • Выходная мощность +20 dBm  в 802.11b режиме

   Чип является высокоинтегрированным решением для работы с WiFi. Внутри чипа удалось разместить все, что нужно. Типовая минимально необходимая для работы обвязка микросхемы состоит всего из семи элементов.

   Фотографии для сравнения количества компонентов аналогичных решений.

   По одним данным всей этой прелестью управляет 32-разрядное процессорное ядро  Xtensa LX106, по другим данным – Tensilica’s L106 Diamond.  Под микроскопом выглядит чип как целый город из связанных элементов.

   Одной из самых важных характеристик является энергопотребление. У ESP8266 оно просто поражает:

  • 215mA в режиме непрерывной передачи.
  • 1mA в режиме поддержания связи с точкой доступа
  • 10uA в режиме глубокого сна с работающими часами реального времени
  • 0,5uA в режиме Power OFF

   Время необходимое на пробуждение и начало передачи пакета менее 2ms. Например, при измерении температуры каждые 100 секунд и подключении к точке доступа и передаче накопленных данных каждые 300 секунд (все остальное время чип спит) средний ток составит около 1mA. Это более трех месяцев работы от трех пальчиковых аккумуляторов емкостью 2600мА/ч.

   О модулях ESP

   В настоящее время наиболее популярными модулями на чипах ESP8266 являются ESP-01, ESP-02, ESP-03, ESP-04, ESP-05, ESP-06, ESP-07, ESP-08, ESP-09, ESP-10, ESP-11, ESP-12, ESP-12E. Они отличаются количеством разведенных пинов, наличием разъема для подключения внешней антенны, размерами.

   Сейчас уже можно найти в продаже старшего брата ESP8266 – это модуль ESP-32. На Aliexpress пока всего у двух продавцов есть эти модули. Цена около 250 рублей против 110 рублей за ESP-12E. В новом модуле будет еще больше плюшек.

 

   Особенно интересна заявленная поддержка CAN-шины. Скоро управлять системами автомобиля и проводить диагностику можно будет по WiFi прямо с мобильного устройства.

   Но вернемся к ESP-12E. На базе этого модуля построена платформа NodeMCU.

 

   О платформе NodeMCU

   Платформа использует возможности ESP-12 модуля, собственного микроконтроллера не имеет. Китайцы производят много клонов с разными конвертерами интерфейсов, и сами платформы имеют разные размеры. 

   По умолчанию в платформу загружена прошивка NodeMCU с поддержкой интерпретатора скриптового языка LUA. Скрипты задают поведение платы.

   Я пишу и заливаю программы с помощью Arduino IDE. Для работы с платформой необходимо установить библиотеки. С библиотеками идет большое количество примеров программ.

   Установка библиотек в среду Arduino IDE для работы с NodeMCU.

   Для установки библиотек необходимо зайти в настройки Arduino IDE и в поле «Additional board» ввести адрес http://arduino.esp8266.com/package_esp8266com_index.json

   Далее «Инструменты» – «Плата» – «Boards Manager».

   Пролистываете список вниз и находите ESP8266 by ESP8266 Community, и устанавливаете библиотеки.

   Закройте «Boards Manager». Идите в «Инструменты» и выберите плату NodeMCU в соответствии с вашей версией.

   Чтобы  понять какой модуль у вас установлен и какую версию выбрать, посмотрите на модуль. Если контакты на нем расположены с трех сторон – это ESP-12E, если только с двух – это ESP-12.

   Далее выбираете частоту модуля, размер памяти и порт, к которому подключена NodeMCU

   Назначение выводов платформы NodeMCU

   Функции, поддерживаемые библиотеками для Arduino IDE.

   Полное описание можно почитать здесь https://github.com/nodemcu/nodemcu-firmware/wiki/nodemcu_api_ru причем на русском языке. Я расскажу об основных функциях.

   Управление GPIO осуществляется так же, как и у Arduino. pinMode, digitalRead, digitalWrite, analogWrite функционируют как обычно. analogRead(A0) читает значение АЦП с аналогового входа А0 соответственно. analogWrite включает программный ШИМ. Частота ШИМ порядка 1кГц. Диапазон ШИМ от 0 до 1023, у Arduino, как мы помним, до 255. Прерывания также поддерживаются на любом GPIO, кроме GPIO16. Функции millis() и micros() возвращают миллисекунды и микросекунды, прошедшие со старта модуля. Функция delay() у NodeMCU работает по-другому нежели у Arduino. Здесь применение delay приветствуется и в больших программах даже необходимо. Когда модуль поддерживает WiFi соединение, ему приходится выполнять множество фоновых задач, кроме вашего скетча. WiFi и TCP/IP функции библиотек SDK имеют возможность обработать все события в очереди после завершения каждого цикла вашей функции loop() или во время выполнения delay(...). Если в вашем коде есть фрагменты, которые выполняются более 50 миллисекунд, то необходимо использовать  delay(...) для сохранения нормальной работоспособности стека WiFi. А вот delayMicroseconds() блокирует выполнение других задач и не рекомендуется для задержек более 20 миллисекунд. Serial использует аппаратный UART0, работающий на PIO1(TX) и GPIO3(RX).

   Программа для управления четырьмя реле с мобильного приложения

   После того, как библиотеки установлены, к платформе подключаем блок из 4 реле к пинам D1, D2, D3, D4, что соответствует GPIO 5, 4, 0, 2 соответственно. Затем подключаем питание к платформе и к блоку реле. У имеющегося у меня блока реле есть одна особенность. Для включения реле необходимо подтянуть пин к земле. То есть логический 0 включает реле, а 1 выключает.

   Я рассмотрю три варианта программы управления блоком реле.

   Первая программа использует популярную библиотеку aRest https://github.com/marcoschwartz/aREST

   Это API handler библиотека, позволяет управлять GPIO через http-запросы вида http://192.168.0.10/digital/6/1 ее возможности: устанавливать GPIO в Digital или Analog (ШИМ), устанавливать 0 или 1 на пин в режиме Digital, возвращать переменные и читать состояние пинов.

   Программу я откомпилировал и загрузил из примеров, идущих вместе с библиотекой. С точки зрения использования – проще некуда.

   В Setup’е устанавливается соединение с точкой доступа, о чем сообщается через COM порт. А loop выглядит вот так:

void loop() {

  WiFiClient client = server.available();

  if (!client) {

    return;

  }

  while(!client.available()){

    delay(1);

  }

  rest.handle(client);

}

   Все. Что там происходит не понятно. Работает, но фактически мы не программируем ничего. Просто запускаем программу, все остальное делает библиотека. Но интереснее научиться работать с GPIO «руками». Да, кстати, программа у меня зависала через неопределенное время. Иногда через 40 минут, иногда через 5-6 часов. Приходя домой после 8 часового рабочего дня, я всегда обнаруживал, что программа не работает. При этом роутер показывает, что клиент WiFi подключен и ему выдан IP адрес. Интерес у меня к библиотеке быстро пропал. На зависания aRest’а на русскоязычных форумах жалоб не встречал. Я уж грешил на NodeMCU или на нестабильное питание, но дальнейшие эксперименты доказали, что в моем случае виновата была программа. Скорее всего, у меня частный случай. Я не утверждаю, что библиотека не рабочая.

   С aRest’ом разобрались.

 

   Вторая программа написана самостоятельно, использует всего одну подключаемую библиотеку #include <ESP8266WiFi.h>. Программа проста и наглядно показывает, как управлять пинами через веб-запросы. Данная программа умеет управлять только логическими состояниями на выводах D1-D4 и выводить информацию о времени работы программы в качестве тестового запроса. Если есть необходимость, можно дописать программу для остальных GPIO, «научить»  ее выдавать ШИМ и т.д. К выводу D4 подключен синий светодиод, находящийся на модуле ESP-12E. После мучений с зависаниями aRest’а я временно отсоединил реле 4 от D4 и в своей программе дописал пару строк для мигания этим светодиодом. Пришел домой после работы смотрю – мигает, значит, работает. Проверил с мобильного – точно работает. Программа отработала 8 дней без зависаний, отработала бы и дольше, но NodeMCU у меня один, поэтому я продолжил его изучение и выполнение программы пришлось остановить.

   Код программы.

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

   Для управления блоком реле для этих двух программ было создано приложение на мобильный с ОС Android. Приложение очень простое, создавалось в App Inventor 2. Процесс создания приложения я опишу позже. Сначала третий вариант решения управления реле.

 

   Третий вариант комплексный. Прошивка платформы и программа для Android от одного разработчика. Я использовал сервис Blynk. Он представляет собой облачный сервис для создания графических пультов управления и подходит для широкого спектра микрокомпьютеров и микроконтроллеров.

   Для создания собственного проекта с управлением через Blynk нужно совсем немного: установить приложение (доступны версии для iOS и Android) или воспользоваться веб-формой. Тут потребуется регистрация в один шаг — ввод e-mail и пароля. Дело в том, что Blynk — облачное решение, и без регистрации контроль над железкой может получить любой пользователь.

   Желающие могут установить сервер локально. В таком случае доступ в интернет не нужен.

   Опишу сам процесс. Он состоит из двух частей.

   Первая часть. Скачиваете Blynk с Google Play. Устанавливаете и запускаете программу

  1. Нажимаете «Create New Project»
  2. Вписываете название проекта и выбираете NodeMCU в поле «Hardware model». Auth Token учите наизусть или записываете на бумажку, отсылаете себе на почту. Жмете «Create».
  3. Жмете «+» в углу.
  4. Выбираете «Button». Как вы уже обратили внимание, каждый элемент, добавляемый в проект, стоит энергию. По умолчанию вам ее дается 2000. По мере добавления виджетов энергия будет расходоваться. Если вам нужно будет разместить больше виджетов, то энергию придется покупать за деньги.

  1. Вот и появилась наша кнопка. Нажмите на нее. Откроются ее настройки.
  2. Выберите название, пин, на который она будет действовать, режим кнопки или переключателя, название для состояний «включено» и «выключено». В приложении инвертировать сигнал с кнопки нельзя. Для моих реле: кнопка выключена – 0 на выходе, реле включено и наоборот. Прописывать правила работы логики можно установив сервер на локальном компьютере.
  3. Далее нажимаете треугольничек справа вверху. Программа переходит из режима редактирования в работу.
  4. Кнопки работают. Что примечательно поддерживается мультитач. Я пробовал одновременно нажимать 6 кнопок. Все работает (у телефона по описанию 10 точек нажатия).

   Вторая часть – это прошивка NodeMCU. Скачиваете и устанавливаете библиотеки Blynk https://github.com/blynkkk/blynk-library.  Запускаете Arduino IDE – Файл – Образцы – Blynk – BoardsAndShields – ESP8266_Standalone.

   Вписываете в пример Auth Token с секретной бумажки почты. А также SSID вашей сети WiFi и пароль доступа к ней.

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

   Создание приложения в App Inventor.

   App Inventor – среда визуальной разработки android-приложений, требующая от пользователя минимальных знаний программирования. Первоначально разработана в Google Labs, после закрытия этой лаборатории была передана Массачусетскому технологическому институту. Для программирования в App Inventor используется графический интерфейс, визуальный язык программирования очень похожий на язык Scratch и StarLogo TNG. Разобраться с написанием приложения не так сложно. Полезной документации на русском я не нашел, а вот видео на ютубе очень много.

   У сервиса две основных вкладки. Первая – это «Designer», здесь в визуальном редакторе размещаются компоненты. Скорость разработки интерфейса очень высока благодаря одной особенности сервиса App Inventor. На мобильный девайс необходимо установить приложение MIT App Inventor 2 Companion. Запустить его. На сайте выбрать Connect – AI Companion. Будет сгенерирован и выведен на экран QR код. В приложении надо нажать «scan QR code» и отсканировать код. Через пару секунд приложение появится на экране мобильного девайса. Новые элементы или любые измененные данные буквально через секунду становятся доступными для проверки на мобильном устройстве.

   На экране размещаются: поле ввода для ввода IP адреса, кнопка установки адреса и отправки тестового запроса. Ниже располагается компонент «WebViewer», в нем будет отображаться присланная в ответ от NodeMCU страница. Ниже идут 4 группы по две кнопки, которые включают и выключают реле. Также нужен компонент «TinyDB», в нем будем хранить переменную для построения запроса. Также я для пробы добавил компонент распознавания голоса, чтобы можно было управлять реле голосовыми командами. Описывать алгоритм действий при распознавании текста не буду, так как пользоваться этой функцией крайне неудобно. Сначала нужно нажать на кнопку, потом выводится окошко от гугла с надписью «говорите», потом произносится команда. Причем после окончания произношения команды система распознавания ждет некоторое время, потом соображает, что все уже сказано. Затем идет распознавание речи и приходит текстовый ответ. Его надо сравнить с заранее заготовленными фразами. И только после этого команда будет выполнена. Проще тапнуть кнопку.

   Вторая вкладка называется «Blocks». Здесь в виде блоков задается вся «программная» часть приложения.

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

  • When SET.Click – когда нажата кнопка «сет», вызвать функцию IP
  • Далее идет сама функция IP. Она сохраняет в TinyDB  IP адрес из поля ввода, дописывая вначале «http://». Потом WebViewer.GoToUrl берет адрес из TinyDB, дописывает «/test» в конце и переходит по этому адресу. У меня получается «http://192.168.0.1/test». В WebViewer на экране загружается информация о том, что тест пройден, и выводится время непрерывной работы NodeMCU. Если IP адрес был введен неверно, то получаем сообщение о невозможности открыть страницу.
  • When ON1.Click (ON1 это название кнопки) вызывает функцию ON1.
  • Функция ON1 берет адрес из TinyDB, дописывает к нему «/D1/0», получается «http://192.168.0.1/D1/0», и посылает запрос. NodeMCU, получив данный запрос, соображает, что на пин D1 нужно установить 0. Выполняет и отсылает ответ «GPIO set OK», который мы и видим в WebViewer.
  • Следующая кнопка OFF1 проделывает то же самое, только в конце дописывает  «/D1/1». Устанавливает логическую 1 на пин D1. Реле выключается.

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

   После того, как все проверено и работает, нажимаете Build – App (save .apk to my computer). Идет компиляция и скачивание apk-файла приложения. Его необходимо установить на мобильное устройство, предварительно в настройках разрешив установку приложений из сторонних источников. Теперь приложение запускается самостоятельно. AI Companion уже не нужен и связь с интернетом тоже.

   Вот так можно без особых усилий создать приложение для Android-устройства для управления нагрузкой по сети WiFi.

   NodeMCU и мобильный телефон подключены к домашнему роутеру. Там, где нет точки доступа WiFi, NodeMCU может выполнять функции точки доступа для подключения мобильного устройства напрямую к ESP8266. Например, управление открытием гаражной двери и включением света в гараже.

   P.S. Поднять точку доступа на платформе мне пока не удалось. Пример, идущий с библиотеками, не компилируется. Arduino IDE просто виснет в процессе компиляции. С этим мне еще предстоит разобраться.

   P.P.S. Точку на платформа поднял, но адекватной работы пока не добился. Команды выполнялись или с задержкой в пару секунд либо не выполнялись совсем. Пока исследование модуля приостановлено. Занят обслуживанием авто.

Категория: Arduino и т.п. | Добавил: Zlitos (09.05.2016) | Автор: Пьяных А.В.
Просмотров: 87518 | Комментарии: 15 | Теги: управление по WiFi, wifi, приложение Android, NodeMCU | Рейтинг: 4.5/8
Всего комментариев: 15
14 dtizav  
0
Доброго времени суток!
А можно по подробней про андройд приложение узнать?

15 Zlitos  
0
Можно.

13 yurayugok  
0
Возникла проблема с данной конструкцией, а именно при подключенной нагрузке (15мА упраление транзисторами через оптроны) NodeMCU не подключается к сети.
Для подключения к сети приходится отключать все от макетки ,после подключения к сети можно подключить на выход оптроны и все работает правда при переподключении приходится снова все разбирать.

7 EugeneL  
0
Спасибо за статью. У меня Lolin board (написано Nodemcu v.3) и происходят такие же зависания при интенсивной работе с WiFi как у Вас. Причём aRest не является причиной - сбои происходят и на "чистом" коде. По дебаг-выводу в ком-порт видно что клиент подключается и зависание происходит на этапе считывания запроса. cry

8 Zlitos  
0
Рад, что Вас заинтересовала моя статья. У меня на чистом коде неделю отработала MCUшка без зависаний. Потом я начал ее дальше ковырять. Потом я ее примудрил в машину. Там она проработала еще 10 дней. Потом снял.

9 jakov1965  
0
Здравствуйте, мне кажется вы мне и нужны, купил елм327 а он без ви-фи, с андроидом работает по блю-пуп, не есть острая необходимость подключить к яблоку. Купил модуль есп-12. Помогите прошить для работы как прозрачный мост уарт.

10 Zlitos  
0
У ЕСП12 нет блюпупа. Как будет информация передаваться из ЕЛМ327?

11 jakov1965  
0
У ЕЛМ 327 нет вай-файя, у меня есть ЕСП-12, у него есть RX -TX вот их бы подключить к RX-TX ЕЛМ 327. Надо прошить его чтобы получился прозрачный мост UART. Прочтите еще раз мой пост.

12 Zlitos  
0
Да пост то Ваш я прочитал. Только вот я не знаком с ЕЛМ327. Если у него кроме блюпупа есть еще и RX-TX, то можно подключить ЕЛМ к ЕСП. Вроде как мост УАРТ в UDP протокол собирали на одном из форумов, но как быть с программой на телефоне. По какому протоколу она работает? Как выглядят пакеты которые она принимает от ЕЛМа с вайфаем? Далеко не факт, что информация RX-TX просто кладется в блок данных пакета. Там еще может быть куча информации, контрольная сумма и т.д. Без перехвата и разбора пакетов ЕЛМ с вайфаем прошивку сделать не получится.

5 shapovalovdmitrij  
0
Здравствуйте, Алексей.
1. Изучение модуля NodeMCU v.3 дали следующие результаты по цифровым пинам на вывод.



У меня получился Blink из 11 светодиодов на Arduino IDE. Для начального проекта количество более, чем предостаточно. GPIO 2 - связан со светодиодом. GPIO 9, GPIO 10 на Blink не работают. Вероятно, это особенность данного модуля. GPIO 3, GPIO 1 немного светятся в режиме «Выкл». Вероятно, пины RX, TX работают, как открытые постоянно. Как это будет сказываться на работе реле, пока не знаю. Возможно, это создаст ложное срабатывание или что-то ещё. Надо смотреть, пробовать. Придумать, как с этим «бороться».

2. Произвёл подключение к маршрутизатору. Домашняя сеть.

3. Приложение для управления 4 реле выложенное Вами, как «открытый проект» я смог повторить. Правда, пока не подключал модуль в основную сеть электроснабжения. Но включение-выключение светодиодов на «макетке» очень радует глаз.

4. Возможно, я излишне придирчив к мелочам, но в работе с приложением есть один момент, который мне не даёт покоя. Но творчески победить его простой перестановкой параметров и самих блоков во вкладке «Blocks» не дал положительных результатов. Знаний строительного ВУЗа не даёт желаемых результатов в среде визуальной разработки и программирования. А жаль. Так о чём речь.
При начальной загрузке приложения всегда приходится вводить (устанавливать) адрес модуля, который записывается в ячейку памяти. К которой в дальнейшем будет происходить обращение. Вероятно вот этот фрагмент:



Неудобство:
а) вводить и подтверждать при каждой загрузке. Можно забыть или ошибиться в наборе, лишнее нажатие клавиши;
б) визуальная доступность адреса модуля для постороннего. Меньше знает – крепче спит.
Алексей, возможно ли сделать приложение таким образом, чтобы при начальной загрузке адрес модуля был уже прописан в блоках, так, чтобы отпала необходимость каждый раз вводить его вручную, подтверждать нажатием кнопки «Set». То, есть по шагам:
а) открыл приложение, соединение прошло автоматически;
б) нажимаешь на кнопки и т.д.

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

С уважением, Дмитрий.

6 Zlitos  
0
Приветствую Вас.
Рад, что у Вас получилось запустить NodeMCU. GPIO2 связан со светодиодом и если меня не подводит память во время загрузки он мигает, что повлечет ложные срабатывания. Если на этом пине будет висеть лампочка в подвале, то ничего страшного если она и моргнет пару раз. А вот подачу газа в котел я бы на этот пин не делал. GPIO1 и 3 можно через резистор 2-5 кОм подтянуть к земле. Слабое свечение должно исчезнуть, а работоспособность остаться. Эти выводы подключены через резисторы 470 Ом к преобразователю интерфейса CH340G. Возможно подтяжка этих выводов к земле не даст прошивать NodeMCU, тогда придется на время прошивки отключать резисторы от земли, а потом подключать после прошивки. Я думаю будет прошивать и с резисторами.
Для увеличения количества управляемых ног (вдруг понадобится) Вы можете использовать сдвиговый регистр 74HC595. Задействовав всего 3 ноги NodeMCU вы будете управлять 8 выходами микросхемы. Сдвиговые регистры можно каскадировать. Если использовать 2 микросхемы, то у Вас будет уже 16 выходов, 4 микросхемы - 32 выхода и т.д. При этом управляться каскад сдвиговых регистров будет все так же 3-я выводами NodeMCU. Гуглите 74HC595 и Arduino. Найдется очень много примеров и есть готовая библиотека для работы с 74HC595.
Насчет вбивания адреса каждый раз. IP адрес, если грубо сказать хранится в компоненте TinyDB в переменной с названием espadress. Приложения, созданные с помощью App Inventor инициализируются каждый раз заново, когда они выполняются. Это означает, что если приложение устанавливает значение переменной, а затем пользователь выходит из приложения, значение этой переменной теряется. В отличие от этого, TinyDB является стойким хранилище данных для приложений. Данные, хранящиеся в TinyDB будут доступны каждый раз, когда приложение запускается. Вам необходимо сохранить IP адрес в переменную espadress один раз (сохранить TinyDB1.StoreValue), а потом считывать его при необходимости (читать TinyDB1.GetValue). Можно сделать дополнительный экран настроек, кнопка Add screen в App Inventor. На основном экране сделать кнопку "настройки", которая будет открывать экран настроек. На экране настроек будет поле ввода IP адреса и кнопка Set. Один раз вбиваете адрес и сохраняете. Так и вбивать каждый раз не придется и адрес скрыт от посторонних, по крайней мере его не будет видно пока посторонние не зайдут в настройки. Из блока To IP do уберете call TinyDB.StoreValue, что бы не пересохранялась переменная espadress.
Второй способ. Прописать жестко адрес модуля. В случае изменения адреса Вам придется заново менять адрес в Inventor'e, компилировать и устанавливать приложение.
Будут еще вопросы, пишите мне ВКонтакте http://vk.com/zlitos помогу, чем смогу.

4 UnDetected  
0
Блин, классная статья ! Уж насколько редко я что-то где-то комментирую, но тут просто не мог пройти мимо. Искал то я про локальную установку blynk...

3 shapovalovdmitrij  
0
Спасибо, что уделили моему письму время. После его получения я ознакомился с информацией о роутерах и WiFi-точках. И пришёл к выводу о том, что в своём проекте мне необходима именно WiFi-точка. (Пока морально не готов к глобализации). В качестве блока управления и приёма информации планирую использовать отдельный смартфон для внутренней сети. Вероятно, проект моего «умного дома» будет пересекаться с Вашим проектом автомобиля. Если это возможно, то поделитесь на страницах своего сайта выбранным оборудованием и прочими «плюшками проекта». Мне это будет важно и интересно.
Очень жаль, что ESP пока не дотягивает до качественной работы в роли и WiFi-точки. Такой потенциал. А ведь уже на подходе ESP-32. Позволю регулярно заходить на сайт в надежде увидеть проекты в Вашем исполнении на ESP.
С уважением, Дмитрий.

1 shapovalovdmitrij  
0
Здравствуйте, Алексей.
Заинтересовался Вашей статьёй по управлению модулем из 4 реле. Хочу использовать данный материал для управления в своём частном доме. Но вероятно самостоятельно одержать победу над трудностями не получится. Мозги не заточены под электротехнику, строители однако. Но есть тяга к прекрасному, но она сможет побороть только лень, но не гранит науки. Вот наткнулся на материал на иностранном сайте. Посмотрите его,
http://arduino-er.blogspot.ru/2015_05_01_archive.html
может он поможет поднять точку на платформе, а не только через роутер, в более адекватной форме. Возможно, эта работа заинтересует и других пользователей.
Заранее спасибо за Вашу работу и помощь.
С уважением, Дмитрий.

2 Zlitos  
1
Спасибо за ссылку. Для дома, наверное, будет лучше собрать систему на базе роутера. Скорее всего он у Вас будет для домашней сети. К роутеру подключить Arduino c Ethernet шилдом. Получите кучу пинов для ввода/вывода и хорошо описанную платформу. В итоге Вы сможете управлять системами дома и с мобильного устройства и с персонального компьютера. И к роутеру можно приконнектить кучу ESP по wifi. Вариант с использованием ESP в качестве точки доступа оправдан только при одном модуле. К нескольким модулям придется постоянно переподключаться. Я хотел установить ESP в машине для управления системой зажигания, стеклоподъемниками, светом и т.д. В итоге пришел к установке wifi точки и ардуино с сетевым шилдом.
А с Вашим домом советую только начать. Постепенно разберетесь и сами не заметите как перейдете от управления одной лампочкой к полноценной системе умного дома. Успехов Вам!

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]