Mehrere Fensterkontakte zusammenfassen?

Programmierung der HomeMatic CCU mittels contronics homeputer CL

Moderator: Co-Administratoren

Antworten
Hans1234
Beiträge: 71
Registriert: 12.03.2014, 19:27
Hat sich bedankt: 2 Mal

Mehrere Fensterkontakte zusammenfassen?

Beitrag von Hans1234 » 15.07.2017, 12:56

es müsste eine einfache Lösung für meinen Vorhaben geben aber ich komme nicht darauf:

ich möchte eine Meldung herausgeben wenn einer der 11x Fensterkontakte geöffnet ist bzw. wird.
Natürlich wäre es mit einer vielfache ODER-Bedingung möglich aber nicht besonders elegant, zumal man nicht in Minutentakt jeden einzelnen Kontakt abfragen sollte.

Dies kommt in jeder Alarmanlage vor, wie löst Ihr das?

Viele Grüsse
Hans1234, über 100 Aktoren, HPCL programmiert - IoBroker dient als graphische Interface und der Einbindung von nicht-HM-Geräten sowie Alexa/Siri/ Wetter usw...

Visu
Beiträge: 507
Registriert: 04.12.2016, 23:30
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: Mehrere Fensterkontakte zusammenfassen?

Beitrag von Visu » 15.07.2017, 15:26

mit einer Systemvariable und einem Programm, welches diese füttert
Dateianhänge
a.JPG
b.JPG

Hans1234
Beiträge: 71
Registriert: 12.03.2014, 19:27
Hat sich bedankt: 2 Mal

Re: Mehrere Fensterkontakte zusammenfassen?

Beitrag von Hans1234 » 15.07.2017, 19:35

Vielen Dank,
wenn ich es richtig verstehe, hast Du eine Systemvariable pro Fensterkontakt definiert. Damit umgehst Du die ständige Abfrage. Richtig?
Es ist eine gute Lösung. Ich möchte es in HCPL lösen. Es geht auf ähnlicher Weise und ich probiere es aus.
Gibt es alternative Vorschläge?
Hans1234, über 100 Aktoren, HPCL programmiert - IoBroker dient als graphische Interface und der Einbindung von nicht-HM-Geräten sowie Alexa/Siri/ Wetter usw...

Familienvater
Beiträge: 7151
Registriert: 31.12.2006, 15:18
System: Alternative CCU (auf Basis OCCU)
Wohnort: Rhein-Main
Danksagung erhalten: 35 Mal

Re: Mehrere Fensterkontakte zusammenfassen?

Beitrag von Familienvater » 16.07.2017, 00:58

Hi,

unabhängig von der Verwendung der TFK:

Du erstellst in HPCL ein neues Makro ohne Hardwarebezug, und in jeden TFK, der auf Empfnag oder auf Änderung getriggert wird, schreibst einen Aufruf für dieses Makro (normal sollte auf Änderung reichen, aber nach Neustarts etc. könnte es Vorteilhaft sein, das ganze immer (bei Empfang) zu erledigen).

Und in dem Makro kannst Du alle n-TFK prüfen, dabei kann man unterschiedlich vorgehen, entweder man "odert" sich durch, dann weiß man nur, das min. einer offen ist. Eleganter ist es, sich zwei Zahlenvariablen im Makro anzulegen, und dort am Anfang die Zähler zu nullen, und dann TFK für TFK einzeln zu prüfen, ob offen, dann wird die Variable für offen um eins erhöht, sonst wird die für geschlossen um eins erhöht. Die Nächste Stufe ist noch eine Zeichenketten-Variable anzulegen, und dort für jeden offenen TFK den Namen anzufügen.

Damit weiß man am Ende, ob 1, 2, 3, oder wieviel Fenster offen sind, und wenn das Makro wirklich von jedem beteiligtem TFK gestartet wird, dann kann man auch diese Zählvariablen jederzeit einfach von anderen Makros/Objekten aus abfragen, und weiß sofort, ob min. ein TFK nicht geschlossen ist, und kann gezielt das Scharfschalten der Anlage verhindern. Und wenn man sich das per eMail oder Pushover mitteilen lassen will, könnte man auch noch die Zeichenkette mit den offenen Fenstern mitschicken, damit man schneller weiß, wo man suchen muss.

Der Familienvater

Hans1234
Beiträge: 71
Registriert: 12.03.2014, 19:27
Hat sich bedankt: 2 Mal

Re: Mehrere Fensterkontakte zusammenfassen?

Beitrag von Hans1234 » 17.07.2017, 20:46

Vielen Dank Familienvater, Deine Lösung ist elegant und ausbaufähig.
Ich habe sie eingesetzt den Ansatz von Visu in HCPL eingesetzt und melde zunächst nur, ob einer der Kontakte offen ist. Es läuft gut.
Ich werde das Programm erweitern. Ich muss mich erst mit e-mail in HCPL beschäftigen.

Viele Grüsse
Hans1234, über 100 Aktoren, HPCL programmiert - IoBroker dient als graphische Interface und der Einbindung von nicht-HM-Geräten sowie Alexa/Siri/ Wetter usw...

Lars
Beiträge: 160
Registriert: 17.07.2006, 10:56

Re: Mehrere Fensterkontakte zusammenfassen?

Beitrag von Lars » 18.07.2017, 12:58

Hallo,

als Info zu dem Thema noch eine einfache Lösung um offene Fenster festzustellen.
Einfach die Fensterkontakte in eine Zahl addieren, die Summe ist dann die Anzahl der offenen Fenster.
Hier der Beispielsource:

Code: Alles auswählen

FensterCheck:=TFKFensterDiele + TFKFensterKueche +,
              TFKFensterWohnen + TFKTerrassentuer
wenn FensterCheck > 0 dann
  ausfuehren(OffeneFensterAnzeigen)
endewenn
In FensterCheck vom Typ Zahl steht dann die Anzahl der offenen Fenster.
Bei der Methode weiss man natürlich nicht welche Fenster es sind, dafür habe ich ein separates Makro was aber nur aufgerufen wird wenn wirklich ein Fenter auf ist. Dann braucht nicht dauernd ein Makro mit unzähligen wenn/oder Anweisungen zu laufen.

LG
Lars

Antworten

Zurück zu „homeputer CL“