Establecer el número de estación MEWNET-W2
Esta instrucción FP establece el número de estación MEWNET-W2 para la unidad MEWNET-W2 en el número de slot especificado por s1_Slot.
Entrada
Número de slot para unidad de expansión
Número de estación (rango de configuración: 1–64)
El número de estación se puede modificar solamente cuando el interruptor rotativo en el panel frontal de la unidad está a 0.
Salida
Dirección de inicio del área de memoria de la unidad maestra que guarda el resultado del procesamiento (1 palabra)
Contenido del resultado del procesamiento d_Result
FALSE: Proceso completado
TRUE: Proceso en curso
FALSE: Finalización normal
TRUE: Finalización anormal
Antes de ejecutar la instrucción, asegurarse de que el bit 15 (bandera de proceso en curso) del área de almacenamiento de resultados de procesamiento especificada por dResult es FALSE.
El resultado del procesamiento se guarda en el área especificada por d_Result.Si se produce un error, la bandera de resultado de ejecución (bit 14) pasa a TRUE. El código de error se guarda en los bytes de menor peso de d_Result.
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
bEnable: BOOL:=FALSE;
iSlot: INT:=0;
wResult: WORD:=0;
iStationNumber: INT:=0;
END_VAR
La función se ejecuta cuando la variable bEnable se encuentra a TRUE.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_CONTACT,,bEnable,4,3,6,5,);
B(B_F,FP_MEWNET_W2_SET_STATION_NUMBER!,,15,2,34,7,,?DEN?Ds1_Slot?Ds2_StationNumber?AENO?Cd_Result);
B(B_VARIN,,iSlot,13,4,15,6,);
B(B_VAROUT,,wResult,34,4,36,6,);
B(B_VARIN,,iStationNumber,13,5,15,7,);
L(1,0,1,7);
L(1,4,4,4);
L(6,4,15,4);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If (bEnable) Then
FP_MEWNET_W2_SET_STATION_NUMBER(s1_Slot := iSlot,
s2_StationNumber := iStationNumber,
d_Result => wResult);
End_if;