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

Κάντε το δικό σας συνδεδεμένο θερμοστάτη θέρμανσης και εξοικονομήστε χρήματα με θέρμανση: 53 βήματα (με εικόνες)
Κάντε το δικό σας συνδεδεμένο θερμοστάτη θέρμανσης και εξοικονομήστε χρήματα με θέρμανση: 53 βήματα (με εικόνες)

Βίντεο: Κάντε το δικό σας συνδεδεμένο θερμοστάτη θέρμανσης και εξοικονομήστε χρήματα με θέρμανση: 53 βήματα (με εικόνες)

Βίντεο: Κάντε το δικό σας συνδεδεμένο θερμοστάτη θέρμανσης και εξοικονομήστε χρήματα με θέρμανση: 53 βήματα (με εικόνες)
Βίντεο: Soulsborne και...μονώσεις | GameOver Webcast #571 2024, Ιούλιος
Anonim
Κάντε το δικό σας συνδεδεμένο θερμοστάτη θέρμανσης και εξοικονομήστε χρήματα με θέρμανση
Κάντε το δικό σας συνδεδεμένο θερμοστάτη θέρμανσης και εξοικονομήστε χρήματα με θέρμανση

Ποιος ειναι ο ΣΚΟΠΟΣ?

  • Αυξήστε την άνεση θερμαίνοντας το σπίτι σας ακριβώς όπως θέλετε
  • Κερδίστε οικονομίες και μειώστε τις εκπομπές αερίων θερμοκηπίου θερμαίνοντας το σπίτι σας μόνο όταν το χρειάζεστε
  • Διατηρήστε τον έλεγχο της θέρμανσής σας όπου κι αν βρίσκεστε
  • Να είσαι περήφανος που το έκανες μόνος σου

Βήμα 1: Πώς αυξάνει την άνεσή σας;

Πώς αυξάνει την άνεση σας
Πώς αυξάνει την άνεση σας

Θα ορίσετε 4 διαφορετικές οδηγίες θερμοκρασίας που θα επιλεγούν αυτόματα με βάση το πρόγραμμά σας.

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

Επιστρέψτε στο σπίτι νωρίτερα σήμερα, χρησιμοποιήστε το τηλέφωνό σας για να προβλέψετε την έναρξη της θέρμανσής σας

Το σύστημα θα προσφέρει μια πολύ σταθερή θερμοκρασία που θα ταιριάζει ακριβώς με τις ανάγκες σας.

Βήμα 2: Πώς θα εξοικονομήσετε και θα μειώσετε τις εκπομπές αερίων του θερμοκηπίου;

Πώς θα εξοικονομήσετε και θα μειώσετε τις εκπομπές αερίων του θερμοκηπίου
Πώς θα εξοικονομήσετε και θα μειώσετε τις εκπομπές αερίων του θερμοκηπίου

Γνωρίζοντας το πρόγραμμά σας, το σύστημα θα θερμανθεί μόνο όταν το χρειάζεστε.

Το σύστημα θα λάβει υπόψη την εξωτερική θερμοκρασία για τη βελτιστοποίηση της θέρμανσης.

Επιστρέψτε στο σπίτι αργότερα σήμερα, χρησιμοποιήστε το τηλέφωνό σας για να αναβάλλετε την έναρξη της θέρμανσής σας.

Θα μπορείτε να ρυθμίσετε το σύστημα ώστε να ταιριάζει με τον εξοπλισμό σας.

Βήμα 3: Πώς θα ελέγξετε τη θέρμανσή σας όπου κι αν βρίσκεστε;

Πώς θα ελέγξετε τη θέρμανσή σας όπου κι αν βρίσκεστε
Πώς θα ελέγξετε τη θέρμανσή σας όπου κι αν βρίσκεστε

Το σύστημα είναι συνδεδεμένο WIFI. Θα χρησιμοποιήσετε το φορητό υπολογιστή σας για να ρυθμίσετε, να συντονίσετε και να ενημερώσετε το πρόγραμμα του συστήματός σας.

Εκτός σπιτιού, θα χρησιμοποιήσετε το τηλέφωνό σας για να προβλέψετε ή να αναβάλλετε την έναρξη της θέρμανσής σας

Βήμα 4: Έλεγχος θερμοκρασίας

Ελεγχος θερμοκρασίας
Ελεγχος θερμοκρασίας

Ένας ελεγκτής PID χρησιμοποιείται για τη ρύθμιση της θέρμανσης.

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

Οι παράμετροι PID μπορούν να προσαρμοστούν στο περιβάλλον σας (ανατρέξτε στη ρύθμιση της τεκμηρίωσης του συστήματος).

Βήμα 5: Ελεγκτής οδηγιών

Ελεγκτής οδηγιών
Ελεγκτής οδηγιών

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

Αυτός ο κανονισμός μπορεί να προσαρμοστεί στις ανάγκες σας με την παράμετρο "αντιδραστικότητα" που μπορείτε να τροποποιήσετε.

Βήμα 6: Το χρονοδιάγραμμα

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

Η θερμοκρασία πρέπει να επιλεγεί μεταξύ των 4 αναφορών.

Πρέπει να ορίζεται μία οδηγία για κάθε μισή ώρα του προγράμματος.

Μπορείτε να ορίσετε ένα εβδομαδιαίο πρόγραμμα και 2 ημερήσια.

Βήμα 7: Επισκόπηση αρχιτεκτονικής

Επισκόπηση αρχιτεκτονικής
Επισκόπηση αρχιτεκτονικής

Ρίξτε μια ματιά στην παγκόσμια αρχιτεκτονική

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

Βήμα 8: Επισκόπηση μικροελεγκτών

Επισκόπηση μικροελεγκτών
Επισκόπηση μικροελεγκτών

Το κεντρικό σύστημα λειτουργεί με μικροελεγκτή Atmel ATmega.

Μετά τη λήψη του κώδικα και τις παραμέτρους και το συγχρονισμό του ρολογιού, μπορεί να τρέξει 100% αυτόνομα.

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

Ένας μικροελεγκτής ESP8266 εκτελεί τον κωδικό πύλης για τη μετατροπή σειριακής σύνδεσης σε σύνδεση WIFI.

Οι παράμετροι γράφονται αρχικά στο eeprom και μπορούν να τροποποιηθούν και να αποθηκευτούν από απόσταση.

Βήμα 9: Επισκόπηση σύνδεσης δικτύου

Επισκόπηση σύνδεσης δικτύου
Επισκόπηση σύνδεσης δικτύου

Η σύνδεση δικτύου πραγματοποιείται με μικροελεγκτή ESP8266 WIFI. Είναι ακριβώς το ίδιο με την περιγραφή της Gateway "Εκπαιδευτικά". Ωστόσο, έχουν γίνει οι ακόλουθες αλλαγές από αυτήν την περιγραφή: ορισμένα άχρηστα GPIO για αυτό το έργο δεν χρησιμοποιούνται και τα Arduino και ESP8266 συγκολλούνται στο ίδιο PCB.

Βήμα 10: Επισκόπηση διακομιστή

Επισκόπηση διακομιστή
Επισκόπηση διακομιστή

Η Java εκτελεί το τμήμα διακομιστή του συστήματος. Τα HMI χρησιμοποιούν TOMCAT. Η MySQL είναι η βάση δεδομένων.

Βήμα 11: Λίστα μερών

Θα χρειαστείτε αυτά τα κύρια συστατικά

2 x μικροελεγκτές

· 1 x Arduino - επέλεξα ένα Nano 3.0 - μπορείτε να βρείτε μερικά περίπου 2,5 $ (Aliexpress)

· 1 x ESP8266 - επέλεξα -ESP8266 -DEV Olimex - στα 5,5 €

1 x αισθητήρας θερμοκρασίας DS1820

· Επέλεξα ένα αδιάβροχο - μπορείτε να πάρετε 5 με 9 € (Amazon)

1 x μονάδα διπλού ρελέ (εντολή 0)

· Επέλεξα το SONGLE SRD -05VDC - μπορείτε να το βρείτε στα 1,5 € (Amazon)

1 x I2C LCD 2x16 χαρακτήρες

Είχα ήδη ένα - μπορείτε να βρείτε μερικά για λιγότερο από 4 $ (Aliexpress)

1 x μονάδα πραγματικού χρόνου I2C DS1307 με μπαταρία CR2032

· Είχα ήδη ένα - μπορείτε να βρείτε μερικά για λιγότερο από 4 $ (Aliexpress)

μπορείτε να βρείτε για λίγα ευρώ

1 x δέκτης υπερύθρων

· Επέλεξα το AX-1838HS μπορείτε να βρείτε 5 με 4 €

1 x FTDI

1 x τηλεχειριστήριο IR (μπορείτε να αγοράσετε ένα ειδικό ή να χρησιμοποιήσετε την τηλεόρασή σας)

2 x ρυθμιστές ισχύος (3.3v & 5v)

· Επέλεξα I x LM1086 3.3v & 1 x L7850CV 5v

Και λίγα πράγματα

5 x LED

9 x 1K αντιστάσεις

1 x 2.2K αντίσταση

1 x 4.7K αντίσταση

1 κεραμικός πυκνωτής 100microF

Κεραμικός πυκνωτής 1 x 330 microF

2 x 1 πυκνωτής microF tentalum

2 x τρανζίστορ NPN

4 x Δίοδοι

2 PCB breadboard

2 διακόπτες 3 ακίδων

Μερικοί σύνδεσμοι και καλώδια

Φυσικά χρειάζεστε κολλητήρι και κασσίτερο.

Βήμα 12: Δημιουργήστε τις πηγές ενέργειας

Δημιουργήστε τις πηγές ενέργειας
Δημιουργήστε τις πηγές ενέργειας

Αυτό το καταπληκτικό αρχείο περιγράφει τι πρέπει να κάνετε.

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

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

Ελέγξτε ότι παρέχει σταθερά 5v και 3,3v ακόμη και με φορτίο (αντιστάσεις 100 ohms για παράδειγμα).

Μπορείτε τώρα να κολλήσετε όλα τα εξαρτήματα σε ένα PCB σανίδων όπως παρακάτω

Βήμα 13: Προετοιμάστε το ESP8266

Προετοιμάστε το ESP8266
Προετοιμάστε το ESP8266

Συνδέστε το ESP8266 σε μια σανίδα για πιο εύκολη συγκόλληση από κάτω

Βήμα 14: Δημιουργήστε τα Ηλεκτρονικά

Φτιάξτε τα Ηλεκτρονικά
Φτιάξτε τα Ηλεκτρονικά

Αναπαράγετε την αναφορά Fritzing.

Προτείνω ανεπιφύλακτα να αρχίσετε να κατασκευάζετε τα ηλεκτρονικά με ένα breadboard.

Βάλτε όλα τα μέρη μαζί στο breadboard.

Συνδέστε προσεκτικά τις πηγές τροφοδοσίας

Ελέγξτε τις λυχνίες LED ισχύος στα Arduino και ESP8266.

Η οθόνη LCD πρέπει να ανάψει.

Βήμα 15: Let's Do With the Gateway Configuration

Let's Do With the Gateway Configuration
Let's Do With the Gateway Configuration

Συνδέστε το USB FTDI στον σταθμό ανάπτυξης.

Ρυθμίστε τον διακόπτη σειριακής σύνδεσης για να συνδέσετε το ESP8266 στο FTDI ως εξής

Βήμα 16: Προετοιμαστείτε για λήψη του κώδικα πύλης

Ξεκινήστε το Arduino στο σταθμό εργασίας σας.

Χρειάζεστε ESP8266 για να είστε γνωστός ως πίνακας από το IDE.

Επιλέξτε τη θύρα USB και την κατάλληλη πλακέτα με το μενού Εργαλεία / πίνακες.

Εάν δεν βλέπετε κανένα ESP266 στη λίστα, αυτό σημαίνει ότι ίσως χρειαστεί να εγκαταστήσετε το ESP8266 Arduino Addon (μπορείτε να βρείτε εδώ τη διαδικασία).

Όλος ο κώδικας που χρειάζεστε είναι διαθέσιμος στο GitHub. Ρθε η ώρα να το κατεβάσετε!

Ο κύριος κωδικός της πύλης είναι εκεί:

github.com/cuillerj/Esp8266UdpSerialGatewa…

Εκτός από τα τυπικά Arduino και ESP8266 περιλαμβάνει την κύρια ανάγκη κώδικα, αυτά τα 2 περιλαμβάνουν:

LookFoString που χρησιμοποιείται για χειρισμό συμβολοσειρών και είναι εκεί:

Το ManageParamEeprom που χρησιμοποιείται για την ανάγνωση και την αποθήκευση παραμέτρων στο Eeprom ans είναι εκεί:

Μόλις λάβετε όλο τον κωδικό, ήρθε η ώρα να τον ανεβάσετε στο ESP8266.

Συνδέστε πρώτα το FTDI σε μια θύρα USB του υπολογιστή σας.

Προτείνω να ελέγξετε τη σύνδεση πριν προσπαθήσετε να ανεβάσετε.

  • · Ρυθμίστε τη σειριακή οθόνη Arduino στη νέα θύρα USB.
  • · Ρυθμίστε την ταχύτητα στα 115200 και τα δύο cr nl (defaut speed for Olimex)
  • · Ενεργοποιήστε το breadboard (το ESP8266 συνοδεύεται από λογισμικό που ασχολείται με εντολές AT)
  • · Αποστολή "AT" με το σειριακό εργαλείο.
  • · Πρέπει να λάβετε "OK" σε αντάλλαγμα.

Εάν όχι, ελέγξτε τη σύνδεσή σας και δείτε τις προδιαγραφές ESP8266.

Εάν έχετε "ΟΚ", είστε έτοιμοι να ανεβάσετε τον κωδικό

Βήμα 17: Κατεβάστε τον κωδικό πύλης 1/2

Κατεβάστε τον Κωδικό Πύλης 1/2
Κατεβάστε τον Κωδικό Πύλης 1/2

·

  • Απενεργοποιήστε το breadboard, περιμένετε μερικά δευτερόλεπτα,
  • Πιέστε το κουμπί του breadboard και ενεργοποιήστε το
  • Αφήστε το κουμπί πίεσης Είναι φυσιολογικό να παίρνετε λίγα σκουπίδια στη σειριακή οθόνη.
  • Πατήστε το IDE μεταφόρτωσης όπως για ένα Arduino.
  • Μετά την ολοκλήρωση της μεταφόρτωσης, ορίστε την σειριακή ταχύτητα σε 38400.

Βήμα 18: Κατεβάστε τον κωδικό πύλης 2/2

Κατεβάστε τον κωδικό πύλης 2/2
Κατεβάστε τον κωδικό πύλης 2/2

Θα δείτε κάτι όπως στην εικόνα.

Συγχαρητήρια ανεβάσατε με επιτυχία τον κωδικό!

Βήμα 19: Ορίστε τις δικές σας παραμέτρους πύλης

Ορίστε τις δικές σας παραμέτρους πύλης
Ορίστε τις δικές σας παραμέτρους πύλης

Κρατήστε ανοιχτό το Serial Monitor (ταχύτητα 38400) του IDE

  • Απενεργοποιήστε το breadboard, περιμένετε μερικά δευτερόλεπτα
  • Χρησιμοποιήστε το διακόπτη για να ρυθμίσετε το configGPIO σε 1 (3.3v)
  • Σαρώστε το WIFI εισάγοντας την εντολή:
  • ScanWifi. Θα δείτε μια λίστα με το δίκτυο που εντοπίστηκε.
  • Στη συνέχεια, ορίστε το SSID σας εισάγοντας "SSID1 = το δίκτυό σας
  • Στη συνέχεια, ορίστε τον κωδικό πρόσβασής σας εισάγοντας "PSW1 = το κωδικό πρόσβασής σας
  • Στη συνέχεια, πληκτρολογήστε "SSID = 1" για να ορίσετε το τρέχον δίκτυο
  • Εισαγάγετε "Επανεκκίνηση" για να συνδέσετε την Πύλη στο WIFI σας.

Μπορείτε να επαληθεύσετε ότι έχετε λάβει IP εισάγοντας "ShowWifi".

Το μπλε LED θα ανάψει και το κόκκινο θα αναβοσβήνει

It'sρθε η ώρα να ορίσετε τη διεύθυνση διακομιστή IP σας εισάγοντας τις 4 δευτερεύουσες διευθύνσεις (διακομιστής που θα εκτελέσει τον κώδικα δοκιμής Java). Για παράδειγμα, για IP = 192.168.1.10 πληκτρολογήστε:

  • "IP1 = 192"
  • "IP2 = 168"
  • "IP3 = 1"
  • "IP4 = 10"

Ορίστε τις θύρες IP ως:

  • · RoutePort = 1840 (ή αλλιώς σύμφωνα με τη διαμόρφωση της εφαρμογής σας, ανατρέξτε στον "Οδηγό εγκατάστασης διακομιστή")

    Εισαγάγετε το "ShowEeprom" για να ελέγξετε τι αποθηκεύσατε μόλις στο Eeprom

    Τώρα ρυθμίστε το GPIO2 στη γείωση για έξοδο από τη λειτουργία διαμόρφωσης (χρησιμοποιήστε το διακόπτη για να το κάνετε αυτό)

    Το Gateway σας είναι έτοιμο να λειτουργήσει!

    Το μπλε LED πρέπει να ανάψει μόλις συνδεθεί η πύλη στο WIFI σας.

    Υπάρχουν μερικές άλλες εντολές που μπορείτε να βρείτε στην τεκμηρίωση της πύλης.

  • Ορίστε τη διεύθυνση IP ESP8266 ως μόνιμη στο DNS σας

Βήμα 20: Προετοιμάστε τη σύνδεση Arduino

Προετοιμάστε τη σύνδεση Arduino
Προετοιμάστε τη σύνδεση Arduino

Πρώτον, αποσυνδέστε τους συνδέσμους σειριακής σύνδεσης για να αποφύγετε τη διένεξη USB.

Βήμα 21: Ας κάνουμε μερικές δοκιμές

Πριν εργαστείτε με τον κωδικό θερμοστάτη, ας κάνουμε μερικές δοκιμές με τις παραδείγματα πηγών IDE

Συνδέστε το USB Arduino στο σταθμό εργασίας σας.

Επιλέξτε Serial Port, ρυθμίστε την ταχύτητα σε 9600 και ορίστε τον τύπο της κάρτας σε Nano.

Ελέγξτε τον αισθητήρα θερμοκρασίας

Ανοίξτε αρχεία / παραδείγματα / Max31850Onewire / DS18x20_Temperature και τροποποιήστε το OneWire ds (8). (8 αντί για 10).

Ανεβάστε και ελέγξτε ότι λειτουργεί. Σε περίπτωση που δεν ελέγξετε τις συνδέσεις DS1820.

Ελέγξτε το ρολόι

Ανοίξτε το πρόγραμμα Αρχεία / παραδείγματα / DS1307RTC / setTime

Ανεβάστε τον κωδικό και ελέγξτε ότι έχετε την κατάλληλη στιγμή.

Ελέγξτε την οθόνη LCD

Άνοιγμα προγράμματος αρχείων / παραδειγμάτων / υγρού κρυστάλλου / HelloWorld

Ανεβάστε τον κωδικό και ελέγξτε ότι λαμβάνετε το μήνυμα.

Ελέγξτε το τηλεχειριστήριο

Ανοίξτε το πρόγραμμα Αρχεία / παραδείγματα / ArduinoIRremotemaster / IRrecvDemo

Τροποποιήστε το PIN σε 4 - ανεβάστε τον κωδικό

Χρησιμοποιήστε το τηλεχειριστήριό σας και ελέγξτε ότι λαμβάνετε τον κωδικό IRs στην οθόνη.

Itρθε η ώρα να επιλέξετε το τηλεχειριστήριο 8 διαφορετικά πλήκτρα που θέλετε να χρησιμοποιήσετε όπως παρακάτω:

  • · Αύξηση της οδηγίας θερμοκρασίας
  • · Μείωση της οδηγίας θερμοκρασίας
  • · Απενεργοποιήστε τον θερμοστάτη
  • · Επιλέξτε τη λειτουργία ατζέντας της εβδομάδας
  • · Επιλέξτε τη λειτουργία ατζέντας της πρώτης ημέρας
  • · Επιλέξτε τη λειτουργία ατζέντας της δεύτερης ημέρας
  • · Επιλέξτε τη λειτουργία μη κατάψυξης
  • · Ενεργοποίηση/απενεργοποίηση της πύλης WIFI

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

Βήμα 22: Ελέγξτε τη σύνδεση δικτύου

Ελέγξτε τη σύνδεση δικτύου
Ελέγξτε τη σύνδεση δικτύου

Για να ελέγξετε καλύτερα τη δουλειά σας είναι να χρησιμοποιήσετε τα παραδείγματα Arduino και Java.

Arduino

Μπορείτε να το κατεβάσετε από εκεί:

Περιλαμβάνει βιβλιοθήκη SerialNetwork που είναι εδώ:

Απλώς ανεβάστε τον κώδικα μέσα στο Arduino σας.

Υπηρέτης

Το παράδειγμα του διακομιστή είναι ένα πρόγραμμα Java που μπορείτε να κατεβάσετε εδώ:

Απλά τρέξτε το

Κοιτάξτε την κονσόλα Java.

Κοιτάξτε την οθόνη Arduino.

Το Arduino στέλνει 2 διαφορετικά πακέτα.

· Το πρώτο περιέχει την κατάσταση των ψηφιακών ακίδων 2 έως 6.

· Η δεύτερη περιέχει 2 τυχαίες τιμές, το επίπεδο τάσης A0 σε mV και τον αυξανόμενο αριθμό.

Το πρόγραμμα Java

· Εκτύπωση των ληφθέντων δεδομένων σε δεκαεξαδική μορφή

· Απάντηση στο πρώτο είδος δεδομένων με τυχαία τιμή ενεργοποίησης/απενεργοποίησης για ενεργοποίηση/απενεργοποίηση του LED Arduino

· Απάντηση στο δεύτερο είδος δεδομένων με τον αριθμό που λαμβάνεται και μια τυχαία τιμή.

Πρέπει να δείτε κάτι σαν παραπάνω.

Είστε τώρα έτοιμοι να εργαστείτε στον κωδικό θερμοστάτη

Βήμα 23: Προετοιμάστε το Arduino

Προετοιμάστε το Arduino
Προετοιμάστε το Arduino

Συνδέστε το USB Arduino στο σταθμό εργασίας σας.

Ρυθμίστε την ταχύτητα στα 38400.

Πρέπει να θέσουμε το Arduino σε λειτουργία διαμόρφωσης

Συνδέστε μια υποδοχή στο ICSP, έτσι ώστε το GPIO 11 να έχει οριστεί σε 1 (5v)

Βήμα 24: Λήψη κώδικα Arduino

Οι πηγές θερμοστάτη είναι διαθέσιμες στο GitHub

Κατεβάστε πρώτα αυτήν τη βιβλιοθήκη και αντιγράψτε αρχεία στη συνήθη βιβλιοθήκη σας.

Στη συνέχεια, κατεβάστε αυτές τις πηγές και αντιγράψτε αρχεία στον συνηθισμένο φάκελο πηγών Arduino.

Ανοίξτε το Thermosat.ico και μεταγλωττίστε και ελέγξτε ότι δεν λαμβάνετε σφάλματα

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

Το Arduino θα ξεκινήσει αυτόματα.

Περιμένετε το μήνυμα "end init eeprom".

Οι τιμές της προεπιλεγμένης παραμέτρου γράφονται τώρα στο eeprom.

Βήμα 25: Επανεκκινήστε το Arduino

Επανεκκινήστε το Arduino
Επανεκκινήστε το Arduino

Το arduino έχει προετοιμαστεί και πρέπει να ρυθμιστεί σε κατάσταση λειτουργίας πριν από την επανεκκίνηση

Συνδέστε το σύνδεσμο στο ICSP έτσι ώστε το GPIO 11 να έχει οριστεί στο 0 (γείωση) για να ρυθμίσετε το Arduino σε κατάσταση λειτουργίας.

Επαναφέρετε το Arduino.

Πρέπει να δείτε την ώρα στην οθόνη LCD και η κίτρινη λυχνία LED πρέπει να είναι αναμμένη. (Θα δείτε 0: 0 εάν το ρολόι δεν έχει συγχρονιστεί ή χάσει χρόνος (τροφοδοτείται και δεν έχει μπαταρία)).

Βήμα 26: Ελέγξτε την οθόνη LCD

Ελέγξτε την οθόνη LCD
Ελέγξτε την οθόνη LCD

Εναλλακτικά θα δείτε 3 διαφορετικές οθόνες.

Συνηθισμένο στην οθόνη 1 & 2:

  • στα αριστερά της κορυφής: ο πραγματικός χρόνος
  • στα αριστερά του κάτω μέρους: η πραγματική οδηγία θερμοκρασίας
  • στη μέση του πυθμένα η: πραγματική εσωτερική θερμοκρασία (DS1820)

Οθόνη 1:

στη μέση της κορυφής: πραγματική λειτουργία λειτουργίας

Οθόνη 2:

  • στη μέση της κορυφής: πραγματική ημέρα της εβδομάδας
  • στα δεξιά της κορυφής: αριθμοί ημέρας & μήνα

Το 3ο περιγράφεται στον οδηγό συντήρησης.

Βήμα 27: Δοκιμή ρελέ

Δοκιμάστε το ρελέ Gateway

Σε αυτό το στάδιο πρέπει να είστε συνδεδεμένοι με WIFI και να ανάψει το μπλε LED.

Πατήστε το πλήκτρο του τηλεχειριστηρίου που επιλέξατε για ενεργοποίηση/απενεργοποίηση της πύλης WIFI. Το ρελέ πρέπει να απενεργοποιήσει το ESP8266 και το μπλε LED.

Περιμένετε μερικά δευτερόλεπτα και πατήστε ξανά το πλήκτρο του τηλεχειριστηρίου. Η πύλη WIFI πρέπει να είναι ενεργοποιημένη.

Μέσα σε ένα λεπτό η πύλη πρέπει να συνδεθεί και το μπλε LED πρέπει να ανάψει.

Δοκιμάστε το ρελέ του λέβητα

Πρώτα κοιτάξτε το κόκκινο LED. Εάν η θερμοκρασία είναι πολύ υψηλότερη από την εσωτερική θερμοκρασία, το LED πρέπει να ανάψει. Χρειάζονται λίγα λεπτά μετά την εκκίνηση για να πάρει το Arduino αρκετά δεδομένα για να αποφασίσει αν θα ζεσταθεί ή όχι.

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

Εάν η κόκκινη λυχνία LED είναι σβηστή, αυξήστε την οδηγία θερμοκρασίας για να την ρυθμίσετε χαμηλά κάτω από την εσωτερική θερμοκρασία. Μέσα σε λίγα δευτερόλεπτα πρέπει να ανάψει το ρελέ και να ανάψει η κόκκινη λυχνία LED.

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

Αυτό είναι το τέλος της δουλειάς στο breadboard.

Βήμα 28: Συγκολλήστε το τροφοδοτικό 1/4

Συγκολλήστε το τροφοδοτικό 1/4
Συγκολλήστε το τροφοδοτικό 1/4

Προτείνω να χρησιμοποιήσετε 2 διαφορετικά PCB: ένα για το τροφοδοτικό και ένα για τους μικροελεγκτές.

Θα χρειαστείτε συνδέσεις για?

· 2 για τροφοδοσία εισόδου 9v

· 1 για έξοδο +9v

· 1 για έξοδο +3.3v (έκανα 2)

· 2 για έξοδο +5v (έκανα 3)

· 2 για εντολή ρελέ

· 2 για ισχύ ρελέ

Βήμα 29: Συγκολλήστε το τροφοδοτικό 2/4

Συγκολλήστε το τροφοδοτικό 2/4
Συγκολλήστε το τροφοδοτικό 2/4

Εδώ είναι το σχήμα Frizting που πρέπει να ακολουθήσετε!

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 30: Συγκολλήστε το τροφοδοτικό 3/4

Συγκολλήστε το τροφοδοτικό 3/4
Συγκολλήστε το τροφοδοτικό 3/4

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 31: Συγκολλήστε το τροφοδοτικό 4/4

Συγκολλήστε το τροφοδοτικό 4/4
Συγκολλήστε το τροφοδοτικό 4/4

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 32: Κολλήστε τους μικροελεγκτές στο PCB 1/7

Συγκολλήστε τους μικροελεγκτές στο PCB 1/7
Συγκολλήστε τους μικροελεγκτές στο PCB 1/7

Προτείνω να μην κολλήσετε το Arduino και το ESP8266 απευθείας στο PCB

Αντ 'αυτού, χρησιμοποιήστε συνδέσμους όπως παρακάτω για να μπορείτε να αντικαταστήσετε εύκολα τους μικροελεγκτές

Βήμα 33: Κολλήστε τους μικροελεγκτές στο PCB 2/7

Συγκολλήστε τους μικροελεγκτές στο PCB 2/7
Συγκολλήστε τους μικροελεγκτές στο PCB 2/7

Θα χρειαστείτε συνδετήρες για:

  • 3 x +5v (έκανα ένα ανταλλακτικό)
  • 6 x γείωση
  • 3 x για DS1820
  • 3 x για LED
  • 1 x δέκτης IR
  • 2 x για εντολή ρελέ
  • 4 x για το δίαυλο I2C

Εδώ είναι το σχήμα Frizting που πρέπει να ακολουθήσετε!

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 34: Κολλήστε τους μικροελεγκτές στο PCB 3/7

Συγκολλήστε τους μικροελεγκτές στο PCB 3/7
Συγκολλήστε τους μικροελεγκτές στο PCB 3/7

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 35: Κολλήστε τους μικροελεγκτές στο PCB 4/7

Συγκολλήστε τους μικροελεγκτές στο PCB 4/7
Συγκολλήστε τους μικροελεγκτές στο PCB 4/7

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 36: Κολλήστε τους μικροελεγκτές στο PCB 5/7

Συγκολλήστε τους μικροελεγκτές στο PCB 5/7
Συγκολλήστε τους μικροελεγκτές στο PCB 5/7

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 37: Κολλήστε τους μικροελεγκτές στο PCB 6/7

Συγκολλήστε τους μικροελεγκτές στο PCB 6/7
Συγκολλήστε τους μικροελεγκτές στο PCB 6/7

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 38: Κολλήστε τους μικροελεγκτές στο PCB 7/7

Συγκολλήστε τους μικροελεγκτές στο PCB 7/7
Συγκολλήστε τους μικροελεγκτές στο PCB 7/7

Μπορείτε να δείτε παραπάνω τους αριθμούς εξαρτημάτων σύμφωνα με το μοντέλο Fritzing.

Βήμα 39: Συνδέστε και ελέγξτε εντελώς πριν τοποθετήσετε στο κουτί

Συνδέστε και ελέγξτε εντελώς πριν τοποθετήσετε στο κουτί
Συνδέστε και ελέγξτε εντελώς πριν τοποθετήσετε στο κουτί

Βήμα 40: Βιδώστε τα PCB σε ένα κομμάτι ξύλο

Βιδώστε τα PCB σε ένα κομμάτι ξύλο
Βιδώστε τα PCB σε ένα κομμάτι ξύλο

Βήμα 41: Let's Do the Wooden Cover Box

Let's Do the Wooden Cover Box
Let's Do the Wooden Cover Box

Βήμα 42: Βάλτε τα όλα στο κουτί

Βάλτε τα όλα στο κουτί
Βάλτε τα όλα στο κουτί

Βήμα 43: Δημιουργία έργου κώδικα διακομιστή

Ξεκινήστε το περιβάλλον IDE

Κατεβάστε τις πηγές παρτίδων από το GitHub

Κατεβάστε τις πηγές J2EE από το GitHub

Ξεκινήστε το Java IDE (Eclipse για παράδειγμα)

Δημιουργία έργου Java "ThermostatRuntime"

Εισαγάγετε τις πηγές παρτίδων που έχουν ληφθεί

Δημιουργήστε ένα έργο J2EE (Dynamic Web Project for Eclipse) "ThermostatPackage"

Εισαγάγετε τις ληφθείσες πηγές J2EE

Βήμα 44: Ορίστε τη σύνδεσή σας SQL

Δημιουργήστε μια τάξη "GelSqlConnection" τόσο στο έργο Java όσο και στο J2EE

Αντιγράψτε και περάστε το περιεχόμενο GetSqlConnectionExample.java.

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

Αποθήκευση GelSqlConnection.java

Αντιγράψτε και περάστε το GelSqlConnection.java στο έργο ThermostatRuntime

Βήμα 45: Δημιουργήστε τους πίνακες βάσεων δεδομένων

Δημιουργήστε τους παρακάτω πίνακες

Χρησιμοποιήστε το Sql script για να δημιουργήσετε πίνακα indDesc

Χρησιμοποιήστε το Sql script για να δημιουργήσετε πίνακα indValue

Χρησιμοποιήστε το Sql script για να δημιουργήσετε πίνακα σταθμών

Αρχικοποίηση πινάκων

Λήψη αρχείου loadStations.csv

ανοίξτε το αρχείο csv

τροποποιήστε το st_IP για να ταιριάζει με τη διαμόρφωση του δικτύου σας.

  • η πρώτη διεύθυνση είναι η Θερμοστάτης
  • ο δεύτερος Θερμοστάτης είναι ο διακομιστής

αποθηκεύστε και φορτώστε τον πίνακα σταθμών με αυτό το csv

Λήψη loadIndesc.csv

φορτώστε τον πίνακα ind_desc με αυτό το csv

Βήμα 46: Ορίστε τον έλεγχο πρόσβασης

Ορισμός ελέγχου πρόσβασης
Ορισμός ελέγχου πρόσβασης

Μπορείτε να κάνετε όποιο στοιχείο ελέγχου θέλετε τροποποιώντας τον κώδικα "ValidUser.java" ώστε να ταιριάζει στις ανάγκες ασφαλείας σας.

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

Βήμα 47: Προαιρετικό

Εξωτερική θερμοκρασία

Χρησιμοποιώ αυτό το API πρόγνωσης καιρού για να λάβω πληροφορίες για την τοποθεσία μου και λειτουργεί αρκετά καλά. Ένα κέλυφος με curl ωριαία εξάγει τη θερμοκρασία και αποθηκεύεται στη βάση δεδομένων. Μπορείτε να προσαρμόσετε τον τρόπο με τον οποίο θα λάβετε την εξωτερική θερμοκρασία τροποποιώντας τον κώδικα "KeepUpToDateMeteo.java".

Ασφάλεια στο σπίτι

Συνδέθηκα με το σύστημα ασφαλείας του σπιτιού μου με τον Θερμοστάτη για να μειώσω αυτόματα τις οδηγίες θερμοκρασίας όταν φεύγω από το σπίτι. Μπορείτε να κάνετε κάτι παρόμοιο με το πεδίο "securityOn" στη βάση δεδομένων.

Θερμοκρασία νερού λέβητα

Παρακολουθώ ήδη τη θερμοκρασία του νερού του λέβητα μέσα και έξω με ένα Arduino και 2 αισθητήρες DS1820, οπότε πρόσθεσα πληροφορίες στο WEB HMI.

Βήμα 48: Ξεκινήστε τον Κώδικα χρόνου εκτέλεσης

Ξεκινήστε τον Κώδικα χρόνου εκτέλεσης
Ξεκινήστε τον Κώδικα χρόνου εκτέλεσης

Εξαγάγετε το έργο ThermostatRuntime ως αρχείο jar

Εκτός αν θέλετε να τροποποιήσετε τις θύρες UDP, ξεκινήστε τις παρτίδες με την εντολή:

java -cp $ CLASSPATH ThermostatDispatcher 1840 1841

Το CLASSPATH πρέπει να περιέχει πρόσβαση στο αρχείο jar και στο σύνδεσμο mysql.

Πρέπει να δείτε κάτι σαν παραπάνω στο ημερολόγιο.

Προσθέστε μια καταχώριση στο crontable για να ξεκινήσετε κατά την επανεκκίνηση

Βήμα 49: Ξεκινήστε την εφαρμογή J2EE

Ξεκινήστε την εφαρμογή J2EE
Ξεκινήστε την εφαρμογή J2EE

Εξαγωγή του πακέτου ThermostatPackage ως WAR.

Αναπτύξτε τον πόλεμο με τον διευθυντή Tomcat

Δοκιμάστε την εφαρμογή youserver: port/Thermostat/ShowThermostat? Station = 1

Πρέπει να δείτε κάτι σαν παραπάνω

Βήμα 50: Συγχρονίστε τον θερμοστάτη και τον διακομιστή

Συγχρονίστε τον θερμοστάτη και τον διακομιστή
Συγχρονίστε τον θερμοστάτη και τον διακομιστή

Χρησιμοποιήστε το μενού εντολών του HMI για να κάνετε τα ακόλουθα βήματα

· Θερμοκρασίες μεταφόρτωσης

· Μεταφόρτωση μητρώων

· Πρόγραμμα μεταφόρτωσης

· Γράψτε eeprom / επιλέξτε Όλα

Βήμα 51: Συνδέστε το Θερμοστάτη στον λέβητα

Συνδέστε το Θερμοστάτη στον λέβητα
Συνδέστε το Θερμοστάτη στον λέβητα

Διαβάστε προσεκτικά τις οδηγίες του λέβητα. Προσέξτε την υψηλή τάση.

Ο θερμοστάτης πρέπει να συνδεθεί σε απλή επαφή με καλώδιο 2 καλωδίων.

Βήμα 52: Απολαύστε το σύστημα ελέγχου θέρμανσης

Είστε έτοιμοι να διαμορφώσετε το σύστημα ώστε να ταιριάζει ακριβώς στις ανάγκες σας!

Ρυθμίστε τις θερμοκρασίες αναφοράς, τα χρονοδιαγράμματα.

Χρησιμοποιήστε την τεκμηρίωση Thermostat για να το κάνετε.

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

Η τεκμηρίωση παρέχει προδιαγραφές στις οποίες μπορείτε να ανατρέξετε εάν θέλετε να κάνετε αλλαγές.

Εάν χρειάζεστε περισσότερες πληροφορίες, στείλτε μου ένα αίτημα. Θα χαρώ να απαντήσω.

Αυτό παίρνει μέρος μιας υποδομής αυτοματισμού σπιτιού

Βήμα 53: Κουτί εκτύπωσης 3D

Τρισδιάστατο κουτί εκτύπωσης
Τρισδιάστατο κουτί εκτύπωσης

Πήρα έναν 3D εκτυπωτή και εκτύπωσα αυτό το κουτί.

Ο σχεδιασμός της πλάτης

Ο μπροστινός σχεδιασμός

Σχεδιασμός πάνω και κάτω

Ο πλευρικός σχεδιασμός

Συνιστάται: