Sommario:
- Passaggio 1: utilità di sintesi vocale da riga di comando
- Passaggio 2: Utility Ruby per controllare la posta elettronica e caricare Wav su Arduino
- Passaggio 3: codice Arduino
- Passaggio 4: esegui tutto
Video: Leggi e-mail con Arduino e Wave Shield: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:06
Come parte del mio progetto qui https://www.instructables.com/id/Sound-Switcher/ (quel progetto è in un contest quindi se ti piace vota per quello!) che usa un Arduino per interrompere una sorgente sonora esterna (cioè iPod) per farti sapere cosa succede intorno a te, ho anche interrotto le e-mail e ti ho letto da chi proviene l'e-mail e la riga dell'oggetto (così sai se vuoi interrompere quello che stai facendo e controlla). Dal momento che avere un Arduino con Wave Shield leggere la tua email potrebbe essere utile ad altri, l'ho trasformato in un proprio istruibile qui. Questo utilizza seriale per trasferire i dati. Sto solo usando l'interfaccia USB su Arduino, ma dovresti essere in grado di realizzare la stessa cosa in modalità wireless con XBees da quello che ho capito. Quindi fondamentalmente le cose in questo istruibile will1. Controlla la tua email2. Se qualcosa è nuovo, lo convertirà in un file wav3. quindi lo invierà all'arduino tramite serial4. quindi l'Arduino lo riprodurrà. Il più grande TODO è accelerare il trasferimento dei file. La mia idea è di fare in modo che il computer invii più di 100 byte circa, quindi attendi una risposta di conferma da Arduino prima che ne invii altri. Sarebbe anche bello avere anche un controllo degli errori poiché un file binario parziale non è molto meglio di niente in alcuni casi.
Passaggio 1: utilità di sintesi vocale da riga di comando
Ecco una piccola utility che ho scritto molto velocemente per convertire il testo in parlato. È scritto in C# con la versione gratuita di Visual C# 2008 Express Edition. Probabilmente avrai bisogno di. Net 3.5 per eseguirlo. Il codice è incluso, ma se vuoi solo l'exe puoi ottenerlo in CommandLineText2Speech/CommandLineText2Speech/bin/Release nel file zip. Per far funzionare lo strumento, puoi semplicemente aprire un prompt dei comandi, accedere alla directory in cui hai inserito l'exe e digitare CommandLineText2Speech.exe. Verrà visualizzato questo: Utilizzo: Per elencare le voci installate: CommandLineText2Speech.exe whatvoices
Per convertire il testo in un wav: CommandLineText2Speech.exe [voce] [tasso - valore predefinito 0 (da -10 a 10)] [volume - valore predefinito 80 (da 0 a 100)] "[testo da convertire]" [file di output]In altre parole probabilmente vorrai prima eseguire: CommandLineText2Speech.exe whatvoicesQuesto elencherà quali voci hai installato sul tuo computer. Avrai bisogno del nome di una voce per eseguire lo strumento. Le voci fornite con Windows non sono eccezionali, AT&T ne ha alcune che sono piuttosto buone. Accanto a convertire il testo in un file wav fai questoCommandLineText2Speech.exe "Microsoft Sam" 0 80 "Questo è un test" test.wavEcco cosa significa:"Microsoft Sam" - la voce, questa è quella che viene fornita con Windows, hai per metterlo tra virgolette poiché c'è uno spazio0 - Normal Speed (può andare da -10 a 10)80 - Normal Volume (può andare da 0 a 100)"This is a test" - Il testo che verrà trasformato in un file wavtest.wav - come verrà chiamato il file wav
Passaggio 2: Utility Ruby per controllare la posta elettronica e caricare Wav su Arduino
Il codice Ruby allegato esegue i seguenti controlli per vedere se c'è una nuova email e se c'è la trasferisce ad Arduino tramite l'interfaccia da USB a seriale integrata nell'Arduino. Ho avuto problemi con le connessioni ad alta velocità su seriale (probabilmente la dimensione del buffer). Le impostazioni per il file sono tutte nella parte superiore del file. Questo usa il mio programma C# per creare un file wav. Probabilmente dovrei convertire tutto questo in una lingua, sono un grande fan di Ruby, ma non sembrava che potesse creare il wav dal testo molto facilmente, quindi ho scritto la piccola app C#. Avrai anche bisogno del rubino gioiello seriale, ho incluso anche quello. Per installarlo (dopo aver installato Ruby) digita "gem install win32-serial-0.5.1-x86-mswin32-60.gem" nel prompt dei comandi della directory in cui scarichi il gem. Questo è tutto ciò di cui hai bisogno per far funzionare questo programma.
Passaggio 3: codice Arduino
Ecco un esempio di lettura dei dati via seriale, copiandoli sulla scheda SD, quindi riproduzione dell'onda. Questo fa parte del mio istruibile qui https://www.instructables.com/id/Sound-Switcher/ (nota che è nel concorso Arudino, se ti piace votalo!). Aggiungerò un altro esempio nel prossimo giorno o giù di lì che è ridotto. Guarda la funzione check_serial per scrivere sulla scheda SD. Sto usando la libreria WaveRP trovata qui per farlo
Passaggio 4: esegui tutto
Ok, ora hai tutte le parti. Per farlo funzionare correttamente è necessario 1. Installare Wave Shield su Arduino2. Collega Arduino al computer (o usa XBee): presumo che tu abbia già installato il firmware3. Eseguire lo script Ruby checkEmail.rb4. Goditi il tuo Arduino leggendo la tua email.
Consigliato:
Leggi il contatore dell'elettricità e del gas (belga/olandese) e carica su Thingspeak: 5 passaggi
Leggi il contatore dell'elettricità e del gas (belga/olandese) e carica su Thingspeak: se sei preoccupato per il tuo consumo energetico o sei solo un nerd, probabilmente vorrai vedere i dati del tuo nuovo contatore digitale sul tuo smartphone. progetto otterremo i dati attuali da un elettrificatore digitale belga o olandese
Abilità di Alexa: leggi l'ultimo Tweet (in questo caso, di Dio): 6 passaggi
Skill Alexa: Leggi l'ultimo Tweet (in questo caso, God's): ho creato un'abilità Alexa per leggere "God's Latest Tweet" -- il contenuto, ovvero da @TweetOfGod, l'account di oltre 5 milioni di abbonati creato da un ex scrittore di commedie del Daily Show. Utilizza IFTTT (If This Then That), un foglio di calcolo di Google e il
Leggi i valori ADC dai potenziometri: 4 passaggi
Leggi i valori ADC dai potenziometri: in questo articolo ti mostrerò come leggere i valori ADC da un potenziometro. Questa è la base della programmazione Arduino. che sta leggendo i valori analogici usando il pin analogico fornito da Arduino.oltre a usare il potenziometro, ci sono diversi sensori che
Leggi e scrivi dalla porta seriale con Raspberry Pi usando Wemos: 5 passaggi
Leggere e scrivere dalla porta seriale con Raspberry Pi utilizzando Wemos: comunicare con un Raspberry Pi utilizzando un Wemos D1 mini R2
Leggi il tuo contatore elettrico principale (ESP8266, WiFi, MQTT e Openhab): 6 passaggi (con immagini)
Leggi il tuo contatore di energia elettrica principale (ESP8266, WiFi, MQTT e Openhab): in questo Instructable scopri come leggo il mio consumo di energia elettrica principale della mia casa e lo pubblico tramite un ESP8266, Wifi, MQTT nel mio Openhab Home Automation. Ho un 'misuratore intelligente' ISKRA tipo MT372, tuttavia non ha facile possibilità di esportare il