INHOUDSOPGAWE:

Zombie -opsporing van slim veiligheidsuil (diep leer): 10 stappe (met foto's)
Zombie -opsporing van slim veiligheidsuil (diep leer): 10 stappe (met foto's)

Video: Zombie -opsporing van slim veiligheidsuil (diep leer): 10 stappe (met foto's)

Video: Zombie -opsporing van slim veiligheidsuil (diep leer): 10 stappe (met foto's)
Video: 🌻 НОВОЕ РАСТЕНИЕ ЭЛЕКТРОКАМЫШ В PVZ 3 🧟 Plants vs Zombies 3 (Растения Против Зомби 3) Прохождение 2024, November
Anonim

Hallo almal, welkom by T3chFlicks! In hierdie Halloween -tutoriaal sal ons jou wys hoe ons 'n super -spookagtige kinkel op 'n alledaagse huishoudelike klassieker plaas: die veiligheidskamera.

Hoe ?! Ons het 'n nagvisuil gemaak wat beeldverwerking gebruik om mense op te spoor. O, en dit skree, net soos die regte ding!

Ons was baie opgewonde oor hierdie projek en het gewag om dit te doen sedert die nuwe Raspberry Pi 4 val. Dit het 4 GB RAM, wat die deur oopmaak vir baie opwindende moontlikhede, insluitend beeldverwerking met diepleermodelle in reële tyd.

As u 'n oog wil hou vir naderende zombies op Halloween, of net die res van die jaar deur u tuin wil kyk, is dit die een vir u. Sekuriteit hoef nie vervelig te wees om effektief te wees nie!

Voorrade

Vir hierdie konstruksie benodig u:

  • Framboos Pi 4 (4 GB Ram) Amazon
  • Nagvisie kamera Amazon
  • Micro Servo Amazon
  • Valse Uil Amazon
  • Plak Amazon
  • Verf Amazon
  • Skroewe Amazon
  • USB -luidspreker Amazon
  • Groot (5v+) draagbare kragtoevoer Amazon
  • 3D -drukker Amazon

Stap 1: Stap 1: onthoof

Stap 1: onthoof
Stap 1: onthoof
Stap 1: onthoof
Stap 1: onthoof
Stap 1: onthoof
Stap 1: onthoof

a. Trek die kop van die uil af (soms moet u net brutaal wees) deur hard aan sy kop te trek waar dit aan die veer geheg word.

b. Die uil se kop verbind met die liggaam deur 'n silinder wat bo -op 'n groot veer sit. Verwyder hierdie silinder deur die skroef uit te haal.

c. Die silinder wat u pas verwyder het, bestaan uit twee dele, 'n plastiekbeker en 'n laer wat daarin sit. Verwyder die laer uit die silinder met 'n skroewedraaier (of soortgelyke gereedskap).

d. Bevestig die servo met die skroef wat die silinder met die veer verbind het.

e. Verwyder die veer deur die drie skroewe wat dit aan die liggaam vasmaak, los te draai.

f. Maak 'n gaatjie aan die bokant van die uil se liggaam wat groot genoeg is om 'n paar drade en die kamerakabel te pas. Ons het 'n onelegante kombinasie van 'n boor en 'n skroewedraaier gebruik om dit te doen.

Stap 2: Stap 2: Voeg Smart by

Stap 2: Voeg Smart by
Stap 2: Voeg Smart by
Stap 2: Voeg Smart by
Stap 2: Voeg Smart by
Stap 2: Voeg Smart by
Stap 2: Voeg Smart by

a. Druk die kamerakas in 3D en verf dit om by die uil te pas - ons het 'n paar goedkoop akrielverf gebruik. Skildery is nie 'n belangrike stap nie, maar dit verbeter die voorkoms dramaties!

b. Met die uil se kop onderstebo, skroef die bokant van die kamerakas aan die binnekant van sy kop vas, waar die snawel uitsteek.

c. Steek die kamera in die omhulsel en koppel die kamerakabel.

d. Plak die servo aan die boonste paneel van die veer vas.

e. Koppel lang drade aan die servo penne (5V, Gnd, sein)

f. Voer die kamerakabel en drade vir die servo deur die veer en deur die gat wat u aan die bokant van die liggaam gemaak het, sodat hulle binne -in die hol liggaam van die uil is.

Stap 3: Stap 3: Maak haar vol

Stap 3: Maak haar vol
Stap 3: Maak haar vol
Stap 3: Maak haar vol
Stap 3: Maak haar vol
Stap 3: Maak haar vol
Stap 3: Maak haar vol
Stap 3: Maak haar vol
Stap 3: Maak haar vol

a. Verwyder die prop van die onderkant van die uil en vergroot die grootte van hierdie gat deur die plastiek te sny. Hou aan om die grootte te vergroot totdat die Raspberry Pi en die luidspreker in die uil se liggaam kan pas.

b. Sodra die gat groot genoeg is sodat al die komponente daarin kan pas, trek die kamerakabel wat u aan die bokant van die uil gevoer het, uit die basis en steek dit in die Raspberry Pi.

c. Trek ook die servodrade deur en steek dit in die Raspberry Pi:

  • +5v op servo => +5V op Pi
  • Gnd servo => gnd Pi
  • Sein servo => pen 12 Pi

d. Koppel die USB -luidspreker in die Pi.

e. Plaas die SD -kaart in die Pi.

f. Power Pi met behulp van draagbare kragtoevoer.

g. Steek die Pi, kragtoevoer en luidspreker in die uil deur die gat in die basis.

Stap 4: Stap 4: Stel die Pi op

Stap 4: Stel die Pi op
Stap 4: Stel die Pi op

AL DIE KODE KAN OP https://github.com/sk-t3ch/cctv-owl gevind word!

a. Laai Raspian af en laai dit op u SD -kaart op met behulp van Balena Etcher.

b. Om toegang tot u pi op afstand te verkry

  • Voeg 'n lêer genaamd ssh by u boot -SD -kaart
  • Voeg 'n lêer met die naam wpa_supplicant.conf by en sit u wifi -inskrywing in

    ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1

    netwerk = {ssid = "MySSID" psk = "MyPassword"}

c. Plaas die SD -kaart in die pi en probeer toegang via ssh.

Stap 5: Stap 5: Beweeg die kop

Stap 5: Beweeg die kop
Stap 5: Beweeg die kop

Kode-tutoriaal om die kop te beweeg (beheer van 'n servo met 'n framboos-pi)

Om 'n servo wat op die Pi werk, te beheer, gaan ons 'n script skep wat die GPIO -penne waarmee die servo gekoppel is, beheer.

a. Koppel die servo aan die Pi:

  • +5v op servo => +5V op Pi
  • Gnd servo => gnd op Pi
  • Sein servo => pen 12 op Pi

b. U moet eers die gpio -penne opstel om PWM op die seinpen van die servo te gebruik.

c. Dan is dit net so eenvoudig as om die werksiklus (hier verduidelik) van die seinpen te kies om die servo van 90 grade met 'n werksiklus van 7,5 tot 0 grade te skuif wanneer die werksiklus 2,5 is en tot 180 grade met 'n werksiklus van 12.5

voer RPi. GPIO in as GPIO

invoertyd GPIO.setmode (GPIO. BOARD) GPIO.setwarnings (Onwaar) GPIO.setup (12, GPIO. OUT) p = GPIO. PWM (12, 50) p.start (7.5) probeer: terwyl True: p. ChangeDutyCycle (7.5) # 90 grade tyd. Slaap (1) p. ChangeDutyCycle (2.5) # 0 grade tyd. Slaap (1) p. ChangeDutyCycle (12.5) # 180 grade tyd. Slaap (1) behalwe KeyboardInterrupt: p.stop () GPIO.cleanup ()

Stap 6: Stap 6: Maak dit hoog

Stap 6: Maak dit hoog
Stap 6: Maak dit hoog
Stap 6: Maak dit hoog
Stap 6: Maak dit hoog

Kode handleiding vir die maak van die uil (klank speel met 'n framboos pi)

a. Koppel die USB -luidspreker aan.

b. Laai 'n geluid af - ons het 'n spookagtige toeter gekies.

c. Speel die klank deur hierdie opdrag uit te voer: omxplayer -o ook: hw: 1, 0 owl_sound.mp3

[d. As dit nie werk nie, kyk dan na watter uitvoer u Pi gebruik en op watter volume met die opdrag alsamixer - u word begroet met die menerskerm waar u die volume kan verander en u mediatoestel kan kies. Om die volume van u klank te verhoog, doen die opdrag soos hierdie omxplayer -o alsa: hw: 1, 0 owl_sound.mp3 --vol 500 Om hierdie geluid met Python te speel, kyk na ons toetsskrif.]

subproses invoer

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. PIPE)

Stap 7: Stap 7: Stroom die video vanaf die Pi

Stap 7: Stroom die video vanaf die Pi
Stap 7: Stroom die video vanaf die Pi
Stap 7: Stroom die video vanaf die Pi
Stap 7: Stroom die video vanaf die Pi

Kode-tutoriaal om 'n framboos-pi-kamerastroom te skep

a. Begin python app.py en kyk op u plaaslike netwerk op https://raspberrypi.local: 5000

b. Hierdie kode is geneem en effens aangepas by Miguel Grinberg https://blog.miguelgrinberg.com/post/flask-video-… hy verduidelik mooi hoe dit gedoen is en sy tutoriale is wonderlik-kyk gerus! Die basiese konsep is dat ons draad en kragopwekkers gebruik om die stromingsnelheid te verbeter.

Stap 8: Stap 8: Liggaamsopsporing

Stap 8: Liggaamsopsporing
Stap 8: Liggaamsopsporing

Kode vir liggaamsopsporing (ImageNetSSD op 'n videostroom met framboos pi)

a. Aangesien ons die Raspberry Pi 4 gebruik, het ons gedink dat dit die beste is om 'n paar diep leermodelle daarop te probeer in plaas van die basiese HaarCascade -metode waarop ons tot dusver beperk was.

b. Ons het 'n paar van die vooraf opgeleide modelle gekyk, soos YOLOv3, wat baie cool lyk. YOLOv3 klein gewigte, wat perfek sou gewees het vir die Pi, maar ons kon dit nie laat werk nie:(c. In plaas daarvan het ons gekies vir die MobileSSD-model wat ons kan gebruik met behulp van openCVs DNN (diep neurale net) module, soos ons geleer het uit hierdie kode: https://heartbeat.fritz.ai/real-time-object-detection-on-raspberry -pi-gebruik-opencv-dnn-98827255fa60 en van die held van tutoriale vir beeldverwerking, Adrian Rosebrock: https://www.pyimagesearch.com/2017/09/11/object-detection-with-deep-learning-and- opencv/

d. Aangesien ons egter probeer om hierdie inhoud te stroom en modelle op elke raam te laat loop, lei dit tot 'n vertraagde, gefragmenteerde video. Ons het weer geleer van Adrian Rosebrock https://www.pyimagesearch.com/2017/10/16/raspberry-pi-deep-learning-object-detection-with-opencv/ en gebruik die Python-verwerkingsmodule om ons beelde in toue te plaas waar hulle verwerk kan word sonder om die kamerastroom so swaar te blokkeer.

e. Probeer om die kode self uit te voer:)

Stap 9: Stap 9: Stuur zombie -kennisgewings

Stap 9: Stuur zombie -kennisgewings
Stap 9: Stuur zombie -kennisgewings
Stap 9: Stuur zombie -kennisgewings
Stap 9: Stuur zombie -kennisgewings

Kode vir die stuur van 'n kennisgewing (python na die telefoon)

a. Ons het besluit om die https://pushed.co -kennisgewingsdiens te gebruik.

b. U kan 'n gratis rekening kry en die app aflaai en vinnig opstel om mobiele kennisgewings te maak. Ons het die kennisgewings gemaak met behulp van 'n python -script soos hierdie.

invoer versoeke

payload = {"app_key": "APP_KEY", "app_secret": "APP_SECRET", "target_type": "app", "content": "Uil het 'n zombie opgespoor." } r = requests.post ("https://api.pushed.co/1/push", data = payload)

Dit is super eenvoudig en u kan u kennisgewingnaam aanpas!

Stap 10: Wat 'n toeter

Wat 'n Hoot!
Wat 'n Hoot!

Ons hoop dat u ons Smart Security Uil -projek geniet het! Dit was 'n baie aangename vervaardiging, en ek voel baie veiliger as ek weet dat my huis deur ons getroue uil bewaak word.

As u dink dat dit 'n wonderlike Halloween -toevoeging tot u slim huis sou wees, stem dan vir ons in die Instructables Halloween -wedstryd, en onthou, soos gewoonlik, om te like, kommentaar te lewer en in te teken!

Teken in op ons poslys!

Aanbeveel: