-> Hier kostenlos registrieren
Moin,
ich hoffe die Frage klingt nicht zu blöd. Es geht um TwinCAT 3.1 (Build 4014.12) und die Beschreibung im InfoSys ist mal wieder ein wenig verwirrend.
Ich habe einen Hubtisch, um Bauteile in eine Förderstrecke einzuschleusen. Die Übergabeposition Hubtisch auf Ebene mit Förderstrecke ist nicht eine der Endlagen des Hubtisches, deshalb gibt es eine Übergabeposition. Der Wert der Übergabeposition steht in einer GVL namens GVL_Persistent:
Dieser Wert ist mechanisch bedingt und deshalb ändert der sich auch nicht. Er soll immer genau diesen Wert haben. Mein Kollege, der die Routine schrieb, deklarierte sie deshalb PERSISTENT RETAIN. Letztens musste ich etwas an der Hardware-Konfiguration ändern und nach dem Aktivieren der Konfiguration waren der Übergabewert plötzlich 0.0 und es stand auch 0.0 in der GVL_Persistent drin.
So, wie ich die Beschreibung im InfoSys verstanden habe (1), hätte die Variable rPosUebgabe eigentlich ihren Wert nicht ändern dürfen. Entweder hätte er auf dem aktuellen Wert von 13.4 bleiben müssen oder mit 13.4 "neu" initialisiert werden müssen. Das ist aber offensichtlich passiert. Ist das ein Fehler oder übersehe ich irgendwas?
Vielen Dank schonmal.
Gruß
Jörn
(1) https://infosys.beckhoff.com/index.php?content=../content/1031/tc3_plc_intro/2527625355.html&id=
ich hoffe die Frage klingt nicht zu blöd. Es geht um TwinCAT 3.1 (Build 4014.12) und die Beschreibung im InfoSys ist mal wieder ein wenig verwirrend.
Ich habe einen Hubtisch, um Bauteile in eine Förderstrecke einzuschleusen. Die Übergabeposition Hubtisch auf Ebene mit Förderstrecke ist nicht eine der Endlagen des Hubtisches, deshalb gibt es eine Übergabeposition. Der Wert der Übergabeposition steht in einer GVL namens GVL_Persistent:
Code:
VAR_GLOBAL PERSISTENT RETAIN
rPosUebgabe: LREAL := 13.4; // Übergabeposition Hubtisch
END_VAR
Dieser Wert ist mechanisch bedingt und deshalb ändert der sich auch nicht. Er soll immer genau diesen Wert haben. Mein Kollege, der die Routine schrieb, deklarierte sie deshalb PERSISTENT RETAIN. Letztens musste ich etwas an der Hardware-Konfiguration ändern und nach dem Aktivieren der Konfiguration waren der Übergabewert plötzlich 0.0 und es stand auch 0.0 in der GVL_Persistent drin.
So, wie ich die Beschreibung im InfoSys verstanden habe (1), hätte die Variable rPosUebgabe eigentlich ihren Wert nicht ändern dürfen. Entweder hätte er auf dem aktuellen Wert von 13.4 bleiben müssen oder mit 13.4 "neu" initialisiert werden müssen. Das ist aber offensichtlich passiert. Ist das ein Fehler oder übersehe ich irgendwas?
Vielen Dank schonmal.

Gruß
Jörn
(1) https://infosys.beckhoff.com/index.php?content=../content/1031/tc3_plc_intro/2527625355.html&id=