Sadržaj:
- Korak 1: Stvari koje će vam trebati
- Korak 2: Nekoliko informacija o ESP8266
- Korak 3: Ispis ESP8266
- Korak 4: Što bi trebalo koristiti za komunikaciju s ESP8266?
- Korak 5: Montiranje ESP8266 na pločicu
- Korak 6: Napajanje
- Korak 7: Pretvorba logičke razine
- Korak 8: Veze
- Korak 9: Početak
- Korak 10: AT naredbe
- 11. korak: Opća sintaksa AT naredbi
- Korak 12: Povezivanje na Wifi
- Korak 13: Govorite stvari
- Korak 14: Još nekoliko AT naredbi
- Korak 15: Postavljanje TCP veze
- Korak 16: Slanje tvita
- Korak 17: Što učiniti nakon ovoga
Video: Vodič za početnike o ESP8266 i tvitovanju pomoću ESP8266: 17 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Naučio sam o Arduinu prije 2 godine. Pa sam se počeo igrati s jednostavnim stvarima poput LED dioda, gumba, motora itd. Tada sam pomislio da ne bi bilo super spojiti se na stvari poput prikaza dnevnog vremena, cijena dionica, rasporeda vlakova na LCD zaslon. Otkrio sam da se to može učiniti slanjem i primanjem podataka putem interneta. Dakle, rješenje je bilo povezivanje s internetom. Počelo je moje pretraživanje kako spojiti Arduino na internet i slati i primati podatke. Naučio sam o wifi modulima na internetu i otkrio da su vrlo skupi. Zatim sam saznao za ESP8266.
Puno sam čitao na internetu o modulu ESP8266 prije otprilike godinu dana i kupio jedan, ali sam s njima počeo raditi tek prošlog mjeseca. U to vrijeme nije bilo dostupnih opsežnih informacija. Međutim, sada je dostupno mnogo dokumentacije, video zapisa na internetu u vezi s firmware -om, AT naredbama, projektima itd. Pa sam odlučio početi.
Napisao sam ovo uputstvo kao vodič za početnike jer sam se suočio s mnogo problema pri povezivanju i početku rada s ESP8266. Zato sam odlučio napisati ovaj Instructable kako bi ga drugi ljudi koji naiđu na probleme sa svojim modulima mogli brže riješiti
U ovom Instructable ću pokušati pokazati
- Kako spojiti ESP8266 i komunicirati s njim putem Arduino Uno.
- Također ću pokušati pokazati kako se tweet može poslati putem njega pomoću Thingspeaka.
Što može učiniti ESP8266? Ograničeno je vašom maštom. Vidio sam projekte i vodiče na internetu koji pokazuju kako dohvatiti gradsku temperaturu, cijene dionica, slati i primati e -poštu, telefonirati i još mnogo toga. Pokazat ću u ovaj Instructable kako poslati tweet.
Korak 1: Stvari koje će vam trebati
Evo stvari koje će vam trebati. Većina se može kupiti u bilo kojoj trgovini električnom energijom ili na internetu (naveo sam veze za referencu).
- 1xESP8266 (ESP -01) -ebay
- 1xBreadboard adapter (naučite kako ga napraviti ovdje ili upotrijebite neke kratkospojne žice)
- 1xLM2596 -ebay
- 1xLogic pretvarač razine -ebay
- 1xArduino Uno
- USB kabel za Arduino Uno
- 1xBreadboard -ebay
- Žice -ebay
- Arduino IDE
- Račun s Thingspeakom
Ukupni trošak bit će oko 600 Rs (oko 9 USD). Isključio sam cijenu Arduino Uno jer ovisi o tome želite li original ili klon. Najjeftiniji klonovi dostupni su po cijeni od 500 Rs (oko 4 USD).
Korak 2: Nekoliko informacija o ESP8266
ESP8266 je lansiran 2014. prije samo godinu dana pa je prilično nov. Čipove proizvodi Espressif.
Prednost
Najveća prednost ESP8266 je možda njegova cijena. Prilično je jeftin i par njih možete kupiti odjednom. Prije nego što sam to saznao, nisam mogao ni pomisliti na kupnju wifi modula. Bili su preskupi.. Nove verzije ESP8266 objavljuju se prilično često, a najnovija je ESP 12. Međutim, u ovom Instructableu usredotočit ću se samo na ESP 01 koji je prilično popularan. Štoviše, kada kupujete ESP8266, dolazi s prethodno učitanim zadanim AT firmverom. dobro je da počnete čim ga kupite.. Također, kao što ćete vidjeti iz ovog uputstva, prilično je jednostavno povezati ih.
Hendikep
Svaki uređaj ima svoje prednosti i nedostatke, a ESP se ne razlikuje. ESP se ponekad može pokazati kao jako škakljiv i frustrirajući za rad. Budući da je sasvim nov, bit će vam teško doći do informacija o njemu. Na sreću zajednica na esp8266.com postoji što je od velike pomoći. Štoviše, ponekad također počinje raditi neočekivane stvari poput bacanja tovara smeća kroz serijsku vezu itd.
Imajte na umu da je na internetu dostupno mnogo dokumentacije, a neki su njezini dijelovi kontradiktorni. Ovaj Instructable se ne razlikuje. Dok sam se igrao sa svojim ESP8266 otkrio sam da je jako odstupao od onoga što je spomenuto na internetu (vaš također), ali radilo je dobro.
Korak 3: Ispis ESP8266
ESP8266 ima 8 pinova kao što je prikazano.
Gnd i Vcc trebaju biti uobičajeno spojeni na uzemljenje i napajanje. ESP8266 radi na 3.3V.
PIN za resetiranje koristi se za ručno resetiranje ESP -a. Obično bi trebao biti spojen na 3.3V. Ako želite resetirati ESP, povežite ovaj pin na uzemljenje na trenutak, a zatim natrag na 3.3V.
CH_PD je napajanje čipa koje bi trebalo normalno spojiti na 3.3V.
GPIO0 i GPIO2 su ulazni izlazi za opću namjenu. Oni bi trebali biti normalno spojeni na 3,3 V. Međutim, pri bljeskanju firmvera spojite GPIO0 na gnd.
Rx i Tx pinovi su odašiljački i prijemni pinovi ESP8266. Oni rade na 3.3V logici, tj. 3.3V je logika HIGH za ESP8266.
Detaljne veze dostupne su u kasnijim koracima.
Korak 4: Što bi trebalo koristiti za komunikaciju s ESP8266?
Postoji mnogo uređaja koji se mogu koristiti za komunikaciju s ESP8266, kao što su FTDI programeri, USB na TTL serijski pretvarač, Arduino itd. Međutim, ja sam koristio Arduino Uno jednostavno zato što je najlakši i gotovo ga svi imaju. Također ako imate imate Arduino, imate i Arduino IDE, a njegov serijski monitor može se koristiti za komunikaciju s ESP8266. Dakle, ne trošite novac na programere FTDI -a itd.
Međutim, ako želite ili ako ga već imate, možete upotrijebiti FTDI programator ili USB u TTL serijski pretvarač (više o tome kako ih kasnije spojiti). Također postoji mnogo softvera poput RealTerma ili kita. Možete koristiti ovo na isti način kao i serijski monitor Arduino IDE -a.
Korak 5: Montiranje ESP8266 na pločicu
Uočite da pinovi ESP8266 nisu prilagođeni matičnoj ploči. To se može prevladati na dva načina.
Upotrijebite žice kratkospojnika za žene koje mogu učiniti nered ili
Učinite kako je prikazano u ovom uputstvu ili
Koristite adaptersku ploču, napravite je sami (ima ih puno na Instructables) što je uredno.
Korak 6: Napajanje
ESP8266 radi na napajanju od 3.3V. Nemojte ga spajati na 5V pin na Arduinu. Vjerojatno će izgorjeti.
Neki su vodiči sugerirali izradu sklopa razdjelnika napona pomoću 1k, 2k otpornika s 5V kao ulazom i dobivanjem 3.3V preko 2k otpornika i napajanjem na Arduino. Međutim, otkrio sam da se ESP nije ni uključio kad sam to učinio.
Uspio sam ga uključiti pomoću 3.3V na Arduinu, ali otkrio sam da se ESP nakon nekog vremena zagrijao.
Možete koristiti regulator napona od 3,3 V.
Ili možete upotrijebiti LM2596 dc-dc stepenični pretvarač. Oni su prilično jeftini. A ja sam ih koristio. Dajte 5V iz Arduina na ulaz. Podesite potenciometar na modulu, sve dok izlaz ne postane 3.3VI i ustanovi se da se ESP može napajati s jedne od ovih satima. Povežite se kako je prikazano na slici.
Korak 7: Pretvorba logičke razine
Spominje se da ESP ima 3.3V logiku, dok Arduino ima 5V logiku.
To znači da je u ESP -u 3.3V logička VISOKA, dok je u Arduinu 5V logička VISOKA. To može uzrokovati neke probleme prilikom njihovog međusobnog povezivanja.
Našao sam na internetu da se konverzija logičke razine mora primijeniti prilikom povezivanja ESP Rx i Tx s Arduinom.
Neki su vodiči spomenuli da je potrebna pretvorba logičke razine dok se povezuje ESP Rx pin.
Međutim, otkrio sam da samo normalno spajanje ESP Rx i Tx pinova na Arduino nije uzrokovalo nikakve probleme
Spojio sam Rx i Tx putem pretvarača logičke razine, kao i samo Rx, ali nisam dobio nikakav odgovor.
Međutim, otkrio sam da spajanje ESP Tx pina preko pretvarača logičke razine tijekom izravnog povezivanja Tx -a također nije uzrokovalo probleme
Dakle, pretvarač logičke razine može se koristiti, a i ne koristiti.
Upotrijebite bilo koju metodu koja vam odgovara pomoću pokušaja i pogrešaka.
Korak 8: Veze
Priključci ESP8266 su:
ESP8266
Gnd ------------------- Gnd
GPIO2 --------------- 3.3V
GPIO0 --------------- 3.3V
Rx -------------------- Rx Arduina
Tx --------------------- Tx Arduina (izravni ili putem logičkog pretvarača razine)
CH_PD -------------- 3.3V
RESETIRANJE -------------- 3.3V
Vcc -------------------- 3.3V
(Imajte na umu da bi u nekim verzijama ESP Rx trebao biti spojen na Arduino Tx, a ESP Tx na Arduino Rx).
Ako koristite FTDI programator ili USB na TTL serijski pretvarač, spojite njihove Tx i Rx na Rx i Tx na ESP8266.
Korak 9: Početak
Nakon uspostavljanja veze učitajte
void setup ()
{}
void loop ()
{}
prazna skica za Arduino..
Otvorite serijski monitor i postavite ga na "Oba NL & CR".
Eksperimentirajte s Baud brzinom. Obično bi trebala biti 9600, iako ponekad može biti 115200.
Korak 10: AT naredbe
Jednostavno govoreći AT naredbe su naredbe koje se mogu poslati na ESP8266 kako bi mu se omogućilo izvođenje nekih funkcija, poput ponovnog pokretanja, povezivanja na wifi itd. ESP će kao odgovor poslati neku potvrdu u obliku teksta. Dolje sam objasnio neke AT naredbe i kako ESP reagira na njih. Imajte na umu da pod slanjem mislim na upisivanje naredbe i pritiskanje enter (return).
Pošaljite AT putem serijskog monitora
Ova se naredba koristi kao testna naredba.
Kako ESP reagira: treba vratiti OK.
Pošaljite AT+RST putem serijskog monitora
Ova naredba se koristi za ponovno pokretanje modula.
Kako ESP reagira: ESP vraća hrpu smeća. Međutim, potražite Spremno ili spremno.
Pošaljite AT+GMR putem serijskog monitora
Ova naredba se koristi za određivanje verzije firmvera modula.
Kako ESP reagira: Treba vratiti verziju firmvera.
Firmware je dio softvera koji je instaliran na uređaju koji se obično nalazi na njegovom ROM -u (samo za čitanje memorije), tj. Ne namjerava se mijenjati često ili uopće ne. Omogućuje kontrolu uređaja i upravljanje podacima. ESP8266 ima broj različitih firmware -a koji su svi prilično laki za bljeskanje (instalaciju).
11. korak: Opća sintaksa AT naredbi
Data je opća sintaksa AT naredbi za izvršavanje različitih funkcija:
AT+parametar =?
Kada se naredba ovog tipa šalje putem serijskog monitora, ESP vraća sve vrijednosti koje parametar može poprimiti.
AT+parametar = val
Kada se naredba ovog tipa šalje putem serijskog monitora, ESP postavlja vrijednost parametra na val.
AT+parametar?
Kada se naredba ovog tipa šalje putem serijskog monitora, ESP vraća trenutnu vrijednost parametra.
Neke AT naredbe mogu uzeti samo jedan od gore navedenih tipova, dok neke mogu uzeti sve 3.
Primjer naredbe koja je moguća u sve tri navedene vrste je CWMODE, koja se koristi za postavljanje wifi načina.
Poslati AT+CWMODE =? preko serijskog monitora
Kako ESP reagira: Sve vrijednosti koje ESP CWMODE može uzeti (1-3) vraćaju se posebno +CWMODE (1-3). Gdje
1 = Statičko
2 = AP
3 = I statički i AP
Pošaljite AT+CWMODE = 1 putem serijskog monitora
Kako ESP reagira: U redu treba vratiti ako dođe do promjene u CWMODE -u u odnosu na prethodnu vrijednost i ako je postavljena na statičku, inače se ne smije vratiti promjena ako nema promjene u vrijednosti CWMODE.
VAŽNO: Osim ako je CWMODE postavljen na 1, naredbe u kasnijim koracima neće raditi.
Poslati AT+CWMODE? preko serijskog monitora
Kako ESP reagira: Sadašnju vrijednost CWMODE -a treba vratiti, posebno ako ste slijedili gornji korak +CWMODE: 1 treba vratiti.
Korak 12: Povezivanje na Wifi
Pošaljite AT+CWLAP putem serijskog monitora
Ova se naredba koristi za popis svih mreža na tom području.
Kako ESP reagira: Treba vratiti popis svih dostupnih pristupnih točaka ili WiFi mreža.
Pošalji AT+CWJAP = "SSID", "lozinka"
(uključujući dvostruke navodnike).
Ova naredba se koristi za pridruživanje WiFi mreži.
Kako ESP reagira: U redu je potrebno vratiti ako je modul spojen na mrežu.
Poslati AT+CWJAP? preko serijskog monitora
Ova naredba se koristi za određivanje mreže na koju je ESP trenutno spojen.
Kako ESP reagira: Vratit će se mreža na koju je spojen ESP. Konkretno +CWJAP: "SSID"
Pošaljite AT+CWQAP putem serijskog monitora
Ova se naredba koristi za prekid veze s mrežom na koju je ESP trenutno spojen.
Kako ESP reagira: ESP napušta mrežu na koju je spojen i vraća se OK.
Pošaljite AT+CIFSR putem serijskog monitora
Ova se naredba koristi za određivanje IP adrese ESP -a.
Kako ESP reagira: Vraća se IP adresa ESP -a.
Korak 13: Govorite stvari
Ako niste napravili račun na Thingspeaku, napravite ga sada.
Nakon što otvorite račun na Thingspeak, idite na Aplikacije> ThingTweet.
Povežite svoj Twitter račun s njim.
Zabilježite generirani API ključ.
Ovdje, nakon što je aplikacija ThingTweet korištena za povezivanje Twitter računa s vašim ThingSpeak računom, možete poslati tweet koristeći TweetContol API.
API (sučelje aplikacijskog programa) je kôd koji omogućuje da dva softverska programa međusobno komuniciraju.
Neki drugi API -ji koji su dostupni programerima su Google Maps API, Open weather API itd.
Tek nakon što je ESP postavljen, provjeren i spojen na WiFi (u osnovi svi koraci navedeni u prethodna 2 koraka), prođite kroz dolje navedene korake
Korak 14: Još nekoliko AT naredbi
Pošaljite AT+CIPMODE = 0, putem serijskog monitora
Kako ESP reagira: vraća se OK.
Za postavljanje načina prijenosa koristi se naredba CIPMODE.
0 = normalan način rada
1 = UART-WiFi prolazni način
Pošaljite AT+CIPMUX = 1 putem serijskog monitora
Kako ESP reagira: vraća se OK.
Naredba CIPMUX koristi se za postavljanje jedne ili više veza.
0 = pojedinačna veza
1 = višestruka veza
Korak 15: Postavljanje TCP veze
Imajte na umu da će se od prve naredbe, čim pošaljete prvu, veza uspostaviti samo ograničeno vrijeme. Zato pošaljite naredbe što je brže moguće.
Pošaljite AT+CIPSTART = 0, "TCP", "api.thingspeak.com", 80 putem serijskog monitora
Kako ESP reagira: Veza je vraćena ako je veza uspostavljena.
Ova naredba se koristi za uspostavljanje TCP veze.
Sintaksa je AT+CIPSTART = ID veze, vrsta, udaljeni IP, udaljeni port
gdje
link ID = ID mrežne veze (0 ~ 4), koristi se za višestruko povezivanje.
type = string, "TCP" ili "UDP".
udaljeni IP = niz, udaljena IP adresa (adresa web stranice).
udaljeni port = niz, broj udaljenog porta (obično se odabire 80).
Pošaljite AT+CIPSEND = 0, 110 putem serijskog monitora
Kako ESP reagira:> (veće od) se vraća ako je naredba uspješna.
Ova naredba se koristi za slanje podataka.
Sintaksa je AT+CIPSEND = ID veze, duljina
gdje
link ID = ID veze (0 ~ 4), za višestruko povezivanje. Budući da je CIPMUX postavljen na 1, je 1.
length = duljina podataka, MAX 2048 bajtova. Općenito odaberite veliki broj za duljinu.
Korak 16: Slanje tvita
Sada za slanje tvita
Pošaljite GET/apps/thingtweet/1/statuses/update? Api_key = yourAPI & status = yourtweet putem serijskog monitora.
Zamijenite svoj API ključem API -ja, a svoj tweet bilo kojim tweetom koji želite.
Čim pošaljete gornju naredbu, počnite pritisnuti enter (return) u intervalima od približno 1 sekunde. Nakon nekog vremena vratit će se SEND OK, +IPD, 0, 1: 1 i OK, što znači da je tweet objavljen.
Otvorite svoj twitter i provjerite je li tweet objavljen ili ne.
Također imajte na umu da se isti tweet ne može slati više puta.
Gornji niz koji je poslan (GET….) Je HTTP GET zahtjev.
GET zahtjev koristi se za dohvaćanje podataka s danog poslužitelja (api.thingspeak.com).
Korak 17: Što učiniti nakon ovoga
(Pogledajte video u najmanje 360p)
Idite na ovo spremište za preuzimanje koda i shema. Kliknite gumb "Kloniraj ili preuzmi" (zelene boje s desne strane) i odaberite "Preuzmi ZIP" za preuzimanje zip datoteke. Sada ekstrahirajte sadržaj na računalu da biste dobili kod i sheme (u mapi sa shemama). Također sam učitao cheatsheet, koji sažima sve AT naredbe, u ovo spremište.
Na internetu postoji mnogo sjajnih resursa koji se bave ESP8266. Neke od njih spomenuo sam ovdje:
- Video zapisi Kevina Darraha.
- ALLAboutEE videozapisi.
- esp8266.com
Također možete više eksperimentirati s AT naredbama. Na internetu je dostupno mnogo API -ja koji mogu učiniti sve vrste stvari kao što su vrijeme, cijene dionica itd.
Potpuna dokumentacija AT naredbe
Također trenutno radim na programu koji automatski tweetira analogne vrijednosti senzora i objavit ću ga kad ispravno radi.
Ako vam se svidio moj instruktivni glas za to u Arduino natjecanju za sve stvari.
Preporučeni:
Vodič za početnike u Raspberry Pi: 6 koraka (sa slikama)
Vodič za početnike za Raspberry Pi: Već neko vrijeme radim s Arduinom. Lako je, jeftino i obavi posao. Ali u posljednje vrijeme više sam se naginjao IoT projektima. Tako sam počeo koristiti ESP razvojnu ploču i radila je savršeno. Ali sada želim krenuti prema
Kako koristiti multimetar na tamilskom jeziku - Vodič za početnike - Multimetar za početnike: 8 koraka
Kako koristiti multimetar na tamilskom jeziku | Vodič za početnike | Multimetar za početnike: Pozdrav prijatelji, U ovom vodiču objasnio sam kako koristiti multimetar u svim vrstama elektroničkih sklopova u 7 različitih koraka, kao što su 1) test kontinuiteta za otkrivanje problema u hardveru 2) Mjerenje istosmjerne struje 3) Testiranje diode i LED -a 4) Mjerenje Resi
Cjeloviti vodič za početnike u SMD lemljenju: 5 koraka (sa slikama)
Cjeloviti vodič za početnike u SMD lemljenju: U redu, tako da je lemljenje prilično jednostavno za komponente kroz rupe, ali ponekad postoje situacije kada trebate proći maleno *ovdje umetnite referencu ant-man *, a vještine koje ste naučili za TH lemljenje jednostavno ne više se prijavljujte. Dobro došli u svijet
Vodič za mikrokontrolere za početnike: 10 koraka (sa slikama)
Vodič za početnike u mikrokontrolerima: Što je zajedničko daljinskim upravljačima, usmjerivačima i robotima? Mikrokontroleri! Ovih dana mikrokontroleri prilagođeni početnicima jednostavni su za korištenje i programiranje samo s prijenosnim računalom, USB kabelom i nekim (besplatnim) softverom otvorenog koda. Woohoo !! Svi
Vodič za optičke vlakna za početnike: 13 koraka (sa slikama)
Vodič za optičke vlakne za početnike: Optika od vlakana! Optička vlakna! Doduše, pomalo sam opsjednut optičkim vlaknima i to s dobrim razlogom. Oni su izdržljiv, svestran i relativno jednostavan način dodavanja prekrasnih svjetlosnih efekata svemu što radite. Pogledajte samo neke od g