Sisällysluettelo:
- Vaihe 1: Lämpötila -anturi
- Vaihe 2: summeri
- Vaihe 3: Optinen ilmaisin/valotransistori
- Vaihe 4: Servo
Video: EF 230: Kotijärjestelmä 3000 Ohjeellinen: 4 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Home System 3000 on laite, joka käyttää Arduinoa, lämpötila -anturia, pietsosummeria, optista ilmaisinta/valotransistoria ja servoa näyttääkseen tapoja parantaa kodin energiatehokkuutta.
Vaihe 1: Lämpötila -anturi
· Käytä virta- ja maadoitusjohtoja
mikro -ohjain leipälevyn sivulle
· Aseta lämpötila -anturi leipälevyyn ja vedä vastaavat virta- ja maadoitusjohdot sen mukaisesti
· Huomaa, että lämpötila -anturissa on kolme piikkiä ja keskimmäisessä piikissä on johto, joka kulkee portista "A0".
· Lämpötila -anturin koodi:
answer = questdlg ('Suorita arduino ja servon käynnistyskoodi', 'vastaus', 'Ok', 'Ok')
prompt = 'Aloita painamalla mitä tahansa näppäintä'
tauko
prompt1 = 'Aseta minimilämpötila'
x = tulo (kehote1)
prompt2 = 'Aseta maksimilämpötila'
y = syöttö (kehote2)
prompt3 = 'paina mitä tahansa näppäintä aloittaaksesi'
tauko
kuva
h = animoitu rivi;
kirves = gca;
ax. YGrid = 'päällä';
ax. YLim = [65 85];
stop = epätosi;
startTime = päivämääräaika ('nyt');
~ pysähdy
% Lue nykyinen jännitearvo
v = lukujännite (a, 'A0');
% Laske lämpötila jännitteestä (tietolomakkeen perusteella)
Lämpötila = (v - 0,5)*100;
Lämpötila = 9/5*TempC + 32;
% Hae nykyinen aika
t = datetime ('now') - startTime;
% Lisää pisteitä animaatioon
lisäosat (h, datenum (t), TempF)
% Päivitä akselit
ax. XLim = nollapiste ([t-sekuntia (15) t]);
datetick ('x', 'keeplimits')
vedetty
% Tarkista pysäytystila
stop = readDigitalPin (a, 'D12');
Vaihe 2: summeri
· Johto summerissa, jota käytetään ilmoittamaan äärimmäisen korkeasta tai äärimmäisen alhaisesta lämpötilasta
· Johtoa ei johdeta positiivisesta kolonnista summerin positiiviselle puolelle
· Sen sijaan lanka johdetaan summerin positiiviselta puolelta porttiin, jossa on merkintä "11"
Tätä käytetään myöhemmin kutsumaan summerin sijainti kirjoitetussa koodissa.
· Summerin koodi:
jos TempF> = y
disp ('sulje ovi, se on kuuma')
playTone (a, 'D11', 500, 1)
elseif TempF <= x
disp ('sulje ovi, se on kylmä')
playTone (a, 'D11', 250, 1)
loppuun
loppuun
Vaihe 3: Optinen ilmaisin/valotransistori
· Tämä anturi vaatii vastuksia, toisin kuin muut
· Varmista, että kaikki neljä anturin piikkiä ovat silmukassa johtojen kytkemisen jälkeen
· Anturi havaitsee valon muutoksen, joka kuvaa liikettä, ja tallentaa sen tulona
· Optisen ilmaisimen/valotransistorin koodi:
kirkas a
a = arduino ('/dev/tty.usbserial-DN01DVI2', 'Uno', 'Libraries', 'Servo');
prompt = 'Aseta valotaso kynnys'
z = syöttö (kehote)
lightLevel = 0
kun taas lightLevel ~ = -1
lightLevel = readVoltage (a, 'A1')
jos lightLevel> = z
answer = questdlg ('haluaisi muuttaa AC: tä?', 'Kyllä', 'Ei')
vaihda vastaus
tapaus 'Kyllä'
answer2 = questdlg ('Käännetäänkö AC ylös tai alas?', 'vastaus', 'Alas', 'Ylös', 'Ylös')
Vaihda vastaus 2
tapaus "alas"
s = servo (a, 'D10');
kulmalle = 0:.1:.5
writePosition (s, kulma);
current_position = readPosition (s);
nykyinen_asento = nykyinen_asento * 180;
% tulostus servomoottorin nykyisestä sijainnista
fprintf ('Nykyinen sijainti on %d / n', current_position);
% pieni viive tarvitaan, jotta servo voidaan sijoittaa
% kulma kertoi sen.
tauko (2);
loppuun
% palauta moottori 0 -kulma -asentoon
writePosition (s, 0);
kirkas s
prompt = 'Jatka painamalla mitä tahansa näppäintä'
questdlg ('AC pois päältä', 'vastaus', 'Ok', 'Ok')
tapaus 'ylös'
s = servo (a, 'D10');
kulmalle =.5:.1: 1
writePosition (s, kulma);
current_position = readPosition (s);
nykyinen_asento = nykyinen_asento * 180;
% tulostus servomoottorin nykyisestä sijainnista
fprintf ('Nykyinen sijainti on %d / n', current_position);
% pieni viive tarvitaan, jotta servo voidaan sijoittaa
% kulma kertoi sen.
tauko (2);
loppuun
Vaihe 4: Servo
· Servo edustaa
ilmastointilaite, ja se on liiketunnistustulon lähtö
· Se vaatii positiivisen johdon, maadoitusjohdon ja johdon portista "D9" servoon
· Servon koodi:
% palauta moottori 0 -kulma -asentoon
writePosition (s, 0);
kirkas s
prompt = 'Jatka painamalla mitä tahansa näppäintä'
questdlg ('AC käynnistyi', 'vastaus', 'Ok', 'Ok')
loppuun
loppuun
tauko
tauko
loppuun
loppuun
*Erityinen huomautus: osa servon koodista on integroitu optisen ilmaisimen/valotransistorin koodiin.
Suositeltava:
Kotijärjestelmä: 6 vaihetta (kuvilla)
Kotiäänijärjestelmä: Tämä äänijärjestelmä on helppo valmistaa ja halpa (alle 5 dollaria plus joitakin talteen otettuja materiaaleja) Sallii riittävän vahvan koestuksen suurelle huoneelle. puhelin. -MP3 muistista
TAD 130 Ohjeellinen: 20 vaihetta
TAD 130 Instructable: Yleiskatsaus
SmartBox - Älykäs kotijärjestelmä huoneeseesi: 6 vaihetta
SmartBox - Älykäs kotijärjestelmä huoneeseesi: Hei kaikki! Tässä ohjeessa selitän sinulle, kuinka tehdä älykäs huonejärjestelmä. Tämä järjestelmä sisältää kaksi laitetta.Yleinen laite, jossa on kosteusanturi ja lämpötila -anturi, joka mittaa huoneesi nykyistä elämänlaatua. Sinä w
Herra Birch Puskuri Ohjeellinen: 9 vaihetta
Herra Birch Bumper Instructable: Tämän puskurin tarkoitus on antaa BoeBotille mahdollisuus liikkua ympäristönsä ympärillä. Kun jotain törmää puskurin kummallekin puolelle, tinofolioon kääritty Popsicle -tikut koskettavat ja muodostavat yhteyden, joka käskee robotin pysähtymään, peruuttamaan ja kääntämään
Älykäs kotijärjestelmä: 6 vaihetta
Älykäs kotijärjestelmä: Tämä ohje auttaa selittämään älykkään kotijärjestelmän käyttöönoton ja käytön Matlab -ohjelmiston ja Raspberry Pi -laitteiston avulla. Tämän ohjeen lopussa sinun pitäisi pystyä käyttämään tuotteitamme helposti helposti