Sadržaj:

EF 230: Kućni sistem 3000 Instrukcije: 4 koraka
EF 230: Kućni sistem 3000 Instrukcije: 4 koraka

Video: EF 230: Kućni sistem 3000 Instrukcije: 4 koraka

Video: EF 230: Kućni sistem 3000 Instrukcije: 4 koraka
Video: Бензогенератор для дома. Фатальные ошибки мастеров! 2024, Juli
Anonim
EF 230: Kućni sistem 3000 sa instrukcijama
EF 230: Kućni sistem 3000 sa instrukcijama

Home System 3000 je uređaj koji koristi Arduino, temperaturni senzor, piezo zujalicu, optički detektor/fototranzistor i servo za prikaz načina za poboljšanje energetske efikasnosti doma.

Korak 1: Senzor temperature

Senzor temperature
Senzor temperature

· Provedite žice za napajanje i uzemljenje

mikro kontroler sa strane ploče za hljeb

· Stavite osjetnik temperature na ploču za kruh i provucite odgovarajuće žice za napajanje i uzemljenje u skladu s tim

· Uočite da senzor temperature ima tri zupca, a srednji zub ima žicu koja vodi od priključka "A0".

· Kod senzora temperature:

answer = questdlg ('Molimo pokrenite arduino i servo početni kod', 'odgovor', 'U redu', 'U redu')

prompt = 'Pritisnite bilo koji taster za početak'

pauza

prompt1 = 'Postavi minimalnu temperaturu'

x = ulaz (prompt1)

prompt2 = 'Postavi maksimalnu temperaturu'

y = ulaz (prompt2)

prompt3 = 'pritisnite bilo koji taster za početak'

pauza

figura

h = animirana linija;

ax = gca;

ax. YGrid = 'uključeno';

ax. YLim = [65 85];

stop = netačno;

startTime = datetime ('now');

while ~ stop

% Očitavanje trenutne vrijednosti napona

v = readVoltage (a, 'A0');

% Izračunajte temperaturu iz napona (na osnovu lista sa podacima)

TempC = (v - 0,5)*100;

TempF = 9/5*TempC + 32;

% Preuzmite trenutno vrijeme

t = datetime ('now') - startTime;

% Dodajte bodove animaciji

dodatne tačke (h, datumnum (t), TempF)

% Ažuriranje osi

ax. XLim = datumbroj ([t-sekundi (15) t]);

datetick ('x', 'keeplimits')

drawnow

% Provjerite stanje zaustavljanja

stop = readDigitalPin (a, 'D12');

Korak 2: Zvučni signal

Zujalica
Zujalica

· Žica u zujalici koja će se koristiti za signaliziranje ekstremno visokih ili ekstremno niskih temperatura

· Ne vodi se žica od pozitivne kolone do pozitivne strane zujalice

· Umjesto toga, žica se vodi s pozitivne strane zujalice do priključka s oznakom "11"

Ovo će se kasnije koristiti za pozivanje lokacije zujalice u pisanom kodu.

· Kôd za zujalicu:

ako je TempF> = y

disp ('zatvori vrata vruće je')

playTone (a, 'D11', 500, 1)

elseif TempF <= x

disp ('zatvori vrata hladno je')

playTone (a, 'D11', 250, 1)

kraj

kraj

Korak 3: Optički detektor/fototranzistor

Optički detektor/fototranzistor
Optički detektor/fototranzistor

· Ovaj senzor zahtijeva otpornike za razliku od drugih

· Provjerite jesu li sva četiri zupca senzora uključena u petlju nakon uključivanja žica

· Senzor detektuje promjenu svjetlosti, koja predstavlja kretanje, i snima je kao ulaz

· Kod za optički detektor/fototranzistor:

jasno a

a = arduino ('/dev/tty.usbserial-DN01DVI2', 'Uno', 'Biblioteke', 'Servo');

prompt = 'Postavi prag nivoa svjetlosti'

z = ulaz (upit)

lightLevel = 0

dok je lightLevel ~ = -1

lightLevel = readVoltage (a, 'A1')

ako je lightLevel> = z

answer = questdlg ('želite promijeniti AC?', 'Da', 'Ne')

prebaci odgovor

slučaj 'Da'

answer2 = questdlg ('Uključivanje AC -a gore ili dolje?', 'odgovor', 'Dolje', 'Gore', 'Gore')

prebaci odgovor2

kućište "dolje"

s = servo (a, 'D10');

za ugao = 0:.1:.5

writePosition (s, angle);

current_position = readPosition (s);

trenutna pozicija = trenutna pozicija * 180;

% ispis trenutne pozicije servo motora

fprintf ('Trenutna pozicija je %d / n', trenutna_pozicija);

% potrebno je malo kašnjenje tako da se servo može postaviti na

% ugla na to.

pauza (2);

kraj

% vratiti motor u položaj 0 ugla

writePosition (s, 0);

clear s

prompt = 'Pritisnite bilo koji taster za nastavak'

questdlg ('AC isključen', 'odgovor', 'U redu', 'U redu')

slučaj 'Gore'

s = servo (a, 'D10');

za ugao =.5:.1: 1

writePosition (s, angle);

current_position = readPosition (s);

trenutna pozicija = trenutna pozicija * 180;

% ispis trenutne pozicije servo motora

fprintf ('Trenutna pozicija je %d / n', trenutna_pozicija);

% potrebno je malo kašnjenje tako da se servo može postaviti na

% ugla na to.

pauza (2);

kraj

Korak 4: Servo

Servo
Servo

· Servo predstavlja

klima uređaj i izlaz je iz ulaza za detekciju pokreta

· Potrebna je pozitivna žica, žica za uzemljenje i žica od priključka "D9" do serva

· Kôd za servo:

% vratiti motor u položaj 0 ugla

writePosition (s, 0);

clear s

prompt = 'Pritisnite bilo koji taster za nastavak'

questdlg ('AC gore', 'response', 'Ok', 'Ok')

kraj

kraj

pauza

break

kraj

kraj

*Posebna napomena: neki od kodova za servo integrirani su sa kodom za optički detektor/fototranzistor.

Preporučuje se: