Sadržaj:

Povežite Arduino Uno s ESP8266: 9 koraka
Povežite Arduino Uno s ESP8266: 9 koraka

Video: Povežite Arduino Uno s ESP8266: 9 koraka

Video: Povežite Arduino Uno s ESP8266: 9 koraka
Video: Как запрограммировать модуль реле Wi-Fi ESP8266 ESP-01 2024, Prosinac
Anonim
Povežite Arduino Uno s ESP8266
Povežite Arduino Uno s ESP8266

Dobrodošli! Upravo ćete pročitati korak-po-korak vodič o tome kako uspješno spojiti svoj Arduino Uno na internet s ESP8266 (ESP-01). To je ujedno i moj prvi Instructable ikada, stoga budi sa mnom, molim te!

Dopustite mi da počnem rekavši da je ESP8266 sićušan, jeftin komad hardvera koji, ako je pravilno programiran, može otvoriti ogroman svijet, posebno onaj IOT. Odjednom se svi vaši projekti mogu aktivirati putem weba, bilo putem telefona ili računala, jednim pritiskom na gumb. Mogućnosti su beskrajne i nekako me to jako uzbuđuje. Nažalost, to nije uvijek jednostavan proces i najvjerojatnije ćete naići na probleme koje ja nisam. U svakom slučaju, potrudit ću se odgovoriti na pitanja i spomenuti svaki problem na koji sam naišao!

Ažuriranje 2020.: Nedavno sam morao ažurirati novi ESP8266 i koristio sam ovaj članak kao svoj osobni vodič o tome kako to učiniti. Brzo sam shvatio da su neke veze koje sam dao zastarjele/ne rade, pa sam ih pokušao ponovno zamijeniti. Pritom sam otkrio da postoji novi fleš softver za ESP8266, kao i neki lijepo dokumentirani i ažurirani firmver. Potrudio sam se ažurirati ESP na najnoviji mogući firmver, ali bez uspjeha. Novi bljesak je sofisticiraniji, ali istodobno i složeniji. Dostupno je mnogo više preuzimanja firmvera (što je nevjerojatno), ali u isto vrijeme korisnici nemaju pojma koji će preuzeti. Tehnički, sve ovo zvuči jako dobro i ESP napokon ima neku "službenu" podršku i dokumentaciju, ali se istodobno toliko zakomplicirao. Nakon otprilike 4 sata istraživanja i pokušaja i pogrešaka, odlučio sam odustati i jednostavno koristiti isti flasher i datoteku koje sam koristio u ovom članku. Ažurirao sam veze i sada ih i hostiram, pa sve dok ne zeznem, bit će zauvijek na mreži. Ako želite pročitati nešto više o ovim novim dodacima iz zajednice, prijeđite na posljednji korak ovog Instructable -a gdje sam objavio neke dodatne veze.

Korak 1: Hardver

Hardver
Hardver

Ažuriranje za 2020.: Našao sam YouTube video koji se zapravo povezuje s ESP -om bez lemljenja i bez adaptera!

U redu, ovo je pomalo lukav dio jer postoji mnogo načina za komunikaciju s ESP6288. Pokušao sam pronaći najjednostavnije moguće načine i žao mi je što vam to moram reći, ali mislim da nećete moći uspješno prenijeti kod na ESP bez lemljenja male sklopke ili nekih gumba … Na kraju sam koristio sljedeći hardver:

  1. Arduino Uno
  2. ESP8266 (ESP-01)
  3. ESP8266 USB adapter
  4. ESP-01 adapter
  5. Prekidač za USB adapter
  6. 4 žice kratkospojnika ženka-mužjak
  7. USB kabel za povezivanje Arduina i računala

Kao što vidite, nisu toliko skupi, osim što nema potrebe koristiti ploču niti sve te čudne otpornike i slične stvari. Sve su to jednostavni adapteri i ožičenje.

Očigledno, trebat će vam Arduino kao i ESP8266. Ali tada su vam potrebna i dva adaptera za ESP:

  • Jedan da biste ga mogli programirati (broj 3 na popisu). Ovo je također adapter koji će imati vlastitu izmjenu sa prekidačem.
  • Drugi adapter kako ne biste ubili ESP povezivanjem na Arduino (broj 4 na popisu). Budući da ESP radi na 3.3V, 5V iz Arduina će ga ubiti. A 3.3V iz Arduina nisu dovoljno snažni.

Na kraju, potrebne su i neke kratkospojne žice i USB kabel za povezivanje Arduina s računalom.

Korak 2: Lemljenje prekidača na USB adapter

Lemljenje prekidača na USB adapter
Lemljenje prekidača na USB adapter
Lemljenje prekidača na USB adapter
Lemljenje prekidača na USB adapter

Nažalost, za programiranje ESP -a trebat će vam način povezivanja njegovog GND Pin i GPIO0 Pin. Uspio sam zalemiti sićušni prekidač koji vam omogućuje da odaberete želite li biti u "programskom načinu rada" ili ne. Sljedeći Youtube video će vam pomoći u ovom zadatku, toplo vam preporučujem da ga pogledate jer vam govori i nešto o softveru i zašto morate spojiti Ground i GPIO 0.

Ukratko, ovo sam učinio:

  • Odrežite jednu od vanjskih nogu prekidača, to može biti desna ili lijeva
  • Okrenite USB adapter naopako i lemite dvije nogice prekidača na pin GND i GPIO0. Pazite da ne spojite druge pinove jer kasnije možda neće raditi.
  • Testirajte prekidač multimetrom

Opet, ako ste u nedoumici, provjerite gornju vezu Youtube.

Također, na gornjoj slici je prekidač u "programskom načinu rada". U slučaju da ste lemili potpuno iste iglice prekidača kao ja, sada znate s koje je strane "Program mode".

A ako vam se ne sviđaju prekidači, evo vodiča s gumbima.

Korak 3: Softver

Za one koji samo traže veze, evo ih.

ESP8266:

  • Bljeskalica
  • Firmware (prilično sam siguran da će ovo biti najnovija verzija jer nije ažurirana od prosinca 2016)

Arduino Uno:

  • Arduino IDE
  • URL upravitelja ploče (ni to se neće promijeniti, uvijek je ista veza)

A za one, koji nemaju pojma što te veze znače, dopustite mi da vas vodim!

  1. Prvi korak je instaliranje Arduino IDE -a. Trebalo bi biti prilično jednostavno … Pritisnite sljedeći sljedeći itd. I gotovi ste.
  2. Sljedeće je postavljanje IDE -a tako da možete programirati svoj ESP. Da biste to učinili, morate otići u Datoteka -> Postavke i pri dnu ispod Dodatni URL -ovi upravitelja ploča: zalijepite sljedeći URL.
  3. Zatim prijeđite na Tools -> Board -> Boards Manager i pomaknite se dolje sve dok ne pronađete onu koja se zove esp8266 i pritisnite install. Najnoviju verziju, molim. Po završetku instalacije ponovno pokrenite IDE.
  4. Sada preuzmite i bljeskalicu i firmver za ESP. Na radnoj površini stvorite mapu pod nazivom "Flasher" i raspakirajte obje preuzete datoteke unutar nje. Trebat će nam kasnije.

Super, sad bi trebao imati sav softver potreban za programiranje ESP -a!

Korak 4: Testiranje ESP -a

Sljedeća je vaša prva veza s ESP -om. Ovaj dio je pomalo zeznut i ono što je meni uspjelo možda vam neće uspjeti … Nadajmo se najboljem.

Počnimo učitavanjem unaprijed pripremljene skice koja treperi plavom LED diodom na ESP -u. Da bi ovo uspjelo, trebat će vam sljedeće:

  • Preinačeni USB adapter za ESP, pa ga možete postaviti na "Program mode". Korak 2 ovog uputstva.
  • Saznajte na koji USB port (COM port) će biti spojen vaš ESP.

Ako ne poznajete COM port, ne brinite. Lako je saznati. Otvorite svoj IDE i kliknite alati -> Port i uzmite u obzir navedene portove. Nakon toga umetnite USB adapter i ponovno provjerite navedene portove. Novi je COM port koji tražite!

PS: Ja sam korisnik Windowsa. Ako se dobro sjećam, Mac -ovi ih ne zovu COM portovi. U svakom slučaju, trebalo bi još raditi!

Dakle, sada kada znate svoj port, slobodno priključite USB adapter! Trebao bi biti na "Program mode", drugim riječima, GND i GPIO0 trebaju biti povezani. Otvorite IDE i idite na Tools -> Board i odaberite Generic ESP8266 Module. Zatim u odjeljku Alati provjerite imate li sljedeće postavke:

  • Ploča: "Generički modul ESP8266"
  • Port: Vaš COM port

Na kraju, idite na Datoteka -> Primjeri -> ESP8266 -> Trepni i kliknite malu kvačicu u gornjem lijevom kutu IDE -a. Ovo će potvrditi vaš kôd i reći vam ako s njim nešto nije u redu. Toplo vam preporučujem da to učinite svaki put prije postavljanja skice na ESP ili Arduino! Ako uspije, vidjet ćete "Prevođenje je gotovo". tekst. Jedino što sada preostaje je kliknuti ikonu "strelica desno" u gornjem lijevom kutu IDE -a kako biste učitali kôd. Ako je sve ispravno postavljeno, trebali biste vidjeti da se učitava i na kraju dovršiti. Pogledajte svoj ESP, trebao bi imati trepćuću LED diodu! Čestitamo, upravo ste prenijeli svoj prvi program na svoj ESP!

U slučaju da ste ipak dobili grešku, ne brinite. Vjerojatno prekidač nije bio na desnoj strani. Isključite USB adapter i "prebacite prekidač", ponovno ga uključite i ponovite postupak. Ako radi, znate da je to strana "Programski način rada"! Ako to i dalje ne uspije, sretno. To sam i mislio s "ono što je meni uspjelo, možda vam neće uspjeti" … Postavite pitanja/probleme u komentarima i potrudit ću se pomoći!

PS: Slobodno isprobajte druge primjere! Možda Datoteka -> Primjeri -> ESP8266Wifi -> WifiScan. Nakon prijenosa otvorite Alati -> Serijski monitor i pričekajte nekoliko sekundi. Ako se ništa ne prikaže, postavite brzinu prijenosa na 9600 ili 115200. I upotrijebite "Oba NL i CR". Više o tome kasnije u ovom članku, stoga ne brinite ako niste dobili nikakav odgovor!

Korak 5: Testirajte AT naredbe

Testirajte AT naredbe
Testirajte AT naredbe

Ovaj korak nazivam neobaveznim jer mi u početku nijedna od cijelih AT naredbi nije radila. Iako sam bio siguran da ESP radi dobro jer je trepnuo s prethodnom skicom, a također sam uspio skenirati za Wifi. Ali svaki put kad sam pokušao razgovarati s njim preko AT naredbi, nikad nisam dobio odgovor. U svakom slučaju, pokazat ću vam korake koje sam napravio da bih mogao razgovarati s njim. Ako ne uspije, prijeđite na sljedeći korak.

Uključite svoj ESP u USB adapter i priključite ga u računalo. Pazite da nije u "Programskom načinu rada"! Idite na Alati i promijenite ploču u generički modul ESP8266. Provjerite je li odabran ispravan port, a zatim otvorite serijski monitor (Ctrl + Shift + M) i postavite sljedeće postavke:

  • I NL i CR
  • 115200 Baud

Ako je sve točno, pokušajte upisati "AT" na gornjoj traci i pritisnite enter. Trebali biste vratiti "U redu". Ako ipak dobijete "OK", onda ste se sveti dimovi upravo uspjeli povezati sa svojim ESP -om i možete biti ponosni i sretni! Sljedeće upišite "AT+GMR" da biste dobili više informacija o svom ESP -u. U slučaju da je verzija SDK -a 1,54, tada također možete preskočiti korak "Bljeskanje najnovijeg firmvera" budući da ga već imate.

U slučaju da niste dobili odgovor, pokušajte ponovo i/ili promijenite brzinu prijenosa. Preporučujem da ne gubite previše vremena s ovim, jer znate da vaš ESP radi zbog 4. koraka.

PS: Ako IDE želi da spremite skicu prije nego što je provjerite/učitate, nemojte je spremati. Imao sam problema sa spremanjem datoteka, a serijski monitor tada nije radio. Nisam siguran zašto, moram napraviti još neko testiranje, ali preporučujem vam da ne spremate svoje skice.

Korak 6: Ažuriranje najnovijeg firmvera

Bljeskanje najnovijeg firmvera
Bljeskanje najnovijeg firmvera

Čak i ako vam prethodni korak nije uspio, pokušajte ažurirati njegov firmver ovim korakom, možda će to popraviti!

Sada kada znate programirati svoj ESP, vrijeme je da ažurirate njegov firmver! Počnite tako da priključite svoj ESP u USB adapter, a zatim odaberete odgovarajuću ploču i priključak za njega. Ne zaboravite ga staviti u "Program mode", inače treptanje neće raditi!

Zatim ćete morati otvoriti mapu koju ste stvorili u "Korak 2: Softver", sjećate se? S bljeskalicom i.bin datotekom. Otvorite ga i pokrenite esp8266_flasher.exe. Ako vas pitaju za administratorska prava, recite da. Sada je također dobar trenutak za zatvaranje IDE -a, samo kako biste bili sigurni da ništa ne ometa. Pritisnite gumb Bin i odaberite datoteku pod nazivom "AiThinker_ESP8266_DIO_8M_8M_20160615_V1.5.4.bin". Provjerite je li vaš port pravi, je li sljedeći prozor postavljen na 0x00000 i je li vaš ESP u "programskom načinu" i kliknite Preuzmi. Trebao bi početi učitavati firmver na vaš ESP, a plava LED dioda trebala bi treptati. Pričekajte malo dok ne završi.

Kad završi, bit ćete nagrađeni greškom "Nije uspjelo napuštanje Flash načina rada", što je u redu. Zanemarite ga i zatvorite bljeskalicu. Upravo ste ažurirali firmver vašeg ESP -a! Lijepo.

U slučaju grešaka, opet: Provjerite je li vaš port pravi, je li sljedeći prozor postavljen na 0x00000 i je li vaš ESP u "programskom načinu"! Ako i dalje ne radi, rekao bih da vaš prekidač ne radi ispravno.

Na kraju, možda biste sada htjeli pokušati razgovarati sa svojim ESP -om putem AT -a, pogledajte korak "Test AT naredbi". Ako i dalje ne radi, ne brinite. Samo naprijed i ponovo prenesite Blink primjer kako biste bili sigurni da niste pokvarili svoj ESP. Ako uspije, još uvijek možete krenuti!

Korak 7: Povezivanje Arduina i ESP -a

Povezivanje Arduina i ESP -a
Povezivanje Arduina i ESP -a

Ovo je jednostavan korak koji vam pokazuje kako spojiti ESP na Arduino Uno! Kao što je spomenuto u koraku "Hardver", koristio sam ESP-01 adapter.

Prvo priključite svoj ESP na ESP-01 Adpater i provjerite je li okrenut na pravi način! Zatim zgrabite 4 kratkospojne žice i spojite ih na sljedeći način:

  • Priključite 3 na Arduinu na Pin RX na adapteru
  • Pin 2 na Arduinu za pin TX na adapteru
  • Priključite 5.5V na Arduinu na Pin VCC na adapteru
  • Prikvačite GND na Arduinu da biste pričvrstili GND na adapteru

Ožičenje izvedeno. Lako pzy zar ne?

PS: Preporučujem upotrebu crvene žice za 5V vezu i crnu žicu za GND vezu. To je samo standard u elektronici.

Korak 8: Završite + stvari koje morate imati na umu

U redu, ako ste slijedili moj vodič, a ja ništa nisam zabrljao, sada biste barem trebali imati radni ESP s ažuriranim firmverom. Možda čak razgovara s vama, a vi s njim, to bi bilo savršeno! Samo naprijed i istražite ovaj čudesni svijet IOT -a i slično. Možda ćete htjeti upaliti svjetlo pritiskom na gumb na telefonu ili možda uključiti sustav zalijevanja u svom vrtu (kao što ja pokušavam učiniti). Ne znam, pustit ću vas da odaberete. Slobodno u nastavku napišite povratne informacije/pitanja o ovom uputstvu!

Samo neke dodatne stvari koje treba imati na umu:

  • Dok učitavate kôd na svoj Arduino, Pin 0 (RX) mora biti besplatan!
  • Ako pokrećete svoj ESP kroz 3,3 V s Arduina, pazite da on možda nije dovoljno moćan i da ćete zbog toga možda dobiti greške! Toplo preporučujem adapter ESP-01.
  • U slučaju da želite komunicirati sa svojim ESP -om preko Arduina, a ne putem USB adaptera, morat ćete učiniti sljedeće:

    1. Potrebno: Morat ćete moći razgovarati s AT naredbama sa svojim ESP -om preko USB adaptera da biste se mogli prebaciti!
    2. Samo naprijed i priključite USB adapter s ESP -om. Provjerite nije li u "Programskom načinu rada"!
    3. Odaberite ploču ESP8266 i ispravite port te otvorite serijski monitor (115200 Baud).
    4. Upišite "AT" i vratite "OK".
    5. Morat ćemo promijeniti zadanu brzinu prijenosa ESP -a sljedećom naredbom: "AT+UART_DEF = 9600, 8, 1, 0, 0" (ili za neke verzije "AT+CIOBAUD = 9600").
    6. Trebali biste vratiti "OK" ili neku vrstu potvrde.
    7. Zatvorite serijski monitor.
    8. Isključite USB adapter i priključite svoj ESP u Arduino adapter. Spojite adapter na Arduino kao što je prikazano u koraku "Povezivanje Arduina i ESP -a".
    9. Povežite Arduino s računalom.
    10. Promijenite ploču na Arduino i odaberite ispravan port.
    11. Prenesite ovaj kôd na Arduino.
    12. Otvorite serijski monitor još jednom, ali ovaj put na 9600 Baud.
    13. Sada biste trebali moći upisati "AT" i vratiti "OK" natrag.

Korak 9: Veze

Evo popisa nekih veza koje sam pronašao na webu koje su mi pomogle, a mogle bi pomoći i vama!

  • Skicirajte Arduino Uno kako biste razgovarali s ESP -om
  • Postavite svoj ESP u "programski način" pomoću prekidača ili gumba

Ažuriranje 2020.:

  • Vodič o tome kako bljeskati s novim softverom za bljeskalicu
  • Za početak Espressif
  • Preuzimanja programa Flasher i SDK/AT od strane Espressifa
  • Opći podaci o većini stvari obuhvaćenih ovim člankom ovdje (uključujući podatke o tome kako flash ESP -om bez adaptera)

Preporučeni: