Πίνακας περιεχομένων:

Dreamday Box για το ειδικό άτομο στη ζωή σας: 11 βήματα (με εικόνες)
Dreamday Box για το ειδικό άτομο στη ζωή σας: 11 βήματα (με εικόνες)

Βίντεο: Dreamday Box για το ειδικό άτομο στη ζωή σας: 11 βήματα (με εικόνες)

Βίντεο: Dreamday Box για το ειδικό άτομο στη ζωή σας: 11 βήματα (με εικόνες)
Βίντεο: По следам древней цивилизации? 🗿 Что, если мы ошиблись в своем прошлом? 2024, Ιούλιος
Anonim
Dreamday Box για το ειδικό άτομο στη ζωή σας
Dreamday Box για το ειδικό άτομο στη ζωή σας
Dreamday Box για το ειδικό άτομο στη ζωή σας
Dreamday Box για το ειδικό άτομο στη ζωή σας
Dreamday Box για το ειδικό άτομο στη ζωή σας
Dreamday Box για το ειδικό άτομο στη ζωή σας

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

Ο πίνακας 8x8 pixel μπορεί να εμφανίσει οποιοδήποτε σύμβολο, είναι πολύ απλό να αλλάξετε τον κώδικα για την εικόνα που θέλετε. Πήγα για αυτή την αφρώδη καρδιά για να συμβολίσει την αγάπη και τη στοργή που μας δίνουμε στην καθημερινή ζωή. (Επίσης, ήθελα κάπως να τελειώσω το έργο πριν από την Ημέρα του Αγίου Βαλεντίνου, αλλά ο SARS-CoV-2 το καθυστέρησε λίγο)

Η ισχύς παρέχεται από μια επαναφορτιζόμενη κυψέλη 18650 LiIon USB, η οποία θα πρέπει να διαρκεί περίπου 24 ώρες συνεχούς εμφάνισης του μήκους 7 τμημάτων και της μήτρας 8x8, αλλά να έχετε κατά νου ότι δεν λάμπουν αν το κουτί είναι κλειστό. Έτσι, η ρεαλιστική διάρκεια ζωής της μπαταρίας θα είναι χρόνια. Το ρολόι πραγματικού χρόνου (RTC) διατηρεί τον χρόνο που χρησιμοποιείται για τον υπολογισμό των ημερών που έχουν περάσει. Διαθέτει τη δική του εφεδρική μπαταρία (CR2032) η οποία θα διαρκέσει για περίπου 8 χρόνια.

Η βάση είναι μια προσαρμοσμένη πλακέτα τυπωμένου κυκλώματος. Το είχα παραγάγει από την JLCPCB. Τα αρχεία Gerber μπορούν να βρεθούν στο αποθετήριο GitHub. Μπορείτε να τα ανεβάσετε σε οποιονδήποτε κατασκευαστή PCB, είναι μια καθολική μορφή αρχείου. Or φυσικά, μπορείτε να μου γράψετε ένα email, έχω κάποιο ανταλλακτικό που είμαι πρόθυμος να στείλω, μόνο για το κόστος αποστολής.

Περιλαμβάνεται επίσης ένα αρχείο BOM (νομοσχέδιο υλικού) στο οποίο μπορείτε να βρείτε όλα τα ηλεκτρονικά εξαρτήματα που απαιτούνται για το έργο.

Το συνολικό κόστος χωρίς το ξύλινο κουτί ή τις εκτυπώσεις φωτογραφιών θα είναι περίπου 30 $, ανάλογα με το κόστος του PCB.

Προμήθειες

Εργαλεία:

  • Συγκολλητικό σίδερο
  • Arduino ISP dongle (δείτε τις άλλες οδηγίες μου για το πώς να το φτιάξετε)
  • PC ή Mac για προγραμματισμό
  • Προσαρμοσμένο PCB (το Gerber περιλαμβάνεται ή ρωτήστε με, έχω κάποια ανταλλακτικά)
  • Ηλεκτρονικά μέρη (βλ. Αρχείο BOM)
  • Κάποιο κουτί (ή φτιάξτε το δικό σας)

Βήμα 1: Παραγγελία του PCB σας

Παραγγελία του PCB σας
Παραγγελία του PCB σας

Μεταβείτε στο JLCPCB και ανεβάστε το gerber.zip από το αποθετήριο GitHub, μπορείτε επίσης να επιλέξετε το χρώμα PCB που θέλετε.

Μπορείτε επίσης να μου γράψετε ένα email, μπορεί να έχω κάποια ανταλλακτικά PCB που είμαι πρόθυμος να σας στείλω για το κόστος αποστολής.

Βήμα 2: Παραγγελία των ανταλλακτικών

Το αρχείο BOM περιέχει όλα τα ηλεκτρονικά μέρη που θα χρειαστείτε για να συμπληρώσετε το PCB.

Έχω παραγγείλει τα ανταλλακτικά από το LCSC και το digi-key. Αλλά τα περισσότερα πράγματα μπορούν να βρεθούν σε οποιονδήποτε προμηθευτή ηλεκτρονικών ειδών. Αν δυσκολεύεστε να βρείτε κάτι ή δεν είστε σίγουροι αν είναι το σωστό μέρος, στείλτε μου email.

Βήμα 3: Ελάχιστη συναρμολόγηση (για την καύση του προγράμματος εκκίνησης)

Ελάχιστη συναρμολόγηση (για την καύση του προγράμματος εκκίνησης)
Ελάχιστη συναρμολόγηση (για την καύση του προγράμματος εκκίνησης)

Για να εγγραφεί επιτυχώς το πρόγραμμα εκκίνησης (εξηγείται στο επόμενο βήμα), ορισμένα μέρη δεν πρέπει να κολληθούν στο PCB. Τα βασικά μέρη είναι το ATmega32u4 (προφανώς…), ο κρύσταλλος και οι δύο πυκνωτές φορτίου, η κεφαλίδα των έξι ακίδων και οι τρεις πυκνωτές για το ATmega32u4.

Είναι σημαντικό να μην κολλήσετε στις αντιστάσεις/βραχυκυκλωτήρες 0Ohm στη σειριακή σύνδεση.

Βήμα 4: Κάψιμο του προγράμματος εκκίνησης

Κάψιμο του Bootloader
Κάψιμο του Bootloader

Προτού μπορέσετε να ανεβάσετε ένα πρόγραμμα στο ATmega32u4 με το Arduino IDE, πρέπει να έχει κάψει ένα Bootloader. Αυτό το έχει κάνει κανονικός Arduinos, αλλά επειδή δουλεύουμε με γυμνό τσιπ εδώ, πρέπει να το κάνουμε μόνοι μας. Αλλά μην ανησυχείτε, δεν είναι καθόλου δύσκολο.

Συνδέστε τον Arduino ISP με την κεφαλίδα των έξι ακίδων στο PCB, βεβαιωθείτε ότι έχετε την πολικότητα σωστά.

Εάν δεν έχετε πάροχο Arduino, ελέγξτε αυτό το Instructable μου. Μπορεί να κατασκευαστεί μέσα σε 10 λεπτά.

Ελέγξτε τις ακόλουθες ρυθμίσεις στο Arduino IDE:

  • Εργαλεία -> Πίνακας: Arduino Leonardo
  • Εργαλεία -> Θύρα: [Επιλέξτε τη θύρα COM του προγραμματιστή]
  • Εργαλεία -> Προγραμματιστής: Arduino ως ISP

Μπορείτε να βρείτε τη θύρα COM στη Διαχείριση συσκευών των Windows.

Τέλος, κάντε κλικ στο Tools -> Burn Bootloader

Βήμα 5: Συναρμολόγηση PCB

Συναρμολόγηση PCB
Συναρμολόγηση PCB
Συναρμολόγηση PCB
Συναρμολόγηση PCB

Μετά την επιτυχή εγγραφή του Bootloader, μπορείτε να τοποθετήσετε όλα τα υπόλοιπα μέρη στο PCB. Θεωρώ βολικό να ξεκινήσω με τα μικρότερα μέρη όπως αντιστάσεις και πυκνωτές, μετά τα IC και στο τέλος το στήριγμα μπαταρίας κυψέλης, η οθόνη 7 τμημάτων και η μήτρα 8x8 pixel.

Συγκολλήστε τις δύο κεφαλίδες ακίδων 90 ° στο πίσω μέρος για να κρύψετε την μπαταρία και να αλλάξετε το καλώδιο. Χρησιμοποίησα μια κεφαλίδα 3 ακίδων για την μπαταρία, με αυτόν τον τρόπο δεν μπορεί να συνδεθεί με λάθος τρόπο αργότερα.

Βήμα 6: Εγκατάσταση Βιβλιοθηκών

Για να ανεβάσετε τα προγράμματα που παρέχονται σε αυτό το εκπαιδευτικό πρόγραμμα, πρέπει να εγκαταστήσετε τις ακόλουθες εξαρτήσεις:

  • RTClib
  • DS3231

Κατεβάστε τα αρχεία.zip και εισαγάγετε τα μέσω του Arduino IDE μέσω:

Σκίτσο -> Συμπερίληψη βιβλιοθήκης -> Προσθήκη βιβλιοθήκης. ZIP

Εάν για κάποιο λόγο, οι σύνδεσμοι λήψης δεν λειτουργούν, αντίγραφα των βιβλιοθηκών βρίσκονται σε αυτόν τον κατάλογο GitHub. Απλώς σύρετέ τα στο φάκελο βιβλιοθηκών Arduino.

Mayσως χρειαστεί να κάνετε επανεκκίνηση του Arduino IDE μετά από αυτό.

Βήμα 7: Ρυθμίστε την ώρα στο RTC σας (ρολόι σε πραγματικό χρόνο)

Ελέγξτε το GitHub για την πιο πρόσφατη έκδοση/ενημερώσεις του έργου!

Το ολοκληρωμένο κύκλωμα DS3231 στο PCB διατηρεί τον τρέχοντα χρόνο που απαιτείται για τον υπολογισμό των ημερών που έχουν περάσει. Αλλά για να το πετύχετε, πρέπει πρώτα να του πείτε ποια ώρα/ημερομηνία είναι αυτή τη στιγμή. Αυτό γίνεται ανεβάζοντας το σκίτσο RTC_set.ino.

Βεβαιωθείτε ότι οι ρυθμίσεις σας είναι οι ακόλουθες πριν από τη μεταφόρτωση:

  • Εργαλεία -> Πίνακας: Arduino Leonardo
  • Εργαλεία -> Θύρα: [Επιλέξτε θύρα του Arduino Leonardo, όχι του ISP από το βήμα Bootloader]
  • Εργαλεία -> Προγραμματιστής: AVR ISP ή AVRISP mkII

Πατήστε το κουμπί Μεταφόρτωση και περιμένετε μέχρι να ολοκληρωθεί.

Βήμα 8: Αλλαγή κώδικα προγράμματος

Ελέγξτε το GitHub για την πιο πρόσφατη έκδοση/ενημερώσεις του έργου!

Τώρα μπορούμε να ξεκινήσουμε την τροποποίηση του κύριου προγράμματος. Ανοίξτε το έργο main.ino με το Arduino IDE. Υπάρχουν αρκετές γραμμές στον κώδικα όπου μπορείτε/πρέπει να αλλάξετε κάποιες τιμές που σας ταιριάζουν. Δεν θα αναφέρω αριθμούς γραμμών, γιατί μπορεί να αλλάξουν κάποια στιγμή, αλλά προσπαθώ να το κάνω όσο το δυνατόν πιο εύκολο.

Ορίστε την ειδική σας ημερομηνία:

Πρέπει να λάβετε τη χρονική σήμανση Unix από την ημερομηνία σας. Μεταβείτε σε αυτόν τον ιστότοπο και εισαγάγετε την ημερομηνία σας: www.unixtimestamp.com

Αυτό θα σας δώσει έναν δεκαψήφιο δεκαδικό αριθμό. Αντιγράψτε αυτόν τον αριθμό στη γραμμή του κώδικα που λέει "const long special_date =" και αντικαταστήστε τον αριθμό εκεί. Αυτός ο αριθμός είναι ο αριθμός των δευτερολέπτων από την 1η Ιανουαρίου 1970, επίσης γνωστός ως ώρα Unix.

Ορίστε το εικονόγραμμά σας 8x8:

Μπορείτε να αλλάξετε την εικόνα στη μήτρα LED αλλάζοντας τις τιμές στο "const unsigned int matrix_heart_big [8]". Αυτές οι 8 0x [XX] τιμές αντιπροσωπεύουν τις κάθετες γραμμές στην οθόνη από αριστερά προς τα δεξιά. Εάν δεν γνωρίζετε τι σημαίνουν οι τιμές, δοκιμάστε 0x00, 0x01, 0x02, 0x04 και δείτε τι συμβαίνει ή διαβάστε τον δεκαεξαδικό συμβολισμό. (Or γράψτε μου ένα email)

Βήμα 9: Μεταφόρτωση του προγράμματος σας

Αφού κάνετε όλες τις αλλαγές στον κωδικό που χρειάζεστε, βεβαιωθείτε ότι έχετε καλέσει τις ακόλουθες ρυθμίσεις στο Arduino IDE:

  • Εργαλεία -> Πίνακας: Arduino Leonardo
  • Εργαλεία -> Θύρα: [Επιλέξτε θύρα του Arduino Leonardo, όχι του ISP από το βήμα Bootloader]
  • Εργαλεία -> Προγραμματιστής: AVR ISP ή AVRISP mkII

Πατήστε το κουμπί Μεταφόρτωση και περιμένετε μέχρι να ολοκληρωθεί.

Βήμα 10: Προετοιμασία του κουτιού

Προετοιμασία του κουτιού
Προετοιμασία του κουτιού

Για να στηρίξω το PCB στο κουτί και να μην πέσει κάτω, έκοψα μερικές ξύλινες λωρίδες 8x10mm και τις κόλλησα στη θέση τους.

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

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

Έχω χρησιμοποιήσει επίσης κολλητικές ταινίες hock n 'loop για να ασφαλίσετε τη θήκη της μπαταρίας στο κάτω μέρος.

Βήμα 11: Τελική συνέλευση

Τελική συναρμολόγηση
Τελική συναρμολόγηση
Τελική συναρμολόγηση
Τελική συναρμολόγηση
Τελική συναρμολόγηση
Τελική συναρμολόγηση
Τελική συναρμολόγηση
Τελική συναρμολόγηση

Το μόνο που μένει είναι να συνδέσετε τα πάντα μαζί, να τοποθετήσετε το PCB στο κουτί και ίσως να κόψετε μια φωτογραφία στο μέγεθος και να την τοποθετήσετε στο καπάκι.

Ελπίζω ότι ο άλλος σημαντικός σας βρίσκει χαρά σε αυτή τη μικρή στοχαστικότητα.

Διαγωνισμός Καρδιάς
Διαγωνισμός Καρδιάς
Διαγωνισμός Καρδιάς
Διαγωνισμός Καρδιάς

Επόμενος στον Διαγωνισμό Καρδιάς

Συνιστάται: