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

Smart-Stat: 7 βήματα
Smart-Stat: 7 βήματα

Βίντεο: Smart-Stat: 7 βήματα

Βίντεο: Smart-Stat: 7 βήματα
Βίντεο: Η γκουγκου δεν σεβεται τον πατερα της 2024, Ιούλιος
Anonim
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat
Smart-Stat

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

Βήμα 1: Απαιτούνται εξαρτήματα

Απαιτούμενα μέρη
Απαιτούμενα μέρη
Απαιτούμενα μέρη
Απαιτούμενα μέρη
Απαιτούμενα μέρη
Απαιτούμενα μέρη

- Arduino Uno

- Breadboard (4)

- Θερμίστορ (2)

- Αντιστάσεις 10K (2)

- Πιέστε το κουμπί

- Piezo Buzzer

- Οθόνη LCD

- Ποτενσιόμετρο

- Σύρματα (25)

- Micro USB ή USB Connector

Βήμα 2: Wire Breadboard for Temperature Sensor

Wire Breadboard για αισθητήρα θερμοκρασίας
Wire Breadboard για αισθητήρα θερμοκρασίας

Ένα θερμίστορ TMP είναι ένας τύπος αισθητήρα θερμοκρασίας που μετρά την τάση στον αισθητήρα καθώς αλλάζει η θερμοκρασία περιβάλλοντος. Ο συγκεκριμένος αισθητήρας έχει τρεις ακίδες - θετικό, γείωση και σήμα. Αυτός ο αισθητήρας είναι γραμμικός αισθητήρας και η μεταβολή της θερμοκρασίας κατά ένα βαθμό Κελσίου ισοδυναμεί με αλλαγή 10 χιλιοστών βολτ στην έξοδο του αισθητήρα.

Διαδικασία:

1) Συνδέστε τον αισθητήρα θερμοκρασίας όπως φαίνεται στην παραπάνω εικόνα. Το μεσαίο καλώδιο θα συνδεθεί στο A0.

2) Συνδέστε τον δεύτερο αισθητήρα θερμοκρασίας με παρόμοιο τρόπο με τον πρώτο και το μεσαίο καλώδιο θα συνδεθεί με το Α1.

Βήμα 3: Piezo Buzzer

Piezo Buzzer
Piezo Buzzer

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

Διαδικασία:

1) Συνδέστε το βομβητή στην πλακέτα όπως φαίνεται στο παραπάνω σχήμα.

Βήμα 4: Προσθέστε κουμπιά

Προσθήκη κουμπιών
Προσθήκη κουμπιών

- Το κουμπί είναι ένα στοιχείο που συνδέει δύο σημεία σε ένα κύκλωμα όταν το πατάτε.

- Στο προϊόν μας, το κουμπί κάνει κύκλους μεταξύ της εμφάνισης της θερμοκρασίας και της απόδοσης από τα δεδομένα που συλλέγουν οι αισθητήρες θερμοκρασίας.

Διαδικασία

1) Συνδέστε το κουμπί όπως φαίνεται στο παραπάνω σχήμα.

Βήμα 5: Συνδέστε την οθόνη LCD στο ξεχωριστό Breadboard & στο Power

Συνδέστε την οθόνη LCD στο ξεχωριστό Breadboard & στο Power
Συνδέστε την οθόνη LCD στο ξεχωριστό Breadboard & στο Power

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

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

Βήμα 6: Κωδικός

a = arduino («com3», «uno», «βιβλιοθήκες», «ΠαράδειγμαLCD/LCDAddon»); % δημιουργεί ένα αντικείμενο arduino που καθορίζει τη βιβλιοθήκη ExampleLCD/LCDAddon.

lcd = addon (a, 'ΠαράδειγμαLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'}); % δημιουργεί το αντικείμενο LCD και καθορίζει τις ακίδες που έχουν διαμορφωθεί στη συσκευή Arduino.

initializeLCD (lcd, 'Rows', 2, 'Columns', 16)? % προετοιμάζει την οθόνη LCD

setpref ("Διαδίκτυο", "SMTP_Server", "smtp.gmail.com");

setpref («Διαδίκτυο», «E_mail», «[email protected]») % λογαριασμός αλληλογραφίας για αποστολή από

setpref ("Διαδίκτυο", "SMTP_Username", "bwnanney"); % όνομα χρήστη αποστολέων

setpref ("Διαδίκτυο", "SMTP_Password", "Morill1204"); % κωδικός πρόσβασης αποστολέων

props = java.lang. System.getProperties;

props.setProperty ('mail.smtp.auth', 'true');

props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');

props.setProperty ('mail.smtp.socketFactory.port', '465');

b = readDigitalPin (a, 'D9'); % ανάγνωση ψηφιακής ακίδας (ψηφιακός αισθητήρας)

ανάγνωση = readVoltage (a, 'A0'); % διαβάζει την τάση στο αναλογικό θερμοστάτη συνδεδεμένο στον ακροδέκτη A0

ανάγνωση2 = readVoltage (a, 'A2'); % διαβάζει την τάση στο αναλογικό θερμοστάτη συνδεδεμένο στον ακροδέκτη A2

ενώ το true % περνάει μέσα από την υπάρχουσα δήλωση όσο ισχύει

b = readDigitalPin (a, 'D9'); % διαβάζει ψηφιακή ακίδα (ψηφιακός αισθητήρας)

ανάγνωση = readVoltage (a, 'A0'); % διαβάζει την τάση στο αναλογικό θερμοστάτη συνδεδεμένο με τον ακροδέκτη A0

εάν η ανάγνωση> = 0,6 && η ανάγνωση <0,68 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 64 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,68 && ανάγνωση <0,69 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 66 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,69 && ανάγνωση <0,7 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 68 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,7 && ανάγνωση <0,71 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 70 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading> = 0,71 && ανάγνωση <0,72 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 72 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading> = 0,72 && ανάγνωση <0,73 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 74 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,73 && ανάγνωση <0,74 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 76 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,74 && ανάγνωση <0,75 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 78 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,75 && ανάγνωση <0,76 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 80 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,76 && ανάγνωση <0,77 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 82 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,77 && ανάγνωση <0,8 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 84 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

playTone (a, 'D10', 880, 0.25) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,3) % παύση μετά τη σημείωση για καθορισμένη διάρκεια

playTone (a, 'D10', 880, 0.25) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,3) % παύση μετά τη σημείωση για καθορισμένη διάρκεια

playTone (a, 'D10', 880, 0.25) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,3) % παύση μετά τη σημείωση για καθορισμένη διάρκεια

playTone (a, 'D10', 880, 0.25) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,3) % παύση μετά τη σημείωση για καθορισμένη διάρκεια

playTone (a, 'D10', 987, 0.25) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,3) % παύση μετά τη σημείωση για καθορισμένη διάρκεια

playTone (a, 'D10', 987, 0.25) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,3) % παύση μετά τη σημείωση για καθορισμένη διάρκεια

playTone (a, 'D10', 880, 0.12) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,1) % παύση μετά τη σημείωση για καθορισμένη διάρκεια

playTone (a, 'D10', 740, 0.12) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,1) % παύση μετά τη σημείωση για καθορισμένη διάρκεια

playTone (a, 'D10', 587, 0.25) % παίζει μια νότα (a, pin, συχνότητα, διάρκεια)

παύση (0,3)

sendmail ('[email protected] ',' Μονάδα θέρμανσης και ψύξης που χρειάζεται υπηρεσία !!! ',…

«Το σύστημα θέρμανσης και ψύξης λειτουργεί αναποτελεσματικά. Παρακαλείστε να επισκευάσετε έναν τεχνικό στη μονάδα το συντομότερο δυνατό. ') % Στέλνει ένα email στον καθορισμένο λογαριασμό email

Η ανάγνωση elseif> = 0,8 && ανάγνωση <0,85 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Temp 86 F'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

Η ανάγνωση elseif> = 0,85 && ανάγνωση <2 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'HOT HOT BABY !!!'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

τέλος % λήγει εάν η δήλωση

ενώ b == 0 % περνάει μέσα από την υπάρχουσα πρόταση εφόσον είναι false

b = readDigitalPin (a, 'D9'); % διαβάζει ψηφιακή ακίδα (ψηφιακός αισθητήρας)

ανάγνωση2 = readVoltage (a, 'A2'); % διαβάζει την τάση στο αναλογικό θερμοστάτη συνδεδεμένο στον ακροδέκτη A2

αν η ανάγνωση2> = 0,6 && ανάγνωση2 <0,68 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 80%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0,68 && ανάγνωση2 <0,69 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 90%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0.69 && ανάγνωση2 <0.7 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 95%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0,7 && ανάγνωση2 <0,71 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 97%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0.71 && ανάγνωση2 <0.72 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 100%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0.72 && ανάγνωση2 <0.73 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 95%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0.73 && ανάγνωση2 <0.74 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 90%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0.74 && ανάγνωση2 <0.75 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (LCD, "Αποδοτικότητα 85%"); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0,75 && ανάγνωση2 <0,76 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (LCD, "Αποδοτικότητα 80%"); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0.76 && ανάγνωση2 <0.77 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 75%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0,77 && ανάγνωση2 <0,8 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (LCD, "Αποδοτικότητα 70%"); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0,8 && ανάγνωση2 <0,85 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'Efficiency 65%'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

elseif reading2> = 0.85 && ανάγνωση2 <2 % εκτελεί υπό όρους ένα μόνο σύνολο προτάσεων (ένα μπλοκ).

clearLCD (lcd) % καθαρίζει την οθόνη LCD

printLCD (lcd, 'ON FIRE !!!'); % Εκτύπωση μιας συμβολοσειράς στην οθόνη LCD.

παύση (0,5) % παύση πριν από την εκτέλεση της επόμενης εντολής

τέλος % τέλος αν δήλωση

τέλος % τέλος ενώ βρόχος

τέλος % τέλος ενώ βρόχος

Βήμα 7: Διάγραμμα

Διάγραμμα
Διάγραμμα

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

Συνιστάται: