Inhaltsverzeichnis:

E-Mail mit Arduino und Wave Shield lesen - Gunook
E-Mail mit Arduino und Wave Shield lesen - Gunook

Video: E-Mail mit Arduino und Wave Shield lesen - Gunook

Video: E-Mail mit Arduino und Wave Shield lesen - Gunook
Video: Adafruit Wave Shield for Arduino Kit 2024, Juli
Anonim
E-Mails lesen mit Arduino und Wave Shield
E-Mails lesen mit Arduino und Wave Shield

Als Teil meines Projekts hier https://www.instructables.com/id/Sound-Switcher/ (dieses Projekt befindet sich in einem Wettbewerb, also wenn Sie das mögen, dann stimmen Sie dafür!) (zB iPod), um Sie über Dinge zu informieren, die um Sie herum vor sich gehen und überprüfen Sie es). Da ein Arduino mit einem Wave Shield Ihre E-Mail lesen kann, könnte es für andere nützlich sein, ich habe es hier in ein eigenes anweisbares gedreht. Dies verwendet seriell, um die Daten zu übertragen. Ich verwende nur die USB-Schnittstelle auf dem Arduino, aber Sie sollten in der Lage sein, das gleiche drahtlos mit XBees zu erreichen, wie ich es verstehe. Also im Grunde das Zeug in diesem anweisbaren Willen1. Überprüfen Sie Ihre E-Mail2. Wenn etwas neu ist, wird es in eine WAV-Datei konvertiert3. dann wird es über serial4 an das arduino gesendet. dann wird das Arduino es spielen. Die größte TODO beschleunigt die Dateiübertragung. Meine Idee ist, den Computer über 100 Byte oder so senden zu lassen und dann auf eine Bestätigungsantwort vom Arduino zu warten, bevor er mehr sendet. Es wäre auch schön, auch eine Fehlerprüfung durchzuführen, da eine partielle Binärdatei in einigen Fällen nicht viel besser ist als gar keine.

Schritt 1: Befehlszeilen-Text-to-Speech-Dienstprogramm

Hier ist ein kleines Dienstprogramm, das ich sehr schnell geschrieben habe, um Text in Sprache umzuwandeln. Es ist in C# mit der kostenlosen Visual C# 2008 Express Edition geschrieben. Sie benötigen wahrscheinlich. Net 3.5, um dies auszuführen. Der Code ist enthalten, aber wenn Sie nur die exe wollen, können Sie sie in CommandLineText2Speech/CommandLineText2Speech/bin/Release in der ZIP-Datei abrufen. Um das Tool zum Laufen zu bringen, öffnen Sie einfach eine Eingabeaufforderung, navigieren Sie zu dem Verzeichnis, in dem Sie die exe abgelegt haben, und geben Sie CommandLineText2Speech.exe ein. Es wird Folgendes ausgegeben: Verwendung: Um installierte Stimmen aufzulisten:CommandLineText2Speech.exe whatvoices

So konvertieren Sie Text in eine wav:CommandLineText2Speech.exe [Stimme] [Rate - Standard 0 (-10 bis 10)] [Lautstärke - Standard 80 (0 bis 100)] "[zu konvertierender Text]" [Ausgabedatei]Mit anderen Worten Sie möchten wahrscheinlich zuerst Folgendes ausführen:CommandLineText2Speech.exe whatvoicesDies listet auf, welche Stimmen Sie auf Ihrem Computer installiert haben. Sie benötigen den Namen einer Stimme, um das Tool auszuführen. Die Stimmen, die mit Windows geliefert werden, sind nicht großartig, AT&T hat einige, die ziemlich gut sind. Weiter, um Text in eine WAV-Datei zu konvertieren, tun Sie diesCommandLineText2Speech.exe "Microsoft Sam" 0 80 "Dies ist ein Test" test.wavHier ist die Bedeutung: "Microsoft Sam" - die Stimme, die mit Windows geliefert wird, haben Sie um es in Anführungszeichen zu setzen, da es ein Leerzeichen gibt0 - Normale Geschwindigkeit (kann von -10 bis 10 gehen)80 - Normale Lautstärke (kann von 0 bis 100 gehen)"Dies ist ein Test" - Der Text, der in einen WAV-Dateitest umgewandelt wird.wav - wie die wav-Datei heißen wird

Schritt 2: Ruby-Dienstprogramm zum Überprüfen von E-Mails und Hochladen von Wav auf Arduino

Der angehängte Ruby-Code führt die folgenden Überprüfungen durch, um zu sehen, ob neue E-Mails vorhanden sind, und überträgt sie über die in den Arduino integrierte USB-zu-Seriell-Schnittstelle an das Arduino. Ich hatte Probleme mit Hochgeschwindigkeitsverbindungen über Seriell (wahrscheinlich die Größe des Puffers). Die Einstellungen für die Datei befinden sich alle oben in der Datei. Dies verwendet mein C#-Programm, um eine WAV-Datei zu erstellen. Ich sollte das wahrscheinlich alles in eine Sprache umwandeln, ich bin ein großer Fan von Ruby, aber es sah nicht so aus, als könnte es die WAV aus Text sehr einfach erstellen, also habe ich die kleine C#-App geschrieben. Du brauchst auch den Ruby Serienjuwel, das habe ich auch aufgenommen. Um es zu installieren (nachdem Sie Ruby installiert haben), geben Sie "gem install win32-serial-0.5.1-x86-mswin32-60.gem" in die Eingabeaufforderung des Verzeichnisses ein, in das Sie das Gem herunterladen. Das ist alles, was Sie brauchen, damit dieses Programm funktioniert.

Schritt 3: Arduino-Code

Hier ist ein Beispiel für das Einlesen der Daten seriell, das Kopieren auf die SD-Karte und das anschließende Abspielen der Wave. Dies ist ein Teil meiner instructable hier https://www.instructables.com/id/Sound-Switcher/ (beachten Sie, dass es im Arudino-Wettbewerb ist, wenn Sie es mögen, stimmen Sie dafür!). Ich werde in den nächsten Tagen oder so ein weiteres Beispiel hinzufügen, das gekürzt ist. Schauen Sie sich die Funktion check_serial zum Schreiben auf die SD-Karte an. Ich verwende die hier gefundene WaveRP-Bibliothek

Schritt 4: Alles ausführen

Okay, jetzt hast du alle Teile. Damit dies richtig funktioniert, müssen Sie 1. Wave Shield auf Arduino2 installieren. Verbinden Sie Arduino mit dem Computer (oder verwenden Sie XBee) - Ich gehe davon aus, dass Sie die Firmware bereits installiert haben3. Führen Sie das Ruby-Skript checkEmail.rb aus4. Viel Spaß mit Ihrem Arduino beim Lesen Ihrer E-Mails.

Empfohlen: