Wirkungsgrad von Kollektoren bzgl. Einfallswinkel berechnen

Begonnen von Elektrolurch, 30 Mai 2015, 09:49:17

Vorheriges Thema - Nächstes Thema

Frank Hell

Die Frage: "Wissen Sie die aktuelle Uhrzeit?" würde wahrscheinlich auch lapidar mit "Ja." beantworten... ::)

Prof. Dr. Peter Henning

Soso, das schreibt jemand mit immerhin 67 Posts ? Ziemlich dicke Lippe für diese Leistung.

pah

Elektrolurch

Hallo Erwin,

habe Deinen Code eingebaut. Schön, dass Du die Herleitung noch in Kommentaren stehen hattest, dann wars nämlich glar:
1. kartesische Projektion
2. Längenberechnung durch Multiplikation der Vektoren.

Steht ja auch so im Bronstein.

Mein Ansatz liefert ein etwas anderes Ergebnis im mittleren Bereich. Ich denke, dass Dein Ansatz aber der richtige ist.

Der Azimuth beginnt im Norden mit 0, Du hast Deine SW - Ausrichtung des Kollektors mit 45, und nicht 225 angegeben. Das ist wohl in der Formel schon so korriegiert.
Meiner Meinung nach fehlt noch eine Abfrage des Ergebnis < 0, denn der Kollektor wird ja nicht von hinten nennenswert erwärmt.

@PA: Danke für die dicke Lippe, die Du hier verteilst in Form von Belehrungen, die aber wenig zielführend sind. Ich hoffe, dass Deine Vorlesungen als Professor Deine Studenten mehr befruchten, als Deine Beiträge hier im Forum.
Elektrolurch
configDB und Windows befreite Zone!

Prof. Dr. Peter Henning

Ach, ich kann nicht klagen. Die Studenten hören wenigstens zu und akzeptieren es, wenn man ihnen einen Fehler nachweist.

LG

pah

smurfix

Dann is' ja gut.

Und jetzt sind wir bitte wieder alle etwas netter zueinander.

erwin

Hi Elektrolurch,

danke fürs Feedback, ja, das hatte ich geschrieben, dass das clipping noch fehlt (Wenn die Sonne von hinten auf das Panel scheint...)
Nachdem ich auf meinen ursprünglichen post kein feedback bekam, (angesprochen waren die Mathematiker und Astronomen), hab ich jetzt diese version bei mir im Einsatz:
## calculate sunradiation into a tilted square
## parameters: azimut, elevation
## usage: {print MH_sunimpact(135.25,44.35)}  . "\n";
## used as userreading in twilight module
## returns cos of Vector range 0-1 == % der max Einstrahlung
##
sub MH_sunimpact($$) {
   my ($azimut,$elevation) = @_;
   return 0 if ($elevation < 0);

   my $grad_rad = 3.14159/180;
   my $panelaz = 40 * $grad_rad; # panelaz = panelx - 180 # (panelx=220 grad)
   my $panelel = 20 * $grad_rad;

   $azimut = $azimut * $grad_rad;
   $elevation = $elevation * $grad_rad;

   # calc sunvector
#   my $xs = cos($azimut) * cos($elevation);
#   my $ys = sin($azimut) * cos($elevation);
#   my $zs = sin($elevation);
#
   # calc Panelvector
#   my $xp = -cos($panelaz) * sin($panelel);
#   my $yp = -sin($panelaz) * sin($panelel);
#   my $zp = cos($panelel);

   my $cosw = -cos($elevation) * sin($panelel) * cos($azimut - $panelaz) + sin($elevation) * cos($panelel);
   return ($cosw > 0)?$cosw:0; # clip when sun is behind panel
}

l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...