Академический Документы
Профессиональный Документы
Культура Документы
TCP / IP
TCP est Transmission Control Protocol et IP est le protocole Internet. Ces protocoles sont
utilisés conjointement et représentent le protocole de transport pour l'Internet. Lorsque les
informations de modbus est envoyée en utilisant ces protocoles, les données sont transmises à
TCP où l'information supplémentaire est attaché et donné à IP. IP met ensuite les données
dans un paquet (ou datagrammes) et la transmet.
TCP doit établir une connexion avant de transférer des données, car il est un protocole basé
sur la connexion. Le Maître (ou Client Modbus TCP) établit une connexion avec l'esclave (ou
serveur). Le serveur attend une connexion entrante à partir du client. Une fois la connexion
établie, le serveur répond alors aux questions du client jusqu'à ce que le client ferme la
connexion.
Autrement dit, ceci est un message Modbus RTU transmis avec un TCP / wrapper IP et
envoyé sur un réseau au lieu de lignes série. Le serveur n'a pas de SlaveID car il utilise une
adresse IP à la place.
Modbus TCP
. Les principales différences entre Modbus RTU et Modbus TCP sont décrites ici.
Mis à part les principales différences entre les connexions série et réseau indiqués ci-dessus, il
y a quelques différences dans le contenu du message.
En commençant par le message Modbus RTU et le retrait du SlaveID dès le début et la CRC à
partir des résultats finaux de l'unité PDU, l'unité de données de protocole.
Voici un exemple d'une requête Modbus RTU pour le contenu de l'analogique tenue de
registres de sortie # 40108 à 40110 du dispositif esclave avec l'adresse 17.
03 006B 0003
MBAP Header
Un nouvel en-tête de 7 octets appelé l'en-tête MBAP (Modbus application en-tête) est ajouté
au début du message. Cet en-tête comporte les données suivantes:
Transaction Identifier: 2 octets fixés par le client pour identifier chaque demande. Ces octets
sont repris par le serveur puisque ses réponses ne peuvent pas être reçues dans le même ordre
que les demandes.
Identificateur d'unité: 1 octet défini par le client et repris par le serveur pour l'identification
d'un esclave distant connecté sur une ligne série ou sur d'autres bus.
Résumé
Les informations sont stockées dans le dispositif de l' esclave dans quatre tables
différentes.
Deux tables stockent on / off des valeurs discrètes (bobines) et les valeurs
numériques de deux magasins (registres). Les bobines et registres ont chacun une
lecture seule table et lecture-écriture table.
Coil / enregistrer les numéros peuvent être considérés comme des noms de lieux,
car ils ne figurent pas dans les messages réels. Les adresses de données sont utilisés
dans les messages.
Chaque esclave dans un réseau se voit attribuer une adresse de l'unité unique de 1 à
247. Lorsque les données des demandes de maître, le premier octet, il envoie
l'adresse de l'esclave. De cette façon, chaque esclave sait après le premier octet ou
non d'ignorer le message.
Suivez les liens dans ce tableau pour voir des exemples de demandes et de
réponses.
Réponse
11 01 05 CD6BB20E1B 45E6
Réponse
11 02 03 ACDB35 2018
06B . L'adresse de données du premier registre demandé ( 006B hex = 107, + 40001
offset = entrée # 40108)
Réponse
Réponse
11 04 02 000A F8F4
Cette commande est en train d' écrire le contenu de la bobine discrète # 173 à ON
dans le dispositif esclave avec l' adresse 17.
(bobine n ° 173 - 1 = 172 =AC . hex) ( 00AC hex = 172, + 1 offset = bobine #
173)
Réponse
La réponse normale est un écho de la requête, retourné après la bobine a été écrite.
Cette commande est en train d' écrire le contenu de la sortie analogique de maintien
registre # 40002
à l'appareil esclave avec l' adresse 17.
Réponse
Cette commande est en train d' écrire le contenu d'une série de 10 bobines discrètes
de # 20 à # 29
sur le dispositif esclave avec l' adresse 17.
Réponse
Réponse
Les bits les plus significatifs contiennent les variables de bobine supérieures. Ceci
montre que la bobine 20 est activée ( 1 ) et 21 est désactivé ( 0 ). En raison du
nombre de spires requises, le dernier champ de données 01 contient l'état de
seulement deux bobines. Les bits inutilisés dans le dernier octet de données sont
remplies par des zéros.
Réponse