Ein naiver Steuerkreis für die maximale Leistung von Solarmodulen

7

Ich spiele mit einem Solarpanel herum , nur um Dinge auszuprobieren und dabei zu lernen (ohne zu versuchen, etwas zu produzieren, das ich tatsächlich verwenden würde).
Seine Platzierung ist alles andere als optimal - vertikal hinter einem Fenster nach Südwesten. Am späten Nachmittag kommt es den optimalen Bedingungen etwas nahe - Sonnenlicht kommt aus einem anständigen Winkel. Der Rest der Zeit arbeitet es mehr oder weniger mit Umgebungslicht.
Unter diesen Umständen erzeugt es einen offenen Stromkreis von etwa 18 bis 20 V. Wenn ich jedoch eine Last anschließe (sagen wir 60 mA), fällt sie schnell auf 5 V ab (diese Zahlen variieren stark je nach den Bedingungen).
Das ist alles normal und zu erwarten, aber ich habe mich gefragt, ob es einen einfachen Weg gibt, mehr Energie daraus zu ziehen. Also habe ich über Solarladeregler, MPPT usw. gelesen. Ich könnte einfach einen kaufen und fertig sein, aber mein Ziel ist es, das Panel nicht für irgendetwas zu verwenden (ich habe es nur gekauft, weil es relativ billig war und sich wie ein lustiges Gerät anhörte Spiel mit). Also versuche ich zu sehen, was ich mit herumliegenden Teilen selbst machen kann.
Bisher habe ich mir Folgendes ausgedacht:

schematisch

simulieren Sie diese Schaltung - Schema erstellt mit CircuitLab

Der Load ist ein einstellbarer Abwärtswandler mit einer kräftigen 1000-uF-Kappe am Ausgang, die dann ein Arduino Pro Micro über einen INA219-Spannungs- und Strommonitor-Breakout mit Strom versorgt und über ein LCD verfügt, auf dem Spannung und Strom angezeigt werden.
Das Arduino und das LCD verbrauchen etwa 60 mA bei 5 V. Ich kann auch eine zusätzliche Last wie ein LiPo-Ladegerät anbringen und dessen Stromverbrauch wird ebenfalls gemessen.
Der Regler ist für diese Anwendung ziemlich schlecht (er verbraucht selbst 10-20 mA), aber er ist der einzige, den ich habe, der mit diesen Eingangsspannungen funktioniert.

Nun zum Punkt: Die ganze Idee dieser Schaltung besteht darin, die Spannung des Solarpanels nahe ihrer maximalen Netzspannung zu halten. Wenn die Panel-Spannung (aufgrund eines unzureichenden Stroms) unter einen Schwellenwert fällt (den ich mit dem Pot einstellen kann), gibt der Komparator einen niedrigen Ausgang aus und schneidet die Masse der Last durch M1 ab. Dies führt dazu, dass die Schaltflächenspannung ansteigt (da keine Last vorhanden ist) und der Komparator wieder hoch ausgibt, sodass Strom durch die Last fließen kann. Dann würde die Spannung wieder abfallen usw. usw.
Das Ergebnis ist ein schnelles Ein- und Ausschalten der Last, aber das Halten von Vcc nahe seinem optimalen Wert, was zu einer erhöhten Leistungsabgabe führen sollte.
Wenn das Panel genügend Strom erzeugt, fällt Vcc nicht unter die Schwellenspannung und der gesamte Stromkreis verhält sich mehr oder weniger so, als ob die Last direkt an das Panel angeschlossen wäre.

Es funktioniert irgendwie - ich konnte das Arduino mittags durchschalten, während das direkte Anschließen der Last an das Panel dies nicht tun würde. Es gibt also zumindest einen minimalen Gewinn.
Aber dann bemerkte ich, dass sich M1 etwas warm anfühlte. Nach meiner (sehr geringen) Erfahrung zeigt dies, dass das NMOS nicht immer vollständig geöffnet oder vollständig geschlossen ist. Was seltsam ist, weil sein Gate von einem Komparator gespeist wird, also sollte es immer entweder sehr nahe an GND oder der Zenerspannung (die ich um 5,4 V gemessen habe) liegen. Wenn man sich das Datenblatt des IRF510 ansieht, scheint es durchaus möglich, dass es bei 5,4 V nicht vollständig eingeschaltet ist.
Aber dann habe ich beschlossen, die Gate-Spannung mit einem Oszilloskop zu überprüfen. Beachten Sie, dass es kein echtes professionelles Oszilloskop ist, sondern etwas, das ich selbst hergestellt habe (ein Arduino, das analoge Spannungen so schnell wie möglich misst und die Daten seriell an den PC sendet). Es ist also langsam, ungenau, aber in vielen Fällen immer noch ziemlich nützlich.
So sieht die Gate-Spannung aus: Und hier ist Vcc (Panel-Spannung): Also macht es den Job etwas, aber es scheint, dass M1 ständig im "Zwischen" -Bereich angesteuert wird (niemals vollständig ein oder vollständig ausgeschaltet). Dies bedeutet, dass Rds nicht so niedrig ist, wie es sein sollte, und dass dadurch Leistungsverluste auftreten. Die Hitze ist an sich kein Problem (es wird nicht wirklich heiß, fühlt sich nur ein bisschen warm an), aber ein derartiger Stromausfall in dieser Anwendung ist ein wenig peinlich :)
Geben Sie hier die Bildbeschreibung ein


Geben Sie hier die Bildbeschreibung ein


Irgendeine Idee, warum die Gate-Spannung keine scharfe Rechteckwelle von ~ 0 V bis ~ 5,4 V ist?
Kann es die Schaltgeschwindigkeit sein? Laut meinem "hölzernen" Zielfernrohr sind es ungefähr 14,6 kz, was für IRF510 kein Problem sein sollte . Oder liege ich falsch?
Oder ist der Komparator ein böser Junge und gibt keine scharfen LOW- und HIGH-Werte aus, sondern etwas dazwischen?
Oder ist es etwas anderes?
Oh, und als ich dies schrieb, wurde mir gerade klar, dass ich den Pullup am Komparatorausgang von der Zenerspannung auf Vcc verschieben sollte, damit der HIGH-Ausgang eine höhere Spannung ist. Ich denke, es wird die Dinge verbessern, aber das Problem mit "mittleren" Spannungspegeln am Gate nicht lösen. Ich muss nur vorsichtig sein, da Vcc über 20 V gehen kann, was die maximale Gate-Source-Spannung ist, die für IRF510 angegeben ist.

BEARBEITEN: Aufgrund fehlender Antworten und meines Unverständnisses, was vor sich geht, habe ich die Schaltung überarbeitet. Daher verwende ich anstelle des LM2903P-Komparators jetzt einen ATTiny85 - gleichen Formfaktor (DIP8) und mache im Moment das Gleiche. . fast. Ich habe die Hysterese hinzugefügt und das Potentiometer (ersetzt durch einen festen Spannungsteiler) über Bord geworfen, da ich jetzt die Schwellenspannungen in der Software steuern kann.
Jetzt sehen die Dinge so aus, wie sie sollten: Grün (Kanal 1) ist die Panel-Spannung und Rot (Kanal 2) ist die MOSFET-Gate-Spannung. Ich versorge den ATTiny jetzt über einen Spannungsregler (derselbe, der sich früher an der Vorderseite der Last befand). Der MOSFET ist jetzt BS170 anstelle von IRF510 (wegen der unteren Gate-Schwelle).
Geben Sie hier die Bildbeschreibung ein


Der Stromverbrauch ist ein wenig gestiegen - der ATTiny tastet den ADC ständig ab, keine Zeit zum Schlafen, der ~ 10 mA verbraucht, verglichen mit dem Stromverbrauch des Komparator-IC von weniger als 1 mA, aber es ist keine große Sache.
Dies verschiebt das Problem zwar auf Software (die meine Komfortzone ist) und eröffnet viele Möglichkeiten, verfehlt jedoch den Punkt der gesamten Übung völlig - mehr über Elektronik zu erfahren.
Ich würde immer noch gerne wissen, was mit der ursprünglichen Schaltung mit einem Komparator-IC nicht stimmte und warum sie nicht die schönen Rechteckwellen erzeugte, wie ich sie mit dem Mikrocontroller bekomme.

Mishony
quelle
Ich werde später versuchen, dies genauer zu betrachten. Zwei Dinge, die helfen können, sind: 1) Hinzufügen eines großen Kondensators zur Seite des Solarpanels und 2) Neukonfigurieren Ihres Komparators, um beim Schalten eine gewisse Hysterese zu erzielen.
Mkeith
Ich habe darauf gewartet, dass du auftauchst :) Ich habe auch über Kondensatoren nachgedacht, aber leider habe ich nur eine Nennspannung von 16 V, daher habe ich Angst, sie über den Panel-Ausgang zu schalten - sie bleibt oft bei 17-18 V. Ich denke, das Ziel dieses Kondensators wäre es, die Spannungsschwankungen des Panels zu verlangsamen / zu glätten. Was würde zu einer langsameren Schaltgeschwindigkeit führen? Über die Hysterese am Komparator - es ist nur ein DIP8-Chip mit vcc, gnd, 2 x 2 Eingängen und 2 Ausgängen - keine offensichtliche Möglichkeit, Hysterese hinzuzufügen. Aber ich glaube, ich habe einen Schaltplan gesehen, der das irgendwo erreicht (ich werde versuchen, ihn nachzuschlagen).
Mishony
2
Was ist der Zweck von R3? Im Allgemeinen möchten Sie kein negatives Feedback zu einem Komparator. Versuchen Sie zuerst, das loszuwerden. Sehen Sie, wie sich die Dinge verhalten. Wenn Sie dann eine Hysterese hinzufügen möchten, können Sie versuchen, 100k vom Komparatorausgang zum nicht invertierenden Anschluss des Komparators hinzuzufügen. Ich weiß, dass in Operationsverstärkerschaltungen positives Feedback oft als eine schlechte Sache dargestellt wird, aber es wird oft in Schaltkreisen verwendet, um Hysterese hinzuzufügen.
Mkeith
Es ist nur ein Pull-up, um die "hohe" Ausgabe des Komparators zu definieren (ich habe es im Datenblatt gesehen, Seite 10: ti.com/lit/ds/symlink/lm393.pdf ). Beachten Sie, dass ich es bereits an einen anderen Ort verschoben habe - habe einen weiteren ~ 5,6 V-Zener zwischen R1 und D1 hinzugefügt und R3 von D1 dorthin verschoben, sodass "hoch" jetzt etwa 11 V anstelle von 5,4 V beträgt. Wenig Verbesserung, wenn überhaupt.
Mishony
1
Richtig, Sie haben 5,6 V über einen 10k-Widerstand zum MOSFET-Gatter. Das einzige andere, was es hoch treiben kann, ist der Komparator selbst, der nicht viel Strom ausgeben kann. τ=R.C.Dies ist die Zeit zum Laden auf 63%, also für einen Widerstand von 10k und eine Gate-Kapazität C.ichssvon 150 pF beträgt die Zeitkonstante 1,5 uS. Das ist schon ziemlich schnell, aber beachten Sie, dass die Gate-Spannungen im Diagramm, das sich im linearen Bereich befindet, nicht von 0 auf 5,6 V, sondern von 1,7 V auf 3,5 V steigen.
rdtsc

Antworten:

4

Zunächst einmal, bisher großartige Arbeit. Es gibt sicherlich Chips und Module, die dies für Sie tun könnten und deren Effizienz höher ist, als man es mit diskreten Schaltkreisen realistisch erreichen könnte, aber ihre Verwendung wäre von geringem pädagogischem Wert. Nur herumzuspielen und das Rad aus den vorhandenen Dingen neu zu erfinden, ist eine großartige Möglichkeit zu lernen, und es sieht so aus, als würden Sie den Teil „herumspielen“ sehr gut machen. Und ein Oszilloskop ist ein Oszilloskop. Der einzige Unterschied zwischen einem "professionellen" und einem Arduino-Sampling, so hart es geht, ist das, was Sie messen können. Wenn das Objekt, das Sie messen, mit einem "Arduinoskop" genau genug gemessen werden kann, gibt es keinen Unterschied zwischen ihm und einem "professionellen" Oszilloskop. Stellen Sie nur sicher, dass Sie Ihrem Code vertrauen können und dass er ein perfekt geeignetes Werkzeug für Ihre Arbeit ist.

Nun, um Ihre Frage tatsächlich zu beantworten!

An Ihrer Komparatorschaltung ist nichts auszusetzen. Tatsächlich verhält es sich genau so, wie es sollte. Was leider nicht so ist, wie Sie es erwartet oder beabsichtigt haben (Elektronen kümmern sich einfach nicht um unsere Absichten, sie tun, was sie wollen!).

Dies ist ein häufiges Problem, das ich gesehen habe, wenn jemand zu Hause mit digitaler Elektronik anfängt, sich mit analogen Schaltkreisen zu beschäftigen, und darüber nachdenkt, als wäre es digital. Ist es nicht. Die Dinge sind nicht hoch oder niedrig, ein oder aus. Und jeder Regelkreis (geschlossener Regelkreis, dh der Ausgang kann den Eingang beeinflussen - in diesem Fall kann der Komparator die Spannung beeinflussen, die er an seinem invertierenden Eingang sieht) wird sich auf einen bestimmten Betriebspunkt einstellen oder einfach nutzlos schwingen (weil Es ist instabil, weil es zu lange dauert, um zu reagieren - oder weil es mit dem Feedback zu phasenverschoben ist.

Komparatoren sind nicht digital. Sie verhalten sich sehr nichtlinear, wenn sie eine offene Schleife sind , und sind in diesem Anwendungsfall die "digitalsten". Offene Schleife bedeutet, dass ihre Ausgabe ihre Eingabe nicht beeinflusst. Dies ist in Ihrer Schaltung natürlich nicht der Fall. Und hier ist das schmutzige Geheimnis: Komparatoren sind nur Differenzverstärker mit hoher Verstärkung. Mit anderen Worten, es handelt sich um Operationsverstärker mit internen Widerständen, die der Einfachheit halber in einer Differenzverstärkertopologie angeordnet sind. Sie haben einen sehr hohen Gewinn, aber er ist nicht unendlich. Wenn Sie genau wie Sie eine geschlossene negative Rückkopplungsschleife haben, verhält sich diese wie ein Operationsverstärker. Es ist kein digitales Logikgatter, sondern eine analoge Komponente, die für die Schnittstelle mit digitalen Schaltkreisen ausgelegt ist, aber Sie verwenden sie nicht so.

Ein MOSFET ist auch nicht digital. Sie sind keine Schalter. Sie sind Transimpedanzverstärker. Tatsächlich verhalten sich BJTs viel mehr wie Schalter als MOSFETs. FETs können als spannungsgesteuerter Widerstand und als sehr linearer Widerstand bei Zwischenspannungen modelliert werden. Was Sie als Zwischenprodukt bezeichnen, ist als linearer Bereich bekannt - und MOSFETs haben einen sehr breiten solchen Bereich. Viel größer als andere Halbleiter. Bei einem FET handelt es sich um das am wenigsten digitale Schaltelement, das Sie finden können.

Wenn die Gate-Spannung höher wird, verliert sie ihre lineare Spannung aufgrund des Rds-Verhaltens. Um jedoch an den Punkt zu gelangen, an dem sie eingeschaltet ist, muss sie diesen linearen Bereich durchqueren. Ihr Komparator wird den MOSFET nicht scharf einschalten, da er sich der Zwischenspannung schnell annähert, genau wie der Operationsverstärker, der er heimlich ist, und alles tut, um die Spannung an seinen Eingängen gleich zu halten. Es schwingt in der Nähe des idealen Kontrollpunkts, da es als Komparator konfiguriert ist, aber es MÖCHTE den MOSFET teilweise einschalten, möchte ihn zu einem Widerstand machen und leistet gute Arbeit, obwohl es für einen ganz anderen Zweck konfiguriert ist. Die wahre Natur und das Herz eines Komparators offenbaren sich.

Warum soll der FET ein Widerstand sein? Denn genau das muss es tun. Wenn die Spannung über ihren nicht invertierenden Anschluss hinausgeht, schaltet sie den FET ein, bis die Spannung unter den invertierenden Anschluss fällt, und schaltet sich ab. Wenn dies möglich wäre, würde es sich auf eine bestimmte Spannung einstellen, die den FET nur so weit eingeschaltet hält, dass die Spannung an seinen Anschlüssen gleich bleibt. Das kann es nicht, aber es versucht es und es leistet immer noch eine halbwegs respektable Arbeit, um dies zu erreichen, selbst wenn es um die Spannung schwingt, anstatt sich darauf niederzulassen. Der FET wird niemals schnell oder sogar vollständig eingeschaltet, da sonst die Panel-Spannung zu stark abfallen würde. Der ATtiny kann nicht schnell genug reagieren, so dass die Spannung überall über- und unterschreitet, aber der Komparator ist schnell und reagiert kontinuierlich.

Und es funktioniert perfekt. Es verfolgt den Stromanschluss, den Sie für das Panel eingestellt haben. Sie haben ihm einen Widerstand gegeben, den es steuern kann, sodass der Widerstand des MOSFET nach Bedarf variiert wird, um die Panel-Spannung nahe dem Sollwert zu halten. Was Sie gebaut haben, ist eine etwas umständliche Dummy-Last mit konstanter Leistung. Es wird heiß, weil das Panel die vom 100Ω-Widerstand aufgenommene Leistung nicht liefern kann. Daher wird der MOSFET verwendet, um dynamisch zusätzlichen Serienwiderstand hinzuzufügen, bis ein Leistungspunkt verfolgt wird. Es wird jedoch nur gerade genug Widerstand hinzugefügt, um diesen Strompunkt zu verfolgen und ihn zu senken oder anzuheben, um diese Energiemenge ständig zu verbrauchen. Also sollte es heiß werden. Nicht, weil irgendetwas nicht stimmt. Die Schaltung funktioniert oder versucht es. Wenn Sie einen geeigneten Operationsverstärker verwenden, schwingt dieser nicht und hält ihn stattdessen auf dem Widerstand, der erforderlich ist, um eine feste Leistung vom Panel zu verbrauchen.

Deshalb ist MPPT schwierig. Sie können einen Stromanschluss nicht verfolgen, indem Sie die Last ein- und ausschalten. Sie erhalten nur massive Spannungsschwankungen auf und ab, wie Sie es bei Ihrem ATTiny sehen. Sie können nicht die gesamte Leistung an die Last liefern, ohne etwas ein- und auszuschalten, da alles andere bedeutet, dass die überschüssige Leistung verbrannt wird. Dies ist im Grunde der gleiche Grund, warum Linearregler so arbeiten wie sie. Dies ist wirklich nur ein linearer Regler. Es regelt eine Spannung. Es spielt keine Rolle, dass es sich um die Spannung eines Solarpanels handelt. Es ist immer noch linear und versucht immer noch, diese Spannung auf einem Sollwert zu halten. Und der einzige Weg, dies zu tun, besteht darin, Strom als Wärme abzubrennen. Welches ist genau das, was es tut.

Hier gibt es kein Softwareproblem. Leider kann keine Menge Software dieses Problem lösen. Wenn Sie Effizienz wünschen, können Sie die lineare Leistungspunktverfolgung nicht verwenden. Sie müssen den Schalter betätigen (von dem ich weiß, dass es Ihre ursprüngliche Absicht war), und Sie benötigen einen Energiespeicher, der alternativ vom Schalter geladen und entladen wird. Was ich gerade beschrieben habe und was Sie sich vorstellen (auch wenn Sie es nicht bemerkt haben), ist ein Schaltregler. Ich empfehle einen Induktor als Energiespeicher. Ein PWM-Steuerchip würde anstelle des Komparators arbeiten. Ein TL494 ist ein Klassiker.

Es gibt keine Möglichkeit, dies mit einer gewissen Effizienz in der Art und Weise zu tun, wie Sie es eingerichtet haben, unabhängig von Software oder etwas anderem. Ein MPPT-Controller ist aus diesem Grund normalerweise ein Buck-Boost-Regler mit Eingangsverfolgung, der eine Batterie oder einen Superkondensator über eine Induktivität auflädt. Der Aufbau einer solchen Schaltung würde den Rahmen dieser Antwort sprengen, aber es lohnt sich auf jeden Fall, 'TL494 MPPT' schnell zu googeln. Die Bildsuche zeigt viele Beispiele. Sie könnten sogar versuchen, dies mit dem attiny85 zu tun, der den MOSFET steuert, aber Sie müssen einen Induktor, eine Diode, Kondensatoren und einige andere Komponenten hinzufügen. Leider ist das Problem die Physik, und es hat sich nicht wirklich auf Software verlagert, obwohl es so scheint. Egal was du tust, du '

Auf jeden Fall wäre das Bauen sicherlich eine großartige Möglichkeit, etwas über Elektronik zu lernen - und die beängstigenden Teile wie Induktivität und Magnetik. Es ist auch nichts für schwache Nerven. Wie auch immer, viel Glück!

Metacollin
quelle
1
Wooow, danke, dass du dir die Zeit genommen hast, all das so detailliert zu erklären! Ich denke, es beantwortet so ziemlich meine eigentliche Frage - warum der Komparator nicht "digital" handelt. Und ja, als Programmierer weiß ich, dass Sachen die schlechte Angewohnheit haben, genau das zu tun, was Sie ihm gesagt haben, nicht das, was Sie wollen. Das Wechseln zu attiny war eine Art Betrug (oder Aufgeben), da ich wusste, dass es funktionieren würde - mit "Arbeit" meine ich "die Rechteckwelle erzeugen, die ich vom Komparator erwartet hatte". Das Wort "Induktor" macht mir im Moment Angst, genau wie For-Loops Menschen erschrecken, die gerade das Programmieren lernen. Fürs
Erste
1
@Mishony - Ich bin auf einem ähnlichen Weg, wie es sich anhört, nachdem ich meine Jugend in Software verbracht habe, weit weg von der Physik :) Ich dachte immer, Induktoren seien für Funker, also habe ich in der Elektromagnetik nicht darauf geachtet. Für mich sind sie die coolste passive Komponente. Ich fand es aufgrund des Ansatzes der meisten Materialien, die ich gefunden habe, schwierig, etwas über sie zu lernen. Eine Ressource hebt sich deutlich von den anderen ab, Kapitel 1 von Maniktala; Schaltnetzteile AZ, ab S.21 Grundlegendes zum Induktor . Die Grundidee ist, eine Rechteckwelle (V) einzuspeisen und eine Rampenwelle (I) herauszuholen. Amazon Look Inside ist dein Freund in diesem
Fall
Es gibt noch einen weiteren wichtigen Punkt. Die meisten Lasten wünschen sich keine konstante Eingangsleistung. Die meisten Lasten benötigen eine Spannung in einem bestimmten Bereich und benötigen die benötigte Leistung. Wenn Sie (OP) MPPT implementieren können, Ihre Last jedoch nicht die gesamte Energie verbraucht, müssen Sie die zusätzliche Energie (in einer Batterie) speichern oder abführen (in einem Widerstand oder einer Art Lastbank). Die Verwendung von MPPT scheint wenig vorteilhaft zu sein, wenn Sie die exta-Leistung nicht speichern können.
Mkeith
-1 für Finte des Herzens. UND +2 für Finte des Herzens: -). (Dh in diesem Fall sollte es "schwach" sein, ABER Finte macht es Spaß. Auch gute Antwort :-)
Russell McMahon