Herunterladen Inhalt Inhalt Diese Seite drucken

Beckhoff BX9000 Dokumentation Seite 152

Busklemmen-controller für ethernet
Inhaltsverzeichnis

Werbung

Programmierung
OUTPUT
VAR_OUTPUT
   bValid           : BOOL; 
   bError           : BOOL;
   iErrorId     : WORD;
   cbReceive    : WORD;
   cbBytesInStream      : WORD;
   sReceiveIPAddr       : STRING(15)
   iReceivePortNo       : WORD;
END_VAR
bValid: Ein positiver Flankenwechsel zeigt an das neue Daten Empfangen wurden. Diese Daten stehen nun
in der Variable zur Verfügung, die über den Pointer pBuffAddr verbunden wurde.
bError: Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler
aufgetreten ist. Der befehlsspezifische Fehlercode ist in iErrorId enthalten.
iErrorId: Enthält den befehlsspezifischen Fehlercode des zuletzt ausgeführten Befehls (siehe Tabelle).
cbReceive: Gibt die Anzahl an Bytes an die kopiert worden sind.
cbBytesInStream: Gibt die noch im Speicher befindlichen Daten an. Dies sollte immer Null sein. Ist der Wert
>0, haben Sie die Variable die mit pBuffAddr verbunden wurde zu klein gewählt. Es muss dann noch einmal
ausgelesen werden und den Rest der Daten zu erhalten.
sReceiveIPAddr: Zeigt Ihnen die IP-Adresse an von dem Teilnehmer, der die Daten geschickt hat. Wird mit
positiver Flanke von bClear gelöscht.
iReceivePortNo: Zeigt Ihnen die Port-Nummer an von dem Teilnehmer, der die Daten geschickt hat. Wird
mit positiver Flanke von bClear gelöscht.
FB_IpSend
Der Baustein sendet Daten über TCP oder UDP. Welche der Verbindung verwendet wird, ist in der
FB_IpStartSession [} 147] festgelegt worden. An den pBuffAddr wird per "ADR" der Pointer auf die Variabel
festgelegt, die Daten für das Senden beinhaltet. cbBuffLen gibt die Länge der Daten an. Mit
sRemoteIPAddr wird die IP Adresse angegeben, an die die Daten gesendet werden. Mit iPortNo wird bei
TCP dies mit der Port Nummer des FB_IpOpen [} 149] verknüpft. Bei UDP kann eine beliebige Portnummer
verwendet werden. iPortNo ist die Absender Port Nummer. Mit einer positiven Flanke von bStart wird der
Baustein aktiviert und die Daten werden versendet. Solange der Baustein aktiv ist, ist das bBusy auf TRUE.
Sind die Daten versendet worden geht das bBusy auf FALSE und das bError bleibt ebenfalls auf FALSE.
Bei einem Fehler wird das bError gesetzt.
Abb. 133: Funktionsbaustein FB_IPSEND
INPUT
VAR_INPUT
   bStart               : BOOL;
   iSession         : WORD;
   sRemoteIPAddr        : STRING(15);
   pBuffAddr        : DWORD;
   cbBuffLen        : WORD;
END_VAR
bStart: Eine steigende Flanke aktiviert den Baustein.
152
Version: 2.1.0
BX9000

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis