Inhoudsopgave:

Smart Home-systeem: 6 stappen
Smart Home-systeem: 6 stappen

Video: Smart Home-systeem: 6 stappen

Video: Smart Home-systeem: 6 stappen
Video: Zo start jij met je smart home! 2024, Juli-
Anonim
Smart Home-systeem
Smart Home-systeem

Deze instructable helpt u uit te leggen hoe u ons Smart Home-systeem kunt instellen en gebruiken met behulp van de Matlab-software en de Raspberry Pi-hardware. Aan het einde van deze instructable zou je ons product met gemak volledig moeten kunnen gebruiken!

Stap 1: Stap 1: Benodigde onderdelen en materialen

Stap 1: Benodigde onderdelen en materialen
Stap 1: Benodigde onderdelen en materialen
Stap 1: Benodigde onderdelen en materialen
Stap 1: Benodigde onderdelen en materialen
  • Raspberry Pi
  • Broodplank (x2)
  • PIR Bewegingssensor
  • LCD-module
  • LED verlichting
  • Condensator
  • Raspberry Pi-camera
  • Micro servomotor
  • Draden met twee uiteinden (20)

Stap 2: Stap 2: Probleemstelling

De problemen die ons product probeert aan te pakken, zijn handmatige lichtregelingen, binnentemperatuurregeling en energie-efficiëntie. We hebben ons gericht op de hoeveelheid energie die het gemiddelde huis verbruikt en we wilden manieren vinden om het energieverbruik te verminderen. Het aan laten staan van lampen en onnodige thermostaattemperaturen zorgen voor een zeer hoog onnodig energieverbruik. Het licht wordt door beweging geactiveerd tot waar het uitgaat wanneer een kamer leeg is, en de thermostaat past zich aan aan een milieuvriendelijke temperatuur op basis van de aflezing van de buitentemperatuur.

Stap 3: Stap 3: Configuratie van bewegingssensor

Stap 3: Configuratie bewegingssensor
Stap 3: Configuratie bewegingssensor

De bewegingssensor is aangesloten op een 3,3V-voedingspin, grondpin en een digitale pin naar keuze. Ze zijn respectievelijk verbonden met de VCC-, GND- en OUT-poorten op de bewegingssensor. De bewegingssensor detecteert wanneer er iemand in de buurt is en activeert de LED om aan te geven dat de lichten zijn ingeschakeld. Zodra er geen beweging meer wordt gedetecteerd, gaat de LED vanzelf uit. De code is als volgt:

terwijl het waar is

motionDetected = readDigitalPin(rpi, 3);

als beweging gedetecteerd == 1

schrijfDigitalPin(rpi, 16, 1)

anders

schrijfDigitalPin(rpi, 16, 0)

einde

einde

Stap 4: Stap 4: LCD-moduleweergave

Stap 4: LCD-moduleweergave
Stap 4: LCD-moduleweergave

Het LCD-scherm haalt de temperatuurgegevens uit de live weersinformatie van internet. De LCD-module geeft vervolgens de huidige temperatuurmeting weer. In Matlab wordt de temperatuur uitgelezen en doorloopt vervolgens een if-lus om te bepalen hoeveel de temperatuurinstelling in huis moet worden aangepast. De code is als volgt:

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

data = webbread(url);

a = data.currentobservation. Temp;

fprintf('De buitentemperatuur is %s\n', a)

x = str2num(a);

als x > 80

fprintf('Zet de thermostaat 15 graden lager')

writeDigitalPin(rpi, 26, 1) %zet lichten aan

andersif x > 75 && x < 80

fprintf('Schakel thermostaat uit \n')

writeDigitalPin(rpi, 26, 1) %zet lichten aan

anders x 55

fprintf('Zet de thermostaat 10 graden hoger \n')

writeDigitalPin(rpi, 26, 0) %schakelt lichten uit

anders als x 45

fprintf('Zet de thermostaat 20 graden hoger \n')

writeDigitalPin(rpi, 26, 0) %schakelt lichten uit

anders als x 40

fprintf('Zet de thermostaat 25 graden hoger \n')

writeDigitalPin(rpi, 26, 0) %schakelt lichten uit

anders als x 30

fprintf('Zet de thermostaat 35 graden hoger \n')

anders

fprintf('Draai de thermostaat naar 65 graden \n')

einde

Stap 5: Stap 5: Motorservomodule

Stap 5: Motorservomodule
Stap 5: Motorservomodule

De Motor Servo Module staat voor de mogelijkheid om de jaloezieën te openen en te sluiten. Wanneer de woning gekoeld moet worden, gaan de jaloezieën dicht om minder warmte binnen te laten. Als de woning verwarmd moet worden, gaan de jaloezieën open om sneller op te warmen. De servo beslist wat hij moet doen door input te ontvangen van de gebruiker in interactie met een menu met opties. De code voor de motor is als volgt:

s = servo(rpi, 3)

schrijfDigitalPin(rpi, 4, 1)

schrijfPositie(s, 45)

temp_sys = menu('Hoe voel je je?') %temp aanpasser

if temp_sys == 1 %hot

writeDigitalPin(rpi, 26, 1) %zet lichten aan

schrijfpositie(s, 0) % draait motor CW/CCW

sluit de jaloezieën, doe de lichten uit

elseif temp_sys == 2 %koud

writeDigitalPin(rpi, 26, 0) %schakelt lichten uit

schrijfPositie(s, 180) %draait motor CCW/CW

jaloezieën openen, lichten aan

elseif temp_sys == 3% precies goed

fprintf('Temperatuurstatus handhaven.\n')

einde

Stap 6: Stap 6: Bewegingssensor Camera

Stap 6: Bewegingssensor Camera
Stap 6: Bewegingssensor Camera

De bewegingssensorcamera maakt een foto van degenen die een kamer binnenkomen of verlaten. We kozen dit als een extra beveiligingsfunctie voor degenen die nieuwsgierig zijn naar wie er in hun huis is geweest. Wanneer de bewegingssensor beweging detecteert, vertelt de Matlab-code de camera om een afbeelding te maken en deze weer te geven. De code is als volgt:

ik=0

duidelijke camera

cam = camerabord (rpi);

terwijl ik==0

momentopname (camera); % duidelijke beeldbuffer

img = momentopname (camera);

afbeeldingen (img);

einde

Aanbevolen: