İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Bu Eğitim Tablosu, rüzgar ve güneş enerjisinin edinilmesine odaklanan bir prototip ev enerji sistemi oluşturmak için bir Arduino kiti/devre kartı ve MATLAB'ın nasıl kullanılacağını detaylandıracaktır. Uygun malzemeler ve verilen kod/kurulum ile kendi küçük ölçekli, yeşil enerji toplama sisteminizi oluşturabilirsiniz.
Bu proje, Knoxville'deki Tennessee Üniversitesi'ndeki Tickle Mühendislik Koleji'ndeki öğrenciler tarafından tasarlanmıştır.
Adım 1: Gerekli Malzemeler
1) MATLAB'ın kurulu olduğu bir dizüstü bilgisayar.
2) Arduino destek paketini indirmek için bu bağlantıyı kullanın:
3) Arduino mikro denetleyici kitine de ihtiyacınız olacak.
4) DC motoru monte etmek için uygun bir platform. Verilen örnekte, servo motoru desteklemek ve DC motoru üste monte etmek için ahşap bir oyuk kullanılmıştır.
5) Bu bağlantı, monte edilen DC motora takılabilen bir pervaneyi 3D yazdırmak için kullanılabilir:
Adım 2: Kod Bölüm 1: Değişken Kurulumu
Bu kod, ilk değişken bildirimi için gereklidir.
clc; hepsini temizle;
%Pinler ve Arduino gibi Nesneleri Bildirme a=arduino('com3', 'uno'); s1 = servo(a, 'D9', 'MinPulseSüresi', 1e-3, 'MaxPulseSüresi', 2e-3); s2 = servo(a, 'D10', 'MinPulseSüresi', 1e-3, 'MaxPulseSüresi', 2e-3); configurePin(a, 'A0', 'Analoginput'); configurePin(a, 'A1', 'Analoginput'); configurePin(a, 'A2', 'Analoggiriş'); configurePin(a, 'A3', 'Analoginput') b=0; ben=0.1 rakam
Adım 3: Kod Bölüm 2: Türbin Kodu
ben<10 iken;
%Türbin Parçası potval=readVoltage(a, 'A0') servoval=potval./5 writePosition(s1, servoval)
Adım 4: Kod Bölüm 3: Güneş Paneli Kodu ve Plot
Bu kod, servoyu güneş hareketine göre hareket ettirmek için iki foto-direnç kullanmanıza izin verecektir. Kod ayrıca rüzgar türbini için rüzgar yönüne karşı zamanın kutupsal bir grafiğini çizecektir.
%Güneş Paneli Parçası
photoval1=readVoltage(a, 'A1'); photoval2=readVoltage(a, 'A2'); fark= fotoval1-fotoval2 absdiff=mutlak(fark) eğer fark > 1.5 ise writePosition(s2, 0); elseif farkı > 1.25 writePosition(s2, 0.3); elseif absdiff < 1 writePosition(s2, 0,5); elseif farkı < (-1) writePosition(s2, 0.7); elseif farkı < (-1.25) writePosition(s2, 1); else end i=i+0.1 theta=(potval/5).*(2*pi) polarscatter(theta, i) sonunda bekle
Adım 5: Kod Bölüm 4: E-posta
Çizim verilerini içeren bir e-postayı düzgün bir şekilde almak için 'örnek e-posta'yı istediğiniz adresle değiştirin.
%E-posta Bölümü
title('Rüzgar Yönüne Karşı Zaman') saveas(gcf, 'Turbine.png') %sayı kaydeder setpref('Internet', 'SMTP_Server', 'smtp.gmail.com'); setpref('İnternet', 'E_mail', '[email protected]'); setpref('Internet', 'SMTP_Username', '[email protected]'); % gönderici kullanıcı adı setpref('Internet', 'SMTP_Password', 'gssegsse'); % Gönderici parolası sahne = Java.lang. System.getProperties; props.setProperty('mail.smtp.auth', 'true'); props.setProperty('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory'); props.setProperty('mail.smtp.socketFactory.port', '465'); sendmail('example email', 'Türbin Verisi', 'Bu sizin türbin verileriniz. Gezegeni kurtardığınız için teşekkürler!', 'Turbine.png') disp('e-posta gönderildi')
6. Adım: Ekstra Yardım
Devre kartınızı kurarken ekstra yardım için Arduino mikro denetleyici kitiyle birlikte gelen SIK Kılavuzuna başvurabilirsiniz. MathWorks web sitesi de MATLAB desteği için faydalı bir araç olabilir.