Description de la fonction

La fonction READ_REG_QX permet de lire les registres d'un esclave Modbus connecté à un module de communication série Modicon X80 situé dans une station EIO.

Lorsque vous programmez une fonction READ_REG_QX, vous devez connaître les procédures de routage utilisées par votre réseau. Les structures de chemin de routage Modbus Plus sont décrites en détail dans le chapitre Adressage d'une entité de communication Modbus Plus et dans le guide de planification et d'installation du réseau Modbus Plus.

NOTE : il est possible d'utiliser plusieurs copies de ce bloc fonction dans le programme. Il n'est cependant pas possible de procéder à une instanciation multiple de ces copies.

Les paramètres supplémentaires EN et ENO peuvent être configurés.

Les blocs fonction de communication 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.

Représentation en FBD

Représentation :

Représentation en LD

Représentation :

Représentation en IL

Représentation :

CAL READ_REG_QX_Instance (ENABLE:=ReadRegQxEnable, ABORT:=ReadRegQxAbort, ADDR:=ModuleAddress, NO_REG:=NbRegistersToRead, SLAVEREG:=SlaveAddress, IEC:=IndexAdjust, DONE=>ReadRegQxSuccessfull, ACTIVE=>ReadRegQxActive, ERROR=>ReadRegQxFaulty, STATUS=>ErrorCode, REG_READ=>ReadData)

Représentation en ST

Représentation :

READ_REG_QX_Instance (ENABLE:=ReadRegQxEnable, ABORT:=ReadRegQxAbort, ADDR:=ModuleAddress, NO_REG:=NbRegistersToRead, SLAVEREG:=SlaveAddress, IEC:=IndexAdjust, DONE=>ReadRegQxSuccessfull, ACTIVE=>ReadRegQxActive, ERROR=>ReadRegQxFaulty, STATUS=>ErrorCode, REG_READ=>ReadData)

Description des paramètres

Description des paramètres d'entrée :

Paramètre

Type de données

Signification

ENABLE

BOOL

Réglé sur 1 pour lire les registres.

ABORT

BOOL

Réglé sur 1 pour abandonner l'opération en cours.

ADDR

ANY_ARRAY_INT

Tableau contenant l'adresse de l'esclave Modbus, c'est-à-dire le résultat de la fonction ADDMX.

NO_REG

INT

Nombre de registres à lire dans l'esclave Modbus.

SLAVEREG

DINT

Adresse d'offset du premier registre %MW à lire dans l'esclave Modbus.

IEC

INT

Réglage d'index appliqué au paramètre SLAVEREG. Le paramètre IEC peut prendre deux valeurs :

  • 0: %MWx

  • 1: %MWx+1

La valeur par défaut du paramètre IEC est 0 pour une cible Modicon M340.

Description des paramètres de sortie :

Paramètre

Type de données

Signification

DONE

BOOL

Réglé sur 1 lorsque la fonction s'est exécutée correctement.

ACTIVE

BOOL

Réglé sur 1 lorsque la fonction est en cours d'exécution.

ERROR

BOOL

Réglé sur 1 si une erreur est détectée par le bloc fonction.

STATUS

WORD

Fournit le code d'erreur si une erreur est détectée par le bloc fonction.

REG_READ

ANY_ARRAY_WORD

Lire des données

(Une structure de données doit être déclarée comme une variable localisée pour recevoir la réponse de l'esclave Modbus.)