Sisukord:

Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem: 3 sammu
Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem: 3 sammu

Video: Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem: 3 sammu

Video: Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem: 3 sammu
Video: 💦Blackview BV9200 ЧЕСТНЫЙ ОБЗОР ПРОТИВОУДАРНОГО 2024, November
Anonim
Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem
Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem
Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem
Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem
Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem
Kes on ukse ees, Alexa aktiveeritud kaamerasüsteem

Mõnikord ei taha telerivaatamise ajal uksele vastata, kui see pole oluline. See projekt võimaldab teil vaadata ukse taga olevat inimest, öeldes lihtsalt Amazoni Echo seadmele "Alexa, lülitage uksemonitor sisse". Sa vaatad, kes teleekraanile ilmub, seejärel tagasi tavalise telesaate "Alexa, lülita teler sisse" juurde. Süsteem võib olla väärtuslik ka vanematele täiskasvanutele või lastele, keda müüjad, vargad jms kasutavad ära. See võimaldab teie meelelahutussüsteemi suure ekraaniga telerist olla mitte ainult esiukse kaamera, vaid ka kõigi teiste turvakaamerate kaameraekraan. tegelikult võiks seda isegi laiendada, et kuvada videot Interneti -kaameratest, näiteks rannakaamerad jne.

Osad:

Meelelahutussüsteem:

Mitme HDMI -sisendiga teler (enamikul teleritel on need olemas)

Kaabel või DVR -kast

Ruuter ja Interneti -ühendus kaabliboksi kaudu (ei pruugi olla vajalik, kui teil on WiFi)

Amazon Echo ("Alexa")

Harmony Hub

Kaamera (d)

IP -kaamera esiuksel (eelistatud Power Over Ethernet -POE -tüüpi)

Vaarika Pi3 projektikarbis (originaal Pi võib töötada) koos HDMI -kaabliga

Arduino Pro Mini 8 Mhz, 3.3v

IR -moodul (enamlevinud tüübid töötavad)

Samm: seadistamine, eelprogrammeerimine (testimine)

Seadistamine, eelprogrammeerimine (testimine)
Seadistamine, eelprogrammeerimine (testimine)
Seadistamine, eelprogrammeerimine (testimine)
Seadistamine, eelprogrammeerimine (testimine)
Seadistamine, eelprogrammeerimine (testimine)
Seadistamine, eelprogrammeerimine (testimine)

See projekt tugineb Pi3 omxplayerile, mis dekodeerib video riistvaralise kiirendusega. Omxplayerit saab testida Pi -terminali käsurealt, kasutades sobivat vormingut rtsp: // user@password@ipaddress, mida kaamera nõuab. Pi peaks olema ühendatud Ethernetiga (kuigi Pi3 saab ühendada ka WiFi kaudu, kuid pole testitud) ja asub füüsiliselt meelelahutuskeskuses, nii et Pi HDMI -väljundkaabel jõuab teleri HDMI -sisendpesani. Arduino ja IR moodul ühenduvad Pi -ga ja edastavad teleri kaugjuhtimispuldi nupuvajutuste lugemisel saadud teavet. Pi võiks seda dekodeerimist teha otse IR -moodulist, kuid ma oskan paremini Arduino programmeerimist kui Pythoni programmeerimine ja lisaks säästab see protsessoriressursse Pi põhiülesande jaoks videovoo (de) dekodeerimiseks.

Kuna minu turvasüsteemil on mitu kaamerat, kasutasin Pi toitega seireekraani, et kuvada korraga 4 kaamerat, lisaks kuvada üksikuid kaameraid täisekraanil. Järgige neid juhiseid, kuid teil on tõenäoliselt palju probleeme kaamerate stabiilseks kuvamiseks.

Üks probleemidest on see, et programmis loetletud 4 akna suurust ei pruugi sobida teie konkreetse teleri eraldusvõimega. Otsige üles, milliseid resolutsioone teie monitor toetab, ja märkige samal ajal kaamerate eraldusvõime. Enamikul IP -kaameratel on kõrge eraldusvõimega (1080p) ja madala eraldusvõimega (640x480) voog, nii et kui soovite ainult ühte suure eraldusvõimega videot välisuksest, kasutage kõrge resolutsiooniga voogu rtsp: //. Minge madala eraldusvõimega vooga kaameratele neljas kvadrandis, te ei märka väiksemate pildisuurustega suurt erinevust. Võite kasutada minu bash -skripti (test.sh) akna suurust (1080p eraldusvõime režiimis, näidates 4 võrdse suurusega 640x480 kaamerat, mis on sobitatud). Vastasel juhul kasutage oma teleri pikslite paigutamiseks graafikapaberit ja visandage, kui palju ristkülikuid selles piirkonnas soovite. Järgmisena leidke, kui palju 640 x 480 videot mahub ilma liiga palju aspekte muutmata (horisontaalne venitamine näeb parem välja kui vertikaalselt). Mulle ei meeldi piirid, nii et ma ei arvutanud nende jaoks. Nummerda ristkülikud vasakult ülevalt paremale alla 1, 2, 3..jne. Seejärel tehke aknanumbrite veerg, kirjutage nende numbrite iga rea jaoks üles vasakpoolne ülemine x, y piksel ja parem alumine piksel x, y. Need numbrid asendatakse seejärel skriptiga, et saada kohandatud kuva, soovi korral võiks teil olla 3 x 3 ekraan. Kui soovite ainult ühte ekraani, kommenteerige lihtsalt ülejäänud 3 kaamerat ja muutke akna suurus täisekraanil (ja kasutage kõrge eraldusvõimega rtsp -voogu) ning pange skriptile pealkiri "test1.sh". Tehke nii palju skripte kui soovite, programm btn.py Python kutsub need üles, kui Arduino muudab GPIO tihvte.

Üks probleem stabiilse ekraani saamisel (pildi peal peen, kuid madalamad vertikaalsed triibud) on see, et paljud kaamerad voogesitavad palju paremini, kasutades rtsp üle tcp (ma kasutan Hikvision 2–5 Mp IP -kaameraid). Seetõttu kasutage omxplayeris "--avdict rtsp_transport: tcp", nagu näidatud. Muud kasulikud omxplayer-käsud on helitugevus (--vol -6000 vaigistamiseks) ja puhver (--videojärjekord x), kus x = 1 või rohkem.

IP -kaamera seaded võivad samuti põhjustada probleeme omxplayeriga. Kõik IP -kaamerad tuleks seadistada samadele kaadritele sekundis, vastasel juhul läheb pilt katki. Kui seadistada radikaalselt erinevad kaadrisagedused, läks ühe kaamera ajatemplil kuvatav aeg tegelikult mõneks sekundiks tahapoole, seejärel edasi ja tagasi jne. Veenduge, et teie omxplayeri aknad ei kattuks või kattuv osa vilgub.

2. samm: pange see kokku

Selle kokku panemine
Selle kokku panemine

Saate juhtkaablit ja telerit käsitsi juhtida, et Pi saaks esiukse kaamerat näidata. See nõuab aga üsna palju nupuvajutusi, sealhulgas universaalse kaugjuhtimispuldi sobivat lülitamist kaablirežiimist telerežiimi, et võimaldada vahetada HDMI sisendallikas Pi kaamera dekooderiks (HDMI 2). Kui soovite võimalust kuvada täiendavaid kaameraekraane, siis peate ka universaalse kaugjuhtimispuldi AUX -le lülitama, et juhtida Arduino ja seega ka Pi -kaamera valikut. Selle protsessi lihtsustamiseks kasutage Harmony Hubi ja sellega seotud nutitelefonirakendust Harmony, õpetades seda teleri ja kaabliboksi juhtimiseks tavalise telerivaatamise jaoks ühes tegevuses, seejärel looge teine tegevus Pi videomonitori juhtimiseks. Tegevus hõlmab teleri sisselülitamist, telerisisendit HDMI 2 -le ja virtuaalse NECx -teleri (st Arduino ja Pi) nuppude 0 kuni 5 juhtimist. See võimaldab juhtida kõike Harmony nutitelefoni rakenduse kaudu. Asjade veelgi lihtsamaks muutmiseks ühendage telerite või uste jälgimise funktsioonidega hääljuhtimiseks Amazon Echo Dot (Alexa) rakendus Harmony rakendusega. Harmony veebisait pakub üksikasju nende uute Alexa oskuste lubamise kohta. Uued oskused. Kui need on uute Alexa oskustega lingitud, võimaldavad sellised märksõnad nagu „Teleri sisselülitamine” või „Uksemonitori sisselülitamine” sobivaid toiminguid ilma universaalse kaugjuhtimispuldi kaudu infrapuna vajamata.

Pi ühendatakse LAN -i kaudu Etherneti kaudu ja teleriga HDMI -kaabli kaudu. Paigaldasin Pi -le juhtmete kaudu 3,3 -voldise Pro Mini, et lisada täiendav kaamera vahetamine. Pro Mini saab toite Pi 3,3 -voldisest tihvtist. IR -moodul ühendatakse Arduino tihvtiga 2 ja lisatud visand dekodeerib nupuvajutuse 0 kuni 5 (tegelikult 0 kuni 9, kuid mõned Arduino tihvtid pole veel ühendatud). Arduino väljundid ühenduvad Pi digitaalsisendiga GPIO -pistikutega, kus bash -skripti katkestus määrab, millist "nuppu" vajutati, seejärel peatab ühe ekraanivaate valiku ja käivitab teise.

Minu kaablikarp on firmalt Spectrum (endine Time Warner Cable), mis on Motorola DVR mudel DCX3510. See kasutab IR jaoks GI -kaabli protokolli. Sony teler kasutab Sony protokolli 2. Ma arvasin, et üks või teine neist koodidest sobiks Pi IR vastuvõtja juhtimiseks ja kumbki töötas, kuigi see ei osutunud otstarbekaks. Kaugjuhtimispult ootaks täiendavaid käske või vahetaks automaatselt ka sisendallikat, kui vajutati nuppu 0 kuni 9. Seetõttu pidin kasutama teistsugust koodi, mis ei suhtleks kaabellevi või teleriga. Leidsin, et minu universaalsel kaugjuhtimispuldil oli eelnevalt programmeeritud AUX -seadme kood (ma ei tea, mida see juhtis) ja otsustasin seda kasutada. Toodetud koodide kohaselt kasutati 32 -bitist koodi NECx, nii et sisestasin need nupukoodid Arduino IR_Rev_Codes_Pi_Monitor visandisse. Muutke programmi, kui teil on teine mudel, kasutades IRLib2 vastuvõtuprogrammi ja märkige vajutatud nuppude tegija, protokoll ja kuuskantväärtused.

3. samm: järeldus

Järeldus
Järeldus
Järeldus
Järeldus
Järeldus
Järeldus

Uksemonitor on praktiline koduautomaatika projekt. See oli minu esimene kogemus Pi programmeerimisel Pythoni abil. Python võimaldab programmeerida katkestust, mis oli minu arvates reserveeritud mikrokontrolleritele. Katkestus võimaldab programmil normaalselt töötada, käivitades omxplayeri, kontrollimata pidevalt, kas on vaja mõnda muud toimingut, näiteks ekraani vahetamist uuele kaameravoole. Kui aga katkestus toimub, määrab programm seejärel kindlaks, milline uus videovoog tuleks üles tuua. Arduino on seadistatud andma impulsi Pythoni katkestuse käivitamiseks. Katkestuse korral otsib programm, milline konkreetne Arduino väljund (vastab IR -kaugjuhtimispuldi nupule) on aktiveeritud. Lõpuks tapab programm mis tahes praeguse omxplayer -ekraani ja käivitab uue omxplayer -kuva.

Sain teada, et Pi ei seadista oma GPIO-nööpe sisestama nagu Arduino vaikimisi- see pole Pi viga, kuid Broadcom BCM2837 on tehasest pärit. Mulle meeldib 4 tuumaga 1,2 GHz protsessor, väikese energiatarbega ja odava hinnaga arvuti, mis suudab kuvada suurepärast HD -videot. IR -nupp 1 näitab nelinurkset ekraani ja nupud 2 kuni 5 näitavad ühte suure eraldusvõimega kaamera ekraani.

Vajutades IR kaugjuhtimispuldi nuppu 0, tühistatakse videonäitus ja kuvatakse käsurea Pi. Kui soovite vaadata Youtube'i videoid vms, kasutage Bluetooth -klaviatuuri, tippige "startx" ja kasutage Pi -brauserit, et navigeerida Youtube'i videoni ja esitada seda täisekraanil kõrglahutusega.

Soovitan: