Բովանդակություն:
- Քայլ 1: Փորձը
- Քայլ 2: Սարքավորումներ
- Քայլ 3. Google Cloud - գրանցում
- Քայլ 4. Google Cloud - Pub/Sub
- Քայլ 5. Google Cloud - IOT Core
- Քայլ 6: Google Cloud - ամպի գործառույթներ
- Քայլ 7: Google Cloud - Cloud DataStore
- Քայլ 8: Google Cloud - BigQuery
- Քայլ 9. Google Cloud - Data Studio
- Քայլ 10. Կանխատեսման փուլ
- Քայլ 11: Կոդ
Video: Դրենաժի խցանման դետեկտոր. 11 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:51
Թույլ մի տվեք, որ խցանված արտահոսքը դանդաղեցնի ձեզ: Վերադառնալով մեր արձակուրդից ՝ ինձ և կնոջս զարմացրեց մեր բնակարանի հատակը ծածկող ջուրը, և մենք պարզեցինք, որ դա նույնիսկ մաքուր ջուր չէ, այն ամենուր թափվում է: Դրենաժը մաքրելուց և հատակը մաքրելուց հետո ինձ մոտ առաջացավ այս հարցը. Խցանված ջրահեռացումները ոչ միայն կարող են կանգնեցնել ձեր տունը, այլև գրպաններից լրացուցիչ ծախսեր կծախսեն, միջինը $ 206 -ը, ըստ HomeAdvisor- ի, խցանված արտահոսքի մաքրման ծախսերն են, բացի վնասված գորգերի, փայտե կահույքի և այլնի թաքնված ծախսերից: Մեր գաղափարն է `թույլ տալ տան սեփականատերերին, ինչպես նաև ձեռնարկությունների, ինչպիսիք են քաղաքի/միացությունների սպասարկման բաժիններն ու մասնագիտացված ծառայություններ մատուցողները, ունենալ արդյունավետ և խելացի համակարգ, որը նախազգուշացնում է հնարավորինս շուտ ձեռնարկել գործողություններ, ինչը նպաստում է խելացի քաղաքների հարստացմանը կարևորով: առանձնահատկությունը:
Չնայած խցանների հայտնաբերումը կարող է իրականացվել մի շարք տեխնիկայի միջոցով, օրինակ ՝ գազի սենսորների կամ ներքին մեխանիզմների օգտագործմամբ, մեր թիմը կենտրոնացած էր ձայնը որպես մուտքագրում օգտագործելու վրա, քանի որ մենք գիտենք, որ բացված խողովակի թակելը տարբերվում է տեղի ունեցածից: փակ լինելու ժամանակ: Այս պարզ հայեցակարգի համաձայն, եթե մենք կարողանանք մոդել պատրաստել այն խցանումների ժամանակ խողովակի մակերևույթում հայտնվող ձայնային ձևերը, ինչպես նաև բացված խողովակներում այդ օրինաչափությունները, ապա կարող ենք կիրառել մոդելը `ակտիվորեն հայտնաբերելու համար, երբ խցանը սկսում է կազմվել, և մենք զանգահարել որոշ հաշիվներ:
Վարկեր ՝ հանուն
- Մոհամեդ Հասան
- Ահմեդ Էմամ
Projectրագիրը մանրամասն 3 փուլ է իրականացվում այս նախագծում ՝ տվյալների հավաքում, ուսուցում և կանխատեսում:
Նախքան այս համակարգը իրական կյանքում կիրառելը, մենք պետք է ստեղծեինք ուժեղ մոդելավորման միջավայր, որտեղ մենք ունենք խողովակ, հոսող ջուր և ինչ -որ կերպ մոդելավորելու խցանումը: Այսպիսով, մենք ստացանք մի խողովակ, ջրի գուլպան, որի ջրային աղբյուրը դա անում է լոգարանի մեջ և օգտագործելով լոգարանի մակերեսը ՝ փակելու խողովակը, որը ներկայացնում է խցանումը: Այս տեսանյութում մենք բացատրում ենք, թե ինչպես ենք մենք կառուցել միջավայրը և ինչպես ենք հավաքել տվյալներ մոդելային ուսուցման համար:
Եվ այս հաջորդ տեսանյութում, որը ցույց է տալիս, թե ինչպես ենք մենք կատարել համակարգի և մոդելի փորձարկումները ՝ բաց ռեժիմում, այնուհետև խցանման ռեժիմում և, այնուամենայնիվ, բաց ռեժիմին
Այսպիսով, եկեք քայլ առ քայլ ուսումնասիրենք մեր իրականացումը.
Քայլ 1: Փորձը
Այս սցենարում մենք օգտագործում ենք մի փոքր ջրատար, որը միացված է մեր ապարատային և ձայնային տվիչին: Սարքավորումը կարդում է սենսորի արժեքը և այն հետ ուղարկում Cloud: Դա արվում է 10 րոպե խցանված խողովակի համար, ևս 10 րոպե `չփակված խողովակի համար:
Քայլ 2: Սարքավորումներ
I- Արդուինո
Soundրի ձայնը խողովակի ներսում հայտնաբերելու համար մեզ անհրաժեշտ է ձայնային տվիչ: Այնուամենայնիվ, Raspberry Pi 3 -ը չունի անալոգային GPIO: Այս խնդիրը լուծելու համար մենք օգտագործում ենք Arduino- ն, քանի որ Arduino- ն ունի անալոգային GPIO: Այսպիսով, մենք Grove Sound սենսորը միացնում ենք Grove Arduino վահանին և Shield- ը միացնում Arduino UNO 3. Հետո մենք Arduino & Raspberry- ին միացնում ենք USB մալուխի միջոցով: Grove Sound տվիչի մասին լրացուցիչ տեղեկություններ ստանալու համար կարող եք ստուգել դրա տվյալների թերթիկը: Տվյալների թերթիկում կարող եք գտնել սենսորի արժեքները կարդալու օրինակելի կոդ: Նմուշի ծածկագիրը գրեթե օգտագործվում է փոքր փոփոխությունների դեպքում: Ստորև բերված կոդի մեջ մենք սենսորը միացնում ենք վահանի A0- ին: Սերիայի վրա գրելու համար մենք օգտագործում ենք Serial.begin () գործառույթը: Ազնվամորու բաուդ փոխարժեքը 115200 սահմանելու համար Տվյալները կուղարկվեն Ազնվամորիին, եթե այն ավելի մեծ է, քան որոշակի շեմը `աղմուկը նվազեցնելու համար: Շատ փորձություններ են կատարվել` ցանկալի շեմի և հետաձգման արժեքները ընտրելու համար: Պարզվել է, որ շեմը 400 է, իսկ ուշացման արժեքը `10 միլիվայրկյան: Շեմը ընտրվել է նորմալ աղմուկը զտելու և ապահովելու համար, որ ամպին կուղարկվեն միայն նշանակալից տվյալները: Հետաձգումը հեռու է ընտրված `ապահովելու համար, որ սենսորը անմիջապես հայտնաբերի խողովակի ներսում հոսքի ձայնի որևէ փոփոխություն:
II- Raspberry Pi 3 Raspberry- ում android բաներ ներբեռնելու համար կարող եք ներբեռնել Android Things Console- ի վերջին տարբերակը: Այս նախագծում մենք օգտագործում ենք տարբերակը ՝ OIR1.170720.017: հետևեք Raspberry կայքի քայլերին `ազնվամորիի վրա օպերացիոն համակարգը տեղադրելու համար, Windows- ի համար կարող եք օգտագործել այս քայլերը Տեղադրվելուց հետո կարող եք միացնել Ազնվամորին ձեր համակարգչին USB- ի միջոցով: Այնուհետև ձեր համակարգչի վահանակում օգտագործեք ստորև բերված հրամանը ՝ ազնվամորի IP ստանալու համար
nmap -sn 192.168.1.*
IP- ն ստանալուց հետո միացեք ձեր ազնվամորիին ՝ օգտագործելով ստորև բերված հրամանը
adb միացնել
Ձեր ազնվամորին WiFi- ին միացնելու համար (ավելացրեք ձեր SSID- ն ու գաղտնաբառը)
adb am startservice
-n com.google.wifisetup/. WifiSetupService
-a WifiSetupService. Connect
-e ssid *****
-e գաղտնաբառ ****
Քայլ 3. Google Cloud - գրանցում
Google- ն առաջարկում է անվճար մակարդակ բոլոր օգտվողների համար մեկ տարի ժամկետով ՝ 300 $ առաստաղով, Google- ի շնորհիվ:): Հետևեք էկրաններին ՝ Google Cloud- ում նոր նախագիծ ստեղծելու համար
Քայլ 4. Google Cloud - Pub/Sub
Google Cloud Pub/Sub- ը լիարժեք կառավարվող իրական ժամանակի հաղորդագրությունների ծառայություն է, որը թույլ է տալիս հաղորդագրություններ ուղարկել և ստանալ անկախ ծրագրերի միջև:
Քայլ 5. Google Cloud - IOT Core
II- IOT CoreA լիովին կառավարվող ծառայություն ՝ աշխարհով մեկ ցրված սարքերից հեշտությամբ և ապահով կերպով միացնելու, կառավարելու և ներթափանցելու տվյալները: IOT Core still Beta, դրա հասանելիություն ունենալու համար անհրաժեշտ է Google- ին ներկայացնել հիմնավորում: Մենք խնդրանքը ներկայացրինք, մեր հիմնավորումը այս մրցույթն էր: Google- ը հաստատեց, կրկին շնորհակալություն Google- ին:): Ազնվամորին սենսորային տվյալներ կուղարկի IOT Core- ին, որը ընթերցումներ կփոխանցի նախորդ քայլին ստեղծված PubSub թեմային
Քայլ 6: Google Cloud - ամպի գործառույթներ
Ամպային գործառույթները առանց սերվերի միջավայր են ՝ ամպային ծառայություններ կառուցելու և միացնելու համար: Այս գործառույթի գործարկիչը PubSup թեման է, որը ստեղծվել է 1 -ին քայլում;;; Այս գործառույթը կգործարկվի, երբ PubSup- ում գրվի նոր արժեք և այն գրվի Cloud DataStore- ում ՝ «SoundValue» բարի տեսքով:
Քայլ 7: Google Cloud - Cloud DataStore
Google Cloud Datastore- ը NoSQL փաստաթղթերի տվյալների շտեմարան է, որը կառուցված է ավտոմատ մասշտաբավորման, բարձր արդյունավետության և ծրագրերի մշակման հեշտության համար: Թեև Cloud Datastore ինտերֆեյսը ունի նույն հատկանիշները, ինչ ավանդական տվյալների բազաները, որպես NoSQL տվյալների բազա այն տարբերվում է դրանցից ՝ տվյալների օբյեկտների միջև հարաբերությունները նկարագրելու ձևով: Կարգավորման կարիք չկա, քանի որ երբ Ամպային գործառույթները տվիչների արժեքները գրեն DataStore- ում, տվյալները կավելացվեն DataStore- ում
Քայլ 8: Google Cloud - BigQuery
Մենք հավաքում ենք նմուշը նորմալ խողովակից 10 րոպե և արգելափակված խողովակից 10 րոպե `2 կրկնությունների միջև ճշգրիտ 1 ժամ տարբերությամբ: Տվյալների ներբեռնումից հետո DataStore և որոշ մանիպուլյացիաներ կատարեք ՝ յուրաքանչյուր տողի համար դասակարգում ավելացնելու համար: Այժմ մենք ունենք 2 csv ֆայլ ՝ յուրաքանչյուր կատեգորիայի համար: Որպես լավագույն փորձ ՝ տվյալների CSV ֆայլերը նախ վերբեռնեք Cloud Storage- ում: Ստորև էկրանին մենք ստեղծում ենք նոր դույլ և վերբեռնում ենք 2 CSV ֆայլեր: Քանի որ այս դույլը կօգտագործվի միայն վերլուծության համար, կարիք չկա ընտրելու բազմատարածքային դույլ, այնուհետև ստեղծեք նոր տվյալների հավաքածու և նոր աղյուսակ BigQuery- ում և 2 CSV ֆայլը վերբեռնեք դույլից նոր սեղանը
Քայլ 9. Google Cloud - Data Studio
Հետո մենք օգտագործում ենք Data Studio- ն ՝ որոշ պատկերացումներ նկարելու համար: Data Studio- ն կկարդա տվյալները BigQuery աղյուսակից: Գրաֆիկներից մենք կարող ենք տեսնել 2 կատեգորիայի տարբերությունը հեռաչափությունների քանակի և րոպեների արժեքների միջև: Այս պատկերացումների հիման վրա մենք կարող ենք նախագծել մի պարզ մոդել, խողովակը համարվում է արգելափակված, եթե 3 հաջորդական րոպեների ընթացքում հեռաչափության արժեքների հաշվարկը, որոնք ավելի բարձր են, քան աղմուկի շեմը (400), ավելի քան 350 հեռաչափություն: և 3 հաջորդական րոպեների ընթացքում կայծի շեմից բարձր (720) հեռաչափության արժեքի հաշվարկը 10 -ից ավելի հեռաչափություն է:
Քայլ 10. Կանխատեսման փուլ
Մենք վերաբերում ենք ընթերցմանը, երբ այն գերազանցում է որոշակի արժեքը (THRESHOLD_VALUE), որը սահմանվել է 350, որը ֆիլտրում է աղմուկը և ջրի հոսքի ավելի ցածր արագությունը խողովակում ՝ որպես ընթերցում դիտարկվելուց:
Տվյալների վերլուծությունը ցույց տվեց, որ բաց ռեժիմում ընթերցումների քանակը 100 -ից պակաս է, սակայն խցանման դեպքում արժեքները շատ ավելի բարձր են (րոպեում հասնում է 900 -ի), բայց հազվագյուտ դեպքերում նաև 100 -ից պակաս են: Այնուամենայնիվ, այդ դեպքերը հետևաբար չեն կրկնվում և երեք հաջորդ րոպեների ընթացքում ընթերցումների ընդհանուր թիվը միշտ գերազանցում էր 350 -ը: Նույն երեք րոպեում բաց ռեժիմ ունենալով ՝ 300 -ից պակաս գումար կլինի, մենք կարող ենք վստահորեն դնել այս կանոնը. > 350, ապա հայտնաբերվում է խցանում: Մենք պարզեցինք, որ բաց ռեժիմում ձեռք բերված առավելագույն արժեքը չի գերազանցում որոշակի արժեքը (SPARK_VALUE), որը պարզվում է, որ 770 է, ուստի մենք ավելացրեցինք այս կանոնը. Կանոն # 2 Եթե արժեքը կարդալ> 350, ապա հիմնականում հայտնաբերվում է խցանում:
Երկու կանոնները համատեղելով ՝ մեզ դյուրին միջոց տվեց հայտնաբերման տրամաբանությունն իրականացնելու համար, ինչպես ցույց է տրված: Ուշադրություն դարձրեք, որ Arduino- ում տեղադրվել է ստորև նշված կոդը, որն այնուհետև գնահատում է ստացված հեռաչափությունը մեր մոդելի հիման վրա և ուղարկվում ազնվամորիին, եթե խողովակը խցանված է կամ բացված:
Քայլ 11: Կոդ
Arduino- ի, ազնվամորու և ամպի գործառույթի բոլոր ծածկագրերը կարելի է գտնել Github- ում:
Լրացուցիչ տեղեկությունների համար կարող եք ստուգել այս հղումը
Խորհուրդ ենք տալիս:
Անլար AC ընթացիկ դետեկտոր. 7 քայլ (նկարներով)
Անլար AC ընթացիկ դետեկտոր. Իմ նախորդ Instructable (հեշտ ինֆրակարմիր հարևանության ցուցիչ) պատրաստման ընթացքում ես պարզեցի մի քանի բան անընդմեջ 2 տրանզիստորներ օգտագործելու մասին `շատ թույլ ազդանշանը ուժեղացնելու համար: Այս Ուղեցույցում ես կմշակեմ այս սկզբունքը, որը նաև կոչվում է & քվո
Պարզ Arduino մետաղական դետեկտոր. 8 քայլ (նկարներով)
Պարզ Arduino մետաղորսիչ. *** Տեղադրվել է նոր տարբերակ, որն ավելի պարզ է. դուք դրսում, նոր վայրեր հայտնաբերեք և գուցե ինչ -որ հետաքրքիր բան գտնեք: Ստուգեք ձեզ
Աչքով անելու դետեկտոր. 6 քայլ (նկարներով)
Աչքի աչքի հայտնաբերիչ ՝ ա. Հոդվածներ {տառատեսակի չափը ՝ 110.0%; տառաչափը ՝ համարձակ; տառատեսակ ՝ շեղագիր; տեքստի ձևավորում. ոչ մեկը; ֆոնային-գույնը ՝ կարմիր;} ա. հոդվածներ ՝ սավառնել {ֆոնային-գույնը ՝ սև;} Այս հրահանգը բացատրում է, թե ինչպես պատրաստել «աչքով անելու դետեկտոր» փոփոխված AD82- ից
Ռադիոհաճախականության խցանման միացում 555 erամաչափ ՝ 6 քայլ
Ռադիոհաճախականության խցանման միացում 555 erամաչափ. Ռադիոհաճախականության (ՌԴ) խցանման միացումն ինքնին բացատրում է այն, ինչ անում է: Դա մի սարք է, որը խոչընդոտում է որոշակի էլեկտրոնիկայի ՌԴ ազդանշանների ընդունմանը, որոնք օգտագործում են նման հաճախականություններ և գտնվում են խցանման հարակից տարածքում: Այս խցանման միացումն
Բարձր լարման այլընտրանքային խցանման ուսուցման ակնոցներ [ATtiny13] ՝ 5 քայլ (նկարներով)
Բարձր լարման այլընտրանքային օկուլյացիայի ուսուցման ակնոցներ [ATtiny13]. Իմ առաջին ուսանելի ուսուցման ընթացքում ես նկարագրեցի, թե ինչպես կարելի է կառուցել մի սարք, որը պետք է բավականին օգտակար լինի մեկին, ով ցանկանում է բուժել ամբլիոպիան (ծույլ աչք): Դիզայնը շատ պարզեցված էր և ուներ որոշ թերություններ (դրա համար անհրաժեշտ էր օգտագործել երկու մարտկոց և հեղուկ