Կառուցեք Raspberry Pi SUPER եղանակային կայարան. 8 քայլ (նկարներով)
Կառուցեք Raspberry Pi SUPER եղանակային կայարան. 8 քայլ (նկարներով)
Anonim
Image
Image

Եկեք ընդունենք, որ մենք ՝ մարդիկ, շատ ենք խոսում եղանակի մասին ⛅️: Միջին անձը եղանակի մասին խոսում է օրական չորս անգամ ՝ միջինը 8 րոպե 21 վայրկյան: Կատարեք մաթեմատիկա, և դա ձեր կյանքի 10 ամիսն է, որը դուք կանցկացնեք եղանակի շուրջը հորանջելով: Եղանակը դասվում է որպես թիվ 1 հիմնական թեման զրույցի սկսնակների և անհարմար լռությունը խախտողների համար: Եթե մենք այդքան շատ ենք խոսելու այդ մասին, ապա կարող ենք նաև մեր եղանակային պայմանները հասցնել բոլորովին նոր մակարդակի: Այս գերզվարճալի և հեշտ նախագիծը կօգտագործի իրերի ինտերնետը (IoT) և Raspberry Pi- ն ՝ դա անելու համար:

Մենք պատրաստվում ենք կառուցել մեր սեփական հիպեր-տեղային եղանակի IoT վահանակը ՝ ժամանակի ընթացքում որսալով եղանակը մեր տան ներսում և դրանից դուրս: Հաջորդ անգամ, երբ ինչ -որ մեկը ձեզ հարցնի «ինչպե՞ս է եղանակը վերջին ժամանակներս», դուք կկարողանաք հեռացնել ձեր հեռախոսը և շունչը թողնել ձեր խելագար եղանակի վերլուծության հմտությամբ ☀️:

Դասընթացին մասնակցելու համար ձեզ հարկավոր է ՝ 1. Ազնվամորու Pi ՝ ինտերնետ կապով

2. Raspberry Pi SenseHAT

3. 6 դյույմանոց 40-Pin IDE արական և էգ երկարացման մալուխ (ըստ ցանկության ջերմաստիճանի ճշգրտության համար)

4. Պետական սկզբնական հաշիվ

5. Վերջ!

Նախագծի մակարդակը ՝ սկսնակ

Ավարտման մոտավոր ժամանակը `20 րոպե

Մոտավոր զվարճալի գործոն ՝ գծապատկերներից դուրս

Այս քայլ առ քայլ ձեռնարկում դուք կարող եք.

- Իմացեք, թե ինչպես օգտագործել Raspberry Pi- ն Sense HAT- ով (https://www.raspberrypi.org/products/sense-hat/) ձեր տան ներսում եղանակային տվյալներ գրավելու համար

- Կառուցեք ձեր սեփական հիպեր-տեղային եղանակի վահանակը, որին կարող եք մուտք գործել ձեր նոութբուքի կամ շարժական սարքի ցանկացած վեբ դիտարկիչից

- Վազեք ձեր օդերևութաբանին իրենց փողերի համար

Պարագաներ

Այն, ինչ ձեզ հարկավոր կլինի դասընթացին մասնակցելու համար.

1. Ազնվամորի Pi w/ ինտերնետ կապով

2. Raspberry Pi SenseHAT

3. 6 դյույմանոց 40-Pin IDE արական և էգ երկարացման մալուխ (ըստ ցանկության ջերմաստիճանի ճշգրտության համար)

4. Պետական սկզբնական հաշիվ

5. Վերջ!

Քայլ 1: Սկսելու համար

Մենք արդեն շատ աշխատանքներ ենք կատարել ձեր համար ՝ ծածկագիրը միասին հավաքելու և տեղեկատվությունը կազմակերպելու համար: Մեզ պարզապես պետք է, որ դուք մի քանի ճշգրտումներ կատարեք ճանապարհին:

Բոլոր այն բաները, որոնք մենք պատրաստել ենք ձեզ համար, ձեզ հարկավոր է կլոնավորել պահեստը GitHub- ից: Github- ը հիանալի ծառայություն է, որը թույլ է տալիս մեզ պահել, վերանայել և կառավարել նման նախագծերը: Պահեստը կլոնավորելու համար մեզ մնում է մտնել մեր Pi- ի տերմինալ կամ ձեր համակարգչի SSH- ի տերմինալը ձեր pi- ում և մուտքագրել այս հրամանը.

$ git կլոն

Կտտացրեք enter և կտեսնեք այս տեղեկատվությունը

pi@raspberrypi ~ $ git կլոն

«Wunderground-sensehat»-ի կլոնավորում…

հեռավոր. օբյեկտների հաշվարկ. 28, ավարտված:

հեռավոր. Ընդամենը 28 (դելտա 0), վերօգտագործված 0 (դելտա 0), փաթեթավորված վերօգտագործված 28

Օբյեկտների փաթեթավորում `100% (28/28), ավարտված:

Կապի ստուգում… կատարված է:

Երբ տեսնեք սա, ապա շնորհավորանքներ, դուք հաջողությամբ կլոնավորեցիք Github Repo- ն և ունեք բոլոր անհրաժեշտ ֆայլերը ՝ ձեր Super Weather Station- ը կառուցելու համար: Նախքան հաջորդ քայլին անցնելը, եկեք որոշ ժամանակ հատկացնենք այս գրացուցակի շուրջը և սովորենք մի քանի հիմնական հրամանի տող:

Մուտքագրեք ստորև բերված հրամանը ձեր տերմինալում

$ ls

Այս հրամանը թվարկում է այն ամենը, ինչ առկա է գրացուցակում, որտեղ դուք այժմ գտնվում եք: Այս ցուցակը ցույց է տալիս, որ մեր Github Repo- ն հաջողությամբ կլոնավորվել է մեր գրացուցակում «wunderground-sensehat» անունով: Եկեք նայենք, թե ինչ կա այդ գրացուցակում: Գրացուցակները փոխելու համար անհրաժեշտ է միայն մուտքագրել «cd» և այնուհետև մուտքագրել այն գրացուցակի անունը, որին ցանկանում եք գնալ:

Այս դեպքում մենք մուտքագրում ենք.

$ cd wunderground-sensehat

Երբ սեղմում ենք enter- ը, կտեսնեք, որ մենք այժմ գտնվում ենք wunderground-sensehat գրացուցակում: Եկեք նորից մուտքագրենք ls ՝ տեսնելու, թե ինչ ֆայլեր ենք տեղադրել մեր pi- ում:

README.md sensehat.py sensehat_wunderground.py wunderground.py

Այստեղ մենք տեսնում ենք, որ մենք ունենք մեր readme փաստաթուղթը և մի քանի տարբեր պիթոնի ֆայլեր: Եկեք նայենք sensehat.py- ին: Փոխանակ ֆայլը w/ cd հրամանի հետ անցնելու փոխարեն, ինչպես գրացուցակների համար, մենք կօգտագործենք nano հրամանը: Նանո հրամանը թույլ է տալիս մեզ բացել նանո տեքստային խմբագիր, որտեղ մենք ունենք մեր բոլոր Python ծածկագրերը այս նախագծի յուրաքանչյուր հատվածի համար: Շարունակեք և մուտքագրեք.

$ nano sensehat.py

Այստեղ դուք կարող եք տեսնել այն բոլոր ծածկագրերը, որոնք մենք պատրաստել ենք ձեզ համար այս նախագծի համար: Մենք դեռ չենք պատրաստվում որևէ փոփոխություն կատարել այս փաստաթղթում, բայց ազատ զգացեք շրջել և տեսնել, թե ինչ ենք անելու հետագայում այս ձեռնարկում:

Քայլ 2: Նախնական վիճակ

Նախնական վիճակ
Նախնական վիճակ

Մենք ցանկանում ենք մեր եղանակի բոլոր տվյալները հոսել ամպային ծառայության վրա և այդ ծառայությունը դարձնել մեր տվյալները գեղեցիկ վահանակի, որին կարող ենք մուտք գործել մեր նոթբուքից կամ բջջային սարքից: Մեր տվյալները նպատակակետի կարիք ունեն: Որպես այդ ուղղություն, մենք կօգտագործենք Նախնական վիճակը:

Քայլ 1: Գրանցվեք սկզբնական պետական հաշվի համար

Գնացեք https://www.initialstate.com/app#/register/ և ստեղծեք նոր հաշիվ:

Քայլ 2: Տեղադրեք ISStreamer- ը

Տեղադրեք սկզբնական վիճակի Python մոդուլը ձեր Raspberry Pi- ի վրա. Հրամանի տողում (նախ չմոռանաք SSH- ի ձեր Pi- ին մուտքագրել) գործարկեք հետևյալ հրամանը.

$ cd/home/pi/

$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash

Անվտանգության նշում. Վերը նշված հրամանն ունի որոշ կարևոր անատոմիա, որից օգտվողը պետք է տեղյակ լինի:

1) Նախորդ / գանգրվելուց առաջ կա: Սա կարևոր է `ապահովելու համար, որ curl- ի կեղծանունն աշխատի, եթե այն ստեղծվի: Սա օգնում է մեղմել հրամանատարության կողմից նախատեսվածից ավելին կատարելու ռիսկը:

2) Հրամանը խողովակաշարային հրաման է, ուստի գործարկելիս դուք https://get.initialstate.com/python- ից վերցված սցենարի ելք եք տալիս sudo bash հրամանի մեջ: Սա արվում է տեղադրումը պարզեցնելու համար, այնուամենայնիվ, պետք է նշել, որ https- ն այստեղ կարևոր է `ապահովելու համար, որ տեղադրման սկրիպտը ոչ մի միջամտություն չկատարի, մանավանդ որ սցենարը վարվում է բարձր արտոնություններով: Սա տեղադրման և տեղադրման պարզեցման սովորական միջոց է, բայց եթե մի փոքր ավելի զգույշ լինեք, կան մի փոքր ավելի քիչ քիչ այլընտրանքային տարբերակներ. Կարող եք հրամանը բաժանել երկու քայլի և ուսումնասիրել ինքներդ ապահովելու համար curl հրամանից ներբեռնվող bash սցենարը: դա հավատարմություն է.

Քայլ 3: Կատարեք որոշ ավտոմատիկա

Քայլ 2 -ից հետո էկրանին կտեսնեք հետևյալ արտադրանքի նման մի բան.

pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bash

Գաղտնաբառ. Սկսվող ISStreamer Python Հեշտ տեղադրում:

Տեղադրումը կարող է տևել մի քանի րոպե, սուրճ խմել:)

Բայց մի մոռացեք վերադառնալ, ես հարցեր կունենամ ավելի ուշ:

Գտնվել է easy_install: setuptools 1.1.6

Գտնված խողովակ ՝ pip 1.5.6 /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7)

pip հիմնական տարբերակը ՝ 1

pip minor տարբերակ ՝ 5

ISStreamer- ը գտնվել է, թարմացվում է…

Պահանջն արդեն արդիական է. ISStreamer /Library/Python/2.7/site-packages- ում Մաքրում…

Youանկանու՞մ եք ավտոմատ կերպով ստանալ օրինակ սցենար: [y/N]

(ելքը կարող է տարբեր լինել և ավելի երկար տևի, եթե նախկինում երբևէ չեք տեղադրել տեղադրման սկզբնական վիճակի Python մոդուլը)

Երբ հուշում է ավտոմատ կերպով ստանալ օրինակ սցենար, մուտքագրեք y:

Սա կստեղծի թեստային սցենար, որը մենք կարող ենք գործարկել `ապահովելու համար, որ մենք կարող ենք տվյալներ փոխանցել Նախնական վիճակին մեր Pi- ից: Ձեզ կառաջարկվի.

Որտե՞ղ եք ցանկանում պահպանել օրինակը: [լռելյայն ՝./is_example.py]:

Դուք կարող եք կամ մուտքագրել հատուկ տեղական ուղի կամ սեղմել enter ՝ կանխադրվածը ընդունելու համար: Ձեզանից կպահանջվի ձեր օգտվողի անունը և գաղտնաբառը, որոնք դուք պարզապես ստեղծել եք ձեր սկզբնական պետության հաշիվը գրանցելիս: Մուտքագրեք երկուսն էլ, և տեղադրումը կավարտվի:

Քայլ 4: Մուտքի բանալիներ

Եկեք նայենք ստեղծված սցենարի օրինակին: Տիպ:

$ nano is_example.py

15 -րդ տողում դուք կտեսնեք մի տող, որը սկսվում է streamer = Streamer (bucket_… նույն տողի պարամետրը: Տառերի և թվերի այդ երկար շարանը ձեր սկզբնական վիճակի հաշվի մուտքի բանալին է: Եթե ձեր վեբ դիտարկիչում մուտք եք գործում ձեր սկզբնական վիճակի հաշիվ, վերևի աջ կողմում կտտացրեք ձեր օգտվողի անունին, այնուհետև գնացեք «իմ հաշիվը»:, նույն մուտքի բանալին կգտնեք էջի ներքևում ՝ «Հոսքային մուտքի բանալիներ» բաժնում:

Ամեն անգամ, երբ ստեղծում եք տվյալների հոսք, մուտքի այդ բանալին այդ տվյալների հոսքը կուղղորդի դեպի ձեր հաշիվ (ուստի ձեր բանալին ոչ ոքի մի կիսեք):

Քայլ 5: Գործարկեք օրինակը

Գործարկեք փորձարկման սցենարը `համոզվելու համար, որ մենք կարող ենք տվյալների հոսք ստեղծել ձեր Նախնական վիճակի հաշվին:

Գործարկեք հետևյալը

$ python is_example.py

Քայլ 6: Շահույթ

Վերադարձեք ձեր սկզբնական վիճակի հաշվին ձեր վեբ դիտարկիչում: Տվյալների նոր դույլ, որը կոչվում է «Python Stream Օրինակ», պետք է հայտնվեր ձեր մատյանների դարակում ձախ կողմում (գուցե ստիպված լինեք թարմացնել էջը): Կտտացրեք այս դույլի վրա, այնուհետև կտտացրեք Waves պատկերակին ՝ փորձարկման տվյալները դիտելու համար:

Դուք կցանկանաք անցնել Waves ձեռնարկը `ծանոթանալու համար, թե ինչպես օգտագործել այս տվյալների արտացոլման գործիքը: Հաջորդը, դիտեք սալիկների տվյալները ՝ այս նույն տվյալները վահանակի տեսքով տեսնելու համար:

Այժմ դուք պատրաստ եք սկսել իրական տվյալների հեռարձակում Wunderground- ից և ավելին:

Քայլ 3: enseգացեք գլխարկը

Sense HAT
Sense HAT
Sense HAT
Sense HAT
Sense HAT
Sense HAT

The Sense HAT- ը Raspberry Pi- ի հավելյալ տախտակ է, որը լի է սենսորներով, լուսադիոդային լուսարձակներով և փոքրիկ ջոյստիկով: Այս փոքրիկ հավելման մեջ այնքան հիանալի է, որ այն անհավանականորեն հեշտ է տեղադրել և օգտագործել շնորհիվ Python ֆանտաստիկ գրադարանի, որը կարող եք արագ տեղադրել: Այս նախագծի համար մենք կօգտագործենք ջերմաստիճանի, խոնավության և բարոմետրիկ ճնշման տվիչները Sense HAT- ի վրա: Եկեք այն կարգավորենք:

Sense HAT- ի օգտագործման առաջին քայլը ֆիզիկապես տեղադրել այն ձեր Pi- ի վրա: Pi- ն անջատված վիճակում ամրացրեք գլխարկը, ինչպես ցույց է տրված նկարում:

Միացրեք ձեր Pi- ն: Մենք պետք է տեղադրենք Python գրադարանը, որպեսզի հեշտ լինի կարդալ սենսորների արժեքները Sense HAT- ից: Նախ, դուք պետք է համոզվեք, որ Raspbian- ի ձեր տարբերակում ամեն ինչ արդիական է ՝ մուտքագրելով.

$ sudo apt-get թարմացում

Հաջորդը, տեղադրեք Sense HAT Python գրադարանը.

$ sudo apt-get install sense-hat

Վերագործարկեք ձեր Pi- ն:

Մենք պատրաստ ենք փորձարկել Sense HAT- ը ՝ կարդալով դրանից սենսորների տվյալները և ուղարկելով այդ տվյալները Նախնական վիճակ:

Եկեք փորձարկենք մեր Sense HAT- ը `համոզվելու համար, որ ամեն ինչ աշխատում է: Մենք կօգտագործենք այն սցենարը, որը գտնվում է https://github.com/InitialState/wunderground-sensehat/blob/master/sensehat.py: Դուք կարող եք պատճենել այս սցենարը ձեր Pi- ի ֆայլում կամ մուտք գործել այն մեր Github պահոցից, որը մենք ավելի վաղ կլոնավորել էինք: Փոխեք ձեր wunderground-sensehat գրացուցակը, այնուհետև nano ձեր sensehat.py ֆայլը ՝ մուտքագրելով.

$ nano sensehat.py

Առաջին տողում նշեք, որ մենք SenseHat գրադարանը ներմուծում ենք սցենարի մեջ: Նախքան այս սցենարը գործարկելը, մենք պետք է կարգավորենք մեր օգտագործողի պարամետրերը:

# --------- Օգտագործողի կարգավորումներ --------- CITY = "Nashville"

BUCKET_NAME = ": partly_sunny:" + CITY + "Եղանակ"

BUCKET_KEY = "sensehat"

ACCESS_KEY = "Ձեր_Մուտքի_բանալին"

SENSOR_LOCATION_NAME = "Գրասենյակ"

MINUTES_BETWEEN_SENSEHAT_READS = 0.1

# ---------------------------------

Մասնավորապես, դուք պետք է ձեր ACCESS_KEY- ը սահմանեք ձեր սկզբնական պետության հաշվի մուտքի բանալին: Ուշադրություն դարձրեք, թե որքան հեշտ է Sense HAT- ի տվյալները կարդալ Python- ի մեկ տողում (օրինակ ՝ sense.get_temperature ()): Ձեր Pi- ի հրամանի տողում գործարկեք սցենարը.

$ sudo python sensehat.py

Գնացեք ձեր Նախնական վիճակի հաշիվ և դիտեք Sense HAT- ի ստեղծած տվյալների նոր փաթեթը:

Այժմ, մենք պատրաստ ենք ամեն ինչ միավորել և ստեղծել մեր հիպեր-տեղական եղանակային վահանակը:

Քայլ 4. Հիպեր տեղական եղանակի վահանակ

Hyper Local Եղանակի վահանակ
Hyper Local Եղանակի վահանակ
Hyper Local Եղանակի վահանակ
Hyper Local Եղանակի վահանակ

Այս նախագծի վերջին քայլը պարզապես եղանակային տվյալների և Sense HAT սցենարի համատեղումն է մեկ վահանակի մեջ: Դա անելու համար մենք կօգտագործենք Weatherstack- ի հետ Նախնական վիճակի ինտեգրումը ՝ եղանակի վերաբերյալ տվյալներ ավելացնելու համար մեր վերջին քայլում ստեղծված մեր Sensehat վահանակի մեջ:

Weatherstack API- ի օգտագործումը չափազանց պարզ է: Նախկինում այս ձեռնարկի ընթացքում մենք ձեզ առաջարկել էինք ստեղծել և գործարկել եղանակային տվյալների API- ից տվյալներ հանելու սցենար, սակայն այս ձեռնարկի սկզբից ի վեր սկզբնական վիճակը ստեղծել է տվյալների ինտեգրման շուկա: Տվյալների ինտեգրման շուկան ձեզ հնարավորություն է տալիս մուտք գործել և հոսել API- ներ Նախնական վիճակի վահանակ ՝ առանց ծածկագրի: Դա բառացիորեն ընդամենը մի քանի մկնիկի կտտացում է և BAM: եղանակային տվյալներ: Միջին, ես գրել եմ ավելի խորը ձեռնարկ, թե ինչպես օգտագործել Weatherstack ինտեգրումը և ստեղծել եղանակային ահազանգեր, բայց արագ կներկայացնեմ, թե ինչպես սկսել սկսել ստորև:.

Օգտագործելով Weatherstack ինտեգրումը

1. Մուտք գործեք ձեր Նախնական Պետական հաշիվ

2. Կտտացրեք ինտեգրումների էջի Weatherstack վանդակի մանրամասների կոճակին: Այս էջը ձեզ կպատմի ամբողջ հիմնական տեղեկատվությունը ինտեգրման և դրա օգտագործման համար անհրաժեշտ լինելու մասին: Այս դեպքում ձեզ պարզապես անհրաժեշտ կլինի մի վայրի փոստային ծածկագիր (կամ լայնություն և երկայնություն), որտեղ դուք կցանկանաք վերահսկել եղանակը, և դուք պետք է իմանաք, թե որ միավորներում կցանկանայիք տեսնել այդ տվյալները (մետրային, գիտական կամ ԱՄՆ կայսերական):

3. Կտտացրեք «Սկսել կարգավորում» կոճակին և ձեր էկրանին աջից կտեսնեք մոդալ թռիչք: Կան ընդամենը մի քանի հեշտ քայլեր, որոնք պետք է ձեռնարկվեն, մինչև մենք կարողանանք սկսել դիտել եղանակի մասին տվյալները.

4. Անվանեք ձեր նոր վահանակի անունը: Ես իմ անունն անվանեցի Nashville Weather. Pro հուշում. Ես սիրում եմ իմ ցուցատախտակների անուններում օգտագործել emoji- ները `նրանց մի փոքր ավելի հմայելու համար: Mac- ում էմոջիներ քաշելու արագ եղանակը Ctrl+Command+Space bar- ն է: Windows- ի համար պահեք Windows կոճակը և կետը (.) Կամ ստորակետ (;): 2 5. Մուտքագրեք ձեր գտնվելու վայրը: Ես օգտագործում եմ այն տարածքի փոստային ինդեքսը, որին ցանկանում եմ հետևել, բայց կարող եք նաև լայնություն և երկայնություն դարձնել ավելի կոնկրետ: Ձեր տարածքի լայնությունն ու երկայնությունը գտնելը հեշտ է ՝ պարզապես google քարտեզներ այցելելով, տեղ որոնելով, այնուհետև դիտարկիչից պատճենելով լայնությունը և երկայնությունը և տեղադրելով այն ձևի մեջ: Այս պահին կարող են օգտագործվել միայն ԱՄՆ -ի, Մեծ Բրիտանիայի և Կանադայի վայրերը:

6. Ընտրեք ձեր միավորները: Ես ընտրեցի ԱՄՆ -ը/Իմպերիալը, քանի որ ապրում էի Միացյալ Նահանգներում:

7. Ընտրեք ստեղծել նոր դույլ կամ ուղարկել ձեր Weatherstack- ի տվյալները գոյություն ունեցող դույլի: Այս ձեռնարկում, եթե դուք արդեն կարգավորել եք ձեր Sense Hat- ը, որը հոսում է Նախնական վիճակ (վերջին քայլում), ապա պարզապես ուղարկեք Weatherstack- ի տվյալները այդ դույլը:

8. Ընտրեք ՝ ցանկանում եք, որ Weatherstack- ն ուղարկի բոլոր տվյալները, թե ցանկանում եք, որ եղանակի մասին տվյալներն ուղարկվեն ձեր վահանակ: Դուք միշտ կարող եք ուղարկել բոլոր տվյալները և հետագայում մի քանի սալիկ հանել:

9. Ընտրեք, թե որքան հաճախ եք ցանկանում, որ ձեր կառավարման վահանակը թարմացվի եղանակային պայմաններին համապատասխան: Դուք կարող եք ընտրել յուրաքանչյուր 15 րոպեի կամ ժամ առ ժամ: Նկատի ունեցեք, որ յուրաքանչյուր 15 րոպեն մեկ տվյալների ուղարկումը լրացուցիչ նշան արժե `ամեն ժամ ուղարկելու համեմատ: Այսպիսով, եթե ցանկանում եք միաժամանակ օգտագործել շուկայում այլ ինտեգրացիաներ, ապա գուցե ցանկանաք ամեն ժամ հարցում անցկացնել: Դուք միշտ կարող եք դադարեցնել տվյալների ուղարկումը ինտեգրումից և նորից սկսել դրանք, կամ փոխել տվյալների փոխանցման հաճախականությունը հետագայում: Այնուամենայնիվ, եթե դուք այն դադարեցնեք և նորից սկսեք, ապա ձեր տվյալների մեջ բացեր կլինեն:

10. Կտտացրեք Սկսել ինտեգրումը: Այժմ դուք հոսում եք տվյալներ Weatherstack- ից: Կտտացրեք «Դիտել IoT հավելվածում» կոճակին ՝ տեսնելու համար տվյալների առաջին կետերը:

11. Անհատականացրեք ձեր վահանակը: Եթե դուք հոսում եք դեպի նոր դույլ, մենք ձեզ ստեղծել ենք ձևանմուշ ՝ սկսելու համար: Այնուամենայնիվ, դուք պետք է այն դարձնեք ձեր սեփականը: Սեղմեք ներքևի սլաքը ձեր վահանակի վերևի կենտրոնում `ժամանակացույցը իջեցնելու համար, կտտացրեք Խմբագրել սալիկներ, տեղափոխեք որոշ սալիկներ, չափափոխեք դրանք և փոխեք ֆոնը: Կառուցեք վահանակն այնպես, ինչպես ցանկանում եք, որպեսզի ձեզ համար հեշտ լինի կուլ տալ այն տվյալները, որոնք ցանկանում եք հավաքել: Կարող եք նաև օգտագործել Weatherstack- ի այլ ձևանմուշներ, որոնք մենք ստեղծել ենք ձեզ համար այստեղ: Ձեր վահանակին մի փոքր ավելի համատեքստ ավելացնելու համար կարող եք ավելացնել նաև քարտեզ, որը ցույց է տալիս եղանակի վերահսկման վայրը: Ձեր կառավարման վահանակը կարող է սկզբում մի փոքր մերկ թվալ, բայց ժամանակ տվեք դրան, և այն կլցվի եղանակի պատմական գեղեցիկ տվյալներով:

Քայլ 5: Քարտեզ ավելացրեք ձեր կառավարման վահանակին (բոնուս)

Քարտեզ ավելացրեք ձեր կառավարման վահանակին (բոնուս)
Քարտեզ ավելացրեք ձեր կառավարման վահանակին (բոնուս)
Քարտեզ ավելացրեք ձեր կառավարման վահանակին (բոնուս)
Քարտեզ ավելացրեք ձեր կառավարման վահանակին (բոնուս)
Քարտեզ ավելացրեք ձեր կառավարման վահանակին (բոնուս)
Քարտեզ ավելացրեք ձեր կառավարման վահանակին (բոնուս)

Մենք կարող ենք հեշտությամբ քարտեզի սալիկ ավելացնել մեր վահանակին, որը ցույց է տալիս մեր եղանակային հոսքի գտնվելու վայրը: Քարտեզների ինտերակտիվ տեսքի մասին ավելին կարող եք իմանալ սալիկներում ՝ https://support.initialstate.com/knowledgebase/articles/800232-tiles-map-view: Մենք պարզապես կարող ենք ավելացնել նոր streamer.log հայտարարություն մեր Python սցենարում (և ես կբացատրեմ, թե ինչպես կարող եք դա անել այս բաժնի վերջում): Փոխարենը, մենք կօգտվենք այս հնարավորությունից ՝ ձեզ ցույց տալու այլ եղանակ ՝ տվյալները ձեր վահանակ ուղարկելու համար:

Քայլ 1: Ստացեք ձեր գտնվելու վայրի լայնության/երկայնության կոորդինատները

Դուք պետք է ստանաք ձեր գտնվելու վայրի լայնության/երկայնության կոորդինատները: Դա անելու եղանակներից մեկն է ՝ գնալ Google Քարտեզներ, որոնել ձեր գտնվելու վայրը և խոշորացնել ձեր ճշգրիտ վայրը: URL- ում դուք կտեսնեք ձեր լայնության/երկայնության կոորդինատները: Վերոնշյալ օրինակում իմ կոորդինատներն են 35.925298, -86.8679478:

Պատճենեք ձեր կոորդինատները (դրանք ձեզ հարկավոր կլինեն 2 -րդ քայլում) և համոզվեք, որ պատահաբար չեք պատճենել URL- ից լրացուցիչ նշաններ:

Քայլ 2. Ստեղծեք URL ՝ տվյալները ձեր վահանակ ուղարկելու համար

Կտտացրեք «կարգավորումներ» հղմանը ՝ դույլի անվան տակ գտնվող դույլի անվան տակ: Սա կբարձրացնի վերևի էկրանը: Պատճենեք տեքստը API վերջնակետ բաժնում և տեղադրեք այն ձեր նախընտրած տեքստային խմբագրիչում: Մենք կօգտագործենք սա ՝ URL ստեղծելու համար, որը մենք կարող ենք օգտագործել ՝ տվյալներ ուղարկելու մեր առկա դույլի և վահանակի վրա: Իմ դույլի մեջ տեքստը, որը ես պատճենել եմ, ունի հետևյալ տեսքը ՝ URL- ը լրացնելու համար մենք պետք է ավելացնենք հոսքի անուն և արժեք URL- ի պարամետրերին:

Ավելացրեք «& MapLocation = YOUR_COORDINATES_FROM_STEP1» ձեր URL- ին

(տեղադրեք քայլ 1 -ի կոորդինատները, բացատ չկա և իմը մի պատճենեք !!)

Ահա, թե ինչ տեսք ունի իմը.

Տեղադրեք ձեր ամբողջական URL- ը ձեր դիտարկիչի հասցեների սանդղակին և սեղմեք enter (կամ հրամանի տողում օգտագործեք «curl» հրամանը) ՝ ձեր նոր դույլի մեջ քարտեզի կոորդինատները հոսքի «MapLocation» ուղարկելու համար:

Եթե այժմ նայեք «Սալիկների» վահանակին (անհամբեր լինելու դեպքում գուցե ստիպված լինեք թարմացնել), MapLocation անունով նոր սալիկ պետք է մեծացված լիներ ձեր ընթացիկ գտնվելու վայրի վրա:

Քայլ 2 Այլընտրանք. Փոփոխեք ձեր սցենարը

Եթե ձեզ իսկապես դուր չի գալիս վերը նշված 2 -րդ քայլը, կարող եք պարզապես մեկ այլ streamer.log հայտարարություն ավելացնել ձեր Python սցենարին: Պարզապես ավելացրեք տողը

streamer.log ("MapLocation", "YOUR_COORDINATES_FROM_STEP1")

ինչ -որ տեղ def main () ներսում. sensehat_wunderground.py սցենարի գործառույթ (ուշադրություն դարձրեք բ/գ ներթափանցման վրա Python- ը պահանջում է ձեզ հետևել խորամանկության խիստ կանոններին): Օրինակ, ես ավելացրել եմ streamer.log («MapLocation», «35.925298, -86.8679478») 138 տողից անմիջապես հետո:

Քայլ 6. Սենսորային գլխարկի ջերմաստիճանի ընթերցման ամրագրում

Xգայարանների գլխարկի ջերմաստիճանի ընթերցման ամրագրում
Xգայարանների գլխարկի ջերմաստիճանի ընթերցման ամրագրում
Xգայարանների գլխարկի ջերմաստիճանի ընթերցման ամրագրում
Xգայարանների գլխարկի ջերմաստիճանի ընթերցման ամրագրում
Xգայարանների գլխարկի ջերմաստիճանի ընթերցման ամրագրում
Xգայարանների գլխարկի ջերմաստիճանի ընթերցման ամրագրում

Դուք կարող եք նկատել, որ ձեր Sense HAT- ի ջերմաստիճանի ցուցանիշները մի փոքր բարձր են թվում, դա այդպես է: Մեղավորը Pi- ի պրոցեսորից առաջացած ջերմությունն է, որը տաքացնում է օդը Sense HAT- ի շուրջը, երբ այն նստած է Pi- ի գագաթին:

Temperatureերմաստիճանի տվիչը օգտակար դարձնելու համար մենք պետք է կամ հեռացնենք HAT- ը Pi- ից (ինչը կվերացնի կոմպակտ լուծում լինելու կարևոր առավելությունը), կամ փորձենք ճշգրտել ջերմաստիճանի տվիչի ընթերցումը: Պրոցեսորը մեր ջերմաստիճանի տվիչի վրա ազդող մակաբույծ ջերմության հիմնական պատճառն է, ուստի մենք պետք է պարզենք հարաբերակցությունը: Երբ ուսումնասիրում ենք Enviro pHAT- ը Pi Zero- ի համար, մենք եկանք մի հավասարման, որը հաշվի է առնում պրոցեսորի ջերմաստիճանը, որն ազդում է գլխարկի ջերմաստիճանի ցուցանիշի վրա: Մեզ պարզապես անհրաժեշտ է պրոցեսորի ջերմաստիճանը և չափման գործակիցը `ճշգրտված ջերմաստիճանը հաշվարկելու համար.

temp_calibrated = temp - ((cpu_temp - temp)/FACTOR)

Մենք կարող ենք գտնել գործոնը `գրանցելով իրական ջերմաստիճանը և լուծելով դրա համար: Սենյակում իրական ջերմաստիճանը գտնելու համար մեզ այլ ջերմաստիճանի տվիչների կարգավորում է անհրաժեշտ: Օգտագործելով DHT22 սենսոր (այստեղ տեղադրման հրահանգները և այստեղ սցենարը), մենք կարող ենք միաժամանակ գրանցել և պատկերացնել երկու ջերմաստիճանը.

Արդյունքը ցույց է տալիս, որ Sense HAT- ի ընթերցումը բավականին հետևողականորեն անջատված է 5-6 աստիճան Ֆարենհայտով: Ավելացնելով պրոցեսորի ջերմաստիճանը խառնուրդի մեջ (այս սցենարով) ՝ առաջինը ցույց է տալիս, որ այն չափազանց տաք է, իսկ երկրորդը ՝ մի տեսակ ալիք, որը նմանեցնում է Sense HAT չափումը:

Մոտ 24 ժամ ձայնագրվելուց հետո գործոնի համար լուծեցի վեց տարբեր ընթերցումներ `ժամանակի վեց տարբեր կետերում: Գործոնների արժեքների միջինացված արժեքը գործոնի վերջնական արժեքը կազմել է 5.466: Կիրառելով հավասարումը

temp_calibrated = temp - ((cpu_temp - temp) /5.466)

ճշգրտված ջերմաստիճանը հասել է փաստացի ջերմաստիճանի ընթերցման մեկ աստիճանի.

Դուք կարող եք կատարել այս ճշգրտման ուղղումը Pi- ի վրա ՝ wunderground_sensehat.py սցենարի ներսում:

Քայլ 7: Բոնուս. Կարգավորեք ձեր սեփական եղանակային ահազանգերը

Բոնուս. Կարգավորեք ձեր սեփական եղանակային ահազանգերը
Բոնուս. Կարգավորեք ձեր սեփական եղանակային ահազանգերը
Բոնուս. Կարգավորեք ձեր սեփական եղանակային ահազանգերը
Բոնուս. Կարգավորեք ձեր սեփական եղանակային ահազանգերը

Եկեք ստեղծենք SMS ահազանգ, երբ ջերմաստիճանը սառեցումից ցածր է:

Մենք պատրաստվում ենք հետևել աջակցության էջում նշված Գործարկման ազդանշանի կարգավորման գործընթացին:

Համոզվեք, որ եղանակի վերաբերյալ տվյալների բոքոնը բեռնված է:

Կտտացրեք դարակների կարգավորումները տվյալների դարակում (դրա անվան տակ):

Կտտացրեք Triggers ներդիրին:

Ընտրեք տվյալների հոսքը, որը պետք է գործարկվի (կարող եք օգտագործել բացվող ցուցակը ՝ գոյություն ունեցող հոսքերից ընտրելու համար, երբ տվյալների դույլը բեռնված է, կամ կարող եք ձեռքով մուտքագրել հոսքի անունը/բանալին. *Նշեք, որ Safari- ն չի աջակցում HTML5 բացվող ցուցակները): Իմ վերևի սքրինշոթում, ես ընտրեցի peratերմաստիճանը (F):

Ընտրեք պայմանական օպերատոր, այս դեպքում '<':

Ընտրեք Trigger արժեքը, որը կհանգեցնի գործողության (ձեռքով մուտքագրեք ցանկալի արժեքը): Այս դեպքում մուտքագրեք 32 -ը, ինչպես ցույց է տրված վերևում:

Կտտացրեք «+» կոճակին ՝ ձգանման պայմանը ավելացնելու համար:

Ընտրեք գործողությունը (ընթացիկ գործողությունների մասին տեղեկացվում է SMS կամ էլ. Փոստով):

Կտտացրեք «+» կոճակին ՝ գործողությունը ավելացնելու համար: Մուտքագրեք ցանկացած հաստատման կոդ, եթե նոր հեռախոսահամար կամ էլփոստ ավելացնեք կարգավորումն ավարտելու համար:

Ձեր ձգանը այժմ կենդանի է և պայթեցվի պայմանը բավարարելուց հետո: Հիմնական էկրան վերադառնալու համար կտտացրեք կատարվածը:

PIR SMS

Երբ ջերմաստիճանը 32 -ից իջնի, դուք կստանաք տեքստային հաղորդագրություն: Եղանակի տվյալների շերտի որևէ բանի մասին ահազանգեր եք տալիս (*նշեք, որ դուք պետք է օգտագործեք էմոջի խորհրդանիշներ, այլ ոչ թե իրական էմոջիները):

Օրինակ, երբ անձրև է գալիս

: cloud: Եղանակի պայմաններ =: umbrella:

Ամեն անգամ, երբ քամի է

: dash: Քամու արագություն (MPH)> 20

եւ այլն

Քայլ 8:

Իրերի ինտերնետի մրցույթ 2016 թ
Իրերի ինտերնետի մրցույթ 2016 թ
Իրերի ինտերնետի մրցույթ 2016 թ
Իրերի ինտերնետի մրցույթ 2016 թ

Երկրորդ մրցանակ իրերի ինտերնետում 2016 մրցույթում

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