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

Ինտերնետին միացված սնուցման վարդակից `13 քայլ
Ինտերնետին միացված սնուցման վարդակից `13 քայլ

Video: Ինտերնետին միացված սնուցման վարդակից `13 քայլ

Video: Ինտերնետին միացված սնուցման վարդակից `13 քայլ
Video: 10+ խորհուրդներ այն մասին, թե ինչպես արագ և անվտանգ լիցքավորել ձեր հեռախոսը 2024, Նոյեմբեր
Anonim
Image
Image
Պահանջվող պարագաներ
Պահանջվող պարագաներ

PowerHub Webserver Project & Internet Enabled Outlet Setup Հրահանգներ

Ինտերնետի համար տվյալների կայունության կենտրոնական կենտրոնը ձեր տանը լույս և վարդակներ է ապահովում:

Քայլ 1. PowerHub Վեբ սերվերի նախագիծ և Ինտերնետին միացված վարդակից տեղադրման հրահանգներ

Ինտերնետի համար տվյալների կայունության կենտրոնական կենտրոնը լուսավորեց և ձեր տան վարդակները

Flashրամեկուսացման RaspberriPi կոշտ սկավառակ/Տեղադրեք անհրաժեշտ ծրագրակազմ (օգտագործելով Ubuntu Linux) Ներբեռնեք «RASPBIAN JESSIE LITE»

Ստեղծեք ձեր նոր կոշտ սկավառակը DashboardPI- ի համար

Տեղադրեք microSD- ը ձեր համակարգչին USB ադապտերի միջոցով և ստեղծեք սկավառակի պատկերը ՝ օգտագործելով dd հրամանը

Տեղադրեք տեղադրված microSD քարտը df -h հրամանի միջոցով, ապամոնտաժեք այն և ստեղծեք սկավառակի պատկերը սկավառակի պատճենը dd հրամանով

$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/մեդիա/XXX/1234-5678

$ umount /dev /sdb1

Caգուշացում. Համոզվեք, որ հրամանը լիովին ճշգրիտ է: Այս հրամանով կարող եք վնասել այլ սկավառակներ

if = RASPBIAN JESSIE LITE պատկերի ֆայլի գտնվելու վայրը = ձեր microSD քարտի գտնվելու վայրը

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (նկատողություն. այս դեպքում դա/dev/sdb,/dev/sdb1- ը գոյություն ունեցող գործարանային միջնապատ էր microSD)

Ձեր RaspberriPi- ի կարգավորում

Տեղադրեք ձեր նոր microSD քարտը ազնվամորիին և միացրեք այն HDMI պորտին միացված մոնիտորով

Մուտք

օգտվող ՝ pi pass ՝ ազնվամորի

Անվտանգության համար փոխեք ձեր հաշվի գաղտնաբառը

sudo passwd pi

Քայլ 2: Միացրեք RaspberriPi Ընդլայնված Ընտրանքներ

sudo raspi-config

Ընտրեք ՝ 1 Ընդլայնել ֆայլային համակարգը

9 Ընդլայնված ընտրանքներ

A2 սերվերի անունը փոխեք այն «WIFI-OUTLET»-ի

A4 SSH Միացնել SSH սերվերը

A7 I2C Միացնել i2c ինտերֆեյսը

Միացնել անգլերեն/ԱՄՆ ստեղնաշարը

sudo nano/etc/default/ստեղնաշար

Փոխել հետևյալ տողը. XKBLAYOUT = "մենք"

Վերագործարկեք PI ստեղնաշարի դասավորության փոփոխությունների / ֆայլային համակարգի չափափոխման համար `ուժի մեջ մտնելու համար

$ sudo անջատում -r հիմա

Ավտոմատ միացեք ձեր WiFi- ին

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Ավելացրեք հետևյալ տողերը, որպեսզի ձեր ազնվամորին ինքնաբերաբար միանա ձեր տնային WiFi- ին (եթե ձեր անլար ցանցը կոչվում է «linksys», օրինակ ՝ հետևյալ օրինակում)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} Վերագործարկեք PI- ն WiFi ցանցին միանալու համար

$ sudo անջատում -r հիմա

Այժմ, երբ ձեր PI- ն վերջապես գտնվում է տեղական ցանցում, կարող եք հեռակա մուտք գործել դրան SSH- ի միջոցով: Բայց նախ անհրաժեշտ է ստանալ այն IP հասցեն, որն այն այժմ ունի:

$ ifconfig Փնտրեք «inet addr: 192.168. XXX. XXX» ՝ ձեր PI- ի IP հասցեի հետևյալ հրամանի ելքում

Գնացեք այլ մեքենա և մուտքագրեք ձեր raspberrypi ssh- ի միջոցով

$ ssh [email protected]. XXX. XXX

Քայլ 3: Սկսեք անհրաժեշտ փաթեթների տեղադրումը

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

$ sudo apt-get բարելավում

$ sudo apt-get տեղադրել vim git python- պահանջում python-gpiozero python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev python3-spidev python-spidev

Թարմացրեք տեղական ժամային գոտու կարգավորումները

$ sudo dpkg- վերակազմավորել tzdata- ն

ընտրեք ձեր ժամային գոտին `օգտագործելով ինտերֆեյսը

Կարգավորեք պարզ գրացուցակի l հրամանը [ըստ ցանկության]

vi ~/.bashrc

ավելացնել հետևյալ տողը.

կեղծանուն l = 'ls -lh'

աղբյուր ~/.bashrc

Ուղղել VIM- ի կանխադրված շարահյուսության նշումը [ըստ ցանկության]

sudo vi/etc/vim/vimrc

մեկնաբանել հետևյալ տողը.

շարահյուսությունը միացված է

Տեղադրեք i2c Python վարորդներ

Քայլ 4. Կառուցեք WEB API- ն

Հետևյալ հրահանգները թույլ կտան ձեզ կառուցել կենտրոնական հանգույց, որը բացատրում է wifi- ով միացված տարբեր վարդակներ և պատի անջատիչներ, որոնք կարող եք կառուցել, և որ սարքերը միացված և անջատված են: Սա փոքր PHP սցենար է ՝ ձեր ընտրած վեբ հոստի վրա տեղադրելու համար: Այն ունի հետևյալ API- ն ՝ դրան տեղեկատվություն ստանալու և տեղադրելու համար: Նշում. Մի մոռացեք ներառել.htaccess ֆայլը `URL- ի ճիշտ երթուղու տեղադրման համար:

Տեղադրեք «index.php», «values/» թղթապանակը և settings.php- ը (կազմաձևված ձեր սեփական արժեքներին) ՝ ձեր ընտրած PHP սերվերի վրա: «Settings.php» ֆայլում գաղտնի բանալու արժեքը պետք է համապատասխանի գաղտնի բանալու արժեքին, որը դուք կսահմանեիք «settings.py» ֆայլում: Սա հիմնական մակարդակում կանխելու է որևէ այլ վեբ տրաֆիկի կողմից արժեքներ սահմանելը / գրելը, ձեր սարքերը միացնելը, այժմ դա անելու համար ձեզ անհրաժեշտ է այս խզված API բանալին HTTP հարցման վերնագրում:

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

Ստացեք ծածկագիրը

Կլոնավորեք հետևյալ նախագիծը GitHub- ից ՝ վեբ սերվերը և վարդակից RaspberryPI գործարկելու կոդը ստանալու համար:

github.com/khinds10/PowerHub

Վեբ սերվերի վրա աշխատելիս API- ի վերջնական կետերը

myhost/message (ստացեք հաղորդագրությունների ընթացիկ փաթեթը)

myhost/message/set (HTTP POST- ը այս URL- ի հումքային տողի արժեք է ՝ նոր հաղորդագրություն սահմանելու համար)

myhost/flag/{id} (ստացեք դրոշի ներկայիս բուլյան կարգավիճակը ամբողջ թվով ՝ {id})

myhost/flag/all (ստացեք բոլոր դրոշների ընթացիկ բուլյան կարգավիճակը որպես զանգված)

myhost/flag/{id}/set (ընթացիկ բուլյան կարգավիճակը դրոշի համար դրեք «ճշմարիտ» ամբողջ թվով. {id})

myhost/flag/{id}/unset (ընթացիկ բուլյան կարգավիճակը դրոշի համար դրեք «կեղծ» ամբողջ թվով ՝ {id})

myhost/reading/{id} (ստացեք ընթերցման ընթացիկ միջին արժեքը ամբողջ թվով ՝ {id})

myhost/reading/all (ստացեք ընթացիկ միջին արժեքը բոլոր ընթերցումների համար ՝ որպես զանգված)

myhost/reading/{id}/set (HTTP POST- ը հում թվային արժեք է այս URL- ին ՝ ընթացիկ հաշվարկված միջինին նոր արժեք ավելացնելու համար). Կազմաձևում «Ընթերցումների» արժեքները հաշվարկվում են որպես վերջերս շարունակվող ընթերցման շարունակվող թվային արժեքների միջին թվեր: Հետևյալ հաստատունն այն սահմանեք, թե ամենաթարմ ընթերցումներից քանիսը պետք է ներառվեն միջինը ստանալու համար:

$ readingsAverageLimit = 5;

Տվյալների տվյալների պահպանման սերվերը կպահպանի արժեքները պարզ ֆայլերի վրա, որոնք տեղակայված են ստորև տրված պայմանականությունների անվանմամբ: Նշում. {Id} - ը կփոխարինվի մուտքի հայտի URL- ով ներկայացված իրական ամբողջ թվով:

$ valueFileFolder = 'արժեքներ' (չափման ֆայլերը պարունակող թղթապանակի անունը) $ messageFileName = 'message.msg' (հաղորդագրության տեքստային ֆայլի անունը) $ readingsFilesNames = 'ընթերցում է {id}.avg' (CSV- ի անունը միջինացված է ընթերցումների ֆայլ) $ flagFilesNames = 'flag {id}.flg' (բուլյան դրոշի արժեքի դրոշի ֆայլի անունը)

Համոզվեք, որ բոլոր արժեքային ֆայլերը գրելի են systemchmod 777 արժեքների կողմից/*

Քայլ 5: Անհրաժեշտ պարագաներ

Պահանջվող պարագաներ
Պահանջվող պարագաներ
Պահանջվող պարագաներ
Պահանջվող պարագաներ
Պահանջվող պարագաներ
Պահանջվող պարագաներ

1 դյույմ անցքի սղոց (փորվածքի համար)

5V 2 ալիքի ռելեի մոդուլ

Երկկողմանի ընդունարանի պատի ափսե

Երկկողմանի ընդունիչ

Պի eroրոյական Վ

Surface Mount Backbox Dual Gang

Սպիտակ լուսավորված կոճակներ

Քայլ 6: Ելքի կառուցում

Կառուցեք վարդակից
Կառուցեք վարդակից

Break Outlet ներդիրները

Կոտրեք վարդակից կողքի ներդիրը, որպեսզի յուրաքանչյուր վարդակից ինքնուրույն միացվի/անջատվի

Քայլ 7: Տեղադրեք կոճակներ

Տեղադրեք կոճակներ
Տեղադրեք կոճակներ
Տեղադրեք կոճակներ
Տեղադրեք կոճակներ

Ելքի երեսին, օգտագործելով 1 անցքի սղոցը, կտրեք 2 անցք կոճակների համար, որոնք տեղադրվելու են վարդակների կողքին

Բաղադրիչների չափերի ստուգում

Համոզվեք, որ բոլոր բաղադրիչները տեղավորվում են ելքի մակերեսի ամրացման տուփի մեջ

Քայլ 8: Լարային ռելե

Լարային ռելե
Լարային ռելե
Լարային ռելե
Լարային ռելե

Հաղորդալարերը փոխանցեք վարդակին, երկարացման լարից դեպի պատ, միացրեք գետինը (կանաչ) և չեզոքը (սպիտակ) անմիջապես վարդակին: Թեժի (սևի) դեպքում դրանք միացրեք ռելեին, այնուհետև ռելեից դեպի յուրաքանչյուր վարդակից տաք միակցիչներ անհատապես

Քայլ 9. Լարերի և մոնտաժի լրացուցիչ պատկերներ

Լարերի և մոնտաժման լրացուցիչ պատկերներ
Լարերի և մոնտաժման լրացուցիչ պատկերներ

Քայլ 10: Էլեկտրագծերի դիագրամ

Հաղորդալարերի դիագրամ
Հաղորդալարերի դիագրամ

Օգտագործեք դիագրամը ՝ բաղադրիչները ճիշտ միացնելու համար ՝ RaspberryPI Python կոդի հետ աշխատելու համար:

Քայլ 11: Փորձեք չոր վազք

Փորձնական չոր վազք
Փորձնական չոր վազք
Փորձնական չոր վազք
Փորձնական չոր վազք
Փորձնական չոր վազք
Փորձնական չոր վազք

Վերջնական հավաքումից հետո, նախքան անցքի միավորը միասին պտուտակելը, սարքը չորացրեք `համոզվելու համար, որ շորտեր և վատ էլեկտրագծեր չկան:

Քայլ 12: Սահմանեք գործարկման սկրիպտները

crontab -e

ավելացնել հետևյալ տողերը

@reboot python /home/pi/PowerHub/device/outlet/buttons.py @reboot python /home/pi/PowerHub/device/outlet/relay.py

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