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

Δυαδικό ξυπνητήρι βασισμένο σε Arduino: 13 βήματα (με εικόνες)
Δυαδικό ξυπνητήρι βασισμένο σε Arduino: 13 βήματα (με εικόνες)

Βίντεο: Δυαδικό ξυπνητήρι βασισμένο σε Arduino: 13 βήματα (με εικόνες)

Βίντεο: Δυαδικό ξυπνητήρι βασισμένο σε Arduino: 13 βήματα (με εικόνες)
Βίντεο: 6 πράγματα που δεν ξέρεις για το iPhone! | 2022 Tips 2024, Ιούλιος
Anonim
Image
Image

By Basement Engineering Ακολουθήστε περισσότερα από τον συγγραφέα:

DIY Laser People Counter
DIY Laser People Counter
Χτίζοντας ένα αυτόνομο σκάφος (ArduPilot Rover)
Χτίζοντας ένα αυτόνομο σκάφος (ArduPilot Rover)
Χτίζοντας ένα αυτόνομο σκάφος (ArduPilot Rover)
Χτίζοντας ένα αυτόνομο σκάφος (ArduPilot Rover)
The Perfect Bedside Lamp and Phone Dock
The Perfect Bedside Lamp and Phone Dock
The Perfect Bedside Lamp and Phone Dock
The Perfect Bedside Lamp and Phone Dock

Σχετικά: Γεια, το όνομά μου είναι Jan και είμαι κατασκευαστής, μου αρέσει να χτίζω και να δημιουργώ πράγματα και είμαι επίσης πολύ καλός στο να επισκευάζω πράγματα. Δεδομένου ότι μπορώ να σκεφτώ ότι πάντα μου άρεσε να δημιουργώ νέα πράγματα και αυτό συνεχίζω να κάνω μέχρι… Περισσότερα για το Basement Engineering »

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

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

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

Επιτρέψτε μου να σας πω λίγα λόγια για την ιστορία πίσω από αυτό το έργο:

Αρχικά σχεδίαζα να φτιάξω ένα "κανονικό" ρολόι, που χρησιμοποιεί LED όπως τα χέρια του, αλλά δεν είχα αρκετά LED στο χέρι.

Λοιπόν, τι κάνετε όταν θέλετε να εμφανίσετε την ώρα με όσο το δυνατόν λιγότερα LED;

Πηγαίνετε δυαδικά και αυτό ακριβώς έκανα εδώ.

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

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

Υπάρχει επίσης ένα πολύ λεπτομερές βίντεο στο Youtube, σε περίπτωση που δεν θέλετε να διαβάσετε τα πάντα.

Βήμα 1: Πάρτε τα πράγματα σας

Πάρτε τα πράγματά σας
Πάρτε τα πράγματά σας
Πάρτε τα πράγματά σας
Πάρτε τα πράγματά σας
Πάρτε τα πράγματά σας
Πάρτε τα πράγματά σας

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

ΗΛΕΚΤΡΟΝΙΚΑ ΕΙΔΗ:

  • 18 adressable LEDs Ws2811 (π.χ. Neopixels) σε μια λωρίδα με 60 LED ανά m (ebay)
  • Arduino Nano (με επεξεργαστή ATMega328) (ebay)
  • Ενότητα 1307 RTC (ebay)
  • 4Χ χωρητικά κουμπιά αφής (ebay)
  • bs18b20 ψηφιακός αισθητήρας θερμοκρασίας (ebay)
  • LDR (ebay)
  • ηχείο φορητού υπολογιστή/smartphone ή πιεζοφωνητή
  • 2222A NPN τρανζίστορ (ή κάτι παρόμοιο)
  • αρσενικές κεφαλίδες
  • γωνιακές γυναικείες κεφαλίδες (ebay)
  • Αντίσταση 1kOhm
  • Αντίσταση 4, 7kOhm
  • Αντίσταση 10kOhm
  • Καλώδια
  • 7x5cm πρωτότυπο PCB 24x18 οπές (ebay)
  • ασημένιο σύρμα (σύρμα κοσμημάτων) (ebay)
  • Μίνι προσαρμογέας USB 90 ° (ebay)

Άλλα υλικά

  • Περιτύλιγμα βινυλίου
  • Βίδες κεφαλής φλάντζας 4X 45mm m4 (ebay)
  • Μεταλλικές ροδέλες 32X m4
  • Παξιμάδι κλειδώματος 4X m4
  • Παξιμάδι 28X m4
  • 4X 10mm m3 ορείχαλκο PCB standoff (ebay)
  • Βίδα 8x 8mm m3 (ebay)
  • φύλλο αλουμινίου
  • Φύλλο γαλακτώδους ακρυλικού 2 mm
  • Φύλλο 2 χιλιοστών διαφανές ακρυλικό
  • Φύλλο MDF 3 mm
  • ταινία διπλής όψης

Εργαλεία

  • μίνι καλώδιο USB
  • υπολογιστή που εκτελεί το Arduino IDE
  • Τρυπάνι 3, 5 mm
  • Τρυπάνι 4, 5 mm
  • ηλεκτρικό τρυπάνι
  • μαχαίρι κοπής
  • Πριόνι συγκράτησης
  • συγκολλητικό ιόν
  • ψαλίδι κοπής μετάλλων
  • αρχείο
  • χαρτί άμμου

Πρότυπα (τώρα με διαστάσεις)

  • PDF
  • Libre Office Draw

Κώδικας

  • Σκίτσα
  • Βιβλιοθήκη κουμπιών
  • Βιβλιοθήκη χρονοδιακόπτη
  • Βιβλιοθήκη Jukebox
  • Τροποποιημένο RTClib
  • Βιβλιοθήκη Adafruit Neopixel
  • Arduino-Temperature-Control-Library

Βήμα 2: Κόψτε τον μπροστινό και τον πίσω πίνακα

Κόψτε τον μπροστινό και τον πίσω πίνακα
Κόψτε τον μπροστινό και τον πίσω πίνακα
Κόψτε τον μπροστινό και τον πίσω πίνακα
Κόψτε τον μπροστινό και τον πίσω πίνακα
Κόψτε τον μπροστινό και τον πίσω πίνακα
Κόψτε τον μπροστινό και τον πίσω πίνακα
Κόψτε τον μπροστινό και τον πίσω πίνακα
Κόψτε τον μπροστινό και τον πίσω πίνακα

Το πρώτο κομμάτι που πρόκειται να φτιάξουμε είναι το ακρυλικό μπροστινό πλαίσιο. Σημειώνουμε πού θέλουμε να πάνε οι περικοπές μας, έχοντας κατά νου ότι θέλουμε λίγη ανοχή στο τρίψιμο. Στη συνέχεια, απλά ξύνουμε το ακρυλικό με το μαχαίρι κοπής. Αφού το έχουμε κάνει για 10 έως 20 φορές έχουμε ένα αυλάκι. Στη συνέχεια, μπορούμε να τοποθετήσουμε αυτό το άλσος στην άκρη ενός τραπεζιού και να λυγίσουμε το ακρυλικό μέχρι να σπάσει.

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

Τώρα σάντουιτς τα δύο πάνελ μαζί και τρίβουμε κάθε πλευρά για να ευθυγραμμιστεί τέλεια.

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

Αρχικά ανοίγουμε μια τρύπα 4, 5 mm σε κάθε μία από τις 4 γωνίες. Καθώς το ακρυλικό είναι πολύ εύθραυστο και δεν θέλουμε να σπάσει, θα ξεκινήσουμε με ένα μικρό τρυπάνι και θα συνεχίσουμε μέχρι να φτάσουμε στην επιθυμητή διάμετρο της οπής. Στη συνέχεια, χρησιμοποιούμε το πρότυπο για να τρίψουμε τις γωνίες στο σωστό σχήμα.

Βήμα 3: Ολοκληρώστε το Rear Panel

Ολοκληρώστε το Πίσω Πάνελ
Ολοκληρώστε το Πίσω Πάνελ
Ολοκληρώστε τον Πίσω Πίνακα
Ολοκληρώστε τον Πίσω Πίνακα
Ολοκληρώστε το Πίσω Πάνελ
Ολοκληρώστε το Πίσω Πάνελ
Ολοκληρώστε το Πίσω Πάνελ
Ολοκληρώστε το Πίσω Πάνελ

Προς το παρόν, μπορούμε να αφήσουμε το μπροστινό πάνελ στην άκρη και να κολλήσουμε το δεύτερο πρότυπο στο πίσω πλαίσιο, όπου πρέπει να χρησιμοποιήσουμε ένα τρυπάνι 3, 5 mm για να ανοίξουμε τις τρύπες για τις αναμονές μας 4 pcb, καθώς και 4 τρύπες που σημαδεύουν τις άκρες για το μικρό πίσω παράθυρο.

Στη συνέχεια, χρησιμοποιούμε το πριόνι για να κόψουμε το παράθυρο και να εξομαλύνουμε τις άκρες, με ένα αρχείο. Επίσης, δεν θέλετε να ξεχάσετε να ανοίξετε την τρύπα για το καλώδιο μίνι USB (άκουσα για έναν όχι τόσο εστιασμένο κατασκευαστή, που τείνει να κάνει τέτοια πράγματα: D).

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

Βήμα 4: Φτιάξτε τον πίνακα LED

Φτιάξτε τον πίνακα LED
Φτιάξτε τον πίνακα LED
Φτιάξτε τον πίνακα LED
Φτιάξτε τον πίνακα LED
Φτιάξτε τον πίνακα LED
Φτιάξτε τον πίνακα LED

Τώρα ερχόμαστε στο επίκεντρο αυτού του έργου, με την κυριολεκτική έννοια. Ο πίνακας LED.

Χρησιμοποιούμε το ψαλίδι κοπής μετάλλων για να κόψουμε ένα κομμάτι 12, 2 εκατοστά επί 8 εκατοστά από ένα φύλλο μετάλλου. Να είστε προσεκτικοί όταν το κάνετε αυτό, καθώς το ψαλίδι δημιουργεί πολύ αιχμηρές άκρες. Θα τα εξομαλύνουμε με το αρχείο μας και λίγο γυαλόχαρτο. Στη συνέχεια, προσθέτουμε το επόμενο πρότυπό μας για να ανοίξουμε τρύπες για τις βίδες και τα σύρματα.

Timeρα για προετοιμασία των πραγματικών LED.

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

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

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

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

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

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

Τώρα μπορούμε να το συνδέσουμε με ένα Arduino, να κάνουμε ένα strandtest και να απολαύσουμε τα χρώματα.

Βήμα 5: Φτιάξτε έναν ελαφρύ οδηγό

Φτιάξτε έναν ελαφρύ οδηγό
Φτιάξτε έναν ελαφρύ οδηγό
Φτιάξτε έναν ελαφρύ οδηγό
Φτιάξτε έναν ελαφρύ οδηγό
Φτιάξτε έναν ελαφρύ οδηγό
Φτιάξτε έναν ελαφρύ οδηγό
Φτιάξτε έναν ελαφρύ οδηγό
Φτιάξτε έναν ελαφρύ οδηγό

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

Για να λύσουμε αυτό το ζήτημα, θα φτιάξουμε τον εαυτό μας έναν μικρό ελαφρύ οδηγό. Για αυτό, απλά κόβουμε ένα άλλο κομμάτι MDF, που έχει το ίδιο μέγεθος με το μπροστινό πλαίσιο. Στη συνέχεια, προσθέτουμε ένα ακόμη πρότυπο σε αυτό και ανοίγουμε δεκαοκτώ τρύπες 3, 5 mm για τα LED, καθώς και τέσσερις οπές 4, 5 mm για τις βίδες σε αυτό. Στη συνέχεια, μπορούμε να το σφίξουμε στον μπροστινό πίνακα και να χρησιμοποιήσουμε λίγο γυαλόχαρτο για να ευθυγραμμίσουμε τα δύο.

Όπως μπορείτε να δείτε στην τελευταία εικόνα, το φως φαίνεται πολύ πιο συγκεντρωμένο τώρα.

Βήμα 6: Φτιάξτε το πλαίσιο κουμπιού

Φτιάξτε το πλαίσιο κουμπιού
Φτιάξτε το πλαίσιο κουμπιού
Φτιάξτε το πλαίσιο κουμπιού
Φτιάξτε το πλαίσιο κουμπιού
Φτιάξτε το πλαίσιο κουμπιού
Φτιάξτε το πλαίσιο κουμπιού

Το τελευταίο στοιχείο περιβλήματος, που πρόκειται να φτιάξουμε, είναι το πλαίσιο κουμπιών.

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

Το πλαίσιο μας υποτίθεται ότι κρατά τα 4 κουμπιά αφής, τον αισθητήρα φωτός και το μικρό μας ηχείο στη θέση του. Πριν μπορέσουμε να τα στερεώσουμε στο πλαίσιο, κόβουμε μερικά μικρότερα κομμάτια καλύμματος από MDF. Στη συνέχεια κολλάμε θερμά τα εξαρτήματά μας σε αυτά τα καλύμματα και προσθέτουμε σύρματα σε αυτά.

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

Αφού ετοιμαστούν τα πάνελ, κόβουμε στις πλευρές του πλαισίου, για να κάνουμε χώρο για αυτά και τα καλώδια τους.

Στη συνέχεια αφαιρούμε τη σκόνη ξύλου από όλα τα κομμάτια με μια ηλεκτρική σκούπα και τα καλύπτουμε με βινύλιο.

Χρησιμοποιούμε το μαχαίρι ακριβείας για να αφαιρέσουμε κομμάτια του βινυλίου, ακριβώς πάνω από τις ευαίσθητες περιοχές των μονάδων αφής μας. Με κάποια ταινία διπλής όψης, μπορούμε να συνδέσουμε τα δικά μας κουμπιά στο MDF. Έφτιαξα τα κουμπιά μου από αφρώδες καουτσούκ, το οποίο τους δίνει μια ωραία, απαλή υφή, αλλά μπορείτε να χρησιμοποιήσετε οποιοδήποτε μη μεταλλικό υλικό θέλετε.

Στο πλαίσιο χρησιμοποιούμε το μαχαίρι μας για να ελευθερώσουμε ξανά λίγο από το MDF, το οποίο μας δίνει μια πιασμένη επιφάνεια για το hotglue. Στη συνέχεια, μπορούμε επιτέλους να κολλήσουμε τα εξαρτήματα στις πλευρές του πλαισίου μας.

Βήμα 7: Κολλήστε το Κύριο PCB

Συγκολλήστε το Κύριο PCB
Συγκολλήστε το Κύριο PCB
Συγκολλήστε το Κύριο PCB
Συγκολλήστε το Κύριο PCB
Συγκολλήστε το Κύριο PCB
Συγκολλήστε το Κύριο PCB

Ας αφήσουμε το πλαίσιο όπως είναι τώρα και προχωρούμε στο PCB. Μπορείτε να δείτε τη διάταξη PCB στην πρώτη εικόνα.

Ξεκινάμε τοποθετώντας τα εξαρτήματα με το χαμηλότερο προφίλ στην πλακέτα κυκλώματος. Τα μικρότερα εξαρτήματα είναι οι συρμάτινες γέφυρες, τις οποίες θυμήθηκα λίγο πολύ αργά, οπότε ξεκίνησα με τις αντιστάσεις. Συγκολλάμε τα εξαρτήματά μας στη θέση τους και προχωράμε στο επόμενο υψηλότερο σύνολο εξαρτημάτων.

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

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

Μετά από όλα τα μικρά εξαρτήματα, κολλήσαμε το Arduino και τη μονάδα ρολογιού πραγματικού χρόνου στη θέση τους. Η μονάδα RTC δεν ταιριάζει τόσο καλά στην απόσταση των οπών, οπότε θα εξοπλίσουμε μόνο την πλευρά, η οποία έχει 7 μαξιλάρια συγκόλλησης με ακίδες κεφαλής. Επιπλέον, τοποθετούμε μια ταινία κάτω από αυτήν, για να αποφύγουμε τυχόν βραχυκυκλώματα.

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

Για να κάνουμε μια σύνδεση θερμαίνουμε έναν σύνδεσμο συγκόλλησης και εισάγουμε το σύρμα. Στη συνέχεια κρατάμε το ιόν συγκόλλησης πάνω του, μέχρι να φτάσει στη σωστή θερμοκρασία και το συγκολλητικό να το περικλείσει και να έχουμε μια ένωση, που μοιάζει με αυτή της εικόνας. Εάν δεν θερμάνουμε το σύρμα, μπορεί να καταλήξουμε σε μια κρύα άρθρωση, η οποία θα μοιάζει με το άλλο παράδειγμα και δεν έχει πολύ καλή απόδοση. Μπορούμε να χρησιμοποιήσουμε τον κόπτη σύρματος, για να σπρώξουμε το σύρμα κάτω κατά τη συγκόλληση και να βεβαιωθούμε ότι είναι τοποθετημένο στο PCB. Σε μεγαλύτερες διαδρομές σύνδεσης, το κολλάμε σε ένα μόνο μαξιλάρι κάθε 5 έως 6 οπές μέχρι να φτάσουμε σε μια γωνία ή στο επόμενο εξάρτημα.

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

Η δημιουργία αυτών των κενών συνδέσεων καλωδίων είναι αρκετά δύσκολη και απαιτεί κάποια δεξιότητα, οπότε αν το κάνετε αυτό για πρώτη φορά, σίγουρα δεν είναι κακή ιδέα να το εξασκήσετε σε θραύσματα PCB, πριν επιχειρήσετε να το κάνετε στην πραγματική.

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

Όλες οι συνδέσεις 5V και γείωσης των κουμπιών αφής ενώνονται σε μια υποδοχή 2 ακίδων. Τα 4 καλώδια εξόδου λαμβάνουν μια υποδοχή 4 ακίδων και η γραμμή του αισθητήρα φωτός καθώς και τα δύο καλώδια ηχείων συγχωνεύονται σε έναν σύνδεσμο τριών ακίδων. Μην ξεχάσετε να σημειώσετε τη μία πλευρά κάθε πρίζας και συνδέσμου με αιχμηρό υλικό ή ταινία, ώστε να μην τα συνδέσετε τυχαία με λάθος τρόπο.

Βήμα 8: Συναρμολογήστε το ρολόι

Συναρμολογήστε το ρολόι
Συναρμολογήστε το ρολόι
Συναρμολογήστε το ρολόι
Συναρμολογήστε το ρολόι
Συναρμολογήστε το ρολόι
Συναρμολογήστε το ρολόι
Συναρμολογήστε το ρολόι
Συναρμολογήστε το ρολόι

Μετά από αυτό επέστρεψα στον μπροστινό πίνακα και έβαλα προσεκτικά ένα αυτοκόλλητο, κατασκευασμένο από διαφανές φύλλο εκτυπωτή λέιζερ, ως τελευταία πινελιά.

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

Πιθανότατα θα μπορούσε να γίνει με ένα καλύτερο αυτοκόλλητο, ή, αν είστε καλοί στο σχέδιο, μπορείτε να προσθέσετε τους αριθμούς με ένα κοφτερό.

Τώρα έχουμε όλα τα εξαρτήματα και μπορούμε να συναρμολογήσουμε το ρολόι μας.

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

Το τρίτο κομμάτι, είναι το πλαίσιο του κουμπιού. Λάβετε υπόψη ότι, όταν κοιτάτε από την μπροστινή πλευρά, το ηχείο πρέπει να βρίσκεται στη δεξιά πλευρά του ρολογιού. Τραβήξτε το καλώδιο του πάνελ led στη μέση του πλαισίου, πριν το στερεώσετε στη θέση του.

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

Παίρνουμε τις βίδες Μ3 και τους αποστάτες PCB, για να στερεώσουμε το μικρό παράθυρο. Είναι σημαντικό να σφίξετε προσεκτικά τις βίδες, καθώς δεν θέλουμε να καταστρέψουμε το ακρυλικό μας. Στη συνέχεια, παίρνουμε το PCB μας, συνδέουμε τον προσαρμογέα μας και τον βιδώνουμε στους αποστάτες. Η πλευρά του εξαρτήματος πρέπει να βλέπει προς το παράθυρο, ενώ η θύρα USB του Arduino βλέπει στο κάτω μέρος του ρολογιού.

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

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

Καθώς χρησιμοποιούσα κοντές βίδες μήκους 40 mm, έχω μόνο 3 παξιμάδια που κρατούν το πίσω πλαίσιο και το πλαίσιο μακριά. Με τα σωστά μπουλόνια των 45 mm, θα προσθέσετε ένα άλλο παξιμάδι εδώ, καθώς και μία ή δύο επιπλέον ροδέλες. Στο τέλος της συναρμολόγησης έχουμε το παξιμάδι κλειδώματος, έτσι ώστε όλα να παραμείνουν στη θέση τους.

Βήμα 9: Ανεβάστε τον κώδικα και βαθμονομήστε τον αισθητήρα φωτός

Ανεβάστε τον κωδικό και βαθμονομήστε τον αισθητήρα φωτός
Ανεβάστε τον κωδικό και βαθμονομήστε τον αισθητήρα φωτός
Ανεβάστε τον κωδικό και βαθμονομήστε τον αισθητήρα φωτός
Ανεβάστε τον κωδικό και βαθμονομήστε τον αισθητήρα φωτός
Ανεβάστε τον κωδικό και βαθμονομήστε τον αισθητήρα φωτός
Ανεβάστε τον κωδικό και βαθμονομήστε τον αισθητήρα φωτός

Timeρα να ανεβάσουμε τον κωδικό μας.

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

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

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

Κλείνουμε όλα τα άλλα παράθυρα, ανεβάζουμε τον κωδικό στο ρολόι μας και τελειώσαμε.

Timeρα να παίξουμε με το νέο μας gadget.

Βήμα 10: Μια γρήγορη εισαγωγή στο δυαδικό σύστημα

Μια γρήγορη εισαγωγή στο δυαδικό σύστημα
Μια γρήγορη εισαγωγή στο δυαδικό σύστημα
Μια γρήγορη εισαγωγή στο δυαδικό σύστημα
Μια γρήγορη εισαγωγή στο δυαδικό σύστημα
Μια γρήγορη εισαγωγή στο δυαδικό σύστημα
Μια γρήγορη εισαγωγή στο δυαδικό σύστημα
Μια γρήγορη εισαγωγή στο δυαδικό σύστημα
Μια γρήγορη εισαγωγή στο δυαδικό σύστημα

Πριν προχωρήσουμε θα ήθελα να απαντήσω σε μια ερώτηση που πιθανότατα έχει ήδη περάσει από το μυαλό σας, "Πώς στον κόσμο διαβάζετε αυτό το ρολόι;"

Λοιπόν, για αυτό θα ήθελα να σας κάνω μια σύντομη εισαγωγή στο δυαδικό σύστημα.

Είμαστε όλοι εξοικειωμένοι με το δεκαδικό σύστημα, όπου κάθε ψηφίο μπορεί να έχει 10 διαφορετικές καταστάσεις, που κυμαίνονται από 0 έως 9. Στο δυαδικό κάθε ψηφίο μπορεί να έχει μόνο δύο καταστάσεις, είτε 1 είτε 0, γι 'αυτό μπορείτε να χρησιμοποιήσετε κάτι τόσο απλό όσο το led to εμφανίζει έναν δυαδικό αριθμό.

Για να εμφανίσουμε αριθμούς που είναι μεγαλύτεροι από 9 σε δεκαδικά, προσθέτουμε περισσότερα ψηφία. Κάθε ψηφίο συνοδεύεται από έναν συγκεκριμένο πολλαπλασιαστή. Το πρώτο ψηφίο από δεξιά έρχεται με πολλαπλασιαστή 1 το επόμενο 10 και το επόμενο 100. Με κάθε νέο ψηφίο ο πολλαπλασιαστής είναι δέκα φορές μεγαλύτερος από αυτόν του ψηφίου πριν. Γνωρίζουμε λοιπόν ότι ο αριθμός δύο τοποθετημένος ένα ψηφίο προς τα αριστερά, αντιπροσωπεύει τον αριθμό 20. Ενώ δύο ψηφία προς τα αριστερά, αντιπροσωπεύει το 200.

Στο δυαδικό σύστημα κάθε ψηφίο έρχεται επίσης με έναν πολλαπλασιαστή. Ωστόσο, καθώς κάθε ψηφίο μπορεί να έχει μόνο δύο διαφορετικές καταστάσεις, κάθε νέος πολλαπλασιαστής είναι δύο φορές μεγαλύτερος από τον προηγούμενο. Ω και παρεμπιπτόντως, τα δυαδικά ψηφία ονομάζονται Bits. Ας ρίξουμε λοιπόν μια ματιά στο πρώτο μας παράδειγμα, αν τοποθετήσουμε το 1 στη χαμηλότερη θέση είναι ένα απλό 1, αλλά αν το τοποθετήσουμε στην επόμενη υψηλότερη θέση, όπου ο πολλαπλασιαστής μας είναι 2, αντιπροσωπεύει τον αριθμό 2 στο δυαδικό.

Τι θα λέγατε για το λίγο πιο περίπλοκο παράδειγμα στο κάτω μέρος της εικόνας. Το τρίτο και το πρώτο κομμάτι είναι ενεργοποιημένα. Για να πάρουμε τον δεκαδικό αριθμό που παριστάνεται εδώ, απλά προσθέτουμε τις τιμές των δύο δυαδικών ψηφίων. Έτσι 4 * 1 + 1 * 1 ή 4 + 1 μας δίνει τον αριθμό 5.

8 bits αναφέρονται ως byte, οπότε ας δούμε τι αριθμό παίρνουμε αν γεμίσουμε ένα ολόκληρο byte με ένα.1+2+4+8+16+32+64+128 που είναι 255, η οποία είναι η υψηλότερη τιμή που μπορεί να έχει ένα byte.

Παρεμπιπτόντως, ενώ στο δεκαδικό σύστημα το ψηφίο με τον μεγαλύτερο πολλαπλασιαστή έρχεται πάντα πρώτο, έχετε δύο τρόπους να γράψετε έναν αριθμό σε δυαδικό. Αυτές οι δύο μέθοδοι ονομάζονται το λιγότερο σημαντικό byte πρώτα (LSB) και το πιο σημαντικό byte πρώτα (MSB). Εάν θέλετε να διαβάσετε έναν δυαδικό αριθμό, πρέπει να γνωρίζετε ποια από τις δύο μορφές χρησιμοποιείται. Καθώς είναι πιο κοντά στο δεκαδικό σύστημα, το δυαδικό ρολόι μας χρησιμοποιεί την παραλλαγή MSB.

Ας επιστρέψουμε στο πραγματικό μας παράδειγμα. Όπως τονίζεται στην έκτη εικόνα, το ρολόι μας έχει 4 bit για να εμφανίσει την ώρα. Τότε έχουμε 6 bit για το λεπτό και επίσης 6 bits για το δεύτερο. Επιπλέον, έχουμε ένα bit bit am/pm.

Εντάξει, πες μου τι ώρα είναι στην 6η εικόνα, παρά μετάβαση στην τελευταία. Το ….

στο τμήμα της ώρας έχουμε 2+1 που είναι 3 και το bit μμ είναι ενεργοποιημένο έτσι είναι βράδυ. Στη συνέχεια το λεπτό 32+8, δηλαδή 40. Για τα δευτερόλεπτα έχουμε 8+4+2 που είναι 14. Έτσι είναι 3:40:14 μ.μ. ή 15:40:14.

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

Και αυτό είναι μέρος αυτού που αφορά αυτό το έργο, παίρνοντας κάτι τόσο αφηρημένο όσο και το δυαδικό σύστημα στον πραγματικό κόσμο και γνωρίζοντας το καλύτερα.

Βήμα 11: Χρήση του δυαδικού ξυπνητηριού

Χρήση του δυαδικού ξυπνητηριού
Χρήση του δυαδικού ξυπνητηριού
Χρήση του δυαδικού ξυπνητηριού
Χρήση του δυαδικού ξυπνητηριού
Χρήση του δυαδικού ξυπνητηριού
Χρήση του δυαδικού ξυπνητηριού

Τώρα θέλουμε επιτέλους να παίζουμε με το ρολόι, οπότε ας ρίξουμε μια γρήγορη ματιά στα χειριστήρια.

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

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

Για να ρυθμίσετε τη λειτουργία dimmer, πατήστε δύο φορές το κουμπί ok. Ο πίνακας led υποδεικνύει τη λειτουργία ρύθμισης αναβοσβήνοντας πολλές φορές.

  • Ένας χρόνος σημαίνει ότι δεν υπάρχει dimmer.
  • Δύο φορές σημαίνει ότι η φωτεινότητα ελέγχεται από τον αισθητήρα φωτός.
  • Τρεις φορές και τα LED σβήνουν αυτόματα μετά από 10 δευτερόλεπτα αδράνειας.
  • Συνδυάζονται τέσσερις φορές και οι δύο λειτουργίες dimmer.

Το παρατεταμένο πάτημα του κουμπιού ok θα σας οδηγήσει στη λειτουργία ρύθμισης ώρας, όπου μπορείτε να χρησιμοποιήσετε τα βέλη πάνω και κάτω για να αλλάξετε τον αριθμό. Ένα μόνο πάτημα στο κουμπί ok σας φέρνει από τις ώρες στα λεπτά, ένα ακόμη πάτημα και μπορείτε να ρυθμίσετε τα δευτερόλεπτα. Μετά από αυτό, ένα τελευταίο πάτημα εξοικονομεί το νέο χρόνο. Εάν εισαγάγετε κατά κύριο λόγο τη λειτουργία ρύθμισης ώρας, μπορείτε απλά να περιμένετε 10 δευτερόλεπτα και το ρολόι θα το αφήσει αυτόματα.

Όπως και με το κουμπί ok, το παρατεταμένο πάτημα του κουμπιού ξυπνητηριού σας επιτρέπει να ρυθμίσετε το ξυπνητήρι. Το διπλό πάτημα του κουμπιού συναγερμού ενεργοποιεί ή απενεργοποιεί το ξυπνητήρι.

Εάν χτυπάει το ρολόι, πατάτε μόνο το κουμπί ξυπνητηριού, για να το αφήσετε να κοιμηθεί για 5 λεπτά ή να το κρατήσετε πατημένο, για να απενεργοποιήσετε τον αφοπλισμό του ξυπνητηριού.

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

Βήμα 12: Κατανόηση του κώδικα (προαιρετικό)

Κατανόηση του κώδικα (προαιρετικό)
Κατανόηση του κώδικα (προαιρετικό)

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

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

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

Σε περίπτωση που δεν γνωρίζετε τι σημαίνει αυτό, ο αντικειμενοστρεφής προγραμματισμός (OOP) είναι μια έννοια των πιο σύγχρονων γλωσσών προγραμματισμού όπως η C ++. Σας επιτρέπει να οργανώνετε διαφορετικές συναρτήσεις και μεταβλητές σε λεγόμενες κλάσεις. Μια κλάση είναι ένα πρότυπο από το οποίο μπορείτε να δημιουργήσετε ένα ή περισσότερα αντικείμενα. Κάθε ένα από αυτά τα αντικείμενα παίρνει ένα Όνομα και το δικό του σύνολο μεταβλητών.

Για παράδειγμα, ο κωδικός του ρολογιού χρησιμοποιεί δύο αντικείμενα MultiTouchButton, όπως το alarmButton. Αυτά είναι αντικείμενα από την κλάση MultiTouchButton, η οποία είναι μέρος της βιβλιοθήκης μου κουμπιών. Το ωραίο με αυτά τα αντικείμενα είναι ότι μπορείτε να διασυνδεθείτε με αυτά παρόμοια με τα αντικείμενα του πραγματικού κόσμου. Για παράδειγμα, μπορούμε να ελέγξουμε αν το κουμπί συναγερμού πατήθηκε δύο φορές καλώντας το alarmButton.wasDoubleTapped (). Επιπλέον, η εφαρμογή αυτής της συνάρτησης είναι όμορφα κρυμμένη σε διαφορετικό αρχείο και δεν χρειάζεται να ανησυχούμε για το σπάσιμο της, αλλάζοντας οτιδήποτε άλλο στον κώδικά μας. Μια γρήγορη είσοδος στον κόσμο του αντικειμενοστραφούς προγραμματισμού, μπορείτε να βρείτε στον ιστότοπο του Adafruit.

Όπως μπορείτε να δείτε στο παραπάνω γράφημα, το πρόγραμμα ρολογιών έχει μια δέσμη διαφορετικών αντικειμένων.

Μιλήσαμε μόνο για τα αντικείμενα του κουμπιού, τα οποία μπορούν να ερμηνεύσουν τα σήματα εισόδου ως βρύση, διπλό πάτημα ή παρατεταμένο πάτημα.

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

Το αντικείμενο binaryClock διαχειρίζεται τη ρύθμιση χρόνου και συναγερμού, καθώς και την παρακολούθηση συναγερμού. Επιπλέον, παίρνει χρόνο από τη μονάδα rtc και το μετατρέπει σε δυαδικό buffer πληροφοριών για το ledPanel.

Το colorController ενσωματώνει όλες τις λειτουργίες εφέ χρώματος και παρέχει το colorBuffer για το ledPanel. Εξοικονομεί επίσης την κατάστασή του στο Arduinos EEProm.

Το ροοστάτη φροντίζει για τη φωτεινότητα των ρολογιών. Διαθέτει διαφορετικές λειτουργίες τις οποίες ο χρήστης μπορεί να περάσει. Η τρέχουσα λειτουργία αποθηκεύεται επίσης στο EEProm.

Το ledPanel διαχειρίζεται διαφορετικά buffer για την τιμή χρώματος, την τιμή φωτεινότητας και τη δυαδική κατάσταση κάθε LED. Κάθε φορά που καλείται η συνάρτηση pushToStrip (), τις επικαλύπτει και τις στέλνει στην λωρίδα led.

Όλα τα αντικείμενα "συνδέονται" μέσω του κύριου (το αρχείο με τις λειτουργίες εγκατάστασης και βρόχου), το οποίο περιλαμβάνει μόνο δύο λειτουργίες για την εκτέλεση 3 βασικών εργασιών.

  1. Ερμηνεία εισόδου χρήστη - Παίρνει την είσοδο από τα αντικείμενα 4 κουμπιών και τα βάζει σε μια λογική. Αυτή η λογική ελέγχει την τρέχουσα κατάσταση του ρολογιού για να καθορίσει, εάν το ρολόι είναι σε κανονική, ρύθμιση ώρας ή λειτουργία κουδουνίσματος και καλεί ανάλογα λειτουργίες διαφορετικών από τα άλλα αντικείμενα.
  2. Διαχείριση επικοινωνίας μεταξύ αντικειμένων - Ρωτά συνεχώς το αντικείμενο binaryClock, εάν έχει διαθέσιμες νέες πληροφορίες ή αν ο συναγερμός χτυπά (). Εάν έχει νέες πληροφορίες, λαμβάνει το informationBuffer από το binaryClock και το στέλνει στο αντικείμενο ledPanel. Αν χτυπάει το ρολόι ξεκινά το τζουκ μποξ.
  3. Ενημέρωση αντικειμένων - Κάθε ένα από τα αντικείμενα του προγράμματος έχει μια διαδικασία ενημέρωσης, η οποία χρησιμοποιείται για πράγματα όπως ο έλεγχος εισόδων ή η αλλαγή των χρωμάτων των LED. Αυτά πρέπει να καλούνται επανειλημμένα στη λειτουργία βρόχου για να λειτουργήσει σωστά το ρολόι.

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

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

Βήμα 13: Τελικές λέξεις

Τελικές λέξεις
Τελικές λέξεις

Χαίρομαι που συνεχίσατε να διαβάζετε μέχρι εκεί. Αυτό σημαίνει ότι το έργο μου δεν ήταν πολύ βαρετό:).

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

Θα ήθελα πολύ να ακούσω τη γνώμη σας για το ρολόι στα παρακάτω σχόλια:).

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

Όπως πάντα, σας ευχαριστώ πολύ για την ανάγνωση και την ευχάριστη δημιουργία.

Διαγωνισμός LED 2017
Διαγωνισμός LED 2017
Διαγωνισμός LED 2017
Διαγωνισμός LED 2017

Υποψήφιος στο Διαγωνισμό LED 2017

Συνιστάται: