Vous êtes sur la page 1sur 42

Les Automates Programmables

Industriels (API)

PLC : programmable logic controller


1
Historique

A la fin des années 60, Un fabricant américain


de voitures décide de remplacer les systèmes
de commande à base de logique cablée (relais
électrique) par une logique programmée.
Ambiance industrielle
bruit électrique
poussière
température
humidité 2
Cahier des charges
Solution pour un coût acceptable

utilisable par le personnel en place

programmation facile

Supporter l’ambiance industrielle

Adaptation aux nombreuses variétés E/S

Simplicité de mise en œuvre

3
Introduction
L’automate programmable au cœur du
système automatisé de production

4
Architecture interne
RAM: Random Access Memory

ROM RAM ROM: Read Only Memory


MEMOIRE MEMOIRE E2PROM: Electrically Erasable
PROGRAMME DONNEES Programmable Read Only Memory

BUS INTERNE

CLOCK
UNITE DE TRAITEMENT

RESEAUX, Code barre

POSITIONNEMENT
COMPTAGE RAPIDE

CARTES METIERS
CARTES SORTIES
CARTE ENTREES
ALIMENTATION

REGULATION
TOR, ANA,

TOR, ANA

VISION
AXES
5
Structure interne d’un automate
PC registre = mémoire tampon

Communication Données et Périphériques


Mémoire internes
programme (Timers/Compteurs)

Energie
électrique
Alimentation
Interface Interface
d’entrées de sortie

Registre d’entrées

Registre de sortie
Optocoupleurs

Transistors/relais
Optocoupleurs
ENTREES SORTIES

CPU
Entrées Sorties

6
Le cycle de l’automate Process

Lecture des
!
Mise à jour Le contenu du
Entrées Des Sorties registre change
pendant le cycle
Mémoire
programme
Interface et données Interface
d’Entrée de Sortie

Registre de sortie
Registre d’entrée

Transistors/relais
Optocoupleurs

Optocoupleurs
Central Unit
ENTREES Entrées Sorties
SORTIES

7
Le cycle de l’automate
Registre Registre

Entrées Sorties

IMAGE

IMAGE
CPU
(mP)

lecture des
entrées
t t+Dt
mise à jour
des sorties

exécution des
t
instructions Temps de cycle

Sorties(t+Dt) = fonction( Entrées(t) , Sorties(t) )

Ordre de grandeur du temps de cycle : entre 1 et 100 ms


8
9
Structure d’un système automatisé
Energie Energie

Réseau
Autres automates
Supervision Commande Pré-
Actionneurs
actionneurs

Automate
Interface Programmable
Homme-
Machine Informations Interface
Capteurs

Utilisateur
Partie commande Partie opérative
10
Structure d’un système automatisé
Energie Actionneurs
Energie

Actionneur
Autres électrique :
systèmes
Commande Pré-
Moteur
Actionneurs
actionneurs

PartieActionneur
Interface Commande
pneumatique
Homme-
Machine ou hydraulique :
Informations Interface
vérin Capteurs

Utilisateur
Partie commande Partie opérative
11
Structure d’un système automatisé
Energie Energie
Pré-actionneurs

Variateur de vitesse
Autres
systèmes
pour moteur
Commande Pré-
Actionneurs
actionneurs

Partie
Interface Commande
Homme- Distributeur électropneumatique
Machine InformationsInterface
ou électrohydraulique
Capteurs

Utilisateur
Partie commande Partie opérative
12
Structure d’un système automatisé
Energie Capteurs Energie

Autres
systèmes Commande Pré-
Détecteur
Actionneurs
actionneurs
Détecteur inductif Détecteur optique de contact
Partie
Commande
Interface
Homme-
Machine Informations Interface
Capteurs

Codeur optique
Utilisateur (position arbre moteur) Caméra
Partie commande Partie opérative
13
Structure d’un système automatisé
Energie Energie
Interface Homme-Machine

Autres
systèmes Commande Pré-
Actionneurs
actionneurs

Boutons et voyants
Partie
Interface Commande
Homme-
Machine Informations Interface
Ecran tactile Capteurs

Utilisateur
Partie commande Partie opérative
14
Qui peut concurrencer l’automate ?

Peu d’éléments à produire


On recherche :
- Un faible coût de développement
- Un développement rapide et aisé
Automate Programmable Industriel

Beaucoup d’éléments à produire (ex : ABS d’une voiture)


On recherche :
- Un faible coût unitaire du composant
Microcontrôleur

15
L’automate programmable
Entrées/Sorties logiques
Entrée/Sorties analogiques
Sorties PWM
Commande d’axe
Extensions Compteurs rapides
Régulation
Communication (CAN, Ethernet…)

Sorties logiques
Sorties logiques Actionneurs
Variables internes
IHM
Unité Entrées logiques Capteurs
Entrées logiques Centrale

Version « compacte »
développement

PC 16
Extensions déportées
Entrées/Sorties logiques
Entrées/Sorties analogiques
Sorties PWM
Commande d’axe
Compteurs rapides
Coupleur réseau (CAN, Ethernet…)
Régulation
Variables internes
Sorties logiques
Sorties logiques Actionneurs

IHM Unité
Centrale Entrées logiques Capteurs
Entrées logiques

Version « réseau de terrain »

développement

PC 17
Architecture réseau
Entreprise Network
engineer operator Supervisor
station station Station gateway

Control Bus
(e.g. Ethernet)

PLC

COM1

COM 2
Control Station

COM1
COM1

COM 2

CPU
PLC PLC
CPU

CPU

I/O
with Field Bus gateway
I/O
I/O
I/O
I/O
I/O

I/O
I/O
I/O
I/O
direct I/O
Field Bus (proprietary) Field Bus (standard)

COM

COM

COM
COM

COM
CPU

CPU

CPU
I/O
I/O
I/O
I/O

I/O
I/O
I/O
directly connected
I/O
Field Stations FB
gateway Field Devices
small PLC
local intelligence

Sensor Bus (e.g. ASI)


18
19
Aspect programmation
FONCTIONS DES
ATELIERS LOGICIEL
•gestion des projets
•configuration API
•édition, compilation
•Transfert console <> API
•Mise au point dynamique

Console de poche pour la maintenance 20


Les langages IEC1131
Function Block Diagram (FBD)
Sequential Flow Chart (SFC)
AUTO CALC1
DI CALC PUMP
START STEP
V IN1 OUT >=1 DO
V T1
MAN_ON
ACT IN2 N ACTION D1 D1_READY
STEP A
D ACTION D2 D2_READY
T2
Ladder Diagram (LD) STEP B
N ACTION D3 D3_READY

D ACTION D4 D4_READY
CALC1
T3
AUTO CALC PUMP
IN1 OUT
ACT
IN2
Structured Text (ST)
MAN_ON VAR CONSTANT X : REAL := 53.8 ;
Z : REAL; END_VAR
VAR aFB, bFB : FB_type; END_VAR
Instruction List (IL) bFB(A:=1, B:=‘OK’);
A: LD %IX1 (* PUSH BUTTON *) Z := X - INT_TO_REAL (bFB.OUT1);
IF Z>57.0 THEN aFB(A:=0, B:=“ERR”);
ANDN %MX5 (* NOT INHIBITED *)
ELSE aFB(A:=1, B:=“Z is OK”);
ST %QX2 (* FAN ON *) END_IF 21
Comparaison des langages
LANGAGE AVANTAGES INCONVENIENTS

LD facile à lire et à comprendre par la suppose une programmation bien


majorité des électriciens structurée
langage de base de tout PLC
FBD Très visuel et facile à lire Peut devenir très lourd lorsque les
équations se compliquent

ST Langage de haut niveau (langage Pas toujours disponible dans les


pascal) ateliers logiciels
Pour faire de l’algorithmique
IL langage de base de tout PLC type très lourd et difficile à suivre si le
assembleur programme est complexe
Pas visuel.
SFC Description du fonctionnement Peu flexible
(séquentiel) de l ’automatisme.
Gestion des modes de marches
Pas toujours accepté dans
l’industrie… 22
Exemple Exemple
Isagraf Siemens

Multi-langages, multi-programmes !
23
Exemple
Schneider

24
Avantages des API

évolutivité très favorable au évolution. très utilisé


en reconstruction d’armoire.
fonctions assure les fonctions Conduites,
Dialogue, Communication et Sûreté.
taille des gamme importante d’automate
applications
vitesse temps de cycle de quelque ms

modularité haute modularité. présentation en rack

25
développement très facile avec des outils de
d’une application programmation de plus en plus puissant
et documentation
architecture de centralisée ou décentralisée avec
commande l’apparition d’une offre importante en
choix de réseaux , bus de terrain, blocs
E/S déportées.
mise en oeuvre mise au point rendu plus facile avec
l’apparition des outils de simulation de
PO
maintenance échange standards et aide au
diagnostique intégrée
portabilité d’une norme IEC 1131
application
26
Exemple (tendance micro)
FPO by MATSUSHITA AUTOMATION CONTROLS

vitesse de 0,9 ms/pas - scrutation cyclique


