Systemmanager löscht Verknüpfungen

grosser_marco

Level-1
Beiträge
45
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo allerseits,
ich mal wieder mit einem Problem.
Ich will für eine Maschine alle Eingänge, die diese Maschine haben könnte, in einer Struktur zusammen fassen, z.B.
TYPE Typ_MaschineInput :
STRUCT
Eingang1: BOOL;
Eingang2: BOOL;
Eingang3: BOOL;
Eingang4: BOOL;
END_STRUCT
END_TYPE

Dann leite ich von diesem Typ ein Objekt für meine reale Maschine ab, das ich als Eingang lokiere:
Maschine1_Input AT%I*: Typ_MaschineInput;

Das hat den Vorteil daß ich bei 3 Maschinen dieses Typs pro Maschine jeweils nur 1 Objekt der Input-Struktur ableiten muß und dann Strukturvariablen dieses Objekts einfach im Systemmanager mit den Eingangskanälen verknüpfe.
Soweit, sogut.
Wenn ich aber die Strukturvariablen im Systemmanager verknüpft habe und danach merke, daß mal wieder ein neuer Eingang dazu gekommen ist und diesen nachträglich in die Struktur einfüge, z.B.
TYPE Typ_MaschineInput :
STRUCT
Eingang1: BOOL;
Eingang2: BOOL;
Eingang3: BOOL;
Eingang4: BOOL;
neuerEingang: BOOL;
END_STRUCT
END_TYPE

dann sind nach dem Neueinlesen des Projektes im Systemmanager sämtliche Verknüpfungen zu dieser struktur gelöscht...
Mach ich da was falsch oder ist das normal so???

Viele Grüße
 
Hi Marco,

Das ist normal. Wenn du deine Struktur änderst, dann änderst du auch deine Eingangsvariable. Infolgedessen wird beim Neu-Einlesen des Projekts im Systemmanager die entsprechende Verknüpfung gelöscht. Bei der neuen Version 2.11 von TwinCAT kommt beim Neu-Einlesen im Systemmanager sogar eine entsprechende Warnung, dass die Variablen-Verknüpfung gelöscht wird.

Gruß Cerberus
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Tip

Hi Marco,

hatte selbes Problem. Habe ganz schön dumm geschaut, als 100e Verknüpfungen futsch waren. TwinCAT behandelt eine instanzierte Variable mit geänderter Struktur wie eine neue Variable, daher werden die Verknüpfungen leider verworfen.

Hier ein kleiner Workaround:
Klemmen exportieren, löschen, PLC Programm übersetzen, Klemmen importieren, und siehe da, die Verknüpfungen sind da.

Ansonsten anstatt Strukturen die E/A's in einem FB deklarieren, da passiert das nicht.

LG
 
Zurück
Oben