Description de la fonction
Le bloc CREAD_REG lit en continu les données de registre sur un nœud adressé via TCP/IP-Ethernet.
EN et ENO peuvent être configurés comme paramètres supplémentaires.
NOTE : A propos de ce bloc fonction :
-
Pour programmer cette fonction, vous devez connaître les procédures de routage utilisées sur votre réseau.
-
Pour des raisons techniques, ce bloc fonction ne permet pas l'utilisation des langages de programmation ST et IL.
Représentation du bloc :
Description des paramètres
Description des paramètres :
Paramètre
|
Type de données
|
Signification
|
SLAVEREG
|
DINT
|
Adresse de décalage du premier mot %MW (registre 4x) de l'esclave à lire.
|
NO_REG
|
INT
|
Nombre de registres à lire sur l'esclave
|
AddrFld
|
WordArr5
|
Structure de données décrivant l'adresse TCP/IP
|
REG_READ
|
WORD
|
Premier mot %MW (registre 4x) pour la lecture des données
|
STATUS
|
WORD
|
Code d'erreur
|
Description élémentaire de WordArr5 sur Ethernet TCP/IP
Description élémentaire de WordArr5 sur Ethernet TCP/IP :
Elément
|
Type de données
|
Signification
|
WordArr5[1]
|
WORD
|
Octet de poids faible = Index de mappage MBP sur Ethernet Transporter (MET)
Octet de poids fort : emplacement du module NOE
|
WordArr5[2]
|
WORD
|
Octet 4 (octet de poids fort) de l'adresse IP cible 32 bits
|
WordArr5[3]
|
WORD
|
Octet 3 de l'adresse IP cible 32 bits
|
WordArr5[4]
|
WORD
|
Octet 2 de l'adresse IP cible 32 bits
|
WordArr5[5]
|
WORD
|
Octet 1 (octet de poids faible) de l'adresse IP cible 32 bits
|
Mode de fonctionnement du bloc CREAD_REG
Les blocs fonction CREAD_REG, CWRITE_REG, READ_REG, WRITE_REG et MBP_MSTR utilisent un chemin de transaction de données et requièrent plusieurs cycles pour effectuer une opération. Le nombre de chemins de transaction disponibles par module et par cycle MAST dépend du port de communication utilisé :
-
Les modules à port intégré Modbus Plus ou NOM prennent en charge jusqu'à 4 blocs simultanément.
-
Le port intégré Ethernet TCP/IP prend en charge jusqu'à 4 blocs simultanément.
-
Les modules TCP/IP Ethernet NOE, NOC et 140 CRP 312 00 prennent en charge jusqu'à 16 blocs simultanément.
D'autres blocs fonction de communication peuvent être programmés sur le même port de communication. Toutefois, le bloc de communication qui dépasse le nombre maximum sur ce port n'est traité qu'après la mise à disposition d'un des chemins de transaction. Le bloc suivant sur le port devient alors actif et commence à utiliser un chemin disponible.
NOTE : Une communication TCP/IP entre un API Quantum (NOE 771 ••) et un API Momentum (toutes les UC TCP/IP et tous les modules d'E/S TCP/IP) n'est possible que si une seule tâche de lecture ou d'écriture est effectuée dans chaque cycle. Si plusieurs tâches sont envoyées par cycle d'automate, la communication est interrompue sans générer de message d'erreur dans le registre d'état du bloc fonction.
NOTE : Une communication TCP/IP entre un API Quantum (NOE 211 00) et un API Momentum (toutes les UC TCP/IP et tous les modules d'E/S TCP/IP) n'est possible que si une seule tâche de lecture ou d'écriture est effectuée dans chaque cycle. Si plusieurs tâches sont envoyées par cycle d'automate, la communication est interrompue sans générer de message d'erreur dans le registre d'état du bloc fonction.
L'ensemble des informations de routage sont contenues dans la structure de données WordArr5 de l'entrée AddrFld. Le type de bloc fonction relié à cette entrée (et donc le contenu de la structure de données) dépend du réseau utilisé.
Veuillez utiliser :
NOTE : Pour les experts : vous pouvez également utiliser la structure de données WordArr5 avec des constantes.
NOTE : Ce bloc fonction génère une lourde charge sur le réseau ; il est donc conseillé de surveiller avec attention la charge réseau. Si le réseau est surchargé, le programme doit être restructuré de façon à utiliser le bloc fonction READ_REG, une variante du présent bloc fonction, qui fonctionne sur demande et non en mode continu.
SLAVEREG est le début de la zone de l'esclave adressé où sont lues les données source. La zone source réside toujours dans la zone du mot %MW (registre 4x). SLAVEREG attend la référence source en tant que décalage dans cette zone. (Dans les registres 4x, le « 4 » placé au début doit être omis. Par exemple, 59 (contenu des variables ou valeur littérale) = 40059).
Le paramètre peut être défini en tant qu'adresse directe, variable localisée, variable non localisée ou valeur littérale.
NO_REG est le nombre d'adresses à lire sur l'esclave adressé (1 à 100). Le paramètre peut être entré en tant qu'adresse directe, variable localisée, variable non localisée ou valeur littérale.
Le paramètre du mot REG_READ adresse le premier registre d'une série de registres NO_REG, répertoriés l'un après l'autre, qui sont utilisés comme zone de données cible. Le paramètre doit être entré en tant qu'adresse directe ou variable localisée.
Code d'erreur, voir les erreurs d'exécution.
Le paramètre STATUS peut être défini en tant qu'adresse directe, variable localisée ou variable non localisée.