Université Libre de Tunis

Formation sur :
La programmation des APIs Siemens S7-300 par le logiciel STEP7
Présentée par M. Mohamed MCHIRI Contact : medmch@yahoo.fr

Jeudi 09 Février 2012

Plan
 Introduction aux systèmes automatisés  Gamme des APIs Siemens S7-200, S7-

300, S7-400  Programmer avec le Step7  Etude d’un exemple industriel  Proposition des mini-projets

Introduction aux Systèmes Automatisés
 La fonction globale de tout système automatisé est de conférer une

valeur ajoutée à un ensemble de matières d’œuvre dans un environnement ou contexte donné.  Matières d’œuvres :
  

Produit: chimique, électronique, textile, … Energie: hydraulique, électrique, thermique, … Information: audiovisuelle, écrite, physique, ... L’objectif global pour lequel a été défini, conçu ou modifié le système La différence entre l’état de sortie d’un système et son état d’entrée

 Valeur ajoutée :
 

Introduction aux Systèmes Automatisés  Un système de production : c’est un système à caractère industriel qui répond au besoin d’élaborer des produits.   un ensemble d’éléments ou de dispositifs opératifs plus ou moins mécanisés ( Partie opérative ) des opérateurs humains ou de dispositifs de commande pour assurer la coordination des dispositifs opératifs. mécaniques. de l’énergie ou de l’information à un coût rentable pour l’utilisateur. électroniques.  Exemples :   Usines de fabrication chimiques. banque. … Société de service. … .

.

…)   Augmenter la sécurité Objectifs financiers. … . auparavant exécutées par des opérateurs humains.Introduction aux Systèmes Automatisés  L’automatisation consiste à transférer tout ou partie des tâches de coordination. tâches répétitives. manipulation des lourdes charges.  Objectifs :    Accroître la productivité du système Améliorer la qualité du produit S'adapter à des contextes particuliers (milieux hostiles. dans un ensemble d'objets techniques appelé partie commande.

Structure d’un système automatisé .

Structure de l’unité de traitement .

L’API au cœur du système automatisé .

…) en une énergie mécanique associée à un mouvement. hydrauliques  Vérins rotatifs.  Moteurs  Vérins électriques.L’API au cœur du système automatisé  Les actionneurs sont des systèmes qui coordonnent et assurent les mouvements des organes d’un système de production. pneumatique. etc… . Ils transforment une énergie (électrique. pneumatiques. hydraulique.

. hydrauliques : distributeur électropneumatiques et électro-hydrauliques.  Pour les moteurs électriques : contacteur ou variateur de vitesse  Vérins pneumatiques.L’API au cœur du système automatisé  Les pré-actionneurs sont des systèmes ayant pour fonction de transformer l'énergie issue d'une source (réseau électrique. batteries. compresseur pneumatique ou hydraulique) en une énergie adaptée à l'actionneur pour un mouvement précis.

de contact. sont envoyées à la P.O. Ils ont pour fonction de délivrer une grandeur électrique.  Codeur incrémental.  Caméra.L’API au cœur du système automatisé  Les capteurs sont les systèmes via lesquels les informations issues de la P. code à barres  Capteur de fin de course.  Détecteurs : inductifs. etc… .C. photo-électriques. image d'une grandeur physique.

 Les Bus sont des liaisons parallèles dans lesquelles véhiculent les informations (sous forme binaire) et qui assurent la connectivité entre les différents éléments d’un API. les fonctions de temporisation. à partir d'un programme contenu dans sa mémoire. de comptage... de calcul.Architecture interne d’un API  Le microprocesseur réalise toutes les fonctions logiques ET. OU.  La zone mémoire permet de recevoir et conserver :     les informations issus des capteurs les informations générées par le processeur les programmes du processus Actions possibles: Ecrire. lire. effacer .

Structure interne d’un API .

Adapter les niveaux de tensions de l’U. en éliminant les parasites et en isolant électriquement l’unité de commande de la partie opérative.C et garantir une isolation galvanique  Les interfaces de sorties sont destinées à :   . Traiter le signal en le mettant en forme. Transmettre des informations aux pré-actionneurs (relais. électrovannes …) et aux éléments de signalisation (voyants) du pupitre.Structure interne d’un API  Les interfaces d’entrées sont destinés à :   Recevoir des informations en provenance des éléments de détection (capteurs) et du pupitre opérateur (BP).

Fonctionnement de l’interface d’entrées Lors de la fermeture du capteur :  LED1 signale que l’entrée automate est actionnée  La LED D’ de l’opto-coupleur s’éclaire  Le photo transistor T’ de l’opto-coupleur devient passant  La tension Vs=0V .

la bobine RL1 sera donc sous tension et commande la fermeture du contact de la sortie O0.1  T2 devient passant. T1 devient passant et donc D’ s’éclaire Le photo transistor T’ de l’optocoupleur devient passant  LED 1 s’éclaire et nous informe de la commande de la sortie O0.Fonctionnement de l’interface de sorties Lors de la commande d’une sortie automate :  L’unité de commande envoie un 1 logique (5V).1 .

Fonctionnement de l’API .

. .Diagramme fonctionnel d’un système automatisé Pour résumer.

Les APIs en marché  Siemens  Schneider (Télémécanique TSX)  Allen Bradley  Omron  Mitsubishi  Rockwell  Moeller  Ge-Fanuc  Etc… Les fabricants sont aussi programmation de l’API. les concepteurs des logiciels de .

. S7-300 CPU 314 S7-300 CPU 313 S7-300 CPU 315 .Gamme des APIs Siemens  Simatic S7-200  Simatic S7-300  Simatic S7-400  Simatic S7-1200  Simatic C7  Simatic ET-200  Etc.

API Siemens S7-300 .

API Siemens S7-300 1 Module d'alimentation 2 Pile de sauvegarde 3 Connexion au 24V cc 4 Commutateur de mode (à clé) 5 LED de signalisation d'état et de défauts 6 Carte mémoire 7 Interface multipoint (MPI) 8 Connecteur frontal 9 Volet en face avant .

Profibus ou Industrial Ethernet. Modules pour emploi dans des zones à atmosphère explosive densité d'implantation avec des modules au modulo 32 permettent un gain de place appréciable dans les armoires électriques.  .: régulation et came électronique et des modules de communication point à point ou par bus ASi.Caractéristiques techniques de Siemens S7-300  Interface Ethernet/PRO-Finet intégrée  CPUs de sécurité  CPUs  Modules de fonctions technologiques ex.  Simplicité de montage et sa grande compactes avec fonctions technologiques et périphérie intégrées de fonctions motion control  CPUs technologiques pour la gestion  Modules d'E/S TOR et analogiques pour la quasi-totalité des signaux avec possibilité de traitement des interruptions et du diagnostic.

paramétrer et programmer votre CPU.  STEP7 vous offre les fonctions d’assistance pour résoudre efficacement votre problème d’automatisation. .Programmer avec le logiciel de programmation STEP7  STEP7 est le nom du logiciel de programmation pour les systèmes SIMATIC S7/M7  STEP7 vous offre les fonctionnalités nécessaires pour configurer.  STEP7 autorise une programmation orientée objet: tous les objets sont représentés à l’écran par des icônes.

Elle permet la construction d'un programme complet à l'aide de modules qui peuvent être échangés et/ou modifiés à volonté. il faut prévoir plusieurs types de modules (ou blocs) :  Les blocs d’organisation : OB  Les fonctions : FC  Les blocs de fonction : FB  Fonctions systèmes SFC. les blocs fonctionnels systèmes SFB.  Pour permettre une programmation structurée confortable.Structure du programme en Step7  La programmation structurée permet la rédaction claire et transparente de programmes. les blocs fonctionnels de communication CFB .

C'est donc à partir de ce bloc que l'on fera les appels aux différents blocs de programmes. Ces blocs n’ont pas de mémoire. On peut passer des données en créant des DB d’instance associés à un seul FB pour le passage de paramètres. La numérotation est libre (de 0 à 255). On y appellera donc les blocs traitant les initialisations.  Les fonctions : FC et les blocs de fonctions FB C’est dans ces blocs que l’on va mettre les instructions à exécuter. Ils peuvent être très utiles pour réduire le code en créant des DB d'instance associés à un seul FB avec passage de paramètres. L’OB100 et l’OB101 sont uniquement appelés aux démarrage (respectivement à chaud et à froid). La numérotation est libre (de 0 à 255). Les blocs d’organisation : OB On retiendra principalement l'OB1 qui est examiné à chaque cycle d'automate.  Les blocs de fonction : FB Ces blocs sont paramétrables. .

Architecture du programme en Step7 .

Dans le cadre de cette première approche. on fera plus particulièrement attention aux variables suivantes:  .Type de variables Les différents types de variables sont donnés dans le tableau qui suit.Mémentos (Flag) (M)  .Temporisations (T)  .Compteurs (Z ou I ) .Sorties (A ou Q)  .Entrées (E ou I)  .

Tempo T 0 à 127 .Data (right byte) DR 0 à 255 Double Word variables (= 32 bits) Constantes Pointer.7 (#byte.7 .Input EB 0 à 127 .Type de variables Bit variables : .0 à 127.0 à 255.Data (left byte) DL 0 à 255 . etc… .Data D 0.Input EW 0 à 126 .0 à 255.Output AB 0 à 127 .0 à 127.Flag M 0.#bit) .7 .Input E0.Flag MB 0 à 255 .7 .Flag (mémo interne) MW 0 à 254 Data DW 0 à 255 Byte variables (=8 bits) .Output AW 0 à 126 .Output A 0.Compteur Z 0 à 127 Word variables (= 16 bits) .

et DB. on peut comparer sa valeur. A.MD1 correspond au 32 bits constitué des octets 1. M. le multiplier.3 correspond au bit 3 de l’octet 4. on peut le tester en combinaison ET. à un MOT de 16 bits ou à un DOUBLE MOT ( 32 bits )  Exemples : . 2. le soustraire. OU avec un autre bit. 3 et 4 . on peut le mettre à « 1 » ou à « 0 ». le diviser. on peut l’additionner. on peut lui affecter le résultat d’une combinaison. .Adressage de variables Les objets E.M4.MW2 correspond au 16 bits constitué par les octets 2 .MB4 correspond aux 8 bits de l’octet 4. on peut lui affecter le résultat d’une opération . on peut accéder à un BIT. sont rangés dans des octets ( 8 bits ). à un OCTET.

Adressage de variables Type de l’adressage Adresse de l’octet Adresse du bit .

#Partie 1#  Etape 1: Lancer le logiciel Comment créer un projet??? (1) Afficher Item Programs du menu Démarrer (2) cliquez sur l’item SIMATIC Manager du menu Simatic. Ou lancez directement le logiciel depuis le raccourci sur votre bureau .

. (3) cliquez sur l’item Fichier pour ouvrir le menu déroulant. Etape 2: Création d’un projet Le logiciel « SIMATIC Manager » étant maintenant en marche. (4) cliquez sur l’item Assistant Nouveau Projet pour lancer l’assistant aidant à la création d’un nouveau projet.

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

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

l’adresse de communication MPI doit être fixée à 2. (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 »).(6) Sélectionner la CPU correspondante. . (8) Enfin.

Cette troisième fenêtre apparaît alors.(9) Une fois ces opérations faites. C’est la deuxième fenêtre de configuration du projet. cliquez sur Suivant. .

nous n’utiliserons que le bloc OB1.  CONT : en langage à contacts (ou diagrammes échelle). L’automate nous permet de le programmer selon les trois langages suivants :  LIST : en liste d’état (langage ayant l’apparence de l’assembleur).  Écriture de l’état des sorties obtenues suite à l’exécution du bloc OB1 (pour allumer des voyants.. déplacer des vérins. L’automate programmable exécute la séquence suivante de façon répétitive. .Remarques (10) Il faut choisir les blocs d’organisationnels à utiliser. (11) Il faut aussi choisir le langage de programmation. des boutons.)  Exécution complète du bloc OB1. tant qu’il est en mode d’exécution :  Lecture de l’état des entrées (pour savoir l’état logique des capteurs. Pour ce premier projet. Ce bloc contient le programme qui sera continuellement exécuté par l’automate. démarrer des moteurs. …).  LOG : en logigrammes..

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

puis (14) de cliquer sur Créer.(13) Il vous suffit alors de choisir un nom pour le projet. L’écran du « Simatic Manager » devrait alors avoir cette apparence : .

Le répertoire de base est identifié par le même nom que le projet. . programmes. Ce répertoire contient tous les sous-répertoires et fichiers configurant toutes les composantes d’un projet. réseaux. soit : automates.#Partie 2#  Etape 1: Structure d’un projet Structure d’un projet configuration de l’automate La structure du projet est montrée dans la partie gauche de la fenêtre précédente identifiée « nom_du_projet». soit « GAUG_premier_programme » dans notre exemple.

.(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.

en particulier des automates. Le second item mène à la programmation de l’unique automate du projet nommé « CPU314 IFM(1) ». Le premier item mène à la définition du matériel utilisé dans le projet. vous voyez apparaître dans l’écran de droite les items « Matériel » et « CPU314 IFM(1) ». .(2) En cliquant sur le répertoire « Station SIMATIC 300 » (ou sur l’item de droite « Station SIMATIC 300 »).

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

En position 2. possède un numéro de pièce (Référence). le CPU en position 2. Ainsi. nous retrouvons le CPU de l’automate identifié par le nom « CPU314 IFM(1) ». un certain nombre d’entrées numérotées de 124 à 155 et un certain nombre de sorties numérotées de 124 à 155.Dans la fenêtre de configuration du matériel on voit apparaître plusieurs régions. . En dessous. D’une part. une adresse réseau égale à 2 (Adresse MPI). nous retrouvons une description plus détaillée de la configuration de ces modules. la fenêtre de configuration qui montre la localisation des modules dans les rails de montage.

Fenêtre de configuration du matériel .

la fenêtre de configuration du CPU s’ouvre : La page de l’onglet « Général » contient une foule d’informations sur le module CPU :  La taille de la mémoire (Ko)  Le nbre d’entrées digitales  Le nbre de sorties digitales  Le nbre d’entrées analogiques  Le nbre de sorties analogiques  La vitesse d’exécution de 1000 instructions logiques  Le numéro de référence  La station réseau (il n’y a pas de réseau). .(4) En double cliquant sur le module CPU (qui se trouve dans la liste à gauche).

(5) En cliquant l’onglet « Cycle/Mémento de cadence ». Le temps de surveillance de cycle est l’intervalle de temps maximal entre deux initialisations du « chien de garde ». . la fenêtre suivante apparaît. Le chien de garde est un dispositif qui surveille continuellement le processeur du module CPU.

. il n’initialisera plus le chien de garde. Si le processeur fonctionne correctement. Si le processeur est défaillant. (bit) Exemple : M10. il initialise le chien de garde à intervalle régulier. ultérieurement. ce qui peut être utilisé pour faire clignoter des voyants. Dès que la dernière initialisation remonte à un délai supérieur au temps de surveillance. 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. Un bit de mémento est identifié de la façon suivante : M(octet). le chien de garde bloque le fonctionnement du processeur. ces mémentos pour mémoriser l’état des GRAFCET programmés dans l’automate. Cette sécurité assure qu’un processeur défaillant ne risque pas de causer de graves incidents.1 Nous utiliserons.Le chien de garde est un dispositif qui surveille continuellement le processeur du module CPU.

(6) Ne pas activer de mémento de cadence. L’écran redevient comme celui montré par la figure suivante : . (7) Fermer la fenêtre.

Dans la partie droite de la figure précédente. SIMATIC 400 : modules des automates de la série 400. il fait partie de la série 300. SIMATIC PC Based Control. on trouve le catalogue du matériel (liste du matériel de l’automate) :  PROFIBUS-DP : équipements pour le réseau.  SIMATIC 300 : modules des automates de la série 300.  STATION PC SIMATIC. . L’automate que nous avons choisi au début est un API équipé d’un CPU de type 314.

il suffit de cliquer sur cet item et à le glisser vers la ligne 1 du rail de droite.(8) Ajoutons le module d’alimentation à la configuration. Le module d’alimentation est situé à gauche du module CPU. Il est identifié PS307 2A. Pour l’ajouter à la configuration. (9) Sauvegarder cette configuration en cliquant l’item Enregistrer du menu déroulant Station. (10) Fermer la fenêtre. Ce module se retrouve dans le répertoire PS-300. .

« Mnémoniques » et « Blocs ».#Partie 3# Ecriture du programme pour l’automate  Etape 1: Structure d’un projet (suite) (1) En cliquant sur le répertoire « Programme S7 » vous voyez apparaître les items « Sources ». 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.

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

Voici la fenêtre de l’éditeur STEP7 . Etape 2: Programmation avec le logiciel STEP7 En double cliquant sur l’item « OB1 » de la fenêtre précédente. le logiciel « STEP 7 » se lance.

 Une zone de commentaire pour décrire la fonction du bloc (optionnel).Un champ pour insérer le titre du réseau (optionnel). . . nous retrouvons la page de l’éditeur de programme.  Un ensemble de réseaux (ou barreaux) ayant : . nous retrouvons l’ensemble des éléments de programme ou fonctions disponibles pour cet automate. Dans la fenêtre de gauche.Une zone de commentaire pour le réseau (optionnel).La zone de programmation du réseau. On y retrouve :  Un champ pour insérer le titre du bloc (optionnel). .Dans la fenêtre de droite.

Comment programmer un barreau de langage à contact?? (4) Positionner le curseur au début de la zone de programmation du réseau 1: .

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

Une fois le premier barreau programmé. programmons ensuite le barreau suivant et ainsi de suite.… Pour ce faire. . il faut introduire un nouveau réseau pour programmer ce nouveau barreau.

puis inscrire les adresses. .Exemple: programmons le barreau suivant : (a) Programmer la première ligne du barreau tel que montré à la figure cicontre .

.2 et appuyer sur la touche F8.Exemple: programmons le barreau suivant : (b) Pour placer le contact Q124.2. il faut ouvrir une branche.7 en parallèle avec le contact I124. Pour ouvrir la branche. il faut placer le curseur sur le contact I124.

7 sur la nouvelle branche. . On y arrive en appuyant sur la touche F9. Le réseau 2 aura donc cette apparence: Enfin.(c) Ajouter alors le contact Q124. Sauvegarder votre programme en cliquant sur l’option « Sauvegarde » du menu déroulant « Fichier ». (d) Il faut maintenant fermer cette branche.

Lorsque l’automate est sous tension. . le voyant 24 Vcc est au vert pour indiquer que tout est normal.Chargement du programme dans l’automate #Partie 4# (1) Mettre l’automate sous tension.

il est possible de transférer un programme du PC vers l’API et de transférer un programme de l’API vers le PC. Dans ce mode.Le commutateur de mode: Sur le module du CPU. Ce commutateur permet de déterminer si l’automate doit exécuter le programme ou non:  En mode STOP. Dans ce mode. l’automate exécute le programme. Dans ce mode. Il est aussi impossible de modifier un programme dans l’automate. Il est impossible de transférer un programme du PC vers l’API. il est possible de transférer un programme de l’API vers le PC. .  En mode RUN. Il est aussi possible de modifier le programme dans l’automate. l’automate n’exécute pas le programme. Il est aussi possible de modifier le programme dans l’API.  En mode RUN-P (RUN-PROGRAM). il est possible de transférer un programme du PC vers l’API et de transférer un programme de l’API vers le PC. l’automate exécute le programme. nous retrouvons un commutateur de mode.

en utilisant l’item charger du menu déroulant Système cible. (5) Ensuite.(2) Mettre le commutateur en position STOP. on peut utiliser le raccourci [CTRL] A pour les sélectionner tous). La fenêtre du SIMATIC manager devrait ressembler à : (4) Sélectionner alors l’item OB1 (Si il y avait eu plusieurs items. retourner au SIMATIC manager et sélectionner l’item Blocs. transférer le programme dans l’automate. (3) Pour le chargement du programme dans l’automate. .

Système cible Charger (ou CTRL+L) La fenêtre apparaît : suivante (6) Cliquer alors sur OUI pour écraser l’ancien programme. . Votre programme est maintenant dans l’automate.

(2) Pour visualiser l’état des variables dans l’automate. (5) Remettre l’automate en mode RUN. . L’éditeur est alors lancé et le programme est affiché. (4) Mettre l’automate en mode STOP et regarder le changement de mode sur la ligne d’état. c’est via l’éditeur de programme « STEP 7 » : (1) Double cliquez sur le bloc OB1. Notez l’indication du mode de fonctionnement sur la ligne d’état au bas de l’écran. 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.Visualisation du programme dans l’automate #Partie 5# Bien que l’observation des voyants des sorties permette de vérifier l’état des sorties en fonction de l’état des entrées. une autre façon de visualiser. cliquer sur l’icône « lunettes ».

Visualisation du programme dans l’automate
#Partie 5#

Visualisation du programme dans l’automate
#Partie 5#
Une autre façon de visualiser est d’utiliser l’item « Visualiser/forcer des variables » du menu déroulant « Système cible » du logiciel STEP 7. (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.

0 par exemple. (1) Double cliquez sur cet item pour lancer l’éditeur de mnémoniques. de sorties ou de mémoire interne un nom plus révélateur que I124. . Dans ce menu.#Partie 6# Utilisation des étiquettes (mnémoniques) Les étiquettes (appelées aussi mnémoniques) permettent de donner aux variables d’entrées. Supposons qu’on a suivi la même démarche décrite précédemment pour la création d’un projet. l’un des items est identifié par « 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).

Exemple : 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, (2) 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 :

(3) Poursuivre avec les autres moteurs. Cela donnera le tableau suivant.

(4) Enregistrer cette table et (5) fermer l’éditeur de mnémonique.

il semble bien inutile de répéter ce programme cinq fois. En effet. le circuit de mise en marche et d’arrêt de moteur est toujours le même. le circuit suivant est le circuit de commande d’un moteur en diagramme échelle : Comme on possède cinq moteurs. Il peut être plus efficace de l’écrire qu’une seule fois. Dans l’exemple des moteurs. .#Partie 7# Blocs de fonctions (FC) Un bloc de fonction FC correspond à une sous-routine appelée par d’autres blocs. C’est ce que permet de faire les blocs de fonction.

(1) mettre le curseur dans la zone de droite de la fenêtre du 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 ».Pour créer un bloc fonctionnel. La fenêtre suivante s’ouvre : .

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éé.

notez qu’il existe une zone de déclaration de variables locales que l’on peut utiliser pour définir les trois variables importantes. pour lancer l’éditeur STEP 7. (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. ARRÊT et MOTEUR. soit MARCHE. 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). . Dans l’éditeur STEP 7.(6) Double cliquez sur le bloc FC1.

(8) Entrez ce programme dans le bloc FC et (9) sauvegarder le bloc de fonction. Pour ce faire. Il reste maintenant à appeler ce bloc à cinq reprises avec les contacts d’entrée et de sortie de l’automate. (10) il faut ouvrir le programme principal qui est le bloc OB1. .

vous insérez un appel au bloc FC1. la mise en marche se fait par MARCHE 1. (13) Ajoutez ces contacts autour du bloc FC1 pour obtenir : . l’arrêt par ARRÊT 1 et le signal de sortie est MOTEUR 1. Pour le moteur #1.(12) En cliquant sur le bloc FC1 et en le glissant sur le réseau 1 du bloc OB1.

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

Ces éléments sont fort utiles pour générer des délais d’attente ou pour compter des événements. . nous avons accès à certaines fonctions dont les compteurs et les temporisations.#Partie 8# Les Temporisations Dans l’automate. Les temporisateurs offerts dans l’automate S7-300 sont de cinq types:  S_PULSE : temporisation sous forme d’impulsion  S_PEXT: temporisation sous forme d’impulsion prolongée  S_ODT: temporisation sous forme de retard à la montée (le signal de sortie est égal à 1 uniquement lorsque le temps programmé est écoulé et que le signal d’entrée est à 1)  S_ODTS : temporisation sous forme de retard à la montée mémorisé  S_OFFDT : temporisation sous forme de retard à la retombée (signal de sortie égal à 1 lorsque la temporisation s’exécute.

un temporisateur de 1 minute 45.33 secondes sera programmée : S5T#1M45S330MS. . Dans la plupart de nos applications. La durée de la temporisation est indiquée à l’entrée TV de la façon suivante : • Préfixe « S5T# » • Durée avec unités de mesure. 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. Ainsi. la lettre T indiquant une variable de temporisation et le nombre est le numéro de la temporisation (exemple : T12). nous utiliserons une temporisation de la forme « retard à la montée » (S_ODT).#Partie 8# Les Temporisations Les temporisations sont identifiées par T(nombre).

Exemple : soit une temporisation de 10 secondes commandée par un interrupteur I124.2. Ceci correspond à programmer le réseau suivant : .2 et qui allumera une sortie Q124.

#Partie 8# Les Compteurs Les compteur offerts dans l’automate S7-300 sont de trois types : CU pour compteur incrémental. Les compteurs sont identifiées par C(nombre). CD pour compteur décrémental et CUD pour compteur incrémental/décrémental. un compteur ayant une valeur initiale de 3 sera programmé : C#3. la lettre C indiquant une variable de comptage. sinon l’état logique est 1. on utilise un compteur décrémental. Pour ce compteur comme pour les autres. . le numéro de la temporisation (exemple : C1). Ainsi. l’état logique de la sortie est 0 si la valeur du compteur est 0. Dans plusieurs applications. La configuration de l’entrée PV du compteur est identifié de la façon suivante : • Préfixe « C#» • Nombre.

Exemple de programmation de trois types de compteurs : .

2 active l’entrée R (reset) qui remet le compteur à 0.Une impulsion sur l’entrée I124.1 active l’entrée S (set) qui charge la valeur mise à l’entrée PV dans le compteur .Exemple de visualisation d’un compteur incrémental CU : .0 fait incrémenter le compteur .Une impulsion sur l’entrée I124. .Une impulsion sur l’entrée d’incrémentation I124.

.1 lorsque la valeur du compteur est égale à 6. 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 (2 octets).Exemple: un programme qui fait l’incrément d’un compteur et qui fait activer la sortie Q124.

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

(bit). .Le Grafcet du point de vue partie commande (niveau II) est donné par: Le GRAFCET est composé d’étapes que nous représenterons en utilisant des mémoires internes (ou mémentos) identifiés M(octet).

Ainsi pour notre GRAFCET. L’automate reçoit deux signaux d’entrée : • Bouton poussoir « m » branché à l’entrée I124.1.3 .1 . • Transition « étape 4 – étape 1 » (Y004a) : M1. • Étape 4 : M0. Le GRAFCET est aussi composé de transitions que nous représenterons aussi avec des mémoires internes.0 • Capteur de présence de bouteille « pb » branché à l’entrée I124. • Étape 3 : M0. • Transition « étape 3 – étape 4» (Y003) : M1. • Étape 2 : M0. • Transition « étape 4 – étape 2 » (Y004b) : M1. nous pouvons choisir de faire la correspondance suivante : • Étape 1 : M0.4. • Transition « étape 2 – étape 3 » (Y002) : M1.1 . • Valve de remplissage « V » branchée à la sortie Q124.2 . • Transition « étape 1 – étape 2 » (Y001) : M1.3.1 L’automate envoie deux signaux de sortie : • Contacteur commandant le moteur « MT » branché à la sortie Q124.0 . .2 .0 .0 .

(1) créer un nouveau projet nommé « GAUG Premier GRAFCET ».En premier lieu. Ensuite. (2) créer une table de mnémoniques comme celle montrée ici : . Lors de la création de ce projet avec l’assistant demander d’inclure les blocs OB1 et OB100.

Le temporisateur T1 identifie l’état d’un temporisateur de 12 secondes avec délai sur la montée. .(3) Programmons dans le bloc de fonction FC1 les 5 transitions : L’équation logique de la première transition est : Y001=X001•m•(/pb) Cette équation contient l’état de l’étape validant cette transition (ici c’est l’étape 1 identifiée X001) et la réceptivité de cette transition. Les autres transitions auront comme équations logiques : Y002=X002•pb Y003=X002•T1 Y004a=X004•(/pb)•(/C1) Y004b=X004•(/pb)•C1 Le bit C1 identifie l’état d’un compteur décrémental qui donne un niveau logique 0 lorsque le compteur est à 0.

Le diagramme échelle de ce bloc FC1 sera donc : .

L’équation logique de la première étape est : X001=Y004b+X001×(/Y001)+Init Cette équation vérifie l’état de la transition précédant cette étape et celui de la transition qui suit. Les autres étapes auront comme équations logiques : X002=Y001+Y004b+X002×(/Y002) X003=Y002+X003×(/Y003) X004=Y003+X004×(/Y004a)×(/Y004b) .0.(4) Programmons maintenant les quatre équations représentant l’état des quatre étapes de ce GRAFCET dans le bloc de fonction FC2. Le signal « Init » initialise l’étape initiale et sera obtenu avec le bit interne M10.

Le diagramme échelle du bloc FC2 sera donc : .

Les équations logiques des actions seront : MT=X002+X004 V=X003 La temporisation et le compteur seront aussi dans ce bloc qui sera donc : .(5) Reste maintenant à programmer dans le bloc FC3 les actions de notre GRAFCET.

.

Ainsi. . OB1 sera : Le contact de remise à 0 du réseau 4 qui est identifié « (R) » est obtenu via le répertoire « Éléments de programmes » de la fenêtre « Éléments de programmes ». Le bloc OB1 doit remettre le bit d’initialisation « Init » à 0.(6) Pour que le tout fonctionne. il faut éditer le bloc OB1 pour qu’il appelle les 3 blocs de fonction.

(7) Donc lorsque l’on utilise un GRAFCET. on programme le bloc OB100 comme suit : .Le signal d’initialisation doit être mis à 1 lors de la mise en marche de l’automate (lorsque l’automate passe du mode STOP au mode RUN). Cela est obtenu en programmant le bloc OB100 qui s’exécute lors du changement de mode.

FC2 et FC3. (8) Mettre les entrées à 0 et transférer tous les blocs dans l’automate. puis (9) mettre ce dernier en mode RUN.  (10) Tester le programme en appuyant sur les boutons des entrées « m » et « pb » pour simuler ce procédé et examiner les voyants des sorties « MT » et « V ». Visualiser les blocs de fonctions FC1. .

Proposition des mini-projets  Réalisation d’un module d’automatisation sorties à relais pour les séances des travaux pratiques .

Merci pour votre attention .

Sign up to vote on this title
UsefulNot useful