Description
Traduction de la notice originale
Description de la fonction
Cette procédure permet de copier (via une opération de type WORD-to-WORD) le nombre d'éléments indiqué dans NumberOfElements, depuis OffsetInSourceTable dans la table source (SourceTable) vers OffsetInDestinationTable dans la table cible (DestinationTable).
AVERTISSEMENT
VALEURS FORCEES NON PRISES EN COMPTE
Cette procédure écrase les valeurs de la mémoire d'état SANS égard aux valeurs éventuellement forcées dans l'éditeur de données de référence. Cela peut mener à des états de processus dangereux.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels.
EN et ENO peuvent être configurés comme paramètres supplémentaires.
Représentation en FBD
Représentation :
Représentation en LD
Représentation :
Représentation en IL
Représentation :
LD SourceTable
IEC_BMDI_M OffsetInSourceTable, NumberOfElements,
    DestinationTable, OffsetInDestinationTable
Représentation en ST
Représentation :
IEC_BMDI_M (SourceTable, OffsetInSourceTable,
    NumberOfElements, DestinationTable,
    OffsetInDestinationTable);
Description des paramètres
Description des paramètres d'entrée :
Paramètre
Type de données
Description
SourceTable
Table source Quantum dont le contenu est à copier. Sélection de la table source :
0 = bits de marqueur %MX
1 = bits d'entrée %IX
3 = mots d'entrée %IW
4 = mots de marqueur %MW
OffsetInSourceTable
UINT
Décalage dans la table source sélectionnée (SourceTable). Comme la copie est de type WORD-to-WORD, OffsetInSourceTable doit être un multiple de 16+1 pour les tables source 0x et 1x (soit 17, 33, 49, etc.). Le décalage dépend de la supervision de limite supérieure et ne doit pas dépasser les limites de la table source.
NumberOfElements
UINT
Taille de la table (source et cible). NumberOfElements correspond au nombre d'éléments à copier depuis la table source. Comme la copie est de type WORD-to-WORD, NumberOfElements doit être un multiple de 16 pour les tables source 0x et 1x (soit 16, 32, 48, etc.). NumberOfElements dépend de la supervision de limite supérieure et ne doit pas dépasser les limites des tables source et cible. Pour éviter que la copie ne dure trop longtemps, cette valeur est par ailleurs soumise aux restrictions suivantes (peu importe les limites configurées) :
Bits %MX, %IX : valeur NumberOfElements maximale = 1 600
Registres %IW, %MW : valeur NumberOfElements maximale = 100
DestinationTable
UINT
Table cible vers laquelle le contenu de la table source est copié. Sélection de la table cible :
0 = bits de marqueur %MX
4 = mots de marqueur %MW
OffsetInDestinationTable
UINT
Décalage dans la table cible sélectionnée. Comme la copie est de type WORD-to-WORD, OffsetInDestinationTable doit être un multiple de 16+1 pour les tables cible 0x et 1x (soit 17, 33, 49, etc.). Le décalage dépend de la supervision de limite supérieure et ne doit pas dépasser les limites de la table cible.
Erreur d'exécution
Messages d'erreur utilisateur standard :
Message d'erreur utilisateur
Description
E_EFB_USER_ERROR_1
La valeur en entrée est un type de registre non valide (SourceTable).
E_EFB_USER_ERROR_2
Le décalage en entrée (OffsetInSourceTable) entraîne la sélection d'une adresse située hors des limites autorisées.
E_EFB_USER_ERROR_3
Le décalage en entrée (OffsetInSourceTable) est différent de 1 ou n'est pas un multiple de 16+1.
E_EFB_USER_ERROR_4
La valeur en sortie est un type de registre non valide (DestinationTable).
E_EFB_USER_ERROR_5
Le décalage en sortie (OffsetInDestinationTable) entraîne la sélection d'une adresse située hors des limites autorisées.
E_EFB_USER_ERROR_6
Le décalage en sortie (OffsetInDestinationTable) est différent de 1 ou n'est pas un multiple de 16+1.
E_EFB_USER_ERROR_7
La valeur NumberOfElements est égale à 0.
E_EFB_USER_ERROR_8
La valeur NumberOfElements équivaut à plus de 1 600 bits.
E_EFB_USER_ERROR_9
La valeur NumberOfElements équivaut à plus de 100 mots.
E_EFB_USER_ERROR_10
La valeur NumberOfElements entraîne la sélection d'une adresse source située hors des limites autorisées.
E_EFB_USER_ERROR_11
La valeur NumberOfElements entraîne la sélection d'une adresse cible située hors des limites autorisées.
E_EFB_USER_ERROR_12
La valeur NumberOfElements n'est pas un multiple de 16.
E_EFB_USER_ERROR_13
Avertissement : les adresses en entrée et en sortie se chevauchent.
En cas d'erreur, les valeurs sont copiées de la source indiquée vers l'adresse cible et la sortie ENO est mise à 1.
Les erreurs utilisateur 1 à 12 bloquent la copie et mettent à 0 la sortie ENO.
En cas d'erreur utilisateur 13, la copie se poursuit et la sortie ENO reste à 1. Cette erreur est en effet considérée comme un avertissement.
NOTE : Pour obtenir la liste des codes d'erreur de bloc, reportez-vous à la section Extension/Compatibilité.