Kazalo:
- 1. korak: Nastavitev, predhodno programiranje (testiranje)
- 2. korak: Sestavite skupaj
- 3. korak: Zaključek
Video: Kdo je pri vratih, sistem kamere, ki ga aktivira Alexa: 3 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:07
Včasih med gledanjem televizije ne želite odpreti vrat, razen če je to pomembno. Ta projekt vam omogoča, da si ogledate osebo pred vrati, tako da preprosto rečete Amazonovi napravi Echo "Alexa, vklopi monitor za vrata". Preverite, kdo se prikaže na TV -zaslonu, nato pa se vrnite na običajno TV -programiranje "Alexa, vklopi televizor". Sistem bi lahko bil pomemben tudi za starejše odrasle ali otroke, ki bi bili ranljivi, da bi jih izkoristili prodajalci, tatovi in podobno. To omogoča, da je TV z velikim zaslonom vašega razvedrilnega sistema monitor zaslona kamere ne samo za kamero na sprednjih vratih, ampak tudi za vse druge varnostne kamere, ki jih morda imate; pravzaprav bi ga lahko celo razširili na prikaz videoposnetkov z internetnih kamer, kot so kamere na plaži itd.
Deli:
Zabavni sistem:
TV z več vhodi HDMI (večina televizorjev jih ima)
Kabel ali DVR škatla
Usmerjevalnik in internetna povezava prek kabelske omarice (morda ne potrebujete, če imate WiFi)
Amazon Echo ("Alexa")
Harmony Hub
Kamere
IP kamera na vhodnih vratih (zaželena vrsta napajanja prek Etherneta -POE)
Raspberry Pi3 v projektni škatli (original Pi lahko deluje) s kablom HDMI
Arduino Pro Mini 8 Mhz, 3.3v
IR modul (najpogostejše vrste bodo delovale)
1. korak: Nastavitev, predhodno programiranje (testiranje)
Ta projekt temelji na omiljenem predvajalniku Pi3, ki dekodira video s strojnim pospeševanjem. Omxplayer lahko poskusno zaženete iz ukazne vrstice v terminalu Pi z uporabo ustrezne oblike zapisa rtsp: // user@password@ipaddress, ki jo potrebuje vaša kamera. Pi mora biti priključen na ethernet (čeprav bi bil lahko Pi3 povezan tudi prek WiFi, vendar ni preizkušen) in fizično nameščen v razvedrilnem centru, tako da lahko izhodni kabel HDMI Pi doseže vhodni priključek HDMI televizorja. Modul Arduino in IR se bo povezal s Pi in prenašal podatke, pridobljene pri branju pritiskov na gumbih za daljinsko upravljanje televizorja. Pi bi lahko to dekodiranje izvedel neposredno iz IR modula, vendar sem pri programiranju Arduino boljši od programiranja Python in poleg tega prihrani procesorske vire za Pi -jevo glavno nalogo dekodiranja videotokov.
Ker ima moj varnostni sistem več kamer, sem uporabil nadzorni zaslon s pogonom Pi kot način za prikaz 4 kamer hkrati in prikaz posameznih kamer na celotnem zaslonu. Upoštevajte ta navodila, vendar boste verjetno imeli veliko težav, da bodo kamere stabilno prikazane.
Ena od težav je, da 4 velikosti oken, navedene v programu, morda ne ustrezajo vaši ločljivosti televizorja. Ugotovite, katere ločljivosti podpira vaš monitor, pri tem pa upoštevajte ločljivost kamere, ki jo imajo vaše kamere. Večina kamer IP ima tok visoke ločljivosti (1080p) in nizko ločljivost (640x480), zato, če želite le en video vhodnih vrat z visoko ločljivostjo, uporabite format visoke ločljivosti rtsp: // format. Pojdite z nizko ločljivostjo za kamere v 4 kvadrantih, pri manjših velikostih slike ne boste opazili velike razlike. Uporabite lahko okna mojega bash skripta (test.sh) (v načinu ločljivosti 1080p, ki prikazuje 4 kamere velikosti 640x480 enake velikosti, prilagojene). V nasprotnem primeru uporabite grafični papir za postavitev televizijskih pik in nato narišite, koliko pravokotnikov želite na tem področju. Nato poiščite, koliko videoposnetkov velikosti 640x480 se bo prilegalo, ne da bi se preveč spreminjal vidik (vodoravno raztezanje izgleda bolje kot navpično). Ne maram meja, zato nisem računala zanje. Oštevilčite pravokotnike od zgoraj levo do desno spodaj 1, 2, 3 itd. Nato naredite stolpec s številkami oken, za vsako vrstico teh številk zapišite zgornji levi x, y slikovni pik in spodnji desni pikslen x, y. Te številke se nato nadomestijo v skript, da dobite prikaz po meri, po želji pa bi lahko imel zaslon 3 x 3. Če želite samo en zaslon, samo komentirajte ostale 3 kamere in nastavite velikost okna na celozaslonsko ločljivost (in uporabite tok visoke ločljivosti rtsp) ter skript naslovite "test1.sh". Naredite kolikor želite skriptov, program Python btn.py jih bo poklical, ko bo Arduino spremenil zatiče GPIO.
Ena težava pri pridobivanju stabilnega zaslona (vrh slike je v redu, vendar nižje navpične črte slike) je, da številne kamere pretakajo veliko bolje z uporabo rtsp preko tcp (uporabljam Hikvision 2 do 5 Mp IP kamere). Zato v omxplayerju uporabite "--avdict rtsp_transport: tcp", kot je prikazano. Drugi uporabni ukazi omxplayerja so glasnost (--vol -6000 za izklop zvoka) in medpomnilnik (--video čakalna vrsta x), kjer je x = 1 ali več.
Nastavitve IP kamere lahko povzročijo težave tudi z omxplayerjem. Vse kamere IP morajo biti nastavljene na enake sličice na sekundo, sicer se bo slika zlomila. Ko je nastavljen na radikalno drugačno hitrost sličic, se je čas, prikazan na eni časovni oznaki kamere, dejansko za nekaj sekund vrnil nazaj, nato naprej, nazaj itd. Prepričajte se, da se okna omxplayerja ne prekrivajo, sicer bo prekrivajoči se del utripal.
2. korak: Sestavite skupaj
Lahko bi ročno upravljali kabelsko omarico in televizijo, da bi Pi prikazali kamero vhodnih vrat. Vendar pa to zahteva kar nekaj pritiskov na tipke, vključno z ustreznim preklopom univerzalnega daljinskega upravljalnika iz kabelskega v TV način, da se omogoči sprememba vhodnega vira HDMI v dekoder Pi kamere (HDMI 2). Če želite prikazati dodatne zaslone fotoaparatov, morate tudi univerzalni daljinski upravljalnik preklopiti na AUX za nadzor Arduina in s tem izbire kamere Pi. Če želite poenostaviti ta postopek, uporabite Harmony Hub in povezano aplikacijo za pametni telefon Harmony, ki ga naučite upravljati televizor in kabelsko omarico za normalno gledanje televizije v eni dejavnosti, nato pa ustvarite drugo dejavnost za nadzor video monitorja Pi. Dejavnost vključuje vklop televizorja, TV vhoda na HDMI 2 in nadzor navideznih televizorjev NECx (tj. Arduino in Pi) od 0 do 5. To omogoča nadzor nad vsem prek aplikacije za pametni telefon Harmony. Če želite stvari še olajšati, povežite aplikacijo Amazon Echo Dot (Alexa) z aplikacijo Harmony za glasovni nadzor nad funkcijami televizorja ali vrat. Spletno mesto Harmony vsebuje podrobnosti o tem, kako omogočiti te nove veščine Alexa. Nove veščine. Ko bodo povezane z novimi znanji Alexa, bodo ključne besede, kot sta »Vklopi televizor« ali »Vklopi nadzor vrat«, omogočile ustrezna dejanja, ne da bi potrebovali IR z univerzalnega daljinskega upravljalnika.
Pi je prek etherneta povezan z lokalnim omrežjem, prek kabla HDMI pa s televizorjem. Namestil sem 3,3 voltni Pro Mini prek žic na Pi kot možnost za dodajanje dodatnega preklopa kamere. Pro Mini se lahko napaja iz 3,3 -voltnega vtiča Pi. IR -modul se poveže z nožico 2 Arduina, priložena skica pa dekodira pritisk gumba od 0 do 5 (dejansko 0 do 9, vendar nekateri zatiči Arduino še niso povezani). Arduino izhodi se povežejo z vhodi PiIO za digitalni vhod GPIO, kjer prekinitev bash skripta določi, kateri "gumb" je bil pritisnjen, nato ustavi eno možnost prikaza zaslona in zažene drugo.
Moja kabelska omarica je iz Spectruma (prej Time Warner Cable), ki je model Motorola DVR DCX3510. Za IR uporablja protokol GI Cable. Televizor Sony uporablja protokol Sony 2. Mislil sem, da bi ena ali druga od teh kod bila v redu za nadzor sprejemnika Pi IR in je bodisi delovalo, čeprav se je izkazalo, da ni praktično. Daljinski upravljalnik bi pričakoval dodatne ukaze ali pa samodejno spremeni tudi vhodni vir, ko pritisnete gumb od 0 do 9. Zato sem moral uporabiti drugo kodo, ki ne bi delovala s kabelskim sprejemnikom ali televizorjem. Ugotovil sem, da ima moj univerzalni daljinski upravljalnik predhodno programirano kodo za napravo AUX (ne vem, kaj nadzoruje), in se odločil, da jo uporabim. Proizvedene kode pravijo, da uporablja 32 -bitno kodo NECx, zato sem te kode gumbov vnesel v skico Arduino IR_Rev_Codes_Pi_Monitor. Če imate drug model, spremenite program z uporabo programa za sprejem v IRLib2 in upoštevajte izdelovalca, protokol in šestnajstiške vrednosti za pritisnjene gumbe.
3. korak: Zaključek
Monitor vrat je praktičen projekt avtomatizacije doma. To je bila moja prva izkušnja s programiranjem Pi s Pythonom. Python omogoča programiranje prekinitve, funkcija, za katero sem mislil, da je rezervirana za mikrokrmilnike. Prekinitev omogoča, da se program normalno izvaja z izvajanjem omxplayerja, ne da bi nenehno preverjal, ali je potrebno kakšno drugo dejanje, na primer sprememba prikaza na nov vir kamere. Če pa pride do prekinitve, program nato določi, kateri nov video vir naj se prikaže. Arduino je nastavljen tako, da zagotavlja impulz za sprožitev prekinitve Python. Če pride do prekinitve, program poišče, kateri aktivirani izhod Arduino (ki ustreza pritisnjenemu gumbu daljinskega upravljalnika IR). Končno program ubije kateri koli trenutni prikaz omxplayerja in zažene nov prikaz omxplayerja.
Spoznal sem, da Pi ne prilagodi svojih zatičev GPIO tako, kot to privzeto počne Arduino- ni napaka Pi, je pa način, kako je Broadcom BCM2837 iz tovarne. Všeč mi je 4 -jedrni, 1,2 Ghz procesor, nizkocenovni in poceni računalnik, ki lahko prikaže odlične HD video posnetke. IR gumb 1 prikazuje štirikotni zaslon, vsak od gumbov 2 do 5 pa prikazuje en sam velik zaslon kamere v visoki ločljivosti.
S pritiskom na gumb IR na daljinskem upravljalniku 0 prekinete prikaz videa in prikaže ukazno vrstico Pi. Če želite gledati videoposnetke Youtube ali podobno, uporabite tipkovnico Bluetooth, vnesite "startx" in se z brskalnikom Pi pomaknite do videoposnetka Youtube in ga predvajajte na celotnem zaslonu v visoki ločljivosti.
Priporočena:
Brezžični zvonec pri vratih - (Raspberry PI in Amazon Dash): 4 koraki (s slikami)
Brezžični zvonec pri vratih - (Raspberry PI in Amazon Dash): Kaj počne? (glejte videoposnetek) Ko pritisnete gumb, Raspberry odkrije prijavo nove naprave v brezžičnem omrežju. Tako lahko prepozna gumb, ki ga pritisnete, in posreduje podatke o tem dejstvu v vaš mobilni telefon (ali napravo vašega
Obvestilo o zvonjenju pri vratih za osebe z okvaro sluha prek avtomatizacije doma (ESP-zdaj, MQTT, Openhab): 3 koraki
Obvestilo o vratnem zvoncu za slušno prizadete prek avtomatizacije doma (ESP-zdaj, MQTT, Openhab): V tem navodilu vam pokažem, kako sem svoj običajni zvonec za vrata vključil v domačo avtomatizacijo. Ta rešitev je zelo primerna za osebe z okvaro sluha.V mojem primeru jo uporabljam za obveščanje, če je soba zasedena in hrupna na rojstnodnevni zabavi otrok. JAZ
Pametni zvonec pri vratih za dom Pomočnik: 4 koraki
Pametni zvonec pri vratih za dom Pomočnik: Torej, želel sem zvonec na vratih z naslednjimi funkcijami: Video z vrat Dvosmerni zvok Dva gumba Integracija s stensko tablico, ki prikazuje HomeAssistant UIS Nekatere možnosti so prišle kot Doorbird (drago in nimajo dvosmernega zvoka calli
Brezžični oddajnik pri vratih: 3 koraki (s slikami)
Brezžični oddajnik zvoncev pri vratih: Ta projekt opisuje prvi del naslednjih dveh projektov: Brezžični oddajnik zvoncev na vratih, kot je opisano v tem navodilu, Brezžični sprejemnik zvoncev za vrata, ki bo opisan v navodilih za brezžični sprejemnik zvoncev na vratih Ko sedim v t
Kdo je pri mojih vratih? Projekt PIR senzorja gibanja/senzorja dosega: 5 korakov
Kdo je pri mojih vratih? Projekt senzorja gibanja PIR/senzorja dosega: Naš projekt je namenjen zaznavanju gibanja prek PIR in senzorjev razdalje. Koda Arduino bo oddajala vizualni in zvočni signal, ki bo uporabniku povedal, da je nekdo v bližini. Koda MATLAB bo poslala e -poštni signal, ki bo uporabnika opozoril, da je nekdo v bližini. Ta naprava