mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-01-31 18:59:33 +00:00
99_SUNRISE_EL.pm: Deutsche Dokumentation (Forum #80727)
git-svn-id: https://svn.fhem.de/fhem/trunk@15571 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
8780a92b7a
commit
8df5b85698
@ -526,4 +526,331 @@ isday</pre>
|
||||
</ul>
|
||||
|
||||
=end html
|
||||
|
||||
=begin html_DE
|
||||
|
||||
<a name="SUNRISE_EL"></a>
|
||||
<div id="SUNRISE_EL">
|
||||
|
||||
<h3>SUNRISE_EL</h3>
|
||||
<p class="info">
|
||||
<strong lang="en">SUNRISE_EL</strong> definiert eine Reihe von Perl-Subroutinen (<abbr>z.B.</abbr> zur Nutzung mit <a href="#at">at</a>):
|
||||
</p>
|
||||
|
||||
<ul class="shortref">
|
||||
<li lang="en"><code>sunrise()</code> - absolute Zeit des nächsten Sonnenaufgangs (+ 24 h, wenn am nächsten Tag)</li>
|
||||
<li lang="en"><code>sunset()</code> - absolute Zeit des nächsten Sonnenuntergangs (+ 24 h, wenn am nächsten Tag)</li>
|
||||
<li lang="en"><code>sunrise_rel()</code> - relative Zeit des nächsten Sonnenaufgangs</li>
|
||||
<li lang="en"><code>sunset_rel()</code> - relative Zeit des nächsten Sonnenuntergangs</li>
|
||||
<li lang="en"><code>sunrise_abs()</code> - absolute Zeit des nächsten Sonnenaufgangs (ohne Stundenzuschlag)</li>
|
||||
<li lang="en"><code>sunset_abs()</code> - relative Zeit des nächsten Sonnenuntergangs (ohne Stundenzuschlag)</li>
|
||||
<li lang="en"><code>sunrise_abs_dat()</code> - absolute Zeit des nächsten Sonnenaufgangs an einem bestimmten Tag</li>
|
||||
<li lang="en"><code>sunset_abs_dat()</code> - relative Zeit des nächsten Sonnenuntergangs an einem bestimmten Tag</li>
|
||||
<li lang="en"><code>isday()</code> - Tag oder Nacht</li>
|
||||
</ul>
|
||||
|
||||
<h4>Breite, Länge und Höhenwinkel</h4>
|
||||
<p>
|
||||
Bevor du <strong lang="en">SUNRISE_EL</strong> verwendest, solltest du im <a href="#global">global-Device</a> die
|
||||
Werte für <span lang="en">latitude</span> (geographische Breite) und <span lang="en">longitude</span> (geographische Länge) entsprechend
|
||||
deines Standorts setzen.
|
||||
</p>
|
||||
<div style="padding-left: 5ex;">
|
||||
<h4>Exkurs: <span lang="en">latitude</span> & <span lang="en">longitude</span> ermitteln</h4>
|
||||
<p>
|
||||
Deine geopgragischen Koordinaten kannst du <abbr>z.B.</abbr> mit <a href="https://maps.google.com">Google Maps</a> bestimmen.
|
||||
Dazu setzt du einen Punkt auf der Karte und findest dann im unteren Bereich der Karte die Angabe für beide Werte.
|
||||
Der erste Wert ist die geographische Breite (<span lang="en">latitude</span>); der zweite Wert die geographische Länge
|
||||
(<span lang="en">longitude</span>).
|
||||
</p>
|
||||
<p>
|
||||
Der <span lang="en">Default</span>-Wert ist 50.112, 8.686 (<a href="https://goo.gl/maps/vkyedDL1DJp">Frankfurt am Main</a>).
|
||||
</p>
|
||||
</div>
|
||||
<p>
|
||||
<strong lang="en">SUNRISE_EL</strong> geht von einem Höhenwinkel der Sonne bezogen zum Horizont, <var>h</var>, von -6° aus. Dieser Wert bedeutet,
|
||||
dass die Sonne 6° <strong>unter</strong> dem Horizont steht und Lesen im Freien ohne künstliche Beleuchtung nicht
|
||||
mehr möglich ist (<span lang="en">civil twilight</span>, bürgerliche Dämmerung).
|
||||
<strong lang="en">SUNRISE_EL</strong> speichert diesen Wert in <var lang="en"><code>$defaultaltit</code></var>.
|
||||
</p>
|
||||
<p>
|
||||
Siehe auch <a href="http://search.cpan.org/~jforget/DateTime-Event-Sunrise-0.0505/lib/DateTime/Event/Sunrise.pm">perldoc DateTime::Event::Sunrise</a> für
|
||||
weitere Hinweise.
|
||||
</p>
|
||||
|
||||
<h4>Befehlsreferenz</h4>
|
||||
<h5>Parameter</h5>
|
||||
<p>
|
||||
Jede der folgenden Funktionen akzeptiert bis zu vier (<abbr>bzw.</abbr> fünf) Parameter in der angegebenen Reihenfolge:
|
||||
</p>
|
||||
<dl>
|
||||
<dt>
|
||||
<var lang="en">unix timestamp</var>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
<strong>Ausschließlich</strong> <code lang="en">sunrise_abs_dat()</code> & <code lang="en">sunset_abs_dat()</code>
|
||||
erwarten als ersten Parameter einen Unix-Timestamp (Unix-Epoche) in Sekunden, der ein Datum spezifiziert. Andere Subroutinen
|
||||
erwarten diesen Parameter nicht!
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<var lang="en">altitude</var>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Eine der folgenden Zeichenketten, die unterschiedliche Höhenwinkel <var>h</var> definieren und den Wert
|
||||
von <code><var lang="en">$defaultaltit</var></code> verändern.
|
||||
</p>
|
||||
<p>
|
||||
Erlaubte Werte sind:
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
<code lang="en"><var>REAL</var></code>, <var>h</var> = 0°,
|
||||
</li>
|
||||
<li>
|
||||
<code lang="en"><var>CIVIL</var></code>, <var>h</var> = -6°,
|
||||
</li>
|
||||
<li>
|
||||
<code lang="en"><var>NAUTIC</var></code>, <var>h</var> = -12°,
|
||||
</li>
|
||||
<li>
|
||||
<code lang="en"><var>ASTRONOMIC</var></code>, <var>h</var> = -18°,
|
||||
</li>
|
||||
<li>
|
||||
oder <code lang="en"><var>HORIZON=</var></code>, gefolgt von einer positiven oder negativen Zahl ohn Gradzeichen, die einen Höhenwinkel
|
||||
angibt.
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt>
|
||||
<var lang="en">offset</var>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
<span lang="en">Offset</span> in Sekunden, der zu dem Rückgabewert der Funktion addiert wird.
|
||||
</p>
|
||||
<p>
|
||||
<code lang="en">isday()</code>
|
||||
ignoriert diesen Wert.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<var lang="en">min</var>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>
|
||||
Einen Zeitstempel im Format <var>hh:mm</var>, vor dem keine Aktion ausgeführt werden soll.
|
||||
</p>
|
||||
<p>
|
||||
<code lang="en">isday()</code> wird <var>(int) 0</var> zurückliefern, wenn <var lang="en">min</var> gesetzt
|
||||
und der aktuelle Zeitstempel kleiner ist.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<var lang="en">max</var>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Einen Zeitstempel im Format <var>hh:mm</var>, nach dem keine Aktion ausgeführt werden soll.
|
||||
</p>
|
||||
<p>
|
||||
<code lang="en">isday()</code> wird <var>(int) 0</var> zurückliefern, wenn <var lang="en">max</var> gesetzt
|
||||
und der aktuelle Zeitstempel größer ist.
|
||||
</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<h5>Subroutinen</h5>
|
||||
<dl>
|
||||
|
||||
<dt lang="en">
|
||||
<p><code>sunrise(), sunset()</code></p>
|
||||
</dt>
|
||||
<dd>
|
||||
liefern den absoluten Wert des nächsten Sonnenauf- <abbr>bzw.</abbr> -untergangs zurück, wobei 24 Stunden zu
|
||||
diesem Wert addiert werden,
|
||||
wenn der Zeitpunkt am nächsten Tag sein wird, im Format <var>hh:mm:ss</var>.
|
||||
</dd>
|
||||
|
||||
<dt lang="en">
|
||||
<p><code>sunrise_rel(), sunset_rel()</code></p>
|
||||
</dt>
|
||||
<dd>
|
||||
liefern die relative Zeit bis zum nächsten Sonnenauf- <abbr>bzw.</abbr> -untergang im Format
|
||||
<var>hh:mm:ss</var>.
|
||||
</dd>
|
||||
|
||||
<dt lang="en">
|
||||
<p><code>sunrise_abs(), sunset_abs()</code></p>
|
||||
</dt>
|
||||
<dd>
|
||||
liefern den nächsten absoluten Zeitpunkt des nächsten Sonnenauf- <abbr>bzw.</abbr> -untergangs
|
||||
<strong>ohne</strong> 24 Stunden
|
||||
zu addieren im Format <var>hh:mm:ss</var>.
|
||||
</dd>
|
||||
|
||||
<dt lang="en">
|
||||
<p><code>sunrise_abs_dat(), sunset_abs()_dat</code></p>
|
||||
</dt>
|
||||
<dd>
|
||||
liefern den nächsten absoluten Zeitpunkt des nächsten Sonnenauf- <abbr>bzw.</abbr> -untergangs
|
||||
<strong>ohne</strong> 24 Stunden zu addieren im Format <var>hh:mm:ss</var> zu einem als ersten Parameter angegebenen Datum.
|
||||
</dd>
|
||||
|
||||
|
||||
<dt lang="en">
|
||||
<p><code>isday()</code></p>
|
||||
</dt>
|
||||
<dd>
|
||||
liefert <var>(int) 1</var> wenn Tag ist, <var>(int) 0</var> wenn Nacht ist.
|
||||
</dd>
|
||||
</dl>
|
||||
<h5>Beispiele</h5>
|
||||
<dl>
|
||||
<dt>
|
||||
<p>
|
||||
<code lang="en">sunrise("CIVIL");</code>
|
||||
</p>
|
||||
</dt>
|
||||
<dd lang="en">
|
||||
<p>
|
||||
Zeitpunkt des Sonnenaufgangs bei einem Höhenwinkel der Sonne von -6° unter dem Horizont (identisch zu <code lang="en">sunrise()</code>).
|
||||
</p>
|
||||
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
<p>
|
||||
<code lang="en">sunset("HORIZON=-3");</code>
|
||||
</p>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Zeitpunkt des Sonnenuntergangs bei einem Höhenwinkel der Sonne von 3° unter dem Horizont
|
||||
(zwischen <code lang="en"><var>REAL</var></code> und <code lang="en"><var>CIVIL</var></code>).
|
||||
</p>
|
||||
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
<p>
|
||||
<code lang="en">sunset("HORIZON=1");</code>
|
||||
</p>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Zeitpunkt des Sonnenaufgangs bei einem Höhenwinkel der Sonne von 1° über dem Horizont.
|
||||
</p>
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
<p>
|
||||
<code lang="en">defmod a15 at *{sunset("REAL",0,"18:00","21:00")} set lamp1 on</code>
|
||||
</p>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Schalte <var>lamp1</var> an, sobald die Sonne unter den Horizont sinkt (<var>h ≤ 0</var>), jedoch nicht vor 18:00 und nicht nach 21:00.
|
||||
</p>
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
<p>
|
||||
<code lang="en">
|
||||
my $date = time() + 7*86400;<br />
|
||||
sunrise_abs_dat($date);
|
||||
</code>
|
||||
</p>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Berechne den Sonnenaufgang von heute + sieben Tage.
|
||||
</p>
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
<p>
|
||||
<code lang="en">
|
||||
my $date = time() + 7*86400;<br />
|
||||
sunrise_abs_dat($date, "CIVIL");
|
||||
</code>
|
||||
</p>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Berechne den Sonnenaufgang von heute + sieben Tage mit einem Höhenwinkel <var>h = -6°</var>.
|
||||
</p>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<h4 lang="en">Define</h4>
|
||||
<blockquote>
|
||||
<strong lang="en">SUNRISE_EL</strong> kann nicht explizit als <span lang="en">Device</span> definiert werden,
|
||||
sondern bietet die oben genannten Subroutinen.
|
||||
</blockquote>
|
||||
|
||||
<h4 lang="en">Set</h4>
|
||||
<blockquote>
|
||||
<strong lang="en">SUNRISE_EL</strong> unterstützt <var lang="en">set</var> nicht.
|
||||
</blockquote>
|
||||
|
||||
<h4 lang="en">Get</h4>
|
||||
<blockquote>
|
||||
<strong lang="en">SUNRISE_EL</strong> unterstützt <var lang="en">get</var> nicht.
|
||||
</blockquote>
|
||||
|
||||
<h4>Attribute</h4>
|
||||
<p>
|
||||
Diese Attribute müssen im <span lang="en"><a href="#global">global</a>-Device</span> gesetzt werden!
|
||||
</p>
|
||||
<dl>
|
||||
<dt>
|
||||
<p>
|
||||
<var lang="en">latitude</var>
|
||||
</p>
|
||||
</dt>
|
||||
<dd>
|
||||
<blockquote>
|
||||
Geographische Breite in Dezimalgrad in Form eines <code lang="en">float</code>, <abbr>z.B</abbr> <code><var>49.872471</var></code>.
|
||||
</blockquote>
|
||||
<blockquote>
|
||||
<span lang="en">Default</span>-Wert ist <code><var>50.112</var></code>.
|
||||
</blockquote>
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
<p>
|
||||
<var lang="en">longitude</var>
|
||||
</p>
|
||||
</dt>
|
||||
<dd>
|
||||
<blockquote>
|
||||
Geographische Länge in Dezimalgrad in Form eines <code lang="en">float</code>, <abbr>z.B</abbr> <code><var>8.650991</var></code>.
|
||||
</blockquote>
|
||||
<blockquote>
|
||||
<span lang="en">Default</span>-Wert ist <code><var>8.686</var></code>.
|
||||
</blockquote>
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
<p>
|
||||
<var lang="en">altitude</var>
|
||||
</p>
|
||||
</dt>
|
||||
<dd>
|
||||
<blockquote>
|
||||
Höhenwinkel <var>h</var> der Sonne bezogen auf den Horizont in Grad in Form einer Zahl ohne Gradzeichen.
|
||||
</blockquote>
|
||||
<blockquote>
|
||||
<span lang="en">Default</span>-Wert ist <code><var>-6</var></code>.
|
||||
</blockquote>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
=end html_DE
|
||||
|
||||
=cut
|
||||
|
Loading…
Reference in New Issue
Block a user