Índice:

Alternador de som: 9 etapas
Alternador de som: 9 etapas

Vídeo: Alternador de som: 9 etapas

Vídeo: Alternador de som: 9 etapas
Vídeo: SEU PROJETO PRECISA DE UM ALTERNADOR MAIOR? ASSISTA ESSE VÍDEO E SAIBA MAIS! 2024, Novembro
Anonim
Switcher de som
Switcher de som

Você já teve sua música aumentada no trabalho e não percebeu que alguém estava tentando falar com você? Pior ainda, você já teve vontade de dormir no trabalho, mas não tinha uma boa maneira de acordar se alguém (como seu chefe) estivesse para entrar em seu cubículo. Eu tenho. Para resolver esses problemas, inventei o SoundSwitcher baseado em Arduino. Basicamente, ele usa 6 transistores para alternar entre uma fonte de som (no meu caso, um iPod) e a proteção Wave do Ladyada, permitindo que você saiba o que está acontecendo. Você pode então conectar o Arduino a qualquer tipo de sensor que desejar. Por exemplo, o meu está conectado a um telêmetro ultrassônico Parallax Ping, microfone, botão de campainha e computador (alertas em um novo e-mail). Você pode ir mais longe conectando um resistor de foto para detectar quando seu telefone celular está tocando (a tela acende), ou um sensor Parallax CH4 para que você possa receber um aviso antecipado de aumento dos níveis de metano em seu cubículo porque seu colega de cubículo teve muito repolho na hora do almoço. De qualquer forma, a maioria de vocês provavelmente não tem esse problema (gostaria que eu não tivesse). Além do que o projeto realmente faz, ele também dá instruções sobre como converter texto em um arquivo wav e transferir arquivos para o cartão SD no Arduino via Serial. Espero que eles possam ser úteis para outras pessoas em seus projetos. NOTA: Sou muito novo em todas essas coisas, então não há garantia de que estou fazendo as coisas certas. Este é o primeiro projeto que desenvolvi com transistores, então posso estar faltando alguns capacitores e diodos em algum lugar… Se alguém tiver algum conselho, ficarei feliz em ouvi-lo e incorporá-lo.

Etapa 1: peças

Peças
Peças
Peças
Peças

1- Arduino1- Wave Shield (Ladyada) 6 - 2n3904 transistores6 - 330 Ohm resistors6 - 22 Ohm resistors2 - 10k Ohm resistors (pullups para botões) 2 - botões2 - conectores estéreo de fone de ouvido macho1 - conector de fone de ouvido estéreo fêmea Todos os sensores que você quiser, eu fiz1 - Microphone1 - Parallax Ping Ultrasonic Range Finder1- Photocell1 - Computador executando um script Ruby que verifica o e-mail e se conecta ao Arduino via serial

Etapa 2: Transistores

Transistores
Transistores

Os transistores são usados principalmente para amplificar coisas ou como interruptores. Neste caso, estou usando os transistores como uma chave. Quando eu ligo o pino do Arduino para o alto, o transistor permite que o som venha do dispositivo conectado a ele em meus fones de ouvido. Três transistores em cada lado me permitem alternar o solo e os canais estéreo esquerdo e direito para cada fonte de som. Eu experimentei vários resistores e me decidi por eles. Os transistores não esquentam e a resistência do próprio transistor é muito baixa quando o pino do Arduino conectado a ele está alto. Isso é importante para que eu possa obter um bom som não abafado. Como você pode ver no esquema na próxima etapa, cada um dos transistores é conectado de forma que a base vá para o pino do Arduino para controlá-lo (com um resistor entre eles). O emissor é conectado ao aterramento (com um resistor) e à entrada de som. O coletor está conectado à saída de som para os fones de ouvido. Esta é uma boa página da web sobre o uso de transistores como interruptores

Etapa 3: conecte tudo junto

Conecte tudo junto
Conecte tudo junto

O esquema é muito simples. Uma coisa a ter em mente é que o escudo de onda usa um monte de pinos no Arduino, então fique longe deles (eu os preenchi com solda na minha placa). Usei os pinos 8 e 9 para transistores (8 reproduz proteção de onda, 9 reproduz fonte de som externa). O pino analógico 0 foi usado para o microfone (ele não funciona muito bem, estou trabalhando nisso). O pino analógico 1 é usado para o botão "Ignorar". Quando este botão é pressionado, todos os sensores são ignorados por um período de tempo predefinido. O pino 2 analógico é uma "campainha". Ainda existem alguns pins grátis para outras coisas. Estou planejando adicionar um resistor de foto que coloco contra a tela de um telefone celular para detectar quando ele está tocando no pino analógico 3. Vou adicioná-lo aqui assim que tentar.

Etapa 4: Sensores

Sensores
Sensores

No momento, estou usando os seguintes "sensores" (provavelmente as entradas são mais precisas) para acionar eventos: -Botão de pressão para campainha - Isso é muito simples, faz com que alguém possa apertar um botão e tocar um som em seus fones de ouvido permitindo que você saiba que alguém está por perto. O botão que usei fechou o circuito por padrão e abriu o circuito quando o botão foi pressionado (eu só tinha esses por perto). Não se esqueça dos resistores pullup (geralmente um resistor de 10k Ohm que vai para o lado do pino do Arduino do fio para ajudar a dar um bom sinal alto quando o circuito está aberto). O meu está conectado ao Arduino Analog Pin 2.-Parallax Ping Telêmetro ultrassônico - Avise-me quando alguém estiver por perto (ou seja, alguém está prestes a entrar em seu cubículo). O meu está conectado ao Arduino Pin 6 (no fio branco do sensor). O fio vermelho do sensor vai para 5 volts e o fio preto vai para o aterramento.-Microfone - Destina-se a detectar quando alguém está falando com você. Você conhece aqueles caras que não percebem que você está usando fones de ouvido e começam a falar. Ainda estou trabalhando nisso, parece que preciso de um pré-amplificador para obter uma boa leitura com o microfone que comprei do sparkfun. Um próximo passo interessante seria gravar alguns segundos do som em um arquivo no protetor de ondas e, em seguida, reproduzi-lo para saber se é algo do qual você se importa antes de desligar a música. Computador - No momento, ele usa um Ruby script para verificar se há um novo e-mail e enviar um sinal para a porta serial onde o Arduino está para avisar que um novo e-mail foi recebido. Obviamente, você poderia fazer muito mais com isso. Basicamente, qualquer coisa que o computador pudesse alertar, você poderia alertá-lo através de seus fones de ouvido. Seria legal se eu pudesse fazer o computador gerar automaticamente um arquivo wave usando algumas das vozes da AT&T e enviá-lo ao Arduino via serial. Mas essa é uma saída. - Sensor de toque de telefone celular - usei uma fotocélula da Radio Shack (The Shack) para isso. Eu o conectei ao pino analógico 4 e depois a 5 volts. Você também precisa fazer um resistor de 10k Ohm do lado que se conecta ao pino 4 no Arduino para aterrar (caso contrário, o sinal não mudará). No meu telefone, se a fotocélula que estou usando ficar acima de 400 na leitura analógica do Arduino, a tela se acenderá. Outros sensores potenciais - sensor de toque do telefone de mesa - Talvez o microfone possa captar isso. Dependendo do telefone, provavelmente há várias maneiras de fazer isso. Terei que pensar mais um pouco sobre isso para ver se consigo encontrar uma solução de uso geral. -Laser e um resistor fotográfico - você poderia apontar um apontador laser através da abertura do seu cubículo para um resistor fotográfico. Quando a luz é quebrada porque alguém entra em seu cubículo, você pode soar um alerta.-Detector de gás CH4 - Detecta o aumento dos níveis de metano em seu cubículo. Isso pode ajudar a servir como um sistema de alerta precoce contra passagem de gás nas proximidades.

Etapa 5: texto de linha de comando para fala

Aqui está um pequeno utilitário que escrevi muito rápido para converter texto em fala. Ele foi escrito em C # com o freeVisual C # 2008 Express Edition. Você provavelmente precisará do. Net 3.5 para executá-lo. O código está incluído, mas se você quiser apenas o exe, pode obtê-lo em CommandLineText2Speech / CommandLineText2Speech / bin / Release no arquivo zip. Para fazer a ferramenta funcionar, você pode simplesmente abrir um prompt de comando, navegar até o diretório onde colocou o exe e digitar CommandLineText2Speech.exe. O resultado será o seguinte: Uso: Para listar as vozes instaladas: CommandLineText2Speech.exe whatvoices

Para converter texto em wav: CommandLineText2Speech.exe [voz] [taxa - padrão 0 (-10 a 10)] [volume - padrão 80 (0 a 100)] "[texto a ser convertido]" [arquivo de saída] Em outras palavras você provavelmente vai querer primeiro executar: CommandLineText2Speech.exe whatvoicesThis listará quais vozes você instalou em seu computador. Você precisará do nome de uma voz para executar a ferramenta. As vozes que vêm com o Windows não são boas, a AT&T tem algumas que são muito boas. Em seguida, para converter o texto em um arquivo wav, faça thisCommandLineText2Speech.exe "Microsoft Sam" 0 80 "Este é um teste" test.wavAqui está o que significa: "Microsoft Sam" - a voz, essa que vem com o Windows, você tem para colocá-lo entre aspas, pois há um espaço 0- Velocidade normal (pode ir de -10 a 10) 80- Volume normal (pode ir de 0 a 100) "Isto é um teste" - O texto que será transformado em um teste de arquivo wav.wav- como o arquivo wav será chamado

Etapa 6:

O código Ruby anexado faz as seguintes verificações para ver se há um novo e-mail e, se houver, ele o transfere para o Arduino por meio da interface USB para serial incorporada ao Arduino. Tive problemas em fazer conexões de alta velocidade em Serial (provavelmente o tamanho do buffer). As configurações do arquivo estão todas na parte superior do arquivo. Isso usa meu programa C # para criar um arquivo wav. Eu provavelmente deveria converter tudo isso para uma linguagem, sou um grande fã de Ruby, mas não parecia que poderia criar o wav do texto com muita facilidade, então escrevi o pequeno aplicativo C #. Você também vai precisar do ruby jóia de série, eu incluí isso também. Para instalá-lo (depois de instalar o Ruby) digite "gem install win32-serial-0.5.1-x86-mswin32-60.gem" no prompt de comando do diretório onde você baixou o gem. Isso é tudo de que você precisa para que este programa funcione.

Etapa 7: Código

Anexei meu esboço do Arduino. Tem muitos comentários para ajudar. Basicamente, ele verifica todas as entradas, se uma delas disparar, ele alterna o som do Wave Shield e reproduz o arquivo wav associado a esse alerta.

Etapa 8: execute os programas

Ok, agora você tem todas as peças. Para fazer isso funcionar corretamente, você precisa1. Instale o Wave Shield no Arduino2. Conecte o Arduino ao computador (ou use o XBee) - presumo que você já tenha o firmware instalado3. Execute o Ruby checkEmail.rb script4. Curta sua música, o Arduino o interromperá quando precisar ler seu e-mail ou quando sentir algo em seu ambiente.

Etapa 9: Vídeo do produto acabado

Aqui está o seletor de som em funcionamento

Recomendado: