FP_ETHERNETIP_GET_STATE_TABLE_STOP

Rechercher tous les nœuds où la communication cyclique s’est arrêtée

Cette instruction FP lit la table des numéros de nœuds, recherche les nœuds où la communication cyclique s’est arrêtée et sauvegarde les valeurs dans la variable de sortie du DUT FP_ETHERNETIP_STATE_TABLE_DUT.

Paramètres

Sortie

d_dutStateTable (FP_ETHERNETIP_STATE_TABLE_DUT)

Destination vers laquelle les données lues sont écrites.

Drapeaux d’erreur

sys_bIsOperationErrorHold (passe à TRUE et reste TRUE)
  • Si la zone lue est en dehors de l’intervalle autorisé.

  • Si l’instruction est exécutée dans un programme d’interruption.

sys_bIsOperationErrorNonHold (passe à TRUE pendant un cycle)
  • Si la zone lue est en dehors de l’intervalle autorisé.

  • Si l’instruction est exécutée dans un programme d’interruption.

Exemple

En-tête du POU

Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.

	VAR
		bEnable: BOOL:=FALSE;
		dutNodes_StopNodeTable: FP_ETHERNETIP_STATE_TABLE_DUT;
	END_VAR

Corps du POU

La fonction est exécutée lorsque la variable bEnable est définie sur TRUE.

Corps en LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 4 ;
        NETWORK_BODY
B(B_VAROUT,,dutNodes_StopNodeTable,28,2,30,4,);
B(B_CONTACT,,bEnable,4,1,6,3,);
B(B_F,FP_ETHERNETIP_GET_STATE_TABLE_STOP!,,8,0,28,4,,?DEN?AENO?Cd_dutStateTable);
L(1,2,4,2);
L(6,2,8,2);
L(1,0,1,4);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corps en ST

IF (bEnable) then
    FP_ETHERNETIP_GET_STATE_TABLE_STOP(d_dutStateTable => dutNodes_StopNodeTable);
END_IF;

Modifié le : 2024-06-19Commentaires sur cette pageAssistance téléphonique