Seite 1 von 1

Fehlfunktion bei Programm

Verfasst: 06.12.2017, 21:42
von Manuel.P
Hallo ich habe folgendes Problem.

Ich habe ein Zahlencode das mir die Tür öffnet und zwei Alarmanlagen abschaltet. Problem ist das ich vorher abfragen muss welche Alarmanlage überhaupt eingeschaltet ist. Da ich sie nach 5 Minuten wieder automatisch einschalten lasse, da es nur ein Durchgangsbereich ist ganz wir die Alarmanlage von einem andern Codeschloss deaktiviert.

Ich habe also zwei wenn Bedingungen und anschließend den Befehl zum öffnen der Tür. Problem ist die ersten zwei Aktionen werden ausgeführt und die letzte nicht. In dem Fall das öffnen der Tür. Wenn ich jetzt z.B das öffnen der Tür an erste Stelle setzt, wird die letzte wenn Bedienung nicht mehr ausgeführt. Das Programm ist im Schaltsensor der vom Zahlencodeschloss angesteuert wird. Ausgewählt ist bei Empfang ausführen. Jemand eine Idee ?

Code: Alles auswählen

wenn Alarmanlage_Fahrer eingeschaltet dann
Alarmanlage_5Minuten_deaktiviert einschalten
Alarmanlage_Fahrer ausschalten
warte 5 Minuten
Alarmanlage_5Minuten_deaktiviert ausschalten
Warte 1 Sekunde
Alarmanlage_Fahrer einschalten
endewenn

wenn Alarmanlage_EG eingeschaltet dann
Alarmanlage_5Minuten_deaktiviert einschalten
Alarmanlage_EG ausschalten
warte 5 Minuten
Alarmanlage_5Minuten_deaktiviert ausschalten
Warte 1 Sekunde
Alarmanlage_EG einschalten
endewenn

Tür_Treppenhaus einschalten für "00:00:02" 

Re: Fehlfunktion bei Programm

Verfasst: 07.12.2017, 01:42
von Familienvater
Hi,

ja, ich habe eine Idee. Mehr Informationen würden es einfacher machen, meine Glaskugel sagt mir, das der "Schaltsensor" vom Zahlencodeschloss ein Schließerkontakt-Interface ist, das heißt wir haben 2 Trigger:
offen und geschlossen, sollte es ein Tastereingang sein, ist trotzdem das Problem, das es kurz, lang und aus als Zustand geben kann.

Problem 1:
Das Relais vom Codeschloss zieht wahrscheinlich das Freigabe-Relais für eine Sekunde an, der Status wechselt auf geschlossen, das Script rennt los, und kommt bis zum ersten zutreffenden warte 5 Minuten, dann kommt nach einer Sekunde wieder der offen-Status des Schließerkontakts, und das Script wird erneut getriggert (das warte 5 min wird abgebrochen), der Status der Alarmanlage ist aber inzwischen ausgeschaltet, und damit passiert nichts mehr.

Problem 2:
Der Code wird sequentiell abgearbeitet, und nicht "geforked", wenn beide Alarmanlagen aktiv wären, und es würde kein erneuter Trigger kommen, dann wird erst die eine Alarmanlage für 5 min deaktiviert, und erst danach die 2. Alarmanlage deaktiviert, und diese nochmals 5 min später wieder aktiviert. Das ist glaube ich nicht das, was Du willst.

Es gibt verschiedene Möglichkeiten, da drumherum zu Programmieren, das Problem ist aber theoretisch das erneute Triggern während der Wartezeit von den 5 min, kommt nach 1 min erneut jemand, der den Bereich durchläuft, der nichts deaktiviert, weil ja schon temporär deaktiviert ist, dann passiert nichts, kommt der dummerweise nach 4:50, ist auch noch deaktiviert, und während er durchläuft wird wieder automatisch aktiviert und die Musik geht an. Würde er innerhalb der 5 min erneut das Deaktivieren vom Codeschloss aus Triggern, würde das Warte 5 min trotzdem abgebrochen, weil aber die Anlage jetzt nicht scharf ist, wird auch nicht mehr automatisch nach erneuten 5 min warten geschärft (man kann das natürlich alles entsprechend mit "Semaphoren" versehen, und in getrennten Objekten verarbeiten, damit die im "Hintergrund" laufenden Wartezeiten nicht abbrechen, dann kommt aber das 4:50 Problem...)

q.e.d.: Alarmanlage mit automatischem schärfen taugt nicht... es fehlt die Zwangsläufigkeit.

zu guter letzt:
Ich tippe mal auf falsches Unterforum, wahrscheinlich geht es um HPCL, und das ist im Homematic-Teil des Forums, Homeputer-Studio (für FS20 only) wird schon seit Jahren nicht mehr upgedated und ist definitv EOL.

Der Familienvater

Re: Fehlfunktion bei Programm

Verfasst: 07.12.2017, 10:12
von Manuel.P
Hi, vielen dank schon mal für deine Antwort.

Ja es ist ein Schließer und dieser wird 3 Sekunden aktiviert. Was ich jedoch nicht an deiner Aussage verstehen kann ist das ich bei ganz vielen Tastern den Befehl habe licht umschalten. Hier wird das Licht ja auch nur einmal umgeschaltet und nicht beim Los lassen wieder.
Desweitern lauft der Ablauf ja richtig ab. Also die Alarmanlage wird deaktiviert und auch wieder aktiviert nur die Tür wird nicht geöffnet wenn ich sie an 3 Stelle stehen habe. Diese hat ja mit der Wartezeit nichts zutuen. Die Wartebedinungen sind ja oben in der Wenn Bedienung eingebaut. Wenn ich jetzt hingehen würde und setzte die Tür einschalten an erste stelle Funktioniert es die Tür Schaltet ein, die Alarmanlage Fahrer wird auch deaktiviert und wieder aktiviert nach 5 Minuten. Lediglich den letzten Wenn Benennung dann Alarmanlage EG wird nicht ausgeführt.

Ich Nutze Homeputer Cl Studio 4.0 Rel.171115 und eigentlich bekomme ich auch noch Update wie kommst du darauf das die Software nicht mehr upgedated wird? oder habe ich was falsch verstanden

Re: Fehlfunktion bei Programm

Verfasst: 07.12.2017, 11:03
von Familienvater
Hi,
Manuel.P hat geschrieben:Ich Nutze Homeputer Cl Studio 4.0 Rel.171115
das ist eigentlich viewforum.php?f=45 da zu Hause, hier ist das Forum für die "alte" homeputer Studio, ohne CL, und das ist EOL.

Ich kann Dir leider nicht folgen.

Mir fehlt z.B. die Info, mit welchem HM-Gerät der Ausgang vom Codeschloss übermittelt wird. Wenn es ein Taster-Interface ist, dann kommt bei 3 Sekunden wahrscheinlich ein langer Tastendruck, evtl. sogar wiederholt.

Da Du auch auf die ganzen anderen Hinweise von mir nicht eingehst, bitte ich Dich einfach, die grundlegende Funktionsweise von HPCL noch mal zu verstehen, und z.B. auch mal die Hilfe zu warte zu lesen, und zu verstehen, warum das warte evtl. abgebrochen wird, und das ein warte die weitere Ausführung für dieses Objekt anhält, und das nicht irgendwie nur für den nächsten Befehl oder so gilt.


Der Familienvater