WiFi moduli ESP8266 ESP07 kwa otomatiki nyumbani. WiFi ESP8266 ni hatua mpya katika muundo wa vifaa vya nyumbani vilivyo na kiolesura kisichotumia waya. Hitimisho juu ya ESP8266


Moduli ndogo za WiFi ESP8266 zinavutia kabisa kwa mifumo nyumba yenye akili Na otomatiki nyumbani. Pia huitwa "wauaji wa NRF24L01."
Nilijiamuru baadaye marekebisho ya ESP07 na ESP12, ambayo ni tofauti ukubwa mdogo Na idadi kubwa GPIO zinazotokana, ambazo hazihitaji "haki" kutumia bandari za ziada za I/O ndani yake.

Moduli hizi zilitengenezwa Kampuni ya Kichina

Vipimo:

  • WI-FI: 802.11 b/g/n na WEP, WPA, WPA2.
  • Njia za uendeshaji: Mteja (STA), Sehemu ya Kufikia (AP), Sehemu ya Kufikia ya Mteja (STA+AP).
  • Ugavi wa voltage 1.7..3.6 V.
  • Matumizi ya sasa: hadi 215mA kulingana na hali ya uendeshaji.
  • Idadi ya GPIOs: 16.
  • Ukubwa wa kumbukumbu ya flash 512kb.
  • Data RAM 80 kB
  • Maagizo ya RAM - 32 kb.
Kuhusu marekebisho ya moduli za ESP8266

Niliamuru moduli mnamo Januari.
Bei - $3.78, - $4.24. Niliinunua kama zawadi ya kukagua nakala. Iliwasili katika siku 31 katika mifuko iliyofungwa







ESP8266 ESP-07




ESP8266 ESP-12




Kufufua moduli kulichukua muda mrefu sana
Ili kufanya hivyo, unahitaji kutumia 3.3V kwake. Zaidi ya hayo, vidhibiti kwenye vigeuzi vya USB/UART havitoi mkondo kutoka kwa moduli hii, kwa hivyo nguvu ya nje inahitajika.

RXD, TXD na GND zimeunganishwa kupitia kompyuta.

Kama matokeo, nilikusanya mzunguko ufuatao kwenye ubao wa mkate:

Hapa mara moja nilikutana na ugumu ufuatao - lami ya mashimo kwenye ESP07 ni 2 mm, na sio 2.5 kama viunganisho vya pini vinavyotumiwa Arduino na maeneo mengine.
Ilinibidi niweke waya kwenye ubao wa mkate





Mara moja nilileta kitufe cha RESET na jumper ya GPIO0 chini, ambayo hubadilisha moduli kwa hali ya upakuaji wa firmware. Na nikawasha nguvu kwa moduli kupitia

Baada ya hapo, nilizindua programu ya CollTerm na nikapokea mwaliko wa moduli kwa kasi ya 9600.
Amri ya AT+GMR iliyotolewa 0020000904 (toleo la SDK - 0020, toleo la AT - 0904)


Kwa wale ambao ni wavivu sana, kama mimi, kushughulika na amri za AT, kuna zana ambayo hukuruhusu kusanidi haya yote.

Nilifanya firmware. Kwa sababu programu hii inafanya kazi tu na COM1-COM6, ilibidi nibadilishe COM33 yangu kutoka kibadilishaji cha USB/UART hadi COM6 kwenye kidhibiti cha kifaa.

Ifuatayo, kufunga firmware si vigumu: kufungua bandari na kuunganisha. Kasi huchaguliwa moja kwa moja. Jambo kuu si kusahau kuunganisha GPIO0 chini (nina jumper maalum kwa hili). Kasi huchaguliwa moja kwa moja. Wakati mwingine unganisho haujaanzishwa. Kubonyeza kitufe cha RESET wakati wa unganisho kulisaidia.



Sasa unaweza kuunganisha kwenye moduli
Katika programu hii, unaweza kupakia faili za mkalimani wa LUA kwenye ESP, kutekeleza amri na hati zote mbili za mkalimani huyu.


Niliweza kuendesha moduli ya shinikizo/joto ya BMP180 iliyounganishwa na GPIO2 na GPIO0

Ili kufanya hivyo, nilipakua faili ya bmp180.lua kutoka kwa moduli zilizopangwa tayari ambazo zilikuja na firmware kutoka GITHUB.
Na kisha faili init.lau kunyongwa wakati buti ESP8266
tmr.alarm(1, 5000, 1, function() print("ip: ",wifi.sta.getip()) bmp180 = need("bmp180") bmp180.init(4, 3) tmr.stop(1) - mwisho wa kengele)

Kuendesha programu bila kuchelewesha kipima saa kulisababisha hitilafu isiyobadilika.
Baada ya kuanza upya, msimbo
bmp180.read(OSS) t = bmp180.getTemperature() p = bmp180.getPressure() -- halijoto katika nyuzi joto Selsiasi na uchapishaji wa Farenheit("Joto: "..(t/10)." C") -- shinikizo katika vitengo tofauti chapisha("Shinikizo: "..(p *75 / 10000)." mmHg")

