Table des matières:

Système d'annonce de jetons : 5 étapes
Système d'annonce de jetons : 5 étapes

Vidéo: Système d'annonce de jetons : 5 étapes

Vidéo: Système d'annonce de jetons : 5 étapes
Vidéo: Les Distributeurs Ne Veulent Pas Que Vous Sachiez Ça 2024, Juillet
Anonim
Système d'annonce de jetons
Système d'annonce de jetons

Dans le précédent instructable, nous avons vu comment faire parler votre Arduino. Aujourd'hui, nous allons explorer un peu plus sur le même sujet. Nous devons tous être tombés sur un système d'annonce à un moment donné de notre vie, peut-être dans une banque ou une gare. Vous êtes-vous déjà demandé comment fonctionnent ces systèmes d'annonces ? Eh bien, ils fonctionnent sur le même principe que notre dernier projet. Donc aujourd'hui dans ce tutoriel nous allons faire un système d'annonce de jetons capable d'annoncer des jetons de 1 à 999 soit un total de 999 jetons (1000 si vous incluez 0). Passons donc au processus de construction !!!

Étape 1: Rassemblez les fournitures

Rassemblez les fournitures
Rassemblez les fournitures
Rassemblez les fournitures
Rassemblez les fournitures
Rassemblez les fournitures
Rassemblez les fournitures

Hé, si vous recherchez une boutique en ligne pour acheter les composants, UTSource.net est le site que vous devez consulter. Ils ont une grande variété de modules et de composants électroniques à des tarifs abordables. Ils fournissent également des services PCB pour un maximum de 16 couches. Vérifiez leur site Web.

Jetons un coup d'œil aux modules dont nous avons besoin pour ce projet -

1. Carte Arduino Uno

2. 4 * 4 clavier matriciel

3. Module de carte SD

4. Prise audio 3,5 mm

5. Haut-parleur avec amplificateur intégré et câble AUX

6. Certains fils d'en-tête

La plupart de ces composants ont été utilisés dans nos projets précédents.

Étape 2: schéma de circuit

Schéma
Schéma

Le schéma de circuit de ce projet est exactement le même que dans le projet Talking Arduino. La seule différence est le clavier. L'interfaçage d'un clavier est assez simple. Connectez simplement les rangées de claviers aux broches de l'Arduino comme indiqué ci-dessus.

(Le clavier que j'ai utilisé dans ce projet n'est pas le même que dans le circuit car je n'ai pas trouvé le bon dans la liste des pièces de Fritzing. Ignorez donc les première et dernière broches du clavier dans le circuit.)

Connectez les canaux gauche et droit de la prise audio à la broche numérique 10 de l'Arduino. Et la broche de terre à la terre d'Arduino.

Suivez le schéma pour faire le reste des connexions.

Étape 3: Préparation des fichiers audio

Préparation des fichiers audio
Préparation des fichiers audio
Préparation des fichiers audio
Préparation des fichiers audio

Maintenant, vous devez garder cela à l'esprit que lorsque vous utilisez le module de carte SD et la bibliothèque TMRpcm, vous ne pouvez utiliser que le format audio.wav. Aucun autre format audio ne fonctionnera.

Donc pour convertir vos fichiers audio enregistrés ou les fichiers que vous comptez installer sur la carte SD, vous devez utiliser ce convertisseur audio en ligne >> CLIQUEZ ICI

Conservez les paramètres de conversion comme indiqué dans l'image ci-dessus.

Et si vous voulez des voix numérisées cool que nous entendons sur les systèmes réels, consultez ce site Web qui convertit le texte écrit en parole. Et puis nous pouvons le télécharger au format mp3 qui peut ensuite être converti au format.wav à partir du site mentionné ci-dessus.

CLIQUEZ ICI POUR VISITER LE SITE

Vous pouvez également télécharger les fichiers audio que j'ai utilisés ci-dessous. Donc, avec cela fait, il est temps de programmer la carte.

Étape 4: Codage

Codage
Codage

Téléchargez le fichier.ino ci-dessous. Compilez et téléchargez le programme sur votre carte Arduino. Si vous rencontrez des problèmes pour télécharger le code, n'hésitez pas à me contacter ou à laisser un commentaire ci-dessous. Je serais heureux de vous aider.

#include #include "SD.h" #define SD_ChipSelectPin 4 #include "TMRpcm.h" #include "SPI.h" TMRpcm tmrpcm; char monNum[4]; int je; octet const ROWS = 4; //quatre lignes const byte COLS = 4; //quatre colonnes char keys[ROWS][COLS] = { {'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'} }; octet rowPins[ROWS] = {A0, A1, A2, A3}; // connexion aux broches de ligne de l'octet du clavier colPins[COLS] = {9, 8, 7, 6}; // se connecte aux brochages de colonne du clavier Keypad keyboard = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS); void setup() { tmrpcm.speakerPin = 10; Serial.begin(9600); if (!SD.begin(SD_ChipSelectPin)) { Serial.println("Échec SD"); revenir; } /* tmrpcm.setVolume(5); tmrpcm.play("trois.wav"); //Utilisé pour les tests (Ne pas inclure dans le code final) delay(1000);*/ } void loop() { Serial.println("Entrez un nombre à trois chiffres -"); for (i = 0; i < 4; ++i) { while((myNum = keyboard.getKey())==NO_KEY) { delay(1); // Attendez juste une touche } // Attendez que la touche soit relâchée while(keypad.getKey() != NO_KEY) { delay(1); } Serial.print(myNum); } if(myNum[3]=='A') { Serial.println("Jeton envoyé"); tmrpcm.setVolume(5); tmrpcm.play("jeton.wav"); retard (2000); Chèque(); } if(myNum[3]=='B') { Serial.println("Jeton non envoyé"); i=0; } if(myNum[3]=='*') { Serial.println("Reg desk"); tmrpcm.setVolume(5); tmrpcm.play("étoile.wav"); i=0; } if(myNum[3]=='#') { Serial.println("fermeture"); 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("zéro.wav"); retard(1000); } if (myNum[c]=='1') { tmrpcm.setVolume(5); tmrpcm.play("un.wav"); retard(1000); } if (myNum[c]=='2') { tmrpcm.setVolume(5); tmrpcm.play("deux.wav"); retard(1000); } if (myNum[c]=='3') { tmrpcm.setVolume(5); tmrpcm.play("trois.wav"); retard(1000); } if (myNum[c]=='4') { tmrpcm.setVolume(5); tmrpcm.play("quatre.wav"); retard(1000); } if (myNum[c]=='5') { tmrpcm.setVolume(5); tmrpcm.play("cinq.wav"); retard(1000); } if (myNum[c]=='6') { tmrpcm.setVolume(5); tmrpcm.play("six.wav"); retard(1000); } if (myNum[c]=='7') { tmrpcm.setVolume(5); tmrpcm.play("sept.wav"); retard(1000); } if (myNum[c]=='8') { tmrpcm.setVolume(5); tmrpcm.play("huit.wav"); retard(1000); } if (myNum[c]=='9') { tmrpcm.setVolume(5); tmrpcm.play("neuf.wav"); retard(1000); } } tmrpcm.setVolume(5); tmrpcm.play("étoile.wav"); }

Si vous modifiez les noms des fichiers audio, assurez-vous de les modifier également dans le code. Ceci fait, votre projet est prêt à être testé. Voyons voir comment ça fonctionne.

Étape 5: Fonctionnement du projet

Fonctionnement du projet
Fonctionnement du projet

J'ai téléchargé une vidéo du projet ci-dessous. Vous pouvez vérifier cela. Le projet a fonctionné selon mes attentes. La seule limitation que j'ai rencontrée était l'absence d'un affichage séparé pour le projet. Nous ne pouvons pas garder l'ordinateur portable connecté tout le temps. C'est l'autre cas si vous travaillez sur un ordinateur portable toute la journée et que vous disposez de nombreux ports USB.

Donc, je veux que vous ajoutiez un écran LCD (n'importe lequel fera l'affaire) dans ce projet et m'envoyez un lien de ce projet.

Ce projet peut être utilisé dans vos bureaux aux comptoirs d'accueil si vous avez beaucoup de gens qui visitent quotidiennement.

L'ajout d'une alimentation séparée et d'un écran LCD rendra ce projet autonome. Je vous confie cette tâche les gars.

Si vous aimez mon travail, aidez-moi en partageant mes projets sur vos poignées de médias sociaux. C'est tout pour le moment. A bientôt avec un autre projet bientôt.

Conseillé: