» Ηλεκτρονικά » Arduino »Led Matrix στο WS2812

Led Matrix στο WS2812

Led Matrix στο WS2812

Καλησπέρα, θέλω να μοιραστώ άλλο σπιτικό. Αυτή τη φορά αποφάσισα να γράψω οδηγίες για την κατασκευή του Led matrix. Το μέγεθος είναι μικρές 10x10 δίοδοι. Αλλά σύμφωνα με αυτή την οδηγία, είναι δυνατή η κατασκευή πινάκων και μεγάλων μεγεθών. Για ομορφιά πρόσθεσε φωτισμό. Η βάση λήφθηκε από διευθυνσιοδοτούμενα LED WS2812 τοποθετημένα σε ταινία με 60 διόδους ανά μέτρο. Θα τα διαχειριστούμε Arduino Pro Mini. Υπάρχουν πολλές επιλογές για τη χρήση του πίνακα. Για παράδειγμα, πρόσθεσα έναν αισθητήρα θερμοκρασίας και έγραψα το λογισμικό ρολογιού χωρίς RTC.

Θα χρειαστούμε:
- ταινία WS2812 με 120 LED, 60 τεμάχια ανά μέτρο
-
- Τροφοδοσία για 5V 1A
- αισθητήρας θερμοκρασίας ds18b20
- Αντίσταση 4.7 Kom 0,25 W
- μοριοσανίδες πάχους 10 mm
- Ματ ή πλαστικό "Γάλα"
- Χοντρό χαρτόνι
- ηλεκτρική ταινία
- σύνδεση καλωδίων
- πλακέτα κυκλώματος
- Κουμπιά
- Βιδωτές βίδες 19 mm
- συγκολλητικό σίδερο
- Κόλλα, κολοφώνιο
- Ταινία διπλής όψης
- USB-TTL
- Τρυπάνι ή κατσαβίδι
- Ηλεκτρικό τρακτέρ
- Δράπανα για ξύλο

Βήμα 1 Παρασκευή διόδων
Παίρνουμε ένα πυκνό χαρτόνι και το "γεμίζουμε", δηλαδή, σχεδιάζουμε οριζόντιες γραμμές με απόσταση μεταξύ τους 16 mm. Μετράμε 100 δίοδοι από την ταινία μας. Αυτές οι 100 δίοδοι λειτουργούν σε τμήματα με 10 δίοδοι. Τα υπόλοιπα 20 κόβουν μία δίοδο. Αυτό πρέπει να γίνεται προσεκτικά και αυστηρά κατά μήκος των γραμμών κοπής. Επιτρέψτε μου να σας εξηγήσω: 10 τμήματα από 10 δίοδοι συνολικά 100 χρειάζονται για το πλέγμα, τα υπόλοιπα 20 είναι οπίσθια. Τμήματα από 10 δίοδοι είναι κολλημένα πάνω στο χαρτόνι κατά μήκος των γραμμών. Προσέξτε την κατεύθυνση του σήματος ελέγχου για τις δίοδοι! Το σήμα ελέγχου θα πρέπει να τροφοδοτείται με τη σωστή κατεύθυνση, για το σκοπό αυτό το βέλος εμφανίζεται στην κατεύθυνση της ταινίας. Κόψτε την πρώτη λωρίδα από αριστερά προς τα δεξιά, δηλαδή, η είσοδος IN στην ταινία θα πρέπει να βρίσκεται στα αριστερά και η OUT (στα δεξιά). Έτσι, η IN (είσοδος) της πρώτης ταινίας πρέπει να βρίσκεται στην επάνω αριστερή γωνία! Κόψτε την επόμενη λωρίδα αντίθετα, από τη δεξιά πλευρά - προς τα αριστερά. Το τρίτο και πάλι από αριστερά προς τα δεξιά. Τόσο περισσότερο. Όταν ακολουθήσουμε την κατεύθυνση του σήματος ελέγχου, θα πρέπει να πάρουμε μια γραμμή ζιγκ-ζαγκ, ξεκινώντας από την επάνω αριστερή γωνία. Το κύριο πράγμα δεν είναι να συγχέουμε τίποτα.

Μεταξύ της πρώτης και της δεύτερης ταινίας, πιο κοντά στην αρχή, κάνει μια τρύπα για τα καλώδια. Συνδέστε τα καλώδια στην πρώτη λωρίδα, κατά προτίμηση πολύχρωμα, έτσι ώστε να μην αναμειγνύεται. Τους περνάμε μέσα από την τρύπα που φτιάξαμε. Στη συνέχεια, κολλήστε τις λωρίδες μας με σύντομα σύρματα. + 5 από την πρώτη κοιλότητα έως +5 το δεύτερο. GND στο GND. Από το OUT της πρώτης λωρίδας προς το IN της δεύτερης ταινίας, από το OUT της δεύτερης ταινίας έως το IN της τρίτης, και ούτω καθεξής. Το αποτέλεσμα θα πρέπει να είναι το ακόλουθο:


Βήμα 2 Κάνοντας την υπόθεση.
Η υπόθεση αποτελείται από τρία μέρη. Πρώτον, πρέπει να κόψετε το πλαίσιο από μοριοσανίδες πάχους 10 mm. Είναι καλύτερα να κόψετε με ένα παζλ, αλλά απουσία μπορεί να ληφθεί με το χέρι. Η πλευρά του εξωτερικού τετραγώνου είναι 190 mm.Εσωτερικό - 170 mm. Για την ομορφιά, είναι καλύτερα να γυρίσετε τις γωνίες. Έτσι, πρέπει να ληφθεί ένα πλαίσιο με μέγεθος 190 x 190 mm και πάχος τοιχώματος 10 mm. Μετά την κοπή, καθαρίζουμε με λεπτό γυαλόχαρτο.


Προχωρούμε στην κατασκευή του δεύτερου μέρους. Προσθέτουμε το πλαίσιο μας στο φύλλο μοριοσανίδων και σχεδιάζουμε ένα μολύβι γύρω από την εξωτερική άκρη. Αφαιρούμε το πλαίσιο. Υποχωρούμε 30 mm σε κάθε πλευρά στο εσωτερικό της πλατείας και σχεδιάζουμε μια εσωτερική πλατεία. Θα πρέπει να πάρετε ένα άλλο πλαίσιο που μετρά 190 x 190, αλλά με πάχος πλευράς 30 mm. Σε απόσταση 5 mm από το εξωτερικό άκρο του πλαισίου και σε ίση απόσταση το ένα από το άλλο, δημιουργούμε οπές διαμέτρου 3 mm. 2 τρύπες σε κάθε πλευρά. Απαιτούνται για βίδες. Πρέπει επίσης να αποφασίσετε πού θα είναι η κορυφή και στην επάνω αριστερή γωνία της εσωτερικής πλατφόρμας να δημιουργήσετε μια υποδοχή για τα καλώδια.


Στην οπίσθια πλευρά του δεύτερου πλαισίου, κατά μήκος της περιμέτρου της εσωτερικής πλευράς, είναι απαραίτητο να βιδώσετε τμήματα από τον ίδιο μοριοσανίδα πάχους 10 mm. Το αποτέλεσμα θα πρέπει να είναι το εξής:


Πηγαίνετε στη συναρμολόγηση. Βάζουμε το δεύτερο πλαίσιο στο τραπέζι. Κορυφή, διόδους επάνω, βάλτε ένα κουτί από χαρτόνι με διόδους. Και το καλύπτουμε όλα με το πρώτο πλαίσιο. Τοποθετήστε το χαρτόνι ανάμεσα στα πλαίσια έτσι ώστε οι δίοδοι να τρέχουν παράλληλα με τις πλευρές του πλαισίου και σε ίση απόσταση από τις άκρες. Το γυρίζουμε όλο, πολύ προσεκτικά, ώστε να μην χτυπήσουμε τις δίοδοι και να το στρίψουμε όλοι μαζί. Μετά από αυτό, κόψαμε το υπερβολικό χαρτόνι.


Πηγαίνετε στον οπίσθιο φωτισμό. Από την πλευρά των διόδων, μεταξύ της προτελευταίας και της τελευταίας ταινίας, πιο κοντά στην αριστερή άκρη, θα πρέπει να τρυπήσετε μια τρύπα για τα καλώδια. Συνδέστε τα καλώδια μέχρι το τέλος της τελευταίας λωρίδας και βιδώστε αυτά τα καλώδια μέσα από την οπή. Το υπόλοιπο και το κομμένο ένα κάθε φορά 20 δίοδοι πρέπει να κολληθούν στην πίσω πλευρά, σε ίση απόσταση το ένα από το άλλο. 5 τεμάχια σε κάθε πλευρά. Η κατεύθυνση του σήματος ελέγχου είναι το ωρολογιακό χέρι που αρχίζει από την κάτω δεξιά γωνία. Τα κολλάμε μαζί τους καθώς και το πλέγμα. Τα παράγωγα σύρματα από το άκρο της μήτρας συγκολλούνται στην πρώτη δίοδο. + 5 από την πρώτη δίοδο έως +5 του δεύτερου. GND στο GND. Από το OUT της πρώτης διόδου μέχρι το IN του δεύτερου, από το OUT του δεύτερου στο IN του τρίτου, και ούτω καθεξής.

Τοποθετούμε το Arduino Pro Mini στο εσωτερικό του πίσω πλαισίου, πίσω από το πλέγμα. Για την τροφοδοσία χρησιμοποιήστε σταθεροποιημένη τροφοδοσία ισχύος 5 volt. Με ισχύ ρεύματος τουλάχιστον 1 Αμπέρ. Οι δίοδοι είναι αρκετά αδηφάγοι και αν σκοπεύετε να τις ενεργοποιήσετε ταυτόχρονα και για μεγάλο χρονικό διάστημα, η τροφοδοσία χρειάζεται πιο ισχυρό, συνιστώ 1,5 - 2 amp. Συνδέουμε όλα αυτά από +5 τροφοδοσία σε +5 Arduino και +5 WS2812. -5 με GND Arduino και GND WS2812. Το καλώδιο ελέγχου από το IN WS2812 συνδέεται με το "pin 6" Arduino.


Οι δίοδοι είναι πολύ φωτεινές και δεν φαίνονται πολύ αισθητικά ευχάριστες. Ως εκ τούτου, είναι απαραίτητο να κατασκευαστεί και να εγκατασταθεί ένας διαχύτης. Το ματ πλαστικό είναι το καλύτερο για αυτό, ή όπως λέγεται "γάλα". Είναι απαραίτητο να επισυνάψετε το πλέγμα στο πλαστικό και τον κύκλο με ένα μολύβι. Στη συνέχεια κόψτε και στερεώστε την ταινία διπλής όψης στο μπροστινό πλαίσιο. Δεν είναι πάντα δυνατό να βρεθεί αυτό το πλαστικό γρήγορα, αλλά πραγματικά θέλω να ξεκινήσω το προϊόν. Σε αυτή την περίπτωση, μπορείτε να χρησιμοποιήσετε χαρτί λευκό χαρτόνι ή τοπίο αντί για πλαστικό.


Με την ίδια αρχή, είναι δυνατόν να δημιουργηθεί μια μήτρα μεγάλων μεγεθών. Απαιτείται μόνο η κατανόηση των διαστάσεων της θήκης.

Βήμα 3 Συνδέστε τον αισθητήρα θερμοκρασίας.
Είναι απλά ότι αυτό το ρολόι δεν είναι ενδιαφέρον, οπότε προσθέστε έναν αισθητήρα θερμοκρασίας σε αυτό. Για να μετρήσουμε τη θερμοκρασία, θα χρησιμοποιήσουμε τον ενσωματωμένο αισθητήρα DS18B20. Έχει υψηλή ακρίβεια μέτρησης, το σφάλμα δεν είναι μεγαλύτερο από 0,5 ° C. Ήδη από το εργοστάσιο, ο αισθητήρας βαθμονομείται και δεν απαιτούνται πρόσθετες ρυθμίσεις. Εύρος μέτρησης ευρείας θερμοκρασίας -55 ... + 125 ° C. Μπορεί να χρησιμοποιηθεί σε οποιοδήποτε δωμάτιο. Αν βρίσκεστε στο δρόμο, τότε πρέπει να προσέχετε την προστασία από την υγρασία. Υπάρχουν δύο τρόποι λειτουργίας: με εξωτερική πηγή τροφοδοσίας και "ψευδής ισχύς". Συνιστώ τη χρήση με εξωτερική τροφοδοσία.


Διάφοροι αισθητήρες μπορούν να συμπεριληφθούν σε μία γραμμή επικοινωνίας. Αλλά για μας, αρκεί. +5 παίρνουμε από την τροφοδοσία. GND έως -5. Σύρμα από ακίδα "DQ" ds18b20 σε "pin 9" Arduino.Μην ξεχνάτε να βάζετε αντίσταση έλξης μεταξύ "DQ" και +5 σε 4,7 kΩ. Κατά τη γνώμη μου, είναι πολύ βολικό να το κάνετε αυτό στον ίδιο τον αισθητήρα. Το εμφανίζουμε στην επάνω δεξιά γωνία:


Βήμα 4 Προετοιμασία πίνακα με κουμπιά.
Σε αυτή την περίπτωση, χρησιμοποιούμε τη μήτρα ως ρολόι. Ο χρόνος μπορεί να ρυθμιστεί χρησιμοποιώντας τη σειριακή θύρα, συνδέοντας το Arduino στον υπολογιστή. Αυτό δεν είναι πάντα βολικό. Ως εκ τούτου, θα κατασκευάσουμε μια σανίδα με τρία κουμπιά για να ρυθμίσετε την ώρα. Εκτός από αυτό, ο πίνακας μπορεί να χρησιμοποιηθεί για άλλους σκοπούς, γράψτε απλώς ένα άλλο σκίτσο. Στη συνέχεια, τα κουμπιά μπορούν να χρησιμοποιηθούν για άλλους σκοπούς.


Συνδέουμε τα ως εξής: συνδέστε το σύρμα κοινό και στα τρία κουμπιά στο "GND" Arduino. Το πρώτο κουμπί, το οποίο χρησιμεύει για να εισέλθετε στη λειτουργία ρύθμισης χρόνου και να αλλάζετε την ώρα και την ημερομηνία, συνδέεται στο "Pin 2". Το δεύτερο, το κουμπί για την αύξηση της τιμής, είναι το "Pin 3", και το τρίτο, το κουμπί για τη μείωση της τιμής, είναι στο "Pin 4". Τοποθετούμε τα κουμπιά στην ταινία διπλής όψεως πίσω από τη μήτρα:


Βήμα 5 Firmware.
Όπως είπα, η μήτρα μπορεί να χρησιμοποιηθεί για διαφορετικούς σκοπούς. Έχω γράψει ένα σκίτσο για ρολόγια μόνο. Στο επόμενο σχέδιο και άλλα σκίτσα. Για γράψιμο και συμπλήρωση χρησιμοποιώ το Arduino IDE 1.8.5. Μπορείτε να ελέγξετε το πλέγμα με διάφορους τρόπους. Ελέγξτε κάθε δίοδο ξεχωριστά ή ως ενιαία μήτρα. Στο σκίτσο μου χρησιμοποιώ την πρώτη επιλογή. Για να γίνει αυτό, χρειάζεστε μια βιβλιοθήκη από την Adafruit που ονομάζεται NeoPixel-master:
adafruit_neopixel-master.rar [27.83 Kb] (λήψεις: 71)


Για να δουλέψετε με διόδους όπως με τη μήτρα μήτρας Adafruit_NeoMatrix-master και Adafruit-GFX-Library-master:
matrix_libraries.rar [282.01 Kb] (λήψεις: 80)


Ένας αισθητήρας θερμοκρασίας χρειάζεται τη βιβλιοθήκη OneWire.
onewire.rar [16,75 Kb] (λήψεις: 64)


Για να επεξεργαστείτε και να συμπληρώσετε το σκίτσο, πρέπει πρώτα να εγκαταστήσετε το Arduino IDE από την επίσημη ιστοσελίδα του Arduino.cc και στη συνέχεια όλες αυτές τις βιβλιοθήκες. Είναι απαραίτητο να αποσυνδέσετε αυτά τα αρχεία και να τοποθετήσετε τα μη αποσυσκευασμένα αρχεία στον φάκελο "βιβλιοθήκες" που βρίσκεται στο φάκελο με το εγκατεστημένο Αρduino IDE. Είναι επίσης δυνατή η εγκατάσταση βιβλιοθηκών απευθείας στο IDE του Arduino. Χωρίς αποσυσκευασία των ληφθέντων αρχείων, στο Arduino IDE, επιλέξτε το μενού Sketch - Connect Library. Στο επάνω μέρος της αναπτυσσόμενης λίστας, επιλέξτε "Add .Zip Library". Στο παράθυρο διαλόγου που εμφανίζεται, επιλέξτε τη βιβλιοθήκη που θέλετε να προσθέσετε. Μετά από όλους τους χειρισμούς, πρέπει να επανεκκινήσετε το IDE του Arduino.

Ο αισθητήρας θερμοκρασίας έχει μια μοναδική διεύθυνση για κάθε συσκευή - έναν κώδικα 64-bit. Η εύρεση αυτού του κώδικα είναι μια απαιτητική εργασία. Επομένως, πρέπει πρώτα να συνδέσετε τον αισθητήρα με το Arduino, συμπληρώστε το σκίτσο που βρίσκεται στο μενού Αρχείο - Παραδείγματα - Θερμοκρασία Dallas - OneWireSearch. Στη συνέχεια, εκτελέστε Εργαλεία - Παρακολούθηση Port. Το Arduino πρέπει να βρει τον αισθητήρα σας και να γράψει τη διεύθυνσή του. Αντιγράφουμε ή απλά γράφετε τη διεύθυνση του αισθητήρα σας. Ανοίξτε το σκίτσο Ard_Tic_Tak_WS2812_Matrix_10x10_Serial_Knopki_Term, αναζητήστε τη γραμμή:

byte addr [8] = {0x28, 0xFF, 0xDD, 0x14, 0xB4, 0x16, 0x5, 0x97}, // διεύθυνση του αισθητήρα μου 


Γράφουμε κάτω τη διεύθυνση του αισθητήρα σας μεταξύ των τιράντες, αντικαθιστώντας τη διεύθυνση του αισθητήρα μου.

Αυτό το ρολόι δεν χρησιμοποιεί τη μονάδα RTC. Επομένως, εάν βρίσκονται σε βιασύνη ή πίσω, θα πρέπει να αλλάξετε την τιμή στη γραμμή:

εάν (micros () - prevmicros> 494000) {// αλλαγή σε άλλη για προσαρμογή ήταν 500.000


Είναι απαραίτητο να προσδιοριστεί εμπειρικά αυτός ο αριθμός. Εάν το ρολόι σας βιάζεται, θα πρέπει να αυξήσετε αυτόν τον αριθμό · αν είμαι πίσω, μειώστε τον.

Συμπληρώστε το σκίτσο.


Ζητώ συγγνώμη, αλλά δεν κατάφερα να τραβήξω φωτογραφία με τις δίοδοι ενεργοποιημένες. Προσπάθησα με και χωρίς φώτα. Αλλά σας διαβεβαιώνω ότι ζείτε πολύ καλύτερα.




0
0
0

Προσθέστε ένα σχόλιο

    • χαμόγελοχαμογελάειxaxaΕντάξειdontknowyahoonea
      αφεντικόξυστάανόητοςναιναι-ναιεπιθετικήμυστικό
      Συγγνώμηχορόςdance2dance3συγχώρησηβοήθειαποτά
      σταματήστεφίλουςκαλόgoodgoodσφυρίχτρασυρρέουνγλώσσα
      καπνόςπαλαμάκιαcrayδηλώστεαπογοητευτικήdon-t_mentionκατεβάστε
      θερμότηταςirefulγέλιο1mdaσυνάντησηmoskingαρνητική
      not_iποπ κορντιμωρίαδιαβάστετρομάξτεφοβίζειαναζήτηση
      χλευάζωthank_youαυτόto_clueumnikοξείασυμφωνώ
      κακόbeeeblack_eyeblum3ρουζκαυχηθείτεπλήξη
      λογοκρισίαευχαρίστησηsecret2απειλήσουννίκηyusun_bespectacled
      shokrespektlolπροβλέπουνκαλωσορίστεkrutoyya_za
      ya_dobryiβοηθόςne_huliganne_othodifludαπαγόρευσηκοντά

Σας συμβουλεύουμε να διαβάσετε:

Κάντε το για το smartphone ...