MPP-Tracking mit Arduino (Schulprojekt)

Ladeelektronik, Messgeräte, Steuerungen etc.

MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon Mo75 » Mo 14. Apr 2014, 14:50

Hallo zusammen,

vielleicht hat der ein oder andere schon im Generatoren-Forum unseren Thread zum Schulprojekt verfolgt.
Auf S. 23 kommen die ersten Testmessungen.

Da es ein Lern- und Anschauungsprojekt ist bin ich zZ dabei mit einem Microcontroller auf Arduino-Uno-Basis ein MPP-Tracking zu basteln. Als Basis dient sowohl die Schaltung als auch der Quellcode von Tim Nolan. http://www.timnolan.com/index.php?page= ... ar-charger

Eine Erweiterung hat freundlicherweise "kibi" hier bereitgestellt: Textausgabe via LCD-Display. Super!

Da ich zwar Elektroniker aber kein Programmierer bin, habe ich bereits etliche Stunden, Tage oder noch mehr in Testschaltung, Programmiererei usw. investiert und wollte hier mal den fast fertigen Stand bekannt geben. Einen Schaltplan reiche ich bei Zeiten nach. Den Code kann ich bei Interesse auch posten.

Die Funktionsweise ist gleich der, wie auf Tim's Seite beschrieben. Hier auch mal in RTF-Dokument auf seiner Seite runterladen...

Es mussten natürlich etliche Anpassungen gemacht werden. ZB hab ich etliche MOSFET-Treiber-IC's verballert, weil ich anfangs mit einer zu kleinen Induktivität herumexperimentiert hatte. Da die Ströme bei der kleinen Leistung geringer sind, musste die Drossel deutlich größer werden. Am Ende bin ich bei ca. 360 statt 33 µH gelandet.
Als Erweiterung wurde zB noch eine Interrupt-Routine integriert, die über eine Phase einen Impuls (5V Z-Diode) ausliest und hochzählt um zusätzlich die Drehzahl auf das Display zu bringen. Auch die Regelgeschwindigkeit habe ich per Poti variabel gemacht, ein Windrad hat schließlich etwas mehr bewegte Masse als ein Solarpanel ;)

Hier mal ein Bild von einem der ersten Versuchsaufbauten:
20131023_220030.jpg
20131023_220030.jpg (165.77 KiB) 13873-mal betrachtet


Mittlerweile ist die Schaltung auf ein Arduino-Protoshield gewandert und auf das Arduino-Board gesetzt. Die Schaltung funktioniert am Labornetzteil gut, einzig bei kleinen Strömen <ca. 160mA kommt der INA169 Stromfühler an seine Grenzen...
Aktueller Stand allerdings noch ohne Drehzahl, die kommt noch unten rechts auf's Display:
IMG-20140410-WA0009.jpg
IMG-20140410-WA0009.jpg (89.55 KiB) 13873-mal betrachtet


Bin sehr gespannt, wie/ob die Schaltung am Geno funktioniert. :oops:

So viel zum jetzigen Stand...

Grüße,
Mario
Mo75
 
Beiträge: 84
Registriert: Di 4. Mär 2014, 14:25

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon Mo75 » Di 15. Apr 2014, 09:37

Hier moch ein (schlechtes Handy-) Video und ein Erklärungsversuch von mir wie der "maximum power ponit tracker" arbeitet.

Der blaue Kanal repräsentiert das Tastverhältnis (im Display als "PWM" engezeigt) und ist praktisch die Spannung über der Induktivität.
Der gelbe Kanal repräsentiert den Generatorstrom (im Display als "GENO xx.xxA" engezeigt) und ist parktisch die Ausgangsspannung des INA169 Stromsensors (1A enstpricht 5V Ausgangsspannung).

Man kann erkennen, wie nach Prgrammstart das Tastverhältnis bei 90% beginnt und in 1%-Schritten verkleinert wird. Die "Generatorspannung" (hier Labornetzteil) steigt an, der Strom (wegen Labornetzteil) bleibt konstant. Dadurch wird die entnommene "Generatorleistung" höher. Der Ladestrom steigt.

Das ganze geht solange, bis plötzlich der Eingangsstrom stark absackt und dadurch die entnommene Leistung deutlich geringer ist, als im Schritt davor. Dies erkennt der Algorithmus und reagiert mit Richtungsumkehr. Die Leistung steigt wieder, bis sie im übernächsten Schritt wieder leicht sinkt. Dies wird wieder erkannt und wieder die Richtung umgekehrt. Das geht solange, wie die Eingangsparameter gleich bleiben. Im Video nicht scharf zu erkennen, aber die PWM-Folge sieht in etwa so aus: 55-54-53-52-51-50-49-48-47-46-45-46-47-46-45-46-47-46.... Der (hill-climbing-) Algorithmus pendelt also immer um einen Schritt um den MPP (hier angenommen 46) herum.

20140410_233834.wmv [ 4.77 MiB | 13826-mal betrachtet ]



Wie gut das ganze am echten Geno mit seinen ohmschen Verlusten und der Abhängigkeit von Strom und Spannung funktioniert finde ich hoffentlich noch diese Woche heraus...

Gruß,
Mario
Mo75
 
Beiträge: 84
Registriert: Di 4. Mär 2014, 14:25

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon JaBa » Do 17. Apr 2014, 16:44

Hallo,
wenn ich das richtig verstehe, diese Schaltung regelt eine immer abweichende Eingangspannung (von x bis z Volt) auf ein relativ konstanter Ausgangspannung (z.B. 14V). Wenn das so ist, welche Unter-/Obergrenze gibt es dabei? Werdet ihr das komplette Doku nach Ostern (und nach dem Feier das die Projekte fertig sind) irgendwo online stellen? Darauf bin ich gespannt denn ich habe vor ein ähnliches selber zu bauen. Auf Bilder und Beschreibung der C-Rotor Aufbau an sich bin ich auch gespannt...
JaBa
 
Beiträge: 16
Registriert: So 30. Mär 2014, 08:46

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon Mo75 » Sa 19. Apr 2014, 14:10

Hallo,

JaBa hat geschrieben:wenn ich das richtig verstehe, diese Schaltung regelt eine immer abweichende Eingangspannung (von x bis z Volt) auf ein relativ konstanter Ausgangspannung (z.B. 14V).


Ein ganz klares jein.
Einerseits bleibt die Ausgangsspannung halbwegs konstant, aber andererseits ist daran nicht die Regelung direkt sondern das Zusammenspiel mit der Batterie schuld.
Die Regelung macht was anderes: sie maximiert die dem Generator entnommene Leistung. Daher sind die Eingangsgrößen des Reglers primär die Generatorspannung und der Generatorstrom. Daraus errechnet die Software laufend die Leistung (P=U*I).
Erst in zweiter Linie wird die Ausgangsspannung überwacht und zwar nicht, wie du annimmst um die Ausgangsspannung konstant zu halten, sondern um die verschiedenen Ladezustände des Akkus zu erfassen. Um den genauen Zusammenhang verstehen, musst du den Quellcode von Tim studieren. Auch wenn man kein C-Programmierer ist, so kann man mit Zeit, gutem Willen und etwas Internetrecherche schon dahinter kommen wie das Programm funktioniert.

Möchtest du einen Schaltregler haben, der immer konstante 12V am Ausgang bereitstellt, wirst du nicht drumherum kommen das Programm und evt. die Schaltung abzuändern. Nimmst du eine Batterie als Puffer, hast du aber fast den selben Effekt...nur "besser" ;)
Beim herumexperimentieren ist ein Oszilloskop auch Pflicht, ohne hätte ich es nicht geschafft.

JaBa hat geschrieben:Wenn das so ist, welche Unter-/Obergrenze gibt es dabei?

Das hängt davon ab, welche Bauteile man verwendet, mit welcher Spannung diese versorgt werden (Tim hat es zB anders gemacht als ich), WIe die Skalierungen im Programm sind, welchen Stromsensor man verwendet und wie man dessen Verstärkung einstellt usw...
Bei meiner Version sind es wegen Verstärkung am Stromsensor zZ 1A (wobei der Sensor bis 5A kann, theoretisch können die Mosfets bis 30A oder so) und Spannung denke ich so ca. 50V. Lässt sich aber alles anpassen, Spannungsfestigkeit der Elkos und der Gleichrichterdioden uswusf...

DIe Box ist sowei fertig gebaut, nur die Beschriftung und ein Test am Geno fehlen noch:
20140419_145545_2.jpg
20140419_145545_2.jpg (511.1 KiB) 13727-mal betrachtet

20140419_145653_cr.jpg
20140419_145653_cr.jpg (128.67 KiB) 13727-mal betrachtet


JaBa hat geschrieben:Werdet ihr das komplette Doku nach Ostern (und nach dem Feier das die Projekte fertig sind) irgendwo online stellen? Darauf bin ich gespannt denn ich habe vor ein ähnliches selber zu bauen. Auf Bilder und Beschreibung der C-Rotor Aufbau an sich bin ich auch gespannt...


Das kann ich dir nicht genau sagen, muss ich mit den Kollegen besprechen. Schaltung und Quellcode kann ich aber hier bereit stellen wenn fertig.
Zum C-Rotor kann ich zZ nur soviel sagen, dass die Profile sehr schwer sind. Wir haben noch mit Alublech gebaut, ein Flügel hat 3,3kg :o


Gruß,
Mario
Mo75
 
Beiträge: 84
Registriert: Di 4. Mär 2014, 14:25

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon Bernd » Sa 19. Apr 2014, 16:32

Man das sieht ja aus wie für eine Meisterprüfung ! Sehr schön.


Grüsse

Bernd
Bernd
 
Beiträge: 8411
Registriert: So 4. Jan 2009, 10:26
Wohnort: nähe Braunschweig

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon Ekofun » Sa 19. Apr 2014, 16:53

Hallo Mario,

alle Achtung,das ist für mich gelungene Meisterprüfung.Sehr schön gemacht,prima,weiter so.Und wenn alles fertig wird interesiere mich sehr für Ergebnise,hoffe das Sie das ganze hier in Forum berichten werden.Wunderschöne Arbeit.!

Und wünsche euch schöne Osternfeier.

Grüße

Ekofun
Ekofun
 
Beiträge: 3884
Registriert: Mi 23. Feb 2011, 15:44
Wohnort: Kroatien-Nova Gradiska

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon Mo75 » Sa 19. Apr 2014, 18:39

Bernd hat geschrieben:Man das sieht ja aus wie für eine Meisterprüfung ! Sehr schön.


Schön, dass ihr das so seht, danke!
So was ähnliches ist es ja auch, Meister ist Handwerk, Techniker Industrie, ansonsten vergleichbar.

Für die Ergebnisse bzw Auswertungen werden wir weniger Zeit haben, als ich mir wünsche. Ich denke wir haben nächste Woche insgesamt ein paar Stunden dafür, die restliche Zeit werden wir mit der Doku beschäftigt sein. Übernächste Woche ist Abgabe... :(

Gruß,
Mario
Mo75
 
Beiträge: 84
Registriert: Di 4. Mär 2014, 14:25

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon vm » Sa 19. Apr 2014, 19:32

Hallo Mario

Mo75 hat geschrieben:
Man kann erkennen, wie nach Prgrammstart das Tastverhältnis bei 90% beginnt und in 1%-Schritten verkleinert wird. Die "Generatorspannung" (hier Labornetzteil) steigt an, der Strom (wegen Labornetzteil) bleibt konstant. Dadurch wird die entnommene "Generatorleistung" höher. Der Ladestrom steigt.



Ich bin da etwas skeptisch ob das bei realen Wind noch geht :?
Wie viele dieser Takte schafft der Regler pro Sekunde oder anders gefragt um wie viel % darf die Windleistung in EINER Sekunde steigen oder fallen damit der Regler noch mit kommt? ( wenn zu langsam wird das Windrad nach einer Böe fast schlagartig versuchen stehen zu bleiben )


mfg.Volker
vm
 
Beiträge: 1256
Registriert: So 8. Jan 2012, 19:10

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon Mo75 » Sa 19. Apr 2014, 19:58

Hallo Volker,

Ich bin da etwas skeptisch ob das bei realen Wind noch geht


Er nu wieder ;) Scherz bei Seite, schön, dass mal Feedback zur Regelung kommt! Sicher bin ich mir da auch nicht, vor allem mit wechselnden realen Bedingungen mit Böen.

Ein Programmzyklus dauer ca. 65ms und somit meiner Meinung nach schnell genug. Meine Bedenken gehen eher ins Gegenteil: das könnte wegen der im Windrad und Generator gespeicherten Rotationsenergie zu schnell sein. D.h., dass ein schneller Anstieg der Leistungsentnahme durch die Massenträgheit zuerst noch gut geht, dann aber das Windrad über Gebühr belastet und ausgebremst wird. Bei konstanten Bedingungen könnte ich mir bei unpassenden Parametern ein Schwingen im Regelkreis vorstellen welches sich in einem Auf und Ab der Drehzahl äußern könnte. Um das zu untersuchen habe ich ein Poti integriert, mit dem man die Regelgeschwindigkeit in Form einer Totzeit zwischen den einzelnen Programmzyklen einstellen kann. Die Zeit ist im Moment zwischen 0ms und 1023ms einstellbar und wird unten links auf dem Display angezeigt.
Theoretisch optimal wäre es unter konstanten Bedinungungen die Zeit so einzustellen, in dem der Regelkreis nicht mehr schwingt und die Drehzahl konstant bleibt. Ich vermute, dass je größer und schwerer das Windrad ist, desto träger muss die Regelstrecke eingestellt sein.

Gruß,
Mario
Mo75
 
Beiträge: 84
Registriert: Di 4. Mär 2014, 14:25

Re: MPP-Tracking mit Arduino (Schulprojekt)

Beitragvon vm » Sa 19. Apr 2014, 20:15

Hallo Mario

OK das sind 15 Takte pro Sekunde und dann noch verzögerbar , klingt interessant.

Ich bin gespannt was bei raus kommt.

Mir würde eher eine Eingangsstrombegrenzung des Schaltreglers über ein separates Aneometer vorschweben ,wenn man schon mit Prozessoren anfängt und Kennlinien oder Formeln verwenden könnte :)

mfg.Volker
vm
 
Beiträge: 1256
Registriert: So 8. Jan 2012, 19:10

Nächste

Zurück zu Elektronik für Windkraftanlagen



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste