CreateOrUpdate

TwinCAT TIA
Geräte DEPRAG Geräte Ablaufsteuerung ActiveDevices Ein Client Schraubablauf

ns=2;s=DEPRAG Smart/Devices/DEPRAG/AST/ActiveDevices/0/ScrewdrivingSequence/CreateOrUpdate

Erstellt oder verändert ein vorhandenes Schraubprogramm.

Parameter:

Rückgabewert:

Beispiele:

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

Beckhoff Parameter:

    bAstCreateOrUpdate
    Eine boolesche Variable, über welche die Ausführung des CreateOrUpdate-Befehls getriggert werden kann.
    outputAstCreateOrUpdate
    Eine Instanz der ST_VoidOutputData Struktur in welche der Rückgabewert der CreateOrUpdate-Methode geschrieben wird.
    hrAstCreateOrUpdate
    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 ein Schraubprogramm erzeugt werden soll.
    sSequenceJson
    Die String-Variable enthält das Schraubprogramm als JSON-String, welches an den Smart OPC UA Server übergeben wird.
    SizeOfSequenceJson
    Die UINT-Variable gibt die Länge des Schraubprogramm-Strings an, der als JSON-String an den Smart OPC UA Server übergeben wird.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
     bAstCreateOrUpdate      : BOOL;  
     outputAstCreateOrUpdate     : ST_VoidOutputData                                            
     hrAstCreateOrUpdate      : HRESULT;

     fbAst   : FB_AST;
END_VAR

hrAstCreateOrUpdate := fbAst.CreateOrUpdate(
       bExecute     := bAstCreateOrUpdate,   
       ConnectionHandle  := depragSmartConnection.ConnectionHandle,
       sDeviceId    := '0',
       sSequenceJson   := ADR('my screwdriving sequence string'),
       SizeOfSequenceJson  := SIZEOF('my screwdriving sequence string'),  
       OutputData    => outputAstCreateOrUpdate);
IF hrAstCreateOrUpdate <> S_FALSE THEN 
 bAstCreateOrUpdate := 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.