DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / Fonctions Modbus
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Ecrit un ou plusieurs registres (valeur 16 bits) à partir d'une adresse précise dans un esclave Modbus.
Remarques :
  • L'exécution de cette fonction est bloquante tant que l'esclave n'a pas accusé réception du message ou tant que le délai d'attente de la session n'est pas dépassé.
  • L'écriture sur 1 bit correspond au code fonction Modbus 6 (Write Single Holding Register).
  • L'écriture sur plusieurs bits correspond au code fonction Modbus 16 (Write Multiple Holding Registers).
Nouveauté 2024
WEBDEV - Code ServeurWindows Cette fonction est désormais disponible pour les sites WEBDEV sous Windows.
WEBDEV - Code ServeurLinux Cette fonction est désormais disponible pour les sites WEBDEV sous Linux.
Exemple
// Crée une session et connexion à un serveur Modbus
Session est un modbusSession
Session = ModbusConnecteTCP("192.168.1.7")

// Si la connexion échoue, affiche l'erreur
SI ErreurDétectée = Vrai ALORS
Trace(ErreurInfo())
SINON
// Ecrit une séquence de 5 entiers 16 bits à partir de l'adresse 0x42
SI PAS ModbusEcritRegistre(Session, 0x42, [0xF8C5, 1637, -1542, 0, 0x00A8]) ALORS
Trace(ErreurInfo())
FIN
FIN

// Déconnexion
ModbusDéconnecte(Session)
Syntaxe

Ecrire une valeur 16 bits dans un esclave Modbus Masquer les détails

<Résultat> = ModbusEcritRegistre(<Session> , <Adresse> , <Valeur>)
<Résultat> : Booléen
  • Vrai l'écriture a été réalisée,
  • Faux dans le cas contraire. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Session> : Variable de type modbusSession
Nom de la variable de type modbusSession correspondant à la session de communication vers l'esclave Modbus.
<Adresse> : Entier
Valeur comprise entre 0 et 65 535 correspondant à l'adresse (dans l'esclave) à laquelle la valeur doit être écrite.
<Valeur> : Entier
Nombre en 16 bits qui doit être écrit dans le registre de l'esclave.

Ecrire plusieurs valeurs 16 bits dans un esclave Modbus Masquer les détails

<Résultat> = ModbusEcritRegistre(<Session> , <Adresse> , <Valeurs>)
<Résultat> : Booléen
  • Vrai l'écriture a été réalisée,
  • Faux dans le cas contraire. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Session> : Variable de type modbusSession
Nom de la variable de type modbusSession correspondant à la session de communication vers l'esclave Modbus.
<Adresse> : Entier
Valeur comprise entre 0 et 65 535 correspondant à l'adresse (dans l'esclave) à laquelle les valeurs doivent être écrites.
<Valeurs> : Tableau
Tableau d'entiers 16 bits qui doivent être écrits dans les registres de l'esclave.
Remarques
ATTENTION : Les opérations d'écriture permettant de manipuler des automates, il est recommandé de tester les différentes commandes avant une mise en production afin de vérifier que les automates effectuent bien les opérations demandées.
Classification Métier / UI : Code neutre
Composante : wd290com.dll
Version minimum requise
  • Version 26
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 04/10/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale