Wifi для arduino своими руками

Возможности подключения Wi-Fi модуля esp8266 к arduino

Wi-Fi модуль esp8266 можно присоединить к плате Ардуино или другой плате и вы получите стабильное соединение с рядом других преимуществ.

Доступные Wi-Fi модули

Передавать прошивки, обновления и прочие данные путём паяльника и проводов – не лучшее решение для Ардуино.

Однако микроконтроллеры для arduino wi-fi стоят недёшево, да и нужда в них есть далеко не всегда, отчего пользователи предпочитают их не использовать в своих проектах без надобности.

Но вот очередной китайский продукт захватил рынок, wi-fi jammer esp8266 своими руками можно присоединить к плате Ардуино или другой системе, и вы получите стабильное соединение с рядом других преимуществ.

Так давайте разберёмся с arduino uno wi-fi, и стоит ли покупать данный модуль, а также, что вообще собой представляет подобный микроконтроллер на wi-fi ардуино.

Сейчас большая часть пользователей ардуино уже не беспокоится о цене подобных девайсов, хотя ещё 3 года назад arduino wi-fi модуль считался роскошью. Всё это благодаря wi-fi jammer esp8266, производители которого ввели на рынок совершенно новый продукт, поражающей своей функциональностью и, одновременно с тем, являющийся достаточно дешёвым, что внесло весомую лепту и создало конкуренцию в этом направлении.

Таким образом, arduino wi-fi esp8266 сейчас считается самым доступным модулем на рынке, как и все его собратья. Так, цена на зарубежных площадках стартует от 2-х долларов, что позволяет пачками закупать данные модули и не перепрошивать их тысячу раз, перепаивая контакты, чтобы сохранить работоспособность.

Варианты модулей ESP

Сначала данный wi-fi модуль ардуино использовался, в основном, как arduino wi-fi shield, так как являлся наиболее дешёвым вариантом и ничем не уступал оригинальному. Устройство действительно практически легендарное, ведь весомых минусов за его стоимость не найти. Имеется множество библиотек, в том числе и пользовательских, а также поддерживает работу через Serial шины и простейшие АТ и АТ+ команды. Благодаря этому никакой семантики пресловутого С99, как это часто бывает с другими сторонними микроконтроллерами, изучать не нужно.

Соответственно, даже новичок разберётся за секунды, а профессионал сможет применить уже заготовленные библиотеки. Среди других достоинств отмечается:

  1. Процессор на 160 МГц, однако он 32-битный, что накладывает определённый отпечаток на производительность. Но стоит помнить, что модуль всё же применяется в связке с платами Ардуино, которые сами по себе режут высокие частоты и съедают большую часть ресурсов неизвестно для чего.
  2. Производитель, выпустивший wi-fi модуль esp8266, интересные проекты на этом не закончил, и сейчас имеется целая линейка микроконтроллеров проверенного качества.
  3. Современные стандарты защиты сети. Конечно, WPA и WPA2 уже давно не столь безопасны, как хотелось бы, но их наличие не может не радовать в таком дешёвом контроллере.
  4. 16 портов вывода, в том числе 10-битный, позволяющий поэкспериментировать с платой.

Что ещё важнее, с коробки вас ждёт постоянная память до 4 мегабайт, в зависимости от типа платы, а это в разы упрощает работу с большими библиотеками и даже некоторыми медиа-файлами. Ведь на большинстве плат ардуино и 1 мегабайт считается непозволительной роскошью.

Читайте также:  Интересные идеи для хомяка своими руками

Характеристики esp8266 wi-fi безусловно радуют, особенно в сравнении с его более дорогими конкурентами, но у пользователя, не имевшего ранее опыта с данными платами, возникнет вопрос о том, как же его подключить. Дело в том, что модуль имеет гораздо больше пинов, чем привыкли видеть новички, а, соответственно, у тех начинается паника. Однако, если разобраться в ситуации, то на деле в этом нет ничего сложного. Достаточно запастись припоем и паяльником и просто почитать инструкцию.

Как подключить Wi-Fi модуль

Давайте же рассмотрим подключение esp8266 esp 12e и что такое esp8266 мост wi-fi uart. Ведь именно подключение и настройка модуля вызывают больше всего вопросов.

Распиновка esp8266 esp 12e

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

Перед подключением стоит подгрузить последнюю прошивку, позволяющую увеличивать скорость обмена пакетами до 9600 единиц информации в секунду. А проверять соединение мы будем через кабель usb-ttl и соответствующий терминал от CoolTerm.

Схема подключения ESP8266 к Arduino Nano

Пины для подключения вышеописанного кабеля стандартные, а вот питание идёт через 3.3 вольтовый пин с Ардуино. Важно помнить, что максимальную силу тока, которую подаёт плата, невозможно поставить выше 150 мА, а esp8266 esp 07 и esp8266 witty cloud wi-fi модуль для arduino требуют 240 Ма.

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

Вариант подключения модуля ESP и Ардуино Uno

Еще один вариант подключения ниже. Важно — контакты RX-TX соединяются перекрестием. Так как уровни сигналов модуля ESP8266 3.3В, а Arduino 5В, нам нужно использовать резистивный делитель напряжения для преобразования уровня сигнала.

Прописываем Wi-Fi модуль

Как известно, при должном опыте можно и шилд esp8266 ex 12e сопрячь со смартфоном, но у новичков и прописка esp8266 esp 12 в системе Ардуино вызывает трудности. На деле достаточно подключить модуль и проверить его работоспособность, скинув несколько штатных команд АТ через меню отладки.

Например, можно добавить мигание штатным светодиодом (для схемы подключения выше):

Как только плата подтвердит, что видит микроконтроллер в системе, можно начинать полноценную работу с ним. Однако стоит отметить, что если сама плата ардуино используется в проекте лишь для подключения данного контроллера – это иррационально.

Достаточно USB-UART преобразователя, так как esp8266 не использует «мозги» ардуино, а своей флеш-памяти ему вполне хватит для хранения пары базовых библиотек и прошивок.

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

Читайте также:  Вещи созданные своими руками это роскошь

Важное замечание! Для последней схемы скетч загружаем в Arduino как обычно, но так как модуль ESP8266 подключен к контактам 0 и 1, программирование становится невозможным. Компилятор будет показывать ошибку. Отсоедините провода идущие к ESP8266 от контактов 0 и 1, произведите программирование, а после верните контакты на место и нажмите кнопку сброса в Arduino.

Источник

Добавляем WiFi к Arduino Uno

В этом уроке мы подключим наш микроконтроллер Arduino Uno к Интернету, используя модуль ESP8266 WiFi.

Шаг 1. Комплектующие

Модуль ESP8266 WiFi представляет собой полноценную сеть Wi-Fi, а вы можете легко подключиться в качестве обслуживающего адаптера Wi-Fi, интерфейса беспроводного доступа в Интернет к любому устройству на основе микроконтроллера благодаря простому подключению через последовательный интерфейс или интерфейс UART.

Добавление этого модуля в проекты где используется Arduino откроет новые интересные возможности.

Детали, используемые в проекте Arduino WiFi мы перечислим ниже. Компоненты оборудования:

  • Arduino UNO × 1
  • ESP8266 ESP-01 × 1
  • Перемычки (на выбор) × 1
  • Резистор 10 кОм × 1
  • Резистор 1 кОм × 2

Шаг 2. Суть проекта

Есть много способов использовать ESP866 для коммуникаций. Некоторые могут использовать его для отправки/получения данных онлайн или регулярной загрузки данных. В этом уроке мы покажем, как мы можем общаться с Arduino по беспроводной связи, используя ваш телефон (Android или iPhone). Всё будет сделано в автономном режиме, поэтому не нужно иметь подключение к интернету.

ESP8266 будет служить точкой доступа (режим AP), то есть он будет предоставлять доступ к сети Wi-Fi другим устройствам (станциям) и далее подключать их к проводной сети. Процесс этот довольно прост.

Распиновка ESP

Используйте свой телефон, чтобы отправить любую команду в Arduino, а с помощью ESP8266 все будет работать без проводов.

Шаг 3. Схема соединения

Мы можем соединить Ардуино и WiFi модуль двумя способами — первый с резисторами и второй вариант без резисторов. Остановимся на обеих схемах.

Вариант 1

Соединяем контакты, как описано на прилагаемой таблице контактов ниже:

Следуйте этим шагам:

  • подключите красный провод к VIN (3,3 В) к питанию + 3,3 В от микроконтроллера;
  • подключите черный провод к земле;
  • подключите зеленый провод к TX модуля Wifi и микроконтроллера;
  • подключите желтый провод к RX модуля Wi-Fi и микроконтроллера.

Подключите VIN к 3,3 В для включения питания, а также контакт ENABLE для включения модуля.

TX подключен к RX, что означает, что все, что мы хотим передать в ESP8266, получит Arduino UNO. И наоборот для RX в TX. Создав эту схему, мы теперь готовы запустить WiFi с Arduino UNO.

Вариант 2

Соедините контакты, соответственно этой таблице контактов ниже:

Следуй этим шагам:

  • подключите оба контакта ECC VCC / 3.3V / Power Pin и Enable (красные провода) к резистору 10 кОм, а затем к выводу питания Uno + 3.3V;
  • соедините контакт заземления / заземления ESP (черный провод) с выводом заземления / заземления Arduino Uno;
  • подключите TX ESP (зеленый провод) к контакту 3 Uno;
  • подключите RSP (синий провод) ESP к резистору 1 кОм, затем к контакту 2 Uno;
  • подключите RX (синий провод) ESP к резистору 1 кОм, затем к выводу GND заземления Uno.

О схеме

Вывод питания ESP на ESP11 имеет маркировку VIN, однако для некоторых версий это может быть 3,3 В или Power или VCC. Вам также нужно будет включить вывод ESP CH_EN или Enable, чтобы он работал.

Читайте также:  Индуктивная зарядка своими руками

Как мы уже обсуждали, — не используйте напряжение на ESP больше чем 3.3 В. ESP8266 строго использует 3,3 В. Более того, это разрушит модуль. Так как Arduino имеет 5 В, нам пришлось поставить делитель напряжения — это резисторы.

TX ESP подключен к RX Arduino Uno, что означает, что все, что мы хотим передать (TX) в ESP, получит (RX) от Uno, и наоборот. Создав эту схему, мы теперь готовы запустить WIFI с Arduino UNO.

Шаг 4. Настройка соединения

После того, как все настроено, вы заметите, что ваш ESP8266 Wifi будет доступен в радиусе действия вашего телефона.

1. Скачать TCP Client для Android

Вы можете скачать любой TCP-клиент, доступный в Play Store, но я использовал TCP-клиент от Sollae Systems

2. Со своего телефона подключитесь к вашему ESP8266 Wifi

Если ваш Wi-Fi ESP8266 не отображается в доступных сетях Wi-Fi, убедитесь, что ваш Arduino работает и все подключено правильно. Если нет, устраните неполадки вашего ESP, следуя документации модуля.

Обычно имя wifi / ssid начинается в ESP после его названия версии, у меня ESP11.

3. После подключения получите статический IP-адрес.

IP-адрес по умолчанию в режиме AP — 192.168.4.1.

Вы можете изменить статический IP-адрес, следуя этой Wifi.config() ссылке.

4. Откройте TCP Client, который вы загрузили ранее.

Создайте соединение, нажав кнопку «Подключить», добавьте IP-адрес ESP и порт 80 следующим образом:

80 — это порт, который я использовал для нашего сервера ESP, но вы можете изменить его, заменив 80 на любой номер порта из нашего кода в строке 23.

5. Подождите, пока на консоли TCP появится сообщение «Подключено».

Шаг 5. Общаемся с Arduino Uno через смартфон

После подключения отправьте запрос, введя следующий код для клиента TCP:

Или включите встроенный светодиод с помощью команды:

Или выключите встроенный светодиод с помощью команды:

Или просто скажите:

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

Важно: esp8266, LEDON, LEDOFF и HELLO — пользовательский идентификатор команды. Если вы используете что-то кроме этих, он вернет ErrRead. ErrRead означает, что из отправленного вами сообщения не найдено ни одного идентификатора команды. Сообщение ErrRead кодируется в строке 64.

Шаг 6. Код проекта

Скачать или скопировать код вы можете ниже:

Существуют разные типы ESP8266. Измените скорость передачи в коде в строке 16 в зависимости от того, что использует ваш ESP8266.

Весь наш запрос будет прочитан и разобран в функции loop():

Вы можете увидеть, что я использовал функцию find( , ), чтобы интерпретировать сообщение и сообщить Arduino, какой код вызывать. Если вы хотите связаться с Arduino UNO или попросить что-то сделать, просто добавьте свое условие. например:

Мы добавили некоторую функцию для связи с ESP8266:

Если вы знакомы с созданием мобильных приложений, веб-приложений, веб-служб или веб-разработкой в целом, вы можете создавать клиентские приложения, которые могут отправлять TCP-запросы в ESP. Примеры приложений, которые вы можете сделать: удаленное управление устройствами, веб-панель управления, чат-бот, приложение с кнопками и т.д

Источник

Оцените статью