Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ WiFi ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΊ Arduino: пошаговая инструкция

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ устройств Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ (IoT) начинаСтся с Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΈ бСспроводного интСрфСйса. Часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΊΠΎΠ³Π΄Π° Ρƒ домашнСго мастСра ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Π° Arduino Uno, Π½ΠΎ встроСнного модуля связи Π² Π½Π΅ΠΉ Π½Π΅Ρ‚. РСшСниСм становится Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ внСшнСго радиомодуля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΡΠ΅Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π³Π°Π΄ΠΆΠ΅Ρ‚Π°ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· смартфон. Π­Ρ‚ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ возмоТности для создания ΡƒΠΌΠ½Ρ‹Ρ… Ρ€ΠΎΠ·Π΅Ρ‚ΠΎΠΊ, мСтСостанций ΠΈ систСм ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°.

НаиболСС популярным ΠΈ доступным Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ являСтся Ρ‡ΠΈΠΏ ESP8266. Он сочСтаСт Π² сСбС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ WiFi-Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Π°. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ этот Ρ‡ΠΈΠΏ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎ, Π΅Π³ΠΎ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π² связкС с ΠΏΠ»Π°Ρ‚Π°ΠΌΠΈ Arduino для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° ΠΈΠ»ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΊΠΎΠ΄Π°. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΡƒΡŽ экосистСму Arduino IDE ΠΈ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ².

Π’ этом руководствС ΠΌΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ процСсс физичСского ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, настройки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ модуля. Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ошибок ΠΏΡ€ΠΈ ΠΏΠ°ΠΉΠΊΠ΅ ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ². ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²Π°ΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний источник питания 3.3 Π’ΠΎΠ»ΡŒΡ‚Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ стандартный ΠΏΠΎΡ€Ρ‚ USB ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° часто Π½Π΅ справляСтся с ΠΏΠΈΠΊΠΎΠ²Ρ‹ΠΌΠΈ Ρ‚ΠΎΠΊΠ°ΠΌΠΈ потрСблСния модуля Π²ΠΎ врСмя ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Π’Ρ‹Π±ΠΎΡ€ оборудования ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом являСтся ΠΏΠΎΠ΄Π±ΠΎΡ€ совмСстимых ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Базовая связка состоит ΠΈΠ· ΠΏΠ»Π°Ρ‚Ρ‹ Arduino (Ρ‡Π°Ρ‰Π΅ всСго Uno, Nano ΠΈΠ»ΠΈ Mega) ΠΈ модуля ESP8266. ΠœΠΎΠ΄ΡƒΠ»ΠΈ Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ-Ρ„Π°ΠΊΡ‚ΠΎΡ€Π°Ρ…, ΠΎΡ‚ простых ΠΏΠ»Π°Ρ‚ с Π°Π½Ρ‚Π΅Π½Π½ΠΎΠΉ Π΄ΠΎ слоТных ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… вСрсий. Для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ модСль ESP-01 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ продвинутая NodeMCU, которая ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ встроСнный USB-интСрфСйс.

Помимо основных ΠΏΠ»Π°Ρ‚, Π²Π°ΠΌ потрСбуСтся Π½Π°Π±ΠΎΡ€ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ². Для ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° Ρ‚ΠΈΠΏΠ° "ΠΏΠ°ΠΏΠ°-ΠΏΠ°ΠΏΠ°" с запасом Π΄Π»ΠΈΠ½Ρ‹. Если Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ стационарноС устройство, понадобятся ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° "ΠΏΠ°ΠΏΠ°-ΠΌΠ°ΠΌΠ°" для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ соСдинСния с ΠΌΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚ΠΎΠΉ. Π’Π°ΠΊΠΆΠ΅ Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΏΡ€ΠΎ ΠΌΠ°ΠΊΠ΅Ρ‚Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ (breadboard), которая Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΊΠΎΠΌΠΌΡƒΡ‚Π°Ρ†ΠΈΡŽ Π±Π΅Π· ΠΏΠ°ΠΉΠΊΠΈ.

  • πŸ”Œ ΠŸΠ»Π°Ρ‚Π° Arduino Uno ΠΈΠ»ΠΈ Nano β€” основной ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ для управлСния Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ.
  • πŸ“‘ ΠœΠΎΠ΄ΡƒΠ»ΡŒ ESP8266 (вСрсии ESP-01, ESP-12E ΠΈΠ»ΠΈ NodeMCU) β€” обСспСчиваСт Π±Π΅ΡΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΡƒΡŽ связь.
  • πŸ’Ύ АдаптСр USB-UART (CH340 ΠΈΠ»ΠΈ CP2102) β€” Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ, Ссли Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Arduino.
  • πŸ”‹ Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Π±Π»ΠΎΠΊ питания 3.3Π’ β€” обязатСлСн для ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ESP8266 ΠΏΠΎΠ΄ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ.

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ вСрсии модуля. Π‘Ρ‚Π°Ρ€Ρ‹Π΅ вСрсии ESP-01 ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ со ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ соСдинСния. РСкомСндуСтся Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ с индСксом ESP-12F ΠΈΠ»ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ Π½Π° ΠΈΡ… Π±Π°Π·Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ большС Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² GPIO ΠΈ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ Π°Π½Ρ‚Π΅Π½Π½Ρƒ. Π­Ρ‚ΠΎ упростит ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠœΠΎΠ΄ΡƒΠ»ΠΈ ESP8266 ΠΊΡ€Π°ΠΉΠ½Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ качСству питания. ИспользованиС Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ источника ΠΈΠ»ΠΈ Ρ‚ΠΎΠ½ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ цикличСским ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°ΠΌ ΠΈ сбросу настроСк.

πŸ“Š Какой ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ESP8266 Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
ESP-01 (ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ)
NodeMCU (с USB)
Wemos D1 Mini
ESP32 (Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹ΠΉ)
Π”Ρ€ΡƒΠ³ΠΎΠΉ

Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ модуля ESP8266 ΠΊ Arduino

ЀизичСскоС соСдинСниС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ логичСскиС ΡƒΡ€ΠΎΠ²Π½ΠΈ ΠΈ напряТСния питания Ρƒ Arduino ΠΈ ESP8266 ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ. ΠŸΠ»Π°Ρ‚Ρ‹ Arduino Uno Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с логичСской Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅ΠΉ Π² 5 Π’ΠΎΠ»ΡŒΡ‚, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ESP8266 β€” строго 3.3 Π’ΠΎΠ»ΡŒΡ‚Π°. ΠŸΡ€ΡΠΌΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Ρ… Π»ΠΈΠ½ΠΈΠΉ Π±Π΅Π· согласования ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ Ρ€Π°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡƒΠ»ΡŒ, хотя Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ESP-01 Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ 5Π’ Π½Π° Π²Ρ…ΠΎΠ΄Π΅ RX ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ врСмя.

Для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ Ρ†Π΅ΠΏΡŒ питания. Линия VCC модуля Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ 3.3 Π’ΠΎΠ»ΡŒΡ‚Π°. Линия GND соСдиняСтся с Π·Π΅ΠΌΠ»Π΅ΠΉ Arduino. Π‘ΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Π΅ Π»ΠΈΠ½ΠΈΠΈ TX ΠΈ RX Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Π΅ΡΡ‚ΠΈΡ‚ΡŒ: ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΈΠ½ (TX) Arduino соСдиняСтся с ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΌ (RX) модуля, ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚. Π­Ρ‚ΠΎ стандартная схСма ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ интСрфСйса UART.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° соотвСтствия ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² для классичСской связки Arduino Uno ΠΈ модуля ESP-01. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Arduino Nano ΠΈΠ»ΠΈ Mega, распиновка ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ, Π½ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ пСрСкрСстного соСдинСния TX/RX остаСтся Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΌ.

ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚ Arduino Uno ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚ ESP8266 (ESP-01) НазначСниС ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅
5V VCC ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ (Π½Π΅ рСкомСндуСтся) Волько для тСстов Π±Π΅Π· WiFi
GND GND ΠžΠ±Ρ‰Π°Ρ зСмля ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ
Digital 10 (RX) TX ΠŸΡ€ΠΈΠ΅ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… НуТСн Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ напряТСния
Digital 11 (TX) RX ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… БСзопасно для ESP
3.3V CH_PD Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠŸΠΎΠ΄Ρ‚ΡΠΆΠΊΠ° ΠΊ 3.3Π’

Π’Π°ΠΆΠ½Ρ‹ΠΌ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠΌ являСтся подтяТка ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΠ½ΠΎΠ². Пин CH_PD (ΠΈΠ»ΠΈ EN Π½Π° Π½ΠΎΠ²Ρ‹Ρ… вСрсиях) Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ соСдинСн с 3.3 Π’ΠΎΠ»ΡŒΡ‚Π° Ρ‡Π΅Ρ€Π΅Π· рСзистор 10 кОм, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ находился Π² Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ состоянии. Пин RST Ρ‚Π°ΠΊΠΆΠ΅ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Ρ‚ΡΠ½ΡƒΡ‚ΡŒ ΠΊ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ, хотя часто ΠΎΠ½ остаСтся Π²ΠΈΡΠ΅Ρ‚ΡŒ Π² Π²ΠΎΠ·Π΄ΡƒΡ…Π΅. Для Π²Ρ…ΠΎΠ΄Π° Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΏΠΈΠ½ GPIO0 Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚ΡŒ Π½Π° зСмлю ΠΏΠ΅Ρ€Π΅Π΄ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ питания.

Настройка Arduino IDE ΠΈ установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ESP8266 стандартной срСды Arduino IDE нСдостаточно, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ сторонних ΠΏΠ»Π°Ρ‚. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² мСню File β†’ Preferences. Π’ ΠΏΠΎΠ»Π΅ "Additional Boards Manager URLs" Π½ΡƒΠΆΠ½ΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ссылку Π½Π° Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ESP. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ IDE Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ компиляторы.

ПослС добавлСния ссылки ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² диспСтчСр ΠΏΠ»Π°Ρ‚ Ρ‡Π΅Ρ€Π΅Π· мСню Tools β†’ Board β†’ Boards Manager. Π’ поискС Π²Π²Π΅Π΄ΠΈΡ‚Π΅ "esp8266". Π’Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ "esp8266 by ESP8266 Community". НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Install ΠΈ Π΄ΠΎΠΆΠ΄ΠΈΡ‚Π΅ΡΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ². ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ нСсколько ΠΌΠΈΠ½ΡƒΡ‚ Π² зависимости ΠΎΡ‚ скорости ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ Π² мСню Tools. Для модуля ESP-01 Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ "Generic ESP8266 Module". Для ΠΏΠ»Π°Ρ‚ NodeMCU ΠΈΠ»ΠΈ Wemos D1 Mini Π²Ρ‹Π±ΠΈΡ€Π°ΠΉΡ‚Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ названия ΠΈΠ· списка. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ "Flash Size" Π²Ρ‹Π±Ρ€Π°Π½ объСм памяти, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ 1M ΠΈΠ»ΠΈ 4M). Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΠΎΡ€Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ устройство.

  • πŸ“₯ Бсылка для рСпозитория: http://arduino.esp8266.com/stable/package_esp8266com_index.json.
  • βš™οΈ Π’Ρ‹Π±ΠΎΡ€ ΠΏΠ»Π°Ρ‚Ρ‹: Generic ESP8266 Module (для ESP-01) ΠΈΠ»ΠΈ NodeMCU 1.0.
  • πŸš€ Upload Speed: рСкомСндуСтся ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ 115200 для быстрой ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.
  • πŸ“‚ Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ: установитС "ESP8266WiFi" Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.

ПослС установки всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² сдСлайтС ΠΏΡ€ΠΎΠ±Π½Ρ‹ΠΉ запуск. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ "Blink" ΠΈΠ· стандартных ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Arduino, Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π΅Π³ΠΎ ΠΏΠΎΠ΄ встроСнный свСтодиод ESP8266 (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΈΠ½ LED_BUILTIN ΠΈΠ»ΠΈ GPIO2) ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ скСтч. УспСшная Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ ΠΌΠΈΠ³Π°Π½ΠΈΠ΅ свСтодиода подтвСрдят ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ настройки срСды.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° настройки IDE

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° модуля ΠΈ тСстированиС связи

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ слоТный ΠΊΠΎΠ΄, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ исправСн ΠΈ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°. Π’ Arduino IDE ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Tools β†’ Serial Monitor ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ PuTTY. УстановитС ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ baud rate Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 115200 ΠΈΠ»ΠΈ 9600, Π² зависимости ΠΎΡ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ вашСго модуля.

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ AT ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Enter. Если ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ OK. Если ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π΅Ρ‚, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ², особСнно линию RX/TX ΠΈ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅. Иногда трСбуСтся Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Reset Π½Π° ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΈΠ»ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ GPIO0 с GND для Π²Ρ…ΠΎΠ΄Π° Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄.

AT

OK

AT+CWMODE=1

OK

AT+CWLAP

OK

Команда AT+CWMODE=1 ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° (Station), Ρ‡Ρ‚ΠΎ позволяСт Π΅ΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ Ρ€ΠΎΡƒΡ‚Π΅Ρ€Ρƒ. Команда AT+CWLAP сканируСт доступныС сСти WiFi Π²ΠΎΠΊΡ€ΡƒΠ³. Бписок сСтСй с ΠΈΡ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ сигнала ΠΈ Ρ‚ΠΈΠΏΠΎΠΌ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π°Π½Ρ‚Π΅Π½Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π²ΠΈΠ΄ΠΈΡ‚ эфир.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ ΠΊΠΎΠΌΠ°Π½Π΄ Π² Serial Monitor ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ Ρ€Π΅ΠΆΠΈΠΌ "Both NL & CR" (Newline ΠΈ Carriage Return). Π‘Π΅Π· этого ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠΎΠ½Π΅Ρ† строки ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Если Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΊΠ°ΠΊ Π²Π΅Π±-сСрвСр, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ вашСй домашнСй сСти. Команда AT+CWJAP="SSID","password" ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ соСдинСниС. Π’ ΠΎΡ‚Π²Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ выдаст IP-адрСс, присвоСнный Ρ€ΠΎΡƒΡ‚Π΅Ρ€ΠΎΠΌ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ устройство Π³ΠΎΡ‚ΠΎΠ²ΠΎ ΠΊ ΠΎΠ±ΠΌΠ΅Π½Ρƒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π½Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° AT?

Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ достаточный Ρ‚ΠΎΠΊ (ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 500мА Π² ΠΏΠΈΠΊΠ΅). ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Π½Ρ‹ Π»ΠΈ TX ΠΈ RX. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ baud rate Π΄ΠΎ 9600. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π° ΠΌΠΎΠ΄ΡƒΠ»Π΅ установлСна ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° Π±Π΅Π· AT-ΠΊΠΎΠΌΠ°Π½Π΄, Ρ‚ΠΎΠ³Π΄Π° Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Arduino ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ IoT устройства: Π²Π΅Π±-сСрвСр

ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ тСстирования ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ написанию ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ скСтча. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅Π³ΠΎ Π²Π΅Π±-сСрвСра, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ свСтодиодом Ρ‡Π΅Ρ€Π΅Π· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€. Код ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ESP8266WiFi ΠΈ ESP8266WebServer. Π­Ρ‚ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π±Π΅Ρ€ΡƒΡ‚ Π½Π° сСбя всю ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ стСку TCP/IP.

Π’ Π½Π°Ρ‡Π°Π»Π΅ ΠΊΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ вашСй сСти WiFi: имя (SSID) ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. Π—Π°Ρ‚Π΅ΠΌ создаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ сСрвСра Π½Π° ΠΏΠΎΡ€Ρ‚Ρƒ 80. Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup происходит ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ сСти, Π° Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ loop сСрвСр ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ входящиС запросы. Если ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ запрос Π½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Π½Π° ΠΏΠΈΠ½ подаСтся высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ напряТСния.

#include 

#include

const char* ssid = "YourNetworkName";

const char* password = "YourPassword";

ESP8266WebServer server(80);

void handleRoot() {

server.send(200, "text/plain", "Hello from ESP8266!");

}

void setup() {

Serial.begin(115200);

WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {

delay(500);

Serial.print(".");

}

server.on("/", handleRoot);

server.begin();

}

void loop() {

server.handleClient();

}

Π—Π°Π³Ρ€ΡƒΠ·ΠΈΠ² этот ΠΊΠΎΠ΄, ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Serial Monitor ΠΈ ΡƒΠ·Π½Π°ΠΉΡ‚Π΅ IP-адрСс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΠΌΠΎΠ΄ΡƒΠ»ΡŒ. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ этот адрСс Π² Π°Π΄Ρ€Π΅ΡΠ½ΡƒΡŽ строку любого Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΈΠ»ΠΈ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π΅), ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊ Ρ‚ΠΎΠΉ ΠΆΠ΅ сСти. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ привСтствСнноС сообщСниС. Π­Ρ‚ΠΎ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€Π΅Π»Π΅ ΠΈΠ»ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ².

Для управлСния Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ устройствами Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ запросов ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². НапримСр, Ссли URL содСрТит ?led=on, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΏΠΈΠ½, Ссли ?led=off β€” Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, простая ссылка Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ становится ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ управлСния физичСским ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

РСшСниС Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈ ошибок

Π’ процСссС настройки Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ часто ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с рядом стандартных ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. Бамая распространСнная ΠΈΠ· Π½ΠΈΡ… β€” ошибка "Failed to connect to ESP8266: Timeout" ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ скСтча. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Arduino IDE Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ с ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ. Π§Π°Ρ‰Π΅ всСго ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° кроСтся Π² Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π΅ замыкания GPIO0 Π½Π° зСмлю ΠΈΠ»ΠΈ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΌ ΠΏΠΈΡ‚Π°Π½ΠΈΠΈ.

Другая частая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ WiFi, Π½ΠΎ постоянно отваливаСтся. Π­Ρ‚ΠΎ классичСский ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠΈ Ρ‚ΠΎΠΊΠ°. USB-ΠΏΠΎΡ€Ρ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ Π΄ΠΎ 500 мА, Π½ΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ всплСсков мощности ESP8266 потрСбляСт Π΄ΠΎ 300-400 мА, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ просадку напряТСния. РСшСниС β€” использованиС качСствСнного USB-кабСля ΠΈΠ»ΠΈ внСшнСго Π±Π»ΠΎΠΊΠ° питания.

  • πŸ”Œ Ошибка "Timeout": ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ соСдинСниС GPIO0 с GND ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠ΄Π°Ρ‡Π΅ΠΉ питания.
  • πŸ“‰ ΠΠ΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ WiFi: Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ кондСнсатор 10-100 ΠΌΠΊΠ€ ΠΌΠ΅ΠΆΠ΄Ρƒ VCC ΠΈ GND модуля.
  • πŸ’Ύ Ошибка компиляции: ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ настройки ΠΏΠ»Π°Ρ‚Ρ‹ Π² мСню Tools.
  • πŸ”₯ ΠŸΠ΅Ρ€Π΅Π³Ρ€Π΅Π²: ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π³Ρ€Π΅Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π΄ΠΎΠ»Π³ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΡŒΡ‚Π΅ Π²Π΅Π½Ρ‚ΠΈΠ»ΡΡ†ΠΈΡŽ.

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Arduino Uno ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ESP8266 (ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Pass-Through), Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ‡ΠΈΠΏ ATmega с ΠΏΠ»Π°Ρ‚Ρ‹ Arduino ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π»ΠΈΠ½ΠΈΠΈ RX/TX ΠΎΡ‚ Ρ‡ΠΈΠΏΠ°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для связи с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ Ρ‡Π΅Ρ€Π΅Π· встроСнный ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ названия Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ… ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ. Если ΠΊΠΎΠ΄ пСрСстал Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ послС обновлСния Arduino IDE, ΡΠ²Π΅Ρ€ΡŒΡ‚Π΅ синтаксис с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ Π½Π° GitHub рСпозитория esp8266.

Π’Π°ΠΊΠΆΠ΅ стоит ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Π»ΠΈΠΌΠΈΡ‚Π°Ρ… памяти. Π‘ΠΊΠ΅Ρ‚Ρ‡ΠΈ для ESP8266 Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ слишком Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌΠΈ, особСнно Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ строк ΠΈΠ»ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΊΠΎΠ΄Π° ΠΈ использованиС констант Π² памяти Flash (Ρ‡Π΅Ρ€Π΅Π· F()) ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ.

Как ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ соСдинСния?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ экранированныС ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° для ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹Ρ… Π»ΠΈΠ½ΠΈΠΉ, Ссли устройство находится рядом с ΠΌΠΎΡ‰Π½Ρ‹ΠΌΠΈ источниками ΠΏΠΎΠΌΠ΅Ρ…. РазнСситС Π°Π½Ρ‚Π΅Π½Π½Ρƒ модуля подальшС ΠΎΡ‚ мСталличСских ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ΠΎΠ² ΠΈ самой ΠΏΠ»Π°Ρ‚Ρ‹ Arduino.

Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ (FAQ)

МоТно Π»ΠΈ Π·Π°ΠΏΠΈΡ‚Π°Ρ‚ΡŒ ESP8266 Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΎΡ‚ 5 Π’ΠΎΠ»ΡŒΡ‚ Arduino?

ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ‡Π΅ΡΠΊΠΈ Π½Π΅ рСкомСндуСтся. Π₯отя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ встроСнный стабилизатор, Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ напряТСниС 5Π’ находится Π½Π° ΠΏΡ€Π΅Π΄Π΅Π»Π΅ ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅ допустимого. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠ΅Ρ€Π΅Π³Ρ€Π΅Π²Ρƒ стабилизатора Π½Π° ΠΏΠ»Π°Ρ‚Π΅ модуля ΠΈΠ»ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Ρƒ Ρ‡ΠΈΠΏΠ° ΠΈΠ· строя. ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ 3.3Π’.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚ сСти WiFi?

Π§Π°Ρ‰Π΅ всСго ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ частот. ESP8266 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ стандарт 2.4 Π“Π“Ρ†. Если ваш Ρ€ΠΎΡƒΡ‚Π΅Ρ€ Ρ€Π°Π·Π΄Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 5 Π“Π“Ρ† ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½Π° сСтСй (SSID) ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ для ΠΎΠ±ΠΎΠΈΡ… Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ², ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡƒΡ‚Π°Ρ‚ΡŒΡΡ. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ сСти Π² настройках Ρ€ΠΎΡƒΡ‚Π΅Ρ€Π°.

Какой ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ радиус дСйствия Ρƒ ESP-01?

Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ пространствС малСнькая Π°Π½Ρ‚Π΅Π½Π½Π° ESP-01 обСспСчиваСт связь Π΄ΠΎ 50-100 ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Π’ условиях ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρ‹ с Π±Π΅Ρ‚ΠΎΠ½Π½Ρ‹ΠΌΠΈ стСнами радиус сниТаСтся Π΄ΠΎ 10-20 ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… расстояний Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшнюю Π°Π½Ρ‚Π΅Π½Π½Ρƒ ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ESP32.

НуТСн Π»ΠΈ рСзистор ΠΌΠ΅ΠΆΠ΄Ρƒ TX Arduino ΠΈ RX ESP8266?

Π”Π°, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»Π΅Π½. Arduino ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ 5Π’, Π° ESP8266 ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ 3.3Π’. ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ напряТСния ΠΈΠ· Π΄Π²ΡƒΡ… рСзисторов (1кОм ΠΈ 2кОм) обСзопасит Π²Ρ…ΠΎΠ΄ RX модуля ΠΎΡ‚ пСрСнапряТСния ΠΈ ΠΏΡ€ΠΎΠ΄Π»ΠΈΡ‚ Π΅Π³ΠΎ Тизнь.

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для видСостриминга?

НСт, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ESP8266 нСдостаточно для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ°. Для Ρ‚Π°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ESP32-CAM ΠΈΠ»ΠΈ спСциализированныС ΠΎΠ΄Π½ΠΎΠΏΠ»Π°Ρ‚Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ like Raspberry Pi.