Galaksija ESP8266 Prvi modeli pojavili su se na tržištu 2014. godine uz reklamu da se radi o zaokruženom rešenju za Wi-Fi komunikaciju. To znači da moduli mogu da se koriste samostalno, ali i kao sredstvo za povezivanje mikrokontrolera bežičnom Wi-Fi vezom. S obzirom da je cena ovih čipova u odnosu na ostale „Wi-Fi capable” konkurente od samog početka bila veoma niska, ne čudi činjenica da su vrlo toplo prihvaćeni od strane mejkera. Osim što je dobro rasprostranjen i popularan, ESP8266 je učinio mnogo za celokupno IoT tržište primoravajući ostale proizvođače da znatno snize cene. Vrste modula Ono što zbunjuje početnike u radu sa ovom platformom jeste činjenica da postoji ceo niz različitih modula zasnovanih na istom čipu. AI-Thinker je jedan od proizvođača koji su među prvima počeli sa kreiranjem modula na bazi čipa ESP8266, pa su sticajem okolnosti postali omiljeni kod hobista. Pa da pogledamo nekoliko njih koji bi nam potencijalno mogli biti zanimljivi. ESP-01 Osim toga, ovi moduli nemaju mogućnost dovođenja elektronike u stanje takozvanog „dubokog sna”, koje je vrlo važno za ekonomiju električne energije. Najčešća veličina fleš memorije za module crne boje iznosi jedan megabajt. ESP-05 ESP-12E (NodeMCU 1.0) ESP-201 Modul na sebi ima 26 pinova od kojih su četiri namenjena povezivanju sa UART interfejsom. Nije baš najjasnije šta je konstruktore motivisalo da ta četiri pina okrenu prema dole i onemoguće postavljanje na prototipsku pločicu, ali je za veliki broj korisnika prva stvar koju urade njihovo odlemljivanje i postavljanje na vrh. Nazivi pinova su štampani sa donje strane pločice, ali je to od male koristi, pošto za vreme rada oni nisu vidljivi. Modul sadrži šest GPIO portova (GPIO6-GPIO11) koje nije moguće praktično koristiti. Uz hardversku modifikaciju na čipu sa fleš memorijom moguće je osloboditi GPIO portove 9 i 10. Prilikom flešovanja pin IO15 mora biti u stanju logičke nule. Iako ESP-201 na prvi pogled izgleda kao sjajan modul, on ima dosta slabosti konstruktorske prirode. Cena od 2,4 evra ga čini privlačnim za kupovinu, ali uprkos konektorima koji se mogu priključiti na prototipsku ploču, znatan broj konstrukcijskih grešaka uveliko smanjuje njegov potencijal. Adafruit HUZZAH Olimex ESP8266-DEV Na pločici se nalaze tzv. UEXT (Universal EXTension) konektori za priključivanje na UART interfejs. Poseduje dva megabajta fleš memorije, što omogućava upotrebu u kompleksnijim projektima. Cena uređaja je oko pet evra, što se može smatrati vrlo prihvatljivim. Isti proizvođač po ceni od devet evra nudi razvojnu pločicu ESP8266-EVB koja već sadrži ESP8266-DEV modul i umnogome pojednostavljuje komunikaciju s njim. Tu je i cela linija drugih modula (ESP-02, ESP-03, ESP-04, ESP-06, ESP-08, ESP-09, ESP-10...) koji su namenjeni ugrađivanju na druge uređaje i nisu pogodni za direktni rad sa Arduinom, pa im zbog toga nećemo posvetiti više prostora. Naravno, i oni se, slično modulu ESP-12E, mogu zalemiti na dodatnu pločicu, ali to je već van opsega našeg teksta. Zbog ograničenosti prostora mesto u opisu nisu našli ni neki drugi moduli, uključujući jedan od najboljih (ali i nekoliko puta skuplji) Sparkfun Thing, koji ima konektor za eksternu Li-Po bateriju, koja mu uz ispravan dizajn projekta omogućava višegodišnje autonomno funkcionisanje. Povezivanje Iako se na internetu može videti velika količina materijala vezanog za rad sa platformom ESP8266, početnicima je prilično teško da pronađu pravu informaciju koja bi ih uputila u pravom smeru. Upravo zato ćemo se truditi da bolje objasnimo neke elementarne stvari bez kojih je dalji rad dosta komplikovan. Da bi modul ESP-01 pro funkcionisao, potrebno je da na odgovarajuće nožice dovedemo napon od 3,3 volta i uzemljenje, nakon čega se aktivira crvena LED lampica. Odmah napominjemo da su ovi moduli projektovani za napon od 3,3 volta i da bi dovođenje napona od 5 volti bilo destruktivno. Za aktiviranje Wi-Fi režima rada, potrebno je da na nožicu CH_PD dovedemo napon od 3,3 volta, čime je postavljamo u stanje logičke jedinice. To će na modulu nakratko aktivirati plavu LED lampicu, a mi ćemo posle toga na svom računaru u spisku Wi-Fi predajnika videti novu stavku. Možemo se odmah priključiti na bežičnu mrežu, ali od toga neće biti neke preterane koristi, jer još nemamo vezu sa svojim Wi-Fi modulom. U prethodnim nastavcima smo pominjali AT komande koje su najpoznatije po tome što su služile za podešavanje starih dobrih telefonskih modema. Najveći broj predstavljenih modula dolazi sa takozvanim AT firmverom, a u pojedinim situacijama dolazi i bez bilo kakvog firmvera. Inače, AT komande se koriste za ostvarenje veze između mikrokontrolera i ESP modula putem serijskog interfejsa (ESP moduli se još nazivaju Serial to Wi-Fi uređajima). Na taj način je moguće slati podatke i primati ih od drugih uređaja. Ovu priliku koristimo da predstavimo veoma praktični modul za napajanje, prilagođen radu sa prototipskim pločicama, a koji smo koristili u okviru sheme povezivanja. Pošto Arduino poseduje ograničene kapacitete po pitanju struje (u konkretnom slučaju je potrebno 300 miliampera, a Arduino preko svog 3V3 pina isporučuje samo 50 miliampera), ponekad je potrebno koristiti dodatne izvore napajanja. Modul pod nazivom MB102 je sjajan izbor kada su nam potrebni naponi 3,3 volta, pet volti ili oba istovremeno. Uređaj se napaja ulaznim naponom u rasponu od 6,5-12 volti, dok je napajanje preko USB porta standardnih pet volti, ali isto tako, sa USB porta možemo da odvodimo napon od pet volti. Tu su i dva bloka od po četiri iglice preko kojih možemo preuzeti napon od 3,3 i pet volti. Za regulaciju napona koriste se integralna kola AMS1117 (jedno za napon od 3,3 volta, a drugo za pet volti). Ova kola nude solidan stepen zaštite od kratkih spojeva. Maksimalna jačina izlazne struje je 700 miliampera, ali je pametnije ako se ograničimo do nekih 500 miliampera. Putem postojećeg prekidača možemo uključivati i isključivati uređaj bez potrebe da mu isključujemo dovod struje. Zelena LED lampica prikazuje da li je modul uključen. S obzirom na to da se mogu naručiti već po ceni od nekih 70 centi, moduli MB102 su jednostavno must have u radu sa prototipskim pločama. AT komande Za pristupanje modulu putem AT parametara iz Arduino IDE, potrebno je da dodamo podršku za ESP8266 platformu. U opciji menija Menu/Preferences, u okvir polja Additional Boards Manager URLs: upisujemo sledeću adresu: http://arduino. Nas, za početak, zanima Serial Monitor, kako bismo ostvarili komunikaciju sa modulom. Za to je potrebno poznavati broj COM porta, kao i brzinu konekcije. Najčešće vrednosti brzine su 115.200 i 9.600 bauda, ali znaju da budu i drugačije. U našem konkretnom slučaju, brzina je iznosila 74.880 bauda, što smo saznali tek nakon više pokušaja unosa teksta u terminal, menjajući brzine prenosa. Ukoliko su unesena podešavanja odgovarajuća, tekst će biti ispisan ispravno, a u suprotnom ćemo videti „hijeroglife”. Ukoliko nemamo nikakve informacije na ekranu, potrebno je da nožicu RST nakratko postavimo u stanje logičke nule putem našeg tastera ili jednostavno spajanjem tog pina sa linijom GND uz pomoć džamper žice. Verziju trenutno postavljenog firmera saznajemo kucajući AT komandu GMR: AT+GMR Spisak svih dostupnih AP dobijamo pomoću komande: AT+CWLAP Na željeni AP se priključujemo sa komandom: AT+CWJAP="SSID_predajnika”, „šifra” Konekciju TCP tipa započinjemo na sledeći način: AT+CIPSTART="TCP”,"192.168.1.77”,"123” To jeste, uspostavljamo komunikaciju sa uređajem na ukazanoj IP adresi i preko ukazanog TCP porta. Režim funkcionisanja modula saznajemo komandom: AT+CWMODE? Postoje tri režima funkcionisanja ESP8266. Prvi je režim klijenta, kada modul priključujemo na neku postojeću mrežu. Drugi modus se odnosi na kreiranje nove mreže gde modul obavlja funkciju tačke pristupa (AP). Treći modus je najfleksibilniji i predstavlja kombinaciju prethodna dva režima. Prostor ne dozvoljava da se više posvetimo komunikaciji putem AT komandi, ali je princip isti onome što smo demonstrirali kada smo opisivali komunikaciju Bluetooth modulom. Celokupan spisak AT instrukcija za ESP-xx module se može pronaći na adresi goo. Nešto kao flash Verzije firmvera koji podržava rad sa AT komandama treba tražiti u fajlovima koji započinju tekstom „ESP8266_NONOS_SDK”, što znači da se radi o firmveru bez podrške operativnog sistema. Za razliku od njih, postoje verzije koje podržavaju minijaturni operativni sistem pod nazivom FreeRTOS, ali o tome neki drugi put. Prvo što treba da uradimo je da saznamo osnovne podatke o našem modulu. To se obavlja tako što pokrenemo ESP Flash Download Tool bez ikakvih dodatnih parametara (osim, naravno, naziva COM porta i brzine komunikacije). Nakon toga u prozoru Detected Info dobijamo informacije o veličini fleš memorije i frekvenciji kristala, koje ćemo posle upisati u odgovarajuća polja programa. Unutar fajla na lokaciji /bin/at_sdio/README.md nalazi se spisak memorijskih lokacija na koje je potrebno postaviti određene fajlove kako bi proces flešovanja bio pravilno odrađen. Različite veličine čipa sa fleš memorijom zahtevaju različite parametre. U našem konkretnom primeru modula ESP-01 polja popunjavamo na sledeći način: Kao poslednji korak, selektujemo ček boks kontrole ispred svakog od izabranih fajlova i, ako posle toga sva polja budu obojena u zeleno, znači da smo posao obavili kako treba i da možemo preći na proces zapisivanja fleš memorije. Pre nego što kliknemo na ekranski taster sa natpisom Start, potrebno je da prevedemo modul u režim zapisivanja. Za to je potrebno da pin GPIO0 dovedemo u stanje logičke nule i, dok se nalazi u tom stanju, istu stvar nakratko uradimo sa pinom RST. Na pratećoj fotografiji vidi se da je to urađeno uz pomoć malih tastera, dok je istu stvar moguće postići dovođenjem uzemljenja putem džamper žica, što je suštinski jednostavnije i praktičnije rešenje. Postoji i mogućnost da se flešovanje obavi putem AT komandi direktno preko oblaka, ali se na internetu može pročitati da je takav pristup često problematičan. Igor S. RUŽIĆ |
| ||||||||||||||||||||||||||||||||||||
Home / Novi broj | Arhiva • Opšte teme | Internet | Test drive | Test run | PD kutak | CeDeteka | WWW vodič • Svet igara Svet kompjutera Copyright © 1984-2018. Politika a.d. • Redakcija | Kontakt | Saradnja | Oglasi | Pretplata • Help • English | |
SKWeb 3.22 |