Sisällysluettelo:
- Vaihe 1: Kerää tarvikkeet
- Vaihe 2: Piirikaavio
- Vaihe 3: Äänitiedostojen valmistelu
- Vaihe 4: Koodaus
- Vaihe 5: Projektin työ
Video: Tunnusilmoitusjärjestelmä: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Edellisessä ohjeessa näimme kuinka saada Arduino puhumaan. Tänään tutkimme hieman enemmän samasta aiheesta. Meidän kaikkien on täytynyt jossain vaiheessa elämää kohdata ilmoitusjärjestelmä ehkä pankissa tai rautatieasemalla. Oletko koskaan miettinyt, miten nämä ilmoitusjärjestelmät toimivat? He toimivat samalla periaatteella kuin edellinen projektimme. Joten tänään tässä opetusohjelmassa teemme Token Announcement System -järjestelmän, joka kykenee ilmoittamaan merkkejä 1–999 eli yhteensä 999 tokenia (1000, jos lisäät 0). Joten mennään rakennusprosessiin !!!
Vaihe 1: Kerää tarvikkeet
Hei, jos etsit verkkokauppaa osien ostamiseen, sinun täytyy tarkistaa UTSource.net. Heillä on valtava valikoima elektroniikkamoduuleja ja komponentteja edulliseen hintaan. Ne tarjoavat myös PCB -palveluita jopa 16 kerrokselle. Tarkista heidän verkkosivunsa.
Katsotaanpa moduuleja, joita tarvitsemme tähän projektiin -
1. Arduino Uno Board
2. 4 * 4 Matrix -näppäimistö
3. SD -korttimoduuli
4. 3,5 mm: n ääniliitin
5. Kaiutin, jossa on sisäänrakennettu vahvistin ja AUX -kaapeli
6. Jotkut otsikkojohdot
Suurinta osaa näistä komponenteista käytettiin aiemmissa projekteissamme.
Vaihe 2: Piirikaavio
Tämän projektin piirikaavio on täsmälleen sama kuin Talking Arduino -projektissa. Ainoa ero on näppäimistö. Näppäimistön liittäminen on melko yksinkertaista. Liitä vain näppäimistön rivit Arduinon nastoihin yllä olevan kuvan mukaisesti.
(Tässä projektissa käyttämäni näppäimistö ei ole sama kuin piirissä, koska en löytänyt oikeaa Fritzingin osaluettelosta. Joten jätä huomiotta piirin näppäimistön ensimmäinen ja viimeinen nasta.)
Liitä ääniliittimen vasen ja oikea kanava Arduinon digitaaliseen nastaan 10. Ja maadoitustappi Arduinon maahan.
Tee muut liitännät kaavion mukaisesti.
Vaihe 3: Äänitiedostojen valmistelu
Nyt sinun on pidettävä tämä mielessä, että SD -korttimoduulia ja TMRpcm -kirjastoa käytettäessä voit käyttää vain.wav -äänimuotoa. Mikään muu äänimuoto ei toimi.
Joten jos haluat muuntaa tallennetut äänitiedostot tai tiedostot, jotka aiot asentaa SD -kortille, sinun on käytettävä tätä online -äänimuunninta >> KLIKKAA TÄSTÄ
Säilytä muuntamisen asetukset yllä olevan kuvan mukaisesti.
Ja jos haluat hienoja digitoituja ääniä, joita kuulemme todellisissa järjestelmissä, tarkista tämä verkkosivusto, joka muuntaa kirjoitetun tekstin puheeksi. Ja sitten voimme ladata sen mp3 -muodossa, joka voidaan sitten muuntaa.wav -muotoon yllä mainitusta sivustosta.
KLIKKAA TÄSTÄ käydäksesi sivustolla
Voit myös ladata käyttämäni äänitiedostot alta. Joten sen jälkeen on aika ohjelmoida lauta.
Vaihe 4: Koodaus
Lataa.ino -tiedosto alta. Kokoa ja lataa ohjelma Arduino Boardisi. Jos sinulla on ongelmia koodin lataamisessa, ota rohkeasti yhteyttä minuun tai pudota kommentti alla. Autan sinua mielelläni.
#include #include "SD.h" #define SD_ChipSelectPin 4 #include "TMRpcm.h" #include "SPI.h" TMRpcm tmrpcm; char myNum [4]; int i; const tavu RIVIT = 4; // neljä riviä const tavu COLS = 4; // neljän sarakkeen char -näppäimet [RIVIT] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}}; tavu rowPins [ROWS] = {A0, A1, A2, A3}; // muodosta yhteys näppäimistön rivipistoihin tavu colPins [COLS] = {9, 8, 7, 6}; // muodostaa yhteys näppäimistön sarakkeisiin Näppäimistön näppäimistö = Näppäimistö (makeKeymap (näppäimet), rowPins, colPins, ROWS, COLS); void setup () {tmrpcm.speakerPin = 10; Sarja.alku (9600); if (! SD.begin (SD_ChipSelectPin)) {Serial.println ("SD fail"); palata; } /* tmrpcm.setVolume (5); tmrpcm.play ("kolme.wav"); // Käytetään testaukseen (älä sisälly lopulliseen koodiin) viive (1000);*/} void loop () {Serial.println ("Anna kolminumeroinen luku -"); for (i = 0; i <4; ++ i) {while ((myNum = keypad.getKey ()) == NO_KEY) {delay (1); // Odota vain avainta} // Odota, että avain vapautetaan, kun (keypad.getKey ()! = NO_KEY) {delay (1); } Serial.print (myNum ); } jos (myNum [3] == 'A') {Serial.println ("Token Sent"); tmrpcm.setVolume (5); tmrpcm.play ("tokenno.wav"); viive (2000); tarkistaa(); } jos (myNum [3] == 'B') {Serial.println ("Token Not Sent"); i = 0; } jos (myNum [3] == '*') {Serial.println ("Reg desk"); tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); i = 0; } if (myNum [3] == '#') {Serial.println ("closed"); tmrpcm.setVolume (5); tmrpcm.play ("hash.wav"); i = 0; } jos (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"); viive (1000); } jos (myNum [c] == '1') {tmrpcm.setVolume (5); tmrpcm.play ("one.wav"); viive (1000); } jos (myNum [c] == '2') {tmrpcm.setVolume (5); tmrpcm.play ("two.wav"); viive (1000); } jos (myNum [c] == '3') {tmrpcm.setVolume (5); tmrpcm.play ("kolme.wav"); viive (1000); } jos (myNum [c] == '4') {tmrpcm.setVolume (5); tmrpcm.play ("four.wav"); viive (1000); } jos (myNum [c] == '5') {tmrpcm.setVolume (5); tmrpcm.play ("five.wav"); viive (1000); } jos (myNum [c] == '6') {tmrpcm.setVolume (5); tmrpcm.play ("six.wav"); viive (1000); } jos (myNum [c] == '7') {tmrpcm.setVolume (5); tmrpcm.play ("seven.wav"); viive (1000); } jos (myNum [c] == '8') {tmrpcm.setVolume (5); tmrpcm.play ("eight.wav"); viive (1000); } jos (myNum [c] == '9') {tmrpcm.setVolume (5); tmrpcm.play ("nine.wav"); viive (1000); }} tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); }
Jos muutat äänitiedostojen nimiä, varmista, että muokkaat niitä myös koodissa. Tämän jälkeen projektisi on valmis testattavaksi. Katsotaan miten se toimii.
Vaihe 5: Projektin työ
Latasin alla olevan videon projektista. Voit tarkistaa sen. Projekti toimi odotusteni mukaisesti. Ainoa rajoitus, jonka kohtasin, oli projektin erillisen näytön puuttuminen. Emme voi pitää kannettavaa tietokonetta koko ajan yhteydessä. Toinen tapaus, jos työskentelet kannettavan tietokoneen kanssa koko päivän ja sinulla on runsaasti USB -portteja.
Joten haluan teidän lisäävän lcd: n (kuka tahansa tekee) tähän projektiin ja lähettämällä minulle linkin kyseiseen projektiin.
Tätä projektia voidaan käyttää toimistoissasi vastaanotossa, jos sinulla on paljon ihmisiä päivittäin.
Erillisen virtalähteen ja lcd: n lisääminen tekee projektista itsenäisen. Uskon tämän tehtävän teille.
Jos pidät työstäni, auta minua jakamalla projektini sosiaalisen median kahvoissa. Siinä se nyt. Nähdään pian toisen projektin kanssa.
Suositeltava:
DIY Raspberry Pi Downloadbox: 4 vaihetta
DIY Raspberry Pi Downloadbox: Löydätkö usein itsesi lataamasta suuria tiedostoja, kuten elokuvia, torrentteja, kursseja, TV -sarjoja jne., Niin tulet oikeaan paikkaan. Tässä Instructable -ohjelmassa muuttaisimme Raspberry Pi zero -laitteemme latauskoneeksi. Joka voi ladata minkä tahansa
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): 8 vaihetta
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): ultraäänikaiuttimet L298N DC-naarasadapterin virtalähde urospuolisella dc-nastalla ja analogiset portit koodin muuntamiseksi (C ++)
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: 3 vaihetta
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: Seuraava opas auttaa sinua saamaan live-HD-videovirtoja lähes mistä tahansa DJI-dronesta. FlytOS -mobiilisovelluksen ja FlytNow -verkkosovelluksen avulla voit aloittaa videon suoratoiston droonilta
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite
4 vaihetta akun sisäisen vastuksen mittaamiseksi: 4 vaihetta
4 vaihetta akun sisäisen vastuksen mittaamiseksi: Tässä on 4 yksinkertaista vaihetta, joiden avulla voit mitata taikinan sisäisen vastuksen