Πίνακας περιεχομένων:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-13 06:57
Αγόρασα έναν φτηνό μετρητή ρολογιών τσέπης από το eBay νομίζοντας ότι θα έκανε ένα ενδιαφέρον στοιχείο καινοτομίας. Αποδείχθηκε ότι ο μετρητής που αγόρασα δεν ήταν κατάλληλος, αλλά μέχρι τότε είχα δεσμευτεί να παράγω κάτι που θα κρεμόταν σε έναν τοίχο και θα αποτελούσε σημείο συζήτησης.
Το κέντρο της οθόνης είναι ένα αναλογικό αμπερόμετρο το οποίο ενεργοποιείται από έναν φορτισμένο πυκνωτή ο οποίος εκφορτίζεται μέσω του μετρητή κινώντας τη βελόνα δείκτη.
Μια οθόνη LED αντικατοπτρίζει την κίνηση του δείκτη παρέχοντας μια εντυπωσιακή οθόνη.
Το σύνολο ελέγχεται από έναν μικροεπεξεργαστή Atmel 328, που αναπτύχθηκε απευθείας σε ένα Arduino Uno, ο οποίος μετρά τα τρέχοντα επίπεδα φωτός στο δωμάτιο και ενεργοποιεί τυχαία την οθόνη, όλα τροφοδοτούνται από τρεις μπαταρίες ΑΑ.
Προμήθειες
Arduino Uno με επεξεργαστή Atmel 328… δείτε το υπόλοιπο κείμενο
Επιλογή LED, κόκκινο, πράσινο και κίτρινο με ένα λευκό
7 x 330R αντιστάσεις
1 x LDR
1 x πυκνωτής 220uF
1 x 220R αντίσταση
2 χ 10k αντιστάσεις
1 x διόρθωση διόδου
Ένα κατάλληλα παλιό αμπερόμετρο, συνήθως 100uA σε πλήρη κλίμακα
Βήμα 1: Έννοια
Οι εικόνες λένε μια μικρή ιστορία, ο αρχικός μετρητής σχεδιάστηκε για χρήση σε ραδιόφωνα βαλβίδων και απαιτούσε πάνω από 100mA και απλώς δεν μπορούσε να λειτουργήσει από Arduino. Αυτές είναι πρώιμες ιδέες διάταξης προβολής. Στο τέλος έβγαλα τον μετρητή με την πρόθεση να αντικαταστήσω τον μηχανισμό, όχι πολύ επιτυχημένο.
Τελικά πήρα ένα παλιό βολτόμετρο με μηχανισμό 100uA, τέλειο.
Βήμα 2: Το κύκλωμα
Η αρχική κατασκευή χρησιμοποίησε ένα Arduino για να συνδέσει τα bits σε ένα αρκετά απλό σύστημα. Έξι ψηφιακές ακίδες οδηγούν τα έγχρωμα LED μέσω αντιστάσεων 330R.
Ένας ψηφιακός πείρος χρησιμοποιείται για την ενεργοποίηση του διαχωριστή τάσης LDR, η τάση μετριέται σε μία από τις ακίδες ADC και χρησιμοποιείται για την εκτίμηση του τρέχοντος επιπέδου φωτός και την ώρα της ημέρας.
Ένας ψηφιακός πείρος χρησιμοποιείται για τη φόρτιση του πυκνωτή μέσω διόδου και αντίστασης 220R.
Ο μετρητής συνδέεται στον πυκνωτή μέσω αντίστασης 10k. Αυτή η τιμή μπορεί να χρειαστεί να αλλάξει ανάλογα με τη μέτρηση πλήρους κλίμακας στο αμπερόμετρο που χρησιμοποιείται.
Συνδέθηκα επίσης με κουμπί επαναφοράς, για να τοποθετηθεί στο πλάι της βιτρίνας.
Τέλος, πραγματοποιείται μια περαιτέρω σύνδεση από την άνοδο ενός από τα LED για την παροχή αναφοράς τάσης για έλεγχο του επιπέδου τάσης της μπαταρίας. Αυτό το κύκλωμα δεν ήταν ποτέ πολύ επιτυχημένο και θα το αλλάξω σε ένα απλό διαχωριστή τάσης την επόμενη φορά που οι μπαταρίες θα τελειώσουν και η οθόνη είναι εκτός τοίχου.
Βήμα 3: Εφαρμογή
Η λειτουργία της οθόνης από μπαταρίες με Arduino Uno δεν ήταν πρακτική, η τρέχουσα κατανάλωση θα ήταν πολύ υψηλή, καθώς μεγάλο μέρος της πλακέτας είναι ενεργό όλη την ώρα και ήθελα η οθόνη να βρίσκεται σε έναν τοίχο ανέγγιχτο για τουλάχιστον έξι μήνες. χρόνος.
Για να μειωθεί η τρέχουσα κατανάλωση, τα κυκλώματα οθόνης αναπτύχθηκαν με ένα Arduino και ένα breadboard, τα κυκλώματα μεταφέρθηκαν στον πίνακα μήτρας και στη συνέχεια ο τελικά προγραμματισμένος επεξεργαστής αφαιρέθηκε από το Arduino και τοποθετήθηκε σε μια πρίζα σε ένα μικρό κομμάτι πίνακα μήτρας, μαζί με το xtal, και ενώνονται μεταξύ τους με καλώδιο κορδέλας.
Στο τέλος, η οθόνη λειτουργεί για πλήρεις 12 μήνες με ένα σετ μπαταριών.
Ένα χρήσιμο κόλπο είναι να αντικαταστήσετε τον επεξεργαστή Atmel σε ένα Arduino Uno με μια υποδοχή ZIF, αυτός ταιριάζει καλά και, στη συνέχεια, να τοποθετήσετε ξανά τον επεξεργαστή. Μόλις το έργο είναι έτοιμο να ξεκινήσει, ο επεξεργαστής είναι ήδη προγραμματισμένος και χρειάζεται απλώς να αφαιρεθεί και να τοποθετηθεί σε μια πρίζα στον τελικό πίνακα. Όταν αγοράζω κενούς επεξεργαστές αφιερώνω μία ώρα βάζοντας φορτωτές εκκίνησης σε όλους τους, ώστε να είναι έτοιμοι για χρήση ανά πάσα στιγμή.
Βήμα 4: Ο κώδικας
Όπως μπορεί να φανταστεί κανείς, ο κώδικας για τη λειτουργία της βασικής οθόνης δεν είναι πολύ περίπλοκος, αλλά ο βασικός τομέας είναι η μείωση της κατανάλωσης ενέργειας. Υπάρχουν δύο προσεγγίσεις σε αυτό, η μία είναι η εκτέλεση της οθόνης μόνο όταν πιθανότατα κάποιος θα την δει, και δεύτερον η μείωση της κατανάλωσης ενέργειας των κυκλωμάτων στο ελάχιστο.
Το πρόγραμμα πρέπει να έχει εγκαταστήσει τις βιβλιοθήκες Narcoleptic πριν από τη μεταγλώττιση.
Όλες οι καθυστερήσεις στο σύστημα υλοποιούνται χρησιμοποιώντας τη ναρκοληπτική βιβλιοθήκη για πλήρη λειτουργία χαμηλής ισχύος του επεξεργαστή, με μια κατανάλωση ενέργειας να μετριέται σε μερικά νανοαμπέτες.
Ο επεξεργαστής κοιμάται για τέσσερα δευτερόλεπτα τη φορά, και όταν ξυπνάει, εκτελεί μια τυχαία ρουτίνα για να καθορίσει εάν το σύστημα δεν θα ξυπνήσει. Εάν όχι, το σύστημα κοιμάται για άλλα τέσσερα δευτερόλεπτα.
Εάν η τυχαία ρουτίνα είναι αληθινή, το κύκλωμα LDR ενεργοποιείται και πραγματοποιείται μέτρηση επιπέδου φωτός. Το κύκλωμα LDR απενεργοποιείται αμέσως μετά για εξοικονόμηση ενέργειας.
Το σύστημα λειτουργεί σε τέσσερις εκτιμώμενες χρονικές περιόδους.
- Η νύχτα - είναι πολύ σκοτεινή και κανείς δεν είναι πιθανό να την παρακολουθήσει - μην κάνετε τίποτα και ξανακοιμηθείτε
- Νωρίς το πρωί - στο πρώτο μέρος είναι απίθανο να υπάρχουν παρατηρητές, αλλά διατηρήστε τα στατιστικά σαν να είναι μέρα
- Κατά τη διάρκεια της ημέρας - μπορεί να υπάρχουν παρατηρητές, αλλά ενεργοποιήστε μόνο τον αναλογικό μετρητή, όχι τα LED
- Βράδυ - είναι πιθανό ότι θα υπάρχουν παρατηρητές, οπότε ενεργοποιήστε την πλήρη οθόνη
Το σύστημα εκτιμά ότι η διάρκεια της ημέρας θα αλλάξει με τις εποχές, οπότε το βράδυ επεκτείνεται σε αυτό που διαφορετικά θα ήταν νύχτα, καθώς η διάρκεια των ημερών είναι μικρότερη, αλλά όταν οι παρατηρητές εξακολουθούν να είναι παρόντες.
Εάν η ώρα της ημέρας είναι κατάλληλη, χρησιμοποιείται μια ψηφιακή έξοδος για τη φόρτιση του πυκνωτή και στη συνέχεια απενεργοποιείται. Με αναλογική μόνο οθόνη, το σύστημα επιστρέφει σε κατάσταση αναστολής λειτουργίας με απενεργοποιημένη όλη την έξοδο και ο πυκνωτής εκφορτίζεται μέσω του μετρητή του οποίου ο δείκτης, ο οποίος είχε μετακινηθεί σε πλήρη κλίμακα, επιστρέφει στο μηδέν.
Με την οθόνη LED ενεργή, το σύστημα μετρά την τάση στον πυκνωτή και παρουσιάζει μια ένδειξη λειτουργίας με βάση τη μετρημένη τάση μέχρι να πέσει κάτω από ένα όριο όταν το σύστημα κοιμάται.
Μια δεύτερη τυχαία επιλογή πραγματοποιείται προς το τέλος της οθόνης για να καθοριστεί εάν η οθόνη θα επαναληφθεί ή όχι, προσφέροντας μεγαλύτερο ενδιαφέρον για τον παρατηρητή.
Μια λευκή λυχνία LED ενεργοποιείται για να φωτίζει την όψη του μετρητή όταν η οθόνη LED είναι ενεργή.
Η ναρκοληπτική βιβλιοθήκη του Peter Knight, θέτει τον επεξεργαστή σε κατάσταση πλήρους ύπνου, όπου οι έξοδοι θα παραμείνουν στην κατάσταση που βρισκόταν στον ύπνο, αλλά όλα τα εσωτερικά ρολόγια σταματούν εκτός από τον χρονοδιακόπτη ύπνου, ο οποίος περιορίζεται στα τέσσερα δευτερόλεπτα. Αυτό μπορεί να δοκιμαστεί σε ένα Arduino, αλλά λόγω των κυκλωμάτων ισχύος Arduino LED και USB δεν επιτυγχάνεται η ίδια εξοικονόμηση ενέργειας.
Το σύστημα εξακολουθεί να περιέχει κώδικα που προοριζόταν να αντιπροσωπεύει τη μειωμένη χωρητικότητα των μπαταριών, αλλά αυτό δεν αποδείχθηκε χρήσιμο. Την επόμενη φορά που θα βγει από τον τοίχο, θα αλλάξω το πρόγραμμα για να παρέχω κάποια κατάσταση μπαταρίας μέσω των LED ή του αμπερόμετρου.
Η τελική έκδοση έχει ένα κουμπί επαναφοράς τοποθετημένο στο πλάι της βιτρίνας. Ο κύριος λόγος για αυτό είναι να επιτρέπονται επιδείξεις στους επισκέπτες, ώστε το σύστημα να εκτελεί τη βασική του ρουτίνα 10 φορές μετά την επαναφορά πριν επιστρέψει στην κανονική τυχαία ρουτίνα.