Inhaltsverzeichnis:
- Schritt 1: Was ist MPPT und warum brauchen wir es?
- Schritt 2: WIE FUNKTIONIERT MPPT?
- Schritt 3: Implementieren von MPPT auf Arduino
- Schritt 4: Buck-Konverter
- Schritt 5: Letzte Ausbesserung -
- Schritt 6: AKTUALISIEREN: - Tatsächlicher Schaltplan, Stückliste und Code
Video: Arduino - PV MPPT Solarladegerät - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:16
Es gibt viele Laderegler auf dem Markt. Gewöhnliche billige Laderegler sind nicht effizient, um die maximale Leistung von Sonnenkollektoren zu nutzen. Diejenigen, die effizient sind, sind sehr teuer.
Also beschloss ich, meinen eigenen Laderegler zu entwickeln, der effizient und intelligent genug ist, um den Batteriebedarf und die Solarbedingungen zu verstehen. Es ergreift geeignete Maßnahmen, um die maximal verfügbare Energie aus der Solarenergie zu beziehen und sehr effizient in die Batterie zu legen.
WENN SIE MEINE BEMÜHUNG MÖGEN, ALS BITTE DIESE ANLEITUNG ABSTIMMEN.
Schritt 1: Was ist MPPT und warum brauchen wir es?
Unsere Solarmodule sind dumm und nicht schlau, um den Batteriezustand zu verstehen. Angenommen, wir haben ein 12V/100-Watt-Solarpanel und es wird je nach Hersteller eine Leistung zwischen 18V-21V liefern, aber Batterien sind für eine Nennspannung von 12V ausgelegt, bei voller Ladung werden sie 13,6V und bei voller Ladung 11,0V betragen entladen. Nehmen wir nun an, unsere Batterien werden mit 13 V geladen, die Panels geben 18 V, 5,5 A bei 100% Arbeitseffizienz (nicht möglich, 100% zu haben, aber nehmen wir an). gewöhnliche Controller haben einen PWM-Spannungsregler ckt, der die Spannung auf 13,6 absenkt, aber keine Stromverstärkung. es bietet nur nachts Schutz gegen Überladung und Kriechströme der Panels.
Wir haben also 13,6 V * 5,5 A = 74,8 Watt.
Wir verlieren ca. 25 Watt.
Um dieses Problem zu beheben, habe ich den smps-Abwärtswandler verwendet. diese Art von Konvertern haben einen Wirkungsgrad von über 90%.
Das zweite Problem, das wir haben, ist die nichtlineare Leistung von Sonnenkollektoren. Sie müssen mit einer bestimmten Spannung betrieben werden, um die maximal verfügbare Leistung zu ernten. Ihre Leistung variiert im Laufe des Tages.
Um dieses Problem zu lösen, werden MPPT-Algorithmen verwendet. MPPT (Maximum Power Point Tracking), wie der Name schon sagt, verfolgt dieser Algorithmus die maximal verfügbare Leistung von Panels und variiert die Ausgangsparameter, um den Zustand aufrechtzuerhalten.
Durch die Verwendung von MPPT erzeugen unsere Panels also die maximal verfügbare Leistung und der Abwärtswandler wird diese Ladung effizient in die Batterien einspeisen.
Schritt 2: WIE FUNKTIONIERT MPPT?
Ich werde das nicht im Detail besprechen. Wenn Sie es also verstehen wollen, schauen Sie sich diesen Link an -Was ist MPPT?
In diesem Projekt habe ich die Eingangs-V-I-Eigenschaften und auch die Ausgangs-V-I verfolgt. Durch Multiplizieren der Eingangs-V-I und Ausgangs-V-I können wir die Leistung in Watt erhalten.
Sagen wir, wir haben zu jeder Tageszeit 17 V, 5 A, also 17x5 = 85 Watt. gleichzeitig beträgt unsere Leistung 13 V, 6A also 13x6 = 78 Watt.
Jetzt erhöht oder verringert MPPT die Ausgangsspannung durch Vergleich mit der vorherigen Eingangs-/Ausgangsleistung.
Wenn die vorherige Eingangsleistung hoch und die Ausgangsspannung niedriger als die aktuelle war, wird die Ausgangsspannung wieder niedriger, um zur hohen Leistung zurückzukehren, und wenn die Ausgangsspannung hoch war, wird die aktuelle Spannung auf das vorherige Niveau erhöht. Daher schwingt es um den maximalen Leistungspunkt herum. diese Schwingungen werden durch effiziente MPPT-Algorithmen minimiert.
Schritt 3: Implementieren von MPPT auf Arduino
Dies ist das Gehirn dieses Ladegeräts. Unten ist der Arduino-Code, um die Ausgabe zu regulieren und MPPT in einem einzigen Codeblock zu implementieren.
// Iout = Ausgangsstrom
// Vout = Ausgangsspannung
// Vin = Eingangsspannung
// Pin = Eingangsleistung, Pin_vorheriger = letzte Eingangsleistung
// Vout_last = letzte Ausgangsspannung, Vout_sense = aktuelle Ausgangsspannung
void regulieren(float Iout, float Vin, float Vout) { if((Vout>Vout_max) || (Iout>Iout_max) || ((Pin>Pin_vorher && Vout_sense<Vout_last) || (PinVout_last)))
{
if(duty_cycle>0)
{
Arbeitszyklus -=1;
}
analogWrite (buck_pin, duty_cycle);
}
sonst wenn ((Vout
{
if(duty_cycle<240)
{ Arbeitszyklus+=1;
}
analogWrite (buck_pin, duty_cycle);
}
Pin_vorheriger = Pin;
Vin_last = Vin;
Vout_last = Vout;
}
Schritt 4: Buck-Konverter
Ich habe N-Kanal-Mosfet verwendet, um den Abwärtswandler zu machen. normalerweise wählen die Leute P-Kanal-Mosfet für High-Side-Switching, und wenn sie N-Kanal-Mosfet für den gleichen Zweck wählen, ist ein Treiber-IC erforderlich oder Boot-Strapping ckt.
aber ich habe den Abwärtswandler ckt so modifiziert, dass er eine Low-Side-Umschaltung mit N-Kanal-Mosfet hat. i, m unter Verwendung des N-Kanals, da diese geringe Kosten, hohe Nennleistungen und eine geringere Verlustleistung aufweisen. Dieses Projekt verwendet IRFz44n-Mosfet mit Logikpegel, sodass es direkt von einem Arduino-PWM-Pin angesteuert werden kann.
Für einen höheren Laststrom sollte man einen Transistor verwenden, um 10 V am Gate anzulegen, um den Mosfet vollständig in die Sättigung zu bringen und die Verlustleistung zu minimieren, das habe ich auch getan.
Wie Sie in ckt oben sehen können, habe ich den Mosfet auf -ve-Spannung gelegt und somit +12 V vom Panel als Masse verwendet. Diese Konfiguration ermöglicht es mir, einen N-Kanal-Mosfet für Abwärtswandler mit minimalen Komponenten zu verwenden.
aber es hat auch einige nachteile. Da Sie beide Seiten -ve Spannung getrennt haben, haben Sie keine gemeinsame Bezugsmasse mehr. Daher ist das Messen von Spannungen sehr schwierig.
Ich habe das Arduino an Solar-Eingangsklemmen angeschlossen und seine -ve-Leitung als Masse für Arduino verwendet. Wir können die Eingangsspannung an dieser Stelle leicht messen, indem wir einen Spannungsteiler ckt gemäß unserer Anforderung verwenden. kann aber die Ausgangsspannung nicht so einfach messen, da wir keine gemeinsame Masse haben.
Dafür gibt es jetzt einen Trick. Anstatt die Spannung am Ausgangskondensator zu messen, habe ich die Spannung zwischen zwei -ve-Leitungen gemessen. Verwenden von Solar -ve als Masse für Arduino und Ausgang -ve als zu messendes Signal / Spannung. Der Wert, den Sie mit dieser Messung erhalten haben, sollte von der gemessenen Eingangsspannung abgezogen werden und Sie erhalten die tatsächliche Ausgangsspannung am Ausgangskondensator.
Vout_sense_temp=Vout_sense_temp*0.92+float(raw_vout)*volt_factor*0.08; // volatge über Input-Gnd und Output-Gnd messen.
Vout_sense=Vin_sense-Vout_sense_temp-diode_volt; // Spannungsdifferenz zwischen zwei Erdungen auf Ausgangsspannung ändern..
Für Strommessungen habe ich ACS-712 Strommessmodule verwendet. Sie wurden von Arduino mit Strom versorgt und mit dem Eingang Gnd verbunden.
interne Timer werden modifiziert, um 62,5 kHz PWM an Pin D6 zu gewinnen. die verwendet wird, um den Mosfet anzutreiben. eine ausgangssperrdiode wird benötigt, um einen sperrstrom- und verpolungsschutz bereitzustellen. Der Wert des Induktors hängt von den Anforderungen an die Frequenz und den Ausgangsstrom ab. Sie können online verfügbare Abwärtswandler-Rechner verwenden oder 100uH 5A-10A Last verwenden. Überschreiten Sie niemals den maximalen Ausgangsstrom der Induktivität um 80%-90%.
Schritt 5: Letzte Ausbesserung -
Sie können Ihrem Ladegerät auch zusätzliche Funktionen hinzufügen. wie meins haben LCD auch die Parameter und 2 Schalter, um Eingaben vom Benutzer zu übernehmen.
Ich werde den endgültigen Code aktualisieren und das ckt-Diagramm sehr bald vervollständigen.
Schritt 6: AKTUALISIEREN: - Tatsächlicher Schaltplan, Stückliste und Code
AKTUALISIEREN:-
Ich habe den Code, die BOM und die Schaltung hochgeladen. es ist etwas anders als meins, weil es einfacher ist, dieses zu machen.
Empfohlen:
Einen Arduino-Gitarren-Tuner herstellen – wikiHow
So bauen Sie einen Arduino-Gitarren-Tuner: Dies sind die Anweisungen, um einen Gitarren-Tuner aus einem Arduino und mehreren anderen Komponenten zu machen. Mit Grundkenntnissen in Elektronik und Codierung können Sie dieses Gitarrenstimmgerät herstellen. Zuerst müssen Sie wissen, was die Materialien sind. Ma
ALARMA ARDUINO CON SENSOR DE MOVIMIENTO, SIRENA Y AVISO AL TLF. MÓVIL: 9 Schritte
ALARMA ARDUINO CON SENSOR DE MOVIMIENTO, SIRENA Y AVISO AL TLF. MÓVIL: Este proyecto consiste en a alarma básica que Detecta presencia, activa una sirena de 108dB y visa al usuario mediante un SMS (opcional). Permite también el control remoto básico por parte del usuario a través de SMS (encendido, apagado, reinicio
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Arduino-Programmierung über das Handy -- Arduinodroid -- Arduino-Ide für Android -- Blinzeln: 4 Schritte
Arduino-Programmierung über das Handy || Arduinodroid || Arduino-Ide für Android || Blink: Bitte abonnieren Sie meinen Youtube-Kanal für weitere Videos…… Arduino ist ein Board, das direkt über USB programmiert werden kann. Es ist sehr einfach und günstig für College- und Schulprojekte oder sogar für Produktprototypen. Viele Produkte bauen zunächst darauf für i
MPPT-Laderegler Teil 1: 4 Schritte
MPPT-Laderegler Teil 1: Da wir wissen, dass Solarenergie die Zukunft aller Elektronik sein wird, benötigen wir jedoch eine etwas komplizierte Schaltung, um Sonnenenergie effizient zu nutzen. Wie wir über das traditionelle PWM-basierte Solarladegerät wissen, ist es einfach zu bauen und kostengünstig aber es verschwendet viel o