Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Com Indus Cours Part II Can

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 6

Document support du cours de l’Elément 2 : systèmes de communication industrielle (2ème partie) du module Systèmes de commande et de 1

communication industrielle

A, UM5R
ARCHITECTURE, CONCEPTS , ET ELEMENTS DU BUS CAN
élément de module. Enfin Une liste non exhaustive de
I. INTRODUCTION références de publications sur le CAN termine le manuscrit.

CAN (Controller Area Network) est un protocole de


communication série asynchrone multi-maitre II. ARCHITECTURE DU BUS CAN
développé par BOSCH (Allemagne) au milieu des années 80,
A. Structure et éléments du bus
pour la connexion par bus de calculateurs, de modules
électroniques, de capteurs et d‟actionneurs dans des
applications industrielles, et automobiles en grand chef. Ce
protocole normalisé ISO 11898 supporte deux services de
communication: (i) le service classique de communication
CAN “Write Object” qui transmet une trame de donnée (data
frame) depuis un nœud (producteur) vers un ou plusieurs
nœuds (consommateurs) ; et (ii) le service “ Read Object”
qui permet à un ou plusieurs nœuds de demander un message
de la part d‟un nœud spécifique et ceci en lui envoyant une
Remote Frame (RTR) ; le nœud qui possède l‟information
requise répond alors en transmettant la trame de donnée
demandée.
Le protocole CAN repose sur quatre concepts: (i) son modèle
de communication par diffusion générale de messages, (ii) son Figure 1 structure et composants d‟un bus CAN
concept de dominance du niveau logique « zéro » (dit
dominant), sur le niveau logique « un » (dit récessif), utilisé Comme illustré sur la figure 1, un bus CAN est composé
pour la gestion des conflits d‟écritures sur le bus ainsi que d‟un câble à deux conducteurs CAN_H et CAN_L terminés
pour le forçage des bits d‟acquittement, (iii) sa procédure par une résistance de terminaison de chaque extrémité. Chaque
d‟arbitrage du bus CSMA/CA à priorité intégrée, et (iv) sa nœud (calculateur, capteur, ou pré-actionneur) intégrant un
technique de filtrage des messages. Il Se distingue des autres contrôleur CAN est connecté au bus via un CAN Tranceiver
réseaux principalement par :(i) sa rapidité d‟arbitrage du bus et qui implémente le concept de dominance en connectant un
de filtrage des messages, bien adaptée aux systèmes Temps- nœud sur le bus par un ET câblé (circuits à base de transistors
réel (STR), et (ii) sa grande fiabilité due à sa grande aptitudes collecteur ouvert), et qui fait office d‟une interface électrique
de détection des erreurs, et de confinement. de puissance et de protection contre les surtensions pouvant
transiter sur le support physique. D‟un point de vue capacité
L‟objectif de cette notice consiste à appréhender le d‟adressage des messages, deux types de versions CAN sont à
mécanisme de communication du CAN et de dégager en distinguer: la version standard CAN 2.0A dont les
conséquence les éléments de configuration et de réglage identtificateurs de messages sont codés sur 11bits, et la
permettant une exploitation optimale d‟un Bus CAN pour des version étendue CAN 2.0B qui diffère de la première par la
fins de contrôle et de supervision d‟un système électrique ou taille étendue du champ d‟identification à 29 bits. Aussi, d‟un
mécatronique. Pour ce faire, on adopte une analyse ascendante point de vu vitesse la norme ISO 11898 distingue deux
des fonctionnalités des différentes couches du CAN en standards : le standard HIGH_SPEED spécifié par la norme
commençant par le support et la couche physique. Pour ISO 11898-2 allant jusqu‟à 1Mbit/s et le standard
faciliter l‟atteinte de cet objectif, la présente notice LOW_SPEED spécifié par la norme ISO 11898-3, limité à un
technologique est organisée comme suit : Après cet débit de 125kbit/s.
introduction, une présentation des architectures matérielle, et B. Spécifications du protocole CAN
logicielle modèle ISO du protocole CAN est donnée en 2ème Selon les spécifications de la norme ISO 11898, le modèle
section. A la 3ème section, une description technique du support OSI du bus CAN est restreint à 3 couches : (i) la couche
physique et des fonctionnalités de la couche physique du CAN physique, (ii) la couche de liaison de données, et (iii) la
sont présentées. La couche liaison de données que constitue le couche Application. Les taches et fonctionnalités de chaque
noyau du protocole CAN est détaillée est discutées dans la 4ème couche sont précisées sur le modèle OSI de la figure 2.
section. La troisième section est reservée au support et Enfin la
5ème section est dédié à le développement d‟une application de
de communication via bus CAN des couples (courant, tension)
d‟une batterie de panneaux photovoltaïques, pour des fins de
poursuite du MPPT, traité à titre d‟activité pratique de cet
Draft 01, du 10 Novembre, 2015 1
Document support du cours de l’Elément 2 : systèmes de communication industrielle (2ème partie) du module Systèmes de commande et de 2
communication industrielle

jusqu‟à 1km sont spécifiées dans la table I.


COUCHE Fonctionnalités
TABLE I: BUS CABLE CHARACTERISTICS
APPLICATION D‟ EXPLOITATION DU BUS CAN BUS CABLE CABLE CABLE TERMINATO BUS
APPLICATION
(CALCULATEUR, UC, UP, API,.. SPEED TYPE SECTION RESISTANC R (Ω) LENGTH
(KB/S) (MM2) E (MΩ /M) (M)
PRESENTATION
50 AWG18 0.75..0.8 70 150 .. 300 600..1000
SESSION 100 AWG20 0.5.. 0.6 < 60 150 .. 300 300 .. 600
500 AWG22 0.34..0.6 < 40 MΩ 127 Ω 40... 300
TRANSPORT 1000 AWG23 0.25-0.34 < 26 MΩ 124Ω 0 ... 40

RESEAU
2) L’interface dépendant du médium (MDI)
 Filtrage d‟acceptation des messages L‟interface MDI définit les types et assignations de la
LLC  Notification de surcharge connectique d‟un nœud au bus. Pour le bus CAN, plusieurs
 Recouvrement des erreurs
types de connecteurs peuvent être utilisés (figure 3): le DB9, le
 Encapsulation/Décapsulation bornier industriel, le M-12, ou encore le HE10. Les
LIAISON
 Codage (bit stuffing destuffing) assignations des signaux aux broches des connecteurs
 Arbitrage du bus
MAC
 Détection, signalisation des erreurs couramment employés sont définis dans la table I.
 acquittement des messages
 Sérialisation/Dé-sérialisation

 Bit timing
PCS  Synchronisation
 Codage/Décodage du bit
PHYSIQUE
 Codec des niveaux logiques
PMA
 Caractéristiques électriques

PMD PHYSICAL MEDIA DEPENDENT


DB9, HE10 BORNIERS M-12
Figure 2 Modèle OSI, et fonctionnalité des sous-couches du bus CAN Figure 3 Trois types Interfaces dépendant du médium (MDI)

III. LA COUCHE PHYSIQUE TABLE II CONNECTIQUE DU CAN


PIN DB9 BI M-12 HE10
Selon la CiA la couche physique est découpée en trois sous 01 RESERVED GND SHIELD(OP) RESERVED
couches :(i) La sous-couche Physical Medium Dependent 02 CANL CANL CANV+ GND(OP)
(PMD) correspondant au support physique), (ii) la sous- 03 GND SHIELD GND CANL
04 RESERVED CANH CANH CANH
couche Physical Medium Acces (PMA) d‟accès physique au 05 SHIELD (OP) CANV+ CANL GND
médium, et (iii) la sous-couche Physical Signalling (PCS) de 06 GND(OP) CANV+
signalements physiques. Ces trois sous couches s‟échangent 07 CANH RESERVED
leurs services via deux interfaces :(i) Medium Dependent 08 RESERVED RESERVED
09 CANV+ RESERVED
Interface (MDI), d‟accès physique à la sous couche PMA, et 10 RESERVED
(ii) l‟ Attachement Unit Interface (AUI), qui fournit les
services de la sous couche PMA à la sous couche PCS.
B. La sous-couche PMA (Physical Medium Access)
A. La sous-couche PMD (PHYSICAL MEDIA
DEPENDENT) BIT LOGIC LEVEL
1) Caractéristiques du support physique RECESSIVE (BIT=1)
Pour laisser libre choix aux concepteurs de bus CAN, les
propriétés du support physique ne sont pas spécifiés dans la
norme 11898. Toutes fois et vu sa popularité, un standard
consistant en un câble, blindé ou non, composé d‟une paire DOMINANT (BIT=0)
torsadée pour les signaux CANL et CANH a été créé pour
faciliter le développement et l‟inter-connectivité des nœuds
CANH-CANL (V)
CAN. À noter que pour éviter les phénomènes de réflexion, le
bus CAN est terminé par des résistances qui minimisent les -1.0 0.5 0.9 2.0
facteurs de réflexion. ISO 11898 recommande des résistances
Figure 4 caractéristique de transfert de la sous couche PMA
de terminaison dont la valeur est égale à celle de la ligne ; soit
des résistances de terminaison de 12O Ω pour une impédance La sous-couche PMA définit les caractéristiques électriques
de câble de 120 Ω. Les caractéristiques électriques du câble et pour l‟interprétation des niveaux de tension en niveaux
de ses résistances de terminaison pour une longueur de allant
Draft 01, du 10 Novembre, 2015 2
Document support du cours de l’Elément 2 : systèmes de communication industrielle (2ème partie) du module Systèmes de commande et de 3
communication industrielle

logiques et vis-versa. Le CAN définit deux états logiques : (i) TABLE III BIT TIMING
SEGMENT SIGLE MIN MAX
l‟état dominant qui correspond au niveau logique „0‟, et l‟état
SYNCHRONISATION SYNC_SEG 1 TQ 1 TQ
récessif correspondant au niveau logique „1‟. Ces deux états PROPAGATION PROP_SEG 1 TQ 8 TQ
sont interprétés en terme de la différence de tension entre les BUFFER PHASE1 PHASE_SEG1 1 TQ 8 TQ
lignes CANH et CANL du bus. Pour une alimentation de 5v BUFFER PHASE2 PHASE_SEG2 1 TQ 8 TQ
les états dominant et récessif d‟un bit CAN HIGH SPEED sont RE-SYNC.JUMP WIDTH SWJ 1 TQ 4TQ

définis par la caractéristique de transfert de la sous couche


Le débit maximum du bus est égal à l‟inverse de la durée
PMA tracée sur la figure 4, (à noter que Le niveau entre 0.5V
nominale d‟un bit (Nominal Bit Time), cette dernière étant
et 0.9V est indéterminé).
exprimé en Time Quantum (TQ) qui est un multiple (32 maxi)
C. La sous-couche PC (Physical Signalling ) de la période d‟horloge de l‟oscillateur d‟un nœud.
Comme précisé sur la figure 2, la sous couche PCS travaille
au niveau du bit. Elle s‟occupe de trois taches principales : le TBIT  TSYNC _ SEG  TPROPA_ SEG  TPROPA_ SEG  TPHASE1_ SEG  TPHASE2 _ SEG
codage du bit (bit encoding), la structure temporelle du bit
(bit timing), et la synchronisation au niveau du bit. Paramétrage recommandé pour le bit timing : Pour une
horloge interne de 16 MHz à 0.1%, avec un mode
1) Encodage du bit d‟échantillonnage MONO-SAMPLING (SAM = 0), un mode
Le codage des bits CAN sur les lignes du bus (CANH et de synchronisation sur les fronts Récessif à Dominant
CANL) est du type NRZ (Non Return To Zéro). Dans le uniquement (SYNC=0), une Synchronisation jump width d‟un
contexte des réseaux de communication industrielle ce codage TQ (SJW = 0), et un Phase Segment2 de deux TQ (TSEG2 =
présente plusieurs avantages: sa simplicité de mise en œuvre, 2). A noter qu‟il est recommandé d‟ajuster les paramètres du
la distinction nette entre les niveaux logiques et bas, son bon bit timing comme indiqué sur la table IV.
rapport signal sur bruit (SNR), la détection facile de l‟état
IDLE (absence de signaux) du bus, et la minimisation du TABLE IV RECOMMENDED BIT TIMING SETTINGS
nombre de transitions. Toutes fois il présente le risque de perte BIT
BUS
NOMINAL
TIME
TIME
SAMPLE POINT
de synchronisation lorsqu‟une trame de donnée présente RATE
LENGTH(M)
BIT TIME
QUANTA/BIT
QUANTUM
LOCATION
(MBIT/S) (µS) (ns)
plusieurs bits consécutifs de même niveau. Comme rapporté 1.000 25 1.0 8 125 6 TQ
dans la première partie de ce manuscrit, ce problème est résolu 0.800 50 1,25 10 125 8 TQ
par la technique du BIT-STUFFING. 0.500 100 2 16 125 14 TQ
0.250 250 4 16 250 14 TQ
0.125 500 8 16 500 14 TQ
2) Bit Timing 0.050 1000 20 16 1250 14 TQ
Un bit CAN est composé de quatre segments temporelles
contigus: le segment de synchronisation: utilisé pour la 3) Synchronisation
synchronisation des nœuds récepteurs sur l‟émetteur, le Vue la disparité non nulle entre les fréquences d‟horloges
segment de propagation, utilisé pour compenser les temps de internes aux nœuds, les bits-timing des différents nœuds se
propagations entre les différents nœuds, et les segments trouvent décalés par rapport au bit-timing sur le bus. Ce qui
″buffer phase1″ et ″buffer phase2″, utilisés pour compenser les peut conduire à un mauvais placement du SAMPLE_POINT,
erreurs de phase détectées lors des phases de synchronisation. et par conséquent à une fausse lecture du bit sur le bus ; d‟où
La structure temporelle d‟un bit est précisée sur la figure 5. la nécessité de procédures de synchronisation au niveau du bit
qui consiste à caler les phases des horloges du récepteur sur
SS PROPA_SEG PHASE1_SEG PHASE2_SEG celle du bus. Deux type de synchronisation sont à distinguer :
... ... ... (i) la synchronisation dite Hard opérée après la détection du
1Tq
début de la trame (SOF), et où le noeud recepteur redémarre
SS: SYNC_SEG SAMPLE_ POINT
son bit time juste à la fin du segment de synchronisation du bit
du bus ; et (ii) la Resynchronisation qui survient après
Figure 5 Structure temporelle d‟un bit CAN
chaque transition et ceci en retissant la durée
Ainsi pour être valide, la lecture du niveau d‟un bit sur le PHASE_SEG1 ou en rallongeant la durée PHASE_SEG2, de
bus doit être effectuée au point d‟échantillonnage (SAMPLE_ telle sorte que le bit prochain arrive pendant le segment de
POINT) localisé juste à la fin du segment PHASE1_SEG. synchronisation du prochain bit du bus. Deux contraintes
C‟est le rôle de la synchronisation qui sera discutée juste après temporelles de mise en œuvre sont à respecter par les
la définition du bit timing. Les plages de variations admissibles concepteurs de contrôleurs CAN :
pour les durées des différents segments d‟un bit exprimées en
Time Quantum (TQ) sont précisées dans la table III.

Draft 01, du 10 Novembre, 2015 3


Document support du cours de l’Elément 2 : systèmes de communication industrielle (2ème partie) du module Systèmes de commande et de 4
communication industrielle

Table IV Trame de donnée CAN standard


 SWJ  MIN PHASE _ SEG1, PHASE _ SEG2
Champ Taille et désignation
 8  Tq  BitTime  25  Tq
Start Of Frame (SOF) 1 bit dominant marquant le début d‟une trame qui
où Re-Sync.Jump Width (SWJ) représente la variation des sert de bit de synchronisation des nœuds
connectés au bus
durées de PHASE_SEG1 et PHASE_SEG2, nécessaire à la
synchronisation d‟un nœud. Ces paramètres sont accessibles à IDENTIFIER identificateur du message de 11 bits dans la
l‟application via des registres appropriés du contrôleur CAN. version standard et 29 dans la version étendue qui
constitue la première partie du champs d‟arbitrage
du bus
IV. LA COUCHE LIAISON DE DONNEE
Remote Transmission 1 bits qui termine le champ d‟arbitrage qui est
Standardisé ISO 11898, les service de la couche Liaison du Request (RTR) : dominant pour une trame de données et récessif
CAN sont implémentés dans deux sous-couches distinctes : (i) pour une requête
la sous-couche Logical Link Layer (LLC) qui supporte le Extension Identifier 1 bit qui précise la version du CAN: Dominant
filtrage d‟acceptation, la notification des surcharges, et le (IDE) pour la version standard, et récessif pour l‟étendue
recouvrement des erreurs, et la sous couche de contrôle
RB0 1 bit de réserve
Medium Access Contrôle (MAC) qui s‟occupe de
l‟encapsulation/décapsulation des données, du codage des Data Length Code 4 bits précisant la taille en octets du champ de
(DLC) maximum) données
trames, de la gestion d‟accès au médium, de la détection et
signalisation des erreurs, de l‟acquittement de message et de Data Field et bit le champ de données dont la taille peut varier de 0
la sérialisation/dé-sérialisation. stuffing si nécéssaire à 8 octets (sans compter les bit-stuff)

Cyclic Redundancy 15 bits donnant le reste de la division du champ


A. La sous-couche MAC de la couche Liaison
Code (CRC) de donnée par $C599
1) Structuration et Codage des trames
Quatre types de trames séparées par des inter-trames CRC delimiter 1 bit indiquant la fin du CRC
peuvent être crées par la couche MAC : (i) les trames de Acknowledge (ACK): 1 bits pour l‟acquittement des messages : récessif
requêtes, les trames de données, les trames d‟erreur, et les à l‟émission et dominant si le message est bien
reçu par au moins un nœud.
trames de surcharge. En mode asynchrone, toutes ces trames
possèdent deux champs délimiteurs : un de début, et un de fin. Acquittement
Les structures des trames de données est précisée dans la les Acknowledge 1 bit récessif
delimiter (ACKDEL)
paragraphes suivants.
Fin de trame End Of
7 bits récessifs
a) Trame de données Frame (EOF)
Une trame de donnée (Data Frame) est produite par un
nœud CAN chaque fois qu‟il souhaite de transmettre une b) Trame de requête
donnée ou bien si un autre nœud le lui demande. A noter Dans certaines situations (d‟urgence par exemple) un nœud
qu‟une séquence de séparation d‟au moins 3 bits récessifs dite peut demander une information de la part d‟un autre nœud en
champs d‟Intermission est ajoutée à chaque trame. La structure lui envoyant une trame de requête (REMOTE FRAME) avec
d‟une trame de donnée standard définie par le standard ISO un identificateur identique à celui de la trame de donnée
11989 est précisé sur la figure 5, tandis que les désignations, attendue. Le nœud qui détient l‟information répond alors en
sigles, tailles et fonctionnalités des différents champs sont envoyant une trame de donnée (DATA FRAME). Deux
précisés dans la table IV. différences sont à distinguer entre les trames de données et de
requête : le bit RTR (voir table IV) et l‟absence du champ de
donnée dans une trame de requête. La structure d‟une trame de
requête CAN est identique à une trame de donnée excepté
qu‟il n‟y a pas de champ de données.

c) Trame d’erreur
Chaque fois qu‟un nœud détecte une erreur il émet une
trame d‟erreur active ou bien passive composés d‟un champ
d‟erreur suivi d‟un délimiteur de 8 bits récessifs. En cas
d‟erreur active, les premiers 6 bits du champ d‟erreurs sont
forcés à l‟état dominant tandis que pour une erreur passive ces
Figure 5 Structures des trames de données standard et étendue 6 bits du champ d‟erreurs sont mis à l‟état récessif et par
conséquent peuvent être écrasés par des états dominant lors de
la détection d‟erreurs par d‟autres nœud du bus.
Draft 01, du 10 Novembre, 2015 4
Document support du cours de l’Elément 2 : systèmes de communication industrielle (2ème partie) du module Systèmes de commande et de 5
communication industrielle

d) Trame de surcharge :
Chaque fois qu‟un nœud est occupé, ou qu‟un bit dominant est 3) Gestion des erreurs
détecté lors de la séquence d‟intermission, il émet une trame Pour des fins de diagnostic du bus CAN, chaque nœud
de débordement composée un champs OVERFLOW dont les intègre deux compteurs d‟erreurs REC et TEC pour compter et
6premiers bits sont à l‟état dominant et d‟un délimiteur décompter ses erreurs de transmission. Selon les valeurs de ces
composé de 8bits récessifs. compteurs, un nœud émettant une trame d‟erreur peut avoir
trois états distincts dits modes d‟erreurs : (i) le mode d‟erreur
2) Technique d’arbitrage du bus; actif où le nœud présente peu de défaillances, (ii) le mode
La technique d‟arbitrage du CAN est celle du CSMA/CD d‟erreur passif où le nœud présente relativement beaucoup de
basé sur le concept de dominance, avec priorité intégrée à défaillances, et (iii) le mode BUS-OFF où le nœud est confiné
l‟identificateur de message CAN. Chaque fois qu‟un nœud lorsqu‟il présente trop de défaillances. La connexion du nœud
émet un bit de l‟identificateur de son message, il le compare ne peut être alors rétablie qu‟après réception par le nœud
avec la valeur lue sur le bus. Si les ces deux valeurs sont confiné de 127 trames de onze bits récessifs. Les transitions
identiques il continue d‟émettre, sinon il arrête. Le nœud ayant entre ces trois modes d‟erreur ainsi que les équations de mise à
la priorité maximale finit par gagner le bus. jour des compteurs du nœud émetteur d‟une trame d‟erreur
sont modélisées par le graphe de la figure 7.

128 ≤ REC ≤255


ou Active
128≤ TEC ≤255 Error Max(REC,TEC) ≥ 256

Max(REC,TEC) ≤127

Figure 6 Technique d‟arbitrage du bus CAN 128 EOF (11bits)


Passive Bus
Error Off
Conséquence : plus faible est l‟ID d‟un message, plus
grande est sa priorité. Max(REC,TEC) ≥ 256

Règles de mise à jour des compteurs TEC et REC


1) Détection, Signalisation des erreurs
R1 : si le nœud détecte une erreur de réception alors REC++ ;
a) Erreur de Bit (Bit error) R2 : si le nœud envoie un ERROR_FLAG alors TEC+=8 ;
R3 : si le nœud émet correctement un message alors TEC=TEC- -
Chaque fois qu‟un nœud envoie un bit sur le bus, il vérifie R4 : si le nœud reçoit correctement un message alors TEC=TEC - -
en même temps si le niveau sur le bus correspond à celui émis.
un „Bit Error‟ est signalé à chaque fois qu‟un bit lue ne Maintenant que les fonctionnalités de la sous couche MAC
correspond pas à celui émis et sur le bus La trame d‟erreur est ont été décrites discutés, nous somme à même d‟appréhender
constituée de deux champs principaux : - le drapeau d‟erreur celle de la sous couche LLC.
actives et passives, - le délimiteur de champ. B. La sous-couche LLC de la couche Liaison
Comme introduit plus haut, la sous couche LLC s‟occupe du
b) Erreur de structure (ou de trame)
filtrage des messages en provenance de la sous-couche MAC,
Les erreurs de structure correspondent à l‟absence ou de la notification de la surcharge du nœud et du recouvrement
mauvais emplacement des délimiteurs de trames ou de ses des erreurs.
champs et des bit-stuffing 1) Filtrage des messages,
En mode diffusion (Producteur/consommateur), tous les
c) Erreur de données
nœuds sont en mesure de recevoir toutes les trames véhiculées
Pour détecter les erreurs sur les données Le CAN utilise sur le bus. Par conséquent, et afin de réduire les temps de
deux artifices : un bit-stuffing pour 5 bits successifs de même traitement inutiles, un nœud ne doit tenir en compte que les
niveau, et un CRC sur 16 bits (y compris son délimiteur de trame qui lui sont destinées. Pour ce faire chaque nœud
fin) calculé sur la base du polynôme générateur $C599 dispose d‟un système de filtrage des messages consistant en
deux registres : un registre de masquage (MASK) qui définit
2) Validation des messages les bits de l‟identificateur concernés par le filtrage, et un
Pour un émetteur, un message n‟est valide que si aucune registre de filtrage (FILTER) des message qui définit les
erreur n‟est détectée tout au long de la trame qui l‟encapsule; valeurs des bits non masqués pour lesquels le message sera
tandis que pour un récepteur un message n‟est valide qui si accepté. Pour le registre de masquage, un bit à 1 signifie que la
aucune erreur n‟est détectée tout au long de la trame exceptée valeur du bit de l‟identificateur doit être comparée à celle du
le dernier bit (poids le plus faible) du délimiteur de la trame. bit correspondant dans le filtre, tandis qu‟un bit à 0 signifie
Draft 01, du 10 Novembre, 2015 5
Document support du cours de l’Elément 2 : systèmes de communication industrielle (2ème partie) du module Systèmes de commande et de 6
communication industrielle

que la valeur du bit correspondant dans l‟identificateur n‟est supportés :


pas prise en compte par le filtre. Par exemple : Si MASK= • Service local (Local service) où l‟application envoie une
11111111000, et si FILTER= 00000101000 alors tous les requête à son objet de services local sans communiquer avec
messages dont l‟identificateur compris entre 0028 et 002F sont d‟autres objets de services
acceptés et effectivement transmis au registre de réception du • Service sans confirmation (Unconfirmed service), où
nœud ; sinon ils sont ignorées, tous simplement. l‟application envoie une requête à son objet de services local .
2) Recouvrement des erreurs cette requette est transferée à un ou plusieur peer-objets de
Le recouvrement des erreurs est assuré par la retransmission service que chacun le passe dans son application en tant
automatique de la trame incriminée jusqu'à ce que l‟émission qu‟une indication. Le résultat n‟est pas confirmé.
de cette trame s‟effectue sans erreur. • Service avec confirmation (Confirmed service), où
l‟application envoie une requête à son objet de services
C. Modes spéciaux
local. Cette requête est transférée au peer-objet de service
Pour la gestion de l‟énergie sur le bus, les drivers de ligne qui le passe à l‟autre application en tant qu‟une indication.
peuvent être désactivés lorsqu'il n‟y a plus de trames sur le L‟autre application une réponse qui est transférée à l‟objet
bus. Pour activer ces drivers sur le bus, la station devra de service originaire qui le passe en tant que confirmation à
observer 11 bits récessifs à la suite. La procédure ainsi décrite l‟application mandatrice du service
est la procédure de réveil appelée WAKE-UP. Un
• (Provider initiated service), où la couche application
identificateur a été réservé à cette fonction pour éviter de
indique la détection d‟un événement par un objet de service
perdre un trop grand nombre de trames lors de la reconnexion
local.
sur le bus. Lors des démarrages d‟une station sur le bus, le
Start-up se charge de connecter les drivers de lignes et
d‟observer la séquence voulue pour commencer à émettre ou à C. Eléments de services de la couche Application
recevoir des trames du bus.
La couche Application du CAN fournit quatre éléments de
V. LA COUCHE APPLICATION service:
La couche application dispose des services nécessaires à la • CAN based Message Specification (CMS) : cet élément
configuration et la communication de données temps réel ainsi offre un environnement ouvert orienté objet pour la conception
que des mécanismes de synchronisation entre nœuds. La de l‟application de communication envisagée. Il supporte des
fonctionnalité offerte par La couche application (à une objets permettant de définir les variables et de spécifier
application) est opérée à partir d‟un ensemble d‟objets de comment accéder aux fonctionnalités de codage, de
service. Un objet de service offre une fonctionnalité spécifique communication et de décodage d‟un nœud.
ainsi que tous les services liés. Les applications implémentées • Network Management (NMT): cet élément offre un
dans les nœuds d‟un bus CAN interagissent entre elles en environnement ouvert orienté objet pour permettre à un nœud
invoquant chacune des objets de services de sa couche (considéré momentanément comme Maitre) d‟initialiser et de
application. gérer d‟autre nœuds (vues en tant qu‟esclaves).
• Distributor (DBT) : cet élément offre à un nœud
A. Les Primitives de Service particulier, considéré momentanément comme Maitre,
Les Primitives de Service sont des entités par lesquelles d‟assurer la distribution dynamique des identificateurs des
l‟application et la couche application interagissent. Quatre autres nœuds vus en tant qu‟esclaves.
primitives sont à distinguer : • Layer Management (LMT) : cet élément offre la
possibilité à un nœud de controller les parametres de
• REQUEST : c‟est une requête de l‟application vers la configuration de certaines couches d‟autres nœud via le réseau
couche application pour lui demander un service CAN.
• INDICATION : c‟est une information émise par la couche .
application vers l‟application indiquant un évènement détecté A titre illustratif, les principales fonctions d‟exploitation de
par la couche application ou une demande de service (requête) la couche Application sont décrites et illustrées dans l‟exemple
• RESPONSE : c‟est la réponse de l‟application à la couche de bus CAN donné à titre d‟activité pratique [voir document
application à une indication reçue Polytechnique].
• CONFIRMATION: c‟est le résultat d‟une requête,
rapporté à l‟application par la couche application.

B. Les Types de Service de la Couche Application


Un service définit les primitives qui sont échangées entre la
couche application, et les applications coopérantes pour
produire un service particulier. Quatre types de services sont
Draft 01, du 10 Novembre, 2015 6

Vous aimerez peut-être aussi