Sadržaj:
- Pribor
- Korak 1: Postavite svoj RPI
- Korak 2: Priključite kameru na RPI
- Korak 3: Postavljanje i testiranje zvuka
- Korak 4: Postavljanje detekcije pokreta za reprodukciju zvučne datoteke
- Korak 5: Dodatni komentari
Video: Djed Mraz koji govori: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-31 10:20
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
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
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
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
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
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:
Robot koji govori da li vas prodavač elektronike vara ili ne: 6 koraka
Robot koji govori da li vas prodavač elektronike vara ili ne: Prošle godine smo ja i tata otišli u novootvorenu trgovinu robotike/elektronike vrlo blizu mjesta gdje živimo. Kad sam tamo ušao, bilo je puno elektronike, serova, senzora, Raspberry pis -a i Arduinosa. Sljedećeg dana otišli smo u istu trgovinu i kupili
Ted toster koji govori: 6 koraka (sa slikama)
Ted toster koji govori: Razgovori s tosterom uvijek su bili jednostrani. Do sada, upoznajte Teda koji govori Toster! Ispod pregleda sadržaja: Video projekt Toster Electronics Chat/Glas bot Remo.tv Svjetska dominacija
Senzor temperature i vlažnosti koji govori - Si7021 i Mali prijatelj: 3 koraka
Senzor temperature i vlažnosti koji razgovara - Si7021 i Little Buddy Talker: " Mali prijatelj s prijateljima " je mali uređaj koji vam omogućuje dodavanje jednostavnog glasovnog izlaza vašim Arduino projektima. Sadrži ograničen skup od 254 riječi i može se povezati s Arduinom ili drugim mikrokontrolerima putem SPI -ja. Mali prijatelj T
Uređaj za mjerenje UV-indeksa koji govori, pomoću senzora VEML6075 i Malog prijatelja: 5 koraka
Uređaj za mjerenje UV-indeksa koji govori, pomoću senzora VEML6075 i Malog prijatelja: Dolaze ljeta! Sunce sja! Što je sjajno. No, kako ultraljubičasto (UV) zračenje postaje sve intenzivnije, ljudi poput mene dobivaju pjege, male smeđe otočiće koji plivaju u moru crvene, opečene od sunca, kože koja svrbi. Mogućnost dobivanja informacija u stvarnom vremenu
Raspberry Pi čitač barkoda koji govori: 12 koraka
Raspberry Pi čitač barkoda koji govori: Sl.1 Skener barkoda s DX.comOverviewUpdate: Dostupan je kratki video demo https://youtu.be/b905MLfGTcMMoja mama više ne može čitati naljepnice na artiklima, pa sam krenuo u potragu za rješenjima. Nakon što sam vidio čitače bar koda za slijepe