Sadržaj:

Prebacivač zvuka: 9 koraka
Prebacivač zvuka: 9 koraka

Video: Prebacivač zvuka: 9 koraka

Video: Prebacivač zvuka: 9 koraka
Video: Преобразователь постоянного тока 12В в 43В для двигателя постоянного тока 2024, Juli
Anonim
Prebacivač zvuka
Prebacivač zvuka

Je li vam se ikada pojačala muzika na poslu i niste shvatili da neko pokušava razgovarati s vama. Još gore, jeste li ikada htjeli spavati na poslu, ali niste imali dobar način da se probudite ako bi neko (poput vašeg šefa) upravo ušao u vašu kabinu. Imam. Za rješavanje ovih problema izumio sam SoundSwitcher zasnovan na Arduinu. U osnovi ovo koristi 6 tranzistora za prebacivanje između izvora zvuka (u mom slučaju iPod -a) i Ladyada's Wave štita dajući vam do znanja što se događa. Zatim možete povezati Arduino sa bilo kojom vrstom senzora. Na primjer, moj je spojen na ultrazvučni daljinomer Parallax Ping, mikrofon, dugme za zvono na vratima i računar (upozorenja na novu e -poruku). Mogli biste ići dalje povezivanjem foto otpornika da otkrijete kada vaš mobilni telefon zvoni (ekran svijetli) ili Parallax CH4 senzorom kako biste mogli dobiti rano upozorenje o povećanju nivoa metana u vašoj kabini jer je vaš kolega u kabini imao previše kupus za ručak. U svakom slučaju, većina vas vjerojatno nema taj problem (volio bih da nemam). Osim onoga što projekt zapravo radi, on također daje upute za pretvaranje teksta u wav datoteku i prijenos datoteka na SD karticu na Arduinu preko serijskog broja. Nadam se da će ovo biti od koristi drugima u njihovim projektima. NAPOMENA: Ja sam prilično nov u svim ovim stvarima, tako da nema garancije da radim stvari kako treba. Ovo je prvi projekt koji sam dizajnirao s tranzistorima, pa mi možda nedostaju neke kape i diode… Ako neko ima neki savjet, rado ću ga čuti i ugraditi.

Korak 1: Dijelovi

Delovi
Delovi
Delovi
Delovi

1- Arduino1- Wave Shield (Ladyada) 6 - 2n3904 tranzistori 6 - 330 Ohm otpornici 6 - 22 Ohm otpornici2 - 10k Ohm otpornici (utičnice za dugmad) 2 - dugmad2 - Stereo muški konektori za slušalice1 - ženski konektor za stereo slušalice Šta god senzore želite, ja sam učinio1 - Mikrofon1 - Parallax Ping ultrazvučni daljinomer1- Fotoćelija1 - Računalo pokreće Ruby skriptu koja provjerava e -poštu i povezuje se s Arduinom putem serijske veze

Korak 2: Tranzistori

Tranzistori
Tranzistori

Tranzistori se uglavnom koriste za pojačavanje stvari ili kao prekidači. U ovom slučaju koristim tranzistore kao prekidač. Kad visoko podignem Arduino pin, tranzistor dopušta zvuk da dolazi iz uređaja povezanog s mojim slušalicama. Tri tranzistora sa svake strane omogućuju mi da promijenim uzemljenje, te lijevi i desni stereo kanal za svaki izvor zvuka. Eksperimentirao sam s nekoliko otpornika i odlučio se na njih. Tranzistori se ne zagrijavaju, a otpor samog tranzistora je vrlo nizak kada je Arduino pin povezan s njim visok. Ovo je važno kako bih mogao dobiti dobar, prigušen zvuk. Kao što možete vidjeti na shemi u sljedećem koraku, tranzistori su spojeni tako da baza ide do Arduino pina za upravljanje (s otpornikom između njih). Emiter je spojen i na masu (sa otpornikom) i na zvučni ulaz. Kolektor je spojen na izlaz zvuka u slušalicama. Evo dobre web stranice o korištenju tranzistora kao prekidača

Korak 3: Povežite sve zajedno

Povežite sve zajedno
Povežite sve zajedno

Shema je prilično jednostavna. Treba imati na umu da valni štit koristi hrpu pinova na Arduinu, pa se držite podalje od njih (napunio sam ih lemljenjem na ploči). Koristio sam pinove 8 i 9 za tranzistore (8 svira valni štit, 9 svira vanjski izvor zvuka). Za mikrofon je korišten analogni pin 0 (ipak ne radi baš dobro, radim na tome). Analogni pin 1 koristi se za dugme "Zanemari". Kada se pritisne ovo dugme, svi se senzori zanemaruju unaprijed definirano vrijeme. Analogni pin 2 je "zvono na vratima". Još uvijek postoje besplatne iglice za druge stvari. Planiram da dodam foto otpornik koji ću postaviti na ekran mobilnog telefona da otkrije kada zvoni na analognom pinu 3. Dodaću to ovde kad ga isprobam.

Korak 4: Senzori

Senzori
Senzori

Trenutno koristim sljedeće "senzore" (vjerovatno su ulazi točniji) za pokretanje događaja: -Pritisnite dugme za zvono na vratima - Ovo je prilično jednostavno, čini da neko može pritisnuti dugme i on će reproducirati zvuk kroz vaše slušalice da znate da je neko u blizini. Dugme koje sam koristio je prema zadanim postavkama zatvorilo krug i otvorilo krug kada je dugme pritisnuto (upravo sam ih imao u blizini). Ne zaboravite pullup otpornike (općenito otpornik od 10 k Ohma koji ide na stranu žice Arduino radi pružanja dobrog visokog signala kada je krug otvoren). Moj je spojen na Arduino Analog Pin 2. -Parallax Ping Ultrazvučni daljinomer - Javite mi kada je neko u blizini (tj. Neko će ući u vašu kabinu). Moj je spojen na Arduino Pin 6 (na bijeloj žici senzora). Crvena žica senzora ide na 5 volti, a crna žica na masu. -Mikrofon - Ovo služi za otkrivanje kada neko razgovara s vama. Znate one momke koji ne znaju da imate slušalice i počnu pričati. Ovo još uvijek radim, izgleda da mi treba pretpojačalo za dobro čitanje s mikrofonom koji sam dobio od sparkfuna. Zanimljiv sljedeći korak bio bi snimiti nekoliko sekundi zvuka u datoteku na valnom štitu, a zatim ga reproducirati tako da znate da li vam je stalo prije nego isključite muziku. -Računalo - Trenutno ovo koristi Ruby skripta za provjeru nove e -pošte i šalje signal serijskom portu gdje Arduino obavještava da je primljena nova e -pošta. Očigledno biste s ovim mogli učiniti mnogo više. U osnovi, sve na što bi računar mogao upozoriti, mogli biste ga upozoriti preko slušalica. Bilo bi super da mogu omogućiti računaru da automatski generira datoteku s valovima koristeći neke od glasova AT&T -a, a zatim da je pošalje na Arduino putem serije. To ipak postoji izlaz. - Senzor zvonjenja mobitela - za to sam koristio fotoćeliju iz Radio Shacka (The Shack). Priključio sam ga na analogni pin 4, zatim na 5 volti. Također morate napraviti otpornik od 10 k Ohma sa strane koja se spaja na pin 4 na Arduinu na masu (inače se signal neće promijeniti). Za moj telefon, ako fotoćelija koju koristim pređe 400 na analognom očitanju na Arduinu, tada se zaslon osvjetljava. Ostali potencijalni senzori - Senzor zvona na telefonu - Možda bi mikrofon ovo mogao pokupiti. Ovisno o telefonu, vjerovatno postoji nekoliko načina za to. Morat ću još razmisliti o ovome da vidim mogu li doći do rješenja opće namjene. -Laser i foto otpornik - Laserski pokazivač možete usmjeriti preko otvora svoje prostorije do foto otpornika. Kad se svjetlo razbije jer je neko ušao u vašu kabinu, mogli biste oglasiti upozorenje. -CH4 detektor plina - Otkrijte povećanje nivoa metana u vašoj kabini. To može poslužiti kao sistem za rano upozoravanje na propuštanje plina u blizini.

Korak 5: Tekst u govor komandne linije

Evo male pomoći koju sam napisao vrlo brzo za prikrivanje teksta u govor. Napisano je na C# sa freeVisual C# 2008 Express Edition. Vjerojatno će vam trebati. Net 3.5 da biste ovo pokrenuli. Kôd je uključen, ali ako samo želite exe možete ga dobiti u CommandLineText2Speech/CommandLineText2Speech/bin/Release u zip datoteci. Da bi alatka funkcionirala, jednostavno otvorite naredbeni redak, idite do direktorija u koji ste stavili exe i upišite CommandLineText2Speech.exe. Ispisat će ovo: Upotreba: Za popis instaliranih glasova: CommandLineText2Speech.exe whatvoices

Za pretvaranje teksta u wav: CommandLineText2Speech.exe [glas] [brzina - zadano 0 (-10 do 10)] [volumen - zadano 80 (0 do 100)] "[tekst za pretvaranje]" [izlazna datoteka] Drugim riječima vjerovatno ćete htjeti prvo pokrenuti: CommandLineText2Speech.exe whatvoicesOvo će navesti glasove koje ste instalirali na računaru. Za pokretanje alata trebat će vam ime glasa. Glasovi koji dolaze uz Windows nisu sjajni, AT&T ima neke koji su prilično dobri. Zatim za pretvaranje teksta u wav datoteku učinite ovoCommandLineText2Speech.exe "Microsoft Sam" 0 80 "Ovo je test" test.wav Evo šta sve to znači: "Microsoft Sam"- glas, ovo je onaj koji dolazi sa Windows-om, imate staviti pod navodnike jer postoji razmak 0- Normalna brzina (može ići od -10 do 10) 80- Normalna jačina zvuka (može ići od 0 do 100) "Ovo je test"- Tekst koji će se pretvoriti u test wav datoteke.wav- kako će se wav datoteka zvati

Korak 6:

Priloženi Ruby kod vrši sljedeće provjere ima li nove e -pošte i ako je ima, prenosi je na Arduino putem USB na serijsko sučelje ugrađeno u Arduino. Imao sam problema sa povezivanjem velike brzine preko Serial -a (vjerovatno veličina bafera). Sve postavke datoteke nalaze se na vrhu datoteke. Ovo koristi moj C# program za kreiranje wav datoteke. Vjerojatno bih trebao sve ovo pretvoriti u jedan jezik, veliki sam ljubitelj Ruby -a, ali nije izgledalo da bi mogao vrlo lako stvoriti wav iz teksta pa sam napisao malu C# aplikaciju. Trebat će vam i rubin serijski dragulj, uključio sam i to. Da biste ga instalirali (nakon što ste instalirali Ruby) upišite "gem install win32-serial-0.5.1-x86-mswin32-60.gem" u naredbeni redak direktorija direktorija u koji preuzimate dragulj. To je sve što vam je potrebno da bi ovaj program funkcionirao.

Korak 7: Kodirajte

Priložio sam svoju Arduino skicu. Ima mnogo komentara koji bi vam pomogli. U osnovi nastavlja provjeravati sve ulaze, ako se jedan od njih aktivira, tada prebacuje zvuk na Wave Shield i reproducira wav datoteku povezanu s tim upozorenjem.

Korak 8: Pokrenite programe

U redu, sada imate sve dijelove. Da biste pravilno funkcionirali, morate1. Instalirajte Wave Shield na Arduino2. Povežite Arduino s računalom (ili upotrijebite XBee) - pretpostavljam da ste već instalirali firmver3. Pokrenite Ruby checkEmail.rb script4. Uživajte u svojoj muzici, Arduino će vas prekinuti kad treba pročitati vašu e -poštu ili kad osjeti nešto u vašoj okolini.

Korak 9: Videozapis gotovog proizvoda

Evo prekidača zvuka na poslu

Preporučuje se: