FP_ETHERNETIP_START

Zyklische Kommunikation Startauftrag

Dieser FP-Befehl startet den Knoten, an dem der Startauftrag gestellt wird, und schreibt das Ergebnis in die Ausgangsvariable d_Result. Die Knotennummerntabelle wird durch FP_ETHERNETIP_STATE_TABLE_DUT angegeben.

Parameter

Eingang

d_dutStateTable (FP_ETHERNETIP_STATE_TABLE_DUT)
  • Knotennummerntabelle für Startaufträge

  • Speicherbereichsadresse, die die maximale Knotennummer (1-256) oder eine Konstante speichert.

Ausgang

d_Result (WORD)

Zieladresse, an die die Daten geschrieben werden.

  • 0: Der angegebene Knotenstart ist abgeschlossen

  • 1: Die Verarbeitung des angegebenen Knotenstarts läuft.

  • 2: Angegebener Knotenstart fehlgeschlagen

  • 3: Mehrere Starts von FP_ETHERNETIP_START

Fehleralarmmerker

sys_bIsOperationErrorHold (wird auf TRUE gesetzt und bleibt TRUE)
  • wenn der Lesebereich außerhalb des zulässigen Bereichs ist

  • wenn der Befehl in einem Interrupt-Programm ausgeführt wird

sys_bIsOperationErrorNonHold (wird für einen Zyklus auf TRUE gesetzt)
  • wenn der Lesebereich außerhalb des zulässigen Bereichs ist

  • wenn der Befehl in einem Interrupt-Programm ausgeführt wird

Beispiel

POE-Kopf

Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.

	VAR
		bEnable: BOOL:=FALSE;
		wResult: WORD:=0;
		dutNodes_NodeTableStart: FP_ETHERNETIP_STATE_TABLE_DUT;
	END_VAR

POE-Rumpf

Wenn die Variablen sys_bIsEtherNetIPStartStopControllable und bEnable auf TRUE gesetzt werden, wird die Funktion ausgeführt.

KOP-Rumpf

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 8 ;
        NETWORK_BODY
B(B_VARIN,,dutNodes_NodeTableStart,13,5,15,7,);
B(B_VAROUT,,wResult,27,5,29,7,);
B(B_CONTACT,,bEnable,12,3,14,5,);
B(B_CONTACT,,sys_bIsEtherNetIPStartStopControllable,8,1,10,3,);
B(B_F,FP_ETHERNETIP_START!,,15,3,27,7,,?DEN?Dd_dutStateTable?AENO?Cd_Result);
L(1,2,8,2);
L(14,4,14,5);
L(14,5,15,5);
L(10,2,10,4);
L(10,4,12,4);
L(1,0,1,8);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST-Rumpf

IF (sys_bIsEtherNetIPStartStopControllable) AND (bEnable) then
    FP_ETHERNETIP_START(d_dutStateTable := dutNodes_NodeTableStart,
                        d_Result => wResult);
End_if;
END_IF;

Letzte Änderung am: 2022-04-19Feedback zu dieser SeitePanasonic Hotline