Elektrikoff09.ru

Журнал "Электросети"
3 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

WiFi ESP-01 (esp8266). Урок 19. Ардуино

WiFi ESP-01 (esp8266). Урок 19. Ардуино

lesson19

Привет! Ну вот мы и подошли к самой интересной части работы с Ардуино. А именно wifi модуль и подключение устройств на Ардуино к беспроводной сети. В этом уроке мы настроим wifi модуль ESP-01 и попробуем подключиться к интернету с его помощью.

В предыдущих уроках мы уже говорили про подключение проводного интернета к Ардуино. Это также интересная тема, так что посмотрите тот урок, если уже забыли или пропустили.

Внешний вид и пины модуля ESP-01

Модуль представляет собой небольшую плату. На ней уже есть встроенная антенна и 8 контактов для подключения у Ардуино или другим устройствам.

Модуль Wi-Fi реле на базе ESP8266 – обзор и подключение

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

Это модуль одноканального реле с интерфейсом WiFi выполнен на основе микросхемы ESP8266. Он контролирует работу реле посредством приложения. Идеальный инструмент, чтобы управлять всей бытовой техникой в вашем доме с помощью телефона, где бы вы ни находились.

Функции и характеристики

  • Встроенный модуль WiFi с микросхемой ESP8266, работающий в режиме точки доступа, можно подключить к 5‑и клиентам одновременно.
  • У модуля реле с WiFi два режима работы:
    • 1. Смартфон напрямую подключается к модулю WiFi;
    • 2. Смартфон и модуль WiFi подключены к одному маршрутизатору.
    • Встроенное реле на 1 канал с входным напряжением 5 В для выходных цепей 10, А, 250 В переменного тока и 30 В постоянного тока, выдерживает до 100 000 срабатываний в непрерывном режиме, обладает малым временем срабатывания.

    Блок-схема модуля представлена на чертеже ниже:

    ESP8266 с реле схема модуля

    Инструкция по настройке Wi-Fi модуля ESP8266

    1. WiFi модуль ESP8266 имеет три режима работы:

    • STA (клиент)
    • AP (точка доступа)
    • STA + AP (точка доступа + клиент)

    Режим WiFi модуля ESP8266 выбирается исходя из выбранного режима работы модуля реле.

    2. Модуль настраивается посредством отладочной программы, предназначенной для работы через последовательный порт, команды на последовательный порт отправляются через конвертер USB в TTL. Для модулей ESP-01 существует специальный программатор – USB программатор CH340G для ESP-01. Контакты TX, RX и GND конвертера подключаются к выводам RX, TX и GND модуля реле, а выводы IN+ и IN- — к источнику питания постоянного тока 3.3В.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    3. Скорость передачи данных WiFi модуля может быть 115.200 или 9600 бод. Чтобы изменить скорость, вы можете использовать АТ‑команды, например: AT+CIOBAUD=115200. В общих случаях мы рекомендуем использовать скорость 115.200, но вам будет необходимо изменить скорость на 9600, если вы используете смартфон для управления реле (так как скорость встроенного в модуль микроконтроллера STC15F104W составляет 9600 бод).

    Режим работы 1 — смартфон подключается к модулю напрямую

    Запустите отладочную программу USR-TCP232-Test-V1.3 на ПК и отправьте следующие AT команды, одну за другой:

    • AT+CWMODE=2 — выбираем режим точки доступа AP;
    • AT+RST — перезапускаем модуль;
    • AT+CIPMUX=1 — устанавливаем несколько соединений;
    • AT+CIPSERVER=1,8080— настраиваем сервер TCP, устанавливаем номер порта;
    • AT+CIFSR — смотрим адрес IP для режима AP, примерно такой: APIP, “192.168.4.1”;
    • AT+CIOBAUD=9600 — устанавливаем скорость передачи последовательного порта на 9600 бод.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Теперь подключаемся к точке доступа, созданной WiFi модулем, посредством смартфона с ОС Android.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Установите приложение EasyTCP_20 (ссылка на Play Market) на смартфон с ОС Android и запустите его; нажмите кнопку «CONNECT» и введите адрес устройства (IP Address) и номер порта (Port).

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Нажимайте на блоки функций и вводите имена и содержимое команд, отправляемых через последовательный порт. Например, командой “A00101A2” — можно задать открытие реле, а командой “A00100A1” — закрытие реле.

    Все команды должны задаваться в шестнадцатеричном виде.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Теперь, нажимая на блоки функций, вы можете отправлять команды на последовательный порт и таким образом управлять расположенным на плате реле.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Режим работы 2 — смартфон и модуль WiFi подключены к одному маршрутизатору

    Запустите отладочную программу USR-TCP232-Test-V1.3 на ПК, отправьте следующие команды одну за другой:

    • AT+CWMODE=1 — выбираем режим клиента STA;
    • AT+RST — перезапускаем модуль;
    • AT+CWJAP=<ssid>,<password> — позволяем модулю WiFi подключиться к маршрутизатору, например: AT+CWJAP=«LCTECH»,«12345678»;
    • AT+CIPMUX=1 — устанавливаем несколько соединений; Например:
      AT+CIPSERVER=1,8080 – настраиваем сервер TCP, устанавливаем номер порта;
    • AT+CIFSR — смотрим адрес IP для режима STA, примерно такой: STAIP, “192.168.1.103”;
    • AT+CIOBAUD=9600 — устанавливаем скорость передачи последовательного порта на 9600 бод.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Теперь подключитесь со смартфона к вашему маршрутизатору.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Установите приложение EasyTCP_20 на смартфон с ОС Android (ссылка на Play Market) и запустите его; нажмите кнопку «CONNECT», введите в поля адрес IP (Address) модуля и номер порта (Port).

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Нажимайте на блоки функций и вводите имена и содержимое команд, отправляемых через последовательный порт . Например: A00101A2 — открытое реле, A00100A1 — закрытое реле. Команды должны быть написаны в шестнадцатеричном виде.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Теперь, нажимая на блоки функций, вы можете отправлять команды на последовательный порт, чтобы управлять реле.

    Обзор модуля реле с интерфейсом WiFi на основе серийно выпускаемой микросхемы ESP8266

    Подсказки

    1. После перезапуска, модуль реле с WiFi необходимо настроить заново. Если ваша прошивка написана на Arduino IDE, то минимальный набор необходимых при запуске команд можно поместить в функцию setup()
    2. У модуля ESP8266 есть функция простоя; если смартфон не посылает команды на модуль WiFi в течение некоторого периода времени (по умолчанию — 180 с), то он переходит в режим ожидания и отключается от вашего смартфона. Для изменения этого периода вы можете отправить с ПК команду «AT + CIPSTO = ” («время» может быть от 0 до 7200 сек), например: AT + CIPSTO = 3600.
    3. Если модуль в ответ вместо «OK» отправляет команду, которую вы послали посредством программы USR-TCP232-Test-V1.3, то модуль необходимо настроить заново. Перед отправкой команд вы можете нажать кнопку «ВВОД» (ENTER).
    4. Если нет никакого ответа при работе через программу USR-TCP232-Test-V1.3, то посмотрите на скорость при обмене с модулем — возможно, она настроена неверно. Вы можете попробовать 115200 или 9600, однако если для управления реле вы используете смартфон, то скорость обязательно должна быть 9600 бод (скорость можно изменить, отправив команду AT+CIOBAUD=9600), поскольку скорость передачи встроенного микроконтроллера STC15F104W составляет 9600 бод.
    5. Если вы хотите использовать компьютер для управления реле напрямую (скорость передачи — 9600 бод), то можно сделать следующее: отсоедините модуль WiFi с микросхемой ESP8266; выводы TX, RX и GN от USB – TTL конвертера подключите к выводам TX, RX и GND модуля реле; выводы IN+ и IN- подключите к источнику питания постоянного тока 5В. Отправьте команды на последовательный порт (A00101A2 — открытое реле, A00100A1 — закрытое реле, команды должны быть в шестнадцатеричном виде) посредством отладочной программы, установленной на ПК, чтобы управлять реле.
    6. Ели реле не открывается или не закрывается, возможно, вам необходимо убрать резистор R4 и подключить вывод питания VCC от USB – TTL конвертера к 5V выводу модуля реле.

    Статья подготовлена по материалам www.hackster.io

    Самые популярные материалы в блоге

    За все время

    За сегодня

    Мигающий светодиод на плате Arduino

    Pixy 2 - анонс системы машинного зрения для Arduino

    8 комментариев . Оставить новый

    Добрый день.
    Правильно ли я понял, что модуль может работать только с Arduino ? Сам по себе он работать не может?

    “После перезапуска, модуль реле с WiFi необходимо настроить заново. Если ваша прошивка написана на Arduino IDE, то минимальный набор необходимых при запуске команд можно поместить в функцию setup()”

    Здравствуйте! Удобнее всего производить прошивку модуля через Arduino IDE, но можно писать в любой среде с поддержкой микроконтроллеров серии ESP8266

    Заказ парачку на AliExpress. Они не были прошиты, мигают с ESP8266 или без него и все.
    Пришлось разработать свою прошивку.
    https://github.com/Pav2711/STC15F104W.git

    Здравствуйте. Можно узнать какую прошивку использовать для релейного модуля от LC TECHNOLOGY и какую прошивку для ESP-01S? Можно где-нибудь скачать эти 2 прошивки?

    Как оказалось между ESP-01S и STM8 в последних версиях не 9600, а 115200, если заставил работать

    а кроме приложения есть вариант управлять этим реле? Если таких реле (условно) 20 штук – это к каждому нужно подключаться и управлять? это же ужасно не удобно… есть что-то, что может объединить несколько таких модулей и управлять ими с одно места?

    Это сделано для тестирования функционала. Если не хочешь подключаться к каждой – всё просто. Включаешь все ESP в режиме ‘Station’, подключаешь в одну локальную сеть. В этой же локальной сети должен быть ПК(ноут), или RasberyPi. Пишешь свою программку, которая будет работать с тем же EasyTCP по порту 8080(к примеру), и с каждой ESP по другому своему порту(любой порт выбери).

    По факту каждая ESP подет подключена к выделеному её порту вашей программы, и вы со смартфона тоже подключаетесь к этой же программе через тот же EasyTCP.

    Затем через EasyTCP отправляешь запросы, программа на ПК их парсит и определяет какой ESP нужно отправить.

    Таким образом Вы подключены к одной программе, не переподключаетесь. Всё как у людей:)

    У вас не корректные данные

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

    А ниже:
    “У модуля реле с WiFi два режима работы:
    1. Смартфон напрямую подключается к модулю WiFi;
    2. Смартфон и модуль WiFi подключены к одному маршрутизатору.”

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

    1. Подключтить модуль NodeMCU к USB порту и запомнить какое имя COM порта ему присвоено.

    2. Два файла для прошивки 0x00000.bin и 0x20000.bin надо скачать отсюда и запомнить куда сохранили. (В устаревших версиях прошивки второй файл назывался 0x00000.bin и 0x10000.bin)

    3. Далее, кто использует Windows, понадобится программа ESPFlashDownloadTool. Скачать можно с официального сайта производителя модулей ESP8266. Для этого надо скачать продукт с названием «Flash Download Tools (ESP8266 & ESP32)».

    4. После распаковки архива надо запустить исполняемый файл «flash_download_tools_*.exe» (на месте звездочки указана версия программы), нажать на кнопку «ESP8266 DownloadTool». Когда программа откроется, надо выбрать для прошивки оба файла 0x00000.bin и 0x20000.bin, и указать для них адреса 0x00000 и 0x20000. Выбрать тычку 32MBit. В списке COM: выбрать номер COM порта платы. В поле BAUD выбрать 115200. В общем, надо сделать как на следующей картинке.

    Теперь можно нажать кнопку START и ждать когда запишется прошивка.

    5. После окончания процесса записи плату надо настроить. Есть три способа:

    а) (Человеческий способ) Подключиться к WiFi сети устройства (ssid: «MyAP», сеть без пароля) и зайти через Веб-интерфейс по адресу http://192.168.4.1/.

    б) (Способ для бородатых админов, а также для случаев, когда надо восстановить доступ при неправильной конфигурации или забытом пароле. Подключаться надо по USB) Стандартной программой HyperTerminal на виртуальный COM-порт платы со скоростью 115200 бод.

    в) (Способ для бородатых админов, надо подключиться к WiFi сети «MyAP») В консоли «cmd» надо выполнить команду:

    telnet 192.168.4.1 7777

    6. Далее, в зависимости от выбранного способа предыдущего пункта:

    а) Тут вроде всё понятно но вот первоисточник.

    WebConfig nodemcu

    STA Setting — сюда вводят данные роутера, который раздаёт интернет. Тычка Automesh означает режим повторения, при котором плата будет расширять сеть с тем же самым SSID роутера и его же паролем. Это удобно, и в этом режиме можно несколько повторителей выстроить в удлиняющую цепочку. Если нужен именно этот режим, то ставим эту галку ( Automesh ) и нажимаем кнопку Connect — на этом настройка будет закончена. Если же нужен режим с другим названием новой сети, то галку не ставим, а тычем Connect и после перезагрузки устройства продолжаем настройку дальше:
    AP Settings — сюда пишем название (SSID) и пароль (Password) для новой сети, выбираем нужное шифрование сети. Дальше тычем Set. Опционально можно поиграться с Lock (заблокировать конфигурацию от изменений под пароль), но это лучше только после того, как всё заработает. Дальше жмём Restart.

    б, в) В консоли выбранной программы пишем и выполняем семь команд:

    Где DLINK3783 — название сети вашего основного WiFi-роутера, а 123456 — пароль этой сети; REPEATER — название новой точки доступа, PASSWORD — её пароль.

    После команды reset платка перезагрузится, подключится к точке доступа «DLINK3783» и создаст собственную точку доступа «REPEATER».

    7. Теперь, если в квартире есть угол в котором WiFi от модема ловится плохо, или не ловится вообще, то надо поместить эту NodeMCU где-то посередине между модемом и этим углом, затем подключиться к той же самой сети или сети «REPEATER», в зависимости от ранее выбранного режима Automesh . Всё, проблема решена.

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

    Arduino Nano 33 BLE

    • Беспроводной модуль — модуль U-blox NINA B306 с питанием от Nordic Semi nRF52480 микроконтроллера Arm Cortex-M4F с тактовой частотой 64 МГц, флэш-память 1 МБ, 256 КБ
      ОЗУ, связь Bluetooth 5.0 LE
    • Расширение — 2х 15-контактных разъема расширения с GPIO, SPI, I2C, USART, PWM, ADC, DAC, сбросом и сигналами питания (+ 3,3 В, GND, Vin, AREF,…)
    • Датчики — 9-осевой акселерометр, гироскоп и магнитометр
    • Отладка — через порт micro USB и 6-контактные припаянные пластины (SWD)
    • Размеры — Совместимо с оригинальным Arduino Nano

    Nano 33 BLE имеет более низкое энергопотребление по сравнению с другими платами того же размера и, таким образом, позволяет проектировать носимые устройства и проекты, чувствительные к движению. Также говорят, что плата идеально подходит для проектов автоматизации благодаря многопротокольной радиосвязи BT 5.0.

    Arduino Nano 33 BLE продается за 19 или 21 доллар в зависимости от того, нужны ли вам разъемы к вашей плате.

    Arduino IDE для ESP8266: быстрый старт

    1. Подключить USB-TTL к USB

    2. Подключить ESP8266 к USB-TTL как обычно. Если вы подключили ESP8266 по схеме без поддержки автозагрузки прошивки (не подключены DTR и RTS), то вручную соедините GPIO0 с землей, передерните питание модуля – все готово для прошивки

    3. Запускаем Arduino IDE

    4. В меню ИнструментыПлатаGeneric ESP8266 board (в самом низу)

    5. В меню Инструменты выбираем порт, к которому подключен наш USB-TTL

    6. В меню Инструменты – выбираете частоту, размер флеш памяти вашего модуля

    7. В меню Файл – Примеры (Образцы) – ESP8266WiFi – WiFiWebServer

    8. В скетче заполняете SSID и пароль вашей WiFi сети

    9. Жмем кнопку компиляции и загрузки скетча

    10. Ждем окончании процесса прошивки. После прошивки, если модуль подключен по схеме без поддержки автопрошивки, отсоедините GPIO0 от земли и передерните питание модуля без отключения USB-TTL от питания

    11. В меню Инструменты – Монитор последовательного порта

    12. Выбираем скорость 115200

    13. Смотрим что происходит в терминале

    14. Когда модуль подключится к сети, то появятся надписи в мониторе “WiFi connected” и “Server started”

    15. Ниже будет IP адрес вашего модуля ESP8266, например 192.168.1.248

    16. Открываете любой браузер, в строке адреса вбиваете “http://192.168.1.248/gpio/1″

    17. Смотрите монитор последовательно порта и если к ESP8266 к GPIO2 у вас подключен светодиод (через резистор, разумеется), то он включится.

    Автором этого проекта адаптации Arduino IDE для ESP8266 является наш соотечественник из Санкт-Петербурга Иван Грохотков.

    Задать вопросы автору проекта Ивану Грохоткову aka igrr или сообщить об ошибке в Arduino IDE для ESP8266 можно в специальном разделе на нашем форуме.

    Что для этого нужно

    1. Время. При наличии под руками всех компонентов, на реализацию Вы затратите от 30 минут до 1 часа своего драгоценного времени;
    2. Arduino, я в этом примере буду использовать Uno, но подойдет и Mega и Mini (я брал здесь);
    3. ESP8266, я использовал самую дешевую версию – 01 (я брал здесь), но подойдет любая с дефолтной прошивкой (поддержка AT-команд);
    4. Датчик температуры DS18B20 (я брал здесь), а лучше пару штук;
    5. Резистор 4,7кОм – 1 шт;
    6. Резистор 1кОм;
    7. Резистор 2кОм.

    Если заказать детали в Китайском экспресс — это обойдется Вам порядка 500 руб., если пойти в ближайший магазин радиодеталей – то в зависимости от карманного коэффициента магазина: 800-1000 руб.

    Установка Deauther 2.0

    Начнем с Deauther 2.0 — той самой прошивки, которую разработал Spacehuhn. В его репозитории на GitHub ты можешь выбрать версию для конкретной платы.

    Файлы с расширением bin — это скомпилированные скетчи. Их нужно устанавливать на плату через специальный загрузчик. Но если захочешь, то в архивах с исходным кодом ты отыщешь библиотеки и скетчи, которые можно поставить через Arduino IDE.

    Продолжение доступно только участникам

    Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

    Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

    голоса
    Рейтинг статьи
    Читайте так же:
    Схема подключение розетки для подключения электрической плиты
Ссылка на основную публикацию
Adblock
detector