
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
> > Hallo > > > > Hallo, ich benutze die CC Station 2.0 zur Steuerung meiner Rollläden über Helligkeitssensoren, die während bestimmter Zeitfenster berücksichtigt werden. Das ganze läuft schon monatelang ohne Probleme. Heute um ca. 13 Uhr gingen plötzlich alle Läden runter. Als ich auf das Display (unter anderem wird darauf alle Sekunde die DCF-Zeit angezeigt) waren die Stunden plötzlich bei 27. Kann es sein, dass das Betriebssystem in der Variablen hour einen Wert höher als 24 liefert? Da mein Programm schon so lange läuft, nehme ich nicht an, dass es sich um einen Programmierfehler handelt. > > > > > > Inzwischen konnte ich das Verhalten rekonstruieren.Alle Rollläden werden bei einer Aussentemperatur unter 8 Grad C normalerweise um ca. 23:30 zwecks Kälteschutz heruntergefahren. Da um ca. 13 Uhr die Funkzeit 27 Uhr war, trat dieser Zustand ein. Es war also ein Problem der falschen Zeit. Wie kann das geschehen? > > Bei der CC1 lief die interne Uhr einfach nach 24 weiter, wenn keine Synchronisation erfolgte. > > Aber 27 statt 13 - da muß etwas mit dem Signal total daneben liegen. Bei selbstgeschriebenen Routinen ist mir sowas schon passiert. Ist also wahrscheinlich schlecht programmiert. > > Machen kann man da nicht viel, wenn man nicht den ganzen Interpreter für das DCF neu schreiben will. Natürlich kann man erstmal unsinnige Zeiten aussortieren, aber dann werden die Rolläden nicht mehr runtergefahren. > > > > Cu Rene > > Vielen Dank für die bisherigen Antworten. Ich habe nun natürlich das Vertrauen in die CControl verloren. > Da ich in meinem Programm die Systemzeit nur abfrage und nie setze, scheidet dieses als Ursache aus. Jede Sekunde (ist zwar Overkill, aber was soll's) berechne ich u. a. anhand der Systemvariablen hour und minute die seit Mitternacht vergangenen Minuten. Diese werden mit einer Konstanten von 1410 (entspricht 23:30) verglichen. Wenn meine Minuten größer sind und die Aussentemperatur unter einem fest definierten Wert ist, wird das Herunterfahren angestossen und ein Indikator gesetzt, dass dies an diesem Tag nicht mehr passiert. Dann verbrate ich in einer Schleife den Rest der Sekunde und beginne von vorne. Viel falsch machen kann man da ja nicht. Hallo, vielleicht ist im vorliegenden Fall die einfache Lösung möglich: Nicht auf größer abfragen, sondern auf gleich. Denn es ist unwahrscheinlich, dass Stunde und Minute gleichzeitig falsch sind. Bei meinen c-control-Stationen V1.1 ist der Fehler noch nicht aufgetreten. Bei meinem vorher beschriebenen Versuch habe ich hour auf 25 gesetzt, um das Verhalten zu testen. MfG ManfredW Meine Homepage: http://manfred.wilzeck.de |
| Antwort schreiben |