Click here to load reader

34 API Chap2

  • View
    29

  • Download
    0

Embed Size (px)

DESCRIPTION

cours

Text of 34 API Chap2

  • ISIM GabS API et Supervision industrielle a.U. 2011/2012 LaSCMI3

    S. MARAOUI Page 1

    Chapitre 2

    Programmation des API

    1. Introduction Les langages de programmation utilise pour les API ont volu depuis lintroduction des automates la fin des annes 60. Actuellement la norme CEI 61131-3 (la partie 3 sur 8 de la norme not prcdemment 1131, apparu en 1993 et en deuxime dition en 2003 et spcifiant les langages de programmation), spcifie 5 langages qui sont :

    langages graphiques : o langage LADDER ( relais), LD o Botes fonctionnelle, ou Functional Block Diagram (FBD).

    Langages textuel : o Texte structur (ST) o Liste dinstructions(IL)

    Diagramme de fonctions squentielles (Sequential Chart function, SFC) : o Version graphique (proche du grafcet) o Version textuelle.

    Le cycle de fonctionnement dun automate peut tre simplifi comme suit :

    Lecture des entres et sauvegarde en mmoire

    Lecture des entres de la mmoire, excution des

    instructions du programme et

    mmorisations des sorties

    Mise jour des sorties

  • ISIM GabS API et Supervision industrielle a.U. 2011/2012 LaSCMI3

    S. MARAOUI Page 2

    Le temps dun cycle dpend de la taille du programme excut et la vitesse du processeur avec une moyenne de 2-5ms/K de programme. Le scan du programme limite les vitesses (frquences) des signaux auxquels un api peut ragir. La figure suivante illustre le cas o lautomate compte le nombre dimpulsions dun signal : le premier est moins rapide que la vitesse de scan du programme, le comptage est correct. Le deuxime signal est plus rapide et lautomate peut rater quelques impulsions. Le troisime est encore plus rapide et lautomate peut rater plusieurs impulsions. Pour que la lecture des entres se fait correctement, thoriquement il faut que le temps dune impulsion en entre dure plus que 1/(2*priode de scan). Par exemple si le temps de scan est de 20ms, lautomate peut lire des impulsions dune largeur de 1/(2*0.01)=0.02s soit une frquence de 50Hz. En pratique, dautres facteurs, tel que le filtrage sur les entres, ont un effet considrable sur la vitesse de lecture et doivent tre pris en compte.

    Un autre problme moins vident peut apparaitre lorsque le changement dune entre parvient juste aprs sa lecture, ce qui va retarder lactivation (ou dsactivation) de la sortie concerne un cycle (voir figure)

    Entre processus

    Sortie processus

    Scan du programme

    Lecture de lentre

    Mise jour de la sortie

    Entre processus

    Sortie processus

    Scan du programme

    Lecture de lentre

    Mise jour de la sortie

    Scan du programme

    Par exemple considrant un processus ou la matire douvre est dplace avec la vitesse de 15m/s (par exemple barre de fer de construction), et qui doit tre dcoup sous la commande dun api avec un temps de scan de 30ms, aprs un signal dune photocellule. La marge derreur est donc de 15000*0.03=450mm.

    Les constructeurs peuvent proposer des cartes spciales (avec leur propre *P) pour traiter ces signaux rapides.

    Signal 1

    Signal 2

    Signal 3

  • ISIM GabS API et Supervision industrielle a.U. 2011/2012 LaSCMI3

    S. MARAOUI Page 3

    2. Identification des entres/sorties et bit dadresses :

    2.1. Rangs, cartes et signaux Le programme dAPI concerne les connections avec le processus et les modules des entres et sorties doivent tre identifi dans le programme. Les constructeurs ont diffrentes faon didentifier ces E/S (voir exemple figure ci-dessous)

    Notation: (a) Mitsubishi, (b) Siemens, (c) Allen-Bradley, and (d) Tlmecanique.

    Gnralement les apis contiennent des rangs (racks) locales ou loign. Chacune contient des cartes (ou modules) dentres sorties avec 8, 16 ou 32 connections. Lide est dadresser ces E/s en utilisant la notion de rack/module/bit.

    Exemple 1 Allen Bradley PLC-5: LAllen Bradley PLC-5 peut avoir jusqu 8 racks dans sa version 5/25. Le rack 0 contient automatiquement le processeur, et lutilisateur peut attribuer des adresses dans les autres racks (de 1 7) en positionnant des switchers. Ses racks (outre le n0) se connectent au processeur via un cble de communication srie des E/S lointaines. Il y a trois faons avec laquelle un rack peut tre configur pour ce constructeur mais seule la plus simple est prsente.

    Chaque rack contient une carte 16 voie dentres et une carte 16 voie de sortie, ou bien deux cartes de 8 voies gnralement (mais pas ncessairement du mme type. Dans la figure suivante par exemple le slot 1 contient une carte dentre 16 voies et une carte de sortie 16 voies. Le slot 2 contient 2 cartes de sorties de 8 voies chacune.

  • ISIM GabS API et Supervision industrielle a.U. 2011/2012 LaSCMI3

    S. MARAOUI Page 4

    Ladressage des entres est comme suit : I : Rack Slot/bit, o bit est sur deux digits.

    Allen Bradley utilise un systme dadressage octal pour les bits, donc les nombres autoriss sont0-7 et 10-17. Par exemple ladresse I :27/14 dsigne lentre 14 sur le slot 7 dans le rack 2. Les sorties sont adresses de manire analogue : O:Rack Slot/Bit. Donc ladresse O:35/06 est la sortie 6 sur le slot 5 du rack 2.

    Exemple 2 Siemens SIMATIC S5 : Les E/s numrique des API de Siemens sont organis en groupes de 8 bits (appel Byte).un signal est identifi utilisant son numro de bit (0-7)et son numro de byte (0-127). Les entres ont not I., et les sorties Q., exemple lentre I9.4 et la sortie Q52.7.

    Comme pour lAllen Bradley, siemens utilise des slots pour les cartes dans un ou plusieurs racks. Les cartes sont disponibles en 16 bits (2-ytes) ou 32 bits (4-bytes). Un systme peut tre construit partir de racks locaux connect via un cble de bus parallle, des racks loigns avec une connexion srie. Les racks locaux sont plus rapides et peuvent rsoudre quelques problmes lis aux processus rapides et aux connections sries, mais ne peuvent pas tre qu quelques mtres de distance du processeur.

    La forme la plus simple dadressage est les slots fixes (figure ci-dessous). Quatre bytes sont attribus squentiellement chaque slot (0-3 pour le premier slot, 4-7 pour le deuxime,). Lentre I2.4 est donc le bit dentre numro 4 du premier byte de la carte dans le slot 3 du premier rack.

    Lutilisateur a la possibilit daffecter ladressage par byte (appel adressage de slots variable). Le numro du premier byte et le nombre de bytes (2 pour les cartes 16 bites et 4 pour les cartes 32 bites) peuvent tre fix pour chaque slot indpendamment avec des switchers dans le module adaptateur pour chaque rack. Nimporte quelle combinaison est possible, toutefois il est recommand dutiliser une numrotation squentielle (figure suivante).

  • ISIM GabS API et Supervision industrielle a.U. 2011/2012 LaSCMI3

    S. MARAOUI Page 5

    A noter finalement que siemens utilise diffrentes notation dans diffrents pays avec des terminaux de programmation multilingues (par exemple E pour lentre et a pour la sortie en Allemagne).

    2.2. Bits de sauvegarde internes. Comme pour les entres et sorties, lautomate ncessite de sauvegarder des signaux internes de donnes concernant par exemple le bon fonctionnement du systme, mise en attente, dfaillance dtect,

    Lautomate permet dallou des bits internes pour ces signaux. Ces bits ont des appellations qui varient dun constructeur un autre, par exemple relais auxiliaires pour Mitsubishi, drapeaux (flags) pour Siemens, bit de sauvegarde pour Allen Bradley, de mme la notation varie, Mitsubishi utilise Mnnn, avec nnn est un nombre dans une zone prdfinie de M100 M377 (octal), Siemens utilise la notation FByte.bit (e.g. F27.06), pour le PLC-5 de Allen Bradley, le bit de sauvegarde (bit storage) est not B3/n o n est le numro du signal (e.g. B3/100). Dans cette notation B est pour Bit storage, 3 vient du fait que le PLC-5 maintient les donne en fichiers (fichier 3 pour ces bits, fichier 4 pour les timers (T4), fichier 5 pour les compteurs (C5), ).

    3. Programmation en langage Ladder : Le langage Ladder (LD) est issu du domaine des relais lectromcaniques et dcrit le flux dnergie travers un rseau dune unit organis du programme, de gauche droite. Initialement ce langage est destin commander des signaux boolens. Ces rseaux sont organis du haut vers le bas sauf spcification de lutilisateur.

    En LD lvaluation du rseau dpend de sa forme graphique (noms des variables et types de connections). Les lments sont connect soit en srie soit e parallle.

    3.1. Elments de base dun rseau Ladder Un rseau LD consiste en les lments suivants :

    - Connections - Contacts et bobines. - Elments graphiques pour contrler lexcution de la squence (sauts) - Elments graphiques pour appels des fonctions blocs (FB) - Connecteurs.

    Le tableau suivant donne les principaux lments (contacts et bobines) dun rseau LD :

    Objet graphique nom -| |- Contact normalement ouvert -|/|- Contact normalement ferm -|P|- Contact ferm au front montant -|N|- Contact ferm au front descendant -( )- Bobine normalement ouverte

  • ISIM GabS API et Supervision industrielle a.U. 2011/2012 LaSCMI3

    S. MARAOUI Page 6

    -( / )- Bobine normalement ferme -( S )- (ou ( L)- Bobine Latch (maintenu 1 une fois actionn

    -( R )- (ou ( U )- Bobine Reset (remise 0 de la bobine latch) -( P )- Bobine active au front montant de son entre -( N )- Bobine active au front descendant de son entre

    |- Retour unconditionnel (vers le sous-programme appelant) |-cond- Retour conditionnel

    |->>Label Saut inconditionnel |-cond->>Label Saut conditionnel

    3.2. Appelle de fonctions ou blocs fonctionnels (FB): Les fonctions et les FB, reprsents par des rectangles, peuvent avoir plusieurs paramtres et variables dentres et de sorties. Les fonctions peuvent avoir un ou plusieurs paramtres