WENN Uhrzeit = "06:00:00" funktioniert nicht richt

Betrieb der FHZ-Zentralen mit contronics homeputer Standard / homeputer Studio & WEB-Server

Moderator: Co-Administratoren

Antworten
buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

WENN Uhrzeit = "06:00:00" funktioniert nicht richt

Beitrag von buempi » 30.07.2006, 13:36

Hallo zusammen

Es ist mir immer wieder passiert, dass in einem Makro, das z.B. jede volle Stunde ausgeführt wird, Anweisungen nach einer Bedingung wie z.B.

WENN Uhrzeit = "06:00:00" dann
...
...
ENDEWENN

nicht ausgeführt wurden. Bisher dachte ich, dass das darauf zurückzuführen ist, dass ich eine sehr komplexe Anwendung auf einem extrem langsamen (166 MHz) Oldtimer-Notebook laufen habe.

Im Handbuch heisst es, dass die Funktion Uhrzeit nur im 5 Sekunden-Takt aktualisiert werde. Mein Oldtimer müsste also fünf Sekunden lang überbeschäftigt sein, damit die Bedingung nicht mehr zutrifft bis das Makro zu Ausführung gelangt.

Ich habe nun einen Test gemacht und ein Objekt "Anzeige" (vom Typ Zeichen) erstellt, dessen Makro permanent ausgeführt wird. Die einzige Anweisung lautet

Anzeige:=Uhrzeit

Und siehe da: Die Uhrzeit wird im Sekundentakt angezeigt! Würde die Funktion "Uhrzeit" nur alle 5 Sekunden einen anderen Wert zurückgeben, dürfte das nicht so sein.

Auf die Idee, dass es sich um einen Bug handeln könnte, der auch andere beschäftigt, bin ich nach dem "Briefwechsel" mit Heinz in diesem Forum gekommen. Siehe dazu seinen Beitrag "Steuerung FS20 AS4" unter der Rubrik "ELV FS20 Sender, Empfänger und Aktoren".

Handelt es sich um einen Bug, oder machen Heinz und ich beide den gleichen Fehler?

In diesem Kontext noch etwas: Ich habe deutliche Hinweise aber leider (noch) keine "Beweise" dafür, dass auch Makros, die alle 5 Sekunden ausgeführt werden sollen, in ganz seltenen Fällen nicht ausgeführt werden:

Wenn der Bildschirm zum Energiesparen ausgeschaltet ist und ich eine Taste drücke, dauert es 2 bis 3 Sekunden, bis das Bild wieder aufgebaut ist. Der Prozessor scheint also ziemlich beschäftigt zu sein und der Homeputer-Software nur noch wenig "Saft" zur Verfügung zu stellen. In vereinzelten Fällen hatte ich dann den Eindruck, dass das Objekt UHR (alle 5 Sekunden) einen 10-Sekunden-Sprung gemacht hat.

Besteht da ein Zusammenhang? Verwenden vielleicht die Funktion UHRZEIT und die "5 Sekunden-Makro-Steuerung" die Systemzeit, welche viel genauer als 1 Sekunde ist? Dann wäre es ja fast Zufall, wenn die Bedingung "Wenn Uhrzeit = "06:00:00" je erfüllt würde!

Bin gespannt, ob andere auch schon damit "gekämpft" haben.

Grüsse an alle

buempi

PS: Mein Notebook arbeitet noch unter Windows 98, weil bei 166 MHz und XP das Betriebssystem nur noch mit sich selbst beschäftigt wäre.

Benutzeravatar
squeeezer
Beiträge: 545
Registriert: 17.07.2006, 00:00
Wohnort: Idstein

Beitrag von squeeezer » 30.07.2006, 20:18

ich kann dir zwar keine lösung zu deinem problem anbieten, aber eine vermutung: dein rechner ist wirklich zu lahm :-) ...

aber spass beiseite ... ähnliche probleme gibt es wirklich bei langsamen rechnern ... ich habe das auch mal nachvollzogen ... aber jetzt die gute nachricht: das lässt sich umgehen. mache die abfragen folgendermaßen:

wenn uhrzeit >= "06:00:00" und uhrzeit < "06:01:00" dann
...anweisungen
...anweisungen
endewenn


wenn du das makro dann minutenweise oder stundenweise arbeiten lässt, funktionierts auch bei langsamen rechnern ...

man sollte diese sachen auch nicht in die rubrik "bugs und updatewünsche" eingliedern. nur wenn man ganz sicher ist, dass es ein bug ist, dann gehörts hier rein ... ich verschieb mal den thread in "allgemeine fragen" ...
... squeeezer

Antworten

Zurück zu „homeputer Studio / Standard: allgemeine Fragen“