Kazalo:

Preklopnik zvoka: 9 korakov
Preklopnik zvoka: 9 korakov

Video: Preklopnik zvoka: 9 korakov

Video: Preklopnik zvoka: 9 korakov
Video: J. Krishnamurti & David Bohm - Brockwood Park 1980 - The Ending of Time - Conversation 9 2024, Julij
Anonim
Preklopnik zvoka
Preklopnik zvoka

Ali ste kdaj imeli glasbo v službi in niste vedeli, da se nekdo želi pogovarjati z vami. Še huje, ali ste si kdaj želeli spati v službi, pa se niste mogli dobro zbuditi, če bi kdo (na primer vaš šef) prišel v vašo kabino. Imam. Za rešitev teh težav sem izumil SoundSwitcher, ki temelji na Arduinu. V bistvu ta uporablja 6 tranzistorjev za preklop med virom zvoka (v mojem primeru iPod) in Ladyadinim valovnim ščitom, ki vam pove, kaj se dogaja. Nato lahko Arduino povežete s katero koli vrsto senzorja, ki vam je všeč. Moj je na primer povezan z ultrazvočnim merilnikom razdalje Parallax Ping, mikrofonom, gumbom za zvonjenje na vratih in računalnikom (opozorila o novem e -poštnem sporočilu). Lahko bi šli še dlje, če priključite foto upor, da zaznate, kdaj zvoni vaš mobilni telefon (zasveti zaslon), ali senzor Parallax CH4, da boste lahko zgodaj dobili opozorilo o zvišanju ravni metana v kabini, ker je imel vaš kolega preveč zelje pri kosilu. Kakorkoli že, večina od vas verjetno nima tega problema (če ne želim, da ga nimam). Poleg tega, kar projekt dejansko počne, podaja tudi navodila za pretvorbo besedila v datoteko wav in prenos datotek na kartico SD na Arduinu prek serijske povezave.. Upajmo, da so ti lahko v njihovih projektih koristni tudi drugim. OPOMBA: V vseh teh stvareh sem precej nov, zato ni zagotovila, da stvari delam prav. To je prvi projekt, ki sem ga zasnoval s tranzistorji, zato mi morda nekje manjkajo kape in diode… Če ima kdo kakšen nasvet, ga bom z veseljem slišal in vključil.

1. korak: Deli

Deli
Deli
Deli
Deli

1- Arduino1- Wave Shield (Ladyada) 6 - 2n3904 tranzistorji 6 - 330 ohmski upori 6 - 22 ohmski upori 2 - 10 k ohmski upori (vtiči za gumbe) 2 - gumbi 2 - stereo moški priključki za slušalke 1 - ženski konektor za stereo slušalke Karkoli želite senzorje, sem naredil1 - Mikrofon1 - ultrazvočni daljinomer Parallax Ping1 - fotocelica1 - računalnik s skriptom Ruby, ki preverja e -pošto in se povezuje z Arduinom prek serijske

2. korak: Tranzistorji

Tranzistorji
Tranzistorji

Tranzistorji se večinoma uporabljajo za ojačanje stvari ali kot stikala. V tem primeru uporabljam tranzistorje kot stikalo. Ko visoko zavrtim zatič Arduino, tranzistor omogoča zvok, ki prihaja iz naprave, povezane z njimi, v slušalke. Trije tranzistorji na vsaki strani mi omogočajo preklapljanje talnega in levega in desnega stereo kanala za vsak vir zvoka. Poskusil sem z več upori in se odločil za te. Tranzistorji se ne segrejejo in upor samega tranzistorja je zelo nizek, če je nanj priključen pin Arduino. To je pomembno, da dobim dober nemoten zvok. Kot lahko vidite na shemi v naslednjem koraku, sta tranzistorja povezana tako, da podstavek preide na pin Arduino, da ga upravlja (z uporom med njimi). Oddajnik je priključen na ozemljitev (z uporom) in zvočni vhod. Zbiralnik je povezan z zvočnim izhodom v slušalkah. Tukaj je dobra spletna stran o uporabi tranzistorjev kot stikal

Korak: Povežite vse skupaj

Povežite vse skupaj
Povežite vse skupaj

Shema je precej preprosta. Ne smemo pozabiti, da valovni ščit uporablja kup zatičev na Arduinu, zato se jim izogibajte (napolnil sem jih s spajkanjem na deski). Za tranzistorje sem uporabil nožici 8 in 9 (8 predvaja valovni ščit, 9 predvaja zunanji vir zvoka). Za mikrofon je bil uporabljen analogni pin 0 (čeprav ne deluje dobro, delam na tem). Analogni pin 1 se uporablja za gumb "Prezri". Ko pritisnete ta gumb, se vsi senzorji za vnaprej določen čas prezrejo. Analogni pin 2 je "zvonec na vratih". Še nekaj prostih zatičev za druge stvari. Nameravam dodati fotografski upor, ki ga postavim ob zaslon mobilnega telefona, da zazna, kdaj zvoni na analognem zatiču 3. To bom dodal, ko ga preizkusim.

4. korak: Senzorji

Senzorji
Senzorji

Trenutno uporabljam naslednje "senzorje" (verjetno so vhodi natančnejši) za sprožanje dogodkov: -Pritisnite gumb za zvonec na vratih - To je precej preprosto, zato lahko nekdo pritisne gumb in predvaja zvok skozi vaše slušalke da boste vedeli, da je nekdo v bližini. Gumb, ki sem ga uporabil, je privzeto zaprl vezje in odprl vezje, ko je bil gumb pritisnjen (ravnokar sem jih imel okoli). Ne pozabite na uporne upore (običajno 10k ohmski upor, ki gre na stran žice Arduino, da pomaga dati dober visok signal, ko je vezje odprto). Moj je povezan z Arduino Analog Pin 2. -Parallax Ping ultrazvočni daljinomer - Povej mi, ko je kdo blizu (t.j. nekdo bo vstopil v tvojo kabino). Moj je priključen na Arduino Pin 6 (na beli žici senzorja). Rdeča žica senzorja gre na 5 voltov, črna žica pa na ozemljitev. -Mikrofon - namenjen je zaznavanju, ko se nekdo pogovarja z vami. Poznate tiste fante, ki se ne zavedajo, da imate slušalke in se začnejo pogovarjati. Še vedno delam na tem, izgleda, da potrebujem predojačevalnik za dobro branje z mikrofonom, ki sem ga dobil od sparkfun. Zanimiv naslednji korak bi bil, da posnamete nekaj sekund zvoka v datoteko na valovnem ščitu in jo nato predvajate, da boste vedeli, ali vas to zanima, preden izklopite glasbo. - Računalnik - Trenutno uporablja Ruby skript za preverjanje novih e -poštnih sporočil in pošlje signal serijskim vhodom, kjer naj bi Arduino prejel novo e -pošto. Očitno bi s tem lahko naredili veliko več. V bistvu bi lahko vse, kar bi računalnik opozoril, lahko opozorilo prek slušalk. Bilo bi super, če bi računalnik samodejno ustvaril datoteko valov z uporabo nekaterih glasov AT&T, nato pa jo poslal na Arduino prek serijske oddaje. Tole je vendarle pot. - Senzor zvonjenja mobilnega telefona - za to sem uporabil fotocelico iz Radio Shack (The Shack). Priključil sem ga na analogni pin 4 in nato na 5 voltov. Prav tako morate narediti 10k ohmski upor s strani, ki se priključi na pin 4 na Arduinu na ozemljitev (sicer se signal ne bo spremenil). Za moj telefon, če je fotocelica, ki jo uporabljam, višja od 400 pri analognem branju na Arduinu, potem je zaslon osvetljen. Odvisno od telefona obstaja verjetno več načinov za to. O tem bom moral še razmisliti, da vidim, če lahko najdem rešitev za splošne namene. -Laser in fotografski upor - laserski kazalec lahko usmerite čez odprtino kabine na fotografski upor. Ko se svetloba pokvari, ker nekdo vstopi v vašo kabino, bi lahko zaslišali opozorilo. -detektor plina CH4 - odkrijte zvišanje ravni metana v kabini. To lahko služi kot sistem zgodnjega opozarjanja pred plinom, ki se prenaša v bližini.

5. korak: besedilo v govor ukazne vrstice

Tukaj je majhen pripomoček, ki sem ga napisal zelo hitro za prikrito besedilo v govor. Napisano je v jeziku C# z brezplačno izdajo Visual C# 2008 Express Edition. Za to boste verjetno potrebovali. Net 3.5. Koda je vključena, če pa želite samo exe, jo lahko dobite v CommandLineText2Speech/CommandLineText2Speech/bin/Release v datoteki zip. Če želite, da orodje deluje, lahko preprosto odprete ukazni poziv, se pomaknete do imenika, kamor postavite exe in vnesete CommandLineText2Speech.exe. To bo prikazalo to: Uporaba: Za seznam nameščenih glasov: CommandLineText2Speech.exe whatvoices

Za pretvorbo besedila v wav: CommandLineText2Speech.exe [glas] [hitrost - privzeto 0 (-10 do 10)] [glasnost - privzeto 80 (0 do 100)] "[besedilo za pretvorbo]" [izhodna datoteka] Z drugimi besedami verjetno boste želeli najprej zagnati: CommandLineText2Speech.exe whatvoicesTo bo naštelo glasove, ki ste jih namestili v računalnik. Za zagon orodja boste potrebovali ime glasu. Glasovi, ki prihajajo z operacijskim sistemom Windows, niso odlični, AT&T ima nekaj zelo dobrih. Poleg pretvorbe besedila v datoteko wav naredite toCommandLineText2Speech.exe "Microsoft Sam" 0 80 "To je test" test.wav Evo, kaj vse to pomeni: "Microsoft Sam"- to je glas, ki je priložen sistemu Windows. dati v narekovaje, ker je presledek 0- normalna hitrost (lahko se giblje od -10 do 10) 80- normalna glasnost (lahko gre od 0 do 100) "to je test"- besedilo, ki se bo spremenilo v datoteko wav.wav- kako se bo imenovala datoteka wav

6. korak:

Priložena koda Ruby na naslednji način preveri, ali je nova e -pošta in če obstaja, jo prenese na Arduino prek vmesnika USB v serijski vmesnik, vgrajen v Arduino. Imel sem težave pri hitrih povezavah prek Serial (verjetno velikost vmesnega pomnilnika). Vse nastavitve datoteke so na vrhu datoteke. Ta uporablja moj program C# za ustvarjanje datoteke wav. Verjetno bi moral vse to pretvoriti v en jezik, sem velik oboževalec Rubyja, vendar ni bilo videti, da bi z lahkoto ustvaril wav iz besedila, zato sem napisal majhno aplikacijo C#. Potrebovali boste tudi rubin serijski dragulj, vključil sem tudi to. Če ga želite namestiti (potem ko ste namestili Ruby), v ukazni poziv imenika, kamor naložite dragulj, vnesite "gem install win32-serial-0.5.1-x86-mswin32-60.gem". To je vse, kar potrebujete za delovanje programa.

7. korak: Koda

Priložil sem skico Arduino. Ima veliko pripomb v pomoč. V bistvu neprestano preverja vse vhode, če se eden od njih sproži, potem preklopi zvok v valovnem ščitu in predvaja datoteko wav, povezano s tem opozorilom.

8. korak: Zaženite programe

V redu, zdaj imate vse dele. Če želite, da to deluje pravilno, morate1. Namestite Wave Shield na Arduino2. Arduino povežite z računalnikom (ali uporabite XBee) - predvidevam, da imate že nameščeno vdelano programsko opremo3. Zaženite skript Ruby checkEmail.rb4. Uživajte v glasbi, Arduino vas bo prekinil, ko bo moral prebrati vašo e -pošto ali ko začuti nekaj v vaši okolici.

9. korak: Videoposnetek končnega izdelka

Tukaj je stikalo za zvok na delu

Priporočena: