Communication en série avec le protocole Modbus

Nov 22, 2024 Laisser un message

1. Méthodes de communication de base

 

Il existe deux méthodes de communication de base: la communication parallèle et la communication série.

Communication parallèle: il s'agit d'une méthode de communication dans laquelle chaque bit de données est transmise en même temps.

Communication série: Il s'agit d'une méthode de communication dans laquelle les données sont transmises une par une de manière séquentielle.

 

2. Deux types de communication série

 

Deux formes de base de la communication en série: communication synchrone et communication asynchrone.

La communication asynchrone transmet un format de trame de données composé d'un bit de démarrage, de 1 à 9 bits de données et de bits d'arrêt 1 à 2, en s'appuyant sur les bits de départ et d'arrêt pour rester synchronisé;

Le format de trame de données de communication synchrone est composé de plusieurs octets d'un cadre, chaque trame a deux (ou un) caractères de synchronisation comme le bit de début pour déclencher l'horloge de synchronisation pour commencer à envoyer ou à recevoir des données.

 

3. Classification selon la direction de la transmission

 

La communication série peut être classée en plus en simplex, demi-duplex et en duplex complet en fonction de la direction de la transmission des informations. Si à tout moment du processus de communication, les informations ne peuvent être transmises qu'à partir d'une partie A à l'autre partie B, elle s'appelle Simplex. Si à tout moment, les informations peuvent être transmises à la fois de A à B et de B à A, mais uniquement par la présence de transmission dans une direction, elle est appelée transmission à demi-duplex. Si, à un instant dans le temps, la signalisation bidirectionnelle existe sur la ligne de A à B et de B à A, elle est appelée duplex complet.

 

4. Interface de communication série

 

Interface physique de communication série Selon les normes et protocoles électriques pour inclure RS -232, RS -422, RS485, etc., ici principalement sur certaines des interface RS485 la plus couramment utilisée.

 

5. Interface RS485circuit

info-1-1

En tant que circuit de démonstration, la puce SP485R est souvent utilisée et peut être directement intégrée dans un circuit d'application RS -485 réel. Le port série standard du microprocesseur est directement connecté à la broche RO de la puce SP485R via RXD et à la DI PIN de la puce SP485R via TXD.

 

La sortie du signal R / D du microprocesseur contrôle directement l'émetteur / récepteur de puce SP485R Activer: Signal R / D pour le "1", l'émetteur de puce SP485R est valide, le récepteur est interdit, pour le moment le microprocesseur peut être au RS -485 bus pour envoyer des octets de données; Le signal R / D pour le signal R / D est "0", alors l'émetteur de puce SP485R est désactivé, le récepteur est valide, à l'heure actuelle, le microprocesseur peut recevoir des octets de données du bus -485 . Dans ce circuit, tout moment de la puce SP485R "récepteur" et "émetteur" ne peut avoir qu'un état de travail.

 

La résistance de pull-up R7 connectée à la broche A et à la résistance de traction R8 connectée à la broche B est utilisée pour s'assurer que la puce SP485R non connectée est dans un état d'inactivité, offrant une protection de défaillance du réseau pour améliorer la fiabilité du RS -485 nœud et le réseau.

 

Si le SP485R est connecté au port série UART de la puce Microprocesseur 80C51, la broche RO de la puce SP485R n'a pas besoin d'être tirée; Sinon, il est nécessaire de déterminer s'il faut ajouter ou non une résistance de traction d'environ 10k à la broche RO en fonction de la situation réelle.

6. Communication en série modbus

 

Le modbus en règle générale d'échange de données dans les circuits de communication industrielle a été largement utilisé dans divers domaines, ce qui rend pratique la communication avec les appareils avec le protocole de communication Modbus, tels que les PLC, les onduleurs, les débitmètres, la température et l'humidité, le logiciel de configuration du groupe d'ordinateurs hôtes, et une variété de capteurs et d'instruments.

 

Le protocole de communication MODBUS est divisé en deux modes de communication série, les modes de communication ASCII et RTU. En usage, vous devez définir le mode de communication et le port série RS232, les paramètres de communication RS485 (taux de bauds, parité, adresse d'esclave, bits de données, bits d'arrêt, commande d'octets), tous les appareils du bus Modbus doivent avoir le même mode de communication et Paramètres de communication série.

 

Structure de la trame de message modbus

 

adresse Code de fonction Adresse de données Données 1 Données... Données n

CRC16

 

7. Message de commande modbus
Lire les données
Maître envoie

adresse Code de fonction Données Démarrer l'adresse élevée Données Démarrer l'adresse bas Nombre de données élevées Nombre de données basses CRC16 élevé CRC16 basse

 

Retour:

adresse Code de fonction Longueur d'octet Données 1 haut Données 1 bas Données 2 élevés Données 2 basses

…

CRC16 élevé CRC16 bas

 

8. Concepts clés de modbus

 

(1) L'ordinateur supérieur lit les données chaque fois que l'intervalle n'est généralement pas inférieur à 100 ms

(2) Adresse du périphérique: Adresse de communication de l'esclave Modbus, il ne peut pas y avoir deux adresses identiques dans un réseau. (3) Code de fonction: code de fonction spécifié par le protocole Modbus.

(4) Enregistrer l'adresse et le nombre de registres

Le paramètre de la commande maître est le registre de l'adresse de registre, lisez la longueur du registre de n registres. (5) Données de réponse des esclaves

Les données de réponse des esclaves sont: Nombre d'octets et n données de section numérique.

 

9. Modbus Master Common Operations

 

(1) Lire l'optimisation:Pour la lecture des données de l'adresse discontinue, qu'elle prenne ou non la lecture emballée, le système utilise la commande de lecture emballée pour compléter la lecture de plusieurs adresses en même temps.

(2) Lire l'intervalle d'optimisation:Lors de la lecture de l'optimisation, si l'intervalle entre les adresses est inférieur à cet intervalle, ils seront emballés et lus en même temps en utilisant plusieurs commandes de lecture.

(3) Longueur maximale du paquet:La longueur de données maximale autorisée pour une communication.

(4) Ordre des octets:Ajustez l'ordre de décodage de 32- bit Double Mots.

Prenez 32- bit entier comme exemple pour illustrer la signification de l'ordre des octets:.

1234:indique que les composants à double mot ne sont pas traités directement.

Par exemple: les données lues dans le port série sont 0000 00 01 signifie 1.

2143:Indique que les composants à double mot des mots élevés et bas ne sont pas inversés, mais le mot dans les octets élevés et bas se renverse.

Par exemple, les données lues à partir du port série sont {{0}} signifie 0x00000100 (IE 256).

3412:Indique que les mots élevés et bas du composant à double mot sont inversés, mais les octets élevés et bas du mot ne sont pas inversés.

Par exemple, les données lues à partir du port série sont {{0}} qui signifie 0x00010000 (IE 65536).

4321: Indique que les 4 octets de l'élément de double mot sont inversés.

Par exemple: les données lues à partir du port série sont {{0}} signifie 0x 0100 0000 (ie 1677 721).

 

10. Logiciel de mise en service modbus modbus pull

Prenez l'adresse d'esclaves en 1, Baud Rate 9600, lisez toutes les données en temps réel à titre d'exemple, la méthode de réglage est la suivante.
Selon le tableau 2: Démarrer l'adresse 4113 Le nombre de registres est de 22
1. Les commandes d'acquisition de configuration incluent l'adresse du périphérique (1), le code de fonction Modbus (04), l'adresse de registre (4113), la longueur du registre (2) et l'intervalle d'acquisition (1000).
info-1-1

2. Définissez les données du port série
Selon le format de port série esclave (bit de démarrage à 1 bit, bit de données de 8 bits, bit d'arrêt 1 bit, pas de parité), définissez la figure suivante:
info-1-1

3. Définition du format d'affichage des données
info-1-1

4. Écran de réussite de la communication
info-1-1

Envoyez demande

whatsapp

Téléphone

Messagerie

Enquête