Vous êtes sur la page 1sur 42

Bus de Communication

et Réseaux Industriels
Chapitre 3: Bus de terrain et réseaux Locaux
Industriels
Classification des Bus
introduction

Un réseau local est défini par l’ensemble des éléments


permettant l’échange à haut débit de données entre des
équipements au sein d’une même entreprise.
On distingue trois types de réseaux :

Les réseaux longue distance : WAN (Wide Area


Network) d > 100km.

 Les réseaux métropolitains : MAN (Metropolitan


Area Network) d > 1km.

 Les réseaux locaux : LAN (Local Area Network) d <


1km Exemple : les réseaux Locaux Industriels (RLI).
Réseaux informatiques
(Data Bus)
Pilotage de
processus

Réseaux locaux industriels


(Field Bus) Ethernet
TCP/IP
Bus de terrain CANopen Ethernet
FIPIO TCP/IP
(Device Bus)
Modbus Plus Modbus
Profibus-DP ProfileNet
Bus Capteurs DeviceNet
Pilotage de
machine

actionneurs Interbus
(Sensor Bus)
Modbus
AS-i

Simples Evolués
Codage sur le support
Le codage et la transmission font partie du niveau 1 et sont donc
définis dans les documents de normalisation relatifs à cette
couche. La transmission peut s’effectue dans :
- Le domaine analogique : modulation en amplitude, en
fréquence ou en phase.
- Le domaine numérique : codage : NRZ (Non Return to
Zero), NRZI (Non Return to Zero Inverted), Manchester, , etc.
 Codage NRZ
Ce code est un des plus simples, puisqu’il consiste en une
suite de deux niveaux électriques possibles +V et –V ou V
correspond à la valeur binaire 1, et –V à 0.
Codage NRZI
Le chiffre 1 est codé par un changement d’état (front montant ou
descendant) après le coup d’horloge, le 0 par l’absence de
changement d’état. Ce code ne possède pas de polarité.
 Codage Manchester
Il s’agit d’un code où le 1 est représenté par un front montant et
le 0 par un front descendant. Il ne peut donc pas être lu
correctement si l’on en inverse le sens.

 Les codes de contrôle d’erreurs


Se sont des méthodes mises en place au niveau de la couche 2 du
modèle OSI (couche liaison de données).
Il existe deux catégories de codes de contrôle :
- les codes détecteurs d’erreurs
- les codes correcteurs d’erreurs
 Le code de Hamming
C’est un code détecteur et correcteur d’erreurs
 Le CRC (Cycle Redundancy Check)
C’est uniquement un code détecteur d’erreurs
Profibus (Process FieldBus)

C’est un bus de terrain normalisé, très utilisé dans les


environnements extrêmement sensibles (industrie chimique,
pétrochimie, nucléaire,..). C’est un réseau Allemand normalisé
international en 1999. PrifiBus respecte le modèle OSI réduit
(1,2,7), il permet d’interconnecter un matériel hétérogène de
différents constructeur. Il permet :

la transmission des données critiques en temps réel.

le raccordement direct des capteurs actionneurs sur le bus.

l’échange des données complexes et volumineuses par la


gestion des cellules
Profibus existe en trois variantes de protocoles répondant chacune
à des applications spécifiques :

Profibus DP (decentralized Peripheral ) couches (1,2): destiné


aux applications maître/esclave (mono ou multi maître) en temps
réel, c’est un protocole simple et performant.

Profibus FMS (FieldBus Message Specification) couches(1,2,7) :


destiné aux applications de gestion des tâches industrielles
complexes, il est basée sur la messagerie MMS.

Profibus PA (Process Automation) : Opère dans le niveau


capteur/actionneur.
Couche physique
 Codage NRZ
 Débit 9.6 Kbit/s à 12 Mbits/s
Nbre maxi. Stations : 32 sans répéteurs , 124 avec 3 repeaters
 Possibilité d’extension par répéteur jusqu’à 10 Km
Couche liaison
Profibus met en œuvre un mode de communication hybride pour l’accès au bus

Les maîtres accèdent au bus après réception du jeton.


Une fois le jeton obtenu, un maître accède à ses esclaves (stations passives)
Le bus CAN (Controller Area Network)
 1980-1983 :
Création de CAN à l ’initiative de l ’équipementier allemand BOSCH pour
répondre à un besoin de l ’industrie automobile.
 1991 :
Naissance du CIA = CAN in Automation
 1995 :
Publication par le CiA du profil de communication DS-301 : CANopen
 2001 :
Publication par le CIA de la DS-304 permettant d ’intégrer des composants
de sécurité de niveau 4 sur un bus CANopen standard (CANsafe).
CAN : COUCHE PHYSIQUE
• Transmission en différentiel sur deux lignes CAN_H/CAN_L (Can
High/Can Low)
• Communication asynchrone
• Topologie en bus
• Codage des données NRZ (Non Retour à Zero) avec BIT
STUFFING
Codage NRZ : bits dominants et récessifs

•  Utilisation de la méthode du NRZ (Non Return To Zero).


•  Pendant la durée totale du bit, le niveau de tension de la ligne est
maintenu
•  Le niveau 0 est dominant – le niveau 1 est recessif
La couche Physique
Le bit stuffing
• Problème de fiabilité si un grand nombre de bits identiques se
succèdent
• Le Bit Stuffing impose au transmetteur d’ajouter automatiquement
un bit de valeur opposée lorsqu’il détecte 5 bits consécutifs dans les
valeurs à transmettre (bit ignoré par le recepteur).
Trames du bus CAN

Le bus CAN utilise quatre types de trame :


1. Trame de données (Data Frame)
CAN standard (2.0A) : Identifiant sur 11 bits
CAN étendu (2.0B) : Identifiant sur 19 bits
2.Trame de demande de données (Remote Transmission
-Request - RTR)
3. Trame d’erreurs (Error Frame)
4. Trame de surcharge (Overload Frame)
TRAME DE DONNÉES STANDARD
La trame STANDARD C’est la plus utilisée, Cette trame se décompose en
sept parties principales que l'on appelle des champs :
1. début de trame (1 bit) Start Of Frame (SOF)
2. champ d'arbitrage (12 bits) arbitration field
3. champ de commande (6 bits) control field
4. champ de données (0 à 64 bits) data field
5. champ de CRC (16 bits) CRC sequence (contrôle de
redondance cyclique)
6. champ d'acquittement (2 bits) ACKnowledgement field
7. fin de trame (7 bits) End Of frame (EOF)
LE BIT SOF (DÉBUT DE TRAME DE DONNÉES)
- Il est toujours émit dominant,
- il signale à toutes les stations le début d'un échange.
- Cet échange ne peut démarrer que si le bus était
précédemment au repos (IDLE).
- Toutes les stations doivent se synchroniser sur le front
avant la transition du bit de départ.
Champ d’arbitrage (12 bits) :
- Le partage du bus se fait pendant ce champs.
Constitué des bits de l'identificateur (11bits) : Adresse
logique et priorité du message, ainsi que du bit RTR
(Remote Transmission Request).
-RTR: Dominant => trame de données Récessif=>trame de requête
Trame CAN - En-tête
CHAMP D'ARBITRAGE
Technique d’accès au médium
la trame la plus prioritaire gagne l’accès au bus
1. Chaque station qui veut émettre, écoute
2. Dés qu’il n’y a pas de signal sur le bus, elle émet un bit puis
écoute
3. Si la valeur lue est différente de la valeur émise, la station a perdu
l’arbitrage; elle cesse d’émettre et retourne en 1
Conséquence sur le débit : il faut un aller-retour pour le signal avant
d’émettre le bit suivant
La longueur de l'identificateur est de 11 bits,
4- les bits sont transmis dans l'ordre de ID_10 à ID_0 (le moins
significatif est ID_0).
5- les 7 bits les plus significatifs (de ID_10 à ID_4) ne doivent pas
être tous récessifs. ID = 1111111XXXX (X valeur indéterminée),
c'est-à-dire un nombre maximal d'identificateurs de : (211 - 24) =
2048 - 16 = 2032 combinaisons.
CHAMP DE COMMANDE
2 Bits de réserves R0, R1 (dominants en trame 2.0A)
 4 bits DLC (Data Length Code): indiquent le nombre d'octets qui
seront contenus dans le champ de données.
CHAMP DE DONNÉES
- Contient les données utiles transmises.
- Il peut être composé de 0 octet minimum à 8 octets
maximum
- le MSB (Most Significant Bit) en tête.
- De 0 à 8 inclus => 9 valeurs => 4 bits du DLC pour définir
le nombre d’octets de données
Champ de CRC (16 bits) : Le CRC est calculé depuis le début
de la trame jusqu'à la fin du champ de données

Champ d’acquittement (2 bits) : Emission de deux bits récessifs, un


récepteur recevant correctement la trame va acquitter celle-ci. Cela ne
veut pas dire que le destinataire la bien reçue.
L’acquittement sur CAN est non fiable

Fin de trame de donnée : Emission de 7 bits récessifs


les erreurs sur le bus CAN
Erreur bit (Bit error) : Un nœud envoyant un bit sur le bus regarde
aussi en même temps les bits qu'il reçoit (Bit monitoring). Il considère
comme une erreur de bit lorsque le bit envoyé est différent du bit reçu.

Erreur de CRC (CRC error) : Une erreur de CRC est détectée lorsque
le CRC calculé par un récepteur est différent de la valeur du CRC
contenu dans la trame.

Erreur de forme (Form error) : Une "Form error" est détectée


lorsqu'un bit qui devrait être à une certaine valeur est à une valeur
différente (un délimiteur par exemple).

Erreur d’acquittement (ACK error) : Le transmetteur détecte une erreur


d'acquittement lorsqu'il ne reçoit pas de bit dominant pendant le ACK.
RAME DE SURCHARGE (OVERLOAD FRAME)
- indique qu'une station est surchargée pendant un certain laps de
temps.
deux types de conditions de surcharge mènant à un overload flag :
1- les conditions internes d'un récepteur: nécessité d’un extra time pour pouvoir
recevoir la prochaine trame .
2. la détection d'un bit dominant durant la phase intermission. Dans ce cas le
démarrage de l'overload frame a lieu juste après la détection du bit dominant.
.
Application
Soit la trame de données CAN, qui possède les caractéristiques suivante :

1) Quel est le type de cette trame ? Justifier ta réponse.


2) Nommer chaque champ dans cette trame.
MODBUS
- Modbus est un protocole de communication industriel introduit
par Modicon en 1979. Il est généralement utilisé avec les
automates programmables.
- Il est maintenant devenu une norme "open protocol" dans le
domaine de l'automatisme et de la communication industrielle.
- Un des avantages du protocole Modbus est sa flexibilité, mais
aussi sa facilité de mise en œuvre.
- Modbus a été initialement conçu pour fonctionner avec les lignes
de communication filaires série mais il existe aujourd’hui des
extensions à la norme pour les communications sans fil et les
réseaux TCP / IP.
- Le protocole Modbus permet la communication entre plusieurs
équipements connectés sur un même réseau
LES SUPPORTS PHYSIQUES DE TRANSMISSION DU
PROTOCOLE MODUBS
Les communications Modbus peuvent s’effectuer via les supports
physiques suivants :
- RS-232
- RS-485
- RS-422
- Ethernet TCP/IP (Modbus Ethernet)

LES VARIATIONS DU PROTOCOLE MODBUS


Il existe 3 variations du protocole Modbus:
- Le Modbus RTU (8bits) (Remote Terminal Unit)
- Le Modbus ASCII (7 bits)
- Le Modbus TCP/IP (ethernet)
Le RS232
- type point to point et est composé des lignes Rx,Tx et GND.
- Le RS232 permet de faire communiquer uniquement un maitre et
un esclave sur chaque ligne.
- Il fonctionne en full duplex et sa vitesse de communication
peut aller jusqu'à 115 kbits/s.
Le RS422
Il est full duplex et est utilisé sur les ordinateurs Apple, sa vitesse
de transmission peut aller jusqu'à 10 Mbits/s. Les signaux sont
envoyés sur 2 fils afin d'augmenter la fréquence de transmission.
Il peut supporter jusqu'à 10 récepteurs par ligne (on dit alors
qu’il est multidrop ou multi-points).
RS485
Les médias de type RS485 sont souvent en half duplex c’est-à-
dire la transmission s’effectue via 2 fils.

Le RS485 ne peut pas comporter plus de 32 périphériques sur


le même nœud, et sur une distance pouvant aller jusqu'à 1200 m
sans répéteurs. on utilise alors des répéteurs afin de pouvoir
ajouter d'autres périphériques sur la ligne.
LE MODBUS RTU (Remote Terminal Unit)

-La communication Modbus RTU est de type série et se fait via les
interfaces série RS232, RS485 ou RS422.Le codage des

-informations s’effectue en binaire.


- Le modbus RTU fait partie des protocoles industriels les plus
utilisés.
- Si la communication s’effectue via le RS232, il ne peut y avoir
dans ce cas qu’un seul maitre et qu’un seul esclave.
- Par contre si la communication s’effectue via le RS485 ou le
RS422, on peut avoir plusieurs esclaves.
La trame du MODBUS RTU contient les informations
suivantes
1- Numéro d'esclave (1 octet) (le numéro 00 est réservé aux
messages de diffusion)
2- Code fonction (1 octet)
3- Données (n octets)
4- CRC (2 octets)

La taille maximale des données est de 256 octets. L’ensemble des


informations contenues dans le message est exprimé en hexadécimal.
Avant et après chaque message(trame), il doit y avoir un silence
minimum de 3,5 fois le temps de transmission d’un caractère.
L’ensemble du message doit être transmis de manière continue.

Ainsi,l’équipement détecte le début d’un message quand il reçoit


un caractère valide (contenant son adresse ou l’adresse 00) dans
un intervalle de temps d’au moins 3,5 fois la longueur d’un
caractère.