Seite 2 von 2

Re: SetCCUSysVar geht nicht

Verfasst: 25.09.2013, 09:45
von truso
Hallo Bümpi,

die erste Zuweisung passiert zuverlässig, SollW010101 bekommt also zuverlässig den Wert zugewiesen.
Die 2. Systemvariable bekommt den Wert zu 80% zugewiesen, ab und an also nicht, meistens aber schon.
Alle anderen Systemvariablen bekommen den Wert überhaupt nicht zugewiesen.

Ausführungsintervall aktuell bei 5Minuten (sollte >7x20 sein), habe aber gestern schon mit 10 Minuten versucht ohne Erfolg.
Auf der CCU 1 lief es ohne Wartezeit mit einem Intervall von 1 Minute über ein Jahr.

AUS ist nun auch zu "aus" geworden, bringt aber leider keine Besserung.

Die IP-Adressen sind noch Versuche, bringen aber auch NIX.Wenn es stört kann ich es auch wieder raus nehmen, so hatte ich die Hoffnung auf die Kombination von mehreren Punkten und einer "spontanen Selbstheilung".

Gruß truso

Re: SetCCUSysVar geht nicht

Verfasst: 25.09.2013, 10:35
von contronics-RK
Hallo,

es hat sich seitens der CL-Software gegenüber der CCU1 nichts geändert, habe daher keine Erklärung für die Probleme.

Vielleicht helfen folgende Hinweise:
Eine Warte-Anweisung zwischen den SET-Aufrufen in einem Makro ist nicht nötig, da bei jeder Abfrage der CCU auf Antwort gewartet wird bevor weitergemacht wird. Solche Anweisungen in einem Makro könne sich also nicht in die Quere kommen - es sei denn das Makro wird vor Beendigung erneut aufgerufen.
Das Mindest-Zeitintervall der Hilfetexte bezieht sich auf das Zeitintervall zwischen den Aufrufen in verschiedenen Makros bzw. dem erneuten Aufruf desselben Makros.

Es kommt also zu Problemen wenn das Makro vor Beendigung erneut aufgerufen wird (zu geringes Ausführungsintervall des Makros) oder SET- bzw.GET-CCU... Abfragen von einem anderen Makro gestartet werden obwohl andere noch in Bearbeitung sind.

Re: SetCCUSysVar geht nicht

Verfasst: 25.09.2013, 19:34
von Herbert_Testmann
hallo

Tip am Rande zum Testen ... Ich füge am Ende des makros immer einen ein/warte 2sec/aus Befehl für eine Lampe (Objekt in der Visualisierung) mit ein. Dann kann ich sehen, dass das makro bis zum Ende gelaufen ist, wenn die (virtuelle) Leuchte kurz an / aus geht.

Ich würde ja sehr gerne Mit testen. Im Moment traue ich mich aber nicht mal eine neue Sysvar an zu legen, aus Angst vor dem "Datenpunkt" Bug :(

Re: SetCCUSysVar geht nicht

Verfasst: 26.09.2013, 09:35
von truso
Vielen Dank für die Unterstützung.

Ich vermute das Problem hier (Auszug aus Syslog):

Error no socket for SETCCUSYSVAR in object RT0101 (sind aber nicht vom aktuellen Tag, aktuell finde ich da nix mehr.

Kann aber leider im Moment mit den Einträgen noch nicht viel anfangen. Da bin wohl doch ich das Problem. :?:
Ich kann leider erst heute Abend weiter testen. Das Problem ist noch, daß die CCU2 gute 130km entfernt steht.
Ich habe die Variablenzuweisung mal noch um Einträge in eine Logdatei erweitert.
Die CCU geht bis zum ersten SETCCU, den 2. Eintrag direkt danach erzeugt Sie schon nicht mehr regelmäßig.
Intervall steht auf 5Minuten.

:?:

truso

Re: SetCCUSysVar geht nicht

Verfasst: 30.09.2013, 13:01
von truso
Da habe ich mal die Logdateien seit durchgeführten Neustart. Zuvor passierte gar nix mehr. Alle anderen Fkt. habe ich abgeschaltet. NACHTRAG: Leider doch nicht, waren noch 2x GetCCU mit 10 Minuten Intervall gesetzt
Die Sensoren hängen noch drann.
Den Unterschiedlichen Zeitbedarf finde ich schon sehr seltsam. Ein paar Variablen setzen kann doch nicht so lang dauern.
Ausführungsintervall ist im Moment bei 10 Minuten.

30.09.2013;11:50:00;Step0;OK
30.09.2013;11:54:20;Step1;OK - 4 Minuten für eine Variable
30.09.2013;11:55:15;Step2;OK
30.09.2013;11:56:30;Step3;OK
30.09.2013;11:57:25;Step4;OK
30.09.2013;11:57:30;Step5;OK - 5 Sekunden für eine Variable
30.09.2013;11:57:30;Step6;OK - 0 Sekunden für eine Variable
30.09.2013;11:58:00;Step7;OK - 8 Minuten für den Durchlauf
30.09.2013;12:00:00;Step0;OK
30.09.2013;12:01:40;Step1;OK
30.09.2013;12:06:00;Step2;OK
30.09.2013;12:09:00;Step3;OK
30.09.2013;12:09:30;Step4;OK
30.09.2013;12:09:30;Step5;OK
30.09.2013;12:09:35;Step6;OK - 9:35 für 6 Variablen
30.09.2013;12:10:00;Step0;OK
30.09.2013;12:10:05;Step1;OK
30.09.2013;12:10:30;Step2;OK
30.09.2013;12:14:20;Step3;OK
30.09.2013;12:14:45;Step4;OK
30.09.2013;12:16:30;Step5;OK
30.09.2013;12:16:30;Step6;OK
30.09.2013;12:17:00;Step7;OK - 7:00 für den Durchlauf
30.09.2013;12:20:00;Step0;OK
30.09.2013;12:20:25;Step1;OK
30.09.2013;12:24:40;Step2;OK
30.09.2013;12:26:30;Step3;OK
30.09.2013;12:27:25;Step4;OK
30.09.2013;12:27:25;Step5;OK
30.09.2013;12:27:30;Step6;OK
30.09.2013;12:27:55;Step7;OK - 7:55 für den Durchlauf
30.09.2013;12:30:00;Step0;OK
30.09.2013;12:33:50;Step1;OK
30.09.2013;12:36:30;Step2;OK
30.09.2013;12:39:00;Step3;OK
30.09.2013;12:39:30;Step4;OK
30.09.2013;12:39:30;Step5;OK - 0 Sekunden für eine Variable
30.09.2013;12:39:35;Step6;OK - 9:35 Minuten für das Setzen von 6 Variablen, dadurch natürlich Variable 7 nicht mehr erreicht sondern wieder bei 0 angefangen.

In der CCU1 hatte ich den Ausführungsintervall bei 1Minute und es funktionierte ALLES.
Arbeitet die CCU2 mit unterscheidlichen Takten oder wie kommen so unterschiedliche Zeiten zusammen?

Gruß truso

Re: SetCCUSysVar geht nicht

Verfasst: 30.09.2013, 15:02
von truso
Nächste Erkenntnis:
Nur noch das eine Makro. Jedoch unterschedlich mit lokalhost, echter IP und 127.0.0.1
Auszug:
SetCCUSysVar("SollW010202",RW01,"localhost")

Zeile:=Datum + ";" + Uhrzeit + ";" + "Step4" + ";" + "OK"
SCHREIBEDATEI("RT01.txt",Zeile,2)

SetCCUSysVar("SollW010301",RW01,"127.0.0.1")

Zeile:=Datum + ";" + Uhrzeit + ";" + "Step5" + ";" + "OK"
SCHREIBEDATEI("RT01.txt",Zeile,2)

SetCCUSysVar("SollW010302",RW01,"10.67.1.111")

Zeile:=Datum + ";" + Uhrzeit + ";" + "Step6" + ";" + "OK"
SCHREIBEDATEI("RT01.txt",Zeile,2)

Logdatei:
30.09.2013;13:40:00;Step0;OK
30.09.2013;13:40:25;Step1;OK
30.09.2013;13:40:55;Step2;OK
30.09.2013;13:41:25;Step3;OK
30.09.2013;13:42:00;Step4;OK
30.09.2013;13:42:00;Step5;OK
30.09.2013;13:42:00;Step6;OK
30.09.2013;13:42:35;Step7;OK - 2:35 für einen Durchlauf
30.09.2013;13:50:00;Step0;OK
30.09.2013;13:50:30;Step1;OK
30.09.2013;13:51:00;Step2;OK
30.09.2013;13:51:30;Step3;OK
30.09.2013;13:52:00;Step4;OK
30.09.2013;13:52:00;Step5;OK
30.09.2013;13:52:05;Step6;OK
30.09.2013;13:52:35;Step7;OK - 2:35 für einen Durchlauf
30.09.2013;14:00:00;Step0;OK
30.09.2013;14:00:25;Step1;OK
30.09.2013;14:00:55;Step2;OK
30.09.2013;14:01:25;Step3;OK
30.09.2013;14:01:55;Step4;OK
30.09.2013;14:02:00;Step5;OK
30.09.2013;14:02:00;Step6;OK
30.09.2013;14:02:30;Step7;OK - 2:30 für einen Durchlauf
30.09.2013;14:10:00;Step0;OK
30.09.2013;14:10:25;Step1;OK
30.09.2013;14:11:00;Step2;OK
30.09.2013;14:11:30;Step3;OK
30.09.2013;14:12:00;Step4;OK
30.09.2013;14:12:00;Step5;OK
30.09.2013;14:12:05;Step6;OK
30.09.2013;14:12:35;Step7;OK - 2:35 für einen Durchlauf
30.09.2013;14:20:00;Step0;OK
30.09.2013;14:20:25;Step1;OK
30.09.2013;14:20:55;Step2;OK
30.09.2013;14:21:25;Step3;OK
30.09.2013;14:21:55;Step4;OK
30.09.2013;14:22:00;Step5;OK
30.09.2013;14:22:00;Step6;OK
30.09.2013;14:22:30;Step7;OK - 2:30 für einen Durchlauf

Für meine Begriffe geht es mit IP Adresse schneller als mit localhost! :idea:

Herbert_Testmann hatte mit seiner Vermutung wohl Recht - vielen Dank
Dann habe ich mal alles auf 127.0.0.1 (Geräte-IP macht keinen Sinn, wenn die Routinen öfter eingesetzt werden sollen) umgestellt und noch mal laufen lassen.
Herbert_Testmann hatte mit seiner Vermutung wohl Recht - vielen Dank

30.09.2013;14:40:00;Step0;OK
30.09.2013;14:40:00;Step1;OK
30.09.2013;14:40:00;Step2;OK
30.09.2013;14:40:05;Step3;OK
30.09.2013;14:40:05;Step4;OK
30.09.2013;14:40:10;Step5;OK
30.09.2013;14:40:10;Step6;OK
30.09.2013;14:40:15;Step7;OK - 0:15 für einen Durchlauf
30.09.2013;14:50:00;Step0;OK
30.09.2013;14:50:00;Step1;OK
30.09.2013;14:50:00;Step2;OK
30.09.2013;14:50:05;Step3;OK
30.09.2013;14:50:05;Step4;OK
30.09.2013;14:50:10;Step5;OK
30.09.2013;14:50:10;Step6;OK
30.09.2013;14:50:10;Step7;OK - 0:10 für einen Durchlauf
30.09.2013;15:00:00;Step0;OK
30.09.2013;15:00:00;Step1;OK
30.09.2013;15:00:00;Step2;OK
30.09.2013;15:00:05;Step3;OK
30.09.2013;15:00:05;Step4;OK
30.09.2013;15:00:10;Step5;OK
30.09.2013;15:00:10;Step6;OK
30.09.2013;15:00:15;Step7;OK - 0:15 für einen Durchlauf


Wenn ich mir überlege wie viele SetCCU und GetCCU mit localhost ich in den Makros hatte, braucht man sich bei dem Zeitintervall nicht mehr wundern. Da kam die CCU2 zu nix anderen mehr.
Ich werde das Ganze noch mal auf der CCU 1 laufen lassen und dort mal den Zeitverlauf prüfen. Da hat localhost wohl noch besser funktioniert.
Bericht folgt.

Gruß truso

Re: SetCCUSysVar geht nicht

Verfasst: 30.09.2013, 15:47
von truso
Hier mal die Auswertung der CCU1. Alle anderen Programmteile mit GetCCU und SetCCU laufen weiterhin.
Auch steht noch Alles auf localhost.
Ausführungsintervall 1Minute:

30.09.2013;15:32:00;Step0;OK
30.09.2013;15:32:00;Step1;OK
30.09.2013;15:32:05;Step2;OK
30.09.2013;15:32:10;Step3;OK
30.09.2013;15:32:10;Step4;OK
30.09.2013;15:32:15;Step5;OK
30.09.2013;15:32:20;Step6;OK
30.09.2013;15:32:20;Step7;OK - 0:20
30.09.2013;15:33:00;Step0;OK
30.09.2013;15:33:00;Step1;OK
30.09.2013;15:33:05;Step2;OK
30.09.2013;15:33:10;Step3;OK
30.09.2013;15:33:10;Step4;OK
30.09.2013;15:33:15;Step5;OK
30.09.2013;15:33:15;Step6;OK
30.09.2013;15:33:20;Step7;OK - 0:20
30.09.2013;15:34:00;Step0;OK
30.09.2013;15:34:00;Step1;OK
30.09.2013;15:34:05;Step2;OK
30.09.2013;15:34:05;Step3;OK
30.09.2013;15:34:10;Step4;OK
30.09.2013;15:34:15;Step5;OK
30.09.2013;15:34:15;Step6;OK
30.09.2013;15:34:20;Step7;OK - 0:20
30.09.2013;15:35:00;Step0;OK
30.09.2013;15:35:00;Step1;OK
30.09.2013;15:35:05;Step2;OK
30.09.2013;15:35:05;Step3;OK
30.09.2013;15:35:10;Step4;OK
30.09.2013;15:35:15;Step5;OK
30.09.2013;15:35:15;Step6;OK
30.09.2013;15:35:20;Step7;OK - 0:20

Wo ist denn nun der Geschwindigkeitsvorteil der CCU2?
Da muss noch was nachgebessert werden. Die 5Sekunden Differenz würde ich den anderen Funktionen zuordnen welche größtenteils mit 1Minute laufen.
Ich habe den Eindruck, daß die CCU2 kein Multitasting mehr macht sondern seinen Geschwindigkeitsvorteil aus der linearen Abarbeitungn bezieht.
Es sollte doch eine Weiterentwicklung sein?
Bis vor ein paar Minuten habe ich an mir gezweifelt, nun ist die Frage wer da Mist gebaut hat?

Gruß

truso

Re: SetCCUSysVar geht nicht

Verfasst: 30.09.2013, 20:50
von Tobias78
Hallo truso,
vielen Dank für den Hinweis. Ich habe nun auch mal von localhost auf "127.0.0.1" gewechselt. 12 getccysysvar Abfragen brauchen auf meiner CCU2 jetzt reproduzierbar 27 Sekunden.
Gruß, Tobias.

Re: SetCCUSysVar geht nicht

Verfasst: 01.10.2013, 10:30
von truso
Hallo Tobias,

vielen Dank für die Rückmeldung.

Ich habe jetzt wieder die CCU2 in Betrieb genommen. Nachdem nun localhost überall ersetzt wurde, läuft auf der CCU2 alles wie auf der CCU1.
Ich lass mich mal überraschen, welche Änderungen es noch gibt.

Gruß truso

gelöst - SetCCUSysVar geht nicht

Verfasst: 01.10.2013, 18:48
von Herbert_Testmann
Hallo

nach einer Umstellung auf

Code: Alles auswählen

SetCCUSysVar("Heizung_Dauer_gestern",HZ_LaufzeitGestern,"127.0.0.1")
funktioniert der Befehl jetzt wieder.

Also "localhost" -> "127.0.0.1"