Aufruf eines TcCOM-Objekts aus der SPS
Erstellen eines TcCOM-Wrapper-FB
In der Export-Konfiguration ist zu setzen:
TcCom.TcComWrapperFb = 'true';TcCom.TcComWrapperFbProperties = 'true'; % optionalInstanz des TcCOM-Wrapper-Funktionsblock erzeugen
- 1. Erstellen Sie ein SPS-Projekt.
- 2. Fügen Sie die gewünschte Bibliothek unter References hinzu.
- Sie erhalten unter Pous/TcCOM Wrapper einen Funktionsblock, den Sie in der SPS instanziieren können. Darüber hinaus werden notwendige Datentypen im Ordner Duts angelegt.

Variante 1: Referenzieren einer statischen Modul-Instanz
Der Funktionsblock kann genutzt werden, um auf vorher im XAE, z. B. unter System > TcCOM Objects angelegte Modulinstanzen, zuzugreifen. Für diesen statischen Fall muss die Objekt-ID der entsprechenden Modulinstanz bei der Deklaration der Funktionsblock-Instanz übergeben werden.
![]() |
|
Deklaration
// link wrapper with a static instance
InitStrStatic : ST_FB_TempCtrl_TcCOM_InitStruct := (noid := 16#01010010); // OID from object1 in System > TcCOM Objects
fbTempCtrStatic : FB_TempCtrl_TcCOM_InitStruct(InitStrStatic);
Inputs : ST_TempCtrl_U_T; // data type defined in TempCtrl library
Outputs : ST_TempCtrl_Y_T;Ausführungs-Code
fbTempCtrStatic(stTempCtrl_U := Inputs, stTempCtrl_Y => Outputs);Variante 2: Dynamisches Instanziieren und Referenzieren aus der SPS
Der Funktionsblock kann auch so genutzt werden, dass ein TcCOM-Objekt aus der SPS heraus erzeugt und mit dem Wrapper verknüpft wird.
![]() |
|
Deklaration
// dynamic instance: create TcCOM from PLC
InitStrDyn : ST_FB_TempCtrl_TcCOM_InitStruct := (
nTaskOid := 16#02010030, // take TaskOID of PlcTask
eModuleCaller := E_ModuleCaller.Module ); // set module caller to "call by module"
fbTempCtrDyn : FB_TempCtrl_TcCOM_InitStruct(InitStrDyn);
OutputsDyn : ST_TempCtrl_Y_T;Ausführungs-Code
fbTempCtrDyn(stTempCtrl_U := Inputs, stTempCtrl_Y => OutputsDyn);![]() | Der Quellcode zur oben gezeigten Grafik ist verfügbar in MATLAB® über das Command Window
|
