Tartalomjegyzék:

Talking Santa Blowmold: 5 lépés
Talking Santa Blowmold: 5 lépés

Videó: Talking Santa Blowmold: 5 lépés

Videó: Talking Santa Blowmold: 5 lépés
Videó: Talking Santa lighters 2024, November
Anonim
Talking Santa Blowmold
Talking Santa Blowmold
Talking Santa Blowmold
Talking Santa Blowmold

Ez a projekt elmagyarázza, hogyan lehet dekorációt készíteni, amely hangfájlt játszik le, amikor valaki elmegy mellette. Ez könnyen megvalósítható a Motion programot futtató számítógéppel és valamilyen kamerával. Ebben az esetben egy 20 hüvelykes Mikulás fúvókát használtam. Beállítottam a Raspeberry PI -t a garázsablakom kamera moduljával, és a Mikulás fúvóka felé mutattam. Elrejtettem egy motoros kültéri hangszórót a fúvóka belsejében, és futottam egy 25 lábas aux kábelt kültéri használatra készült a PI -től a hangszóróig. Beállítottam a Motion programot a Pi -n, hogy Mikulás hangú Ho Ho Ho hangfájlt játsszon le, amikor mozgást észlel a fényképezőgéppel. Ez meglehetősen egyszerű és szórakoztató.

Az itt használt anyagok megvásárlása valószínűleg körülbelül 100 dollárba kerülne szállítással. Nem költeném ezt az elkészítésre, ha még nem lennének mindezek az anyagok fel nem használtan. Ez bármilyen számítógéppel, kamerával és bármilyen hangszóróval működhet, így sokkal olcsóbban is megvalósítható, ha ezeket meg kell vásárolnia.

Kellékek

  • Olyan számítógép, amelyen telepítve van a Motion program

    Egy Raspberry PI (RPI) 3 B modellt használtam

  • Számítógéphez csatlakoztatott kamera vagy hálózati kamera
    • Bármilyen kamera, amelyet a Motion program használhat
    • USB kamera
    • Hálózati kamera
    • Ezt a kamera modult használtam, amely közvetlenül az RPI -hez kapcsolódik
  • Kültéri hangszóró

    • Csatlakozás aux porton keresztül
    • USB
    • Ezt a Sony SRS-XB01-et használtam
  • Dekoráció, például fúvóka, bármi

    Én ehhez hasonló Mikulás fúvókát használtam

1. lépés: Az RPI beállítása

Állítsa be RPI -jét
Állítsa be RPI -jét

Ez a lépés elsősorban a kezdők számára készült. Ez a videó elmagyarázza, hogyan állíthat be jobban egy málna PI -t (RPI), mint én. Azt is javaslom, mint a videóban, hogy csatlakoztasson egy vezeték nélküli USB -t, billentyűzetet + egeret és külső monitort a beállításhoz. A telepítés után az enyémet a garázsomban futtatom billentyűzet + egér és külső monitor nélkül, de otthagyom a WIFi hardverkulcsot, hogy be tudjak kapcsolni és újraindítani és/vagy módosítani.

2. lépés: Csatlakoztassa a kamerát az RPI -hez

Csatlakoztassa a kamerát az RPI -hez
Csatlakoztassa a kamerát az RPI -hez

Kövesse az utasításokat a fényképezőgép RPI beállításához. Az Adafruit Industries Camera modulját használtam.

  • Csatlakoztassa és rögzítse a szalagkábelt a Kamera modulból az Ethernet -port és a HDMI -port közötti kameraportba úgy, hogy a szálka érintkezői a HDMI -port felé nézzenek, a kék szalag pedig az Ethernet -port felé.
  • Ha monitor van csatlakoztatva, és a felhasználói felületet (Xserver) futtatja, futtassa a Raspberry Pi Configuration eszközt

    Ha egy távoli SSH -t egy másik számítógépről az rpi -be, futtassa a rasp -config -ot a terminálon - ez elindítja a terminál felhasználói felületét

  • A Raspberry Config alkalmazásban, az Interfészek lapon engedélyezze a kamerát.
  • Mentse és indítsa újra az RPI -t.
  • Újraindításkor futtassa az alábbi parancsot egy terminálon, mind az észlelt, mind az engedélyezett értéknek vissza kell térnie = 1 értékre

vgencmode get_camera

A PI kamera modulnak most már működnie kell

Online utasítások

3. lépés: A hang beállítása és tesztelése

Hang beállítása és tesztelése
Hang beállítása és tesztelése

Kezdetben ehhez a projekthez egyszerűen futtattam egy aux kábelt a PI -ről egy kis akkumulátoros hangszóróra. Véletlenül sok volt a statika, és az elemek gyorsan lemerültek. Ehelyett csatlakoztattam egy USB -eszközt, amely felerősíti a hangot, és az Aux -kábelt a rajta lévő aux -kimeneti portról egy erős, időjárásálló kültéri hangszóróra futtattam. Ez eltávolította a statikát, és hangosabb volt, és nem kellett aggódnia az elemek miatt. Az USB -eszközt automatikusan felismerte az RPI, illesztőprogram -telepítés nélkül.

A PI operációs rendszerhez tartozik egy aplay nevű program, de én inkább a Sox szoftver forgalmazó lejátszási programját részesítem előnyben, ezért ezek az utasítások telepítik a Sox szoftvert, és használják a play parancsot.

Telepítse a Sox -ot

Az RPI terminálján futtassa a következő választ, ha igen, minden kérésre

sudo apt-get install sox

Teszthang

Töltsön le egy kompatibilis, kis méretű hangfájlt, és mentse el a számítógépére. A pi home könyvtárába mentett santaho3.mp3 fájlt használtam. A hang teszteléséhez csatlakoztassa a hangszórót az RPI -hez, és futtassa ezt a parancsot:

play santaho3.mp3

  • Ha hallja a hangfájl lejátszását a hangszóróban, akkor a hang működik
  • Lehet, hogy belsőleg át kell állítania a hangot HDMI -ről analógra.

    Utasítások itt

  • Ha USB hangeszközt használ, hozzon létre egy fájlt az otthoni könyvtárában.asoundrc néven

    • Tegye bele az alábbi tartalmat, és indítsa újra, indítsa el az audiotesztet
    • pcm.! alapértelmezett {

      típus hw card 1} ctl.! default {type hw card 1}

4. lépés: Állítsa be a mozgásérzékelést a hangfájl lejátszásához

Állítsa be a mozgásérzékelést a hangfájl lejátszásához
Állítsa be a mozgásérzékelést a hangfájl lejátszásához

A Motion nevű szoftver lehetővé teszi egy vagy több kamera beállítását parancs futtatása céljából, amikor mozgást észlel a kamera (k) nézetben. Elég könnyű beállítani és nagyon jól működik. Mozgások észlelésekor fájlokat is rögzíthet, lehetővé teszi egy weboldal beállítását minden kamerához vagy egyetlen webhelyet minden kamerához, valamint a streaming szervereket a kamerák élő közvetítéseinek megtekintéséhez. Ennek a projektnek csak az észlelési és a parancsindító képességére van szüksége, de beállítottam egy streaming szervert, hogy élő közvetítést is nézhessek.

A Motion telepítése

Az RPI terminálján futtassa az alábbi parancsot, ha minden kérésre igennel válaszol, és várja meg, amíg befejeződik

sudo apt-get install motion

Szánjon rá időt, és adja hozzá az újonnan hozzáadott mozgásfelhasználót az audiocsoporthoz, hogy a következő parancs megadásával engedélyezze a hanglejátszást

usermod -a -G hangmozgás

Mozgás beállítása észleléshez

A mozgáskonfigurációs fájlt úgy szerkesztjük, hogy lejátszhassa azt a hangfájlt, amelyet a Setup Audio lépésben töltöttünk le, amikor mozgást észlel a fényképezőgépen, és szolgáltatásként elindítja a mozgást, így továbbra is ezt teszi, amikor újraindítja az RPI -t.

Egy terminálban szerkessze az /etc/motion/motion.conf fájlt szuperfelhasználóként

sudo nano/etc/default/motion

Egy terminálban szerkessze az /etc/motion/motion.conf fájlt szuperfelhasználóként

sudo nano /etc/motion/motion.conf

Végezze el és mentse a következő módosításokat. Ezek közül sok alapértelmezett. Nem hiszem, hogy az én esetemben az mmal_xxx bejegyzéseknek bármilyen hatása lenne, de elhagyom őket, ha valakinek szüksége lenne rájuk - ők sem ártanak. Ez a konfiguráció 40 másodperces időközönként észleli a mozgást a fényképezőgépen, nem rögzít képeket vagy videókat, és beállít egy webszervert és streaming szervert a fényképezőgéphez, amely alapvető hitelesítéssel védett felhasználónév és jelszó használatával.

démon be

process_id_file /var/run/motion/motion.pid

setup_mode off logfile /var/log/motion/motion.log log_level 6 log_type all videodevice/dev/video0 v4l2_palette 17 bemenet -1 norma 0 frekvencia 0 power_line_frequency -1 rotate 0 flip_axis nincs szélesség 320 magasság 240 framerate 2 minimum_frame_time 0 netcam_keepalive rtsp_uses_tcp on mmalcam_name vc.ril.camera auto_brightness off fényerő 0 kontraszt 0 telítettség 0 színárnyalat 0 roundrobin_frames 1 roundrobin_skip 1 kapcsolószűrő kikapcsolási küszöb 500 küszöb_hang kihangosítás zajszint 22 zaj_tune on despeckle_filter EedDl smart_mask_spefture 0_fénykép 0 0 fénymásolat output_pictures off output_debug_pictures off quality 75 picture_type jpeg ffmpeg_output_movies off ffmpeg_output_debug_movies off ffmpeg_bps 400000 ffmpeg_variable_bitrate 0 ffmpeg_video_codec mp4 ffpep_fr apshot_interval 0 locate_motion_mode off locate_motion_style box text_right%Y-%m-%d / n%T-%q text_changes off text_event%Y%m%d%H%M%S text_double off target_dir/var/lib/motion snapshot_filename%v- %Y%m%d%H%M%S-pillanatképkép_fájlnév%v-%Y%m%d%H%M%S-%q filmnév%v-%Y%m%d%H%M%S timelapse_filename % Y% m% d-timelapse ipv6_enabled off stream_port 8481 stream_quality 80 stream_motion off stream_maxrate 1 stream_localhost ki stream_limit 0 stream_auth_method 1 stream_authentication: webcontrol_port 8480 webcontrol_localhost ki webcontrol_html_output on webcontrol_authentication: track_type 0 track_auto off track_iomojo_id 0 track_step_angle_x 10 track_step_angle_y 10 track_move_wait 10 track_speed 255 track_stepsize 40 quiet on on_event_start/usr/bin/play -q --multi -threaded/var/lib/motion/alert`shuf -i 1-5 -n 1`.mp3 2>/dev/null

Másolja az audio fájlt a hangfájlba a motion home könyvtárába, és módosítsa a jogosultságokat, hogy a mozgás birtokolja, de mindenki olvashassa

sudo cp /home/pi/santaho.mp3 /var/lib/motion/mtn_dtct_ntfy.mp3

sudo chown motion /var/lib/motion/mtn_dtct_ntfy.mp3

sudo chmod a+r /var/lib/motion/mtn_dtct_ntfy.mp3

Indítsa újra az RPI eszközt. Indítás után fuss

sudo systemctl állapot motion.service

A kimenetnek tartalmaznia kell egy sort, amely ezt mondja:

Aktív: aktív (fut) azóta

Ha látja, hogy ez a mozgás fut. Ha nem, nézze meg a/var/log/motion -t a részletekért. Próbáljon futni:

sudo systemctl indítsa el a motion.service szolgáltatást

Mozgásérzékelés és hanglejátszás tesztelése

Majdnem kész. Csak ellenőrizni kell, hogy érzékel -e mozgást, és a hang akkor hallható -e.

A terminálon tegye a következőket a naplófájlhoz csatolt szöveg megtekintéséhez

farok -f/var/log/motion

Most:

  • Lassan lenget valamit a kamera előtt
  • A naplófájlnak ki kell adnia azt a mozgást, amelyet észlelt
  • Remélhetőleg a hangfájl a hangszórón keresztül játszódik le
  • Ha igen, helyezze a RIP -t egy ablakba úgy, hogy a kamera lencséje a mozgás észlelésének irányába nézzen
  • Helyezze a kültéri hangszórót a dekorációba vagy annak közelébe
  • Amikor az emberek elmennek, üdvözlik őket

Hibaelhárítás

Ha a dolgok nem működnek

  • Ellenőrizze kétszer, hogy a kamera működik -e:

    • raspistill -o teszt.jpg
    • ls -l test-j.webp" />
  • Futtatással ellenőrizze még egyszer, hogy működik -e a hang

    • play/var/lib/motion/mtn_dtct_ntfy.mp3
    • ha nem hallja a hangfájlt

      • ellenőrizze, hogy a kimeneti eszköz a hangszóró beállítása (analóg vagy USB)
      • ellenőrizze a hangerőt
      • ellenőrizze, hogy a hangfájl engedélyei 3 'r -ekkel rendelkeznek -e az engedélyek karakterláncában (azaz rw*rw*rw*)
  • Ha minden más nem sikerül, akkor valószínűleg a mozgás nincs megfelelően beállítva

    ebben az esetben néhány online keresésnek segítenie kell, mivel sok segítség áll rendelkezésre

5. lépés: További megjegyzések

További megjegyzések
További megjegyzések

Véletlen hangfájlok lejátszása

Unja, hogy ugyanaz a hang újra és újra szól, keverje össze!

  • Mentsen el több különböző hangfájlt azonos néven, de egymás utáni numerikus utótaggal:

    soundFile1.mp3, soundFile2.mp3, soundFile3.mp3, soundFile4.mp3, soundFile5.mp3,

  • Módosítsa az /etc/motion/motion.conf on_event_start bejegyzést az alábbiak szerint

    on_event_start play -q -multi -threaded soundFile`shuf -i 1-5 -n 1`.mp3 2>/dev/null

  • Lépjen ki és mentse a fájlt
  • Indítsa újra a mozgásszolgáltatást

    sudo systemctl indítsa újra a motion.service szolgáltatást

  • A `shuf -i 1-5 -n 1` (ezek visszajelzések) rész véletlenszerű számot szúr be 1 -től 5 -ig ito a lejátszott fájlnév
  • Tehát most, amikor mozgást észlel, az 5 hangfájl bármelyike lejátszásra kerül

Játék helyett beszélni

Egy másik szórakoztató csavar az, hogy beállít egy szöveg-beszédet, és a számítógép mond egy mondatot az elhaladó embereknek. Szeretem a MaryTTS -t használni motorként. Állítsa be és indítsa el a Mary TTS szervert, és változtassa meg a fent említett on_event_start sort, hogy mondjon valamit a házas tts szervernek (azaz marytts/bin/marytts-submitted-text "Hello friend")

IP hálózati kamerák használata (vezeték nélküli vagy más)

A mozgásprogram könnyedén támogatja a hálózati IP -kamerákat a netcam_url és más különféle netcam_xxx beállítások használatával. Egy egyszerű online keresésnek meg kell adnia a szükséges adatokat.

Bluetooth

Ha az RPI beépített Bluetooth-kapcsolattal rendelkezik, vagy USB Bluetooth-eszközt telepített, akkor a hangszórót Bluetooth-on keresztül csatlakoztathatja, és megszabadulhat a vezetékektől.

A mozgásrögzítés korlátozása kisebb területre

Ezzel a beállítással az egyik problémám a cserjék és fák fújása, valamint az autó fényei túl könnyen indították el a mozgást. A mozgásprogram rendelkezik beállításokkal, hogy hány képkockát kell megváltoztatni a mozgás aktiválása előtt, és figyelembe veszi a zajt, és ezek használata segített. Még nem próbáltam, de azt hiszem, szükségem lesz olyan beállításokra, amelyek lehetővé teszik a kamera nézetének egy adott területének meghatározását a mozgásérzékeléshez. Ennek lehetővé kell tennie a dekoráció közelében lévő terület meghatározását a hangfájl lejátszásának elindításához.

Ajánlott: