Seite 1 von 1

Fensterstatus offen/gekippt/geschlossen über elseif mit vorhandenen Bausteinen möglich?

Verfasst: So Jul 14, 2019 1:03 pm
von Izeman
Moin,

ich möchte folgendes aus dem Wiregate-Logikprozessor in den Logikeditor überführen:

#Fensterstatus WC:
#Es werden die Status der Fenster offen/geschlossen (2/2/15) und Fenster gekippt/geschlossen (2/2/38) eingelesen.
#Wenn das Fester geschlossen ist, wird Fenster offen/gekippt/geschlossen (5/2/17) auf (0) gesetzt wenn es gekippt ist auf (1) sonst auf (2).
Fensterstatus_WC => { receive=>['2/2/15','2/2/38'], transmit=>'5/2/17', translate => sub {if ((int($input->[0]) == 0) && (int($input->[1]) == 0)) {return 0;} else {{if ((int($input->[0]) == 0) && (int($input->[1]) == 1)) {return 1;} else {return 2;} }} }, },

Habe ich da jetzt einen Knoten im Kopf, oder geht das mit den den vorhandenen Bausteinen nicht. Wenn ich einen UND-Baustein nehme, kann ich doch nicht wenn am Ausgang eine 0 anliegt diese ausgeben, und wenn eine 1 anliegt in einen weiteren Baustein springen, oder.

Gruß Bernd

Re: Fensterstatus offen/gekippt/geschlossen über elseif mit vorhandenen Bausteinen möglich?

Verfasst: So Jul 14, 2019 1:44 pm
von Robosoc
Das ist ganz easy mit dem Binär Multiplexer gelöst. Zwei Eingänge (1: 2/2/15 2:2/2/38), ein Ausgang (5/2/17).

Denn was Du machst ist eigentlich genau das, was ein Binär-Miultiplexer macht:

Du bildest aus mehreren (in Deinem Fall zwei) Binärwerten eine Dezimalzahl):

IN1 - IN2 - OUT
0 - - - 0 - - - 0
1 - - - 0 - - - 1
0 - - - 1 - - - 2
1 - - - 1 - - - 3 (kann aber bei Dir glaube ich nicht vorkommen, oder?

Re: Fensterstatus offen/gekippt/geschlossen über elseif mit vorhandenen Bausteinen möglich?

Verfasst: So Jul 14, 2019 3:27 pm
von Izeman
Hallo Sven,

vielen Dank für deine Hilfe. Das funktioniert sehr gut. Jetzt kommen auf den Ausgang aber wie zu erwarten immer 4 Telegramme, weil wenn ich das richtig verstanden habe, keiner auf das Telegramm antwortet da es nur zur Anzeige in der Visu dient. Aber was kann ich denn nun machen? Die GA soll mit einem KNX-Gerät verknüpft sein. Ist sie ja pronzipiell mit dem Timberwolf, aber das scheint nicht zu reichen. Soll man in so einem Fall einen Dummy nehmen?
Hast du da einen Tip?

Gruß Bernd

Re: Fensterstatus offen/gekippt/geschlossen über elseif mit vorhandenen Bausteinen möglich?

Verfasst: So Jul 14, 2019 3:59 pm
von gbglace
Jede GA die von einem Gerät (hier TWS) auf den Bus gesendet wird und von keinem anderen gerät mit einem Ack bestätigt wird wird vom Sender einige male Wiederholt. Da hilft auch kein Dummy-Gerät in der ETS, denn die ETS ist kein Gerät am Bus. Die Dummys sind nur für etwaig vorhandene Linienkoppler, da mit die ordentliche Filtertabellen generieren können. Ansonsten reine Hilfsmaßnahme um im ETS Projekt einen Überblick über die Logik/ Visuserver zu behalten.

Um die Telegramme beseitigt zu bekommen musst halt noch etwas warten bis es zwischen der CV auf einem TWS-Docker und dem TWS-Objektsystem eine passende Schnittstelle gibt, damit die CV nicht mehr auf die externen Telegramme auf dem Bus angewiesen und stattdessen auch die internen TWs-Objekte konsumieren kann.

Das Verhalten der Telegrammwiderholungen müsste aber bereits mit der wiregate-Lösung vorhanden gewesen sein, da es da ja auch keinen wirklichen Empfänger der GA's gegeben hat.

Re: Fensterstatus offen/gekippt/geschlossen über elseif mit vorhandenen Bausteinen möglich?

Verfasst: So Jul 14, 2019 4:03 pm
von Robert_Mini
Hast du an den Flags in der ETS der TWS Applikation geschraubt?

Wie sieht denn die Telegramm Wiederholung im Busmonitor aus?

Robert

Re: Fensterstatus offen/gekippt/geschlossen über elseif mit vorhandenen Bausteinen möglich?

Verfasst: So Jul 14, 2019 6:11 pm
von Izeman
Hallo Robert,

an den Flags habe ich glaub noch nie was gemacht:
Busmonitor 4 Telegrammen.JPG
ETS GA 5217.JPG

Re: Fensterstatus offen/gekippt/geschlossen über elseif mit vorhandenen Bausteinen möglich?

Verfasst: Mo Jul 15, 2019 12:22 am
von eib-eg
Versuche mal dein Objekt 86 als sendend
Und ein neues Objekt zb. 87 als lesend
gleiche ga und DP ST in der ets einzustellen und deinen tw nach Vorgabe einzuspielen
Dein Wolf ist somit Sender und Empfänger
Meiner Meinung nach dürften somit die widerholungstelegramme verschwinden