Агуулгын хүснэгт:

Дууны шилжүүлэгч: 9 алхам
Дууны шилжүүлэгч: 9 алхам

Видео: Дууны шилжүүлэгч: 9 алхам

Видео: Дууны шилжүүлэгч: 9 алхам
Видео: П.Тунараа - Далд ухамсарыг сэрээх 9-н минутын бясалгал 2024, Долдугаар сарын
Anonim
Дууны шилжүүлэгч
Дууны шилжүүлэгч

Та хөгжимөө ажил дээрээ чангалж, хэн нэгэн тантай ярихыг оролдож байгааг мэдээгүй байсан уу? Илүү муу зүйл бол та ажил дээрээ унтахыг хүсч байсан, гэхдээ таны өрөөнд танай хүн орох гэж байгаа бол сэрэх сайхан арга байгаагүй. Надад бий. Эдгээр асуудлыг шийдэхийн тулд би Arduino дээр суурилсан SoundSwitcher зохион бүтээсэн. Үндсэндээ энэ нь 6 транзистор ашиглан дууны эх үүсвэр (миний хувьд iPod) болон Ladyada's Wave бамбай хооронд юу болж байгааг танд мэдэгдэх болно. Дараа нь та Arduino -ийг хүссэн мэдрэгчтэй холбох боломжтой. Жишээлбэл, уурхай нь Parallax Ping хэт авианы хүрээ хайгч, микрофон, хаалганы хонхны товчлуур, компьютерт холбогдсон (шинэ имэйлийн анхааруулга). Та гар утас дуугарч байгааг (дэлгэц асдаг) эсвэл Parallax CH4 мэдрэгчийг илрүүлэхийн тулд гэрэл резисторыг холбосноор цааш явах боломжтой бөгөөд ингэснээр таны камерын хань хэт их байсан тул камер доторх метаны түвшинг нэмэгдүүлэх талаар эрт сэрэмжлүүлэг авах боломжтой болно. үдийн хоолны үеэр байцаа. Ямар ч байсан та нарын ихэнх нь ийм асуудалтай тулгараагүй байж магадгүй (би тэгэхгүй байхыг хүсч байна). Төсөл яг юу хийдэгээс гадна текстийг wav файл болгон хөрвүүлэх, файлуудыг Arduino дээрх Сериал дээр SD карт руу шилжүүлэх талаар заавар өгдөг.. Эдгээр нь төслүүдээ хэрэгжүүлэхэд бусдад хэрэг болно гэж найдаж байна. ТАЙЛБАР: Би энэ бүх зүйлд маш шинэлэг зүйл учраас аливаа зүйлийг зөв хийж байгаа гэсэн баталгаа байхгүй. Энэ бол миний транзистороор зохион бүтээсэн анхны төсөл учраас хаа нэгтээ зарим таг, диод байхгүй байж магадгүй юм… Хэрэв хэн нэгэн ямар нэгэн зөвлөгөө өгөх юм бол би үүнийг сонсохдоо баяртай байх болно.

Алхам 1: эд анги

Эд анги
Эд анги
Эд анги
Эд анги

1- Arduino1- Wave Shield (Ladyada) 6 - 2n3904 транзистор6 - 330 Ом эсэргүүцэл 6 - 22 Ом эсэргүүцэл2 - 10к Ом эсэргүүцэл (товчлуурыг татах) 2 - товчлуур2 - Стерео эрэгтэй чихэвчний холбогч 1 - Эмэгтэй стерео чихэвчний холбогч Таны хүссэн мэдрэгчийг би хийсэн 1 - Микрофон1 - Parallax Ping хэт авианы хүрээ хайгч1- Фотоцелл1 - Руби скриптээр ажилладаг компьютер имэйлийг шалгаж Arduino -той цувралаар холбогддог.

Алхам 2: Транзистор

Транзистор
Транзистор

Транзисторыг ихэвчлэн зүйлийг өсгөх эсвэл унтраалга болгон ашигладаг. Энэ тохиолдолд би транзисторыг шилжүүлэгч болгон ашиглаж байна. Би Arduino зүүг өндөр эргүүлэхэд транзистор нь чихэвч рүүгээ холбогдсон төхөөрөмжөөс дуу гарах боломжийг олгодог. Тал бүр дээр гурван транзистор нь дууны эх үүсвэр бүрийн хувьд газар, баруун, стерео сувгийг солих боломжийг олгодог. Би хэд хэдэн резистор туршиж үзээд эдгээрийг шийдсэн. Транзистор халахгүй бөгөөд түүнтэй холбогдсон Arduino зүү өндөр байх үед транзисторын эсэргүүцэл маш бага байдаг. Энэ нь маш чухал бөгөөд ингэснээр би сайн дуу чимээ гаргах боломжтой болно. Дараагийн алхамд схемээс харахад транзисторууд тус бүрийг холбосон бөгөөд ингэснээр суурь нь Arduino зүү рүү шилжиж (тэдгээрийн хооронд резистортой болно). Ялгаруулагч нь газардуулга (резистортой) болон дууны оролтыг хоёуланг нь холбодог. Коллектор нь чихэвчний дууны гаралттай холбогдсон байна. Энд транзисторыг унтраалга болгон ашиглах сайн вэб хуудас энд байна

Алхам 3: Бүгдийг хамтад нь холбоно уу

Бүгдийг хамтад нь холбоно уу
Бүгдийг хамтад нь холбоно уу

Схем нь маш энгийн. Анхаарах ёстой нэг зүйл бол долгионы бамбай нь Arduino дээр олон тооны тээглүүр ашигладаг тул тэдгээрээс хол бай (би самбар дээрээ гагнуураар дүүргэсэн). Би транзисторуудад 8 ба 9 -р тээглүүдийг ашигладаг байсан (8 долгионы бамбай, 9 гадаад дууны эх үүсвэр тоглодог). Аналог зүү 0 -ийг микрофонд ашигласан (энэ нь тийм ч сайн ажилладаггүй, гэхдээ би энэ дээр ажиллаж байна). Аналог зүү 1 -ийг "Үл тоомсорлох" товчлуурт ашигладаг. Энэ товчлуурыг дарахад бүх мэдрэгчийг урьдчилан тодорхойлсон хугацаанд үл тоомсорлодог. Аналог зүү 2 нь "хаалганы хонх" юм. Бусад зүйлд зориулсан үнэгүй зүү байсаар байна. Би аналог пин 3 дээр дуугарч байгааг илрүүлэхийн тулд гар утасны дэлгэц дээр байрлуулсан гэрэл эсэргүүцэгчийг нэмж оруулахаар төлөвлөж байна.

Алхам 4: Мэдрэгч

Мэдрэгч
Мэдрэгч

Яг одоо би үйл явдлыг өдөөхийн тулд дараах "мэдрэгч" -үүдийг (магадгүй оролт нь илүү нарийвчлалтай) ашиглаж байна: -Хаалганы хонхны товчлуурыг дарах - Энэ нь маш энгийн зүйл бөгөөд ингэснээр хэн нэгэн товчлуур дарах боломжтой бөгөөд таны чихэвчээр дуу гарах болно. эргэн тойронд байгаа хэн нэгэнд мэдэгдэх. Миний ашигладаг товчлуур нь хэлхээг анхдагчаар хааж, товчлуурыг дарахад хэлхээг нээдэг (эдгээр нь дэргэд байсан). Татах эсэргүүцэлийг бүү мартаарай (ерөнхийдөө хэлхээ нээлттэй байх үед сайн өндөр дохио өгөхөд туслахын тулд утасны Arduino зүү рүү явдаг 10 к Ом эсэргүүцэл). Уурхай нь Arduino аналог Pin 2 -тэй холбогдсон байна. -Parallax Ping Хэт авианы хүрээ хайгч - Хэн нэгэн ойрхон байхад надад мэдэгдээрэй (өөрөөр хэлбэл хэн нэгэн таны кабин руу орох гэж байна). Минийх Arduino Pin 6 -тай холбогдсон (мэдрэгчийн цагаан утсан дээр). Мэдрэгчийн улаан утас 5 вольт, хар утас нь газардана. -Микрофон - Энэ нь хэн нэгэн тантай ярьж байгааг илрүүлэх зорилготой юм. Чихэвч зүүсэн гэдгээ анзаардаггүй, ярьж эхэлдэг залуусыг та мэднэ. Би үүнийг одоо хүртэл хийж байгаа, надад sparkfun -аас авсан микрофоныг сайн уншихын тулд preamp хэрэгтэй юм шиг байна. Дараагийн сонирхолтой алхам бол долгионы бамбай дээрх файлд хэдэн секундын дууг бичээд дараа нь тоглуулах явдал юм. Тэгвэл энэ нь хөгжимөө унтраахаасаа өмнө танд хэрэгтэй зүйл мөн эсэхийг мэдэх болно. шинэ имэйлийг шалгах скрипт ба Arduino -ийн цуваа порт руу шинэ имэйл хүлээн авсныг мэдэгдэх дохио илгээдэг. Мэдээжийн хэрэг та үүнээс илүү ихийг хийж чадна. Үндсэндээ компьютер анхааруулах боломжтой бүх зүйлийг чихэвчээрээ дамжуулан сэрэмжлүүлж болно. Хэрэв би компьютерийг AT&T -ийн зарим дуу хоолойг ашиглан автоматаар долгионы файл үүсгэж, дараа нь Arduino руу цуваагаар дамжуулж өгвөл үнэхээр сайхан байх болно. Энэ бол гарц юм. -Утасны хонх дуугарах мэдрэгч - Би үүнд Radio Shack (The Shack) -аас авсан фотоэлемент ашигласан. Би үүнийг аналог 4 -р зүү, дараа нь 5 вольт руу холбосон. Та мөн Arduino дээрх 4 -р зүүг газарт холбосон талаас 10к Ом эсэргүүцэл хийх хэрэгтэй (эс тэгвээс дохио өөрчлөгдөхгүй). Хэрэв миний ашиглаж буй фотоэлемент Arduino дээрх аналоги дээр 400 -аас дээш байвал дэлгэц асдаг бөгөөд бусад боломжит мэдрэгч -ширээний утасны дуугарах мэдрэгч - Магадгүй микрофон үүнийг авах болно. Утаснаас хамааран үүнийг хийх хэд хэдэн арга байдаг. Би ерөнхий зориулалтын шийдлийг гаргаж чадах эсэхийг мэдэхийн тулд энэ талаар дахин бодох хэрэгтэй болно. Хэн нэгэн танай өрөөнд орж ирснээс болж гэрэл тасарсан тохиолдолд та дохио өгч болно. Энэ нь ойролцоох хий дамжуулахаас урьдчилан сэргийлэх анхааруулах систем болж чадна.

Алхам 5: Тушаалын мөрийн текстийг ярих

Энд би маш хурдан далд текстээс ярианд зориулж бичсэн жижигхэн хэрэгсэл байна. Үүнийг CV дээр үнэгүйVisual C# 2008 Express Edition ашиглан бичсэн болно. Үүнийг ажиллуулахын тулд танд. Net 3.5 хэрэгтэй болно. Кодыг оруулсан болно, гэхдээ хэрэв та exe -ийг хүсч байвал үүнийг zip файл дахь CommandLineText2Speech/CommandLineText2Speech/bin/Release дээрээс авах боломжтой. Хэрэгсэлийг ажиллуулахын тулд та командын мөрийг нээж, exe -ийг оруулсан директор руу очиж CommandLineText2Speech.exe бичнэ үү. Энэ нь үүнийг гаргана: Хэрэглээ: Суулгасан дуу хоолойг жагсаахын тулд: CommandLineText2Speech.exe whatvoices

Текстийг wav болгон хөрвүүлэхийн тулд: CommandLineText2Speech.exe [voice] [rate - default 0 (-10 to 10)] [volume - default 80 (0 to 100)] "[convert to text]" [output file] Өөрөөр хэлбэл Та эхлээд ажиллуулахыг хүсч магадгүй юм: CommandLineText2Speech.exe whatvoicesThis нь таны компьютерт суулгасан дуу хоолойг жагсаах болно. Энэ хэрэгслийг ажиллуулахын тулд танд дуу хоолойны нэр хэрэгтэй болно. Windows -тэй ирдэг дуу хоолой тийм ч сайн биш, AT&T нь маш сайн байдаг. Текстийг wav файл руу хөрвүүлэхийн тулд үүнийг хийгээрэйCommandLineText2Speech.exe "Microsoft Sam" 0 80 "Энэ бол туршилт" test.wav Энд юу гэсэн үг вэ: "Microsoft Sam"- энэ бол Windows-тэй ирдэг дуу хоолой юм. зай байгаа тул үүнийг ишлэлд оруулах 0- Хэвийн хурд (-10-аас 10 хүртэл байж болно) 80- Хэвийн эзлэхүүн (0-ээс 100 хүртэл байж болно) "Энэ бол тест"- wav файлын тест болгон хувиргах текст.wav- wav файлыг юу гэж нэрлэх вэ

Алхам 6:

Хавсаргасан Ruby код нь шинэ имэйл байгаа эсэхийг шалгахын тулд дараах шалгалтыг хийдэг бөгөөд хэрэв байгаа бол түүнийг Arduino -д суулгасан USB -ээр дамжуулж интерфэйсээр дамжуулан Arduino руу дамжуулдаг. Надад Serial дээр өндөр хурдны холболт хийх асуудал гарсан (магадгүй буферийн хэмжээ). Файлын бүх тохиргоо нь файлын дээд талд байна. Энэ нь миний C# програмыг ашиглан wav файл үүсгэдэг. Би энэ бүгдийг нэг хэл рүү хөрвүүлэх ёстой байх, би Ruby -ийн том фен, гэхдээ энэ нь текстээс wav үүсгэж чадахгүй юм шиг санагдсан тул би жижиг C# програмыг бичсэн. Цуврал эрдэнэ, би үүнийг бас оруулсан. Үүнийг суулгахын тулд (Ruby-г суулгасны дараа) эрдэнийг татаж авах лавлахын мөрөнд "gem install win32-serial-0.5.1-x86-mswin32-60.gem" гэж бичнэ үү. Энэ програмыг ажиллуулахын тулд танд энэ л хэрэгтэй болно.

Алхам 7: Код

Би Arduino ноорогоо хавсаргав. Үүнд туслах олон сэтгэгдлүүд байдаг. Энэ нь үндсэндээ бүх оролтыг шалгадаг бөгөөд хэрэв тэдгээрийн нэг нь гал авбал долгионы бамбайны дууг сольж, энэ дохиотой холбоотой wav файлыг тоглуулдаг.

Алхам 8: Програмуудыг ажиллуулна уу

За, одоо танд бүх хэсгүүд байна. Үүнийг зөв ажиллуулахын тулд танд 1 хэрэгтэй. Wave Shield -ийг Arduino2 дээр суулгаарай. Arduino -г компьютерт холбоно уу (эсвэл XBee ашиглана уу) - танд firmware суулгасан байна гэж бодож байна3. Ruby checkEmail.rb script4 -ийг ажиллуулна уу. Хөгжмөө сайхан өнгөрүүлээрэй, Arduino нь таны имэйлийг унших шаардлагатай үед эсвэл таны ямар нэгэн зүйлийг мэдрэх үед танд саад болно.

Алхам 9: Бэлэн бүтээгдэхүүний видео

Энд дууны унтраалга ажиллаж байна

Зөвлөмж болгож буй: