Kazalo:
- 1. korak: Deli in materiali
- 2. korak: Električno oblikovanje
- 3. korak: Mehansko oblikovanje
- 4. korak: Montaža okvirja: obraz in podnožje
- 5. korak: Montaža elektronike in senzorja
- 6. korak: Konfiguracija Twitterja
- 7. korak: Programska oprema in konfiguracija
- 8. korak: Prispevajte v skladišče senzorjev
Video: Tweetanje vremenske postaje: 8 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Ste kdaj želeli spremljati trenutne vremenske razmere v vašem mestu, ogljični odtis, hrup in onesnaženost? Ali želite biti Crusader za podnebne spremembe ali postaviti svojo lastno vremensko postajo s tvitanjem in deliti svoje lokalne vremenske razmere s svetom?
Spoznajte Tweeting Weather IoT Station alias TWIST - platformo za samostojno spremljanje okolja in pridobivanje meteoroloških podatkov z lastnimi rokami. Namen TWIST -a je, da lahko posamezniki in skupnosti zbirajo podatke o tem, kaj se dejansko dogaja v njihovem okolju, in te podatke delijo v družabnih medijih, kot je Twitter.
- TWIST je platforma za internet stvari (IoT).
- Možgani TWIST so Intel Edison Board.
- TWIST je združljiv z različnimi senzorji.
- Vse kode, oblikovalske datoteke (sheme in postavitev tiskanega vezja) so odprtokodne. To pomeni, da lahko k platformi TWIST prispeva kdor koli z izmenjavo kode in shem za različne senzorje.
TWIST je sestavljen iz treh tehnoloških plasti:
Prvi sloj je plošča strojne opreme, ki vsebuje vse vremenske in okoljske senzorje, znane kot "senzorska plošča". Kot že ime pove, nosi senzorje, ki merijo sestavo zraka, temperaturo, vlažnost, dež. Dodajo se lahko tudi dodatni senzorji, kot so potresna aktivnost, UV indeks, barometrični tlak, nadmorska višina, luks (svetilnost), raven hrupa, hitrost in smer vetra itd. Ko je senzorska plošča nastavljena, lahko pretaka podatke, ki jih merijo senzorji, v drugo plast. Druga plast je plošča Intel Edison, ki prejema podatke s plošče senzorjev, jih obdeluje in pošilja na naslednjo plast. Tretja plast poveže vašo Edisonovo ploščo z internetom prek Wi-Fi-ja z uporabo brezžičnega modula na plošči Edison in trenutnih vremenskih in okoljskih razmer Tweeta.
Napajanje naprave lahko zagotavlja sončna celica ali napajalnik.
Repozitoriji, ki jih nadzira različica
Vse tri tehnološke plasti TWIST so odprtokodne, zato so vse datoteke, ki jih uporabljamo za kodo, razvoj tiskanih vezij, mehansko oblikovanje itd., Na voljo v našem skladišču Github.
Prijave na natečaj
Intel IoT Invitational
Rad bi se zahvalil podjetju Intel+Instructables, ki mi je priskrbel ploščo Intel Edison. Načrtujem, da bom z Edisonovo ploščo izdelal še veliko navodil, povezanih z IoT.
#iotweatherstn
Če naredite TWIST, ne pozabite tvitati vremena s pomočjo #iotweatherstn. #iotweatherstn je lahko hashtag, ki ga uporabljajo vse vremenske postaje, ki poganjajo IoT.
1. korak: Deli in materiali
QuantityPartDetails 1
Intel Edison
z Arduino Breakout Board
1
Senzor gorljivih plinov MQ2
1
YL-83
Senzor dežja
1
SL-HS-220
Senzor temperature in vlažnosti
1
Upor
32 tisoč
4,7 tisoč
3 Kovinsko stojalo 1 palčni
1
Upor
32 tisoč
4,7 tisoč
2
Leseni list velikosti A4
Kasneje se lahko razreže po velikosti
3
Kovinsko stojalo
1 palec
2. korak: Električno oblikovanje
Moč
Celoten sistem se napaja iz 5V 1A napajalnika. Senzorji (temperatura, vlaga, dež, plin) črpajo približno 200 mA, Edison pa okoli 500 mA. Ker je skupni zahtevani tok manjši od 1 ampera, mora napajanje z 1 amperom delovati v redu. Vgrajena zelena LED na digitalnem zatiču 13 plošče Edison se uporablja za prikaz stanja napajanja.
ControlIn Edison vodi oddajo za TWIST. Edison je nameščen na plošči Arduino, kar olajša branje digitalnih in analognih signalov s senzorjev. Edison je priključen na 5V vodilo prek kabla mikro USB. Edison ima vgrajen radio Wi-Fi, ki mu omogoča povezavo s Twitterjem brez dodatne strojne opreme.
Ura v realnem času (RTC)
Ker ima časovni žig, ki ga za vsak tvit samodejno izvede Twitter, ločljivost, omejeno na skupno število dni od časa tvita, se ura v realnem času uporablja za natančen časovni žig datuma in časa v uri-minuti- Drugi format. Ura v realnem času, ki se uporablja v platformi TWIST, je modul RTC DS-1307.
Senzorji Najosnovnejša nastavitev tega sistema ima štiri senzorje (temperaturo, vlažnost, dež, plin), ki so povezani z Edisonom. Dodati je mogoče dodatne senzorje, kot so hrup, veter itd. Vsak senzor se napaja neposredno iz tirnice 5V in ima svoj signalni zatič priključen na analogne zatiče A0 do A2 in digitalni zatič 2 na Edisonovi odklopni plošči. Senzorji imajo tudi potenciometer za nastavitev občutljivosti, nameščen na vsaki senzorski plošči; MQ-2 je senzor gorljivih plinov (utekočinjen naftni plin, propan, vodik in metan), ki oddaja analogno napetost, sorazmerno s koncentracijo plinov v delih na milijon. SL-HS-220 ima termistor, ki daje vrednost temperature. Ker je izhod termistorja nelinearen, je v shrambi senzorjev podana ustrezna tabela temperatur. Termistor potrebuje vezje delilnika napetosti, ko je priključen na ploščo Edison, kot je prikazano na shemi vezja. SL-HS-220 ima tudi vgrajen higrometer, ki meri vlažnost in oddaja analogno napetost, ki ustreza fiksni vrednosti vlažnosti. Tabela vlažnosti in napetosti je navedena tudi v shrambi senzorjev. Pogost nadomestek SL-HS-220 je senzor DHT11. Senzor dežja/senzor vode ima potenciometer, ki je nastavljen tako, da daje digitalni izhod za določeno količino dežja, katerega občutljivost lahko nastavi uporabnik.
Vremenska postaja.fzz
3. korak: Mehansko oblikovanje
Telo TWIST je izdelano iz dveh plošč iz lesenih listov. Čeprav sem uporabil 1/4 "vezane plošče, je oblikovanje mogoče sestaviti iz katerega koli pločevinastega materiala, saj je razmik (ki ga vzdržujejo 1" aluminijasta odstopanja) edini kritični element. Vektorske datoteke za prenos sem priložil zgoraj.
Lasersko rezanje
Za vse tiste, ki želite lasersko rezanje dveh plošč, sem spodaj priložil datoteke laserskega rezalnika. V svoji zasnovi vključuje tudi dodatni senzor kakovosti zraka. Tako lahko uporabite senzorski modul MQ2 ali senzorski modul kakovosti zraka, odvisno od vaše izbire.
4. korak: Montaža okvirja: obraz in podnožje
Prednja plošča
Tipala se prilegajo v ustrezne luknje in izreze in jih je mogoče pritrditi z vijaki ali lepilom.
Osnovna plošča
Odmiki plošče Edison so priviti na osnovno ploščo. Analogno-digitalni pretvornik (ADC), ki je priključen na senzor dežja, lahko privijete tudi na osnovno ploščo.
Na osnovno ploščo lahko privijete tudi dodatne komponente, kot so zvočniki ali vezje regulatorja napetosti za solarni vhod.
Osnovna plošča in sprednja plošča sta ločena z 1 odmikoma.
5. korak: Montaža elektronike in senzorja
Moč
Za napajanje sistema skrbi stenski adapter s standardno cevno vtičnico, ki je priključena neposredno na konektor Edison's Barrel. Sistem se lahko napaja tudi prek vrat USB na plošči Edison. Ploščo lahko napajate tudi z zunanje sončne plošče.
Senzorji
Tipala so pritrjena na odklopne plošče z moškimi glavomi, zato jih je mogoče neposredno povezati z Edisonom prek moških žic moškega spola.
6. korak: Konfiguracija Twitterja
V vrstnem redu Tweet uporabljamo aplikacijo tretje osebe, ki jo je razvil NeoCat in dobi žeton Twitter, ki ga boste morali objaviti s svojo tablo Edison. Žetone lahko dobite tudi na spletni strani Twitter's Developers.
Zato za začetek obiščite spletno mesto NeoCat, sledite njegovi vadnici, da dobite knjižnico twitter in vaš žeton twitterja. Kot je NeoCat omenil na svojem spletnem mestu, ne zlorabljajte storitve. Naj bodo tviti redki. Če potrebujete nekaj, kar tvita vsakih 6 sekund, nastavite svoj strežnik in aplikacijo za twitter, zato koda, ki sem jo napisal, zagotavlja, da se strežnik NeoCat ne preobremeni (TWIST tvita vsakih 6 ur).
Knjižnica uporablja to spletno mesto NeoCat kot strežnik proxy za stvari OAuth. Vašega tvita ne smete uporabljati med vzdrževanjem te spletne strani NeoCat. Zdi se, da Twitter zavrača ponavljajoče se tvite z isto vsebino (vrne napako 403).
Žeton Twitter
Knjižnica Tweet Arduino
7. korak: Programska oprema in konfiguracija
Preden začnete s kodiranjem, sledite Intelovemu priročniku za nastavitev Intel Edsion.
Program je skica Arduino, ki deluje na Edisonu. Spodaj sem razložil vsakega od glavnih blokov kode.
Koda vključuje nekatere vnaprej določene konstante, deklaracije pin in nekaj izjav o serijskem tiskanju, ki pomagajo pri odpravljanju težav.
Zakasnitev tvita
Ker Twitter filtrira tweete z enako vsebino in jih tvita v kratkih časovnih obdobjih med vsakim od njih, je bila nastavljena standardna 3 -urna (10800000 milli sekund) zamuda med vsakim tvitom.
tweetMessage ();
zamuda (10800000);
Vrsta ulivanja
Veliko odčitkov, ki jih dobimo s senzorji, je v podatkovnem tipu 'int' ali 'float'. Ker pa te vrednosti tvitamo, jih moramo pretvoriti v podatkovni tip "String". Za to uporabljamo posebno tehniko vlivanja.
char *dtostrf (dvojni val, podpisana širina znaka, nepodpisani prec char, char *sout) {
char fmt [100]; sprintf (fmt, "%%% d.%df", širina, prec); sprintf (sout, fmt, val); vrnitev sout; }
Žeton Twitter
Žeton twitter je ustvarjen na spletnem mestu NeoCat in ga je treba prilepiti v prostor za žetone tukaj.
void tweetMessage () {
Twitter twitter ("TUKAJ VSTAVITE ŽVAK TWITTERJA");
Vrednosti senzorja za tvitanje
Za tvitanje vrednosti senzorja najprej vključimo tip senzorja; Primer: "Vlažnost". Sledi deklaracija znakov in vrstica kode, ki je potrebna za oddajanje vrst. Nato dodamo izjavo za mersko enoto; Primer: "%RH". Na podoben način lahko še naprej dodajamo vrednosti drugih senzorjev.
vlažnost (); plavati vlažno;
// Twitter sporočilo String stringMsg = "Vlažnost:"; char tmp [10]; dtostrf (vlažno, 1, 2, tmp); stringMsg += tmp; stringMsg += "%RH";
Vremenska postaja Lokacija in označevanje
Nato označimo lokacijo (mesto, kraj itd.) In druge oznake, kot je #iotweatherstn.
stringMsg += "#Mumbai #Bandra #iotweatherstn";
Ura v realnem času (RTC)
Kot je bilo že pojasnjeno, lahko TWIST objavi tudi podatke ure v realnem času. Spodaj je primer bloka parametrov kode RTC "day". Funkcija ure v realnem času je na platformi TWIST neobvezna, saj je modul na voljo ločeno. Zato je v skladišču TWIST ločena veja za kodo in sheme veje ure realnega časa.
TwistDateTime (); DateTime zdaj = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; Niz stringMsg = ""; char ds1307day [10]; dtostrf (twistday, 1, 0ds1307day); stringMsg += ds1307day; stringMsg += "/";
140 Omejitev znakov
Ta blok kode pokriva niz nizov v 140 znakov, pripravljenih za tvit.
char msg [140];
stringMsg.toCharArray (sporočilo, 140);
Odpravljanje težav s sporočili in povezavo
Ta niz kode natisne nekaj vrstic besedila v serijskem monitorju, da uporabniku pomaga preveriti stanje sporočila in tvita.
// Tweet ta sesalec!
if (twitter.post (msg)) {int status = twitter.wait (); if (status == 200) {Serial.println ("V redu."); Serial.println ("Tweetirano sporočilo"); } else {// Test povezave Serial.print ("neuspešno: koda"); Serial.println ("Sporočilo ni tvitano"); Serial.println (status); }} else {Serial.println ("povezava ni uspela."); Serial.println ("Sporočilo ni tvitano"); }
Vsi drugi bloki kode preprosto pretvorijo analogno ali digitalno branje s senzorjev v uporabne podatke.
Kodo lahko naložite od tu ali iz glavnega skladišča:
Vremenska postaja.ino
8. korak: Prispevajte v skladišče senzorjev
Ste programer, inženir ali oblikovalec, ki ima odlično idejo za novo funkcijo v sistemu TWIST? Mogoče imate dobro idejo za odpravo napak? Ne pozabite vzeti naše datoteke s kodo, shemami in CAD -om iz Github -a in se z njo spoprijeti.
TWIST GitHub
Druga nagrada na Intel® IoT Invitational
Priporočena:
ESP8266 Ura vremenske postaje: 4 koraki
Ura vremenske postaje ESP8266: Ta projekt je lep način prikaza časa in vremena v majhnem priročnem paketu. Razložil bom projekt, kako deluje in prikazal kodo tukaj. Pritisnite različne gumbe, da prikažete trenutno vreme na določeni lokaciji, pa tudi temperaturo
Osebni monitor vremenske postaje DIY: 6 korakov
DIY Personal Weather Station Monitor: DarkSky ,, Naša storitev API za obstoječe stranke se danes ne spreminja, vendar ne bomo več sprejemali novih prijav. API bo še naprej deloval do konca leta 2021. https://blog.darksky.net/Osebni monitor vremenskih postaj prikaže vašo
Kako zapisati podatke vremenske postaje - Liono Maker: 5 korakov
Kako zapisati podatke vremenske postaje | Liono Maker: Uvod: Pozdravljeni, to je #LionoMaker. To je moj odprtokodni in uradni YouTube kanal. Tukaj je povezava: Liono Maker / YOUTUBE CHANNELV tem projektu se bomo naučili, kako ustvariti " beleženje podatkov vremenskih postaj ". tole je zelo zanimivo
Edinstven eksponat namizne vremenske postaje: 5 korakov (s slikami)
Edinstvena predstavitev namizne vremenske postaje: Hej fantje! Za ta mesečni projekt sem naredil vremensko postajo v obliki namizne rastline ali pa jo lahko pokličete kot namizni eksponat. Ta vremenska postaja pridobiva podatke v ESP8266 s spletnega mesta openwethermap.org in spreminja barve RGB v t
Vremenska postaja Acurite 5 v 1 z uporabo Raspberry Pi in Weewx (druge vremenske postaje so združljive): 5 korakov (s slikami)
Vremenska postaja Acurite 5 v 1 z uporabo Raspberry Pi in Weewx (druge vremenske postaje so združljive): Ko sem kupil vremensko postajo Acurite 5 v 1, sem želel preveriti vreme doma, ko sem bil odsoten. Ko sem prišel domov in ga nastavil, sem spoznal, da moram zaslon priključiti na računalnik ali pa kupiti njihovo pametno vozlišče