Πίνακας περιεχομένων:
- Βήμα 1: Επιδιόρθωση, πρώτο βήμα
- Βήμα 2: Διόρθωση του επόμενου προβλήματος
- Βήμα 3: Διόρθωση του τελευταίου προβλήματος
- Βήμα 4: Σκίτσο Arduino
- Βήμα 5: Προγραμματισμός του ESP-03 & Συμπεράσματα
Βίντεο: ΟΧΙ ΑΛΛΗ ΑΝΟΙΞΗ ΜΠΡΟΣΤΑ: 5 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:33
Εναλλακτικός τίτλος: IP Time Clock μέρος 3
Αν σας αρέσει, το συμμετέχω στο διαγωνισμό Ρολόι.
Έχετε κουραστεί να χρειάζεται να κάνετε Spring Forward;
Έχετε κουραστεί να πρέπει να επιστρέψετε;
Λοιπόν, είμαι. Έχω αυτό το παλιό ξυπνητήρι που το διόρθωσε (για λίγο) (Βλέπε εικόνα) Θα προσαρμόζεται αυτόματα για θερινή ώρα και (νομίζω) έχει εφεδρική μπαταρία σε περίπτωση που χάσετε ενέργεια. Δυστυχώς, αρκετά χρόνια πίσω, οι ΗΠΑ αποφάσισαν να αλλάξουν τις ημέρες για αλλαγή του χρόνου. Έτσι, τώρα αυτό το ρολόι πρέπει να αλλάζει χειροκίνητα τέσσερις φορές το χρόνο! Το χρησιμοποιώ μόνο ως αντίγραφο ασφαλείας.
Αυτό λοιπόν το Lazy Old Geek (LOG) ήθελε το τέλειο ρολόι. Όλοι είναι διαφορετικοί και οι εποχές αλλάζουν (Χα! Χα!) Και τα ιδανικά αλλάζουν. Εδώ είναι το ιδανικό ρολόι υπνοδωματίου μου.
Πάντα ορατό το βράδυ. CAVEAT: Δεν αναβοσβήνουν δευτερόλεπτα τη νύχτα, αυτό είναι πολύ αποσπαστικό.
Αυτόματο DST (θερινή ώρα). Μισώ που πρέπει να αλλάζω ρολόι δύο φορές το χρόνο.
Εμφανίζει την ημέρα της εβδομάδας. Αφού είμαι ΠΑΛΙΟΣ και δεν θυμάμαι.
Έτσι μου αρέσουν τα δευτερόλεπτα το πρωί Η διαφήμιση λέει γαργάρες για 30 δευτερόλεπτα, έτσι μου αρέσει ένα ρολόι που εμφανίζει δευτερόλεπτα.
Χωρίς μπλε φως. Όλοι γνωρίζουμε ότι το μπλε φως είναι κακό για εσάς. Δεν είναι πάντα αλήθεια, δείτε αυτό:
www.instructables.com/id/Blue-Light-Proje…
Εντάξει, είναι πολύ απλό. Πολλά ρολόγια είναι ορατά τη νύχτα και πολλά δεν είναι μπλε. Μερικά είναι «ατομικά» ρολόγια που προσαρμόζονται για το DST. Στην πραγματικότητα, μερικά από τα «ατομικά» μου ρολόγια πρέπει να τα βάλω με τις αλλαγές DST.
Τώρα η κατάσταση των δευτερολέπτων είναι πιο συγκεκριμένη. Στην πραγματικότητα σχεδίασα το δικό μου για να το κάνω σε αυτό το Instructable (αν και παρατήρησα ότι δεν το εξήγησα πολύ καλά):
www.instructables.com/id/IP-Time-Clock-Par…
Αυτό το ρολόι κράτησε περίπου τέσσερα χρόνια, σχετικά χωρίς συντήρηση μέχρι πριν από μερικούς μήνες όταν σταμάτησε να λειτουργεί.
Βήμα 1: Επιδιόρθωση, πρώτο βήμα
Μπλε οθόνη θανάτου, IP Clock (στην πραγματικότητα είναι μαύρο).
Technobabble:
Μια σύντομη περιγραφή του ρολογιού IP. Χρησιμοποιεί μικροελεγκτή ESP-03, συνδέεται στο διαδίκτυο με WiFi. Συγκόλλησα δύο αρσενικές ταινίες κεφαλής 2mm στο ESP-03, ώστε να συνδεθεί σε πρίζα στο PCB.
Χρησιμοποιεί δύο επτά οθόνες τριών τμημάτων, όπως:
Δεν θυμάμαι αν αυτά ήταν κοινή κάθοδος ή άνοδος.
Ένα Max7219 για οδήγηση των οθονών και των επιμέρους LED για ημέρες της εβδομάδας.
Για περισσότερες λεπτομέρειες, ανατρέξτε στο IP Clock μέρος μου 2 Instructable.
Λοιπόν, το πρώτο πράγμα που προσπάθησα ήταν να επαναπρογραμματίσω το ESP-03 (μικροελεγκτής), έτσι κοίταξα το Instructable μου και προσπάθησα αλλά δεν με άφησε να το προγραμματίσω.
ΑΣΗΜΑΝΤΙΚΗ ΙΣΤΟΡΙΑ: Εντάξει, είμαι ΓΕΡΟΝΤΑΣ, έτσι το μυαλό μου περιπλανιέται. Ένας από τους λόγους που μπήκα στο Instructables.com ήταν ότι είχε υπέροχα Instructables στο Arduino. Oneταν ένας από τους κύριους λόγους που μπήκα στο Arduinos και έμαθα πώς να τα χρησιμοποιώ. Οι εκπαιδευτικοί συγγραφείς είναι σε όλα τα διαφορετικά επίπεδα και δεξιότητες, αλλά συχνά βρίσκω κάποιους που είναι σε ένα επίπεδο που μπορώ να καταλάβω. Σας ευχαριστώ λοιπόν το Instructables που με βοηθήσατε όλα αυτά τα χρόνια.
Για να ανταποδώσω τη χάρη, γράφω Instructables που ελπίζω να βοηθήσει άλλους.
Ένας δεύτερος λόγος που γράφω το Instructables είναι να με βοηθήσει να θυμηθώ πώς έκανα έργα. Ενώ γράφω το Instructables προσπαθώ να παράσχω όλες τις λεπτομέρειες για να κάνω αυτό που έκανα. Προφανώς, δεν κάνω πάντα καλή δουλειά.
Εντάξει, έβαλα το IP Clock σε έναν πίσω καυστήρα.
Η θεωρία μου είναι ότι περισσότερο μπλε φως μου έδωσε περισσότερη ενέργεια (βλ. Παραπάνω blueproject Instructable) και εστίαση για να επανεξετάσω αυτό το πρόβλημα. Αυτό που τελικά κατάλαβα ήταν ότι η μέθοδος που χρησιμοποιούσα για τον προγραμματισμό του ESP-03 δεν λειτουργούσε πλέον. Το έγραψα σε άλλο Instructable:
www.instructables.com/id/2020-ESP8266/
Το πρόβλημα 1 λύθηκε, μπορώ τώρα να προγραμματίσω ESP-03 με σκίτσα Arduino.
Βήμα 2: Διόρθωση του επόμενου προβλήματος
Λοιπόν, έχω προγραμματίσει ένα ESP-03 με το παλιό μου σκίτσο Arduino, το έβαλα στο IP ρολόι μου, ακόμα δεν λειτουργούσε. Με τον τρόπο, έγραψα το σκίτσο, τίποτα δεν εμφανίστηκε μέχρι να γίνει μια επιτυχής σύνδεση στο Διαδίκτυο και ο διακομιστής NTP (παρέχει ακριβή χρόνο στο Διαδίκτυο), οπότε είχα μια κενή οθόνη.
Χρησιμοποιώντας την σειριακή οθόνη Arduino, μπορούσα να δω ότι δεν συνδέεται με τον διακομιστή NTP.
ΣΗΜΕΙΩΣΗ: Το ESP-03 χρησιμοποιεί μικροελεγκτή ESP8266. Ένα από τα ωραία πράγματα για το ESP8266 είναι ότι έχει ενσωματωμένο WiFi. Από τεχνική άποψη, μπορεί να συνδεθεί σε ένα WiFi hotspot ή WiFi router που έχουν πολλά σπίτια, συμπεριλαμβανομένου του δικού μου.
Έχοντας γίνει αρκετά τεχνικό εδώ, οι νέοι δρομολογητές WiFi έχουν δύο εύρη ζώνης, 2,4GHz και 5,0GHz. (Δείτε την εικόνα για το δρομολογητή μου) Μου αρέσει να τα θεωρώ ως τη διαφορά μεταξύ του ραδιοφώνου AM και FM. (Τα θυμάστε αυτά;)
Ένας περιορισμός του ESP8266 είναι ότι χρησιμοποιούν μόνο εύρος ζώνης 2,4GHz.
Πιο τεχνικά πράγματα, όταν συνδέεστε σε WiFi χρειάζεστε ένα αναγνωριστικό που ονομάζεται SSID. Είναι σαν μεμονωμένος ραδιοφωνικός σταθμός, K Earth 101. Και για λόγους ασφαλείας, χρειάζεστε επίσης έναν κωδικό πρόσβασης.
Λοιπόν, πολλοί δρομολογητές διπλής ζώνης WiFi (2,4GHz και 5GHz) χρησιμοποιούν το ίδιο SSID και για τις δύο ζώνες.
Τέλος πάντων για κάποιο λόγο, δεν μπορούσα να συνδέσω ένα ESP-03 με το δρομολογητή μου. Φαίνεται να θυμάμαι άλλους ανθρώπους που είχαν παρόμοια προβλήματα.
Κατώτατη γραμμή: Εγκατέστησα έναν άλλο δρομολογητή που είχε ξεχωριστά SSID για ζώνη 2,4 και 5 GHz, π.χ. "mtslink24" και "mtslink50" και μπόρεσε να μιλήσει στο Διαδίκτυο. (Δείτε την εικόνα)
ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Εάν έχετε δρομολογητή διπλής ζώνης με τα ίδια SSID και στις δύο ζώνες, ενδέχεται να μην λειτουργεί με ESP8266.
Βήμα 3: Διόρθωση του τελευταίου προβλήματος
Αυτό που έβλεπα ήταν ότι ακόμα δεν μπορούσα να συνδεθώ στον διακομιστή NTP. Βρήκα ένα άλλο σκίτσο για να δω αν μπορούσα να χρησιμοποιήσω το Διαδίκτυο και αυτό λειτούργησε, οπότε το επόμενο πρόβλημα φάνηκε να είναι η σύνδεση με τον διακομιστή NTP.
Λοιπόν, στο αρχικό μου σκίτσο, χρησιμοποίησα μια διεύθυνση IP για να συνδεθώ σε έναν διακομιστή NTP:
tf.nist.gov/tf-cgi/servers.cgi
Δοκίμασα λοιπόν αρκετές IP από τον Boulder και το FT. Collins που είναι αρκετά πιο κοντά στο σημείο που βρίσκομαι. Κανένας από αυτούς δεν λειτούργησε. Κάποιοι έπαιζαν και πραγματικά έπαιρναν ένα σκίτσο σε παγκόσμιο επίπεδο, αλλά θα έκλεινε μόνο μία στις πέντε φορές. Έκανα περισσότερη έρευνα και βρήκα κάτι που ονομάζεται pool.ntp.org. Προφανώς αυτό που κάνει είναι να περιστρέφεται μέσω μιας δέσμης διευθύνσεων IP, οπότε καμία διεύθυνση δεν είναι υπερφορτωμένη και όλες θα πρέπει να είναι ενεργές.
Λοιπόν, δεν καταλαβαίνω τόσο καλά αυτόν τον προγραμματισμό WiFi, αλλά κατάφερα να βρω ένα παράδειγμα που θα μπορούσα να προσαρμόσω στο σκίτσο μου και να το δουλέψω. Yippee!
Βήμα 4: Σκίτσο Arduino
Επισυνάπτεται το σκίτσο εργασίας μου, Special.ino
Ακολουθούν ορισμένα σχόλια σχετικά με αυτό:
Εδώ τοποθετείτε το δικό σας SSID και κωδικό πρόσβασης. (Αυτό πρέπει να είναι 2,4 GHz.)
char ssid = "YourSSID"; // SSID δικτύου (όνομα)
char pass = "Ο κωδικός σας SSID"; // κωδικός πρόσβασης δικτύου
Χρησιμοποιώντας τη λίστα διακομιστών pool.ntp.org.
IPAddress timeServerIP; // time.nist.gov διεύθυνση διακομιστή NTP
const char* ntpServerName = "pool.ntp.org";
// λάβετε έναν τυχαίο διακομιστή από την πισίνα WiFi.hostByName (ntpServerName, timeServerIP);
Δύο λειτουργίες DST:
void findChangeDates (); // Βρείτε ημερομηνίες αλλαγής Άνοιξη/Φθινόπωρο
bool IsDST (); // Ελέγξτε αν είναι DST
findChangeDates (); παίρνει το τρέχον έτος και υπολογίζει ποιες ημέρες τον Μάρτιο και τον Νοέμβριο είναι οι ημερομηνίες μετάβασης
bool IsDST (); καθορίζει εάν η τρέχουσα ημέρα είναι DST ή όχι
void digitalClockDisplay ()
Λοιπόν, δυστυχώς ο παλιός μου εγκέφαλος δεν μπορεί να το καταλάβει άλλο. Αυτό που νομίζω ότι κάνει είναι να απενεργοποιήσετε την οθόνη δευτερολέπτων μετά τις 9 π.μ. και τα ανάβει ξανά γύρω στις 5 π.μ. Θεωρώ πολύ ενοχλητικό να κοιτάζω ένα ρολόι όταν είμαι στο κρεβάτι και να βλέπω τα δευτερόλεπτα να χτυπούν. Αλλά όταν σηκώνομαι το πρωί μου αρέσει να βλέπω τα δευτερόλεπτα για να μπορώ να «χρονομετρήσω» τις γαργάρες μου.
Βήμα 5: Προγραμματισμός του ESP-03 & Συμπεράσματα
Αυτή τη στιγμή χρησιμοποιώ την έκδοση Arduino1.8.12.
Ο ευκολότερος τρόπος για μένα να εγκαταστήσω το υλικό ESP8266 είναι να χρησιμοποιήσω το Board Manager χρησιμοποιώντας αυτήν τη μέθοδο:
github.com/esp8266/Arduino#installing-with…
Μόλις εγκατασταθεί, κατά την επιλογή του πίνακα, επιλέγω "Generic ESP8266 module".
ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Στον υπολογιστή μου υπάρχουν δύο εκδόσεις του "Generic ESP8266 module". Αυτή που ανήκει στην κατηγορία "πίνακες ESP8266" λειτουργεί, αυτή κάτω από το Sparkfun όχι.
Λοιπόν, είμαι τεμπέλης. Αυτό που έκανα πραγματικά ήταν να πάρω ένα ESP-03 και να το προγραμματίσω στον τροποποιημένο προσαρμογέα ESP από:
www.instructables.com/id/2020-ESP8266/
Αυτό που θα μπορούσα να κάνω είναι να τροποποιήσω το IP Clock 2 PCB μου σύμφωνα με αυτό το σχηματικό, προσθέτοντας μόνο μερικούς βραχυκυκλωτήρες.
Επιπλέον, τροποποίησα έναν προσαρμογέα USB CP2102 για να έχω RTS συνδεδεμένο στην ακίδα δίπλα στο GND.
Με αυτές τις τροποποιήσεις, είναι σαν να φορτώνετε ένα κανονικό σκίτσο Arduino χωρίς να χρειάζεται να πατήσετε κανένα κουμπί.
ΣΥΜΠΕΡΑΣΜΑΤΑ: Λοιπόν, μου αρέσει το ρολόι IP μου. Πληροί όλα τα κριτήρια μου. Παρά τα όσα δείχνει η εικόνα, οι λυχνίες LED είναι κόκκινες και όχι άσπρες, οπότε δεν είναι μπλε.
Συνιστάται:
Φτιάξτε έναν EASY Infinity Mirror Cube - ΟΧΙ Τρισδιάστατη εκτύπωση και ΟΧΙ προγραμματισμός: 15 βήματα (με εικόνες)
Φτιάξτε έναν EASY Infinity Mirror Cube | ΟΧΙ Τρισδιάστατη εκτύπωση και ΟΧΙ προγραμματισμός: Σε όλους αρέσει ένας καλός κύβος απείρου, αλλά μοιάζουν σαν να είναι δύσκολο να φτιαχτούν. Ο στόχος μου για αυτό το Instructable είναι να σας δείξω βήμα-βήμα πώς να το φτιάξετε. Όχι μόνο αυτό, αλλά με τις οδηγίες που σας δίνω, θα μπορείτε να κάνετε μία
Πώς να φτιάξετε έναν αισθητήρα δόνησης την άνοιξη στο σπίτι!: 5 βήματα (με εικόνες)
Πώς να φτιάξετε έναν αισθητήρα δόνησης την άνοιξη στο σπίτι !: Δούλευα σε ένα νέο έργο που περιλαμβάνει έναν αισθητήρα δόνησης ελατηρίου, γνωστού και ως " φτωχός " επιταχυνσιόμετρο/αισθητήρα κίνησης! Αυτοί οι διακόπτες δονήσεων ελατηρίου είναι διακόπτες σκανδάλης υψηλής ευαισθησίας που δεν προκαλούνται από κραδασμούς. Μέσα είναι μια
Εκτελέστε το APK Blynk ή άλλη εφαρμογή Android ως HMI στο Raspberry Pi: 7 βήματα
Εκτελέστε το APK Blynk ή άλλη εφαρμογή Android ως HMI στο Raspberry Pi: Γεια σας κατασκευαστές! Αυτό είναι το πρώτο μου διδάξιμο … Αυτό είναι προσιτό στον αρχάριο βατόμουρο. Ξόδεψα πολύ χρόνο για να βρω τους σωστούς συνδυασμούς για καλή αξιοπιστία και ταχύτητα της θέσης σε λειτουργία. Έχοντας βρει λίγες πληροφορίες για την εφαρμογή αυτού του
Συσκευή LED με Bluetooth: Είσοδος για άλλη διάσταση Χώρος: 6 βήματα
Συσκευή LED με Bluetooth: Είσοδος για χώρο άλλης διάστασης: Αυτό είναι ένα έργο τέχνης της συσκευής φωτισμού LED για το έργο γλυπτικής μου που ονομάζεται Ιερό αντικείμενο. Χρησιμοποιώ αυτήν τη συσκευή για να παρουσιάσω μια καταχώριση για έναν νέο κόσμο. Όταν ανάβω το φως LED, μπορούμε να δούμε ένα άπειρο τούνελ μέσα στο τσιμεντένιο κουτί. Η λωρίδα LED είναι ο έλεγχος
Πλήρης ΑΤΜΟΣ Μπροστά! στο Infinity & Beyond: 11 Βήματα
Πλήρης ΑΤΜΟΣ Μπροστά! στο Infinity & Beyond: Μια συνεργασία μεταξύ της Alicia Blakey και της Vanessa KrauseΠοιος ο f ** k είναι ο Fibonacci; Με βάση το σχέδιο της Alicia (τα ένθετα πλανητικά γρανάζια) αποφασίσαμε να συνεργαστούμε για να προσπαθήσουμε να δημιουργήσουμε ένα λειτουργικό σύστημα εργαλείων που μπορεί να εμφανιστεί σε όρθια θέση