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

Smartphone Controlled Infinite Clock: 5 βήματα (με εικόνες)
Smartphone Controlled Infinite Clock: 5 βήματα (με εικόνες)

Βίντεο: Smartphone Controlled Infinite Clock: 5 βήματα (με εικόνες)

Βίντεο: Smartphone Controlled Infinite Clock: 5 βήματα (με εικόνες)
Βίντεο: Η μυστηριώδης εξαφάνιση της Debanie Escobar 2024, Ιούλιος
Anonim
Image
Image
Smartphone Controlled Infinite Clock
Smartphone Controlled Infinite Clock
Smartphone Controlled Infinite Clock
Smartphone Controlled Infinite Clock

Έχω δει πολλά έργα Infinity Mirrors και Infinity Clocks on Instructables, οπότε αποφάσισα να φτιάξω το δικό μου. Μπορεί να μην είναι πολύ διαφορετικό από τα άλλα… αλλά το έκανα μόνος μου, έτσι είναι!

Εικόνα
Εικόνα

Σε περίπτωση που δεν το γνωρίζετε ήδη:

Τι είναι το ρολόι απείρου;

Ένα ρολόι απείρου χρησιμοποιεί πολλαπλές αντανακλάσεις μεταξύ ενός καθρέφτη και ενός ημι-ανακλαστικού καθρέφτη για να δώσει την ψευδαίσθηση του μεγάλου βάθους, ενώ έχει βάθος μόνο ένα εκατοστό!

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

Εικόνα
Εικόνα

Πολλαπλές αντανακλάσεις δίνουν την εντύπωση βάθους

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

Wantedθελα να το κάνω διαδραστικό και μεταβαλλόμενο, οπότε πρόσθεσα ένα χειριστήριο Smartphone χρησιμοποιώντας επικοινωνία Bluetooth. Υπάρχει μια πραγματική αμφίδρομη επικοινωνία μεταξύ ρολογιού και smartphone. Ο χρήστης μπορεί να χρησιμοποιήσει το HMI (Human Machine Interface) για να αλλάξει τις διάφορες παραμέτρους, όπως κινούμενα σχέδια, χρώματα. Αλλά μπορεί επίσης να στείλει άμεσες εντολές για παράδειγμα για να αλλάξει την ώρα και το ρολόι απαντά για να πει ότι η εντολή είναι αποδεκτή ή όχι.

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

Εικόνα
Εικόνα

Ας ξεκινήσουμε τώρα…

Βήμα 1: Τι χρειάζεστε;

Τι χρειάζεσαι?
Τι χρειάζεσαι?
Τι χρειάζεσαι?
Τι χρειάζεσαι?
Τι χρειάζεσαι?
Τι χρειάζεσαι?
Τι χρειάζεσαι?
Τι χρειάζεσαι?

Για να φτιάξετε αυτό το ρολόι απείρου, εδώ είναι αυτό που χρειάζεστε (οι τιμές είναι ενδεικτικές):

  • Ένα Arduino nano (2 USD)
  • Μια διευθετήσιμη λωρίδα led, όπως τα led WS2812, 60 led ανά μέτρο (6 USD)
  • Μια μονάδα bluetooth, όπως το HC-05 (3 USD)
  • Ένα breadboard (1,5 USD)
  • Τροφοδοσία 5V, ικανή να παρέχει 4Α ή περισσότερα
  • Λίγα ηλεκτρικά καλώδια
  • Ένα smartphone με Android και την εφαρμογή Bluetooth Electronics, από την KeuwlSoft
  • Ορισμένα κομμάτια ινοσανίδων μέσης πυκνότητας (MDF, ένα πάχος 3mm και ένα πάχος 10 mm)
  • Διαφανές πιάτο πλεξιγκλάς ή perspex (περίπου 15 έως 20 USD)
  • Καθρέφτης και ημι-ανακλαστικές αυτοκόλλητες ταινίες καθρέφτη (από 4 έως 15 δολάρια ΗΠΑ)
  • Συνδέσεις, αντιστάσεις και μία χωρητικότητα 1000μF
  • Λίγη κόλλα και κολλητική ταινία.
Εικόνα
Εικόνα

Διάγραμμα αρχής της γεωμετρίας του ρολογιού

Η πλάκα plexi πρέπει να έχει πάχος 2 έως 3 mm, ώστε να παραμένει σταθερά στη θέση της κατά τη χρήση.

Το παραπάνω διάγραμμα εξηγεί τη γεωμετρία του ρολογιού. Η λωρίδα led τοποθετείται ανάμεσα στους δύο καθρέφτες. Φυσικά, χρειάζεστε 60 από αυτά τα led στη λωρίδα. Μπορείτε να βρείτε διαδικτυακές λωρίδες led με 60 led ανά μέτρο, οπότε μία από αυτές είναι καλή. Στη συνέχεια, η περίμετρος του led κύκλου είναι 1m, η διάμετρος του είναι 100/PI = 31,8 cm (περίπου 12,53 ίντσες).

Προετοιμάστε τα εξαρτήματά σας

Κόψτε έναν κύκλο αυτής της διαμέτρου στην σανίδα MDF 3mm. Για να το κάνω αυτό, πήγα στο τοπικό fablab και ζήτησα να χρησιμοποιήσω τον κόφτη λέιζερ. Μπορούν ακόμη και να το κάνουν για εσάς, αν ζητήσετε ευγενικά και έρθετε με τον πίνακα: διαρκεί μόνο λίγα δευτερόλεπτα. Ενώ βρίσκεστε εκεί, κόψτε τον ίδιο δίσκο στο πιάτο πλεξιγκλάς σας.

Από την πλάκα MDF, έχετε τώρα έναν δίσκο και την πλάκα με την κυκλική οπή. Κρατήστε τα και τα δύο για αργότερα.

Για να διατηρήσετε τις λυχνίες LED στη θέση τους, κόψτε επίσης στο MDF πάχους 1 εκ. Έναν λεπτό κύλινδρο ίδιας διαμέτρου. Το πάχος δεν είναι σημαντικό αρκεί να μην είναι πολύ εύθραυστο. Η λωρίδα LED θα τοποθετηθεί μέσα σε αυτόν τον κύλινδρο, επομένως είναι σημαντικό η εσωτερική περίμετρος να είναι ίδια με το μήκος της λωρίδας. Πολύ μακρύ ή πολύ κοντό και ορισμένα led ενδέχεται να έχουν ακανόνιστο διάκενο μεταξύ τους, οπότε να είστε πολύ ακριβείς εδώ.

Η κοπή μιας τόσο παχιάς πλάκας μπορεί να διαρκέσει λίγο περισσότερο από την κοπή της λεπτής. Ρωτήστε τον ιδιοκτήτη του fablab εάν ο κόφτης λέιζερ του είναι αρκετά ισχυρός για να κόψει αυτό το πάχος. Για μένα, το λέιζερ έπρεπε να περάσει πάνω από δέκα φορές για αυτό το μέρος, σε σύγκριση με δύο μόνο για την άλλη πλάκα.

Μπορείτε επίσης να…

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

Εικόνα
Εικόνα

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

Παρακάτω είναι τα αρχεία γεωμετρίας για την κοπή λέιζερ.

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

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

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

Προετοιμάστε την υπόθεση

Αρχικά, κολλήστε το φιλμ καθρέφτη στο δίσκο MDF. Θα είναι το κάτω μέρος του ρολογιού.

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

Τέλος, προετοιμάστε τα LED. Οι λυχνίες LED WS2812 χρησιμοποιούν 3 επιθέματα σύνδεσης: παροχή τάσης, γείωση και εντολή. Εάν είναι ήδη συνδεδεμένα 3 ηλεκτρικά καλώδια, απλώς χρησιμοποιήστε τα. Διαφορετικά κολλήστε 3 καλώδια στα τακάκια σύνδεσης. Θυμηθείτε ότι οι λυχνίες LED είναι πολωμένες συσκευές: αυτό σημαίνει ότι το ρεύμα ρέει μόνο προς μία κατεύθυνση. Αυτή η κατεύθυνση υποδεικνύεται στη λωρίδα με ένα βέλος. Στη συνέχεια, θα πρέπει να κολλήσετε τα καλώδια στο τέλος της λωρίδας από όπου έρχονται τα βέλη (όχι το τέλος στο οποίο δείχνουν τα βέλη).

Κολλήστε τα LED μέσα στον παχύ κύλινδρο MDF και συναρμολογήστε τα 3 μέρη, με κόλλα ή / και ταινία.

Εικόνα
Εικόνα

Στη συνέχεια, το ηλεκτρονικό μέρος

Βάλτε το Arduino στο breadboard και δημιουργήστε το κύκλωμα όπως φαίνεται παραπάνω. Βεβαιωθείτε ότι είναι συνδεδεμένες όλες οι βάσεις (GND) (GND από Arduino, μονάδα HC-05, λωρίδα LED και παροχή).

  • Οι ακίδες RX και TX της μονάδας Bluetooth HC-05 συνδέονται με τις ακίδες D3 και D2 του Arduino
  • Η γραμμή δεδομένων της λωρίδας LED είναι συνδεδεμένη με τον πείρο D12, μπορείτε να τοποθετήσετε μια αντίσταση 300 Ohms ενδιάμεσα, αν έχετε.

Εάν θέλετε να αλλάξετε τις καρφίτσες, αλλάξτε τους ορισμούς τους στον κώδικα ανάλογα (γραμμές 7 και 13 του αρχείου ino).

Σημειώστε ότι η μονάδα HC-05 απαιτεί διαχωριστή τάσης για τον πείρο RX, όπως φαίνεται παρακάτω. Έτσι χρειάζεστε μία αντίσταση 1000 Ohms και μία αντίσταση 2000 Ohms.

Εικόνα
Εικόνα

Η τροφοδοσία χρησιμοποιείται τόσο για το Arduino όσο και για τη λωρίδα LED. Συνδέστε πρώτα τον πυκνωτή 1000μF σε βιδωτό ακροδέκτη (ντόμινο). Μπορείτε να χρησιμοποιήσετε γρήγορο σύνδεσμο εάν έχετε κάποια. Δείτε εδώ για περισσότερες λεπτομέρειες.

Εικόνα
Εικόνα

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

Εικόνα
Εικόνα

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

Ελέγξτε τα πάντα δύο φορές

Ελέγξτε όλες τις συνδέσεις δύο φορές … Χρησιμοποιήστε ένα πολύμετρο για να ελέγξετε την ηλεκτρική συνέχεια.

Εάν όλα είναι σωστά, το ρολόι σας είναι σχεδόν έτοιμο. Μην το προμηθεύσετε προς το παρόν.

Βήμα 3: Ανεβάστε τον κώδικα

Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα
Ανεβάστε τον Κώδικα

Ας προγραμματίσουμε

Για να ανεβάσετε τον κώδικα στο Arduino nano, χρησιμοποιήστε το Arduino IDE. Βάλτε όλα τα αρχεία σε ένα φάκελο που ονομάζεται "Horloge_LED3_nano_BTOK" στο φάκελο Arduino σας. Ανοίξτε το IDE, επιλέξτε τις κατάλληλες παραμέτρους (τύπος πλακέτας, θύρα COM κ.λπ.) και κάντε κλικ στο κουμπί μεταφόρτωσης.

Εικόνα
Εικόνα

Στο smartphone σας Android, εγκαταστήστε την εφαρμογή Bluetooth Electronics, μπορείτε να τη βρείτε εύκολα στο Google Play. Κατεβάστε το αρχείο "BluetoothElectronicsCode.txt" από αυτό το Instructable και αλλάξτε την επέκταση σε zip: θα λάβετε ένα αρχείο zip με τον κωδικό για τη διεπαφή του smartphone που θα λειτουργεί με Bluetooth Electronics.

Όταν είστε έτοιμοι, συνδέστε την παροχή. Τα LED θα ανάψουν, η μονάδα HC-05 θα σβήσει επίσης για να αναζητήσει τη σύνδεση. Εκκινήστε την εφαρμογή Android και ακολουθήστε τις οδηγίες για να αντιστοιχίσετε τη μονάδα Bluetooth με το smartphone σας. Όταν είστε έτοιμοι, ξεκινήστε το HMI: είστε έτοιμοι να παίξετε!

Σημειώστε ότι…

Η πρώτη λυχνία LED της ταινίας πρέπει να τοποθετηθεί πάνω από το ρολόι. Εάν δεν το τοποθετήσατε εκεί, μπορείτε να αλλάξετε την τιμή της παραμέτρου μετατόπισης στον κώδικα (γραμμή 65 του αρχείου ino). Φροντίζει γι 'αυτό.

Όταν κολλήσατε τη λωρίδα LED μέσα στον ρηχό κύλινδρο, υπήρχαν 2 επιλογές: είτε η λωρίδα περιστρέφεται δεξιόστροφα, είτε αριστερόστροφα. Αν το κάνατε με λάθος τρόπο, οι δείκτες του ρολογιού θα γυρίσουν σε λάθος κατεύθυνση! Μην ανησυχείς. Απλώς αλλάξτε την τιμή της μεταβλητής boolean sens_horaire σε true (γραμμή 77 του αρχείου ino)

Εικόνα
Εικόνα

Βήμα 4: Απολαύστε

Απολαμβάνω!
Απολαμβάνω!
Απολαμβάνω!
Απολαμβάνω!
Απολαμβάνω!
Απολαμβάνω!

Μια τελευταία ρύθμιση…

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

  • Hxx: ρυθμίστε τις ώρες σε xx (π.χ.: H4)
  • Myy: ρυθμίστε τα λεπτά (πχ: M15)
  • Szz: ρυθμίστε τα δευτερόλεπτα (π.χ. S30)

Οι εντολές μπορούν να συνδεθούν με αλυσίδες εισάγοντας ένα αστέρι μεταξύ τους, για παράδειγμα: H4*M15*S35

Η ρύθμιση των ωρών ή / και των λεπτών θα επαναφέρει τα δευτερόλεπτα στο μηδέν.

Στη συνέχεια θα δείτε ότι η ώρα παρακολουθείται από ένα RED LED, τα λεπτά από ένα ΠΡΑΣΙΝΟ LED:

Εικόνα
Εικόνα

Η ώρα είναι 9:52:00!

Το χρώμα των δευτερολέπτων μπορεί να αλλάξει χρησιμοποιώντας το ρυθμιστικό στο HMI

Εικόνα
Εικόνα

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

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

Κινούμενα σχέδια…

  • 0: Απλώς εμφανίζει την ώρα, μπορείτε να αλλάξετε το χρώμα των δευτερολέπτων χρησιμοποιώντας το ρυθμιστικό.
  • 1: Έγχρωμο φόντο (μπορείτε να αλλάξετε το χρώμα) μεταβλητού πλάτους.
  • 2: Περιστρεφόμενο ουράνιο τόξο
  • 3: Μια έγχρωμη ταινία (που μπορεί να αλλάξει) που κάνει μία στροφή ανά δευτερόλεπτο.
  • 4: Μια χρωματιστή λωρίδα που αναπηδά από το δεύτερο χέρι.
  • 5: Έγχρωμο φόντο (μπορείτε να αλλάξετε την παλέτα) τυχαίου πλάτους.
  • 6: Απλώς εμφανίζει την ώρα, το δείκτη του δευτερολέπτου αλλάζει το φωτεινό πλάτος του.
  • 7: Περιστρεφόμενες σημαίες (αλλάξτε την παλέτα για να αλλάξετε τη σημαία μεταξύ 4 πιθανών)
Εικόνα
Εικόνα

Η γαλλική σημαία - είναι 7:11:51

Πρόσφατα προστέθηκε ένα άλλο animation, το οποίο αλλάζει κάθε 15 δευτερόλεπτα για μια τυχαία επιλεγμένη κίνηση.

Το κουμπί MINUTES ανάβει και απενεργοποιεί τα λευκά LED κάθε 5 λεπτά στο ρολόι.

Εικόνα
Εικόνα

Είναι 7:11:25

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

Τι άλλο?

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

Εικόνα
Εικόνα

Βήμα 5: Νέα έκδοση για διατήρηση ακριβούς χρόνου

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

RTC υπάρχουν σε διάφορα μοντέλα, προτείνω να χρησιμοποιήσετε μια μονάδα DS3231, η οποία είναι πολύ ακριβής (σε σύγκριση με το DS1307). Αυτή η νέα έκδοση του προγράμματος χρησιμοποιεί τη βιβλιοθήκη MD-DS3231, διαθέσιμη εδώ. Απλώς δημιουργήστε έναν νέο φάκελο που ονομάζεται Horloge_LED3_nano_BT_RTC στο φάκελο Arduino και κατεβάστε όλα τα αρχεία.

Συνδέστε το DS3231 ως συσκευή I2C, δηλαδή SDA σε A4 και SCL (ή SCK) σε A5

Πρώτον, πρέπει να ορίσετε την ώρα του RTC. Δείτε για παράδειγμα αυτό το Instructables ή αυτό το σεμινάριο.

Ανεβάστε το αρχείο Horloge_LED3_nano_BT_RTC.ino στο Arduino nano και εκτελέστε το. Ο χρόνος ανανεώνεται κάθε 30 λεπτά, οπότε το ρολόι παραμένει ακριβές όλη την ώρα.

Φυσικά, πρέπει να έχετε την μπαταρία στη μονάδα RTC, επειδή διατηρεί το RTC ζωντανό ακόμη και αν δεν παρέχεται από το Arduino και μπορεί να διατηρήσει τον ακριβή χρόνο.

Συνιστάται: