Innholdsfortegnelse:

Energy Saver 3000: 7 trinn
Energy Saver 3000: 7 trinn

Video: Energy Saver 3000: 7 trinn

Video: Energy Saver 3000: 7 trinn
Video: ✔️ Делайте так если мучают Отрыжка, Изжога, Вздутие Живота ✔️ Семейные Секреты Кухни Академиков #2 2024, November
Anonim
Energy Saver 3000
Energy Saver 3000

Adrien Green, Huy Tran, Jody Walker

Bruken av en Raspberry Pi -datamaskin og Matlab er en enkel og effektiv måte å hjelpe huseiere med å redusere energiforbruket der. Det beste med Energy Saver 3000 er at den er veldig enkel å sette opp og bruke. Hovedformålet med Energy Saver 3000 er å la huseiere kunne spore strømregningen for å se hvor mye de bruker, og la huseiere slå av lysene i hjemmene eksternt med et trykk på en knapp.

Trinn 1: Deler brukt

Deler brukt
Deler brukt
Deler brukt
Deler brukt
Deler brukt
Deler brukt

1: Raspberry Pi -datamaskin

2: Brødbrett

3: Stikkledere

4: Trykknapp

5: Mini LED -lys

6: 330 ohm, 10 Kohm og en 300 ohm motstand

7: Ethernet -kabel

8: Lys fotocelle

Trinn 2: Problemerklæring

Prosjektet vårt var å designe en energisparer for hjemmet ved hjelp av en Raspberry Pi -datamaskin og MATLAB. Målet vårt var å bygge et system som tillot brukere å spore energiregningen for å se om de kan redusere energiforbruket. Vi ønsket også at brukerne skulle slå av lyset mens de var borte med et trykk på en knapp. For å gjøre dette, koblet vi til en fotocelle for å kjenne når lysene er på. Hvis lysene er på, vil MATLAB -programmet beregne hvor lenge de har vært på og hvor mye energi og penger som er brukt siden de har vært på.

Trinn 3: Oppsett

Oppsett
Oppsett

Koble opp brødbrettet som vist på bildet ovenfor.

Trinn 4: MATLAB -kode for kontroll av fotocellen

funksjon control_light () rpi = raspi ();

writeDigitalPin (rpi, 12, 1)

tid = 0

sum = 0

Tid = 0

Kostnad = 0

pære = 100/1000;% kilowatt

for i = 1: 2

tic

mens det er sant

x = readDigitalPin (rpi, 13)

hvis x == 1

writeDigitalPin (rpi, 19, 1)

elseif x == 0

writeDigitalPin (rpi, 19, 0)

toc;

time = time + toc

kwh = toc * pære

dollar = 0,101

pris = kwh * dollar

sumkostnad = sumkostnad + kostnad

X = linspace (tid, tid, 10)

Y = linspace (Kostnad, sum, 10)

Tid = tid

Kostnad = sum

disp (['Light has been on for', num2str (toc), 'hours. Cost = $', num2str (cost)])

plot (X, Y, 'b') tittel ('Cost Over Time')

xlabel ('Tid (timer)')

ylabel ('Kostnad (dollar)')

vent litt

gå i stykker

slutt

slutt

pause (5)

tic

mens det er sant

x = readDigitalPin (rpi, 13)

hvis x == 1

writeDigitalPin (rpi, 19, 1)

elseif x == 0

writeDigitalPin (rpi, 19, 0)

toc;

time = Time + toc

kwh = toc * pære

dollar = 0,101

pris = kwh * dollar

sumcost = Kostnad + kostnad

X = linspace (tid, tid, 10)

Y = linspace (Kostnad, sum, 10)

Tid = tid

Kostnad = sum

disp (['Light has been on for', num2str (toc), 'hours. Cost = $', num2str (cost)])

tomt (X, Y, 'g')

tittel ('Cost Over Time')

xlabel ('Tid (timer)')

ylabel ('Kostnad (dollar)')

vent litt

gå i stykker

slutt

slutt

pause (5)

slutt

Trinn 5: MATLAB -kode for å slå av lyset

function button_controlv1 ()

rpi = raspi ();

kondi = 1;

mens true % oppretter en uendelig sløyfe for å holde koden i gang

knapp = readDigitalPin (rpi, 6); % Leser knappens trykkverdi på pinne 6

hvis knappen == 0

condi = condi + 1

slutt

hvis mod (condi, 2) == 0

writeDigitalPin (rpi, 17, 0)

h = msgbox ('Du slo av lyset.:)') waitfor (h);

gå i stykker

slutt

hvis mod (condi, 2) == 1

writeDigitalPin (rpi, 17, 1)

slutt

slutt

Trinn 6: MATLAB -kode for å slå på lys

funksjonsknapp_kontrollv2 ()

rpi = raspi ();

kondi = 2;

mens true % lager en uendelig sløyfe for å holde koden i gang

knapp = readDigitalPin (rpi, 6); % Leser knappens trykkverdi på pinne 6

hvis knappen == 0

condi = condi + 1

slutt

hvis mod (condi, 2) == 0

writeDigitalPin (rpi, 17, 0)

slutt

hvis mod (condi, 2) == 1

writeDigitalPin (rpi, 17, 1)

h = msgbox ('Du slo på lyset.:(')

vente (h);

pause (10)

gå i stykker

slutt

slutt

Trinn 7: MATLAB -kode for GUI

funksjon EnergySaver3000 ()

imgurl = 'https://clipart-library.com/images/pc585dj9i.jpg';

imgfile = 'Lyspære.jpg'; urlwrite (imgurl, imgfile);

imgdata = imread (imgfile);

h = msgbox ('Welcome to the Energy Saver 3000!', '', 'custom', imgdata);

vente (h);

klar h;

mens det er sant

iprogram = menu ('Hvilket program vil du kjøre?', 'Bill Calculator', 'Light Control');

hvis iprogram == 1

control_light () h = msgbox ('Ferdig !!!')

Lukk alle

eller hvis

iprogram == 2

slutt

klar h;

ichoice = menu ('Light Control', 'Turn On', 'Turn Off', 'Nevermind');

hvis ichoice == 1

button_controlv2 ()

h = msgbox ('Ferdig !!!')

elseif ichoice == 2

button_controlv1 ()

h = msgbox ('Ferdig !!!')

elseif ichoice == 3

h = msgbox ('Du gjorde ingenting:(') waitfor (h);

h = msgbox ('Ferdig !!!')

slutt

vente (h);

slutt

slutt

Anbefalt: