Cuprins:
- Pasul 1: Lucruri de care vei avea nevoie
- Pasul 2: câteva informații despre ESP8266
- Pasul 3: Pinout ESP8266
- Pasul 4: Ce ar trebui utilizat pentru comunicarea cu ESP8266?
- Pasul 5: Montarea ESP8266 pe Breadboard
- Pasul 6: Alimentare
- Pasul 7: Conversie nivel logică
- Pasul 8: Conexiuni
- Pasul 9: Introducere
- Pasul 10: Comenzi AT
- Pasul 11: Sintaxa generală a comenzilor AT
- Pasul 12: Conectarea la Wifi
- Pasul 13: Thingspeak
- Pasul 14: Mai multe comenzi AT
- Pasul 15: Configurarea conexiunii TCP
- Pasul 16: Trimiterea Tweetului
- Pasul 17: Ce trebuie să faceți după aceasta
Video: Ghid pentru începători la ESP8266 și Tweeting Utilizarea ESP8266: 17 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:46
Am aflat despre Arduino acum 2 ani. Așa că am început să mă joc cu lucruri simple, cum ar fi LED-uri, butoane, motoare, etc. un ecran LCD. Am constatat că acest lucru se putea face prin trimiterea și primirea de date prin internet. Deci soluția se conecta la intenet. Acolo a început căutarea mea despre cum să conectez Arduino la internet și să trimit și să primesc date. Am aflat despre modulele wifi pe internet și mi s-au părut foarte costisitoare. Apoi am aflat de ESP8266.
Am citit multe pe internet pe modulul ESP8266 acum aproximativ un an și am cumpărat unul, dar am început să lucrez cu ei chiar luna trecută. În acel moment nu existau informații disponibile. Cu toate acestea, acum există o mulțime de documentație, sunt disponibile videoclipuri pe internet cu privire la firmware, comenzi AT, proiecte etc. Așa că am decis să încep.
Am scris acest instructable ca un ghid pentru începători, deoarece m-am confruntat cu o mulțime de probleme la conectare și la pornirea cu ESP8266. Așa că am decis să scriu acest instructable, astfel încât alte persoane care întâmpină probleme cu modulele lor să le rezolve mai repede
În acest Instructable voi încerca să arăt
- Cum să conectați un ESP8266 și să comunicați cu acesta prin Arduino Uno.
- De asemenea, voi încerca să arăt cum poate fi trimis un tweet prin intermediul acestuia folosind Thingspeak.
Ce poate face ESP8266? Este limitat de imaginația dvs. Am văzut proiecte și tutoriale pe internet care arată cum să aduc temperatura unui oraș, prețurile stocurilor, trimiterea și primirea de e-mailuri, efectuarea de apeluri telefonice și multe altele. acest Instructable cum să trimiteți un tweet.
Pasul 1: Lucruri de care vei avea nevoie
Iată lucrurile de care aveți nevoie. Cele mai multe dintre acestea pot fi cumpărate de la orice magazin electric sau online (am furnizat linkurile pentru referință).
- 1xESP8266 (ESP-01) -bay
- 1xAdaptor pentru pană de pană (aflați cum să faceți unul aici sau să folosiți niște fire jumper)
- 1xLM2596 -bay
- 1xLogic level converter -ebay
- 1xArduino Uno
- Cablu USB pentru Arduino Uno
- 1xBreadboard -ebay
- Firele -bay
- IDE Arduino
- Un cont la Thingspeak
Costul total va fi de aproximativ Rs 600 (aproximativ 9 USD). Am exclus costul Arduino Uno, deoarece depinde dacă doriți un original sau o clonă. Cele mai ieftine clone sunt disponibile la aproximativ Rs 500 (aproximativ 4 USD).
Pasul 2: câteva informații despre ESP8266
ESP8266 a fost lansat în 2014 cu doar un an în urmă, deci este destul de nou. Cipurile sunt fabricate de Espressif.
Avantaj
Cel mai mare avantaj al ESP8266 este probabil costul său. Este destul de ieftin și puteți cumpăra câteva dintre acestea dintr-o singură mișcare. Înainte să ajung să știu despre asta, nici măcar nu mă puteam gândi să cumpăr un modul wifi. Erau prea costisitoare. Noile versiuni ale ESP8266 sunt lansate destul de frecvent, iar cea mai recentă este ESP 12. Cu toate acestea, în acest instructabil mă voi concentra doar pe ESP 01, care este destul de popular. sunteți bine să începeți imediat ce cumpărați unul.. De asemenea, după cum veți vedea din acest instructable, este destul de ușor să le interfațați.
Dezavantaj
Fiecare dispozitiv are propriile sale avantaje și dezavantaje, iar ESP nu diferă. ESP se poate dovedi uneori foarte dificil și frustrant de lucrat. Deoarece este destul de nou, veți fi dificil să obțineți informații despre acesta. Din fericire, o comunitate la esp8266.com există, care este de mare ajutor. Mai mult decât atât, uneori începe, de asemenea, să facă lucruri neașteptate, cum ar fi aruncarea unei încărcături de gunoi prin conexiunea serială etc.
Rețineți că există o mulțime de documentație disponibilă pe internet și o parte din aceasta este conflictuală. Acest instructabil nu diferă. În timp ce mă jucam cu ESP8266, am constatat că s-a deviat mult de la ceea ce a fost menționat pe internet (al tău poate de asemenea) dar a funcționat bine.
Pasul 3: Pinout ESP8266
ESP8266 are 8 pini așa cum se arată.
Gnd și Vcc ar trebui conectate ca de obicei la masă și respectiv la sursă. ESP8266 funcționează pe 3,3V.
Pinul RESET este utilizat pentru resetarea manuală a ESP-ului. În mod normal, ar trebui să fie conectat 3.3V. Dacă doriți să resetați ESP, conectați acest pin la masă momentan și apoi înapoi la 3.3V.
CH_PD este oprirea cipului care ar trebui conectată în mod normal la 3,3V.
GPIO0 și GPIO2 sunt pini de ieșire de intrare de uz general. Acestea ar trebui conectate în mod normal la 3.3V.
Pinii Rx și Tx sunt pinii de transmisie și de recepție ai ESP8266. Aceștia funcționează pe o logică de 3,3V, adică 3,3V este logic HIGH pentru ESP8266.
Conexiunile detaliate sunt furnizate în etape ulterioare.
Pasul 4: Ce ar trebui utilizat pentru comunicarea cu ESP8266?
Există o mulțime de dispozitive care pot fi utilizate pentru a comunica cu ESP8266, cum ar fi programatorii FTDI, convertorul serial USB la TTL, Arduino etc. Cu toate acestea, am folosit un Arduino Uno pur și simplu pentru că este cel mai ușor și aproape îl are toată lumea. aveți un Arduino aveți, de asemenea, Arduino IDE și monitorul său serial poate fi utilizat pentru comunicarea cu ESP8266. Deci, nu cheltuiți bani pe programatori FTDI etc.
Cu toate acestea, dacă doriți sau dacă aveți deja unul, puteți utiliza un programator FTDI sau un convertor serial USB la TTL (mai multe despre cum să le conectați mai târziu). De asemenea, există o mulțime de software, cum ar fi RealTerm sau chit. acestea la fel ca monitorul serial al Arduino IDE.
Pasul 5: Montarea ESP8266 pe Breadboard
Observați că pinii ESP8266 nu sunt compatibili cu panourile de lucru. Acest lucru poate fi depășit prin 2 moduri.
Utilizați fire jumper de la femeie la mascul, care pot face lucrurile dezordonate sau
Faceți așa cum se arată în acest manual sau
Utilizați o placă de adaptor, creați una singură (există multe pe Instructables), care este îngrijită.
Pasul 6: Alimentare
ESP8266 funcționează pe o sursă de 3,3 V. Nu îl conectați la pinul de 5 V de pe Arduino, probabil că va arde.
Unele tutoriale au sugerat crearea unui circuit divizor de tensiune folosind rezistențe 1k, 2k cu 5V ca intrare și obținerea a 3,3V pe rezistorul de 2k și furnizarea acestuia către Arduino.
Am reușit să-l alimentez folosind 3.3V pe Arduino, dar am constatat că ESP s-a încălzit după ceva timp.
Puteți utiliza un regulator de tensiune de 3,3V.
Sau puteți utiliza convertorul LM2596 dc-dc step down. Acestea sunt destul de ieftine. Și le-am folosit. Dă 5V de la Arduino la intrare. Reglați potențiometrul de pe modul, până când ieșirea devine 3.3VI, a constatat că ESP poate fi alimentat din una dintre acestea timp de ore. Faceți conexiunile așa cum se arată în figură.
Pasul 7: Conversie nivel logică
Se menționează că ESP are logică de 3,3V, în timp ce Arduino are logică de 5V.
Acest lucru înseamnă că în ESP 3.3V este logic HIGH, în timp ce în Arduino 5V este logic HIGH. Acest lucru poate cauza unele probleme în timp ce le conectați.
Am descoperit pe internet că conversia la nivel logic trebuie aplicată în timp ce interfațați ESP Rx și Tx cu Arduino.
Unele tutoriale au menționat că este necesară conversia nivelului logic în timp ce interfațați pinul ESP Rx.
Cu toate acestea, am constatat că doar conectarea în mod normal a pinilor ESP Rx și Tx la Arduino nu a cauzat probleme
Am conectat Rx și Tx prin convertor de nivel logic, precum și Rx singur, dar nu am obținut niciun răspuns.
Totuși, am constatat că conectarea pinului ESP Tx prin convertorul de nivel logic în timp ce conectarea directă a Tx nu a cauzat nici o problemă
Deci, convertorul de nivel logic poate fi sau nu utilizat.
Folosiți oricare dintre metodele care funcționează pentru dvs. prin încercări și erori.
Pasul 8: Conexiuni
Conexiunile ESP8266 sunt:
ESP8266
Gnd ------------------- Gnd
GPIO2 --------------- 3.3V
GPIO0 --------------- 3.3V
Rx -------------------- Rx din Arduino
Tx --------------------- Tx of Arduino (direct sau prin convertor de nivel logic)
CH_PD -------------- 3.3V
RESET -------------- 3.3V
Vcc -------------------- 3.3V
(Rețineți că în unele versiuni ESP Rx ar trebui să fie conectat la Arduino Tx și ESP Tx ar trebui să fie conectat Arduino Rx).
Dacă utilizați programator FTDI sau convertor serial USB la TTL, conectați-le Tx și Rx la Rx și respectiv la ESP8266.
Pasul 9: Introducere
După efectuarea conexiunilor, încărcați
configurare nulă ()
{}
bucla nulă ()
{}
adică o schiță goală către Arduino..
Deschideți monitorul serial și setați-l la „Atât NL, cât și CR”.
Experimentați cu rata Baud. De obicei ar trebui să fie 9600, deși uneori poate fi 115200.
Pasul 10: Comenzi AT
Spunând pur și simplu comenzile AT sunt comenzi care pot fi trimise către ESP8266, astfel încât să îi permită să îndeplinească anumite funcții, cum ar fi repornirea, conectarea la wifi etc. Comenzile AT și modul în care ESP răspunde la ele. Rețineți că prin trimitere mă refer la tastarea comenzii și apăsarea enter (return).
Trimiteți AT prin monitorul serial
Această comandă este utilizată ca comandă de testare.
Cum răspunde ESP: OK trebuie returnat.
Trimiteți AT + RST prin monitorul serial
Această comandă este utilizată pentru a reporni modulul.
Cum reacționează ESP: ESP returnează o încărcătură de gunoi. Totuși, căutați Ready sau ready.
Trimiteți AT + GMR prin monitorul serial
Această comandă este utilizată pentru a determina versiunea de firmware a modulului.
Cum răspunde ESP: Versiunea firmware trebuie returnată.
Firmware-ul este un software instalat pe un dispozitiv de obicei pe ROM-ul său (numai citire memorie), adică nu este destinat să fie schimbat frecvent sau deloc. Oferă controlul și manipularea datelor dispozitivului. ESP8266 are un număr a diferitelor programe, toate fiind destul de ușor de blițat (instalat).
Pasul 11: Sintaxa generală a comenzilor AT
Sintaxa generală a comenzilor AT pentru îndeplinirea diferitelor funcții este dată:
Parametru AT + =?
Când o comandă de acest tip este trimisă prin monitorul serial, ESP returnează toate valorile pe care parametrul le poate lua.
Parametru AT + = val
Când o comandă de acest tip este trimisă prin monitorul serial, ESP setează valoarea parametrului la val.
Parametru AT +?
Când o comandă de acest tip este trimisă prin monitorul serial, ESP returnează valoarea curentă a parametrului.
Unele comenzi AT pot lua doar unul dintre tipurile de mai sus, în timp ce altele pot lua toate cele 3.
Un exemplu de comandă care este posibil în toate cele 3 tipuri de mai sus este CWMODE, care este utilizat pentru a seta modul wifi.
Trimite AT + CWMODE =? prin monitorul serial
Cum răspunde ESP: Toate valorile pe care ESP CWMODE le poate lua (1-3) sunt returnate în mod specific + CWMODE (1-3).
1 = static
2 = AP
3 = Atât static, cât și AP
Trimiteți AT + CWMODE = 1 prin monitorul serial
Cum răspunde ESP: OK ar trebui să fie returnat dacă există o modificare în CWMODE față de valoarea sa anterioară și este setată la statică, altfel nu ar trebui returnată nicio modificare dacă nu există nicio modificare în valoarea CWMODE.
IMPORTANT: Cu excepția cazului în care CWMODE este setat la 1, comenzile din pașii ulteriori nu vor funcționa.
Trimiteți AT + CWMODE? prin monitorul serial
Cum răspunde ESP: Valoarea actuală a CWMODE ar trebui returnată, mai ales dacă ați urmat pasul de mai sus + CWMODE: 1 ar trebui returnată.
Pasul 12: Conectarea la Wifi
Trimiteți AT + CWLAP prin monitorul serial
Această comandă este utilizată pentru a lista toate rețelele din zonă.
Cum răspunde ESP: ar trebui returnată o listă cu toate punctele de acces disponibile sau rețelele wifi.
Trimite AT + CWJAP = "SSID", "parolă"
(inclusiv ghilimele duble).
Această comandă este utilizată pentru a vă alătura unei rețele wifi.
Cum răspunde ESP: OK ar trebui returnat dacă modulul a fost conectat la rețea.
Trimiteți AT + CWJAP? prin monitorul serial
Această comandă este utilizată pentru a determina rețeaua la care ESP este conectat în prezent.
Cum răspunde ESP: Rețeaua la care este conectat ESP va fi returnată. Mai exact + CWJAP: „SSID”
Trimiteți AT + CWQAP prin monitorul serial
Această comandă este utilizată pentru a vă deconecta de la rețeaua la care ESP este conectat în prezent.
Cum răspunde ESP: ESP părăsește rețeaua la care este conectat și OK este returnat.
Trimiteți AT + CIFSR prin monitorul serial
Această comandă este utilizată pentru a determina adresa IP a ESP.
Cum răspunde ESP: Adresa IP a ESP este returnată.
Pasul 13: Thingspeak
Dacă nu v-ați creat un cont pe Thingspeak creați unul acum.
După ce vă faceți un cont pe Thingspeak, accesați Aplicații> ThingTweet.
Conectați contul dvs. twitter cu acesta.
Rețineți cheia API generată.
Aici, după ce aplicația ThingTweet a fost utilizată pentru a conecta un cont Twitter la contul dvs. ThingSpeak, puteți trimite un tweet utilizând API-ul TweetContol.
Un API (interfața programului de aplicație) este un cod care permite ca două programe software să comunice între ele.
Unele alte API-uri disponibile pentru dezvoltatori sunt Google Maps API, Open Weather API etc.
Doar după ce ESP a fost configurat, verificat și conectat la wifi (practic toți pașii dați în 2 pași anteriori), parcurgeți pașii de mai jos
Pasul 14: Mai multe comenzi AT
Trimiteți AT + CIPMODE = 0, prin monitorul serial
Cum răspunde ESP: OK este returnat.
Comanda CIPMODE este utilizată pentru a seta modul de transfer.
0 = modul normal
1 = modul passthrough UART-WiFi
Trimiteți AT + CIPMUX = 1 prin monitorul serial
Cum răspunde ESP: OK este returnat.
Comanda CIPMUX este utilizată pentru a seta conexiuni simple sau multiple.
0 = conexiune simplă
1 = conexiune multiplă
Pasul 15: Configurarea conexiunii TCP
Rețineți că, începând de la prima comandă, de îndată ce o trimiteți pe prima, conexiunea va fi stabilită doar pentru o perioadă limitată, deci trimiteți comenzile cât mai repede posibil.
Trimiteți AT + CIPSTART = 0, „TCP”, „api.thingspeak.com”, 80 prin intermediul monitorului serial
Cum răspunde ESP: Legătura este returnată dacă conexiunea a fost stabilită.
Această comandă este utilizată pentru a stabili o conexiune TCP.
Sintaxa este AT + CIPSTART = ID link, tip, IP la distanță, port la distanță
Unde
link ID = ID conexiune la rețea (0 ~ 4), utilizat pentru conectare multiplă.
tip = șir, „TCP” sau „UDP”.
IP la distanță = șir, adresa IP la distanță (adresa site-ului web).
port la distanță = șir, numărul portului la distanță (de obicei selectat ca 80).
Trimiteți AT + CIPSEND = 0, 110 prin monitorul serial
Cum răspunde ESP:> (mai mare decât) este returnat dacă comanda are succes.
Această comandă este utilizată pentru a trimite date.
Sintaxa este AT + CIPSEND = ID-ul legăturii, lungimea
Unde
link ID = ID-ul conexiunii (0 ~ 4), pentru conectare multiplă. Deoarece CIPMUX a fost setat la 1, este 1.
lungime = lungimea datelor, MAX 2048 octeți. Alegeți în general un număr mare pentru lungime.
Pasul 16: Trimiterea Tweetului
Acum pentru trimiterea tweet-ului
Trimiteți GET / apps / thingtweet / 1 / statuses / update? Api_key = yourAPI & status = yourtweet prin monitorul serial.
Înlocuiți-vă API-ul cu cheia API și tweet-ul dvs. cu orice tweet pe care îl doriți.
De îndată ce trimiteți comanda de mai sus, începeți să apăsați Enter (return) la intervale de aproximativ 1 secundă. După un timp, SEND OK, + IPD, 0, 1: 1 și OK vor fi returnate, ceea ce înseamnă că tweet-ul a fost postat.
Deschideți-vă twitter-ul și verificați dacă tweet-ul a fost postat sau nu.
Rețineți, de asemenea, că același tweet nu poate fi trimis în mod repetat.
Șirul de mai sus care a fost trimis (GET ….), este o cerere HTTP GET.
Solicitarea GET este utilizată pentru a prelua date de pe serverul dat (api.thingspeak.com).
Pasul 17: Ce trebuie să faceți după aceasta
(Urmăriți videoclipul în cel puțin 360p)
Accesați acest depozit pentru a descărca codul și schemele. Faceți clic pe butonul „Clonați sau descărcați” (culoare verde în partea dreaptă) și selectați „Descărcați ZIP” pentru a descărca fișierul zip. Acum extrageți conținutul de pe computer pentru a obține codul și schemele (în dosarul schemelor). Am încărcat, de asemenea, o foaie de cheats, care rezumă toate comenzile AT, în acest depozit.
Există o mulțime de resurse excelente disponibile pe internet care se ocupă de ESP8266. Am menționat unele dintre ele aici:
- Videoclipuri cu Kevin Darrah.
- ALLaboutEE videoclipuri.
- esp8266.com
De asemenea, puteți experimenta mai mult cu comenzile AT. Există o mulțime de API-uri disponibile pe internet care pot face tot felul de lucruri, cum ar fi obținerea vremii, prețurile acțiunilor etc.
Documentație completă de comandă AT
De asemenea, lucrez în prezent la un program care tweetează automat valorile analogice ale unui senzor și îl voi posta odată ce funcționează corect.
Dacă ți-a plăcut votul meu instructiv pentru el în concursul Arduino all the things.
Recomandat:
Ghid pentru începători la Raspberry Pi: 6 pași (cu imagini)
Ghid pentru începători la Raspberry Pi: De ceva timp lucrez cu Arduino. Este ușor, ieftin și face treaba. Dar în ultima vreme mă înclin mai mult spre proiecte IoT. Așa că am început să folosesc placa de dezvoltare ESP și a funcționat perfect. Dar acum vreau să mă îndrept spre
Cum se folosește Multimetrul în Tamil - Ghid pentru începători - Multimetru pentru începători: 8 pași
Cum se folosește Multimetrul în Tamil | Ghid pentru începători | Multimetru pentru începători: Bună ziua, prieteni, În acest tutorial am explicat cum să folosesc multimetrul în toate tipurile de circuite electronice în 7 pași diferiți, cum ar fi 1) test de continuitate pentru depanare hardware 2) Măsurarea curentului continuu 3) testarea diodei și LED-urilor 4) Măsurarea Resi
Un ghid pentru începători complet pentru lipirea SMD: 5 pași (cu imagini)
Un ghid complet pentru începători pentru lipirea SMD: Bine, așa că lipirea este destul de simplă pentru componentele orificiului traversant, dar atunci sunt momente când trebuie să mergeți mici * introduceți aici o referință ant-man *, iar abilitățile pe care le-ați învățat pentru lipirea TH pur și simplu nu aplicați mai mult. Bine ați venit în lumea
Ghid pentru începători pentru utilizarea senzorilor DHT11 / DHT22 cu Arduino: 9 pași
Ghid pentru începători de utilizare a senzorilor DHT11 / DHT22 W / Arduino: Puteți citi acest tutorial și alte tutoriale uimitoare pe site-ul oficial al ElectroPeak Prezentare generală În acest tutorial, veți afla cum să configurați senzorii DHT11 și DHT22 și să măsurați temperatura și umiditatea mediului înconjurător. Aflați: DHT11 și DHT22
Un ghid pentru începători pentru microcontrolere: 10 pași (cu imagini)
Un ghid pentru începători pentru microcontrolere: Ce au în comun controlerele la distanță, routerele și roboții? Microcontrolere! În zilele noastre, microcontrolerele pentru începători sunt ușor de utilizat și de programat cu doar un laptop, un cablu USB și unele software-uri open-source (gratuite). Woo hoo!! Toate