Schneider Electric Communication réseau Modbus/Jbus Mode d'emploi

Ajouter à Mes manuels
31 Des pages
Schneider Electric Communication réseau Modbus/Jbus Mode d'emploi | Fixfr
Modbus
Guide utilisateur
Sommaire
___________________________________________________________________________
Chapitre
Page
1 Présentation
1/1
1.1
Structure de la documentation réseaux
1/1
1.2
Intégration dans le modèle OSI
1/2
1.3
Présentation
1/3
1.4
Principe de fonctionnement :
1.4-1 La question :
1.4-2 La réponse :
1.4-3 Format d'une trame question/réponse :
1.4-4 Format général d'une trame
1/4
1/5
1/5
1/6
1/6
2 Services Modbus
2/1
2.1
Services supportés par Modbus
2.2-1 Fonctions principales
2.2-2 Fonctions secondaires
2/1
2/2
2/2
2.3
Fonctions gérées par la carte PCMCIA
2/5
3 Mise en œuvre matérielle
3/1
3.1
Mise en oeuvre matérielle
3/1
3.2
Installation du SCA50
3.2-1 Fixation
3.2-2 Câblage
3.2-3 Adaptation fin de ligne
3/3
3/3
3/3
3/3
3.3
Installation du TBX 0010
3/4
___________________________________________________________________________
S/1
Modbus
Guide utilisateur
Sommaire
___________________________________________________________________________
Chapitre
Page
4 Annexes
4/1
4.1
Détail des trames Modbus/Jbus
4.1-1 Lecture de n bits
4.1-2 Lecture de n mots
4.1-3 Ecriture d'un bit de sortie
4.1-4 Ecriture d'un mot de sortie
4.1-5 Ecriture de n bits de sortie
4.1-6 Ecriture de n mots de sortie
4/1
4/1
4/2
4/3
4/4
4/5
4/6
4.2
Particularité du mode ASCII
4/7
4.3
Exemples
4.3-1 API 5000 maître et TSX 37 esclave
4.3-2 TSX 37 maître API 5000 esclave
5 Index communication Modbus
4/8
4/8
4/10
5/1
___________________________________________________________________________
S/2
Présentation
Chapitre 11
1 Présentation
1.1
Structure de la documentation réseaux
Ce manuel s'adresse aux utilisateurs souhaitant mettre en œuvre un réseau
Modbus/Jbus.
L'ensemble de la documentation réseau est structuré de la manière suivante :
• les généralités du monde de la communication X-WAY sont abordées dans le Manuel
de Référence Communication TSX DR NET,
• les informations générales concernant les aspects matériels sont spécifiées dans le
manuel de base : TSX DM 37F,
• les informations générales concernant la mise en œuvre logicielle des différents
réseaux figurent dans le manuel : TLX DM PL7 M10F,
• les informations propres à chaque réseau sont détaillées dans des manuels spécifiques :
- réseau FIPWAY
:
TSX DG FPWF
- bus UNI-TELWAY
:
TSX DG UTWF
- protocole Modbus/Jbus
:
TSX DG MDBF (ce document)
- manuel de référence JBus
:
TEM 60000F
Modbus / Jbus
AEG
TSX DG MDB
n
®
AEG
TEM 15050
n
®
AEG
TEM 60000
AEG
TSX DM 37N
AEG
TSX DM PL7M
MATERIEL LOGICIEL
___________________________________________________________________________
1/1
1.2
Intégration dans le modèle OSI
Le rapprochement Modbus/Jbus et modèle OSI s'effectue au niveau des couches
physiques liaison et application :
7 Application
Protocole Modbus / Jbus
- Lecture/Ecriture de variables (bits, mots, E/S)
- Mode de marche
- Diagnostic
- Historique des échanges
6 Présentation
5 Session
4 Transport
3 Réseau
2 Liaison
1 Physique
Routage par diffusion d'adresse sur le support physique
Accès au réseau par une gestion Maître / Esclave
Contrôle des trames par CRC
Paire torsadée 19200 Bauds maximum
RS232 / RS 485 / Boucle de courant
Note :
Les protocoles ou mécanismes de fonctionnement spécifiés dans les couches 2, 3 et 7 ne sont pas
normalisés et constituent des standards de fait.
___________________________________________________________________________
1/2
Présentation
1.3
1
Présentation
La communication par Modbus permet l'échange de données entre tous les équipements connectés sur le bus. Le protocole Modbus est un protocole créant une structure
hiérarchisée (un maître et plusieurs esclaves). Une liaison multipoints relie entre eux
maître et esclaves. Le maître gère seul l'ensemble des échanges, deux types de
dialogue sont possibles :
• le maître échange avec un esclave et attend sa réponse,
• le maître échange avec l'ensemble des esclaves sans attente de réponse (diffusion
générale).
Ce type de communication est disponible sur les différents modules de communication
au format PCMCIA intégrant une liaison Modbus. Cette liaison est associée à la couche
physique :
• RS232 pour le module TSX SCP 111,
• Boucle de courant 20 mA pour le module TSX SCP 112,
• RS 422 / 485 pour le module TSX SCP 114.
La mise en œuvre matérielle de ces cartes est donnée dans le manuel TSX DM 37F,
intercalaire L.
___________________________________________________________________________
1/3
1.4
Principe de fonctionnement :
Les automates utilisent la technique "maître- esclave", dans laquelle un équipement (le
maître) a l'initiative des transactions en émettant une demande (requête). L' équipement
à qui s'adresse la requête (esclave) émet vers le maître la réponse à sa requête. Le
maître peut aussi diffuser un message à l'ensemble des esclaves (requête en diffusion),
dans ce cas les esclaves ne répondent pas au maître.
Mécanisme question réponse :
Maître
question
Esclave 1
réponse
Esclave 2
Esclave 3
Esclave n
Le maître interroge un esclave de numéro unique sur le réseau, et attend de la part de
cet esclave une réponse.
Mécanisme de la diffusion :
Maître
diffusion
Esclave 1
Esclave 2
Esclave 3
Esclave 4
Le maître diffuse un message à tous les esclaves présents sur le réseau, ceux-ci
exécutent l'ordre du message sans émettre une réponse.
___________________________________________________________________________
1/4
Présentation
1
1.4-1 La question :
La question contient un code fonction indiquant à l'esclave adressé quel type d'action
est demandé. Les données contiennent des informations complémentaires dont l'esclave a besoin pour exécuter cette fonction. Le champ octets de contrôle permet à
l'esclave de s'assurer de l'intégrité du contenu de la question.
1.4-2 La réponse :
Lorsqu'un esclave émet une réponse suite à une transaction normale, le code fonction
de la réponse est un écho de celui contenu dans la question. Les données sont celles
collectées par l'esclave comme par exemple la valeur d'un registre ou un status. Si une
erreur apparaît, le code fonction est modifié pour indiquer que la réponse est une
réponse d'erreur. Les données contiennent alors un code (code d'exception) permettant
de connaître le type d'erreur. Le champ de contrôle permet au maître de confirmer que
le message est valide.
Après réception d'une question, une station esclave contrôle la cohérence de la trame.
Si un paramètre illégal est détecté (code fonction, adresse, valeur) ou si la station n'est
pas apte à exécuter la demande, elle renvoie une réponse d'exception de la forme cidessous.
Exemple de codes d'exception : (d'une station esclave)
01 : code fonction inconnu,
02 : adresse incorrecte,
03 : valeur incorrecte,
04 : station non prête à exécuter la demande,
05 : acquittement, la station a accepté et est en train de traiter la demande,
06 : la station réalise un traitement et est indisponible,
07 : acquittement négatif,
D'autres codes d'exception peuvent exister, ils sont propres à chaque produit raccordé
sur le réseau.
___________________________________________________________________________
1/5
1.4-3 Format d'une trame question/réponse :
Question :
Numéro
d'esclave
Code fonction
Informations spécifiques
concernant la demande
(adresse, nombre, valeur..)
Mot de
contrôle
1 octet
1 octet
n octets
2 octets
Code fonction
données reçues
Mot de
contrôle
1 octet
n octets
2 octets
Code fonction
Code
d'exception
Mot de
contrôle
1 octet
1 octet
2 octets
Réponse positive :
Numéro
d'esclave
1 octet
Réponse d'exception :
Numéro
d'esclave
1 octet
Cet octet prend la valeur : code fonction + bit poids fort à 1
1.4-4 Format général d'une trame
Deux types de codages peuvent être utilisés pour communiquer sur un réseau Modbus.
Tous les équipements présents sur le réseau doivent être configurés selon le même
type.
Type ASCII
En mode ASCII, tous les messages commencent par le caractère 'deux points' ":", et se
terminent avec 'carriage-return - line feed' "CRLF". Les caractères transmis dans les
autres champs sont du type hexadécimal 0-9, A-F. Les équipements sur le réseau
surveillent continuellement l'arrivée du caractère ":", quand il est arrivé, chaque
équipement décode le champ suivant (champ adresse) de façon à connaître l'adresse
du destinataire, et ensuite prendre en compte les caractères suivants si l'esclave s'est
reconnu. La fin du message sera indiquée par les caractères "CRLF" précédés par les
deux caractères de contrôle contenant le LRC (Longitudinal Reducing Check).
START
ADRESSE
FONCTION
DONNEES
LRC
END
1 Caractère
":"
2 Caractères
2 Caractères
n Caractères
2 Caractères
2 Caractères
"CRLF"
___________________________________________________________________________
1/6
Présentation
1
Type RTU
C'est le mode le plus utilisé, il est plus performant que le mode ASCII.
En mode RTU, les messages commencent par un intervalle de silence sur le réseau
d'au-moins 3,5 caractères. Tous les équipements présents sur le réseau écoutent le bus
en permanence, et décodent le premier octet de façon à connaître l'adresse du
destinataire, et ainsi prendre en compte les caractères suivants si l'esclave s'est
reconnu. Le dernier caractère transmis, un silence d'au moins 3,5 caractères indique la
fin du message. Une nouvelle trame peut alors être émise.
Les caractères sont du type hexadécimal 0-9, A-F. Les datas contenus dans la trame
doivent contenir la totalité du message, et être transmis en continu. L'intégrité du
message est indiquée par le contenu du CRC (Cyclical Redundancy Check).
START
ADRESSE
FONCTION
DONNEES
CRC
END
silence
1 octet
1 octet
n octets
2 octets
silence
Important : la longueur maximum des messages est de 256 caractères.
___________________________________________________________________________
1/7
___________________________________________________________________________
1/8
ServicesChapitre
Modbus 2
2
2 Services Modbus
2.1
Services supportés par Modbus
Modbus offre 19 fonctions différentes. Elles se caractérisent par un code fonction sur
un octet (en hexa). Tous les équipements ne supportent pas tous les codes fonction.
Code Nature des fonctions Modbus
S1000
TSX 37
Série 7
H'01' Lecture de n bits de sortie consécutifs
X
X
X
H'02' Lecture de n bits d'entrée consécutifs
X
X
X
H'03' Lecture de n mots de sortie consécutifs
X
X
X
H'04' Lecture de n mots d'entrée consécutifs
X
X
X
H'05' Ecriture de 1 bit de sortie
X
X
X
H'06' Ecriture de 1 mot de sortie
X
X
X
H'07' Lecture du status d'exception
X
X
X
H'08' Accès aux compteurs de diagnostic
X
X
H'0B' Lecture du compteur d'événements
X
X
X
H'0C' Lecture des événements de connexion
X
X
X
t
t
H'09' Télécharg , télédécharg et modes de marche
H'0A' Demande de compte-rendu de fonctionnement
t
t
H'0D' Télécharg , télédécharg et modes de marche
X
H'0E' Demande de compte-rendu de fonctionnement
X
H'0F' Ecriture de n bits de sortie
X
X
X
H'10' Ecriture de n mots de sortie
X
X
X
X
X
H'11' Lecture identification
t
t
H'12' Télécharg , télédécharg et modes de marche
H'13' Reset de l'esclave après erreur non recouverte
Les services sont classés en trois catégories :
• l'écriture ou la lecture de mots ou bits,
• les fonctions pour le diagnostic des équipements,
• les fonctions pour gérer les modes de marche d'un équipement.
Les principales fonctions en caractères gras sont décrites en détail en annexe.
Adressage TSX 37 :
Le mot 0 est adressé par l'adresse 0, le mot n est adressé par l'adresse n.
Le bit 0 est adressé par l'adresse 0, le bit n est adressé par l'adresse n.
Voir le manuel de référence TEM 60000F pour adressage S1000.
___________________________________________________________________________
2/1
2.2-1 Fonctions principales
Lecture de n bits de sortie
Code : 01 Cette fonction permet d'accéder à des bits de sortie, pouvant être lus ou écrits,
définis dans la mémoire d'un esclave.
Lecture de n bits d'entrée
code : 02 Cette fonction, identique à la précédente et possédant les mêmes limites,
s'adresse aux bits d'entrée seulement en lecture par le maître.
Lecture de n mots de sortie
Code : 03 Cette fonction permet d'accéder à des mots de sortie, pouvant être lus ou
écrits, définis dans la mémoire d'un esclave.
Lecture de n bits d'entrée
code : 04 Cette fonction, identique à la précédente et possédant les mêmes limites,
s'adresse aux mots d'entrée seulement en lecture par le maître.
Ecriture d'un bit de sortie
Code : 05 Cette fonction permet le positionnement à 0 ou à 1 d'un bit de sortie (seul
accessible en écriture) défini dans la mémoire d'un esclave.
Ecriture d'un mot de sortie
code : 06 Cette fonction, identique à la précédente et possédant les mêmes limites,
s'adresse aux bits d'entrée seulement en lecture par le maître.
Ecriture de n bits de sortie
Code : 0F Cette fonction permet au maître d'écrire des bits de sortie, pouvant être lus
ou écrits, dans la mémoire d'un esclave.
Ecriture de n mots de sortie
code : 10 Cette fonction permet au maître d'écrire des mots de sortie, pouvant être lus
ou écrits, dans la mémoire d'un esclave.
2.2-2 Fonctions secondaires
Lecture du status d'exception
Code : 07 Cette fonction donne accès à 8 bits de status enregistrant certains
événements chez un esclave.
Diagnostic
Code : 08 Cette fonction de diagnostic permet de tester le système de communication
entre un maître et un esclave en testant au niveau de l'esclave un certain nombre
d'informations internes. Pour cela un code sous-fonction est inséré dans la trame à la
suite du code fonction sur 1 octet.
___________________________________________________________________________
2/2
Services Modbus
2
Echo
Code : 08/00 Cette fonction de diagnostic demande à l'esclave interrogé de retourner
intégralement le message envoyé par le maître.
Reprise communication
Code : 08/01 Cette fonction réalise la réinitialisation de la voie (suppression des
messages en cours). La configuration de la voie est conservée.
Lecture du registre diagnostic
Code : 08/02 Cette fonction permet l'accès à un mot de 16 bits contenant des
informations sur l'état de l'esclave.
Changement délimiteur ASCII
Code : 08/03 En mode ASCII, un octet est échangé par deux caractères ASCII,
représentant son codage en hexadécimal. Les messages successifs sont séparés par
un caractère délimiteur, initialisé à H'0A' (Line Feed).
Passage en mode écoute
Code : 08/04 Cette fonction force un esclave à passer en mode écoute seul (LOM).
Dans ce mode, l'esclave enregistre les messages qui lui sont adressés mais n'émet pas
de réponse.
Remise à zéro des compteurs
Code : 08/0A Cette fonction effectue la remise à zéro de tous les compteurs d'un
esclave surveillant les échanges, ainsi que du registre de diagnostic
Nombre de messages vus sur la ligne
Code : 08/0B Cette fonction permet l'accès à un compteur 16 bits ( incrémentations de
0 à FFFF) totalisant le nombre de tous les messages vus sur la ligne et traités par
l'esclave.
Nombre d'erreurs de checksum
Code : 08/0C Cette fonction permet l'accès à un compteur de 16 bits totalisant le nombre
de messages reçus par l'esclave avec une erreur de checksum.
Nombre de réponses d'exception
Code : 08/0D Cette fonction permet l'accès à un compteur de 16 bits totalisant le nombre
de réponses d'exception émises par le coupleur esclave (après réception d'un message
dont le contenu est incorrect).
Nombre de messages adressés à l'esclave
Code : 08/0E Cette fonction permet l'accès à un compteur de 16 bits totalisant le nombre
de messages reçus par l'esclave, quelle que soit leur nature.
Nombre de non réponses du processeur esclave
Code : 08/0F Cette fonction permet l'accès à un compteur de 16 bits totalisant le nombre
de messages émis par l'esclave vers le maître et restés sans réponse.
Nombre de réponses correctes
code : 08/10 Cette fonction permet l'accès à un compteur de 16 bits totalisant le nombre
de réponses correctes émises par les esclaves.
___________________________________________________________________________
2/3
Nombre de messages reçus en mode écoute
Code : 08/11 Cette fonction permet d'accéder à un compteur de 16 bits totalisant le
nombre de messages reçus par un esclave.
Nombre de caractères reçus erronés
Code : 08/12 Cette fonction permet l'accès à un compteur de 16 bits totalisant le nombre
de caractères reçus erronés par un esclave.
Lecture du compteur d'événements
Code : 0B Cette fonction permet de lire 2 mots de 16 bits : Un status et un compteur
d'événements.
Lecture événements connexion
Code : 0C Cette fonction permet d'accéder aux informations d'un esclave:
• mot status et compteur d'événements (idem fonction B),
• nombre de messages vus sur la ligne et traités par l'esclave (idem fonction 08/0B),
• contenu du compteur d'événements de connexion (64 octets maximum).
Lecture identification
Code : 11 Cette fonction permet de lire un mot de 16 bits contenant les informations de
status de l'esclave adressé.
___________________________________________________________________________
2/4
Services Modbus
2.3
2
Fonctions gérées par la carte PCMCIA
La carte PCMCIA assure la conversion du protocole UNI-TE en protocole Modbus, il est
donc possible d'utiliser les fonctions PL7 Micro pour communiquer avec des équipements esclave Modbus. Les fonctions utilisées sont : READ_VAR, WRITE_VAR,
SEND_REQ.
Fonctions de
communication
READ_VAR
WRITE_VAR
Carte PCMCIA
UNI-TE
Passerelle
conversion
UNI-TE /
Modbus
Modbus
SEND_REQ
Code fonction Modbus
Fonction de communication PL7 Micro
01
READ_VAR
02
SEND_REQ
03
READ_VAR
04
SEND_REQ
05
WRITE_VAR
06
WRITE_VAR
07
SEND_REQ
08 + sous-codes
SEND_REQ
0B
SEND_REQ
0C
SEND_REQ
0F
WRITE_VAR
10
WRITE_VAR
11
SEND_REQ
Les fonctions de communication sont décrites dans le manuel :
logiciel PL7 Miicro TLX DS PL7M 10F tome 2 intercalaire L
___________________________________________________________________________
2/5
___________________________________________________________________________
2/6
Mise en œuvre matérielle
Chapitre 33
3 Mise en œuvre matérielle
3.1
Mise en oeuvre matérielle
Exemple de raccordement de Modbus/Jbus en RS485
1
4
TSX SCA xxx
Equipement
3
5
2
Présentation des différents éléments
1
TSX SCA 50 boîtier de dérivation passif, il assure l'adaptation d'impédance
lorsqu'il est installé en extrémité de ligne.
2
TSX SCP 114 carte PCMCIA de type III permettant la connexion d'un TSX 37 au
réseau Modbus/Jbus via une liaison RS 485.
3
TSX SCP CM 4030 câble de raccordement d'une carte PCMCIA TSX SCP 114 au
réseau Modbus/Jbus. La longueur de ce câble est de 3 m.
4
TBX 0010 boîtier de dérivation passif permettant l'adaptation d'impédance en
extrémité de ligne et utilisé essentiellement pour le raccordement des automates de
la série 1000 au réseau Jbus en RS 485..
5
Carte JBU 0250 ou JBU 0550 de la série 1000 permettant la connexion en
RS 485 des automates A5000 et A7000 au réseau Jbus.
Pour plus de détails sur le principe de raccordement d'une liaison RS485, voir
documents :
TSX DRNETF, TSX D41724F, TEM 60000F.
___________________________________________________________________________
3/1
Exemple de raccordement de Modbus en RS 232
6
6
TSX SCP CD 1030 câble de raccordement d'une carte PCMCIA TSX SCP 111
vers un équipement connexe Modbus.
___________________________________________________________________________
3/2
Mise en œuvre matérielle
3.2
3
Installation du SCA50
3.2-1 Fixation
65
=
L'installation du boîtier peut se faire sur platine perforée, réf. AM1 PA... ou sur rail DIN
AM1 DE/DP, profilé chapeau avec plaquette de fixation LA9 D09976
=
AM1-PA••
2 x Ø 5,5
AM1 DE/DP
=
50
=
____________________________________________________________________
3.2-2 Câblage
Mettre en place les presse-étoupe contenus dans le boîtier et raccorder le bus
selon le schéma ci-contre.
Blindage
Manchon isolant
(impératif)
1
Blanc
Rouge
Câble TSX CSA 100/200/500
Blanc
Bleu
2
0 VL
3
0 VL
4
D(A)
5
D(B)
1 2 3 4 5
1 2 3 4 5
Mettre alors le cavalier sur la position ON, comme indiqué
ci-contre (les produits sont livrés en position OFF).
1 2 3 4 5
3.2-3 Adaptation fin de ligne
Lorsque les boîtiers TSX SCA 50 sont raccordés directement à un équipement en bout de ligne, il est impératif de
refermer cette ligne sur le circuit d'adaptation.
ON
OFF
___________________________________________________________________________
3/3
3.3
Installation du TBX 0010
Chaque boitier comporte deux connecteurs Sub-D 9 points permettant le raccordement de deux automates au réseau, et
deux connecteurs à vis permettent le raccordement au bus.
Ce boîtier permet de câbler un réseau de
type Bus de façon plus commode qu'en
réalisant les dérivations directement sur
les broches du connecteur SUB-D.
1 2 3 4
D (B)
D (A)
Ce type de connexion permet de relier un
poste du réseau sans laisser de connecteur "en l'air".
De plus, il facilite le raccordement ultérieur
de nouveaux postes.
9
6
5
9
6
1
5
D (B)
D (A)
1
1 2 3
Le boitier permet aussi l'adaptation de fin
de ligne quand il est situé à une extrémité
du réseau.
Le repère :
• D(A) en TSX 37 correspond à L+ ou Tx+ pour S 1000,
• D(B) en TSX 37 correspond à L- ou Tx- pour S 1000.
Voir manuel de référence TEM 60000F pour le câblage d'un réseau.
___________________________________________________________________________
3/4
Chapitre
Annexes 4
4
4 Annexes
4.1
Détail des trames Modbus/Jbus
4.1-1 Lecture de n bits
Lecture de n bits de sortie
Code : 01 : Cette fonction permet d'accéder à des bits de sortie ou internes (bits
pouvant être lus ou écrits) définis dans la mémoire d'un Esclave.
Lecture de n bits d'entrée
Code : 02 : Cette fonction, identique à la précédente et possédant les mêmes limites,
s'adresse aux bits d'entrée (bits que le Maître ne peut que lire).
Lecture de n bits : fonction 1 ou 2
Question :
N° du 1er bit
Numéro
Esclave
1 ou 2
1 octet
1 octet
2 octets
Numéro
Esclave
1 ou 2
Nombre
d'octets lus
1 octet
1 octet
2 octets
PF
Pf
Nbre de bit
PF
Pf
2 octets
CRC 16
2 octets
Réponse :
Valeur
••••••••
Valeur
CRC 16
2 octets
Exemple : lecture du bit %M3 de l'Esclave 2
Question
02
01
0003
0001
CRC 16
Réponse
02
01
01
xx
CRC 16
00 si %M3 = 0
01 si %M3 = 1
___________________________________________________________________________
4/1
4.1-2 Lecture de n mots
Lecture de n mots de sortie
Code : 03 : Cette fonction permet la lecture de mots de sortie ou internes (mots
pouvant être lus ou écrits) définis dans la mémoire d'un Esclave.
Lecture de n mots d'entrée
Code : 04 : Cette fonction, identique à la précédente et possédant les mêmes limites
et s'adresse aux mots d'entrée (mots que le Maître ne peut que lire).
Lecture de n mots : fonction 3 ou 4
Question :
Numéro
Esclave
1 octet
N° du 1er mot
Nbre de mot
3 ou 4
CRC 16
PF
Pf
1 octet
2 octets
Numéro
Esclave
3 ou 4
Nombre
d'octets lus
1 octet
1 octet
1 octet
PF
Pf
2 octets
2 octets
Réponse :
Valeur
du 1er mot
PF
Pf
••••••••••••
Valeur
dernier mot
PF
2 octets
Pf
2 octets
CRC 16
2 octets
Exemple : lecture des mots %MW20 à %MW24 de l'Esclave 6
Question
06
04
14
05
CRC 16
Réponse
02
01
0A
xxxx
••••••••••••
xxxx
Valeur
Valeur
de %MW20
de %MW24
CRC 16
___________________________________________________________________________
4/2
Annexes
4
4.1-3 Ecriture d'un bit de sortie
Code : 05 : Cette fonction permet le positionnement à 0 ou 1 d'un bit de sortie (seuls
accessibles en écriture) défini dans la mémoire d'un esclave.
Ecriture d'un bit de sortie : fonction 5
Question :
N° du bit
Numéro
Esclave
5
1 octet
1 octet
Valeur du bit
PF
CRC 16
Pf
2 octets
2 octets
2 octets
Le champ "Valeur du bit" a deux valeurs possibles à l'exclusion de tout autre :
• bit à 0 = 0000,
• bit à 1 = FF00.
Réponse :
N° du bit
Numéro
Esclave
5
1 octet
1 octet
Valeur du bit
PF
CRC 16
Pf
2 octets
2 octets
2 octets
Exemple : écriture de la valeur 1 dans le bit %M3 de l'Esclave 2
Question
02
05
03
FF00
CRC 16
Réponse
02
05
03
FF00
CRC 16
___________________________________________________________________________
4/3
4.1-4 Ecriture d'un mot de sortie
Code : 06 : Cette fonction effectue l'écriture d'un mot de 16 bits de sortie (seuls
accessibles en écriture) défini dans la mémoire d'un Esclave.
Ecriture d'un mot de sortie : fonction 6
Question :
N° du mot
Numéro
Esclave
6
1 octet
1 octet
Valeur du mot
CRC 16
PF
Pf
PF
Pf
2 octets
2 octets
N° du mot
Valeur du mot
2 octets
Réponse :
Numéro
Esclave
1 octet
6
CRC 16
PF
1 octet
Pf
PF
2 octets
Pf
2 octets
2 octets
Exemple : écriture de la valeur H'3A15' dans le mot %MW12 de l'Esclave 5
Question
05
06
0C
3A15
CRC 16
Réponse
05
06
0C
3A15
CRC 16
___________________________________________________________________________
4/4
Annexes
4
4.1-5 Ecriture de n bits de sortie
Code : 15 : Cette fonction permet au Maître d'écrire des bits de sortie (bits pouvant être
lus ou écrits) dans la mémoire d'un Esclave.
Ecriture de n bits de sortie : fonction 15 (H'0F')
Question :
Numéro
Esclave
0F
Adresse 1er Nombre de Nombre Valeur des
CRC 16
bit à forcer bits à forcer d'octets bits à forcer
1 octet
1 octet
2 octets
2 octets
1 octet
n octets
CRC 16
2 octets
Réponse :
Numéro
Esclave
0F
Adresse
1er bit forcé
Nombre de
bits forcés
1 octet
1 octet
2 octets
2 octets
2 octets
___________________________________________________________________________
4/5
4.1-6 Ecriture de n mots de sortie
Code : 16 : Cette fonction permet au Maître d'écrire des mots de sortie (mots pouvant
être lus ou écrits) dans la mémoire d'un Esclave.
Ecriture de n mots de sortie : fonction 16 (H'10')
Question :
Numéro
Esclave
10
Numéro
du 1er mot
Nombre
de mots
Nombre
d'octets
1 octet
1 octet
2 octets
2 octets
1 octet
Numéro
Esclave
10
Numéro
du 1er mot
Nombre
de mots
CRC 16
1 octet
1 octet
2 octets
2 octets
2 octets
Valeur
•••••••••••• CRC 16
du 1er mot
2 octets
2 octets
Réponse :
Exemple : Ecriture des valeurs 1 et 2 dans les mots %MW16 et %MW17
de l'Esclave 11
Question
0B
10
0010
0002
04
Réponse
0B
10
0010
0002
CRC 16
0001
0002
CRC 16
___________________________________________________________________________
4/6
Annexes
4.2
4
Particularité du mode ASCII
Structure de la trame Modbus ASCII :
•
•
1 octet
LRC
Numéro
Esclave
Code
fonction
Information
2 octets
2 octets
n octets
PF
CR
LF
1 octet
1 octet
Pf
2 octets
LRC : somme en hexadécimal, modulo FF, du contenu de la trame, hors délimiteurs,
complémentée à 2 et codée en ASCII.
Les délimiteurs sont
: (3A),................ CR (0D), LF (0A)
Exemple : commande 8 (diagnostic) de l'Esclave 1 en mode ASCII
3A
30
31
n° Esclave
30
38
Code
fonction
30
30
30
30
36
Information
31
36
32
33
34
LRC
0D
0A
Délimiteurs
Délimiteur
___________________________________________________________________________
4/7
4.3
Exemples
Exemples de dialogue inter-automates par Jbus entre un API 5000 et un TSX 37.
4.3-1 API 5000 maître et TSX 37 esclave
L'API 5000 avec un coupleur Jbus S0550 à l'emplacement 1 voie 1 paramètré en maître
dialogue avec un TSX 37 équipé d'une PCMCIA SCP114 paramètré en esclave à
l'adresse 2.
On veut lire 10 bits dans le TSX 37 aux adresses des bits internes %M50 à %M59; puis
les ranger en %MX500 à %MX509 dans l'API 5000.
READ
NOM
Condition de validation
ACT
EN
CHAN
SLAV
2
11
@TYP
@SLA
BS
50
@MAS
LENG
%MX500
FREQ
10
TOUT
100
ERR
WERR
On veut écrire 10 bits dans le TSX 37 aux adresses %M50 à %M59; à partir de %MX500
à %MX 509 de l'API 5000.
WRITE
NOM
Condition de validation
ACT
EN
CHAN
11
SLAV
2
@TYP
@SLA
50
@MAS
%MX500
FREQ
LENG
10
TOUT
100
ERR
WERR
___________________________________________________________________________
4/8
Annexes
4
On veut lire 10 mots dans le TSX 37 aux adresses des mots internes %MW50 à
%MW59; puis les ranger en %MW500 à %MW509 dans l'API 5000.
READ
NOM
Condition de validation
ACT
EN
CHAN
SLAV
11
2
@TYP
@SLA
MW
50
@MAS
LENG
%MW500
10
FREQ
TOUT
100
ERR
WERR
On veut écrire 10 mots dans le TSX 37 aux adresses %MW50 à %MW59; à partir de
%MW500 à %MW 509 de l'API 5000.
WRITE
NOM
Condition de validation
ACT
EN
CHAN
SLAV
11
2
@TYP
@SLA
MW
50
@MAS
LENG
%MW500
FREQ
10
TOUT
100
ERR
WERR
___________________________________________________________________________
4/9
4.3-2 TSX 37 maître API 5000 esclave
L'API 5000 équipé d'un coupleur Jbus S0550 à l'emplacement 1 voie 1 configuré en
esclave d'adresse 2 dialogue avec un TSX 37 équipé d'une carte PCMCIA SCP114
configurée en maître.
Lecture de 10 bits dans l'API 5000 aux adresses des bits internes %M500 à %M509;
puis les ranger en %MW100 dans le TSX 37.
READ_VAR(ADR#0.1.2,'%M',%MD80,10,%MW100:1,%MW720:4)
avec %MD80:= 16#0000A1F4
décallage de 16#A000 + 16#1F4
(16#1F4=10#500)
Ecriture de 10 bits dans l'API 5000 aux adresses des bits internes %M500 à %M509;
avec les bits contenus dans %MW25:1 dans le TSX 37.
.
WRITE_VAR(ADR#0.1.2,'%M',%MD80,10,%M25:1,%MW720:4)
avec %MD80:= 16#0000A1F4
décallage de 16#A000 + 16#1F4
(16#1F4=10#500)
Lecture de 10 mots dans l'API 5000 aux adresses des mots internes %MW500 à
%MW509; puis les ranger en %MW100 à %MW109 dans le TSX 37.
READ_VAR(ADR#0.1.2,'%MW',%MD80,10,%MW100:10,%MW720:4)
avec %MD80:= 16#000001F4
(16#1F4=10#500)
Ecriture de 10 mots dans l'API 5000 aux adresses des mots internes %MW500 à
%MW509; à partir de %MW100:10 dans le TSX 37.
WRITE_VAR(ADR#0.1.2,'%M'W,%MD80,10,%MW100:10,%MW720:4)
avec %MD80:= 16#000001F4
(16#1F4=10#500)
___________________________________________________________________________
4/10
Index 5
Chapitre
5 Index communication Modbus
Index
D
Détail des trames Modbus
Ecriture de n bits de sortie
Ecriture de n mots de sortie
Ecriture d'un bit de sortie
Ecriture d'un mot de sortie
Lecture de n mots
Détail des trames Modbus/Jbus
B
4/5
4/6
4/3
4/4
4/2
4/1
E
Exemples
4/8
F
Format
Type ASCII
Type RTU
Format d'une trame
Format question/réponse
1/6
1/7
1/6
1/6
I
Installation du SCA50
Installation du TBX 0010
3/3
3/4
M
Mise en oeuvre matérielle
Modbus
Fonctions principales
Fonctions secondaires
Modèle OSI
3/1
1/3
2/2
2/2
1/2
P
Présentation
Question
Réponse
Principe de fonctionnement
1/3
1/5
1/5
1/4
S
Services Modbus
2/1
___________________________________________________________________________
5/1

Manuels associés