Innehållsförteckning:

Smart Home System: 6 steg
Smart Home System: 6 steg

Video: Smart Home System: 6 steg

Video: Smart Home System: 6 steg
Video: STEG 2018. Возвращение Итальянской Легенды 2024, November
Anonim
Smart Home System
Smart Home System

Denna instruktör hjälper dig att förklara hur du konfigurerar och använder vårt Smart Home System med hjälp av Matlab -programvaran och Raspberry Pi -maskinvaran. I slutet av denna instruerbara, bör du enkelt kunna använda vår produkt helt enkelt!

Steg 1: Steg 1: Nödvändiga delar och material

Steg 1: Delar och material som behövs
Steg 1: Delar och material som behövs
Steg 1: Delar och material som behövs
Steg 1: Delar och material som behövs
  • Raspberry Pi
  • Brödbräda (x2)
  • PIR Rörelsesensor
  • LCD -modul
  • LED-ljus
  • Kondensator
  • Raspberry Pi -kamera
  • Mikro servomotor
  • Dubbla trådar (20)

Steg 2: Steg 2: Problemmeddelande

Problemen som vår produkt försöker ta itu med är manuella ljuskontroller, temperaturkontroll inomhus och energieffektivitet. Vi fokuserade på mängden energi som det genomsnittliga hemmet använder och vi ville hitta sätt att minska energianvändningen. Ljus som lyser och onödiga termostattemperaturer står för mycket hög onödig energianvändning. Ljuset kommer att vara rörelseaktiverat till där de stängs av när ett rum är ledigt, och termostaten justerar till en miljöeffektiv temperatur baserat på avläsningen av utomhustemperaturen.

Steg 3: Steg 3: Rörelsessensorkonfiguration

Steg 3: Rörelsessensorkonfiguration
Steg 3: Rörelsessensorkonfiguration

Rörelsesensorn är ansluten till en 3.3V strömstift, jordstift och en digital stift som du väljer. De är anslutna till VCC-, GND- och OUT -portarna på rörelsesensorn. Rörelsesensorn känner av när någon är i närheten och aktiverar lysdioden för att indikera att lamporna är tända. När rörelse inte längre upptäcks stängs lysdioden av. Koden är följande:

medan det är sant

motionDetected = readDigitalPin (rpi, 3);

if motionDetected == 1

writeDigitalPin (rpi, 16, 1)

annan

writeDigitalPin (rpi, 16, 0)

slutet

slutet

Steg 4: Steg 4: LCD -modulskärm

Steg 4: LCD -modulskärm
Steg 4: LCD -modulskärm

LCD -skärmen tar temperaturdata från information om levande väder från internet. LCD -modulen visar sedan aktuell temperaturavläsning. I Matlab läses temperaturen och går sedan igenom en if -loop för att bestämma hur mycket temperaturinställningen i hemmet ska justeras. Koden är följande:

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

data = webread (url);

a = data.currentobservation. Temp;

fprintf ('Utetemperaturen är %s / n', a)

x = str2num (a);

om x> 80

fprintf ('Sänk termostaten 15 grader')

writeDigitalPin (rpi, 26, 1) %tänder lampor

annarsif x> 75 && x <80

fprintf ('Stäng av termostaten / n')

writeDigitalPin (rpi, 26, 1) %tänder lampor

annars x 55

fprintf ('Vrid termostaten upp 10 grader / n')

writeDigitalPin (rpi, 26, 0) %släcker lampor

annars x 45

fprintf ('Vrid termostaten upp 20 grader / n')

writeDigitalPin (rpi, 26, 0) %släcker lampor

annarsif x 40

fprintf ('Vrid termostaten upp 25 grader / n')

writeDigitalPin (rpi, 26, 0) %släcker lampor

annars x 30

fprintf ('Vrid termostaten upp 35 grader / n')

annan

fprintf ('Vrid termostaten upp till 65 grader / n')

slutet

Steg 5: Steg 5: Motorservomodul

Steg 5: Motorservomodul
Steg 5: Motorservomodul

Motorservomodulen ska representera förmågan att öppna och stänga persiennerna. När hemmet måste kylas stängs persiennerna för att släppa in mindre värme. När hemmet behöver värmas öppnas persiennerna för att värma upp det snabbare. Servon bestämmer vad som ska göras genom att ta emot input från användaren som interagerar med en meny med alternativ. Koden för motorn är följande:

s = servo (rpi, 3)

writeDigitalPin (rpi, 4, 1)

writePosition (s, 45)

temp_sys = meny ('Hur mår du?') %temp justerare

om temp_sys == 1 %het

writeDigitalPin (rpi, 26, 1) %tänder lampor

writePosition (s, 0) %vrider motorn CW/CCW

stäng persienner, släck lampor

elseif temp_sys == 2 %kallt

writeDigitalPin (rpi, 26, 0) %släcker lampor

writePosition (s, 180) %vrider motorn CCW/CW

öppna persienner, tända lampor

elseif temp_sys == 3 %helt rätt

fprintf ('Bibehåller temperaturstatus. / n')

slutet

Steg 6: Steg 6: Rörelsessensor

Steg 6: Rörelsessensor
Steg 6: Rörelsessensor

Rörelsesensorkameran tar ett foto av dem som kommer in eller lämnar ett rum. Vi valde detta som en extra säkerhetsfunktion för dem som är nyfikna på vem som har varit i sitt hem. När rörelsessensorn upptäcker rörelse säger Matlab -koden till kameran att ta en bild och visa den. Koden är följande:

jag = 0

klar kamera

cam = kamerabord (rpi);

medan i == 0

ögonblicksbild (kamera); %klar bildbuffert

img = ögonblicksbild (kamera);

bilderc (img);

slutet

Rekommenderad: