Wago TP1 Klemme Telegrammverluste

g3haustechnik

Level-1
Beiträge
4
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo

Ich nutze eine Wago 750-889 in Verbindung mit einer TP1 Klemme zur KNX Welt.

Nun schlage ich mich in allen möglichen Formen damit ab, Telegramme aus dem KNX in der SPS SICHER auszulesen.

Mir kommt vor, dass die Klemme nicht alle Telegramme vom KNX BUS sauber ausliest bzw. die PLC nicht immer sauber darauf reagiert.

Zahlreiche Versuche... und ich komm auf keinen Nenner, warum es immer wieder vorkommt, dass Telegramme nicht richtig am Baustein ankommen.

Mit den Flags auf der KNX Seite probiert und probiert...

In der SPS Aufzeichnungsversuche mit Zähler... z.B Ausgang am FB Update_PLC, und es fehlen immer wieder Zählvorgänge.

hat mir irgend jemand einen Tipp... eine Erfahrung, was hier dahinter stecken könnte ???

Kann es sein, dass im zyklischen PLC Ablauf gerade im falschen Moment ausgewertet wird ???

Danke Hans
 
Hallo Hans,
kannst du dazu noch weitere Angaben machen.
- in welchen zeitlichen Abständen werden die KNX-Telegramme an die PLC gesendet?
- Wie ist die Zykluszeit der PLC-Task eingestellt?
- Wie oft gehen Telegramme verloren. Ist das sehr sporadisch oder einfach reproduzierbar?
- Ist der Controller 750-889 in Verbindung mit der TP1 Klemme im Routermodus betrieben?
- Kannst du einen Screenshot vom Testprogramm mit dem Zähler schicken

Gruß
ClMak
 
Hallo

Konnte es lösen, das Stichwort Task war es. Musste mich mit diesem Thema auseinandersetzen, und hab hier die Korrekur gesetzt. Der Aufruf des Programmbausteines zur KNX Schnittstelle PRG KNX Module hat eine eigene Task mit fixen 25 ms bekommen. Den Rest PLC_Prg lasse ich freilaufend rennen.
Die zyklische Übertragung des Updates setze ich im KNX module Programmbaustein,
1641555178162.pngund setze diesen erst wieder am Ende des Programm Bausteines PLC_Prg zurück.

1641555301208.png
Ich gehe davon aus, das die fixe Zeit von Tasks immer eingehalten wird, die Priorität die Reihenfolge der Abarbeitung ist, und freilaufendnde Tasks dynamische Zeiten haben. Wenn die freilaufenden Tasks eine höhere Prio haben, wie in diesem Fall dann wird zuerst Prio1 dann Prio 10 abgearbeitet
1641554970481.png


Vieleicht wäre ich froh, über ein paar Zeile zum Thema Task, Prio, Reihenfolge etc. eventuell auch ein Link, welcher dieses Thema etwas besser aufarbeitet, als die Codesys Bechreibung, um mich hier genauer einzulesen.

Gruss Hans
 
Warum benötigst du zwei Tasks?
Was macht dein Programm PLC_PRG? Die Zykluszeit von 179ms ist sehr hoch!!! Aus meiner Sicht kann hier etwas nicht stimmen.
Diese Zykluszeit ist ungewöhnlich hoch.

Ideal ist, wenn dein gesamtes Applikationsprogramm in nur einen Task mit Prio 1 bearbeitet werden kann. Diese Task kann dann z.B. zyklisch alle 40ms aufgerufen werden. Zwei Task machen alles unnötig kompliziert...
Um das machen zu können müsste aber untersucht werden, warum du 179ms Zykluszeit für PLC_PRG benötigst.
 
Zurück
Oben