Satura rādītājs:

Tweeting laika stacija: 8 soļi (ar attēliem)
Tweeting laika stacija: 8 soļi (ar attēliem)

Video: Tweeting laika stacija: 8 soļi (ar attēliem)

Video: Tweeting laika stacija: 8 soļi (ar attēliem)
Video: Pāreja. Tēvoča mājās atradu kaut ko biedējošu. Džeralds Darels 2024, Novembris
Anonim
Tweeting laika stacija
Tweeting laika stacija

Vai esat kādreiz gribējuši uzraudzīt savas pilsētas pašreizējos laika apstākļus, oglekļa dioksīda nospiedumu, troksni un piesārņojuma līmeni? Vai vēlaties būt klimata pārmaiņu krustnesis vai izveidot savu Tweeting laika staciju un dalīties ar vietējiem laika apstākļiem ar pasauli?

Iepazīstieties ar Tweeting Weather IoT Station aka TWIST - DIY, atvērtā pirmkoda vides monitoringa un meteoroloģisko datu iegūšanas platforma. TWIST mērķis ir tāds, lai indivīdi un kopienas varētu apkopot datus par to, kas faktiski notiek viņu vidē, un koplietot šos datus sociālajos medijos, piemēram, Twitter.

  • TWIST ir ar lietu internetu (IoT) darbināta platforma.
  • TWIST smadzenes ir Intel Edison Board.
  • TWIST ir saderīgs ar dažādiem sensoriem.
  • Visi kodi, dizaina faili (shēmas un PCB izkārtojums) ir atvērtā koda. Tas nozīmē, ka ikviens var dot ieguldījumu TWIST platformā, kopīgojot kodu un dažādu sensoru shēmas.

TWIST sastāv no trim tehnoloģiskiem slāņiem:

Pirmais slānis ir aparatūras plāksne, kurā ir visi laika un vides sensori, kas pazīstami kā sensoru panelis. Kā norāda nosaukums, tajā ir sensori, kas mēra gaisa sastāvu, temperatūru, mitrumu, lietu. Var pievienot arī papildu sensorus, piemēram, likeseismic aktivitāti, UV indeksu, barometrisko spiedienu, augstumu, luksus (spilgtumu), skaņas līmeni, vēja ātrumu un virzienu utt. Kad sensoru panelis ir iestatīts, tas var pārraidīt sensoru izmērītos datus uz otro slāni. Otrais slānis ir Intel Edison Board, kas saņem datus no Sensor Board, apstrādā tos un nosūta uz nākamo slāni. Trešais slānis savieno jūsu Edisona dēli ar internetu, izmantojot Wi-Fi, izmantojot bezvadu moduli Edisona panelī un Tweet's Pašreizējie laika un vides apstākļi.

Ierīces barošanu var nodrošināt ar saules paneli vai maiņstrāvas adapteri.

Versiju kontrolētas krātuves

Visi trīs TWIST tehnoloģiskie slāņi ir atvērtā koda, un līdz ar to visi faili, kurus mēs izmantojam kodam, PCB izstrādei, mehāniskai konstrukcijai utt., Ir viegli pieejami mūsu Github krātuvē.

Konkursa darbi

Intel IoT Invitational

Es vēlos pateikties Intel+Instructables par Intel Edison Board nodrošināšanu. Es plānoju izveidot daudz vairāk ar IoT saistītu instrukciju, izmantojot Edisona dēli.

#iotweatherstn

Ja veidojat TWIST, neaizmirstiet tweetēt laika ziņas, izmantojot #iotweatherstn. #iotweatherstn var būt mirkļbirka, ko izmanto visas ar IoT darbināmās tvītošanas laika stacijas.

1. darbība: detaļas un materiāli

Daļas un materiāli
Daļas un materiāli
Daļas un materiāli
Daļas un materiāli
Daļas un materiāli
Daļas un materiāli

QuantityPartDetails 1

Intel Edison

ar Arduino Breakout Board

1

MQ2 degošās gāzes sensors

1

YL-83

Lietus sensors

1

SL-HS-220

Temperatūras un mitruma sensors

1

Rezistors

32K

4,7 tūkst

3 metāla izolācija 1 collas

1

Rezistors

32K

4,7 tūkst

2

Koka loksne A4 izmērs

Vēlāk var samazināt izmēru

3

Metāla apstāšanās

1 collas

2. solis: elektriskā projektēšana

Jauda

Visa sistēma tiek darbināta no 5V 1A barošanas avota. Sensori (temperatūra, mitrums, lietus, gāze) patērē aptuveni 200 mA, Edison - aptuveni 500 mA. Tā kā kopējā nepieciešamā strāva ir mazāka par 1 amp, 1 amp barošanas avotam vajadzētu darboties lieliski. Strāvas stāvokļa rādīšanai tiek izmantota iebūvētā zaļā gaismas diode Edisona dēļa 13. digitālajā tapā.

Intel Edison vada TWIST šovu. Edison ir uzstādīts uz Arduino sadalīšanas paneļa, kas ļauj viegli nolasīt ciparu un analogos signālus no sensoriem. Edison ir savienots ar 5V sliedi, izmantojot mikro USB kabeli. Edison ir iebūvēts Wi-Fi radio, kas ļauj tam izveidot savienojumu ar Twitter bez papildu aparatūras.

Reālā laika pulkstenis (RTC)

Tā kā laika zīmogošanas, ko Twitter automātiski veic katram tvītam, izšķirtspēja ir ierobežota līdz kopējam dienu skaitam kopš tvītošanas brīža, reāllaika pulkstenis tiek izmantots, lai precīzi nospiestu datumu un laiku stundas minūtē. Otrais formāts. TWIST platformā izmantotais reālā laika pulkstenis ir DS-1307 RTC modulis.

Visvienkāršākajā šīs sistēmas iestatījumā ir četri sensori (temperatūra, mitrums, lietus, gāze), kas savienojas ar Edison. Var pievienot papildu sensorus, piemēram, troksni, vēju uc Katrā sensorā ir arī jutības regulēšanas potenciometrs, kas uzstādīts uz katra sensora paneļa; MQ-2 ir degošas gāzes sensors (sašķidrināta naftas gāze, propāns, ūdeņradis un metāns), kas izvada analogo spriegumu, kas ir proporcionāls gāzu koncentrācijai daļās uz miljonu. SL-HS-220 ir termistors, kas norāda temperatūras vērtību. Tā kā termistora izeja ir nelineāra, sensoru krātuvē ir dota atbilstošā temperatūras tabula. Termistoram ir nepieciešama sprieguma dalītāja ķēde, kad tas ir pievienots Edisona padomei, kā parādīts shēmas shēmā. SL-HS-220 ir arī iebūvēts higrometrs, kas mēra mitrumu un izvada analogo spriegumu, kas atbilst fiksētai mitruma vērtībai. Mitruma un sprieguma tabula ir dota arī sensoru krātuvē. Parasts SL-HS-220 aizstājējs ir DHT11 sensors. Lietus sensoram/ūdens sensoram ir potenciometrs, kas ir noregulēts, lai noteiktu digitālo izvadi noteiktu lietus daudzumu, kura jutību var regulēt lietotājs.

Laika stacija.fzz

3. darbība: mehāniskā konstrukcija

TWIST korpuss ir izgatavots no divām koka loksnēm. Lai gan es izmantoju 1/4 collu saplāksni, dizainu var salikt no jebkura lokšņu materiāla, jo atstarpe (uzturēta ar 1 collu alumīnija ierobežojumiem) ir vienīgais kritiskais elements. Iepriekš pievienoju lejupielādei vektoru failus.

Griešana ar lāzeru

Visiem tiem, kas vēlas abas plāksnes sagriezt ar lāzeru, zemāk lejupielādei pievienoju lāzera griezēja failus. Tā dizainā ir iekļauts arī papildu gaisa kvalitātes sensors. Tātad atkarībā no izvēles varat izmantot MQ2 sensora moduli vai gaisa kvalitātes sensora moduli.

4. solis: rāmja montāža: seja un pamatne

Priekšpuse

Sensori iederas savos atbilstošajos caurumos un izgriezumos, un tos var piestiprināt, izmantojot skrūves vai līmi.

Pamatplate

Edisona dēļa atdalījumi ir pieskrūvēti pie pamatnes. Analoga ciparu pārveidotāju (ADC), kas pievienots lietus sensoram, var pieskrūvēt arī uz pamatnes.

Uz pamatnes var pieskrūvēt arī papildu komponentus, piemēram, skaņas signālus vai sprieguma regulatora ķēdi saules ieejai.

Gan pamatplāksni, gan priekšējo plāksni atdala 1 collu ierobežojumi.

5. darbība: elektronikas un sensoru montāža

Jauda

Sistēmas jaudu nodrošina sienas adapteris ar standarta cilindra ligzdu, kas ir tieši savienots ar Edisona mucas savienotāju. Sistēmu var darbināt arī caur USB portu Edisona panelī. Plāksni var darbināt arī no ārējā saules paneļa.

Sensori

Sensori ir piestiprināti pie sadalīšanas dēļiem ar vīriešu galviņām, un tāpēc tos var tieši savienot ar Edison, izmantojot savienojuma vadus no vīriešiem līdz sievietēm.

6. darbība: Twitter konfigurācija

Inorder to Tweet mēs izmantojam NeoCat izstrādātu trešās puses lietotni, kas iegūst čivināt marķieri, kas jums būs nepieciešams čivināt ar Edisona dēli. Žetonus var iegūt arī no Twitter izstrādātāju tīmekļa vietnes.

Tātad, lai sāktu, apmeklējiet NeoCat tīmekļa vietni, sekojiet viņa/viņas apmācībai, lai iegūtu twitter bibliotēku un savu twitter marķieri. Kā NeoCat minēja savā vietnē, lūdzu, nelietojiet pakalpojumu ļaunprātīgi. Saglabājiet savus tvītus retus. Ja jums ir nepieciešams kaut kas, kas tweets ik pēc 6 sekundēm, jums vajadzētu izveidot savu serveri un twitter lietotni, un līdz ar to mans uzrakstītais kods nodrošina, ka NeoCat serveris netiek pārslogots (TWIST tvīti ik pēc 6 stundām).

Bibliotēka izmanto šo NeoCat vietni kā OAuth satura starpniekserveri. Jūsu tvīts var netikt izmantots šīs NeoCat vietnes uzturēšanas laikā. Šķiet, ka Twitter noraida atkārtotus tvītus ar tādu pašu saturu (atgriež kļūdu 403).

Twitter marķieris

Arduino tvītu bibliotēka

7. darbība: programmatūra un konfigurācija

Pirms sākat kodēšanu, ievērojiet Intel iestatīšanas rokasgrāmatu par Intel Edsion.

Programma ir Arduino skice, kas darbojas Edisonā. Tālāk es izskaidroju katru no galvenajiem koda blokiem.

Kods ietver dažas iepriekš noteiktas konstantes, tapas deklarācijas un pāris sērijas drukas paziņojumus, kas palīdz novērst traucējumus.

Tvīta aizkavēšanās

Tā kā Twitter filtrē tvītus, kuriem ir vienāds saturs un kuri tiek tvīti īsā laika posmā starp katru no tiem, starp katru tvītu ir iestatīta standarta 3 stundu (10800000 mili sekunde) aizkave.

tweetMessage ();

kavēšanās (10800000);

Veids Casting

Daudzi no sensoriem iegūtie rādījumi ir “int” vai “float” datu tipā. Bet, tā kā mēs tweeting šīs vērtības, mums ir jāpārvērš par "String" datu tipu. Šim nolūkam mēs izmantojam īpašu tipa liešanas tehniku.

char *dtostrf (double val, parakstīts char platums, neparakstīts char prec, char *south) {

char fmt [100]; sprintsf (fmt, "%%% d.%df", platums, prec); sprintsf (dienvidu, fmt, val); atgriezties uz dienvidiem; }

Twitter marķieris

Twitter čeks ir izveidots NeoCat tīmekļa vietnē, un to vajadzētu ielīmēt žetonu vietā šeit.

void tweetMessage () {

Twitter twitter ("ENTER TWITTER TOKEN TE");

Tvītošanas sensora vērtības

Lai čivinātu sensora vērtību, mēs vispirms iekļaujam sensora tipu; Piemērs: "Mitrums". Tam sekoja rakstzīmju deklarācija un tipa apraidei nepieciešama koda rindiņa. Tālāk mēs pievienojam paziņojumu par mērvienību; Piemērs: "%RH". Mēs varam turpināt pievienot citu sensoru vērtības līdzīgā veidā.

mitrums (); pludiņš mitrs;

// Twitter ziņojums String stringMsg = "Mitrums:"; char tmp [10]; dtostrf (mitrs, 1, 2, tmp); stringMsg += tmp; stringMsg += "%RH";

Meteoroloģiskās stacijas atrašanās vieta un marķēšana

Tālāk mēs atzīmējam atrašanās vietu (pilsēta, apvidus utt.) Un citus tagus, piemēram, #iotweatherstn.

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

Reālā laika pulkstenis (RTC)

Kā paskaidrots iepriekš, TWIST var arī čivināt reālā laika pulksteņa datus. Zemāk ir RTC koda parametru bloka “diena” piemērs. Reālā laika pulksteņa funkcija TWIST platformā nav obligāta, jo modulis tiek piegādāts atsevišķi. Tādējādi TWIST repozitorijā ir izveidota atsevišķa filiāle reālā laika pulksteņa filiāles kodam un shēmām.

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

140 Rakstzīmju ierobežojums

Šis koda bloks pārklāj virkņu masīvu līdz 140 rakstzīmju masīvam, kas ir gatavs čivināt.

char msg [140];

stringMsg.toCharArray (ziņojums, 140);

Ziņojumu un savienojuma problēmu novēršana

Šis koda bloks sērijas monitorā izdrukā pāris teksta rindiņas, lai palīdzētu lietotājam pārbaudīt ziņojumu un tvīta statusu.

// Čivināt to sūcēju!

ja (twitter.post (msg)) {int status = twitter.wait (); if (statuss == 200) {Serial.println ("Labi"); Serial.println ("Ziņojums tweeted"); } cits {// Savienojuma pārbaudes seriāls.print ("neizdevās: kods"); Serial.println ("Ziņojums nav tvīts"); Serial.println (statuss); }} else {Serial.println ("savienojums neizdevās."); Serial.println ("Ziņojums nav tvīts"); }

Visi pārējie koda bloki vienkārši pārveido sensoru analogo vai digitālo nolasījumu par izmantojamiem datiem.

Kodu var lejupielādēt no šejienes vai no galvenās krātuves:

Laika stacija.ino

8. darbība: ieguldījums sensoru krātuvē

Vai esat programmētājs, inženieris vai dizainers, kuram ir lieliska ideja par jaunu TWIST funkciju? Varbūt jums ir laba ideja kļūdu labošanai? Jūtieties brīvi paņemt mūsu kodu, shēmas un CAD failus no Github un pieķerties tam.

TWIST GitHub

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

Otrā balva Intel® IoT Invitational

Ieteicams: