Sisällysluettelo:
- Vaihe 1: Valoherkkä LED
- Vaihe 2: Mini virtakytkin
- Vaihe 3: Toinen valokenno
- Vaihe 4: RGB -LED
- Vaihe 5: Lämpötila -anturi
- Vaihe 6: DAGU -vaihdemoottori
- Vaihe 7: Koodi
Video: EF230 Smart Home Project: 7 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Tarvittavat osat ja materiaalit:
- 1 Arduino MKR 1000
- 3 Leipälevyt
- 2 minivalokennoa
- 1 NPN -transistori
- 1 Mini virtakytkin
- 1 LED - RGB (4 piikkiä)
- 1 LED (valitsemasi väri)
- 1 diodi 1N4148
- 1 10 K ohmin vastukset
- 5 100 ohmin vastus
- 1 Lämpötila -anturi TMP36
- 1 DAGU 48: 1 Suhde Vaihdemoottori
- 25 hyppyjohdinta
- USB -johto
- MATLAB -ohjelma
-
SIK -kokeiluopas Arduino 101/Genuino 101 -levylle - SIK -kokeiluoppaan linkki
Tämä projekti kuvaa älykkään kodin järjestelmän konseptisuunnittelua, joka hyödyntäisi tietoja kodinomistajien optimoimiseksi energiankäytön ja turvallisuuden kannalta. Se sisältää valoanturin, joka sytyttää ulkovalot yöllä, valotunnistimen turvallisuuden vuoksi sekä lämpötila -anturin ja tuulettimen sisäilman säätöön.
Vaihe 1: Valoherkkä LED
- Valoherkkä LED -asetus on tarkoitettu edustamaan yöllä syttyvän talon ulkovaloja.
- Kun mini -valokenno havaitsee vähemmän valoa, LED -valo syttyy.
- Älykkään kodin kannalta sillä on energia- ja turvallisuusvaikutuksia. Se säästää energiaa jättämällä valot pois päältä päivällä ja lisää turvallisuutta yöllä.
- Projektin tämän osan tarkka johdotus ja asetukset löytyvät SIK -kokeiluoppaan kokeesta 7.
Vaihe 2: Mini virtakytkin
- Kytkin on ensimmäinen askel älykkään kodin turvallisuusprosessissa.
- Kun se on kytketty päälle, kytkin käynnistää vastauksen ja kysyy käyttäjältä, haluavatko he siirtyä Koti- tai Poissa -tilaan.
- Jos "Koti" -tila on valittu, suojaus katsotaan poiskytketyksi, mutta Poissa -tilan valitseminen virittää turvajärjestelmän.
- Tämän projektin osan johdotus löytyy kokeiluoppaan kohdasta 6. Älykästä kotia varten kokeessa 6 löydettyjä LED -valoja ja niiden liitäntäjohtoja ei tarvitse sisällyttää.
Vaihe 3: Toinen valokenno
- Toinen valokenno toimii älykkään kodin turvajärjestelmän liikeanturina.
- Anturia käytetään vain, kun järjestelmä on asetettu Poissa -tilaan, kuten edellisessä vaiheessa on kuvattu.
- Jos valokenno vastaanottamansa valon määrä vähenee, se tunnistaa sen liikkeeksi talon sisällä.
- Tämän projektin osan asetukset löytyvät SIK -kokeiluoppaan kokeesta 7. Johdotukseen on kuitenkin sisällytettävä vain valokenno ja sen liitäntäjohdot.
Vaihe 4: RGB -LED
- RGB -LEDiä käytetään yhdessä minikytkimen ja älykkään kodin turvajärjestelmän toisen valokennon kanssa.
- Näitä kolmea eri väriä käytetään älykkään kodin asukkaiden indikaattoreina.
- Kun järjestelmä asetetaan kotitilaan, LED -valo muuttuu siniseksi. Kun järjestelmä asetetaan Poissa -tilaan, LED -valo muuttuu vihreäksi. Kun liiketunnistimena käytetty valokenno laukeaa, valo vilkkuu punaisena.
- RGB -LEDin johdotus löytyy SIK -kokeiluoppaan kokeesta 3.
Vaihe 5: Lämpötila -anturi
- Lämpötila -anturi on tärkeä osa älykkään kodin energian säästämistä.
- Asukas voi syöttää kotiinsa halutun lämpötilan älykkään kodin ollessa käytössä.
- Lämpötila -anturi on se, miten järjestelmä tietää, kuinka kaukana todellinen lämpötila on halutusta lämpötilasta.
- Lämpötila -anturin asetukset löytyvät SIK -kokeiluoppaan kokeesta 9.
Vaihe 6: DAGU -vaihdemoottori
- Moottorin avulla älykoti voi säätää talon lämpötilaa halutun lämpötilan ja lämpötila -anturin lukemien perusteella.
- Toimimalla kodin vaihtovirtayksikkönä moottori pyörii eri nopeuksilla sen mukaan, kuinka paljon todellinen lämpötila on korkeampi kuin haluttu lämpötila. Mitä suurempi ero, sitä nopeammin moottori pyörii.
- Moottorin johdotus löytyy Kokeiluoppaan kohdasta Koe 11.
Vaihe 7: Koodi
- Älykotin koodi sisältää useita käyttöliittymiä, joiden avulla asukas voi helposti ymmärtää sen toiminnan ja muuttaa asetuksia helposti.
- Älykäs koti -järjestelmällä asukas saa ja lähettää hälytyksen sähköpostitse, jos liiketunnistin kytketään pois päältä heidän ollessaan poissa.
- Ainoa muutos, joka on tehtävä, on lisätä tiedot lähettäjän sähköpostiosoitteeseen ja vastaanottajan sähköpostiosoitteeseen.
selkeä a; kirkas s; kirkas m; clc; sulje kaikki; % Tyhjennä arduino- ja servomuuttujat, jotta ne voidaan määrittää uudelleen joka kerta, jotta koodi toimii tehokkaasti ("tyhjennä m" on välttämätöntä, jotta jokin silmukoista toimii oikein) a = arduino (); % Aseta arduino -muuttuja
s = servo (a, 'D6'); % Aseta servomuuttuja
% Alusta sähköpostimuuttujat turvajärjestelmän varoitussähköpostille
sähköpostit = {'lisää vastaanottajan osoite'}; % Sähköpostisarja, johon suojausviesti lähetetään
% Sähköpostiasetusten asetukset, joita tarvitaan Gmailin käyttämiseen sähköpostin lähettämiseen
setpref ('Internet', 'Sähköposti', 'lähettäjän sähköpostiosoite');
setpref ('Internet', 'SMTP_Käyttäjänimi', 'lähettäjän käyttäjätunnus');
setpref ('Internet', 'SMTP_Password', 'lähettäjän salasana');
rekvisiitta = java.lang. System.getProperties;
props.setProperty ('mail.smtp.auth', 'true');
props.setProperty ('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory'); props.setProperty ('mail.smtp.socketFactory.port', '465');
% Sähköpostin aihe- ja tekstimuuttujat
subj = 'Tunkeutujahälytys kotona';
text = 'Hei, Tämä on älykkään kodin turvajärjestelmä, joka ilmoittaa, että kodin ulkopuolella on havaittu liikettä. Olemme toteuttaneet tarvittavat toimenpiteet ja ottaneet yhteyttä viranomaisiin. Pysy turvassa.';
vaikka totta
prompt = {'Anna haluttu kotilämpötila (65 F - 85 F):'}; % Kysy käyttäjän syöttövalikkoa
dlgtitle = 'Lämpötilan valinta'; % Käyttäjän syöttövalikon otsikko
himmeät = [1 30]; % Käyttäjän syöttövalikon mitat
määritelmä = {'72'}; % Oletussyöttö, joka näkyy, kun valikko avataan ensimmäisen kerran
tempsel_array = inputdlg (kehote, dlgtitle, himmeä, määritelmä); % Käyttäjän ponnahdusvalikko, joka tallentaa syötetyn numeron taulukkoon
jos ~ isempty (tempsel_array) % Jos taulukko EI ole tyhjä
tempsel_char = solu2mat (tempsel_array); % Muunna taulukko merkkijonoksi
tempsel = str2double (tempsel_char); % Muunna merkkijono numeroiksi
thingSpeakWrite (chID, tempsel, 'WriteKey', writeKey, 'Fields', 1); % Kirjoita valittu lämpötila ThingSpeak -kanavallesi
break % Break from while -silmukka, joten valikko ei tule esiin useita kertoja
else % Jos käyttäjä napsauttaa Peruuta lämpötilan syöttämisen sijaan
msg1 = msgbox ('Lämpötilaa ei ole valittu, oletusarvo on 85 F', 'Varoitus!'); % Viesti näytetään käyttäjälle napsauttamalla Peruuta
odota (msg1); % Odota, kunnes viestiruutu sulkeutuu, ennen kuin jatkat
tempsel = 85; % Aseta lämpötila sanomalaatikossa ilmoitettuun arvoon
thingSpeakWrite (chID, tempsel, 'WriteKey', writeKey, 'Fields', 1); % Kirjoita valittu lämpötila ThingSpeak -kanavallesi
break % Break from while -silmukka, joten valikko ei tule esiin useita kertoja
loppuun
loppuun
vaikka totta
chID = 745517; % ThingSpeak -kanavatunnus
writeKey = 'G9XOQTP8KOVSCT0N'; % -Avain ThingSpeak -kanavan käyttöön
% Alusta anturit tietojen hakemiseksi
tempread = readVoltage (a, 'A3'); % Lue lämpötila -anturin jännite
lightl1 = lukujännite (a, 'A2'); % Valovastuksen valotaso siirtyy punaiseen LED -valoon
lightl2 = lukujännite (a, 'A5'); % Valojännite turvajärjestelmään menevälle valoresistorille
kytkinv = lukujännite (a, 'A0'); % Kytkimen arvo
% Muunna lämpötilatiedot jännitteestä Fahrenheit -asteiksi
tempC = (tempread - 0,5) * 100; % Muunna jännite celsiusasteeksi
tempF = (tempC * 9/5) + 32; % Muunna Celsius -lämpötila Fahrenheit -lämpötilaksi
% Alusta monivärisen LEDin nastanumerot
redp = 'D9'; % Pin LED -valon punaiselle valolle
greenp = 'D10'; % Nasta vihreää valoa varten LEDistä
bluep = 'D11'; % Nasta LED -valon sinistä valoa varten
jos tempsel <tempF % Jos valittu lämpötila on korkeampi kuin huonelämpötila
writePosition (s, 1); % Servo alkaa liikkua
tauko (10) % Servo pyörii 10 sekuntia osoittaakseen, että AC sammuu tietyn ajan kuluttua
writePosition (s, 0); % Sammuta tuuletin, jotta koodi jatkuu ilman tuuletinta
tempsel = 150; % Muuta lämpötila -arvoa niin, että se katkeaa silmukasta tuulettimen sammuttua, uudelleen vain koodin jatkamiseksi
loppuun
jos lightl1 <= 3 % Jos ensimmäinen valoresistori havaitsee heikon valotason
writeDigitalPin (a, 'A1', 1); % Sytytä punainen LED, joka edustaa ulkovaloja
else % Jos valotaso on jälleen korkea
writeDigitalPin (a, 'A1', 0); % Sammuta punainen LED, kun valotaso on jälleen tarpeeksi korkea
loppuun
jos kytkinv> 3 % Jos kytkin on päällä
A = olemassa ('m', 'var'); % Tarkista, onko olemassa muuttuja 'm', se alustaa while -silmukan ja sallii sen rikkoutua, kun valikkokohta valitaan (tämän vuoksi tyhjä m on tehtävä koodin alussa)
kun taas A == 0 % Silmukka suoritetaan, kunnes muuttuja "m" on olemassa
menutext = 'Mihin suojaustilaan haluat siirtyä?'; % Suojauksen ponnahdusvalikon teksti
options = {'Home', 'Poissa'}; % Suojauksen ponnahdusvalikon vaihtoehdot
m = valikko (valikkoteksti, valinnat); % Ponnahdusvalikko turvajärjestelmätiloille
break % Varmista, että while -silmukka on katkennut, joten valikko ei tule esiin useita kertoja
loppuun
jos m == 1 % Jos 'Koti' -tila on valittu
writeDigitalPin (a, bluep, 1); % Sytytä vain sininen valo väriä vaihtavassa LED -valossa
writeDigitalPin (a, redp, 0);
writeDigitalPin (a, greenp, 0);
elseif m == 2 % Jos Poissa -tila on valittu
writeDigitalPin (a, bluep, 0);
writeDigitalPin (a, redp, 0);
writeDigitalPin (a, greenp, 1); % Sytytä vain vihreä valo väriä vaihtavassa LED -valossa
jos lightl2 <= 3 % Jos toisen valovastuksen valotaso on alhainen, mikä ilmaisee turvajärjestelmän havaitseman liikkeen
sendmail (sähköpostit, subj, teksti); % Lähetä sähköposti, jossa on aiemmin määritetyt sähköpostiominaisuudet writeDigitalPin (a, greenp, 0); % Salaman punainen väri päälle ja pois päältä 2 kertaa
writeDigitalPin (a, redp, 1);
tauko (0,3)
writeDigitalPin (a, redp, 0);
tauko (0,3)
writeDigitalPin (a, redp, 1);
tauko (0,3)
writeDigitalPin (a, redp, 0);
tauko (0,3)
writeDigitalPin (a, redp, 1); % Viimeistele kiinteällä punaisella vilkkumisen jälkeen osoittaaksesi liikettä, kunnes valotaso nousee takaisin
msg2 = msgbox ('Turvajärjestelmä havaitsi tunkeutujan, asunnon omistajille on lähetetty sähköpostiviesti.', 'VAROITUS!'); % Viestiruutu ilmoittaa käyttäjälle liikkeestä ja ilmoittaa lähetetystä sähköpostista odota (msg2) % Odota, että viestiruutu sulkeutuu ennen kuin jatkat
muu
writeDigitalPin (a, greenp, 1); % Kun valotaso on jälleen noussut, se muuttuu vihreäksi
loppuun
loppuun
elseif kytkinv <3,3 % Jos kytkin on pois päältä
writeDigitalPin (a, bluep, 0); % Sammuta merkkivalo kokonaan osoittaaksesi, että turvajärjestelmä on pois päältä
writeDigitalPin (a, redp, 0);
writeDigitalPin (a, greenp, 0);
loppuun
loppuun
Suositeltava:
Smart Home by Raspberry Pi: 5 vaihetta (kuvilla)
Smart Home by Raspberry Pi: Siellä on jo useita tuotteita, jotka tekevät asunnostasi älykkäämmän, mutta suurin osa niistä on omia ratkaisuja. Mutta miksi tarvitset Internet -yhteyden vaihtaaksesi valon älypuhelimellasi? Se oli yksi syy minulle rakentaa oma Smar
Hallitse automaattista liukuporttia Home Assistantin ja ESP: n avulla Home: 5 vaihetta (kuvilla)
Hallitse automaattista liukuporttia Home Assistantin ja ESPHomen avulla: Seuraava artikkeli antaa palautetta henkilökohtaisesta kokemuksestani taloon asennetun automaattisen liukuportin ohjaamisesta. Tässä portissa, "V2 Alfariss", oli muutama Phox V2 -kaukosäädin sen hallitsemiseksi. Minulla on myös
Sonoff B1 Firmware Home Automation Openhab Google Home: 3 vaihetta
Sonoff B1 Firmware Home Automation Openhab Google Home: Pidän todella Tasmota -laiteohjelmistosta Sonoff -kytkimille. Mutta a ei ollut todella tyytyväinen Sonoff-B1: n Tasmota-laiteohjelmistoon. En onnistunut täysin integroimaan sitä Openhabiini ja hallitsemaan sitä Google Homen kautta. Siksi kirjoitin oman yritykseni
Project Aurora: Smart Gaming -hiirimatto 20 €: 13 vaihetta (kuvilla)
Project Aurora: Smart Gaming -hiirimatto 20 €: Perusidea on, miksi käyttää 50 dollaria RGB -hiirimattoon, jossa on vain valonäytöksiä? Okei, ne ovat viileitä ja erittäin ohuita, mutta ne lisäävät myös tietokoneeseen ohjelmiston, joka mukauttaa vaaleita värejä, mikä ei ole aivan "kevyt". jos harkitset
Project 2 Smart-kypärä: 6 vaihetta (kuvilla)
Projekti 2 Smart-kypärä: Meidän, Benoot Svenin, Staelens Lennertin ja Dujardin Laurensin, piti tehdä projekti kouluun. Meidän oli työskenneltävä yhdessä IPO: n (Industrial Product Design) opiskelijan kanssa. Hän keksi idean tehdä älykäs moottoripyöräkypärä. Hän on suunnitellut