Talaan ng mga Nilalaman:

Sistema ng Anunsyo ng Token: 5 Hakbang
Sistema ng Anunsyo ng Token: 5 Hakbang

Video: Sistema ng Anunsyo ng Token: 5 Hakbang

Video: Sistema ng Anunsyo ng Token: 5 Hakbang
Video: 【MULTI SUB】Anti-routine system EP1-80 2024, Hulyo
Anonim
Sistema ng Anunsyo ng Token
Sistema ng Anunsyo ng Token

Sa nakaraang itinuro nakita namin kung paano gawin ang iyong Arduino na Magsalita. Ngayon ay susuriin namin ang kaunti pa sa parehong paksa. Lahat tayo ay dapat magkaroon sa isang punto ng buhay ay nakatagpo ng isang sistema ng Anunsyo marahil sa isang bangko o isang istasyon ng tren. Naisip mo ba kung paano gumagana ang mga sistemang anunsyo? Sa gayon gumagana ang mga ito sa katulad na prinsipyo bilang aming huling proyekto. Kaya ngayon sa tutorial na ito gagawa kami ng isang Token Announcement System na may kakayahang ipahayag ang mga token mula 1 hanggang 999 ibig sabihin isang kabuuang 999 na mga token (1000 kung isasama mo ang 0). Kaya't makarating tayo sa proseso ng pagbuo !!!

Hakbang 1: Ipunin ang Mga Pantustos

Ipunin ang Mga Pantustos
Ipunin ang Mga Pantustos
Ipunin ang Mga Pantustos
Ipunin ang Mga Pantustos
Ipunin ang Mga Pantustos
Ipunin ang Mga Pantustos

Hoy kung naghahanap ka para sa isang online na tindahan upang bumili ng mga sangkap kung gayon ang UTSource.net ay ang site na kailangan mong suriin. Mayroon silang maraming iba't ibang mga electronics module at sangkap sa abot-kayang mga rate. Nagbibigay din sila ng Mga Serbisyo ng PCB hanggang sa 16 na mga layer. Suriin ba ang kanilang website.

Tingnan natin ang mga modyul na kailangan natin para sa proyektong ito -

1. Arduino Uno Board

2. 4 * 4 Matrix Keypad

3. Modyul ng SD Card

4. 3.5 mm Audio Jack

5. Speaker na may built in na amplifier at isang AUX cable

6. Ilang Mga Header Wires

Karamihan sa mga sangkap na ito ay ginamit sa aming mga nakaraang proyekto.

Hakbang 2: Diagram ng Circuit

Diagram ng Circuit
Diagram ng Circuit

Ang diagram ng circuit para sa proyektong ito ay eksaktong kapareho ng proyekto ng Talking Arduino. Ang pagkakaiba lamang ay ang Keypad. Ang pag-interface ng isang keypad ay medyo simple. Ikonekta lamang ang mga hilera ng keypad sa mga pin ng Arduino tulad ng ipinakita sa itaas.

(Ang keypad na ginamit ko sa proyektong ito ay hindi pareho sa circuit dahil hindi ko nakita ang tama sa listahan ng bahagi ni Fritzing. Kaya huwag pansinin ang una at huling mga pin ng keypad sa circuit.)

Ikonekta ang kaliwa at kanang channel ng Audio Jack sa digital pin 10 ng Arduino. At ang ground pin sa lupa ni Arduino.

Sundin ang diagram upang gawin ang natitirang mga koneksyon.

Hakbang 3: Paghahanda ng Mga Audio File

Paghahanda ng Mga Audio File
Paghahanda ng Mga Audio File
Paghahanda ng Mga Audio File
Paghahanda ng Mga Audio File

Ngayon ay dapat mong tandaan na kapag ginagamit ang module ng SD card at ang aklatan ng TMRpcm maaari mo lamang magamit ang.wav audio format. Walang ibang audio format na gagana.

Kaya upang mai-convert ang iyong naitala na mga audio file o mga file na balak mong i-install sa SD card, kailangan mong gamitin ang online audio converter na ito >> MAG-CLICK DITO

Panatilihin ang mga setting para sa conversion tulad ng ipinakita sa imahe sa itaas.

At kung nais mo ang mga cool na digitize na boses na naririnig namin sa totoong mga system, suriin ang website na ito na nagko-convert sa nakasulat na teksto sa pagsasalita. At pagkatapos ay maaari nating i-download ito sa format ng mp3 na maaaring mai-convert sa format na.wav mula sa site na nabanggit sa itaas.

MAG-CLICK DITO UPANG Bisitahin ang SITE

Maaari mo ring i-download ang mga audio file na ginamit ko mula sa ibaba. Kaya't tapos na ang oras nito upang mai-program ang board.

Hakbang 4: Pag-coding

Coding
Coding

I-download ang.ino file mula sa ibaba. I-compile at i-upload ang programa sa iyong Arduino Board. Kung nahaharap ka sa anumang problema sa pag-upload ng code pagkatapos ay huwag mag-atubiling makipag-ugnay sa akin o mag-drop ng isang puna sa ibaba. Masaya akong tulungan ka.

# isama ang # isama ang "SD.h" # tukuyin ang SD_ChipSelectPin 4 # isama ang "TMRpcm.h" # isama ang "SPI.h" TMRpcm tmrpcm; char myNum [4]; int i; const byte ROWS = 4; // four row const byte COLS = 4; // four columns char keys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}}; byte rowPins [ROWS] = {A0, A1, A2, A3}; // kumonekta sa mga row ng pinout ng keypad byte colPins [COLS] = {9, 8, 7, 6}; // kumonekta sa mga pinout ng haligi ng keypad Keypad keypad = Keypad (makeKeymap (key), rowPins, colPins, ROWS, COLS); void setup () {tmrpcm.speakerPin = 10; Serial.begin (9600); kung (! SD.begin (SD_ChipSelectPin)) {Serial.println ("SD fail"); bumalik; } / * tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); // Ginamit para sa pagsubok (Huwag isama sa pangwakas na code) pagkaantala (1000); * /} void loop () {Serial.println ("Enter three-digit num -"); para sa (i = 0; i <4; ++ i) {habang ((myNum = keypad.getKey ()) == NO_KEY) {pagkaantala (1); // Maghintay lamang para sa isang key} // Maghintay para sa key na pinakawalan habang (keypad.getKey ()! = NO_KEY) {pagkaantala (1); } Serial.print (myNum ); } kung (myNum [3] == 'A') {Serial.println ("Token Sent"); tmrpcm.setVolume (5); tmrpcm.play ("tokenno.wav"); pagkaantala (2000); suriin (); } kung (myNum [3] == 'B') {Serial.println ("Hindi Naipadala ang Token"); i = 0; } kung (myNum [3] == '*') {Serial.println ("Reg desk"); tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); i = 0; } kung (myNum [3] == '#') {Serial.println ("pagsasara"); tmrpcm.setVolume (5); tmrpcm.play ("hash.wav"); i = 0; } kung (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"); pagkaantala (1000); } kung (myNum [c] == '1') {tmrpcm.setVolume (5); tmrpcm.play ("one.wav"); pagkaantala (1000); } kung (myNum [c] == '2') {tmrpcm.setVolume (5); tmrpcm.play ("two.wav"); pagkaantala (1000); } kung (myNum [c] == '3') {tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); pagkaantala (1000); } kung (myNum [c] == '4') {tmrpcm.setVolume (5); tmrpcm.play ("apat.wav"); pagkaantala (1000); } kung (myNum [c] == '5') {tmrpcm.setVolume (5); tmrpcm.play ("five.wav"); pagkaantala (1000); } kung (myNum [c] == '6') {tmrpcm.setVolume (5); tmrpcm.play ("anim.wav"); pagkaantala (1000); } kung (myNum [c] == '7') {tmrpcm.setVolume (5); tmrpcm.play ("pito.wav"); pagkaantala (1000); } kung (myNum [c] == '8') {tmrpcm.setVolume (5); tmrpcm.play ("walong.wav"); pagkaantala (1000); } kung (myNum [c] == '9') {tmrpcm.setVolume (5); tmrpcm.play ("siyam.wav"); pagkaantala (1000); }} tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); }

Kung binago mo ang mga pangalan ng mga audio file pagkatapos ay siguraduhin na i-edit mo ang mga ito sa code din. Sa tapos na ang iyong proyekto ay handa na upang masubukan. Tingnan natin kung paano ito gumagana.

Hakbang 5: Paggawa ng Proyekto

Paggawa ng Proyekto
Paggawa ng Proyekto

Nag-upload ako ng isang video ng proyekto sa ibaba. Maaari mong suriin iyon Ang proyekto ay nagtrabaho ayon sa aking inaasahan. Ang limitasyon lamang na nahaharap ko ay ang kawalan ng isang hiwalay na pagpapakita para sa proyekto. Hindi namin maaaring panatilihin ang laptop na konektado sa lahat ng oras. Iba pang kaso nito kung nagtatrabaho ka sa laptop buong araw at mayroong maraming mga USB port na magagamit.

Kaya gusto kong magdagdag kayo ng isang lcd (anumang gagawin) sa proyektong ito at padalhan ako ng isang link ng proyektong iyon.

Ang proyektong ito ay maaaring magamit sa iyong mga tanggapan sa mga mesa ng pagtanggap kung mayroon kang maraming mga tao na bumibisita sa araw-araw.

Ang pagdaragdag ng isang hiwalay na supply ng kuryente at lcd ay gagawing mag-iisa ang proyektong ito. Ipinagkakatiwala ko sa iyo ang gawaing iyon.

Kung gusto mo ang aking trabaho pagkatapos tulungan mo ako sa pamamagitan ng pagbabahagi ng aking mga proyekto sa iyong mga hawakan ng social media. Yun lang sa ngayon. Magkita-kita tayo sa lalong madaling panahon kasama ang isa pang proyekto.

Inirerekumendang: