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 :
 

  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. banque. de l’énergie ou de l’information à un coût rentable pour l’utilisateur. mécaniques. … . électroniques. … Société de service.  Exemples :   Usines de fabrication chimiques.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.

.

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

etc… .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. hydraulique.…) en une énergie mécanique associée à un mouvement. hydrauliques  Vérins rotatifs. Ils transforment une énergie (électrique. pneumatiques.  Moteurs  Vérins électriques.

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. hydrauliques : distributeur électropneumatiques et électro-hydrauliques.  Pour les moteurs électriques : contacteur ou variateur de vitesse  Vérins pneumatiques. batteries. compresseur pneumatique ou hydraulique) en une énergie adaptée à l'actionneur pour un mouvement précis. .

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

effacer .. OU. les fonctions de temporisation. de comptage. de calcul.  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. à partir d'un programme contenu dans sa mémoire.. lire.Architecture interne d’un API  Le microprocesseur réalise toutes les fonctions logiques ET.  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.

Structure interne d’un API .

Traiter le signal en le mettant en forme. Transmettre des informations aux pré-actionneurs (relais. 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 à :   . é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). Adapter les niveaux de tensions de l’U.

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 .

1  T2 devient passant. la bobine RL1 sera donc sous tension et commande la fermeture du contact de la sortie O0.1 .Fonctionnement de l’interface de sorties Lors de la commande d’une sortie automate :  L’unité de commande envoie un 1 logique (5V). 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’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 .

 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.: régulation et came électronique et des modules de communication point à point ou par bus ASi. 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.Caractéristiques techniques de Siemens S7-300  Interface Ethernet/PRO-Finet intégrée  CPUs de sécurité  CPUs  Modules de fonctions technologiques ex.  . Profibus ou Industrial Ethernet.

paramétrer et programmer votre CPU.  STEP7 autorise une programmation orientée objet: tous les objets sont représentés à l’écran par des icônes.  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.

Structure du programme en Step7  La programmation structurée permet la rédaction claire et transparente de programmes.  Pour permettre une programmation structurée confortable. 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 de communication CFB . les blocs fonctionnels systèmes SFB.

C'est donc à partir de ce bloc que l'on fera les appels aux différents blocs de programmes.  Les fonctions : FC et les blocs de fonctions FB C’est dans ces blocs que l’on va mettre les instructions à exécuter. L’OB100 et l’OB101 sont uniquement appelés aux démarrage (respectivement à chaud et à froid). 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. 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. . La numérotation est libre (de 0 à 255). On peut passer des données en créant des DB d’instance associés à un seul FB pour le passage de paramètres. On y appellera donc les blocs traitant les initialisations. La numérotation est libre (de 0 à 255). Ces blocs n’ont pas de mémoire.

Architecture du programme en Step7 .

Entrées (E ou I)  .Mémentos (Flag) (M)  .Temporisations (T)  .Compteurs (Z ou I ) .Sorties (A ou Q)  . 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. Dans le cadre de cette première approche.

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

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

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 .

(4) cliquez sur l’item Assistant Nouveau Projet pour lancer l’assistant aidant à la création d’un nouveau projet. (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. .

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

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

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

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

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

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

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

programmes. soit « GAUG_premier_programme » dans notre exemple. réseaux. . Ce répertoire contient tous les sous-répertoires et fichiers configurant toutes les composantes d’un projet. soit : automates. Le répertoire de base est identifié par le même nom que le projet.#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».

le second sur la configuration du réseau utilisé dans ce projet. .(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.

vous voyez apparaître dans l’écran de droite les items « Matériel » et « CPU314 IFM(1) ». en particulier des automates. .(2) En cliquant sur le répertoire « Station SIMATIC 300 » (ou sur l’item de droite « Station SIMATIC 300 »). 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 lancez le logiciel de configuration de matériel. La fenêtre suivante apparaît : . Etape 2: Configuration du matériel de l’automate (3) En double cliquant sur « Matériel ».

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

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

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

Si le processeur fonctionne correctement. ultérieurement. il initialise le chien de garde à intervalle régulier. Si le processeur est défaillant. ces mémentos pour mémoriser l’état des GRAFCET programmés dans l’automate.1 Nous utiliserons. 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 chien de garde est un dispositif qui surveille continuellement le processeur du module CPU. 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. Cette sécurité assure qu’un processeur défaillant ne risque pas de causer de graves incidents. il n’initialisera plus le chien de garde. le chien de garde bloque le fonctionnement du processeur. Un bit de mémento est identifié de la façon suivante : M(octet). (bit) Exemple : M10.

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

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

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

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 ». « 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 troisième item permet de lancer le logiciel de définition de mnémoniques.

La fenêtre de l’éditeur apparaît alors. .(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 ».

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

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

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. . 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 puis cliquez sur l’icône de la bobine de sortie et inscrire le numéro de la bobine.0.

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

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

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

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

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. Lorsque l’automate est sous tension.

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

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

.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. 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. une autre façon de visualiser. cliquer sur l’icône « lunettes ».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. (3) Appuyez sur les boutons et vérifiez les changements d’état à l’écran. Un élément actif est dessiné avec un trait vert gras. (5) Remettre l’automate en mode RUN.

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.

#Partie 6# Utilisation des étiquettes (mnémoniques) Les étiquettes (appelées aussi mnémoniques) permettent de donner aux variables d’entrées. Dans ce menu. (1) Double cliquez sur cet item pour lancer l’éditeur de mnémoniques. 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 ». . de sorties ou de mémoire interne un nom plus révélateur que I124.0 par exemple.

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.

le circuit de mise en marche et d’arrêt de moteur est toujours le même. En effet. Il peut être plus efficace de l’écrire qu’une seule fois.#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. il semble bien inutile de répéter ce programme cinq fois. C’est ce que permet de faire les blocs de fonction. le circuit suivant est le circuit de commande d’un moteur en diagramme échelle : Comme on possède cinq moteurs.

(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 ». La fenêtre suivante s’ouvre : .Pour créer un bloc fonctionnel.

(4) Appelez le bloc FC1 et choisissez « CONT » .Les blocs de fonctions sont identifiés par le préfixe FC suivi d’un suffixe variant de 1 à 255. . (5) En cliquant OK. le bloc est alors créé.

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

. 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.(8) Entrez ce programme dans le bloc FC et (9) sauvegarder le bloc de fonction. Pour ce faire.

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

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

. nous avons accès à certaines fonctions dont les compteurs et les temporisations. 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.#Partie 8# Les Temporisations Dans l’automate. Ces éléments sont fort utiles pour générer des délais d’attente ou pour compter des événements.

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. un temporisateur de 1 minute 45. nous utiliserons une temporisation de la forme « retard à la montée » (S_ODT).33 secondes sera programmée : S5T#1M45S330MS. 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. Ainsi. Dans la plupart de nos applications. la lettre T indiquant une variable de temporisation et le nombre est le numéro de la temporisation (exemple : T12).#Partie 8# Les Temporisations Les temporisations sont identifiées par T(nombre). .

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

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

Exemple de programmation de trois types de compteurs : .

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

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

Pour démarrer l’automatisme. un capteur de présence de bouteille prête à être remplie « pb » eu un bouton poussoir « m ».#Etude d’un exemple# Ce petit automatisme de remplissage de bouteilles est constitué d’un convoyeur commandé par un moteur « MT ». 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. 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. il suffit d’appuyer sur le bouton poussoir « m ». . d’une valve de remplissage « V » et de deux capteurs.

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

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

Ensuite. (1) créer un nouveau projet nommé « GAUG Premier GRAFCET ». (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.En premier lieu.

Le temporisateur T1 identifie l’état d’un temporisateur de 12 secondes avec délai sur la montée. 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. .(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.

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.0. Les autres étapes auront comme équations logiques : X002=Y001+Y004b+X002×(/Y002) X003=Y002+X003×(/Y003) X004=Y003+X004×(/Y004a)×(/Y004b) .(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. 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. 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 ».

Cela est obtenu en programmant le bloc OB100 qui s’exécute lors du changement de mode. (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).

 (8) Mettre les entrées à 0 et transférer tous les blocs dans l’automate. FC2 et FC3. Visualiser les blocs de fonctions FC1.  (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 ». . puis (9) mettre ce dernier en mode RUN.

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

Merci pour votre attention .

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.