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

Σύστημα έξυπνου σπιτιού: 6 βήματα
Σύστημα έξυπνου σπιτιού: 6 βήματα

Βίντεο: Σύστημα έξυπνου σπιτιού: 6 βήματα

Βίντεο: Σύστημα έξυπνου σπιτιού: 6 βήματα
Βίντεο: Smart Home - Τι είναι το έξυπνο σπίτι & τι εξοπλισμό χρειάζεσαι 2024, Ιούλιος
Anonim
Smart Home System
Smart Home System

Αυτό το διδακτικό θα σας βοηθήσει να εξηγήσετε πώς να ρυθμίσετε και να χρησιμοποιήσετε το Smart Home System χρησιμοποιώντας το λογισμικό Matlab και το υλικό Raspberry Pi. Στο τέλος αυτού του οδηγού, θα πρέπει να μπορείτε να χρησιμοποιείτε πλήρως το προϊόν μας με ευκολία!

Βήμα 1: Βήμα 1: Απαιτούμενα μέρη και υλικά

Βήμα 1: Απαιτούνται εξαρτήματα και υλικά
Βήμα 1: Απαιτούνται εξαρτήματα και υλικά
Βήμα 1: Απαιτούνται εξαρτήματα και υλικά
Βήμα 1: Απαιτούνται εξαρτήματα και υλικά
  • Raspberry Pi
  • Breadboard (x2)
  • PIR Αισθητήρας κίνησης
  • Μονάδα LCD
  • Φως LED
  • Πυκνωτής
  • Κάμερα Raspberry Pi
  • Micro Servo Motor
  • Διπλά καλώδια (20)

Βήμα 2: Βήμα 2: Δήλωση προβλήματος

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

Βήμα 3: Βήμα 3: Διαμόρφωση αισθητήρα κίνησης

Βήμα 3: Διαμόρφωση αισθητήρα κίνησης
Βήμα 3: Διαμόρφωση αισθητήρα κίνησης

Ο αισθητήρας κίνησης συνδέεται με ακίδα τροφοδοσίας 3,3V, ακίδα γείωσης και ψηφιακή ακίδα της επιλογής σας. Συνδέονται με τις θύρες VCC, GND και OUT στον αισθητήρα κίνησης, αντίστοιχα. Ο αισθητήρας κίνησης θα ανιχνεύσει όταν κάποιος είναι κοντά και ενεργοποιεί το LED για να δείξει ότι τα φώτα είναι αναμμένα. Μόλις η κίνηση δεν ανιχνευτεί πλέον, η λυχνία LED θα απενεργοποιηθεί. Ο κωδικός έχει ως εξής:

ενώ ισχύει

motionDetected = readDigitalPin (rpi, 3);

αν εντοπιστεί κίνηση == 1

writeDigitalPin (rpi, 16, 1)

αλλού

writeDigitalPin (rpi, 16, 0)

τέλος

τέλος

Βήμα 4: Βήμα 4: Οθόνη μονάδας LCD

Βήμα 4: Οθόνη μονάδας LCD
Βήμα 4: Οθόνη μονάδας LCD

Η οθόνη LCD λαμβάνει τα δεδομένα θερμοκρασίας από τις πληροφορίες για τον καιρό που παρέχονται από το διαδίκτυο. Στη συνέχεια, η μονάδα LCD εμφανίζει την τρέχουσα ένδειξη θερμοκρασίας. Στο Matlab, η θερμοκρασία διαβάζεται και στη συνέχεια περνάει από έναν βρόχο if για να καθορίσει πόσο να προσαρμόσει τη ρύθμιση της θερμοκρασίας στο σπίτι. Ο κωδικός έχει ως εξής:

url = 'https://forecast.weather.gov/MapClick.php? lat = 35.9606 & lon = -83.9207 & FcstType = json';

δεδομένα = webread (url);

a = data.currentobservation. Temp;

fprintf ('Η εξωτερική θερμοκρασία είναι %s / n', α)

x = str2num (a);

αν x> 80

fprintf ("Χαμηλώστε το θερμοστάτη 15 μοίρες")

writeDigitalPin (rpi, 26, 1) %ανάβει τα φώτα

elseif x> 75 && x <80

fprintf ('Απενεργοποίηση θερμοστάτη / n')

writeDigitalPin (rpi, 26, 1) %ανάβει τα φώτα

elseif x 55

fprintf ('Ενεργοποιήστε τον θερμοστάτη 10 μοίρες / n')

writeDigitalPin (rpi, 26, 0) %σβήνει τα φώτα

elseif x 45

fprintf ('Ενεργοποιήστε τον θερμοστάτη 20 μοίρες / n')

writeDigitalPin (rpi, 26, 0) %σβήνει τα φώτα

elseif x 40

fprintf ('Ενεργοποιήστε τον θερμοστάτη 25 μοίρες / n')

writeDigitalPin (rpi, 26, 0) %σβήνει τα φώτα

elseif x 30

fprintf ('Ενεργοποιήστε τον θερμοστάτη 35 μοίρες / n')

αλλού

fprintf ('Γυρίστε το θερμοστάτη έως 65 μοίρες / n')

τέλος

Βήμα 5: Βήμα 5: Μονάδα Servo Motor

Βήμα 5: Μονάδα Servo Motor
Βήμα 5: Μονάδα Servo Motor

Το Motor Servo Module πρέπει να αντιπροσωπεύει τη δυνατότητα ανοίγματος και κλεισίματος των περσίδων. Όταν το σπίτι πρέπει να κρυώσει, οι περσίδες θα κλείσουν για να αφήσουν λιγότερη θερμότητα. Όταν το σπίτι πρέπει να ζεσταθεί, οι περσίδες θα ανοίξουν για να ζεσταθεί πιο γρήγορα. Το σερβο αποφασίζει τι να κάνει λαμβάνοντας εισροές από τον χρήστη αλληλεπιδρώντας με ένα μενού επιλογών. Ο κωδικός για τον κινητήρα έχει ως εξής:

s = σερβο (rpi, 3)

writeDigitalPin (rpi, 4, 1)

writePosition (s, 45)

temp_sys = μενού ("Πώς αισθάνεστε;") %temp adjuster

αν temp_sys == 1 %ζεστό

writeDigitalPin (rpi, 26, 1) %ανάβει τα φώτα

writePosition (s, 0) %στρέφει τον κινητήρα CW/CCW

κλείστε τις περσίδες, σβήστε τα φώτα

elseif temp_sys == 2 %κρύο

writeDigitalPin (rpi, 26, 0) %σβήνει τα φώτα

writePosition (s, 180) %στρέφει τον κινητήρα CCW/CW

ανοίξτε τις περσίδες, ανάψτε τα φώτα

elseif temp_sys == 3 %σωστά

fprintf ('Διατήρηση της θερμοκρασιακής κατάστασης. / n')

τέλος

Βήμα 6: Βήμα 6: Κάμερα αισθητήρα κίνησης

Βήμα 6: Κάμερα αισθητήρα κίνησης
Βήμα 6: Κάμερα αισθητήρα κίνησης

Η κάμερα του αισθητήρα κίνησης φωτογραφίζει όσους εισέρχονται ή βγαίνουν από ένα δωμάτιο. Επιλέξαμε αυτό ως πρόσθετη λειτουργία ασφαλείας για όσους είναι περίεργοι για το ποιος ήταν στο σπίτι τους. Όταν ο αισθητήρας κίνησης ανιχνεύσει κίνηση, ο κώδικας Matlab λέει στην κάμερα να τραβήξει μια εικόνα και να την εμφανίσει. Ο κωδικός έχει ως εξής:

i = 0

καθαρή κάμερα

cam = κάμερα (rpi);

ενώ i == 0

στιγμιότυπο (κάμερα)? %καθαρό buffer εικόνας

img = στιγμιότυπο (κάμερα);

imagesc (img);

τέλος

Συνιστάται: