Einstellen eines Ersatzregisters für FL-Adressen
Dieser Befehl stellt ein Ersatzregister für FL-Adressen ein, wenn das FP7 mit anderen Steuerungen der FP-Serie über MEWTOCOL kommuniziert.
Dieser FP-Befehl stellt ein DT/LD-Ersatzregister in der FP7-CPU ein, wenn ein FL-Register von der Partner-FP-Serien-SPS für die MEWTOCOL-COM oder MEWTOCOL-DAT-Kommunikation angegeben ist. Dieser Befehl kann für eine FP7 mit eingebauter SCU, eingebautem ET-LAN oder angeschlossenem seriellen Modul verwendet werden, und ist kompatibel mit FP2SH.
Eingang
Speicherbereich für das Register, das das FL-Register ersetzt. (SYS_MEMORY_AREA_DT oder SYS_MEMORY_AREA_LD)
Adressenoffset für den Ersatz von FL0 starten, z.B. 100123 für DT100123.
Stellen Sie diesen Befehl so ein, dass er nur einmal nach dem Umschalten in den “RUN-Modus” ausgeführt wird.
Dieser Befehl kann nicht ausgeführt werden, während das serienmäßige Ethernet initialisiert wird. Bevor Sie den Befehl ausführen, stellen Sie sicher, dass sys_bIsEthernetIPAddressAssigned auf FALSE eingestellt ist.
wenn der bei nOffset angegebene Offset den Grenzwert des Speicherbereichs überschreitet
wenn der bei nOffset angegebene Offset den Grenzwert des Speicherbereichs überschreitet
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;
diOffset: DINT:=123456;
END_VAR
Wenn die Variable bEnable auf TRUE gesetzt wird, wird die Funktion ausgeführt.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_CONTACT,,bEnable,5,1,7,3,);
B(B_F,FP_MEWTOCOL_SET_MAPPING_START_FL!,,19,0,39,5,,?DEN?HnArea?DnOffset?AENO);
B(B_VARIN,,SYS_MEMORY_AREA_DT,17,2,19,4,);
B(B_VARIN,,diOffset,17,3,19,5,);
L(1,0,1,5);
L(1,2,5,2);
L(7,2,19,2);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (bEnable) then
FP_MEWTOCOL_SET_MAPPING_START_FL(nArea := SYS_MEMORY_AREA_DT, nOffset := diOffset);
end_if;