Sunteți pe pagina 1din 104

Universit Libre de Tunis

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

Jeudi 09 Fvrier 2012

Plan
Introduction aux systmes automatiss Gamme des APIs Siemens S7-200, S7-

300, S7-400 Programmer avec le Step7 Etude dun exemple industriel Proposition des mini-projets

Introduction aux Systmes Automatiss


La fonction globale de tout systme automatis est de confrer une

valeur ajoute un ensemble de matires duvre dans un environnement ou contexte donn. Matires duvres :

Produit: chimique, lectronique, textile, Energie: hydraulique, lectrique, thermique, Information: audiovisuelle, crite, physique, ... Lobjectif global pour lequel a t dfini, conu ou modifi le systme La diffrence entre ltat de sortie dun systme et son tat dentre

Valeur ajoute :

Introduction aux Systmes Automatiss


Un systme de production : cest un systme caractre industriel

qui rpond au besoin dlaborer des produits, de lnergie ou de linformation un cot rentable pour lutilisateur.

un ensemble dlments ou de dispositifs opratifs plus ou moins mcaniss ( Partie oprative ) des oprateurs humains ou de dispositifs de commande pour assurer la coordination des dispositifs opratifs.

Exemples :

Usines de fabrication chimiques, lectroniques, mcaniques, Socit de service, banque,

Introduction aux Systmes Automatiss


Lautomatisation consiste transfrer tout ou partie des tches de

coordination, auparavant excutes par des oprateurs humains, dans un ensemble d'objets techniques appel partie commande.
Objectifs :

Accrotre la productivit du systme Amliorer la qualit du produit S'adapter des contextes particuliers (milieux hostiles, manipulation des lourdes charges, tches rptitives,

Augmenter la scurit Objectifs financiers,

Structure dun systme automatis

Structure de lunit de traitement

LAPI au cur du systme automatis

LAPI au cur du systme automatis


Les actionneurs sont des systmes qui coordonnent et assurent les

mouvements des organes dun systme de production. Ils transforment une nergie (lectrique, pneumatique, hydraulique,) en une nergie mcanique associe un mouvement. Moteurs Vrins lectriques, pneumatiques, hydrauliques Vrins rotatifs, etc

LAPI au cur du systme automatis


Les pr-actionneurs sont des systmes ayant pour fonction de transformer

l'nergie issue d'une source (rseau lectrique, batteries, compresseur pneumatique ou hydraulique) en une nergie adapte l'actionneur pour un mouvement prcis. Pour les moteurs lectriques : contacteur ou variateur de vitesse Vrins pneumatiques, hydrauliques : distributeur lectropneumatiques et lectro-hydrauliques.

LAPI au cur du systme automatis


Les capteurs sont les systmes via lesquels les informations issues de la

P.O. sont envoyes la P.C. Ils ont pour fonction de dlivrer une grandeur lectrique, image d'une grandeur physique. Codeur incrmental, Dtecteurs : inductifs, photo-lectriques, de contact, Camra, code barres Capteur de fin de course, etc

Architecture interne dun API


Le microprocesseur ralise toutes les fonctions logiques ET, OU, les

fonctions de temporisation, de comptage, de calcul... partir d'un programme contenu dans sa mmoire.

Les Bus sont des liaisons parallles dans lesquelles vhiculent les

informations (sous forme binaire) et qui assurent la connectivit entre les diffrents lments dun API.

La zone mmoire permet de recevoir et conserver :


les informations issus des capteurs les informations gnres par le processeur les programmes du processus Actions possibles: Ecrire, lire, effacer

Structure interne dun API

Structure interne dun API


Les interfaces dentres sont destins :

Recevoir des informations en provenance des lments de dtection (capteurs) et du pupitre oprateur (BP). Traiter le signal en le mettant en forme, en liminant les parasites et en isolant lectriquement lunit de commande de la partie oprative. Transmettre des informations aux pr-actionneurs (relais, lectrovannes ) et aux lments de signalisation (voyants) du pupitre. Adapter les niveaux de tensions de lU.C et garantir une isolation galvanique

Les interfaces de sorties sont destines :

Fonctionnement de linterface dentres


Lors de la fermeture du capteur : LED1 signale que lentre automate est actionne La LED D de lopto-coupleur sclaire Le photo transistor T de lopto-coupleur devient passant La tension Vs=0V

Fonctionnement de linterface de sorties


Lors de la commande dune sortie automate : Lunit de commande envoie un 1 logique (5V), T1 devient passant et donc D sclaire Le photo transistor T de loptocoupleur devient passant LED 1 sclaire et nous informe de la commande de la sortie O0,1 T2 devient passant, la bobine RL1 sera donc sous tension et commande la fermeture du contact de la sortie O0,1

Fonctionnement de lAPI

Diagramme fonctionnel dun systme automatis


Pour rsumer..

Les APIs en march


Siemens Schneider (Tlmcanique TSX) Allen Bradley Omron Mitsubishi Rockwell Moeller Ge-Fanuc Etc

Les fabricants sont aussi programmation de lAPI.

les

concepteurs

des

logiciels

de

Gamme des APIs Siemens


Simatic S7-200 Simatic S7-300 Simatic S7-400 Simatic S7-1200 Simatic C7 Simatic ET-200 Etc..

S7-300 CPU 314

S7-300 CPU 313

S7-300 CPU 315

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 dfauts 6 Carte mmoire 7 Interface multipoint (MPI) 8 Connecteur frontal 9 Volet en face avant

Caractristiques techniques de Siemens S7-300


Interface Ethernet/PRO-Finet intgre CPUs de scurit CPUs Modules de fonctions

technologiques ex.: rgulation et came lectronique et des modules de communication point point ou par bus ASi, Profibus ou Industrial Ethernet.
Simplicit de montage et sa grande

compactes avec fonctions technologiques et priphrie intgres 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.
Modules pour emploi dans des zones atmosphre explosive

densit d'implantation avec des modules au modulo 32 permettent un gain de place apprciable dans les armoires lectriques.

Programmer avec le logiciel de programmation STEP7


STEP7 est le nom du logiciel de programmation pour les systmes SIMATIC S7/M7 STEP7 vous offre les fonctionnalits ncessaires pour configurer, paramtrer et programmer votre CPU. STEP7 autorise une programmation oriente objet: tous les objets sont reprsents lcran par des icnes. STEP7 vous offre les fonctions dassistance pour rsoudre efficacement votre problme dautomatisation.

Structure du programme en Step7


La programmation structure permet la rdaction claire et transparente de

programmes. Elle permet la construction d'un programme complet l'aide de modules qui peuvent tre changs et/ou modifis volont.
Pour permettre une programmation structure confortable, il faut prvoir

plusieurs types de modules (ou blocs) : Les blocs dorganisation : OB Les fonctions : FC Les blocs de fonction : FB Fonctions systmes SFC, les blocs fonctionnels systmes SFB, les blocs fonctionnels de communication CFB

Les blocs dorganisation : OB

On retiendra principalement l'OB1 qui est examin chaque cycle d'automate. C'est donc partir de ce bloc que l'on fera les appels aux diffrents blocs de programmes. LOB100 et lOB101 sont uniquement appels aux dmarrage (respectivement chaud et froid). On y appellera donc les blocs traitant les initialisations.
Les fonctions : FC et les blocs de fonctions FB

Cest dans ces blocs que lon va mettre les instructions excuter. La numrotation est libre (de 0 255). Ces blocs nont pas de mmoire.
Les blocs de fonction : FB

Ces blocs sont paramtrables. On peut passer des donnes en crant des DB dinstance associs un seul FB pour le passage de paramtres. La numrotation est libre (de 0 255). Ils peuvent tre trs utiles pour rduire le code en crant des DB d'instance associs un seul FB avec passage de paramtres.

Architecture du programme en Step7

Type de variables
Les diffrents types de variables sont donns dans le tableau qui suit. Dans le cadre de cette premire approche, on fera plus particulirement attention aux variables suivantes:
- Entres (E ou I) - Sorties (A ou Q) - Mmentos (Flag) (M) - Temporisations (T) - Compteurs (Z ou I )

Type de variables
Bit variables :
- Input E0.0 127.7 (#byte.#bit) - Output A 0.0 127.7 - Flag M 0.0 255.7 - Data D 0.0 255.7 - Tempo T 0 127 - Compteur Z 0 127

Word variables (= 16 bits)


- Input EW 0 126 - Output AW 0 126 - Flag (mmo interne) MW 0 254 Data DW 0 255

Byte variables (=8 bits)


- Input EB 0 127 - Output AB 0 127 - Flag MB 0 255 - Data (left byte) DL 0 255 - Data (right byte) DR 0 255

Double Word variables (= 32 bits)

Constantes Pointer, etc

Adressage de variables
Les objets E, A, M, et DB, sont rangs dans des octets ( 8 bits ), on peut accder un BIT, un OCTET, un MOT de 16 bits ou un DOUBLE MOT ( 32 bits )

Exemples :

- M4.3 correspond au bit 3 de loctet 4, on peut le tester en combinaison ET, OU avec un autre bit, on peut lui affecter le rsultat dune combinaison, on peut le mettre 1 ou 0 . - MB4 correspond aux 8 bits de loctet 4, on peut comparer sa valeur, on peut ladditionner, le soustraire, le multiplier, le diviser, on peut lui affecter le rsultat dune opration - MW2 correspond au 16 bits constitu par les octets 2 - MD1 correspond au 32 bits constitu des octets 1, 2, 3 et 4

Adressage de variables

Type de ladressage

Adresse de loctet

Adresse du bit

#Partie 1#
Etape 1: Lancer le logiciel

Comment crer un projet???

(1) Afficher Item Programs du menu Dmarrer (2) cliquez sur litem SIMATIC Manager du menu Simatic. Ou lancez directement le logiciel depuis le raccourci sur votre bureau

Etape 2: Cration dun projet

Le logiciel SIMATIC Manager tant maintenant en marche, (3) cliquez sur litem Fichier pour ouvrir le menu droulant. (4) cliquez sur litem Assistant Nouveau Projet pour lancer lassistant aidant la cration dun nouveau projet.

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

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

(6) Slectionner la CPU correspondante. (7) Le champ nom de la CPU peut tre modifi pour identifier la fonction ou lemplacement de ce CPU dans lusine (par exemple lautomate ayant ce CPU est en charge de la Station de pompage ). (8) Enfin, ladresse de communication MPI doit tre fixe 2.

(9) Une fois ces oprations faites, cliquez sur Suivant. Cette troisime fentre apparat alors. Cest la deuxime fentre de configuration du projet.

Remarques
(10) Il faut choisir les blocs dorganisationnels utiliser. Pour ce premier projet, nous nutiliserons que le bloc OB1. Ce bloc contient le programme qui sera continuellement excut par lautomate. Lautomate programmable excute la squence suivante de faon rptitive, tant quil est en mode dexcution : Lecture de ltat des entres (pour savoir ltat logique des capteurs, des boutons,..) Excution complte du bloc OB1; criture de ltat des sorties obtenues suite lexcution du bloc OB1 (pour allumer des voyants, dmarrer des moteurs, dplacer des vrins, ). (11) Il faut aussi choisir le langage de programmation. Lautomate nous permet de le programmer selon les trois langages suivants : LIST : en liste dtat (langage ayant lapparence de lassembleur); CONT : en langage contacts (ou diagrammes chelle); LOG : en logigrammes.

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

(13) Il vous suffit alors de choisir un nom pour le projet, puis (14) de cliquer sur Crer. Lcran du Simatic Manager devrait alors avoir cette apparence :

#Partie 2#
Etape 1: Structure dun projet

Structure dun projet configuration de lautomate

La structure du projet est montre dans la partie gauche de la fentre prcdente identifie nom_du_projet. Le rpertoire de base est identifi par le mme nom que le projet, soit GAUG_premier_programme dans notre exemple. Ce rpertoire contient tous les sous-rpertoires et fichiers configurant toutes les composantes dun projet, soit : automates, rseaux, programmes.

(1) En cliquant sur le rpertoire Premier programme vous voyez apparatre les items Station SIMATIC 300 et MPI(1) . Le premier item mne la dfinition du matriel utilis dans ce projet, le second sur la configuration du rseau utilis dans ce projet.

(2) En cliquant sur le rpertoire Station SIMATIC 300 (ou sur litem de droite Station SIMATIC 300 ), vous voyez apparatre dans lcran de droite les items Matriel et CPU314 IFM(1) . Le premier item mne la dfinition du matriel utilis dans le projet, en particulier des automates. Le second item mne la programmation de lunique automate du projet nomm CPU314 IFM(1) .

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

Dans la fentre de configuration du matriel on voit apparatre plusieurs rgions. Dune part, la fentre de configuration qui montre la localisation des modules dans les rails de montage. En position 2, nous retrouvons le CPU de lautomate identifi par le nom CPU314 IFM(1) . En dessous, nous retrouvons une description plus dtaille de la configuration de ces modules. Ainsi, le CPU en position 2, possde un numro de pice (Rfrence), une adresse rseau gale 2 (Adresse MPI), un certain nombre dentres numrotes de 124 155 et un certain nombre de sorties numrotes de 124 155.

Fentre de configuration du matriel

(4) En double cliquant sur le module CPU (qui se trouve dans la liste gauche), la fentre de configuration du CPU souvre :

La page de longlet Gnral contient une foule dinformations sur le module CPU : La taille de la mmoire (Ko) Le nbre dentres digitales Le nbre de sorties digitales Le nbre dentres analogiques Le nbre de sorties analogiques La vitesse dexcution de 1000 instructions logiques Le numro de rfrence La station rseau (il ny a pas de rseau).

(5) En cliquant longlet Cycle/Mmento de cadence , la fentre suivante apparat.

Le temps de surveillance de cycle est lintervalle de temps maximal entre deux initialisations du chien de garde . Le chien de garde est un dispositif qui surveille continuellement le processeur du module CPU.

Le chien de garde est un dispositif qui surveille continuellement le processeur du module CPU. Si le processeur fonctionne correctement, il initialise le chien de garde intervalle rgulier. Si le processeur est dfaillant, il ninitialisera plus le chien de garde. Ds que la dernire initialisation remonte un dlai suprieur au temps de surveillance, le chien de garde bloque le fonctionnement du processeur. Cette scurit assure quun processeur dfaillant ne risque pas de causer de graves incidents. Le mmento de cadence permet de dfinir un octet de mmoire interne qui fera clignoter ses 8 bits 8 frquences diffrentes, ce qui peut tre utilis pour faire clignoter des voyants. Un bit de mmento est identifi de la faon suivante : M(octet). (bit) Exemple : M10.1 Nous utiliserons, ultrieurement, ces mmentos pour mmoriser ltat des GRAFCET programms dans lautomate.

(6) Ne pas activer de mmento de cadence. (7) Fermer la fentre. Lcran redevient comme celui montr par la figure suivante :

Dans la partie droite de la figure prcdente, on trouve le catalogue du matriel (liste du matriel de lautomate) :

PROFIBUS-DP : quipements pour le rseau; SIMATIC 300 : modules des automates de la srie 300; SIMATIC 400 : modules des automates de la srie 400; SIMATIC PC Based Control; STATION PC SIMATIC.

Lautomate que nous avons choisi au dbut est un API quip dun CPU de type 314, il fait partie de la srie 300.

(8) Ajoutons le module dalimentation la configuration. Ce module se retrouve dans le rpertoire PS-300. Le module dalimentation est situ gauche du module CPU. Il est identifi PS307 2A. Pour lajouter la configuration, il suffit de cliquer sur cet item et le glisser vers la ligne 1 du rail de droite. (9) Sauvegarder cette configuration en cliquant litem Enregistrer du menu droulant Station. (10) Fermer la fentre.

#Partie 3#

Ecriture du programme pour lautomate

Etape 1: Structure dun projet (suite) (1) En cliquant sur le rpertoire Programme S7 vous voyez apparatre les items Sources , Mnmoniques et Blocs . Le premier item mne la liste de fichiers utilisant des logiciels spcialiss pour programmer lautomate avec des langages avancs. Le second item vers la liste des blocs crs pour lautomate avec le logiciel STEP 7 . Le troisime item permet de lancer le logiciel de dfinition de mnmoniques.

(2) Cliquez sur le rpertoire Blocs (ou sur litem Blocs ). La fentre de droite devient alors :

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

Etape 2: Programmation avec le logiciel STEP7 En double cliquant sur litem OB1 de la fentre prcdente, le logiciel STEP 7 se lance. Voici la fentre de lditeur STEP7

Dans la fentre de droite, nous retrouvons lensemble des lments de programme ou fonctions disponibles pour cet automate.

Dans la fentre de gauche, nous retrouvons la page de lditeur de programme. On y retrouve : Un champ pour insrer le titre du bloc (optionnel); Une zone de commentaire pour dcrire la fonction du bloc (optionnel); Un ensemble de rseaux (ou barreaux) ayant : - Un champ pour insrer le titre du rseau (optionnel); - Une zone de commentaire pour le rseau (optionnel); - La zone de programmation du rseau.

Comment programmer un barreau de langage contact?? (4) Positionner le curseur au dbut de la zone de programmation du rseau 1:

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

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

Exemple: programmons le barreau suivant :

(a) Programmer la premire ligne du barreau tel que montr la figure cicontre ; puis inscrire les adresses.

Exemple: programmons le barreau suivant :

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

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

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

Enfin, Sauvegarder votre programme en cliquant sur loption Sauvegarde du menu droulant Fichier .

Chargement du programme dans lautomate


#Partie 4#
(1) Mettre lautomate sous tension.

Lorsque lautomate est sous tension, le voyant 24 Vcc est au vert pour indiquer que tout est normal.

Le commutateur de mode: Sur le module du CPU, nous retrouvons un commutateur de mode. Ce commutateur permet de dterminer si lautomate doit excuter le programme ou non:
En mode STOP, lautomate nexcute pas le programme. Dans ce mode, il est possible de transfrer un programme du PC vers lAPI et de transfrer un programme de lAPI vers le PC. Il est aussi possible de modifier le programme dans lAPI. En mode RUN, lautomate excute le programme. Dans ce mode, il est possible de transfrer un programme de lAPI vers le PC. Il est impossible de transfrer un programme du PC vers lAPI. Il est aussi impossible de modifier un programme dans lautomate. En mode RUN-P (RUN-PROGRAM), lautomate excute le programme. Dans ce mode, il est possible de transfrer un programme du PC vers lAPI et de transfrer un programme de lAPI vers le PC. Il est aussi possible de modifier le programme dans lautomate.

(2) Mettre le commutateur en position STOP. (3) Pour le chargement du programme dans lautomate, retourner au SIMATIC manager et slectionner litem Blocs. La fentre du SIMATIC manager devrait ressembler :

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

Systme cible Charger (ou CTRL+L)

La fentre apparat :

suivante

(6) Cliquer alors sur OUI pour craser lancien programme. Votre programme est maintenant dans lautomate.

Visualisation du programme dans lautomate


#Partie 5#
Bien que lobservation des voyants des sorties permette de vrifier ltat des sorties en fonction de ltat des entres, une autre faon de visualiser, cest via lditeur de programme STEP 7 : (1) Double cliquez sur le bloc OB1. Lditeur est alors lanc et le programme est affich. (2) Pour visualiser ltat des variables dans lautomate, cliquer sur licne lunettes . Un lment actif est dessin avec un trait vert gras. (3) Appuyez sur les boutons et vrifiez les changements dtat lcran. Notez lindication du mode de fonctionnement sur la ligne dtat au bas de lcran. (4) Mettre lautomate en mode STOP et regarder le changement de mode sur la ligne dtat. (5) Remettre lautomate en mode RUN.

Visualisation du programme dans lautomate


#Partie 5#

Visualisation du programme dans lautomate


#Partie 5#
Une autre faon de visualiser est dutiliser litem Visualiser/forcer des variables du menu droulant Systme cible du logiciel STEP 7. (6) En cliquant sur cet item, une fentre souvre alors :

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

(8) Pour voir apparatre la valeur actuelle des paramtres, cliquez sur licne lunettes . La valeur logique apparat sous le format 2#0 ou 2#1. Le prfixe 2# indique simplement que la valeur en suffixe est une valeur binaire.

#Partie 6#

Utilisation des tiquettes (mnmoniques)

Les tiquettes (appeles aussi mnmoniques) permettent de donner aux variables dentres, de sorties ou de mmoire interne un nom plus rvlateur que I124.0 par exemple. Supposons quon a suivi la mme dmarche dcrite prcdemment pour la cration dun projet.

Dans ce menu, lun des items est identifi par Mnmoniques . (1) Double cliquez sur cet item pour lancer lditeur de mnmoniques.

La fentre suivante apparat alors :

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

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

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

(4) Enregistrer cette table et (5) fermer lditeur de mnmonique.

#Partie 7#

Blocs de fonctions (FC)

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

Comme on possde cinq moteurs, il semble bien inutile de rpter ce programme cinq fois. Il peut tre plus efficace de lcrire quune seule fois. Cest ce que permet de faire les blocs de fonction.

Pour crer un bloc fonctionnel, (1) mettre le curseur dans la zone de droite de la fentre du projet et (2) appuyer sur le bouton de souris de droite. Le menu suivant apparat :

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

Les blocs de fonctions sont identifis par le prfixe FC suivi dun suffixe variant de 1 255. (4) Appelez le bloc FC1 et choisissez CONT . (5) En cliquant OK, le bloc est alors cr.

(6) Double cliquez sur le bloc FC1, pour lancer lditeur STEP 7. Dans lditeur STEP 7, notez quil existe une zone de dclaration de variables locales que lon peut utiliser pour dfinir les trois variables importantes, soit MARCHE, ARRT et MOTEUR. Le type de chaque variable est boolen (BOOL) et les deux premires sont des entres (in) et la dernire une sortie (out). (7) Dfinissez les variables pour obtenir le tableau suivant :

Il reste crire le programme dans le bloc FC sous la fentre de dclaration de variables.

(8) Entrez ce programme dans le bloc FC et (9) sauvegarder le bloc de fonction.

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

(12) En cliquant sur le bloc FC1 et en le glissant sur le rseau 1 du bloc OB1, vous insrez un appel au bloc FC1.

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

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

#Partie 8#

Les Temporisations

Dans lautomate, nous avons accs certaines fonctions dont les compteurs et les temporisations. Ces lments sont fort utiles pour gnrer des dlais dattente ou pour compter des vnements. Les temporisateurs offerts dans lautomate S7-300 sont de cinq types:
S_PULSE : temporisation sous forme dimpulsion S_PEXT: temporisation sous forme dimpulsion prolonge S_ODT: temporisation sous forme de retard la monte (le signal de sortie est gal 1 uniquement lorsque le temps programm est coul et que le signal dentre est 1) S_ODTS : temporisation sous forme de retard la monte mmoris S_OFFDT : temporisation sous forme de retard la retombe (signal de sortie gal 1 lorsque la temporisation sexcute.

#Partie 8#

Les Temporisations

Les temporisations sont identifies par T(nombre), la lettre T indiquant une variable de temporisation et le nombre est le numro de la temporisation (exemple : T12). La dure de la temporisation est indique lentre TV de la faon suivante : Prfixe S5T# Dure avec units de mesure. Ainsi, un temporisateur de 1 minute 45.33 secondes sera programme : S5T#1M45S330MS. Dans la plupart de nos applications, nous utiliserons une temporisation de la forme retard la monte (S_ODT). Cette temporisation voit sa sortie passer de 0 1 un certain temps prprogramm aprs le passage de 0 1 de lentre.

Exemple : soit une temporisation de 10 secondes commande par un interrupteur I124.2 et qui allumera une sortie Q124.2. Ceci correspond programmer le rseau suivant :

#Partie 8#

Les Compteurs

Les compteur offerts dans lautomate S7-300 sont de trois types : CU pour compteur incrmental, CD pour compteur dcrmental et CUD pour compteur incrmental/dcrmental. Les compteurs sont identifies par C(nombre), la lettre C indiquant une variable de comptage, le numro de la temporisation (exemple : C1). La configuration de lentre PV du compteur est identifi de la faon suivante : Prfixe C# Nombre. Ainsi, un compteur ayant une valeur initiale de 3 sera programm : C#3. Dans plusieurs applications, on utilise un compteur dcrmental. Pour ce compteur comme pour les autres, ltat logique de la sortie est 0 si la valeur du compteur est 0, sinon ltat logique est 1.

Exemple de programmation de trois types de compteurs :

Exemple de visualisation dun compteur incrmental CU :

- Une impulsion sur lentre I124.1 active lentre S (set) qui charge la valeur mise lentre PV dans le compteur - Une impulsion sur lentre dincrmentation I124.0 fait incrmenter le compteur - Une impulsion sur lentre I124.2 active lentre R (reset) qui remet le compteur 0.

Exemple: un programme qui fait lincrment dun compteur et qui fait activer la sortie Q124.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 entire il faut dabord faire sa conversion en entier 16 bits (2 octets).

#Etude dun exemple#

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

Le Grafcet du point de vue partie commande (niveau II) est donn par:

Le GRAFCET est compos dtapes que nous reprsenterons en utilisant des mmoires internes (ou mmentos) identifis M(octet).(bit).

Ainsi pour notre GRAFCET, nous pouvons choisir de faire la correspondance suivante : tape 1 : M0.0 ; tape 2 : M0.1 ; tape 3 : M0.2 ; tape 4 : M0.3. Le GRAFCET est aussi compos de transitions que nous reprsenterons aussi avec des mmoires internes. Transition tape 1 tape 2 (Y001) : M1.0 ; Transition tape 2 tape 3 (Y002) : M1.1 ; Transition tape 3 tape 4 (Y003) : M1.2 ; Transition tape 4 tape 1 (Y004a) : M1.3 ; Transition tape 4 tape 2 (Y004b) : M1.4. Lautomate reoit deux signaux dentre : Bouton poussoir m branch lentre I124.0 Capteur de prsence de bouteille pb branch lentre I124.1 Lautomate envoie deux signaux de sortie : Contacteur commandant le moteur MT branch la sortie Q124.0 ; Valve de remplissage V branche la sortie Q124.1.

En premier lieu, (1) crer un nouveau projet nomm GAUG Premier GRAFCET . Lors de la cration de ce projet avec lassistant demander dinclure les blocs OB1 et OB100. Ensuite, (2) crer une table de mnmoniques comme celle montre ici :

(3) Programmons dans le bloc de fonction FC1 les 5 transitions : Lquation logique de la premire transition est : Y001=X001m(/pb) Cette quation contient ltat de ltape validant cette transition (ici cest ltape 1 identifie X001) et la rceptivit de cette transition. Les autres transitions auront comme quations logiques : Y002=X002pb Y003=X002T1 Y004a=X004(/pb)(/C1) Y004b=X004(/pb)C1 Le bit C1 identifie ltat dun compteur dcrmental qui donne un niveau logique 0 lorsque le compteur est 0. Le temporisateur T1 identifie ltat dun temporisateur de 12 secondes avec dlai sur la monte.

Le diagramme chelle de ce bloc FC1 sera donc :

(4) Programmons maintenant les quatre quations reprsentant ltat des quatre tapes de ce GRAFCET dans le bloc de fonction FC2. Lquation logique de la premire tape est : X001=Y004b+X001(/Y001)+Init Cette quation vrifie ltat de la transition prcdant cette tape et celui de la transition qui suit. Le signal Init initialise ltape initiale et sera obtenu avec le bit interne M10.0. Les autres tapes auront comme quations logiques : X002=Y001+Y004b+X002(/Y002) X003=Y002+X003(/Y003) X004=Y003+X004(/Y004a)(/Y004b)

Le diagramme chelle du bloc FC2 sera donc :

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

(6) Pour que le tout fonctionne, il faut diter le bloc OB1 pour quil appelle les 3 blocs de fonction. Le bloc OB1 doit remettre le bit dinitialisation Init 0. Ainsi, OB1 sera :

Le contact de remise 0 du rseau 4 qui est identifi (R) est obtenu via le rpertoire lments de programmes de la fentre lments de programmes .

Le signal dinitialisation doit tre mis 1 lors de la mise en marche de lautomate (lorsque lautomate passe du mode STOP au mode RUN). Cela est obtenu en programmant le bloc OB100 qui sexcute lors du changement de mode. (7) Donc lorsque lon utilise un GRAFCET, on programme le bloc OB100 comme suit :

(8) Mettre les entres 0 et transfrer tous les blocs dans

lautomate, puis (9) mettre ce dernier en mode RUN.

(10) Tester le programme en appuyant sur les boutons des

entres m et pb pour simuler ce procd et examiner les voyants des sorties MT et V . Visualiser les blocs de fonctions FC1, FC2 et FC3.

Proposition des mini-projets


Ralisation dun module dautomatisation sorties relais pour

les sances des travaux pratiques

Merci pour votre attention