6
T.P. : Compteurs, variables et afficheurs dans Automgen www.gecif.net Page 1 / 6 Section : S Option : Sciences de l’ingénieur Discipline : Génie Électrique Compteurs, variables et afficheurs dans Automgen Domaine d’application : Traitement programmé de l’information Type de document : Travaux Pratiques Classe : Première Date : Mise en situation et objectifs du TP L’objectif de ce TP est de découvrir l’utilisation des compteurs et des variables utilisateurs dans Automgen, que ce soit pour la conception d’un système logique combinatoire (sous forme d’un logigramme) ou pour un système logique séquentiel (sous forme d’un grafcet). Les notions abordées dans ce TP sont : Utilisation des compteurs dans Automgen Utilisation des variables utilisateurs Utilisation d’une dynavue pour la mise au point du programme Ajout d’un afficheur sur le pupitre pour visualiser la valeur d’une variable numérique Ce TP est structuré en 2 parties : La partie apprentissage vous explique les principes de base (liste non exhaustive) à connaître La partie application dans laquelle vous devez proposer une solution à une problématique donnée Travail demandé I – Partie apprentissage Cette première partie va vous montrer des nouvelles syntaxes, des nouveaux principes et des nouveaux opérateurs utilisables dans votre projet Automgen, que votre programme soit sous forme d’un logigramme ou d’un grafcet. Toutes les informations données dans cette première partie ne seront ni rappelées dans la partie application, ni rappelées dans les futurs TP Automgen et doivent être mémorisées afin de les utiliser dans les TP futurs Il vous appartient donc de retenir le contenu de cette première partie et de ressortir de vous-même ce document dans les TP futurs en cas de besoin : ce TP vous servira par la suite de document ressource pour Automgen. I – 1 – Syntaxe du logiciel Automgen Automgen est un atelier d'automatisme, de supervision et de simulation interactive des systèmes. Il permet de : Créer un système logique combinatoire dont le fonctionnement est décrit par un logigramme Créer un système logique séquentiel dont le fonctionnement est décrit par un grafcet Automgen permet d’utiliser différents types de variables (des entrées, des sorties, des temporisations, etc.), ayant chacun un rôle bien défini. La syntaxe de chaque type de variable est normalisée selon le tableau suivant : Type de variable Syntaxe Automgen les entrées i0 à i23 les sorties o0 à o15 les temporisations t0 à t9999 les étapes du grafcet x0 à x9999 les compteurs c0 à c9999 les variables utilisateur m200 à m9999 Remarques : Les variables m0 à m199 sont réservés pour le système et sont appelés les variables système Pour programmer votre application seules les variables à partir de m200 sont disponibles Les variables m200 à m9999 sont appelées les variables utilisateur La table des symboles permet de personnaliser le nom de tout type de variable Automgen ne distingue pas les majuscules et les minuscules dans les noms des variables ou des symboles Les noms normalisés (i0, o2, t3, x7, m204, c9, etc.) sont affichés en VIOLET sur le folio Les symboles personnalisés (créés dans la table des symboles) sont affichés en VERT sur le folio Les opérateurs ( + . / etc.) sont affichés en BLEU sur le folio Les commentaires sont affichés en NOIR sur le folio : cliquez sur le fond du folio pour ajouter un commentaire Afin de ne pas « masquer » le type des variables, seuls les noms normalisés seront utilisés dans les exemples de cette partie apprentissage sans créer de table de symboles : ainsi la première lettre d’une variable rappelle son type. Pour les 5 paragraphes suivants, effectuez en pratique dans Automgen tous les exemples demandés, puis observez leur fonctionnement dans le but de mémoriser les principes nouveaux et de les reproduire dans la partie application.

Compteurs Variables Et Afficheurs Sous Automgen

Embed Size (px)

DESCRIPTION

Automgen Cours

Citation preview

  • T.P. : Compteurs, variables et afficheurs dans Automgen www.gecif.net Page 1 / 6

    Section : S Option : Sciences de lingnieur Discipline : Gnie lectrique

    Compteurs , var iab les et a f f i cheurs dans Automgen Domaine dapplication :

    Traitement programm de linformation Type de document : Travaux Pratiques

    Classe : Premire

    Date :

    M i s e e n s i t u a t i o n e t o b j e c t i f s d u T P

    Lobjectif de ce TP est de dcouvrir lutilisation des compteurs et des variables utilisateurs dans Automgen, que ce soit pour la conception dun systme logique combinatoire (sous forme dun logigramme) ou pour un systme

    logique squentiel (sous forme dun grafcet). Les notions abordes dans ce TP sont :

    Y Utilisation des compteurs dans Automgen Y Utilisation des variables utilisateurs Y Utilisation dune dynavue pour la mise au point du programme Y Ajout dun afficheur sur le pupitre pour visualiser la valeur dune variable numrique

    Ce TP est structur en 2 parties :

    Y La partie apprentissage vous explique les principes de base (liste non exhaustive) connatre Y La partie application dans laquelle vous devez proposer une solution une problmatique donne

    T r a v a i l d em a n d

    I Partie apprentissage

    Cette premire partie va vous montrer des nouvelles syntaxes, des nouveaux principes et des nouveaux oprateurs

    utilisables dans votre projet Automgen, que votre programme soit sous forme dun logigramme ou dun grafcet.

    Toutes les informations donnes dans cette premire partie ne seront ni rappeles dans la partie application, ni

    rappeles dans les futurs TP Automgen et doivent tre mmorises afin de les utiliser dans les TP futurs

    Il vous appartient donc de retenir le contenu de cette premire partie et de ressortir de vous-mme ce document dans les TP futurs en cas de besoin : ce TP vous servira par la suite de document ressource pour Automgen.

    I 1 Syntaxe du logiciel Automgen

    Automgen est un atelier d'automatisme, de supervision et de simulation interactive des systmes. Il permet de :

    Y Crer un systme logique combinatoire dont le fonctionnement est dcrit par un logigramme Y Crer un systme logique squentiel dont le fonctionnement est dcrit par un grafcet

    Automgen permet dutiliser diffrents types de variables (des entres, des sorties, des temporisations, etc.), ayant

    chacun un rle bien dfini. La syntaxe de chaque type de variable est normalise selon le tableau suivant :

    Type de variable Syntaxe Automgen les entres i0 i23 les sorties o0 o15

    les temporisations t0 t9999 les tapes du grafcet x0 x9999

    les compteurs c0 c9999 les variables utilisateur m200 m9999

    Remarques : Y Les variables m0 m199 sont rservs pour le systme et sont appels les variables systme Y Pour programmer votre application seules les variables partir de m200 sont disponibles Y Les variables m200 m9999 sont appeles les variables utilisateur Y La table des symboles permet de personnaliser le nom de tout type de variable Y Automgen ne distingue pas les majuscules et les minuscules dans les noms des variables ou des symboles Y Les noms normaliss (i0, o2, t3, x7, m204, c9, etc.) sont affichs en VIOLET sur le folio Y Les symboles personnaliss (crs dans la table des symboles) sont affichs en VERT sur le folio Y Les oprateurs ( + . / etc.) sont affichs en BLEU sur le folio Y Les commentaires sont affichs en NOIR sur le folio : cliquez sur le fond du folio pour ajouter un commentaire

    Afin de ne pas masquer le type des variables, seuls les noms normaliss seront utiliss dans les exemples de cette

    partie apprentissage sans crer de table de symboles : ainsi la premire lettre dune variable rappelle son type. Pour les 5 paragraphes suivants, effectuez en pratique dans Automgen tous les exemples demands, puis observez

    leur fonctionnement dans le but de mmoriser les principes nouveaux et de les reproduire dans la partie application.

  • T.P. : Compteurs, variables et afficheurs dans Automgen www.gecif.net Page 2 / 6

    I 2 Utilisation de nouveaux oprateurs dans les rceptivits et dans les actions

    I 2 1 Les oprateurs utilisables dans une rceptivit :

    En utilisant lassistant ralisez le grafcet ci-contre, lancez la simulation, agissez sur les

    entres i0 et i1 tout en observant les conditions dactivation des tapes et lvolution du grafcet, puis rpondez aux questions suivantes :

    A quelle condition la rceptivit i0 est-elle vraie ? si i0=0 si i0=1

    A quelle condition la rceptivit /i1 est-elle vraie ? si i1=0 si i1=1

    Est-il possible que toutes les rceptivits de ce grafcet restent vraies simultanment ?

    OUI : expliquez alors quelle condition :

    NON : expliquez alors pourquoi :

    On appelle front montant linstant ou une entre passe du niveau bas au niveau haut (passage de 0 1), et front descendant linstant o une entre passe du niveau haut au niveau bas (passage de 1 0). Sachant que les oprateurs et utiliss dans les rceptivits sobtiennent en utilisant les touches haut et bas du clavier (symbolises par et sur le clavier), ralisez le grafcet ci-contre puis rpondez aux questions suivantes :

    A quelle condition la rceptivit i0 est-elle vraie ? lors dun front montant sur i0 lors dun front descendant sur i0

    A quelle condition la rceptivit i1 est-elle vraie ? lors dun front montant sur i1 lors dun front descendant sur i1

    Est-il possible que toutes les rceptivits de ce grafcet restent vraies simultanment ?

    OUI : expliquez alors quelle condition :

    NON : expliquez alors pourquoi :

    Conclusion : dans une rceptivit on peut tester une entre sur niveau (dtection du niveau haut ou du niveau bas) ou encore sur front (dtection du front montant ou du front descendant) en utilisant les oprateurs /, et .

    I 2 2 Les oprateurs utilisables dans une action :

    Dans un nouveau folio ralisez le logigramme suivant puis rpondez aux questions poses :

    Quel est ltat logique de o4 lorsque i0=0 ? 0 1 Quel est ltat logique de o4 lorsque i0=1 ? 0 1

    Modifiez votre logigramme comme ci-dessous en ajoutant loprateur N dans laction puis rpondez aux questions :

    Quel est ltat logique de o4 lorsque i0=0 ? 0 1 Quel est ltat logique de o4 lorsque i0=1 ? 0 1

    Ralisez maintenant le logigramme suivant utilisant les oprateurs S, R et I dans les actions et loprateur dans les rceptivits puis rpondez aux questions poses :

    Que se passe-t-il chaque impulsion sur i0 ? o4 est force 0 o4 est force 1 o4 change dtat Que se passe-t-il chaque impulsion sur i1 ? o4 est forc 0 o4 est force 1 o4 change dtat Que se passe-t-il chaque impulsion sur i2 ? o4 est force 0 o4 est force 1 o4 change dtat

    Reliez par un trait chacune des 5 questions suivantes sa bonne rponse et mmorisez jamais ces 5 remarques :

    Quel est le rle de loprateur R dans une action ? Si ltape est active les sorties prsentes sont 0

    Quel est le rle de loprateur S dans une action ? Bascule la sortie 1 quelque soit son tat

    Quel est le rle de loprateur N dans une action ? Change systmatiquement ltat de la sortie

    Quel est le rle de loprateur I dans une action ? Si ltape est active les sorties prsentes sont 1

    Comment ragit une action utilisant aucun oprateur ? Bascule la sortie 0 quelque soit son tat

    Conclusion : dans une action on peut contrler ltat dune sortie ou la manire dont elle bascule en utilisant les oprateurs R, S, I et N. Tous ces nouveaux oprateurs sont utilisables dans un logigramme comme dans un grafcet.

  • T.P. : Compteurs, variables et afficheurs dans Automgen www.gecif.net Page 3 / 6

    I 3 Utilisation dun compteur

    Ralisez le logigramme suivant utilisant le compteur c0 et les oprateurs R et + dans les actions, lancez la simulation puis rpondez aux questions poses (on appelle impulsion le passage de 0 1 suivi dun passage de 1 0) :

    Quel est leffet dune impulsion sur i0 ? le compteur c0 est remis zro le compteur c0 compte Que se passe-t-il lorsque i1 reste 1 ? c0 sincrmente de 1 unit c0 compte en continu

    Modifiez votre logigramme en ajoutant loprateur comme ci-dessous puis rpondez aux questions poses :

    Quel est leffet dun front montant sur i1 ? c0 sincrmente de 1 unit c0 compte en continu Que se passe-t-il lorsque i1 reste 1 ? c0 reste constant c0 compte en continu

    Modifiez votre logigramme en ajoutant loprateur P1 comme ci-dessous puis rpondez aux questions poses :

    A quel moment le compteur c0 sincrmente-t-il ? lactivation de ltape la dsactivation de ltape

    Que se passe-t-il lorsque i1 reste 1 ? c0 reste constant c0 compte en continu

    Modifiez votre logigramme en utilisant loprateur P0 comme ci-dessous puis rpondez aux questions poses :

    A quel moment le compteur c0 sincrmente-t-il ? lactivation de ltape la dsactivation de ltape

    Que se passe-t-il lorsque i1 reste 1 ? c0 reste constant c0 compte en continu

    Videz votre folio, ralisez le grafcet ci-dessous en utilisant lassistant puis rpondez aux questions poses :

    Remarque : la seconde rceptivit marque 1 est une rceptivit toujours vraie et se rdige en crivant =1 dans la transition.

    Quelle est la valeur du compteur c0 au dmarrage ?

    Que se passe-t-il lorsque chaque front montant sur i0 ? c0 reste constant c0 sincrmente

    Le problme de ce grafcet est que le compteur nest pas mis zro au dmarrage : il

    contient une valeur quelconque la mise sous tension du systme. Pour garantir un

    compteur zro, il faudrait mettre laction R c0 dans ltape initiale, mais dans ce cas il serait mis zro systmatiquement chaque front montant sur i0. La solution pour mettre zro un compteur une seule fois au dmarrage est donne ci-dessous.

    On utilise pour cela une divergence en OU, mais ltape initiale est place dans une des branches de la divergence, et non au sommet du grafcet. Crez et testez le grafcet ci-dessous puis rpondez aux questions poses :

    Quelle est la valeur du compteur c0 au dmarrage ?

    Que se passe-t-il chaque front montant sur i0 ? c0 reste constant c0 sincrmente

    Quelle est la plus grande valeur que peut prendre le compteur c0 ?

    Que se passe-t-il lorsque c0 atteint la valeur 5 ? c0 reste 5 c0 est remis 0

    Cet exemple vous a notamment montr :

    Y Comment forcer un compteur 0 au dmarrage (oprateur R) Y Comment tester la valeur dun compteur (oprateur =) Y Comment incrmenter un compteur (oprateur +) Y Comment tester un front montant sur une entre (oprateur ) Y Lutilit dune rceptivit toujours vraie (note =1)

    I 4 Utilisation dune variable utilisateur

    Les variables utilisateur permettent de mmoriser une valeur numrique et deffectuer des calculs simples dans votre

    programme (un logigramme ou un grafcet). Les variables utilisateur sont nommes m200 m9999 dans Automgen. Ralisez et testez le logigramme suivant utilisant la variable utilisateur m200 puis rpondez aux questions poses :

  • T.P. : Compteurs, variables et afficheurs dans Automgen www.gecif.net Page 4 / 6

    Quel est leffet dun front montant sur i0 ? la variable m200 prend la valeur 14 la variable m200 prend la valeur 2m200+3 Quel est leffet dun front montant sur i1 ? la variable m200 prend la valeur 14 la variable m200 prend la valeur 2m200+3

    Dans le logigramme ci-dessus quelle condition la sortie o4 est-elle active ? si m200=50 (gal ) si m20050 (diffrent de) si m20050 (strictement suprieur)

    Remarques concernant lutilisation des variables utilisateur dans Automgen :

    Y Les variables utilisateur m200 m9999 ne peuvent contenir que des nombres entiers Y Les oprateurs { et } (les accolades) dans une tape permettent dcrire du code littral dans une action Y Le code littral est le langage de bas niveau utilis en interne par Automgen Y Pour donner la valeur 58 la variable m200 il faut utiliser le code littral {m200:=58;} dans une action Y Dans le code littral loprateur := signifie prend la valeur de Y Dans le code littral chaque ligne doit finir par un point-virgule Y Pour faire un calcul on peut utiliser les oprateurs + (addition), (soustraction), * (multiplication) et / (division

    entire) dans le code littral. Exemple : {m204:=47-m200/3;} Y Pour tester la valeur dune variable utilisateur on peut utiliser les oprateurs arithmtiques >,

  • T.P. : Compteurs, variables et afficheurs dans Automgen www.gecif.net Page 5 / 6

    I 7 Rcapitulation de lensemble des oprateurs Automgen connatre

    I 7 1 Les 4 types de rceptivits :

    Dans une rceptivit il est possible de raliser 4 types de tests diffrents comme rsum dans le tableau suivant :

    Les 4 types de rceptivits Exemples Test dune entre (sur niveau ou sur front) i0 /i2 i5

    Test dune temporisation t2

    Test dune tape (sur niveau ou sur front) x4 /x7 x16 Test de la valeur numrique dune variable ou dun compteur m200>8 c0=12

    On peut aussi utiliser plusieurs tests dans la mme rceptivit condition de les relier par des oprateurs logiques.

    I 7 2 Les 4 types dactions :

    Dans une action il est possible dutiliser 4 types de variables diffrents comme rsum dans le tableau suivant :

    Les 4 types dactions Exemples Activation dune sortie o0 Ro4 So9

    Dclenchement dune temporisation t3(4s) Incrmentation ou dcrmentation dun compteur +c0 c23 Affectation dune valeur une variable numrique {m217:=14;} {m358:=m201+c0;}

    On peut aussi raliser plusieurs actions dans le mme rectangle daction condition de les sparer par une virgule.

    I 7 3 Les oprateurs utilisables dans une rceptivit :

    Afin de contrler la manire dont les entres ou les variables sont dtectes ou testes dans une rceptivit il est

    possible dutiliser lensemble des oprateurs suivants.

    Les oprateurs utilisables dans une rceptivit Rle . ET logique

    + OU logique

    / NON logique, dtecte un niveau bas Dtecte un front montant Dtecte un front descendant

    = < >= Compare deux valeurs numriques

    =1 1 logique : condition toujours vraie

    Une rceptivit se rdige entre les dlimiteurs dans un logigramme, ou bien droite dune transition dans un grafcet.

    I 7 4 Les oprateurs utilisables dans une action :

    Afin de contrler la manire dont les sorties ou les variables sont actives ou modifies dans une action il est possible

    dutiliser lensemble des oprateurs suivants.

    Les oprateurs utilisables dans une action Rle , Sparateur pour raliser plusieurs actions

    R Reset : met 0 une sortie ou un compteur S Set : met 1 une sortie I Inversion : complmente ltat de la sortie N Ngation logique : dsactive la sortie P1 Impulsion lactivation de ltape P0 Impulsion la dsactivation de ltape + Incrmente un compteur (y additionne 1)

    - Dcrmente un compteur (y soustrait 1)

    { et } Permet dcrire du code littral

    Une action se rdige dans un rectangle daction, aussi bien dans un logigramme que dans un grafcet.

    Remarques surligner et retenir : Y Loprateur . ne sutilise que dans une rceptivit et na aucun sens dans une action ! Y Loprateur , ne sutilise que dans une action et na aucun sens dans une rceptivit ! Y Loprateur + a deux fonctions diffrentes selon quil est utilis dans une action ou dans une rceptivit Y Pour obtenir la liste exhaustive de tous les oprateurs utilisables consultez la documentation officielle dAutomgen

  • T.P. : Compteurs, variables et afficheurs dans Automgen www.gecif.net Page 6 / 6

    II Partie application

    En utilisant toutes vos connaissances concernant Automgen, proposez une solution sous forme dun grafcet associ

    un pupitre pour chacune des applications suivantes dans lesquelles seule la problmatique rsoudre est indique.

    II 1 Application 1 : le chronomtre

    On dsire raliser un chronomtre possdant 3 boutons monostables nommes START, STOP, et RAZ et dont le fonctionnement doit tre le suivant :

    Y Le chronomtre doit mesurer et afficher le temps 100 ms prs Y Au dmarrage le chronomtre doit tre initialis automatiquement zro Y Une impulsion sur le bouton START lance la mesure du temps qui est alors affiche en temps rel Y Une impulsion sur STOP arrte la mesure du temps et fige laffichage la valeur mesure Y Une impulsion sur RAZ (RAZ=Remise A Zro) remet le chronomtre zro Y Le bouton RAZ na aucun effet si la mesure du temps na pas t arrte par le bouton STOP

    II 1 1 Proposez et validez dans un nouveau projet Automgen une solution compose dun grafcet associ un pupitre pour raliser ce chronomtre. Les trois symboles START, STOP, et RAZ seront crs et connects respectivement aux entres i0, i1 et i2, et le compteur c0 sera utilis pour mesurer le temps.

    II 2 Application 2 : le compteur de passage

    Pour contrler le nombre de voitures prsentes dans un parking souterrain, un dispositif appel compteur de passage a t install. Le compteur de passage permet au gardien du parking de consulter sur un afficheur le nombre exact de voiture prsentes dans le parking, et de pouvoir interdire laccs au parking lorsquil est plein :

    Y Si une voiture entre dans le parking lafficheur sincrmente Y Si une voiture sort du parking lafficheur se dcrmente

    Pour dtecter le sens de passage dune voiture deux capteurs A et B ont t placs lentre du parking, et sont espacs de 10 cm :

    Y Une voiture qui entre active le capteur A avant le B Y Une voiture qui sort active le capteur B avant le A

    Capteur A Capteur B Sens dentre dune voiture

    Sens de sortie dune voiture

    Dans les deux sens de circulation la voiture passera forcment devant les 2 capteurs la fois. Sachant quun capteur

    dlivre un 1 logique en cas de prsence dune voiture devant lui, et dlivre un 0 logique en cas dabsence de voiture,

    les squences dlivres par les deux capteurs et permettant de dtecter le sens de circulation sont les suivantes :

    Squence dlivre par les capteurs

    La voiture

    approche

    Elle passe devant

    le 1er capteur

    Elle passe devant

    les 2 capteurs

    Elle passe devant

    le 2nd capteur

    La voiture

    sloigne

    Une voiture entre A=0 et B=0 A=1 et B=0 A=1 et B=1 A=0 et B=1 A=0 et B=0 Une voiture sort A=0 et B=0 A=0 et B=1 A=1 et B=1 A=1 et B=0 A=0 et B=0

    Le sens de circulation de la voiture est donc dtermin en analysant lordre dans lequel les capteurs A et B sont activs (A, AB, puis B : une voiture entre. B, AB, puis A : une voiture sort).

    II 2 1 Proposez et validez dans un nouveau projet Automgen une solution compose dun grafcet associ un pupitre pour raliser ce compteur de passage. Le pupitre doit contenir 2 boutons bistables A et B simulant les capteurs lentre du parking et un afficheur indiquant le nombre de voiture prsente dans le parking :

    Y Les capteurs A et B seront connects aux entres i0 et i1 dans la table des symboles Y Le nombre de voitures sera comptabilis dans la variable N associ au compteur c0 dans la table des symboles Y Au dmarrage on considre que le parking est vide (N=0) Y En simulant lentre dune nouvelle voiture avec les boutons A et B le compteur doit sincrmenter Y En simulant la sortie dune voiture avec les boutons A et B le compteur doit se dcrmenter Y Si N=0 (parking vide) alors la sortie dune voiture ne doit pas modifier la valeur du compteur (qui doit rester 0)

    II 2 2 Ajoutez 3 voyants VERT, ORANGE et ROUGE sur le pupitre indiquant le remplissage du parking : Y On considre que le parking a une capacit de 10 places seulement (pour pouvoir le remplir rapidement) Y Les voyants VERT, ORANGE et ROUGE seront connects respectivement aux sorties o0, o1 et o2 Y Le voyant VERT doit tre allum lorsque le nombre de places vides est suprieur ou gal 4 Y Le voyant ORANGE doit tre allum lorsque le nombre de places vides est strictement infrieur 4 Y Le voyant ROUGE doit tre allum lorsque le parking est plein (10 voitures prsentes, aucune place vide)

    II 2 3 Sachant que chaque voiture entrante paye 2 pour se garer au parking, ajoutez un second afficheur au pupitre indiquant la somme prsente dans la caisse tout moment de la journe. Cette somme dargent sera

    mmorise dans la variable CAISSE associe la variable utilisateur m200 : une voiture entrante incrmente la caisse de 2 , une voiture sortante na aucun effet sur le contenu de la caisse, et au dmarrage la caisse est vide.