Բովանդակություն:

Թվիթինգ եղանակային կայան. 8 քայլ (նկարներով)
Թվիթինգ եղանակային կայան. 8 քայլ (նկարներով)

Video: Թվիթինգ եղանակային կայան. 8 քայլ (նկարներով)

Video: Թվիթինգ եղանակային կայան. 8 քայլ (նկարներով)
Video: 1v1ing fans 2024, Նոյեմբեր
Anonim
Թվիթինգ եղանակային կայան
Թվիթինգ եղանակային կայան

Երբևէ ցանկացե՞լ եք վերահսկել ձեր քաղաքի ներկա եղանակային պայմանները, ածխածնի հետքը, աղմուկը և աղտոտվածությունը: Youանկանու՞մ եք լինել Կլիմայի փոփոխության խաչակիր կամ ստեղծել ձեր սեփական Թվիթինգ եղանակային կայանը և կիսվել ձեր տեղական եղանակային պայմաններով աշխարհի հետ:

Meet Tweeting Weather IoT Station aka TWIST - DIY, բաց կոդով շրջակա միջավայրի մոնիթորինգի և օդերևութաբանական տվյալների ձեռքբերման հարթակ: TWIST- ի նպատակն այն է, որ անհատներն ու համայնքները կարողանան տվյալներ հավաքել այն ամենի մասին, ինչ իրականում տեղի է ունենում իրենց միջավայրում և այդ տվյալները կիսել սոցիալական լրատվամիջոցներում, ինչպիսիք են Twitter- ը:

  • TWIST- ը Իրերի ինտերնետի (IoT) համակարգչային հարթակ է:
  • TWIST- ի ուղեղը Intel Edison Board- ն է:
  • TWIST- ը համատեղելի է մի շարք սենսորների հետ:
  • Բոլոր ծածկագիրը, դիզայնի ֆայլերը (սխեմաներ և PCB դասավորություն) բաց կոդով են: Սա նշանակում է, որ յուրաքանչյուրը կարող է նպաստել TWIST հարթակին ՝ կիսելով ծածկագիր և սխեմատիկա տարբեր սենսորների համար:

TWIST- ը բաղկացած է երեք տեխնոլոգիական շերտերից.

Առաջին շերտը ապարատային տախտակ է, որը պարունակում է եղանակի և շրջակա միջավայրի բոլոր սենսորները, որոնք հայտնի են որպես «Սենսորային տախտակ»: Ինչպես ցույց է տալիս անունը, այն կրում է սենսորներ, որոնք չափում են օդի կազմը, ջերմաստիճանը, խոնավությունը, անձրևը: Կարելի է ավելացնել նաև սենսիզմային գործունեության լրացուցիչ սենսորներ, ուլտրամանուշակագույն ճառագայթման ինդեքս, բարոմետրիկ ճնշում, բարձրություն, լյուքս (լուսավորություն), ձայնի մակարդակ, քամու արագություն և ուղղություն և այլն: Ստեղծվելուց հետո, ցուցիչների խորհուրդը կարող է տվիչների միջոցով չափված տվյալները հոսել երկրորդ շերտ: Երկրորդ շերտը Intel Edison Board- ն է, որը տվյալներ է ստանում Sensor Board- ից, մշակում և ուղարկում հաջորդ շերտ: Երրորդ շերտը ձեր Edison Board- ը միացնում է ինտերնետին Wi-Fi- ով ՝ օգտագործելով Edison- ի տախտակի անլար մոդուլը և Tweet's the Current Weather & Environmental պայմանները:

Սարքի սնուցումը կարող է ապահովվել արևային վահանակի կամ AC ադապտերի միջոցով:

Տարբերակով վերահսկվող պահեստներ

TWIST- ի բոլոր երեք տեխնոլոգիական շերտերը բաց կոդ են, և, հետևաբար, բոլոր ֆայլերը, որոնք մենք օգտագործում ենք կոդի, PCB- ի մշակման, մեխանիկական դիզայնի և այլնի համար, մատչելի են մեր Github պահոցում:

Մրցույթի գրառումներ

Intel IoT Invitational

Ես կցանկանայի շնորհակալություն հայտնել Intel+Instructables- ին `ինձ Intel Edison Board- ին տրամադրելու համար: Ես մտադիր եմ շատ ավելի շատ IoT- ի հետ կապված հրահանգներ պատրաստել ՝ օգտագործելով Edison տախտակը:

#iotweatherstn

Եթե TWIST եք անում, մի մոռացեք եղանակը թվիթ անել ՝ օգտագործելով #iotweatherstn: #iotweatherstn- ը կարող է լինել հեշթեգ, որն օգտագործվում է IoT- ով աշխատող բոլոր Թվիթինգ եղանակային կայանների կողմից:

Քայլ 1: Մասեր և նյութեր

Մասեր և նյութեր
Մասեր և նյութեր
Մասեր և նյութեր
Մասեր և նյութեր
Մասեր և նյութեր
Մասեր և նյութեր

QuantityPartDetails 1

Intel Edison

Arduino Breakout Board- ի հետ

1

MQ2 այրվող գազի ցուցիչ

1

YL-83

Անձրևի տվիչ

1

SL-HS-220

Temերմաստիճանի և խոնավության ցուցիչ

1

Դիմադրողական

32K

4.7K

3 մետաղական կանգառ 1 դյույմ

1

Դիմադրողական

32K

4.7K

2

Փայտե թիթեղ A4 Չափ

Հետագայում կարող է կտրվել չափերով

3

Մետաղական կանգառ

1 դյույմ

Քայլ 2: Էլեկտրական դիզայն

Ուժ

Ամբողջ համակարգը սնուցվում է 5V 1A սնուցման աղբյուրից: Սենսորները (peratերմաստիճան, խոնավություն, անձրև, գազ) ձգում են մոտավորապես 200 մԱ, իսկ Էդիսոնը ՝ մոտ 500 մԱ, քանի որ պահանջվող ընդհանուր հոսանքը 1 ամպից պակաս է, 1 ամպ հզորությունը պետք է լավ աշխատի: Edison Board- ի թվային կապում 13 -ի ներկառուցված կանաչ LED- ն օգտագործվում է էներգիայի կարգավիճակը ցույց տալու համար:

ControlAn Intel Edison- ը ցուցադրությունը վարում է TWIST- ի համար: Edison- ը տեղադրված է Arduino բեկման տախտակի վրա, ինչը հեշտացնում է սենսորների թվային և անալոգային ազդանշանների ընթերցումը: Edison- ը միացված է 5V ռելսին միկրո USB մալուխի միջոցով: Edison- ն ունի ներկառուցված Wi-Fi ռադիո, որը թույլ է տալիս միանալ Twitter- ին ՝ առանց որևէ լրացուցիչ սարքավորման անհրաժեշտության:

Իրական ժամանակի ժամացույց (RTC)

Քանի որ Twitter- ի կողմից յուրաքանչյուր թվիթի համար ավտոմատ կերպով կատարվող ժամադրոշմման թույլտվությունը սահմանափակվում է Թվիթինգի պահից սկսած ընդհանուր օրերի քանակով, իրական ժամացույցի ժամացույցը օգտագործվում է ժամ-րոպեի ամսաթվի և ժամի ճշգրիտ ժամադրման համար: Երկրորդ ձևաչափ. Իրական ժամանակի ժամացույցը, որն օգտագործվում է TWIST հարթակում, DS-1307 RTC մոդուլն է:

Այս համակարգի ամենահիմնական տեղադրումն ունի չորս տվիչ (ջերմաստիճան, խոնավություն, անձրև, գազ), որոնք միանում են Էդիսոնին: Լրացուցիչ տվիչներ կարող են ավելացվել, ինչպիսիք են Աղմուկը, Քամին և այլն: Յուրաքանչյուր սենսոր ուղղակիորեն սնուցվում է 5 Վ ռելսից և ունի իր ազդանշանային քորոցը համապատասխանաբար համապատասխանաբար A0- ից A2 անալոգային կապերին և Edison- ի ճեղքման տախտակի թվային 2 -ին: Սենսորներից յուրաքանչյուրն ունի նաև զգայունության ճշգրտման պոտենցիոմետր, որը տեղադրված է յուրաքանչյուր ցուցիչի տախտակի վրա. MQ-2- ը այրվող գազի սենսոր է (հեղուկ նավթային գազ, պրոպան, ջրածին և մեթան), որը թողարկում է անալոգային լարում ՝ համամասնությամբ միլիոնների գազերի կոնցենտրացիային: SL-HS-220- ում կա ջերմաչափ, որը տալիս է ջերմաստիճանի արժեքը: Քանի որ թերմիստորի ելքը ոչ գծային է, սենսորների շտեմարանում տրվում է համապատասխան ջերմաստիճանի աղյուսակը: Թերմիստորը պահանջում է լարման բաժանարար միացում, երբ միացված է Էդիսոնի տախտակին, ինչպես ցույց է տրված սխեմաներում: SL-HS-220- ը ունի նաև ներկառուցված հիգրոմետր, որը չափում է խոնավությունը և դուրս է բերում անալոգային լարման, որը համապատասխանում է ֆիքսված խոնավության արժեքին: Խոնավության-լարման աղյուսակը տրված է նաև տվիչների պահեստում: SL-HS-220- ի ընդհանուր փոխարինողը DHT11 սենսորն է: Անձրևի սենսորը/ջրի ցուցիչն ունի պոտենցիոմետր, որը ճշգրտված է որոշակի քանակությամբ անձրևի համար թվային ելք տալու համար, որի զգայունությունը կարող է կարգավորվել օգտագործողի կողմից:

Եղանակային կայան. Fzz

Քայլ 3: Մեխանիկական նախագծում

TWIST- ի մարմինը պատրաստված է փայտե թիթեղների երկու ափսեից: Չնայած ես օգտագործել եմ 1/4 "նրբատախտակ, դիզայնը կարելի է հավաքել ցանկացած թերթիկից, քանի որ տարածությունը (պահպանվում է 1" ալյումինե փակվածությամբ) միակ կարևոր տարրն է: Ես կցել եմ վերը բերված վեկտորային ֆայլերը:

Լազերային կտրում

Բոլոր նրանց համար, ովքեր ցանկանում են լազերային կտրել երկու թիթեղները, ներքևում կցել եմ լազերային կտրիչ ֆայլերը `ներբեռնման համար: Այն իր նախագծում ներառում է նաև օդի որակի լրացուցիչ ցուցիչ: Այսպիսով, դուք կարող եք կամ օգտագործել MQ2 սենսորային մոդուլ կամ օդի որակի տվիչի մոդուլ `կախված ձեր ընտրությունից:

Քայլ 4: Շրջանակի հավաքում. Դեմք և հիմք

Երեսպատում

Սենսորները տեղավորվում են իրենց համապատասխան անցքերի և կտրվածքների մեջ և կարող են ամրացվել պտուտակներով կամ սոսինձով:

Բազային սալիկ

Էդիսոնի տախտակի հակասությունները պտուտակված են Հիմնադրամի վրա: Անձրևի տվիչին միացված անալոգային-թվային փոխարկիչը (ADC) կարող է պտուտակվել նաև Հիմնական սալիկի վրա:

Լրացուցիչ բաղադրիչները, ինչպիսիք են բզզոցները կամ արևային մուտքի լարման կարգավորիչը, կարող են պտուտակվել Հիմնադրամի վրա:

Baseplate- ը և Faceplate- ը երկուսն էլ բաժանված են 1 դադարումով:

Քայլ 5: Էլեկտրոնիկայի և ցուցիչների հավաքում

Ուժ

Համակարգի էներգիան ապահովում է պատի ադապտեր `ստանդարտ տակառային խցիկով, որը միացված է անմիջապես Edison's Barrel միակցիչին: Համակարգը կարող է սնուցվել նաև Edison տախտակի USB պորտի միջոցով: Կարող եք նաև սնուցել տախտակը արտաքին արևային վահանակից:

Սենսորներ

Սենսորները ամրացված են ճեղքման տախտակներին ՝ արական վերնագրերով և, հետևաբար, դրանք կարող են ուղղակիորեն միացվել Էդիսոնին ՝ արականից իգական ցատկող լարերի միջոցով:

Քայլ 6: Twitter- ի կազմաձևում

Tweet- ի համաձայն, մենք օգտագործում ենք NeoCat- ի կողմից մշակված երրորդ կողմի ծրագիրը, որը ստանում է Twitter- ի նշանը, որը ձեզ հարկավոր կլինի Tweet- ը ձեր Edison տախտակի հետ: Տոկենները կարող են ձեռք բերվել նաև Twitter- ի Developers վեբ էջից:

Այսպիսով, սկսելու համար այցելեք NeoCat- ի կայքը, հետևեք նրա ձեռնարկին ՝ twitter գրադարանը և ձեր twitter նշանը ստանալու համար: Ինչպես NeoCat- ն է նշել իրենց կայքում, խնդրում ենք չարաշահել ծառայությունը: Ձեր թվիթերը սակավ պահեք: Եթե ձեզ անհրաժեշտ է ինչ -որ բան, որը թվիթեր է անում ամեն 6 վայրկյանը մեկ, դուք պետք է ստեղծեք ձեր սեփական սերվերը և twitter ծրագիրը, և, հետևաբար, իմ գրած կոդը երաշխավորում է, որ NeoCat- ի սերվերը չի ծանրաբեռնում (TWIST թվիթեր յուրաքանչյուր 6 ժամը մեկ):

Գրադարանը օգտագործում է այս NeoCat- ի կայքը որպես վստահված սերվեր OAuth- ի իրերի համար: Ձեր թվիթը չի կարող կիրառվել այս NeoCat- ի վեբ կայքի պահպանման ընթացքում: Թվում է, թե Twitter- ը մերժում է նույն բովանդակությամբ կրկնվող թվիթերը (վերադարձնում է սխալ 403):

Twitter խորհրդանիշ

Arduino Tweet գրադարան

Քայլ 7: Softwareրագրակազմ և կազմաձևում

Կոդավորվելուց առաջ հետևեք Intel- ի Intel Edsion- ի տեղադրման ուղեցույցին:

Isրագիրը Արդուինոյի էսքիզն է, որը աշխատում է Էդիսոնի վրա: Ստորև բացատրել եմ կոդի հիմնական բլոկներից յուրաքանչյուրը:

Կոդը ներառում է որոշ կանխորոշված հաստատուններ, փին հայտարարություններ և մի քանի սերիական տպագիր հայտարարություններ, որոնք օգնում են անսարքությունների վերացմանը:

Tweet Հետաձգում

Քանի որ Twitter- ը զտում է միևնույն բովանդակություն ունեցող թվիթերը և դրանք թվիթերի են ենթարկվում դրանցից յուրաքանչյուրի միջև կարճ ժամանակահատվածում, յուրաքանչյուր թվիթի միջև սահմանվել է 3 ժամ տևողությամբ (10800000 միլիարդ վայրկյան) ստանդարտ ուշացում:

tweetMessage ();

ուշացում (10800000);

Տեսակ Ձուլում

Սենսորներից ստացված շատ ընթերցումներ գտնվում են «int» կամ «float» տվյալների տիպի մեջ: Բայց քանի որ մենք թվիթերում ենք այս արժեքները, մենք պետք է դրանք փոխակերպենք «Լարային» տվյալների տիպի: Դրա համար մենք օգտագործում ենք Type-casting հատուկ տեխնիկա:

char *dtostrf (կրկնակի val, ստորագրված char լայնություն, unsigned char prec, char *sout) {

char fmt [100]; sprintf (fmt, "%%% d.%df", width, prec); sprintf (sout, fmt, val); վերադարձ sout; }

Twitter խորհրդանիշ

Twitter- ի նշանը ստեղծվում է NeoCat- ի կայքում և պետք է տեղադրվի այստեղ նշանների տարածության մեջ:

անվավեր tweetMessage () {

Twitter twitter («Մուտքագրեք TWITTER TOKEN ԱՅՍՏԵ»);

Թվիթինգ սենսորային արժեքներ

Սենսորային արժեքը թվիթ անելու համար մենք նախ ներառում ենք Սենսորային տեսակը. Օրինակ ՝ «Խոնավություն»: Դրան հաջորդում է բնույթի հայտարարություն և տիպի ծածկագրման համար անհրաժեշտ տողի տող: Հաջորդը մենք ավելացնում ենք հայտարարություն չափման միավորի համար. Օրինակ ՝ «%RH»: Մենք կարող ենք շարունակել ավելացնել այլ սենսորների արժեքներ նույնպես նման ձևով:

խոնավություն(); բոց խոնավ;

// Twitter հաղորդագրություն String stringMsg = "Խոնավություն."; char tmp [10]; dtostrf (խոնավ, 1, 2, tmp); stringMsg += tmp; stringMsg += "%RH";

Եղանակային կայանի գտնվելու վայրը և պիտակավորումը

Հաջորդը մենք նշում ենք գտնվելու վայրը (քաղաք, տեղանք և այլն) և այլ պիտակներ, ինչպիսիք են #iotweatherstn:

stringMsg += " #Մումբայ #Բանդրա #iotweatherstn";

Իրական ժամանակի ժամացույց (RTC)

Ինչպես ավելի վաղ բացատրվել էր, TWIST- ը կարող է նաև թվիթել իրական ժամանակի ժամացույցի տվյալները: Ստորև բերված է RTC- ի «օր» պարամետրային բլոկի օրինակ: Իրական ժամանակի ժամացույցի գործառույթը պարտադիր չէ TWIST հարթակում, քանի որ մոդուլը գալիս է առանձին: Այսպիսով, գոյություն ունի առանձին մասնաճյուղ, որը ստեղծվել է TWIST պահոցում Իրական ժամանակի ժամացույցի ճյուղի ծածկագրի և սխեմատիկայի համար:

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

140 Նիշերի սահմանափակում

Կոդի այս բլոկը ծածկում է լարային զանգվածը 140 նիշ զանգվածի, որը պատրաստ է թվիթերի:

char msg [140];

stringMsg.toCharArray (msg, 140);

Հաղորդագրությունների և կապերի անսարքությունների վերացում

Կոդի այս բլոկը տպում է Serial Monitor- ում տեքստի մի քանի տող, որը կօգնի օգտվողին ստուգել հաղորդագրության և թվիթերի կարգավիճակը:

// Թվիթ արա այդ ծծողին:

if (twitter.post (msg)) {int status = twitter.wait (); if (կարգավիճակը == 200) {Serial.println ("Լավ."); Serial.println («Հաղորդագրությունը թվիթերում է»); } else {// Միացման փորձարկում Serial.print ("ձախողվեց. կոդը"); Serial.println («Հաղորդագրությունը չի թվիթերում»); Serial.println (կարգավիճակ); }} else {Serial.println («կապը ձախողվեց»); Serial.println («Հաղորդագրությունը չի թվիթերում»); }

Կոդի մյուս բոլոր բլոկները պարզապես սենսորներից անալոգային կամ թվային ընթերցումը վերածում են օգտագործելի տվյալների:

Կոդը կարող է բեռնվել այստեղից կամ հիմնական պահոցից ՝

Եղանակային կայան

Քայլ 8: Նպաստելով ցուցիչների պահեստին

Դուք ծրագրավորող, ճարտարագետ կամ դիզայներ եք, ով հիանալի գաղափար ունի TWIST- ի նոր հնարավորության համար: Միգուցե լավ գաղափար ունե՞ք վրիպակների շտկման համար: Ազատ զգացեք Github- ից վերցնել մեր ծածկագիրը, սխեմաները և CAD ֆայլերը և շաղ տալ դրա հետ:

TWIST GitHub

Intel® IoT հրավեր
Intel® IoT հրավեր
Intel® IoT հրավեր
Intel® IoT հրավեր

Երկրորդ մրցանակ Intel® IoT Invitational- ում

Խորհուրդ ենք տալիս: