Automatismes Séquentiels 3 Cours, 3 Travaux Dirigés et 3 séances de TP de 4h 1

  • Published on
    04-Apr-2015

  • View
    113

  • Download
    7

Embed Size (px)

Transcript

<ul><li> Page 1 </li> <li> Automatismes Squentiels 3 Cours, 3 Travaux Dirigs et 3 sances de TP de 4h 1 </li> <li> Page 2 </li> <li> Plan du cours Partie 1: Les systmes automatiss de productionPartie 2: LAutomate Programmable IndustrielPartie 3: Langages de programmation des automatesPartie 4: Le GRAFCET: Outils de description des automatismes Partie 5: Les Modes de Marches et dArrts 2 </li> <li> Page 3 </li> <li> Plan du cours Exemples vidos introductifs Pourquoi automatise-t-on? Schma de principe dun automatisme Diffrents moyens dimplanter une partie commande Partie 1: Les systmes automatiss de productionPartie 2: LAutomate Programmable IndustrielPartie 3: Langages de programmation des automatesPartie 4: Le GRAFCET: Outils de description des automatismes Partie 5: Les Modes de Marches et dArrts 3 </li> <li> Page 4 </li> <li> Plan du cours Partie 1: Les systmes automatiss de production Quid des API /PLC? Structure matrielle Structure logicielle Exemple de gammes de diffrents constructeurs Intgration des API dans les architectures types des systmes automatiss Partie 2: LAutomate Programmable IndustrielPartie 3: Langages de programmation des automatesPartie 4: Le GRAFCET: Outils de description des automatismes Partie 5: Les Modes de Marches et dArrts 4 </li> <li> Page 5 </li> <li> Plan du cours Partie 1: Les systmes automatiss de productionPartie 2: LAutomate Programmable Industriel Position et primtre de la norme IEC61131-3 Principales conventions de la norme Les 5 langages: LD, IL, ST, FDB, SFC Partie 3: Langages de programmation des automatesPartie 4: Le GRAFCET: Outils de description des automatismes Partie 5: Les Modes de Marches et dArrts 5 </li> <li> Page 6 </li> <li> Plan du cours Partie 1: Les systmes automatiss de productionPartie 2: LAutomate Programmable IndustrielPartie 3: Langages de programmation des automates Objectifs et convention du Grafcet Structures classiques particulires Mthode de dveloppement de Grafcet Implmentation dune analyse Grafcet en langage de lIEC61131-3 (LD et IL) Partie 4: Le GRAFCET: Outils de description des automatismes Partie 5: Les Modes de Marches et dArrts 6 </li> <li> Page 7 </li> <li> Plan du cours Partie 1: Les systmes automatiss de productionPartie 2: LAutomate Programmable IndustrielPartie 3: Langages de programmation des automatesPartie 4: Le GRAFCET: Outils de description des automatismes De la ncessit de considrer les diffrents modes de fonctionnement dune installation automatise. Loutils GEMMA Structure multi-grafcets de gestion des modes de marches et darrt dun installation. Partie 5: Les Modes de Marches et dArrts 7 </li> <li> Page 8 </li> <li> Exemples vidos de postes automatiss 8 </li> <li> Page 9 </li> <li> Pourquoi automatise-t-on? Objectif de productivit Produire plus: plus vite et/ou plus longtemps. Objectif de ralisation Ralisation doprations irralisables par lhomme: Rapidit dexcution, Miniaturisation, Manutention cinmatique complexe Objectif de scurisation Suppression de tches dangereuses: Sciage, Dosage chimique Suppression de manipulations fastidieuses: Ascenseur, Porte de garage Objectif de matrise de loutils de production Intgration des chanes logistiques Economie des ressources utilises (GTC) Traabilit de la production: Intgration dans un systme dinformations global 9 </li> <li> Page 10 </li> <li> Constituants dun S ystme A utomatis de P roduction Agir sur la matire duvre Ventouse, convoyeur Transformer lnergie Moteur, Vrin Acqurir des informations Capteur de Position Traiter les donnes, Emettre des ordres API, Commande cble Communiquer IHM, Superviseur, Voyants Terminaux de dialogue Distribuer lnergie Contacteur lectrique, Distributeur pneumatique 10 </li> <li> Page 11 </li> <li> Analyse fonctionnelle 11 </li> <li> Page 12 </li> <li> Du point de vue de la commande P ARTIE C OMMANDE CONSIGNES DE FONCTIONNEMENT - Mise en fonctionnement - Mise larrt - Consigne de cadence - Consigne de recette - INFORMATIONS SUR LTAT DU PROCESS LTAT DU PROCESS -Informations binaires. Pices en bute, Niveau atteint, Faisceau coup, vnement -Informations numriques. Niveau de temprature, dans trmie. Comptage. COMPTE-RENDU DE FONCTIONNEMENT DE FONCTIONNEMENT - Signalisation visuelle, sonore - Signalisation via un module IHM - Ecriture dans une base de donnes - ORDRES DACTIONS SUR LE PROCESS. - Ordre boolen Ouverture/Fermeture vanne, Mise en marche moteur - Ordre numrique Bloc de rgulation PID intgr, consigne de vitesse - Consigne pour modules dports 12 </li> <li> Page 13 </li> <li> Diffrents moyens dimplanter une partie commande Commande cble Ds lors que lon dispose des fonctions logiques lmentaires et dlments de mmorisation, on est capable de raliser la plupart des fonctions de commande. Ralisable en technologie lectrique (Cf. Exemple), lectronique, pneumatique Peu souple, pas dintgrations dlments communiquant. Micro contrleur Solutions demandant des temps de dveloppement importants. Interfaage vers des quipements industriels existants difficiles Intrt dans le cadre dapplication de srie. Automate Programmable Industriel Equipements plus onreux Programmation aise Conception robuste Vaste gamme dinterfaces pour communiquer avec son environnement. 13 </li> <li> Page 14 </li> <li> Architectures dautomatismes 14 </li> <li> Page 15 </li> <li> Commande dcentralise et rpartie 15 </li> <li> Page 16 </li> <li> Exemple darchitecture de commande 16 </li> <li> Page 17 </li> <li> LAutomate Programmable Industriel API : Automate Programmable Industriel PLC : Programmable Logic Controlleur Liste de principaux constructeurs: Allen Bradley (US) ; Siemens (GER) ; Schneider (FR) ; Rockwell Automation (US) ; FESTO (GER) ; WAGO (GER) ; GE Fanuc (US) ; Beckhoff (GER) ; Omron (JPN) ; ABB (SU) ; Mitsubishi (JPN) ; 17 </li> <li> Page 18 </li> <li> LAPI: Structure Matrielle Exemple de configuration matrielle dun API modulaire 18 </li> <li> Page 19 </li> <li> 2 Gammes dAPI 19 Non exhaustives Siemens LOGOS200S300C7S400 Schneider ZELIOTWIDOTSX MicroM340PremiumQuantum Petite machine Machine Industrielle Process Manufacturier Infrastructure complte Mmoire et performance processeur(s) (plus dinstructions et plus vite). Modularit croissante, Service de communication croissant. Possibilits logicielles croissantes Intgration de IEC, Outils de simulation, diagnostic, supervision, Richesse des bibliothques etc. </li> <li> Page 20 </li> <li> LAPI: Structure logicielle Cycle automate priodique ou cyclique Dterminisme assur par un chien de garde Notion de Scrutation Lecture et criture synchrone de toutes les E/S, respectivement en dbut et en fin de scrutation. Le programme utilisateur ne travaille que sur des images mmoires. Notions dimages mmoires des E/S Structure mono-tche ou multi-tche possible. Notions de tches 3 notions importantes: 20 </li> <li> Page 21 </li> <li> Principe du droulement dun cycle automate Scrutation cycliqueScrutation priodique 1.Les instructions du programme sont excutes les unes aprs les autres 2.Lorsque toutes les instructions on t values, le programme reprend nouveau depuis le dbut, de toute faon. Cette scrutation peut seffectuer de manire cyclique ou priodique: Cette relecture cyclique est ininterrompue, on parle de scrutation ou encore de cycle automate 21 </li> <li> Page 22 </li> <li> Dterminisme temporel des API Chaque tche dun programme dautomate dispose dun chien de garde paramtrable vrifiant que sa dure de scrutation est limite. Ds lors que ce temps de scrutation de la tche matre est limit, on peut garantir une borne suprieure au temps de rponse une entre donne Un API est une machine temps rel il garantit une rponse avant une dure maximale donne et courte 22 </li> <li> Page 23 </li> <li> Temps de rponse maximal dun API Temps de rponse: entre 1 2 temps de scrutation (born par chien de garde) 23 </li> <li> Page 24 </li> <li> Traitement mmoire des E/S: MIE Sur la dure dune scrutation, les tats des entres sont rendus stables par lutilisation de la mmoire image des entres (MIE) Le principe est le suivant: 1.En dbut de scrutation, les tats de chaque entres des coupleurs dentres sont recopis en mmoire MIE de lUC. 2.En cours dexcution du code utilisateur, si une instruction requiert ltat dune entre, cest limage mmoire correspondante qui est lue 3.La mmoire image des entres est rafraichie en dbut de scrutation suivante 24 </li> <li> Page 25 </li> <li> Traitement mmoire des E/S: MIS Selon un mcanisme similaire: 1.Chaque instruction du programme utilisateur affecte limage mmoire de la sortie adresse. Cette image mmoire porte le mme nom que la sortie physique. 2.Chaque nouvelle instruction met la mmoire image jour 3.Aprs droulement complet de la scrutation, les tats de la MIS sont recopies en bloc vers les coupleurs de sortie. 25 </li> <li> Page 26 </li> <li> Structure logicielle mono-tche et multi-tches 2/2 26 Une tche reprsente un ensemble dopration excut squentiellement. Contrairement linformatique, une tche ralise lensemble des oprations qui lui sont dsignes puis sarrte et ce, jusqu son prochain lancement Ordonnancement correspondant </li> <li> Page 27 </li> <li> Structure logicielle mono-tche et multi-tches 1/2 27 1.A tout moment, une seule tche excute. 2.Les tches ont leurs propres cycles de traitement (Lecture/Calcul/Ecriture) 3.Les tches communiquent entre-elles par des zones de mmoires alloues Exemple Ordonnancement pour une tche rapide 200m </li> <li> Page 28 </li> <li> Norme CEI 61131-3 / NF EN 61131-3 Normalisation des 5 langages de programmation des API Dveloppe par des constructeurs, utilisateurs industriels finaux, universitaires (1993 pour -3) Valable pour automates prsents et futurs. Intgration partielle conforme (Position dans la gamme) Pas dobligation lgale dimplantation de lensemble des aspects de la norme. 1.Informations gnrales Dfinitions gnrales et Caractristiques fonctionnelles gnrales des PLC 2.Spcifications et essais matriels Dfinitions de caractristiques mcaniques, lectriques et de conditions denvironnement 3.Langages de programmation des PLC Harmonisation des langages de programmations des PLC, Modle lmentaire de programme dautomatisation 4.Aide utilisateur Informations pratiques daide lutilisateur depuis lanalyse du besoin et lacquisition du PLC jusqu la maintenance 5.Communications Communications entre les PLC de diffrents constructeurs et autres quipements CEI 61131 28 </li> <li> Page 29 </li> <li> Primtre de la CEI 61131-3 Unit logique de de programmation Fonctions Blocs fonctionnels Programmes Elments communs tous les langages Typage des donnes Variables 5 langages LDILFDBSTSFC 29 </li> <li> Page 30 </li> <li> Les units logiques de programmation Ce sont des modules logiciels qui peuvent tre de 3 types: 1.Les programmes 2.Les blocs fonctionnels 3.Les fonctions 30 Objectif poursuivit: Crer des encapsulations de structure de donnes et dalgorithme associ indpendant de lapplication. Cration de bibliothques doutils ddis </li> <li> Page 31 </li> <li> Fonctions et blocs fonctionnels standards 31 Toutes les applications de programmation dAPI intgrent nativement des fonctions et blocs fonctionnels prdfinis: Fonctions prdfinies numriques: ABS, SQRT, EXP arithmtiques: ADD, MUL, SUB Boolenne: AND, OR, XOR. sur tableau de bits: RHL, SHL, ROL comparaison: EQ, LT, LE. sur chanes de caractres: CONCAT, INSERT, DELETE Conversion de type: x_TO_y, BCD, Blocs fonctionnels prdfinis TONTemporisateur lenclenchement TOFFTemporisateur au dclenchement TPMonostable CTUcompteur CTUDCompteur / Dcompteur R_TRIGFront montant F_TRIGFront descendant File FIFO/LIFORegistre First In-First Out La norme prvoit de pouvoir crer ses propres fonctions et blocs fonctionnels </li> <li> Page 32 </li> <li> Ces modules logiciels sont hirarchiss 32 Les appels rciproques sont hirarchiss </li> <li> Page 33 </li> <li> Structure commune des modules logiciels IEC 33 Les codages de ces modules logiciels ont des structures identiques: </li> <li> Page 34 </li> <li> La fonction: Unit logique de programmation Une fonction est un module logiciel Une seule variable de sortie Plusieurs variables dentres possibles Pas de mmoire interne Tous langages de la norme peut servir dfinir une fonction 34 </li> <li> Page 35 </li> <li> Le bloc fonctionnel (FB) Un bloc fonctionnel est un module logiciel : Plusieurs variables de sortie possibles (ou aucune) des mmoires internes Eventuellement une entre de validation et une sortie pas derreur Tous langages de la norme peut servir dfinir un bloc fonctionnel 35 </li> <li> Page 36 </li> <li> Instanciation dun bloc fonctionnel Les blocs fonctionnels, ds lors quils sont cres, sinstancient Une instance possde un identificateur unique et peut-tre dclare comme locale ou globale. En reprenant lexemple: %Passage_droit.Q peut tre utilis en fonction de la dclaration de linstance Passage droit du bloc fonctionnel bascule SR On instancie un BF dans un programme, ou dans un autre BF. Toutes les valeurs sont conserves dune excution de bloc fonctionnel jusqu lautre 36 </li> <li> Page 37 </li> <li> Le programme: Unit logique de programmation Il y a toujours un programme principal effectuant les affectations des E/S, des variables globales Pour chaque programme, on peut dfinir un mode de scrutation indpendamment des autres. Il ny a pas dinstance de programmes (sur un mme API) 37 </li> <li> Page 38 </li> <li> Les blocs dclaratifs des variables 38 Pour chaque blocs dclaratifs des modules logiciels, il est ncessaire de dfinir: 1.La porte de chacune des variables utilises dans le bloc. 2.Le type de chacune de ces variables. </li> <li> Page 39 </li> <li> lments commun des langages Chaque variable doit tre parfaitement Type Identifie ou localise De porte dtermine (locale, globale, entre, sortie, E/S..) Une variable ne peut-tre type que selon lune des 3 catgories suivantes: - un type standard - Un type prdfini par le dveloppeur - une instance de bloc fonctionnel 39 </li> <li> Page 40 </li> <li> Types de donnes standards selon le CEI 61131-3 Type de donnesDescriptionBitsGamme BOOLboolen1[0, 1] BYTEChane de 8bits8[0,,16#FF] WORDChane de 8bits16[0,,16#FFFF] DWORDChane de 8bits32[0,,16#FFFF FFFF] LWORDChane de 64bits64[0,,16#FFFF FFFF FFFF FFFF] SINTEntier sign court8[-128, 127] INTEntier sign16[-32768,,+32767] DINTEntier double sign32[-2(31),,2(31)-1] LINTEntier long sign64[-2(63),,2(63)-1] USINTEntier court non sign8[0, 255] UINTEntier non sign16[0,,65535] UDINTEntier double non sign32[-0,,2(32)-1] ULINTEntier long non sign64[-0,,2(64)-1] REALNombre rel32 STRINGChane de car. ASCII..255 caractres maxi DATEDate32D#0000-00-00 TODHeure32Tod#00:00:00 TIMEDure32T#0s 40 </li> <li> Page 41 </li> <li> Type de donnes prdfinis 1) Type Enumr TYPE Couleur : (rouge, verte, bleue); END_TYPE; TYPE RefType : (REF,DIFF):=REF; END_TYPE; 2) Type Tableau TYPE Mesure : ARRAY[1..10] OF INT; END_TYPE; 3) Type Structure TYPE Acquisition STRUCT Valide:BOOL:=FALSE; Reference:RefType; ACQ:Mesure; END_STRUCT END_TYPE 41 </li> <li> Page 42 </li> <li> Identification et tendues des variables 42 Prfixe demplacement Signification IEmplacement dentre QEmplacement d...</li></ul>