Wi-Fi реле на NodeMCU. Управление Android приложением
В предыдущем проекте я уже рассказывал как можно
управлять
реле по Wi-Fi. Но использовать
сторонне приложение для управления
своими проектами не дальновидно. И нет
перспективно. Поэтому я решил написать
пару
Android приложения для своих новых
проектов на ES8266 это простоизыскания для проектирования.
Посмотрел
среды разработки под
Android и мне
понравились:
1. Android Studio
2. MITAppInventor
Так как я не писал Android приложения,
разобраться с
Android Studio потребует
достаточно большое количество времени. И
для вас повторить мои проекты будет
гораздо сложнее. Поэтому я решил пойти
по самому легкому пути и написал
приложение на MIT App Inventor.
Дизайн моего первого Android приложения
достаточно простое, но в нем есть пару
функций которых не хватало в положении
из предыдущего проекта.
Первое. В приложении мы можем указать
IP устройства. И нам не нужно постоянно
его прописывать в коде
NodeMCU.
Во-вторых в приложении есть обратная
связь
. При включении или выключении мы
видим включилось или нет устройства.
Так же если вы находитесь в другом
помещении, вы всегда можете посмотреть
работает или нет устройство. Это
достаточно удобно.
Программа для NodeMCU берем из прошлого
проекта без изменений. Сделаем дизайн
приложения в
MIT App Inventor.
Элементы я не стал переименовывать,
чтобы было понятнее и проще разобраться.
Блоки с русским названием добавлял уже
после проверки и тестировании. Они
сделаны для лучшего расположения
основных элементов. Конечно это мой
косяк. Переделывать не стал. Постараюсь
в следующем проекте чтобы все названия
были на английском языке.
Набросаем код блоками и у нас получиться
вот что.
В блоке
Мы обрабатываем нажатие кнопки Button1.
Зеленой блок Set отправляет заброс в веб
обработчик Web1. Блок Join собирает нашу
ссылку из 3 частей. Первая и третья части
это просто текстовые поля. Поле TextBox1
берет параметры из поля ввода. В него
мы указываем IP адрес подключения.
Кнопка Button2 работает аналогично Button1.
Только она отправляет сигнал на отключение
реле.
Блок кода Web1 отправляет Get запрос который
мы сформировали с помощью кнопки.
Внутри первого блока условия проверяем
код ответа. Если мы получили код ответа
200 (нет ошибок), выполняем следующее
условие. Иначе выводим ошибку.
Второе условие проверяет Содержимое
ответа. Содержимое мы сформировали сами
в программа
NodeMCU.
При повторении примера, блок кода WEB1 или не получает ответ от сервера или не может его правильно декодировать. В чем может быть причина? Что в материале статьи упущено?
Комментарии
Войдите или Зарегистрируйтесь И Вы сможете общаться на форуме и оставлять комментарии без капчи.