Índice:

Leia o e-mail com Arduino e Wave Shield: 4 etapas
Leia o e-mail com Arduino e Wave Shield: 4 etapas

Vídeo: Leia o e-mail com Arduino e Wave Shield: 4 etapas

Vídeo: Leia o e-mail com Arduino e Wave Shield: 4 etapas
Vídeo: Lesson 2: Getting Arduino Software and using Documentation for SunFounder Arduino Kit | SunFounder 2024, Julho
Anonim
Leia e-mail com Arduino e Wave Shield
Leia e-mail com Arduino e Wave Shield

Como parte do meu projeto aqui https://www.instructables.com/id/Sound-Switcher/ (esse projeto está em um concurso, então se você gostou deste, vote nele!) Que usa um Arduino para interromper uma fonte de som externa (ou seja, iPod) para informá-lo sobre as coisas que acontecem ao seu redor, também interrompi e-mails e li para você de quem é o e-mail e o assunto (para que você saiba se quer parar o que está fazendo e verifique). Como ter um Arduino com um Wave Shield para ler seu e-mail pode ser útil para outras pessoas, criei seu próprio e-mail instrutível aqui. Isso usa serial para transferir os dados. Estou apenas usando a interface USB no Arduino, mas você deve conseguir fazer a mesma coisa sem fio com o XBees, pelo que entendi. Portanto, basicamente o que está neste testável will1. Verifique seu email2. Se algo for novo, ele irá convertê-lo em um arquivo wav3. em seguida, ele o enviará para o arduino via serial4. em seguida, o Arduino irá reproduzi-lo. O maior TODO é acelerar a transferência de arquivos. Minha ideia é fazer com que o computador envie mais de 100 bytes ou mais e, em seguida, espere por uma resposta de confirmação do Arduino antes de enviar mais. Também seria bom ter alguma verificação de erro, já que um arquivo binário parcial não é muito melhor do que nenhum em alguns casos.

Etapa 1: Utilitário de texto para fala em linha de comando

Aqui está um pequeno utilitário que escrevi muito rápido para converter texto em fala. Ele foi escrito em C # com o Visual C # 2008 Express Edition gratuito. 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 2: Utilitário Ruby para verificar e-mail e fazer upload do Wav para o Arduino

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 3: Código Arduino

Aqui está um exemplo de leitura de dados via serial, copiando-os para o cartão SD e reproduzindo o wave. Isso faz parte do meu instrutivo aqui https://www.instructables.com/id/Sound-Switcher/ (note que está no concurso Arudino, se você gosta, vote nele!). Vou adicionar outro exemplo no dia seguinte ou assim que está reduzido. Observe a função check_serial para gravar no cartão SD. Estou usando a biblioteca WaveRP encontrada aqui para fazer isso

Etapa 4: execute tudo

Ok, agora você tem todas as peças. Para fazer isso funcionar corretamente, você precisa 1. Instalar 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. Aproveite seu Arduino lendo seu e-mail.

Recomendado: