Satura rādītājs:
- 1. darbība: iestatīšana, sākotnējā programmēšana (testēšana)
- 2. solis: salieciet to kopā
- 3. solis: secinājums
Video: Kas atrodas pie durvīm, Alexa iedarbināta kameru sistēma: 3 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Dažreiz, skatoties televizoru, jūs nevēlaties atbildēt uz durvīm, ja vien tas nav svarīgi. Šis projekts ļauj apskatīt personu pie durvīm, vienkārši sakot Amazon Echo ierīcei "Alexa, ieslēdz durvju monitoru". Jūs pārbaudāt, kas parādās televizora ekrānā, un pēc tam atgriežaties pie parastās TV programmas "Alexa, ieslēdziet televizoru". Sistēma varētu būt noderīga arī vecākiem pieaugušajiem vai bērniem, kuri būtu neaizsargāti pret to, ka tos varētu izmantot pārdevēji, zagļi un tamlīdzīgi. Tas ļauj jūsu izklaides sistēmas lielā ekrāna televizoram kļūt par kameras displeja monitoru ne tikai priekšējo durvju kamerai, bet arī jebkurai citai drošības kamerai, kas jums varētu būt; patiesībā to pat varētu paplašināt, lai parādītu video no interneta kamerām, piemēram, pludmales kamerām utt.
Daļas:
Izklaides sistēma:
TV ar vairākām HDMI ieejām (lielākajā daļā televizoru tās ir)
Kabelis vai DVR kārba
Maršrutētājs un interneta savienojums, izmantojot kabeļtelevīziju (iespējams, nav nepieciešams, ja jums ir WiFi)
Amazon Echo ("Alexa")
Harmonijas centrs
Kamera (-as)
IP kamera pie priekšējām durvīm (vēlams izmantot Power over Ethernet - POE tipa)
Raspberry Pi3 projekta kastē (oriģinālais Pi var darboties) ar HDMI kabeli
Arduino Pro Mini 8 Mhz, 3.3v
IR modulis (visbiežāk izmantotie veidi darbosies)
1. darbība: iestatīšana, sākotnējā programmēšana (testēšana)
Šis projekts balstās uz Pi3 omxplayer, kas atšifrē video ar aparatūras paātrinājumu. Omxplayer var izmēģināt, izmantojot komandrindu Pi terminālī, izmantojot atbilstošo formātu rtsp: // user@password@ipaddress, kas nepieciešams jūsu kamerai. Pi jābūt savienotam ar Ethernet (lai gan Pi3 varētu savienot arī, izmantojot WiFi, bet netiktu pārbaudīts), un fiziski jāatrodas izklaides centrā, lai Pi HDMI izejas kabelis varētu sasniegt televizora HDMI ieejas ligzdu. Arduino un IR modulis izveidos savienojumu ar Pi un pārraidīs informāciju, kas iegūta, lasot televizora tālvadības pults pogas. Pi varētu šo dekodēšanu veikt tieši no IR moduļa, bet es labāk pārvaldu Arduino programmēšanu nekā Python programmēšana, turklāt tas ietaupa procesora resursus Pi galvenajam uzdevumam - video straumes (-u) dekodēšanai.
Tā kā manai drošības sistēmai ir vairākas kameras, es izmantoju ar Pi darbināmu pārraudzības displeju, lai vienlaikus parādītu 4 kameras, kā arī atsevišķu kameru pilnekrāna režīmu. Izpildiet šos norādījumus, taču, iespējams, jums būs daudz problēmu, lai kameras parādītu stabili.
Viena no problēmām ir tā, ka programmā norādītie 4 loga izmēri var neatbilst jūsu konkrētajai TV izšķirtspējai. Uzziniet, kādas izšķirtspējas jūsu monitors atbalsta, vienlaikus ievērojot jūsu kameru izšķirtspēju. Lielākajai daļai IP kameru ir augstas izšķirtspējas (1080p) un zemas izšķirtspējas (640x480) straume, tādēļ, ja vēlaties tikai vienu augstas izšķirtspējas video no ieejas durvīm, izmantojiet augstas izšķirtspējas straumi rtsp: //. Iet ar zemas izšķirtspējas straumi kamerām 4 kvadrantos, jūs nepamanīsit lielas atšķirības ar mazākiem attēla izmēriem. Jūs varat izmantot manu bash skripta (test.sh) logu izmērus (1080p izšķirtspējas režīmā, parādot 4 vienāda izmēra 640x480 kameras, kas pielāgotas). Pretējā gadījumā izmantojiet grafisko papīru, lai izkārtotu televizora pikseļus, un pēc tam ieskicējiet, cik taisnstūru vēlaties šajā apgabalā. Tālāk noskaidrojiet, cik 640 x 480 videoklipu būs piemēroti, nemainot pārāk daudz aspektu (stiepšanās horizontāli izskatās labāk nekā vertikāli). Man nepatīk robežas, tāpēc es par tām nerēķināju. Numurējiet taisnstūrus no augšas pa kreisi uz leju pa labi 1, 2, 3 … utt. Pēc tam izveidojiet loga numuru kolonnu, katrai šo skaitļu rindai pierakstiet augšējo kreiso x, y pikseļu un apakšējo labo pikseļu x, y. Pēc tam šie skaitļi tiek aizstāti skriptā, lai iegūtu pielāgotu displeju. Ja vēlaties, jums var būt 3 x 3 displejs. Ja vēlaties tikai vienu displeju, vienkārši komentējiet pārējās 3 kameras un iestatiet loga izmēru pilnekrāna izšķirtspējā (un izmantojiet augstas izšķirtspējas rtsp straumi) un nosauciet skriptu "test1.sh". Izveidojiet tik daudz skriptu, cik vēlaties, programma btn.py Python tos izsauks, kad Arduino mainīs GPIO tapas.
Viena problēma, lai iegūtu stabilu displeju (attēla augšdaļa ir smalka, bet zemākas attēla vertikālas svītras) ir tā, ka daudzas kameras straumē daudz labāk, izmantojot rtsp pār tcp (es izmantoju Hikvision 2 līdz 5 Mp IP kameras). Tāpēc lietojiet "--avdict rtsp_transport: tcp" omxplayer, kā parādīts attēlā. Citas noderīgas omxplayer komandas ir skaļums (--vol -6000, lai izslēgtu skaņu) un buferis (--video rinda x), kur x = 1 vai vairāk.
IP kameras iestatījumi var radīt arī problēmas ar omxplayer. Visām IP kamerām jābūt iestatītām vienādiem kadriem sekundē, pretējā gadījumā attēls sadalīsies. Kad iestatīts radikāli atšķirīgs kadru ātrums, vienas kameras laika zīmogā parādītais laiks faktiski uz dažām sekundēm pagāja atpakaļ, pēc tam uz priekšu, tad atpakaļ utt. Pārliecinieties, vai jūsu atskaņotāja logi nepārklājas, vai arī daļa, kas pārklājas, mirgo.
2. solis: salieciet to kopā
Jūs varētu manuāli kontrolēt kabeļtelevīziju un televizoru, lai ļautu Pi parādīt priekšējo durvju kameru. Tomēr tas prasa diezgan daudz pogu nospiešanu, ieskaitot atbilstošu universālā tālvadības pults pārslēgšanu no kabeļa režīma uz TV režīmu, lai varētu mainīt HDMI ievades avotu uz Pi kameras dekodētāju (HDMI 2). Ja vēlaties iespēju parādīt papildu kameru ekrānus, jums arī jāpārslēdz universālā tālvadības pults uz AUX, lai kontrolētu Arduino un līdz ar to arī Pi kameras izvēli. Lai vienkāršotu šo procesu, izmantojiet Harmony Hub un saistīto viedtālruņu lietotni Harmony, iemācot tai kontrolēt televizoru un kabeļtelevīziju normālai TV skatīšanai vienā darbībā, pēc tam izveidojiet citu darbību, lai kontrolētu Pi video monitoru. Darbības ietver televizora ieslēgšanu, televizora ieeju HDMI 2 un virtuālā NECx TV (ti, Arduino un Pi) pogu kontroli no 0 līdz 5. Tas ļauj visu kontrolēt, izmantojot viedtālruņa lietotni Harmony. Lai padarītu lietas vēl vienkāršākas, savienojiet lietotni Amazon Echo Dot (Alexa) ar lietotni Harmony, lai balss vadītu TV vai durvju uzraudzības funkcijas. Harmony vietnē ir sniegta informācija par to, kā iespējot šīs jaunās Alexa prasmes. Jaunas prasmes. Tiklīdz atslēgvārdi, piemēram, “Ieslēgt televizoru” vai “Ieslēgt durvju monitoru”, būs saistīti ar jaunām Alexa prasmēm, ļaus veikt atbilstošas darbības, neprasot IS no universālās tālvadības pults.
Pi ir savienots, izmantojot Ethernet, ar jūsu LAN, un, izmantojot HDMI kabeli, ar televizoru. Es instalēju 3,3 voltu Pro Mini, izmantojot vadus, Pi kā iespēju pievienot papildu kameras pārslēgšanu. Pro Mini var darbināt no Pi 3,3 voltu tapas. IR modulis tiek savienots ar Arduino 2. tapu, un pievienotā skice dekodē pogas nospiešanu no 0 līdz 5 (faktiski no 0 līdz 9, bet dažas Arduino tapas vēl nav pievienotas). Arduino izejas savienojas ar Pi digitālās ievades GPIO tapām, kur bash skripta pārtraukums nosaka, kura "poga" tika nospiesta, pēc tam aptur vienu displeja skata opciju un sāk citu.
Mana kabeļu kaste ir no Spectrum (agrāk Time Warner Cable), kas ir Motorola DVR modelis DCX3510. Tas izmanto GI Cable protokolu IR. Sony televizors izmanto Sony protokolu 2. Es domāju, ka viens vai otrs no šiem kodiem būtu piemērots, lai kontrolētu Pi IR uztvērēju, un vai nu tas darbojās, lai gan izrādījās, ka tas nav praktiski. Tālvadības pults gaidīs papildu komandas vai automātiski mainīs ievades avotu, nospiežot pogu 0 līdz 9. Tāpēc man bija jāizmanto cits kods, kas nevarētu mijiedarboties ar kabeļu uztvērēju vai televizoru. Es atklāju, ka manā universālajā tālvadības pultī bija iepriekš ieprogrammēts AUX ierīces kods (nezinu, ko tā kontrolē), un nolēmu to izmantot. Sagatavotajos kodos bija teikts, ka tiek izmantots 32 bitu kods NECx, tāpēc es ievadīju šos pogu kodus Arduino IR_Rev_Codes_Pi_Monitor skicē. Mainiet programmu, ja jums ir cits modelis, izmantojot saņemšanas programmu IRLib2, un atzīmējiet nospiesto pogu veidotāja, protokola un sešstūra vērtības.
3. solis: secinājums
Durvju monitors ir praktisks mājas automatizācijas projekts. Tā bija mana pirmā pieredze programmēšanā Pi ar Python. Python ļauj programmēt pārtraukumu, kas, manuprāt, bija rezervēts mikrokontrolleriem. Pārtraukums ļauj programmai darboties normāli, palaižot omxplayer, nepārtraukti nepārbaudot, vai ir nepieciešama cita darbība, piemēram, displeja maiņa uz jaunu kameras plūsmu. Tomēr, ja notiek pārtraukums, programma nosaka, kura jaunā video plūsma ir jāuzsāk. Arduino ir iestatīts, lai nodrošinātu impulsu, lai izraisītu Python pārtraukumu. Ja notiek pārtraukums, programma meklē, kura konkrētā Arduino izeja (kas atbilst nospiestajai IR tālvadības pogai) ir aktivizēta. Visbeidzot, programma nogalina jebkuru pašreizējo omxplayer displeju un sāk jaunu omxplayer displeju.
Es uzzināju, ka Pi nenosaka GPIO tapas ievadīšanai kā Arduino pēc noklusējuma- tas nav Pi vaina, bet tas ir veids, kā Broadcom BCM2837 ir no rūpnīcas. Man patīk 4 kodolu, 1,2 Ghz procesors, mazjaudas un lētu datoru, kas var parādīt lielisku HD video. IR poga 1 parāda četrkāršo displeju, un pogas 2 līdz 5 parāda vienu lielu kameras displeju augstas izšķirtspējas režīmā.
Nospiežot IR tālvadības pogu 0, tiek atcelts video displejs un parādīta komandrinda Pi. Ja vēlaties skatīties Youtube videoklipus vai tamlīdzīgi, izmantojiet Bluetooth tastatūru, ierakstiet "startx" un izmantojiet Pi pārlūku, lai pārietu uz Youtube videoklipu un atskaņotu to pilnekrāna režīmā augstas izšķirtspējas režīmā.
Ieteicams:
Covid-19 maska, kas kliedz pie jums, ja pieskaraties sejai: 4 soļi
Covid-19 maska, kas kliedz uz jums, ja pieskaraties sejai: vai nevarat pārtraukt pieskarties sejai? Ielīmējiet šo elektroniku uz maskas, kas jums ir, un jums pastāvīgi tiks atgādināts to nedarīt
Datorurķēšana uz Londonas metro jubilejas līnijas durvīm: 12 soļi (ar attēliem)
Datorurķēšana uz Londonas metro jubilejas līnijas durvju pogu: Londonas Transporta muzeja veikalā tiek pārdotas Jubilejas līnijas novecojušās durvju pogas (pieejamas gan kreisās, gan labās puses). Ja jūs domājat īstenot projektu, kuram nepieciešama poga un kāda indikatora gaisma, jūs būtu “
Kas ir pie Manām durvīm? PIR kustības sensora/diapazona sensora projekts: 5 soļi
Kas ir pie Manām durvīm? PIR kustības sensora/diapazona sensora projekts: Mūsu projekta mērķis ir uztvert kustību, izmantojot PIR un attāluma sensorus. Arduino kods izvadīs vizuālu un audio signālu, lai informētu lietotāju, ka kāds atrodas tuvumā. MATLAB kods nosūtīs e -pasta signālu, lai brīdinātu lietotāju, ka kāds atrodas tuvumā. Šī ierīce
Ultraskaņas diapazona meklētājs ar durvīm: 7 soļi (ar attēliem)
Ultraskaņas diapazona meklētājs ar durvīm: Ultraskaņas diapazona meklētājs nosaka, vai kaut kas ir ceļā, izstarojot augstfrekvences skaņas vilni. Šīs pamācības uzmanības centrā būs tas, kā durvis un ultraskaņas diapazona meklētāji var strādāt kopā, īpaši tas, kā tos var izmantot, lai noteiktu, kad
Reggie: intuitīvs rīks neintuitīvām durvīm: 5 soļi (ar attēliem)
Reggie: intuitīvs rīks neintuitīvām durvīm: Reggie ir vienkāršs rīks, lai rotaļīgi izsmiet neintuitīvu durvju dizainu. Izveidojiet savu. Nēsājiet sev līdzi vienu un tad, sastopoties ar šādām durvīm, uzsitiet pa tām! Durvis, kas apzīmētas ar " push " vai " pull " zīme parasti izceļ lietošanas gadījumus.R