# "bürgerliche" bzw Zivile Dämmerung bzw sun\_rise/set bei -6Â° Sonnenstand

**URL:** <https://oscat.discourse.group/t/burgerliche-bzw-zivile-dammerung-bzw-sun-rise-set-bei-6a-sonnenstand/924>\
**Category:** Modulentwicklung / Module Development\
**Created:** [9. November 2010 um 07:16 UTC](https://oscat.discourse.group/t/burgerliche-bzw-zivile-dammerung-bzw-sun-rise-set-bei-6a-sonnenstand/924 "2010-11-09T07:16:03Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/oscat/original/1X/2efdfb9c592ff9a666c94dff124ee84fa863dae5.jpeg) [@system](https://oscat.discourse.group/u/system)\
**Post date:** [9. November 2010 um 07:16 UTC](https://oscat.discourse.group/t/burgerliche-bzw-zivile-dammerung-bzw-sun-rise-set-bei-6a-sonnenstand/924/1 "2010-11-09T07:16:03Z")

</div>

Hi,

da mir sun\_rise und set speziell im Sommer zu frueh ist um die Rolladen zu fahren habe ich mir kurzerhand die Stelle im Programm gesucht die das berechnet und entsprechend erweitert.  
Hoffentlich richtig 🙂 Von den Werten im Moment wuerde ich sagen passt es.

Grundsaetzliches Problem ist ja das speziell im Winter es nach Sonnenuntergang (-0.833Â°) noch sehr lange hell ist. Definiert ist die “bürgerliche” Dämmerung (siehe Wikipedia) bis -6Â° Sonnenstand.  
Im Prinzip ist das der Sonnenstand “von dem an” bzw “bis zu dem man” draussen noch eine Zeitung lesen kann.

Also folgendes habe ich eingefuegt so das die normal Funktion erhalten bleibt. Im Prinzip werden zwei neue Werte angelegt sun\_civil\_rise und sun\_civil\_set (koennte man evtl noch civil\_rise und civil\_set draus machen)  
Der wesentlich Unterschied ist das ich im SUN\_TIME eine weiteres delta ausrechne. Welches nicht wie in Zeile 9 mit dem sin(-0.833Â°) = -0.0145 rechnet sondern mit dem sin(-6Â°) = -0.1453.

# SUN\_TIME (FB)

```auto

VAR_OUTPUT
	sun_civil_rise : TOD; (*	civil twilight for current day in local time *)
	sun_civil_set : TOD; (*	civil twilight for current day in local time *)
VAR
	delta_civil: TIME; (* delta from midday for civil twilight *)

delta_civil := HOUR_TO_TIME(ACOS((-0.1453 - SIN(B) * SIN(DK)) / (COS(B) * COS(DK))) * 3.819718632);
sun_civil_rise := sun_midday - delta_civil;
sun_civil_set := sun_midday + delta_civil;

```

# CALENDAR (STRUCT)

```auto

	SUN_CIVIL_RISE : TOD; (* civil twilight for current location *)
	SUN_CIVIL_SET : TOD; (* civil twilight for current location *)

```

# CALENDAR\_CALC (FB)

```auto

0035 XCAL.SUN_CIVIL_RISE := sun.sun_civil_rise;
036 XCAL.SUN_CIVIL_SET := sun.sun_civil_set;

```

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/oscat/original/1X/2efdfb9c592ff9a666c94dff124ee84fa863dae5.jpeg) [@system](https://oscat.discourse.group/u/system)\
**Post date:** [25. November 2010 um 15:47 UTC](https://oscat.discourse.group/t/burgerliche-bzw-zivile-dammerung-bzw-sun-rise-set-bei-6a-sonnenstand/924/2 "2010-11-25T15:47:48Z")

</div>

Hallo Holger,

ich bin gerade angefangen, mit der “SUN\_TIME” zu spielen und bin darüber  
dann auch über Deinen Post gestolpert.

Dir ist ein Tippfehler unterlaufen (es fehlt eine “0”):  
Der Wert für sin(-6Â°) ist -0.104528463

Mit diesem Wert ergibt sich bei mir gegenüber den “richtigen” Zeiten von  
[http://cgi.stadtklima-stuttgart.de/mirror/sonne.exe](http://cgi.stadtklima-stuttgart.de/mirror/sonne.exe)  
eine Abweichung von 4 Minuten statt 13 Minuten beim falschen Wert.

---

<div class="post-metadata">

**Author:** ![pelmic](https://avatars.discourse-cdn.com/v4/letter/p/a9a28c/32.png) [@pelmic](https://oscat.discourse.group/u/pelmic)\
**Post date:** [26. November 2010 um 14:18 UTC](https://oscat.discourse.group/t/burgerliche-bzw-zivile-dammerung-bzw-sun-rise-set-bei-6a-sonnenstand/924/3 "2010-11-26T14:18:53Z")

</div>

Hallo,

das ist ja Perfekt.  
Wenn es funktioniert und getestet ist, kann man dass dann auch ins nächste Release übernehmen?  
Das wäre toll.

Danke,

pelmic

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/oscat/original/1X/2efdfb9c592ff9a666c94dff124ee84fa863dae5.jpeg) [@system](https://oscat.discourse.group/u/system)\
**Post date:** [7. Dezember 2010 um 14:52 UTC](https://oscat.discourse.group/t/burgerliche-bzw-zivile-dammerung-bzw-sun-rise-set-bei-6a-sonnenstand/924/4 "2010-12-07T14:52:44Z")

</div>

> [@EMV-Fuzzi post:2](#):
>
> Hallo Holger,
> 
> ich bin gerade angefangen, mit der “SUN\_TIME” zu spielen und bin darüber  
> dann auch über Deinen Post gestolpert.
> 
> Dir ist ein Tippfehler unterlaufen (es fehlt eine “0”):  
> Der Wert für sin(-6Â°) ist -0.104528463

Upsssss

> [@EMV-Fuzzi post:2](#):
>
> Mit diesem Wert ergibt sich bei mir gegenüber den “richtigen” Zeiten von  
> [http://cgi.stadtklima-stuttgart.de/mirror/sonne.exe](http://cgi.stadtklima-stuttgart.de/mirror/sonne.exe)  
> eine Abweichung von 4 Minuten statt 13 Minuten beim falschen Wert.

Ob die 4 Minuten einfach ungenauigkeiten sind ?! Egal 4 Minuten währe ja (zumindest fuer mich) OK

```
Holger

```

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/free1/uploads/oscat/original/1X/2efdfb9c592ff9a666c94dff124ee84fa863dae5.jpeg) [@system](https://oscat.discourse.group/u/system)\
**Post date:** [17. Dezember 2010 um 21:41 UTC](https://oscat.discourse.group/t/burgerliche-bzw-zivile-dammerung-bzw-sun-rise-set-bei-6a-sonnenstand/924/5 "2010-12-17T21:41:01Z")

</div>

Hallo Holger,

> [@Holger post:4](#):
>
> Ob die 4 Minuten einfach ungenauigkeiten sind ?! Egal 4 Minuten währe ja (zumindest fuer mich) OK

Das SIND Ungenauigkeiten innerhalb der Steuerung!

Ich habe nun Zugriff auf eine andere Zielhardware und mit dieser sind die Zeiten weniger als 1 Minute unterschiedlich.

Gruß  
EMV-Fuzzi

---

<div class="post-metadata">

**Author:** ![hugo](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/hugo/32/133_2.png) [@hugo](https://oscat.discourse.group/u/hugo)\
**Post date:** [25. Januar 2011 um 23:46 UTC](https://oscat.discourse.group/t/burgerliche-bzw-zivile-dammerung-bzw-sun-rise-set-bei-6a-sonnenstand/924/6 "2011-01-25T23:46:15Z")

</div>

Die normale Dämmerung berechnet die zeiten für sonnenaufgang und untergang exakt dann wenn der obere rand der somme am horizont erscheint bzw wieder verschwindet.

hierbei wird die sogenannte refraktion mit 50 bogrnminuten berücksichtigt.

die bürgerliche dämmerung ist bereits -6Â° unter dem horizont

die nautische ist -12Â° unter dem horizont

die astronomische ist -18Â° unter dem horizont.

wie ihr seht gibt es keine feste definition für sonnenaufgang bzw sonnenuntergang.

damit in zukunft jede beliebige dämmerung berechnet werden kann wird unser baustein noch einen weiteren eingang H besitzen.  
an H wird dann mittels einer grandangabe definiert welche dämmerung man haben will.

noch ein hinweis, einfach ein paar grad addieren geht nicht weil je nach breitengrad und sonnenstand die korrekt anders ausfällt.
