ModbusTCP

Un module ModbusTcp gère la communication en temps réel avec un équipement serveur Modbus TCP.

Téléchargement de la librairie : modbustcplib_0.5.0.30045.zip

Exemple de paramètrage : modbus_parameters.zip

Classe : Linaware.Flybox.Modbus.ModbusTcpModule

Paramètrage du module

Le paramétrage du module se situe dans le fichier module.xml du dossier du module :

<?xml version="1.0" encoding="utf-8" ?>
<configuration verion="00:05:00" debug="false">
    <connexion ip="192.128.128.124" simul="True" simulIp="10.10.10.200" slaveNumber="1" port="502" timeout="2000" maxBlockSize="120" />
    <connexionTag suffix="_COMMERROR" stateModel="NORMAL_DEFAUT" description="Defaut communication automate" group="\GENERAL" />
</configuration>

Définitions des blocs d'échanges

Les blocs d'échanges sont définis dans le fichier BlockModbusTcp.csv :

  • name : nom du bloc
  • description : description du bloc
  • equipment : (non utilisé)
  • type : type de données correspondant au code requête modbus :
    • ReadCoils
    • ReadDiscreteInputs
    • ReadHoldingRegisters
    • ReadInputRegisters
  • address : adresse de départ du bloc
  • size : taille du bloc
  • period : période de lecture en millisecondes

Définitions des variables (Tags)

Les variables sont associées à ds partie d'un bloc, elle sont définies dans le fichier TagsModbusTcp.csv :

  • name : nom (mnémonique de la variable)
  • description : description de la variable et message d'alarme si elle est assocéie à un niveau d'état
  • unit : unité physique
  • reference : référence (champ libre)
  • group : groupe auquel appartient la variable
  • stateModel : nom du modèle d'état eventuel
  • type : (non utilisé)
  • address : adresse modbus
  • format : format de la valeur dans le bloc :
    • S16 : entier 16 bits signé
    • U16 : entier 16 bits non signé
    • S32 : entier 32 bits signé
    • U32 : entier 32 bits non signé
    • F32 : réel flottant IEEE488
    • BIT-xx : bit de mot ou xx représente le numéro de bit de 0 (poids faible) à 15 (poids fort)
    • TEXT-xx : chaîne de caratère xx représente le nombre de mots de (16 bits) format la chaine. La longure de la chaîne est des 2 * xx caractères. Attention à ne pas dépasser la taille du bloc de lecture
  • block : nom du bloc associé
  • correction : type de correction éventuelle. Le seul type autorisé est linear (y = ax + b)
  • coeffA : coefficient a de l'équation y = ax + b si la correction est à linear
  • coeffB : coefficient b de l'équation y = ax + b si la correction est à linear
  • digits : nombre de chiffre après la virgue à prendre en compte
  • deadBand : bande morte de lecture
  • readOnly : lecture seule (False ou True)
  • log : (non utilisé)
  • ressource1 : champ libre qui peut être utilisé dans la supervision
  • ressource2 : champ libre qui peut être utilisé dans la supervision
  • ressource3 : champ libre qui peut être utilisé dans la supervision
  • ressource4 : champ libre qui peut être utilisé dans la supervision
  • historic : (non utilisé)
  • equipment : (non utilisé)