cours Step7

March 16, 2018 | Author: Rhimou Afailal | Category: Central Processing Unit, Software, Programming Language, Digital Technology, Digital & Social Media
Share Embed Donate


Short Description

Download cours Step7...

Description

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée École de technologie supérieure Département de génie de la production automatisée

GPA-140 L’INGÉNIEUR EN PRODUCTION AUTOMATISÉE Session Hiver 2006 LABORATOIRE #1

Objectif: Ce laboratoire a pour objectif la prise de contact avec un automate programmable. Pour cette première fois, vous aurez à programmer diverses équations de logique booléenne et à mettre en œuvre sur l’automate l’automatisation d’un système. Matériel mis à disposition: Vous avez à votre disposition : - un bloc contrôleur - un ordinateur - un logiciel de saisie STEP 7 Pour la prise de contact avec l’automate, l’approche choisie sera de faire une série d’exercices qui permettront de découvrir divers aspects de l’automate utilisés en laboratoire.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 1 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie #1 : Comment créer un projet ? Lancer le logiciel Sur votre ordinateur, (1) localisez l’item Programs du menu Démarrer puis l’item Simatic du menu Programs et enfin (2) cliquez sur l’item SIMATIC Manager du menu Simatic. La figure ci-dessous montre la structure de ces menus (qui peut varier légèrement, selon la configuration de l’ordinateur).

Création d’un projetL Le logiciel « SIMATIC Manager » étant maintenant en marche, (3) cliquez sur l’item Fichier pour ouvrir le menu déroulant. Ensuite, (4) cliquez sur l’item Assistant Nouveau Projet pour lancer l’assistant aidant à la création d’un nouveau projet. La figure au haut de la page suivante montre l’environnement du « SIMATIC Manager ». Notez au bas de la fenêtre la ligne d’état qui vous indique la fonction de l’item choisi dans le menu déroulant.

Selon la configuration du logiciel, l’assistant peut s’ouvrir automatiquement, rendant la procédure de lancement de l’assistant inutile.

L

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 2 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

L’assistant étant lancé, cette première fenêtre s’ouvre à l’écran. C’est la fenêtre d’introduction de l’assistant.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 3 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

(5) Cliquez sur Suivant. Cette seconde fenêtre prend la place de la fenêtre précédente. C’est la première des trois fenêtres de configuration du projet.

Vous devez choisir le modèle du CPU de l’automate à programmer. En laboratoire, nous utilisons le CPU314IFM. (6) Veuillez donc à le sélectionner parmi la liste du menu déroulant qui vous est présenté. Le numéro de référence est simplement le numéro de catalogue de cette pièce (à utiliser si vous voulez passer une commande chez Siemens). (7) Le champ « nom de la CPU » peut être modifié pour identifier la fonction ou l’emplacement de ce CPU dans l’usine (par exemple l’automate ayant ce CPU est en charge de la « Station de pompage »). (8) Enfin, l’adresse de communication MPI doit être fixée à 2. (9) Une fois ces opérations faites, cliquez sur Suivant. Cette troisième fenêtre apparaît alors. C’est la deuxième fenêtre de configuration du projet.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 4 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

(10) Il faut choisir les blocs d’organisationnels à utiliser. Pour ce premier projet, nous n’utiliserons que le bloc OB1. Ce bloc contient le programme qui sera continuellement exécuté par l’automate. L’automate programmable exécute la séquence suivante de façon répétitive, tant qu’il est en mode d’exécution : • Lecture de l’état des entrées (pour savoir l’état logique des capteurs, des boutons, …); •

Exécution complète du bloc OB1;



Écriture de l’état des sorties obtenue suite à l’exécution du bloc OB1 (pour allumer des voyants, démarrer des moteurs, déplacer des vérins, …).

(11) Il faut aussi choisir le langage de programmation. L’automate nous permet de le programmer selon les trois langages suivants : •

LIST : en liste d’état (langage ayant l’apparence de l’assembleur);



CONT : en langage à contacts (ou diagrammes échelle);



LOG : en logigrammes.

Choisir le langage de programmation à contacts (CONT), puis (12) cliquer sur Suivant. Cette dernière fenêtre apparaît alors :

(13) Il vous suffit alors de choisir un nom pour le projet, puis (14) de cliquer sur Créer. 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 désirez 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 tâche, car si tout le monde nomme son programme de la même façon, il sera plus difficile de trouver le vôtre. © Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 5 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

L’écran du « Simatic Manager » devrait alors avoir cette apparence :

Dans le « Simatic Manager », une fenêtre s’ouvre. Le titre de cette fenêtre est le nom du projet, soit « GAUG_premier_programme ».

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 6 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 2 : Structure d’un projet configuration de l’automate Structure d’un projet La structure du projet est montrée dans la partie gauche de la fenêtre identifiée « GAUG_premier_programme ». Le répertoire de base est identifié par le même nom que le projet, soit « GAUG_premier_programme ». Ce répertoire contient tous les sous-répertoires et fichiers configurant toutes les composantes d’un projet, soit : automates, réseaux, programmes. (1) En cliquant sur le répertoire « Premier programme » vous voyez apparaître les items « Station SIMATIC 300 » et « MPI(1) ». Le premier item mène à la définition du matériel utilisé dans ce projet, le second sur la configuration du réseau utilisé dans ce projet.

Dans le cadre du cours, l’aspect réseau n’est pas abordé. (2) En cliquant sur le répertoire « Station SIMATIC 300 » (ou sur l’item de droite « Station SIMATIC 300 »), vous voyez apparaître dans l’écran de droite les items « Matériel » et « CPU314 IFM(1) ». Le premier item mène à la définition du matériel utilisé dans le projet, en particulier des automates. Le second item mène à la programmation de l’unique automate du projet (puisque l’on en a qu’un par table) nommé « CPU314 IFM(1) ».

Configuration du matériel de l’automate (3) En double cliquant sur « Matériel », vous lancez le logiciel de configuration de matériel. La fenêtre suivante apparaît :

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 7 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Dans la fenêtre de configuration du matériel on voit apparaître plusieurs régions. D’une part, la fenêtre de configuration qui montre la localisation des modules dans les rails de montage. En position 2, nous retrouvons le CPU de l’automate identifié par le nom « CPU314 IFM(1) ». En dessous, nous retrouvons une description plus détaillée de la configuration de ces modules. Ainsi, le CPU en position 2, possède un numéro de pièce (Référence), une adresse réseau égale à 2 (Adresse MPI), un certain nombre d’entrées numérotées de 124 à 155 et un certain nombre de sorties numérotées de 124 à 155. L’automate qui sera utilisé en laboratoire comporte directement sur le module CPU vingt (20) entrées logiques et seize (16) sorties logiques. Une entrée logique ayant une valeur égale à 0 ou à 1, un seul bit suffit à la représenter. Les entrées logiques sont numérotées de la façon suivante : I(octet).(bit) L’octet 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 l’octet. 7

6

5

4

3

2

1

0

BIT OCTET De même, une sortie logique ayant une valeur égale à 0 ou à 1, un seul bit suffit à la représenter. Les sorties logiques sont numérotées de la façon suivante : Q(octet).(bit) L’octet peut prendre les valeurs suivantes : 124 ou 125. (4) En double cliquant sur le module CPU de cette liste, la fenêtre de configuration du CPU s’ouvre :

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 8 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

La page de l’onglet « Général » contient une foule d’information sur le module CPU (complétez les champs): La taille de la mémoire : ______ Ko; Le nombre d’entrées digitales : _____ entrées; Le nombre de sorties digitales : ______ sorties; Le nombre d’entrées analogiques : _____ entrées; Le nombre de sorties analogiques : ______ sorties; La vitesses d’exécution de 1000 instructions logiques : ______ ms/Kinst; Le numéro de référence; L’emplacement (châssis 0, position 2); La station réseau (il n’y a pas de réseau). Une foule d’autres onglets donnent accès à des fonctions avancées. (5) En cliquant l’onglet « Cycle/Mémento de cadence », la fenêtre suivante apparaît.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 9 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Le temps de surveillance de cycle est l’intervalle 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 régulier. Si le processeur est défaillant, il n’initialisera plus le chien de garde. Dès que la dernière initialisation remonte à un délai supérieur au temps de surveillance, le chien de garde bloque le fonctionnement du processeur. Cette sécurité assure qu’un processeur défaillant ne risque pas de causer de graves incidents. Le mémento de cadence permet de définir un octet de mémoire interne qui fera clignoter ses 8 bits à 8 fréquences différentes, ce qui peut être utilisé pour faire clignoter des voyants. L’automate utilisé en laboratoire comporte quelques centaines d’octets de mémoire interne identifiés sous le nom « mémento ». Un bit de mémento est identifié de la façon suivante : M(octet).(bit) Ultérieurement, nous utiliserons ces mémentos pour mémoriser l’état des GRAFCET programmés dans l’automate. (6) Ne pas activer de mémento de cadence. (7) Fermer la fenêtre. L’écran redevient comme celui montré ci-dessous.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 10 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Dans la partie de droite de cette fenêtre, on retrouve une autre fenêtre qui contient la liste du matériel de l’automate. Cette liste comprend les éléments suivants : • • • • •

PROFIBUS-DP : équipements pour le réseau; SIMATIC 300 : modules des automates de la série 300; SIMATIC 400 : modules des automates de la série 400; SIMATIC PC Based Control; STATION PC SIMATIC.

L’automate que nous avons sous la main étant équipé d’un CPU de type 314, il fait partie de la série 300. (8) Ajoutons le module d’alimentation à la configuration. Ce module se retrouve dans le répertoire PS-300. Le module d’alimentation est situé à gauche du module CPU. Il est identifié PS307 2A. Pour l’ajouter à 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 l’item Enregistrer du menu déroulant Station. Fermer la fenêtre.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 11 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 3 : Écriture du programme pour l’automate Structure d’un projet (suite) (1) En cliquant sur le répertoire « Programme S7 » vous voyez apparaître les items « Sources », « Mnémoniques » et « Blocs ». Le premier item mène à la liste de fichiers utilisant des logiciels spécialisés pour programmer l’automate avec des langages avancés.

Le second item vers la liste des blocs créés pour l’automate avec le logiciel « STEP 7 ». Le troisième item permet de lancer le logiciel de définition de mnémoniques (nous y reviendrons plus tard). (2) Cliquez sur le répertoire « Blocs » (ou sur l’item « Blocs »). La fenêtre de droite devient alors :

L’item identifié « OB1 » est le bloc organisationnel résultant de la création du projet. (3) Double cliquez sur l’item « OB1 » pour lancer le logiciel « STEP 7 ». La fenêtre de l’éditeur apparaît alors.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 12 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Programmation avec le logiciel STEP 7 Voici la fenêtre de l’éditeur « STEP 7 » :

Dans la fenêtre de gauche, nous retrouvons la page de l’éditeur de programme. On y retrouve : • Un champ pour insérer le titre du bloc (optionnel); • Une zone de commentaire pour décrire la fonction du bloc (optionnel); • Un ensemble de réseaux (ou barreaux) ayant : o Un champ pour insérer le titre du réseau (optionnel); o Une zone de commentaire pour le réseau (optionnel); o La zone de programmation du réseau. Dans la fenêtre de droite, nous retrouvons l’ensemble des éléments 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 début de la zone de programmation du réseau 1 (voir image cidessous).

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 13 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

(5) Cliquez ensuite sur l’icône de contact normalement ouvert, puis inscrire le numéro du contact d’entrée I124.0. (6) Pour compléter le réseau, positionner le curseur à la fin de la zone du réseau 1 (voir image ci-dessous), puis cliquez sur l’icône de la bobine de sortie et inscrire le numéro de la bobine, soit Q124.0.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 14 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

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

Il faut introduire un nouveau réseau pour programmer ce nouveau barreau.

(7) Pour ce faire, cliquez ensuite sur l’icône de nouveau réseau. Le réseau 2 apparaît tel que montré ci-dessous :

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 15 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

(8) Programmer la première ligne du barreau tel que montré à la figure suivante, puis inscrire les adresses.

(9) Pour placer le contact Q124.7 en parallèle 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 Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 16 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

(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 réseau 2 aura donc cette apparence.

(12) Sauvegarder ce programme en cliquant sur l’option « Sauvegarde » du menu déroulant « Fichier ».

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 17 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 4 : Chargement du programme dans l’automate Structure de l’automate L’automate que vous utilisez en laboratoire possède un module de source d’alimentation PS307 de 2 Ampères et le module de CPU 314-IFM de la série S7-300. Le module d’alimentation est à l’extrême gauche, le module de CPU est à sa droite. Le module à l’extrême droite est un module compteur non utilisé ici. Sur le module d’alimentation (montré ci-dessous) vous retrouvez l’interrupteur de mise sous tension de l’automate. Lorsque l’automate est sous tension, le voyant 24 Vcc est au vert pour indiquer que tout est normal.

(1) Mettre l’automate sous tension. Le module de CPU (montré ci dessous) est l’unité dans lequel votre programme sera stocké.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 18 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Sur le module, nous retrouvons un commutateur de mode. Ce commutateur permet de déterminer si l’automate doit exécuter le programme ou non. Ce commutateur est montré en gros plan à droite. En mode STOP, l’automate n’exécute pas le programme. Dans ce mode, il est possible de transférer un programme de l’ordinateur vers l’automate et de transférer un programme de l’automate vers l’ordinateur. Il est aussi possible de modifier le programme dans l’automate. En mode RUN, l’automate exécute le programme. Dans ce mode, il est possible de transférer un programme de l’automate vers l’ordinateur. Il est toutefois impossible de transférer un programme de l’ordinateur vers l’automate. Il est aussi impossible de modifier un programme dans l’automate. En mode RUN-P (RUN-PROGRAM), l’automate exécute le programme. Dans ce mode, il est possible de transférer un programme de l’ordinateur vers l’automate et de transférer un programme de l’automate vers l’ordinateur. Il est aussi possible de modifier le programme dans l’automate. (2) Mettre le commutateur en position STOP. Au dessus du commutateur, on retrouve des voyants indiquant l’état de divers paramètres du module de CPU. Ces voyants sont montrés en gros plan à droite. Le voyant SF est un voyant rouge de défaut. Ce voyant s’allume si on constate un des défauts suivants : • Défaillance de la pile (notre automate n’a justement pas de piles, donc le voyant sera allumé); • Défaillance de la carte mémoire; • Défaillance des périphériques. Le voyant BATF est un voyant rouge de défaut de la pile (notre automate n’a 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 s’allume 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 s’allume lorsque le CPU est en mode STOP. Les voyants SFDP, BUSF ne sont utilisés que sur le CPU315-2 DP.

Chargement du programme dans l’automate (3) Pour ce faire, retourner au SIMATIC manager et sélectionner l’item Blocs. La fenêtre du SIMATIC manager devrait ressembler à :

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 19 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

(4) Sélectionner alors l’item OB1 (Si il y avait eu plusieurs items, on peut utiliser le raccourci [CTRL] A pour les sélectionner tous). (5) Ensuite, en utilisant l’item charger du menu déroulant Système cible, transférer le programme dans l’automate.

La fenêtre suivante apparaît :

(6) Cliquer alors sur OUI pour écraser l’ancien programme. Votre programme est maintenant dans l’automate. (7) Pour le tester, mettre le sélecteur de mode en RUN. Votre programme est en exécution. Appuyez sur le bouton de l’entrée I124.0 et vérifiez le voyant de la sortie Q124.0. De même appuyez sur les boutons des entrées I124.1 et I124.2 et observez le voyant de la sortie Q124.7. © Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 20 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 5 : Visualisation du programme dans l’automate L’état de fonctionnement du programme dans l’automate peut être visualisé de diverses façons. Bien sûr, l’observation des voyants des sorties permet de vérifier l’état des sorties en fonction de l’état des entrées. Une autre façon de visualiser, c’est via l’éditeur de programme « STEP 7 ». (1) Double cliquez sur le bloc OB1. L’éditeur est alors lancé et le programme est affiché. (2) Pour visualiser l’état des variables dans l’automate, cliquer sur l’icône « lunettes ».

Un élément actif est dessiné avec un trait vert gras. (3) Appuyez sur les boutons et vérifiez les changements d’état à l’écran. Notez l’indication du mode de fonctionnement sur la ligne d’état au bas de l’écran. (4) Mettre l’automate en mode STOP et regarder le changement de mode sur la ligne d’état. (5) Remettre l’automate en mode RUN. Une troisième façon de visualiser est d’utiliser l’item « Visualiser/forcer des variables » du menu déroulant « Système cible » du logiciel STEP 7. © Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 21 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

(6) En cliquant sur cet item, une fenêtre s’ouvre alors :

Il vous suffit alors de spécifier les variables dont il faut surveiller l’état. (7) Inscrivez donc dans la colonne « Opérande » le nom des variables à surveiller (les autres champs se remplissent automatiquement).

(8) Pour voir apparaître la valeur actuelle des paramètres, cliquez sur l’icône « lunettes ». La valeur logique apparaît sous le format 2#0 ou 2#1. Le préfixe 2# indique simplement que la valeur en suffixe est une valeur binaire. (9) Fermer toutes les fenêtres et sortir du « SIMATIC Manager ».

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 22 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 6 : Utilisation d’étiquettes Les étiquettes (appelées aussi mnémoniques) permettent de donner aux variables d’entrées, de sorties ou de mémoire interne un nom plus révélateur que I124.0 par exemple. Sur votre ordinateur, (1) localiser l’item Simatic du menu Démarrer puis l’item STEP 7 du menu Simatic et enfin (2) cliquez sur l’item SIMATIC Manager du menu STEP 7. (3) Créer 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 l’item « Programme S7 » du menu de gauche.

Dans le menu de droite, l’un des items est identifié par « Mnémoniques ». (6) Double cliquez sur cet item pour lancer l’éditeur de mnémoniques. La fenêtre suivante apparaît alors :

C’est l’éditeur de mnémonique. Par défaut seul le bloc OB1 possède un mnémonique qui est « Cycle Execution » (ou exécution cyclique).

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 23 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Supposons que nous ayons cinq moteurs ayant chacun une paire de boutons identifiés MARCHE et ARRÊT et un contacteur identifié MOTEUR. On peut utiliser l’éditeur de mnémonique pour établir une correspondance entre le nom de ces boutons et les entrées de l’automate. Ainsi, (7) associons le mnémonique MARCHE 1 avec l’entrée I124.0, le mnémonique ARRÊT 1 avec l’entrée I124.1 et le mnémonique MOTEUR 1 avec la sortie Q124.0. Cela mène donc à cet écran une fois ces informations entrées dans l’éditeur :

La première colonne du tableau donne la liste des mnémoniques, la seconde colonne l’opérande correspondant, la troisième colonne le type de donnée (dans notre cas des variables booléennes) et la dernière colonne contient les commentaires que l’on associe au mnémonique. (8) Poursuivre avec les autres moteurs. Cela donnera le tableau suivant.

(9) Enregistrer cette table et (10) fermer l’éditeur de mnémonique.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 24 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 7 : Blocs de fonctions (FC) Un bloc de fonction FC correspond à une sous-routine appelée par d’autres blocs. Dans l’exemple des moteurs, le circuit de mise en marche et d’arrêt de moteur est toujours le même. En effet, le circuit suivant est le circuit de commande d’un moteur en diagramme échelle :

Comme on possède cinq moteurs, il semble bien inutile de répéter ce programme cinq fois. Il peut être plus efficace de l’écrire qu’une seule fois. C’est ce que permet de faire les blocs de fonction. Pour créer un bloc fonctionnel, (1) mettre le curseur dans la zone de droite de la fenêtre de notre projet et (2) appuyer sur le bouton de souris de droite. Le menu suivant apparaît :

(3) Choisir l’item « Insérer un nouvel objet » puis l’item « Fonction ». La fenêtre suivante s’ouvre :

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 25 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Les blocs de fonctions sont identifiés par le préfixe FC suivi d’un 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 l’éditeur STEP 7. Dans l’éditeur STEP 7, notez qu’il existe une zone de déclaration de variables locales que l’on peut utiliser pour définir les trois variables importantes, soit MARCHE, ARRÊT et MOTEUR. Le type de chaque variable est booléen (BOOL) et les deux premières sont des entrées (in) et la dernière une sortie (out). (7) Définissez les variables pour obtenir le tableau suivant :

Il reste à écrire le programme dans le bloc FC sous la fenêtre de déclaration 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 d’entrée et de sortie de l’automate. Pour ce faire, (10) il faut ouvrir le programme principal qui est le bloc OB1.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 26 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Le bloc OB1 doit appeler le bloc FC1 qui contient le sous-programme de commande de moteur. (11) En cliquant sur le + devant l’item « Blocs FC » de la fenêtre « Éléments de programme », la liste des blocs de fonction existants apparaît. (12) En cliquant sur le bloc FC1 et en le glissant sur le réseau 1 du bloc OB1, vous insérez un appel au bloc FC1.

Pour le moteur #1, la mise en marche se fait par MARCHE 1, l’arrêt par ARRÊT 1 et le signal de sortie est MOTEUR 1. (13) Ajoutez ces contacts autour du bloc FC1 pour obtenir :

(14) Répétez pour les moteurs 2 à 5. Cela implique de créer de nouveaux réseaux, de glisser sur chaque réseau le bloc de fonction FC1 et d’ajouter les contacts autour. Note : L’entrée EN du bloc FC1 est une entrée qui permet de commander l’exécution du bloc FC1. Comme il faut que le bloc soit exécuté lors de tous les cycles, cette entrée est branchée directement sur la ligne verticale de gauche, sans contacts. (15) Sauvegardez votre bloc OB1, et (16) transférer le tout (OB1 et FC1) dans l’automate. (17) Testez votre programme. En activant l’entrée MARCHE d’un moteur, la sortie MOTEUR correspondante s’allume et reste allumée tant que l’entrée ARRÊT n’est pas actionnée.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 27 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 8 : Temporisations Dans l’automate, nous avons accès à certaines fonctions dont les compteurs et les temporisations. Ces éléments sont fort utiles pour générer des délais d’attente ou pour compter des événements. Les temporisateurs offerts dans l’automate que nous avons sous la main sont de cinq types résumés dans le tableau ci-dessous :

Les temporisations sont identifiées par T(nombre), la lettre T indiquant une variable de temporisation et le nombre, le numéro de la temporisation (exemple : T12). La durée de la temporisation est indiquée à l’entrée TV d’une temporisation de la façon suivante : • Préfixe « S5T# » • Durée avec unités de mesure. Ainsi, un temporisateur de 1 minute 45.33 secondes sera programmée : S5T#1M45S330MS. © Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 28 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Dans la plupart de nos applications, nous utiliserons une temporisation de la forme « retard à la montée ». Cette temporisation voit sa sortie passer de 0 à 1 un certain temps préprogrammé après le passage de 0 à 1 de l’entrée. (1) Créez un nouveau projet et dans ce projet, (2) créer un bloc de fonction FC1. Dans le bloc FC1, (3) créer le programme suivant :

Dans ce programme, consiste donc en cinq temporisations commandées par les interrupteurs et qui allumeront des sorties selon l’état de la temporisation correspondante. © Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 29 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

(4) Sauvegardez le bloc FC1 et (5) ouvrez le bloc OB1. (6) Insérez l’appel au bloc FC1.

(7) Sauvegardez le bloc OB1, et (8) transférez le tout (OB1 et FC1) dans l’automate (le sélecteur de mode de l’automate devra avoir été mis à STOP). (9) Testez votre programme dans l’automate. Vous pouvez visualiser le test en ouvrant FC1 et en activant la visualisation. Voici un exemple de visualisation :

(10) Mettez le sélecteur de mode de l’automate à RUN. (11) Faire une courte impulsion (< 5 sec) sur l’entrée I124.0. Que se passe-t-il en sortie ? (12) Faire une longue impulsion (> 15 sec) sur l’entrée I124.0. Que se passe-t-il en sortie ? (13) Faire une courte impulsion (< 5 sec) sur l’entrée I124.1. Que se passe-t-il en sortie ? (14) Faire une longue impulsion (> 15 sec) sur l’entrée I124.1. Que se passe-t-il en sortie ? (15) Faire une courte impulsion (< 5 sec) sur l’entrée I124.2. Que se passe-t-il en sortie ? (16) Faire une longue impulsion (> 15 sec) sur l’entrée I124.2. Que se passe-t-il en sortie ? (17) Faire une courte impulsion (< 5 sec) sur l’entrée I124.3. Que se passe-t-il en sortie ? (18) 10 secondes après l’impulsion en I124.3, faire une impulsion sur l’entrée I124.4. Que se passe-t-il en sortie ? (19) Faire impulsion sur l’entrée I124.5. Que se passe-t-il en sortie ? Il est important de noter que les états observés aux sorties sont les mêmes que ceux des variables T correspondantes. Ces tests vous auront permit de voir comment chaque temporisation se comporte aux signaux d’entrée. © Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 30 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 9 : Compteurs Les compteur offerts dans l’automate que nous avons sous la main sont de trois types : CU pour compteur incrémental, CD pour compteur décrémental et CUD pour compteur incrémental/décrémental. Les compteurs sont identifiées par C(nombre), la lettre C indiquant une variable de comptage, le numéro de la temporisation (exemple : C1). La durée de la temporisation est indiquée à l’entrée PV d’une temporisation de la façon suivante : • Préfixe « 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 décrémental. Pour ce compteur comme pour les autres, l’état logique de la sortie est 0 si la valeur du compteur est 0, sinon l’état logique est 1. Dans le même projet de précédemment, (1) créez un bloc de fonction FC2. Dans le bloc FC2, (2) créer le programme suivant :

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 31 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

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

(6) Sauvegardez le bloc OB1, et (7) transférez le tout (OB1, FC1 et FC2) dans l’automate (le sélecteur de mode de l’automate devra avoir été mis à STOP). (8) Testez votre programme dans l’automate. 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 l’entrée I124.1. Cela active l’entrée S (set) qui charge la valeur mise à l’entrée PV dans le compteur. Que se passe-t-il en sortie ? (10) Faire une impulsion sur l’entrée d’incrémentation I124.0. Que se passe-t-il en sortie ? Quelle est la valeur du compteur ? (11) Faire une impulsion sur l’entrée I124.2. Cela active l’entrée R (reset) qui remet le compteur à 0. Que se passe-t-il en sortie ? Compteur CD (12) Faire une impulsion sur l’entrée I124.4. Cela active l’entrée S (set) qui charge la valeur mise à l’entrée PV dans le compteur. Que se passe-t-il en sortie ? (13) Faire quatre impulsions sur l’entrée de décrémentation I124.3. Que se passe-t-il en sortie ? Quelle est la valeur du compteur ? (14) Faire une impulsion sur l’entrée I124.4, puis faire une autre impulsion sur l’entrée I124.5. Cela active l’entrée R (reset) qui remet le compteur à 0. Que se passe-t-il en sortie ?

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 32 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Compteur CUD (15) Faire une impulsion sur l’entrée I125.0. Cela active l’entrée S (set) qui charge la valeur mise à l’entrée PV dans le compteur. Que se passe-t-il en sortie ? (16) Faire deux impulsions sur l’entrée d’incrémentation I124.6. Que se passe-t-il en sortie ? Quelle est la valeur du compteur ? (17) Faire quatre impulsions sur l’entrée de décrémentation I124.7. Que se passe-t-il en sortie ? Quelle est la valeur du compteur ? (18) Faire des impulsions sur l’entrée I124.6, puis faire une autre impulsion sur l’entrée I125.1. Cela active l’entrée R (reset) qui remet le compteur à 0. Que se passe-t-il en sortie ? Il est important de noter que les états observés aux sorties sont les mêmes que ceux des variables C correspondantes. (19) Fermez le projet après vos essais. Ces tests vous auront permit de voir comment chaque compteur se comporte aux signaux d’entrée.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 33 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie 10 : Types de données, comparaisons et opérateurs arithmétiques Les automates disponibles au laboratoire peuvent aussi effectuer un grand nombre d’opérations arithmétiques et logiques. Mais avant de passer à travers les quelques opérateurs qui seront vus, voyons tout d’abord les types de données. Le tableau ci-dessus fait la synthèse des types de données qui pourront vous être utiles tout au long de la session. Vous noterez que STEP 7 possède plusieurs autres types de données. À vous de les explorer.

Depuis le début de ce laboratoire nous n’avons utilisé que des variables de type booléennes nous permettant ainsi de construire des équations logiques. Mais il est possible d’utiliser plusieurs autres variables afin d’y enregistrer de l’information. (1) Pour bien comprendre leur fonctionnement, ajoutez un nouveau bloc de fonction FC3 à votre projet actuel. Dans la table des mnémoniques, ajoutez les variables 2 à 6 du tableau suivant :

Voici comment les variables MB, MW, et MD sont définies : 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 d’initialiser les variables à l’aide d’un bloc de transfert (move). Ajoutez, pour chaque variable un nouveau bloc de transfert permettant l’initialisation des variables. On observe que la valeur à écrire dans l’entrée (IN) du bloc de transfert dépendant du type de données.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 34 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

On déclare la variable « binaire », de type BOOL, étant relié au bit M1.0. La variable « hexadecimal », de type BYTE, quant à elle est reliée à l’octet 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 l’on envoie la valeur B#16#FF, dans la variable « hexadecimal » on mets en réalité des 1 logiques dans les huit variables binaires.

(3) Maintenant, ajoutez ces nouvelles variables dans la table de mnémoniques :

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 35 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Nous allons maintenant effectuer un petit programme qui fait l’incrément d’un compteur et qui fait activer la sortie Q124.0 lorsque la valeur du compteur est égale à 6. Ajoutez les réseaux suivants :

Vous noterez que la valeur de la sortie du compteur est en format BCD et afin de la comparer à une valeur entière il faut d’abord faire sa conversion en entier 16 bits. (4) Maintenant créez-vous un nouveau projet en n’utilisant que le bloc OB1. Nous allons bâtir un petit programme servant à déterminer dans quel cadran se trouve l’angle obtenu par un compteur qui fait l’incrément ou le décrément par pas de dix degrés. Si l’angle se trouve dans le premier cadran, la sortie Q124.1 doit être activée, si l’angle se trouve dans le deuxième cardan, la sortie Q124.2 doit être activée, et ainsi de suite. Voici comment réaliser se petit programme. Tout d’abord la table des mnémoniques :

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 36 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Ensuite, voici les deux premiers réseaux. Le premier fait la gestion du compteur, tandis que le deuxième procède à la première conversion nécessaire pour la multiplication de valeur du compteur par dix, créant ainsi le pas désiré.

Maintenant voici les trois prochains réseaux. Le réseau #3 permet la conversion d’un entier 16 bits à un réel 32 bits. Le réseau #4 procède à la conversion de degrés aux radians, car la fonction sinus et cosinus de STEP 7 n’accepte que des radians (1 radian ≈ 6.28*degrés/360). Le réseau #5 procède au calcul du sinus et du cosinus.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 37 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Les quatre prochains réseaux vérifient si le sinus et le cosinus sont positifs ou négatifs.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 38 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Et maintenant voici la gestion des sorties.

Les deux derniers réseaux servent à s’assurer que le compteur reste dans la plage [0 , 360].

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 39 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Testez votre programme dans l’automate.

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 40 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie #11 : Compréhension de la mémoire Faites un nouveau projet. Faites la création des mnémoniques suivantes :

Dans le OB1, créez les réseaux suivants :

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

Quelle est la valeur de Mnemo_1 à Mnemo_4 quand on fait varier I124.1 et pourquoi ? Si on déplace le réseau 2 après 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 Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 41 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Créez une fonction FC1 et ajoutez le réseau suivant :

Créez ensuite une autre fonction FC2 et ajoutez le réseau suivant :

Appelez ensuite les blocs de fonction dans votre OB1, faites varier les entrées. I124.2 0 0 1 1

I124.3 0 1 0 1

Sortie

Résultat et pourquoi?

© Guy Gauthier ing. (E2001) Modifié par Pascal Côté (A2003), Yanick Noiseux (H2005) et Ilian Bonev (H2006)

Page 42 de 49

Laboratoire #1 GPA-140 : L’ingénieur en production automatisée

Partie #12 : Un premier GRAFCET Le GRAFCET est un diagramme qui représente l’état logique d’un procédé et qui le contrôle. Nous ferons ici le GRAFCET d’un automatisme très simple. m

V pb

MT

Convoyeur

Ce petit automatisme de remplissage de bouteilles est constitué d’un convoyeur commandé par un moteur « MT », d’une valve de remplissage « V » et de deux capteurs, un capteur de présence de bouteille prête à être remplie « pb » eu un bouton poussoir « m ». Pour démarrer l’automatisme, il suffit d’appuyer sur le bouton poussoir « m ». Le tapis roulant démarre et une première bouteille se présente au poste de remplissage. La capteur « pb » détecte la bouteille, puis la valve « V » s’ouvre pendant 12 secondes pour remplir la bouteille. La bouteille est évacuée et une nouvelle bouteille est présentée pour remplissage. Il faut remplir six bouteilles suite à l’appui sur le bouton « m ». Le GRAFCET de niveau 2 sera le suivant :

1

0

C1

m./pb 2

MT pb

3

V

T=12s

C1=C1+1

T/3/12s 4

MT

/pb.(C1=6)

/pb.(C1
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF