Turinys:

Išmaniųjų namų sistema: 6 žingsniai
Išmaniųjų namų sistema: 6 žingsniai

Video: Išmaniųjų namų sistema: 6 žingsniai

Video: Išmaniųjų namų sistema: 6 žingsniai
Video: Какого числа от 1 до 31, родился человек, такая у него и вся жизнь 2024, Lapkritis
Anonim
Išmaniųjų namų sistema
Išmaniųjų namų sistema

Ši pamoka padės paaiškinti, kaip nustatyti ir naudoti mūsų išmaniųjų namų sistemą naudojant „Matlab“programinę įrangą ir „Raspberry Pi“aparatinę įrangą. Pasibaigus šiai instrukcijai, turėtumėte sugebėti lengvai naudotis mūsų produktu!

1 žingsnis: 1 žingsnis: reikalingos dalys ir medžiagos

1 žingsnis: reikalingos dalys ir medžiagos
1 žingsnis: reikalingos dalys ir medžiagos
1 žingsnis: reikalingos dalys ir medžiagos
1 žingsnis: reikalingos dalys ir medžiagos
  • Raspberry Pi
  • Duonos lenta (x2)
  • PIR judesio jutiklis
  • LCD modulis
  • LED šviesa
  • Kondensatorius
  • „Raspberry Pi“fotoaparatas
  • Mikro servo variklis
  • Dvigubi laidai (20)

2 veiksmas: 2 veiksmas: problemos konstatavimas

Problemos, kurias bando išspręsti mūsų gaminys, yra rankinis šviesos valdymas, patalpų temperatūros valdymas ir energijos vartojimo efektyvumas. Mes sutelkėme dėmesį į energijos kiekį, kurį naudoja vidutinis namas, ir norėjome rasti būdų, kaip sumažinti energijos suvartojimą. Įjungtos šviesos ir nereikalinga termostato temperatūra sunaudoja labai daug nereikalingos energijos. Šviesa bus suaktyvinta ten, kur jie išsijungia, kai kambarys yra laisvas, o termostatas prisitaiko prie aplinkai efektyvios temperatūros, atsižvelgiant į lauko temperatūros rodmenis.

3 veiksmas: 3 žingsnis: judesio jutiklio konfigūravimas

3 žingsnis: judesio jutiklio konfigūravimas
3 žingsnis: judesio jutiklio konfigūravimas

Judesio jutiklis prijungtas prie 3,3 V maitinimo kaiščio, įžeminimo kaiščio ir jūsų pasirinkto skaitmeninio kaiščio. Jie atitinkamai prijungti prie judesio jutiklio VCC, GND ir OUT prievadų. Judesio jutiklis aptiks, kai kas nors yra šalia, ir suaktyvina šviesos diodą, nurodydamas, kad žibintai yra įjungti. Kai judesys nebebus aptinkamas, šviesos diodas pats išsijungs. Kodas yra toks:

kol tiesa

motionDetected = readDigitalPin (rpi, 3);

jei judesysDetected == 1

writeDigitalPin (rpi, 16, 1)

Kitas

writeDigitalPin (rpi, 16, 0)

galas

galas

4 žingsnis: 4 žingsnis: LCD modulio ekranas

4 žingsnis: LCD modulio ekranas
4 žingsnis: LCD modulio ekranas

Skystųjų kristalų ekranas paima temperatūros duomenis iš tiesioginės informacijos apie orą iš interneto. Tada LCD modulis rodo esamą temperatūros rodmenį. „Matlab“programa nuskaito temperatūrą ir tada eina per „if“ciklą, kad nustatytų, kiek reikia reguliuoti temperatūros nustatymą namuose. Kodas yra toks:

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

duomenys = žiniatinklio skaitymas (url);

a = data.currentobservation. Temp;

fprintf ('Lauko temperatūra yra %s / n', a)

x = str2num (a);

jei x> 80

fprintf („Pasukite termostatą žemyn 15 laipsnių“)

writeDigitalPin (rpi, 26, 1) %įjungia šviesas

elseif x> 75 && x <80

fprintf ('Išjunkite termostatą / n')

writeDigitalPin (rpi, 26, 1) %įjungia šviesas

kitaip x 55

fprintf ('Pasukite termostatą 10 laipsnių aukštyn / n')

writeDigitalPin (rpi, 26, 0) %išjungia šviesas

kitaip x 45

fprintf ('Pasukite termostatą 20 laipsnių aukštyn / n')

writeDigitalPin (rpi, 26, 0) %išjungia šviesas

kitaip x 40

fprintf ('Pasukite termostatą 25 laipsniais / n')

writeDigitalPin (rpi, 26, 0) %išjungia šviesas

kitaip x 30

fprintf ('Pasukite termostatą 35 laipsniais / n')

Kitas

fprintf ('Pasukite termostatą iki 65 laipsnių / n')

galas

5 žingsnis: 5 žingsnis: variklio servo modulis

5 žingsnis: variklio servo modulis
5 žingsnis: variklio servo modulis

„Motor Servo“modulis turi parodyti galimybę atidaryti ir uždaryti žaliuzes. Kai namus reikia atvėsinti, žaliuzės užsidarys, kad į jas patektų mažiau šilumos. Kai namus reikia sušildyti, žaliuzės atsidarys, kad greičiau sušiltų. Servo nusprendžia, ką daryti, gavęs įvestį iš vartotojo, sąveikaujančio su parinkčių meniu. Variklio kodas yra toks:

s = servo (rpi, 3)

writeDigitalPin (rpi, 4, 1)

writePosition (s, 45)

temp_sys = menu ('Kaip jaučiatės?') %temp reguliatorius

jei temp_sys == 1 %karšta

writeDigitalPin (rpi, 26, 1) %įjungia šviesas

writePosition (s, 0) %pasuka variklį CW/CCW

uždarykite žaliuzes, išjunkite šviesą

elseif temp_sys == 2 %šalčio

writeDigitalPin (rpi, 26, 0) %išjungia šviesas

writePosition (s, 180) %pasuka variklį CCW/CW

atidarykite žaliuzes, įjunkite šviesą

elseif temp_sys == 3 %kaip tik

fprintf ('Temperatūros būsenos palaikymas. / n')

galas

6 veiksmas: 6 žingsnis: judesio jutiklio kamera

6 žingsnis: judesio jutiklio kamera
6 žingsnis: judesio jutiklio kamera

Judėjimo jutiklio kamera fotografuoja tuos, kurie įeina į kambarį arba išeina iš jo. Mes pasirinkome tai kaip papildomą saugumo funkciją tiems, kuriems įdomu, kas buvo jų namuose. Kai judesio jutiklis aptinka judesį, „Matlab“kodas liepia fotoaparatui fotografuoti ir jį rodyti. Kodas yra toks:

i = 0

skaidrus kumštelis

kamera = kamerų lenta (rpi);

o i == 0

momentinis vaizdas (kumštelis); %skaidrus vaizdo buferis

img = momentinis vaizdas (kumštelis);

imagesc (img);

galas

Rekomenduojamas: