cours step7

Upload: rhimou-afailal

Post on 17-Jul-2015

1.251 views

Category:

Documents


5 download

TRANSCRIPT

Laboratoire #1 GPA-140 : Lingnieur en production automatise cole de technologie suprieure Dpartement de gnie de la production automatise

GPA-140 LINGNIEUR EN PRODUCTION AUTOMATISE Session Hiver 2006LABORATOIRE #1

Objectif: Ce laboratoire a pour objectif la prise de contact avec un automate programmable. Pour cette premire fois, vous aurez programmer diverses quations de logique boolenne et mettre en uvre sur lautomate lautomatisation dun systme. Matriel mis disposition: Vous avez votre disposition : - un bloc contrleur - un ordinateur - un logiciel de saisie STEP 7 Pour la prise de contact avec lautomate, lapproche choisie sera de faire une srie dexercices qui permettront de dcouvrir divers aspects de lautomate utiliss en laboratoire.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 1 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie #1 : Comment crer un projet ?Lancer le logicielSur votre ordinateur, (1) localisez litem Programs du menu Dmarrer puis litem Simatic du menu Programs et enfin (2) cliquez sur litem SIMATIC Manager du menu Simatic. La figure ci-dessous montre la structure de ces menus (qui peut varier lgrement, selon la configuration de lordinateur).

Cration dun projetLe logiciel SIMATIC Manager tant maintenant en marche, (3) cliquez sur litem Fichier pour ouvrir le menu droulant. Ensuite, (4) cliquez sur litem Assistant Nouveau Projet pour lancer lassistant aidant la cration dun nouveau projet. La figure au haut de la page suivante montre lenvironnement du SIMATIC Manager . Notez au bas de la fentre la ligne dtat qui vous indique la fonction de litem choisi dans le menu droulant.

Selon la configuration du logiciel, lassistant peut souvrir automatiquement, rendant la procdure de lancement de lassistant inutile. Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006) Page 2 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Lassistant tant lanc, cette premire fentre souvre lcran. Cest la fentre dintroduction de lassistant.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 3 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(5) Cliquez sur Suivant. Cette seconde fentre prend la place de la fentre prcdente. Cest la premire des trois fentres de configuration du projet.

Vous devez choisir le modle du CPU de lautomate programmer. En laboratoire, nous utilisons le CPU314IFM. (6) Veuillez donc le slectionner parmi la liste du menu droulant qui vous est prsent. Le numro de rfrence est simplement le numro de catalogue de cette pice ( utiliser si vous voulez passer une commande chez Siemens). (7) Le champ nom de la CPU peut tre modifi pour identifier la fonction ou lemplacement de ce CPU dans lusine (par exemple lautomate ayant ce CPU est en charge de la Station de pompage ). (8) Enfin, ladresse de communication MPI doit tre fixe 2. (9) Une fois ces oprations faites, cliquez sur Suivant. Cette troisime fentre apparat alors. Cest la deuxime fentre de configuration du projet.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 4 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(10) Il faut choisir les blocs dorganisationnels utiliser. Pour ce premier projet, nous nutiliserons que le bloc OB1. Ce bloc contient le programme qui sera continuellement excut par lautomate. Lautomate programmable excute la squence suivante de faon rptitive, tant quil est en mode dexcution : Lecture de ltat des entres (pour savoir ltat logique des capteurs, des boutons, ); Excution complte du bloc OB1; criture de ltat des sorties obtenue suite lexcution du bloc OB1 (pour allumer des voyants, dmarrer des moteurs, dplacer des vrins, ).

(11) Il faut aussi choisir le langage de programmation. Lautomate nous permet de le programmer selon les trois langages suivants : LIST : en liste dtat (langage ayant lapparence de lassembleur); CONT : en langage contacts (ou diagrammes chelle); LOG : en logigrammes.

Choisir le langage de programmation contacts (CONT), puis (12) cliquer sur Suivant. Cette dernire fentre apparat alors :

(13) Il vous suffit alors de choisir un nom pour le projet, puis (14) de cliquer sur Crer. Il est important de noter que le nom du projet devra commencer par les 4 lettres de votre code permanent, suivi du nom que vous dsirez donner au projet. Par exemple, les 4 lettres de mon code permanent sont GAUG, puis le nom du projet est premier_programme . Cette approche vous facilitera la tche, car si tout le monde nomme son programme de la mme faon, il sera plus difficile de trouver le vtre. Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006) Page 5 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Lcran du Simatic Manager devrait alors avoir cette apparence :

Dans le Simatic Manager , une fentre souvre. Le titre de cette fentre est le nom du projet, soit GAUG_premier_programme .

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 6 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 2 : Structure dun projet configuration de lautomateStructure dun projetLa structure du projet est montre dans la partie gauche de la fentre identifie GAUG_premier_programme . Le rpertoire de base est identifi par le mme nom que le projet, soit GAUG_premier_programme . Ce rpertoire contient tous les sous-rpertoires et fichiers configurant toutes les composantes dun projet, soit : automates, rseaux, programmes. (1) En cliquant sur le rpertoire Premier programme vous voyez apparatre les items Station SIMATIC 300 et MPI(1) . Le premier item mne la dfinition du matriel utilis dans ce projet, le second sur la configuration du rseau utilis dans ce projet.

Dans le cadre du cours, laspect rseau nest pas abord. (2) En cliquant sur le rpertoire Station SIMATIC 300 (ou sur litem de droite Station SIMATIC 300 ), vous voyez apparatre dans lcran de droite les items Matriel et CPU314 IFM(1) . Le premier item mne la dfinition du matriel utilis dans le projet, en particulier des automates. Le second item mne la programmation de lunique automate du projet (puisque lon en a quun par table) nomm CPU314 IFM(1) .

Configuration du matriel de lautomate(3) En double cliquant sur Matriel , vous lancez le logiciel de configuration de matriel. La fentre suivante apparat :

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 7 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Dans la fentre de configuration du matriel on voit apparatre plusieurs rgions. Dune part, la fentre de configuration qui montre la localisation des modules dans les rails de montage. En position 2, nous retrouvons le CPU de lautomate identifi par le nom CPU314 IFM(1) . En dessous, nous retrouvons une description plus dtaille de la configuration de ces modules. Ainsi, le CPU en position 2, possde un numro de pice (Rfrence), une adresse rseau gale 2 (Adresse MPI), un certain nombre dentres numrotes de 124 155 et un certain nombre de sorties numrotes de 124 155. Lautomate qui sera utilis en laboratoire comporte directement sur le module CPU vingt (20) entres logiques et seize (16) sorties logiques. Une entre logique ayant une valeur gale 0 ou 1, un seul bit suffit la reprsenter. Les entres logiques sont numrotes de la faon suivante : I(octet).(bit) Loctet peut prendre les valeurs suivantes : 124, 125 ou 126. Le bit peut prendre les valeurs 0, 1, 2, 3, 4, 5, 6, ou 7. La figure suivante montre la position de chacun des bits dans loctet.76543210

BIT OCTETDe mme, une sortie logique ayant une valeur gale 0 ou 1, un seul bit suffit la reprsenter. Les sorties logiques sont numrotes de la faon suivante : Q(octet).(bit) Loctet peut prendre les valeurs suivantes : 124 ou 125. (4) En double cliquant sur le module CPU de cette liste, la fentre de configuration du CPU souvre :

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 8 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

La page de longlet Gnral contient une foule dinformation sur le module CPU (compltez les champs): La taille de la mmoire : ______ Ko; Le nombre dentres digitales : _____ entres; Le nombre de sorties digitales : ______ sorties; Le nombre dentres analogiques : _____ entres; Le nombre de sorties analogiques : ______ sorties; La vitesses dexcution de 1000 instructions logiques : ______ ms/Kinst; Le numro de rfrence; Lemplacement (chssis 0, position 2); La station rseau (il ny a pas de rseau). Une foule dautres onglets donnent accs des fonctions avances. (5) En cliquant longlet Cycle/Mmento de cadence , la fentre suivante apparat.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 9 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Le temps de surveillance de cycle est lintervalle de temps maximal entre deux initialisations du chien de garde . Le chien de garde est un dispositif qui surveille continuellement le processeur du module CPU. Si le processeur fonctionne correctement, il initialise le chien de garde intervalle rgulier. Si le processeur est dfaillant, il ninitialisera plus le chien de garde. Ds que la dernire initialisation remonte un dlai suprieur au temps de surveillance, le chien de garde bloque le fonctionnement du processeur. Cette scurit assure quun processeur dfaillant ne risque pas de causer de graves incidents. Le mmento de cadence permet de dfinir un octet de mmoire interne qui fera clignoter ses 8 bits 8 frquences diffrentes, ce qui peut tre utilis pour faire clignoter des voyants. Lautomate utilis en laboratoire comporte quelques centaines doctets de mmoire interne identifis sous le nom mmento . Un bit de mmento est identifi de la faon suivante : M(octet).(bit) Ultrieurement, nous utiliserons ces mmentos pour mmoriser ltat des GRAFCET programms dans lautomate. (6) Ne pas activer de mmento de cadence. (7) Fermer la fentre. Lcran redevient comme celui montr ci-dessous.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 10 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Dans la partie de droite de cette fentre, on retrouve une autre fentre qui contient la liste du matriel de lautomate. Cette liste comprend les lments suivants : PROFIBUS-DP : quipements pour le rseau; SIMATIC 300 : modules des automates de la srie 300; SIMATIC 400 : modules des automates de la srie 400; SIMATIC PC Based Control; STATION PC SIMATIC.

Lautomate que nous avons sous la main tant quip dun CPU de type 314, il fait partie de la srie 300. (8) Ajoutons le module dalimentation la configuration. Ce module se retrouve dans le rpertoire PS-300. Le module dalimentation est situ gauche du module CPU. Il est identifi PS307 2A. Pour lajouter la configuration, il suffit de cliquer sur cet item et le glisser vers la ligne 1 du rail de droite.

(9) Sauvegarder cette configuration en cliquant litem Enregistrer du menu droulant Station. Fermer la fentre.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 11 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 3 : criture du programme pour lautomateStructure dun projet (suite)(1) En cliquant sur le rpertoire Programme S7 vous voyez apparatre les items Sources , Mnmoniques et Blocs . Le premier item mne la liste de fichiers utilisant des logiciels spcialiss pour programmer lautomate avec des langages avancs.

Le second item vers la liste des blocs crs pour lautomate avec le logiciel STEP 7 . Le troisime item permet de lancer le logiciel de dfinition de mnmoniques (nous y reviendrons plus tard). (2) Cliquez sur le rpertoire Blocs (ou sur litem Blocs ). La fentre de droite devient alors :

Litem identifi OB1 est le bloc organisationnel rsultant de la cration du projet. (3) Double cliquez sur litem OB1 pour lancer le logiciel STEP 7 . La fentre de lditeur apparat alors.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 12 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Programmation avec le logiciel STEP 7Voici la fentre de lditeur STEP 7 :

Dans la fentre de gauche, nous retrouvons la page de lditeur de programme. On y retrouve : Un champ pour insrer le titre du bloc (optionnel); Une zone de commentaire pour dcrire la fonction du bloc (optionnel); Un ensemble de rseaux (ou barreaux) ayant : o Un champ pour insrer le titre du rseau (optionnel); o Une zone de commentaire pour le rseau (optionnel); o La zone de programmation du rseau. Dans la fentre de droite, nous retrouvons lensemble des lments de programme ou fonctions disponibles pour cet automate. Maintenant, voyons comment programmer un barreau de langage contacts. Le barreau programmer sera :

(4) Positionner le curseur au dbut de la zone de programmation du rseau 1 (voir image cidessous).

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 13 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(5) Cliquez ensuite sur licne de contact normalement ouvert, puis inscrire le numro du contact dentre I124.0. (6) Pour complter le rseau, positionner le curseur la fin de la zone du rseau 1 (voir image ci-dessous), puis cliquez sur licne de la bobine de sortie et inscrire le numro de la bobine, soit Q124.0.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 14 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Une fois le premier barreau programm, programmons ensuite le barreau suivant :

Il faut introduire un nouveau rseau pour programmer ce nouveau barreau.

(7) Pour ce faire, cliquez ensuite sur licne de nouveau rseau. Le rseau 2 apparat tel que montr ci-dessous :

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 15 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(8) Programmer la premire ligne du barreau tel que montr la figure suivante, puis inscrire les adresses.

(9) Pour placer le contact Q124.7 en parallle avec le contact I124.2, il faut ouvrir une branche. Pour ouvrir la branche, il faut placer le curseur sur le contact I124.2 et appuyer sur la touche F8.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 16 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(10) Ajouter alors le contact Q124.7 sur la nouvelle branche.

(11) Il faut maintenant fermer cette branche. On y arrive en appuyant sur la touche F9. Le rseau 2 aura donc cette apparence.

(12) Sauvegarder ce programme en cliquant sur loption Sauvegarde du menu droulant Fichier .

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 17 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 4 : Chargement du programme dans lautomateStructure de lautomateLautomate que vous utilisez en laboratoire possde un module de source dalimentation PS307 de 2 Ampres et le module de CPU 314-IFM de la srie S7-300. Le module dalimentation est lextrme gauche, le module de CPU est sa droite. Le module lextrme droite est un module compteur non utilis ici. Sur le module dalimentation (montr ci-dessous) vous retrouvez linterrupteur de mise sous tension de lautomate. Lorsque lautomate est sous tension, le voyant 24 Vcc est au vert pour indiquer que tout est normal.

(1) Mettre lautomate sous tension. Le module de CPU (montr ci dessous) est lunit dans lequel votre programme sera stock.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 18 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Sur le module, nous retrouvons un commutateur de mode. Ce commutateur permet de dterminer si lautomate doit excuter le programme ou non. Ce commutateur est montr en gros plan droite. En mode STOP, lautomate nexcute pas le programme. Dans ce mode, il est possible de transfrer un programme de lordinateur vers lautomate et de transfrer un programme de lautomate vers lordinateur. Il est aussi possible de modifier le programme dans lautomate. En mode RUN, lautomate excute le programme. Dans ce mode, il est possible de transfrer un programme de lautomate vers lordinateur. Il est toutefois impossible de transfrer un programme de lordinateur vers lautomate. Il est aussi impossible de modifier un programme dans lautomate. En mode RUN-P (RUN-PROGRAM), lautomate excute le programme. Dans ce mode, il est possible de transfrer un programme de lordinateur vers lautomate et de transfrer un programme de lautomate vers lordinateur. Il est aussi possible de modifier le programme dans lautomate. (2) Mettre le commutateur en position STOP. Au dessus du commutateur, on retrouve des voyants indiquant ltat de divers paramtres du module de CPU. Ces voyants sont montrs en gros plan droite. Le voyant SF est un voyant rouge de dfaut. Ce voyant sallume si on constate un des dfauts suivants : Dfaillance de la pile (notre automate na justement pas de piles, donc le voyant sera allum); Dfaillance de la carte mmoire; Dfaillance des priphriques. Le voyant BATF est un voyant rouge de dfaut de la pile (notre automate na justement pas de piles, donc le voyant sera allum). Le voyant DC5V est un voyant vert signalant le bon fonctionnement de la tension de 5 Volts. Le voyant RUN est un voyant vert qui sallume lorsque le CPU est en mode RUN. Lors du passage de STOP RUN, le voyant clignote pendant 3 secondes. Le voyant STOP est un voyant jaune qui sallume lorsque le CPU est en mode STOP. Les voyants SFDP, BUSF ne sont utiliss que sur le CPU315-2 DP.

Chargement du programme dans lautomate(3) Pour ce faire, retourner au SIMATIC manager et slectionner litem Blocs. La fentre du SIMATIC manager devrait ressembler :

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 19 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(4) Slectionner alors litem OB1 (Si il y avait eu plusieurs items, on peut utiliser le raccourci [CTRL] A pour les slectionner tous). (5) Ensuite, en utilisant litem charger du menu droulant Systme cible, transfrer le programme dans lautomate.

La fentre suivante apparat :

(6) Cliquer alors sur OUI pour craser lancien programme. Votre programme est maintenant dans lautomate. (7) Pour le tester, mettre le slecteur de mode en RUN. Votre programme est en excution. Appuyez sur le bouton de lentre I124.0 et vrifiez le voyant de la sortie Q124.0. De mme appuyez sur les boutons des entres I124.1 et I124.2 et observez le voyant de la sortie Q124.7. Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006) Page 20 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 5 : Visualisation du programme dans lautomateLtat de fonctionnement du programme dans lautomate peut tre visualis de diverses faons. Bien sr, lobservation des voyants des sorties permet de vrifier ltat des sorties en fonction de ltat des entres. Une autre faon de visualiser, cest via lditeur de programme STEP 7 . (1) Double cliquez sur le bloc OB1. Lditeur est alors lanc et le programme est affich. (2) Pour visualiser ltat des variables dans lautomate, cliquer sur licne lunettes .

Un lment actif est dessin avec un trait vert gras. (3) Appuyez sur les boutons et vrifiez les changements dtat lcran. Notez lindication du mode de fonctionnement sur la ligne dtat au bas de lcran. (4) Mettre lautomate en mode STOP et regarder le changement de mode sur la ligne dtat. (5) Remettre lautomate en mode RUN. Une troisime faon de visualiser est dutiliser litem Visualiser/forcer des variables du menu droulant Systme cible du logiciel STEP 7. Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006) Page 21 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(6) En cliquant sur cet item, une fentre souvre alors :

Il vous suffit alors de spcifier les variables dont il faut surveiller ltat. (7) Inscrivez donc dans la colonne Oprande le nom des variables surveiller (les autres champs se remplissent automatiquement).

(8) Pour voir apparatre la valeur actuelle des paramtres, cliquez sur licne lunettes . La valeur logique apparat sous le format 2#0 ou 2#1. Le prfixe 2# indique simplement que la valeur en suffixe est une valeur binaire. (9) Fermer toutes les fentres et sortir du SIMATIC Manager .

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 22 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 6 : Utilisation dtiquettesLes tiquettes (appeles aussi mnmoniques) permettent de donner aux variables dentres, de sorties ou de mmoire interne un nom plus rvlateur que I124.0 par exemple. Sur votre ordinateur, (1) localiser litem Simatic du menu Dmarrer puis litem STEP 7 du menu Simatic et enfin (2) cliquez sur litem SIMATIC Manager du menu STEP 7. (3) Crer un nouveau projet utilisant un CPU 314-IFM et ayant un bloc OB1. (4) Nommer ce projet GAUG_Secon_ programme . (Remplacer GAUG par les quatre lettres de votre code permanent). (5) Choisir litem Programme S7 du menu de gauche.

Dans le menu de droite, lun des items est identifi par Mnmoniques . (6) Double cliquez sur cet item pour lancer lditeur de mnmoniques. La fentre suivante apparat alors :

Cest lditeur de mnmonique. Par dfaut seul le bloc OB1 possde un mnmonique qui est Cycle Execution (ou excution cyclique).

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 23 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Supposons que nous ayons cinq moteurs ayant chacun une paire de boutons identifis MARCHE et ARRT et un contacteur identifi MOTEUR. On peut utiliser lditeur de mnmonique pour tablir une correspondance entre le nom de ces boutons et les entres de lautomate. Ainsi, (7) associons le mnmonique MARCHE 1 avec lentre I124.0, le mnmonique ARRT 1 avec lentre I124.1 et le mnmonique MOTEUR 1 avec la sortie Q124.0. Cela mne donc cet cran une fois ces informations entres dans lditeur :

La premire colonne du tableau donne la liste des mnmoniques, la seconde colonne loprande correspondant, la troisime colonne le type de donne (dans notre cas des variables boolennes) et la dernire colonne contient les commentaires que lon associe au mnmonique. (8) Poursuivre avec les autres moteurs. Cela donnera le tableau suivant.

(9) Enregistrer cette table et (10) fermer lditeur de mnmonique.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 24 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 7 : Blocs de fonctions (FC)Un bloc de fonction FC correspond une sous-routine appele par dautres blocs. Dans lexemple des moteurs, le circuit de mise en marche et darrt de moteur est toujours le mme. En effet, le circuit suivant est le circuit de commande dun moteur en diagramme chelle :

Comme on possde cinq moteurs, il semble bien inutile de rpter ce programme cinq fois. Il peut tre plus efficace de lcrire quune seule fois. Cest ce que permet de faire les blocs de fonction. Pour crer un bloc fonctionnel, (1) mettre le curseur dans la zone de droite de la fentre de notre projet et (2) appuyer sur le bouton de souris de droite. Le menu suivant apparat :

(3) Choisir litem Insrer un nouvel objet puis litem Fonction . La fentre suivante souvre :

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 25 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Les blocs de fonctions sont identifis par le prfixe FC suivi dun suffixe variant de 1 255. (4) Appelez le bloc FC1 et choisissez CONT . (5) En cliquant OK, le bloc est alors cr. (6) Double cliquez sur le bloc FC1, pour lancer lditeur STEP 7. Dans lditeur STEP 7, notez quil existe une zone de dclaration de variables locales que lon peut utiliser pour dfinir les trois variables importantes, soit MARCHE, ARRT et MOTEUR. Le type de chaque variable est boolen (BOOL) et les deux premires sont des entres (in) et la dernire une sortie (out). (7) Dfinissez les variables pour obtenir le tableau suivant :

Il reste crire le programme dans le bloc FC sous la fentre de dclaration de variables. (8) Entrez ce programme dans le bloc FC et (9) sauvegarder le bloc de fonction.

Il reste maintenant appeler ce bloc cinq reprises avec les contacts dentre et de sortie de lautomate. Pour ce faire, (10) il faut ouvrir le programme principal qui est le bloc OB1.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 26 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Le bloc OB1 doit appeler le bloc FC1 qui contient le sous-programme de commande de moteur. (11) En cliquant sur le + devant litem Blocs FC de la fentre lments de programme , la liste des blocs de fonction existants apparat. (12) En cliquant sur le bloc FC1 et en le glissant sur le rseau 1 du bloc OB1, vous insrez un appel au bloc FC1.

Pour le moteur #1, la mise en marche se fait par MARCHE 1, larrt par ARRT 1 et le signal de sortie est MOTEUR 1. (13) Ajoutez ces contacts autour du bloc FC1 pour obtenir :

(14) Rptez pour les moteurs 2 5. Cela implique de crer de nouveaux rseaux, de glisser sur chaque rseau le bloc de fonction FC1 et dajouter les contacts autour. Note : Lentre EN du bloc FC1 est une entre qui permet de commander lexcution du bloc FC1. Comme il faut que le bloc soit excut lors de tous les cycles, cette entre est branche directement sur la ligne verticale de gauche, sans contacts. (15) Sauvegardez votre bloc OB1, et (16) transfrer le tout (OB1 et FC1) dans lautomate. (17) Testez votre programme. En activant lentre MARCHE dun moteur, la sortie MOTEUR correspondante sallume et reste allume tant que lentre ARRT nest pas actionne.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 27 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 8 : TemporisationsDans lautomate, nous avons accs certaines fonctions dont les compteurs et les temporisations. Ces lments sont fort utiles pour gnrer des dlais dattente ou pour compter des vnements. Les temporisateurs offerts dans lautomate que nous avons sous la main sont de cinq types rsums dans le tableau ci-dessous :

Les temporisations sont identifies par T(nombre), la lettre T indiquant une variable de temporisation et le nombre, le numro de la temporisation (exemple : T12). La dure de la temporisation est indique lentre TV dune temporisation de la faon suivante : Prfixe S5T# Dure avec units de mesure. Ainsi, un temporisateur de 1 minute 45.33 secondes sera programme : S5T#1M45S330MS. Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006) Page 28 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Dans la plupart de nos applications, nous utiliserons une temporisation de la forme retard la monte . Cette temporisation voit sa sortie passer de 0 1 un certain temps prprogramm aprs le passage de 0 1 de lentre. (1) Crez un nouveau projet et dans ce projet, (2) crer un bloc de fonction FC1. Dans le bloc FC1, (3) crer le programme suivant :

Dans ce programme, consiste donc en cinq temporisations commandes par les interrupteurs et qui allumeront des sorties selon ltat de la temporisation correspondante. Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006) Page 29 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(4) Sauvegardez le bloc FC1 et (5) ouvrez le bloc OB1. (6) Insrez lappel au bloc FC1.

(7) Sauvegardez le bloc OB1, et (8) transfrez le tout (OB1 et FC1) dans lautomate (le slecteur de mode de lautomate devra avoir t mis STOP). (9) Testez votre programme dans lautomate. Vous pouvez visualiser le test en ouvrant FC1 et en activant la visualisation. Voici un exemple de visualisation :

(10) Mettez le slecteur de mode de lautomate RUN. (11) Faire une courte impulsion (< 5 sec) sur lentre I124.0. Que se passe-t-il en sortie ? (12) Faire une longue impulsion (> 15 sec) sur lentre I124.0. Que se passe-t-il en sortie ? (13) Faire une courte impulsion (< 5 sec) sur lentre I124.1. Que se passe-t-il en sortie ? (14) Faire une longue impulsion (> 15 sec) sur lentre I124.1. Que se passe-t-il en sortie ? (15) Faire une courte impulsion (< 5 sec) sur lentre I124.2. Que se passe-t-il en sortie ? (16) Faire une longue impulsion (> 15 sec) sur lentre I124.2. Que se passe-t-il en sortie ? (17) Faire une courte impulsion (< 5 sec) sur lentre I124.3. Que se passe-t-il en sortie ? (18) 10 secondes aprs limpulsion en I124.3, faire une impulsion sur lentre I124.4. Que se passe-t-il en sortie ? (19) Faire impulsion sur lentre I124.5. Que se passe-t-il en sortie ? Il est important de noter que les tats observs aux sorties sont les mmes que ceux des variables T correspondantes. Ces tests vous auront permit de voir comment chaque temporisation se comporte aux signaux dentre. Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006) Page 30 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 9 : CompteursLes compteur offerts dans lautomate que nous avons sous la main sont de trois types : CU pour compteur incrmental, CD pour compteur dcrmental et CUD pour compteur incrmental/dcrmental. Les compteurs sont identifies par C(nombre), la lettre C indiquant une variable de comptage, le numro de la temporisation (exemple : C1). La dure de la temporisation est indique lentre PV dune temporisation de la faon suivante : Prfixe C# Nombre. Ainsi, un compteur ayant une valeur initiale de 3 sera programm : C#3. Dans la plupart de nos applications, nous utiliserons un compteur dcrmental. Pour ce compteur comme pour les autres, ltat logique de la sortie est 0 si la valeur du compteur est 0, sinon ltat logique est 1. Dans le mme projet de prcdemment, (1) crez un bloc de fonction FC2. Dans le bloc FC2, (2) crer le programme suivant :

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 31 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

(3) Sauvegardez le bloc FC2 et (4) ouvrez le bloc OB1. (5) Remplacez lappel au bloc FC1 par un appel au bloc FC2.

(6) Sauvegardez le bloc OB1, et (7) transfrez le tout (OB1, FC1 et FC2) dans lautomate (le slecteur de mode de lautomate devra avoir t mis STOP). (8) Testez votre programme dans lautomate. Vous pouvez visualiser le test en ouvrant FC2 et en activant la visualisation. Voici un exemple de visualisation :

Compteur CU (9) Faire une impulsion sur lentre I124.1. Cela active lentre S (set) qui charge la valeur mise lentre PV dans le compteur. Que se passe-t-il en sortie ? (10) Faire une impulsion sur lentre dincrmentation I124.0. Que se passe-t-il en sortie ? Quelle est la valeur du compteur ? (11) Faire une impulsion sur lentre I124.2. Cela active lentre R (reset) qui remet le compteur 0. Que se passe-t-il en sortie ? Compteur CD (12) Faire une impulsion sur lentre I124.4. Cela active lentre S (set) qui charge la valeur mise lentre PV dans le compteur. Que se passe-t-il en sortie ? (13) Faire quatre impulsions sur lentre de dcrmentation I124.3. Que se passe-t-il en sortie ? Quelle est la valeur du compteur ? (14) Faire une impulsion sur lentre I124.4, puis faire une autre impulsion sur lentre I124.5. Cela active lentre R (reset) qui remet le compteur 0. Que se passe-t-il en sortie ?

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 32 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Compteur CUD (15) Faire une impulsion sur lentre I125.0. Cela active lentre S (set) qui charge la valeur mise lentre PV dans le compteur. Que se passe-t-il en sortie ? (16) Faire deux impulsions sur lentre dincrmentation I124.6. Que se passe-t-il en sortie ? Quelle est la valeur du compteur ? (17) Faire quatre impulsions sur lentre de dcrmentation I124.7. Que se passe-t-il en sortie ? Quelle est la valeur du compteur ? (18) Faire des impulsions sur lentre I124.6, puis faire une autre impulsion sur lentre I125.1. Cela active lentre R (reset) qui remet le compteur 0. Que se passe-t-il en sortie ? Il est important de noter que les tats observs aux sorties sont les mmes que ceux des variables C correspondantes. (19) Fermez le projet aprs vos essais. Ces tests vous auront permit de voir comment chaque compteur se comporte aux signaux dentre.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 33 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie 10 : Types de donnes, comparaisons et oprateurs arithmtiquesLes automates disponibles au laboratoire peuvent aussi effectuer un grand nombre doprations arithmtiques et logiques. Mais avant de passer travers les quelques oprateurs qui seront vus, voyons tout dabord les types de donnes. Le tableau ci-dessus fait la synthse des types de donnes qui pourront vous tre utiles tout au long de la session. Vous noterez que STEP 7 possde plusieurs autres types de donnes. vous de les explorer.

Depuis le dbut de ce laboratoire nous navons utilis que des variables de type boolennes nous permettant ainsi de construire des quations logiques. Mais il est possible dutiliser plusieurs autres variables afin dy enregistrer de linformation. (1) Pour bien comprendre leur fonctionnement, ajoutez un nouveau bloc de fonction FC3 votre projet actuel. Dans la table des mnmoniques, ajoutez les variables 2 6 du tableau suivant :

Voici comment les variables MB, MW, et MD sont dfinies : MB 2 = (M 2.7, M 2.6, M2.5, M 2.4, M 2.3, M 2.2, M2.1, M2.0) MW 3 = (MB 3, MB 4) = MD 5 = (MW 5, MW 7) = (MB 5, MB 6, MB 7, MB 8) = (2) Il est possible dinitialiser les variables laide dun bloc de transfert (move). Ajoutez, pour chaque variable un nouveau bloc de transfert permettant linitialisation des variables. On observe que la valeur crire dans lentre (IN) du bloc de transfert dpendant du type de donnes.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 34 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

On dclare la variable binaire , de type BOOL, tant reli au bit M1.0. La variable hexadecimal , de type BYTE, quant elle est relie loctet MB1 qui en fait compos des huit variables binaires : M1.0, M1.1, M1.2, M1.3, M1.3, M1.4, M1.5, M1.6, M1.7. Pour cette raison lorsque lon envoie la valeur B#16#FF, dans la variable hexadecimal on mets en ralit des 1 logiques dans les huit variables binaires.

(3) Maintenant, ajoutez ces nouvelles variables dans la table de mnmoniques :

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 35 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Nous allons maintenant effectuer un petit programme qui fait lincrment dun compteur et qui fait activer la sortie Q124.0 lorsque la valeur du compteur est gale 6. Ajoutez les rseaux suivants :

Vous noterez que la valeur de la sortie du compteur est en format BCD et afin de la comparer une valeur entire il faut dabord faire sa conversion en entier 16 bits. (4) Maintenant crez-vous un nouveau projet en nutilisant que le bloc OB1. Nous allons btir un petit programme servant dterminer dans quel cadran se trouve langle obtenu par un compteur qui fait lincrment ou le dcrment par pas de dix degrs. Si langle se trouve dans le premier cadran, la sortie Q124.1 doit tre active, si langle se trouve dans le deuxime cardan, la sortie Q124.2 doit tre active, et ainsi de suite. Voici comment raliser se petit programme. Tout dabord la table des mnmoniques :

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 36 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Ensuite, voici les deux premiers rseaux. Le premier fait la gestion du compteur, tandis que le deuxime procde la premire conversion ncessaire pour la multiplication de valeur du compteur par dix, crant ainsi le pas dsir.

Maintenant voici les trois prochains rseaux. Le rseau #3 permet la conversion dun entier 16 bits un rel 32 bits. Le rseau #4 procde la conversion de degrs aux radians, car la fonction sinus et cosinus de STEP 7 naccepte que des radians (1 radian 6.28*degrs/360). Le rseau #5 procde au calcul du sinus et du cosinus.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 37 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Les quatre prochains rseaux vrifient si le sinus et le cosinus sont positifs ou ngatifs.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 38 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Et maintenant voici la gestion des sorties.

Les deux derniers rseaux servent sassurer que le compteur reste dans la plage [0 , 360].

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 39 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Testez votre programme dans lautomate.

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 40 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie #11 : Comprhension de la mmoireFaites un nouveau projet. Faites la cration des mnmoniques suivantes :

Dans le OB1, crez les rseaux suivants :

Quelle est la valeur de Mnemo_2 quand on fait varier I124.0 et pourquoi ? Dans le OB1, rajoutez les rseaux suivants :

Quelle est la valeur de Mnemo_1 Mnemo_4 quand on fait varier I124.1 et pourquoi ? Si on dplace le rseau 2 aprs 3 et 4, quelle est la valeur de Mnemo_2 quand I124.0 est faux et I124.1 est vrai et pourquoi ?

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 41 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Crez une fonction FC1 et ajoutez le rseau suivant :

Crez ensuite une autre fonction FC2 et ajoutez le rseau suivant :

Appelez ensuite les blocs de fonction dans votre OB1, faites varier les entres. I124.2 0 0 1 1 I124.3 0 1 0 1 Sortie Rsultat et pourquoi?

Guy Gauthier ing. (E2001) Modifi par Pascal Ct (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 42 de 49

Laboratoire #1 GPA-140 : Lingnieur en production automatise

Partie #12 : Un premier GRAFCETLe GRAFCET est un diagramme qui reprsente ltat logique dun procd et qui le contrle. Nous ferons ici le GRAFCET dun automatisme trs simple.m pb MT V

Convoyeur

Ce petit automatisme de remplissage de bouteilles est constitu dun convoyeur command par un moteur MT , dune valve de remplissage V et de deux capteurs, un capteur de prsence de bouteille prte tre remplie pb eu un bouton poussoir m . Pour dmarrer lautomatisme, il suffit dappuyer sur le bouton poussoir m . Le tapis roulant dmarre et une premire bouteille se prsente au poste de remplissage. La capteur pb dtecte la bouteille, puis la valve V souvre pendant 12 secondes pour remplir la bouteille. La bouteille est vacue et une nouvelle bouteille est prsente pour remplissage. Il faut remplir six bouteilles suite lappui sur le bouton m . Le GRAFCET de niveau 2 sera le suivant :

1 m./pb 2 pb 3

0

C1

MT

V T/3/12s

T=12s

C1=C1+1

4

MT /pb.(C1