(possibilité en scrutation périodique)
programmation en langage LD et FDB et GRAFCET
EEPROM programme 5,4Ko (2720 pas) ou 10Ko (5000
pas)
chien de garde - mise en réseau possible avec
adaptateur - programmable en IEC 1131
E/S 6/4 8/6 8/8 16/16 et bientôt 128 – Analogique
disponible
capture d’impulsion
interruption périodique programmable de 0,5 ms à 30 s
90x25x60 mm et moins de 100g !
27
Etat du marché
% API

Micro: 15 to 128 I/O points 32%


Medium: 128 - 512 I/O points 29%
Large: > 512 I/O points 20%
Nano: < 15 I/O points 7%
Software PLC & cartes spé. 14%

28
Source: Control Engineering, Reed Research, 2002-09
29
RAM
MEMOIRE
DONNEES
Traitement : définitions
BUS INTERNE
Acquisition
des entrées

COMPTAGE RAPIDE

CARTE ENTREES
écriture en mémoire de

TOR, ANA,
l'état des informations
présentes sur les entrées
(réalise une image du
monde extérieur)

30
Traitement
du programme

exécution du
programme
application, écrit
par l'utilisateur.

31
RAM
MEMOIRE
Mise à jour DONNEES
des sorties

S
BUS INTERNE

écriture des bits ou


des mots de
sorties associés
aux modules TOR

CARTES SORTIES
et métier selon

TOR, ANA
l'état défini par le
programme
application.

32
L’ensemble constitue une tâche
Acquisition Traitement Mise à jour
des entrées du programme des sorties

E T S

Temps de cycle
TC= TE+TT+TS

33
Exemple
Capteur Cartes Entrées 7 0
I 124 I 124.X

I 124.5 Q124.1

7 0 Cartes Sorties Actionneur


Q124.X Q 124

34
Ce type de fonctionnement consiste à enchaîner les cycles
les uns après les autres.

E T S E T S E T S
T-1 T T+1

fonctionnement mono-tâche asynchrone


(ou cyclique ) 35
Dans ce mode de fonctionnement, l'acquisition des entrées, le traitement du
programme et la mise à jour des sorties s'effectue de façon périodique te ms
selon un temps défini par configuration API .

T-1 T T+1

E T S E T S E T S

te te te

fonctionnement mono-tâche synchrone


(périodique) 36
Retard dans le traitement de l’événement
Les deux modes de traitements (cyclique ou périodique) sont appelé
différé. Dans le pire des cas, il peut s ’écouler à peu prés 2 fois le temps
de cycle moyen avant que l’UT réagisse à l’apparition d’un événement

ACQUISITION

EVENEMENT

E T S E T S E T S
T-1 T T+1
2. Tc ACTION CONSECUTIVE A
L’EVENEMENT
37
Les interruptions 4) ACTION CONSECUTIVE
A L’EVENEMENT

Tc’

ETS 3) EXECUTION DU TRAITEMENT


EVENEMENTIEL (Tc’ petit)
1) EVENEMENT

2) INTERRUPTION DU
TRAITEMENT MAITRE
5) REPRISE DU
TRAITEMENT

E T S E T S E T S
T-1 T T+1

38
Les interruptions
Les traitements événementiels permettent
donc de prendre en compte des Ces tâches sont
événements de commande et de les traiter prioritaires. Le
le plus rapidement possible traitement, qu'elles
doivent assurer, est
Des instructions du langage nécessairement court
utilisées dans le programme afin de ne pas
application, permettent de masquer perturber l'exécution
ou démasquer ces traitements des autres tâches.
événementiels.

La configuration permet de choisir les voies des modules d'entrées qui


sont rafraîchies en début de traitement et les voies de sorties qui sont
mises à jour en fin de traitement. Les données associées à la voie qui a
déclenché l'interruption sont rafraîchies automatiquement.

39
Traitement multitâches
EVENEMENTS

PERIODIQUE La tâche rapide


permet d'effectuer
des traitements
courts avec une

INTERRUPTION
priorité plus élevée

AUXILIAIREs
que dans la tâche

MAITRE
TACHEs

RAPIDE
TACHE

TACHE

TACHE
maître

Le traitement est
nécessairement court
afin de ne pas
perturber l'exécution
des autres tâches

- PRIORITE +

40
La durée d'exécution de la tâche maître, en fonctionnement Chien de
cyclique ou périodique, est contrôlée par l'automate (chien
de garde) et ne doit pas dépasser la valeur définie en garde
configuration
Dans le cas de débordement, l'application est déclarée en
défaut, ce qui provoque l'arrêt immédiat de l'automate

! STOP CPU

T-1 T

E T S E T DEF. CPU, erreur prog.

Chien de garde
41
Un contact est associé au
watchdog (chien de garde)

42

Vous aimerez peut-être aussi