Πίνακας περιεχομένων:
- Προμήθειες
- Βήμα 1: Η ιδέα
- Βήμα 2: Κάποια θεωρία δυαδικής παρακολούθησης
- Βήμα 3: Έναρξη εργασίας
- Βήμα 4: Επιλογή εξαρτημάτων
- Βήμα 5: Το σχηματικό
- Βήμα 6: Διάταξη PCB
- Βήμα 7: Σχεδιασμός 3D
- Βήμα 8: Ο κώδικας
- Βήμα 9: Προγραμματισμός
- Βήμα 10: Συγκόλληση
- Βήμα 11: Συναρμολόγηση
- Βήμα 12: Συμπέρασμα και βελτιώσεις
Βίντεο: The Ultimate Binary Watch: 12 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:32
Πρόσφατα μυήθηκα στην έννοια των δυαδικών ρολογιών και άρχισα να κάνω κάποια έρευνα για να δω αν θα μπορούσα να φτιάξω ένα για τον εαυτό μου. Ωστόσο, δεν μπόρεσα να βρω ένα υπάρχον σχέδιο που να είναι ταυτόχρονα λειτουργικό και κομψό. Έτσι, αποφάσισα να δημιουργήσω το δικό μου σχέδιο εντελώς από την αρχή!
Προμήθειες
Όλα τα αρχεία για αυτό το έργο:
Μπορείτε να κατεβάσετε τις βιβλιοθήκες για τον κώδικα Arduino από το GitHub εδώ:
Βιβλιοθήκη M41T62 RTC
Βιβλιοθήκη FastLED
Βιβλιοθήκη LowPower
Βήμα 1: Η ιδέα
Πρόσφατα έπεσα πάνω στο παρακάτω βίντεο:
DIY Binary Wrist Watch
Το παραπάνω βίντεο δείχνει ένα βασικό σπιτικό δυαδικό ρολόι. Δεν είχα ιδέα ότι υπήρχε κάτι τέτοιο, αλλά αφού έκανα κάποια περαιτέρω έρευνα στο θέμα των δυαδικών ρολογιών συνειδητοποίησα γρήγορα ότι υπήρχαν τόνοι διαφορετικών σχεδίων εκεί έξω! Wantedθελα να φτιάξω ένα για τον εαυτό μου, αλλά δεν μπόρεσα να βρω ένα σχέδιο που μου άρεσε. Τα δυαδικά ρολόγια που βρήκα έλειπαν πολλά χαρακτηριστικά και δεν φαίνονταν ιδιαίτερα καλά. Έτσι, αποφάσισα να σχεδιάσω το δικό μου εντελώς από την αρχή!
Το πρώτο βήμα ήταν να καθορίσω τα κριτήρια για το σχεδιασμό μου. Αυτό είναι που κατέληξα:
- Δυαδική διεπαφή RGB
- Ένδειξη ώρας (με πολύ ακριβή χρονομέτρηση)
- Εμφάνιση ημερομηνίας
- Λειτουργικότητα χρονόμετρου
- Λειτουργικότητα συναγερμού
- Διάρκεια μπαταρίας τουλάχιστον 2 εβδομάδες
- Φόρτιση USB
- Το λογισμικό προσαρμόζεται εύκολα από τον χρήστη
- Απλό και καθαρό σχέδιο
Αυτά τα κριτήρια έγιναν το θεμέλιο για ολόκληρο το έργο. Το επόμενο βήμα ήταν να καταλάβω πώς ήθελα να λειτουργεί το ρολόι!
Βήμα 2: Κάποια θεωρία δυαδικής παρακολούθησης
Το σχέδιο ήταν απλό. Το δυαδικό ρολόι θα λειτουργούσε ακριβώς όπως ένα κανονικό ρολόι, εκτός από το ότι η διεπαφή θα ήταν δυαδική, συγκεκριμένα, BCD (Binary Coded Decimal). Το BCD είναι ένας τύπος δυαδικής κωδικοποίησης όπου κάθε δεκαδικό ψηφίο αντιπροσωπεύεται από έναν σταθερό αριθμό δυαδικών ψηφίων. Χρειάζομαι 4 bit για να μπορέσω να αναπαραστήσω ένα ψηφίο από το 0-9. Και για ένα πρότυπο
ω: χιλ
μορφή χρόνου, χρειάζομαι 4 από αυτά τα ψηφία. Αυτό σημαίνει ότι χρειάζομαι συνολικά 16 bit τα οποία θα αντιπροσωπεύονται από 16 LED.
Η ανάγνωση του χρόνου στο BCD είναι αρκετά εύκολη μόλις το συνηθίσετε. Η σειρά στο κάτω μέρος του ρολογιού αντιπροσωπεύει το λιγότερο σημαντικό bit (1) και η σειρά στο επάνω μέρος είναι το πιο σημαντικό bit (8). Κάθε στήλη αντιπροσωπεύει ένα ψηφίο στο
ω: χιλ
μορφή ώρας. Εάν μια λυχνία LED είναι αναμμένη, μετράτε αυτήν την τιμή. Εάν ένα LED είναι σβηστό, το αγνοείτε.
Για να διαβάσετε το πρώτο ψηφίο, αθροίστε όλες τις αντίστοιχες τιμές των ενεργοποιημένων λυχνιών LED στην πρώτη (αριστερότερη) στήλη. Κάντε το ίδιο για τα άλλα ψηφία από αριστερά προς τα δεξιά. Τώρα διαβάσατε την ώρα στο BCD!
Αυτή η αρχή θα είναι η ίδια για τις υπόλοιπες λειτουργίες του ρολογιού. Η χρήση LED RGB θα βοηθήσει στη διάκριση μεταξύ διαφορετικών λειτουργιών και λειτουργιών χρησιμοποιώντας διαφορετικά χρώματα. Τα χρώματα επιλέγονται από τον χρήστη και μπορούν εύκολα να προσαρμοστούν σε όποια παλέτα χρωμάτων προτιμούν. Αυτό επιτρέπει στον χρήστη να περιηγηθεί εύκολα στις λειτουργίες χωρίς να μπερδευτεί.
Το επόμενο βήμα ήταν η δημιουργία μπλοκ διαγράμματος!
Βήμα 3: Έναρξη εργασίας
Όπως κάθε τυπικό έργο ηλεκτρονικών, ένα διάγραμμα είναι ένα ουσιαστικό μέρος στο αρχικό στάδιο σχεδιασμού. Χρησιμοποιώντας τα κριτήρια, κατάφερα να συγκεντρώσω το μπλοκ διάγραμμα παραπάνω. Κάθε μπλοκ στο διάγραμμα αντιπροσωπεύει μια συνάρτηση στο κύκλωμα και τα βέλη δείχνουν τη σχέση των συναρτήσεων. Το μπλοκ διάγραμμα στο σύνολό του δίνει μια καλή επισκόπηση του τρόπου λειτουργίας του κυκλώματος.
Το επόμενο βήμα ήταν να ξεκινήσουμε να λαμβάνουμε αποφάσεις για μεμονωμένα στοιχεία για κάθε μπλοκ στο μπλοκ διάγραμμα!
Βήμα 4: Επιλογή εξαρτημάτων
Αποδείχθηκε ότι υπήρχαν πολλά εξαρτήματα σε αυτό το κύκλωμα. Παρακάτω, έχω επιλέξει μερικά από τα πιο ουσιαστικά μαζί με μια εξήγηση για το γιατί τα επέλεξα.
Τα LED
Για τη δυαδική διεπαφή, η επιλογή ήταν αρκετά απλή. Iξερα ότι ήθελα να χρησιμοποιήσω LED για την οθόνη και κατάλαβα ότι χρειαζόμουν 16 από αυτά (σε πλέγμα 4 × 4) για να εμφανίσω όσο το δυνατόν περισσότερες πληροφορίες. Κατά τη διάρκεια της έρευνάς μου για το τέλειο LED, το APA102 συνέχιζε να ανεβαίνει. Είναι ένα πολύ μικρό (2mm x 2mm) διευθυνσιοδοτούμενο LED με μεγάλη ποικιλία χρωμάτων και είναι αρκετά φθηνό. Παρόλο που δεν είχα δουλέψει ποτέ πριν, μου φάνηκε ότι ταιριάζουν τέλεια σε αυτό το έργο, οπότε αποφάσισα να τα χρησιμοποιήσω.
Ο μικροελεγκτής
Η επιλογή ενός μικροελεγκτή ήταν επίσης αρκετά απλή. Είχα μεγάλη εμπειρία στη χρήση του Atmega328P-AU σε αυτόνομες εφαρμογές και ήμουν πολύ εξοικειωμένος με τις δυνατότητές του. Αυτός είναι ο ίδιος μικροελεγκτής που χρησιμοποιείται στις πλακέτες Arduino Nano. Γνωρίζω ότι πιθανότατα υπάρχει ένας φθηνότερος μικροελεγκτής που θα μπορούσα να χρησιμοποιήσω, αλλά το να γνωρίζω ότι το Atmega328 θα έχει πλήρη υποστήριξη για όλες τις βιβλιοθήκες Arduino ήταν ένας σημαντικός παράγοντας για την επιλογή του για αυτό το έργο.
Το RTC (Ρολόι σε πραγματικό χρόνο)
Η κύρια απαίτηση για το RTC ήταν η ακρίβεια. Iξερα ότι το ρολόι δεν θα είχε σύνδεση στο Διαδίκτυο και έτσι δεν θα μπορούσε να επαναβαθμονομηθεί μέσω σύνδεσης στο Διαδίκτυο, ο χρήστης θα χρειαστεί να το επαναβαθμονομήσει χειροκίνητα. Ως εκ τούτου, ήθελα να κάνω τη μέτρηση του χρόνου όσο το δυνατόν ακριβέστερη. Το M41T62 RTC έχει μία από τις υψηλότερες ακρίβειες που θα μπορούσα να βρω (pp 2ppm που ισοδυναμεί με seconds 5 δευτερόλεπτα το μήνα). Ο συνδυασμός της υψηλής ακρίβειας με τη συμβατότητα I2C και της εξαιρετικά χαμηλής κατανάλωσης ρεύματος έκανε αυτό το RTC μια καλή επιλογή για αυτό το έργο.
Μετατροπέας ενίσχυσης DC-DC
Η επιλογή του IC DC-DC Boost Converter IC έγινε απλά κοιτάζοντας το κύκλωμα και διαπιστώνοντας τι τάσεις και ρεύματα απαιτούνται. Η λειτουργία του κυκλώματος σε χαμηλή τάση θα μείωνε την τρέχουσα κατανάλωση, αλλά δεν μπορούσα να πάω κάτω από 4,5V (η ελάχιστη τάση μικροελεγκτή στα ρολόγια 16MHz) και δεν θα μπορούσα να ξεπεράσω τα 4,5V (η μέγιστη τάση του RTC). Αυτό σήμαινε ότι έπρεπε να τρέξω το κύκλωμα με ακρίβεια 4,5V για να λειτουργήσω τα εξαρτήματα σύμφωνα με τις προτεινόμενες προδιαγραφές τους. Υπολόγισα ότι το μέγιστο ρεύμα του κυκλώματος δεν θα ξεπερνούσε τα 250mA. Έτσι, άρχισα να ψάχνω για έναν μετατροπέα ώθησης που θα μπορούσε να ικανοποιήσει τις απαιτήσεις και έπεσε γρήγορα στο TPS61220. Το TPS61220 απαιτούσε ελάχιστα εξωτερικά εξαρτήματα, ήταν αρκετά φθηνό και ήταν σε θέση να ικανοποιήσει τις τρέχουσες απαιτήσεις και την τάση.
Η μπαταρία
Η κύρια απαίτηση για την μπαταρία ήταν το μέγεθος. Η μπαταρία έπρεπε να είναι αρκετά μικρή ώστε να χωράει μέσα στο περίβλημα του ρολογιού χωρίς να φαίνεται ογκώδης. Σκέφτηκα ότι η μπαταρία δεν θα μπορούσε να υπερβαίνει τα 20mm × 35mm × 10mm. Με αυτούς τους περιορισμούς μεγέθους και την τρέχουσα απαίτηση των 250mA, η επιλογή μπαταριών μου περιορίστηκε στις μπαταρίες LiPo. Βρήκα μια μπαταρία "Turnigy nano-tech 300mAh 1S" στο Hobbyking την οποία αποφάσισα να χρησιμοποιήσω.
Το IC φόρτισης
Δεν υπήρχε ιδιαίτερη απαίτηση για τον ελεγκτή φόρτισης εκτός από το ότι έπρεπε να είναι συμβατό με μπαταρία LiSo 1S. Βρήκα το MCP73831T που είναι ένας πλήρως ενσωματωμένος ελεγκτής φόρτισης σχεδιασμένος για εφαρμογές φόρτισης με ένα κύτταρο. Ένα από τα χαρακτηριστικά του είναι η δυνατότητα ρύθμισης του ρεύματος φόρτισης μέσω εξωτερικής αντίστασης, την οποία βρήκα μάλλον χρήσιμη σε αυτήν την εφαρμογή.
Προστασία LiPo
Wantedθελα να συμπεριλάβω την παρακολούθηση τάσης και ρεύματος για την προστασία της μπαταρίας από τυχόν επικίνδυνες συνθήκες υπερφόρτισης και υπερφόρτισης. Υπήρχε περιορισμένος αριθμός IC που παρείχε τέτοιες δυνατότητες και μία από τις φθηνότερες επιλογές ήταν το IC BQ29700. Απαιτούσε ελάχιστη ποσότητα εξωτερικών εξαρτημάτων και περιλάμβανε όλη την απαραίτητη προστασία για μπαταρία LiPo μονής κυψέλης.
Τώρα που επιλέχθηκαν τα συστατικά, ήρθε η ώρα να δημιουργήσουμε το σχηματικό!
Βήμα 5: Το σχηματικό
Χρησιμοποιώντας το Altium Designer, μπόρεσα να συγκεντρώσω το παραπάνω διάγραμμα χρησιμοποιώντας συστάσεις από καθένα από τα φύλλα δεδομένων του στοιχείου. Το σχήμα χωρίζεται σε διαφορετικά μπλοκ για να είναι πιο ευανάγνωστο. Πρόσθεσα επίσης μερικές σημειώσεις με σημαντικές πληροφορίες σε περίπτωση που κάποιος άλλος θα ήθελε να αναδημιουργήσει αυτό το σχέδιο.
Το επόμενο βήμα ήταν η τοποθέτηση του σχηματικού σε ένα PCB!
Βήμα 6: Διάταξη PCB
Η διάταξη PCB αποδείχθηκε το πιο δύσκολο μέρος αυτού του έργου. Επέλεξα να χρησιμοποιήσω ένα PCB 2 επιπέδων για να μειώσω το κόστος κατασκευής του PCB στο ελάχιστο. Επέλεξα να χρησιμοποιήσω ένα τυπικό μέγεθος ρολογιού 36mm γιατί αυτό φαινόταν να ταιριάζει αρκετά στις λυχνίες LED. Πρόσθεσα μερικές οπές βίδας 1mm για να ασφαλίσετε το PCB στο περίβλημα του ρολογιού. Ο στόχος ήταν να διατηρηθεί ένας καθαρός και όμορφος σχεδιασμός τοποθετώντας όλα τα εξαρτήματα (εκτός των LEDs φυσικά) στο κάτω στρώμα. Wantedθελα επίσης να χρησιμοποιήσω τον απόλυτο ελάχιστο αριθμό vias για να αποφύγω να έχω ορατές vias στο επάνω στρώμα. Αυτό σήμαινε ότι έπρεπε να δρομολογήσω όλα τα ίχνη σε ένα μόνο στρώμα φροντίζοντας να κρατήσω τα "θορυβώδη" μέρη του κυκλώματος μακριά από τα ευαίσθητα ίχνη σήματος. Φρόντισα επίσης να κρατήσω όλα τα ίχνη όσο το δυνατόν πιο σύντομα, τοποθετώντας τους πυκνωτές παράκαμψης κοντά στο φορτίο, χρησιμοποιώντας παχύτερα ίχνη για εξαρτήματα υψηλής ισχύος και διαφορετικά ακολουθώ όλες τις κοινές καλές πρακτικές σχεδιασμού PCB. Η δρομολόγηση πήρε αρκετό χρόνο, αλλά νομίζω ότι βγήκε πολύ καλά.
Το επόμενο βήμα ήταν η δημιουργία ενός τρισδιάστατου μοντέλου για το περίβλημα του ρολογιού!
Βήμα 7: Σχεδιασμός 3D
Το περίβλημα του ρολογιού σχεδιάστηκε μετά από έναν πολύ συμβατικό, κλασικό σχεδιασμό ρολογιών χρησιμοποιώντας το Fusion 360. Χρησιμοποίησα μια τυπική απόσταση 18 mm για τον ιμάντα ρολογιού για να κάνω το ρολόι συμβατό με μια μεγάλη ποικιλία άλλων ιμάντων. Το τεμάχιο για το PCB σχεδιάστηκε 0, 4 mm μεγαλύτερο από το ίδιο το PCB για να καλύψει τυχόν κατασκευαστικές ανακρίβειες. Συμπεριέλαβα μερικές βίδες για την τοποθέτηση του PCB και μια μικρή άκρη για τοποθέτηση του PCB. Φρόντισα να βάλω το PCB σε απόσταση χιλιοστών από την κορυφή για να αποφύγω τις αιχμηρές άκρες των LED να κολλήσουν στα ρούχα. Το ύψος του περιβλήματος καθορίστηκε αποκλειστικά από το πάχος της μπαταρίας. Το υπόλοιπο περίβλημα σχεδιάστηκε για να φαίνεται απλά καλό με στρογγυλεμένες άκρες και γυαλισμένες γωνίες. Χρειάστηκε να διατηρήσω το σχέδιο φιλικό προς την τρισδιάστατη εκτύπωση, ώστε να μπορώ να το εκτυπώσω 3D στο σπίτι χωρίς υλικό υποστήριξης.
Τώρα που τελείωσε το υλικό, ήρθε η ώρα να αρχίσουμε να δουλεύουμε το λογισμικό!
Βήμα 8: Ο κώδικας
Ξεκίνησα τον κώδικα συμπεριλαμβάνοντας όλες τις απαραίτητες βιβλιοθήκες. Αυτό περιλαμβάνει τη βιβλιοθήκη για επικοινωνία με το RTC και οδήγηση των LED. Μετά από αυτό, δημιούργησα ξεχωριστές συναρτήσεις για καθεμία από τις λειτουργίες. Όταν ο χρήστης αλλάζει λειτουργίες πατώντας ένα κουμπί, το πρόγραμμα καλεί τη λειτουργία που αντιστοιχεί σε αυτήν τη λειτουργία. Εάν ο χρήστης δεν πατήσει ένα κουμπί εντός συγκεκριμένου χρονικού διαστήματος, το ρολόι θα κοιμηθεί.
Η κατάσταση αναστολής λειτουργίας υποδεικνύεται από το σβήσιμο όλων των LED μέχρι να σβήσουν εντελώς. Η χρήση της λειτουργίας ύπνου αυξάνει σημαντικά τη διάρκεια ζωής της μπαταρίας και διατηρεί τα LED σβηστά όταν δεν χρησιμοποιούνται. Ο χρήστης μπορεί να ξυπνήσει το ρολόι πατώντας το επάνω κουμπί. Όταν ξυπνήσει, το ρολόι θα ελέγξει το επίπεδο της μπαταρίας για να βεβαιωθεί ότι δεν απαιτεί φόρτιση. Εάν απαιτείται φόρτιση, οι λυχνίες LED θα αναβοσβήνουν κόκκινες μερικές φορές πριν εμφανιστεί η ώρα. Εάν η μπαταρία είναι κάτω από ένα κρίσιμο επίπεδο, δεν θα ανάψει καθόλου.
Τον υπόλοιπο χρόνο ο προγραμματισμός πήγε να κάνει τις άλλες λειτουργίες όσο το δυνατόν πιο διαισθητικές. Σκέφτηκα ότι το να έχεις το ίδιο κουμπί υπεύθυνο για την ίδια λειτουργικότητα σε όλες τις λειτουργίες θα ήταν το πιο διαισθητικό. Μετά από μερικές δοκιμές, αυτή είναι η διαμόρφωση του κουμπιού που βρήκα:
- Πατήστε το κουμπί επάνω: Αφύπνιση / Κύκλος μεταξύ των λειτουργιών "Displayρα εμφάνισης", "Ημερομηνία εμφάνισης", "Χρονόμετρο" και "Ξυπνητήρι".
- Κρατήστε πατημένο το κουμπί: Εισαγάγετε τη λειτουργία "Ρύθμιση ώρας", "Ορισμός ημερομηνίας", "Έναρξη χρονόμετρου" ή "Ρύθμιση συναγερμού".
- Πατήστε το κουμπί κάτω: Αυξήστε τη φωτεινότητα.
- Κρατήστε πατημένο το κουμπί: Εισαγάγετε τη λειτουργία "Επιλογή χρώματος".
Το κάτω κουμπί είναι πάντα υπεύθυνο για τις ρυθμίσεις φωτεινότητας και χρώματος, ανεξάρτητα από τη λειτουργία που βρίσκεστε. Όταν ο χρήστης εισέλθει στη λειτουργία "Επιλογή χρώματος", οι λυχνίες LED ξεκινούν την ποδηλασία σε όλα τα πιθανά χρώματα RGB. Ο χρήστης μπορεί να διακόψει προσωρινά την κίνηση και να επιλέξει το χρώμα που προτιμά για τη συγκεκριμένη λειτουργία (Displayρα εμφάνισης με κόκκινο χρώμα, Ημερομηνία εμφάνισης με μπλε κλπ.). Τα χρώματα προορίζονται να προσαρμόζονται εύκολα από τον χρήστη για να τους βοηθούν να διακρίνουν τις διαφορετικές λειτουργίες.
Τώρα που τελείωσε ο κώδικας, ήρθε η ώρα να τον ανεβάσω στον μικροελεγκτή!
Βήμα 9: Προγραμματισμός
Wasταν σχεδόν ώρα για συγκόλληση και συναρμολόγηση, αλλά πριν από αυτό έπρεπε να προγραμματίσω τον μικροελεγκτή. Ακολούθησα αυτό το σεμινάριο
Κάψτε το bootloader σε ένα SMD ATmega328P-AU
για τον τρόπο εγγραφής ενός bootloader και προγραμματισμού του μικροελεγκτή χρησιμοποιώντας ένα κανονικό Arduino Uno ως προγραμματιστή.
Το πρώτο βήμα ήταν να μετατρέψουμε το Arduino Uno σε ISP ανεβάζοντας το παράδειγμα κώδικα "ArduinoISP". Χρησιμοποίησα ένα breadboard μαζί με μια πρίζα προγραμματισμού και συνέδεσα το σχηματικό από το σεμινάριο. Μετά από αυτό, μπόρεσα να κάψω το bootloader στον μικροελεγκτή πατώντας απλά το "Burn Bootloader" στο Arduino IDE.
Μόλις ο μικροελεγκτής είχε ένα πρόγραμμα εκκίνησης, απλώς αφαίρεσα τον υπάρχοντα μικροελεγκτή από το Arduino Uno και χρησιμοποίησα την πλακέτα Arduino Uno ως προσαρμογέα USB σε σειριακό για να ανεβάσω τον κώδικα στον μικροελεγκτή στην υποδοχή προγραμματισμού. Αφού ολοκληρωθεί η μεταφόρτωση, θα μπορούσα να ξεκινήσω τη διαδικασία συγκόλλησης.
Το επόμενο βήμα ήταν να συγκεντρώσουμε όλα τα εξαρτήματα και να τα κολλήσουμε μαζί!
Βήμα 10: Συγκόλληση
Η διαδικασία συγκόλλησης χωρίστηκε σε δύο μέρη. Πρώτα πρέπει να κολληθεί το κάτω στρώμα και μετά το επάνω στρώμα.
Ασφάλισα το PCB του ρολογιού ανάμεσα σε δύο πρωτότυπες σανίδες χρησιμοποιώντας ταινία. Αυτό εξασφάλισε ότι το PCB δεν κινήθηκε κατά τη συγκόλληση, κάτι που είναι πολύ σημαντικό. Στη συνέχεια τοποθέτησα το στένσιλ συγκόλλησης πάνω από το PCB και χρησιμοποίησα μια γενναιόδωρη ποσότητα πάστας συγκόλλησης για να καλύψω όλα τα τακάκια συγκόλλησης. Προχώρησα στη χρήση ενός λεπτού τσιμπιδιού για να τοποθετήσω όλα τα εξαρτήματα στα αντίστοιχα τακάκια τους. Στη συνέχεια χρησιμοποίησα ένα πιστόλι θερμότητας για να επανατοποθετήσω τη συγκόλληση όλων των εξαρτημάτων στη θέση τους.
Όταν το κάτω στρώμα συγκολλήθηκε, του έδωσα μια γρήγορη οπτική επιθεώρηση για να βεβαιωθώ ότι η συγκόλληση ήταν επιτυχής. Στη συνέχεια αναποδογύρισα τον πίνακα και επανέλαβα τη διαδικασία συγκόλλησης στην άλλη πλευρά, αυτή τη φορά με όλα τα LED. Wasταν πολύ σημαντικό να μην υπερθερμανθεί ο πίνακας κατά τη συγκόλληση του επάνω στρώματος, καθώς όλα τα εξαρτήματα στο κάτω μέρος κινδυνεύουν να πέσουν. Ευτυχώς, όλα τα εξαρτήματα παρέμειναν στη θέση τους και μετά τη συγκόλληση των κουμπιών στη θέση τους χρησιμοποιώντας ένα κανονικό κολλητήρι, το PCB τελείωσε!
Wasταν τώρα ώρα για την τελική συνέλευση!
Βήμα 11: Συναρμολόγηση
Η συναρμολόγηση ήταν πολύ απλή. Συνδέσα την μπαταρία στο PCB και τοποθέτησα την μπαταρία και το PCB μέσα στο τρισδιάστατο περίβλημα. Προχώρησα να βιδώσω τις τέσσερις βίδες στις οπές στερέωσης σε κάθε γωνία του PCB. Μετά από αυτό, έδεσα τους ιμάντες ρολογιού χρησιμοποιώντας τις ράβδους ελατηρίου 18mm και το ρολόι ήταν πλήρες!
Βήμα 12: Συμπέρασμα και βελτιώσεις
Το ρολόι λειτουργεί όπως αναμενόταν και είμαι πολύ ευχαριστημένος με το πώς βγήκε. Δεν είχα κανένα πρόβλημα με αυτό μέχρι τώρα και η μπαταρία παραμένει σχεδόν πλήρως φορτισμένη μετά από μια ολόκληρη εβδομάδα χρήσης.
Ενδέχεται να προσθέσω άλλες δυνατότητες στο ρολόι στο μέλλον. Δεδομένου ότι η θύρα USB είναι συνδεδεμένη στον μικροελεγκτή, το υλικολογισμικό μπορεί να ενημερωθεί ανά πάσα στιγμή με νέες δυνατότητες. Προς το παρόν όμως, θα συνεχίσω να χρησιμοποιώ αυτήν την έκδοση του ρολογιού και θα δω πώς αντέχει μετά από εκτεταμένη χρήση.
Εάν έχετε οποιεσδήποτε σκέψεις, σχόλια ή ερωτήσεις σχετικά με αυτό το έργο, παρακαλώ αφήστε τις παρακάτω. Μπορείτε επίσης να τα στείλετε στη διεύθυνση [email protected].
Πρώτο βραβείο στο διαγωνισμό ρολογιών
Συνιστάται:
Micro Binary Clock: 10 βήματα (με εικόνες)
Micro Binary Clock: Έχοντας δημιουργήσει προηγουμένως ένα Instructable (Binary DVM), το οποίο κάνει χρήση της περιορισμένης περιοχής εμφάνισης χρησιμοποιώντας δυαδικό. Onlyταν μόνο ένα μικρό βήμα αφού είχα δημιουργήσει προηγουμένως την κύρια ενότητα κώδικα για δεκαδική σε δυαδική μετατροπή στη δημιουργία δυαδικού ρολογιού, αλλά
BigBit Binary Clock Display: 9 βήματα (με εικόνες)
BigBit Binary Clock Display: Σε ένα προηγούμενο Instructable (Microbit Binary Clock), το έργο ήταν ιδανικό ως φορητή επιτραπέζια συσκευή καθώς η οθόνη ήταν αρκετά μικρή. Ως εκ τούτου φάνηκε σκόπιμο η επόμενη έκδοση να είναι μια έκδοση με τζάμι ή τοίχο αλλά πολύ μεγαλύτερη
RaspberryPi Islamic Prayers Watch & Alarm: 15 βήματα (με εικόνες)
RaspberryPi Islamic Prayers Watch & Alarm: Οι μουσουλμάνοι σε όλο τον κόσμο έχουν πέντε προσευχές κάθε μέρα και κάθε προσευχή πρέπει να γίνεται σε μια συγκεκριμένη ώρα της ημέρας. Λόγω του ελλειπτικού τρόπου με τον οποίο ο πλανήτης μας κινείται γύρω από τον ήλιο, γεγονός που κάνει τον χρόνο να ανατέλλει και να πέφτει ο ήλιος να διαφέρει καθ 'όλη τη διάρκεια του έτους, δηλαδή
Binary Tree Morse αποκωδικοποιητής: 7 βήματα (με εικόνες)
Binary Tree Morse Decoder: a.articles {font-size: 110.0%; font-weight: bold; γραμματοσειρά: πλάγια; κείμενο-διακόσμηση: κανένα? φόντο-χρώμα: κόκκινο;} a.articles: hover {φόντο-χρώμα: μαύρο;} Αυτό το διδακτικό εξηγεί πώς να αποκωδικοποιήσετε τον κώδικα Morse χρησιμοποιώντας ένα Arduino Uno R3.T
Arduino Binary Clock - 3D Printed: 5 βήματα (με εικόνες)
Arduino Binary Clock - 3D Printed: Κοιτάζω τα Binary ρολόγια εδώ και αρκετό καιρό για το γραφείο μου, ωστόσο είναι αρκετά ακριβά και / ή δεν έχουν τεράστιο αριθμό λειτουργιών. Έτσι αποφάσισα να κάνω ένα αντ 'αυτού. Ένα σημείο που πρέπει να λάβετε υπόψη όταν φτιάχνετε ένα ρολόι, το Arduino / Atmega328