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

Μετεωρολογικός σταθμός DIY με οθόνη Nextion και Arduino: 11 βήματα
Μετεωρολογικός σταθμός DIY με οθόνη Nextion και Arduino: 11 βήματα

Βίντεο: Μετεωρολογικός σταθμός DIY με οθόνη Nextion και Arduino: 11 βήματα

Βίντεο: Μετεωρολογικός σταθμός DIY με οθόνη Nextion και Arduino: 11 βήματα
Βίντεο: Arduino TFT LCD οθόνη αφής Tutorial (2.8 "ILI9341 Οδηγός) από Banggood.com 2024, Νοέμβριος
Anonim
Image
Image
Αυτό που θα χρειαστείτε
Αυτό που θα χρειαστείτε

Σε αυτό το σεμινάριο θα χρησιμοποιήσουμε την οθόνη Nextion, τη χρονική μονάδα rtc1307, το Arduino UNO και το Visuino για να εμφανίσουμε την τρέχουσα ώρα, θερμοκρασία και υγρασία.

Δείτε ένα βίντεο επίδειξης.

Βήμα 1: Τι θα χρειαστείτε

Αυτό που θα χρειαστείτε
Αυτό που θα χρειαστείτε
Αυτό που θα χρειαστείτε
Αυτό που θα χρειαστείτε
  • Arduino uno (ή nano, mega ο καθένας μπορεί να χρησιμοποιηθεί)
  • Nextion LCD 2,8 ιντσών nx3224t028_011 (οποιοδήποτε άλλο επόμενο LCD θα λειτουργήσει επίσης)
  • Μονάδα ρολογιού πραγματικού χρόνου I2C RTC DS1307 24C32 για Arduino
  • Καλώδια βραχυκυκλωτήρων
  • Breadboard
  • Πρόγραμμα Visuino: Κατεβάστε το Visuino
  • Πρόγραμμα Nextion Editor: Λήψη εδώ

Βήμα 2: Ανάπτυξη διεπαφής στο Nextion Editor

Ανάπτυξη διεπαφής στο Nextion Editor
Ανάπτυξη διεπαφής στο Nextion Editor
Ανάπτυξη διεπαφής στο Nextion Editor
Ανάπτυξη διεπαφής στο Nextion Editor
Ανάπτυξη διεπαφής στο Nextion Editor
Ανάπτυξη διεπαφής στο Nextion Editor

Πρώτα βεβαιωθείτε ότι η κάρτα SD είναι μορφοποιημένη σε FAT32 (Χρησιμοποιήστε κάποιο λογισμικό όπως μορφοποιητή κάρτας)

  • Ξεκινήστε το λογισμικό Nextion Editor και κάντε κλικ στο "Νέο" και αποθηκεύστε το έργο σας σε κάτι σαν "Καιρός"
  • Στη συνέχεια, θα εμφανιστεί το παράθυρο "Ρυθμίσεις", επιλέξτε τον τύπο οθόνης που έχετε.
  • Θα δημιουργηθεί ένα κενό λευκό φύλλο.
  • Από την Εργαλειοθήκη στα αριστερά σύρετε την εικόνα 3x.
  • Στο αριστερό κάτω μέρος επιλέξτε την καρτέλα "Εικόνα", κάντε κλικ στο κουμπί + και φορτώστε τις εικόνες. Μπορείτε να κατεβάσετε μερικά ωραία εικονίδια από το διαδίκτυο για χρόνο, θερμοκρασία και υγρασία (όπως ο ιστότοπος Iconarchive)
  • Επιλέξτε κάθε στοιχείο εικόνας και στο δεξί κάτω παράθυρο "Χαρακτηριστικό" κάντε διπλό κλικ στο πεδίο "εικόνα" και επιλέξτε την εικόνα, κάντε αυτό για κάθε στοιχείο εικόνας (3x).

Στο μενού κάντε κλικ στο "Εργαλεία> Δημιουργία γραμματοσειρών"

  • Δημιουργήστε τη γραμματοσειρά που θα χρησιμοποιηθεί για την εμφάνιση χρόνου, θερμοκρασίας και υγρασίας και ορίστε το όνομα όπως "MyFont1"
  • Κάντε κλικ στην επιλογή "Δημιουργία γραμματοσειράς" και αποθηκεύστε την κάπου, όταν σας ζητηθεί "Προσθήκη της δημιουργούμενης γραμματοσειράς;" κλικ Ναι.
  • Κλείστε το πλαίσιο διαλόγου και η δημιουργούμενη γραμματοσειρά θα εμφανιστεί στο κάτω μέρος που βρίσκεται στην καρτέλα "Γραμματοσειρές" με το αναγνωριστικό 0
  • Από την Εργαλειοθήκη στα αριστερά σύρετε 3x "κείμενο", τοποθετήστε το εκεί όπου θα εμφανίζονται τα δεδομένα
  • Για κάθε στοιχείο κειμένου που βρίσκεται στο κάτω δεξί παράθυρο "Χαρακτηριστικά", η γραμματοσειρά στο 0 <το αναγνωριστικό της γραμματοσειράς που δημιουργήσατε πριν, μπορείτε να χρησιμοποιήσετε πολλές γραμματοσειρές και να ορίσετε αναγνωριστικό για κάθε στοιχείο κειμένου
  • Μπορείτε να ορίσετε την προεπιλεγμένη τιμή κειμένου στο πεδίο "txt" για παράδειγμα "Timeρα", "C", "%
  • Μπορείτε να ορίσετε το χρώμα κάνοντας κλικ στο πεδίο "pco" Σημειώστε ότι κάθε στοιχείο κειμένου έχει ένα συγκεκριμένο όνομα αντικειμένου όπως "t0" κ.λπ., αυτό αργότερα θα χρησιμοποιηθεί στο Visuino
  • Μπορείτε να βρείτε κάθε όνομα αντικειμένου στο παράθυρο "χαρακτηριστικά"> objname

Όταν τοποθετήσετε και τοποθετήσετε όλα τα στοιχεία:

  • κάντε κλικ στο κουμπί "Μεταγλώττιση"
  • κάντε κλικ στο μενού "Αρχείο"> "Άνοιγμα φακέλου κατασκευής" βρείτε το αρχείο στην περίπτωσή μας "Weather.tft" και αντιγράψτε το στην κάρτα SD.

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

Το Κύκλωμα
Το Κύκλωμα
  • Συνδέστε τον πείρο Arduino [5v] στο breadboard Θετικό πείρο [Κόκκινο]
  • Συνδέστε τον πείρο Arduino [GND] με το breadboard Αρνητικό πείρο [Μπλε]
  • Συνδέστε τον πείρο αισθητήρα DHT11 [-] στον ακροδέκτη Arduino [GND]
  • Συνδέστε τον πείρο αισθητήρα DHT11 [-] στη θετική καρφίτσα του breadboard [Κόκκινο]
  • Συνδέστε τον ακροδέκτη σήματος αισθητήρα DHT11 [S] στον ψηφιακό ακροδέκτη Arduino [7]
  • Συνδέστε τον πείρο μονάδας Time DS1307 [Vcc] στη θετική καρφίτσα του breadboard [Κόκκινο]
  • Συνδέστε τον πείρο μονάδας Time DS1307 [GND] στον αρνητικό πείρο του breadboard [Μπλε]
  • Συνδέστε τον πείρο μονάδας Time DS1307 [SDA] με τον ακροδέκτη Arduino [SDA]
  • Συνδέστε τον πείρο μονάδας Time DS1307 [SCL] με τον ακροδέκτη Arduino [SCL]
  • Συνδέστε τον ακροδέκτη Nextion Display [VCC] στον θετικό πείρο του breadboard [Κόκκινο]
  • Συνδέστε τον ακροδέκτη Nextion Display [GND] στον αρνητικό πείρο του breadboard [Μπλε]
  • Συνδέστε τον ακροδέκτη Nextion Display [RX] στον Arduino pin [TX]
  • Συνδέστε τον ακροδέκτη Nextion Display [TX] στον Arduino pin [RX]

Βήμα 4: Ξεκινήστε το Visuino και επιλέξτε τον τύπο πίνακα Arduino UNO

Ξεκινήστε το Visuino και επιλέξτε τον τύπο πίνακα Arduino UNO
Ξεκινήστε το Visuino και επιλέξτε τον τύπο πίνακα Arduino UNO
Ξεκινήστε το Visuino και επιλέξτε τον τύπο πίνακα Arduino UNO
Ξεκινήστε το Visuino και επιλέξτε τον τύπο πίνακα Arduino UNO

Για να ξεκινήσετε τον προγραμματισμό του Arduino, θα πρέπει να έχετε εγκαταστήσει το Arduino IDE από εδώ:

Λάβετε υπόψη ότι υπάρχουν ορισμένα κρίσιμα σφάλματα στο Arduino IDE 1.6.6. Βεβαιωθείτε ότι έχετε εγκαταστήσει 1.6.7 ή νεότερη έκδοση, διαφορετικά αυτό το Instructable δεν θα λειτουργήσει! Εάν δεν το έχετε κάνει ακολουθήστε τα βήματα σε αυτό το Instructable για να ρυθμίσετε το Arduino IDE για να προγραμματίσετε το Arduino UNO! Το Visuino: https://www.visuino.eu πρέπει επίσης να εγκατασταθεί. Ξεκινήστε το Visuino όπως φαίνεται στην πρώτη εικόνα Κάντε κλικ στο κουμπί "Εργαλεία" στο στοιχείο Arduino (Εικόνα 1) στο Visuino Όταν εμφανιστεί το παράθυρο διαλόγου, επιλέξτε "Arduino UNO" όπως φαίνεται στην Εικόνα 2

Βήμα 5: Στο Visuino Προσθέστε εξαρτήματα

Στο Visuino Προσθέστε εξαρτήματα
Στο Visuino Προσθέστε εξαρτήματα
Στο Visuino Προσθέστε εξαρτήματα
Στο Visuino Προσθέστε εξαρτήματα
Στο Visuino Προσθέστε εξαρτήματα
Στο Visuino Προσθέστε εξαρτήματα
  1. Προσθέστε το στοιχείο "Έναρξη"
  2. Προσθέστε το στοιχείο "Ρολόι πραγματικού χρόνου (RTC) DS 1307"
  3. Προσθέστε το στοιχείο "Γεννήτρια ρολογιού"
  4. Προσθέστε το στοιχείο "Υγρασία και θερμόμετρο DHT11"
  5. Προσθέστε 2x στοιχείο "Αναλογικό στο κείμενο"
  6. Προσθέστε το στοιχείο "Decode (Split) datetime time")
  7. Προσθέστε το στοιχείο "Nextion Display"

Βήμα 6: Στο Visuino Set Components

Στο Visuino Set Components
Στο Visuino Set Components
Στο Visuino Set Components
Στο Visuino Set Components
Στο Visuino Set Components
Στο Visuino Set Components

Κάντε διπλό κλικ στο στοιχείο "RealTimeClock1", θα ανοίξει το παράθυρο στοιχείων και:

  • Σύρετε το "Ορισμός ημέρας" και κάτω από το παράθυρο ιδιοτήτων ορίστε την "Τιμή" στην τρέχουσα ημερομηνία
  • Σύρετε το "Ορισμός έτους" και κάτω από το παράθυρο ιδιοτήτων ορίστε την "Τιμή" στο τρέχον έτος
  • Σύρετε το "Ορισμός μήνα" και κάτω από το παράθυρο ιδιοτήτων ορίστε την "Τιμή" στον τρέχοντα μήνα σας
  • Σύρετε το "Ρύθμιση ώρας" και κάτω από το παράθυρο ιδιοτήτων ορίστε την "Τιμή" στην τρέχουσα ώρα σας
  • Σύρετε το "Ορισμός λεπτού" και κάτω από το παράθυρο ιδιοτήτων ορίστε την "Τιμή" στα τρέχοντα λεπτά σας

Επιλέξτε το στοιχείο "FormattedText1" και κάτω από το παράθυρο ιδιοτήτων ορίστε "κείμενο" σε:%0:%1:%2

Κάντε διπλό κλικ στο στοιχείο "FormattedText1", θα ανοίξει το παράθυρο στοιχείων και:

Σύρετε 3x "Στοιχείο κειμένου" προς τα αριστερά

Κάντε διπλό κλικ στο στοιχείο "DisplayNextion1", θα ανοίξει το παράθυρο στοιχείων και:

Σύρετε 3x στοιχείο "Κείμενο" προς τα αριστερά και για κάθε σύνολο στοιχείων:

  • για το πρώτο στοιχείο ονομάστε το: Time
  • για δεύτερο στοιχείο ονομάστε το: Θερμοκρασία
  • για τρίτο στοιχείο ονομάστε το: Υγρασία
  • Για κάθε στοιχείο ορίστε "Ευρετήριο σελίδων": 0
  • για το σετ πρώτου στοιχείου "Όνομα στοιχείου": t0 (αυτό είναι το όνομα που είναι ορατό στον επεξεργαστή Nextion πάνω από κάθε στοιχείο στην περίπτωσή μου t0 του)
  • για το σετ δεύτερου στοιχείου "Όνομα στοιχείου": t1 (αυτό είναι το όνομα που είναι ορατό στον επεξεργαστή Nextion πάνω από κάθε στοιχείο στην περίπτωσή μου, το t1 του)
  • για το δεύτερο σύνολο στοιχείων "Όνομα στοιχείου": t2 (αυτό είναι το όνομα που είναι ορατό στον επεξεργαστή Nextion πάνω από κάθε στοιχείο στην περίπτωσή μου, το t2 του)

Βήμα 7: Στο Visuino Connect Components

Στο Visuino Connect Components
Στο Visuino Connect Components
  • Συνδέστε το pin "Start1" "Out" με το "RealTimeClock1"> "Set Day1" pin "Clock"
  • Συνδέστε την καρφίτσα "Start1" "Out" στο "RealTimeClock1"> pin "Ρύθμιση ώρας 1" "Ρολόι"
  • Συνδέστε το pin "Start1" "Out" στο "RealTimeClock1"> "Ρύθμιση Year1" pin "Clock"
  • Συνδέστε το pin "Start1" "Out" στο "RealTimeClock1"> pin "Clock" "Set Month1"
  • Συνδέστε το pin "Start1" "Out" στο "RealTimeClock1"> "Ρύθμιση Minute1" pin "Clock"
  • Συνδέστε το pin "RealTimeClock1" [Out] στο pin "DecodeDateTime1" [In]
  • Συνδέστε τον ακροδέκτη συστατικού "RealTimeClock1" [Control] με τον ακροδέκτη I2C της πλακέτας Arduino [In]
  • Συνδέστε τον ακροδέκτη του στοιχείου "ClockGenerator1" [Out] με τον ακροδέκτη "HumidityThermometer1" [Clock]
  • Συνδέστε το στοιχείο "DecodeDateTime1" στο pin [Hour] στο "FormattedText1"> "Textelement1" pin [In]
  • Συνδέστε το στοιχείο "DecodeDateTime1" στο pin [Hour] στο "FormattedText1"> "Textelement2" pin [In]
  • Συνδέστε το στοιχείο "DecodeDateTime1" στο pin [Hour] στο "FormattedText1"> "Textelement3" pin [In]
  • Συνδέστε τον ακροδέκτη "HumidityThermometer1" [Temperature] στον ακροδέκτη του στοιχείου "AnalogToText1" [In]
  • Συνδέστε τον ακροδέκτη συστατικού "HumidityThermometer1" [Υγρασία] στον ακροδέκτη "AnalogToText2" [In]
  • Συνδέστε τον ακροδέκτη "HumidityThermometer1" [Sensor] στον ψηφιακό πείρο της πλακέτας Arduino [7]
  • Συνδέστε τον ακροδέκτη του στοιχείου "FormattedText1" [Out] στο "DisplayNextion1" pin pin Time [In]
  • Συνδέστε τον ακροδέκτη του στοιχείου "AnalogToText1" [Out] στη θερμοκρασία του πείρου "DisplayNextion1" [In]
  • Συνδέστε τον ακροδέκτη συστατικού "AnalogToText2" [Έξω] με τον ακροδέκτη στοιχείου "DisplayNextion1" Υγρασία [Σε]

Συνδέστε την καρφίτσα "DisplayNextion1" [Out] στην καρφίτσα arduino "Serial [0]" [In]

Βήμα 8: Αντιγραφή αρχείου Nextion στην κάρτα SD

Βεβαιωθείτε ότι έχετε το αρχείο Nextion στην κάρτα SD

  • Απενεργοποιήστε την οθόνη Nextion
  • Τοποθετήστε την κάρτα SD στην επόμενη οθόνη
  • Ενεργοποιήστε την οθόνη Nextion και θα δείτε την πρόοδο της ενημέρωσης της οθόνης Nextion
  • Απενεργοποιήστε την οθόνη Nextion
  • Αφαιρέστε την κάρτα SD από την οθόνη Nextion

Τώρα η οθόνη Nextion είναι έτοιμη.

Βήμα 9: Δημιουργία, μεταγλώττιση και μεταφόρτωση του κώδικα Arduino

Δημιουργήστε, μεταγλωττίστε και ανεβάστε τον κώδικα Arduino
Δημιουργήστε, μεταγλωττίστε και ανεβάστε τον κώδικα Arduino
Δημιουργήστε, μεταγλωττίστε και ανεβάστε τον κώδικα Arduino
Δημιουργήστε, μεταγλωττίστε και ανεβάστε τον κώδικα Arduino

Στο Visuino, πατήστε F9 ή κάντε κλικ στο κουμπί που εμφανίζεται στην Εικόνα 1 για να δημιουργήσετε τον κωδικό Arduino και ανοίξτε το Arduino IDE. Στο Arduino IDE, κάντε κλικ στο κουμπί Μεταφόρτωση, για να μεταγλωττίσετε και να ανεβάσετε τον κώδικα (Εικόνα 2) Σημείωση:

Βεβαιωθείτε ότι όταν ανεβάζετε τον κώδικα στο Arduino για αποσύνδεση του pin Arduino [RX] και του Arduino pin [TX] Μετά την ολοκλήρωση της μεταφόρτωσης, συνδέστε ξανά τον ακροδέκτη Arduino [RX] και τον ακροδέκτη Arduino [TX]

Βήμα 10: Παίξτε

Εάν τροφοδοτήσετε τη μονάδα Arduino UNO, η οθόνη θα αρχίσει να εμφανίζει ένα τρέχον επίπεδο θερμοκρασίας και υγρασίας + χρόνο που έχετε ορίσει στο Visuino. Συγχαρητήρια! Ολοκληρώσατε το έργο μετεωρολογικού σταθμού με το Visuino.

Επισυνάπτεται επίσης το έργο Visuino, που δημιούργησα για αυτό το Instructable Μπορείτε να το κατεβάσετε και να το ανοίξετε στο Visuino:

και

Nextion File for Nextion Editor (Weather. HMI) και μεταγλωττισμένο αρχείο Nextion (Weather.tft) που μπορείτε να αντιγράψετε απευθείας στην οθόνη Nextion.

Βήμα 11: Πόροι

Μπορείτε επίσης να ελέγξετε αυτό το καταπληκτικό σεμινάριο για να μάθετε πώς να εργάζεστε με τις Nextion Displays

Συνιστάται: