Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Denna instruktion beskriver hur du använder ett Arduino -kit/kretskort och MATLAB för att skapa en prototyp för hem energisystem som fokuserar på förvärv av vind- och solenergi. Med rätt material och genom att använda den angivna koden/installationen kan du skapa ditt eget småskaliga, gröna energisamlingssystem.
Detta projekt designades av studenter vid Tickle College of Engineering vid University of Tennessee, Knoxville.
Steg 1: Material som behövs
1) En bärbar dator med MATLAB installerat.
2) Använd den här länken för att ladda ner Arduino-supportpaketet:
3) Du behöver också ett Arduino mikrokontrollsats.
4) En lämplig plattform för att montera likströmsmotorn. I det medföljande exemplet användes en träavstängning för att stödja servomotorn och montera likströmsmotorn ovanpå.
5) Denna länk kan användas för att 3D -skriva ut en propeller som kan fästas på den monterade likströmsmotorn:
Steg 2: Kod Del 1: Variabel installation
Denna kod är avgörande för initial variabeldeklaration.
clc; Rensa alla;
%Deklarera objekt som Pins och Arduino a = arduino ('com3', 'uno'); s1 = servo (a, 'D9', 'MinPulseDuration', 1e-3, 'MaxPulseDuration', 2e-3); s2 = servo (a, 'D10', 'MinPulseDuration', 1e-3, 'MaxPulseDuration', 2e-3); configurePin (a, 'A0', 'Analoginput'); configurePin (a, 'A1', 'Analoginput'); configurePin (a, 'A2', 'Analoginput'); configurePin (a, 'A3', 'Analoginput') b = 0; i = 0,1 siffra
Steg 3: Kod Del 2: Turbinkod
medan jag <10;
%Turbindel potval = readVoltage (a, 'A0') servoval = potval./5 writePosition (s1, servoval)
Steg 4: Kod Del 3: Solpanelkod och tomt
Denna kod låter dig använda två fotomotstånd för att flytta servon enligt solens rörelse. Koden kommer också att rita upp ett polärt diagram över vindriktningen mot tiden för vindkraftverket.
%Solpanel del
photoval1 = readVoltage (a, 'A1'); photoval2 = readVoltage (a, 'A2'); differens = photoval1-photoval2 absdiff = abs (skillnad) om skillnad> 1,5 writePosition (s2, 0); elseif skillnad> 1,25 writePosition (s2, 0,3); elseif absdiff <1 writePosition (s2, 0.5); elseif skillnad <(-1) writePosition (s2, 0.7); elseif skillnad <(-1,25) writePosition (s2, 1); annars slut i = i+0,1 theta = (potval/5).*(2*pi) polarscatter (theta, i) håll på änden
Steg 5: Kod Del 4: E -post
Ändra "exempel -e -post" till önskad adress för att korrekt få ett e -postmeddelande med plottdata.
%E -postavsnitt
title ('Wind Direction vs. Time') saveas (gcf, 'Turbine.png') %sparar siffran setpref ('Internet', 'SMTP_Server', 'smtp.gmail.com'); setpref ('Internet', 'E_mail', '[email protected]'); % e -postkonto att skicka från setpref ('Internet', 'SMTP_Username', '[email protected]'); % avsändarnamn användarnamn setpref ('Internet', 'SMTP_Password', 'gssegsse'); % Avsändares lösenord rekvisita = 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 ('exempel email', 'Turbine Data', 'This is your turbine data. Tack för att du räddade planeten!', 'Turbine.png') disp ('email sent')
Steg 6: Extra hjälp
Du kan hänvisa till SIK -guiden som medföljer Arduino -mikrokontrollsatsen för extra hjälp vid installation av kretskortet. MathWorks -webbplatsen kan också vara ett användbart verktyg för MATLAB -stöd.