Sisukord:

Piiksumise ilmajaam: 8 sammu (piltidega)
Piiksumise ilmajaam: 8 sammu (piltidega)

Video: Piiksumise ilmajaam: 8 sammu (piltidega)

Video: Piiksumise ilmajaam: 8 sammu (piltidega)
Video: СКР 1.4 - конфигурация A4988/DRV8825 2024, November
Anonim
Säutsuv ilmajaam
Säutsuv ilmajaam

Kas olete kunagi tahtnud jälgida oma linna praeguseid ilmastikutingimusi, süsiniku jalajälge, müra ja saastet? Kas soovite olla kliimamuutuste ristisõdija või luua oma säutsuva ilmajaama ja jagada oma kohalikke ilmastikutingimusi maailmaga?

Tutvuge Tweeting Weather IoT Station ehk TWIST - isetegemise, avatud lähtekoodiga keskkonnaseire ja meteoroloogiliste andmete hankimise platvormiga. TWISTi eesmärk on see, et üksikisikud ja kogukonnad saaksid koguda andmeid selle kohta, mis nende keskkonnas tegelikult toimub, ja jagada neid andmeid sotsiaalmeedias, näiteks Twitteris.

  • TWIST on asjade Interneti (IoT) toega platvorm.
  • TWIST -i aju on Intel Edisoni plaat.
  • TWIST ühildub erinevate anduritega.
  • Kõik koodid, disainifailid (skeemid ja trükkplaatide paigutus) on avatud lähtekoodiga. See tähendab, et igaüks saab TWIST -platvormi panustada, jagades erinevate andurite koodi ja skeeme.

TWIST koosneb kolmest tehnoloogilisest kihist:

Esimene kiht on riistvaraplaat, mis sisaldab kõiki ilmastiku- ja keskkonnaandureid, mida nimetatakse anduriplaadiks. Nagu nimigi ütleb, kannab see andureid, mis mõõdavad õhu koostist, temperatuuri, niiskust, vihma. Samuti saab lisada täiendavaid andureid, nagu näiteks likeseismiline aktiivsus, UV -indeks, õhurõhk, kõrgus, luksid (heledus), helitasemed, tuule kiirus ja suund jne. Kui see on seadistatud, saab anduriplaat voogesitada andurite mõõdetud andmeid teisele kihile. Teine kiht on Intel Edisoni plaat, mis võtab anduriplaadilt andmeid vastu, töötleb neid ja saadab need järgmisele kihile. Kolmas kiht ühendab teie Edison Boardi Interneti-ühenduse kaudu Wi-Fi kaudu, kasutades Edisoni tahvli traadita moodulit ja Tweet'i praeguseid ilmastiku- ja keskkonnatingimusi.

Seadme toiteallikaks võib olla päikesepaneel või vahelduvvooluadapter.

Versioonipõhised hoidlad

Kõik kolm TWISTi tehnoloogilist kihti on avatud lähtekoodiga ja seega on kõik failid, mida kasutame koodi, trükkplaatide arendamiseks, mehaaniliseks kujundamiseks jne, meie Githubi hoidlas hõlpsasti saadaval.

Võistlustööd

Intel IoT Invitational

Tahaksin tänada Intel+Instructables'i Inteli Edisoni plaadi pakkumise eest. Kavatsen Edisoni tahvli abil teha veel palju IoT -ga seotud juhiseid.

#ilmataat

Kui teete TWIST -i, ärge unustage ilmast säutse sättida, kasutades #iotweatherstn. #iotweatherstn võib olla hashtag, mida kasutavad kõik Interneti -toega säutsuvad ilmajaamad.

Samm: osad ja materjalid

Osad ja materjalid
Osad ja materjalid
Osad ja materjalid
Osad ja materjalid
Osad ja materjalid
Osad ja materjalid

QuantityPartDetails 1

Intel Edison

koos Arduino Breakout Boardiga

1

MQ2 põleva gaasi andur

1

YL-83

Vihmaandur

1

SL-HS-220

Temperatuuri ja niiskuse andur

1

Takisti

32K

4,7 tuhat

3 metallist eraldusvõime 1 tolli

1

Takisti

32K

4,7 tuhat

2

Puitleht A4 suurus

Hiljem saab mõõtu lõigata

3

Metalli seiskamine

1 tolli

2. etapp: elektriline projekteerimine

Võimsus

Kogu süsteem töötab 5V 1A toiteallikast. Andurid (temperatuur, niiskus, vihm, gaas) tarbivad umbes 200 mA, Edison umbes 500 mA. Kuna kogu nõutav vool on alla 1 ampri, peaks 1 ampri toide töötama suurepäraselt. Toite oleku näitamiseks kasutatakse Edisoni tahvli digitaalse tihvti 13 sisseehitatud rohelist LED -i.

Intel Edison juhib programmi TWIST. Edison on paigaldatud Arduino läbilöögiplaadile, mis hõlbustab andurite digitaalsete ja analoogsignaalide lugemist. Edison on 5V rööpaga ühendatud mikro -USB -kaabli abil. Edisonil on sisseehitatud WiFi-raadio, mis võimaldab tal Twitteriga ühenduse luua ilma täiendava riistvarata.

Reaalajas kell (RTC)

Kuna Twitteri poolt iga säutsu jaoks automaatselt tehtud ajatempli eraldusvõime on piiratud piiksutamise ajast möödunud päevade koguarvuga, kasutatakse kuupäeva ja kellaaja täpseks ajatempliks reaalajas kella. Teine formaat. TWIST platvormis kasutatav reaalajas kell on DSC-1307 RTC moodul.

Selle süsteemi kõige põhilisem seadistus sisaldab nelja andurit (temperatuur, niiskus, vihm, gaas), mis ühendavad Edisoni. Lisada saab täiendavaid andureid, näiteks müra, tuul jne. Iga anduri toiteallikaks on otse 5 V rööp ja selle signaali tihvt on ühendatud vastavalt analoogpistikutega A0 kuni A2 ja digitaalse tihvtiga 2 Edisoni katkestusplaadil. Anduritel on ka igale anduriplaadile paigaldatud tundlikkuse reguleerimise potentsiomeeter; MQ-2 on põleva gaasi andur (veeldatud naftagaas, propaan, vesinik ja metaan), mis väljastab analoogpinget, mis on proportsionaalne gaaside kontsentratsiooniga miljonites osades. SL-HS-220-l on termistor, mis annab temperatuuri väärtuse. Kuna termistori väljund on mittelineaarne, antakse andurite hoidlas vastav temperatuuritabel. Termistor vajab Edisoni plaadiga ühendamisel pingejaotusahelat, nagu on näidatud vooluahela skeemil. SL-HS-220-l on ka sisseehitatud hügromeeter, mis mõõdab niiskust ja väljastab analoogpinget, mis vastab fikseeritud niiskuse väärtusele. Niiskuse-pinge tabel on toodud ka andurite hoidlas. SL-HS-220 tavaline asendaja on DHT11 andur. Vihmaanduril/veeanduril on potentsiomeeter, mis on reguleeritud andma digitaalse väljundi teatud vihmasajule, mille tundlikkust saab kasutaja ise reguleerida.

Ilmajaam.fzz

3. samm: mehaaniline disain

TWIST kere on valmistatud kahest plaadist puidust lehtedest. Kuigi ma kasutasin 1/4 vineeri, saab disaini kokku panna mis tahes lehtmaterjalist, kuna vahekaugus (mida hoiavad 1 -tollised alumiiniumist takistused) on ainus kriitiline element. Lisasin ülalpool allalaadimiseks vektorfailid.

Laserlõikamine

Kõigile neile, kes soovivad kahte plaati laseriga lõigata, lisasin allpool allalaadimiseks laserlõikuri failid. See sisaldab ka täiendavat õhukvaliteedi andurit. Seega võite sõltuvalt oma valikust kasutada MQ2 andurimoodulit või õhukvaliteedi andurimoodulit.

4. samm: raami kokkupanek: nägu ja alus

Esiplaat

Andurid sobivad sobivatesse aukudesse ja väljalõigetesse ning neid saab kinnitada kruvide või liimiga.

Alusplaat

Edisoni plaadi takistused kruvitakse alusplaadile. Vihmaanduriga ühendatud analoog-digitaalmuunduri (ADC) saab kruvida ka alusplaadi külge.

Alusplaadile saab kruvida ka lisakomponente, nagu summerid või päikesesisendi pingeregulaatori ahel.

Alusplaat ja esiplaat on mõlemad eraldatud 1 -tolliste vaheseintega.

Samm: elektroonika ja anduri kokkupanek

Võimsus

Süsteemi toiteallikaks on seinaadapter koos tavalise pistikupesaga, mis on ühendatud otse Edisoni tünni pistikuga. Süsteemi saab toita ka Edisoni plaadi USB -pordi kaudu. Samuti saate plaati toita välise päikesepaneeli abil.

Andurid

Andurid on kinnitatud isaste päistega purunemisplaatide külge ja seega saab neid otse Edisoniga ühendada isaste ja naiste vaheliste juhtmete kaudu.

6. samm: Twitteri seadistamine

Piiksumise järjekorras kasutame NeoCati poolt välja töötatud kolmanda osapoole rakendust, mis saab Twitteri märgi, mida peate oma Edisoni tahvliga säutsuma. Märke saab hankida ka Twitteri arendajate veebisaidilt.

Niisiis, alustamiseks külastage NeoCati veebisaiti, järgige tema õpetust, et hankida twitteri kogu ja oma twitteri märk. Nagu NeoCat oma saidil mainis, ärge kuritarvitage teenust. Hoidke oma säutsud hõredad. Kui vajate midagi, mida iga 6 sekundi tagant säutsutakse, peaksite seadistama oma serveri ja twitteri rakenduse ning seega tagab minu kirjutatud kood, et NeoCati server ei koormaks üle (TWIST säutsub iga 6 tunni järel).

Raamatukogu kasutab seda NeoCati veebisaiti OAuthi kraamide puhverserverina. Teie säutsu ei pruugita selle NeoCati veebisaidi hooldamise ajal rakendada. Tundub, et Twitter lükkab tagasi sama sisuga korduvad säutsud (tagastab vea 403).

Twitteri märk

Arduino säutsude raamatukogu

Samm 7: Tarkvara ja seadistamine

Enne kodeerimise alustamist järgige Inteli seadistusjuhendit Intel Edsioni jaoks.

Programm on Arduino visand, mis töötab Edisonis. Olen selgitanud allpool kõiki peamisi koodiplokke.

Kood sisaldab mõningaid eelmääratletud konstante, nööpnõelte deklaratsioone ja paari jadaprindi avaldust, mis aitavad tõrkeotsingutel.

Piiksumise viivitus

Kuna Twitter filtreerib välja sama sisuga säutsud, mis on tweetitud lühikese aja jooksul igaühe vahel, on iga säutsu vahele seatud standardne 3 -tunnine (10800000 milli sekundit) viivitus.

tweetMessage ();

viivitus (10800000);

Tüüp Casting

Paljud anduritelt saadud näidud on andmetüübis „int” või „float”. Kuid kuna me neid väärtusi säutsume, peame need teisendama andmetüübiks „String”. Selleks kasutame spetsiaalset tüüpi valamise tehnikat.

char *dtostrf (kahekordne val, allkirjastatud sümboli laius, allkirjastamata tähemärk, sümbol *lõunaosa) {

char fmt [100]; sprintf (fmt, "%%% d.%df", laius, täpsus); sprintf (lõuna, fmt, val); naase lõunasse; }

Twitteri märk

Twitteri märk on loodud NeoCati veebisaidil ja see tuleks kleepida siinsesse märgiruumi.

void tweetMessage () {

Twitter twitter ("SISESTA SIIT TWITTER");

Piiksumise anduri väärtused

Anduri väärtuse säutsumiseks lisame esmalt anduri tüübi; Näide: "niiskus". Sellele järgnes märgideklaratsioon ja tüübivastamiseks vajalik koodirida. Järgmisena lisame mõõtühiku kohta avalduse; Näide: "%RH". Samuti saame sarnasel viisil jätkata teiste andurite väärtuste lisamist.

niiskus (); ujuk niiske;

// Twitteri teade String stringMsg = "Niiskus:"; char tmp [10]; dtostrf (niiske, 1, 2, tmp); stringMsg += tmp; stringMsg += "%RH";

Ilmajaama asukoht ja märgistamine

Järgmisena märgistame asukoha (linn, asukoht jne) ja muud sildid nagu #iotweatherstn.

stringMsg += "#Mumbai #Bandra #iotweatherstn";

Reaalajas kell (RTC)

Nagu varem selgitatud, saab TWIST reaalajas kellaandmeid ka piiksutada. Allpool on näide RTC koodiparameetrite ploki 'päev' kohta. Reaalajas kella funktsioon on TWIST platvormil valikuline, kuna moodul on eraldi. Seetõttu on TWISTi hoidlasse loodud eraldi haru reaalajas kella haru koodi ja skeemide jaoks.

TwistDateTime (); DateTime now = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; String stringMsg = ""; char ds1307day [10]; dtostrf (twistday, 1, 0ds1307day); stringMsg += ds1307päev; stringMsg += "/";

140 tähemärgipiirang

See koodiplokk katab stringimassiivi 140 tähemärkide massiiviks, mis on säutsumiseks valmis.

char msg [140];

stringMsg.toCharArray (msg, 140);

Sõnumite ja ühenduse veaotsing

See koodiplokk prindib jadamonitoris välja paar rida teksti, et aidata kasutajal sõnumit ja säutsu olekut kontrollida.

// säutsu see imeja!

if (twitter.post (msg)) {int status = twitter.wait (); if (olek == 200) {Serial.println ("OK"); Serial.println ("Sõnum säutsus"); } else {// Ühendustesti seeria.print ("ebaõnnestus: kood"); Serial.println ("Sõnumit ei tweetitud"); Serial.println (olek); }} else {Serial.println ("ühendus nurjus."); Serial.println ("Sõnumit ei tweetitud"); }

Kõik muud koodiplokid muudavad anduritelt saadud analoog- või digitaalse näidu lihtsalt kasutatavaks andmeteks.

Koodi saab alla laadida siit või peamisest hoidlast:

Ilmajaam.ino

8. samm: panustamine andurite hoidlasse

Kas olete programmeerija, insener või disainer, kellel on suurepärane idee TWIST -i uue funktsiooni jaoks? Ehk on sul mõni hea idee veaparanduseks? Võtke julgelt meie kood, skeemid ja CAD -failid Githubist ja närige seda.

TWIST GitHub

Intel® IoT Invitational
Intel® IoT Invitational
Intel® IoT Invitational
Intel® IoT Invitational

Intel® IoT Invitational teine auhind

Soovitan: