Description
Traduction de la notice originale
Description de la fonction
Cette procédure copie mot à mot le nombre d'éléments indiqués dans NumberOfElements de la position OffsetInSourceTable du tableau source (SourceTable) à la position OffsetInDestinationTable du tableau 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 en tant que 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 OffsetInSourceTable, NumberOfElements, DestinationTable, OffsetInDestinationTable
Représentation en ST
Représentation :
IEC_BMDI (SourceTable, OffsetInSourceTable, NumberOfElements, DestinationTable, OffsetInDestinationTable);
Description des paramètres
Description des paramètres d'entrée :
Paramètre
Type de données
Description
SourceTable
Tableau source du Quantum dont le contenu est copié. Sélection du tableau source :
0 = bits repères %MX
1 = bits d'entrée %IX
3 = mots d'entrée %IW
4 = mots repères %MW
OffsetInSourceTable
UINT
Décalage dans tableau cible sélectionné (SourceTable). Comme la copie est exécutée mot à mot, pour les tableaux source 0x et 1x, OffsetInSourceTable doit être un multiple de 16+1 (par exemple 17, 33, 49, etc.). Le décalage est soumis à un contrôle de seuils et doit être compris dans les limites du tableau source.
NumberOfElements
UINT
Taille du tableau source et du tableau cible. NumberOfElements indique le nombre d'éléments à copier dans le tableau source. Comme la copie est exécutée mot à mot, NumberOfElementsdoit être un multiple de 16 (par exemple 16, 32, 48, etc.) pour les tableaux sources 0x et 1x. NumberOfElements est soumis à un contrôle de seuils et doit être compris dans les limites du tableau source et cible. Indépendamment des limites configurées, la valeur NumberOfElements a été en plus limitée aux valeurs suivantes, afin d'éviter que la copie ne dure trop longtemps :
Bits %MX, %IX : max NumberOfElements = 1600
Registres %IW, %MW : max NumberOfElements = 100
DestinationTable
UINT
Tableau cible dans lequel le contenu du tableau source est copié. Sélection du tableau cible :
0 = bits repères %MX
4 = mots repères %MW
OffsetInDestinationTable
UINT
Décalage dans tableau cible sélectionné. Comme la copie a lieu mot à mot, pour les tableaux sources 0x et 1x , OffsetInDestinationTable doit être un multiple de 16+1 (par exemple 17, 33, 49, etc.). Le décalage est soumis à un contrôle de seuils et doit être compris dans les limites du tableau cible.
Erreur d’exécution
Les messages d'erreur utilisateur suivants sont utilisés par défaut :
Message d'erreur utilisateur
Description
E_EFB_USER_ERROR_1
Type de registre incorrect en tant que valeur d'entrée (SourceTable).
E_EFB_USER_ERROR_2
Le décalage d'entrée (OffsetInSourceTable) sélectionne une adresse hors des limites autorisées.
E_EFB_USER_ERROR_3
Le décalage d'entrée (OffsetInSourceTable) n'est ni "1" ni un multiple de 16+1.
E_EFB_USER_ERROR_4
Type de registre incorrect en tant que valeur de sortie (DestinationTable).
E_EFB_USER_ERROR_5
Le décalage de sortie (OffsetInDestinationTable) sélectionne une adresse hors des limites autorisées.
E_EFB_USER_ERROR_6
Le décalage de sortie (OffsetInDestinationTable) n'est ni "1" ni un multiple de 16+1.
E_EFB_USER_ERROR_7
La valeur de la longueur (NumberOfElements) est "0".
E_EFB_USER_ERROR_8
La valeur de la longueur (NumberOfElements) se réfère à plus de 1600 bits.
E_EFB_USER_ERROR_9
La valeur de la longueur (NumberOfElements) se réfère à plus de 100 mots.
E_EFB_USER_ERROR_10
La valeur de la longueur (NumberOfElements) sélectionne une adresse source hors des limites autorisées.
E_EFB_USER_ERROR_11
La valeur de la longueur (NumberOfElements) sélectionne une adresse cible hors des limites autorisées.
E_EFB_USER_ERROR_12
La valeur de la longueur (NumberOfElements) n'est pas un multiple de 16.
E_EFB_USER_ERROR_13
Avertissement : chevauchement d'adresses d'entrée et de sortie.
Si aucune erreur ne se produit, la procédure copie les valeurs de la source vers la cible indiquée et attribue à la sortie ENO la valeur 1.
Les erreurs utilisateur 1 à 12 empêchent la copie et mettent la sortie ENO sur  0.
Lorsqu'une erreur utilisateur 13 se produit, la copie se poursuit et la sortie ENO reste sur 1, car cette erreur utilisateur est traitée comme un avertissement.
NOTE : pour obtenir la liste de l'ensemble des codes d'erreur du bloc, reportez-vous à la section Extension/Compatibilité.