Solartracker-Projekt 2022

                   von Michael Schulte

Stand: 12. Januar 2023
 

Hier geht's zur alten Version

 

Warum ein Solartracker?

Ein 2-achsiger Solartracker ist ein elektromechanisches Gerät, das eine feste Ebene (z.B. ein Solarpanel oder Solarthermie-Modul) exakt im Jahres- und Tagesverlauf zur Sonneneinstrahlung ausrichtet.
Dabei werden Elevation (Höhenwinkel, Neigung) und Azimut (Horizontalwinkel, Himmelsrichtung) dieser Ebene durch Stellmotoren mittels eines Steuerprogramms so verändert,
dass die Sonnenstrahlen, z.B. auf ein Photovoltaik-Modul, stets senkrecht fallen und so eine maximale Strahlungs- und damit Energieausbeute erzielt werden kann (s. Grafik).

Ein 2-achsig nachgeführter Solartracker empfängt z.B. in Norddeutschland im langjährigen Mittel 26 % mehr Einstrahlung als eine fest ausgerichtete Anlage (mit 30° Neigung, Südrichtung).

In den Morgen- und Abendstunden ist die Einstrahlung im Jahresmittel bis zu 70 % höher (s. Grafik).
Wenn das Solarpanel bei bedecktem Himmel aus der astronomisch berechneten Position in die Horizontalposition gefahren wird, steigt die mittlere Jahreseinstrahlung um ca. 2 %.

 

Das hier vorgestellte 2-achsige Solartracker-Modell berücksichtigt alle relevanten Einflussgrössen (Datum, Jahrestag, exakte Uhrzeit, Ortskoordinaten, Azimut, Elevation) und richtet ein kleines Solarpanel vollautomatisch so exakt zur Sonne aus, dass die Energieausbeute im Tages- und Jahresverlauf jederzeit maximiert ist.
Nach dem Sonnenuntergang im Westen wird das Solarpanel automatisch zur Ausgangsposition (Osten) zurückgefahren.
Hier beginnt morgens bei Sonnenaufgang ein neuer Betriebszyklus.

Mein Steuerprogramm arbeitet mit Logarithmen, die auch in der Astronomie zur Berechnung der Sonnenposition im Tages- und Jahresverlauf verwendet werden.
Der Solartracker wird mittels eines Netzteils
(2000 mA) mit 7.5 Volt DC betrieben.

 

Für meinen Standort (Latitude = 51.222191° Nord, Longitude = 7.954169° Ost) gilt:
Der maximale Höhenwinkel der Sonne über dem Horizont (Elevation) bewegt sich von ca. 15° am 22. Dezember (Tag der Wintersonnenwende) um 12:00 h WOZ
bis ca. 62° am 21. Juni um 12:00 h
WOZ (Sommersonnenwende).
Der entsprechende Horizontalwinkel (Azimut) liegt am 22. Dezember 12:00 h WOZ zwischen etwa 128° (bei Sonnenaufgang) und 231° (bei Sonnenuntergang), und zwischen 50° (Sonnenaufgang) und 310° (bei Sonnenuntergang) am 21. Juni.
Entscheidend wichtig für die Berechnungen ist eine hochpräzise Uhr (z.B. hier eine "DS3231RTC" oder ein GPS-Modul), weil genaue Sonnenpositionen hochgradig zeitabhängig sind.
Ein GPS-Modul hat den Vorteil, dass es den Solartracker ortsunabhängig macht, indem es die notwendigen Standortkoordinaten liefert.
Ausserdem stellt es dem Solartracker die geforderte hochpräzise Zeitinformation bereit.

  Grafik: Vergleich zw. nachgeführter und fester Aufstellung eines Solarpanels.
   Pac / Pn = Verhältnis der aktuellen Leistung in kW zur Nennleistung in kWp.

 

Entscheidende Einflussgrössen für die Berechnung der Sonnenposition sind neben der genauen Uhrzeit das Datum, die Tag-Nr. des lfd. Jahres (1 - 365), die Geographische Breite (Latitude)
und die Geographische Länge (Longitude) des Standortes.
Von allenfalls geringem Einfluss ist die atmosphärische Refraktion (Brechung eines Lichtstrahls in der untersten Erdatmosphäre), die insbesondere bei Sonnenauf- und untergängen den Einstrahlwinkel um maximal 1-2 Grad verändern kann.
Weil aber die Refraktion im Toleranzbereich des Servos zur Höhenwinkelverstellung liegt, wird sie hier bei der Berechnung der Elevation nicht berücksichtigt.

Eine sehr hilfreiche Website zur Sonnenstandsberechnung mit vielen astronomischen Formeln und Programmierbeispielen findet sich unter: 
https://www.astronomie.info/zeitgleichung/neu.html
Sehr empfehlenswert zum Verständnis der astronomischen Sonnenstandsberechnung ist auch das Buch von Volker Quaschning: "Regenerative Energiesysteme".

 

Mein Solartracker-Modell (alte Version 2018) wurde im Januar 2022 bei ft:pedia (1/2022, Seite 98 - 102) vorgestellt.

 

 

 

 

 

 

 

 

 

 

 

Abb. 1: Solartracker-Modell (neue Version), gebaut u.a. mit Fischertechnik-Teilen; hinten links unter dem roten Dach befindet sich die Steuerzentrale mit einem Arduino-MEGA-Mikrocontroller und einem Arduino-Motor-Shield (Programmcode s.u.). Unter dem waagerecht liegenden grossen Zahnrad befindet sich ein Hall-Drehwinkel-Sensor (0-360°), dessen Achse sich 1:1 mit dem Solarpanel bewegt. Somit kann jederzeit die aktuelle Azimut-Position (Azimut-Ist) des Solarpanels bestimmt und mit dem astronomisch berechneten Azimutwert (Azimut-Soll) verglichen werden.
 

 

 

Abb. 2: Solartracker-Modell (aktuelle Version mit Nextion-Display), Ansicht von vorne.

Das C++-Programm (s.u.) wird von einem PC per USB auf den Arduino-MEGA-Microcontroller geladen und danach ohne PC selbständig ausgeführt. Die Aktualisierung der Azimut- und Elevation-Positionen erfolgt kontinuierlich. Die LED-Ampel signalisiert, ob sich der Drehkranz mit dem 5-Volt-(2.5 Watt) Solarpanel vorwärts im Uhrzeigersinn (grün), rückwärts gegen den Uhrzeigersinn (rot) oder im schnellen Rücklauf (gelb blinkend) zur Startposition bewegt.

 

,

Abb. 3: Longruner-Servo für die Höhenwinkel-Verstellung (0-180 Grad) mit aufmontier-tem 5-Volt-Solarpanel. Der astronomisch berechnete Elevation-Wert wird 1:1 direkt auf den Servo übertragen und bewirkt eine ständig aktualisierte, exakte Schrägausrichtung des Solarpanels zur Sonne.

 

 

Abb. 4: Pololu-Steppermotor mit Schneckentrieb für die Azimut-Ver-stellung. Falls der berechnete Azimutwert (Azimut-Soll, s. Abb. 5) grösser ist als der vom Hall-Drehwinkelsensor gelieferte Azimutwert (Azimut-Ist), so dreht der Steppermotor vorwärts; ist Azimut-Soll kleiner als Azimut-Ist, so dreht der Steppermotor rückwärts (32 Schritte des Steppermotors entsprechen hier ca. 1° Winkelveränderung des Drehkranzes). Auf diese Weise ist (mit  einer Auflösung von ca. 1 Grad) im Idealfall immer Azimut-Ist = Azimut-Soll (s. Abb. 5), d.h. die Azimutposition des Solarpanels stimmt mit dem berechneten Azimutwert überein.

 

      Hardware-Liste (modifiziert für Nextion-Version 2.5)

 

          Arduino-MEGA-2560-Mikrocontroller

          Arduino-Mega-2560-Mikrocontroller (für Zusatzdisplay)

          DS3231-RTC-Echtzeituhre (für Zusatzdisplay)

          DS3231-RTC-Echtzeituhr (für Solartracker)

          Nextion-5-Zoll-Touch-Display mit serieller Kommunikation (Tx, Rx)

           Arduino-Motor-Shield REF.3

         POLOLU-1207-Stepper-Motor 7.4 VDC

         Longruner-17kg-Digital High-Torque Robot-Servo-Motor 7.5 VDC

         Hall-Drehwinkelsensor 0 - 360° entsprechend 0 - 5 Volt Output,
           Versorgungsspannung 5 Volt DC (s. Abb. 7).

         diverse Fischertechnik-Bauteile

         Kuman UNO R3 3,5" TFT Touchscreen (Zusatzdisplay)

         5-Volt Mini-Solarpanel (2.5 Watt)

 

 

 ,

Abb. 5: Nextion-5-Zoll-Touch-Display zur Anzeige der wichtigsten Betriebsdaten. Über die Buttons sind vier unterschiedliche Seiten anwählbar: Mit "Home" kommt man zur Startseite, mit "Time" zu den zeitbezogenen Daten, mit "Data" zu erweiterten Angaben und mit "Sun" (Bild) zu den wichtigsten aktuellen Sonnenstandsdaten.

 

 

 

 


Abb. 7:
Hall-Drehwinkelsensor 0 - 360°,
ensprechend einer Ausgangsspannung
von 0 - 5000 mV.

  

,

Abb. 6: Ein Zusatzdisplay (Kuman UNO R3 3,5" TFT Touchscreen) dient zur Kontrolle und zeigt die wichtigsten Sonnenstands-Werte im 10-Sek-Takt an. Das Display wird von einem weiteren Arduino-Mega-2560-Mikrocontroller angesteuert. 

 

 

 

Berechnung des Schneckengetriebes

Zähnezahl Z des Drehkranzes = 58
Schnecke = 1-gängig => Zähnezahl = 1
=> Übersetzungsverhältnis = 58:1

Steppermotor: 1 Achsenumdrehung = 200 steps
Drehkranz: 1 Umdrehung (360°) = 200 steps x 58 = 11600 steps

Steps pro Grad (Drehkranz) = 11600 steps / 360°
 = 32.222 steps / °

Fazit: Eine Winkelveränderung um 1° des Drehkranzes benötigt
mind. 32 steps des Steppermotors.


 

 

Pin-Belegung am Arduino-MEGA  (hier klicken)