Homematic Mondphase berechnen
Homematic Mondphase
Standardmäßig kennt die Homematic CCU keine Mondphase.
Mit diesem kleinen Script, kann die aktuelle Mondphase sowie das Datum des nächsten Vollmond berechnet werden.
Los geht’s!
- Name: Mond_Mondphase
Typ: Zeichenkette - Name: Mond_naechster_Vollmond
Typ: Zeichenkette
- Bedingung: Wenn… Zeitsteuerung, Zeitspannung ganztägig, Serienmuster Zeitintervall alle 1 Stunden
- Aktivität: Dann… Script einfügen
!Mondphase berechnen !Script by www.homematic-guru.de !Benötigte Systemvariablen: !Mond_Mondphase: Zeichenkette Mond_Mondphase !Mond_naechster_Vollmond: Zeichenkette Mond_naechster_Vollmond !Script jede Stunde ausführen !Referenz Variablen real uts = 1.0*(system.Date("%F %X").ToTime().ToInteger()); real rvm = 1371990738.0; real smm = 2551443.0; real rnm = 1357933418.0; !Naechster Vollmond berechnen while(rvm <= uts){rvm = rvm + smm;} real x1 = rvm.ToTime(); string y1 = x1.Format("%d.%m.%Y"); object nvm = dom.GetObject('Mond_naechster_Vollmond'); nvm.Variable(y1); !Mondphase berechnen real x2 = ((uts-rnm)/smm); integer x3 = x2.ToInteger(); real x4 = (x2-x3)*100; integer x5 = x4.ToInteger(); object mf = dom.GetObject('Mond_Mondphase'); string z3 = "Mond"; if(x5 <= 100){z3 = "Abnehmender Mond";} if(x5 <= 60){z3 = "Vollmond";} if(x5 <= 40){z3 = "Zunehmender Mond";} if(x5 <= 15){z3 = "Neumond";} mf.Variable(z3);
Fertig!
Jetzt werden die angelegten Variablen jede Stunde mit den aktuell errechneten Werten beschrieben.
Verwendete Hardware
-
Homematic Zentrale CCU3 inkl. AIO CREATOR NEO Lizenz
€179,95
Enthält 19% Mwst.zzgl. VersandIn den Warenkorb
Ich empfehle solche Programme als “Systemintern” zu markieren. So wird es in der Programmliste versteckt und trägt zur Übersichtlichkeit bei.