Speicherbereich WAGO 750-889 für RETAIN Daten viel zu klein?

prozanko

Level-1
Beiträge
43
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

da nach jedem bespielen des WAGO Controllers die Variablen zurückgesetzt werden, habe ich diese in RETAIN PERSISTENT deklariert. Ich habe momentan etwa 200 meiner 300 Variablen in der RETAIN PERSISTENT Liste und der Speicher ist etwa zu 80% voll (12803 von 16384 Bytes). Ich müsste aber deutlich mehr Variablen als RETAIN deklarieren, dann kommt aber beim Übersetzten eine Fehlermeldung. Kann man den Retain Speicher irgendwie erweitern?

Was mir aufgefallen ist:
Die Variablen in meiner globalen Liste verbrauchen kaum Speicher.
Die Variablen in meinen PRG_KNX_IP Programm verbrauchen den meisten Speicher. Hat das was mit den Funktionsbaustein zu tun?

Grüße
 

Anhänge

  • WAGO_RETAIN.jpg
    WAGO_RETAIN.jpg
    85,2 KB · Aufrufe: 46
Hallo prozanko,

wie es in der Deklarationsteil deines Programms sind komplette Instanzen von Funktionsbausteinen als RETAIN PERSISTENT deklariert.
Ist das wirklich so nötig? ich sehe hier nicht warum man so macht

Was auch manche machen ist folgendes: man deklariert im Funktionsblock selber eine oder mehrere Variablen alsRETAIN PERSISTENT,
Man muss aber dabei beachten dass nicht nur diese Variablen im Retain Bereich landen sondern alle Variablen des Funktionsblocks auch, und das für jede Instanz dieses FBs.
Der Retain Bereich kann somit schnell aufgebraucht werden.
Das liegt am System selber da er den gesamten Speicherbereich von Instanzen eines solchen FBs als Gesamtblock halten muss => ist mindestens ein Variable als Retain deklariert so landet das ganze auch in Retain Bereich.
Ich glaube das ist genau das was Du auch beobachtet hast.

Gruß,
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

danke für die Erklärung
Habe es mir auch schon so gedacht. Leider ist es der Fall, dass der Funktionsblock den Zustand der KNX Adresse abbildet (z.B. Person anwesend, kommend vom KNX Bus). Sobald ich den WAGO Kontroller neu starte, ist der Funktionsblock zurück gesetzt, obwohl die KNX Adresse auf true steht. Nun weiß ich nicht wie ich das Problem am besten lösen könnte.


Grüße
 
Es gibt z.B. FBs mit _pro am Ende - dort kann man ganz gezielt per xReadKNX einen Lesevorgang starten.

Ansonsten kann man aber auch entsprechende Einstellungen im ETS-Plugin vornehmen.
 
Ich habe es momentan folgend gelöst:
Im KNX Programm gibt es für die Bausteine (in KNX Gruppenadressen) eine Möglichkeit, diese lesend oder schreiben zu setzten. Nach einem Neustart der WAGO werden diese dann von der WAGO auf den KNX Bus abgefragt oder geschrieben. Das klappt auch.

Was aber nicht klappt: nach einen Spannungsausfall geht meine WAGO wieder in den Run-Modus, da werden die Variablen aber nicht gelesen/geschrieben. Wäre super, wenn die WAGO dann auch die Variablen lesen/schreiben würde.

Grüße
 
Weil ich von CodeSys leider nicht viel Ahnung habe:| Kenne mich nur mit den SPS Grundlagen noch von der Ausbildung aus,.Da hatten wir noch Siemens S5 und S7. Für einfache Logikfunktionen reicht es aber;)
 
Es gibt z.B. FBs mit _pro am Ende - dort kann man ganz gezielt per xReadKNX einen Lesevorgang starten.

Ansonsten kann man aber auch entsprechende Einstellungen im ETS-Plugin vornehmen.

Hallo ,

ich wollte bei mir jetzt auch über das xReadKNX Kommando die Werte initiieren. Allerdings habe ich bei mir zwei Gruppenadressen hinterlegt. Eine zum Schreiben und eine für die Rückmeldung. Jetzt wird für die Leseanforderung die falsche GA gesendet. Kann ich da noch was in der ETS einstellen?

Beispiel:
Ich verwende den Baustein FbDPT_Scaling_Pro zum senden der absoluten Rollo-Position an einen KNX-Jalousieaktor. Zudem erhalte ich über den Baustein die aktuelle Position zurück

xReadKNX.jpg

Die Leseanfordung wird jetzt über die 3/3/131 gesendet und nicht über 3/4/131.

 
und da liegt genau mein Problem.

Zum Ansteuern der Rollo (KNX-Aktor) muss die GA 3/3/131 als Senden gesetzt sein und die Rückmeldung GA 3/4/131 ist hörend. Damit die Leseanforderung funktioniert müsste es aber genau umgekehrt sein

Das ReadKNX Kommando verwendet anscheinend nur die als Senden markierte GA. Ich würde aber die hörende Adresse lesen wollen?!
 
Zurück
Oben