Sadržaj:

Djed Mraz koji govori: 5 koraka
Djed Mraz koji govori: 5 koraka

Video: Djed Mraz koji govori: 5 koraka

Video: Djed Mraz koji govori: 5 koraka
Video: СТРЕЛА С МАЛЫМИ 🤯 2024, Studeni
Anonim
Djed Mraz koji govori
Djed Mraz koji govori
Djed Mraz koji govori
Djed Mraz koji govori

Ovaj projekt objašnjava kako napraviti ukras koji reproducira zvučnu datoteku kad netko prođe. To se lako može postići računalom koje može pokrenuti program Motion i nekom kamerom. U ovom slučaju upotrijebio sam puhač za Djeda Mraza visok 20 . Postavio sam svoj Raspeberry PI s modulom kamere u prozoru svoje garaže i usmjerio ga prema kalupu za Djeda Božićnjaka. Sakrio sam vanjski zvučnik s napajanjem unutar puhala i prošao sam pomoćni kabel od 25 stopa ocijenjeno za vanjsku uporabu od PI do ovog zvučnika. Program Motion postavio sam na Pi da reproducira zvučnu datoteku Ho Ho Ho koja zvuči Djeda Božićnjaka kad god detektira pokret pomoću kamere. To je prilično jednostavno za napraviti i dobra je zabava.

Kupnja određenih materijala koje sam ovdje koristio vjerojatno bi koštala oko 100 USD s dostavom. Ne bih potrošio to na izradu ovoga da nemam već sve ove materijale koji leže neiskorišteni. To može funkcionirati sa bilo kojim računalom, bilo kojom kamerom i bilo kojim zvučnikom pa se može postići mnogo jeftinije ako trebate kupiti te stvari.

Pribor

  • Računalo s instaliranim programom Motion

    Koristio sam Raspberry PI (RPI) 3 model B

  • Kamera ili mrežna kamera priključena na računalo

    • Bilo koju kameru koju Motion Motion može koristiti
    • USB kamera
    • Mrežna kamera
    • Koristio sam ovaj modul kamere koji se spaja izravno na RPI
  • Vanjski zvučnik

    • Povežite se putem aux ulaza
    • USB
    • Koristio sam ovaj Sony SRS-XB01
  • Dekoracija poput puhala, bilo što stvarno

    Koristio sam kalup za Djeda Mraza vrlo sličan ovom

Korak 1: Postavite svoj RPI

Postavite svoj RPI
Postavite svoj RPI

Ovaj korak je ovdje uglavnom za potpune početnike. Ovaj video objašnjava kako postaviti Raspberry PI (RPI) bolje nego što sam mogao. Također bih preporučio, kao i u videu, povezivanje bežičnog USB -a, tipkovnice + miša i vanjskog monitora za postavljanje. Nakon postavljanja pokrećem svoj u garaži bez tipkovnice + miša i vanjskog monitora, ali ostavljam u WIFi ključu kako bih mogao ući u njega i ponovno pokrenuti sustav i/ili unijeti promjene.

Korak 2: Priključite kameru na RPI

Priključite kameru na RPI
Priključite kameru na RPI

Slijedite upute za postavljanje kamere za RPI. Koristio sam modul kamere iz Adafruit Industries.

  • Priključite i pričvrstite vrpčani kabel iz modula kamere u priključak za kameru između Ethernet priključka i HDMI priključka tako da su kontakti s klizačem okrenuti prema HDMI priključku, a plava traka okrenuta prema Ethernet priključku.
  • Ako imate priključeni monitor i koristite korisničko sučelje (Xserver), pokrenite alat za konfiguraciju Raspberry Pi

    Ako udaljeni SSH u rpi s drugog računala, pokrenite rasp -config na svom terminalu - koji će pokrenuti korisničko sučelje terminala

  • U Raspberry Config, na kartici Sučelja, omogućite kameru.
  • Spremite i ponovno pokrenite RPI.
  • Nakon ponovnog pokretanja, pokrenite donju naredbu na terminalu, i otkriveni i omogućeni trebali bi se vratiti kao = 1

vgencmode get_camera

Vaš modul PI kamere trebao bi sada raditi

Mrežne upute

Korak 3: Postavljanje i testiranje zvuka

Postavljanje i testiranje zvuka
Postavljanje i testiranje zvuka

U početku sam za ovaj projekt jednostavno proveo pomoćni kabel od PI -a do malog zvučnika na baterije. Dogodilo se da ima puno statičkog elektriciteta i da su se baterije brzo ispraznile. Umjesto toga, priključio sam USB uređaj koji pojačava zvuk i prošao sam pomoćni kabel od pomoćnog izlaznog priključka na njemu do vanjskog zvučnika otpornog na vremenske uvjete. Ovo je uklonilo statiku i bilo je glasnije i bez briga oko baterija. RPI je automatski prepoznao USB uređaj bez potrebe za instaliranjem upravljačkog programa.

PI OS dolazi s programom koji se zove aplay, ali meni je draži program za distribuciju softvera Sox, pa ove upute instaliraju Sox i koriste njegovu naredbu play.

Instalirajte Sox

U terminalu na RPI pokrenite sljedeći odgovor da na sve upite

sudo apt-get install sox

Testiraj zvuk

Preuzmite kompatibilnu zvučnu datoteku male veličine i spremite je na računalo. Koristio sam santaho3.mp3 spremljen u moj domaći direktorij pi. Da biste testirali zvuk, spojite zvučnik na RPI i pokrenite ovu naredbu:

pusti santaho3.mp3

  • Ako čujete zvučnu datoteku koja se reproducira u vašem zvučniku, vaš zvuk radi
  • Možda ćete morati interno promijeniti zvuk s HDMI -a na analogni.

    Upute ovdje

  • Ako koristite USB zvučni uređaj, stvorite datoteku u svom kućnom direktoriju pod nazivom.asoundrc

    • Stavite donji sadržaj u njega i ponovno ga pokrenite, započnite audio test
    • pcm.! zadano {

      upišite hw card 1} ctl.! zadano {type hw card 1}

Korak 4: Postavljanje detekcije pokreta za reprodukciju zvučne datoteke

Postavite Detekciju pokreta za reprodukciju zvučne datoteke
Postavite Detekciju pokreta za reprodukciju zvučne datoteke

Softver pod nazivom Motion omogućuje postavljanje jedne ili više kamera u svrhu izvođenja naredbe kada se pokret detektira u prikazu kamere. Postavljanje je prilično jednostavno i prilično dobro radi. Također može snimati datoteke pri otkrivanju pokreta, dopustiti konfiguriranje web stranice za svaku kameru ili jednu web stranicu za sve kamere te poslužitelje za streaming za gledanje streamova kamera uživo. Za ovaj projekt potrebna je samo sposobnost otkrivanja i pokretanja naredbi, ali postavio sam poslužitelj za streaming kako bih mogao gledati i prijenos uživo.

Instalirajte Motion

U terminalu na RPI -u pokrenite naredbu ispod i odgovorite da na sve upite, pričekajte da završi

sudo apt-get install motion

Odvojite vrijeme i dodajte novo dodanog korisnika pokreta u audio grupu tako da ima dopuštenje za reprodukciju zvuka unošenjem sljedeće naredbe

usermod -a -G audio kretanje

Konfigurirajte Motion for Detection

Uredit ćemo datoteku konfiguracije kretanja kako bi reproducirala zvučnu datoteku koju smo preuzeli u koraku Audio Audio kada otkrije kretanje na kameri i pokrene kretanje kao uslugu, tako da to nastavi činiti pri ponovnom pokretanju RPI -ja.

U terminalu uredite datoteku /etc/motion/motion.conf kao super korisnik

sudo nano/etc/default/motion

U terminalu uredite datoteku /etc/motion/motion.conf kao super korisnik

sudo nano /etc/motion/motion.conf

Napravite i spremite sljedeće izmjene. Mnogi od njih su zadane. Mislim da u mom slučaju unosi mmal_xxx nemaju učinka, ali ostavljam ih u slučaju da ih nekome zatrebaju - također ne nanose štetu. Ova konfiguracija detektira kretanje na kameri u intervalima od 40 sekundi, ne snima slike ili video zapise i postavlja web poslužitelj i poslužitelj za streaming za kameru zaštićenu osnovnom autentifikacijom koristeći korisničko ime i lozinku.

demon uključen

process_id_file /var/run/motion/motion.pid

setup_mode isključen logfile /var/log/motion/motion.log log_level 6 log_type sve videodevice/dev/video0 v4l2_palette 17 ulaz -1 norma 0 frekvencija 0 power_line_frequency -1 zakretanje 0 flip_axis nema širine 320 visina 240 framerate 2 minimalna_frame_time 0 netcam_keepalive isključena netcam_ isključena netcam_ isključena_cam kamera off off rtsp_uses_tcp na mmalcam_name vc.ril.camera auto_brightness isključeno svjetlina 0 kontrast 0 zasićenje 0 nijansa 0 roundrobin_frames 1 roundrobin_skip 1 prekidač za isključivanje filtra 500 prag_način isključen šum_razina 22 noise_tune uključen despeckle_filter EedDl smart_mask_speed 0smotrenjesprem 0 minimalno_snimanje 0 0 izlazni_slike isključeni_izbrisani_slike isključeni 75 slika_tip jpeg ffmpeg_output_filmovi isključeni ffmpeg_output_debug_movies isključeni ffmpeg_bps 400000 ffmpeg_variable_bitrate 0 ffmpeg_video_codec mp4 ffmpeg_duplikat vremenski interval 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/snapshot_filename%v- %Y%m%d%H%M%S-snimak slika_ime datoteke%v-%Y%m%d%H%M%S-%qnaziv datoteke_v datoteke%v-%Y%m%d%H%M%S time_pse_filename % Y% m% d-Ubrzavanje ipv6_enabled off stream_port 8481 stream_quality 80 stream_motion zabijanje stream_maxrate 1 stream_localhost zabijanje stream_limit 0 stream_auth_method 1 stream_authentication: webcontrol_port 8480 webcontrol_localhost off webcontrol_html_output na webcontrol_authentication: track_type 0 track_auto zabijanje track_iomojo_id 0 track_step_angle_x 10 track_step_angle_y 10 track_move_wait 10 track_speed 255 track_stepsize 40 tiho na on_event_start/usr/bin/play -q -višenavojno/var/lib/motion/notify`shuf -i 1-5 -n 1`.mp3 2>/dev/null

Kopirajte zvučnu datoteku u zvučnu datoteku u početni direktorij Motion Motion i promijenite dopuštenja za nju tako da je Motion posjeduje, ali svi je mogu čitati

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

Ponovo pokrenite RPI uređaj. Nakon pokretanja, pokrenite

sudo systemctl status motion.usluga

Ispis bi trebao sadržavati redak koji kaže:

Aktivno: aktivno (radi) od

Ako vidite da se pokret pokreće. Ako niste, provjerite/var/log/motion za detalje. Pokušajte trčati:

sudo systemctl start motion.service

Testno otkrivanje pokreta i reprodukcija zvuka

Skoro gotovo. Potrebno je samo provjeriti detektira li se pokret i čuje li se zvuk.

U terminalu učinite sljedeće kako biste gledali dodani tekst datoteci dnevnika

tail -f/var/log/motion

Sada:

  • Polako mahnite nečim pred kamerom
  • Datoteka dnevnika trebala bi prikazati otkriveno kretanje
  • Nadamo se da će se zvučna datoteka reproducirati kroz zvučnik
  • U tom slučaju postavite RIP u prozor s objektivom kamere okrenutim prema mjestu na kojemu će se detektirati pokreti
  • Vanjski zvučnik postavite u ukras ili blizu njega
  • Kad ljudi prođu, dočekat će ih

Rješavanje problema

Ako stvari ne funkcioniraju

  • Dvaput provjerite radi li kamera izvršavanjem:

    • raspistill -o test.jpg
    • ls -l test-j.webp" />
  • Dvaput provjerite radi li zvuk izvršavanjem

    • play/var/lib/motion/mtn_dtct_ntfy.mp3
    • ako ne čujete zvučnu datoteku

      • provjerite je li na izlaznom uređaju postavljen vaš zvučnik (analogni ili USB)
      • provjerite glasnoću
      • provjerite da dozvole na zvučnoj datoteci imaju 3 'r u nizu dopuštenja (tj. rw*rw*rw*)
  • Ako ništa drugo ne uspije, možda kretanje nije ispravno postavljeno

    u tom slučaju neka bi internetska pretraživanja trebala pomoći jer postoji velika pomoć

Korak 5: Dodatni komentari

Dodatni Komentari
Dodatni Komentari

Reproducirajte nasumične zvučne datoteke

Kad vam dosadi isti zvuk koji svira iznova, pomiješajte ga!

  • Spremite nekoliko različitih zvučnih datoteka s istim imenom, ali s uzastopnim numeričkim sufiksom:

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

  • Promijenite /etc/motion/motion.conf on_event_start unos na sljedeći način

    on_event_start play -q -zvuk s više nitiFile`shuf -i 1-5 -n 1`.mp3 2>/dev/null

  • Izađite i spremite datoteku
  • Ponovno pokrenite uslugu kretanja

    sudo systemctl restart motion.service

  • Dio `shuf -i 1-5 -n 1` (to su povratni tikovi) ubacuje slučajni broj od 1 do 5 ito naziv datoteke koja se reproducira
  • Dakle, sada kada se detektira pokret, reproducirat će se bilo koja od 5 zvučnih datoteka

Govoriti umjesto igrati

Još jedan zabavan obrat je postavljanje pretvaranja teksta u govor i neka računalo izgovori rečenicu ljudima koji prolaze. Volim koristiti MaryTTS kao motor. Postavite i pokrenite Mary TTS poslužitelj i promijenite gornju liniju on_event_start kako biste poslali nešto za reći oženjenom tts poslužitelju (tj. Marytts/bin/marytts-submit-text "Pozdrav prijatelju")

Korištenje IP umreženih kamera (bežičnih ili drugih)

Program za kretanje može lako podržati umrežene IP kamere koristeći netcam_url i druge različite postavke netcam_xxx. Jednostavno pretraživanje na internetu trebalo bi pružiti ono što je potrebno.

Bluetooth

Ako vaš RPI ima ugrađen Bluetooth ili ste instalirali USB Bluetooth uređaj, možete povezati zvučnik putem Bluetootha i riješiti se žice.

Ograničite snimanje pokreta na manje područje

Jedan od problema koji sam imao s ovom postavkom je puhanje grmlja i drveća, kao i svjetla u automobilima, koji su prelagano pokrenuli kretanje. Program za kretanje ima postavke za to koliko se okvira mora promijeniti prije pokretanja kretanja te je uzimanje u obzir buke i njihovo korištenje pomoglo. Nisam još pokušao, ali mislim da će mi trebati postavke koje također omogućuju definiranje određenog područja prikaza kamere za detekciju pokreta. To bi trebalo omogućiti definiranje područja u blizini ukrasa za pokretanje reprodukcije zvučne datoteke.

Preporučeni: