Spisu treści:

Przełącznik dźwięku: 9 kroków
Przełącznik dźwięku: 9 kroków

Wideo: Przełącznik dźwięku: 9 kroków

Wideo: Przełącznik dźwięku: 9 kroków
Wideo: Montaż i podłączenie rozdzielnicy w 8 minut | aparatura IDEAL by Kanlux 2024, Listopad
Anonim
Przełącznik dźwięku
Przełącznik dźwięku

Czy kiedykolwiek miałeś w pracy podkręconą muzykę i nie zdawałeś sobie sprawy, że ktoś próbuje z tobą porozmawiać? Co gorsza, czy kiedykolwiek chciałeś spać w pracy, ale nie miałeś dobrego sposobu, aby się obudzić, jeśli ktoś (jak twój szef) miał wejść do twojego boksu. Mam. Aby rozwiązać te problemy, wynalazłem SoundSwitcher oparty na Arduino. Zasadniczo wykorzystuje to 6 tranzystorów do przełączania między źródłem dźwięku (w moim przypadku iPodem) a tarczą Ladyada's Wave, informującą o tym, co się dzieje. Następnie możesz podłączyć Arduino do dowolnego typu czujnika. Na przykład mój jest podłączony do dalmierza ultradźwiękowego Parallax Ping, mikrofonu, przycisku dzwonka do drzwi i komputera (ostrzeżenia w nowej wiadomości e-mail). Możesz pójść dalej, podłączając fotorezystor, aby wykryć dzwonienie telefonu komórkowego (ekran się zaświeca) lub czujnik Parallax CH4, aby uzyskać wczesne ostrzeżenie o podniesieniu poziomu metanu w swoim boksie, ponieważ twój kolega z boksu miał za dużo kapusta na obiad. W każdym razie większość z was prawdopodobnie nie ma tego problemu (chciałbym, żebym tego nie robił). Oprócz tego, co faktycznie robi projekt, zawiera również instrukcje dotyczące konwersji tekstu do pliku wav i przesyłania plików na kartę SD na Arduino przez Serial. Mam nadzieję, że mogą one być przydatne dla innych w ich projektach. UWAGA: Jestem całkiem nowy w tym wszystkim, więc nie ma gwarancji, że robię wszystko dobrze. To pierwszy projekt, jaki kiedykolwiek zaprojektowałem z tranzystorami, więc może gdzieś brakuje niektórych nasadek i diod… Jeśli ktoś ma jakąś radę, z przyjemnością ją wysłucham i włączę.

Krok 1: Części

Części
Części
Części
Części

1- Arduino1- Wave Shield (Ladyada)6 - Tranzystory 2n39046 - Rezystory 330 Ohm6 - Rezystory 22 Ohm2 - Rezystory 10k Ohm (pulsy dla przycisków)2 - Przyciski2 - Stereofoniczne męskie złącza słuchawkowe1 - żeńskie złącze słuchawkowe stereo Jakiekolwiek czujniki chcesz, zrobiłem1 - Microphone1 - Parallax Ping Ultrasonic Range Finder1- Photocell1 - Komputer z uruchomionym skryptem Ruby, który sprawdza pocztę i łączy się z Arduino przez port szeregowy

Krok 2: Tranzystory

Tranzystory
Tranzystory

Tranzystory są używane głównie do wzmacniania rzeczy lub jako przełączniki. W tym przypadku używam tranzystorów jako przełącznika. Kiedy ustawię pin Arduino wysoko, tranzystor pozwala na dojście dźwięku z podłączonego do niego urządzenia do moich słuchawek. Trzy tranzystory z każdej strony pozwalają mi przełączać masę oraz lewy i prawy kanał stereo dla każdego źródła dźwięku. Eksperymentowałem z kilkoma rezystorami i zdecydowałem się na nich. Tranzystory nie nagrzewają się, a rezystancja samego tranzystora jest bardzo niska, gdy podłączony do niego pin Arduino jest wysoki. To ważne, żebym mógł uzyskać dobry, nietłumiony dźwięk. Jak widać na schemacie w kolejnym kroku każdy z tranzystorów jest połączony tak, że baza idzie do pinu Arduino w celu sterowania (z rezystorem między nimi). Emiter jest podłączony zarówno do masy (rezystor) jak i do wejścia dźwiękowego. Kolektor jest podłączony do wyjścia dźwięku do słuchawek. Oto dobra strona na temat używania tranzystorów jako przełączników

Krok 3: Połącz wszystko razem

Połącz to wszystko razem
Połącz to wszystko razem

Schemat jest dość prosty. Jedną rzeczą, o której należy pamiętać, jest to, że osłona fali wykorzystuje kilka pinów na Arduino, więc trzymaj się od nich z daleka (wypełniłem je lutem na mojej płycie). Użyłem pinów 8 i 9 dla tranzystorów (8 odtwarza ekran fali, 9 gra zewnętrzne źródło dźwięku). Do mikrofonu użyto analogowego pinu 0 (choć nie działa to zbyt dobrze, pracuję nad tym). Pin analogowy 1 służy do przycisku „Ignoruj”. Po naciśnięciu tego przycisku wszystkie czujniki są ignorowane przez określony czas. Pin analogowy 2 to „dzwonek do drzwi”. Wciąż jest kilka darmowych pinów do innych rzeczy. Mam zamiar dodać fotorezystor, który postawiłem na ekranie telefonu komórkowego, aby wykryć, kiedy dzwoni na analogowym pinie 3. Dodam to tutaj, gdy go wypróbuję.

Krok 4: Czujniki

Czujniki
Czujniki

Obecnie używam następujących „czujników” (prawdopodobnie dane wejściowe są dokładniejsze) do wyzwalania zdarzeń: -Przycisk dzwonka do drzwi - Jest to dość proste, dzięki czemu ktoś może nacisnąć przycisk i odtworzy dźwięk przez słuchawki informując Cię, że ktoś jest w pobliżu. Przycisk, którego użyłem, domyślnie zamykał obwód i otwierał obwód po naciśnięciu przycisku (po prostu miałem je w pobliżu). Nie zapomnij o rezystorach podciągających (zwykle rezystor 10 kΩ, który przechodzi do strony pinów Arduino, aby zapewnić dobry wysoki sygnał, gdy obwód jest otwarty). Mój jest podłączony do dalmierza ultradźwiękowego Arduino Analog Pin 2.-Parallax Ping - Daj mi znać, gdy ktoś jest w pobliżu (tj. Ktoś ma zamiar wejść do twojego boksu). Mój jest podłączony do Arduino Pin 6 (na białym przewodzie czujnika). Czerwony przewód czujnika przechodzi do 5 V, a czarny przewód do masy.-Mikrofon – Służy do wykrywania, gdy ktoś do Ciebie mówi. Znasz tych facetów, którzy nie zdają sobie sprawy, że masz założone słuchawki i zaczynają mówić. Wciąż nad tym pracuję, wygląda na to, że potrzebuję przedwzmacniacza, aby uzyskać dobry odczyt z mikrofonem, który dostałem od sparkfun. Ciekawym następnym krokiem byłoby nagranie kilku sekund dźwięku do pliku na osłonie fali, a następnie odtworzenie go, abyś wiedział, czy jest to coś, na czym ci zależy, zanim wyłączysz muzykę. - Komputer - W tej chwili używa to Ruby skrypt sprawdzający, czy pojawił się nowy e-mail i wysyła sygnał na port szeregowy, na którym Arduino ma poinformować o otrzymaniu nowej wiadomości e-mail. Można oczywiście zrobić z tym o wiele więcej. Zasadniczo wszystko, o czym komputer może ostrzec, możesz włączyć przez słuchawki. Byłoby fajnie, gdybym mógł automatycznie wygenerować plik wave za pomocą niektórych głosów AT&T, a następnie przesłać go do Arduino przez port szeregowy. Ale to jest wyjście. -Czujnik dzwonienia telefonu komórkowego - użyłem do tego fotokomórki z Radio Shack (The Shack). Podłączyłem go do pinu analogowego 4, a następnie do 5 woltów. Musisz również wykonać rezystor 10k Ohm od strony, która łączy się z pinem 4 na Arduino do masy (w przeciwnym razie sygnał się nie zmieni). W przypadku mojego telefonu, jeśli fotokomórka, której używam, przekracza 400 na odczycie analogowym na Arduino, ekran jest podświetlony. Inne czujniki potencjału - czujnik dzwonka telefonu stacjonarnego - Może mikrofon mógłby to odebrać. W zależności od telefonu jest na to prawdopodobnie kilka sposobów. Będę musiał się nad tym zastanowić, aby zobaczyć, czy mogę wymyślić rozwiązanie ogólnego przeznaczenia. - Laser i fotorezystor - Możesz skierować wskaźnik laserowy w poprzek otworu swojej kabiny na fotorezystor. Gdy światło zostanie przerwane, ponieważ ktoś wejdzie do twojego boksu, możesz uruchomić alarm.-Detektor gazu CH4 - Wykrywa podnoszący się poziom metanu w twojej boisku. Może to służyć jako system wczesnego ostrzegania przed przelatującym w pobliżu gazem.

Krok 5: Tekst w wierszu poleceń na mowę

Oto małe narzędzie, które napisałem bardzo szybko, aby zamienić tekst na mowę. Jest napisany w C# za pomocą freeVisual C# 2008 Express Edition. Prawdopodobnie będziesz potrzebować. Net 3.5 do uruchomienia tego. Kod jest dołączony, ale jeśli chcesz tylko plik exe, możesz go pobrać w CommandLineText2Speech/CommandLineText2Speech/bin/Release w pliku zip. Aby narzędzie działało, wystarczy otworzyć wiersz polecenia, przejść do katalogu, w którym umieściłeś plik exe, i wpisać CommandLineText2Speech.exe. Wyświetli to: Zastosowanie: Aby wyświetlić zainstalowane głosy: CommandLineText2Speech.exe whatvoices

Aby przekonwertować tekst na wav:CommandLineText2Speech.exe [głos] [ocena - domyślnie 0 (-10 do 10)] [głośność - domyślnie 80 (0 do 100)] "[tekst do konwersji]" [plik wyjściowy] Innymi słowy prawdopodobnie będziesz chciał najpierw uruchomić: CommandLineText2Speech.exe whatvoicesTo wyświetli listę głosów, które zainstalowałeś na swoim komputerze. Aby uruchomić narzędzie, będziesz potrzebować nazwy głosu. Głosy dostarczane z systemem Windows nie są świetne, AT&T ma kilka, które są całkiem dobre. Następnie, aby przekonwertować tekst do pliku wav wykonaj toCommandLineText2Speech.exe "Microsoft Sam" 0 80 "To jest test" test.wav Oto, co to wszystko oznacza: "Microsoft Sam" - głos, to jest ten, który jest dostarczany z systemem Windows, masz aby umieścić go w cudzysłowie, ponieważ jest spacja0- Normalna prędkość (może przejść od -10 do 10)80- Normalna głośność (może przejść od 0 do 100)"To jest test"- Tekst, który zostanie przekształcony w test pliku wav.wav - jak będzie się nazywał plik wav

Krok 6:

Załączony kod Ruby wykonuje następujące kontrole, aby sprawdzić, czy jest nowy e-mail, a jeśli jest, przesyła go do Arduino za pośrednictwem interfejsu USB do szeregowego wbudowanego w Arduino. Miałem problemy z wykonywaniem szybkich połączeń przez Serial (prawdopodobnie rozmiar bufora). Wszystkie ustawienia pliku znajdują się na początku pliku. Używa mojego programu C# do tworzenia pliku wav. Powinienem prawdopodobnie przekonwertować to wszystko na jeden język, jestem wielkim fanem Rubiego, ale nie wyglądało na to, że może bardzo łatwo utworzyć wav z tekstu, więc napisałem małą aplikację C#. seryjna perełka, ja też to włączyłem. Aby go zainstalować (po zainstalowaniu Rubiego) wpisz "gem install win32-serial-0.5.1-x86-mswin32-60.gem" w wierszu poleceń katalogu, do którego pobierasz gem. To wszystko, czego powinieneś potrzebować, aby ten program działał.

Krok 7: Kod

Załączam mój szkic Arduino. Zawiera wiele komentarzy, które mogą pomóc. Zasadniczo sprawdza wszystkie wejścia, jeśli jedno z nich uruchomi się, wtedy przełącza dźwięk Wave Shield i odtwarza plik wav powiązany z tym alertem.

Krok 8: Uruchom programy

Ok, teraz masz wszystkie części. Aby to działało poprawnie, musisz 1. Zainstaluj Wave Shield na Arduino2. Podłącz Arduino do komputera (lub użyj XBee) - zakładam, że masz już zainstalowane oprogramowanie3. Uruchom skrypt Ruby checkEmail.rb4. Ciesz się muzyką, Arduino przerwie Ci, gdy będzie musiał przeczytać Twój e-mail lub gdy wyczuje coś w Twoim otoczeniu.

Krok 9: Wideo gotowego produktu

Oto przełącznik dźwięku w pracy

Zalecana: