Inhaltsverzeichnis:

Token-Ankündigungssystem - Gunook
Token-Ankündigungssystem - Gunook

Video: Token-Ankündigungssystem - Gunook

Video: Token-Ankündigungssystem - Gunook
Video: New Legendary Blue Flame Draco AK Skin & New Draco's Summon Emote At Garena Free Fire 2020 2024, November
Anonim
Token-Ankündigungssystem
Token-Ankündigungssystem

In der vorherigen Anleitung haben wir gesehen, wie Sie Ihr Arduino zum Sprechen bringen. Heute werden wir etwas mehr zum gleichen Thema untersuchen. Wir alle müssen irgendwann im Leben auf ein Durchsagesystem gestoßen sein, vielleicht in einer Bank oder einem Bahnhof. Haben Sie sich jemals gefragt, wie diese Ansagesysteme funktionieren? Nun, sie arbeiten nach dem ähnlichen Prinzip wie unser letztes Projekt. Heute werden wir in diesem Tutorial ein Token-Ankündigungssystem erstellen, das Token von 1 bis 999 ankündigen kann, d.h. insgesamt 999 Token (1000, wenn Sie 0 einschließen). Kommen wir also zum Bauprozess!!!

Schritt 1: Sammeln Sie die Vorräte

Sammle die Vorräte
Sammle die Vorräte
Sammle die Vorräte
Sammle die Vorräte
Sammle die Vorräte
Sammle die Vorräte

Hey, wenn Sie nach einem Online-Shop suchen, um die Komponenten zu kaufen, dann ist UTSource.net die Seite, die Sie sich ansehen müssen. Sie haben eine große Auswahl an elektronischen Modulen und Komponenten zu erschwinglichen Preisen. Sie bieten auch PCB-Services für bis zu 16 Schichten. Überprüfen Sie ihre Website.

Werfen wir einen Blick auf die Module, die wir für dieses Projekt benötigen -

1. Arduino Uno-Board

2. 4 * 4 Matrix-Tastatur

3. SD-Kartenmodul

4. 3,5-mm-Audiobuchse

5. Lautsprecher mit eingebautem Verstärker und einem AUX-Kabel

6. Einige Header-Drähte

Die meisten dieser Komponenten wurden in unseren vorherigen Projekten verwendet.

Schritt 2: Schaltplan

Schaltplan
Schaltplan

Der Schaltplan für dieses Projekt ist genau der gleiche wie im Talking Arduino-Projekt. Der einzige Unterschied ist die Tastatur. Die Anbindung einer Tastatur ist recht einfach. Verbinden Sie einfach die Tastaturreihen mit den Pins des Arduino wie oben gezeigt.

(Die Tastatur, die ich in diesem Projekt verwendet habe, ist nicht die gleiche wie in der Schaltung, da ich in Fritzings Teileliste nicht die richtige gefunden habe. Ignorieren Sie also die ersten und letzten Pins der Tastatur in der Schaltung.)

Verbinden Sie den linken und rechten Kanal der Audiobuchse mit dem digitalen Pin 10 des Arduino. Und der Massestift zu Arduinos Masse.

Folgen Sie dem Diagramm, um die restlichen Verbindungen herzustellen.

Schritt 3: Vorbereiten der Audiodateien

Vorbereiten der Audiodateien
Vorbereiten der Audiodateien
Vorbereiten der Audiodateien
Vorbereiten der Audiodateien

Beachten Sie nun, dass Sie bei Verwendung des SD-Kartenmoduls und der TMRpcm-Bibliothek nur das Audioformat.wav verwenden können. Kein anderes Audioformat funktioniert.

Um Ihre aufgenommenen Audiodateien oder die Dateien, die Sie auf der SD-Karte installieren möchten, zu konvertieren, müssen Sie diesen Online-Audiokonverter verwenden >> HIER KLICKEN

Behalten Sie die Einstellungen für die Konvertierung wie im Bild oben gezeigt bei.

Und wenn Sie coole digitalisierte Stimmen wollen, die wir auf den realen Systemen hören, dann besuchen Sie diese Website, die den geschriebenen Text in Sprache umwandelt. Und dann können wir es im mp3-Format herunterladen, das dann von der oben genannten Website in das.wav-Format konvertiert werden kann.

KLICKEN SIE HIER, UM DIE WEBSITE ZU BESUCHEN

Sie können auch die Audiodateien herunterladen, die ich von unten verwendet habe. Damit ist es an der Zeit, das Board zu programmieren.

Schritt 4: Codierung

Codierung
Codierung

Laden Sie die.ino-Datei von unten herunter. Kompilieren Sie das Programm und laden Sie es auf Ihr Arduino Board hoch. Wenn beim Hochladen des Codes Probleme auftreten, können Sie mich gerne kontaktieren oder unten einen Kommentar hinterlassen. Ich helfe Ihnen gerne.

#include #include "SD.h" #define SD_ChipSelectPin 4 #include "TMRpcm.h" #include "SPI.h" TMRpcm tmrpcm; char myNum[4]; int ich; konstantes Byte ROWS = 4; // vier Zeilen const Byte COLS = 4; // vierspaltige Zeichentasten[ROWS][COLS] = { {'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'} }; Byte rowPins[ROWS] = {A0, A1, A2, A3}; // mit den Zeilenbelegungen des Tastaturbytes verbinden colPins [COLS] = {9, 8, 7, 6}; // mit den Spaltenpinbelegungen der Tastatur verbinden Tastatur Tastatur = Tastatur (makeKeymap(keys), rowPins, colPins, ROWS, COLS); Void setup () {tmrpcm.speakerPin = 10; Serial.begin (9600); if (!SD.begin(SD_ChipSelectPin)) {Serial.println("SD fehlgeschlagen"); Rückkehr; } /* tmrpcm.setVolume(5); tmrpcm.play("drei.wav"); // Wird zum Testen verwendet (nicht im endgültigen Code enthalten) Verzögerung (1000); */} Void Schleife () { Serial.println ("Geben Sie dreistellige Zahl ein -"); for (i = 0; i < 4; ++i) { while((myNum = keyboard.getKey())==NO_KEY) { delay(1); // Warte einfach auf eine Taste } // Warte bis die Taste losgelassen wird while(keypad.getKey() != NO_KEY) { delay(1); } Serial.print (myNum); } if (myNum[3]=='A') {Serial.println("Token Sent"); tmrpcm.setVolume(5); tmrpcm.play("tokenno.wav"); Verzögerung (2000); prüfen(); } if (myNum [3] = = 'B') {Serial.println ("Token nicht gesendet"); i=0; } if (myNum[3]=='*') {Serial.println("Reg-Desk"); tmrpcm.setVolume(5); tmrpcm.play("star.wav"); i=0; } if (myNum[3]=='#') {Serial.println("Schließen"); tmrpcm.setVolume(5); tmrpcm.play("hash.wav"); i=0; } if (myNum[3]=='D') {Serial.println("Sub"); tmrpcm.setVolume(5); tmrpcm.play("D.wav"); i=0; }} void check() { for(int c=0;c<3;c++) { if (myNum[c]=='0') {tmrpcm.setVolume(5); tmrpcm.play("null.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='1') {tmrpcm.setVolume (5); tmrpcm.play("one.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='2') {tmrpcm.setVolume (5); tmrpcm.play("zwei.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='3') {tmrpcm.setVolume (5); tmrpcm.play("drei.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='4') {tmrpcm.setVolume (5); tmrpcm.play("vier.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='5') {tmrpcm.setVolume (5); tmrpcm.play("fünf.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='6') {tmrpcm.setVolume (5); tmrpcm.play("sechs.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='7') {tmrpcm.setVolume (5); tmrpcm.play("sieben.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='8') {tmrpcm.setVolume (5); tmrpcm.play("acht.wav"); Verzögerung (1000); aufrechtzuerhalten. Wenn (myNum[c]=='9') {tmrpcm.setVolume (5); tmrpcm.play("neun.wav"); Verzögerung (1000); }} tmrpcm.setVolume(5); tmrpcm.play("star.wav"); }

Wenn Sie die Namen der Audiodateien ändern, müssen Sie diese auch im Code bearbeiten. Damit ist Ihr Projekt bereit zum Testen. Mal sehen, wie es funktioniert.

Schritt 5: Arbeiten des Projekts

Arbeitsweise des Projekts
Arbeitsweise des Projekts

Ich habe unten ein Video des Projekts hochgeladen. Sie können das überprüfen. Das Projekt hat nach meinen Erwartungen funktioniert. Die einzige Einschränkung, mit der ich konfrontiert war, war das Fehlen einer separaten Anzeige für das Projekt. Wir können den Laptop nicht die ganze Zeit angeschlossen lassen. Es ist der andere Fall, wenn Sie den ganzen Tag an einem Laptop arbeiten und viele USB-Anschlüsse zur Verfügung haben.

Also möchte ich, dass ihr ein LCD in dieses Projekt einfügt (jeder wird es tun) und mir einen Link zu diesem Projekt schicken.

Dieses Projekt kann in Ihren Büros an den Rezeptionen verwendet werden, wenn Sie täglich viele Leute haben.

Das Hinzufügen eines separaten Netzteils und LCD macht dieses Projekt eigenständig. Diese Aufgabe vertraue ich euch an.

Wenn Ihnen meine Arbeit gefällt, dann helfen Sie mir, indem Sie meine Projekte auf Ihren Social-Media-Adressen teilen. Das war es fürs Erste. Bis bald mit einem anderen Projekt bald.