Verwaltung und Identifizierung von Datentypen

Datentypen im TwinCAT 3 Typsystem werden grundsätzlich anhand ihrer GUID identifiziert. Somit können mehrere Datentypen mit gleichen Namen existieren. Dies gilt auch für unterschiedliche Versionen eines Datentyps. Jede Version eines Datentyps bekommt eine neue GUID zugewiesen.

Verwaltung und Identifizierung von Datentypen 1:

Gleichzeitig besitzt jeder Datentyp eine Liste von Datentypen, die er versteckt („Datatype Hides“).

Verwaltung und Identifizierung von Datentypen 2:

Hieraus ergibt sich die Möglichkeit unterschiedliche Versionen eines Datentyps gleichzeitig im Projekt zu nutzen.

Der Befehl Update Instances… im Kontextmenü eines Datentyps im Editor des Typsystems (Registerkate Data Types) setzt für ausgewählte Verwendungen eines Datentyps die jeweils neueste Version ein.

TwinCAT besitzt für jeden Datentyp einen sogenannten Reference Counter. Dieser Zähler ist im Editor des Typsystems in der Spalte RefCount zu sehen. Jede Verwendung des Datentyps in einem Projekt, aber auch in einem Editor usw. erhöht den Zähler. Wenn ein Zähler 0 ist, wird der Datentyp nicht mehr genutzt und verworfen.

Verwaltung und Identifizierung von Datentypen 3:

Wenn die Einstellung Persistent (even if unused) im Kontextmenü eines Datentyps aktiviert ist, wird die Datentypbeschreibung in der TwinCAT-Projektdatei (*.tsproj) gespeichert, auch wenn der Datentyp nicht im TwinCAT-Projekt verwendet wird. Bei Datentypen, die direkt über den Editor des Typsystems neu angelegt werden, ist die Einstellung standardmäßig aktiviert. So wird sichergestellt, dass die Datentypen nicht direkt gelöscht werden, wenn das TwinCAT-Projekt gespeichert wird, bevor die neuen Datentypen verwendet werden.

Wenn im TwinCAT-Projektbaum unterhalb des Objekts Type System ein SharedTMC verwendet wird, sollte die Einstellung für Datentypen in dieser Datei nicht aktiviert werden, da die Datentypen sonst sowohl in dem Projekt als auch in der SharedTMC abgelegt werden. Bei Datentypen, die über den Editor einer SharedTMC neu angelegt werden, ist die Einstellung standardmäßig nicht aktiviert.

Die Einstellung Auto Delete (if unused) sollte manuell nicht geändert werden, wird aber zur Vollständigkeit angezeigt. Datentypen, bei denen diese Einstellung aktiviert ist, werden für SPS-Projekte ausgeblendet und können dort nicht verwendet werden. Die Einstellung sollte nicht verwendet werden, um z. B. das Typsystem automatisch zu bereinigen. Unbenutzte Datentypen werden im TwinCAT-Projekt automatisch nicht gespeichert und sind nach einem Neuladen des TwinCAT-Projekts dann nicht mehr im Typsystem.