Sadržaj:

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

Video: Prebacivač zvuka: 9 koraka

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

Je li vam se ikada pojačala glazba na poslu i niste shvatili da netko pokušava razgovarati s vama. Još gore, jeste li ikada poželjeli spavati na poslu, ali niste imali dobar način da se probudite ako bi netko (poput vašeg šefa) 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 spojiti Arduino na bilo koju vrstu senzora koja vam se sviđa. Na primjer, moj je spojen na ultrazvučni daljinomer Parallax Ping, mikrofon, gumb za zvono na vratima i računalo (upozorenja na novu e -poruku). Mogli biste ići dalje povezivanjem foto otpornika da otkrijete kada vaš mobitel zvoni (zaslon svijetli) ili Parallax CH4 senzorom kako biste mogli dobiti rano upozorenje o povećanju razine 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 oni biti korisni drugima u njihovim projektima. NAPOMENA: Ja sam prilično nov u svim ovim stvarima, tako da nema jamstva da radim sve kako treba. Ovo je prvi projekt koji sam dizajnirao s tranzistorima pa mi možda negdje nedostaju neke kape i diode… Ako netko ima savjet, rado ću ga čuti i ugraditi.

Korak 1: Dijelovi

Dijelovi
Dijelovi
Dijelovi
Dijelovi

1- Arduino1- Wave Shield (Ladyada) 6 - 2n3904 tranzistori 6 - 330 Ohm otpornici 6 - 22 Ohm otpornici 2 - 10k Ohm otpornici (utičnice za gumbe) 2 - tipke2 - Stereo muški priključci za slušalice1 - ženski konektor za stereo slušaliceKoji god senzori želite, ja sam to učinio1 - Mikrofon1 - Parallax Ping ultrazvučni daljinomer1- Fotoćelija1 - Računalo s Ruby skriptom koja provjerava e -poštu i povezuje se s Arduinom putem serijskog priključka

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 spojenog na moje slušalice. Tri tranzistora sa svake strane omogućuju mi prebacivanje uzemljenja, 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 na njega spojen pin Arduino. 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 na Arduino pin za upravljanje (s otpornikom između njih). Odašiljač je spojen i na masu (s 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: Sve to povežite zajedno

Povežite sve zajedno
Povežite sve zajedno

Shema je prilično jednostavna. Jednu stvar koju treba imati na umu je da valni štit koristi hrpu igala 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 gumb "Zanemari". Kada se pritisne ovaj gumb, svi se senzori zanemaruju unaprijed definirano vrijeme. Analogni pin 2 je "zvono na vratima". Još uvijek postoje besplatne iglice za druge stvari. Planiram dodati foto otpornik koji sam stavio na zaslon mobitela kako bi otkrio kada zvoni na analognom pinu 3. To ću dodati ovdje kad ga isprobam.

Korak 4: Senzori

Senzori
Senzori

Trenutno koristim sljedeće "senzore" (vjerojatno su ulazi točniji) za pokretanje događaja: -Pritisnite gumb za zvono na vratima - Ovo je prilično jednostavno, čini da netko može pritisnuti gumb i on će reproducirati zvuk kroz vaše slušalice dajući vam do znanja da je netko u blizini. Gumb koji sam koristio prema zadanim je postavkama zatvorio krug i otvorio krug kad je gumb pritisnut (upravo sam ih imao oko sebe). Ne zaboravite pullup otpornike (općenito 10k Ohm otpornik 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 kad je netko u blizini (tj. Netko ć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 na masu. -Mikrofon - Ovo služi za otkrivanje kada netko razgovara s vama. Znate one dečke koji ne shvaćaju da imate slušalice i počnu razgovarati. 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 je reproducirati kako biste znali je li to nešto do čega vam je stalo prije nego isključite glazbu. -Računalo - Trenutno ovo koristi rubin skriptu za provjeru nove e -pošte i šalje signal serijskom portu gdje Arduino obavještava da je primljena nova e -pošta. Očito biste s ovim mogli učiniti puno više. Uglavnom, sve na što bi računalo moglo upozoriti, mogli biste ga upozoriti putem slušalica. Bilo bi super da računalo automatski generira datoteku s valovima koristeći neke od glasova AT&T -a, a zatim je pošalje na Arduino putem serijske poruke. 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, vjerojatno postoji nekoliko načina za to. Morat ću o ovome još razmisliti da vidim mogu li doći do rješenja opće namjene. -Laser i foto otpornik - Laserski pokazivač mogli biste usmjeriti preko otvora svoje kabine do foto otpornika. Kad se svjetlo razbije jer netko uđe u vašu kabinu, mogli biste oglasiti upozorenje. -CH4 detektor plina - Otkrijte povećanje razine metana u vašoj kabini. To može poslužiti kao sustav za rano upozoravanje na plin koji je prošao u blizini.

Korak 5: Pretvaranje teksta u govor iz naredbenog retka

Evo male pomoći koju sam napisao vrlo brzo za prikrivanje teksta u govor. Napisano je na C# s 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. Kako bi alat funkcionirao, 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)] [glasnoća - zadano 80 (0 do 100)] "[tekst za pretvorbu]" [izlazna datoteka] Drugim riječima vjerojatno ćete htjeti prvo pokrenuti: CommandLineText2Speech.exe whatvoicesOvo će navesti glasove koje ste instalirali na računalo. Za pokretanje alata trebat će vam ime glasa. Glasovi koji dolaze s Windowsima 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 što sve to znači: "Microsoft Sam"- glas, ovo je onaj koji dolazi sa sustavom Windows, imate staviti pod navodnike jer postoji razmak 0- Normalna brzina (može ići od -10 do 10) 80- Normalna glasnoća (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 s povezivanjem velike brzine putem Serial -a (vjerojatno veličina međuspremnika). Sve postavke datoteke nalaze se pri vrhu datoteke. Ovo koristi moj C# program za stvaranje wav datoteke. Vjerojatno bih trebao sve ovo pretvoriti u jedan jezik, veliki sam ljubitelj Rubyja, ali nije izgledalo da bi mogao stvoriti wav iz teksta vrlo jednostavno pa sam napisao malu aplikaciju C#. 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 u koji preuzimate dragulj. To je sve što vam je potrebno za rad ovog programa.

Korak 7: Kodirajte

Priložio sam svoju Arduino skicu. Ima puno komentara u pomoći. 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. Spojite Arduino na računalo (ili upotrijebite XBee) - pretpostavljam da ste već instalirali firmver3. Pokrenite Ruby checkEmail.rb script4. Uživajte u glazbi, 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čeni: