Cuprins:

Sistem de anunțare a jetonului: 5 pași
Sistem de anunțare a jetonului: 5 pași

Video: Sistem de anunțare a jetonului: 5 pași

Video: Sistem de anunțare a jetonului: 5 pași
Video: 5 întrebări dificile din interviul de angajare 2024, Iulie
Anonim
Sistem de anunțuri de jeton
Sistem de anunțuri de jeton

În instructajul anterior am văzut cum să-ți faci Arduino să vorbească. Astăzi vom explora ceva mai mult pe același subiect. Cu toții trebuie să avem la un moment dat în viață un sistem de anunțuri, poate într-o bancă sau o gară. V-ați întrebat vreodată cum funcționează aceste sisteme de anunțuri? Ei bine, ei lucrează pe un principiu similar cu cel al ultimului nostru proiect. Deci, astăzi, în acest tutorial vom crea un sistem de anunțuri de jetoane capabil să anunțe jetoane de la 1 la 999, adică un total de 999 jetoane (1000 dacă includeți 0). Deci, să trecem la procesul de construcție !!!

Pasul 1: Strângeți consumabilele

Strângeți rechizitele
Strângeți rechizitele
Strângeți rechizitele
Strângeți rechizitele
Strângeți rechizitele
Strângeți rechizitele

Hei, dacă sunteți în căutarea unui magazin online pentru a cumpăra componentele, atunci UTSource.net este site-ul pe care trebuie să îl verificați. Au o mare varietate de module și componente electronice la prețuri accesibile. De asemenea, oferă servicii PCB pentru până la 16 straturi. Verificați site-ul lor web.

Să aruncăm o privire la modulele de care avem nevoie pentru acest proiect -

1. Placa Arduino Uno

2. Tastatură Matrix 4 * 4

3. Modul card SD

4. Jack audio de 3,5 mm

5. Difuzor cu amplificator încorporat și cablu AUX

6. Unele fire de antet

Majoritatea acestor componente au fost utilizate în proiectele noastre anterioare.

Pasul 2: Diagrama circuitului

Diagrama circuitului
Diagrama circuitului

Diagrama circuitului pentru acest proiect este exact aceeași ca în proiectul Talking Arduino. Singura diferență este tastatura. Interfața unei tastaturi este destul de simplă. Conectați rândurile tastaturii la pinii Arduino așa cum se arată mai sus.

(Tastatura pe care am folosit-o în acest proiect nu este la fel ca în circuit deoarece nu am găsit-o pe cea potrivită în lista de piese a lui Fritzing. Deci, ignorați primul și ultimul pin al tastaturii din circuit.)

Conectați canalul stâng și drept al mufei audio la pinul digital 10 al Arduino. Și știftul de la solul lui Arduino.

Urmați diagrama pentru a face restul conexiunilor.

Pasul 3: Pregătirea fișierelor audio

Pregătirea fișierelor audio
Pregătirea fișierelor audio
Pregătirea fișierelor audio
Pregătirea fișierelor audio

Acum trebuie să rețineți acest lucru că, atunci când utilizați modulul cardului SD și biblioteca TMRpcm, puteți utiliza doar formatul audio.wav. Niciun alt format audio nu va funcționa.

Deci, pentru a converti fișierele audio înregistrate sau fișierele pe care intenționați să le instalați pe cardul SD, trebuie să utilizați acest convertor audio online >> CLICK AICI

Păstrați setările pentru conversie așa cum se arată în imaginea de mai sus.

Și dacă doriți voci digitale digitalizate pe care le auzim pe sistemele reale, verificați acest site web care convertește textul scris în vorbire. Și apoi îl putem descărca în format mp3, care poate fi apoi convertit în format.wav de pe site-ul menționat mai sus.

Faceți clic aici pentru a vizita SITUL

De asemenea, puteți descărca fișierele audio pe care le-am folosit de mai jos. Deci, cu asta a venit timpul să programăm placa.

Pasul 4: Codificare

Codificare
Codificare

Descărcați fișierul.ino de mai jos. Compilați și încărcați programul pe placa dvs. Arduino. Dacă aveți probleme cu încărcarea codului, atunci nu ezitați să mă contactați sau să lăsați un comentariu mai jos. M-aș bucura să te ajut.

#include #include "SD.h" #define SD_ChipSelectPin 4 #include "TMRpcm.h" #include "SPI.h" TMRpcm tmrpcm; char myNum [4]; int i; octet const ROWS = 4; // patru rânduri const octet COLS = 4; // patru coloane tastele char [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}}; byte rowPins [ROWS] = {A0, A1, A2, A3}; // conectați-vă la pinouturile rândului octetului tastaturii colPins [COLS] = {9, 8, 7, 6}; // conectați-vă la pinouturile coloanei tastaturii Tastatură tastatură = Tastatură (makeKeymap (taste), rowPins, colPins, ROWS, COLS); void setup () {tmrpcm.speakerPin = 10; Serial.begin (9600); if (! SD.begin (SD_ChipSelectPin)) {Serial.println ("SD fail"); întoarcere; } / * tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); // Folosit pentru testare (Nu includeți în codul final) întârziere (1000); * /} void loop () {Serial.println ("Introduceți trei cifre num -"); for (i = 0; i <4; ++ i) {while ((myNum = keypad.getKey ()) == NO_KEY) {delay (1); // Așteptați doar o cheie} // Așteptați ca cheia să fie eliberată în timp ce (keypad.getKey ()! = NO_KEY) {delay (1); } Serial.print (myNum ); } if (myNum [3] == 'A') {Serial.println ("Token Sent"); tmrpcm.setVolume (5); tmrpcm.play ("tokenno.wav"); întârziere (2000); Verifica(); } if (myNum [3] == 'B') {Serial.println ("Token Not Sent"); i = 0; } if (myNum [3] == '*') {Serial.println ("Reg desk"); tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); i = 0; } if (myNum [3] == '#') {Serial.println ("închidere"); 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 ("zero.wav"); întârziere (1000); } if (myNum [c] == '1') {tmrpcm.setVolume (5); tmrpcm.play ("one.wav"); întârziere (1000); } if (myNum [c] == '2') {tmrpcm.setVolume (5); tmrpcm.play ("two.wav"); întârziere (1000); } if (myNum [c] == '3') {tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); întârziere (1000); } if (myNum [c] == '4') {tmrpcm.setVolume (5); tmrpcm.play ("four.wav"); întârziere (1000); } if (myNum [c] == '5') {tmrpcm.setVolume (5); tmrpcm.play ("five.wav"); întârziere (1000); } if (myNum [c] == '6') {tmrpcm.setVolume (5); tmrpcm.play ("six.wav"); întârziere (1000); } if (myNum [c] == '7') {tmrpcm.setVolume (5); tmrpcm.play ("seven.wav"); întârziere (1000); } if (myNum [c] == '8') {tmrpcm.setVolume (5); tmrpcm.play ("eight.wav"); întârziere (1000); } if (myNum [c] == '9') {tmrpcm.setVolume (5); tmrpcm.play ("nine.wav"); întârziere (1000); }} tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); }

Dacă modificați numele fișierelor audio, asigurați-vă că le editați și în cod. După ce ați făcut acest lucru, proiectul dvs. este gata să fie testat. Să vedem cum funcționează.

Pasul 5: Lucrarea proiectului

Lucrarea proiectului
Lucrarea proiectului

Am încărcat un videoclip al proiectului de mai jos. Puteți verifica asta. Proiectul a funcționat conform așteptărilor mele. Singura limitare cu care m-am confruntat a fost absența unui afișaj separat pentru proiect. Nu putem păstra laptopul conectat tot timpul. Celălalt caz este dacă lucrați pe laptop întreaga zi și aveți la dispoziție numeroase porturi USB.

Așa că vreau să adăugați un LCD (orice va face) în acest proiect și să-mi trimiteți un link al proiectului respectiv.

Acest proiect poate fi utilizat în birourile dvs. de la birourile de recepție dacă aveți o mulțime de oameni care vizitează zilnic.

Adăugarea unei surse de alimentare separate și a lcd-ului va face ca acest proiect să fie independent. Vă încredințez această sarcină, băieți.

Dacă îți place munca mea, ajută-mă împărtășind proiectele mele pe mânerele tale de pe rețelele sociale. Atât deocamdată. Ne vedem în curând cu un alt proiect în curând.

Recomandat: