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 blocdescription
: description du blocequipment
: (non utilisé)type
: type de données correspondant au code requête modbus :ReadCoils
ReadDiscreteInputs
ReadHoldingRegisters
ReadInputRegisters
address
: adresse de départ du blocsize
: taille du blocperiod
: 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'étatunit
: unité physiquereference
: référence (champ libre)group
: groupe auquel appartient la variablestateModel
: nom du modèle d'état eventueltype
: (non utilisé)address
: adresse modbusformat
: 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 IEEE488BIT-xx
: bit de mot ouxx
représente le numéro de bit de 0 (poids faible) à 15 (poids fort)TEXT-xx
: chaîne de caratèrexx
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é estlinear
(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 comptedeadBand
: bande morte de lecturereadOnly
: lecture seule (False ou True)log
: (non utilisé)ressource1
: champ libre qui peut être utilisé dans la supervisionressource2
: champ libre qui peut être utilisé dans la supervisionressource3
: champ libre qui peut être utilisé dans la supervisionressource4
: champ libre qui peut être utilisé dans la supervisionhistoric
: (non utilisé)equipment
: (non utilisé)