Solartracker-Projekte 2018 / 2022
                       von Michael Schulte, Rönkhausen

 

Hier geht's zur alten Version
 

Warum ein Solartracker?

Ein 2-achsiger Solartracker ist ein elektromechanisches Gerät, das eine Ebene (z.B. Solarpanel, Kamera, Laser etc.) 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.

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.
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, Refraktion)
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 selbsttätig zur Ausgangsposition (Osten) zurückgefahren. Hier beginnt morgens bei Sonnenaufgang ein neuer Betriebszyklus.

Mein Steuerprogramm arbeitet mit Logarithmen, die auch Astronomen zur Berechnung der Sonnenposition im Tages- und Jahresverlauf verwenden.

 

Für meinen Standort (latitude = 51.222 Grad Nord, longitude = 7.954 Grad 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. Jun
i 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.

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.
Eine sehr hilfreiche Website zur Sonnenstandsberechnung mit vielen astronomischen Formeln und Programmierbeispielen findet sich unter: 
www.astronomie.info/zeitgleichung/neu.html .

Sehr hilfreich zum Verständnis der astronomischen Sonnenstandsberechnung ist auch das Buch von Volker Quaschning: "Regenerative Energiesysteme".

 

Hier gibt es die alte überarbeitete Solartracker-Code-Version 14.5  vom 25.02.22 mit Arduino-UNO, Adafruit-motorshield V1 und Sunfounder 20x4 LCD-Display, und dazu die passende Pin-Belegung am Arduino-UNO / Adafruit-Motor-Shield V1.

 

 

Abb. 1: Solartracker-Modell (alte Version), gebaut u.a. mit Fischertechnik-Teilen; unter dem hinteren 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 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. 3 LEDs signalisieren, ob sich der Drehkranz mt dem Solarpanel vorwärts im Uhrzeigersinn (grün), rückwärts gegen den Uhrzeigersinn (rot) oder im schnellen Rücklauf (blau) zur Startposition bewegt.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,

Abb. 3: Longruner-Servo für die Höhenwinkel-Verstellung (0-180 Grad) mit aufmontier-tem 3-Volt- ETM500-Solarpanel (alte Version). 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, d.h. die Azimutposition des Solarpanels stimmt mit dem berechneten Azimutwert überein.

 

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

 

·        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)

·        Solarpanel ETM500-3V (14 x 13 cm, 3.0 VDC, aus einem  Kosmos-
          Solarbaukasten); alternativ ein 5-Volt Mini-Solarpanel (neue Version)

 

 

 ,

Abb. 5: Nextion-5-Zoll-Touch-Display zur Anzeige der wichtigsten Betriebsdaten. Über die Buttons sind 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 aktuellen Sonnenstandsdaten.

 

 

 

 


Abb. 7:
Hall-Drehwinkelsensor 0 - 360°

  

,

Abb. 6: Ein Zusatzdisplay (Kuman UNO R3 3,5" TFT Touchscreen) 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)