Indholdsfortegnelse:
- Trin 1: Saml forbrugsvarer
- Trin 2: Kredsløbsdiagram
- Trin 3: Forberedelse af lydfilerne
- Trin 4: Kodning
- Trin 5: Arbejde med projektet
Video: Token Announcement System: 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
I den tidligere instruerbare så vi, hvordan du får din Arduino til at tale. I dag vil vi undersøge lidt mere om det samme emne. Vi må alle have et eller andet tidspunkt i livet stødt på et meddelelsessystem, måske i en bank eller en togstation. Har du nogensinde spekuleret på, hvordan disse meddelelsessystemer fungerer? De arbejder efter det samme princip som vores sidste projekt. Så i dag i denne tutorial vil vi lave et Token Announcement System, der er i stand til at annoncere tokens fra 1 til 999, dvs. i alt 999 tokens (1000, hvis du inkluderer 0). Så lad os komme til byggeprocessen !!!
Trin 1: Saml forbrugsvarer
Hej, hvis du leder efter en online butik til at købe komponenterne, så er UTSource.net det websted, du skal tjekke. De har et stort udvalg af elektronikmoduler og komponenter til overkommelige priser. De leverer også printkort til op til 16 lag. Tjek deres hjemmeside.
Lad os se på de moduler, vi har brug for til dette projekt -
1. Arduino Uno Board
2. 4 * 4 Matrix -tastatur
3. SD -kortmodul
4. 3,5 mm lydstik
5. Højttaler med indbygget forstærker og et AUX -kabel
6. Nogle Header Wires
De fleste af disse komponenter blev brugt i vores tidligere projekter.
Trin 2: Kredsløbsdiagram
Kredsløbsdiagrammet for dette projekt er nøjagtigt det samme som i Talking Arduino -projektet. Den eneste forskel er tastaturet. Interfacing et tastatur er ganske enkelt. Tilslut bare tastaturrækkerne til benene på Arduino som vist ovenfor.
(Det tastatur, jeg brugte i dette projekt, er ikke det samme som i kredsløbet, fordi jeg ikke fandt det rigtige i Fritzings deleliste. Så ignorer de første og sidste ben på tastaturet i kredsløbet.)
Tilslut venstre og højre kanal på lydstikket til den digitale pin 10 på Arduino. Og jordnålen til Arduinos jord.
Følg diagrammet for at udføre resten af forbindelserne.
Trin 3: Forberedelse af lydfilerne
Nu skal du huske på, at når du bruger SD -kortmodulet og TMRpcm -biblioteket, kan du kun bruge.wav -lydformatet. Intet andet lydformat fungerer.
Så for at konvertere dine optagede lydfiler eller de filer, du har til hensigt at installere på SD -kortet, skal du bruge denne online lydkonverter >> KLIK HER
Behold indstillingerne for konverteringen som vist på billedet ovenfor.
Og hvis du vil have seje digitaliserede stemmer, som vi hører på de rigtige systemer, så tjek dette websted, der konverterer den skrevne tekst til tale. Og så kan vi downloade det i mp3 -format, som derefter kan konverteres til.wav -format fra ovennævnte websted.
Klik her for at besøge stedet
Du kan også downloade de lydfiler, som jeg brugte nedenunder. Så med det gjort sin tid til at programmere tavlen.
Trin 4: Kodning
Download.ino -filen nedenunder. Kompilér og upload programmet til dit Arduino Board. Hvis du oplever problemer med at uploade koden, er du velkommen til at kontakte mig eller skrive en kommentar herunder. Jeg hjælper dig gerne.
#include #include "SD.h" #define SD_ChipSelectPin 4 #include "TMRpcm.h" #include "SPI.h" TMRpcm tmrpcm; char myNum [4]; int i; const byte Rækker = 4; // fire rækker const byte COLS = 4; // fire kolonner tegnetaster [Rækker] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}}; byte rowPins [ROWS] = {A0, A1, A2, A3}; // opret forbindelse til rækkeudklipningerne i tastaturets byte colPins [COLS] = {9, 8, 7, 6}; // opret forbindelse til kolonnens pinouts på tastaturet Tastatur tastatur = Tastatur (makeKeymap (nøgler), rowPins, colPins, ROWS, COLS); tomrumsopsætning () {tmrpcm.speakerPin = 10; Serial.begin (9600); hvis (! SD.begin (SD_ChipSelectPin)) {Serial.println ("SD mislykkes"); Vend tilbage; } /* tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); // Anvendes til test (Inkluder ikke i den endelige kode) forsinkelse (1000);*/} void loop () {Serial.println ("Indtast trecifret num -"); for (i = 0; i <4; ++ i) {while ((myNum = tastatur.getKey ()) == NO_KEY) {forsinkelse (1); // Vent bare på en nøgle} // Vent på, at nøglen frigives, mens (tastatur.getKey ()! = NO_KEY) {forsinkelse (1); } Serial.print (myNum ); } hvis (myNum [3] == 'A') {Serial.println ("Token sendt"); tmrpcm.setVolume (5); tmrpcm.play ("tokenno.wav"); forsinkelse (2000); kontrollere(); } hvis (myNum [3] == 'B') {Serial.println ("Token ikke sendt"); i = 0; } hvis (myNum [3] == '*') {Serial.println ("Reg desk"); tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); i = 0; } hvis (myNum [3] == '#') {Serial.println ("lukker"); tmrpcm.setVolume (5); tmrpcm.play ("hash.wav"); i = 0; } hvis (myNum [3] == 'D') {Serial.println ("Sub"); tmrpcm.setVolume (5); tmrpcm.play ("D.wav"); i = 0; }} ugyldig kontrol () {for (int c = 0; c <3; c ++) {if (myNum [c] == '0') {tmrpcm.setVolume (5); tmrpcm.play ("zero.wav"); forsinkelse (1000); } hvis (myNum [c] == '1') {tmrpcm.setVolume (5); tmrpcm.play ("one.wav"); forsinkelse (1000); } hvis (myNum [c] == '2') {tmrpcm.setVolume (5); tmrpcm.play ("two.wav"); forsinkelse (1000); } hvis (myNum [c] == '3') {tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); forsinkelse (1000); } hvis (myNum [c] == '4') {tmrpcm.setVolume (5); tmrpcm.play ("four.wav"); forsinkelse (1000); } hvis (myNum [c] == '5') {tmrpcm.setVolume (5); tmrpcm.play ("five.wav"); forsinkelse (1000); } hvis (myNum [c] == '6') {tmrpcm.setVolume (5); tmrpcm.play ("six.wav"); forsinkelse (1000); } hvis (myNum [c] == '7') {tmrpcm.setVolume (5); tmrpcm.play ("seven.wav"); forsinkelse (1000); } hvis (myNum [c] == '8') {tmrpcm.setVolume (5); tmrpcm.play ("eight.wav"); forsinkelse (1000); } hvis (myNum [c] == '9') {tmrpcm.setVolume (5); tmrpcm.play ("ni.wav"); forsinkelse (1000); }} tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); }
Hvis du ændrer navnene på lydfilerne, skal du også sørge for at redigere dem i koden. Med det færdige er dit projekt klar til at blive testet. Lad os se, hvordan det fungerer.
Trin 5: Arbejde med projektet
Jeg har uploadet en video af projektet herunder. Du kan tjekke det ud. Projektet fungerede efter mine forventninger. Den eneste begrænsning, jeg stod overfor, var fraværet af en separat skærm til projektet. Vi kan ikke holde den bærbare computer tilsluttet hele tiden. Det er en anden sag, hvis du arbejder på bærbar computer hele dagen og har masser af USB -porte til rådighed.
Så jeg vil have, at I tilføjer en lcd (enhver vil gøre) i dette projekt og sender mig et link til det projekt.
Dette projekt kan bruges på dine kontorer i receptionen, hvis du har mange mennesker på besøg dagligt.
Tilføjelse af en separat strømforsyning og lcd får dette projekt til at stå alene. Jeg overlader den opgave til jer.
Hvis du kan lide mit arbejde, så hjælp mig ved at dele mine projekter på dine sociale medier. Det er det for nu. Vi ses snart med et andet projekt snart.
Anbefalede:
Lav dit eget fotovoltaiske 5V -system: 4 trin (med billeder)
Lav dit eget fotovoltaiske 5V-system: Dette bruger en bukkonverter som en 5V-udgang til at oplade batteriet (Li Po/Li-ion). Og Boost -konverter til 3,7V batteri til 5V USB -udgang til nødvendige enheder 5 V. Ligner det originale system, der bruger blybatteri som energilagringsopladning e
Slide Advance Alert System: 6 trin
Slide Advance Alert System: På Brown Dog Gadgets laver vi en masse videostreaming til workshops, og vores opsætning inkluderer en person på kameraet og en anden person som producenten, der kører softwaren, overvåger chatvinduet og foretager kameraskift og fremskridt diasene
PIC16F877A -baseret RFID -system: 5 trin
PIC16F877A Baseret RFID -system: RFID -system er et system, der giver identifikation af de studerende, medarbejdere og andre, der bruger RFID -tag, for at overvåge deres tilstedeværelse, arbejde, arbejdstid og mange andre. Denne artikel er sponsor med JLCPCB. Jeg takker virkelig JLCPCB for spons
Akustisk levitation med Arduino Uno trin for trin (8 trin): 8 trin
Akustisk levitation med Arduino Uno Step-by Step (8-trin): ultralyds lydtransducere L298N Dc kvindelig adapter strømforsyning med en han-DC-pin Arduino UNOBreadboard Sådan fungerer det: Først uploader du kode til Arduino Uno (det er en mikrokontroller udstyret med digital og analoge porte til konvertering af kode (C ++)
Coin-O-Matic Token Dispenser: 11 trin
Coin-O-Matic Token Dispenser: På vores kontor har vi en automat, der enten kan tage rigtige penge eller tokens. Ledelsen besluttede, at vi kunne få nogle gratis slik (inden for grænser) for at holde os glade og tilfredse med de lave lønninger, vi tjener. Problemet var, hvordan ville du