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

DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է Raspberry Pi- ի միջոցով. 11 քայլ (նկարներով)
DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է Raspberry Pi- ի միջոցով. 11 քայլ (նկարներով)

Video: DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է Raspberry Pi- ի միջոցով. 11 քայլ (նկարներով)

Video: DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է Raspberry Pi- ի միջոցով. 11 քայլ (նկարներով)
Video: 10+ խորհուրդներ այն մասին, թե ինչպես արագ և անվտանգ լիցքավորել ձեր հեռախոսը 2024, Հուլիսի
Anonim
DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է ազնվամորի պիի միջոցով
DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է ազնվամորի պիի միջոցով
DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է ՝ օգտագործելով Raspberry Pi
DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է ՝ օգտագործելով Raspberry Pi
DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է ՝ օգտագործելով Raspberry Pi
DIY ցածր լարման արտաքին լուսավորություն, որը վերահսկվում է ՝ օգտագործելով Raspberry Pi

Ինչո՞ւ:

Պետք է խոստովանեմ, որ ես, ինչպես և շատ ուրիշներ, իրերի ինտերնետի (կամ IoT) մեծ երկրպագու եմ: Նաև ես դեռ հոգնել եմ `միացնելով իմ բոլոր լույսերը, տեխնիկան, մուտքի դուռը, ավտոտնակի դուռը և ով գիտի, թե ինչ այլ բան անտեսված ինտերնետից: Հատկապես այնպիսի իրադարձությունների հետ, ինչպիսիք են Amazon S3 ծառայությունների վերջին վթարը և անվտանգության հետևողական խոցելիությունները: Թե՞ մեզ նույնիսկ պատկանում են IoT սարքերը, որոնք օգտագործում ենք: Ի՞նչ անել, եթե ձեր ինտերնետային մատակարարը դադարեցնի ծառայությունը կամ այն անջատվի: Ինձ համար անհաջողության չափազանց շատ կետեր:

Անցած 3 տարիների ընթացքում ես նման պայթյուն ունեցա ՝ ուսումնասիրելով և սովորելով Raspberry Pi- ի հետ և այդ ամբողջ ընթացքում հնարավորություն ունեցա ամեն ինչ դարձնել այգեգործության կաթիլային ավտոմատացված համակարգից, իմ հին լազերային տպիչը վերակենդանացնելով `ավելացնելով ցանցի միացումն ու արագությունը: ինչ -որ քաղցր ռետրո խաղերի վրա (չնայած որ Arduino- ն դեռ իմ առաջին սերն է …):

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

Շնորհակալություններ

TheFreeElectron - Պարզ և ինտուիտիվ վեբ միջերես ձեր Raspberry Pi- ի համար.

CodePen - զարմանալի աղբյուր CSS- ի ոգեշնչման և ուսուցման համար

Code Academy.

Հիմնական ակնարկ

Lowածր լարման հզորություն (12 Վ լամպեր/ռելեներ և 5 Վ RPi/ռելեներ) տրամադրվում է մեկ ATX սնուցման աղբյուրից

Raspberry Pi- ի տեղադրում Apache- ով (վեբ սերվեր), WiringPi (GPIO կառավարում) ՝ օգտագործելով PHP (սերվերի կողմից) հիմնական էջ Javascript- ով (օգտագործողի կողմից) և Python (սցենարներ) ՝ GPIO- ի կարգավիճակը վերահսկելու և հիմնական վեբ էջի համար համապատասխան տեղեկատվություն ցուցադրելու համար: Ստուգման տուփեր (քողարկված), որոնք օգտագործվում են GPIO կապումներին վերահսկելու համար, որոնք վերահսկում են ռելեներ, որոնք վերահսկում են լույսերը: Դա հիմնականում կախարդական է:

Theանապարհին դուք կտեսնեք ենթակառուցվածքների նկարներ (խողովակներ, միացման տուփեր և այլն) `մի փոքր դուրս այս հրահանգի շրջանակներից: Ես կենտրոնանալու եմ համակարգի էլեկտրոնային փորոտիքի վրա: Ձեզանից կախված է, որ այն կդարձնի եղանակի ապացույց (անհրաժեշտության դեպքում) կամ գեղեցիկ (անհրաժեշտության դեպքում) կամ երկուսն էլ (ցանկալի):

Հուզված եմ կիսվել և անհամբերությամբ սպասում եմ այս համայնքի կարծիքներին: Եկեք շարժվենք - սկսեք ավարտել:

Քայլ 1: Սարքաշար, մասեր և գործիքներ

Սարքավորումներ, մասեր և գործիքներ
Սարքավորումներ, մասեր և գործիքներ

Կա՞ն ավելի լավ մասեր օգտագործելու համար: Այո

Արդյո՞ք ես իմ համակարգը համարժեք աշխատել այս մասերի հետ: Այո

Պետք է մի փոքր այլ բան փորձե՞լ: Ինչու՞ ոչ: Սարքաշար/ծրագրակազմ

  1. RaspberryPi - որքան մաքուր, այնքան լավ և RPi3 հիանալի, քանի որ ձեզ անհրաժեշտ կլինի wifi

    • Ենթադրենք. Դուք ունեք Rasbian- ի նոր բեռ
    • Ենթադրենք. Դուք փոխել եք կանխադրված գաղտնաբառը և միացրել եք SSH- ը (էկրանով)
    • Կամ առանց էկրանի (տես Քայլ 1)
  2. ATX էներգիայի մատակարարում. կապահովի RPi- ն էլեկտրաէներգիա ՝ առանց հոսանքի ծծման ամբողջ համակարգը գործարկելու
  3. Բացօթյա լույսեր (12 վ) - դրանք հիանալի էին. Ցածր հզորություն, արժանապատիվ ելք, ողջամիտ գին
  4. 5 վ և/կամ 12 վ ռելեի մոդուլներ
  5. Որոշ տեսակի բնակարաններ - ես օգտագործել եմ 8X8X4 PVC միացման տուփ
  6. Գրառման գրքույկ ++ w/ NppFTP - օգտագործվում է RPi ֆայլերի արագ բեռնման և խմբագրման համար
  7. Putեփամածիկ - օգտագործվում է RPi- ի վրա մի քանի լրացուցիչ փաթեթ տեղադրելու համար

Մասեր

  1. Բացօթյա գնահատված 12 վ հոսանքի մալուխ
  2. Լարային կեռեր
  3. 1/2 "PVC և որոշ անկյան միացումներ - 2 ոտք և 2 ուղղանկյուն յուրաքանչյուր առանձին գծի համար, որը նախատեսում եք վազել
  4. Որոշ Ethernet մալուխ
  5. Հաղորդալարերի ցատկողներ `արական/իգական տարբեր կոմբոներ
  6. Պատրաստեք ձեր սեփական Molex միակցիչները
  7. Atերմային նեղացման խողովակ
  8. Էլեկտրական ժապավեն
  9. MicroUSB մալուխ
  10. Լրացուցիչ. Այս մետաղալարերի միակցիչները հիանալի են. Դրանք օգտագործեք անընդհատ (մանկական էներգիայի մեքենաներ, խելացի այգի (էլեկտրահաղորդիչ միակցիչներ) և ATX- ին RPi- ին միացնող USB հոսանքի լար)

Գործիքներ

  1. Լավ զույգ մետաղալարեր `ավելի փոքր կողմում
  2. Ֆիլիպս պտուտակահան
  3. Փոքր զույգ ասեղ քթի տափակաբերան աքցան
  4. Լրացուցիչ. Վոլտմետր ՝ շարունակականության ստուգիչով - շատ լարեր և շատ օգտակար խնդիրների ախտորոշման համար…
  5. Որոշ ժամանակ

Քայլ 2: Իմացեք ձեր էներգիայի մատակարարումը

Getանոթացեք ձեր էներգիայի մատակարարմանը
Getանոթացեք ձեր էներգիայի մատակարարմանը
Getանոթացեք ձեր էներգիայի մատակարարմանը
Getանոթացեք ձեր էներգիայի մատակարարմանը

Հայացք նետելով լարերի այն խառնաշփոթին, որոնք դուրս են գալիս ձեր ATX սնուցման աղբյուրից: Կախված ձեր տարիքից, դուք կունենաք հիմնական մոբո միակցիչ (20-22 կապում - պատկերված է pinout) և էներգիա բոլոր տեսակի այլ իրերի համար `կրիչներ, գրաֆիկական քարտեր, օժանդակ սնուցում և այլն:

  • +5VSB (Stand By) գիծը մանուշակագույն է: Սա նվիրված կլինի ձեր RPi - power- ին ամբողջ ժամանակ
  • PS_ON տողը կանաչ է: Երբ սա միացված է գետնին, այն կմիացնի կարմիր և դեղին պաշարները
  • +5V գծերը կարմիր են: Մեկ գիծը կարող է սնուցել 2-3 5 վ ռելեներ
  • +12V տողերը դեղին են: Արտաքին լուսավորությունը միացնելու համար ձեզ հարկավոր կլինի 3-4 հատ
  • GROUND/COMMON տողերը սև են: Մյուս գույների համար ձեզ հարկավոր կլինի դրանցից մի քանիսը
  • Մնացած բոլոր գույները չեն օգտագործվի այս նախագծի համար

Քայլ 3: Պատրաստեք էլեկտրամատակարարումը

Նախ, ես մի փոքր հերքում եմ.

Դուք գործ ունեք գծային էներգիայի հետ, եթե չգիտեք/կամ հարգեք այն, ինչ անում եք, կարող եք իսկապես վնասել ինքներդ ձեզ, կամ ավելի վատ… Շարունակելուց առաջ համոզվեք, որ այս անգամ և ԱՄԵՆ IMEԱՄԱՆԱԿ աշխատում եք անջատված ATX հզորությամբ: մատակարարեք և ժամանակ տվեք լիցքաթափվելուց առաջ այն բացելուց: Ես պատասխանատվություն չեմ կրում ձեր չպահպանելու և մի քանի պարզ կանոնների չպահպանման համար ՝ ձեզ ապահով պահելու համար:

ԼԱՎ! Առաջ անցնել!

  1. Անջատեք էլեկտրասնուցումը և սպասեք 10-15 րոպե, մինչև կոնդենսատորները լիցքաթափվեն
  2. Օգտագործեք Phillips պտուտակահան և հանեք պտուտակները հոսանքի աղբյուրի պատյանից (ՏՀՏ, երաշխիքը ուժը կորցրած է. Լիցքավորման լավ պատճառ)
  3. Անջատեք բոլոր Molex/միակցիչները, որպեսզի ունենաք մի շարք անվճար լարեր
  4. Առանձնացրեք և կազմակերպեք մանուշակագույն, կանաչ, դեղին, կարմիր և սև լարերը
  5. Caseգուշորեն կտրեք պատյանի ներսում մնացած բոլոր լարերը. Դրանք ձեզ հարկավոր չեն, և դա կխնայի տարածք
  6. Կտրված լարերի ծայրերը մի փոքր էլեկտրական ժապավենով փակեք
  7. Կապեք այդ պատյանը միայն լարերով, որոնք ձեզ անհրաժեշտ են մատակարարումից, համոզվեք, որ լարերը կտրված են ոչ թե տաքացուցիչների կամ օդափոխիչների մոտ

Քայլ 4. Ուժ Pi- ին:

Իշխանություն Pi- ին
Իշխանություն Pi- ին
Իշխանություն Pi- ին
Իշխանություն Pi- ին
Իշխանություն Pi- ին
Իշխանություն Pi- ին

Նախքան ռելեների վերահսկումը սկսելը, եկեք RPi- ն ամբողջովին միացնենք:

Հիշեք, ես չեմ լուսաբանում RPi- ի սկզբնական կարգավորումը (ՕՀ -ի SD քարտում բեռնում, նոր գաղտնաբառ սահմանելը և SSH- ի միացում) հիմունքները. Կրկին ստուգեք ապարատային/ծրագրային բաժինը (քայլ 2) `հղումների ծածկման հոյակապ հղումների համար: այդ բաները:

Նայեք առաջին նկարին. Եկեք ստեղծենք հիբրիդային լար, որը մանուշակագույն գիծը ATX- ից կտանի դեպի RPi:

USB to ATX հոսանքի լար

  1. Օգտագործելով ձեր մետաղալարերը, կտրեք ձեր միկրո USB լարը ավելի մոտ USB ծայրին, քան միկրո USB ծայրին
  2. Careգուշորեն հանեք մալուխի արտաքին թևը
  3. Դուք պետք է ունենաք 4 լար (սև, կարմիր, կանաչ և սպիտակ)
  4. Թողեք սևի և կարմիրի 1/2 դյույմից մինչև 3/4 դյույմ և այդ ծայրերը հանեք, որպեսզի պղնձը բացահայտվի
  5. Ամբողջությամբ կտրեք Կանաչն ու Սպիտակը, դրանք ձեզ պետք չեն: Սա միայն ուժի համար է, ոչ մի տվյալ
  6. Վերցրեք մի քանի լարեր, որոնք կտրել եք ձեր ATX սնուցման աղբյուրից (կարմիր և սև)
  7. Միացրեք դրանք USB լարին

    • Դա անելու մի քանի եղանակ ՝ երկարակեցության կարգով.

      • (Ա) Պոկեց երկու ծայրերը, դրանք սոսնձեցրեց, այնուհետև օգտագործեց մի փոքր ջերմություն ՝ այդ ամենը նվազեցնելու համար
      • (B) Պտտեք երկկողմանի ծայրերը երկայնքով, այնուհետև տաքացեք
      • (C) Միացրած երկու ծայրերը միացրեք փոքր մետաղալարերի ընկույզներով
      • (D) Պտտեք երկու շերտավոր ծայրերը միասին և փաթեթավորեք էլեկտրական ժապավենով
  8. Եթե դուք օգտագործում եք միակցիչները, պոկեք մյուս ծայրերը և ներխուժեք 1/4 " - 3/8" արժողությամբ միակցիչի մեջ (անպայման համապատասխանեք դրական և բացասական կողմերին)
  9. Եթե միակցիչ եք օգտագործում, ATX- ից հանեք մանուշակագույն մետաղալարը և նորից սևը, դիտեք դրական և բացասական (մանուշակագույնից կարմիր և սևից սև)
  10. Եթե միակցիչ չեք օգտագործում, պարզապես դրանք ամրացրեք:

Էներգամատակարարմանն ու RPi- ին միանալուց հետո կրկնակի ստուգեք `համոզվելու համար, որ կողքից կախված այլ լարեր չե՞ն կախված և միացրեք էլեկտրասնուցումը: Էներգամատակարարումը միացնելիս պետք է ունենաք աշխատող Raspberry Pi:

Եթե ոչ - կրկնակի ստուգեք ձեր կապերը, դրականը, հիմքը և այլն:

Զառ չկա՞ Օգտագործեք ձեր վոլտմետրերի անընդհատության ստուգիչը `ձեր լարը ստուգելու համար: Երկու ծայրերին դիպչելիս պետք է ձայնային ազդանշան լսել: Բացի այդ, ստուգեք, որ ATX սնուցման աղբյուրի մանուշակագույն գիծը +5 վ է:

Դեռ չե՞ք գնում: Փորձեք կարմիր մետաղալար +5 վ -ով, կարող եք օգտագործել դա, բայց հաջորդ քայլը մի փոքր կփոխի և ավելի մեծ հզորություն կսպառի:

Հիմա եկեք ընդմիջում կատարենք սարքավորումներից և աշխատենք մեր փափուկ հմտությունների վրա:

Քայլ 5. SSH մուտքագրեք RPi և գրավի որոշ ծրագրակազմ

SSH մտեք RPi և գրավի որոշ ծրագրակազմ
SSH մտեք RPi և գրավի որոշ ծրագրակազմ

Ահ, բաց աղբյուրի գեղեցկությունը… այնքան մեծ…

Սկսենք մի փոքր tyեփամածիկից:

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

Բաց կոդն ամենալավ աղբյուրն է

Սկսենք ամենակարևորից.

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

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

Այո բոլոր հարցերին:

Այժմ եկեք ձեռք բերենք WiringPi գրադարանը. Այն GPIO- ն դարձնում է շատ ավելի կառավարելի:

$ sudo apt-get install git-core

Այո բոլոր հարցերին - այժմ այն կառուցելու համար.

$ git clone git: //git.drogon.net/wiringPi

$ cd ~/wiringPi $./ շին

Վերջին, բայց ոչ պակաս կարևոր `մեկ զարմանալի վեբ սերվեր.

$ sudo apt-get տեղադրել apache2 php5 libapache2-mod-php5

Եթե ամեն ինչ լավ լինի, դուք պետք է կարողանաք մուտքագրել RPi- ի IP հասցեն և տեսնել «Այն աշխատում է»:

Հետո մուտք գործեք ինքներդ ձեզ.

$ sudo chown pi: pi/var/www/html/$ sudo chmod 755/var/www/html/

Կողային նշում IP հասցեների վերաբերյալ

IoT- ի այս դիզայնն ինձ դուր գալու պատճառներից մեկն այն է, որ իմն է: iIoT, եթե կուզեք: Պետք չէ անհանգստանալ «ամպի» կամ այլ ծառայությունների համար: ԲԱՅ, դուք պետք է որոշեք, թե ինչպես եք ցանկանում, որ այն աշխատի ձեզ համար: Optionանկացած տարբերակի բանալին ամուր, կայուն IP հասցեի կարիքն է, այլապես երբեք չեք իմանա, թե ուր գնալ ՝ լույսերը միացնելու և անջատելու համար: Ես անձամբ օգտագործում եմ տարբերակը (C), բայց ձեր զանգը:

Մի քանի տարբերակ.

  • (Ա) ստատիկ IP հասցե RPi- ի համար
  • (B). Տեղական տիրույթի նշանակում
  • (C) Թույլ տվեք ձեր երթուղիչին ամեն անգամ նույնը նշանակել: Կախված է ձեր երթուղիչի հնարավորություններից. Փնտրեք «Հասցեների ամրագրում» կոչվող կարգավորումը, որը սովորաբար գտնվում է Ընդլայնված LAN կարգավորումների ներքո:

Քայլ 6. Միացեք RPi- ին NotePad ++ SSH- ի միջոցով

Միացեք RPi- ին NotePad ++ SSH- ի միջոցով
Միացեք RPi- ին NotePad ++ SSH- ի միջոցով
Միացեք RPi- ին NotePad ++ SSH- ի միջոցով
Միացեք RPi- ին NotePad ++ SSH- ի միջոցով

Ես կօգտագործեմ Notepad ++ ՝ HTML, PHP, Python, Javascript և CSS ֆայլերը խմբագրելու և NppFTP կոչվող հավելում ՝ արագ և հեշտությամբ այդ փոփոխությունները ձեր RPi- ում ՝ էլեգանտ, պարզ և արագ: 32-բիթանոց տարբերակում NppFTP- ը լռելյայն է, բայց եթե գնում եք 64-բիթ, այն այժմ նույնպես աջակցվում է, բայց ստիպված կլինեք ձեռքով տեղադրել այն:

  1. Բացեք Notepadd ++
  2. Plugins NppFTP Nուցադրել NppFTP պատուհանը (կարող է նաև ընտրել փոքր թղթապանակ ՝ շղթայի կապի պատկերակով)
  3. NppFTP պատուհանում ընտրեք COG պատկերակը և «Պրոֆիլի կարգավորումներ»
  4. Սա պետք է դատարկ լինի ձեզ համար, եթե դա երբեք չեք օգտագործել, ընտրեք «Ավելացնել նոր»
  5. Հյուրընկալող անուն = RPi IP հասցե ձեր տեղական ցանցում
  6. SFTP- ն այն տեսակն է ՝ 22 պորտով (SSH)
  7. Օգտվողի անունն է «Pi», իսկ գաղտնաբառը ձեր նոր թարմացված գաղտնաբառն է … չէ՞:
  8. Բացի այդ, ձեր կանխադրված գրացուցակը սահմանեք «/var/www/html/» - ի դեպքում ամեն ինչ ավելի հեշտ կդառնա
  9. Կտտացրեք միացման պատկերակին և ընտրեք ձեր ստեղծած պրոֆիլը. Այն պետք է ձեզ հասցեագրվի ձեր նոր գրացուցակում

Ֆայլը բացելը ձեր ֆայլին կբերի տեղական ֆայլ, այն պահելով ՝ ինքնաբերաբար կբեռնի ձեր փոփոխությունները RPi- ում:

Բացեք index.php, gpio.php, css.css և script.js Notepad ++ - ում, այնուհետև դրանք կարող եք վերբեռնել html թղթապանակում:

Թեստ տվեք ՝ մուտքագրելով ձեր RPi- ի IP հասցեն. Դուք պետք է տեսնեք ձեր կանխադրված կառավարման էջի բեռը:

Եթե ոչ, ստուգեք և համոզվեք, որ բոլոր ֆայլերն իրականում RPi- ում են, ինչպես նաև համոզվեք, որ html թղթապանակում այլ «ինդեքս» չկա:

Եթե տեսնում եք էջի բեռնումը, հաջողություն: Եկեք ավելի շատ խոսենք այն ֆայլերի մասին, որոնք տեղադրում եք ձեր RPi- ում և ինչպես են դրանք օգնում ձեզ վերահսկել ձեր լուսավորությունը:

Քայլ 7: Միջերեսի ակնարկ և ցուցիչ. Php

Ինտերֆեյսի ակնարկ & Index.php
Ինտերֆեյսի ակնարկ & Index.php
Ինտերֆեյսի ակնարկ և ցուցիչ. Php
Ինտերֆեյսի ակնարկ և ցուցիչ. Php

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

Ինչպես տեսնում եք առաջին նկարից, index.php- ում ներառված Javascript- ը օգտագործվում է gpio.php կանչելու համար, երբ մեր վանդակի (այսինքն ՝ անջատիչի) վիճակը փոխվում է: gpio.php այնուհետև գրում և կարդում է gpio կապում:

Սկսենք կցորդներից index.php- ով: Ես այն առանձին -առանձին կգրեմ ՝ մատնանշելով այն տարածքները և որոշ հատուկ նշումներ, որոնք կօգնեն ձեզ:

Առաջին հղումները վերաբերում են CSS ոճաթերթին և հատուկ պատկերակին, որը 32X32 բիթ քարտեզ է ՝ «.ico» ընդլայնմամբ:

Երկրորդը մի փոքր Javascript- ն է, w3schools- ի ժամացույցի ճշգրտված օրինակը, որը շտկվել է ՝ AM/PM և թարթող հաստ կետ ավելացնելու համար (ճիշտ այնպես, ինչպես ես ուզում էի, որ այն ցուցադրվեր ինձ համար, գուցե դուք այլ կերպ եք ուզում):

Նախ, մի փոքր PHP - սա առաջինը կգործի միայն սերվերի վրա (էջը բեռնվելուց հետո այն չի կարող տեսնել աղբյուրում) - նաև պատճառը չի կարող շարունակել օգտագործել այն քորոցային վիճակներ գրելու համար:

$ nm_array = զանգված («Your Switch 1», «Your Switch 2» և այլն..);

// սա այն վայրն է, որտեղ դուք ավելացնում եք այն տարածքները, որոնք ցանկանում եք առանձին վերահսկել լույսերը // Դուք կարող եք ավելացնել այնքան, որքան ցանկանում եք/անհրաժեշտ է. այն կարգավորված է համապատասխանաբար հաշվելու և ստեղծելու համար անջատիչներ:

$ wthr_array = զանգված (); // այժմ դատարկ է, բայց պահում է տվյալների կետ, որը բնակեցված է Python սցենարով

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

Ի վերջո, եթե ցանկանում եք կատարել Python- ի սցենարը `տվյալների կետ քաշելու և $ wthr_array- ը լրացնելու համար:

Հաջորդ ՝ div դասի «վերնագիր». Ցուցակի տարրերից յուրաքանչյուրը ներկայացնում է վեբ էջի վերնագրի կոնտեյներների պարունակությունը (Timeամանակ, վերնագիր և տեմպ):

PHP օղակը, որը կշրջվի ՝ հիմնվելով $ nm_array- ին ավելացրած անջատիչների անունների քանակի վրա:

Այստեղ կարևորն այն է, որ այն նաև հաջորդական հաջորդականությամբ նշանակում է PIN համարներ: Սկսած PIN0- ից մինչև ցանկացած թիվ, բայց իսկապես սահմանափակ ՝ հիմնվելով ձեր RPi- ում առկա GPIO կապումների քանակի վրա, ուստի 16. Սա շատ կարևոր կլինի հաջորդ քայլին, երբ մենք իրականում սկսենք վերահսկել իրերը:

Մի քանի արագ նշում մի քանի այլ ֆայլերի վերաբերյալ.

base.css

Էջի համար ձեր սեփական գույները (վեբ, rgb և այլն) դրված են 68, 111 և 134 տողերում: Ես դրանք ընտրել եմ, քանի որ դրանք նույն գույներն են, որոնք ընտրել է իմ հետևի շքամուտքը ներկելու համար իմ սուպեր ստեղծողը: ուստի այն օգնում է ինտերֆեյսը կապել այնտեղ, որտեղ ինտերֆեյսը սովորաբար կատարվում է:

194 -րդ գծից սկսելը այն վայրն է, որտեղ դուք կարող եք փոփոխել անջատիչների տեսքն ու զգացումը

gettemp.py

Այս սուպեր պարզ Python սցենարը պատրաստ է թրթռալուն պես, երբ դուք ձեր սեփական API ստեղնը ստանում եք եղանակային ստորգետնյա տարածքից, ինչպես նաև ձեզ ցույց կտա որոշ վիճակագրություններ ձեր էջի օգտագործման վերաբերյալ (ամեն անգամ, երբ էջը բեռնվում է, երբ զանգ է կատարվում, այնպես որ կարող եք տեսնել որոշ տվյալներ))

Քայլ 8. Կառավարեք իրերը 12 Վ լարման միջոցով

Վերահսկիչ նյութ ՝ 12 Վ լարման միջոցով
Վերահսկիչ նյութ ՝ 12 Վ լարման միջոցով
Վերահսկիչ նյութ ՝ 12 Վ լարման միջոցով
Վերահսկիչ նյութ ՝ 12 Վ լարման միջոցով
Վերահսկիչ նյութ ՝ 12 Վ լարման միջոցով
Վերահսկիչ նյութ ՝ 12 Վ լարման միջոցով

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

Դա պայմանավորված է նրանով, որ մենք պետք է GREEN (PS_ON) - ը միացնենք գետնին `հիմնական հոսանքը միացնելու համար:

Եկեք հանենք այդ ռելեներից մեկը:

  1. Հեռացրեք և միացրեք Կանաչ մետաղալարերը ռելեի տերմինալներից մեկին
  2. Հեռացրեք և միացրեք Սև մետաղալարը կանաչ ռելեի տերմինալներից մեկին

Դե, հիմա վերցրեք ձեր մի քանի մալուխներ `ԿԱՐՄԻՐ և ՍԵՎ և՛ էգ, և՛ ցանկացած գույն իգական մի կողմից, իսկ արու` մյուս կողմից:

  1. Կարմիրի և Սևի մի ծայրը կպցրեք ՝ թողնելով մեկ կանացի կողմը և մետաղալար ընկույզով միացրեք ԿԱՐՄԻՐԸ ՄԵURԱՆԱԿԻՆ (նույնին, որին միացված է ձեր RPi- ն) և Սևից Սև
  2. Դրանց իգական կողմը կփոխանցվի RED- ին `դեպի դրական, իսկ Սևը` բացասական
  3. Ձեր ընտրած ԳՈՅՆԸ արական կդառնա GPIO- ին (տես նկարը. Մենք կանցնենք WiringPi PIN 0 -ով)

    Ո NOTՇԱԴՐՈԹՅՈՆ. Ես օգտագործում եմ ժապավենային մալուխ `GPIO- ն միացնելու համար, բայց դուք կարող եք անմիջապես անցնել RPi- ի վերնագրին:

  4. Իգական կողմը կգնա դեպի ռելեի «ազդանշան» կամ S քորոց

Վերադարձեք ձեր հիմնական էջին (ձեր RPi- ի IP հասցեն). Առաջին անջատիչը, թերևս միակ անջատիչը, այժմ պետք է ATX PS- ն սպասման ռեժիմից հանի, միացնի օդափոխիչը և սկսի հյութ ուղարկել բոլոր 12 Վ, 5 Վ և 3.3 հոսանքներին: V լարերը:

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

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

Քայլ 9. Էլեկտրաէներգիայի (և (D) oE) հզորության (և տվյալների) ավելի մեծ վերահսկողություն

Էլեկտրաէներգիայի (և տվյալների) նկատմամբ ավելի մեծ վերահսկողություն (P (& D) oE)
Էլեկտրաէներգիայի (և տվյալների) նկատմամբ ավելի մեծ վերահսկողություն (P (& D) oE)
Էլեկտրաէներգիայի (և տվյալների) ավելի մեծ վերահսկողություն Ethernet- ի վրա (P (& D) oE)
Էլեկտրաէներգիայի (և տվյալների) ավելի մեծ վերահսկողություն Ethernet- ի վրա (P (& D) oE)
Էլեկտրաէներգիայի (և տվյալների) նկատմամբ ավելի մեծ վերահսկողություն (P (& D) oE)
Էլեկտրաէներգիայի (և տվյալների) նկատմամբ ավելի մեծ վերահսկողություն (P (& D) oE)

Դուք գուցե մտածեիք, թե որն է այն ամբողջ Ethernet մալուխը, որը ես ավելացրել եմ մատակարարման ցուցակին:

Ethernet- ի միջոցով մենք կարող ենք 5V- ն GPIO ազդանշանի հետ ուղարկել անմիջապես ռելեային այլ միացումների `մեր լուսավորության համակարգի նկատմամբ վերահսկողությունն էլ ավելի մեծացնելու համար: Միգուցե ցանկանում եք բակի առանձին տարածքների առանձին վերահսկողություն: Թե՞ առջևի և հետևի հատվածները: Սա հնարավորություն կտա դրան:

Ես կներկայացնեմ հայեցակարգը և որոշ լավագույն փորձը, և դուք կարող եք այն հարմարեցնել `ձեր կարիքներին համապատասխան:

Նայեք առաջին և երկրորդ նկարներին: Վերցնելով մեր հոսանքի աղբյուրից +5V գիծը, ես այն ուղարկում եմ ոլորված Ethernet մալուխի մի շարք:

  1. Careգուշորեն հանեք արտաքին պատյանը ethernet մալուխից - դուք չեք ցանկանում վնասել 24-23 AWG լարերը
  2. Ընտրեք երկու գույնի հավաքածու և ուշադիր քանդեք դրանք. Մեկը կլինի լարումը, իսկ մյուսը `գետինը

    GoodԱՆՈԹՈԹՅՈՆ. Շատ լավ գաղափար է փաստաթղթավորել, թե ինչ գույնի համար է այն, երբ լարերը կապում եք մյուս կողմը:

  3. Կապեք երկու լարերի և լարերի ծայրերը մինչև RED (+5v) և Սև գետնին ձեր սնուցման աղբյուրի վրա (նկար 2)
  4. Նույնը արեք մետաղալարերի մեկ այլ գույնի դեպքում, բայց փոխարենը մետաղալարով բարձրացրեք GPIO կապիչով ցատկիչը

Molex միակցիչները, որոնց ես կապում էի մատակարարումների բաժնում, իսկապես օգտակար են այստեղ: Վերցրեք ոլորված զույգերի 3 հավաքածուները, դրանք սեղմեք իգական Molex միակցիչների մեջ, 3 ճյուղի միակցիչի հետ միասին, և դրանք կցվեն անմիջապես ռելեին: (նկար 3): Համոզվեք, որ հետևում եք պատվիրմանը, իմ ռելեին անհրաժեշտ էր, որ +, - և Ս. Եթե դուք Molex մալուխ եք պատրաստում այդ կարգով, գուցե դժվար լինի դրանք վերադասավորելը:

Եթե դուք «պիգտեյլ» եք անում Ethernet էլեկտրահաղորդիչը դեպի ձեր ռելե, ապա կարող եք գործարկել այս գիծը որտեղ որ ցանկանաք և դիպչել դրան տարբեր վայրերում:

Ես դա փորձարկել եմ ավելի քան 100 ֆուտ ethernet- ով ՝ լարման սահմանափակ անկմամբ և լավ GPIO ազդանշանով, որը ոլորված զույգի պատճառով համեմատաբար կայուն է և պաշտպանված միջամտությունից:

Քայլ 10: Լուսավորիր այդ բակը:

Լուսավորիր այդ բակը
Լուսավորիր այդ բակը
Լուսավորիր այդ բակը
Լուսավորիր այդ բակը
Լուսավորիր այդ բակը
Լուսավորիր այդ բակը

Կան շատ եղանակներ, որոնք կարող եք դա անել: Ես կներկայացնեմ որոշ ընդհանուր հասկացություններ և քայլեր `համոզվելու համար, որ ձեր համակարգը շարունակում է աշխատել և ապահով լինել:

Հիշեք, որ դրա համար մալուխ եք թաղելու: Մալուխը, որին ես կապեցի, այն է, ինչ ես օգտագործել եմ և գնահատված է ստորգետնյա թաղման համար, ինչը նշանակում է, որ առավել զգույշ եղեք, որպեսզի չկտրվեք մալուխային գծերի, ինտերնետային գծերի ԿԱՄ ՎԱՏՈԹՅԱՆ Դեպքի, էլեկտրահաղորդման գծերի … անորոշության դեպքում խնդրում ենք դիմել տեղական «զանգահարել փորելուց առաջ»: Նաև հետևեք, թե որն է դրական և ինչը բացասական: Ես միշտ գիտեի, որ «բառերով» (սպիտակ տառերով) մալուխը բացասական էր, իսկ դատարկը ՝ դրական տողը)

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

Սկզբում ես վազեցի 12 Վ գծերը միացման տուփի միջով (նկար 2):

Այդ մետաղալարն ընկավ գետնին ՝ 1/2 «PVC խողովակով, որի ներքևի անկյունը ներքև էր, ներքև ՝ գետնին մոտ 6-8 դյույմ»: Խրամուղի, որը կոշտ է մեր քարքարոտ հողի հետ (պետք էր օգտագործել խարույկ), բայց միգուցե դուք ինչ -որ տեղ ապրում եք իսկական կեղտով…

Գիծը բարձրանում է (նկար 4), կրկին ուղիղ անկյունով և 1/2 դյույմանոց PVC- ով և ամրացված ծառին: Ես ավարտեցի PVC- ի գագաթը մի փոքր սիլիկոնով լցնելու համար, որպեսզի մետաղալարերը չքաշվեն: շարունակվում է երեխաների կողմից:

Որոշ կայանքների դեպքում կարող եք կանգ առնել այստեղ և ձեր լույսը ուղղել դեպի ծառը: Փորձարկեք այն գիշերը ՝ ցանկալի տեսք ստանալու համար: Եթե ցանկանում եք, որ լուսավորությունը իջնի … շարունակեք:

Ես օգտագործել եմ մետաղալարեր ՝ զգույշ լինելով, որ չծեծեմ մետաղալարը, որպեսզի այն տանեմ ծառի հետևում (նկար 5)

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

Լվանալ և կրկնել, քանի լույս էլ ուզում եք վառել:

Փորձարկեք այն ՝ կրակելով հեռախոս, iPad կամ համակարգիչ և նավարկելով դեպի ձեր RPi IP հասցեն:

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

Քայլ 11: Բարելավումներ ընթացքի մեջ և փաթաթում

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

Եղանակի ծառայության թարմացում

Սկսեց օգտագործել Accuweather API- ն WeatherUnderground- ի փոխարեն (դադարեցված API ծառայություն) - «gettemp.py» - ն ավելացվեց ՝ ցույց տալու համար, թե ինչպես:

Ֆիզիկական կոճակների ավելացում

Ես վերցրեցի 4 կոճակի միավոր, որը նման է այն, ինչ տեսնում եմ մեր գրասենյակի նիստերի դահլիճում և այդ ժամանակից սկսած, այն միացրեցի մինչև 4 GPIO, որոնք վերահսկվում են պիթոնի սցենարով, երբ սարքը միացված է: Այժմ դրանք կարող են օգտագործվել նաև որպես մեկ այլ մեթոդ ՝ ամեն ինչ միացնելու և անջատելու համար, և ինչպես ես ծրագրավորել եմ հիմնական էջը, այն կստուգի ՝ տեսնելու, թե որն է GPIO քորոցի ներկայիս վիճակը, որպեսզի չունենաք հակասական մուտքային ազդանշաններ. Touchplate.com- ի մարդիկ շատ օգտակար էին իմ հարցերին պատասխանելու համար, որոնք կաշխատեն: շնորհակալություն:

Եղանակի ստորգետնյա տարբեր տվյալներ

Ես սկսել եմ WU- ի աստղագուշակային տվյալները (արեւածագ, մայրամուտ եւ այլն) հանել: Ես աշխատում եմ, որ լույսերը միանան և անջատվեն մայրամուտից 30 րոպե առաջ և կանջատվեն նաև որոշակի ժամերին: Կարող է օգտագործվել դրա համար որոշ անալոգային տվիչներ, բայց ոչ RPi- ի լավագույն օգտագործումը, այնպես որ ծրագրային լուծման հետ խաղալը:

Ավտոմատ միացման/անջատման ավելացում

Իմ հետևի շքամուտքն ամուր 10 յարդ բետոն է, որը մենք լցրել ենք մոտ 2 տարի առաջ: Անցյալ տարի մենք որոշ անկանոն եղանակ ունեինք. Մի օր դրսում կլիներ 35-40F, ապա հաջորդը `70-80F, 60-80% խոնավությամբ: Սա սալաքարի վրա խտացում առաջացրեց ՝ այն դարձնելով շատ սայթաքուն: Այս խնդրի դեմ պայքարելու համար ես ավելացրել եմ պիթոնի սցենար `ներքևի օրերի ջերմաստիճանը իջեցնելու համար (սալաքարի մոտավոր ջերմաստիճանը որոշելու համար) և ցողի կետը` որոշելու, թե արդյոք պատշաճ պայմաններ են պատշգամբում խտացում ստեղծելու համար (https:// www. weatherquestions.com/What_is_condensati… Եթե ջերմաստիճանը ցածր է ցողի կետից, ապա երկրպագուները միանում են, եթե ոչ, նրանք անջատված են: Այն նաև չի փոխարինի, եթե երկրպագուները ձեռքով միացված լինեն, և վեբ էջի միջերեսը մի փոքր փոխվի եթե «AI» - ն միացրել է երկրպագուներին: Ես ավելացրել եմ 4 ֆայլ `dryout.py, auto_on.py & auto_off.py (տեղը python թղթապանակում) և թարմացված index.php (տեղը հիմնական թղթապանակում)` դու Ձեզ հարկավոր է թարմացնել եղանակի ստորերկրյա API բանալին:

Տերմինալում.

$ sudo crontab -e

Այնուհետև ներքևում ավելացրեք հետևյալը.

#ամեն ժամ, ստուգեք ջերմաստիճանը/ցողման կետը `տեսնելու, արդյոք անհրաժեշտ է միացնել երկրպագուներին

0 * * * */usr/bin/python /var/www/html/python/dryout.py

Այժմ ամեն ժամ, dryout.py- ն կգործի: Թե՞ կարող եք սա օգտագործել որպես այլ գործառույթի ձևանմուշ, միգուցե լույսերը միացնել և անջատել ՝ օգտագործելով մեկ այլ ձգան: Արևածագ/մայրամուտ Կամ եթե դրսում պարզապես շոգ է, և ցանկանում եք, որ ջերմաստիճանը ինքնաբերաբար միանա: հասնում է XX աստիճանի

Շարժման տվիչների ավելացում

Շարժման մի քանի տվիչների տեղադրումը մուտքերի մոտ, օգտագործելով ethernet կառուցվածքը `հոսանքի և տվյալների մուտքի/ելքի երթուղին ուղղելու համար, կդառնա թեթև: Այնուհետև պարզ պիթոնի սցենար ՝ լուսարձակները միացնելու և անջատելու համար: Կարող է լինել զվարճալի փոքրիկ հավելյալ նախագիծ:

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

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