SystemDataItemKeyByIndex

TwinCAT TIA
Geräte DEPRAG Geräte Ablaufsteuerung ActiveDevices Ein Client Systeminfo Steuerungsdaten

ns=2;s=DEPRAG Smart/Devices/DEPRAG/AST/ActiveDevices/0/SystemOverview/SystemData/SystemDataItemKeyByIndex

Fordert einen indexabhänigen Schlüssel aus den Systemdaten an.

Parameter:

    Index
    Index des Schlüssels, der angefordert wird.

Rückgabewert:

    SystemDataItemKeyByIndex
    Eine Variable vom Typ OpcMethodReturnValueString. In der Eigenschaft Result sind die befehlsspezifischen Rückgabewerte enthalten.
      Result
      Wert des indexabhängigen Schlüssel.

Beispiele:

Neben den bereits erläuterten Parametern sind für die Implementierung in TwinCAT 3 nachfolgende Variablen anzulegen / zu übergeben:

Beckhoff Parameter:

    bAstSystemDataKeyByIndex
    Eine boolesche Variable, über welche die Ausführung des SystemDataItemKeyByIndex-Befehls getriggert werden kann.
    outputAstSystemDataKeyByIndex
    Eine Instanz der ST_StringOutputData Struktur in welche der Rückgabewert der SystemDataItemKeyByIndex-Methode geschrieben wird.
    hrAstSystemDataKeyByIndex
    Hiermit kann die Ausführung des Befehls überwacht werden. Fehler-Codes haben den Typ HRESULT.
    fbAst
    Eine Instanz des, mit der DEPRAG Smart-Bibliothek gelieferten, FB_AST Funktionsbausteins.
    sDeviceId
    Ein String-Wert, der das Gerät spezifiziert, für welches Systemdaten abgeholt werden sollen.
    nIndex
    Eine Int-Variable, welche den Index des Schlüssels darstellt, der angefordert wird.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
     bAstSystemDataKeyByIndex    : BOOL;
     outputAstSystemDataKeyByIndex   : ST_StringOutputData;                                          
     hrAstSystemDataKeyByIndex    : HRESULT;

     fbAst   : FB_AST;
END_VAR

hrAstSystemDataKeyByIndex := fbAst.SystemDataItemKeyByIndex(
       bExecute    := bAstSystemDataKeyByIndex,   
       ConnectionHandle := depragSmartConnection.ConnectionHandle,
       sDeviceId   := '0',
       nIndex    := 0,
       OutputData   => outputAstSystemDataKeyByIndex);
IF hrAstSystemDataKeyByIndex <> S_FALSE THEN 
    bAstSystemDataKeyByIndex := FALSE;
END_IF  
                                                    

Für Beispiele und Erklärungen bezüglich der Aufrufe von Knoten via Siemens TIA Portal sei an dieser Stelle auf den Unterpunkt "Siemens TIA Portal" in Abschnitt "Erste Schritte" verwiesen.