Skip to main content

Bloc fonctionnel : ModbusServer

Bibliothèque: ModbusTCP Server

Le bloc fonctionnel traite jusqu'à 16 requêtes de connexion client parallèles via Modbus TCP. Les requêtes Modbus fonctionnent dans des plages de données qui mappent les registres d'entrée et de stockage.

Les codes de fonction Modbus suivants sont pris en charge :

  • 0x01 Read Coils

  • 0x02 Read Discrete Inputs

  • 0x03 Read Holding Registers

  • 0x04 Read Input Registers

  • 0x05 Write Single Coil

  • 0x06 Write Single Register

  • 0x0F Write Multiple Coils

  • 0x10 Write Multiple Registers

  • 0x17 Read/Write Multiple Registers

Le bloc fonction ModbusServer utilise les paramètres qui ont été configurés dans l'onglet de l'éditeur d'appareils du serveur Modbus TCP .

Tableau 27. Entrées (VAR_INPUT)

Nom

Type de données

Valeur initiale

Description

wPort

WORD

502

Le Port du serveur (pile de protocoles TCP/IP) 502 est le port par défaut de Modbus

pInputData

POINTER TO WORD

Pointeur vers WORD; pointe vers la carte du registre d'entrée Modbus

uiInputDataSize

UINT

1024

Longueur du tableau de données d'entrée (WORD par registre); par défaut : 1024

pOutputData

POINTER TO WORD

Pointeur vers WORD; pointe vers la carte du registre de retenue Modbus

uiOutputDataSize

UINT

Longueur du tableau de données de sortie (WORD par registre)

tTimeout

UDINT

Délai d'expiration (ms). Si ce délai est différent de zéro et qu'aucune erreur d'écriture Modbus ne s'est produite avant l'expiration du délai, les données de sortie sont mises à zéro.

xEnable

BOOL

FALSE

Drapeau pour démarrer le traitement de la demande

xReset

BOOL

FALSE

Redémarrage de la communication normale avec les serveurs ; réinitialisation des mots d'état et des bits d'erreur pour un front montant

InterfaceName

WSTRING(255)

Nom de l'interface Ethernet (facultatif). Lorsqu'il est spécifié, le serveur Modbus se connecte à l'adresse IP de cette interface.



Tableau 28. Sorties (VAR_OUTPUT)

Nom

Type de données

Valeur initiale

Description

xBusy

BOOL

FALSE

TRUE pendant que la demande est en cours de traitement

xError

BOOL

FALSE

Informations sur les erreurs trouvées

byClientConnections

BYTE

0

Nombre de connexions

xTimeout

BOOL

Le délai d'attente est expiré. Les Registre de retenue et les bobines sont remis à zéro.