Բովանդակություն:
- Պարագաներ
- Քայլ 1: Քայլ 1. Գլխատել
- Քայլ 2: Քայլ 2: Ավելացրեք խելացի
- Քայլ 3. Քայլ 3. Լրացրեք նրան
- Քայլ 4: Քայլ 4. Կարգավորեք Pi- ն
- Քայլ 5: Քայլ 5. Գլուխը շարժելը
- Քայլ 6: Քայլ 6. Այն դարձնել հիմք
- Քայլ 7: Քայլ 7: Հեռարձակեք տեսանյութը Pi- ից
- Քայլ 8. Քայլ 8. Մարմնի հայտնաբերում
- Քայլ 9. Քայլ 9. Zombie- ի ծանուցումների ուղարկում
- Քայլ 10: Ի Whatնչ անհեթեթություն:
Video: Zombie Detecting Smart Security Owl (Deep Learning). 10 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
Ողջույն բոլորին, բարի գալուստ T3chFlicks: Հելոուինի այս ձեռնարկում մենք ձեզ ցույց կտանք, թե ինչպես ենք մենք սարսափելի սարսափելի շրջադարձ անում սովորական տնային դասականի ՝ անվտանգության տեսախցիկի վրա:
Ինչպե՞ս ?! Մենք գիշերային բու ենք պատրաստել, որն օգտագործում է պատկերի մշակումը մարդկանց հետևելու համար: Օ,, և այն աղմկում է, ինչպես իրականը:
Մենք չափազանց ոգևորված էինք այս նախագծով և սպասում էինք, որ դա անենք այն պահից ի վեր, երբ նոր Raspberry Pi 4 -ն ընկավ: Այն ունի 4 ԳԲ օպերատիվ հիշողություն, որը դուռ է բացում բազմաթիվ հիանալի հնարավորությունների, այդ թվում ՝ իրական ժամանակում խորը ուսուցման մոդելներով պատկերների մշակման միջոցով:
Եթե ցանկանում եք ուշադրություն չդարձնել Հելոուինին զոմբիների մոտենալուն, կամ պարզապես ստուգել ձեր այգին տարվա մնացած օրերին, սա մեկն է ձեզ համար: Անվտանգությունը չպետք է ձանձրալի լինի արդյունավետ լինելու համար:
Պարագաներ
Այս կառուցման համար ձեզ հարկավոր է.
- Ազնվամորի Pi 4 (4 ԳԲ Ram) Amazon
- Գիշերային տեսողության տեսախցիկ Amazon
- Micro Servo Amazon
- Կեղծ բու Amazon
- Սոսինձ Amazon
- Ներկիր Ամազոնը
- Պտուտակներ Amazon
- USB բարձրախոս Amazon
- Խոշոր (5v+) շարժական սնուցման աղբյուր Amazon
- 3D տպիչ Amazon
Քայլ 1: Քայլ 1. Գլխատել
ա Քաշեք գլուխը բուից (երբեմն պարզապես պետք է լինել դաժան) ՝ ուժգին քաշելով նրա գլխին, որտեղ այն կպչում է աղբյուրին:
բ. Բու գլուխը մարմնին միանում է գլանով, որը նստած է մեծ աղբյուրի գագաթին: Հեռացրեք այս գլանը ՝ հանելով պտուտակը:
գ. Մխոցը, որը դուք պարզապես հանել եք, բաղկացած է երկու մասից ՝ պլաստիկ բաժակից և առանցքում, որը նստած է դրա ներսում: Պտուտակահանով (կամ նմանատիպ գործիքով) հանեք առանցքակալը գլանից:
դ. Մխոցը զսպանակին միացնող պտուտակով ամրացրեք սերվերը գլանին:
ե. Հեռացրեք զսպանակը ՝ պտուտակելով այն երեք պտուտակները, որոնք ամրացնում են այն մարմնին:
զ Բու մարմնի վերևում մի անցք արեք, որն այնքան մեծ է, որ կարող է տեղավորվել որոշ լարերի և տեսախցիկի մալուխի մեջ: Մենք դրա համար օգտագործեցինք փորվածք և պտուտակահան անճաշակ համադրություն:
Քայլ 2: Քայլ 2: Ավելացրեք խելացի
ա 3D տպեք տեսախցիկի պատյանը և ներկեք այն բուին համապատասխանելու համար. Մենք օգտագործեցինք էժան ակրիլային ներկեր: Նկարչությունը կենսական քայլ չէ, բայց դա կտրուկ բարելավում է ընդհանուր տեսքը:
բ. Բու գլուխը գլխիվայր շուռ տալով, պտուտակեք տեսախցիկի պատյանի գագաթը գլխի ներսում, որտեղ կտուցը դուրս է ցցված:
գ. Տեղադրեք տեսախցիկը պատյանում և միացրեք տեսախցիկի մալուխը:
դ. Սոսինձը սոսնձեցրեք գարնան վերին վահանակին:
ե. Երկար լարերը միացրեք servo կապումներին (5V, Gnd, ազդանշան)
զ Կերակրեք տեսախցիկի մալուխը և լարերը սերվոյի համար աղբյուրի միջով և մարմնի վերևում արած անցքով, որպեսզի դրանք լինեն բու խոռոչի մարմնի ներսում:
Քայլ 3. Քայլ 3. Լրացրեք նրան
ա Հեռացրեք խրոցը բու ներքևից և մեծացրեք այս անցքի չափը `կտրելով պլաստիկը: Շարունակեք մեծացնել չափը, մինչև Raspberry Pi- ն և բարձրախոսը տեղավորվեն բու մարմնի մեջ:
բ. Երբ փոսը բավականաչափ մեծ լինի, որպեսզի բոլոր բաղադրիչները տեղավորվեն ներսում, քաշեք տեսախցիկի մալուխը, որը սնուցել եք բուի գագաթով, հիմքից դուրս և միացրեք այն Raspberry Pi- ին:
գ. Նմանապես, քաշեք servo լարերը և միացրեք դրանք Raspberry Pi- ի մեջ.
- +5v servo- ում => +5V Pi- ի վրա
- Gnd servo => gnd Pi
- Ազդանշանի servo => կապ 12 Pi
դ. Միացրեք USB խոսնակին Pi- ին:
ե. Տեղադրեք SD քարտը Pi- ի մեջ:
զ Power Pi ՝ օգտագործելով շարժական սնուցման աղբյուր:
է. Տեղադրեք Pi- ն, սնուցման աղբյուրը և բարձրախոսը բուի մեջ հիմքի անցքից:
Քայլ 4: Քայլ 4. Կարգավորեք Pi- ն
Ամբողջ ծածկագիրը կարող է գտնվել
ա Ներբեռնեք Raspian- ը և վերբեռնեք այն ձեր SD քարտին ՝ օգտագործելով Balena Etcher:
բ. Ձեր pi- ին հեռակա մուտք գործելու համար
- Ձեր boot sd քարտին ավելացրեք ssh անունով ֆայլ
-
Ավելացրեք wpa_supplicant.conf անունով ֆայլ և տեղադրեք ձեր wifi հավատարմագրերը
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1
ցանց = {ssid = "MySSID" psk = "MyPassword"}
գ. Տեղադրեք SD քարտը pi- ում և փորձեք մուտք գործել ssh- ի միջոցով:
Քայլ 5: Քայլ 5. Գլուխը շարժելը
Գլուխը տեղափոխելու կոդի ձեռնարկ (վերահսկում է սերվոն ազնվամորի պիով)
Pi- ի վրա աշխատող servo- ն վերահսկելու համար մենք պատրաստվում ենք ստեղծել սցենար, որը վերահսկում է GPIO- ի կապերը, որոնց servo- ն միացված է:
ա Միացրեք servo- ն Pi- ին.
- +5v servo- ում => +5V Pi- ի վրա
- Gnd servo => gnd Pi- ի վրա
- Ազդանշանի servo => pin 12 Pi- ի վրա
բ. Նախ պետք է կարգավորել gpio կապերը, որպեսզի PWM- ն օգտագործվի սերվոյի ազդանշանային քորոցում:
գ. Այնուհետև, նույնքան պարզ է, որքան ազդանշանային քորոցի աշխատանքային ցիկլը (այստեղ բացատրված է) ընտրելը ՝ սերվոն 90 աստիճանից 7,5 -ից մինչև 0 աստիճան աշխատանքային ցիկլով տեղափոխելիս, երբ աշխատանքային ցիկլը 2,5 է և 180 աստիճան ՝ հերթապահ ցիկլով: 12.5
ներմուծեք RPi. GPIO- ն որպես GPIO
ներմուծման ժամանակը GPIO.setmode (GPIO. BOARD) GPIO.setwarnings (false) GPIO.setup (12, GPIO. OUT) p = GPIO. PWM (12, 50) p.start (7.5) try: while True: p. ChangeDutyCycle (7.5) # 90 աստիճան ժամանակ. Քուն (1) p. ChangeDutyCycle (2.5) # 0 աստիճան ժամանակ: քուն (1) p. ChangeDutyCycle (12.5) # 180 աստիճան ժամանակ: քուն (1) բացի ստեղնաշարից Անընդհատ `p.stop () GPIO.cleanup ()
Քայլ 6: Քայլ 6. Այն դարձնել հիմք
Բու սափրիչ պատրաստելու կոդի ձեռնարկ (ազնվամորի պիով աուդիո նվագարկել)
ա Միացրեք USB խոսնակին:
բ. Ներբեռնեք ձայն. Մենք ընտրեցինք սարսափելի թռիչք:
գ. Նվագարկեք ձայնը ՝ գործարկելով այս հրամանը ՝ omxplayer -o alsa: hw: 1, 0 owl_sound.mp3
[դ. Եթե դա չի աշխատում, ստուգեք, թե ինչ ելք է օգտագործում ձեր Pi- ն և որ ծավալով ՝ օգտագործելով alsamixer հրահանգը. Ձեզ դիմավորելու են խառնիչի էկրանը, որտեղ կարող եք փոխել ձայնը և ընտրել ձեր մեդիա սարքը: Ձեր ձայնի ձայնը բարձրացնելու համար կատարեք այս omxplayer –o alsa- ի նման հրամանը. Hw: 1, 0 owl_sound.mp3 --vol 500 Այս ձայնը Python- ով նվագարկելու համար նայեք մեր փորձարկման սցենարին:]
ներմուծման ենթամշակման գործընթաց
command = "omxplayer -o alsa: hw: 1, 0 owl_sound.mp3 --vol 500" player = subprocess. Popen (command.split (')), stdin = subprocess. PIPE, stdout = subprocess. PIPE, stderr = subprocess. Խողովակաշար)
Քայլ 7: Քայլ 7: Հեռարձակեք տեսանյութը Pi- ից
Կոդի ձեռնարկ ՝ ստեղծելով ազնվամորի pi տեսախցիկի հոսք
ա Գործարկեք python app.py և դիտեք ձեր տեղական ցանցում ՝ https://raspberrypi.local: 5000
բ. Այս ծածկագիրը վերցված և փոքր-ինչ հարմարեցված է Միգել Գրինբերգից https://blog.miguelgrinberg.com/post/flask-video-… նա լավ բացատրում է, թե ինչպես է դա արվում, և նրա ձեռնարկները հիանալի են. Deffo ստուգեք նրան: Հիմնական հասկացությունն այն է, որ մենք օգտագործում ենք թելեր և գեներատորներ ՝ հոսքի արագությունը բարելավելու համար:
Քայլ 8. Քայլ 8. Մարմնի հայտնաբերում
Մարմնի հայտնաբերման կոդ (ImageNetSSD ՝ ազնվամորի պիով վիդեո հոսքի վրա)
ա Քանի որ մենք օգտագործում ենք Raspberry Pi 4 -ը, մենք մտածեցինք, որ լավագույնն է դրա վրա փորձել խորը ուսուցման մոդելներ ՝ HaarCascade- ի հիմնական մեթոդի փոխարեն, որով մինչ այժմ սահմանափակված էինք:
բ. Մենք նայեցինք այնտեղ նախապես պատրաստված մոդելներից մի քանիսին, ինչպիսին է YOLOv3- ը, որը շատ սառը տեսք ունի: YOLOv3 փոքր կշիռներ, որոնք կատարյալ կլինեին Pi- ի համար, բայց մենք չկարողացանք այն գործարկել:(գ. Փոխարենը, մենք ընտրեցինք MobileSSD մոդելը, որը կարող ենք գործարկել ՝ օգտագործելով openCVs DNN (խորը նյարդային ցանց) մոդուլ, ինչպես սովորեցինք այս ծածկագրից ՝ https://heartbeat.fritz.ai/real-time-object-detection-on-raspberry -pi-using-opencv-dnn-98827255fa60 և պատկերի մշակման ձեռնարկների հերոս Ադրիան Ռոզեբրոքից ՝ https://www.pyimagesearch.com/2017/09/11/object-detection-with-deep-learning-and- opencv/
դ. Այնուամենայնիվ, քանի որ մենք փորձում ենք հոսել այս բովանդակությունը և մոդելներ տեղադրել յուրաքանչյուր շրջանակի վրա, դա հանգեցնում է ուշացած, մասնատված տեսանյութի: Մենք նորից սովորեցինք Ադրիան Ռոզեբրոքից https://www.pyimagesearch.com/2017/10/16/raspberry-pi-deep-learning-object-detection-with-opencv/ և օգտագործեցինք Python բազմամշակման մոդուլը ՝ մեր պատկերները հերթերի մեջ դնելու համար: որտեղ դրանք կարող են մշակվել ՝ առանց տեսախցիկի հոսքը այդքան մեծ արգելափակելու:
ե. Փորձեք ինքներդ գործարկել կոդը:)
Քայլ 9. Քայլ 9. Zombie- ի ծանուցումների ուղարկում
Codeանուցում ուղարկելու կոդ (պիթոն հեռախոսին)
ա Մենք որոշեցինք օգտագործել https://pushed.co ծանուցման ծառայությունը:
բ. Կարող եք անվճար հաշիվ ստանալ և ներբեռնել ծրագիրը և իսկապես արագ կարգավորել բջջային ծանուցումներ կատարելը: Մենք ստեղծեցինք ծանուցումները ՝ օգտագործելով այսպիսի պիտոնի սցենար:
ներմուծման հարցումներ
payload = {"app_key": "APP_KEY", "app_secret": "APP_SECRET", "target_type": "app", "content": "Owl- ն հայտնաբերել է զոմբի": } r = request.post ("https://api.pushed.co/1/push", տվյալներ = բեռնվածություն)
Դա չափազանց պարզ է, և դուք կարող եք հարմարեցնել ձեր ծանուցման անունը:
Քայլ 10: Ի Whatնչ անհեթեթություն:
Հուսով ենք, որ ձեզ դուր եկավ մեր Smart Security Owl նախագիծը: Սա չափազանց զվարճալի կատարում էր, և ես ինձ շատ ավելի ապահով եմ զգում ՝ իմանալով, որ իմ տունը հսկվում է մեր վստահելի բուի կողմից:
Եթե կարծում եք, որ սա կլինի Հելոուինի առասպելական հավելում ձեր խելացի տան համար, խնդրում ենք քվեարկեք մեր օգտին Instructables Halloween մրցույթում և ինչպես միշտ, հիշեք, որ հավանում եք, մեկնաբանեք և բաժանորդագրվեք:
Գրանցվեք մեր Փոստային ցուցակին:
Խորհուրդ ենք տալիս:
Arduino Gas Detecting Alarm System: 6 քայլ
Arduino Gas Detecting Alarm System: Բարև, բոլորին: Հենց հիմա ես կբացատրեմ, թե ինչպես կարելի է կառուցել Arduino գազի հայտնաբերման ահազանգման համակարգ tinkercad- ում: Այս միացումն օգտագործում է գազի սենսորը `մոտակայքում հրդեհի, ծխի կամ գազի արտահոսքի առկայությունը հայտնաբերելու համար: LCD- ի և ահազանգի միջոցով այս միացումը նույնպես
Owl Prowl: 5 քայլ (նկարներով)
Owl Prowl. Owl Prowl- ը չորս խաղացողով մրցունակ խաղ է, որը խաղում են այլընտրանքային կարգավարների հետ: Չորս խաղացողները պետք է որպես բու կերպար խաղան խաղի տարածքում: Նրանց նպատակն է `որսալ ամենաշատ մկներին` ժամանակի սպառվելուց առաջ: Յուրաքանչյուր խաղացող օգտագործում է պլուշի բու ՝ սահմանափակելու համար
Հեշտ սողացող Zombie Hand. 15 քայլ (նկարներով)
Easy Crawling Zombie Hand. Այս հրահանգը եռակցման ատրճանակի կարիք չունի: Երեխաների համար անվտանգ է պարապել ՝ պարզ միացում ստեղծելու համար: Բայց զգուշացեք փոքր առարկայից, որը կարող է պատահաբար կուլ լինել: Նյութական կարիք
DIY Չափ և կառուցեք մարտկոցի էներգիայի պահեստային գեներատոր W/ 12V Deep Cycle մարտկոցներ. 5 քայլ (նկարներով)
DIY Չափ և կառուցեք մարտկոցի էներգիայի պահեստային գեներատոր W/ 12V խորքային ցիկլով մարտկոցներ. *** EԱՆՈԹՈԹՅՈՆ. Batteriesգույշ եղեք մարտկոցների և էլեկտրականության հետ աշխատելիս: Մի կարճացրեք մարտկոցները: Օգտագործեք մեկուսացված գործիքներ: Էլեկտրաէներգիայի հետ աշխատելիս հետևեք անվտանգության բոլոր կանոններին: *** Պատրաստ եղեք մինչև հաջորդ անգամ էլեկտրաէներգիայի անջատումը մարտկոցի սպասման ռեժիմի միջոցով
Cyborg Zombie Evolution: 9 քայլ (նկարներով)
Cyborg Zombie Evolution. Այն լավ հայտնի է գոլորշու դարից մինչև steampunk դարաշրջանը … անկախ նրանից, թե դա զով է, սողացող, գեղեցիկ կամ երեքն էլ միաժամանակ, արարածին կենդանացնելը էլեկտրաէներգիա է պահանջում: Այս կիբերգ զոմբիի դեպքում ՝ որպես գալվանական մեկ բջիջ, որը հայտնի է որպես a & q