INHOUDSOPGAWE:

Haal data van enige webwerf af via wifi (noorderlig -aanwyser) met 'n omringende atmosfeer met NodeMcu: 6 stappe
Haal data van enige webwerf af via wifi (noorderlig -aanwyser) met 'n omringende atmosfeer met NodeMcu: 6 stappe

Video: Haal data van enige webwerf af via wifi (noorderlig -aanwyser) met 'n omringende atmosfeer met NodeMcu: 6 stappe

Video: Haal data van enige webwerf af via wifi (noorderlig -aanwyser) met 'n omringende atmosfeer met NodeMcu: 6 stappe
Video: Дневник хранящий жуткие тайны. Переход. Джеральд Даррелл. Мистика. Ужасы 2024, Julie
Anonim
Haal data vanaf enige webwerf via wifi (noorderlig -aanwyser) met 'n omringende atmosfeer met NodeMcu
Haal data vanaf enige webwerf via wifi (noorderlig -aanwyser) met 'n omringende atmosfeer met NodeMcu

My motivering: ek het BAIE instruksies gesien oor die opstel/ gebruik van 'n NodeMCU (gebou op die ESP8266 -module) vir die maak van IoT -projekte (internet van dinge). Baie min van hierdie tutoriale het egter al die besonderhede/ kode/ diagramme gehad wat 'n beginner persoon van begin tot einde kon volg, en nie een van hulle het presies gedoen wat ek wou nie.

Wat sal dit dek ?: Dit dek alles wat u moet weet (en wat ek nie gedoen het nie), insluitend:

  1. Materiaal (spesifiek wat ek gebruik het)
  2. Arduino, NodeMcu, ESP8266, wat is die verskil?
  3. Aan die gang met die NodeMcu

    1. Die opstel van die sagteware (Arduino IDE)
    2. Laat 'n LED knip
    3. Opsies vir die voeding van die NodeMcu
    4. Koppel aan die internet
  4. Hoe om data van 'n webwerf af te haal

    1. "Wys" na die inligting wat u op die webwerf wil hê
    2. Thingspeak/ ThingHTTP/ API's (moenie bang wees nie, geen kodering nodig nie)
    3. Toegang tot hierdie data vanaf die NodeMCU
  5. Die vertoon van die data
    1. Wat ek gebruik het (hoe om 'n 7 -segment -skerm te bedraad)
    2. 'N Paar idees/ dinge wat ek met meer tyd sou gedoen het
  6. Ek dink hoe om 'n boks te bou

VRYWARING: Ek het BAIE video's gekyk om te leer hoe om dit te maak, en byna die hele kode is saamgevoeg uit ander bronne, en ek kan dit nie almal onthou nie. Die belangrikste bron van dinghttp -inspirasie was hierdie man wat in wese dieselfde doen as wat ek beskryf, maar ek het gevind dat ek kyk na dinge wat aanraakskerms was en wat nie verwarrend was nie. Ek beskou hierdie instruksies meer as 'n inleiding tot die NodeMcu en soort van IoT -projekte eerder as 'n spesifieke voorwerp, maar die inspirasie vir hierdie spesifieke (Northern Lights) aanwyser was insiggewend vanaf 2008. Ek was mal oor die manier waarop dit beskryf word as 'arm' man's ambient orb , met omgewingsinligting, soos aandele, YouTube -weergawes of weer sonder die gebruik van telefone of ander indringende middele.

Stap 1: materiaal

Materiaal
Materiaal
Materiaal
Materiaal

U benodig hierdie:

1. 'n NodeMcu -bord

2. 'n Mikro -USB -kabel om die kode na die bord op te laai en die finale produk aan te dryf as u dit verkies.

3. LED's, jumperdrade (manlik, manlik, vroulik) en 'n broodbord om dinge aan te sluit … dit is 'n gegewe gegewe, maar alles wat u wil "uitvoer" (vertoon of afhanklik van die data), benodig hardeware. As u die omringende bol wil herskep, of presies wil maak wat ek gedoen het, is 'n 7 -segment -skerm of 'n paar LED's net subtiel genoeg. Die broodbord is nodig vir 'prototipering' voordat u dinge 4 werklik verbind, en ek sal in die betrokke afdeling verduidelik hoe dit werk/ hoe dinge verbind word. As u nog net 'n beginner is, kry 'n arduino -aansitpakket, aangesien dit baie klein dingetjies bevat (insluitend alles wat ek gebruik het), plus 'n arduino -uno vir 'n ander projek.

Dinge wat jy MAG nodig het:

4. 'n Broodbord -voedingsmodule (as u die NodeMcu met 'n standaard kragadapter wil voed … sou ek dit nie doen nie, aangesien u dit net met 'n mikro -USB kan aanskakel, wat baie geriefliker is. As u 'n projek wil maak heeltemal draadloos, dan benodig u natuurlik 'n battery, maar ek behandel dit in die kragafdeling.

5. 1/4 denne vir 'n klein boks (as jy wil)

6. 'n bietjie fineer om u boks te bedek en/of as diffuser vir u LED of skerm te dien

7. Super (CA) en/of houtlym om 5. en 6 aan te heg.

Stap 2: Wat is 'n Node MCU?

Wat is 'n Node MCU?
Wat is 'n Node MCU?
Wat is 'n Node MCU?
Wat is 'n Node MCU?

As u 'n ware elektroniese beginner is soos ek, wonder u miskien wat die verskil is tussen 'n Arduino -bord en 'n NodeMcu -bord, en miskien het u ook gehoor van die ESP8266 … wat is die verskil tussen hierdie?!?

Dit is geensins tegnies nie, maar dit is wat u moet weet.

Die Arduino het die vermoë om insette van 'n reeks penne te lees, 'dinge te doen' met behulp van hierdie insette en dan na 'n reeks penne af te voer. Dit is in wese 'n klein rekenaar. Arduino maak BAIE verskillende borde, en baie "skilde" wat by die planke aansluit om ekstra dinge te doen. Die produkte wat hulle tans verkoop wat met die internet verbind word, is baie duur en daar is nie 'n groot gemeenskap wat dit kan volg nie. Die kode word geskryf en op die planke gelaai vanaf die "Arduino IDE" sagteware, wat C en C ++ ondersteun, met 'n paar ander spesiale formateerders. U hoef nie te weet hoe om C of C ++ te programmeer om te programmeer nie, aangesien daar sulke 'n gekke hoeveelheid kode wat aanlyn beskikbaar is, maar 'n mate van vertroudheid met programmering (veral dinge soos terwyl en vir lusse, veranderlike verklaring en omvang, ens) help om begrip te bespoedig. Die Arduino IDE bied ook 'n enkele plek om die nodige biblioteke vir verskillende borde af te laai (meer hieroor later by die opstel van die NodeMcu).

Die ESP8266 is 'n uiters goedkoop WiFi-module wat basies die internet-geaktiveerde arduino-skilde verouderd gemaak het (alhoewel u nog steeds arduino-borde sien met ingeboude wifi). Die DIY-gemeenskap rondom die ESP8266 is so groot dat dit amper die enigste logiese keuse is om toestelle met internet te maak. Dit word gereeld gebruik in samewerking met 'n arduino -bord via die seriële penne (Rx en Tx), hoewel ek dink dat sommige mense dit "alleen" gebruik, maar aangesien die mikroskyfie so klein en moeilik is om mee te koppel (dit het basies 6 penne): 2 vir serie (om met dinge te praat), 2 vir krag (grond en VCC), en 2 GPIO (insetuitgang vir algemene doeleindes), plus dit werk op 3.3V en so sal 5V dit vernietig) dat dit vinnig vervang is deur …

Die NodeMcu, wat net soos die Arduino 'n open source ontwikkelingsbord is, behalwe met die bou op die ESP8266. U kan eintlik sien hoe die ESP8266 in die NodeMcu -bord ingebou is op die foto's wat ek aangeheg het. Hierdie bord is perfek vriendelik om mee te programmeer en te koppel, en is basies vergelykbaar met 'n arduino nano. Dit het baie meer penne en kan direk vanaf u rekenaar via 'n USB geprogrammeer word sonder om deur 'n ander bord te gaan. Alhoewel die bord steeds tegnies werk op 3.3V-logika eerder as op 5V-logika, het dit ingeboude skyfies om hierdie spanning te bestuur, sodat dit net soos u arduino aangedryf kan word, hetsy via USB of deur die VCC (spanning in) penne. Vir alles wat IoT is, is die NodeMcu basies 'n goeie, eenvoudige enkelbord om te gebruik en is WiFi aangeskakel … alhoewel dit ook 'n goeie keuse is vir nie-wifi-projekte. Tegnies is die NodeMcu se "out of the box" -taal LUA, maar na 'n eenmalige opstelling in die Arduino IDE kan u dit net soos enige ander Arduino programmeer.

Stap 3: Aan die gang met die NodeMcu

Ek het die volgende video gebruik om die eerste keer met die NodeMcu te begin, en as u al sy instruksies presies volg, behoort alles goed te werk.

1. Die opstel van die sagteware (Arduino IDE)

  • Laai die Arduino IDE af vanaf die skakel hierbo en kies 'net aflaai' as u nie 'n skenking kan maak nie
  • Maak die Arduino IDE sagteware oop
  • Onder File -> Voorkeure, Addisionele Boards Manager URL's, plak die volgende skakel "https://arduino.esp8266.com/versions/2.5.0-beta2/package_esp8266com_index.json"
  • Onder Tools -> Board -> Boards Manager (bo) blaai af na onder, of soek na ESP8266, en klik op install
  • Miskien moet u die Arduino IDE herlaai voordat dit verskyn, maar klik nou op Tools-> Board en kies die bord wat u gekry het, dit wil sê die NodeMcu 1.0 ESP12-E-module
  • U hoef miskien nie hierdie stap te doen nie, maar koppel die usb vanaf u NodeMcu aan u rekenaar (ligte knipper) en gaan na Configuratiescherm-> Toestelbestuurder -> Poorte -> en let dan op die COM -poort wat gemerk is "Silicone Labs …" dit is die COM -poort wat die NodeMcu gebruik
  • Gaan terug na Arduino IDE en na Tools-> Port: en maak seker dat hierdie poort gekies is
  • Alles moet goed wees, maar maak seker dat die flitsgrootte onder Tools 4 is (moenie bekommerd wees oor die SPIFFS nie, alles wat gekies word, is goed), en dat die oplaaisnelheid 115200 is, dink ek … Die NodeMcu gebruik eintlik 'n baud rate van 9600 om inligting terug te stuur na die seriële monitor (as u nie weet wat dit beteken nie, moenie bekommerd wees nie, dit sal in die voorbeeld verskyn), maar as u in die kode en dan in die monitor is, het u 9600, Dis goed.

2. Laat 'n LED knip

Dit is soos die 'Hello World' (dus baba $ h1t) van programmering, maar dit laat u weet dat alles goed is met die bord, en dit sal u help om vertroud te raak met die Arduino IDE. Dit demonstreer NIE die WiFi -vermoëns van die bord nie (ons doen dit in die volgende voorbeeld), maak net seker dat dit verbind is en kan funksioneer, ens.

  • Maak die arduino IDE oop, en laat u NodeMcu ingeprop word
  • Let op dat u, voordat u iets doen, 'n raamwerk het vir die mees basiese kode wat u aan u arduino kan skryf, met 'n setup () lus wat een keer loop en 'n ander lus () wat vir ewig voortdurend sal loop. Ons finale kode sal net so gestruktureer wees, met 'n paar dinge hierbo bygevoeg en 'n funksie onderaan gedefinieer
  • Lêer-> Voorbeelde-> (onder die NodeMcu 1.0-afdeling) ESP8266-> Knip
  • Dit sal 'n paar kode in die venster oopmaak. Stoor dit gerus iewers.
  • In hierdie kode bevat die setup () lus die definisie van die ingeboude LED op die bord as 'n uitset, en die lus lewer hoog en laag na hierdie LED uit. Let daarop dat vir die LED wat op die bord ingebou is (slegs! Dit is nie die tipiese geval nie), die "LOW" -uitgang (0 volt) dit laat aanskakel, aangesien dit standaard aan is en "HIGH" (3.3V in hierdie geval dink ek), is af
  • As alles behoorlik ingestel is soos hierbo uiteengesit, moet u op "Verifieer" (die vinkje in die sirkel in die linker boonste hoek) kan klik om te verseker dat daar geen foute is nie (hierdie het u nie, aangesien u dit nie gedoen het nie) skryf dit nie, maar u s'n sal dit doen!), en as dit alles goed is, laai die 'Laai' reg langs dit op
  • As u op die oplaai -klik klik, sien u onderaan die materiaal wat in die swart gebied uitgelees word, en kolletjies/ % voltooi
  • Moenie bekommerd wees dat dit 33% van die geheue in beslag neem nie … dit is basies 'n 'vaste' hoeveelheid wat selfs die eenvoudigste kode in beslag neem; wat ek geskryf het, neem slegs 1% ekstra ruimte in beslag
  • U sal sien dat die LED op die bord begin knip (wat dit moontlik al 'n bietjie gedoen het), dus verander die hoeveelheid duisendste van 'n sekonde (millisekondes) in die vertragingsgedeelte van die skrif. As dit u eerste keer is om te programmeer, is dit waarskynlik 'n opwindende rit om die LED op 'n effens ander frekwensie te sien knip

3. Opsies vir die voeding van die NodeMcu

Ek weet nie hoekom ek dit aanvanklik nie verstaan het nie, maar die kode wat u na die bord laai, bly daar en sal vir ewig en altyd werk sodra daar krag voorsien word. Byvoorbeeld, nadat u stap 2 voltooi het, sou dit weer begin knip as u dit van u rekenaar sou ontkoppel en dit elders aanskakel. Die maklikste manier om die NodeMcu aan te skakel, is deur net 'n mikro -USB daaraan te koppel en dan in 'n laaiblok, net soos u vir u selfoon in die muur gebruik ('n 5V 1A -blok of wat dit ook al mag wees). Kyk gerus na my ander instruksies vir inligting oor hoe u dinge kan dryf, polariteit van DC -aansluitings, ens. meer as genoeg vir hierdie bord en enige LED's wat u byvoorbeeld gebruik), maar die spanning moet binne 'n baie nou bereik wees sodat alles korrek kan werk. Op die NodeMcu kan u 'n kragtoevoer met 'n spanning van 3.3V tot 20V veilig gebruik, aangesien daar 'n reguleerder op die bord is wat hierdie spanning daal (dit is 'n goeie kenmerk). Met stroomsterkte is dit goed om oor te gaan, aangesien die bord net sal teken wat dit nodig het, maar met spanning is dit oor die algemeen veiliger om spannings so naby aan die vereiste #te gebruik sonder om onder te gaan, so minder werk moet gedoen word/ krag word vermors druk die spanning af. As u 'n battery wil gebruik, of 'n DC -aansluiting wil gebruik (miskien kan u 'n goeie lang kabel hê), is die penne wat u moet gebruik, die VIN -aangrensende grondpenne.

4. Koppel aan die internet

Ek het die kode van die YouTube -video hierbo as 'n lêer aangeheg (ter wille van die nageslag, as die video verdwyn), maar gaan deur die YouTube -skakel en gee hom 'n blik op die kode. Dit is eintlik u tyd werd, verduidelik hy die geskiedenis van die raad, wat nogal lekker is.

Maak die arduino -kode lêer genaamd "Wifi_connect" oop en verander die SSID en wagwoord na u eie, en gaan dan

  • Let op dat daar bo die lusse 'n #inclus -reël is, wat Arduino sê om 'n biblioteek met WiFi -items vir die ESP8266 in te sluit. Dit is basies 'n klomp hulpmiddels en dinge wat saamgevoeg is en u toelaat om spesifieke dinge relatief eenvoudig te doen met behulp van die voorafgeskrewe goed wat in die biblioteek voorkom. As u byvoorbeeld 'n skild of toevoeging tot 'n bord gekoop het, het dit waarskynlik biblioteke wat daarmee verband hou, sodat u dit makliker kan koppel.
  • Gereedskap-> Seriële monitor
  • Maak seker dat die seriële monitor op 9600 gelees is. As dit nie op die regte spoed is nie, spoeg die seriële monitor 'n deurmekaarspul, so dit is 'n goeie aanduiding dat u seriële monitor nie dieselfde tempo as die reeks gedefinieer het nie. in die kode
  • Klik op verifieer en hardloop, en kyk na die seriële monitor terwyl dit voltooi is … dit sal u 'n klomp besonderhede oor die verbinding vertel as dit werk, en dit demonstreer dat die ESP8266 in die NodeMcu aan u WiFi kan koppel! Dit doen niks, maar as u hierdie bord êrens aan die muur steek, kan u 30 sekondes wag en redelik seker wees dat dit 'n verbinding met die internet tot stand gebring het, wat ook opwindend moet wees.
  • Om jouself te toets, probeer om die "bllink" -kode en die "wifi_connect" -kode saam te voeg om die ingeboude LED aan te skakel, of knip sodra dit aan die internet gekoppel is. Dit is 'n goeie manier om te leer!

As u al die bogenoemde dinge gedoen het, baie geluk! U het getoon dat u kode na die NodeMCU kan oplaai en dat die NodeMcu aan u WiFi kan koppel. Ons gebruik eintlik 'n effens ander manier om aan te sluit op die WiFi, met die MultiWifi -biblioteek in plaas van die gewone ou Wifi -biblioteek, aangesien u dit maklik kan byvoeg 'n lys WiFis en probeer om aan te sluit by alles wat u kan.

Stap 4: Hoe om data van 'n webwerf af te haal

Hoe om data van 'n webwerf af te haal
Hoe om data van 'n webwerf af te haal

Data op webwerwe word op 'n baie spookagtige manier gestoor. Om dit te filtreer in die dinge wat u wil hê, of om dit te "ontleed", is ewe spookagtig, en dit kan skrikwekkend wees om dit te probeer doen sonder om kennis van HTML te ken … daarom is die doel om die gewenste data uit die spookagtige plek te kry in 'n baie suiwer en gelukkige plek. Wat dit funksioneel beteken, gaan dit van 'n URL wat die hele webwerf vertoon, na 'n URL wat NET die enkele stuk data wat u wil hê, vertoon.

1. "Wys" na die inligting wat u op die webwerf wil hê

Gaan na die webwerf waarin u belangstel, byvoorbeeld hier

www.timeanddate.com/worldclock/canada/edmonton

Gaan dan na die gewenste data, klik met die rechtermuisknop daarop en kies "inspekteer". Dit maak die HTML -kyker in u blaaier oop en wys u die laaste tak van die boom waaruit u data kom. Ek vind dat Chrome die maklikste blaaier hiervoor is, maar blykbaar het Firefox 'n paar uitbreidings wat dit beter maak … maar ek voel asof dit net 'n klassieke firefox-persoon is om te sê?

Dit is waar die data leef. Soms het dit 'n ID waarna dit verwys, soms word dit net reguit geskryf. Hoe haal ons dit uit?

2. Thingspeak/ ThingHTTP/ API's (moenie bang wees nie, geen kodering nodig nie)

Ek gaan nie eens praat oor wat API's is en hoe u dit maak nie, maar u kan dit u voorstel as die werklike verbinding of oordrag tussen u (u versoeke) en waar die dinge is waaroor u versoek. Die klassieke analogie is 'n kelner by 'n restaurant. Om dit sonder kodering uit te voer, gebruik u 'n gratis diens genaamd "ThingSpeak", en spesifiek hul toepassing "ThingHTTP". Maak net 'n rekening en gaan dan na programme, en onderaan, dinghttp, en skep een.

Die enigste ding wat u hoef te doen is om die URL van die webwerf te kopieer en te plak, byvoorbeeld die datum en tyd webwerf hierbo, en dan na die laaste veld "Ontleed string" te blaai. Dit is die pad na die data wat u wil hê.

Ek vermoed dat hierdie pad op 'n paar maniere gegee kan word, maar die eenvoudigste en enigste manier wat ek ken, is deur met die rechtermuisknop op die stuk data soos hierbo beskryf, te inspekteer en dan met die rechtermuisknop op die reël te klik wat ooreenstem met die data in die HTML-kyker, en gaan Kopieer-> x pad. Dit word op die aangehegte prentjie getoon.

As u klaar is, probeer om na die URL wat vir u gegenereer is, te kyk of dit op een of ander manier die gewenste data bevat waarmee u ten minste kan werk. Myne sê byvoorbeeld die temperatuur as "XX F" in plaas van die aantal grade Celsius, maar eenhede en die F aan die einde kan maklik binne die kode verander word. DIT IS UITERS GEMEENT OM DIE FOUT TE KOM DAT DIT NIE GEDEEL KAN WORD NIE. As dit die geval is, probeer om 'n paar van die opskrifte binne die xpath te verwyder, kyk of u die data elders kan vind, of raadpleeg 'n forum waar hulle moontlik die 'beskadigde' aspekte van u ontledingsreeks kan identifiseer. Hierdie metode werk beslis NIE op 'n webwerf wat nie die gewenste data met die webwerf laai nie, maar eerder (self) van 'n eksterne bron af kom, wat 'n rukkie neem om in te laai. Dit moet egter goed werk vir dinge soos youtube -dinge, weer, ens.

3. Toegang tot hierdie data vanaf die NodeMCU

Ek het al baie getik, sien die aangehegte kode, met baie kommentaar, en is tans ingestel om in aurora borealis waarskynlik te lees vir Edmonton AB, Kanada (slegs!). Die eerste aanpassing wat u moet aanbring, is om die URL (eintlik slegs die 16 -syfer -api -sleutelgedeelte van die URL) na u eie ding te verander.

Die tweede ding wat u moet aanpas, is in die lus (), waar die werklike 'waarde' ingebring en gestoor word as die veranderlike 'yourvalue', wat 'n string (teks) is. Dit kan van daar af op enige manier gebruik word wat u wil. Ek het die persentasie -simbool verwyder, die 2 syfers van die % in 2 veranderlikes verdeel (byvoorbeeld 14 % in 1, 4) en dit elkeen as heelgetalle laat stoor, maar met 'n paar vinnige Google -soektogte of opmerkings hier, behoort u in staat te wees om presies die getalle wat u wil hê, te onttrek uit die string wat deur die ding gegenereer is. U benodig nommers om dinge te kan doen, soos om te besluit of dit groot of klein is of deelbaar is deur iets wat genoeg is om dinge aan of uit te sit of te vertoon. Die res van die kode vanaf daardie punt, insluitend die funksie onderaan die sevenseg () genoem, word gebruik om die 2 getalle te vertoon.

Vra gerus vrae oor die kode, of u kan uittreksel of wys watter dinge u wil hê, of hoe u hierdie getalle kan gebruik, byvoorbeeld om die spektrum van 'n rgb LED op te deel en verskillende waardes in verskillende kleure in kaart te bring.

Stap 5: Vertoon die data

Die vertoon van die data
Die vertoon van die data

1. Wat ek gebruik het (hoe om 'n 7 -segment -skerm te bedraad)

Ek kry die aangehegte diagram/ volg die bedrading wat deur hierdie ander instruksies beskryf word.

Die bedrading is redelik eenvoudig, maar as u nog nooit 'n broodbord gebruik het nie, kan dit verwarrend wees wat aangaan. In wese is 'n broodbord bedoel om verbindings duidelik en tydelik te maak.

Al die volgende beskrywings het betrekking op die aangehegte diagram: 'n Broodbord kan horisontaal in 2 herhalende helftes verdeel word, elk met 2 verskillende segmente: horisontaal - en + rye wat die lengte van die broodbord (gebruik vir krag) en vertikale kolomme strek, wat genommer is, en bestaan uit 5 kolle per kolom wat gebruik word om verbindings te merk. Daar is dan 'n klein gaping, en dan verdubbel dieselfde eienskappe aan die ander kant van die denkbeeldige skeidslyn. Al die kolle in die horisontale + ry is aan mekaar verbind, en al die horisontale - ry kolle is aan mekaar verbind. Hiermee kan u die krag aan die een kant van die broodbord aansluit en dan dinge op enige plek langs die + kan aansluit om die krag uit te neem, net soos 'n lang kragbalk vir afsetpunte. Dieselfde geld vir die - ry, wat gebruik word om dinge te maal. Vir die genommerde kolomme is elke plek in 'n genommerde kolom verbind met die ander 4 kolle. Let daarop dat die vyf kolle in 'n kolom NIE verbind is met die vyf teenoor die denkbeeldige halfpadlyn nie. Die broodbord kan in die lengte gesny word en geen elektriese verbindings word verbreek nie.

Die NodeMcu lê perfek oor die twee helftes van die broodbord, met elke pen wat ooreenstem met krag of insette/uitsette met 'n genommerde kolom, sodat u die drade kan aansluit op die oorblywende toeganklike plek en dit elders op die broodbord kan aansluit. Dieselfde geld vir die 7 -segment vertoon in die diagram. Volg byvoorbeeld die pad van die grond vanaf die bord na die 7 -segment vertoning in die diagram.

  1. gemaalde pen van NodeMcu word in kolom 2 ingeprop
  2. draad van kolom 2 na die -ve horisontale kragry (aangedui deur konvensiegrond)
  3. vanaf die grondry (die kolumnommer is nie relevant nie, aangesien die hele ry verbind is) na kolom 22 via 'n weerstand
  4. in die "grond" -pen op die 7 -segmentskerm wat ook in kolom 22 ingeplaas is

Die doel van die weerstand in die diagram is basies om 'n deel van die oortollige kraglewering na die LED's te "insuig", wat funksioneel werk om die skerm te verdof. U sal sien dat wanneer 'n "1" verlig is teenoor 'n "8", die 1 baie helderder is, aangesien minder LED's aan is. Hoe minder helder die LED is, hoe langer sal dit duur, dus is die weerstand nodig. Die meeste diagramme vir 7 segmentvertonings toon eintlik aan dat daar 'n weerstand in serie is met elk van die individuele segmente, maar dit lyk asof dit goed werk. Ek het 'n 1K ohm weerstand gebruik.

Wees baie bewus van watter penne ooreenstem met watter pen op die skerm, aangesien dit in die kode gekarteer is.

2. 'n Paar idees/ dinge wat ek met meer tyd sou gedoen het

Dit is in wese waar ek gestop het, maar u kon baie ander dinge gekies het om uit te voer op grond van die waarde van u data, soos:

  • 'n rgb LED wat kleur verander na gelang van die waarde, of 'n helling dek, van groen na rooi, byvoorbeeld
  • 'n volledige LED -skerm
  • 'n logiese aan/uit oor/onder ware/onwaar LED wat net aan- of uitskakel om iets aan te dui
  • 'n motor wat op 'n spesifieke tyd van die dag draai, soos vir 'n klep op 'n besproeiingstelsel of om 'n lekkerny vir u hond vry te stel … Ek is seker daar is meer doeltreffende maniere om dit te doen as om die tyd via wifi te interpreteer, maar dit is 'n opsie!

Die volgende stap (waarvoor daar verbasend baie meer tutoriale is) is om data op u EIE bediener te plaas (wat ook deur middel van thingspeak gedoen kan word) en dan die gebruik van hierdie data (soos vir 'n outomatiese tuin of slimhuis).

Stap 6: Bou 'n boks

Bou 'n boks
Bou 'n boks
Bou 'n boks
Bou 'n boks
Bou 'n boks
Bou 'n boks
Bou 'n boks
Bou 'n boks

Al die verbindings wat deur die broodbord gemaak word, kan permanent gemaak word deur óf die drade direk tussen die bord en die uitgang te soldeer (soos die LED), óf deur 'n baie kleiner broodbord te gebruik, óf PCB om verbindings te maak op 'n skaal wat kan pas jou projek. Ek het gekies om 'n klein broodbord te gebruik wat in die kit was wat ek gekoppel het, en ek hoef slegs 'n weerstand aan die einde van 'n draad te soldeer … nie baie robuust nie, maar funksioneel!

Ek sny 4 stukke 1/4 "x 3,5" denne op 3,5 "(die kante) en een op 4" (die bokant), en steek dit net vas en plak dit aanmekaar vas, en sorg dat al die gesigte vierkantig is so moontlik sodat elke gesig so spoel moontlik was. Voordat ek die voorste of agterste stukke vasplak, het ek die gebiede vir die skerm en die bord vasgeknip om genoeg uit te steek om onderskeidelik gesien/ ingeprop te word. Die klein broodbord wat ek gekry het, het kleeflint aan die agterkant, sodat dit aan een van die sywande gemonteer kon word, en die 7 -segment -skerm kon vasgehou word deur eers die stuk op die band vas te lê en die skerm op hierdie band te plaas, en dan strooi bakpoeier oor/in al die gapings. Toe gooi ek CA (super) gom in die spasies, wat by kontak met die koeksoda onmiddellik verhard om die skerm vas te hou, teen die voorkant van die voorkant spoel. Die verpakkingstape was om te verhoed dat gom tussen die skerm en die oppervlak waarteen dit na onder kyk, deurtrek en dit verdoesel sodra dit droog is.

Ek het denne -fineer aan al die kante vasgeplak (met behulp van CA -gom, wat na my mening beter werk as houtgom) en die rande met elke stuk aangebring om dit eenvormig te laat lyk/ die boude te verberg/ as 'n verspreider vir die vertoon soos in hierdie video.

Aanbeveel: