API Du Grafcet Au Ladder v3
API Du Grafcet Au Ladder v3
API Du Grafcet Au Ladder v3
Automates programmables
Du Grafcet au Ladder
Du Grafcet au Ladder
Le but de ce guide est de vous permettre de programmer simplement un automate en langage ladder partir d'un grafcet. Le langage ladder, un peu fastidieux parfois crire, reste le plus utilis pour la programmation des systmes automatiss industriels. Le guide s'appuie sur la programmation d'automates Omron, sur les parties opratives trIrobot. Cependant, nombre de notions gnrales sont valables pour tous les automates.
Ce guide ne comporte pas de tutorial spcifique vous guidant pas--pas dans la programmation de l'automate. Il propose simplement de suivre le guide d'introduction d'Omron-Cx-Programmer disponible sur le rseau (cf Bibliographie).
Avant de lancer le logiciel, votre programme doit tre formalis proprement sous la forme d'un GRAFCET. Sur ce Grafcet, chaque tape aura un numro bien sr (1,2,3) mais aussi chaque transition (t0_1 par exemple pour la transition de l'tape 0 vers l'tape 1).
A chaque fois que vous souhaitez faire une modification de votre programme, il faudra commencer par modifier votre Grafcet. Programme et Grafcet doivent se correspondent parfaitement. La mthode expose ci-dessous pour transformer un Grafcet en Ladder doit tre respecte strictement.
Chargement de la table E/S..................................................................................................... 4 Cration de la table des symboles............................................................................................ 4 1.2 Cration des sections et programme................................................................................... 5 1re tape : la section de calcul des transitions.......................................................................... 6 2nde tape : la section d'volution des tats des tapes. ............................................................ 6 3me tape : la section de calcul des sorties. ............................................................................. 8 1.3 1.4 Compilation, tlchargement, excution et dbogage .......................................................... 8 variables internes et Timers ............................................................................................... 8
Timers ................................................................................................................................... 8 Variables internes ................................................................................................................... 9 2 3 Premiers exercices .................................................................................................................. 9 Programmer sous Cx-Programmer des graphes hirarchiss .....................................................10
Bibliographie ................................................................................................................................10
Du Grafcet au Ladder
1 DU GRAFCET AU LADDER
Pour tre programmable en Ladder, votre Grafcet doit respecter scrupuleusement les rgles du grafcet (cf cours II2). Votre Grafcet crit, vous pouvez passer la phase de programmation.
Le Ladder est aujourd'hui le langage le plus rpandu pour la programmation des automates. Il consiste en un ensemble de rseaux de contacts, semblables des schmas lectriques. La barre de gauche reprsente VCC et celle de droite GND. Dans l'exemple prsent ci-dessous, la bobine S est aliment si les interrupteurs a et (/b ou c) sont ferms. Ce rseau correspond donc l'quation S=a.(/b+c).
c
Les rseaux sont excuts du premier (celui du haut de la premire section) vers le dernier (celui du bas de la dernire section), squentiellement.
1.1
Se rfrer au guide Omron. Vous choisirez comme automate (PLC en anglais) un CJ1M (device type) connect par Ethernet (Network type). Dans la configuration du rseau (Ethernet>settings), vous entrerez alors l'adresse IP de votre automate 192.192.xx.xx et le masque de sous-rseau (255.255.255.0) Cette adresse est l'identifiant de votre automate sur le rseau, elle est indique par une tiquette situe sous l'automate.
Du Grafcet au Ladder
Votre nouveau projet comporte notamment une table de symboles rassemblant les symboles communs tous les programmes de votre projet. Certains symboles sont prsents d'office, ce sont les bits et variables auxquels est dj affecte une fonction (mot indiquant le temps de cycle, bit de premier cycle) une table entres/sorties correspondant aux modules et priphriques de votre automate. une liste de programmes. Dans un projet, vous pouvez avoir plusieurs programmes, correspondant chacun un Grafcet. Ces programmes peuvent tourner en parallle, tre activs, dsactivs selon les besoins. Nous verrons cela plus tard.
Vous avez alors dans la table E/S de votre projet les diffrents modules de votre automate (Ethernet, bloc 16 entres et bloc 16 sorties.)
Du Grafcet au Ladder
L'automate CJ1M que vous programmez est un automate modulaire. Il est pourvu ici d'un bloc de 15 entres Tout ou Rien l'emplacement 0 et d'un bloc de 15 sorties Tout ou Rien l'emplacement 1. Bit associ une entre : 0.00 0.15 Bit associ une sortie : 1.00 1.15 C'est aussi ici que vous matrialiserez les tapes en leur affectant un bit (H0.0 H511.15) et un nom (X0, X1). De mme pour les transitions, vous leur affecterez un bit (A448.0 A959.15) et un nom (t0_1, t1_2). Vous pouvez enregistrer votre table des symboles pour la rutiliser ensuite dans tous vos projets. Pour cela, cliquez sur Symboles avec le bouton droit puis choisissez Fichiers rutilisables>Enregistrez sous.
1.2
Arrive maintenant la phase de programmation. Vous devez diviser votre ensemble de rseaux de contacts en plusieurs sections (voir page 1-11 du guide)
Vous crerez trois sections : section1- calcul des transitions section2- volution des tats (active, inactive) des tapes section3- calcul des sorties
Du Grafcet au Ladder
La transposition d'un Grafcet en Ladder n'est pas une tche complexe. Elle demande de travailler avec mthode et de respecter scrupuleusement les rgles dictes. Pour un fonctionnement correct, il faut d'abord calculer toutes les transitions, ensuite faire voluer les tats des tapes et enfin calculer l'tat des sorties.
X0
0 t0_1 1 t1_0 /a a.(/b+c)
t0_1
Quand vous avez crit les rseaux de toutes les transitions, vous pouvez passer la section suivante.
Du Grafcet au Ladder
elle tait active dans le cycle prcdent et que les transitions suivantes ne sont pas franchie. l'une des transitions prcdentes est franchie actuellement. L'activation est prioritaire sur la dsactivation.
t0_1
X1
X1
t1_0
Si il y en a plusieurs, les conditions d'activation se mettront en parallle (cas d'une convergence audessus de l'tape) et les conditions de dsactivation en srie (cas d'une divergence au-dessous de l'tape).
Lors du premier cycle de l'automate, il faut mettre l'tat actif les tapes initiales (cela rajoute une condition d'activation) et l'tat inactif toutes les autres. (cela rajoute une condition de dsactivation mais qui cette fois est prioritaire.). On utilise le bit interne P_First_Cycle vrai seulement pendant le premier cycle automate pour assurer cette mise l'tat initial des tats des tapes. On obtient les rseaux suivants :
P_First_Cycle
t1_0
X0
X0
t0_1
t0_1
P_First_Cycle X1
X1
t1_0
Du Grafcet au Ladder
Dsormais, les bits d'tapes (X0, X1) nous donnent une image des tapes actives et inactives. Il reste juste calculer l'tat des sorties, suivant les actions associes aux tapes.
On ne peut avoir qu'une bobine et donc qu'un rseau par sortie. Sinon, il pourrait y avoir un rseau demandant l'activation d'une sortie puis le rseau suivant demandant sa dsactivation, ce qui ne serait pas simple grer. (En Ladder, les rseaux tant excuts squentiellement, c'est le dernier qui a parl qui s'impose) A vous de lister l'ensemble des tapes qui activent une sortie. Par exemple, si la lampe L est allume pendant l'tape 1 et l'tape 3, on aura le rseau suivant :
X1
X3
Remarque : pensez utiliser les raccourcis clavier pour le trac des rseaux indiqu dans la fentre, plus CTrl+ pour les traits horizontaux. Les autres raccourcis sont indiqus dans le guide
d'introduction d'Omron.
1.3
Pour compiler et charger le programme, vous vous rfrerez au guide de mise en uvre, partir de la page 2-0. Ensuite, lancez l'excution du programme en mode "monitor" et suivez le guide Omron pour utiliser les fonctions de debug : Watch Windows ( partir de la page 2-5) et Forage ( partir de la page 211).
1.4
Timers
A partir de la page 1-28 sont dcrites les procdures pour insrer un timer (ou temporisateur) dans un programme. Attention, pour utiliser une temporisation dans un programme, il faut d'abord lancer le timer dans l'tape (c'est une action associe l'tape) puis regarder l'tat de la variable associ au 8
Du Grafcet au Ladder
timer dans la transition. Attention, le mme terme est utilis la fois pour dsigner la valeur actuelle du timer (T0000 T4095 suivant le timer choisi, mot de 16 bits) et le drapeau indiquant la fin du dcompte (simple bit indiquant si la temporisation est finie ou non). Suivant le contexte o vous l'utilisez, c'est l'un ou l'autre qui est pris en compte. Il ne peut y avoir d'ambigut.
Variables internes
Dans votre automates, une large plage de mmoire est disponible pour vos variables internes. Pour les tapes et transitions, vous avez dj utilis les zones mmoires accessibles bit bit (mots mmoires H000 H511 et A660 A959). Pour ces mots, on peut accder un seul bit de la manire suivante Hxxx.yy avec xxx allant de 000 511 et yy de 00 15. Par exemple pour accder au bit numro 4 du mot mmoire H211 : H211.04
Vous disposez aussi d'une mmoire de 512 mots (16 bits) nomms W000 W511. Pour les utiliser, il vous suffit de crer dans la table des symboles une variable et de lui affecter un de ces mots.
2 PREMIERS EXERCICES
Pour commencer vous familiariser avec le ladder et Cx-programmer, vous ferez les exercices suivants :
Exercice 1 Dans l'tat initial, la lampe verte est allume. Quand j'appuie sur le bouton blanc, la lampe verte s'teint et la lampe blanche s'allume. Quand j'appuie sur le bouton vert, je reviens dans l'tat initial. Tracer le GRAFCET associ ce cahier des charges. Le programmer en ladder.
Exercice 2 Dans l'tat initial, les deux lampes sont teintes. Quand je tourne le slecteur sur la position gauche, la lampe verte s'allume. Quand je tourne le slecteur sur la position droite, la lampe blanche s'allume. Je reviens dans l'tat initial aprs 4s. Tracer le GRAFCET associ ce cahier des charges. Le programmer en ladder.
Du Grafcet au Ladder
A chaque graphe, on associe un programme. Comme pour la programmation classique des grafcet, chaque programme est constitu de 3 sections : Calculs des transitions Evolution des tapes Mise jour des sorties Une grande rigueur doit tre apport dans la rpartition des variables internes. On peut attribuer les bits mmoire internes de la manire suivante par exemple : h0.0 h0.15 et h2.0 h2.15 et et ainsi de suite Remarque, pour les programmes, on commence utiliser les bits de la zone mmoire auxiliaire (Axxx) partir du bit A660.0. En effet, dans la zone auxiliaire, entre A000.0 et A459.15, nombre de bits sont utiliss par les fonctions de l'automate et ne sont donc pas libres pour le programme utilisateur. A700.0 A700.15 et A702.0 A702.15 pour le graphe de production normale (tapes 0 et 1) pour le graphe de chargement (tapes 20 24)
Les variables utiliss par tous les programmes (la position du plateau, le contenu des emplacements) sont dfinis en variables "globales", dans la table des symboles accessible tous les programmes. Attention, il ne faut pas que deux programmes actifs en mme temps aient le droit de modifier une mme variable, sans prendre de grandes prcautions (le plus simple est de n'autoriser qu'un programme modifier la variable et les autres la lire). En variables locales, on dfinira les variables lies aux tapes et transitions, y compris celles que l'on utilise en lecture seule.
BIBLIOGRAPHIE
API_du_Grafcet_au_Ladder_v3.pdf : le prsent document cours_II2.pdf : le cours d'automatismes industriels de DUT 1re anne. R120-FR2-01+CX-Progr+IntroGuide.pdf : le guide d'introduction au logiciel OMRON CX-Programmer W340FR13_CJ_CS_Manuel_Programmation.pdf : le manuel regroupant l'ensemble des fonctions de l'automate OMRON CJ1. Ces quatres documents sont disponibles aux adresses suivantes : http://iutcachanupsud.free.fr http://formation.u-psud.fr
10