Innehållsförteckning:

Tillkännagivande system: 5 steg
Tillkännagivande system: 5 steg

Video: Tillkännagivande system: 5 steg

Video: Tillkännagivande system: 5 steg
Video: Что будет, если ржавый гвоздь воткнется вам в ногу? 2024, Juli
Anonim
Tillkännagivande system
Tillkännagivande system

I föregående instruktioner såg vi hur du får din Arduino att tala. Idag kommer vi att utforska lite mer om samma ämne. Vi måste alla ha någon gång i livet stött på ett meddelandesystem kanske på en bank eller en tågstation. Har du någonsin undrat hur dessa meddelandesystem fungerar? De arbetar på samma princip som vårt senaste projekt. Så idag i denna handledning kommer vi att göra ett token -meddelandesystem som kan annonsera tokens från 1 till 999, dvs totalt 999 tokens (1000 om du inkluderar 0). Så låt oss komma till byggprocessen !!!

Steg 1: Samla förbrukningsmaterial

Samla förbrukningsmaterial
Samla förbrukningsmaterial
Samla förbrukningsmaterial
Samla förbrukningsmaterial
Samla förbrukningsmaterial
Samla förbrukningsmaterial

Hej om du letar efter en onlinebutik för att köpa komponenterna är UTSource.net webbplatsen du behöver kolla in. De har ett stort utbud av elektronikmoduler och komponenter till överkomliga priser. De erbjuder också PCB -tjänster för upp till 16 lager. Kolla deras hemsida.

Låt oss ta en titt på de moduler vi behöver för detta projekt -

1. Arduino Uno Board

2. 4 * 4 Matris -knappsats

3. SD -kortmodul

4. 3,5 mm ljuduttag

5. Högtalare med inbyggd förstärkare och en AUX -kabel

6. Några Header Wires

De flesta av dessa komponenter användes i våra tidigare projekt.

Steg 2: Kretsdiagram

Kretsdiagram
Kretsdiagram

Kretsschemat för detta projekt är exakt samma som i Talking Arduino -projektet. Den enda skillnaden är knappsatsen. Det är ganska enkelt att ansluta en knappsats. Anslut bara knappsatsraderna till stiften på Arduino som visas ovan.

(De knappsatser jag använde i det här projektet är inte samma sak som i kretsen eftersom jag inte hittade den rätta i Fritzings dellista. Så ignorera de första och sista stiften på knappsatsen i kretsen.)

Anslut vänster och höger kanal på ljuduttaget till den digitala stiftet 10 på Arduino. Och marknålen till Arduinos mark.

Följ diagrammet för att göra resten av anslutningarna.

Steg 3: Förbereda ljudfilerna

Förbereda ljudfilerna
Förbereda ljudfilerna
Förbereda ljudfilerna
Förbereda ljudfilerna

Nu måste du komma ihåg att när du använder SD -kortmodulen och TMRpcm -biblioteket kan du bara använda.wav -ljudformatet. Inget annat ljudformat fungerar.

Så för att konvertera dina inspelade ljudfiler eller de filer som du tänker installera på SD -kortet måste du använda den här online -ljudomvandlaren >> KLICKA HÄR

Behåll inställningarna för konverteringen enligt bilden ovan.

Och om du vill ha coola digitaliserade röster som vi hör på de riktiga systemen, kolla in den här webbplatsen som konverterar den skrivna texten till tal. Och sedan kan vi ladda ner det i mp3 -format som sedan kan konverteras till.wav -format från webbplatsen som nämns ovan.

KLICKA HÄR FÖR ATT BESÖKA WEBBPLATSEN

Du kan också ladda ner ljudfilerna som jag använde nedan. Så med det gjort sin tid att programmera styrelsen.

Steg 4: Kodning

Kodning
Kodning

Ladda ner.ino -filen nedan. Kompilera och ladda upp programmet till din Arduino Board. Om du stöter på problem med att ladda upp koden är du välkommen att kontakta mig eller lämna en kommentar nedan. Jag hjälper dig gärna.

#include #include "SD.h" #define SD_ChipSelectPin 4 #include "TMRpcm.h" #include "SPI.h" TMRpcm tmrpcm; char myNum [4]; int i; const byte RADER = 4; // fyra rader const byte COLS = 4; // fyra kolumner char nycklar [RADER] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}}; byte rowPins [ROWS] = {A0, A1, A2, A3}; // ansluta till radnålarna för knappsatsens byte colPins [COLS] = {9, 8, 7, 6}; // Anslut till knapparna i knapparna på knappsatsen Knappsatsens knappsats = Knappsats (makeKeymap (tangenter), rowPins, colPins, ROWS, COLS); void setup () {tmrpcm.speakerPin = 10; Serial.begin (9600); if (! SD.begin (SD_ChipSelectPin)) {Serial.println ("SD misslyckas"); lämna tillbaka; } /* tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); // Används för testning (Inkludera inte i slutkoden) fördröjning (1000);*/} void loop () {Serial.println ("Ange tresiffrigt num -"); för (i = 0; i <4; ++ i) {while ((myNum = knappsats.getKey ()) == NO_KEY) {delay (1); // Vänta bara på en nyckel} // Vänta på att nyckeln ska släppas medan (knappsats.getKey ()! = NO_KEY) {delay (1); } Serial.print (myNum ); } if (myNum [3] == 'A') {Serial.println ("Token skickad"); tmrpcm.setVolume (5); tmrpcm.play ("tokenno.wav"); fördröjning (2000); kontrollera(); } if (myNum [3] == 'B') {Serial.println ("Token skickas inte"); i = 0; } if (myNum [3] == '*') {Serial.println ("Reg desk"); tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); i = 0; } if (myNum [3] == '#') {Serial.println ("stängning"); 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 () {för (int c = 0; c <3; c ++) {if (myNum [c] == '0') {tmrpcm.setVolume (5); tmrpcm.play ("zero.wav"); fördröjning (1000); } if (myNum [c] == '1') {tmrpcm.setVolume (5); tmrpcm.play ("one.wav"); fördröjning (1000); } if (myNum [c] == '2') {tmrpcm.setVolume (5); tmrpcm.play ("two.wav"); fördröjning (1000); } if (myNum [c] == '3') {tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); fördröjning (1000); } if (myNum [c] == '4') {tmrpcm.setVolume (5); tmrpcm.play ("four.wav"); fördröjning (1000); } if (myNum [c] == '5') {tmrpcm.setVolume (5); tmrpcm.play ("five.wav"); fördröjning (1000); } if (myNum [c] == '6') {tmrpcm.setVolume (5); tmrpcm.play ("six.wav"); fördröjning (1000); } if (myNum [c] == '7') {tmrpcm.setVolume (5); tmrpcm.play ("seven.wav"); fördröjning (1000); } if (myNum [c] == '8') {tmrpcm.setVolume (5); tmrpcm.play ("eight.wav"); fördröjning (1000); } if (myNum [c] == '9') {tmrpcm.setVolume (5); tmrpcm.play ("nine.wav"); fördröjning (1000); }} tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); }

Om du ändrar namnen på ljudfilerna, se till att du också redigerar dem i koden. Med det gjort är ditt projekt redo att testas. Låt oss se hur det fungerar.

Steg 5: Arbetet med projektet

Projektets arbete
Projektets arbete

Jag har laddat upp en video av projektet nedan. Du kan kolla upp det. Projektet fungerade enligt mina förväntningar. Den enda begränsningen jag mötte var frånvaron av en separat display för projektet. Vi kan inte hålla den bärbara datorn ansluten hela tiden. Det andra fallet om du arbetar på en bärbar dator hela dagen och har gott om USB -portar tillgängliga.

Så jag vill att ni lägger till en lcd (vilken som helst kommer att göra) i detta projekt och skickar mig en länk till det projektet.

Detta projekt kan användas på dina kontor i receptionen om du har många som besöker dagligen.

Genom att lägga till en separat strömförsörjning och LCD kommer detta projekt att stå fristående. Jag anförtror den uppgiften till er.

Om du gillar mitt arbete, hjälp mig genom att dela mina projekt på dina sociala medier. Det är det för nu. Vi ses snart med ett annat projekt snart.

Rekommenderad: