Innehållsförteckning:

Energy Saver 3000: 7 steg
Energy Saver 3000: 7 steg

Video: Energy Saver 3000: 7 steg

Video: Energy Saver 3000: 7 steg
Video: How a Gas Turbine Works 2024, November
Anonim
Energisparare 3000
Energisparare 3000

Adrien Green, Huy Tran, Jody Walker

Användningen av en Raspberry Pi -dator och Matlab är ett enkelt och effektivt sätt att hjälpa husägare att minska energiförbrukningen där. Det bästa med Energy Saver 3000 är att det är väldigt enkelt att installera och använda. Huvudsyftet med Energy Saver 3000 är att göra det möjligt för husägare att kunna spåra sina energiräkningar för att se hur mycket de spenderar, och att låta husägare släcka lamporna i husen på distans med ett tryck på en knapp.

Steg 1: Delar som används

Delar som används
Delar som används
Delar som används
Delar som används
Delar som används
Delar som används

1: Raspberry Pi -dator

2: Brödbräda

3: Bygeltrådar

4: Tryckknapp

5: Mini LED -lampor

6: 330 ohm, 10 Kohm och ett 300 ohm motstånd

7: Ethernet -kabel

8: Ljus fotocell

Steg 2: Problemmeddelande

Vårt projekt var att designa en energisparare för hemmet med en Raspberry Pi -dator och MATLAB. Vårt mål var att bygga ett system som gjorde det möjligt för användare att spåra sina energiräkningar för att se om de kan minska sin energiförbrukning. Vi ville också att användarna skulle kunna stänga av sina lampor medan de var borta med ett tryck på en knapp. För att göra detta kopplade vi upp en fotocell för att känna när lamporna är tända. Om lamporna lyser kommer MATLAB -programmet att beräkna hur länge de har varit på och hur mycket energi och pengar som har spenderats sedan de har varit på.

Steg 3: Konfiguration

Uppstart
Uppstart

Trä upp brödbrädan enligt bilden ovan.

Steg 4: MATLAB -kod för styrning av fotocellen

funktion control_light () rpi = raspi ();

writeDigitalPin (rpi, 12, 1)

tid = 0

summa = 0

Tid = 0

Kostnad = 0

glödlampa = 100/1000;% kilowatt

för i = 1: 2

tic

medan det är sant

x = readDigitalPin (rpi, 13)

om x == 1

writeDigitalPin (rpi, 19, 1)

annarsif x == 0

writeDigitalPin (rpi, 19, 0)

toc;

tid = tid + toc

kwh = toc * glödlampa

dollar = 0,101

kostnad = kwh * dollar

sumcost = sumcost + kostnad

X = linspace (tid, tid, 10)

Y = linspace (kostnad, sumcost, 10)

Tid = tid

Kostnad = summa

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

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

xlabel ('Tid (timmar)')

ylabel ('Kostnad (dollar)')

vänta

ha sönder

slutet

slutet

paus (5)

tic

medan det är sant

x = readDigitalPin (rpi, 13)

om x == 1

writeDigitalPin (rpi, 19, 1)

annarsif x == 0

writeDigitalPin (rpi, 19, 0)

toc;

tid = Tid + toc

kwh = toc * glödlampa

dollar = 0,101

kostnad = kwh * dollar

sumcost = Kostnad + kostnad

X = linspace (tid, tid, 10)

Y = linspace (kostnad, sumcost, 10)

Tid = tid

Kostnad = summa

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

tomt (X, Y, 'g')

title ('Cost Over Time')

xlabel ('Tid (timmar)')

ylabel ('Kostnad (dollar)')

vänta

ha sönder

slutet

slutet

paus (5)

slutet

Steg 5: MATLAB -kod för att släcka lampor

function button_controlv1 ()

rpi = raspi ();

kondi = 1;

medan true % skapar en oändlig loop för att hålla koden igång

knapp = readDigitalPin (rpi, 6); % Läser knapptryckningsvärdet på stift 6

if -knappen == 0

condi = condi + 1

slutet

om mod (condi, 2) == 0

writeDigitalPin (rpi, 17, 0)

h = msgbox ('Du släckte lampan.:)') waitfor (h);

ha sönder

slutet

om mod (condi, 2) == 1

writeDigitalPin (rpi, 17, 1)

slutet

slutet

Steg 6: MATLAB -kod för att tända lampor

function button_controlv2 ()

rpi = raspi ();

kondi = 2;

medan true % skapar en oändlig loop för att hålla koden igång

knapp = readDigitalPin (rpi, 6); % Läser knapptryckningsvärdet på stift 6

if -knappen == 0

condi = condi + 1

slutet

om mod (condi, 2) == 0

writeDigitalPin (rpi, 17, 0)

slutet

om mod (condi, 2) == 1

writeDigitalPin (rpi, 17, 1)

h = msgbox ('Du har tänt lampan.:(')

vänta på (h);

paus (10)

ha sönder

slutet

slutet

Steg 7: MATLAB -kod för GUI

funktion EnergySaver3000 ()

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

imgfile = 'Lightbulb.jpg'; urlwrite (imgurl, imgfile);

imgdata = imread (imgfile);

h = msgbox ('Välkommen till Energy Saver 3000!', '', 'custom', imgdata);

vänta på (h);

klart h;

medan det är sant

iprogram = menu ('Vilket program vill du köra?', 'Bill Calculator', 'Light Control');

om iprogram == 1

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

Stäng alla

annat

iprogram == 2

slutet

klart h;

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

om ichoice == 1

button_controlv2 ()

h = msgbox ('Klart !!!')

elseif ichoice == 2

button_controlv1 ()

h = msgbox ('Klart !!!')

elseif ichoice == 3

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

h = msgbox ('Klart !!!')

slutet

vänta på (h);

slutet

slutet

Rekommenderad: