Beruflich Dokumente
Kultur Dokumente
ELE4202
Deuxième laboratoire
Exercice sur le Grafcet
Nous avons vu au cours que les diagrammes à relais seuls ne permettent pas l'implantation
simple de séquences d'actions conditionnelles. Pour permettre une programmation efficace des
automatismes nécessitant une séquence complexe, le langage Grafcet a été présenté au cours. Le but de
l'exercice pour cette deuxième séance de laboratoire est de maîtriser par quelques exemples
l'implantation de séquences dans le logiciel PL7. Nous utiliserons le même système que pour la
première séance soit le palan industriel et sa console qui sont reliés à un l'automate TSX Premium. Une
lecture préalable des documents concernant PL7 et le module de compteurs rapides est nécessaire à la
réalisation de cette séance d'exercice.
Éléments à implanter
Ressources disponibles
Les tableaux qui suivent illustrent l'attribution des entrées / sorties de l'automate aux différentes
fonctions que nous venons de mentionner. La mise en place des comportements décrits dans la partie
« précision » de ces tableaux doit être effectuée par le programme que nous allons développer.
Assignation des adresses du module TSX DSY 16T2 (sorties tout-ou-rien 24 VCC)
Adresse Objet physique / Symbole Précision
%M48 Console - Indicateur 0 / Led0 Sortie fonction oscillateur unitaire
%M49 Console - Indicateur 1 / Led1 Inutilisé dans cet exemple...
%M50 Console - Indicateur 2 / Led2 Inutilisé dans cet exemple...
Pour cet exercice, nous devons utiliser les compteurs rapides pour l'implantation de la boucle
fermée. Le module CTY 2A entre donc en action à cette séance. Le tableau qui suit fourni
l'assignation des adresses de ce module pour la compatibilité simulation / expérimentation.
Configuration de l'application
Comme premier exercice simple, nous vous demandons simplement de refaire un oscillateur
unitaire, mais en utilisant cette fois le Grafcet plutôt que le diagramme à relais. La procédure est
simple: une étape pour le cycle actif de l'oscillateur et une étape pour son cycle inactif. Vous
obtiendrez donc un Grafcet avec deux étapes et deux transitions. Puisque nous voulons un oscillateur
unitaire sans contrôle et que le Grafcet reste par définition au moins un cycle dans chaque étape, les
transitions seront toujours vraies (condition « =1 »). Il ne vous reste qu'à assigner l'action d'allumer
Le résultat final devrait ressembler à l'illustration qui suit. Notez l'absence de traitements
préliminaires pour cette application très simple. Un exemple de transition avec la réceptivité « =1 » est
aussi présenté sur l'illustration.
Quand cet exemple est exécuté sur l'automate, pouvez-vous voir l'indicateur clignoter comme
dans la séance précédente? Pourquoi? (Indice: exécution en mode cyclique plutôt que périodique...)
Le but de cet exercice est simplement de faire que le palan se déplace automatiquement de
gauche à droite d'une limite à l'autre du rail avec la séquence suivante:
Le détail du mode manuel a été traité dans l'exercice précédent en diagramme à relais et le code
peut être réutilisé directement en remplaçant simplement la condition d'activation Inter0 par l'étape
représentant ce mode dans le Grafcet de l'exemple. N'oublier pas aussi de traiter l'arrêt d'urgence qui
doit interrompre les déplacements dans tous les modes (automatique et manuel)...
Typiquement, chaque comportement de la séquence est attribué à une étape du Grafcet. Ainsi
vous aurez une étape qui va à gauche, une étape qui va à droite, une autre étape qui va à gauche, une
étape d'attente et une étape pour le mode manuel. Les réceptivités des transitions sont directement
reliées aux conditions de passage d'une étape à l'autre de la séquence (S1, S3, S2, le délai, BP0).
Pour le délai, vous aurez besoin d'un temporisateur qui sera implanté en diagramme à relais
comme pour l'exercice précédent. Prenez le temporisateur %T0 et configurez-le pour un délai de 2
secondes. L'activation du temporisateur sera fonction de l'étape d'attente de votre séquence. La sortie
du temporisateur est ensuite affectée à un bit temporaire (%M0 par exemple) et ce bit est utilisé comme
réceptivité pour la transition vérifiant le délai...
Au cours, nous avons vu comme exemple d'implantation en Grafcet le cas des déplacements en
boucle fermée. Le but de ce dernier exercice de programmation est de vous faire programmer cet
exemple dans PL7 et de le rendre fonctionnel sur le système. Ce que nous voulons obtenir est une
structure qui permet le déplacement du palan selon une consigne spécifiée par les interrupteurs
0,1,2,8,9,10 de la console de la manière suivante:
Veuillez noter que les consignes doivent être additives: par exemple si j'enclenche les
interrupteurs 0 et 1, la position de consigne est la position actuelle incrémentée de 1.50 mètre. Le
traitement de la consigne est un très bon exemple d'opération à effectuer dans les traitements
préliminaires.
Une fois la position de consigne atteinte, la séquence doit retourner en attente de consigne. Pour
le détail de la séquence de la boucle fermée, vous pouvez vous référer aux notes de cours qui présente
l'exemple à ce sujet.
Physiquement, il faudra aussi s'assurer que le palan commence en position connue sur le rail
pour que la lecture de position soit valide. Le meilleur moyen d'avoir cette assurance est de faire
déplacer le palan à gauche jusqu'à ce que S1 soit dépassé (front descendant), puis ensuite à droite
jusqu'à ce que le chariot touche S1 de nouveau. À ce moment, on peut remettre le compteur horizontal
à zéro et considérer cette position comme X=0. Il faut absolument effectuer cette séquence
d'initialisation au début du programme. D'ailleurs, n'oubliez pas d'activer les compteurs... Il est
fortement conseiller de lire quelques fois le document sur le module de compteurs rapides avant de
procéder à cet exercice d'implantation afin de ne pas avoir de mauvaises surprises lors des tests (même
en simulation).
Conclusion de la séance
Avec les notions que nous venons de couvrir, vous avez maintenant tous les outils nécessaires
pour effectuer l'implantation d'un automatisme dans le logiciel PL7. Vous pouvez maintenant
configurer l'automate, programmer les sections en diagramme à relais, programmer les sections en
Grafcet et faire l'interface entre les deux types de programmation via les traitements préliminaires et
postérieurs. Il ne reste en fait qu'un élément du logiciel à découvrir: la programmation des interfaces
graphiques que nous verrons à la prochaine séance. Avec ce dernier élément, vous pourrez sans
problèmes débuter le projet.