BaseAddress

Schreiben Lesen TwinCAT TIA
Netzwerk REST Client ActiveClients Ein Client

ns=2;s=DEPRAG Smart/Network/HTTP/REST/ActiveClients/0/BaseAddress

Die Basisadresse der URI für die Aufrufe der REST-API.

Beispiele:

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

Beckhoff Parameter:

    bHttpReadBaseAddress
    Eine boolesche Variable, über welche die Ausführung des ReadBaseAddress-Befehls getriggert werden kann.
    bHttpWriteBaseAddress
    Eine boolesche Variable, über welche die Ausführung des WriteBaseAddress-Befehls getriggert werden kann.
    BaseAddress
    Eine String(255)-Variable, in welcher die Basisadresse der URI für die Aufrufe der REST-API hinterlegt wird.
    hrHttpBaseAddress
    Hiermit kann die Ausführung des Befehls überwacht werden. Fehler-Codes haben den Typ HRESULT.
    fbHttpRest
    Eine Instanz des, mit der DEPRAG Smart-Bibliothek gelieferten, "FB_HttpRest" Funktionsbausteins.
    ClientId
    Eine String(255)-Variable, welche den Client spezifiziert, der den Befehl ausführen soll.
    PointerToNodeValue
    Eine Variable vom Typ "POINTER TO BYTE", in welcher der zu setzende Wert hinterlegt ist.
    SizeOfNodeValue
    Eine UINT-Variable, welche die Länge des zu setzenden Wertes enthält.
    ConnectionHandle
    Beim Verbindungsaufbau zwischen DEPRAG Smart Server und Ihrem OPC UA Client erhaltenes "ConnectionHandle".


VAR
     bHttpReadBaseAddress : BOOL;
     bHttpWriteBaseAddress : BOOL;
     BaseAddress    : STRING(255);
     hrHttpBaseAddress  : HRESULT;

     fbHttpRest   : FB_HttpRest;
END_VAR

              
hrHttpBaseAddress := fbHttpRest.ReadBaseAddress(
       bExecute    := bHttpReadBaseAddress,
       ConnectionHandle  := depragSmartConnection.ConnectionHandle,
       ClientId   := '0',
       Output    => BaseAddress);
IF hrHttpBaseAddress <> S_FALSE THEN 
     bHttpReadBaseAddress := FALSE;
END_IF 
   
hrHttpBaseAddress := fbHttpRest.WriteBaseAddress(
       bExecute    := bHttpWriteBaseAddress,
       ConnectionHandle  := depragSmartConnection.ConnectionHandle,
       ClientId   := '0',
       PointerToNodeValue  := ADR(BaseAddress),
       SizeOfNodeValue  := SIZEOF(BaseAddress));
IF hrHttpBaseAddress <> S_FALSE THEN 
     bHttpWriteBaseAddress := 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.