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

Ազնվամորի PI ֆոտոխցիկ և լուսամփոփ մահվան աստղ. 5 քայլ (նկարներով)
Ազնվամորի PI ֆոտոխցիկ և լուսամփոփ մահվան աստղ. 5 քայլ (նկարներով)

Video: Ազնվամորի PI ֆոտոխցիկ և լուսամփոփ մահվան աստղ. 5 քայլ (նկարներով)

Video: Ազնվամորի PI ֆոտոխցիկ և լուսամփոփ մահվան աստղ. 5 քայլ (նկարներով)
Video: Fysetc Spider v1.1 - 64 Bit OctoPi Install 2024, Հուլիսի
Anonim
Ազնվամորի PI տեսախցիկ և լույսի կառավարման մահվան աստղ
Ազնվամորի PI տեսախցիկ և լույսի կառավարման մահվան աստղ
Ազնվամորի PI տեսախցիկ և լույսի կառավարման մահվան աստղ
Ազնվամորի PI տեսախցիկ և լույսի կառավարման մահվան աստղ
Ազնվամորի PI տեսախցիկ և լույսի կառավարման մահվան աստղ
Ազնվամորի PI տեսախցիկ և լույսի կառավարման մահվան աստղ

Ինչպես միշտ, ես փնտրում եմ սարքավորումներ կառուցել, որոնք օգտակար են, ամուր են աշխատում և հաճախ նույնիսկ բարելավումներ են `դարակաշարերից դուրս գտնվող լուծումների համեմատ:

Ահա ևս մեկ հիանալի նախագիծ, որն ի սկզբանե կոչվում էր Shadow 0f Phoenix, ազնվամորի PI վահան ՝ Arduino- ի վրա հիմնված շարժման հայտնաբերման և լույսի կառավարման սարքերի հետ համատեղ:

Քայլ 1. Առևտրային IP տեսախցիկների վիճակը

Առևտրային IP տեսախցիկների վիճակը
Առևտրային IP տեսախցիկների վիճակը
Առևտրային IP տեսախցիկների վիճակը
Առևտրային IP տեսախցիկների վիճակը
Առևտրային IP տեսախցիկների վիճակը
Առևտրային IP տեսախցիկների վիճակը

Բացի այդ, ձեր սեփական տեսախցիկի/վերահսկման համակարգի կառուցումն ավելի հիանալի է, եկեք տեսնենք, թե ինչու է դա բարելավում դարակից դուրս լուծումից:

Ես այն կհամեմատեմ NEO COOLCAM Full HD 1080P անլար IP տեսախցիկների շարքի հետ, քանի որ ինձ են պատկանում neo coolcams (ONVIF) տեսախցիկների այս տարբեր մոդելները: Նրանք գալիս են տարբեր ձևերի և չափերի ՝ դրսում և ներսում, նրանցից շատերը ներկառուցված են wifi աջակցությամբ, բայց եկեք տեսնենք դրանց նախազգուշացումները.

  • Այս տեսախցիկները վաճառող չինացի արտադրողները գրեթե միշտ ստում են պատկերի սենսորների ներկառուցված լուծման մասին: Երբ Ebay- ում 5MP/8MP տեսախցիկ եք գնում, կարող եք հայտնվել վատ նկարով էժան 2MP տեսախցիկով (այն աշխատում է, բայց որակը աղբ է): Երբ գնում եք 8MP Raspberry PI v2 տեսախցիկը սկզբնական վաճառողից, դուք կստանաք այն, ինչ վճարել եք և փաստացի 8MP սենսոր ՝ 3280 × 2464 պիքսել թույլատրությամբ =>
  • Անվտանգության տեսանկյունից այս տեսախցիկները (նույնիսկ ավելի թանկարժեք Dlink- ը և այլ մոդելները) սարսափելի են, դրանք օգտագործում են կանխադրված գաղտնաբառեր, ինչպիսիք են 123456 -ը կամ ներկառուցված օգտվողներում, ինչպիսիք են admin/admin օպերատորը/օպերատորը, ինչը դուք նույնիսկ չեք կարողանա փոխել կամ վերագործարկումից հետո փոփոխությունները անհետացել են: Լրացրեք այն այս տեսախցիկներից շատերի հեռախոսով (միացեք Չինաստանում գտնվող իրենց սերվերներին, ոմանք նույնիսկ տեսանյութեր/նկարներ են հեռարձակում ՝ առանց ձեզ խնդրելու, որպեսզի հեշտացնեն այն, եթե որոշեք մի օր տեղադրել իրենց Android/Iphone ծրագիրը ՝ ձեր սարքը ստուգելու համար): տուն). Նույնիսկ եթե այս սարքերը տեղադրեք երթուղղիչի հետևում, դա պարզապես բավական լավ չէ, ամենալավն այն է, որ դրանցում կանխադրված դարպաս չդնեք, դրանք անջատեք կամ տեղադրեք VLAN- ով, որպեսզի նրանց դուրս գալն անհնար լինի: ինտերնետ կամ նույնիսկ ավելի լավ. մի օգտագործեք դրանք ընդհանրապես:
  • Արդյո՞ք դրանք ավելի հուսալի են: Ոչ, նրանցից շատերը, նույնիսկ ավելի թանկ DLINK- երը, հնարավորություն ունեն ամեն օր/շաբաթական վերագործարկել տեսախցիկը և այլն: Այդ տարբերակը կա ինչ -ինչ պատճառներով, քանի որ X օր հետո նրանք հաճախ կորցնում են Wifi կապը կամ այլ կերպ են վարվում: Պարզապես համարեք դրանք որպես հին հին լավ Win95 տուփեր, որոնք ավելի հաճախ պետք է վերագործարկվեին:) Ես չեմ ասում, որ Raspi- ի սարքավորումներն այնքան ամուր են, որ կարող եք դրանք կառուցել միջուկային էլեկտրակայանների կառավարման մեջ, բայց համապատասխան սարքավորումներով/ծրագրային ապահովմամբ: կոնֆիգուրացիա, ջերմատաքացուցիչներ, ավտոմատ սառեցման օդափոխիչներ և SDCARD- ի վրա նվազագույնի հասցված RW աշխատանքը, դրանք կարող են հեշտությամբ հարվածել այդ 100+ օր տևողությամբ առանց խնդիրների: Գրելու պահին իմ DeathStar- ը գործում է 34 օրից, 100 -ից ավելի է, բայց երբեմն ես կոտրում էի էներգիայի աղբյուրի սնունդը, որը սնուցում է իմ որոշ այլ սխեմաներ, ուստի ստիպված էի անջատել այն:(
  • Թիրախավորված սարքավորում. Դրանք պատրաստված են 1 հատուկ նպատակի համար, հաճախ գալիս են փոքր նվրամ տարածքով և զբաղված տուփով, սակայն որոշ մոդելներ նույնպես անհնարին են դարձնում այս պատյանների հասանելիությունը, ուստի այն ամենը, ինչի համար կարող եք դրանք օգտագործել, այն է, ինչի համար նրանք պետք է օգտագործվեին օգտագործեք ձեր Raspi- ի վրա հիմնված տեսախցիկը ցանկացած այլ առաջադրանքի համար `ֆայլերի սերվեր, tftp/dhcp սերվեր, վեբ սերվեր, երկրաշարժի սերվեր … ընտրանքներն անսահմանափակ են:
  • Պահեստային տարածք. Նրանք կամ չունեն, կամ նրանք օգտագործում են microsd քարտեր FAT32 ֆայլային համակարգով VS ազնվամորիի վրա, եթե ցանկանում եք, կարող եք կցել նույնիսկ 2 ՏԲ կոշտ սկավառակ:
  • Լույսի կառավարում. Ոմանք ունեն ALARM ելք, որտեղ դուք կարող եք միացնել մի փոքր ռելե `լույսերը միացնելու համար: Ինչպես ցույց կտամ ձեզ այս ձեռնարկում, ինֆրակարմիր տեսախցիկների օգտագործումը ժամանակի կորուստ է, քանի որ վատ որակի պատճառով դուք չեք կարողանա որևէ մեկին նույնականացնել IR նկարներում: Եթե Ձեզ անհրաժեշտ է տեսանկարահանել մթության մեջ, դրա լավագույն միջոցը նախ մի փոքր լույս վառելն է, ապա տեսագրելը:

Այսպիսով, դուք կարող եք հարցնել ՝ կա՞ն արդյոք դարակից դուրս տեսախցիկ օգտագործելու մասնագետներ: Այո, այն ձեռնարկությունների համար, որտեղ դրա ստեղծման աշխատանքային ժամերը ավելի թանկ կարժենան, քան ազնվամորու պիսով պտտվելը (ամեն դեպքում ինձ համար չէ:)) և այո, կան առաջին տեսախցիկները (500 $+ ավելի լավ լուծումով, քան pi տեսախցիկը) դասընթաց). Որպես մեկ այլ առավելություն կարող եմ ասել, որ ONVIF ստանդարտին հետևող տեսախցիկները դյուրինացրել են կենտրոնացված ապահովումը: Սա ապահովում է ստանդարտ ինտերֆեյս, որը կարող է օգտագործվել տեսախցիկին հրամաններ ուղարկելու համար `IP/ցանցի դիմակ/դարպաս և այլ իրեր սահմանելու համար: Դրա համար կարող եք ներբեռնել Onvif սարքի կառավարիչը Sourceforge- ից: Այս սարքերից շատերը գալիս են խայտառակ կոտրված վեբ դիմադրամներով, որտեղ, օրինակ, դա թույլ չի տալիս ճիշտ տեղադրել ip- ն կամ ցանցի դիմակը, քանի որ javascript- ը, որը վավերացնում է այս դաշտերը, անսարք է, և այդ պարամետրերը ճիշտ տեղադրելու ձեր միակ միջոցը ONVIF- ն է:

Քայլ 2: Մահվան աստղի ծրագրեր

Մահվան աստղի ծրագրերը
Մահվան աստղի ծրագրերը
Մահվան աստղի ծրագրերը
Մահվան աստղի ծրագրերը
Մահվան աստղի ծրագրերը
Մահվան աստղի ծրագրերը

Դուք կարող եք կառուցել այս սարքը Ազնվամորու PI- ներով ՝ սկսած 1 -ից մինչև 3B+: Նույնիսկ զրոյի վրա կան տեսախցիկի նավահանգիստներ, բայց քանի որ շուկայում կան շատ տարբեր օգտագործված ռասպիներ, գուցե մտածեք, թե որն է ամենաիդեալը այս կառուցվածքի համար:

Պատասխանը կախված է նրանից, թե որտեղ եք ցանկանում մշակել տեսահոսքը:

Երկու ընտրություն կա.

1, Տեղափոխեք տեսանյութերը շարժման մեջ և փոխանցեք տեսահոսք, երբ նկատվում է շարժում (նկատում. Շարժումը դանդաղ մշտական հոսք է փոխանցում սերվերին, անկախ ամեն ինչից, դա կարող է կախված լինել որոշ բանաձևից և շրջանակների տեմպերից, որոնք օգտագործում եք մի քանի անգամից) հարյուր մեգաբայթից մինչև մի քանի գիգաբայթ օրական, պարզապես հիշեցում, եթե ցանկանում եք կարգաբերել չափված կապի վրա): Այստեղ պրոցեսորը կարևոր է, և, ցավոք, շարժումը (գրելու պահին) չի օգտվում բազմաթիվ միջուկներից, սակայն OS- ն կփորձի փոքր -ինչ հավասարակշռել բեռը: Դուք միշտ կունենաք միջուկներից մեկը 100% օգտագործման դեպքում:

2, Տեսանյութերը մշակեք կենտրոնական սերվերի վրա. Այստեղ պարզապես տեսախցիկից հումքային հոսքը փոխանցում եք արտաքին հոսքի անջատիչ (ինչպես iSpy- ն աշխատում է x86 համակարգչով կամ MotionEyeOS- ն աշխատում է մեկ այլ նվիրված միկրոհամակարգչով): Քանի որ տեղական մշակման գործընթացում ձեր օգտագործած PI մոդելը կարևոր չէ, PI1- ը կուղարկի նույն հոսքը, ինչ PI3B+ - ը:

Այս ձեռնարկում ես կգնամ առաջին ընտրությամբ:

Այստեղ հիմնական կանոնն այն է, որ որքան արագ շարժվող պրոցեսորը գործի դնեք, այնքան ավելի լավ արդյունքներ կստանաք: Օրինակ ՝ միջանցքին նայող Raspi 2 տեսախցիկը երբեմն չէր վերցնում այն, երբ ինչ -որ մեկն արագ անցնում էր, և երբ այն ձայնագրում էր, ձայնագրությունը դանդաղ էր ՝ շատ շրջանակներ գցելով մոդելի 3 -ի համեմատ: Մոդել 3 -ում կա նաև 802.11: abgn wifi, որը հարմար է, որպեսզի կարողանաք ավելի բարձրորակ տեսանյութեր հեռարձակել, այն աշխատում է տուփից դուրս և բավականին հուսալի է: Գրելու պահին, որ 3B+ մոդելը դուրս է եկել, ես պարզապես խորհուրդ կտայի, որ այն ձեռք բերեիք 1.4 Ghz Quad Core պրոցեսորով:

Նյութերի ցանկ

  • 30 սմ պլաստիկ DeathStar:)
  • Ազնվամորի Pi 3 B+
  • PiCam v2 (8 ՄՊ)
  • Arduino Pro Micro 5.5 վ
  • 2x SIP-1A05 Եղեգի անջատիչ ռելե
  • 1x PCS HC-SR501 IR Pyroelectric Infrared IR PIR Motion Sensor Detector Module
  • 1x 10kohm դիմադրություն LDR- ի համար
  • 1x LDR
  • 1x12V 4A DC ադապտեր
  • 1xWarm White LED 5050 SMD ճկուն լուսային լամպի ժապավեն 12V DC
  • 1xBuck լարման կարգավորիչ

Ինչպես տեսնում եք սխեմատիկայում, այս նախագիծը ի սկզբանե նախատեսված էր մեկ ռելեով մեկ լույսը վերահսկելու համար, քանի որ ես չէի պլանավորում ներքին լուսավորություն ավելացնել (ինչը բավականին թույն է), այնպես որ ես պարզապես երկրորդ հաղորդալարը լարեցի Arduino- ին: SIP-1A05- ի հիանալի բանն այն է, որ այն ունի ներքին հետադարձ դիոդ, իսկ mA- ում սպառումը շատ ավելի ցածր է, քան Arduino- ի մեկ պին հզորությունը:

Պատճառն այն է, թե ինչու է PIR- ը նկարների վահանի վրա, քանի որ սկզբում S0P- ն նախատեսվում էր տեղադրել DeathStar- ի փոխարեն պարզ IP պլաստիկ տուփի մեջ: Ինչպես երևի կռահեցիք, տեսախցիկը անմիջապես լազերային ատրճանակի մեջ է, PIR- ին և LDR- ին անհրաժեշտ էին ևս մեկ փորված անցքեր, և դրանք սոսնձված են, քանի որ ես չեմ պատրաստվում դրանք հեռացնել:

DeathStar- ի ներքևում մի փոս էր փորված, որտեղ ես սոսնձում էի մի մեծ պտուտակի մեջ ՝ ամուր 2 բաղադրիչ սոսինձով: Սա կարող է պտուտակվել Neo Coolcams- ի օրիգինալ տակդիրի վրա (ի վերջո լավ էր ինչ -որ բանի համար:)): Լրացուցիչ աջակցության համար ես օգտագործում եմ կոշտ պղնձե մետաղալարեր ՝ աստղի գագաթին ամրացնելու համար:

Կարևոր նշում էլեկտրաէներգիայի մատակարարման վերաբերյալ. Քանի որ միևնույն մատակարարումը սնուցելու է ինչպես PI- ն, այնպես էլ Arduino- ն և LED շերտը, այն պետք է լինի բավականին ծանրաբեռնված, որպեսզի կարողանա կառավարել դրանք բոլորը, այնպես որ այն հիմնված կլինի նախագծի համար ձեր ընտրած LED շերտի վրա: Առևտրային 5050 12 վ 3 մետր LED ժապավենը հոսում է մոտ 2 Ա, դա շատ է: PI- ի և Arduino- ի համար դուք պետք է հաշվարկեք +2A- ում (չնայած դա չափից ավելի մեծացնելուն դա չի վնասի): Ստանդարտ հալոգեն լամպերի, նեոնային կամ բարձր հզորության այլ լուսադիոդների վրա LED շերտի օգտագործումը հնարավորություն է տալիս այս ամբողջ միացումը մի լավ 12V@10Ah կապարաթթվային մարտկոցի վրա դնել որպես պահեստային, այնպես որ այն կաշխատի նույնիսկ հոսանքի անջատման դեպքում:

Արկղը Arduino- ի և PI- ի սնուցման համար կիջեցնի լարումը 12-> 5 Վ-ից, մինչդեռ ուղիղ 12 Վ լարման հոսանքը միացված է ռելեին `LED ժապավենը միացնելու համար:

Քայլ 3: Arduino ծրագրակազմ

Arduino ծրագրակազմ
Arduino ծրագրակազմ

Ստորև կարող եք գտնել ամբողջական աղբյուրի կոդը, որը լավ մեկնաբանված է, բայց ահա հակիրճ բացատրություն, թե ինչպես է այն գործում. Յուրաքանչյուր հանգույցի սկզբում սովորական xcomm () գործառույթը կանչվում է ՝ տեսնելու, թե արդյոք Raspberry PI- ից հրաման կա կարող է լինել LIGHT_ON/OFF ՝ միջանցքի լույսերը միացնելու կամ DS_ON/OFF ՝ DeathStar- ի լուսարձակը միացնելու/անջատելու համար, դրանք իրականացրել եմ պարզապես կատարելության համար, քանի որ եթե ինչ -որ մեկը PIR- ով անցնում է, պետք է վերցնի այն և միացնի լույսերը, բայց միգուցե ինչ -ինչ պատճառներով ուզում ես նայել այդ վայրին, նույնիսկ երբ այնտեղ ոչ ոք չկա:

Դրանից հետո լուսաբջջի արժեքը կարդացվում է, և շարժման քորոցը ստուգվում է շարժման համար: Եթե շարժում կա, կոդը ստուգում է, արդյոք այն բավականաչափ մութ է, այնուհետև ստուգում է, թե արդյոք մենք սպասման մեջ չենք: Եթե այս ամենն անցնի, այն պարզապես միացնում է միջանցքի լույսը և հետ ուղարկում PHOENIX_MOTION_DETECTED դեպի Ազնվամորի PI, եթե բավականաչափ մութ չէ, այն դեռ ազդանշան է տալիս համակարգչին, բայց լույսը չի միացնում: Երբ շարժումը հայտնաբերվում է, սկսվում է 5 րոպեանոց պահման ժամաչափը:

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

Մենք ունենք DeathStar- ի ներքին լուսավորության լուսավորման այլ ժամաչափ, որը զուտ կախված է photocellReading <dark_limit- ից:

Չնայած երկու առօրյան չգիտեն միմյանց մասին, նրանք հիանալի կաշխատեն միասին, քանի որ երբ միջանցքի լույսը միանում է, այն այնքան լույս է ապահովում, որ LDR- ն կկարծի, որ նորից ցերեկ է, և այն անջատում է ներքին լուսավորությունը: Այնուամենայնիվ, կան որոշ նախազգուշացումներ այս գործընթացի վերաբերյալ, որը բացատրվում է ծածկագրում, եթե ձեզ հետաքրքրում է, եթե ոչ, ապա վերցրեք Nvidia- ի պատասխանը, որ «այն պարզապես աշխատում է»:

Քայլ 4. Softwareրագրային ապահովման ազնվամորի PI

Softwareրագրային ապահովում Ազնվամորի PI
Softwareրագրային ապահովում Ազնվամորի PI
Softwareրագրային ապահովում Ազնվամորի PI
Softwareրագրային ապահովում Ազնվամորի PI
Softwareրագրային ապահովում Ազնվամորի PI
Softwareրագրային ապահովում Ազնվամորի PI

Վերջին Raspbian- ն աշխատում է ինձ համար.

Raspbian GNU/Linux 9.4 (ձգվող)

Linux Phoenix 4.9.35-v7+ #1014 SMP ուրբ 30 հունիսի 14:47:43 BST 2017 armv7l GNU/Linux ii motion 4.0-1 armhf V4L գրավման ծրագիր, որն աջակցում է շարժման հայտնաբերմանը

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

Շարժումը կարող է նաև հեշտությամբ կառուցվել աղբյուրից.

apt-get -y տեղադրել autoconf automake pkgconf libtool libjpeg8-dev build-essential libzip-dev apt-get տեղադրել libavformat-dev libavcodec-dev libavutil-dev libswscale-dev libavdevice-dev

apt-get -y տեղադրել libavformat-dev libavcodec-dev libavutil-dev libswscale-dev libavdevice-dev apt-get -y տեղադրել git git clone https://github.com/Motion-Project/motion cd motion/autoreconf -fiv: /configure --prefix =/usr/motion make && make install/usr/motion/bin/motion -v

Ես խորհուրդ եմ տալիս iSpy- ին որպես տեսաձայնագրիչ/հավաքիչ սերվեր: Unfortunatelyավոք, գրելու պահին Linux- ի համար լավ այլընտրանքներ չկան: Տեսախցիկը կարող է ավելացվել MJPEG url- ով https:// CAMERA_IP: 8081 կանխադրված պորտով:

Շարժման մշակումը կարող է օգտակար լինել, օրինակ ՝ անհրաժեշտ չէ ամբողջ օրը անընդհատ նայել ձեր iSpy սերվերին, շարժման դեպքում կարող եք նամակ ստանալ: Թեև iSpy- ն ունի այս գործառույթը `շարժման դեպքում էլեկտրոնային փոստով ահազանգելու համար, այն ժամանակ առ ժամանակ միացնում է ձայնագրությունը տարբեր իրադարձությունների համար, ինչպիսիք են որոշ տարածքների լուսավորությունը: PIR շարժման հայտնաբերմամբ ես երբեք չեմ ունեցել մեկ կեղծ ահազանգ: Ահազանգերը կարող են մշակվել տեղական մակարդակով.

Pir շարժման իրադարձությունը հայտնաբերվել է սենսորի վրա> Arduino alert> Raspberry pi- ն ստանում է մխիթարել> C մշակման ծրագիր> Արտաքին փոստի ծրագիր

Այնուամենայնիվ, ես գերադասում եմ ինչպես տեղեկամատյանների, այնպես էլ տեսանյութերի հեռակա մշակումը, ուստի այս դեպքում ես մի հատված եմ ավելացրել C կառավարման ծրագրին, մինչդեռ այն տեղեկամատյանները մուտքագրում է պարզ տեքստային ֆայլ, ինչպես նաև այն մուտքագրում syslog- ին և փոխանցվում է SIEM- ի համար: հետագա վերամշակում:

դատարկ անտառահատ (նշան *տեքստ) {

ՖԱՅԼ *f = բացել ("phoenix.log", "a"); if (f == NULL) {printf ("Չհաջողվեց բացել տեղեկամատյան! / n"); վերադարձ; } fprintf (f, " %s => %s / n", cur_time (0), տեքստ); fclose (f); #ifdef SYSLOG char loggy [500]; sprintf (loggy, " %s => %s / n", cur_time (0), տեքստ); setlogmask (LOG_UPTO (LOG_NOTICE)); openlog («DeathStar», LOG_CONS | LOG_PID | LOG_NDELAY, LOG_USER); // syslog (LOG_NOTICE, «startedրագիրը սկսեց օգտվողի կողմից %d», getuid ()); syslog (LOG_NOTICE, loggy); closelog (); #endif վերադարձ; }

Ստացման վերջում syslog-ng- ն կարող է այս իրադարձությունները հեռացնել հիմնական տեղեկամատյանների հոսքից.

զտիչ f_phx {

համընկնում («DeathStar»); }; նպատակակետ d_phx {ֆայլ ("/var/log/phoenix/deathstar.log"); }; մուտք {աղբյուր (s_net); զտիչ (f_phx); նպատակակետ (d_phx); };

և այն կարող է փոխանցվել մեկ այլ գործիքի (motion.php տե՛ս կից) ՝ վերլուծության և նախազգուշացման համար:

Այս սցենարում դուք կարող եք պարզապես սահմանել շաբաթվա սովորական ժամանակը, երբ տանը չեք.

$ opt ['alert_after'] = '09:00:00'; // Առավոտներ $ opt ['alert_before'] = '17:00:00'; // Երեկոներ

PHP ծրագիրը օգտագործում է հիանալի logtail ծրագիրը `տեղեկամատյանները վերլուծելու համար:

$ cmd = "logtail -o". $ offsetfile: ' '. $ logfile.'> '. $ logfile2;

Logtail- ը հետևում է օֆսեթ ֆայլի դիրքին, որպեսզի հիմնական ծրագիրը ստիպված չլինի իմանալ, թե որ ժամանակից սկսել տեղեկամատյաններին նայել, այն կտրամադրվի վերջին չմշակված տվյալներով:

Motion.php- ն կարող է crontab- ից գործարկվել հանգստյան օրերի փոքրիկ հնարքով, երբ այն կանցնի տեղեկամատյանների միջով, բայց այլևս մշակման կարիք չի ունենա:

*/5 * * * 1-5/usr/local/bin/php ~/motion.php &>/dev/null */5 * * * 6-7/usr/local/bin/php ~/motion.php հանգստյան օր &>/dev/null

Քայլ 5: Հարցեր և անելիքների ցուցակ

Խնդիրներ և անելիքների ցուցակ
Խնդիրներ և անելիքների ցուցակ
Խնդիրներ և անելիքների ցուցակ
Խնդիրներ և անելիքների ցուցակ

Եթե դուք օգտագործում եք Raspberry pi 3 կամ ավելի նոր տարբերակ, կարող եք բաց թողնել այս բաժինը, ամենայն հավանականությամբ, այլևս չեք բախվի այդ խնդիրների հետ:

Տարիների ընթացքում ես որոշ խնդիրներ ունեի Raspberry pi 2 -ի վրա հիմնված տախտակների հետ, որոնք կարող էին աշխատել միևնույն ծրագրաշարի վրա, բայց դրանք տարբեր ժամանակներում ձեռք էին բերվել տարբեր վայրերից: Որոշակի ժամանակահատվածից հետո, որը կարող է լինել 2 օր կամ 20 օր, երբ սարքի վրա SSH միանալը, SSH- ն պարզապես կախված կլիներ, այնպես որ ինչպես շարժման երևույթը, այնպես էլ Arduino- ի հետ խոսող տեղական C կոդը բեռնվեցին խոյում, ուստի սարքը գործում էր բայց այլևս անհնար էր դրանով այլ բան անել այս վիճակում:

Բազմաթիվ խնդիրների լուծումից հետո ես գտա մի լուծում.

homesync.sh

#!/bin/sh -e

### ՍԿՍԵԼ INIT INFO # Տրամադրում է. Տնային համաժամացում # Պահանջվում է-սկիզբ. Mountkernfs $ local_fs # Պահանջվում է-կանգառ. Ֆոտոխցիկ ֆենիքս ըստ NLD ### END INIT INFO NAME = home DESC = "Ramdisk Home Synchronizer" RAM = "/home/" DISK = "/realhome/" set -e case "$ 1" in start | forward) echo -n "Starting $ DESC. "Rsync -az --numeric -ids -ջնջել $ DISK $ RAM &> /dev /null արձագանք" $ NAME ":;; դադար | վերադառնալ) echo -n "$ DESC- ի դադարեցում.";; *) արձագանք «Օգտագործում. $ 0 {սկիզբ | դադար}» ելք 1;; esac ելք 0

Սցենարը զուգորդվում է fstab փոփոխությամբ.

tmpfs /տուն tmpfs rw, չափը = 80%, nosuid, nodev 0 0

Տնային միջնորմը տեղադրված է որպես ramdisk, որը մոտ 600 ՄԲ ազատ տարածք կտա Raspberry pi 2 -ի վրա, ինչը ավելի քան բավարար է երկուական և փոքր տեղեկամատյան ֆայլեր պահելու համար.

tmpfs 690M 8.6M 682M 2% /տուն

Պարզվեց, որ PI կախիչը վերագրվում էր SDcard- ի վրա գրելու գործողություններին, չնայած ես փորձել եմ տարբեր քարտեր (Samsung EVO, Sandisk), որոնք սխալներ են սկանավորվել մի քանի անգամ առաջ և հետո, և դրանք այլ նոթբուքերի հետ խնդիր չունեն: գալիս է. Ես նույն խնդիրը չունեի (դեռ) Raspberry PI 3s- ի և ավելի բարձր սարքավորումների հետ, ուստի նաև ինչու եմ դրանք խորհուրդ տալիս այս ձեռնարկում:

Թեև Raspberry PI 3 -ի ընթացիկ շարժումը ինձ համար բավական լավ է, բայց ահա որոշ գաղափարներ, որոնք արժե ուսումնասիրել.

  1. Մի օգտագործեք շարժում, այլ օգտագործեք բուռն հոսք ցանցի միջոցով և թույլ տվեք, որ հզոր սերվերը կատարի շարժման հայտնաբերումն ու տեսագրումը (օրինակ ՝ iSpy): -> Խնդիր. Ցանցի թողունակության անընդհատ խցանում:
  2. Օգտագործեք շարժում և թույլ տվեք ffmpeg- ին կատարել տեսանյութի կոդավորումը: -> Խնդիր. Պրոցեսորը չի կարող կարգավորել ավելի բարձր լուծումներ
  3. Օգտագործեք շարժում, ձայնագրեք հում տեսանյութ և թույլ տվեք, որ հզոր սերվերը կատարի կոդավորումը: -> CPU- ի օգտագործումը RPi- ում ցածր է, իսկ ցանցի թողունակությունը սահմանափակվում է այն ժամանակ, երբ կա իրական շարժում: Այս սցենարի համար մենք կարող ենք գրել SD- քարտի/ramdisk- ի առավելագույն թողունակության համար, այնուհետև տեսանյութը պատճենել մեկ այլ սերվերի վրա:

Նաև նշեմ, որ այս նախագիծը կառուցելը հնարավոր է կառուցել առանց Arduino- ի: Բոլոր բաղադրիչները (ռելեներ, LDR, PIR) կարող են ինչ -որ կերպ միացվել ազնվամորու pi- ին, բայց ես նախընտրում եմ իրական ժամանակի միկրոկոնտրոլերները `սենսորների և ելքային սարքերի հետ փոխազդեցության համար: Այն դեպքերում, երբ իմ ազնվամորու pi- ն կախված էր կամ վթարի էր ենթարկվում, Arduino- ի կողմից աշխատող լուսադիոդն աշխատում էր միանգամայն լավ:

Եթե ձեզ դուր եկավ, այս ուսանելիը մնաց լարված, քանի որ հաջորդ տարի շարքը կշարունակեմ 360 աստիճանի բացօթյա ազնվամորու pi զրո գմբեթավոր տեսախցիկով:

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