NT_StartProcess

NT_StartProcess 1:

Mit dem Funktionsbaustein "NT_StartProcess" kann aus der SPS heraus eine Windows-Anwendung gestartet werden. Intern wird eine Instanz des ADSWRITE-Funktionsbausteins aufgerufen. Mit dem Funktionsbaustein können auch Anwendungen auf einem  Remote-PC gestartet werden.

VAR_INPUT

VAR_INPUT
    NETID       :T_AmsNetId;
    PATHSTR     :T_MaxString;
    DIRNAME     :T_MaxString;
    COMNDLINE   :T_MaxString;
    START       :BOOL;
    TMOUT       :TIME := DEFAULT_ADS_TIMEOUT;
END_VAR

NETID: Hier kann die AmsNetId des TwinCAT-Rechners angegeben werden, auf dem die Anwendung gestartet werden soll. Für den lokalen Rechner kann auch ein Leerstring angegeben werden.

PATHSTR: Der gesamte Pfad der auszuführenden Anwendung als String (z.B. "C:\WINNT\NOTEPAD.EXE" ).

DIRNAME: Arbeitsverzeichnis der auszuführenden Anwendung als String (z.B. "C:\WINNT" ).

COMNDLINE: Kommandozeilen-Parameter (z.B.: "win.ini" ).

START: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.

TMOUT: Gibt die Timeout-Zeit an, die bei der Ausführung des ADS-Kommandos nicht überschritten werden darf.

VAR_OUTPUT

VAR_OUTPUT
    BUSY         :BOOL;
    ERR          :BOOL;
    ERRID        :UDINT;
END_VAR

BUSY: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt.

ERR: Sollte ein ADS-Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der BUSY-Ausgang zurückgesetzt wurde.

ERRID: Liefert bei einem gesetzten ERR-Ausgang die ADS-Fehlernummer oder den Win32-Fehlercode (Platform SDK: Win32 API).

 

Beispiel für einen Aufruf in FUP

NT_StartProcess1        : NT_StartProcess;
NT_StartProcess_Busy    : BOOL;
NT_StartProcess_Err     : BOOL;
NT_StartProcess_ErrId   : UDINT;
StartProcess            : BOOL;
Tmout                   : TIME;

NT_StartProcess 2:

 

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT v2.7.0

PC or CX (x86)

TcPlcUtilities.Lib; Standard.Lib; PLCSystem.Lib; TcPLCAds.Lib; PLCHelper.Lib;

TwinCAT v2.8.0

PC or CX (x86)

TcUtilities.Lib

TwinCAT v2.10.0 Build >= 1301

CX (ARM)