Mündəricat:

Səs dəyişdirici: 9 addım
Səs dəyişdirici: 9 addım

Video: Səs dəyişdirici: 9 addım

Video: Səs dəyişdirici: 9 addım
Video: Sıfırdan Rus Dili |Dərs 9 Sifət - Имя прилагательное . 2024, Noyabr
Anonim
Səs dəyişdirici
Səs dəyişdirici

Musiqinizi iş yerində səsləndirdiyiniz və kiminsə sizinlə danışmağa çalışdığını anlamadınızmı? Daha da pisi, heç iş yerində yatmaq istəmisiniz, amma kimsə (müdiriniz kimi) kabinetinizə girmək istəsə, oyanmaq üçün yaxşı bir yolunuz olmayıb. Mənim varımdır. Bu problemləri həll etmək üçün Arduino əsaslı SoundSwitcher icad etdim. Əsasən bu, bir səs mənbəyi (mənim vəziyyətimdə iPod) ilə Ladyada's Wave qalxanı arasında nələrin baş verdiyini bildirmək üçün keçmək üçün 6 tranzistordan istifadə edir. Arduino -nu istədiyiniz sensora qoşa bilərsiniz. Məsələn, mənimki Parallax Ping ultrasəs diapazonu, mikrofon, qapı zəngi düyməsi və kompüterə (yeni bir e -poçtdakı xəbərdarlıqlar) bağlıdır. Cib telefonunuzun nə vaxt çaldığını (ekran yanır) və ya Parallax CH4 sensorunu aşkar etmək üçün bir fotoşəkil rezistoru bağlayaraq daha da irəli gedə bilərsiniz, belə ki, kameranızda metan səviyyəsinin yüksəlməsi barədə erkən xəbərdarlıq əldə edə bilərsiniz, çünki kabin yoldaşınız çox çox idi. nahar zamanı kələm. Nəysə, çoxunuzda yəqin ki, belə bir problem yoxdur (istəməsəydim). Layihənin əslində nə etdiyindən başqa, mətni bir wav faylına çevirmək və sənədləri Arduino -da Serial üzərindən SD karta köçürməklə bağlı təlimatlar da verir.. Ümid edirik ki, bunlar layihələrinizdə başqalarına faydalı ola bilər. QEYD: Mən bütün bu işlərdə olduqca yeniyəm, buna görə də hər şeyi düzgün etdiyimə heç bir zəmanət yoxdur. Bu, tranzistorlarla hazırladığım ilk layihədir, buna görə bir yerdə bəzi qapaqlar və diodlar itkin ola bilər… Hər hansı bir məsləhətiniz varsa, onu eşitmək və daxil etməkdən məmnun olaram.

Addım 1: hissələr

Hissələri
Hissələri
Hissələri
Hissələri

1- Arduino1- Dalğa Qalxanı (Ladyada) 6 - 2n3904 transistorlar 6 - 330 Ohm rezistorlar 6 - 22 Ohm rezistorlar 2 - 10k Ohm rezistorlar (düymələr üçün çəkmələr) 2 - düymələr 2 - Stereo kişi qulaqlıq bağlayıcıları 1 - qadın stereo qulaqlıq konnektoru İstədiyiniz sensörləri mən etdim 1 - Mikrofon1 - Parallax Ping Ultrasonik Range Finder1- Photocell1 - E -poçtu yoxlayan və Arduino -ya serial vasitəsilə qoşulan Ruby skriptini işlədən kompüter

Addım 2: Transistorlar

Transistorlar
Transistorlar

Transistorlar əsasən şeyləri gücləndirmək və ya açar kimi istifadə olunur. Bu vəziyyətdə bir keçid olaraq tranzistorlardan istifadə edirəm. Arduino pinini yuxarıya çevirdiyim zaman tranzistor səsin qulaqcıqlarıma bağlı cihazdan gəlməsinə imkan verir. Hər tərəfdən üç tranzistor, hər bir səs mənbəyi üçün yerin və sol və sağ stereo kanalların dəyişdirilməsinə imkan verir. Bir neçə rezistorla sınadım və bunlara qərar verdim. Transistorlar qızmır və ona qoşulan Arduino pimi yüksək olduqda tranzistorun özünün müqaviməti çox aşağı olur. Bu, çox yaxşı səs çıxarmağım üçün vacibdir. Növbəti addımdakı sxemdə görə biləcəyiniz kimi, tranzistorların hər biri bir -birinə bağlıdır ki, baza Arduino pininə nəzarət etsin (aralarında bir rezistor olsun). Emitent həm yerə (bir rezistorla), həm də səs girişinə qoşulur. Kollektor, qulaqlıqlara səs çıxışı ilə bağlıdır. Burada tranzistorların açar kimi istifadə edilməsinə dair yaxşı bir səhifə var

Addım 3: Hamısını bir -birinə bağlayın

Hamısını Birlikdə Bağlayın
Hamısını Birlikdə Bağlayın

Sxem olduqca sadədir. Yadda saxlamaq lazım olan bir şey, dalğa qalxanının Arduino üzərində bir dəstə sancaq istifadə etməsidir, buna görə də onlardan uzaq durun (lövhəmdə lehimlə doldurdum). Transistorlar üçün 8 və 9 pinlərindən istifadə etdim (8 dalğa qalxanı, 9 xarici səs mənbəyi oynayır). Analog pin 0 mikrofon üçün istifadə edildi (çox yaxşı işləmir, amma bunun üzərində işləyirəm). Analog pin 1 "Yoxla" düyməsi üçün istifadə olunur. Bu düyməyə basıldıqda bütün sensorlar əvvəlcədən təyin edilmiş müddət ərzində nəzərə alınmır. Analog pin 2 "qapı zəngidir". Başqa şeylər üçün hələ də bəzi pulsuz sancaqlar var. Analog pin 3 -də zəng vurduğunu anlamaq üçün cib telefonu ekranına qoyduğum bir fotoşəkil rezistoru əlavə etməyi planlaşdırıram.

Addım 4: Sensorlar

Sensorlar
Sensorlar

Hal -hazırda hadisələri işə salmaq üçün aşağıdakı "sensorlar" dan istifadə edirəm (ehtimal ki, girişlər daha doğrudur): -Qapı zəngi üçün düyməni basın - Bu olduqca sadədir, buna görə kimsə düyməni basa bilər və qulaqlığınızdan bir səs çalacaq. ətrafındakı birinin olduğunu bildirmək. İstifadə etdiyim düymə varsayılan olaraq dövrəni bağladı və düymə basıldıqda dövrəni açdı (bunları ətrafımda idi). Çəkmə rezistorlarını unutmayın (ümumiyyətlə dövrə açıq olduqda yaxşı bir yüksək siqnal verməyə kömək etmək üçün telin Arduino pin tərəfinə gedən 10k Ohm rezistor). Mina Arduino Analog Pin 2 -yə qoşulub. -Paralaks Ping Ultrasonik diapazonu tapın - Biri yaxın olduqda (yəni kimsə sizin kabinetinizə girmək üzrədir) mənə xəbər verin. Mina Arduino Pin 6 -ya (sensorun ağ telində) bağlıdır. Sensorun qırmızı teli 5 volt, qara tel isə yerə gedir. -Mikrofon - Bu, kiminsə sizinlə danışdığını aşkar etmək üçündür. Qulaqlığınız olduğunu başa düşməyən və danışmağa başlayan adamları tanıyırsınız. Hələ də bu işlə məşğulam, görünür, sparkfundan aldığım mikrofonla yaxşı oxumaq üçün preampa ehtiyacım var. Növbəti maraqlı bir addım, səsin bir neçə saniyəsini dalğa qalxanındakı bir fayla yazmaq və sonra səsləndirmək olar, belə ki, musiqinizi söndürməzdən əvvəl maraqlandığınız bir şey olub olmadığını bilirsiniz. yeni e -poçtu yoxlamaq üçün skript və Arduinonun yeni bir e -poçtun alındığını bildirmək üçün serial portuna bir siqnal göndərir. Aydındır ki, bununla daha çox şey edə bilərsiniz. Əsasən kompüterin xəbərdar edə biləcəyi hər şeyi, qulaqlıqlarınızdan xəbərdar edə bilərsiniz. Kompüterin bəzi AT&T səslərindən istifadə edərək avtomatik olaraq bir dalğa faylı yaratmasını və ardıcıl olaraq Arduino -ya göndərməsini istəsəm yaxşı olar. Bunun da bir yolu var. -Cib telefonu zəngi sensoru - Bunun üçün Radio Shack (The Shack) -dən bir fotosel istifadə etdim. Analoq pin 4 -ə, sonra 5 volta bağladım. Arduinonun 4 -cü pininə yerə qoşulan tərəfdən 10k Ohm müqavimət də etməlisiniz (əks halda siqnal dəyişməyəcək). Telefonum üçün istifadə etdiyim fotosel Arduino -da oxunan analogda 400 -dən yuxarı olarsa, ekran işıqlandırılır. Telefondan asılı olaraq bunu etmək üçün bir neçə yol var. Ümumi təyinatlı bir həll yolu tapa biləcəyimi görmək üçün bu barədə bir az daha düşünməliyəm. Lazer və fotoşəkil rezistoru - Bir kameranın açılışında bir fotoşəkil rezistoruna işarə edə bilərsiniz. Kimsə sizin kabinetinizə girdiyi üçün işıq pozulduqda bir siqnal verə bilərsiniz. Bu, yaxınlıqdan keçən qaza qarşı erkən xəbərdarlıq sistemi kimi xidmət edə bilər.

Addım 5: Danışıq üçün Komanda Satırı Mətni

İşdə gizli mətni danışmaq üçün çox tez yazdığım kiçik bir yardım proqramı. FreeVisual C# 2008 Express Edition ilə C# -də yazılmışdır. Bunu işlətmək üçün yəqin ki. Net 3.5 lazımdır. Kod daxil edilir, ancaq exe istəsəniz zip faylında CommandLineText2Speech/CommandLineText2Speech/bin/Release -də əldə edə bilərsiniz. Aləti işə salmaq üçün sadəcə bir əmr istəyi aça, exe qoyduğunuz qovluğa gedin və CommandLineText2Speech.exe yazın. Bunu çıxaracaq: İstifadə: Quraşdırılmış səsləri siyahıya almaq üçün: CommandLineText2Speech.exe whatvoices

Mətni bir wav'a çevirmək üçün: CommandLineText2Speech.exe [səs] [nisbət - standart 0 (-10 ilə 10)] [həcm - standart 80 (0 ilə 100)] "[çevirmək üçün mətn]" [çıxış faylı] Başqa sözlə Yəqin ki, əvvəlcə işə salmaq istəyəcəksiniz: CommandLineText2Speech.exe whatvoicesThis kompüterinizdə hansı səslərin quraşdırıldığını göstərəcəkdir. Aləti işə salmaq üçün səsin adına ehtiyacınız olacaq. Windows ilə gələn səslər əla deyil, AT&T -də olduqca yaxşı səslər var. Mətni bir wav faylına çevirmək üçün bunu edinCommandLineText2Speech.exe "Microsoft Sam" 0 80 "Bu bir testdir" test.wav Burada hər şeyin mənası var: "Microsoft Sam"- səs, bu Windows ilə birlikdə gələn bir səsdir. boşluq olduğu üçün bunu dırnaqlara qoymaq 0- Normal Sürət (-10-dan 10-a qədər gedə bilər) 80- Normal Həcm (0-dan 100-ə qədər gedə bilər) "Bu bir sınaqdır"- Wav filetestinə çevriləcək mətn.wav- wav faylının adı nə olacaq

Addım 6:

Əlavə edilmiş Ruby kodu, yeni e -poçtun olub olmadığını yoxlamaq üçün aşağıdakı yoxlamaları aparır və Arduinoya quraşdırılmış USB -dən Serial interfeysi vasitəsilə Arduino -ya köçürür. Serialda (ehtimal ki, tamponun ölçüsü) yüksək sürətli bağlantılar qurmaqda problemlər yaşadım. Faylın bütün parametrləri faylın yuxarısındadır. Bu wav faylı yaratmaq üçün C# proqramımdan istifadə edir. Yəqin ki, hamısını bir dilə çevirməliyəm, mən Ruby -in böyük bir fanatıyam, amma mətndən çox asanlıqla wav yarada bilmədi, buna görə də kiçik C# tətbiqini yazdım. serial gem, bunu da daxil etdim. Qurmaq üçün (Ruby qurduqdan sonra), gem yüklədiyiniz kataloqun əmr satırına "gem install win32-serial-0.5.1-x86-mswin32-60.gem" yazın. Bu proqramın işləməsi üçün ehtiyacınız olan budur.

Addım 7: Kod

Arduino eskizimi əlavə etdim. İçərisində kömək edəcək bir çox şərh var. Əsasən bütün girişləri yoxlamağa davam edir, onlardan biri yanarsa, Dalğa Qalxanının səsini dəyişir və bu xəbərdarlıqla əlaqəli wav faylını oxuyur.

Addım 8: Proqramları işə salın

Yaxşı, indi bütün hissələr var. Bunun düzgün işləməsi üçün 1 etməlisiniz. Arduino2 -də Dalğa Qalxanı quraşdırın. Arduino -nu Kompüterə qoşun (və ya XBee -dən istifadə edin) - Firmware -nin artıq quraşdırıldığını düşünürəm3. Ruby checkEmail.rb script4 proqramını işə salın. Musiqinizdən zövq alın, Arduino e -poçtunuzu oxumaq lazım olanda və ya surrondingsinizdə bir şey hiss etdikdə sizi kəsəcək.

Addım 9: Hazır məhsulun videosu

İşdə səs dəyişdirici

Tövsiyə: