Online Change von TwinCAT-Objekten

Der Online Change Mechanismus erlaubt es im laufenden Betrieb zwischen verschiedenen Versionen eines TwinCAT-Objekts (SPS-Funktionsbaustein oder TcCOM Modul) umzuschalten.

Online Change von TwinCAT-Objekten 1:

Verfügbares Beispiel in MATLAB®

Führen Sie folgendes in der MATLAB® Kommandozeile aus, um das Beispiel zu öffnen:
TwinCAT.ModuleGenerator.Samples.Start("OnlineChange")

Online Change für SPS-Funktionsbausteine

Der Online-Change-Prozess läuft über den SPS-spezifischen Mechanismus. Wenn Sie den Funktionsbaustein (PLC-FB) in einer versionierten SPS-Bibliothek verwenden, ist keine weitere Konfiguration erforderlich. (Siehe hierzu: Online Change der SPS-Bibliothek)

Online Change für TcCOM Module

Um im laufenden Betrieb zwischen verschiedenen Versionen eines TcCOM zu schalten, muss das entsprechende Interface implementiert sein. Aktivieren Sie dazu den online change support über folgenden Konfigurationsparameter:

exportCfg.ClassExportCfg{1}.TcCom.OnlineChange = true;

Darüber hinaus müssen angelegte Data Areas des TcCOM kompatibel zueinander sein. Wenn Online change support aktiviert ist, ist im Insert TcCom Object-Dialog die letzte Hierarchieebene strenger differenziert. Nur online-change kompatible TcCOM werden zusammengefasst.

Im Folgenden ist zu sehen, dass die Versionen 0.0.0.1 und 0.0.0.3 bzw. 0.0.0.4 und 0.0.0.5 kompatibel für Online-Change sind. Jedoch nicht 0.0.0.3 zu 0.0.0.4 oder 0.0.0.2.

Online Change von TwinCAT-Objekten 2:
Abb.2: OnlineChangeCompatibility

Um die Kompatibilität der Data Areas besser gewährleisten zu können, ist es zum Beispiel möglich, die Internal und TargetVariables einer Funktion nicht in einer internen Data Area zu halten, sondern als Module Parameter. Damit sind nur die Inputs und Outputs als Data Area für die Kompatibilität der TcCOM-Versionen relevant. (weiterführende Informationen zur Konfiguration des Datenzugriffs auf Daten eines TcCOM-Objekts)

exportCfg.ClassExportCfg{1}.TcCom.InternalDataAccess = 'Module Parameter'
exportCfg.ClassExportCfg{1}.TcCom. TargetVariablesDataAccess = 'Module Parameter'

Führen Sie in der TwinCAT Entwicklungsumgebung (bspw. TwinCAT XAE Shell) die folgenden Schritte durch, um ein TcCOM Objekt durch eine neue Version zu ersetzen.

Sie haben eine neue (kompatible) Version eines TcCOM Moduls erzeugt.
Die alte Version wird in der TwinCAT Laufzeit ausgeführt.
1. Nutzen Sie zur Durchführung des Online-Change im TwinCAT XAE das tree item TcCOM Modules und navigieren Sie zum Tab Online Changeable Objects.
Online Change von TwinCAT-Objekten 3:
Abb.3: OnlineChangeXAE
2. Wählen Sie im Drop-down-Menü unter Online Version eine Version Ihrer Wahl aus (es werden nur kompatible Versionen angezeigt).
3. Machen Sie einen Rechtsklick auf die Zeile des Objekts und wählen Sie Apply changed online object versions, um die neue Version des TcCOM zu aktivieren.
Die neue Version wird nun in der TwinCAT Laufzeit (an Stelle der alten Version) ausgeführt.

Weiterführende Informationen finden Sie in der TwinCAT C++ Dokumentation.