FB_NLinkOpen
Dieser Funktionsbaustein baut (aktiv) eine Netzwerkverbindung zum Fremdsystem auf. Beim Erfolg werden die internen Parameter der hLink-Variablen initialisiert. Die selbe hLink-Variableninstanz muss dann an die anderen Instanzen der Kommunikationsbausteine: FB_NLinkFetch, FB_NLinkWrite oder FB_NLinkClose übergeben werden. In einer SPS-Applikation wird pro Netzwerkverbindung (TwinCAT System<->Ethernet-LAN-Adapter<->Fremdsteuerung) eine Instanz von dieser Variablen benötigt.
VAR_IN_OUT
VAR_IN_OUT
hLink : T_HNLINK;
END_VAR
hLink : Netzwerkverbindungshandle (Typ: T_HNLINK). Die Instanz dieser Variable wird von den anderen Kommunikationsbausteinen benötigt und wird an sie auch per VAR_IN_OUT übergeben.
VAR_INPUT
VAR_INPUT
stSettings : ST_NLinkSettings := ( sHost := '127.0.0.1', nPort := 2002 );
nOpt : DWORD := 0;
bExecute : BOOL;
tTimeout : TIME := T#45s;
END_VAR
stSettings: Struktur mit Konfigurationseinstellungen der Kommunikationsverbindung (Typ: ST_NLinkSettings). Besetzen Sie die Membervariablen dieser Struktur mit den Parametern wie Portnummer, Hostname usw.
nOpt: Reserviert für zukünftige Anwendungen.
bExecute: Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.
tTimeout: Gibt die Timeout-Zeit an, die bei der Annahme des Kommandos nicht überschritten werden darf.
VAR_OUTPUT
VAR_OUTPUT
bBusy : BOOL;
bError : BOOL;
nErrID : UDINT;
END_VAR
bBusy: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen. Bitte beachten Sie, dass nicht die Ausführung des Kommandos, sondern nur dessen Annahme zeitlich überwacht wird.
bError: Sollte ein Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der bBusy-Ausgang zurückgesetzt wurde.
nErrID: Liefert bei einem gesetzten bError-Ausgang die Fehlernummer.
Beispiel:
Siehe unter Beispiele.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS-Bibliotheken |
---|---|---|
TwinCAT v3.1.4016 oder höher | PC oder CX (x86, x64, ARM) | Tc2_S5S7Com (Communication->TcpIp) |