Algortihmus für Sonnenauf- und untergang gesucht

Gast #753793
Lesenswert?
• ▲
▼
Moin,

wenn ich diese Formelmonster so sehe, frage ich mich ob ich das meinem 
Mega16 antun will. Folgendes habe ich mir überlegt:

So wie ich das sehe, hängt das Ergebnis (Sonnenauf- und Untergang) nicht 
vom Jahr ab. D.h. die Zeiten sind jedes Jahr gleich!

Wenn ich mich jetzt damit zufrieden gebe, dass ich nur jede Woche die 
Schaltzeiten anpasse (Es geht um meine Rolladensteuerung, die 
automatisch bei Sonnen-aufgang die Rolläden offnen bzw. bei -untergang 
schliessen soll) habe ich nur 52 verschiedene Start- und Schlieszeiten.

Mit ein bischen zusätzlichem Code komme ich auf eine 52-zeilige Tabelle 
mit 2 Spalten macht ein paar hundert Byte im Flash.

Ist so eine Tabellenorientierte Lösung nicht einfacher, schneller und 
evtl. sogar noch kürzer als wenn ich die Formelmonster der Links mit 
Floatingpoint-Variablen, Sinus, Cosinus etc. umsetze ???

Wer hat hier Erfahrung? Eine Meinung ?

Gruß und Danke

Andreas
#754024
Lesenswert?
• ▲
▼
UBoot-Stocki wrote:

> wenn ich diese Formelmonster so sehe, frage ich mich ob ich das meinem
> Mega16 antun will.

Na ja. So schlimm ist es dann auch wieder nicht.
Du kriegst von Atmel für nicht benötigten Flash kein Geld zurück :-)

> Wer hat hier Erfahrung? Eine Meinung ?

Solange du das nur für dich baust, ist eine Tabellenlösung
sicher mehr als ausreichend.

Wenn du das aber kommerziell vertreiben willst, brauchst du
die Formeln. Die Auf und Untergangszeiten sind am gleichen
Tag in Rom nun mal anders als in Hamburg.

Implementiere es so, wie es für dich am einfachsten ist.
Ich würde die Formeln nehmen.
Grund: die 5 Formeln einmal abzutippen geht (für mich) allemal
schneller als das ganze in Excel abzutippen, eine Tabelle zu
erstellen, diese Tabelle abspeichern, in den C Code zu übernehmen
und den Tabellenzugriff zu programmieren. Da ist es mir doch
lieber der Mega rechnet einmal am Tag was ordentliches aus
anstatt nur so vor sich hinzudösen. Er hat ja Zeit. :-)

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.