Blog d'un Développeur et Architecte LabVIEW par Luc Desruelle, coauteur du livre Français "LabVIEW programmation et application"
[Actualité] Le protocole modbus série avec NI LabVIEW
par
, 16/10/2015 à 18h06 (6635 Affichages)
Plus d'info sur le Protocole modbus tcp avec l'API LabVIEW vers le lien/
1) le protocole Modbus série "ASCII" ou "RTU" avec LabVIEW
Avec les API LabVIEW, il est possibile d'utiliser le protocole Modbus, sans même savoir comment il est codé. Cela est totalement transparent pour le développeur.
exemple de la dernière API https://decibel.ni.com/content/docs/DOC-30140
Il existe 2 protocoles série :En Modbus série, le maître se connecte à l'esclave. Dès que la liaison est établie, le maître envoie des requêtes Modbus (Requests) à l'esclave. Ces requêtes sont traitées par l'esclave. Le résultat est renvoyé au maître sous forme de réponse Modbus (Response).
RTU est le protocle le plus utilisé, avec calcul de CRC
ASCII avec calcul du LRC
exemple create Modbus serial ASCII master exemple
exemple create Modbus serial RTU master exemple
2) Protocole PDU
Le protocole Modbus définit un (Protocol Data Unit) Modbus-PDU, qui ne dépend pas de la couche de communication correspondante. Ce Modbus-PDU se compose des deux champs "Function Code" et "Data".
Grâce au blindage de "Function Code" et "Data" dans Modbus-PDU, les services Modbus et le modèle d'objet restent identiques pour toutes les variantes Modbus.
le construction du PDU est réalisée directement dans le code de l'API, cela est transparent pour le développeur.
3) Transport et ADU
En fonction de la représentation sur les différents protocoles réseau, Modbus-PDU est complété par des champs supplémentaires (MBAP Header) pour le Modbus-ADU (Application Data Unit).
le création de l'ADU est réalisée directement dans le code de l'API, cela est transparent pour le développeur.
Modbus-PDU et Modbus-ADU composent ensemble le message Modbus, également désigné par "Frame" (trame).
Luc Desruelle
Auteur du livre "LabVIEW programmation et applications"
CLA : Certified LabVIEW Architect / Certifié Architecte LabVIEW
CLD : Certified LabVIEW Developer / Certifié Développeur LabVIEW
profil