Wie SolarDach rechnet
Stand: 9. Oktober 2026. Dieses Modell dient zur lokalen Vorplanung. Wetter, Montage und elektrische Verschaltung erzeugen Unsicherheiten, die keine zusätzliche Nachkommastelle beseitigt.
Beispiele & Sprache
Neue Projekte beginnen mit einem frei anpassbaren Beispiel aus der 3D-Galerie. Alle Vorschauen laden automatisch und lassen sich drehen und zoomen. Die Belegung ist geometrisch; der Jahresertrag wird nach dem Erstellen berechnet. Unter „Einstellungen“ wählst du Deutsch oder English. Nur die ausgewählte JSON-Sprachdatei wird vom lokalen Server angefordert; bereits geladene Dateien werden im Browser und während der Sitzung zwischengespeichert. Projektnamen und eigene Bauteilnamen bleiben unverändert. Bei direktem file://-Start bleibt Deutsch als Rückfall verfügbar; starte Start.cmd für den Sprachwechsel.
Projekte & automatische Speicherung
Beim ersten Start erscheint die Projektübersicht mit „Projekt 1“. Ein bisheriger Einzelplan wird übernommen. Neue Projekte verwenden die Ausgangswerte; Kopien erhalten „ - Kopie“, eigene Kennungen, neue Erstellungs-/Änderungszeitstempel und zunächst „Noch nie“ als Öffnungszeit. Plan, Flächenauswahl, Baukörper, Wetterdaten, Ertragsmodell, Datum/Uhrzeit, Farbauswahl und Kameralage werden je Projekt im localStorage gespeichert. Öffnen ändert nur den Öffnungszeitstempel; Umbenennen den Änderungszeitstempel. Neuladen setzt die letzte Ansicht fort, auch die Projektübersicht. Ergebnisse werden neu berechnet und währenddessen mit „Lädt“ markiert.
Eingaben in offenen Bearbeitungsdialogen werden zusätzlich als Entwurf inklusive leerer oder vorübergehend ungültiger Felder gesichert und beim Neuladen wieder geöffnet. Erst „Übernehmen“ wendet sie auf die Berechnung an; „Abbrechen“ oder Schließen verwirft den Eingabeentwurf. Noch nicht übernommene Wetterdaten werden mitgesichert. Ergebnisse und WebGL-Objekte werden nicht gespeichert. Wetterdaten enthalten die für das Modell benötigten Werte; identische Datensätze werden projektübergreifend einmal abgelegt.
localStorage ist an Browserprofil und Ursprung gebunden: file:// und http://127.0.0.1:8765 teilen keinen Speicher, andere Ports ebenfalls nicht. Es gibt keine Cloud-Synchronisierung. Das Entfernen der Browserdaten entfernt die Bibliothek; private Fenster können sie nach dem Schließen verlieren. Bei gesperrtem oder vollem Speicher erscheint ein sichtbarer Speicherfehler. JSON-Dateiexport bleibt die zusätzliche Sicherung. Zeitstempel verwenden die Geräteuhr und die lokale Browserzeitzone.
Stunden- oder Fünf-Minuten-Modell
Der Wahlschalter in der Planung stellt die Jahresintegration auf 8.760 Stunden- oder 105.120 Fünf-Minuten-Slots. Die Momentanleistung in W wird mit der Slotdauer in Stunden multipliziert und durch 1.000 geteilt. Alle Summen verwenden dieselbe Gewichtung: Modul-, Flächen-, Monats- und Jahresenergie, DC-Energie, Abregelung, bifazialer Beitrag und GHI. Die maximale Modulzahl bleibt geometrisch bestimmt. Bei der schattenbewussten Belegung kann die feinere Zeitauflösung die Bewertung und Auswahl der Modulpositionen verändern. Sonnenstand, Schatten, Modultemperatur und AC-Begrenzung werden je Slot neu berechnet. Das synthetische Offline-Jahr wird direkt an den gewählten Slotmittelpunkten erzeugt und exakt auf das eingegebene Jahres-GHI normiert. Die unveränderte Schattengeometrie wird je Rechenlauf zwischengespeichert.
Beim TMY werden GHI, DNI, DHI und Temperatur je Ausgangszeitschritt auf zwölf Unterintervalle konstant fortgeschrieben. Die Sonnenstände liegen symmetrisch um den ursprünglichen Strahlungszeitpunkt einschließlich PVGIS-Zeitversatz: −27,5 bis +27,5 Minuten. Jeder Unterwert erhält 1/12 Stunde Gewicht; die Eingangs-Wettersummen bleiben erhalten und die Monatszuordnung folgt dem Ausgangslabel. Diese Fortschreibung ist eine Modellannahme: SARAH liefert satellitenbasierte Momentwerte, ERA5 Stundenmittel, wie das PVGIS-Handbuch erläutert. Ein feinerer Zeitschritt rekonstruiert keine Wolkenwechsel zwischen Messpunkten und garantiert keine höhere Genauigkeit des realen Jahresertrags. An Sonnenauf- und -untergang ist die Fortschreibung besonders vereinfacht; unterhalb des Horizonts bleibt die Leistung null. Fünf Minuten verbessern die zeitliche Auflösung von Geometrie, Schatten und Abregelung.
tests-projects.js prüft Migration, unabhängige Kopien, Zeitstempel, Entwürfe, Wetter-Deduplizierung, Speicherfehler, Zeitgewichtung und eine unabhängige 105.120-Slot-Energiebilanz.
Modulkatalog
Die Bibliothek enthält 123 unterschiedliche Modelle und Leistungsvarianten von Trina Solar, JA Solar, Jinko Solar, REC, AIKO und Canadian Solar. Die 100 zusätzlichen Einträge enthalten kompakte Hausdachmodule und größere Gewerbemodule; Leistungsvarianten derselben Serie teilen ihre mechanischen Maße. Hersteller- und Modellwahl sowie Volltextsuche filtern die Liste. Übernommen werden Vorderseiten-STC-Leistung, Außenmaße, Gewicht, Temperaturkoeffizient, vorhandene NOCT/NMOT-Angabe und Bifazialität. Daten geprüft am 9. Oktober 2026. Es handelt sich um Datenblatt-Presets, keine aktuelle Lieferbarkeitsliste. Eigene Anpassungen bleiben möglich und werden als solche gekennzeichnet. Wenn im jeweiligen Datenblatt keine NOCT-/NMOT-Angabe vorhanden ist, bleibt der bisherige Temperaturparameter ausdrücklich als eigene Modellannahme erhalten. Maßgeblich ist stets die verlinkte Datenblatt-Ausgabe; Bauform, Leistungsbereich und Zulassung können nach Region und Revision abweichen. Bifaziale Zellen hinter einer lichtundurchlässigen Rückseitenfolie werden nicht als bifaziales Gesamtmodul eingestuft.
Primärquellen: Trina NEG9R.28, JA JAM54D41 LB, JA JAM54D41 LR, Jinko DV, Jinko BDV, REC Alpha Pure-RX, IEC EN 8.2026 V8. Jeder gewählte Eintrag verlinkt sein Datenblatt direkt.
Flachdach, Aufständerung & zusätzliche Planung
Das Hauptflachdach ist ein horizontales Rechteck mit A = L × W auf der eingegebenen Dachhöhe. Horizontale Anbaudächer verwenden dieselben Montageparameter. Einseitige Aufständerung erlaubt einen freien geografischen Azimut; Ost-West-Paare verwenden 90° und 270°. Beide Formate werden bei automatischer Wahl geprüft. Eine Montageebene wird aus horizontaler Querachse u, Steigungsrichtung v und ihrer Normalen n gebildet. Modulleistung und Schatten verwenden diese tatsächliche Ebene, unabhängig vom Azimut des Gebäudes.
Horizontale Projektion = h cos b
Höchste Modulkante über Dach = unterer Abstand + h sin b
Einseitige Reihenperiode = h cos b + max(Reihenfuge, Modulfuge)
Ost-West-Periode = 2 h cos b + Modulfuge + max(Reihenfuge, Modulfuge)
Die Suche vergleicht beide Formate sowie acht Reihen- und vier Spaltenversätze. Jede projizierte Modulfläche muss innerhalb des Dachpolygons liegen, Randabstände einhalten und von erweiterten Hindernissen, Dachausschnitten und Wartungsgang frei sein. Die größte gefundene Modulzahl gewinnt. Bei gleicher Anzahl wird der Ertrag nicht zusätzlich optimiert; beliebige freie Modulrotationen oder ein globales Packungsoptimum werden nicht garantiert. Die Flächenausnutzung verwendet auf Flachdächern die horizontale Projektion, auf Schrägdächern die Modulfläche. Die separat angezeigte Modulfläche bleibt immer die physische Fläche.
Höhen- und Neigungsgrenzen werden vor der Berechnung geprüft. Der Montage-Randabstand gilt zusätzlich zum allgemeinen Dachrandabstand; der größere Wert wird verwendet. Diese Grenzen sind vom Nutzer vorgegebene Montageparameter und kein Windlastmodell. Aus Windgeschwindigkeit oder Windzone wird kein Ballast berechnet. Windlast, Gebäudehöhe, Randzonen, Reibung, Verankerung und Ballast müssen für das gewählte Montagesystem ausgelegt werden. Ein Beispiel für die dafür erforderlichen Systembedingungen gibt die K2 D-Dome 6 Xpress Montageanleitung; deren Freigaben werden nicht pauschal auf diesen Rechner übertragen.
Die umlaufende Attika liegt nach innen am äußeren Rechteck jedes horizontalen Daches. Ihre Höhe erzeugt analytische Direktschatten und einen sichtbaren 3D-Körper; ihre Breite wird bei der Randfreizone berücksichtigt. Höhe 0 deaktiviert sie. Der Wartungsgang kann entlang einer Dachachse mit Breite und prozentualer Mittellage vorgegeben werden. Er sperrt PV-Fläche, entfernt aber keine vorhandenen Schornsteine oder Baukörper. Er ist im 3D-Bild sandfarben markiert.
Aufgeständerte Modulreihen werfen gegenseitige Direktschatten. Neun Proben je Modul testen zusätzlich die Ebenen der übrigen Reihen. Reihen werden zu gemeinsamen Ebenen mit getrennten belegten Querintervallen zusammengefasst; Lücken bleiben lichtdurchlässig. Derselbe Strahlschnitt wird im Momentbild und in der Jahresbilanz verwendet. Diffuse Maskierung und elektrische Mismatch-/Bypassdiodenfolgen bleiben vereinfacht. Der pauschale bifaziale Rückseiten-Lichtzugang muss weiterhin separat eingestellt werden.
AC-Ertrag Jahr j = E₁ q^(j−1)
Summe N Jahre = E₁ (1−q^N)/(1−q); bei q = 1: N E₁
Zusatzgewicht = Modulzahl × (Modulgewicht + Unterkonstruktion + Ballast)
Mittlere Zusatzlast = Zusatzgewicht / aktive sichtbare Dachfläche
Die Langzeitrechnung skaliert den bereits berechneten AC-Ertrag pauschal bei unverändertem Wetter ab Jahr 2. AC-Abregelung wird dabei nicht jährlich neu simuliert. Diese Sensitivität ist keine Garantiekurve und enthält weder Wechselrichtertausch noch Ausfallprognosen. Das Gewicht ist eine Flächenmittelung, kein statischer Nachweis; Auflager- und Punktlasten sowie vorhandene Dachlasten fehlen.
1. Koordinaten & Dachgeometrie
Alle Längen in Metern. Azimut geografisch Nord 0°, Ost 90°, Süd 180°, West 270°. Die Hauptfläche hat den eingegebenen Azimut; die übrigen Flächen stehen dazu um 180° bzw. ±90°. Diese Konvention weicht von PVGIS-Flächenazimut ab (dort Süd 0°); der TMY-Import enthält horizontale Strahlung und benötigt keine Flächenazimut-Umrechnung.
W = Grundrissbreite quer zum First; β = Dachneigung
Schräghöhe H = W / (2 cos β)
Firsthöhe über Traufe = W tan β / 2
Satteldach: je Seite A = L H
Walmdach (L ≥ W): Firstlänge = L − W
Hauptflächen: A = (2 L − W) H / 2
Walmflächen: A = W H / 2
Gesamte Dachfläche in beiden Fällen = L W / cos β
Walmdach mit gleicher Neigung auf allen vier Seiten; bei L = W entsteht ein Zeltdach mit punktförmigem First. Diese Grundformeln gelten für das unveränderte Hauptdach. Gauben und Anbauten werden mit ihren eigenen Neigungen ergänzt und alle überdeckten Bereiche anschließend geometrisch abgezogen. Randabstände werden als senkrechter Abstand innerhalb der geneigten Fläche zu jeder Polygonkante geprüft. Hindernispositionen liegen in Flächenkoordinaten: x links nach rechts entlang der Traufe, y von der Traufe Richtung First, jeweils aus Außenansicht. Hindernisse werden vertikal extrudiert; ihre Grundflächen liegen auf dem geneigten Dach.
Einzelne Flächen nach unten verlängern
Je Hauptdachseite kann eine zusätzliche Schräglänge e angegeben werden. Die alte Dachfläche bleibt erhalten; ein rechteckiger Streifen der ursprünglichen Traufbreite w ergänzt A um w × e. Seine horizontale Ausladung beträgt e cos β, seine neue Traufe liegt bei z = alte Traufe − e sin β. First und Gebäudegrundriss bleiben fest. Bei Walmen behalten die alten Gratkanten ihren Verlauf; an den Seiten des zusätzlichen Streifens entstehen frei endende Kanten. Es wird ein vorspringender Dachüberstand modelliert, kein vergrößerter Hauskörper und kein neuer Dachknick. Dünne Dachvolumen berücksichtigen Schatten auf anderen Gebäudeteilen. Mindestens 0,30 m Bodenabstand wird geprüft; das ist eine Modellgrenze, keine bauliche Freigabe. x/y-Positionen von Bauteilen beziehen sich anschließend auf die neue untere Traufe; vorhandene Positionen sind beim Verlängern zu prüfen.
Die Bearbeitungsdialoge für Gebäude, Montage, Gauben/Anbauten und Fenster/Schornsteine zeigen zusätzlich eine lokale WebGL-Vorschau des Eingabeentwurfs. Die Fokuswahl und das aktive Eingabefeld richten die Ansicht auf das Bauteil aus; eine orange Begrenzung markiert es. Die Belegung wird geometrisch neu erzeugt, die Jahresenergie erst nach dem Übernehmen. Bei ungültigen Zwischenwerten bleibt die letzte gültige Vorschau mit Eingabehinweis stehen.
Gauben, Erker und Gebäudeflügel
Bis zu acht Bauteile können an einer Hauptdachfläche angeschlossen werden. Gauben: Schleppdach oder Satteldach. Anbauten / Erker: Sattel-, Walm- oder Flachdach (aufgeständerte Module). Die x-Position ist die Bauteilmitte entlang der Haupttraufe. Bei Gauben ist y die auf der Hauptdachschräge gemessene Vorderkante; die Tiefe wird horizontal zum Hauptfirst gemessen. Die Fronthöhe ist der senkrechte Abstand vom dortigen Hauptdach zur Gaubentraufe. Bei Anbauten ist die Ausladung horizontal ab der Haupttraufe nach außen; die Einbindung reicht horizontal nach innen. Anbautraufhöhen beziehen sich auf den Boden. Firste von Sattelgauben und Sattelanbauten verlaufen senkrecht zum Hauptfirst. Schleppgauben steigen nach innen.
Jeder Gebäudeteil ist ein konvexer Körper aus seitlichen Begrenzungsebenen, Boden und eigenen Dachhalbebenen. Ein Dachpunkt gehört nur dann zur sichtbaren Dachfläche, wenn er nicht im Volumen eines anderen Bauteils liegt. Die Halbebenen werden in die lokalen Flächenkoordinaten projiziert und mit den Dachpolygonen geschnitten. Überdeckte Polygone werden ausgeschnitten; die verbleibenden konvexen Teilpolygone bestimmen die sichtbare Fläche. Dadurch werden Anschlüsse und Dachkehlen ohne doppelte Flächen berechnet. Die Jahresberechnung läuft in kurzen Abschnitten mit Fortschrittsanzeige; neue Änderungen verwerfen veraltete Läufe. Die Modulbelegung arbeitet auf dem ursprünglichen Dachpolygon mit den ausgeschnittenen Bereichen als Freizonen, sodass künstliche Zerlegungslinien keine zusätzlichen Modulabstände verursachen.
Der Dachrandabstand gilt auch an Ausschnitten und Kehlen. Hierzu werden konvexe Ausschlusskanten parallel versetzt; an Ecken ist diese Erweiterung konservativ. Die Flächenausnutzung bezieht sich auf die sichtbaren Flächen aktivierter Dächer, vor Abzug der Randabstände und Fenster-/Schornsteinfreizonen. Jede neue Dachfläche ist einzeln zuschaltbar. Inaktive Bauteile behalten ihre Dachgeometrie und Schattenwirkung. Fenster und Schornsteine können auch neuen Flächen zugeordnet werden; stabile Flächenkennungen erhalten diese Zuordnung beim Entfernen anderer Bauteile. Das Entfernen eines Bauteils entfernt auch die darauf liegenden Hindernisse.
Modellgrenzen: Grundrisse verschiedener Ergänzungen dürfen nicht überlappen. Anschlüsse erfolgen am Hauptdach, keine verschachtelten Anbauten, freie CAD-Polygone, abgewinkelte Firste, Mansarden oder Knicke innerhalb einer Fläche. Bei niedrig angesetzten Gauben können hintere Dachbereiche im Hauptdach verschwinden; die sichtbare Fläche wird entsprechend kleiner. Bei kurzen Einbindungen / hohen Anbauten können senkrechte Anschlusswände sichtbar bleiben. Die Maße sind passend zum gewünschten realen Anschluss zu wählen. Horizontale Dächer werden mit der separat eingestellten Aufständerung belegt. Gauben benötigen ein geneigtes Hauptdach; am Flachdach können Anbauten an der unteren y-Kante anschließen.
2. Belegungssuche
Die geometrische Suche vergleicht homogene Hoch-/Querreihen, Startversätze, Hindernisränder sowie gemischte Reihen und Spalten auf einem 5-cm-Raster. Zunächst wird die größte gefundene Modulzahl gewählt. Im Modus „Maximale Modulzahl + Schattenoptimierung“ werden obere Modulbänder und bis zu 16 besonders verschattete Module je geneigter Fläche in freien Bereichen verschoben. Modulzahl, Randabstände, Hindernisfreizonen und Kollisionsfreiheit bleiben erhalten. Flachdächer behalten das konfigurierte Aufständerungsraster.
Die Kandidatenbewertung verwendet 96 gewichtete Monats-/Tageszeitfenster mit gemittelten Wetterwerten, Sonnenstand und dem ausgewählten String-/Optimierermodell. Anschließend werden die ursprüngliche und die verschobene Belegung vollständig über alle Stunden oder Fünf-Minuten-Slots berechnet. Nur ein mindestens gleich hoher AC-Jahresertrag übernimmt die Verschiebung; andernfalls bleibt die ursprüngliche Packung. Die Galerie zeigt die vorläufige Schattenoptimierung mit synthetischem Wetter; beim Öffnen erfolgt der vollständige Jahresvergleich. Das Datum der Momentaufnahme verändert diese Jahresoptimierung nicht.
Diese begrenzte lokale Suche garantiert kein globales Energieoptimum und vergleicht keine beliebigen Muster mit weniger Modulen. Freie Rotation, vollständige Zellgeometrie und eine Optimierung aller Stringzuordnungen sind nicht enthalten. „Nur maximale Modulzahl“ erlaubt den direkten Vergleich mit der bisherigen Packung.
3. Sonnenstand und Ortszeit
Der Sonnenstand verwendet die harmonischen NOAA-Gleichungen für Deklination und Zeitgleichung, einschließlich Schaltjahren. Aus UTC, Länge und Breite entstehen Stundenwinkel, Sonnenhöhe und ein normierter Richtungsvektor in Ost/Nord/Oben. IANA-Zeitzonen werden über Intl.DateTimeFormat in UTC umgerechnet; Sommerzeit ist enthalten. Nicht existierende Ortszeiten beim Frühlingswechsel werden abgelehnt; bei doppelten Zeiten im Herbst wird eine passende Instanz gewählt. Die Kurzwahl nutzt 20.03., 21.06., 23.09. und 21.12. als saisonale Näherungen, nicht als berechnete Äquinoktien.
cos θi = n · s
n = (sin α sin β, cos α sin β, cos β)
Extraterrestrisch I₀ = 1367 [1 + 0,033 cos(2π d/365)] W/m²
Geometrischer Sonnenstand ohne Refraktionskorrektur. Unterhalb des Horizonts werden sämtliche Strahlungs- und Leistungswerte auf null gesetzt. Die Näherung ist zur PV-Vorplanung geeignet; kein Präzisions-SPA. NOAA-Gleichungen.
In der 3D-Ansicht zeigt die rote Kompassspitze geografisch Nord; Hausdrehung und Kamera ändern diese Weltachse nicht. Der kleine Kompass folgt der Projektion des Nordvektors in die aktuelle Kamera. Die gelbe Bodenlinie verwendet den normierten horizontalen Sonnenvektor (Ost, Nord) und zeigt daher entgegen der horizontalen Schattenrichtung. Unterhalb des Horizonts wird sie ausgeblendet und entsprechend beschriftet.
4. Standort, Höhe & Wetter
Bevorzugt wird das typische Wetterjahr (TMY) von EU JRC / PVGIS 5.3. Es enthält 8.760 Stunden mit G(h) = horizontale Globalstrahlung, Gb(n) = direkte Normalstrahlung, Gd(h) = horizontale Diffusstrahlung, jeweils W/m², und T2m in °C. Historische Monatsjahre und UTC-Stundenlabels werden erhalten. Der separate irradiance_time_offset aus der PVGIS-Metadatenstruktur wird für Sonnenstand und Schatten auf die Stundenlabels addiert; z. B. SARAH3 Berlin +0,1838 h, ERA5 +0,5 h. Die Monatszuordnung bleibt beim ursprünglichen Stundenlabel. Ältere JSON-Dateien ohne diesen Zeitversatz werden abgelehnt; bitte aktuelle PVGIS-5.3-Daten laden. Der Import prüft Zeitstempel, Stundenanzahl, Wertebereiche und eine Standortabweichung von höchstens 0,02°. usehorizon=1 berücksichtigt beim Abruf den verfügbaren Geländehorizont. Zusätzliche Bäume und Gebäude sind nicht enthalten.
Die Gelände- und Atmosphäreneinflüsse stecken bereits in TMY-Strahlung und Temperatur. Eine zusätzliche Höhenkorrektur würde doppelt zählen und wird deshalb nicht angewandt. Eine Abweichung zwischen eingegebener Höhe und PVGIS-Datenhöhe ist bei kleinteiligem Relief ein Unsicherheitsfaktor. PVGIS verbietet fremde AJAX-Aufrufe; der optionale lokale Python-Server leitet ausschließlich Anfragen an den festen PVGIS-TMY-Endpunkt weiter. Alternativ sind Download und manueller Import möglich.
Ohne TMY erzeugt das Modell ein synthetisches Jahr mit 8.760 UTC-Stundenmittelpunkten oder 105.120 Fünf-Minuten-Mittelpunkten (Referenzjahr 2025). Ein höhenabhängiges Klarhimmelprofil wird mit einem einfachen saisonalen Wetterfaktor gewichtet und exakt auf die eingegebene jährliche Globalstrahlung normiert. Der Wert 1.100 kWh/m² ist ein Mitteleuropa-Beispiel und kein aus dem Standort abgerufener Klimawert. Erbs zerlegt dieses GHI in Direkt- und Diffusstrahlung. Die saisonale Bewölkung und Temperatur sind synthetisch und können reale Klimaregionen nicht ersetzen. Gleiches Jahres-GHI garantiert keine korrekte diffuse Aufteilung.
p/p₀ = (1 − 2,25577 × 10⁻⁵ h)^5,25588; mₐ = m p/p₀
f₁ = exp(−h/8000); f₂ = exp(−h/1250)
c₁ = 0,868 + 5,09 × 10⁻⁵ h; c₂ = 0,0387 + 3,92 × 10⁻⁵ h
GHI_clear = c₁ I₀ cos θz exp[−c₂ mₐ (f₁ + f₂ (TL − 1))]
DNI_clear = min{(0,664 + 0,163/f₁) I₀ exp[−0,09 mₐ (TL−1)],
GHI_clear [1 − (0,1−0,2 exp(−TL))/(0,1+0,882/f₁)] / cos θz}
DHI_clear = GHI_clear − DNI_clear cos θz
Ineichen/Perez ohne Horizontverstärkung, Linke-Trübung TL als Eingabe (Beispiel 3). Luftmasse nach Kasten/Young; geometrischer statt refraktionskorrigierter Zenit ist nahe dem Horizont eine Approximation. Höhe h in m über NN. Grundlage: pvlib-Referenzimplementierung und Literaturverweise.
Erbs nutzt den Klarheitsindex Kt = GHI/(I₀ cos θz) und das stückweise diffuse Polynom. Unter cos θz = 0,065 wird die direkte Komponente auf null gesetzt und GHI als diffus angesetzt, um instabile Divisionen zu vermeiden. Erbs-Modell.
Offline-Temperatur = Jahresmittel auf 100 m NN + 11 K saisonale und 3 K tägliche Schwankung − 0,0065(h−100) K. Die Saison wird für die Südhalbkugel umgekehrt. Das ist eine einfache Annahme, kein meteorologischer Datensatz. Im Momentbild gelten die separate Temperatur und der wählbare Klarhimmel-GHI-Anteil; es ist keine Vorhersage.
5. Einstrahlung & Verschattung
G_front = DNI max(0,cos θi) IAM (1−S)
+ 0,95 DHI (1+cos β)/2 + 0,95 ρ GHI (1−cos β)/2
ASHRAE-artige Einfallswinkelkorrektur b₀=0,05 (pauschal), isotropes Himmelsdiffusmodell und isotrope Bodenreflexion ρ. Je Modul testen neun Punkte bei 15/50/85 % der Breite und Länge ihre Sonnenstrahlen gegen alle Schornstein-/Fensterkörper und gegen die Volumen aller anderen Gebäudeteile (Hauptdach, Gauben, Anbauten). Der blockierte Anteil S reduziert nur Direktstrahlung. Modulhöhe und die vertikale Hindernishöhe werden geometrisch berücksichtigt. Jeder einzelne Gebäudeteil ist konvex und kann seine eigene zur Sonne gerichtete Dachfläche nicht beschatten. Andere Gebäudeteile werden über Strahl-/Halbebenen-Schnitte getestet. So kann eine Gaube das Hauptdach, ein Anbau eine Gaube und das Hauptdach einen niedrigeren Anbau verschatten, unabhängig von der PV-Aktivierung. Nachbarobjekte und diffuse Sichtfaktoren werden nicht aufgelöst. Elektrische Stringverluste werden mit der nachfolgenden vereinfachten Näherung zusätzlich berechnet; reale Zell- und Diodeneffekte können davon abweichen. Neun Proben und die gewählte zeitliche Auflösung können kleine oder kurze Schatten unterschätzen.
Die Verlustanzeige für Direktschatten hält bei der Vergleichsrechnung denselben anteiligen AC-Begrenzungsfaktor fest. Sie ist eine Modellerklärung, keine unabhängige vollständige Anlage-ohne-Schatten-Simulation. Temperaturabkühlung unter Schatten ist enthalten.
2b. Dachüberstände an Gauben
Der Gaubenüberstand ist eine horizontale Ausladung von 0 bis 1 m an Front und Seiten. Die Dachneigung bleibt erhalten; die Dachkante wird entsprechend nach unten und außen verschoben. Die größere sichtbare Dachfläche kann für PV genutzt werden. Die Wandgrundfläche bleibt gleich. Ein 8 cm dicker Dachkörper wirft zusätzliche Direktschatten in der Momentaufnahme und in jedem Jahreszeitschritt. Anschlüsse am Hauptdach werden weiterhin ausgeschnitten. Beim Ändern des Überstands im Editor behalten vorhandene Hindernisse auf der Gaube ihre Position im Raum; ihre lokalen Koordinaten werden angepasst.
5a. Strings, Bypass und Moduloptimierer
Schatten kann über den gemeinsamen Strom auch direkt unverschattete Module im selben String beeinträchtigen. Bypassdioden können betroffene Teile überbrücken; deshalb wird nicht pauschal der schwächste Modulwert auf alle anderen übertragen. Das reale Ergebnis hängt auch von Teilstrings, Zellschaltung, parallelen Strings und MPPT-Spannungsgrenzen ab. PVsyst: Bypassdioden und Teilverschattung.
Die automatische Gruppierung bleibt innerhalb einer Dachfläche und Modulausrichtung, in der Reihenfolge der Belegung. Die einstellbare Modulzahl je String ist eine Sensitivitätsannahme; die letzte Gruppe darf kürzer sein. Bei Ost-West-Aufständerung bleiben Ost und West getrennt. Das Modell unterstellt einen unabhängigen MPPT je String, gleiche Modulspannung und idealen Bypass ganzer Module. Das Verhältnis aus verschatteter zu unverschatteter Modulleistung dient als Stromnäherung. Alle daraus möglichen gemeinsamen Ströme werden verglichen; überforderte Module werden im jeweiligen Kandidaten überbrückt. Gewählt wird die höchste Stringleistung.
Bᵢ = DC-Modulleistung ohne Direktschatten
rᵢ = min(1, Aᵢ/Bᵢ), bei Bᵢ = 0: rᵢ = 0
P_string(q) = Σ min(Aᵢ, q Bᵢ) für Module mit rᵢ ≥ q
P_string = max über q aus allen rᵢ
Zusätzlicher Stringverlust = Σ Aᵢ − P_string
Mit Optimierern: Pᵢ = Aᵢ (1 − mittlerer Optimiererverlust/100)
Optimierer entkoppeln in dieser Näherung alle Module vollständig, entfernen jedoch weder direkte Schatten noch innere Zellverluste. Ihr mittlerer zusätzlicher DC-Verlust wird nur bei aktiviertem Optimiererbetrieb einmal auf sämtliche Module angewandt, vor Wechselrichterverlusten und AC-Abregelung. Der frei anpassbare Beispielwert 1,4 % entspricht 98,6 % gewichtetem Wirkungsgrad im SolarEdge-S650A-Datenblatt; er ist keine universelle Geräteeigenschaft. Spannungslimits, Diodenspannung, Teilstring- und Zellkennlinien sowie Rückwirkung paralleler Strings fehlen. Die Gruppierung ist keine zulässige elektrische Stringauslegung.
Der Jahresvergleich mit und ohne Optimierer verwendet dieselbe Belegung und dasselbe Wetter, mit eigener AC-Abregelung je Variante. Zusätzliche String- und Optimiererverluste werden separat in kWh DC ausgewiesen. Optimierer können bei geringer Verschattung netto weniger Energie liefern. Rot pulsierende Flächen markieren zusätzliche elektrische Stringverluste am ausgewählten Zeitpunkt, auch an direkt unverschatteten Modulen. Bei Optimierern entfällt diese Markierung; bei reduzierter Bewegung bleibt sie konstant. Der physische Schatten und die Ertragsfarbe bleiben sichtbar.
6. Bifaziale Module
G_eff = G_front + Bifazialität × G_rear
Der Zugangsfaktor 0–1 fasst Dachmaskierung, Schienen, Montageabstand, Modulreihen und Eigenverschattung zusammen. Für eine geschlossene, dachparallele Anlage ist er klein; bei vollständig verdeckter Rückseite null. Die vereinfachte freie Rückseitenhalbkugel wird damit pauschal reduziert. Ein getrenntes 3D-Raytracing des reflektierten Dachlichts, direkte Rückseiteneinstrahlung und räumliche Sichtfaktoren fehlen. Die Eingabe des Montageabstands verändert den geometrischen Direktschatten; sie berechnet den Zugangsfaktor nicht automatisch. Dies ist eine Sensitivitätsschätzung, keine bifaziale Detailauslegung. Sandia/NREL: Bedeutung der Albedo für bifaziale Anlagen.
7. Leistung, Temperatur & AC-Ertrag
P_dc = P_STC (G_eff/1000) max[0, 1 + (γ/100)(T_cell−25)] (1−Verluste/100)
P_ac_total = min[(Σ P_dc,nach_String_oder_Optimierer) η_WR, P_AC_Grenze]
E_ac = Σ Slots P_ac_total × Δt /1000 in kWh; Δt = 1 h oder 1/12 h
NOCT ist ein vereinfachtes stationäres Temperaturmodell ohne Windabhängigkeit; bei Dachmontage ist ein angepasster Wert nötig. P_STC in W, γ in %/°C. Das lineare Einstrahlungs-/Temperaturmodell folgt dem Grundprinzip PVWatts, ist aber keine vollständige PVWatts-Implementierung oder PVGIS-Leistungsberechnung. Konstanter WR-Wirkungsgrad, pauschale übrige Verluste; niedrige Einstrahlung und Teillastkurven sind vereinfacht. Gemeinsame AC-Begrenzung: alle Flächen werden summiert und Überschüsse abgeschnitten; Modulerträge werden danach proportional aufgeteilt. AC-Grenze 0 schaltet Abregelung aus. Rückseitenbeiträge werden bei derselben Begrenzung anteilig ausgewiesen; sie entsprechen nicht zwingend der Differenz zweier unabhängig abgeregelter Anlagen.
8. Planung und Verifikation
Ohne Wetterdaten keine belastbare Standortprognose. Auch mit TMY sind interannuelle Wetterschwankungen, Datenauflösung und Modellvereinfachungen vorhanden. Der Rechner gibt keinen garantierten Ertrag, keine Stringplanung und keine baurechtliche Freigabe. Randabstände sind frei wählbare Planungsparameter, keine regionalen Normvorgaben. Statik, Brandschutz, Schneelast, Wind, Wartung, Zugänge, Dachhaken, Verkabelung, MPPT-Bereiche und elektrische Schutzmaßnahmen müssen in der Fachplanung behandelt werden.
tests.js prüft Dachflächen, kollisionsfreie Packung, Rotation, Nacht, STC- und Temperatureinfluss, atmosphärische Höhenabhängigkeit, Schattenstrahlen, bifaziale Null- und Grenzfälle, Energieerhaltung, AC-Grenzen und TMY-Validierung. tests-extensions.js prüft zusätzlich 48 Dachkombinationen und Drehungen, lückenfreie Projektionen, Belegung an Kehlen, 750 unabhängige Dreiecks-/Volumen-Schattenvergleiche, inaktive Bauteile, Planmigration und stabile Hinderniszuordnungen. reference_check.py vergleicht unabhängige Sonnenstands-, Einstrahlungs- und Erbs-Werte mit pvlib. Die dokumentierten Resultate stehen in PRUEFUNG.txt.
Three.js r160 und Bootstrap 5.3.8 werden lokal mitgeliefert. Ihre vollständigen MIT-Lizenztexte und Repository-Links findest du im Impressum. Kein Tracking, keine externen Schriftarten. Browser-Speicherung kann bei file:// oder privaten Fenstern eingeschränkt sein; JSON-Export bleibt möglich. Open-Source-Lizenzen ↗
Projektverwaltung für Kundenaufträge
Kunde, Ansprechperson, Kontaktdaten, Objektadresse, Referenz, Status und interne Notizen werden zusammen mit dem Projekt lokal gespeichert und in die Projektdatei exportiert. Die Adresse verändert die Standortkoordinaten nicht. Gelöschte Projekte liegen mit Wetterdaten und Eingabeentwürfen im wiederherstellbaren Papierkorb; sie werden nicht endgültig entfernt. Browserdaten können verloren gehen, daher wichtige Projekte zusätzlich als Datei sichern. Ballastgewicht wird nur den Modulen auf Flachdächern zugerechnet.