Inhaltsverzeichnis:
- Schritt 1: Elechouse V3 Spracherkennungsmodul
- Schritt 2: Anschließen des Moduls an Arduino
- Schritt 3: Einrichten des Codes
- Schritt 4: Ergebnis
Video: Einführung in die Spracherkennung mit Elechouse V3 und Arduino. - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Hi…
Spracherkennungstechnologie gibt es seit einigen Jahren. Wir erinnern uns noch an die große Aufregung, die wir hatten, als wir mit dem ersten Siri-fähigen iPhone sprachen. Seitdem sind Sprachbefehlsgeräte in kürzester Zeit auf ein sehr fortschrittliches Niveau gewachsen, das unsere Erwartungen übertroffen hat. Mit der Einführung vieler fortschrittlicher Spracherkennungssysteme kamen viele andere Sprachassistenten wie der Google-Assistent und die Amazon Alexa hinzu. Allein der rasante Erfolg von Amazons Echo beweist, dass wir uns allmählich mit dem Sprechen mit Maschinen abfinden.
Beginnen wir also mit den Grundlagen. In diesem anweisbaren gebe ich Ihnen eine Einführung in das Elechouse V3 Spracherkennungsmodul und wie man eine LED mit Sprachbefehlen ein- und ausschaltet. Es gibt mehrere andere Möglichkeiten, die Spracherkennung in Ihrem Projekt zu implementieren, direkt von einem Android-Telefon bis hin zu Alexa oder Raspberry Pi oder einer anderen Technologie. Aber ich habe mehrere Nachrichten von vielen meiner Freunde erhalten, die mich fragten, wie man dieses spezielle Modul mit Arduino verwendet. Also schreibe ich dieses instructable als grundlegendes Tutorial für das Elechouse V3-Modul. Ich wollte dies für Anfänger so einfach wie möglich machen, also werden wir nicht die vollständigen Funktionen und Funktionen des Moduls besprechen, aber am Ende bin ich mir sicher, dass Sie einige ziemlich coole Ideen für Ihr nächstes Projekt bekommen werden.
Schritt 1: Elechouse V3 Spracherkennungsmodul
Elechouse V3 ist eines der kompaktesten und am einfachsten zu steuernden Spracherkennungsmodule auf dem Markt.
Es gibt zwei Möglichkeiten, dieses Modul zu verwenden, über den seriellen Port oder über die integrierten GPIO-Pins. Das V3-Board hat die Kapazität, bis zu 80 Sprachbefehle mit einer Dauer von jeweils 1500 Millisekunden zu speichern. Dieser wandelt Ihre Befehle nicht in Text um, sondern vergleicht ihn mit einem bereits aufgenommenen Satz von Stimmen. Technisch gesehen gibt es also keine Sprachbarrieren, um dieses Produkt zu verwenden. Sie können Ihren Befehl in jeder Sprache aufnehmen oder buchstäblich jeden Ton aufnehmen und als Befehl verwenden. Sie müssen es also zuerst trainieren, bevor Sie Sprachbefehle erkennen lassen.
Wenn Sie das Modul mit seinen GPIO-Pins verwenden, liefert das Modul nur Ausgaben für 7 der 80 Befehle. Für diese Methode müssen Sie 7 Befehle auswählen und in den Erkenner laden, und der Erkenner sendet Ausgaben an die entsprechenden GPIO-Pins, wenn einer dieser Sprachbefehle erkannt wird. Da wir dies mit dem Arduino verwenden, müssen wir uns nicht um die eingeschränkten Funktionen kümmern.
Das Gerät arbeitet in einem Eingangsspannungsbereich von 4,5 - 5 Volt und nimmt einen Strom von weniger als 40 mA auf. Dieses Modul kann mit einer Erkennungsgenauigkeit von 99% arbeiten, wenn es unter idealen Bedingungen verwendet wird. Die Wahl des Mikrofons und die Umgebungsgeräusche spielen eine entscheidende Rolle bei der Beeinflussung der Leistung des Moduls. Es ist besser, ein Mikrofon mit guter Empfindlichkeit zu wählen und zu versuchen, das Rauschen in Ihrem Hintergrund zu reduzieren, während Sie Befehle geben, um die maximale Leistung aus dem Modul herauszuholen.
Schritt 2: Anschließen des Moduls an Arduino
Lassen Sie uns nun über die Verbindungen sprechen, die hergestellt werden sollen.
Benötigte Hardware:
Elechouse V3 Spracherkennungsmodul
Arduino UNO R3. (Ich verwende hier Arduino Pro Mini. Es spielt keine Rolle, beide haben fast die gleiche Funktion.)
Mikrofon mit angeschlossenem 3,5-mm-Stecker. (Oder Sie können es direkt auf die Platine löten. Sie haben die Pins gegeben.)
Eine LED
Ein 470 Ohm Widerstand für die LED
Drähte nach Bedarf
USB-Kabel zum Programmieren des Arduino
Anschließen des Moduls an Arduino
GND - Masse
VCC - 5 V
RXD - Digitaler Pin 3 von Arduino (Dies ist ein benutzerdefinierter Pin. Beispielcode hat Pin 3 als Tx.)
TXD - Digitaler Pin 2 von Arduino (Dies ist auch ein benutzerdefinierter Pin.)
Die LED ist mit dem digitalen Pin 13 des Arduino verbunden, wie im Beispielcode definiert. Schließen Sie einen 470-Ohm-Widerstand in Reihe zur LED an.
Stecken Sie das Mikrofon in die 3,5-mm-Buchse des Boards. Löten Sie es an die Mikrofonpins im Modul, wenn es nicht mit einem 3,5-mm-Stecker geliefert wird.
Das ist alles über die Verbindungen. Schauen wir uns nun den Code an.
Schritt 3: Einrichten des Codes
Alle hier erwähnten Codes und Bibliotheken sind Open-Source und die Credits für ihre Entwicklung gehen an ihre jeweiligen Autoren.
Sie sollten die Arduino-Bibliothek "voicerecognitionv3.h" herunterladen und installieren, bevor Sie das Modul mit einem Arduino verwenden können.
Laden Sie die Bibliothek hier herunter.
Alle Codes, die wir benötigen, sind in der ZIP-Datei der Bibliothek als Beispielprogramme enthalten.
Training des V3-Moduls
Wie ich oben erwähnt habe, müssen wir das Modul trainieren, bevor wir es für die Spracherkennung verwenden können. Befolgen Sie diese Schritte, um das Modul zu trainieren.
Verbinden Sie den Circuit mit dem Computer
Starten Sie die Arduino-IDE
Überprüfen Sie, ob Sie das richtige Arduino-Board ausgewählt haben. (Werkzeuge -> Tafel)
Prüfen Sie, ob der richtige COM-Port ausgewählt ist. (Extras -> Port)
Öffnen Sie nun das Beispielprogramm zum Trainieren des Moduls
Gehen Sie zu Datei -> Beispiele -> VoiceRecognitionV3 -> vr_sample_train
Laden Sie den Code auf Arduino hoch und warten Sie, bis der Code hochgeladen wird. (Strg + U)
Öffnen Sie den seriellen Monitor. (Strg + Umschalt + M)
Stellen Sie sicher, dass die Baudrate auf 115200 eingestellt ist und die Option "Newline" ausgewählt ist
Wenn alles in Ordnung ist, wird auf dem seriellen Monitor ein Menü angezeigt, wie in den Bildern gezeigt
Es gibt mehrere Befehle, die Sie in den seriellen Monitor eingeben können, um das Modul zu programmieren. Hier verwenden wir den Befehl "train", um das Modul zu trainieren
Der V3 kann 80 Sprachbefehle mit einer Dauer von jeweils 1500 ms speichern. Jeder Befehl wird in einer Adresse gespeichert, die von 0 bis 79 beginnt
Durch die Verwendung des Befehls "train" speichern wir einen Sprachbefehl an einer bestimmten Adresse, daher sollten Sie die Adresse im Befehl angeben
Die Syntax des Befehls lautet wie folgt: Zugadresse Zum Beispiel: Zug 0, Zug 20, Zug 79
- Zur Steuerung der LED benötigen wir zwei Sprachbefehle. Ein Befehl zum Einschalten und der andere zum Ausschalten.
- Geben Sie den Befehl in den seriellen Monitor ein, gefolgt von der Adresse, die Sie speichern möchten. zB: Zug 20.
Nachdem Sie den Befehl eingegeben haben, warten Sie, bis auf dem seriellen Monitor die Meldung "Jetzt sprechen" angezeigt wird. Sprechen Sie nun Ihren Befehl zum Einschalten der LED in das Mikrofon deutlich und laut genug
Wenn der Befehl klar genug ist, wird eine weitere Meldung angezeigt, in der Sie aufgefordert werden, erneut zu sprechen. Sprechen Sie es erneut, um den Befehl zu registrieren
Der Code fordert Sie auf, den Befehl zu wiederholen, wenn während der Aufnahme Geräusche auftreten oder der Ton nicht klar genug ist. Die Qualität Ihres Mikrofons spielt hier eine erhebliche Rolle. Sie können einen Befehl möglicherweise nicht registrieren, wenn Ihr Mikrofon nicht gut genug ist. Trainieren Sie das Board auch in einer geräuschfreien Umgebung
Nachdem Sie erfolgreich eine Stimme in das Modul eingegeben haben, wiederholen Sie den gleichen Vorgang, um den Sprachbefehl zum Ausschalten der LED einzugeben. Denken Sie daran, den Befehl an einer anderen Adresse zu speichern. Zum Beispiel: Zug 30
Wenn Sie beide Befehle erfolgreich geladen haben, können Sie jetzt den Code zur Steuerung der LED hochladen
Steuerung der LED mit Sprachbefehlen
Öffnen Sie das Beispielprogramm zur Ansteuerung der LED
Gehen Sie zu Datei -> Beispiele -> VoiceRecognitionV3 -> vr_sample_control_led
In diesem Programm werden zwei Datensätze als "onrecord" (zum Einschalten der LED) und "offrecord" (zum Ausschalten der LED) definiert
Ändern Sie den Wert von "onrecord" in die Adresse des Sprachbefehls, den Sie trainiert haben, um die LED einzuschalten
- Ändern Sie den Wert von "offrecord" in die Adresse des Sprachbefehls, den Sie trainiert haben, um die LED auszuschalten.
- Laden Sie nun den Code auf den Arduino hoch. (Strg+U)
Das ist alles. Jetzt können Sie Ihre LED mit Sprachbefehlen steuern.
Schritt 4: Ergebnis
Um die Schaltung zu testen, sprechen Sie die Befehle so aus, wie Sie sie trainiert haben, um die LED ein- und auszuschalten. Denken Sie daran, dass die Qualität Ihres Mikrofons und die Umgebungsgeräusche die Ausgabe wirklich beeinflussen. Testen Sie es in einer geräuschfreien Umgebung oder wechseln Sie das Mikrofon, wenn Sie keine angemessene Antwort auf Ihre Sprachbefehle erhalten. Öffnen Sie auch den seriellen Monitor, um zu überprüfen, ob das Gerät auf Ihre Sprachbefehle reagiert. Wenn ein Befehl erkannt wird, zeigt der serielle Monitor eine Nachricht mit der Adresse des erkannten Befehls an.
Herzlichen Glückwunsch! Sie haben gelernt, eine LED mit Sprachbefehlen zu steuern. Jetzt können Sie jedes solche Gerät in ein sprachgesteuertes Gerät umwandeln. Schließen Sie ein Relaismodul an den Arduino an, um Wechselstromgeräte wie eine Glühbirne oder einen Lüfter zu steuern.
Es gibt zahlreiche Möglichkeiten, dies in unserem täglichen Leben anzuwenden. Teilen Sie Ihre Gedanken im Kommentarbereich unten mit.
Ich hoffe, dass dieses instructable Ihnen eine grundlegende Idee über die Verwendung des Elechouse V3 Spracherkennungsmoduls mit Arduino gegeben hat. Wenn Sie Fragen haben, können Sie diese gerne hier stellen oder eine E-Mail an [email protected] senden. Ich werde mein Bestes geben, um Ihnen zu helfen.
Empfohlen:
So verbinden Sie die Android-Anwendung mit AWS IOT und verstehen die Spracherkennungs-API: 3 Schritte
So verbinden Sie die Android-Anwendung mit AWS IOT und verstehen die Spracherkennungs-API: In diesem Tutorial erfahren Sie, wie Sie die Android-Anwendung mit dem AWS IOT-Server verbinden und die Spracherkennungs-API verstehen, die eine Kaffeemaschine steuert. Die Anwendung steuert die Kaffeemaschine über Alexa Sprachdienst, die c
Einführung in Manipulatoren: 8 Schritte (mit Bildern)
Einführung in Manipulatoren: Den richtigen Manipulator für eine Herausforderung zu entwickeln, ist einer der schwierigsten Teile des FIRST Robotics Competition (FRC). In meinen vier Studienjahren war das immer der größte Schwachpunkt meines Teams. Obwohl sich die Spielherausforderung in FRC von Jahr zu Jahr ändert
TI-83 oder 84 Einführung in die Programmerstellung: 5 Schritte
TI-83 oder 84 Einführung in die Programmerstellung: Hallo, dies ist eine Anleitung, die die Grundlagen der Programmierung auf Ihrem TI-83 84-Rechner erklärt. Außerdem könnte ich je nach Feedback andere instructables zu spezifischeren Dingen machen. Sorry für die Bilder, ich bin schlecht mit einer Kamera
So bauen Sie eine Uhr, die die Zeit an die Wand projiziert – wikiHow
So bauen Sie eine Uhr, die Zeit an die Wand projiziert: Dieses Instructable zeigt Ihnen, wie Sie eine Projektoruhr bauen. Mit diesem Gerät können Sie die Zeit an die Wand projizieren. Basierend auf einem kleinen LCD-Wecker (nicht zu klein, sondern kann nicht projiziert und bearbeitet werden) ist dies eine gute Möglichkeit
Einführung in VB Script: ein Anfängerleitfaden: Teil 2: Arbeiten mit Dateien: 13 Schritte
Intro to VB Script: a Beginners Guide: Teil 2: Arbeiten mit Dateien: Nun, in meinem letzten VBScript instructable, ging ich darüber nach, wie man ein Skript erstellt, um Ihr Internet abzuschalten, um Xbox360 zu spielen. Heute habe ich ein anderes Problem. Mein Computer wurde zu zufälligen Zeiten heruntergefahren und ich möchte jedes Mal protokollieren, wenn der Computer