Toa shinikizo la sasa na halijoto kwenye koni.

Lakini sikuweza kuanza kutoa vigezo hivi katika hali ya seva ya wavuti. Yote ni juu ya ukosefu wa kumbukumbu. Seva ya wavuti na BMP180 zilifanya kazi tofauti, lakini kwa pamoja zilianguka
HOFU: hitilafu isiyolindwa katika simu kwa Lua API (hitilafu ya kupakia moduli "bmp180" kutoka faili "bmp180.lua": haitoshi kumbukumbu)
Au mabaki ya msimbo wa LUA yameanguka kwenye kiweko.

Haikuwezekana kufanya kisasa juu ya kuruka.

Njia yangu zaidi ilikuwa kujenga firmware yangu kwenye SDK ya wamiliki, kama . Lakini hiyo ni hadithi nyingine. Nitasema tu kwamba firmware ilikusanyika bila matatizo, lakini haikuwezekana kuzindua BMP180 mbaya.

hitimisho

  • Module za ESP8266 ni nyingi sana suluhisho la bei nafuu kwa ajili ya kujenga mtandao mahiri wa nyumbani na mitambo mingine ya kiotomatiki ya nyumbani kwa kutumia WiFi
  • Moduli hizi zinafaa kabisa kwa kuchukua nafasi ya NRF24L01+ kwa kushirikiana na Arduino na vidhibiti vingine "maarufu".
  • Kufanya kazi kama mtawala huru, ESP8266 ina rasilimali chache na programu dhibiti chafu
  • Kupanga moduli za ESP ni mchakato unaohitaji nguvu kazi nyingi ambao unaweza kutisha kwa wanaoanza
  • Kwa ujumla, ESP8266 ina ahadi kubwa. Nitasubiri maendeleo ya firmware na zana za maendeleo, lakini kwa sasa, nitazitumia kwa kushirikiana na watawala wengine (isipokuwa )))

Mpaka leo Gharama ya Wi-Fi moduli hujitahidi kupata senti shukrani kwa maendeleo ya . Hii hukuruhusu kukuza vifaa vya nyumbani kwa kiwango Teknolojia ya Wi-Fi. Je, hii inatupa nini? Kwa kweli, mengi ni sawa na Mtandao yenyewe kwa kuongeza kila kitu kingine. Kwa hivyo, wakati wa kutengeneza kifaa chochote, sasa kitakuwa na ufikiaji wa mtandao na mtandao (ikiwa iko kwenye mtandao), ambayo inamaanisha kuwa kifaa kinapatikana kwa kinadharia kwa kifaa kingine chochote kilicho kwenye mtandao au kimeunganishwa kwenye mtandao. Miaka mitano tu iliyopita, wewe na mimi hatukuweza hata kuota kiwango kama hicho cha vifaa vya nyumbani.

Niliamua kutengeneza kifaa ambacho kitatuma data ya kihisi kwenye Mtandao, shukrani ambayo itawezekana kufuatilia usomaji kutoka mahali popote katika jiji, nchi, au ardhi kupitia mtandao.

Kwa hivyo, wakati wa kuchagua moduli ya ESP8266 WiFi, chaguo liliegemea kwa mfano wa ESP-07 na unganisho. antenna ya nje kwa kupata ishara bora kununuliwa ndani Duka la mtandaoni la Kichina GearBest. Katika kesi hii, tutahitaji antenna yenyewe (sikujisumbua na vitapeli, lakini nyingine yoyote iliyo na kiunganishi cha RP-SMA kwenye masafa ya WiFi itafanya), kiunganishi cha kuunganisha antenna kwenye moduli, na, ikiwa ni lazima, kamba ya ugani kwa antenna. Pamoja na sensorer muhimu.

Kufanya kazi na Sehemu ya ESP-07 Bodi ya mzunguko iliyochapishwa ilitengenezwa kulingana na mchoro ufuatao:

Mzunguko una vitalu vitatu kuu: mdhibiti wa voltage 3.3 volt VR1 na vipengele muhimu(toleo linaloweza kubadilishwa la kiimarishaji linaweza kubadilishwa na ams1117 3v3 isipokuwa resistors R1 na R3), kizuizi kinachohitajika kwa programu ya moduli ya WiFi hufanywa kwa msingi wa kibadilishaji cha USB-UART CH340G na wiring muhimu ya chip (CH340G inaweza kubadilishwa na microcircuits nyingine yoyote ya utendaji sambamba kwa kubadilisha wiring kwa chip inayoweza kubadilishwa), moduli ya WiFi yenyewe, pamoja na vipengele muhimu kwa uendeshaji wake na programu. Ili kuingiza hali ya programu, lazima ubonyeze kitufe cha S2 Prog na uwashe tena moduli au uzime na uwashe nguvu na kitufe cha S2 Prog. Ifuatayo, kwa kutumia programu kwenye Kompyuta yako, pakua firmware kwenye moduli ya WiFi. Baada ya kukamilika kwa firmware, reboot moduli tena, lakini bila kushinikiza kifungo cha S2 Prog - kwa njia hii moduli itafanya kazi katika hali kuu. Wakati wa kutumia antenna ya nje, ubao hutoa nafasi ya kuunganisha bracket ya antenna. Bracket yenyewe inaweza kuwa ya usanidi rahisi zaidi. Kiunganishi cha mini-USB hutumiwa kuunganisha kwenye kompyuta.

Ili kuunganisha antenna kwenye ESP-07, tumia kebo ya IPX hadi RP-SMA. Kwa kuwa nilichagua antenna 18 dB GDI-8218 kwangu, kifaa kilichokusanywa na sensorer kinaonekana kutishia kabisa. Bila shaka, unapotumia sensorer nyingi unapaswa kuunganisha kila kitu ubao wa mkate, ikiwa unatumia sensor moja tu ya BMP280 kufuatilia vigezo vya hali ya hewa (hupima joto, shinikizo na unyevu), basi mzunguko unaonekana kuwa mzuri zaidi. Aidha, bodi ya ESP8266 ilitengenezwa kama chombo cha ulimwengu wote, kwa hiyo ikiwa utaihariri, kutoa kwa ajili ya kufunga sensorer moja kwa moja kwenye ubao, mzunguko utachukua kuonekana zaidi na uzuri.

Kutumia antenna katika fomu hii sio rahisi kila wakati, kwa hivyo kwa urahisi, unaweza kutumia kebo ya upanuzi ya kiume ya RP-SMA ya kike kwa antenna ili kuiweka salama mahali pazuri au kuihamisha tu kuhusiana na mzunguko mzima.

Njia mbadala ya bodi hiyo inaweza kuwa bodi za nodemcu za kiwanda au bodi za adapta kwa mawasiliano ya PLS/PBS. Wa mwisho wana michache tu ya vipinga muhimu ili kuwasha moduli na mahali pa utulivu wa voltage (haijajumuishwa). Kwa sababu ya asili yao ndogo sana, haikuwa rahisi kwangu kutumia bodi kama hizo (isipokuwa kama sehemu ya kifaa kingine kilicho na kiunganishi cha bodi kama hiyo).

Ili kuunganisha kwenye moduli ya sensor, unaweza kutumia GPIO zote za bure za moduli. Ili kupata usomaji wa vigezo tunavyohitaji, sensorer yoyote inaweza kutumika katika usanidi wowote, ambao utajadiliwa hapa chini. Nilitumia vitambuzi vya DS18B20 katika umbizo la uchunguzi wa mita (ni rahisi kufuatilia halijoto nje au kioevu chochote, kwani inachukuliwa kuwa isiyo na maji), BMP180 kwa ufuatiliaji. shinikizo la anga na AM2302 kwa udhibiti wa unyevu wa ndani. Usisahau kuhusu wiring muhimu ya sensorer ikiwa hautumii kwa njia ya moduli na kila kitu muhimu: DS18B20 imeunganishwa na kipingamizi cha kuvuta-up kwa usambazaji wa nguvu chanya (10 kOhm resistor kati ya waya-1. pini na chanya ya usambazaji wa umeme), vivyo hivyo kwa AM2302 (DHT22), vitambuzi vinavyofanya kazi kwenye basi la I 2 C pia vinapaswa kuwa na vipingamizi vya kuvuta juu kwenye anwani za SCL na SDA.

Walakini, ili kufikia matokeo, inahitajika kuandika firmware ili kifaa kifanye kazi kama tunavyohitaji. Kwa mawazo yaliyotayarishwa, wakati wa kutafuta SDK kwa ESP8266, mtengenezaji wa firmware mtandaoni (au compiler online) alipatikana, ambayo hauhitaji ujuzi wa programu (katika kazi zake nyingi)! Ili kupata upatikanaji wa mkutano wa firmware, usajili unahitajika, vinginevyo orodha hii haipatikani kabisa. Bila usajili, unaweza kupakua programu tumizi ya "kuanza haraka".

Tunachohitaji ni kuangalia masanduku na kazi muhimu na kukusanya firmware kwa moduli ya ESP8266, kuipakua (hapa lazima tuzingatie kwamba kumbukumbu ya moduli haina ukomo na uchague. kazi muhimu, kwa kuwa utendakazi wote wa mkusanyaji mtandaoni bado hautatoshea kwenye kifaa kimoja).

Ifuatayo, toa moduli kwa kutumia programu ya nodemcu-flasher (mipangilio ya programu hapa chini kwenye viwambo) (unganisha kifaa kupitia USB kwenye PC). Wakati wa kuangaza, hakuna kitu kinachopaswa kushikamana na pini za UART za moduli (GPIO1, GPIO3), vinginevyo moduli haiwezi kuwaka. Ikiwa unapanga kuunganisha kitu kwenye pini hizi, basi unapaswa kuizima kwa muda wa firmware. Baada ya kuwasha firmware, tunaanzisha tena moduli au kuzima na kwa nguvu - kulingana na mipangilio, moduli itaunganishwa kwenye mtandao au kuunda kituo chake cha kufikia. Kifaa kiko tayari kwa mipangilio na matumizi!

Ikiwa moduli ya WiFi tayari imetumiwa na firmware nyingine, inashauriwa kuwa kabla ya kuandika firmware kuu, andika firmware na fomu tupu (faili katika programu).

Weka mipangilio ya moduli ya ESP-07 (kama inavyoonyesha mazoezi, kuweka ukubwa wa kumbukumbu ya flash haiathiri sampuli iliyotumiwa; inaonekana, thamani sahihi huwekwa moja kwa moja):

Taja njia ya faili ya firmware:

Bainisha bandari ya COM imewekwa wakati wa unganisho la moduli hii na bonyeza kitufe cha Flash (ikiwa kila kitu kimefanywa kwa usahihi, firmware itapakiwa kwenye moduli):

Subiri hadi programu dhibiti ikamilike:

Kabla ya kuandaa firmware, ni rahisi kuweka mipangilio ya msingi kwenye ukurasa wa mkusanyaji mkondoni, ambapo unahitaji kuingiza jina la mahali pa ufikiaji na. Nenosiri la WiFi router (sehemu" Mfumo" mwishoni mwa orodha ya uteuzi wa utendakazi kabla ya kukusanyika firmware). Kwa kuongeza, unaweza kuweka anwani ya IP tuli ya kifaa. Ili kufanya hivyo, katika kazi za mfumo unahitaji kuchagua kisanduku karibu na " Mipangilio chaguomsingi»na ubofye gia ili kuleta menyu ambapo data hii imeingizwa ikiwa ni lazima. Katika kesi hii, baada ya kugeuka kifaa cha WiFi, kitaunganisha moja kwa moja kwenye router. Baada ya kuiwasha, fungua kivinjari na uingize anwani ya IP ya kifaa ambacho kilijiandikisha kwenye mtandao kwenye bar ya anwani. Tunajikuta ndani Menyu ya WiFi vifaa ambapo huwezi kufuatilia tu vigezo vya sensorer ndani ya mtandao, lakini pia kusanidi kazi nyingine ulizochagua kabla ya kukusanya firmware.

Ikiwa hautafanya mipangilio ya msingi kabla ya kukusanyika firmware, basi mara ya kwanza ukiwasha (baada ya kuwaka unahitaji kubonyeza kitufe cha kupumzika kwenye moduli mara 3 na muda wa sekunde 1), mahali pa ufikiaji itaundwa. hamissmart kwa anwani 192.168.4.1 . Kutumia simu au kompyuta ya mkononi, unahitaji kuunganisha kwenye kituo cha kufikia na kwenda kwa anwani hii kupitia kivinjari, fanya mipangilio, urekebishe tena ikiwa ni lazima. Hali ya kituo katika mipangilio Kuu(ingia ili kuingiza menyu , nenosiri 0000 ), pia kuingiza jina la uhakika Ufikiaji wa WiFi router na nenosiri.

Kwanza unahitaji kuingiza mipangilio kwenye menyu Kuu(uwanja Sanidi ina viungo vya mipangilio na usanidi wa kazi zilizochaguliwa).

Ili kuingia kwenye menyu utahitaji kuingiza jina lako la mtumiaji na nenosiri. 0000 . Hapa unaweza kudhibiti usalama, muda na mipangilio ya muunganisho wa mtandao. Ili kuhifadhi mipangilio iliyoingia, bonyeza kitufe Weka.

Rudi kwenye menyu kuu na ufuate kiungo Vifaa. Hapa tunawezesha na kusanidi sensorer ambazo zitaunganishwa kwenye moduli (upatikanaji sensorer mbalimbali katika orodha hii imedhamiriwa na uchaguzi wao wakati wa kukusanya firmware - ikiwa hutachagua kitu kabla ya kuandaa, kazi hizi hazitapatikana kwenye firmware yenyewe). Kwa sensorer zinazofanya kazi kwenye basi ya I2C, unahitaji kuweka kawaida kwa vifaa vyote GPIO. Kwa nini kawaida? Basi la I2C hukuruhusu kuunganisha vifaa vingi kwa sambamba. Kila kifaa kama hicho kina anwani yake, na mara tu kifaa kikuu kinapotuma anwani hii, kifaa cha mtumwa kilicho na anwani hii kitajua kwamba data sasa itabadilishwa nayo, wakati vifaa vingine kwenye basi havifanyi kazi. Ili kuunganisha sensorer za unyevu wa DHT11/22, mguu tofauti wa moduli hutumiwa, ambao umewekwa katika mipangilio ya orodha hii. Ili kuwezesha sensor ya DS18B20, unahitaji pia kuweka pini tofauti ya GPIO, kisha, ukikumbuka kuhifadhi mipangilio iliyoingia, nenda kwenye orodha kuu na ufuate kiungo cha 1-waya.

Katika menyu hii bonyeza Futa na uchanganue orodha, baada ya hapo inapaswa kuonekana ID Kihisi DS18B20. Na tu baada ya hii sensor ya joto itafanya kazi.

Ili kuunganisha sensorer za analog, unaweza kutumia ADC (pini pekee ADC moduli ya WiFi). Hii ni ADC iliyojengwa ndani ya moduli yenye uwezo kidogo Biti 10 (sampuli 1023) na voltage ya kumbukumbu 1.024 V. Ikiwa sensor ina kiwango cha voltage ya pato zaidi kuliko thamani hii, ni muhimu kutumia mgawanyiko wa voltage kwa kutumia vipinga na mgawo unaojulikana wa mgawanyiko. Thamani inayotokana na ADC itatofautiana na thamani halisi kwa sababu hii. Sensorer nyingi za analogi zinapatikana kibiashara kama moduli kulingana na LM393. Kanuni ya uendeshaji wa moduli hizo ni kwamba resistor trimmer voltage ya kumbukumbu kwa kulinganisha (LM393) imewekwa, na mara tu athari kwenye sensor inapoongeza voltage kwenye pembejeo ya kulinganisha, na kuifanya kuwa kubwa kuliko kumbukumbu, kitengo cha mantiki kitatolewa kwa pato la moduli hii. . Kwa hivyo, unaweza kurekebisha kizingiti cha majibu ya sensor (au tuseme moduli ya sensor hii) na kurekodi mafanikio ya kizingiti hiki kwa kutumia tu. GPIO ESP8266 imesanidiwa kwa ingizo. Ili kufanya hivyo, nenda kwenye orodha kuu na ubofye kiungo cha GPIO. Katika menyu hii, weka nambari ya siri na hali ya uendeshaji yake, na uihifadhi. Masomo yatakuwa kama " 0 "au" 1 "- kizingiti kimefikiwa au la, hatua imetokea au la.

Sasa, ili kuonyesha usomaji wa vitambuzi kwenye Mtandao, fuata kiungo Seva au DDNS kulingana na njia iliyochaguliwa ya unganisho la Mtandao. Hapo awali, nilipanga kutumia huduma ya narodmon.ru kwa kusudi hili, ambayo inaonyesha usomaji wa sensorer ya watumiaji wote wanaotumia huduma hii moja kwa moja kwenye ramani. Kwa kuongeza, huduma hii ina programu na vilivyoandikwa vya vifaa vya simu na PC, ambayo ni rahisi sana. Jiandikishe katika huduma hii (ni bure kabisa) ukitumia ID(tazama picha ya skrini hapa chini - kiungo Seva mashamba Sanidi).

Huduma peopleodmon(ufuatiliaji maarufu) huhifadhi usomaji wa vitambuzi kwa hadi mwaka 1 na hukuruhusu kukusanya vipimo vya vitambuzi kwa muda pamoja na utendakazi mwingine.

Baada ya udanganyifu wote ndani Mipangilio ya WiFi data ya moduli hutumwa kwa huduma ya nje kwa ufuatiliaji na kuhifadhi viashiria vya sensorer, ambavyo vinaweza kutazamwa kutoka popote duniani na upatikanaji wa mtandao. Ukurasa kuu wa moduli unapatikana ndani mtandao wa ndani na huonyesha usomaji wa vitambuzi vyote vilivyounganishwa. Athari inayohitajika imepatikana.

Kwa kweli, mkusanyaji mkondoni hutoa kazi zingine nyingi: kuunganisha maonyesho anuwai, kutuma barua pepe au sms (inahitajika moduli ya GSM Kwa kutuma sms bila huduma za mtandao), kufanya ubinafsishaji shughuli za kimantiki, udhibiti wa pembeni mbalimbali kwa kutumia GPIO na PWM, kurekodi vigezo vinavyodhibitiwa kwa kadi ya kumbukumbu ya SD na mengi zaidi. Ikiwa moduli moja haitoshi, basi unaweza kufanya kadhaa kati yao, watafanya kazi kwa ujumla ndani mtandao ulioshirikiwa shukrani kwa kazi za sensorer virtual na GPIO virtual (kifaa kimoja hupokea usomaji wa sensor kutoka kwa mwingine PATA ombi) Ikiwa hakuna bandari za kutosha za kuingiza/pato, basi kuna utendakazi wa kuunganisha vipanuzi vya bandari. Utendaji fulani unapatikana tu ndani Hali ya Pro firmware, ambayo imewashwa ukurasa wa nyumbani kupitia kiungo cha GET PRO. Ili kuamsha, unahitaji kuingiza msimbo ambao sio bure, lakini inagharimu tu kiasi cha mfano, ambacho kinaweza kupatikana. akaunti ya kibinafsi tovuti ya mkusanyaji mtandaoni.

Kwa mipangilio, ni muhimu sio kuchanganya GPIO ya moduli (ikiwa ESP-07 inauzwa kwa bodi, alama za pini hazionekani) kwa uendeshaji wa kawaida:

Kwa kuongezea kila kitu, vituo vilivyobaki vya moduli vinaweza kushikamana na onyesho ambalo tutaonyesha maadili ya sensorer za hali ya hewa. Mbuni huunga mkono maonyesho ya ILI9341 - TFT LCD 240x320 yanayofanya kazi kupitia kiolesura cha SPI.

Wakati wa kukusanya firmware, tunabainisha ni pini gani za GPIO CS na DC za onyesho zitaunganishwa (menyu ya mipangilio inaitwa kwenye tovuti ya wabunifu wakati wa kuchagua kazi kwa kubofya gear karibu na kazi tunayohitaji). Pini zilizobaki lazima ziunganishwe kama ifuatavyo: MOSI - GPIO13, SCK - GPIO14, kuweka upya na LED zimeunganishwa kwa pamoja na usambazaji wa umeme wa vcc, na, ipasavyo, vcc na gnd kwa pamoja na minus ya usambazaji wa umeme (tunachukua nguvu kutoka kwa moduli ya WiFi 3.3 volts).

Hapa tunawasha TFT, ikiwa ni lazima, zungusha onyesho digrii 90 na uweke mistari ipi ( Mstari wa 0, Mstari wa 2...) ni habari gani tutaonyesha. Na kipengele cha kukokotoa kimewashwa Muda na NTP katika kazi za kijenzi cha mfumo na Seva za NTP habari ya muda inachukuliwa kupitia mtandao, ambayo hugeuza kifaa chetu kuwa saa sahihi ambayo haihitaji kurekebishwa. Tunatoa wakati wa sasa kwa onyesho na vigezo vichache zaidi vya hali ya hewa ili kujaza onyesho. Ili kufanya hivyo kwenye shamba Chagua mstari chagua mstari, karibu nayo tunachagua parameter ambayo tutaonyesha kwenye mstari huu, chini, ikiwa ni lazima, tunachagua kituo cha data, ukubwa wa font na rangi ya font. Bofya Weka na mpangilio umehifadhiwa. Fonti ni ya aina rahisi ya fonti pekee. Uchaguzi wa vigezo vilivyotayarishwa ni ndogo sana, lakini inatosha, lakini kwa kutumia mjenzi wa kamba, unaweza kuonyesha vigezo vyovyote katika usanidi wowote.

Nakala hiyo inaambatana na faili bodi ya mzunguko iliyochapishwa kwa moduli ya ESP-07, firmware yenye fomu tupu, firmware yenye utendaji mbalimbali kwa ESP-07, nyaraka fulani, kiendeshi cha programu ya USB kwa chip CH340G, programu ya kuangaza ESP8266.

Orodha ya vipengele vya mionzi

Uteuzi Aina Dhehebu Kiasi KumbukaDukaNotepad yangu
IC1 Sehemu ya ESP8266ESP-071 Kwa notepad
IC2 Kiolesura cha USB ICCH340G1 Kwa notepad
VR1 Mdhibiti wa mstari

AMS1117-ADJ

1 Kwa notepad
VD1 Diode ya Schottky

1N5819

1 Kwa notepad
R1 Kipinga

3 kOhm

1 1206 Kwa notepad
R2, R7-R9 Kipinga

10 kOhm

4 0805 Kwa notepad
R3 Kipinga

1.8 kOhm

1 1206 Kwa notepad
R4 Kipinga

1 kOh

1 0805 Kwa notepad
R5, R6 Kipinga

390 ohm

2 0805 Kwa notepad
C1 Capacitor10 µF1 kwenye bodi ya kauri 1206 Kwa notepad
C7 Capacitor22µF1 tantalum + 2.2 µF kauri 1206 Kwa notepad
C6 Capacitor100 µF1 tantalum

Chaguo tofauti za utekelezaji kwa moduli ya ESP8266 zimepitiwa hapa zaidi ya mara moja, na inastahili hivyo. Chip hii ndogo ya saizi ya sarafu iliyo na WiF ubaoni inaweza kufanya kazi kama sehemu ya ufikiaji na mteja na inaweza kupangwa kwa njia yoyote - na inauzwa kwa dola chache.

Kabla hatujapata wakati wa kuzoea wazo kwamba kila aina ya ufundi wa kupendeza unaweza kufanywa kwenye senti Arduino, Attiny au STM - kama vifaa vilivyo na WiFi na. wasindikaji wenye nguvu kwa megahertz 80 wakawa washindani kwa bei. (Damn, processor yangu iko katika ya kwanza kompyuta mwenyewe ilikuwa haraka kidogo, nina umri gani).

Shida moja - vifaa vyote vilivyo na ESP8266 vilivyopitia mikononi mwangu vilikuwa visivyofaa sana, kuviunganisha ilikuwa maumivu. Lakini tasnia ya Wachina ilitusikia na ilifanya vizuri :)

Kwa nini "tunapenda" tofauti tofauti ESP8266:

  • Zinaendeshwa na volts 3.3, badala ya tano zaidi ya kawaida
  • Katika kilele wanahitaji sasa ya hadi 320mA, ambayo ni zaidi ya uwezo wa vibadilishaji vya kawaida vya USB-TTL.
  • Kiwango kati ya matokeo ya bodi kawaida sio kiwango cha 2.54 mm, lakini 2 mm haswa - ambayo hufanya uuzaji kuwa tukio ngumu.
  • Kuna toleo moja tu la bodi iliyo na pini ya 2.54 mm ("ESP8266-01"), lakini ina pini muhimu.
  • Chip inabadilishwa kwa hali ya programu kwa kufunga anwani, ambayo ilihitaji ujuzi. Au soldering kifungo
  • Na Rudisha tatizo sawa - ama kuzima nguvu au solder kifungo
Na kisha tasnia ya Wachina ilitoa "ESP8266-12E" chini ya jina "Witty Witty":

Ubao ni "sandwich" ya mbili. Kwenye safu ya juu (upande wa kushoto katika picha zote mbili) ni chip ya ESP8266 yenyewe, chini yake ni kiunganishi. usambazaji wa umeme wa microUSB na mdhibiti wa voltage AMS1117-3.3, ambaye kazi yake ni kugeuza volts 5 kuwa 3.3. Kulingana na hifadhidata, mdhibiti ana mikondo hadi 0.8A, kwa hivyo hii ni zaidi ya kutosha kuwasha chip. Hapo - Weka upya kitufe ili kuwasha upya.
Ili kuwa na kitu cha kuchukua pembe tupu za ubao, Wachina walisukuma LED ya RGB na mpiga picha huko, zaidi juu yao baadaye.

Kwenye safu ya chini ya "sandwich" (picha ya kulia) kuna MicroUSB kamili, chip CH340G na vifungo vya "Flash" (mode ya firmware) na "Rudisha".

"Sandwich" inatoa uhuru mkubwa wa hatua. Unaweza kuunganisha "sandwich" kwenye kompyuta chini (kamili) Kiunganishi cha USB, ipange upya - na kisha uiunganishe kwenye ufundi wako pekee sehemu ya juu, kuokoa juu ya ukubwa wa kesi.

Kwa kuongeza, chini ya "sandwich" inaweza kutumika kupanga moduli za nyumbani. Mimi mwenyewe niliuza moduli za ESP8266-12 na ESP8266-07 zilizokuwa zikizunguka kwenye bodi za adapta ambazo hazijafanikiwa sana kwa $0.22 na kuambatanisha vidhibiti vya AMS1117 "kwenye snot" - zote zilifanya kazi bila shida yoyote na ikawa inaendana 100% kwa suala la viunganishi na. vifungo:

Sawa, inatosha kusifu moduli, tufanye jambo muhimu. Ukurasa wa muuzaji hutangaza aina fulani ya SDK na hata aina fulani ya "wingu" la Kichina kwa vifaa kulingana na ESP8266 na Android, ingawa hakuna (karibu) habari kuzihusu kwa Kiingereza. Ikiwa ndivyo, tuachane nazo, tuzindue Kitambulisho cha Arduino 1.6 na tuingie kwenye mipangilio.

Katika dirisha la "URL za Ziada", weka mstari https://arduino.esp8266.com/package_esp8266com_index.json Kisha ufungue "Kidhibiti cha Bodi" na uweke "ESP8266" kwenye upau wa utafutaji. Bofya Sakinisha na uwe tayari kusubiri hadi megabaiti 130 za vifurushi zipakuliwe:

Wacha tuunganishe "sandwich" kwenye kompyuta kwenye kiunganishi cha chini (kamili) cha MicroUSB. Windows inapaswa kugundua kibadilishaji cha USB-TTL "CH340G" na kukikabidhi bandari pepe. Ni bandari hii ambayo tutaonyesha ndani Mipangilio ya Arduino IDE. Mipangilio iliyobaki ni:

Wacha tuweke nambari ya msingi kwenye kumbukumbu

#pamoja na const char* ssid = "??? jina la sehemu yako ya WiFi ???"; const char* password = "??? nenosiri???"; Seva ya WiFiServer (80); usanidi batili() ( Serial.begin(115200); WiFi.begin(ssid, password); huku (WiFi.status() != WL_CONNECTED) ( delay(500); Serial.print("."); ) seva. start(); Serial.print("Anwani ya IP ya moduli yetu:"); ; ) wakati(!client.available())( delay(1); ) client.flush(); hello kutoka esp8266!\n"; client.print(s); delay(1); )

Tafadhali kumbuka kuwa wakati wa mchakato wa kuangaza hakuna haja ya kushinikiza kifungo cha Flash - bodi itachukua kila kitu yenyewe.

Baada ya programu mpya hutiwa ndani ya ESP8266, inaweza kukatwa kutoka kwa kompyuta na kuwashwa hata kutoka kwa benki ya nguvu. Sehemu ya chini ya "sandwich" inaweza kutengwa;

Ama na Msaada wa Arduino ufuatiliaji wa serial (kasi ya bandari - 115200), au kwenye kiolesura cha wavuti cha kipanga njia tunaangalia anwani ya IP ambayo tulipokea mtandao wa WiFi wa nyumbani ESP8266 yetu. Fungua anwani hii katika kivinjari cha kompyuta au simu yako:

Kifaa chetu kimeunganishwa kwa mtandao wa nyumbani, alileta seva ya wavuti na anatujibu.

Je, una uhakika kuwa kifaa chako kinafanya kazi? Hebu tuendelee. Ili itumike kwa kitu muhimu katika maisha ya kila siku, inavutia "kufanya urafiki" nayo, kwa mfano, na relay. Kweli, relays za kawaida za 5-volt, kwa ufafanuzi, hazihitajiki tena - hatari ni kubwa sana kwamba voltage ya 3.3 volts haitoshi kwa sumaku ya umeme kuvuta silaha. Kwa hivyo, tunachukua relay ya hali thabiti ya Omron kwa $1.90. Kulingana na hifadhidata, voltage tuliyo nayo inatosha kufanya kazi wazi:

Tunaunganisha "plus" na "minus" kwa mawasiliano ya VCC na GND ya safu ya juu ya "sandwich", na ya tatu, ishara, waya kwa, kwa mfano, mawasiliano ya GPIO 2 kama programu mchoro wa WiFiWebServer, ambao umeambatishwa kwenye maktaba ya Arduino, au tumia programu ya mwenzako. Sav13 kutoka samopal.pro/wifi-power-esp8266/

Kwa jaribio hilo, nilichukua balbu rahisi ya halojeni ya 20W na kuibofya hadi niliyofurahiya:

Uendeshaji hutokea kwa sekunde ya mgawanyiko baada ya amri kutolewa. Ili kuangalia kuegemea, niliingiza kihesabu rahisi kwenye msimbo na kuchora faili rahisi ya popo iliyowasha na kuzima balbu kwa kusitisha kwa sekunde. Nilifungua rundo lao madirisha ya ziada, ambayo ilianza kushambulia anwani ya IP ya moduli bila mwisho amri ya ping. Baada ya masaa machache, counter counter ilizidi elfu 19, lakini kila kitu kilifanya kazi - ambayo inatoa imani fulani katika kuaminika kwa kifaa.

Ikiwa umesoma hadi sasa, lakini wazo "hii yote ni ngumu" inazunguka katika kichwa chako, nina kitu cha kupendeza kwako.

Kumbuka nilisema hivyo Mtengenezaji wa Kichina"kwa mabadiliko", uliweka RGB LED na photoresistor kwenye ubao? Unaweza kuzijaribu, hata kama huna vitambuzi vingine au vifaa vingine vya pembeni.

Katika chaguo hili, utahitaji kufanya jitihada na kuzindua IDE ya Arduino mara moja kabisa.


Skrini ya programu ni sehemu tupu ambayo unaweza kuweka vipengele, kama vile kwenye dashibodi. Kwanza jaribu "zeRGa" na "kupima":

Katika mipangilio ya pundamilia, taja kuwa LED ya rangi tatu kwenye ubao imeunganishwa na pini 12 (kijani), 13 (bluu) na 15 (nyekundu):

Katika mipangilio ya "kipimo", taja kuwa kipimaji picha kwenye ubao kimeunganishwa na pembejeo ya analogi "adc0":

Washa ulichochonga kwa kubofya kitufe kilicho upande wa kulia kona ya juu. Utaona kwamba kiashiria cha njano kinabadilika kulingana na kiwango cha mwanga, na LED ya RGB kwenye "sandwich" inabadilisha rangi wakati unapopiga kivuko cha zebra:

Mazoezi yameonyesha kuwa watoto wanapenda sana jambo hili. Ni jambo moja kucheza michezo ya watu wengine kwenye kompyuta kibao, ni jambo lingine kutengeneza na kuchora "udhibiti wa kijijini" mwenyewe na kudhibiti kitu kinachoonekana. Inatosha kuchukua sehemu ya maandalizi katika Arduino, na kisha kuonyesha jinsi ya kuitumia, kutoa LEDs kadhaa, vifungo au sehemu kama vile sensor ya joto ya analog ya LM35 - mara moja watachukua "toy" yako na mtoto wako atakuwa na shughuli nyingi. kwa muda mrefu. Hutavutwa na masikio, imeangaliwa.

Kwa uumbaji wa haraka Protoksi za Blynk pia ziligeuka kuwa rahisi sana - ni rahisi kuchora vifungo na swichi hapo kuliko kuunda kiolesura chako cha wavuti. Wakati uliohifadhiwa unaweza kuwa faida kubwa zaidi kutumia katika kukusanya ufundi mwingine.

Muhtasari

Kwa bei ya zaidi ya rubles 200, unapata kifaa chenye nguvu sana na huru kabisa ambacho unaweza kupanga kila aina ya vitu muhimu kwa nyumba yako - na udhibiti kupitia WiFi.

"sandwich" iligeuka kuwa na mafanikio ya kushangaza. Ni chini ya dola moja ghali zaidi kuliko ESP8266-12 tupu, lakini hukuokoa tani ya muda na shida. Rundo la waya na ubao wa mkate hauhitajiki.

Wazo la kusanikisha mapema LED na picha kwenye ubao limefanikiwa sana. Hata kama huna chochote isipokuwa moduli na kebo ya MicroUSB, bado unaweza angalau kujaribu kitu kwanza na kufurahia ununuzi. Ikiwa hazihitajiki kwenye bidhaa iliyokamilishwa, wauza tu au uikate.

Kwa bei hii, "sandwich" ni mshindani wazi Arduino Nano, na kuifanya iwe ya lazima sana Moduli za Bluetooth(aina HC-05) na hata zaidi - moduli za redio za NRF24L01+.

Nilijishika na karibu kuvunja mila: