Démarrage simultané de multiples tables de positionnement
Cette instruction démarre plusieurs tables de positionnement simultanément. Le nombre de tables de positionnement est spécifié par s1_dutMultipleChannels. Chaque table de positionnement contrôle un seul axe comme spécifié avec Configurator PMX Les tables de contrôle de la position finale, du point de passage, du point C peuvent être démarrées.
Entrée
Zone de départ du registre de données qui sauvegarde les numéros des tables de données qui doivent être démarrées simultanément
Si une opérande est une valeur en dehors de l’intervalle autorisé, une erreur d’opération apparaît.
L’arrêt a priorité lorsque les conditions d’arrêt du système, d’arrêt d’urgence, d’arrêt limite et d’arrêt de décélération sont remplies.
Une erreur d’opération apparaît lorsque le registre système d’une voie spécifiée est autre que Sortie impulsionnelle [opération avec table].
Les voies doivent être disponibles pour que l’instruction puisse être exécutée et les tables de positionnement démarrées simultanément. Lorsque l’une des voies spécifiée est occupée, les tables de positionnement ne sont pas démarrées simultanément et le process est terminé. Utilisez FP_POS_UNIT_GET_STATUS pour trouver l’état de chaque voie.
Utilisez F380_Positioning_Start pour démarrer une interpolation linéaire. Lorsque la table de contrôle des axes d’interpolation a été spécifiée avec F383_Positioning_StartMultiple, une erreur d’autodiagnostic (erreur d’opération du positionnement) apparaît.
s1_dutMultipleChannels démarre le numéro de la table de positionnement de chaque voie.
Vous ne pouvez spécifier que des tables de positionnement pour le contrôle d’un seul axe.
Les numéros de tables de positionnement valides sont 0–20. Si 0 est spécifié comme numéro de table de positionnement, la voie est exclue du démarrage simultané.
Si la zone spécifiée à l’aide du modificateur d’adresse est en dehors des limites autorisées.
Si la voie ou le numéro de table de positionnement est en dehors de l’intervalle autorisé.
Si Sortie impulsionnelle [opération avec table] n’a pas été définie dans les registres système.
Si la zone spécifiée à l’aide du modificateur d’adresse est en dehors des limites autorisées.
Si la voie ou le numéro de table de positionnement est en dehors de l’intervalle autorisé.
Si Sortie impulsionnelle [opération avec table] n’a pas été définie dans les registres système.
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
bStartMultiple: BOOL:=FALSE;
dutChannels: F383_MultipleChannels_DUT;
END_VAR
La fonction est exécutée lorsque la variable bStartMultiple passe de FALSE à TRUE.
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_F,F383_Positioning_StartMultiple!,,11,1,25,5,,?DEN?Ds1_dutMultipleChannels?AENO);
B(B_CONTACT,,bStartMultiple,4,2,6,4,);
B(B_VARIN,,dutChannels,9,3,11,5,);
L(1,3,4,3);
L(1,0,1,5);
L(6,3,11,3);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF (bStartMultiple) then
F383_Positioning_StartMultiple(s1_dutMultipleChannels := dutChannels);
END_IF;