Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Adrien Green, Huy Tran, Jody Walker
Penggunaan komputer Raspberry Pi dan Matlab adalah cara sederhana dan efektif untuk membantu pemilik rumah mengurangi konsumsi energi di sana. Bagian terbaik tentang Penghemat Energi 3000 adalah sangat mudah diatur dan digunakan. Tujuan utama Penghemat Energi 3000 adalah untuk memungkinkan pemilik rumah dapat melacak tagihan energi mereka untuk melihat berapa banyak yang mereka belanjakan, dan untuk memungkinkan pemilik rumah mematikan lampu di rumah mereka dari jarak jauh dengan menekan sebuah tombol.
Langkah 1: Bagian yang Digunakan
1: Komputer Raspberry Pi
2: Papan tempat memotong roti
3: Kabel jumper
4: Tekan tombol
5: Lampu LED mini
6: 330 ohm, 10 Kohm, dan resistor 300 ohm
7: Kabel Ethernet
8: Fotosel ringan
Langkah 2: Pernyataan Masalah
Proyek kami adalah merancang penghemat energi rumah menggunakan komputer Raspberry Pi dan MATLAB. Tujuan kami adalah membangun sistem yang memungkinkan pengguna melacak tagihan energi mereka untuk melihat apakah mereka dapat mengurangi konsumsi energi. Kami juga ingin pengguna dapat mematikan lampu mereka saat mereka pergi dengan menekan sebuah tombol. Untuk melakukan ini, kami memasang fotosel untuk merasakan saat lampu menyala. Jika lampu menyala, program MATLAB akan menghitung berapa lama lampu menyala dan berapa banyak energi dan uang yang dihabiskan sejak lampu menyala.
Langkah 3: Pengaturan
Pasang papan tempat memotong roti seperti yang ditunjukkan pada Gambar di atas.
Langkah 4: Kode MATLAB untuk Mengontrol Photocell
fungsi control_light()rpi = raspi();
tulisDigitalPin(rpi, 12, 1)
waktu = 0
biaya total = 0
Waktu = 0
Biaya = 0
bohlam = 100/1000;% kilowatt
untuk saya = 1:2
tik
sementara benar
x = readDigitalPin(rpi, 13)
jika x == 1
tulisDigitalPin(rpi, 19, 1)
jika tidak x == 0
tulisDigitalPin(rpi, 19, 0)
tok;
waktu = waktu + toc
kwh = toc * bohlam
dolar = 0,101
biaya = kwh * dolar
jumlah biaya = jumlah biaya + biaya
X = linspace(Waktu, waktu, 10)
Y = linspace(Biaya, jumlah biaya, 10)
Waktu = waktu
Biaya = jumlah biaya
disp(['Lampu telah menyala selama ', num2str(toc), ' jam. Biaya = $', num2str(biaya)])
plot(X, Y, 'b') title('Biaya Seiring Waktu')
xlabel('Waktu (Jam)')
ylabel('Biaya ($Dolar)')
tunggu
merusak
akhir
akhir
jeda (5)
tik
sementara benar
x = readDigitalPin(rpi, 13)
jika x == 1
tulisDigitalPin(rpi, 19, 1)
jika tidak x == 0
tulisDigitalPin(rpi, 19, 0)
tok;
waktu = Waktu + toc
kwh = toc * bohlam
dolar = 0,101
biaya = kwh * dolar
sumcost = biaya + biaya
X = linspace(Waktu, waktu, 10)
Y = linspace(Biaya, jumlah biaya, 10)
Waktu = waktu
Biaya = jumlah biaya
disp(['Lampu telah menyala selama ', num2str(toc), ' jam. Biaya = $', num2str(biaya)])
plot(X, Y, 'g')
title('Biaya Seiring Waktu')
xlabel('Waktu (Jam)')
ylabel('Biaya ($Dolar)')
tunggu
merusak
akhir
akhir
jeda (5)
akhir
Langkah 5: Kode MATLAB untuk Mematikan Lampu
fungsi button_controlv1()
rpi = raspi();
kondi = 1;
sementara true % membuat loop tak terbatas untuk menjaga kode tetap berjalan
tombol = readDigitalPin(rpi, 6); % Membaca nilai tekan tombol pada pin 6
jika tombol == 0
kondi = kondi + 1
akhir
jika mod(kondisi, 2) == 0
tulisDigitalPin(rpi, 17, 0)
h = msgbox('Anda mematikan lampu.:)') waitfor(h);
merusak
akhir
jika mod(kondisi, 2) == 1
tulisDigitalPin(rpi, 17, 1)
akhir
akhir
Langkah 6: Kode MATLAB untuk Menyalakan Lampu
fungsi button_controlv2()
rpi = raspi();
kondi = 2;
sementara true % membuat loop tak terbatas untuk menjaga kode tetap berjalan
tombol = readDigitalPin(rpi, 6); % Membaca nilai tekan tombol pada pin 6
jika tombol == 0
kondi = kondi + 1
akhir
jika mod(kondisi, 2) == 0
tulisDigitalPin(rpi, 17, 0)
akhir
jika mod(kondisi, 2) == 1
tulisDigitalPin(rpi, 17, 1)
h = msgbox('Anda menyalakan lampu.:(')
tunggu(h);
jeda (10)
merusak
akhir
akhir
Langkah 7: Kode MATLAB untuk GUI
fungsi Penghemat Energi3000()
imgurl='https://clipart-library.com/images/pc585dj9i.jpg';
imgfile='Lightbulb.jpg'; urlwrite(imgurl, imgfile);
imgdata= imread(imgfile);
h=msgbox('Selamat datang di Penghemat Energi 3000!', '', 'custom', imgdata);
tunggu(h);
jelas h;
sementara benar
iprogram=menu('Program Yang Ingin Anda Jalankan?', 'Kalkulator Tagihan', 'Kontrol Lampu');
jika sayaprogram==1
control_light() h=msgbox('Selesai!!!')
tutup semua
selain itu
sayaprogram==2
akhir
jelas h;
ichoice=menu('Kontrol Cahaya', 'Aktifkan', 'Matikan', 'Nevermind');
jika ichoice == 1
tombol_kontrolv2()
h=msgbox('Selesai!!!')
pilihan lain jika ==2
tombol_kontrolv1()
h=msgbox('Selesai!!!')
pilihan lain jika = 3
h=msgbox('Anda tidak melakukan apa-apa:(') waitfor(h);
h=msgbox('Selesai!!!')
akhir
tunggu(h);
akhir
akhir