Բովանդակություն:
- Քայլ 1: Այն, ինչ ձեզ հարկավոր կլինի
- Քայլ 2: Կարգավորեք վարդակները
- Քայլ 3: Ստեղծեք PubNub հաշիվ
- Քայլ 4: Պատրաստեք ազնվամորի Պի
- Քայլ 5: Շղթայի ստեղծում
- Քայլ 6: Ստացեք ձեր ՌԴ կոդերը
- Քայլ 7: ningրագրի գործարկում
- Քայլ 8: Գործարկում գործարկման ժամանակ
- Քայլ 9: Ավելի շատ անջատիչների ավելացում
- Քայլ 10: Դա ավելի առաջ տանելը
- Քայլ 11: Վարկեր
Video: Էժան և արդյունավետ տան ավտոմատացում Raspberry Pi- ով. 11 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:51
Ես միշտ ցանկացել եմ, որ կարողանամ անլար կառավարել լույսերը, բայց առևտրային տարբերակները սովորաբար թանկ են: Philips Hue- ի լույսերը կարժենան մոտ 70 դոլար, իսկ WiFi- ով միացված լույսերը նույնպես թանկ են: Այս ձեռնարկը ձեզ կասի, թե ինչպես կառավարել մինչև հինգ լույս/լամպ/Սուրբ Christmasննդյան լուսամփոփներ մոտ 50 դոլարով և կարող է ընդլայնվել ՝ ներառելով նաև ավելի շատ լույսեր:
Քայլ 1: Այն, ինչ ձեզ հարկավոր կլինի
Նյութեր:
Raspberry Pi Zero W (անլար թողարկում)
Micro SD քարտ (առնվազն 4 գբ)
Մինի HDMI- ից HDMI մալուխ/փոխարկիչ (կա տարբերություն մինի և միկրոյի միջև, համոզվեք, որ ձեռք բերեք ճիշտը):
Միկրո USB USB մալուխ/փոխարկիչ
USB ստեղնաշար
Նշում. Ես Amazon- ից ստացել եմ Raspberry Pi Zero W մեկնարկային հավաքածու, որն ուղեկցվել է Raspberry Pi Zero W- ով, SD քարտով, պատյանով, հոսանքի մալուխով, HDMI փոխարկիչով և USB փոխարկիչով: Ընդամենը 30 դոլարով դա բավականին լավ տարբերակ է (հղում)
Դուք կարող եք օգտագործել Raspberry Pi- ի այլ մոդել, սակայն Raspberry Pi- ն պետք է ունենա ինտերնետ կապի որևէ ձև, իսկ Pi Zero W- ն ամենաէժան տարբերակն է:
Հեռակա վարդակներ - ես դրանք օգտագործել եմ
ՌԴ հաղորդիչ և ընդունիչ (Նշում. Հաղորդիչի/ստացողի հաճախականությունը պետք է համապատասխանի հեռավոր վարդակների հաճախականությանը) - ես դրանք օգտագործել եմ
Հաղորդալար ալեհավաքի համար (ես օգտագործել եմ 22 չափիչ պինդ միջուկի պղնձե մետաղալար, այլ մետաղալարերը կարող են աշխատել)
Breadboard, Jumper մետաղալարեր, 40 պին տղամարդ-արու վերնագիր
Softwareրագրային ապահովում:
Raspberry Pi OS (Ներբեռնեք Raspbian Desktop)
Etcher սկավառակի պատկերիչ (Pi OS- ն SD քարտին գրելու համար)
Գործիքներ:
Sոդման երկաթ
Համակարգիչ Pi OS և Etcher բեռնելու համար
Քայլ 2: Կարգավորեք վարդակները
Սկսեք վարդակները միացնելով վարդակից: Հետևեք ներառված հրահանգներին `դրանք կարգավորելու համար և միացրեք լույսերը/սարքերը: Համոզվեք, որ ձեր հեռակառավարիչը ճիշտ է զուգակցված և վերահսկում է վարդակները:
Քայլ 3: Ստեղծեք PubNub հաշիվ
PubNub- ը անվճար ինտերնետ սերվեր է, որը թույլ է տալիս շփվել սարքերի միջև ՝ աշխարհի ցանկացած վայրում: Պիթոնի սցենարը հաղորդագրություններ է ստանում վեբ էջից և օգտագործում է հաղորդագրության մեջ եղած տեղեկությունները ՝ լույսերը միացնելու կամ անջատելու համար: Դուք կարող եք գրանցվել ձեր անվճար հաշվի համար այստեղ: Գրանցվելուց հետո մուտք գործեք ձեր հաշիվ: Սա ձեզ կբերի հավելվածների կառավարման էջ: Կտտացրեք «Ստեղծել նոր ծրագիր»: Appրագրին տվեք անուն, այնուհետև ընտրեք այն ծրագրերի ցանկից (Եթե սա ձեր առաջին ծրագիրն է, այն միակը կլինի) Սա ձեզ կբերի ծրագրի բանալիների էջ: Կտտացրեք «Դեմո ստեղնաշարի» վրա և կտեսնեք երեք տարբեր բանալիներ: Շարունակեք այս էջը, ավելի ուշ ձեզ հարկավոր կլինեն այս բանալիները: Այժմ, երբ ունեք ձեր PubNub հաշիվը, կարող եք կարգավորել ձեր ազնվամորու pi- ն:
Քայլ 4: Պատրաստեք ազնվամորի Պի
Ներբեռնեք Etcher- ը և Raspberry Pi OS- ն ձեր համակարգչին (հղումները մասերի ցանկում)
Տեղադրեք Etcher ձեր համակարգչի վրա և բացեք (անհրաժեշտության դեպքում) Raspberry Pi OS- ն: Տեղադրեք ձեր Micro SD քարտը ձեր համակարգչի մեջ և բացեք Etcher: Կտտացրեք «Ընտրել պատկեր» և նավարկեք դեպի չբեռնված Raspberry Pi OS ֆայլ: Ընտրեք այն, այնուհետև կտտացրեք «Ընտրել սկավառակ» և ընտրեք ձեր միկրո SD քարտը ցուցակից: Կտտացրեք «Flash» և սպասեք Etcher- ի ավարտին: Etcher- ի ավարտից հետո հեռացրեք ձեր SD քարտը ձեր համակարգչից (Etcher- ն ինքնաբերաբար դուրս է հանում այն) և տեղադրեք այն ձեր Raspberry Pi- ի մեջ: Այս պահին ձեզ հարկավոր կլինի ձեր Raspberry Pi- ն միացնել մոնիտորին HDMI փոխարկիչով: Միացրեք ստեղնաշարը (և մկնիկը, եթե ունեք մի քանի USB հանգույց) և միացրեք հոսանքի մալուխը: Կան երկու միկրո USB պորտեր: Մեկը էներգիայի համար է, մյուսը `իրական USB պորտ: Pi- ի ծայրին ամենամոտը էներգիան է, իսկ կեսին `USB- ը: Ձեր ազնվամորի pi- ն այժմ կսկսի բեռնվել: Այն կարող է մի քանի անգամ վերագործարկվել առաջին բեռնման ընթացքում, բայց դա նորմալ է: Երբ ձեր ազնվամորի pi- ն սկսվի, միացրեք այն ձեր WiFi- ին: Այն WiFi- ին միացնելուց հետո կարող եք օգտագործել SSH սերվեր, բայց ինձ համար այժմ ավելի հեշտ է օգտագործել GUI- ն: Բացեք տերմինալի պատուհան և մուտքագրեք հետևյալ հրամանները.
sudo pip3 տեղադրել 'pubnub == 3.9.0'
cd git clone git: //git.drogon.net/wiringPi git clone
sudo git կլոն
sudo chown root.root/var/www/rfoutlet/codesend sudo chmod 4755/var/www/rfoutlet/codesend
cd էլեկտրագծեր
./ կառուցել
Այժմ, բացեք Raspberry Pi ֆայլերի դիտարկիչը և կտեսնեք pi-home-automation թղթապանակը: Կրկնակի սեղմեք դրա վրա, և դուք պետք է տեսնեք մի ֆայլ, որը կոչվում է RFControl.py: Պատճենեք այն (հակառակ կտտոցով և ընտրեք «Պատճենել»), այնուհետև վերադարձեք pi թղթապանակ և տեղադրեք այնտեղ:
Անջատեք ձեր ազնվամորու pi- ն (կա՛մ ընտրացանկից, կա՛մ հրամանի տողից sudo poweroff- ով գործարկելով) և անջատեք այն, երբ կանաչ լույսը դադարի բռնկվել:
Քայլ 5: Շղթայի ստեղծում
Այժմ ժամանակն է ստեղծել միացում: Ես օգտագործեցի տախտակ, բայց դուք կարող եք դա անել, ինչպես ցանկանում եք:
Նախ, մենք պետք է ալեհավաք ստեղծենք ՌԴ հաղորդիչի համար: Այս ուսանելի ձեռնարկը պատմում է, թե ինչպես պատրաստել ալեհավաք ՌԴ հաղորդիչի համար: Հետևեք հրահանգներին, այնուհետև այն կպցրեք հաղորդիչի ալեհավաքի քորոցին (այն, ինչ ես օգտագործել էի, պիտակավորված էր ANT), հաղորդիչին ամենամոտ կարճ կողմով
Լարել հաղորդիչը
Հաղորդիչը օգտագործում է հետևյալ կապերը.
ՏՎՅԱԼՆԵՐ. GPIO 17, Ֆիզիկական փին 11
VCC: Ազնվամորի Pi 5v, Ֆիզիկական քորոց 2
GND: Ազնվամորի Pi GND, ֆիզիկական քորոց 6
Լարել ընդունիչը
Ստացողը օգտագործում է այս կապերը.
GND: Ազնվամորի Pi GND, ֆիզիկական կապ 9
VCC: Ազնվամորի Pi 5v, Ֆիզիկական քորոց 4
ՏՎՅԱԼՆԵՐ. GPIO 27, Ֆիզիկական կապ 13 (Իմ օգտագործած ընդունիչի վրա երկու տվյալների կապ կա, և ես օգտագործել եմ VCC- ին ամենամոտ մեկը)
Քայլ 6: Ստացեք ձեր ՌԴ կոդերը
Շղթան ձեր Raspberry Pi- ին ամրացնելուց հետո երկու անգամ ստուգեք այն `համոզվելու համար, որ ամեն ինչ տեղում է, այնուհետև նորից միացրեք այն: Միացնելուց հետո բացեք տերմինալը և մուտքագրեք
sudo/var/www/rfoutlet/RFSniffer
Հաջորդը, բացեք RFControl ծրագիրը: Տերմինալի պատուհանը և ծրագրի պատուհանը կողք կողքի դնելը կարող է օգտակար լինել հաջորդ քայլին:
Այժմ ձեզ հարկավոր կլինի հեռակառավարման վահանակը, որը ներառված էր վարդակից: Պահեք այն ընդունիչին մոտ և սեղմեք յուրաքանչյուր առանձին կոճակ: Երբ սեղմում եք կոճակը, կտեսնեք էկրանին տպված երկու թվեր: Դրանցից մեկը կլինի վեց կամ յոթանիշ կոդ, իսկ մյուսը ՝ եռանիշ կոդ: Willրագրում պետք է խմբագրեք ծածկագրերի բառարանը: Enterրագրում համապատասխան անջատիչի տեղը մուտքագրեք 7 նիշանոց կոդը, և միացման/անջատման յուրաքանչյուր կոճակի համար տեղադրեք եռանիշ կոդը (սա երկարությունն է) ծրագրի համապատասխան անջատիչի len- ում:
Օրինակ, եթե միացված 1 -ը ունի 1234567 կոդ, անջատված կոդ ՝ 7654321 և երկարություն ՝ 890, ծածկագիրն այսպիսի տեսք կունենա.
ծածկագրեր = {
'switch1': {'on': 1234567, #Սա անջատիչ 1 -ն է 'off': 7654321, #սա անջատիչն է 1 անջատված 'len': 890, #սա անջատիչի 1 կոդի երկարությունն է}, 'switch2': {… },…}
Կրկնեք սա յուրաքանչյուր կոճակի համար: Մինչ խմբագրում եք այս ֆայլը, փոխեք «YOUR-SUB-KEY» տողերը ձեր PubNub բաժանորդագրման բանալին, իսկ «YOUR-PUB-KEY»-ը ՝ ձեր հրապարակման բանալին:
Յուրաքանչյուր կոճակ գրանցվելուց հետո կարող եք անցնել հաջորդ բաժին:
Քայլ 7: ningրագրի գործարկում
Այժմ, երբ դուք ունեք ձեր բոլոր ծածկագրերը, գնացեք այս GitHub էջին (ձեր համակարգչում, այլ ոչ թե ազնվամորու pi) և կտտացրեք կանաչ կոճակին, որն ասում է «Clone or download», այնուհետև կտտացրեք «Ներբեռնել ZIP»: Այս ֆայլը ներբեռնելուց հետո բացեք այն և բացեք թղթապանակը: Բացեք main.js. անունով ֆայլը: Willրագրում պետք է մուտքագրեք ձեր բաժանորդագրման և հրապարակման բանալիները ՝ փոխարինելով «YOUR-PUB-KEY»-ը ձեր հրապարակման բանալիով և «YOUR-SUB-KEY»-ը ՝ ձեր բաժանորդագրության բանալիով:
Հաջորդը, վերադարձեք ձեր Raspberry Pi և մուտքագրեք
python3 RFControl.py
Երբ այն տպում է «Պատրաստ է», վերադառնաք ձեր համակարգիչ և բացեք index.html ֆայլը վեբ դիտարկիչում ՝ հակառակ սեղմումով, ընտրեք «Բացել» և ընտրեք ձեր նախընտրած դիտարկիչը: Դուք պետք է տեսնեք 5 կոճակի 2 սյունակ, որոնց միջև կան անջատիչների անուններ: Սեղմեք ցանկացած կոճակ: Եթե այն ճիշտ է վերահսկում վարդակը, հիանալի է: Եթե ոչ, ահա փորձելու մի քանի բան.
- Համոզվեք, որ Raspberry Pi- ն հաղորդագրություններ է ստանում: Այն պետք է տպվի էկրանին, երբ այն ստանում է հաղորդագրություն վեբ էջից: Եթե ոչ, համոզվեք, որ ձեր բաժանորդագրության/հրապարակման բանալիները ճիշտ են:
- Եթե Raspberry Pi- ն հաղորդագրություններ է ստանում, համոզվեք, որ ձեր ՌԴ կոդերը ճիշտ են: Համոզվեք, որ ձեր վարդակները զուգորդված են ձեր հեռակառավարման վահանակի հետ, ձեր հեռակառավարման վահանակը կարող է դրանք կառավարել, և որ ծրագրում մուտքագրված կոդերը ճիշտ են:
- Եթե ՌԴ կոդերը ճիշտ են, համոզվեք, որ ձեր Raspberry Pi- ն գտնվում է վարդակների տիրույթում: Եթե նրանք սկսում են աշխատել այն ավելի մոտեցնելուց հետո, գուցե անհրաժեշտ լինի նորից կատարել ձեր ալեհավաքը:
- Եթե նրանք դեռ չեն աշխատում, խնդրում եմ ասեք ձեր խնդիրը մեկնաբանություններում, և ես կփորձեմ օգնել դրան:
Քայլ 8: Գործարկում գործարկման ժամանակ
Ձեր python ծրագիրը գործարկման սկզբում գործարկելու համար մուտքագրեք սա ձեր ազնվամորի pi տերմինալի մեջ.
crontab -e
Հաջորդը, գնացեք ֆայլի ներքևում և մուտքագրեք սա.
@reboot python3 /home/pi/RFControl.py &
Սա կստիպի ձեր Python սցենարը գործարկել ամեն անգամ գործարկման ժամանակ: Այժմ վերագործարկեք ձեր Raspberry Pi- ը:
Քայլ 9: Ավելի շատ անջատիչների ավելացում
Եթե ցանկանում եք ավելացնել ավելի շատ վարդակներ, հետևեք այս հրահանգներին.
Բացեք RFControl.py ձեր Raspberry Pi- ի վրա և նոր անջատիչ ավելացրեք անջատիչների բառարանին:
Օրինակ:
անջատիչներ = {
… Այլ անջատիչներ… 'NAME-OF-SWITCH': {'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz,},}
Հաջորդը, ձեր վեբ հավելվածում ավելացրեք նոր կոճակ ՝ ձեր համակարգչում խմբագրելով անջատիչների փոփոխականը main.js- ում:
Օրինակ:
var անջատիչներ = [… Հին անջատիչներ… ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];
Փոխարինեք NAME-TO-DISPLAY- ը այն անունով, որը կցանկանայիք, որ այն ցուցադրվեր վեբ էջում, և NAME-OF-SWITCH երկու ֆայլերի վրա `ինչ որ ձեզ դուր եկավ: Այնուամենայնիվ, այն պետք է յուրահատուկ լինի մյուսներից:
Քայլ 10: Դա ավելի առաջ տանելը
PubNub- ն աջակցվում է բազմաթիվ տարբեր հարթակներում, ինչը նշանակում է, որ կարող եք հաղորդագրություններ ուղարկել գրեթե ցանկացած սարքից: Ես օգտագործել եմ Raspberry Pi AIY Voice հավաքածուն և PubNub- ը ՝ ձայնով հրամաններ ուղարկելու համար, բայց դա կարող է լինել ավելի ուշ հրահանգի թեման: Շնորհակալություն իմ Instructable- ը կարդալու համար: Հուսով եմ, որ այն օգտակար էր:
Քայլ 11: Վարկեր
Շնորհակալություն Թիմ Լելանդին ՌԴ հաղորդիչ ստեղծելու ձեռնարկի համար. Ձեռնարկ
Շնորհակալություն diy_bloke- ին ալեհավաք ստեղծելու ձեռնարկի համար. Ձեռնարկ
Շնորհակալ եմ նաև այն բոլոր մյուսներին, ովքեր տեղադրեցին ձեռնարկներ առցանց, որոնք ես դիտեցի օգնության համար:
Խորհուրդ ենք տալիս:
Infinity Gauntlet վերահսկվող տան ավտոմատացում. 8 քայլ (նկարներով)
Infinity Gauntlet Controlled Home Automation. Իմ նախորդ նախագծում ես պատրաստել էի անսահմանափակ ձեռնոց, որը վերահսկում է լույսի անջատիչը: Ես ուզում էի օգտագործել վեց քար, և յուրաքանչյուր քարը կարող է կառավարել սարքը, դռան կողպեքը կամ լուսավորությունը: Այսպիսով, ես պատրաստեցի տան ավտոմատացման համակարգ `օգտագործելով անսահմանության ձեռնոց: Այս նախագծում
IR տան ավտոմատացում `օգտագործելով ռելե. 6 քայլ (նկարներով)
IR տան ավտոմատացում `օգտագործելով ռելե. Infared Remote Home Automation System (arnգուշացում. Կրկնօրինակեք նախագիծը ձեր ռիսկով: Այս նախագիծը ներառում է բարձր լարման)
Ինչպես կատարել IoT- ի վրա հիմնված տան ավտոմատացում NodeMCU սենսորների կառավարման ռելեի միջոցով. 14 քայլ (նկարներով)
Ինչպես կատարել IoT- ի վրա հիմնված տան ավտոմատացում NodeMCU սենսորների կառավարման ռելեի միջոցով. IoT- ի վրա հիմնված այս նախագծում ես Blynk- ով և NodeMCU կառավարման ռելեի մոդուլով իրական տնային ավտոմատացում իրական ժամանակի հետադարձ կապով: Ձեռնարկի ռեժիմում այս ռելեի մոդուլը կարող է կառավարվել բջջայինից կամ սմարթֆոնից և, ձեռքով անջատիչից: Ավտոմատ ռեժիմում այս սարսափը
Էժան և արդյունավետ desulfator: 6 քայլ (նկարներով)
Էժան և արդյունավետ աղազերծիչ. Տարիներ առաջ ձկնորս ընկերոջս համար որպես նվեր գնել էի վերալիցքավորվող ջահ: Ինչ -ինչ պատճառներով ես չկարողացա նրան նվեր տալ: Ներդրեցի նկուղը և մոռացա դրա մասին: Ես նորից գտա այն մի քանի ամիս առաջ և որոշեցի օգտագործել այն:
Պարզ տան ավտոմատացում ՝ օգտագործելով Raspberry Pi3 և Android Things: 5 քայլ (նկարներով)
Պարզ տան ավտոմատացում ՝ օգտագործելով ազնվամորի Pi3 և Android բաներ. Գաղափարը կայանում է “ խելացի ՏՆԱ նախագծման մեջ: որտեղ կարելի է կառավարել կենցաղային սարքերը ՝ օգտագործելով Android Things և Raspberry Pi: Նախագիծը բաղկացած է տնային սարքավորումների վերահսկումից, ինչպիսիք են Լույսը, օդափոխիչը, շարժիչը և այլն: Պահանջվող նյութեր. Raspberry Pi 3HDMI Ca