Πίνακας περιεχομένων:
- Βήμα 1: Συγκεντρώστε τα αναλώσιμα
- Βήμα 2: Διάγραμμα κυκλώματος
- Βήμα 3: Προετοιμασία των αρχείων ήχου
- Βήμα 4: Κωδικοποίηση
- Βήμα 5: Εργασία του Έργου
Βίντεο: Σύστημα Ανακοινώσεων Διακριτικών: 5 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
Στο προηγούμενο διδακτικό είδαμε πώς να φτιάξετε το Arduino σας να μιλάει. Σήμερα θα διερευνήσουμε λίγο περισσότερο το ίδιο θέμα. Όλοι πρέπει κάποια στιγμή στη ζωή μας να έχουμε συναντήσει ένα σύστημα Ανακοινώσεων ίσως σε τράπεζα ή σιδηροδρομικό σταθμό. Έχετε αναρωτηθεί ποτέ πώς λειτουργούν αυτά τα συστήματα ανακοινώσεων; Λοιπόν, λειτουργούν με παρόμοια αρχή με το τελευταίο μας έργο. Σήμερα λοιπόν σε αυτό το σεμινάριο θα φτιάξουμε ένα Σύστημα Ανακοινώσεων Διακριτικών ικανό να ανακοινώνει μάρκες από 1 έως 999, δηλαδή συνολικά 999 μάρκες (1000 αν συμπεριλάβετε το 0). Πάμε λοιπόν στη διαδικασία κατασκευής !!!
Βήμα 1: Συγκεντρώστε τα αναλώσιμα
Γεια σας, αν ψάχνετε για ένα ηλεκτρονικό κατάστημα για να αγοράσετε τα εξαρτήματα, τότε το UTSource.net είναι ο ιστότοπος που πρέπει να ελέγξετε. Έχουν μια τεράστια ποικιλία ηλεκτρονικών μονάδων και εξαρτημάτων σε προσιτές τιμές. Παρέχουν επίσης υπηρεσίες PCB για έως 16 επίπεδα. Ελέγξτε την ιστοσελίδα τους.
Ας ρίξουμε μια ματιά στις ενότητες που χρειαζόμαστε για αυτό το έργο -
1. Arduino Uno Board
2. Πληκτρολόγιο μήτρας 4 * 4
3. Ενότητα κάρτας SD
4. Υποδοχή ήχου 3,5 mm
5. Ηχείο με ενσωματωμένο ενισχυτή και καλώδιο AUX
6. Μερικά καλώδια κεφαλίδας
Τα περισσότερα από αυτά τα στοιχεία χρησιμοποιήθηκαν στα προηγούμενα έργα μας.
Βήμα 2: Διάγραμμα κυκλώματος
Το διάγραμμα κυκλώματος για αυτό το έργο είναι ακριβώς το ίδιο με το έργο Talking Arduino. Η μόνη διαφορά είναι το πληκτρολόγιο. Η διασύνδεση πληκτρολογίου είναι αρκετά απλή. Απλώς συνδέστε τις σειρές του πληκτρολογίου στις ακίδες του Arduino όπως φαίνεται παραπάνω.
(Το πληκτρολόγιο που χρησιμοποίησα σε αυτό το έργο δεν είναι το ίδιο με αυτό στο κύκλωμα, επειδή δεν βρήκα το σωστό στη λίστα μερών του Fritzing. Αγνοήστε τις πρώτες και τελευταίες ακίδες του πληκτρολογίου στο κύκλωμα.)
Συνδέστε το αριστερό και το δεξί κανάλι της υποδοχής ήχου στην ψηφιακή ακίδα 10 του Arduino. Και η καρφίτσα γείωσης στο έδαφος του Arduino.
Ακολουθήστε το διάγραμμα για να κάνετε τις υπόλοιπες συνδέσεις.
Βήμα 3: Προετοιμασία των αρχείων ήχου
Τώρα πρέπει να το έχετε υπόψη σας ότι όταν χρησιμοποιείτε τη μονάδα κάρτας SD και τη βιβλιοθήκη TMRpcm μπορείτε να χρησιμοποιήσετε μόνο τη μορφή ήχου.wav. Καμία άλλη μορφή ήχου δεν θα λειτουργήσει.
Για να μετατρέψετε λοιπόν τα εγγεγραμμένα αρχεία ήχου ή τα αρχεία που σκοπεύετε να εγκαταστήσετε στην κάρτα SD, πρέπει να χρησιμοποιήσετε αυτόν τον διαδικτυακό μετατροπέα ήχου >> ΚΛΙΚ ΕΔΩ
Διατηρήστε τις ρυθμίσεις για τη μετατροπή όπως φαίνεται στην παραπάνω εικόνα.
Και αν θέλετε δροσερές ψηφιοποιημένες φωνές που ακούμε στα πραγματικά συστήματα, τότε ελέγξτε αυτόν τον ιστότοπο που μετατρέπει το γραπτό κείμενο σε λόγο. Στη συνέχεια, μπορούμε να το κατεβάσουμε σε μορφή mp3, η οποία στη συνέχεια μπορεί να μετατραπεί σε μορφή.wav από τον ιστότοπο που αναφέρθηκε παραπάνω.
ΠΑΤΗΣΤΕ ΕΔΩ ΓΙΑ ΝΑ ΕΠΙΣΚΕΦΘΕΙΤΕ ΤΟΝ ΙΣΤΟΤΟΠΟ
Μπορείτε επίσης να κατεβάσετε τα αρχεία ήχου που χρησιμοποίησα από κάτω. Έτσι, με αυτό έγινε ο χρόνος του να προγραμματίσουμε τον πίνακα.
Βήμα 4: Κωδικοποίηση
Κατεβάστε το αρχείο.ino από κάτω. Συγκεντρώστε και ανεβάστε το πρόγραμμα στον πίνακα Arduino. Αν αντιμετωπίζετε οποιοδήποτε πρόβλημα με τη μεταφόρτωση του κωδικού, μη διστάσετε να επικοινωνήσετε μαζί μου ή να γράψετε ένα σχόλιο παρακάτω. Θα χαρώ να σας βοηθήσω.
#include #include "SD.h" #define SD_ChipSelectPin 4 #include "TMRpcm.h" #include "SPI.h" TMRpcm tmrpcm; char myNum [4]; int i? const byte ROWS = 4; // τέσσερις σειρές const byte COLS = 4; // τέσσερις στήλες char char [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}}; byte rowPins [ROWS] = {A0, A1, A2, A3}; // σύνδεση με τα pinout των σειρών των πλήκτρων byte του πληκτρολογίου colPins [COLS] = {9, 8, 7, 6}; // σύνδεση με τα pinouts της στήλης του πληκτρολογίου Πληκτρολόγιο = Πληκτρολόγιο (makeKeymap (κλειδιά), rowPins, colPins, ROWS, COLS); void setup () {tmrpcm.speakerPin = 10; Serial.begin (9600); εάν (! SD.begin (SD_ChipSelectPin)) {Serial.println ("SD fail"); ΕΠΙΣΤΡΟΦΗ; } /* tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); // Χρησιμοποιείται για δοκιμή (Μην συμπεριλάβετε στον τελικό κώδικα) καθυστέρηση (1000);*/} βρόχο άκυρο () {Serial.println ("Εισαγάγετε τριψήφιο αριθμό -"); για (i = 0; i <4; ++ i) {while ((myNum = keypad.getKey ()) == NO_KEY) {καθυστέρηση (1); // Απλώς περιμένετε ένα κλειδί} // Περιμένετε να απελευθερωθεί το κλειδί ενώ (keypad.getKey ()! = NO_KEY) {καθυστέρηση (1); } Serial.print (myNum ); } if (myNum [3] == 'A') {Serial.println ("Token Sent"); tmrpcm.setVolume (5); tmrpcm.play ("tokenno.wav"); καθυστέρηση (2000). έλεγχος(); } if (myNum [3] == 'B') {Serial.println ("Το διακριτικό δεν εστάλη"); i = 0; } if (myNum [3] == '*') {Serial.println ("Reg desk"); tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); i = 0; } if (myNum [3] == '#') {Serial.println ("κλείσιμο"); 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; }} έλεγχος άκυρου () {για (int c = 0; c <3; c ++) {if (myNum [c] == '0') {tmrpcm.setVolume (5); tmrpcm.play ("zero.wav"); καθυστέρηση (1000)? } if (myNum [c] == '1') {tmrpcm.setVolume (5); tmrpcm.play ("one.wav"); καθυστέρηση (1000)? } if (myNum [c] == '2') {tmrpcm.setVolume (5); tmrpcm.play ("two.wav"); καθυστέρηση (1000)? } if (myNum [c] == '3') {tmrpcm.setVolume (5); tmrpcm.play ("three.wav"); καθυστέρηση (1000)? } if (myNum [c] == '4') {tmrpcm.setVolume (5); tmrpcm.play ("Four.wav"); καθυστέρηση (1000)? } if (myNum [c] == '5') {tmrpcm.setVolume (5); tmrpcm.play ("Five.wav"); καθυστέρηση (1000)? } if (myNum [c] == '6') {tmrpcm.setVolume (5); tmrpcm.play ("six.wav"); καθυστέρηση (1000)? } if (myNum [c] == '7') {tmrpcm.setVolume (5); tmrpcm.play ("heft.wav"); καθυστέρηση (1000)? } if (myNum [c] == '8') {tmrpcm.setVolume (5); tmrpcm.play ("οκτώ. wav"); καθυστέρηση (1000)? } if (myNum [c] == '9') {tmrpcm.setVolume (5); tmrpcm.play ("nine.wav"); καθυστέρηση (1000)? }} tmrpcm.setVolume (5); tmrpcm.play ("star.wav"); }
Εάν αλλάξετε τα ονόματα των αρχείων ήχου, φροντίστε να τα επεξεργαστείτε και στον κώδικα. Με αυτό το έργο σας είναι έτοιμο για δοκιμή. Ας δούμε πώς λειτουργεί.
Βήμα 5: Εργασία του Έργου
Έχω ανεβάσει ένα βίντεο του έργου παρακάτω. Μπορείτε να το ελέγξετε. Το έργο λειτούργησε σύμφωνα με τις προσδοκίες μου. Ο μόνος περιορισμός που αντιμετώπισα ήταν η απουσία ξεχωριστής οθόνης για το έργο. Δεν μπορούμε να διατηρούμε τον φορητό υπολογιστή συνεχώς συνδεδεμένο. Η άλλη περίπτωση είναι αν εργάζεστε με φορητό υπολογιστή όλη μέρα και έχετε πολλές θύρες USB διαθέσιμες.
Θέλω λοιπόν να προσθέσετε ένα lcd (οποιοσδήποτε θα κάνει) σε αυτό το έργο και να μου στείλετε έναν σύνδεσμο αυτού του έργου.
Αυτό το έργο μπορεί να χρησιμοποιηθεί στα γραφεία σας στις ρεσεψιόν εάν έχετε πολλούς ανθρώπους να επισκέπτονται καθημερινά.
Η προσθήκη ξεχωριστού τροφοδοτικού και LCD θα κάνει αυτό το έργο αυτόνομο. Σας αναθέτω αυτό το έργο παιδιά.
Αν σας αρέσει η δουλειά μου, βοηθήστε με μοιράζοντας τα έργα μου στις λαβές σας στα μέσα κοινωνικής δικτύωσης. Αυτό είναι προς το παρόν. Τα λέμε σύντομα με άλλο έργο σύντομα.
Συνιστάται:
Ελεγχόμενο σύστημα ανατροφοδότησης υγρασίας εδάφους Σύστημα άρδευσης στάγδην (ESP32 και Blynk): 5 βήματα
Soil Moisture Feedback Controlled Internet Connected Drip Irrigation System (ESP32 και Blynk): Ανησυχείτε για τον κήπο ή τα φυτά σας όταν πηγαίνετε σε μεγάλες διακοπές, ή ξεχάστε να ποτίζετε το φυτό σας καθημερινά. Λοιπόν, εδώ είναι η λύση Είναι ένα σύστημα ελέγχου της υγρασίας του εδάφους και παγκοσμίως συνδεδεμένο σύστημα άρδευσης στάγδην που ελέγχεται από το ESP32 στο μπροστινό μέρος του λογισμικού
Οθόνη LCD με ελεγχόμενο Bluetooth -- 16x2 LCD -- Hc05 -- Απλό -- Ασύρματος πίνακας ανακοινώσεων: 8 βήματα
Οθόνη LCD με ελεγχόμενο Bluetooth || 16x2 LCD || Hc05 || Απλό || Ασύρματος πίνακας ανακοινώσεων: …………………………. Εγγραφείτε στο κανάλι μου στο YouTube για περισσότερα βίντεο …… ………………………………… Ο πίνακας ανακοινώσεων χρησιμοποιείται για την ενημέρωση των ατόμων με νέες πληροφορίες ή Αν θέλετε να στείλετε μήνυμα στο δωμάτιο ή στο μισό
Ασύρματος πίνακας ανακοινώσεων (Bluetooth): 5 βήματα (με εικόνες)
Ασύρματος πίνακας ανακοινώσεων (Bluetooth): Σε αυτόν τον σύγχρονο κόσμο όπου όλα ψηφιοποιούνται, γιατί όχι ο συμβατικός πίνακας ανακοινώσεων αποκτά νέα εμφάνιση. Έτσι, ας κάνουμε έναν ελεγχόμενο πίνακα ειδοποιήσεων με Bluetooth που είναι πολύ απλός. Αυτή η ρύθμιση μπορεί να χρησιμοποιηθεί αντί για στατική ειδοποίηση σανίδα όπως σε κολέγια/σε
Πίνακας ανακοινώσεων Raspberry Pi: 11 βήματα (με εικόνες)
Πίνακας ανακοινώσεων Raspberry Pi: Αυτό είναι ένα έργο στο οποίο εργάστηκα για την εκκλησία μου. Θέλαμε έναν ηλεκτρονικό πίνακα ανακοινώσεων που θα ήταν τοποθετημένος στην περιοχή του νάρθηκα/του λόμπι και θα περνούσε από στατικές διαφάνειες κάθε λίγα δευτερόλεπτα. Αυτοί ήταν οι σχεδιαστικοί μας στόχοι: Στατικές διαφάνειες, χωρίς βίντεο ή αυτ
Boardηφιακός πίνακας ανακοινώσεων χρησιμοποιώντας Raspberry Pi και πρωτόκολλο MQTT: 8 βήματα
Digital Notice Board Using Raspberry Pi and MQTT Protocol: Οι πίνακες ανακοινώσεων χρησιμοποιούνται σχεδόν παντού, όπως γραφεία, σχολεία, νοσοκομεία και ξενοδοχεία. Μπορούν να χρησιμοποιηθούν ξανά και ξανά για την εμφάνιση σημαντικών ειδοποιήσεων ή τη διαφήμιση μελλοντικών εκδηλώσεων ή συναντήσεων. Αλλά η ειδοποίηση ή οι διαφημίσεις πρέπει να είναι βασικές