WLAN Arduino - pievienojiet ESP8266-01 ar Arduino un vadiet NodeMCU Amica no attāluma, izmantojot savu viedtālruni
Arduino ir viens no pazīstamākajiem izstrādātāju dēļiem. Diemžēl standarta modeļos nav instalēta Wi-Fi mikroshēma. Šis praktiskais padoms parādīs, kā savienot ESP8266-01 WLAN moduli ar Arduino un kā jūs varat attālināti vadīt NodeMCU Amica ar savu viedtālruni.
Kontrolējiet NodeMCU Amica ar savu viedtālruni
NodeMCU Amica ir dažādas piespraudes, kā arī iebūvēta ESP8266 Wi-Fi mikroshēma un microUSB ligzda. Tāpēc ir jēga ierīci vairāk izmantot kā patstāvīgu ierīci. Kā savienot "klasisko" ESP8266 plati ar Arduino, ir aprakstīts vēlāk rakstā.
- Lai varētu programmēt ESP mikroshēmas, vispirms ir jālejupielādē un jāinstalē visu Silicon Labs CP210er mikroshēmu draiveri. Par laimi tas notiek salīdzinoši ātri.
- Pēc tam atveriet Arduino IDE un dodieties uz Iestatījumi. Pievienojiet vietrādi URL "//arduino.esp8266.com/stable/package_esp8266com_index.json" (bez pēdiņām) papildu paneļa administratora vietrāžiem URL. Pēc tam sāciet paneļa administratoru, ievadiet "ESP8266" un instalējiet pakotni.
- Dodieties arī pie bibliotēkas pārvaldnieka, ievadiet “Blynk” un instalējiet jaunāko versiju. Tagad ir instalēti visi nepieciešamie komponenti.
- Jums ir nepieciešama Blynk lietotne, lai ar viedtālruni kontrolētu NodeMCU. Ja tas vēl nav izdarīts, izveidojiet šeit jaunu kontu vai piesakieties ar esošu. Pēc tam izveidojiet jaunu projektu un atlasiet NodeMCU kā dēli.
- Ar paraugu kodiem Arduino IDE jāatrod arī kods Blynk (→ "Boards_WiFi") NodeMCU. Šeit vienkārši ievadiet sava projekta Blynk marķieri, kurš jums automātiski tika nosūtīts pa e-pastu. Ievadiet arī savu SSID un paroli.
- Lai ielādētu kodu uz tāfeles, jums tas, protams, jāizvēlas cilnē “Rīki”. Mūsu gadījumā bija jāizvēlas "NodeMCU 1.0 (ESP12E modulis)", frekvence 80 MHz, atmiņas lielums "4M (3M SPIFFS)" un datu pārraides ātrums 115200. Tomēr, lūdzu, ņemiet vērā, ka informācija var atšķirties atkarībā no modeļa.
- Pēc tam kodu var vienkārši ielādēt uz tāfeles un kontrolēt to ar lietotni Blynk. Šeit jūs varat viegli izveidot dažādus logrīkus un, piemēram, ar pogu kontrolēt gaismas diodi.
Pievienojiet Arduino WiFi - ESP8266-01 ar Arduino
Tālāk mēs vēlamies savienot un izmantot ESP8266-01 moduli ar Arduino.
- Ja pagriežat dēli tā, lai tas būtu vērsts uz leju ar zelta antenu, augšējā kreisajā stūrī varat atrast VCC tapu, kas, protams, jāiestata uz HIGH. Labajā pusē ir RST tapa, kas jums parasti nav jāizmanto. Arī blakus esošajam CH_PD tapai atkal jābūt iestatītam uz HIGH. Augšējā labajā stūrī mums ir TXD tapa, kas izvada signālus, un apakšā kreisajā pusē mums ir RXD tapa, kas, protams, saņem signālus. Mums ir arī GPIO0 un GPIO2, kā arī klasiskais zemes tapa, kas atrodas labajā apakšējā stūrī.
- Lai varētu izmantot moduli Arduino, ir jēga izmantot SoftwareSerial, jo HardwareSerial lielākoties izmanto saziņai starp Arduino un datoru. Tomēr mūsu gadījumā modulis kā datu pārraides ātrumu izmanto 115200, kas nozīmē, ka saziņa starp ESP un Arduino nav iespējama, izmantojot SoftwareSerial.
- Lai mainītu pārraides ātrumu, daudzi lietotāji vienkārši mirgo jaunā programmaparatūrā, kas nodrošina atšķirīgu pārraides ātrumu. Tomēr tas nav absolūti nepieciešams, jo datu pārraides ātrumu var mainīt arī, izmantojot komandu. Šī komanda ir "AT + UART_DEF". Citas komandas, piemēram, "AT + IPR" vai "AT + CIOBAUD", var atrast arī internetā, taču tas nav ieteicams, jo "AT + IPR" jo īpaši var sagraut moduli.
- Lai nosūtītu komandu modulim, ieteicams to savienot ar personālo datoru ar USB adapteri, kas parasti tiek piegādāts bez maksas vai atrodams internetā par aptuveni vienu eiro. Ja jums nav USB adaptera, varat to pasūtīt tiešsaistē, kas ir ļoti ieteicams, vai arī izmantot universālu FTDI adapteri, kas ir diezgan sarežģīts un bieži nedarbojas pareizi. Alternatīvi ir vēl viens variants, kas tiks paskaidrots vēlāk.
- Ja moduli ar adapteri esat savienojis ar datoru, varat nosūtīt komandu "AT + UART_DEF = 9600, 8, 1, 0, 0" ar pārsūtīšanas ātrumu 115200 un CR + LF. Pēc tam jūs varat atkārtoti pieslēgt moduli un nosūtīt komandas ar pārsūtīšanas ātrumu 9600.
- Tālāk jums jāprogrammē Arduino. Kods ir samērā vienkāršs. Vispirms mēs definējam tukšu virkni ar komandu »String s =" ";«, importējam SoftwareSerial (»#include«) un izveidojam jaunu SoftwareSerial objektu (»SoftwareSerial Serial_ESP (2, 3);«). Iestatīšanas metodē tiek izveidots savienojums ar ESP (»Serial_ESP.begin (9600);«) un savienojums ar datoru (»Serial.begin (9600);«). Ja ESP nosūta signālu, tas tiek pievienots virknei, un virkne pēc tam tiek izvadīta seriālajā monitorā (»kamēr (Serial_ESP.avable ()> 0) {s + = (char) Serial_ESP.read ();}} if (s) ! = "") {Serial.println (s); s = "";} «). Un otrādi, seriālā monitora, t.i., datora, sūtītie signāli tiek pārsūtīti arī ESP ("kamēr (Serial.avable ()> 0) {Serial_ESP.write (Serial.read ())})". Tomēr ir ļoti svarīgi, lai visa lieta tiktu pārveidota par char, jo ESP nosūta numurus atpakaļ. Atkal kodu var atrast arī bilžu galerijā raksta beigās.
- Kad esat ielādējis kodu Arduino, jums ir jāpievieno ESP. Uzmanību! ESP 5, 3 vietā izmanto 3, 3 voltus. 5 V to pilnībā izjauc. Tā kā Arduino darbojas ar 5 V loģiku, attiecīgi jāpielāgo spriegums.
- Teorētiski jūs varat izmantot sprieguma dalītāju ar rezistoriem, taču praksē visa lieta ir diezgan neprecīza un to var viegli traucēt. Tādēļ jums jāpārslēdz loģikas līmeņa pārveidotājs starp Arduino un ESP.
- Savienojiet Arduino 5 V spraudni ar HV, t.i., pārveidotāja augstsprieguma kontaktu, un pārveidotāja LV spraudni ar ESP VCC kontaktu. Pievienojiet arī LV tapu paralēli ESP CH_PD tapai, lai mikroshēma arī būtu ieslēgta. Turklāt, lai iegūtu pietiekamu strāvu, jums vajadzētu savienot Arduino 3.3 V tapu ar pārveidotāja LV tapu, tātad attiecīgi ar ESP VCC un CH_PD. Tagad savienojiet TX spraudni no SoftwareSerial - mūsu gadījumā 3. tapa Arduino - ar HV 1, 2, 3 vai 4 un pretējo LV kontaktu ar RXD tapu uz ESP. Atkārtojiet šo darbību arī ar Arduino RX tapu.
- Visbeidzot, jums ir jāsavieno zeme. Lai to izdarītu, savienojiet Arduino zemi ar zemi pārveidotāja HV pusē. Tad savienojiet zemējumu LV pusē ar ESP zemi. Visbeidzot ir jāpievieno HV un LV zeme.
- Tagad ar Arduino palīdzību jūs varat viegli nosūtīt AT komandas ar datoru uz ESP. Jūs varat viegli savienot Arduino ar savu WiFi, izveidot tīmekļa serveri un daudz ko citu. Vienkārši pievienojiet atbilstošās AT komandas Arduino kodam (iestatīšanas metodē), kas jānosūta uz ESP, ko varat atrast arī sadaļā "AT instrukciju komplekts".
- Ja jums nav gatavs USB adapteris, varat arī nosūtīt komandu mainīt pārraides ātrumu caur HardwareSerial, izmantojot to pašu shēmu, izmantojot Arduino TX un RX tapas, t.i., 0 un 1. Tomēr neaizmirstiet attiecīgi pielāgot datu pārsūtīšanas ātrumu.
Nākamajā praktiskajā padomā mēs sniegsim jums ievadi Java programmēšanas valodā.