Inhaltsverzeichnis:

Smart Home-System - Gunook
Smart Home-System - Gunook

Video: Smart Home-System - Gunook

Video: Smart Home-System - Gunook
Video: Nie wieder Internet-Probleme: So holt jeder das Maximum aus dem heimischen WLAN | stern TV 2024, November
Anonim
Smart-Home-System
Smart-Home-System

Dieses instructable hilft zu erklären, wie man unser Smart Home System mit der Matlab-Software und der Raspberry Pi-Hardware einrichtet und benutzt. Am Ende dieses anweisbaren sollten Sie in der Lage sein, unser Produkt mit Leichtigkeit vollständig zu verwenden!

Schritt 1: Schritt 1: Benötigte Teile und Materialien

Schritt 1: Benötigte Teile und Materialien
Schritt 1: Benötigte Teile und Materialien
Schritt 1: Benötigte Teile und Materialien
Schritt 1: Benötigte Teile und Materialien
  • Himbeer-Pi
  • Steckbrett (x2)
  • PIR-Bewegungssensor
  • LCD-Modul
  • LED-Licht
  • Kondensator
  • Raspberry Pi Kamera
  • Mikro-Servomotor
  • Doppelseitige Drähte (20)

Schritt 2: Schritt 2: Problembeschreibung

Die Probleme, die unser Produkt anzugehen versucht, sind manuelle Lichtsteuerung, Innentemperatursteuerung und Energieeffizienz. Wir haben uns auf die Energiemenge konzentriert, die ein durchschnittliches Haus verbraucht, und wir wollten Wege finden, den Energieverbrauch zu reduzieren. Angelassenes Licht und unnötige Thermostattemperaturen verursachen einen sehr hohen unnötigen Energieverbrauch. Das Licht wird durch Bewegung aktiviert, bis es ausgeschaltet wird, wenn ein Raum frei ist, und der Thermostat stellt sich basierend auf der Messung der Außentemperatur auf eine umweltfreundliche Temperatur ein.

Schritt 3: Schritt 3: Konfiguration des Bewegungssensors

Schritt 3: Konfiguration des Bewegungssensors
Schritt 3: Konfiguration des Bewegungssensors

Der Bewegungssensor wird an einen 3,3-V-Strom-Pin, einen Masse-Pin und einen digitalen Pin Ihrer Wahl angeschlossen. Sie sind mit den Anschlüssen VCC, GND bzw. OUT des Bewegungssensors verbunden. Der Bewegungssensor erkennt, wenn sich jemand in der Nähe befindet und aktiviert die LED, um anzuzeigen, dass das Licht eingeschaltet ist. Sobald keine Bewegung mehr erkannt wird, schaltet sich die LED aus. Der Code lautet wie folgt:

während wahr

motionDetected = readDigitalPin(rpi, 3);

if motionDetected == 1

writeDigitalPin(rpi, 16, 1)

anders

writeDigitalPin(rpi, 16, 0)

Ende

Ende

Schritt 4: Schritt 4: LCD-Modulanzeige

Schritt 4: LCD-Modulanzeige
Schritt 4: LCD-Modulanzeige

Das LCD übernimmt die Temperaturdaten aus den Live-Wetterinformationen aus dem Internet. Das LCD-Modul zeigt dann den aktuellen Temperaturmesswert an. In Matlab wird die Temperatur gelesen und durchläuft dann eine if-Schleife, um zu bestimmen, wie stark die Temperatureinstellung im Haus angepasst werden muss. Der Code lautet wie folgt:

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

Daten = webread(URL);

a = data.currentobservation. Temp;

fprintf('Die Außentemperatur beträgt %s\n', a)

x = str2num(a);

wenn x > 80

fprintf('Thermostat um 15 Grad herunterdrehen')

writeDigitalPin(rpi, 26, 1) %schaltet das Licht ein

Sonst x > 75 && x < 80

fprintf('Thermostat ausschalten \n')

writeDigitalPin(rpi, 26, 1) %schaltet das Licht ein

sonst x 55

fprintf('Dreh den Thermostat um 10 Grad auf \n')

writeDigitalPin(rpi, 26, 0) %schaltet das Licht aus

sonst x 45

fprintf('Dreh den Thermostat um 20 Grad auf \n')

writeDigitalPin(rpi, 26, 0) %schaltet das Licht aus

sonst x 40

fprintf('Dreh den Thermostat um 25 Grad auf \n')

writeDigitalPin(rpi, 26, 0) %schaltet das Licht aus

sonst x 30

fprintf('Dreh den Thermostat um 35 Grad auf \n')

anders

fprintf('Dreh den Thermostat auf 65 Grad \n')

Ende

Schritt 5: Schritt 5: Motor Servo Modul

Schritt 5: Motorservomodul
Schritt 5: Motorservomodul

Das Motor Servo Module soll die Möglichkeit zum Öffnen und Schließen der Jalousien darstellen. Wenn das Haus gekühlt werden muss, werden die Jalousien geschlossen, um weniger Wärme hereinzulassen. Wenn das Haus erwärmt werden muss, öffnen sich die Jalousien, um es schneller aufzuwärmen. Der Servo entscheidet, was zu tun ist, indem er Eingaben vom Benutzer empfängt, der mit einem Menü von Optionen interagiert. Der Code für den Motor lautet wie folgt:

s = Servo(rpi, 3)

writeDigitalPin(rpi, 4, 1)

writePosition(en, 45)

temp_sys = menu('Wie fühlst du dich?') %Temp-Regler

if temp_sys == 1 % heiß

writeDigitalPin(rpi, 26, 1) %schaltet das Licht ein

writePosition(s, 0) %turns Motor CW/CCW

Jalousien schließen, Licht ausschalten

elseif temp_sys == 2 %kalt

writeDigitalPin(rpi, 26, 0) %schaltet das Licht aus

writePosition(s, 180) %turns Motor CCW/CW

Jalousien öffnen, Licht anmachen

elseif temp_sys == 3 % genau richtig

fprintf('Temperaturstatus beibehalten.\n')

Ende

Schritt 6: Schritt 6: Bewegungssensor-Kamera

Schritt 6: Bewegungssensor-Kamera
Schritt 6: Bewegungssensor-Kamera

Die Bewegungssensor-Kamera macht ein Foto von denen, die einen Raum betreten oder verlassen. Wir haben dies als zusätzliche Sicherheitsfunktion für diejenigen ausgewählt, die neugierig sind, wer in ihrem Haus war. Wenn der Bewegungssensor eine Bewegung erkennt, weist der Matlab-Code die Kamera an, ein Bild aufzunehmen und anzuzeigen. Der Code lautet wie folgt:

i=0

klare Kamera

cam = Kameraplatine (rpi);

während ich==0

Schnappschuss (Kamera); % Bildpuffer löschen

img = Schnappschuss (Kamera);

Bilderc(img);

Ende

Empfohlen: