Obtener los parámetros de la conexión
Esta instrucción FP lee los parámetros de la conexión Ethernet y escribe los valores en la DUT FP_IPv4_CONNECTION_DUT.
Entrada
Puerto Ethernet en la CPU (tipos FP7 E): SYS_ETHERNET_USER_CONNECTION_1–SYS_ETHERNET_USER_CONNECTION_216
Salida
Parámetros de la conexión Ethernet
Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.
VAR
bSetIpv4Address: BOOL:=FALSE;
bGetConnection: BOOL:=FALSE;
bGetMac: BOOL:=FALSE;
dutIPv4Connection: FP_IPv4_CONNECTION_DUT;
dutIPv4MAC: FP_IPv4_MAC_DUT;
END_VAR
Este ejemplo establece los parámetros de conexión Ethernet especificados por s_Address. Comprobar que los parámetros adecuados también están configurados en el navegador del proyecto en .Cuando bGetConnection se encuentra a TRUE, los parámetros de conexión se ingresan en la DUT FP_IPv4_CONNECTION_DUT.Cuando bGetMac se encuentra a TRUE, los parámetros de la dirección MAC se ingresan en la DUT FP_IPv4_MAC_DUT.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_VARIN,,'IP=192.168.1.5~MASK=255.255.255.0~GWIP=192.168.1.1',29,3,31,5,);
B(B_CONTACT,,bSetIpv4Address,4,2,6,4,R);
B(B_CONTACT,,sys_bIsEthernetInitializing,15,2,17,4,);
B(B_VAROUT,,bError,43,3,45,5,);
B(B_F,FP_IPV4_SET_ADDRESS!,,31,1,43,5,,?DEN?DsAddress?AENO?CbError);
L(1,3,4,3);
L(6,3,15,3);
L(17,3,31,3);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 6 ;
NETWORK_BODY
B(B_VAROUT,,dutIPv4Connection,45,3,47,5,);
B(B_CONTACT,,bGetConnection,4,2,6,4,);
B(B_F,FP_IPV4_GET_CONNECTION!,,31,1,45,5,,?DEN?DnPort?AENO?CdutIPv4Connection);
B(B_VARIN,,SYS_ETHERNET_USER_CONNECTION_2,29,3,31,5,);
B(B_CONTACT,,sys_bIsEthernetIPAddressAssigned,15,2,17,4,);
L(6,3,15,3);
L(17,3,31,3);
L(1,3,4,3);
L(1,0,1,6);
END_NETWORK_BODY
END_NET_WORK
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 4 ;
NETWORK_BODY
B(B_CONTACT,,bGetMac,4,1,6,3,);
B(B_F,FP_IPV4_GET_MAC!,,31,0,41,4,,?DEN?AENO?CdutIPv4MAC);
B(B_VAROUT,,dutIPv4MAC,41,2,43,4,);
L(1,2,4,2);
L(6,2,31,2);
L(1,0,1,4);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF DF(bSetIpv4Address) AND sys_bIsEthernetInitializing then
FP_IPV4_SET_ADDRESS(sAddress := 'IP=192.168.1.5,MASK=255.255.255.0,GWIP=192.168.1.1',
bError => bError);
END_IF;
IF (bGetConnection) then
FP_IPV4_GET_CONNECTION(nPort := SYS_ETHERNET_USER_CONNECTION_2, dutIPv4Connection => dutIPv4Connection);
END_IF;
IF (bGetMac) then
FP_IPV4_GET_MAC(dutIPv4MAC => dutIPv4MAC);
END_IF;