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

O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **: 6 βήματα (με εικόνες)
O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **: 6 βήματα (με εικόνες)

Βίντεο: O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **: 6 βήματα (με εικόνες)

Βίντεο: O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **: 6 βήματα (με εικόνες)
Βίντεο: RGB LED matrix Display using ESP8266 | Morphing Clock 2024, Ιούλιος
Anonim
Image
Image
O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **
O-R-A RGB Led Matrix Wall Clock and More ** ενημερώθηκε Ιουλ 2019 **

Γεια σας. Εδώ είμαι με ένα νέο έργο που ονομάζεται O-R-A

Είναι ένα ρολόι τοίχου RGB LED Matrix που εμφανίζει:

  • ώρα: λεπτό
  • θερμοκρασία
  • υγρασία
  • εικονίδιο τρέχουσας καιρικής κατάστασης
  • Συμβάντα Google Calendar και ειδοποιήσεις υπενθύμισης 1 ώρας

σε συγκεκριμένη ώρα δείχνει:

  • Ημερολόγιο Google σήμερα και αύριο λίστα συμβάντων
  • δελτίο καιρού
  • έκτακτες ειδήσεις

Εθιστικές λειτουργίες:

  • σημερινή ημερομηνία
  • Magic 8 μπάλα
  • Χρονόμετρο κουζίνας

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

Οι λειτουργίες, όπως η λίστα Ημερολογίου Google, η πρόγνωση καιρού, οι ειδησεογραφικές ειδήσεις RSS ξεκινούν την προεπιλεγμένη ώρα όταν η συσκευή βρίσκεται σε "λειτουργία ρολογιού", μπορούν επίσης να ονομαστούν απευθείας με τη λειτουργία των διακοπτών. Μια άλλη λειτουργία κατά τη λειτουργία "ρολογιού" εμφανίζει την τρέχουσα ημέρα/μήνα/έτος. Μπορεί να εκτελεστεί πατώντας το κουμπί ENTER. Πατώντας το κουμπί ΑΛΛΑΓΗ ΚΑΤΑΣΤΑΣΗΣ και κατόπιν το κουμπί ENTER εντός 3 δευτερολέπτων στη "λειτουργία ρολογιού", μπορείτε να μπείτε στο μενού επιλογών. Το κουμπί ΑΛΛΑΓΗ ΚΑΤΑΣΤΑΣΗΣ έχει οριστεί για κύλιση στο μενού, το κουμπί ENTER είναι για επιβεβαίωση της επιλεγμένης επιλογής.

Αυτό το έργο είναι μια εξέλιξη των προηγούμενων LEGOLED και TEMPO. Ο πίνακας μήκους led RGB έχει ανάλυση 32x64 τώρα, οπότε είναι δυνατόν να εμφανίζονται πιο ευφυή γραφικά, σταθερό και κύλιση κειμένου ταυτόχρονα. Χρησιμοποιώντας τις λειτουργίες TEMPO, η συσκευή ενεργοποιείται και απενεργοποιείται αυτόματα χωρίς κανένα κουμπί ή εξωτερικό χρονοδιακόπτη. Μια μονάδα PIR ανιχνεύει την παρουσία ατόμων, οπότε ενεργοποιήστε/απενεργοποιήστε την οθόνη.

Η πρόγνωση του καιρού και τα δεδομένα ημερολογίου συλλέγονται κάθε λεπτό που παρέχονται από το Ημερολόγιο Google και το Open Weather Map.

Αυτό το έργο είναι πλήρως προσαρμόσιμο ξεκινώντας από ένα Raspberry PI B+, 2 module 16x64 rgb led matrix και τροφοδοτικό. Μπορεί να επεκταθεί, όπως έκανα, προσθέτοντας κάρτες ήχου USB, ηχεία, κύκλωμα τροφοδοσίας on/off.

Βήμα 1: Αυτό που χρειάζεστε

  • Raspberry Pi B+ (με ενσωματωμένο wifi ή dongle)
  • 2 x 16x64 RGB μήτρα led ή 2 x 32x32
  • γενικό πλαίσιο (40x50 cm και βάθος 3 cm περίπου)
  • παγωμένο πλαστικό φύλλο
  • ηλιακό φιλμ παραθύρου
  • PS 5V 10A
  • καλώδια
  • θερμοσκληρυνόμενη θήκη (*)
  • μονάδα ρελέ (*)
  • επιπλέον PS για ενισχυτή ήχου (*)
  • 3W μονάδα ενισχυτή ήχου (*)
  • Ηχεία (*)
  • Κάρτα ήχου USB (*)
  • 2 x μικροδιακόπτης (*)
  • PIR (*)
  • Attiny85 (*)
  • DS3231 (*)
  • Mosfet IRF540 (*)
  • Αντιστάσεις: 3x1K, 2x10K, 1x2K (*)
  • μπλοκ ακροδεκτών (*)
  • λωρίδες κεφαλίδας θηλυκό (*)
  • λωρίδες κεφαλίδας αρσενικό (*)

(*) προαιρετικός

Βήμα 2: Ρύθμιση Raspberry Pi

Αυτός ο οδηγός βασίζεται βασικά στη βιβλιοθήκη Raspbian Jessie Lite, Python 2.7 και RGB LED MATRIX από τον χρήστη Hzeller Github.

Πρώτα απ 'όλα ενημέρωση & αναβάθμιση RPI

Εγκαταστήστε το git

su $ sudo apt-get install git

Κατεβάστε τη βιβλιοθήκη RGB LED MATRIX από το Github

~ $ git clone

~ $ cd rpi-rgb-led-matrix

su $ sudo μάρκα

εσωτερική κάρτα ήχου RPI μαύρης λίστας

~ $ cat << EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf

μαύρη λίστα snd_bcm2835

ΕΟΦ

~ $ sudo update -initramfs -u

Ορίστε παραμέτρους εξωτερικής κάρτας ήχου εάν χρειάζεται δυνατότητες ήχου:

su $ sudo nano /usr/share/alsa/alsa.conf

αλλαγή:

defaults.ctl.card 0

προεπιλογές.pcm.card 0

προς το

defaults.ctl.card 1

προεπιλογές.pcm.κάρτα 1

μετά επανεκκίνηση

Τώρα εγκαταστήστε τη βιβλιοθήκη μήτρας

~ $ cd/home/pi/rpi-rgb-led-matrix

~ $ sudo apt-get update && sudo apt-get install python2.7-dev python-pillow -y

make $ make build-python

~ $ sudo make install-python

και εγκαταστήστε άλλες βιβλιοθήκες που απαιτούνται:

su $ sudo easy_install pip

~ $ sudo pip install

Αντιγραφή σεναρίου samplebase.py από ~/rpi-rgb-led-matrix/bindings/python/samples/στον αρχικό κατάλογο

Αποκτήστε δωρεάν εγγραφή κλειδιού API για να ανοίξετε τον χάρτη καιρού

Εγκαταστήστε τώρα το περιτύλιγμα OWM Python για το PYthon 2.7 (χάρη στον χρήστη CSPARPAGithub)

su $ sudo pip install git+https://github.com/csarpa/[email protected]

Λάβετε διαπιστευτήρια ημερολογίου Google ακολουθώντας τις οδηγίες στο API ημερολογίου Google

Για αναπαραγωγή ήχου εγκαταστήστε το Pygame

~ $ sudo apt-get install python-pygame

Οι τροφοδοσίες RSS χρειάζονται εγκατάσταση του Feedparser

~ $ sudo pip install feedparser

αντιγραφή του σεναρίου μου ORAeng_131.py (αγγλική έκδοση) ή ORAita_131.py (ιταλική έκδοση) στον αρχικό κατάλογο

δημιουργία φακέλων για ήχους και εικόνες:

mkdir απορροφά

mkdir owm

κατεβάστε και αντιγράψτε όλα τα αρχεία-p.webp

www.dropbox.com/sh/nemyfcj1a1i18ic/AAB1W7I6lg5EgqL1gJZPWVTxa?dl=0

προσθέστε τα διαπιστευτήριά σας OWM στη γραμμή 69 (κλειδί API_)

ορίστε την πόλη για πρόγνωση καιρού (ελέγξτε αν καλύπτεται από το OWM και το σωστό όνομα είναι αποδεκτό) στις γραμμές 213, 215

obs = owm.weather_at_place ('Napoli, IT')

fc = owm.three_hours_forecast ('Napoli, IT')

******************************** ΕΝΗΜΕΡΩΣΗ 28/7/2019 ********** ******************

Το νέο API του Ημερολογίου Google δημιουργεί προβλήματα. Έχω λύσει την αφαίρεση ορισμένων ενοτήτων:

~ $ sudo apt-get remove --purge python-setuptools

~ $ sudo apt-get autoremove python-pyasn1

δοκιμάστε το σενάριο που εκτελείται

su $ sudo python ORAeng_150.py # ή ORAita_150.py για ιταλική έκδοση

την πρώτη φορά που το σενάριο θα ζητήσει άδεια GCAL. Κάντε κλικ στο σύνδεσμο για διαπιστευτήρια goi api. Δώστε άδεια τότε, αν όλα είναι εντάξει, θα δείτε το ρολόι να ξεκινά.

λόγω της υπερβολικής χρήσης RAM μετά από αρκετές ώρες, έγραψα ένα σενάριο που απλώς επανεκκίνησε το σενάριο python όταν η χρήση RAM υπερβεί το όριο. Στη συνέχεια, αντιγράψτε στον αρχικό κατάλογο το σενάριο που ονομάζεται memcheck μετονομάζεται σε memcheck.sh και προσθέστε στο crontab -e μαζί το κύριο σενάριο

*/5 * * * * bash /home/pi/memcheck.sh@reboot sudo python /home/pi/ORAeng_150.py

Βήμα 3: Τα σενάρια

Το κύριο σενάριο πρέπει να τροποποιηθεί ανάλογα με τις ανάγκες σας. Υποθέτοντας ότι τα διαπιστευτήρια OWM και Goggle Calendar έχουν οριστεί ως αντίστοιχες οδηγίες API, οι πιο σημαντικές παράμετροι είναι:

λίστα συμβάντων ημερολογίου που εκτελούνται κάθε ώρα στο λεπτό 2, 32 (βλ. γραμμή σεναρίου 65)

καιρικές συνθήκες και πρόβλεψη που εκτελούνται κάθε ώρα στο λεπτό 7, 37 (βλ. γραμμή σεναρίου 66)

έκτακτες ειδήσεις που εκτελούνται κάθε ώρα στο λεπτό 11 (βλ. γραμμή σεναρίου 67)

κανάλι ειδήσεων rss. Το εσωτερικό σενάριο έχει οριστεί ως Instructable RSS, αλλά μπορεί να αλλάξει. (βλ. γραμμή σεναρίου 366)

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

Ο χρονοδιακόπτης ενεργοποίησης/απενεργοποίησης Attiny85 πρέπει να προγραμματιστεί ανεβάζοντας το σκίτσο Tempo_V1_9_1Mhz_bugfix.ino.

Αυτό επιτρέπει την ενεργοποίηση της συσκευής στις 8 το πρωί και την απενεργοποίηση στις 23. Για περισσότερες πληροφορίες, ανατρέξτε στο σεμινάριο.

Βήμα 4: Το κύκλωμα

Το Κύκλωμα
Το Κύκλωμα
Το Κύκλωμα
Το Κύκλωμα
Το Κύκλωμα
Το Κύκλωμα

Το κύκλωμα έχει βασικά 3 τμήματα

- χρονοδιακόπτης ενεργοποίησης/απενεργοποίησης που χειρίζεται η μονάδα DS3231, Attiny85 και Mosfet

- διακόπτης για χειροκίνητο έλεγχο των λειτουργιών του ρολογιού

- ενότητα σύνδεσης όπου υπάρχει καλωδίωση για δεδομένα RGB LED Matrix και ισχύ, ενισχυτή ήχου και Raspberry Pi

Δεν αναφέρεται διαχωριστικό αντίστασης τάσης που επιτρέπει στο RPI να διαβάζει σήμα HIGH/LOW 5V από το Attiny85

Οι διακόπτες συνδέονται με ακροδέκτη RPI και GND απευθείας χρησιμοποιώντας εσωτερικές αντιστάσεις

Το χρονόμετρο Attiny85 προέρχεται από το προηγούμενο έργο μου με το όνομα TEMPO. Βασικά, το DS3231 στέλνει LOW σήμα στον ακροδέκτη διακοπής Attiny85 που τον αφυπνίζει από την κατάσταση αναστολής λειτουργίας. Κατά την αφύπνιση, το Attiny85 στέλνει σήμα HIGH στο τρανζίστορ Mosfet, ενεργοποιώντας το κύκλωμα τροφοδοσίας για RPI, LED Matrix και ενισχυτή ήχου (αν δεν είναι συνδεδεμένο με επιπλέον PS μέσω ρελέ, ως τελευταία διαμόρφωση).

Για να τερματίσω το RPI, το σενάριό μου σκέφτεται ότι το ψηφιακό σήμα ακρόασης RPI στον ακροδέκτη 14, όταν είναι Υ HIGHΗΛΟ, ονομάζεται εντολή τερματισμού λειτουργίας. Στη συνέχεια, το RPI εκτελεί μια σωστή διαδικασία απενεργοποίησης και μετά από ένα λεπτό, το Attiny85 επιστρέφει στην κατάσταση αναστολής λειτουργίας και το Mosfet λαμβάνει ένα χαμηλό σήμα που απενεργοποιεί ολόκληρη τη συσκευή. Αυτή η διαδικασία είναι τραχιά αλλά αποτελεσματική.

Η μονάδα PIR είναι προαιρετική και συνδέεται απευθείας με το RPI GPIO.

Η διαμόρφωσή μου απαιτεί τη σύνδεση των ακόλουθων ακίδων GPIO RPI σε:

15 έως PIR

14 έως Attiny85 ακίδα 3 μέσω διαχωριστή τάσης

21 στη μονάδα αναμετάδοσης

2 για εναλλαγή (ENTER BUTTON)

3 για εναλλαγή (ΚΟΥΜΠΙ ΑΛΛΑΓΗΣ ΚΡΑΤΟΥΣ)

Θέματα:

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

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

Βήμα 5: Συναρμολόγηση

Συναρμολόγηση
Συναρμολόγηση
Συναρμολόγηση
Συναρμολόγηση
Συναρμολόγηση
Συναρμολόγηση
Συναρμολόγηση
Συναρμολόγηση

έχω προσαρμόσει ένα γενικό πλαίσιο 40x50cm σε αυτό το έργο μαζί τρισδιάστατα εκτυπωμένα μέρη και μερικά προαιρετικά πρόσθετα.

Το γυαλί προστατεύεται από ηλιακό φιλμ παραθύρου και παγωμένο πλαστικό φύλλο. Η μήτρα led πρέπει να διατηρηθεί περίπου 1 εκατοστό στο γυαλί για να αποφύγετε να δείτε τα λευκά εσωτερικά led. Μικρές βίδες είναι απαραίτητες ως παξιμάδια και μπουλόνια Μ3. Υποχρεωτικά είναι τα καλώδια και η θερμοσκληρυνόμενη θήκη.

Οι μήτρες led βιδώνονται στο πίσω μέρος του πλαισίου.

Βήμα 6: Και τώρα;

Και τώρα ?
Και τώρα ?
Και τώρα ?
Και τώρα ?

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

Αντίο

Διαγωνισμός ρολογιών
Διαγωνισμός ρολογιών
Διαγωνισμός ρολογιών
Διαγωνισμός ρολογιών

Δευτέρα στο διαγωνισμό ρολογιών

Συνιστάται: