INHOUDSOPGAWE:
- Stap 1: Onderdele gebruik
- Stap 2: Probleemstelling
- Stap 3: Opstel
- Stap 4: MATLAB -kode vir die beheer van die fotosel
- Stap 5: MATLAB -kode om ligte uit te skakel
- Stap 6: MATLAB -kode om ligte aan te skakel
- Stap 7: MATLAB -kode vir GUI
Video: Energiebesparing 3000: 7 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Adrien Green, Huy Tran, Jody Walker
Die gebruik van 'n Raspberry Pi -rekenaar en Matlab is 'n eenvoudige en effektiewe manier om huiseienaars te help om die energieverbruik daar te verminder. Die beste deel van die Energy Saver 3000 is dat dit baie eenvoudig is om op te stel en te gebruik. Die hoofdoel van die Energy Saver 3000 is om huiseienaars in staat te stel om hul energierekening te volg om te sien hoeveel hulle spandeer, en om huiseienaars in staat te stel om die ligte in huise op afstand met 'n druk van 'n knoppie af te skakel.
Stap 1: Onderdele gebruik
1: Raspberry Pi -rekenaar
2: Broodbord
3: Springdrade
4: drukknop
5: Mini LED -ligte
6: 330 ohm, 10 Kohm en 'n weerstand van 300 ohm
7: Ethernet -kabel
8: Lig fotosel
Stap 2: Probleemstelling
Ons projek was om 'n energiebesparing vir die huis te ontwerp met 'n Raspberry Pi -rekenaar en MATLAB. Ons doel was om 'n stelsel te bou waarmee gebruikers hul energierekening kan volg om te sien of hulle hul energieverbruik kan verminder. Ons wou ook hê dat gebruikers hul ligte kan afskakel terwyl hulle met 'n druk op die knoppie weg was. Om dit te doen, het ons 'n fotosel aangeskakel om te sien wanneer die ligte aan is. As die ligte aan is, sal die MATLAB -program bereken hoe lank hulle aan is en hoeveel energie en geld bestee is sedert hulle aangeskakel is.
Stap 3: Opstel
Draai die broodbord vas soos in die prent hierbo getoon.
Stap 4: MATLAB -kode vir die beheer van die fotosel
funksie control_light () rpi = raspi ();
writeDigitalPin (rpi, 12, 1)
tyd = 0
somkoste = 0
Tyd = 0
Koste = 0
gloeilamp = 100/1000;% kilowatt
vir i = 1: 2
tiek
terwyl dit waar is
x = readDigitalPin (rpi, 13)
as x == 1
writeDigitalPin (rpi, 19, 1)
andersif x == 0
writeDigitalPin (rpi, 19, 0)
toc;
tyd = tyd + toc
kwh = toc * gloeilamp
dollar = 0.101
koste = kwh * dollars
somkoste = somkoste + koste
X = linspace (Tyd, tyd, 10)
Y = linspace (koste, somprys, 10)
Tyd = tyd
Koste = somprys
disp (['Light is on for', num2str (toc), 'hours. Cost = $', num2str (cost)])
plot (X, Y, 'b') titel ('Koste oor tyd')
xlabel ('Tyd (ure)')
ylabel ('Koste ($ dollar)')
hou vas
breek
einde
einde
pouse (5)
tiek
terwyl dit waar is
x = readDigitalPin (rpi, 13)
as x == 1
writeDigitalPin (rpi, 19, 1)
andersif x == 0
writeDigitalPin (rpi, 19, 0)
toc;
tyd = Tyd + toc
kwh = toc * gloeilamp
dollar = 0.101
koste = kwh * dollars
somkoste = Koste + koste
X = linspace (tyd, tyd, 10)
Y = linspace (koste, somprys, 10)
Tyd = tyd
Koste = somprys
disp (['Light is on for', num2str (toc), 'hours. Cost = $', num2str (cost)])
plot (X, Y, 'g')
titel ('Koste oor tyd')
xlabel ('Tyd (ure)')
ylabel ('Koste (dollar)')
hou vas
breek
einde
einde
pouse (5)
einde
Stap 5: MATLAB -kode om ligte uit te skakel
funksie button_controlv1 ()
rpi = raspi ();
kondisie = 1;
terwyl ware % 'n oneindige lus skep om die kode aan die gang te hou
knoppie = readDigitalPin (rpi, 6); % Lees die druk van die knoppie op pen 6
as knoppie == 0
condi = condi + 1
einde
as mod (condi, 2) == 0
writeDigitalPin (rpi, 17, 0)
h = msgbox ('U het die lig afgeskakel.:)') wag vir (h);
breek
einde
as mod (condi, 2) == 1
writeDigitalPin (rpi, 17, 1)
einde
einde
Stap 6: MATLAB -kode om ligte aan te skakel
funksie button_controlv2 ()
rpi = raspi ();
kondisie = 2;
terwyl ware % 'n oneindige lus skep om die kode aan die gang te hou
knoppie = readDigitalPin (rpi, 6); % Lees die druk van die knoppie op pen 6
as knoppie == 0
condi = condi + 1
einde
as mod (kondi, 2) == 0
writeDigitalPin (rpi, 17, 0)
einde
as mod (condi, 2) == 1
writeDigitalPin (rpi, 17, 1)
h = msgbox ('U het die lig aangeskakel.:(')
wag (h);
pouse (10)
breek
einde
einde
Stap 7: MATLAB -kode vir GUI
funksie EnergySaver3000 ()
imgurl = 'https://clipart-library.com/images/pc585dj9i.jpg';
imgfile = 'Gloeilamp.jpg'; urlwrite (imgurl, imgfile);
imgdata = imread (imgfile);
h = msgbox ('Welcome to the Energy Saver 3000!', '', 'custom', imgdata);
wag (h);
duidelik h;
terwyl dit waar is
iprogram = menu ('Watter program wil u uitvoer?', 'Bill Calculator', 'Light Control');
as iprogram == 1
control_light () h = msgbox ('Klaar !!!')
sluit almal
Anders as
iprogram == 2
einde
duidelik h;
ichoice = menu ('Light Control', 'Turn On', 'Turn Off', 'Nevermind');
as ichoice == 1
button_controlv2 ()
h = msgbox ('Klaar !!!')
elseif ichoice == 2
button_controlv1 ()
h = msgbox ('Klaar !!!')
elseif ichoice == 3
h = msgbox ('U het niks gedoen nie:(') wag vir (h);
h = msgbox ('Klaar !!!')
einde
wag (h);
einde
einde
Aanbeveel:
Hoe om toegang te verkry tot 'n Dell Inspiron 15 3000 -reeks hardeskyf: 10 stappe
Hoe om toegang te verkry tot 'n Dell Inspiron 15 3000 -reeks hardeskyf: Hallo Instructables -lesers, vandag sal ek jou wys hoe om toegang tot 'n hardeskyf in 'n Dell Inspiron 15 3000 -reeks skootrekenaar te kry. Waarskynlik, as u dit lees, het u probleme met die skiet van die rekenaar en wil u die hardeskyf weer plaas, of u
Smash Dash 3000: 7 stappe
Smash Dash 3000: Dit is 'n kopieplak vanaf 13/04/2019 van GitHub om deel te neem aan die Instructables LED -kompetisie! As iemand probleme ondervind, laat gerus 'n probleem op GitHub! Volledige projeklêers by https://github.com/naclyellipsis/Smash-Dash-30
EF 230: Home System 3000 Instrueerbaar: 4 stappe
EF 230: Home System 3000 Instrueerbaar: Die Home System 3000 is 'n toestel wat 'n Arduino, 'n temperatuursensor, 'n piezo -zoemer, 'n optiese detektor/fototransistor en 'n servo gebruik om maniere te wys om die energie -doeltreffendheid van die huis te verbeter
Ligte intensiteit energiebesparing met behulp van fotoselle en termistors: 6 stappe
Energiebesparing vir ligte intensiteit met behulp van fotoselle en termistors: Hierdie instruksies is ontwerp om u te leer hoe om energie te bespaar deur ligintensiteit te verander met behulp van fotoselle en termistors. Ons sal u wys hoe u die kring kan bou en die Arduino met behulp van MATLAB kan kodeer
WeatherBot 3000: 6 stappe (met foto's)
WeatherBot 3000: Oorsig Hierdie projek gebruik die Arduino MKR1000 om aan die internet te koppel en tyd en weer te kry. U benodig WiFi. Dit wys tyd en weer op die 8x8 led -skerm. Ons gebruik ikone om algemene weer te gee, soos sonnig, bewolk, reënerig, nag