Kazalo:

Sistem pametnega doma: 6 korakov
Sistem pametnega doma: 6 korakov

Video: Sistem pametnega doma: 6 korakov

Video: Sistem pametnega doma: 6 korakov
Video: ОШИБКИ В САНТЕХНИКЕ! | Как нельзя делать монтаж канализации своими руками 2024, Julij
Anonim
Sistem pametnega doma
Sistem pametnega doma

Ta navodila vam bodo pomagala razložiti, kako nastaviti in uporabljati naš sistem pametnega doma z uporabo programske opreme Matlab in strojne opreme Raspberry Pi. Na koncu tega navodila bi morali z lahkoto v celoti uporabljati naš izdelek!

1. korak: 1. korak: potrebni deli in materiali

Korak: Potrebni deli in materiali
Korak: Potrebni deli in materiali
Korak: Potrebni deli in materiali
Korak: Potrebni deli in materiali
  • Malina Pi
  • Okvir (x2)
  • PIR senzor gibanja
  • LCD modul
  • LED luč
  • Kondenzator
  • Raspberry Pi kamera
  • Mikro servo motor
  • Dvojne žice (20)

2. korak: 2. korak: Izjava o težavi

Težave, ki jih skuša rešiti naš izdelek, so ročni nadzor luči, nadzor temperature v zaprtih prostorih in energetska učinkovitost. Osredotočili smo se na količino energije, ki jo porabi povprečen dom, in želeli smo najti načine za zmanjšanje porabe energije. Prižgane luči in nepotrebne temperature termostata povzročajo zelo veliko nepotrebno porabo energije. Luč se bo aktivirala z gibanjem do mesta, kjer se izklopijo, ko je prostor prost, termostat pa se prilagodi na okoljsko učinkovito temperaturo glede na odčitavanje zunanje temperature.

3. korak: 3. korak: Konfiguracija senzorja gibanja

3. korak: Konfiguracija senzorja gibanja
3. korak: Konfiguracija senzorja gibanja

Senzor gibanja je priključen na napajalni zatič 3.3V, ozemljitveni zatič in digitalni zatič po vaši izbiri. Priključeni so na vrata VCC, GND in OUT na senzorju gibanja. Senzor gibanja zazna, ko je nekdo v bližini, in vklopi LED, kar pomeni, da so luči prižgane. Ko gibanja ni več zaznano, se bo LED sama izklopila. Koda je naslednja:

medtem ko je res

motionDetected = readDigitalPin (rpi, 3);

če je zaznano gibanje == 1

writeDigitalPin (rpi, 16, 1)

drugače

writeDigitalPin (rpi, 16, 0)

konec

konec

4. korak: 4. korak: Prikaz modula LCD

4. korak: Prikaz modula LCD
4. korak: Prikaz modula LCD

LCD vzame podatke o temperaturi iz vremenskih informacij v živo, ki jih posreduje internet. LCD -modul nato prikaže trenutni odčitek temperature. V Matlabu se temperatura odčita in nato gre skozi zanko if, da se določi, koliko je treba prilagoditi nastavitev temperature doma. Koda je naslednja:

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

podatki = spletno branje (url);

a = data.currentobservation. Temp;

fprintf ('Zunanja temperatura je %s / n', a)

x = število str2 (a);

če je x> 80

fprintf ('Termostat znižajte za 15 stopinj')

writeDigitalPin (rpi, 26, 1) %prižge luči

drugače če je x> 75 && x <80

fprintf ('Izklopite termostat / n')

writeDigitalPin (rpi, 26, 1) %prižge luči

sicer x 55

fprintf ('Termostat obrnite navzgor za 10 stopinj / n')

writeDigitalPin (rpi, 26, 0) %ugasne luči

sicer x 45

fprintf ('Termostat obrnite navzgor za 20 stopinj / n')

writeDigitalPin (rpi, 26, 0) %ugasne luči

sicer x 40

fprintf ('Termostat obrnite navzgor za 25 stopinj / n')

writeDigitalPin (rpi, 26, 0) %ugasne luči

sicer x 30

fprintf ('Termostat obrnite navzgor za 35 stopinj / n')

drugače

fprintf ('Termostat obrnite do 65 stopinj / n')

konec

5. korak: 5. korak: servo modul motorja

5. korak: Servo modul motorja
5. korak: Servo modul motorja

Motorni servo modul predstavlja sposobnost odpiranja in zapiranja žaluzij. Ko je treba hišo ohladiti, se žaluzije zaprejo, da pustijo manj toplote. Ko je treba dom ogreti, se žaluzije odprejo, da se hitreje ogrejejo. Servo se odloči, kaj bo naredil tako, da prejme vnos od uporabnika, ki sodeluje z menijem možnosti. Koda za motor je naslednja:

s = servo (rpi, 3)

writeDigitalPin (rpi, 4, 1)

writePosition (s, 45)

temp_sys = menu ('Kako se počutiš?') %temp temp

če je temp_sys == 1 %vroče

writeDigitalPin (rpi, 26, 1) %prižge luči

writePosition (s, 0) %obrača motor CW/CCW

zaprite žaluzije, ugasnite luči

elseif temp_sys == 2 %hladno

writeDigitalPin (rpi, 26, 0) %ugasne luči

writePosition (s, 180) %obrača motor CCW/CW

odprite žaluzije, prižgite luči

elseif temp_sys == 3 %ravno prav

fprintf ('Ohranjanje temperaturnega stanja. / n')

konec

Korak 6: Korak 6: Kamera s senzorjem gibanja

6. korak: Kamera s senzorjem gibanja
6. korak: Kamera s senzorjem gibanja

Kamera s senzorjem gibanja fotografira tiste, ki vstopijo ali zapustijo sobo. To smo izbrali kot dodatno varnostno funkcijo za tiste, ki jih zanima, kdo je bil v njihovem domu. Ko senzor gibanja zazna gibanje, koda Matlab pove fotoaparatu, naj posname sliko in jo prikaže. Koda je naslednja:

i = 0

prozorna kamera

cam = kamera (rpi);

medtem ko je i == 0

posnetek (kamera); %čisti slikovni vmesnik

img = posnetek (kamera);

imagesc (img);

konec

Priporočena: