Académique Documents
Professionnel Documents
Culture Documents
Historique :
Solution : utilisation de systèmes à base de microprocesseurs permettant une modification aisée des
systèmes automatisés ⇒ logique programmée
Les ordinateurs de l'époque étant chers et non adaptés aux contraintes du monde industriel, les automates
devaient permettre de répondre aux attentes de l'industrie.
influences externes :
- poussières,
- température,
- humidité,
- vibrations,
- parasites électromagnétiques, …
Personnel :
- mise en œuvre du matériel aisée (pas de langage de
programmation complexe)
- dépannage possible par des techniciens de formation
électromécanique
- possibilité de modifier le système en cours de fonctionnement
Matériel :
- évolutif
- modulaire
- implantation aisée
2 / 17
II. Place de l'API dans le système automatisé de production (S.A.P.) :
L’objectif de l’automatisation des systèmes est de produire, en ayant recours le moins possible à
l’homme, des produits de qualité et ce pour un coût le plus faible possible.
CONTRAINTES
Matière d’œuvre
Matière d’œuvre SYSTEME +
AUTOMATISE Valeur ajoutée
TRAITEMENT
DES
INFORMATIONS
3 / 17
Partie opérative :
Elle agit sur la matière d’œuvre afin de lui donner sa valeur ajoutée.
Les actionneurs (moteurs, vérins) agissent sur la partie mécanique du système qui agit à son tour sur la
matière d’œuvre.
Les capteurs / détecteurs permettent d’acquérir les divers états du système.
Partie commande :
Poste de contrôle :
On utilise les API dans tous les secteurs industriels pour la commande des machines (convoyage,
emballage ...) ou des chaînes de production (automobile, agroalimentaire ... ) ou il peut également
assurer des fonctions de régulation de processus (métallurgie, chimie ...).
Il est de plus en plus utilisé dans le domaine du bâtiment (tertiaire et industriel) pour le contrôle du
chauffage, de l'éclairage, de la sécurité ou des alarmes.
Tout ou rien (T.O.R.) : l'information ne peut prendre que deux états (vrai/faux, 0 ou 1 …).
C'est le type d'information délivrée par un détecteur, un bouton poussoir …
Analogique : l'information est continue et peut prendre une valeur comprise dans une plage
bien déterminée. C'est le type d'information délivrée par un capteur (pression, température …)
Numérique : l'information est contenue dans des mots codés sous forme binaire ou bien
hexadécimale. C'est le type d'information délivrée par un ordinateur ou un module intelligent.
4 / 17
III. Architecture des automates :
a. Aspect extérieur :
5 / 17
Principales fonctions :
Cartes d'entrées / sorties : Au nombre de 4, 8, 16 ou 32, elles peuvent aussi bien réaliser des fonctions
d'entrées, de sorties ou les deux.
Ce sont les plus utilisées et les tensions disponibles sont normalisées (24, 48, 110 ou 230V continu ou
alternatif ...).
Les voies peuvent être indépendantes ou posséder des "communs".
Les cartes d'entrées permettent de recueillir l'information des capteurs, boutons ... qui lui sont
raccordés et de la matérialiser par un bit image de l'état du capteur.
Les cartes de sorties offrent deux types de technologies : les sorties à relais électromagnétiques
(bobine plus contact ) et les sorties statiques (à base de transistors ou de triacs).
Cartes de comptage rapide : elles permettent d'acquérir des informations de fréquences élevées
incompatibles avec le temps de traitement de l'automate.
Exemple : signal issu d'un codeur de position.
Cartes de commande d'axe : Elles permettent d'assurer le positionnement avec précision d'élément
mécanique selon un ou plusieurs axes. La carte permet par exemple de piloter un servomoteur et de
recevoir les informations de positionnement par un codeur. L'asservissement de position pouvant être
réalisé en boucle fermée.
Cartes d'entrées / sorties analogiques : Elles permettent de réaliser l'acquisition d'un signal analogique
et sa conversion numérique (CAN) indispensable pour assurer un traitement par le microprocesseur.
La fonction inverse (sortie analogique) est également réalisée.
Les grandeurs analogique sont normalisées : 0-10V ou 4-20mA.
Autres cartes :
L'automate est alimenté généralement par le réseau monophasé 230V ; 50 Hz mais d'autres
alimentations sont possibles (110V etc ...).
La protection sera de type magnéto-thermique (voir les caractéristiques de l'automate et les
préconisations du constructeur).
De même, les sorties seront asservies au circuit de commande et alimentées après validation du chien de
garde (voir paragraphe VII).
7 / 17
PE 1N L1
- Q1 2
- 2 x F2 - T1 - F3
230 / 24V
1 2 1 2
3
1
1 2
- S1
1
2
- KM1
1
- S2
4
2
2
- KA1
13 14
1
13
3
Chien de
- Q2 - S3 - KM1 garde
14
4
2
I> A1 A1
- KM1 - KA1
A2 A2
PE N L C0 0 C1 1 C234 2 3 4
AUTOMATE
Alimentation des capteurs Entrées automate
0V 24V 0 1 2 3 4 5 6 7
8 / 17
b. Alimentation des entrées de l'automate :
L'automate est pourvu généralement d'une alimentation pour les capteurs/détecteurs (attention au type de
logique utilisée : logique positive ou négative).
Les entrées sont connectées au OV (commun) de cette alimentation.
Les informations des capteurs/détecteurs sont traitées par les interfaces d'entrées.
AUTOMATE
Interface
0 1 2 3 4 5 6 7
d'entrée
0V 24V 0 1 2 3 4 5 6 7
3
- b5
57
1
97
1
- S4
1
- S8 - S9 - F1
- B2 - S5
- KA1
15 s
58
98
2
2
2
4
c. Alimentation des sorties de l'automate :
AUTOMATE
Interface
de sortie 0 1 2 3 4
C0 0 C1 1 C234 2 3 4
- KA1
13 14
X1/9
X1
A1
de commande
A2
X2
X1/10
9 / 17
V. Traitement du programme automate :
TRAITEMENT INTERNE
EXECUTION DU PROGRAMME
Traitement interne : L'automate effectue des opérations de contrôle et met à jour certains paramètres
systèmes (détection des passages en RUN / STOP, mises à jour des valeurs de l'horodateur, ...).
Lecture des entrées : L'automate lit les entrées (de façon synchrone) et les recopie dans la mémoire
image des entrées.
Exécution du programme : L'automate exécute le programme instruction par instruction et écrit les
sorties dans la mémoire image des sorties.
Ecriture des sorties : L'automate bascule les différentes sorties (de façon synchrone) aux positions
définies dans la mémoire image des sorties.
Ces quatre opérations sont effectuées continuellement par l'automate (fonctionnement cyclique).
On appelle scrutation l'ensemble des quatre opérations réalisées par l'automate et le temps de scrutation
est le temps mis par l'automate pour traiter la même partie de programme. Ce temps est de l'ordre de la
dizaine de millisecondes pour les applications standards.
Le temps de réponse total (TRT) est le temps qui s'écoule entre le changement d'état d'une entrée et le
changement d'état de la sortie correspondante :
Temps de scrutation
I E T S I E T S
Le temps de réponse total est au plus égal à deux fois le temps de scrutation (sans traitement particulier).
10 / 17
CHAPITRE 2. LES A.P.I. 19
a. Langages de programmation :
Il existe 4 langages de programmation des automates qui sont normalisés au plan mondial par la norme
CEI 61131-3.
Chaque automate se programmant via une console de programmation propriétaire ou par un ordinateur
équipé du logiciel constructeur spécifique.
12 / 17
b. Programmation à l'aide du GRAFCET (SFC : Sequential Function Chart) :
Certains logiciels permettent une programmation totale en langage GRAFCET et permettent de s'adapter
à la plupart des automates existants (logiciels CADEPA ou AUTOMGEN).
VII.Sécurité :
Les systèmes automatisés sont, par nature, source de nombreux dangers (tensions utilisées, déplacements
mécaniques, jets de matière sous pression ...).
Placé au cœur du système automatisé, l'automate se doit d'être un élément fiable car :
Contraintes extérieures : l'automate est conçu pour supporter les différentes contraintes du monde
industriel et à fait l'objet de nombreux tests normalisés (tenue aux vibrations, CEM ...)
Coupures d'alimentation : l'automate est conçu pour supporter les coupures d'alimentation et permet,
par programme, d'assurer un fonctionnement correct lors de la réalimentation (reprises à froid ou à
chaud)
Mode RUN/STOP : Seul un technicien peut mettre en marche ou arrêter un automate et la remise en
marche se fait par une procédure d'initialisation (programmée)
Contrôles cycliques :
13 / 17
Description des langages PL7
II
Présentation
Objet de cet Cet intercalaire décrit les langages de programmation des automates Micro et
intercalaire Premium.
6
Présentation
Généralités Une section de programme écrite en langage à contacts se compose d’une suite de
réseaux de contacts exécutés séquentiellement par l’automate.
%TM4.Q %M17
Introduction Un réseau s’inscrit entre deux barres de potentiel. Le sens de circulation du courant
s'établit de la barre de potentiel gauche vers la barre de potentiel droite.
1
2
3
4
5
6
Barre de potentiel
7
8
9
10
11
.
Zone action
Zone test
Description d’un Un réseau de contacts est composé d’un ensemble d’éléments graphiques
réseau de disposés sur une grille de :
contacts l 16 lignes maximum et 11 colonnes (pour automates Premium),
l 7 lignes maximum et 11 colonnes (pour automates Micro).
Il est réparti en deux zones :
l la zone test, dans laquelle figurent les conditions nécessaires à une action
l la zone action, qui applique le résultat consécutif à un enchaînement de test.
Généralités L’étiquette permet de repérer un réseau dans une entité de programme (programme
principal, sous-programme, ...). Elle est optionnelle.
Syntaxe Cette étiquette a la syntaxe suivante : %Li avec i compris entre 0 et 999.
Elle se positionne à la partie supérieure gauche devant la barre de potentiel.
%M20 %L245
Etiquette
%L245
%Q2.3 %M155
S
Règles Un repère d’étiquette ne peut être affecté qu’à un seul réseau au sein d’une même
entité de programme.
L’ordre des repères des étiquettes est quelconque, (c’est l’ordre de saisie des
réseaux qui est pris en compte par le système lors de la scrutation).
Généralités Le commentaire facilite l’interprétation du réseau auquel il est affecté, mais n’est pas
obligatoire.
Zone commentaire
Règles Les commentaires s’affichent dans la zone réservée dans la partie supérieure du
réseau de contacts.
En cas de suppression d’un réseau, le commentaire qui lui est associé est
également supprimé.
Contacts Les éléments graphiques des contacts se programment en zone test et occupent
une cellule (1 ligne de hauteur et 1 colonne de largeur).
Désignation Graphisme Fonctions
Contact à Contact passant quand l’objet bit qui le pilote est à l’état 1.
fermeture
Contact à Contact passant quand l’objet bit qui le pilote est à l’état 0.
ouverture
Eléments de Les éléments graphiques de liaison permettent de relier les éléments graphiques de
liaison test et d’action.
Désignation Graphisme Fonctions
Connexion Permet de relier en série les éléments graphiques de test
horizontale et d’action entre les deux barres de potentiel.
Bobines Les éléments graphiques des bobines se programment en zone action et occupent
une cellule (1 ligne de hauteur et une colonne de largeur).
Désignation Graphisme Fonctions
Bobine directe L’objet bit associé prend la valeur du résultat de la zone
test.
Blocs fonction Les éléments graphiques des blocs fonction standard se programment en zone test
standard et occupent une dimension d'une hauteur de 16 lignes maximum et une largeur 3
colonnes.
Désignation Graphisme Fonctions
Blocs Temporisateur, Chacun des blocs fonctions standards utilise des
Compteur, entrées, des sorties, des entrées/sorties permettant
Monostable, de les reliés aux autres éléments graphiques.
Registre,
Programmateur
cyclique
Blocs fonction Les éléments graphiques des blocs fonction DFB se programment en zone test et
DFB occupent une dimension d'une hauteur de 16 lignes maximum et une largeur 3
colonnes.
Désignation Graphisme Fonctions
Blocs Chacun des blocs fonctions DFB utilise des
programmables entrées, des sorties, des entrées/sorties permettant
de les reliés aux autres éléments graphiques pour
les objets de type bits ou pouvant être affectés à
des objets numériques ou tableaux
Blocs opération Les éléments graphiques des blocs opération se programment en zone test et
occupent les dimensions mentionnées ci-dessous.
Désignation Graphisme Fonctions
Bloc comparaison Permet la comparaison de 2 opérandes, suivant le
vertical résultat, la sortie correspondante passe à 1.
Dimension : 2 colonnes/4 lignes
Règles de Les éléments graphiques simples de test et d’action occupent chacun une cellule au
programmation sein d’un réseau.
Généralités Les blocs fonction standard se positionnent dans la zone test des réseaux de
contacts.
Règles de Quel que soit le type de bloc fonction utilisé, il doit obligatoirement être relié en
programmation entrée à la barre de potentiel gauche, en direct ou à travers d’autres éléments
des blocs graphiques.
fonction l sorties "en l’air" : il n’est pas nécessaire de relier à d’autres éléments
graphiques les sorties des blocs fonction,
l sorties testables : les sorties des blocs fonction sont accessibles à l’utilisateur
sous forme d’objet bit.
Les variables internes de blocs et les sorties graphiques sont des objets exploitables
à distance depuis une autre partie du programme.
Les entrées non câblées des blocs fonction standard sont mises à 0.
Comme pour les éléments graphiques du type contacts, il est possible de réaliser
des combinaisons de blocs fonction.
Exemple d’un L’illustration suivante présente un exemple d’un réseau de contacts contenant 2
réseau de blocs fonction.
contacts
Généralités Les blocs comparaison se positionnent dans la zone test et les blocs opération se
positionnent dans la zone action.
Règles de Quel que soit le type de bloc opération utilisé, il doit obligatoirement être relié en
programmation entrée à la barre de potentiel gauche, en direct ou à travers d’autres éléments
des blocs graphiques.
opération
Comme pour les éléments graphiques du type contacts, il est possible de réaliser
des combinaisons de blocs fonction et opération.
Réseau connexe Un réseau connexe contient des éléments graphiques tous reliés entre eux par des
éléments de liaison (hors barre de potentiel), mais indépendants des autres
éléments graphiques du réseau (pas de liaisons verticales vers le haut ou vers le
bas en limite de réseau connexe).
Réseau
connexe 3
Règle Le premier réseau connexe évalué est celui dont le coin gauche est situé le plus en
d’exécution de haut à gauche.
réseaux
connexes Un réseau connexe est évalué dans le sens de l'équation : évaluation du réseau de
haut en bas, ligne par ligne, et dans chaque ligne de gauche à droite.
Dans le cas où une liaison verticale de convergence est rencontrée, le sous réseau
qui lui est associé est évalué (selon la même logique) avant de continuer l'évaluation
du réseau qui l'englobe.
Exécution des Le tableau suivant décrit l’ordre d’exécution des éléments dans un réseau
éléments dans connexe..
un réseau
Phase Description
connexe
1 Le système évalue l'état logique de chaque contact, en fonction de :
l la valeur courante des objets internes de l'application,
l l'état des entrées des modules d'entrées/sorties acquis en début de cycle
Exemple 1 : Le tableau suivant décrit l'exécution des éléments graphiques dans le réseau illustré
fonctionnement ci-dessus.
Phase Description
1 Evaluation du réseau jusqu'à rencontre de la 1ère liaison verticale de
convergence : contacts A, B, C.
2 Evaluation du premier sous réseau : contact D,
3 Poursuite de l'évaluation du réseau jusqu'à la rencontre de la deuxième liaison
verticale de convergence: contact E,
4 Evaluation du 2ème sous réseau : contacts F et G,
5 Evaluation de la bobine H.
Exemple 2 : Le tableau suivant décrit l'exécution des éléments graphiques dans le réseau illustré
fonctionnement ci-dessus.
Phase Description
1 bobine 1 : INIT, %M5, %M7, %Q2.1,
2 bobine 2 : %M4, %MW2:X1,AUTO, UP_1,
3 Bloc opération.
7
Présentation
Généralités Une section écrite en langage liste d’instructions se compose d’une suite
d’instructions exécutées séquentiellement par l’automate.
Illustration d’un L’illustration suivant présente un programme liste d’instructions PL7 et le détail
programme d’une instruction..
!%L0:
LD %I1.0
ANDN %M12
OR( %TM4.Q
LD %I1.0
AND %M17
)
AND %I3.7
ST %Q2.5 Code Opérande
!%L2: instruction
LD %I3.5
Généralités L’étiquette permet de repérer une phrase dans une entité de programme
(programme principal, sous-programme, ...). Elle est optionnelle.
Syntaxe Cette étiquette a la syntaxe suivante : %Li avec i compris entre 0 et 999. Elle se
positionne en début d’une phrase.
%L0 :
LD %M40
JMPC %L10
!(*Attente de séchage*)
%L2 :
LD %I1.0
AND %M10
ST %Q2.5
...
%L10 : Etiquette
LD %I3.5
ANDN %Q4.3
OR %M20
ST %Q2.5
Règles Une même étiquette ne peut être affectée qu’à une seule phrase au sein d’une
même entité de programme.
L’ordre des repères des étiquettes est quelconque, c’est l’ordre de saisie des
phrases qui est prise en compte par le système lors de la scrutation.
Généralités Le commentaire facilite l’interprétation d’une phrase auquel il est affecté. Il est
optionnel.
Syntaxe Le commentaire peut être intégré au début d'une phrase et peut occuper 3 lignes
maximum (soit 222 caractères alphanumériques), encadrés de part et d'autre par
les caractères (* et *).
En cas de suppression d’une phrase, le commentaire qui lui est associé est
également supprimé.
Instructions de Le tableau suivant décrit les instructions de test du langage liste d’instructions..
test
Désignation Graphisme Fonctions
équivalent
LD Le résultat booléen est égal à l’état de l’opérande.
N - Négation
Instructions Le tableau suivant décrit les instructions de test du langage liste d’instructions.
d’action
Désignation Graphisme Fonctions
ST L’opérande associé prend la valeur du résultat de la zone
test.
Instruction sur Le tableau suivant décrit les instructions de test du langage liste d’instructions..
bloc fonction
Désignation Graphisme Fonctions
Blocs Temporisateur, Pour chacun des blocs fonction standards, il existe
Compteur, des instructions permettant de piloter le bloc.
Monostable, Une forme structurée permet de câbler directement
Registre, les entrées/sorties des blocs.
Programmateur
cyclique
Instructions Le tableau suivant décrit les instructions de test du langage liste d’instructions.
numériques
Désignation Instructions Fonctions
Elément de test LD[.....] Permet la comparaison de 2 opérandes, la sortie
AND[.....] passe à 1 lorsque le résultat est vérifié.
OR[.....] Exemple : LD[%MW10<1000]
Résultat à 1 lorsque %MW10<1000.
Elément d’action [.....] Réalisent les opérations arithmétiques, logiques...
Utilisent la syntaxe du langage littéral structuré.
Exemple : [%MW10:=%MW0+100]
Le résultat de l’opération %MW0+100 est placé
dans le mot interne %MW10.
LD %I1.0
AND( %I1.1
OR %I1.2
)
ST %Q2.0
Association des Les "modificateurs" suivants peuvent être associés aux parenthèses.
parenthèses à
Code Rôle Exemple
des
modificateurs N Négation AND(N
F Front descendant (Falling edge) AND(F
R Front montant (Rising edge) OR(R
[ Comparaison OR([%MW0>100]
LD %I1.1
AND( %I1.2
AND %I1.3
OR(N %I1.5
AND %I1.6
)
AND %I1.4
OR(N %I1.7
AND %I1.8
)
)
ST %Q2.0
Généralités Les 3 types d'instruction permettent de traiter les aiguillages vers les bobines.
Ces instructions utilisent une mémoire intermédiaire appelée pile pouvant stocker
jusqu'à 3 informations booléennes...
Note : Ces instructions ne peuvent pas être utilisées au sein d'une expression
entre parenthèses
Exemple 1 Cet exemple illustre l’utilisation des instructions MPS, MRD, et MPP.
LD %I1.0
AND %M0
MPS
AND %I1.1
ST %Q2.0
MRD
AND %I1.2
ST %Q2.1
MRD
AND %I1.3
ST %Q2.2
MPP
AND %I1.4
ST %Q2.3
Exemple 2 Cet exemple illustre le fonctionnement des instructions MPS, MRD, et MPP.
LD %I1.0
MPS
AND %I1.1
MPS
AND( %I1.3
OR %M0
)
ST %Q2.0
MPP
AND %M1
ST %Q2.1
MRD
AND %I1.4
ST %Q2.2
MPP
AND %M10
ST %Q2.3
Principe de Les instructions pilotent les entrées des blocs (ex: CU). Les sorties sont accessibles
programmation sous forme de bit (ex: %C8.D).
directe
Exemple :
Cet exemple illustre la programmation directe d’un bloc fonction compteur.
Traitement
des entrées
Traitement
des sorties
Principe de Ce type de programmation utilise une suite d' instructions encadrée par les
programmation instructions :
structurés l BLK indique le début du bloc
l OUT_BLK permet de câbler directement les sorties du bloc
l END_BLK indique la fin du bloc
Exemple :
Cet exemple illustre la programmation structurée d’un bloc fonction compteur.
BLK %C8
LD %I1.1 Traitement
R des entrées
LDN %I1.2
ANDN %M0
CU
OUT_BLK
Traitement
LD D des sorties
ST %Q2.0
END_BLK
La première instruction d'une séquence d'instructions doit toujours être soit une
instruction LD soit une instruction inconditionnelle (ex : JMP).
Exemple 2 Les parenthèses permettent de modifier l'ordre de prise en compte des résultats
booléens :
LD %I1.1 résultat = état du bit %I1.1
AND %M0 résultat = ET du résultat booléen précédent et de l'état du bit %M0
OR( %M10 résultat = état du bit %M10
AND %I1.2 résultat = ET du résultat booléen précédent et de l'état du bit %M10
)
ST %Q2.0 %Q2.0 prend l'état du résultat booléen précédent
Exemple 3 Le séquencement des instructions peut être modifié par les instructions de saut JMP
d’appel à sous-programme.
! LD %M0
JMPC %L10
! LD %I1.1
AND %M10 Saut à l’étiquette %L10 si %M0=1
ST %Q2.0
! %L10:
LD %I1.3
AND %M20
......
8
Présentation
Généralités Le langage littéral structuré est un langage évolué de type algorithmique particuliè-
rement adapté à la programmation de fonctions arithmétiques complexes,
manipulations de tableaux et gestions de messages.
Limite Ce langage est utilisable avec les logiciels PL7 Micro, PL7 Junior et PL7 Pro sur les
d’utilisation automates Premium et Micro.
Dans la version PL7 Pro, ce langage permet la création des blocs fonction utilisateur
DFB sur les automates Premium.
IF %M0 THEN
FOR %MW99:=0 TO 31 DO
IF %MW100[%MW99]<>0 THEN
%MW10:=%MW100[%MW99];
%MW11:=%MW99;
%M1:=TRUE;
EXIT; (*Sortie de la boucle*)
ELSE
%M1:=FALSE;
END_IF;
END_FOR;
ELSE
%M1:=FALSE;
END_IF;
Note : Chacun de ces éléments est optionnel, c'est-à-dire qu’il est possible d’avoir
une phrase vide, une phrase constituée uniquement de commentaires ou
uniquement d'une étiquette.
Rôle L’étiquette permet de repérer une phrase dans une entité de programme
(programme principal, sous-programme, ...). Elle est optionnelle.
Syntaxe Cette étiquette a la syntaxe suivante : %Li : avec i compris entre 0 et 999. Elle se
positionne en début d’une phrase.
! %L20 : Etiquette
(*Attente de séchage*)
SET %M0;
%MW4:=%MW2 + %MW9;
(*calcul de pression*)
%MF12:=SQRT (%MF14);
Règles Une même étiquette ne peut être affectée qu’à une seule phrase au sein d’une
même entité de programme.
L’ordre des repères des étiquettes est quelconque, c’est l’ordre de saisie des
phrases qui est prise en compte par le système lors de la scrutation.
Rôle Le commentaire facilite l’interprétation d’une phrase à laquelle il est affecté. Il est
optionnel.
Instructions sur Les instructions suivantes s’appliquent sur des objets bits.
bits
Désignation Fonction
:= Affectation d'un bit
OR OU booléen
AND ET booléen
XOR OU exclusif booléen
NOT Inversion
RE Front montant
FE Front descendant
SET Mise à 1
RESET Mise à 0
Instructions sur Les instructions suivantes s’appliquent sur des objets de type tableau de bits.
tableaux de bits
Désignation Fonction
Tableau := Tableau Affectation entre deux tableaux
Tableau := Mot Affectation d'un mot à un tableau
Mot := Tableau Affectation d'un tableau à un mot
Tableau := Double mot Affectation d'un double mot à un tableau
Double mot := Tableau Affectation d'un tableau à un double mot
COPY_BIT Copie d'un tableau de bits dans un tableau de bits
AND_ARX ET entre deux tableaux
OR_ARX OU entre deux tableaux
XOR_ARX OU exclusif entre deux tableaux
NOT_ARX Négation sur un tableau
BIT_W Copie d'un tableau de bits dans un tableau de mots
BIT_D Copie d'un tableau de bits dans un tableau de doubles mots
W_BIT Copie d'un tableau de mots dans un tableau de bits
D_BIT Copie d'un tableau de doubles mots dans un tableau de bits
LENGHT_ARX Calcul de la longueur d'un tableau en nombre d'éléments
Arithmétique Les instructions suivantes s’appliquent sur des objets mots et doubles mots..
entière sur mots
Désignation Fonction
et doubles mots
+, -, *, / Addition, Soustraction, Multiplication, Division entière
REM Reste de la division entière
SQRT Racine carrée entière
ABS Valeur absolue
INC Incrémentation
DEC Décrémentation
Arithmétique sur Les instructions suivantes s’appliquent sur des objets flottants..
flottants
Désignation Fonction
+, -, *, / Addition, Soustraction, Multiplication, Division
SQRT Racine carrée
ABS Valeur absolue
TRUNC Partie entière
LOG Logarithme base 10
LN Logarithme népérien
EXP Exponentielle naturelle
EXPT Exponentiation d'un réel par un réel
COS Cosinus d'une valeur en radian
SIN Sinus d'une valeur en radian
TAN Tangente d'une valeur en radian
ACOS Arc cosinus (résultat entre 0 et 2 p)
ASIN Arc sinus (résultat entre -p/2 et +p/2)
ATAN Arc tangente (résultat entre -p/2 et +p/2)
DEG_TO_RAD Conversion degrés en radians
RAD_TO_DEG Conversion radians en degrés
Instructions Les instructions suivantes s’appliquent sur des objets mots et doubles mots.
logiques sur
Désignation Fonction
mots et doubles
mots AND ET logique
OR OU logique
XOR OU logique exclusif
NOT Complément logique
SHL Décalage logique à gauche
SHR Décalage logique à droite
ROL Décalage logique circulaire à gauche
ROR Décalage logique circulaire à droite
Comparaisons Les instructions suivantes s’appliquent sur des objets mots, doubles mots et
numériques sur flottants.
mots, doubles
Désignation Fonction
mots et flottants
< Strictement inférieur à
> Strictement supérieur à
<= Inférieur ou égal à
>= Supérieur ou égal à
= Egal à
<> Différent de
Instructions sur Les instructions suivantes s’appliquent sur des tableaux de mots et doubles mots.
tableaux de mots
Désignation Fonction
et doubles mots
Tableau := Tableau Affectation entre deux tableaux
Tableau := Mot Initialisation d'un tableau
+, -, *, /, REM Opérations arithmétiques entre tableaux
+, -, *, /, REM Opérations arithmétiques entre expressions et tableaux
SUM Sommation des éléments d'un tableau
EQUAL Comparaison de deux tableaux
NOT Complément logique d'un tableau
AND, OR, XOR Opérations logiques entre deux tableaux
AND, OR, XOR Opérations logiques entre expressions et tableaux
FIND_EQW, FIND_EQD Recherche du premier élément égal à une valeur
FIND_GTW, FIND_GTD Recherche du premier élément supérieur à une valeur
FIND_LTW, FIND_LTD Recherche du premier élément inférieur à une valeur
MAX_ARW, MAX_ARD Recherche de la valeur maximum dans un tableau
MIN_ARW, MIN_ARD Recherche de la valeur minimum dans un tableau
OCCUR_ARW, OCCUR_ARD Nombre d'occurrences d'une valeur dans un tableau
SORT_ARW, SORT_ARD Tri par ordre croissant ou décroissant d'un tableau
ROL_ARW, ROL_ARD Décalage circulaire à gauche d'un tableau
ROR_ARW, ROR_ARD Décalage circulaire à droite d'un tableau
FIND_EQWP,FIND_EQDP Recherche du premier élément égal à une valeur depuis
un rang
LENGTH_ARW, LENGTH_ARD Calcul de longueur d'un tableau
Instructions sur Les instructions suivantes s’appliquent sur des tableaux de flottants.
tableaux de
Désignation Fonction
flottants
Tableau := Tableau Affectation entre deux tableaux
Tableau := Flottant Initialisation d'un tableau
SUM_ARR Sommation des éléments d'un tableau
EQUAL_ARR Comparaison de deux tableaux
FIND_EQR Recherche du premier élément égal à une valeur
FIND_GTR Recherche du premier élément supérieur à une valeur
FIND_LTR Recherche du premier élément inférieur à une valeur
MAX_ARR Recherche de la valeur maximum dans un tableau
MIN_ARR Recherche de la valeur minimum dans un tableau
OCCUR_ARR Nombre d'occurrences d'une valeur dans un tableau
SORT_ARR Tri par ordre croissant ou décroissant d'un tableau
ROL_ARR Décalage circulaire à gauche d'un tableau
ROR_ARR Décalage circulaire à droite d'un tableau
LENGTH_ARR Calcul de longueur d'un tableau
Instructions sur Les instructions suivantes s’appliquent sur des chaînes de caractères.
chaînes de
Désignation Fonction
caractères
STRING_TO_INT Conversion ASCII í Binaire (mot simple format)
STRING_TO_DINT Conversion ASCII í Binaire (mot double format)
INT_TO_STRING Conversion Binaire í (mot simple format) ASCII
DINT_TO_STRING Conversion Binaire í (mot double format) ASCII
STRING_TO_REAL Conversion ASCII í Flottant
REAL_TO_STRING Conversion Flottant í ASCII
<, >, <=, >=, =, <> Comparaison alphanumérique
FIND Position d'une sous-chaîne
EQUAL_STR Position du premier caractère différent
LEN Longueur d'une chaîne de caractères
MID Extraction d'une sous-chaîne
INSERT Insertion d'une sous-chaîne
DELETE Suppression d'une sous-chaîne
CONCAT Concaténation de deux chaînes
REPLACE Remplacement d'une chaîne
LEFT Début de chaîne
RIGHT Fin de chaîne
Instructions de Les instructions réalisent des conversions de bits, mots, double mots et flottants.
conversions
Désignation Fonction
numériques
BCD_TO_INT Conversion BCD í Binaire
INT_TO_BCD Conversion Binaire í BCD
GRAY_TO_INT Conversion Gray í Binaire
INT_TO_REAL Conversion d'un entier simple format en flottant
DINT_TO_REAL Conversion d'un entier double format en flottant
REAL_TO_INT Conversion d'un flottant en entier simple format
REAL_TO_DINT Conversion d'un flottant en entier double format
DBCD_TO_DINT Conversion d'un nombre BCD 32 bits en entier 32 bits
DINT_TO_DBCD Conversion d'un entier 32 bits en nombre BCD 32 bits
DBCD_TO_INT Conversion d'un nombre BCD 32 bits en entier 16 bits
INT_TO_DBCD Conversion d'un entier 16 bits en nombre BCD 32 bits
LW Extraction du mot de poids faible d'un double mot
HW Extraction du mot de poids fort d'un double mot
CONCATW Concaténation de 2 mots simples
Instructions sur Les instructions suivantes n’agissent pas sur des objets du langage mais sur le
programme déroulement du programme..
Désignation Fonction
HALT Arrêt de l'exécution du programme
JUMP Saut à une étiquette
SRi Appel de sous-programme
RETURN Retour de sous-programme
MASKEVT Masquage des événements dans l'automate
UNMASKEVT Démasquage des événements dans l'automate
Instructions de Les instructions suivantes effectuent des opérations sur les dates, heures et sur les
gestion du temps durées..
Désignation Fonction
SCHEDULE Fonction hordateur
RRTC Lecture date système
WRTC Mise à jour de la date système
PTC Lecture date et code arrêt
ADD_TOD Ajout d'une durée à une heure du jour
ADD_DT Ajout d'une durée à une date et heure
DELTA_TOD Mesure d'écart entre heures du jour
DELTA_D Mesure d'écart entre dates (sans heure)
DELTA_DT Mesure d'écart entre dates (avec heure)
SUB_TOD Remontée dans le temps sur heure
SUB_DT Remontée dans le temps sur date et heure
DAY_OF_WEEK Lecture du jour courant de la semaine
TRANS_TIME Conversion durée en date
DATE_TO_STRING Conversion d'une date en chaîne de caractères
TOD_TO_STRING Conversion d'une heure en chaîne de caractères
DT_TO_STRING Conversion d'une date complète en chaîne de caractères
TIME_TO_STRING Conversion d'une durée en chaîne de caractères
Instructions Les instructions suivantes sont des instructions spécifiques du langages Orphée..
"Orphée"
Désignation Fonction
WSHL_RBIT, DSHL_RBIT Décalage à gauche sur mot avec récupération des bits
décalés
WSHR_RBIT, DSHR_RBIT Décalage à droite sur mot avec extension de signe et
récupération des bits décalés
WSHRZ_C, DSHRZ_C Décalage à droite sur mot avec remplissage par 0 et
récupération des bits décalés
SCOUNT Comptage/décomptage avec signalisation de
dépassement
ROLW,ROLD Décalage circulaire gauche
RORW,RORD Décalage circulaire droite
Instructions de Ces instructions sont des fonctions de temporisation destinées à être utilisés pour
temporisation la programmation du code des DFB..
Désignation Fonction
FTON Temporisation à l'enclenchement
FTOF Temporisation au déclenchement
FTP Temporisation d'impulsion
FPULSOR Générateur de signaux rectangulaires
Rôle Cette structure de contrôle réalise une ou plusieurs actions si une condition est vrai.
Dans sa forme générale les conditions peuvent être multiples.
Début du IF
IF condition THEN
non vérifiée
Condition
actions ;
vérifiée
END_IF; Action
Fin du IF
Exemple :
actions1; vérifiée
Condition 1
actions3;
Fin du IF
END_IF;
Exemple :
Rôle Cette structure de contrôle réalise une action répétitive tant qu’une condition est
vérifiée.
END_WHILE; vérifiée
Action
Fin du WHILE
Exemple :
Rôle Cette structure de contrôle réalise une action répétitive jusqu’à ce qu’une condition
est vérifiée.
action ; Action
Exemple :
action ;
Indice > vérifiée
END_FOR; Valeur finale
non vérifiée
Action
Fin du FOR
Indice+1 --> Indice
Exemple :
Règle de l Cette instruction n’est utilisable que dans les actions d’une des 3 boucles WHILE,
programmation REPEAT ou FOR.
l Cette instruction est rattachée à la boucle englobante la plus proche, c’est à dire
qu’il n’arrête pas l’exécution de toutes les boucles qui l’englobent.
Exemple Dans cet exemple, l’instruction EXIT permet d’arrêter la boucle REPEAT mais en
aucun cas la boucle WHILE.
Règle de priorité Le tableau ci-dessous donne la priorité pour l'évaluation d'une expression du plus
des opérateurs prioritaire ou moins prioritaire.
Opérateur Symbole Priorité
Parenthèses (expression) Plus forte
Complément logique NOT
Inversion NOT
- sur opérande -
+ sur opérande +
Multiplication *
Division /
Modulo REM
Addition +
Soustraction -
Comparaisons <,>,<=,>=
Comparaison égalité =
Comparaison inégalité <>
ET logique AND
ET booléen AND
OU exclusif logique XOR
OU exclusif booléen XOR
OU logique OR Moins forte
OU booléen OR
Note : Lorsqu'il y a conflit entre deux opérateurs de même niveau de priorité, c'est
le premier opérateur qui l'emporte (l'évaluation se fait de la gauche vers la droite).
Exemple 1 Dans l’exemple ci-après, le NOT est appliqué sur le %MW3 puis le résultat est
multiplié par 25. La somme de %MW10 et %MW12 est ensuite calculée, puis le ET
logique entre le résultat de la multiplication et de l'addition.
NOT %MW3 * 25 AND %MW10 + %MW12
Exemple 2 Dans cet exemple, la multiplication de %MW34 par 2 est d’abord effectuée, puis le
résultat est utilisé pour effectuer le modulo.
%MW34 * 2 REM 6
Utilisation des Les parenthèses sont utilisées pour modifier l'ordre d'évaluation des opérateurs,
parenthèses pour permettre par exemple de rendre une addition prioritaire sur une multiplication.
Vous pouvez imbriquer les parenthèses et le niveau d'imbrication n'est pas limité.
Les parenthèses peuvent également être utilisées afin d'éviter toute mauvaise
interprétation du programme.
Exemple 1 Dans cet exemple, l'addition est d'abord effectuée puis la multiplication :
(%MW10+%MW11)*%MW12
Exemple 2 Cet exemple montre que les parenthèses peuvent être utilisées afin d'éviter toute
mauvaise interprétation du programme.
Conversions Les conversions implicites concernent les mots et les doubles mots.
implicites Les opérateurs que vous utilisez dans les expressions arithmétiques, dans les
comparaisons et l'opérateur affectation effectuent ces conversions implicites (qui ne
sont donc pas à la charge de l'utilisateur).
Pour une instruction de la forme : <opérande 1> <opérateur> <opérande 2>, les cas
possibles de conversions sont :
Opérande 1 Opérande 2 Conversion Conversion Opération
de type de type Opérande 1 Opérande 2 dans le type
Mot Mot Non Non Mot
Mot Double mot Double mot Non Double mot
Double mot Mot Non Double mot Double mot
Double mot Double mot Non Non Double mot
Note : Toute opération entre deux valeurs immédiates est effectuée en double
longueur.
Le GRAFCET ou GRAphe
Fonctionnel de Commande
Étape/Transition ou Sequential
Function Chart
20
CHAPITRE 3. LE GRAFCET 21
1
http ://www.lurpa.ens–cachan.fr/grafcet/groupe/gen g7/geng7.html
CHAPITRE 3. LE GRAFCET 22
Manuel : entretien
Fonctionnement :
action sur g et d ?
descente poinçon
jusqu'à b ?
remontée poinçon
jusqu'à h ?
repos
Conditions initiales
1
poinçon h =1
g et d à 1
si g et d à 1
descente
Etapes 2 Actions
Transitions
bà1
si g et d à 1
remontée
3
hà1
Liaison orientée
Étape initiale
Elle représente le système à l’état de repos initial. Elle est
activée au début du cycle.
Étape
A chaque étape est associée une action ou plusieurs, c’est
à dire un ordre vers la partie opérative ou vers d’autres
grafcets.
Cette condition est écrite sous forme d’une proposition logique, une fonc-
tion combinatoire calculée à partir :
– des variables d’entrées traduisant l’état des capteurs, des boutons pous-
soirs, etc.,
– du temps,
– de l’état courant des étapes du grafcet (les Xi ).
Si la réceptivité n’est pas précisée, alors cela signifie qu’elle est toujours vraie.
Règle : si l’étape i est inactive, Xi = 0, la transition Tri est sans ef-
fet. Cependant, attention, valider sans raison une transition peut avoir des
conséquences graves, perturbant le cycle dans certains cas !
Actions continues
temps
A : action (sortie à 1)
Actions conditionnelles
Une action conditionnelle n’est exécutée que si l’étape associée est active
et si la condition associée est vraie. Elles peuvent être décomposées en 3 cas
particuliers :
temps
Condition X
i
i C Ordre A Cond.
A = Cond . X
i
CHAPITRE 3. LE GRAFCET 26
temps
5s 5s
X
i
i D Ordre A D
A = t/X /D . X
i i
temps
2s 2s
X
i
i L Ordre A L
A = t/X /L . X
i i
Actions mémorisées
X
n
X
m
m R Arrêt Ordre A
A
CHAPITRE 3. LE GRAFCET 27
On peut ainsi donner l’équation d’un ordre A en fonction des états des
étapes, des conditions éventuelles et du temps.
Capteur C1
C1
C1
temps
En Sn
t1 t2
En
Temps
Sn
t1 t2
2 20
a b a b g
3 21
h i
c h i
4 22
Soit X1 active et a = 0 d = 0
1 Divergence OU
→ attente que a ou d passe à 1
Branche 2
2 4
Branche 1
si b = 1 → X3
si c = 1 → X5
b e Branche 2 :
si d = 1 → X4
3 si e = 1 → X5
Remarque : chaque branche de la
c divergence peut être terminée par
un saut, auquel cas il n’y a pas de
Convergence OU convergence en OU.
5
3.4.3 Parallélisme
Au contraire de l’aiguillage où ne peut se dérouler qu’une seule activité à
la fois, il peut y avoir plusieurs activités indépendantes pouvant se dérouler
en parallèle. On parle alors de parallélisme structurel.
CHAPITRE 3. LE GRAFCET 31
Branche 2
4 S 30 30
X 32 X4
5 31
6 32 Fin de l'esclave
X4
GRAFCET GRAFCET
Maître Esclave
Au départ, les étapes initiales des deux grafcets sont activées. Dans le
maı̂tre, l’activation de l’étape 4, X4 = 1, va activer le déroulement du grafcet
esclave en validant la première transition, et provoquer le déclenchement de la
réceptivité X32 . Dans l’esclave, l’activation de l’étape 32, X32 = 1, provoque
l’apparition dans le maı̂tre de la réceptivité X32 qui autorise le déroulement
du programme principal, en dévalidant X4 . Cette étape 32 ”rend la main au
maı̂tre”.
Il existe une autre méthode pour rendre la main au grafcet maı̂tre, qui
d’ailleurs est la plus utilisée. Elle est illustrée ci-dessous et utilise une tem-
porisation pour maintenir la variable X32 à 1 pendant 1 s afin de rendre la
main au maı̂tre.
CHAPITRE 3. LE GRAFCET 33
4 S 30 30
X 32 X4
5 31
GRAFCET
Esclave
Les grafcets esclaves sont très utiles pour les séquences répétées, arrêt
d’urgence, commande manuelle. Ils permettent de commander plusieurs au-
tomatismes sur un même API.
Aiguillage
Etape de synchronisation
sans action
par
a 1
– les conditions initiales, c’est à dire les différentes positions au repos (au
départ du cycle), l’état de l’alimentation et l’ensemble des tests des-
tinés à vérifier les conditions initiales.
dcy·CI
Fin de cycle
1 Voyant si CI
CHAPITRE 3. LE GRAFCET 37
1 1
dcy↑·CI dcy·CI
n+1
X1
dcy
20 1
21 2
acy
Fin
CHAPITRE 3. LE GRAFCET 38
Solution N˚1
20 1
21 2
acy
Fin
m → manuel
1 a → auto
m
m⋅a a a
i i
(
e⋅ E E +S ) ou une étape d'attente
e⋅E E e⋅E E
3.6.4 Arrêts
– Arrêt momentané
X11
10 n
marche X11
arrêt
grafcet maître
grafcet esclave :
arrêt momentané
– Arrêt d’urgence
X31
30 n
AU X31
grafcet maître
grafcet esclave :
arrêt d'urgence
CHAPITRE 3. LE GRAFCET 41
AU ⋅ Σd
41 Valide actions
AU Σd
42 Attente 45 En défaut
44 ? 47 Condition
fin fin
X40
" # "
!"
+
+ !
. /. + % +
!
•
" #
. /. % /. 8
2& ; 5 $) *-
. .
00 0 0
.
0 0 0
0
7 %$ . -
. = . + . .
$ $ =$ − − +$ + $
! !
( $) *
@ <0 C>
2 )
> < CD
? =
0 !0 @
A B (
! >
) $ )
+ $% $ + $% $
, .@ . 0 8 .!0 ( .<0 2
.@
- .> ? . ./ .C> )
#- .> = .! 0 .< 8 .CD .>
.1 2
@ <0 C>
2 )
> < CD
0 !0 @
A B (
! >
% & '
+ $% $ + $% $
, .@ . 0 .!0 ( .<0 2
.@
- . ./ .C> )
.> ?
#- .! 0 .< .CD .>
< !
34 5 ) 6% 7 7 8
• 9 - % & %$ - $ %'':
• 9 - - *$ &9 % )A)&- $ 5 %'$;+
• % - * )% % $ %$ % & *% '
• % * - * )% % $ )% $ & *% ' % % )%
• 7 %$ , *% ' % &-
+
%+
$% $ +
% $ − − +! $ + ! $ = ( $ ( + (%$ $ +! )
8
• 7 %$ , *% ' $ % &-
+
%+
$% $ +
%
$ − − ! $ + +! = ( + )
8
• 7 %$ )% $
< = $< )
C !
! 1 " 1
- . =. − % − +. + .
. +
G
% ≥ .
+
. 8
G
H & )% $ $) * :&
,*% ' .
% % &
,*% ' ≥ H &,)% % $
G
. + &
,*% ' . 8
G
H & * )% % $
% % &
,*% '
&,*% ' . +
. 8
% + - %$ $) *
:&
,*% ' . +
!
? 9'& - ) , : *7 ) 7
9
% ' % ' % '
0 !
2 2 9
(
$0 = $! & + $ $0 + ! )
$ = ($ 0 + $! $ )!
$! = ($ + $0 $! )!
#%8 #
0 0 #%
0
0 0
+
@ !
## % 4'%=$+
. # % ' .
#+ %+
)% $ $) * :
&
,*% ' .
G
≥ # H & %$ &% %$
%
4 86
G
+ - )$ % $
* )% % $ &
,*% '
' *)* % . +
% #8
% #+ %+ )% $ $) * :
&
,*% ' .
G #
H & %$ &% %$
4 86
≥
+ - )$ % $
* )% % $ &
,*% '
.+
% #8
> !
### +* 4'%=$+ >
0
9
!
2
$% $
- $! &+ ! $ !
$0 ! $! +!
# $ ! $0 +!
F2& -
2 9
G
≥ 0 #0 G # G ! #!
0 ≥ ≥ !
G
D !
< " " "1 "
< 1 :)$ % )% 41 6
• % ' % &-
. .
. % .
. % .
.
.
%
• )% $ $) * :&,*% ' -
. $? )% $
I !
? )) - 1 & %-
2
< @
)
!
> I
C D
2& % *% ' -
$% $
$C $D + ! $! $ !
! $ ! $< + !
< $! & ! $C + !
C $< ! $ +!
$ ! $@ + !
@ $ ! $> + $I + !
> $@ ! $D +
D 4$ > + $I 6! $ +!
I $@ ! ! $D +
0 !
.C .D . . % .@
% .> .@
% ' @
% '
.! . % . .I
. 9 % .!
.< .! .@ % .>
% ' !
% .D .>
% ' >
%
.! 2 % .<
.C .< .> % .D
% ' <
% .I (
% ' D
. .D
%
.< ) % .C
. .C
% ' C
% .@ ! % .I
.D .I
% ' I
%
. 9 % .
.@ .
% '
% . $?
? *% '
.! $?
.< $?
$) *
.@ $?
.> $?
)% $
.I $?
!
<! 1 2$$&
*
)(
<< &
)(
) & 92& J
39
)( *
! !
Visualisation : Les automates offrent un écran de visualisation où l'on peut voir l'évolution des
entrées / sorties
On peut également ajouter des modules de sécurité à l'automate (sécurité des machines).
Il existe enfin des automates dits de sécurité (APIdS) qui intègrent des fonctions de surveillance et de
redondance accrues et garantissent la sécurité des matériels.
sont apparues de nouvelles technologies de câblage et de communications entre les divers constituants
des automatismes.
Pour diminuer les coûts de câblage des entrées / sorties des automates (systèmes étendus), sont
apparus les bus de terrains. L'utilisation de blocs d'entrées / sorties déportés à permis tout d'abord de
répondre à cette exigence.
A
C E E E E
Avant : L U
O / / / /
I C
M S S S S
Les capteurs / préactionneurs M
distants impliquaient de grandes
longueurs de câbles.
Machine 2
Machine 1 Machine 2
Machine 1
14 / 17
9. Industrial networks 9.4 Network technologies
b Network topology
An industrial network is made up of PLC’s, human-machine interfaces,
computers and I/O devices linked together by communication links such
as electric cables, optic fibres, radio links and interface elements such as
network cards and gateways. The physical layout of a network is the
hardware topology or network architecture.
For the circulation of information the term used is software topology.
Topologies are usually divided as follows:
- bus,
- star,
- tree,
- ring,
A Fig. 4 Network topology - hub.
• Bus topology
This is one of the simplest layouts; all the elements are wired together
along the same transmission line. The word bus refers to the physical line.
This topology is easily implemented and the failure of a node or element
does not prevent the other devices from working.
Machine and sensor level networks, otherwise known as field buses,
use this system.
The bus topology is implemented by linking devices together in a chain
or to the main cable via a connection box (TAP) (C Fig.4).
• Star topology
This is the Ethernet topology, the most common at management and shop
floor levels (C Fig.5). It has the advantage of being very flexible to run and
repair. The end stations are linked together via an intermediate device
(repeater, switch). Failure of a node does not prevent the network as a
whole from working, though the intermediate device linking the nodes
A Fig. 5 Star network topology
together is a point of weakness.
• Other topologies (C Fig.6)
- The ring topology uses the same hardware layout as the star
topology but ensures greater network availability.
- The hub topology is not very widespread in industry and has 9
the disadvantage of a large number of links.
Ring Hub
The ring topology uses the same hard- The hub topology is not very widespread
ware layout as the star topology but in industry and has the disadvantage of
ensures greater network availability. a large number of links.
203
A
C B E E
L U
1ère
évolution : O U / /
I C
M S S S
M
Les interfaces d'entrées/
sorties sont déportées au plus
près des capteurs. Machine 2
E/S
Machine 1
Avec l'avènement des ASICs, les capteurs, détecteurs ... sont devenus "intelligents" et ont permis de se
connecter directement au bus (médium).
A
C B
L U
O U
I C Interface
M S
M
Aujourd'hui :
Machine 1 Machine 2
Machine 1
Pour assurer le "multiplexage" de toutes les informations en provenance des capteurs / préactionneurs ont
été développés plusieurs protocoles de communication et des standards sont apparus (normalisés ou
standards de fait).
Exemple :
Le bus ASi (Actuators Sensors interface) est un bus de capteurs/actionneurs de type Maître / Esclave qui
permet de raccorder 31 esclaves (capteurs ou préactionneurs) sur un câble spécifique (deux fils)
transportant les données et la puissance.
Ce bus est totalement standardisé et permet d'utiliser des technologies de plusieurs constructeurs
(interopérabilité). L'automate est pour cela doté d'un coupleur ASi.
15 / 17
Avantages des bus de terrain :
La tendance actuelle est à l'introduction des réseaux Ethernet au plus près des automatismes (exemple :
norme Profinet).
16 / 17
IX. Critères de choix d'un automate :
Le choix d'un automate programmable est en premier lieu le choix d'une société ou d'un groupe et
les contacts commerciaux et expériences vécues sont déjà un point de départ.
Les grandes sociétés privilégieront deux fabricants pour faire jouer la concurrence et pouvoir "se
retourner" en cas de "perte de vitesse" de l'une d'entre elles.
Le personnel de maintenance doit toutefois être formé sur ces matériels et une trop grande diversité des
matériels peut avoir de graves répercussions. Un automate utilisant des langages de programmation de
type GRAFCET est également préférable pour assurer les mises au point et dépannages dans les
meilleures conditions.
La possession d'un logiciel de programmation est aussi source d'économies (achat du logiciel et
formation du personnel). Des outils permettant une simulation des programmes sont également
souhaitables.
Nombre d'entrées / sorties : le nombre de cartes peut avoir une incidence sur le nombre de racks dès
que le nombre d'entrées / sorties nécessaires devient élevé.
Type de processeur : la taille mémoire, la vitesse de traitement et les fonctions spéciales offertes par
le processeur permettront le choix dans la gamme souvent très étendue.
Fonctions ou modules spéciaux : certaines cartes (commande d'axe, pesage ...) permettront de
"soulager" le processeur et devront offrir les caractéristiques souhaitées (résolution, ...).
Fonctions de communication : l'automate doit pouvoir communiquer avec les autres systèmes de
commande (API, supervision ...) et offrir des possibilités de communication avec des standards
normalisés (Profibus ...).
17 / 17