You are on page 1of 720

Introduction sur le produit et installation

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Installation Conception de la solution d'automatisation

SIMATIC Programmer avec STEP 7


Manuel

Principes de conception d'une structure de programme Dmarrage et utilisation du programme

Cration et dition du projet Edition de projets avec des versions differentes de STEP 7

Dfinition de mnmoniques Cration de blocs et de bibliothques

Cration de blocs de code Cration de blocs de donnes Paramtrage de blocs de donnes


Ce manuel est livr avec la documentation rfrence : 6ES7810-4CA10-8CW0

Cration de sources LIST Affichage des donnes de rfrence Vrifier la cohrence des blocs et horodatage comme proprit de bloc Suite page suivante

05/2010
A5E02789667-01

Siemens AG Industry Sector Postfach 48 48 90026 NRNBERG ALLEMAGNE

A5E02789667-01 02/2010

Copyright Siemens AG 2010. Sous rserve de modifications techniques

continuacn

Configuration de messages Contrle-commande de variables Etablissement d'une liaison en ligne et choix de la CPU

16 17 18 19 20 21 22 23 24 25 26 27

SIMATIC Programmer avec STEP 7


Manuel

Chargement Test avec des tables de variables Test avec la visualisation d'tat du programme Test avec le programme de simulation S7-PLCSIM (logiciel optionnel)

Diagnostic

Impression et archivage Utilisation des systmes d'automatisation M7

Astuces et conseils
Ce manuel est livr avec la documentation rfrence : 6ES7810-4CA10-8CW0

Annexe

05/2010
A5E02789667-01

Mentions lgales Signaltique d'avertissement


Ce manuel donne des consignes que vous devez respecter pour votre propre scurit et pour viter des dommages matriels. Les avertissements servant votre scurit personnelle sont accompagns d'un triangle de danger, les avertissements concernant uniquement des dommages matriels sont dpourvus de ce triangle. Les avertissements sont reprsents ci-aprs par ordre dcroissant de niveau de risque. DANGER signifie que la non-application des mesures de scurit appropries entrane la mort ou des blessures graves. ATTENTION signifie que la non-application des mesures de scurit appropries peut entraner la mort ou des blessures graves. PRUDENCE accompagn dun triangle de danger, signifie que la non-application des mesures de scurit appropries peut entraner des blessures lgres. PRUDENCE non accompagn dun triangle de danger, signifie que la non-application des mesures de scurit appropries peut entraner un dommage matriel. IMPORTANT signifie que le non-respect de l'avertissement correspondant peut entraner l'apparition d'un vnement ou d'un tat indsirable. En prsence de plusieurs niveaux de risque, c'est toujours l'avertissement correspondant au niveau le plus lev qui est reproduit. Si un avertissement avec triangle de danger prvient des risques de dommages corporels, le mme avertissement peut aussi contenir un avis de mise en garde contre des dommages matriels.

Personnes qualifies
Lappareil/le systme dcrit dans cette documentation ne doit tre manipul que par du personnel qualifi pour chaque tche spcifique. La documentation relative cette tche doit tre observe, en particulier les consignes de scurit et avertissements. Les personnes qualifies sont, en raison de leur formation et de leur exprience, en mesure de reconnatre les risques lis au maniement de ce produit / systme et de les viter.

Utilisation des produits Siemens conforme leur destination


Tenez compte des points suivants: ATTENTION Les produits Siemens ne doivent tre utiliss que pour les cas d'application prvus dans le catalogue et dans la documentation technique correspondante. S'ils sont utiliss en liaison avec des produits et composants d'autres marques, ceux-ci doivent tre recommands ou agrs par Siemens. Le fonctionnement correct et sr des produits suppose un transport, un entreposage, une mise en place, un montage, une mise en service, une utilisation et une maintenance dans les rgles de l'art. Il faut respecter les conditions d'environnement admissibles ainsi que les indications dans les documentations affrentes.

Marques de fabrique
Toutes les dsignations repres par sont des marques dposes de Siemens AG. Les autres dsignations dans ce document peuvent tre des marques dont l'utilisation par des tiers leurs propres fins peut enfreindre les droits de leurs propritaires respectifs.

Exclusion de responsabilit
Nous avons vrifi la conformit du contenu du prsent document avec le matriel et le logiciel qui y sont dcrits. Ne pouvant toutefois exclure toute divergence, nous ne pouvons pas nous porter garants de la conformit intgrale. Si l'usage de ce manuel devait rvler des erreurs, nous en tiendrons compte et apporterons les corrections ncessaires ds la prochaine dition.

Siemens AG Industry Sector Postfach 48 48 90026 NRNBERG ALLEMAGNE

A5E02789667-01 02/2010

Copyright Siemens AG 2010. Sous rserve de modifications techniques

Avant-propos
Objet de ce manuel
Ce manuel vous procure une vue d'ensemble sur la programmation avec STEP 7. Il a pour but de vous assister lors de l'installation et du dmarrage du logiciel. Il explique la dmarche de cration de programmes et dcrit les diffrents lments d'un programme utilisateur. Ce manuel s'adresse aux personnes charges de raliser des tches d'automatisation avec le logiciel STEP 7 et mettant en uvre des systmes d'automatisation SIMATIC S7. Nous vous recommandons de vous familiariser tout d'abord avec les exemples du manuel "Getting Started de STEP 7". Ils reprsentent une approche simple de la thmatique traite plus en profondeur dans le manuel "Programmer avec STEP 7".

Connaissances fondamentales requises


La comprhension du manuel requiert des connaissances gnrales dans le domaine de la technique d'automatisation. Nous supposerons en outre des connaissances dans l'utilisation d'ordinateurs ou autres quipements (par exemple consoles de programmation) analogues au PC et des systmes d'exploitation MS Windows XP, MS Windows Server 2003 ou MS Windows 7.

Domaine de validit du manuel


Le prsent manuel est valable pour le logiciel STEP 7 V5.5. Vous trouvez des informations relatives aux Servicepack paraissant aprs la publication de ce manuel dans : le fichier "Lisezmoi.rtf", l'aide en ligne actualise de STEP 7.

Le thme "Nouveauts ?" de l'aide en ligne vous permet une approche aise ainsi qu'une bonne vue d'ensemble sur les innovations dans STEP 7.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Avant-propos

Documentation de STEP 7
Ce manuel fait partie de la documentation STEP 7 Connaissances fondamentales". Le tableau suivant prsente la documentation de STEP 7 :
Manuel STEP 7 Connaissances fondamentales avec STEP 7 Getting Started Programmer avec STEP 7 Confguration matrielle et communication dans STEP 7 STEP 7 Pour une transition facile de S5 S7 Connaissances de rfrence. Dcrit les langages de programmation CONT, LOG et LIST de mme que les fonctions standard et les fonctions systme en complment des connaissances fondamentales de STEP 7. 6ES7810-4CA110-8CW1 Langages CONT/LOG/LIST pour SIMATIC S7-300/400 Logiciel systme pour SIMATIC S7-300/400 Fonctions standard et fonctions systme Volume 1 et Volume 2 Objet Numro de rfrence

Connaissances fondamentales pour 6ES7810-4CA10-8CW0 le personnel technique. Dcrit la marche suivre pour raliser des tches dautomatisation avec STEP 7 et S7-300/400.

STEP 7 Connaissances de rfrence avec

Aides en ligne Aide de STEP 7

Objet Connaissances fondamentales pour la programmation ainsi que pour la configuration du matriel avec STEP 7, sous forme daide en ligne. Connaissances de rfrence contextuelles

Numro de rfrence Fait partie du logiciel STEP 7

Aides de rfrence de LIST/CONT/LOG Aide de rfrence sur les SFB/SFC Aide de rfrence sur les blocs dorganisation

Fait partie du logiciel STEP 7

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Avant-propos

Aide en ligne
En complment au manuel, l'aide en ligne intgre au logiciel vous offre une assistance dtaille lors de l'utilisation du logiciel. Ce systme d'aide est intgr au logiciel grce plusieurs interfaces : Le menu daide ? propose plusieurs commandes : Rubriques daide ouvre le sommaire de laide de STEP 7. Utiliser laide fournit des instructions dtailles sur lutilisation de laide en ligne. Laide contextuelle donne des informations sur le contexte actuel, par exemple sur une bote de dialogue ouverte ou sur une fentre active. Vous lappelez en cliquant sur le bouton "Aide ou en appuyant sur la touche F1. La barre dtat constitue une autre forme daide contextuelle. Lorsque le curseur est positionn sur une commande, elle en affiche une description succincte. Une description succincte des boutons de la barre doutils saffiche galement lorsque le curseur y est positionn quelques instants.

Si vous prfrez consulter les informations de l'aide en ligne sur papier, vous avez la possibilit d'imprimer des rubriques d'aide individuelles, des livres ou l'ensemble de l'aide. Ce manuel tout comme les manuels "Configuration matrielle et communication dans STEP 7", "Modifications de l'installation en fonctionnement au moyen de CiR" et "Systme d'automatisation S7-400H - Systmes haute disponsibilit" sont extraits de l'aide de STEP 7 base sur HTML. Si vous dsirez des instructions plus dtailles, rfrez vous l'aide de STEP 7. En raison de la structure similaire entre le manuel et l'aide en ligne, le passage de l'un l'autre est ais. Aprs l'installation de STEP 7, vous trouvez les manuels lectroniques sous Dmarrer > SIMATIC > Documentation.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Avant-propos

Assistance supplmentaire
Si des questions sont restes sans rponse dans ce manuel, veuillez vous adresser votre interlocuteur Siemens dans la filiale ou l'agence de votre rgion. Vous trouvez votre interloculeur sous : http://www.siemens.com/automation/partner Vous trouvez un fil rouge pour la recherche de documentations techniques sur les produits et systmes SIMATIC ladresse suivante sur Internet : http://www.siemens.com/simatic-tech-doku-portal Le catalogue en ligne et le systme de commande en ligne se trouvent l'adresse : http://mall.automation.siemens.com/

Centre de formation SIMATIC


Nous proposons des cours de formation pour vous faciliter l'apprentissage des automates programmables SIMATIC S7. Veuillez vous adresser votre centre de formation rgional ou au centre principal D 90026 Nuremberg. Internet: http://www.sitrain.com

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Avant-propos

Technical Support
Vous pouvez joindre le support technique pour tous les produits dIndustry Automation. Via le formulaire Web de demande dassistance (Support Request) http://www.siemens.com/automation/support-request

Vous trouvez plus dinformations concernant notre Technical Support sur Internet ladresse suivante : http://www.siemens.com/automation/service

Service & Support sur Internet


En plus de la documentation offerte, vous trouvez la totalit de notre savoir-faire en ligne sur Internet l'adresse suivante : http://www.siemens.com/automation/service&support Vous y trouvez : le bulletin d'informations qui vous fournit constamment les dernires informations sur le produit, les documents dont vous avez besoin l'aide de la fonction de recherche du Support produit, le forum o utilisateurs et spcialistes peuvent changer des informations, votre interlocuteur Industry Automation sur site, des informations sur les rparations, pices de rechange et la consultation.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Avant-propos

10

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Sommaire
1 Introduction sur le produit et installation ...............................................................................................23 1.1 1.2 1.3 1.4 1.4.1 1.4.2 1.4.3 2 Guide de STEP 7 .........................................................................................................................23 Logiciel de base STEP 7..............................................................................................................28 Nouveauts dans la version 5.5 de STEP 7 ................................................................................33 Possibilits d'extension du logiciel de base STEP 7 ...................................................................35 Applications techniques ...............................................................................................................37 Logiciels excutables...................................................................................................................39 Interface homme/machine ...........................................................................................................41

Installation..................................................................................................................................................43 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.2.2 2.3 2.4 2.4.1 2.4.2 Automation License Manager ......................................................................................................43 Licence d'utilisation avec Automation License Manager .............................................................43 Installation de Automation License Manager...............................................................................46 Rgles d'utilisation des License Keys (cl de licence) ................................................................47 Installation de STEP 7 .................................................................................................................48 Marche suivre pour l'installation de STEP 7 .............................................................................50 Paramtrage de l'interface PG/PC...............................................................................................53 Dsinstallation de STEP 7 ...........................................................................................................55 Droits d'utilisateur.........................................................................................................................55 Droits d'utilisateur sous MS Windows XP/Server 2003 ...............................................................55 Droits d'utilisateur sous MS Windows 7.......................................................................................55

Conception de la solution d'automatisation...........................................................................................59 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 Conception d'une solution d'automatisation ................................................................................59 Subdivision du processus en tches et zones.............................................................................60 Description des diffrentes zones fonctionnelles.........................................................................63 Liste des entres, sorties et entres/sorties ................................................................................65 Cration d'un diagramme d'entres/sorties pour les moteurs .....................................................66 Cration d'un diagramme d'entres/sorties pour les soupapes...................................................67 Dfinition des exigences en matire de scurit .........................................................................68 Description des lments de signalisation et de commande requis............................................69 Cration du schma de configuration ..........................................................................................69

Principes de conception d'une structure de programme .....................................................................71 4.1 4.2 4.2.1 4.2.2 4.2.3 4.2.3.1 4.2.3.2 4.2.3.3 4.2.3.4 4.2.3.5 4.2.3.6 Programmes dans une CPU ........................................................................................................71 Blocs dans le programme utilisateur............................................................................................72 Blocs d'organisation et structure du programme .........................................................................73 Hirarchie d'appel dans le programme utilisateur .......................................................................80 Catgories de blocs .....................................................................................................................82 Bloc d'organisation pour le traitement de programme cyclique (OB1) ........................................82 Fonctions (FC) .............................................................................................................................87 Blocs fonctionnels (FB) ................................................................................................................88 Blocs de donnes d'instance .......................................................................................................91 Blocs de donnes globaux (DB) ..................................................................................................94 Blocs fonctionnels systme (SFB) et fonctions systme (SFC) ..................................................95

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

11

Sommaire

4.2.4 4.2.4.1 4.2.4.2 4.2.4.3 4.2.4.4 4.2.4.5 4.2.4.6 4.2.4.7 5

Blocs d'organisation pour le traitement de programme dclench par alarme ...........................97 Blocs d'organisation pour l'alarme horaire (OB10 OB17).........................................................97 Blocs d'organisation pour l'alarme temporise (OB20 OB23) ..................................................99 Blocs d'organisation pour l'alarme cyclique (OB30 OB38) .....................................................100 Blocs d'organisation pour l'alarme de processus (OB40 OB47).............................................101 Blocs d'organisation pour la mise en route (OB100 / OB101 / OB102).....................................102 Bloc d'organisation pour lexcution du programme en arrire-plan (OB90).............................104 Blocs d'organisation pour le traitement d'erreurs (OB70 OB87 / OB121 OB122) ...............105

Dmarrage et utilisation du programme ...............................................................................................109 5.1 5.2 5.3 5.4 5.4.1 5.4.2 5.4.3 5.4.4 5.4.5 5.4.6 5.4.7 5.4.8 5.5 5.5.1 5.5.2 5.5.3 5.5.4 5.5.5 5.5.6 5.5.7 5.5.8 5.6 5.6.1 5.6.2 5.6.3 5.6.4 5.6.5 Dmarrage de STEP 7...............................................................................................................109 Dmarrage de STEP 7 avec des paramtres initiaux prdfinis...............................................110 Appel des fonctions d'aide .........................................................................................................112 Objets et hirarchie d'objets ......................................................................................................113 Objet Projet ................................................................................................................................114 Objet Bibliothque......................................................................................................................116 Objet Station ..............................................................................................................................117 Objet Module programmable .....................................................................................................119 Objet Programme S7/M7 ...........................................................................................................121 Object Dossier Blocs..................................................................................................................123 Objet Dossier Sources ...............................................................................................................127 Programme S7/M7 sans station ni CPU ....................................................................................128 Interface utilisateur et manipulation ...........................................................................................129 Concept d'utilisation ...................................................................................................................129 Structure de la fentre ...............................................................................................................130 Elments dans les botes de dialogue .......................................................................................131 Cration et manipulation d'objets...............................................................................................133 Slection d'objets dans les botes de dialogue..........................................................................139 Historique des sessions .............................................................................................................140 Modification de la disposition des fentres ................................................................................140 Enregistrement et restauration de la disposition des fentres...................................................141 Utilisation du clavier ...................................................................................................................142 Combinaisons de touches pour les commandes de menu........................................................142 Combinaisons de touches pour le dplacement du curseur......................................................144 Combinaisons de touches pour la slection de texte ................................................................146 Combinaisons de touches pour accder l'aide en ligne .........................................................146 Combinaisons de touches pour la bascule entre les diffrents types de fentres ....................147

12

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Sommaire

Cration et dition du projet ..................................................................................................................149 6.1 6.2 6.3 6.4 6.5 6.6 6.6.1 6.6.2 6.6.3 6.7 6.7.1 6.7.2 6.7.2.1 6.7.2.2 6.7.2.3 6.7.2.4 6.7.2.5 6.7.2.6 6.7.2.7 6.7.3 6.7.3.1 6.7.3.2 6.7.3.3 6.7.3.4 Structure du projet .....................................................................................................................149 Informations sur la protection d'accs .......................................................................................151 Informations sur le journal des modifications.............................................................................153 Utilisation de jeux de caractres de langues trangres...........................................................154 Paramtrage de la langue de Windows.....................................................................................157 Cration d'un projet....................................................................................................................158 Cration d'un projet....................................................................................................................158 Insertion de stations...................................................................................................................160 Insertion d'un programme S7/M7...............................................................................................161 Edition d'un projet ......................................................................................................................163 Recherche des logiciels requis pour un projet...........................................................................164 Gestion multilingue des textes ...................................................................................................164 Types de textes gestion multilingue........................................................................................166 Structure du fichier d'exportation ...............................................................................................167 Gestion de textes utilisateur dont la police de langue n'est pas installe..................................169 Informations sur le fichier-journal...............................................................................................169 Optimisation du modle traduire.............................................................................................170 Optimisation de la traduction .....................................................................................................171 Masquer des textes dans certaines langues .............................................................................171 Carte mmoire micro (MMC) en tant que support de donnes .................................................173 Ce qu'il faut savoir sur les cartes mmoire micro (MMC) ..........................................................173 Utilisation d'une micro-carte mmoire (MMC) comme support de donnes..............................174 Fichier carte mmoire ................................................................................................................174 Enregistrement des donnes du projet sur une micro-carte mmoire (MMC) ..........................175

Edition de projets avec des versions differentes de STEP 7..............................................................177 7.1 7.2 7.3 7.4 7.5 Edition de projets et bibliothques de la version 2 ....................................................................177 Extension d'esclaves DP crs avec des versions antrieures de STEP 7 ..............................177 Editer des configurations actuelles avec des versions antrieures de STEP 7 ........................179 Utiliser les configurations PC SIMATIC partir des versions prcdentes...............................180 Reprsentation de modules ayant t configurs avec des versions plus rcentes de STEP 7 ou avec un progiciel optionnel.................................................................................182

Dfinition de mnmoniques ...................................................................................................................185 8.1 8.2 8.3 8.4 8.5 8.5.1 8.5.2 8.5.3 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.6.5 8.6.6 8.6.7 Adressage absolu et adressage symbolique .............................................................................185 Mnmoniques globaux et mnmoniques locaux........................................................................187 Reprsentation des mnmoniques globaux et des mnmoniques locaux ................................188 Dfinition de la priorit de l'oprande (symbolique/absolu) .......................................................189 Table des mnmoniques pour mnmoniques globaux..............................................................193 Structure et lments de la table des mnmoniques.................................................................193 Oprandes et types de donnes autoriss dans la table des mnmoniques............................196 Mnmoniques incomplets ou non univoques dans la table des mnmoniques ........................197 Possibilits de saisie de mnmoniques globaux .......................................................................198 Remarques gnrales sur la saisie de mnmoniques...............................................................198 Saisie de mnmoniques globaux individuels dans des botes de dialogue...............................199 Saisie de plusieurs mnmoniques globaux dans la table des mnmoniques ...........................200 Majuscules/minuscules pour les mnmoniques ........................................................................201 Exportation et importation de tables de mnmoniques .............................................................203 Formats de fichier pour l'importation/exportation d'une table des mnmoniques .....................203 Edition de zones dans des tables de mnmoniques .................................................................206

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

13

Sommaire

Cration de blocs et de bibliothques ..................................................................................................207 9.1 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.2.5 9.2.6 9.2.7 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.3.6 9.3.7 9.4 9.4.1 9.4.2 Choix de la mthode de cration ...............................................................................................207 Choix du langage de programmation.........................................................................................208 Langage de programmation CONT (schma contacts)..........................................................210 Langage de programmation LOG (logigramme)........................................................................211 Langage de programmation LIST (liste d'instructions) ..............................................................212 Langage de programmation SCL...............................................................................................213 Langage de programmation GRAPH (commande squentielle) ...............................................214 Langage de programmation HiGraph (graphe d'tat)................................................................215 Langage de programmation CFC ..............................................................................................216 Ce qu'il faut savoir pour crer des blocs....................................................................................217 Dossier Blocs .............................................................................................................................217 Types de donnes utilisateur (UDT) ..........................................................................................218 Attributs de bloc .........................................................................................................................218 Affichage de la longueur des blocs............................................................................................222 Comparaison de blocs ...............................................................................................................223 Rassignation ............................................................................................................................226 Attributs pour blocs et pour paramtres.....................................................................................226 Utilisation de bibliothques ........................................................................................................227 Structure hirarchique des bibliothques ..................................................................................229 Prsentation des bibliothques standard...................................................................................229

10

Cration de blocs de code......................................................................................................................231 10.1 10.1.1 10.1.2 10.1.3 10.1.4 10.1.5 10.2 10.2.1 10.2.2 10.2.3 10.3 10.3.1 10.3.2 10.3.3 10.4 10.4.1 10.4.2 10.4.3 10.4.4 10.4.5 10.4.6 10.4.7 10.5 10.5.1 10.5.2 10.5.3 10.6 10.6.1 10.6.2 Principes de la cration de blocs de code .................................................................................231 Structure de la fentre de l'diteur de programmes ..................................................................231 Marche suivre pour la cration de blocs de code ...................................................................233 Prslections pour l'diteur de programmes CONT/LOG/LIST.................................................234 Droits d'accs aux blocs ou aux sources...................................................................................234 Instructions dans la vue d'ensemble des lments de programme...........................................235 Edition de la dclaration des variables ......................................................................................236 Utilisation de la dclaration des variables dans les blocs de code............................................236 Relation entre la vue de dtail des variables et la section des instructions ..............................237 Structure de la fentre de dclaration des variables .................................................................238 Multi-instances dans la dclaration des variables .....................................................................239 Utilisation de multi-instances .....................................................................................................239 Rgles pour la formation de multi-instances..............................................................................240 Saisie de multi-instances dans la fentre de dclaration des variables ....................................240 Remarques gnrales sur la saisie d'instructions et de commentaires.....................................241 Structure de la section des instructions .....................................................................................241 Marche suivre pour la saisie d'instructions .............................................................................242 Saisie de mnmoniques globaux dans un programme .............................................................243 Titres et commentaires de blocs et de rseaux .........................................................................243 Saisie de commentaires de blocs et de rseaux .......................................................................245 Utilisation de modles de rseau...............................................................................................245 Fonction de recherche d'erreurs dans la section des instructions.............................................246 Edition d'instructions CONT dans la section des instructions....................................................247 Paramtres pour le langage de programmation CONT.............................................................247 Rgles pour la saisie d'instructions CONT ................................................................................248 Branchements interdits en CONT ..............................................................................................250 Edition d'instructions LOG dans la section des instructions ......................................................251 Paramtres pour le langage de programmation LOG................................................................251 Rgles pour la saisie d'instructions LOG ...................................................................................252

14

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Sommaire

10.7 10.7.1 10.7.2 10.8 10.8.1 10.9 11

Edition d'instructions LIST dans la section des instructions ......................................................254 Paramtres pour le langage de programmation LIST................................................................254 Rgles pour la saisie d'instructions LIST ...................................................................................254 Actualisation d'appels de blocs..................................................................................................255 Modifications dinterfaces...........................................................................................................256 Enregistrement de blocs de code ..............................................................................................257

Cration de blocs de donnes ...............................................................................................................259 11.1 11.2 11.3 11.4 11.4.1 11.4.2 11.4.3 11.4.4 11.4.5 11.4.6 11.4.7 Principes de la cration des blocs de donnes .........................................................................259 Vue des dclarations de blocs de donnes ...............................................................................260 Vue des donnes de blocs de donnes.....................................................................................261 Saisie et enregistrement des blocs de donnes ........................................................................262 Saisie de la structure de donnes de blocs de donnes globaux .............................................262 Saisie / affichage de la structure de donnes de blocs de donnes associs un FB (DB d'instance)...........................................................................................................................263 Saisie de la structure de types de donnes utilisateur (UDT) ...................................................265 Saisie / affichage de la structure de blocs de donnes associs un UDT..............................266 Modification de valeurs dans la vue des donnes .....................................................................267 Rinitialisation de valeurs en leur substituant leur valeur initiale ..............................................267 Enregistrement de blocs de donnes ........................................................................................268

12

Paramtrage de blocs de donnes ........................................................................................................269 12.1 Paramtrage de fonctions technologiques ................................................................................270

13

Cration de sources LIST .......................................................................................................................271 13.1 13.2 13.2.1 13.2.2 13.2.3 13.2.4 13.2.5 13.2.6 13.3 13.3.1 13.3.2 13.3.3 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.5 13.5.1 13.5.2 13.5.3 13.5.4 13.5.5 13.5.6 13.5.7 13.5.8 13.5.9 13.5.10 Principes de la programmation dans des sources LIST ............................................................271 Rgles pour la programmation dans une source LIST ..............................................................272 Rgles pour la saisie d'instructions dans une source LIST .......................................................272 Rgles pour la dclaration de variables dans une source LIST ................................................273 Rgles pour l'ordre des blocs dans une source LIST ................................................................274 Rgles pour la dfinition d'attributs systme dans une source LIST.........................................274 Rgles pour la dfinition de proprits de bloc dans une source LIST .....................................275 Proprits de bloc autorises pour chaque type de bloc...........................................................277 Structure des blocs dans une source LIST................................................................................278 Structure des blocs de code dans une source LIST ..................................................................278 Structure des blocs de donnes dans une source LIST............................................................279 Structure des types de donnes utilisateur dans une source LIST ...........................................279 Syntaxe et formats pour les blocs dans une source LIST .........................................................280 Tableau du format pour les OB..................................................................................................280 Tableau du format pour les FB ..................................................................................................281 Tableau du format pour les FC ..................................................................................................282 Tableau du format pour les DB ..................................................................................................283 Cration d'une source LIST .......................................................................................................284 Cration d'une source LIST .......................................................................................................284 Edition d'une source S7 .............................................................................................................284 Dfinition de la mise en page du texte source...........................................................................285 Insertion de modles de blocs dans une source LIST...............................................................285 Insertion du contenu d'autres source LIST ................................................................................285 Insertion du code source de blocs existant dans une source LIST ...........................................286 Insertion d'une source externe...................................................................................................286 Gnration d'une source LIST partir de blocs ........................................................................287 Importation d'une source ...........................................................................................................287 Exportation d'une source ...........................................................................................................288

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

15

Sommaire

13.6 13.6.1 13.6.2 13.6.3 13.6.4 13.7 13.7.1 13.7.2 13.7.3 13.7.4 13.7.5 13.7.6 14

Enregistrement, compilation et vrification d'une source LIST..................................................289 Enregistrement d'une source LIST ............................................................................................289 Vrification de la cohrence d'une source LIST ........................................................................289 Recherche d'erreurs dans une source LIST ..............................................................................289 Compilation d'une source LIST..................................................................................................290 Exemples de sources LIST ........................................................................................................291 Exemples de dclarations de variables dans une source LIST.................................................291 Exemple d'OB dans une source LIST........................................................................................292 Exemple de FC dans une source LIST......................................................................................293 Exemple de FB dans une source LIST ......................................................................................295 Exemples de DB dans une source LIST....................................................................................297 Exemple d'UDT dans une source LIST......................................................................................298

Affichage des donnes de rfrence ....................................................................................................299 14.1 14.1.1 14.1.2 14.1.3 14.1.4 14.1.5 14.1.6 14.2 14.2.1 14.2.2 14.2.3 14.2.4 14.2.5 Prsentation des donnes de rfrence possibles....................................................................299 Liste des rfrences croises ....................................................................................................301 Structure du programme ............................................................................................................302 Tableau d'affectation..................................................................................................................304 Oprandes libres........................................................................................................................305 Mnmoniques manquants..........................................................................................................307 Affichage d'informations sur le bloc pour CONT, LOG, LIST ....................................................307 Utilisation des donnes de rfrence ........................................................................................308 Affichage des donnes de rfrence .........................................................................................308 Affichage de listes dans des fentres supplmentaires ............................................................308 Cration et affichage de donnes de rfrence.........................................................................309 Positionnement rapide sur les occurrences dans le programme...............................................310 Exemple de recherche d'occurrences........................................................................................310

15

Vrifier la cohrence des blocs et horodatage comme proprit de bloc ........................................315 15.1 15.2 15.3 15.4 15.5 15.6 15.7 15.8 Vrifier la cohrence des blocs..................................................................................................315 Horodatage comme proprit de bloc et conflits d'horodatage .................................................317 Horodatage dans les blocs de code ..........................................................................................318 Horodatage dans les blocs de donnes globaux.......................................................................319 Horodatage dans les blocs de donnes d'instance ...................................................................319 Horodatage dans les UDT et DB repris d'UDT ..........................................................................320 Correction des interfaces dans une FC, un FB ou un UDT .......................................................320 Comment viter des erreurs lors de l'appel de blocs.................................................................321

16

Configuration de messages ...................................................................................................................323 16.1 16.1.1 16.1.2 16.1.3 16.1.4 16.1.5 16.1.6 16.1.7 16.1.8 16.1.9 16.1.10 Concept de signalisation............................................................................................................323 Quels procds de signalisation existe-t-il ? .............................................................................323 Slection du procd de signalisation .......................................................................................325 Composants SIMATIC ...............................................................................................................327 Elments constituants d'un message ........................................................................................328 Quels blocs de signalisation existe-t-il ?....................................................................................329 Paramtres formels, attributs systme et blocs de signalisation...............................................331 Type de message et messages .................................................................................................332 Cration d'une source LIST partir de blocs de signalisation...................................................334 Attribution de numros de message ..........................................................................................334 Diffrences entre l'attribution de numros de message pour tout le projet et celle pour la CPU................................................................................................................................335 16.1.11 Possibilits de modification de l'attribution des numros de message d'un projet....................336

16

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Sommaire

16.2 16.2.1 16.2.2 16.2.2.1 16.2.2.2 16.2.2.3 16.2.3 16.2.3.1 16.2.4 16.3 16.3.1 16.3.2 16.3.2.1 16.3.2.2 16.3.2.3 16.3.3 16.3.3.1 16.3.4 16.4 16.4.1 16.4.2 16.4.3 16.5 16.5.1 16.6 16.6.1 16.6.2 16.6.3 16.6.4 16.6.5 16.6.6 16.7 16.8 16.8.1 16.8.2 16.9 16.9.1 16.9.2 16.9.3 16.9.4 16.9.5 16.9.6 16.9.7 16.9.8 16.9.9 17

Configuration de messsages pour tout le projet ........................................................................337 Attribution de numros de message pour tout le projet.............................................................337 Affectation et dition de messages sur bloc ..............................................................................337 Cration de messages sur bloc (pour tout le projet) ...........................................................338 Edition de messages sur bloc (pour tout le projet) ....................................................................341 Configuration des messages PCS7 (pour tout le projet) ...........................................................342 Affectation et dition de messages sur mnmonique................................................................343 Affectation et dition de messages sur mnmonique (pour tout le projet) ................................343 Cration et dition de messages de diagnostic personnaliss..................................................344 Configuration de messsages pour la CPU.................................................................................345 Attribution de numros de message pour la CPU .....................................................................345 Affectation et dition de messages sur bloc ..............................................................................345 Cration de messages sur bloc (pour la CPU) ..........................................................................346 Edition de messages sur bloc (pour la CPU).............................................................................349 Configuration des messages PCS7 (pour la CPU)....................................................................350 Affectation et dition de messages sur mnmonique................................................................351 Affectation et dition de messages sur mnmonique (pour la CPU).........................................351 Cration et dition de messages de diagnostic personnaliss..................................................351 Conseils pour l'utilisation de messages .....................................................................................353 Insertion d'une variable dans un message ................................................................................353 Incorporer dans des messages des textes tirs de bibliothques.............................................356 Effacer des variables additionnelles ..........................................................................................356 Traduction et dition de textes destins l'utilisateur ...............................................................357 Traduction et dition de textes personnaliss ...........................................................................357 Edition et traduction de bibliothques de textes ........................................................................359 Bibliothques de texte utilisateur ...............................................................................................359 Cration de bibliothques de textes utilisateur ..........................................................................359 Edition de bibliothques de textes utilisateur.............................................................................360 Edition de bibliothques systme ..............................................................................................361 Bibliothques de textes systme ...............................................................................................361 Traduction de bibliothques de textes .......................................................................................362 Transfert des donnes de configuration dans le systme cible.................................................364 Affichage des messages de CPU et des messages de diagnostic personnaliss ....................365 Configuration des messages de CPU........................................................................................368 Affichage des messages de CPU enregistrs ...........................................................................368 Configuration de la signalisation d'erreurs systme ..................................................................369 Aperu gnral sur la 'signalisation d'erreurs systme'.............................................................369 Configuration de la signalisation d'erreurs systme ..................................................................369 Composants pris en charge et fonctionnalits...........................................................................371 Paramtrage de la signalisation d'erreurs systme...................................................................376 Gnration de blocs pour la signalisation d'erreurs systme ....................................................377 OB d'erreur gnrs...................................................................................................................378 Blocs gnrs ............................................................................................................................380 Affectation des erreurs systme aux classes d'erreur ...............................................................382 Cration de textes de message dans une autre langue dans la 'Signalisation d'erreurs systme' ...................................................................................385

Contrle-commande de variables..........................................................................................................387 17.1 17.2 17.3 17.4 17.5 Configuration de variables pour le contrle-commande ............................................................387 Configuration d'attributs de contrle-commande avec LIST, CONT, LOG................................389 Configuration des attributs de contrle-commande au moyen de la table des mnmoniques..390 Modification des attributs de contrle-commande avec CFC ....................................................391 Transfert des donnes de configuration dans le systme cible de contrle-commande ..........392

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

17

Sommaire

18

Etablissement d'une liaison en ligne et choix de la CPU....................................................................393 18.1 18.1.1 18.1.2 18.1.3 18.1.4 18.1.5 18.2 18.3 18.3.1 18.4 18.4.1 Etablissement de liaisons en ligne.............................................................................................393 Etablissement d'une liaison en ligne depuis la fentre "Partenaires accessibles" ....................393 Etablissement d'une liaison en ligne depuis la fentre en ligne du projet .................................394 Accs en ligne aux systmes cibles dans le multiprojet............................................................395 Protection par mot de passe contre l'accs aux systmes cible ...............................................397 Remarque sur l'actualisation du contenu de la fentre..............................................................399 Affichage et modification de l'tat de fonctionnement ...............................................................400 Affichage et rglage de l'heure et de la date .............................................................................401 Horloges CPU avec rglage des zones horaires et heure d't/heure d'hiver..........................401 Mise jour du microprogramme ................................................................................................403 Mise jour en ligne du microprogramme de modules...............................................................403

19

Chargement..............................................................................................................................................407 19.1 19.1.1 19.1.2 19.1.3 19.1.4 19.1.5 19.1.6 19.1.6.1 19.1.6.2 19.1.6.3 19.1.6.4 19.1.6.5 19.2 19.2.1 19.2.2 19.3 19.3.1 19.3.2 19.3.3 19.3.3.1 19.3.3.2 19.4 19.4.1 19.4.2 19.5 19.5.1 19.5.2 Chargement dans le systme cible depuis la PG ......................................................................407 Conditions pralables au chargement .......................................................................................407 Diffrence entre l'enregistrement et le chargement de blocs ....................................................409 Mmoire de chargement et mmoire de travail dans la CPU....................................................410 Possibilits de chargement selon la mmoire de chargement ..................................................412 Mise jour en ligne du microprogramme de modules...............................................................413 Chargement du programme dans la CPU S7 ............................................................................416 Chargement dans la gestion du projet.......................................................................................416 Chargement hors gestion du projet ...........................................................................................416 Chargement de blocs dans le systme cible .............................................................................416 Enregistrement de blocs chargs dans la mmoire intgre EPROM ......................................417 Chargement via des cartes mmoire EPROM...........................................................................417 Compilation et chargement de plusieurs objets depuis la PG ...................................................418 Conditions et remarques pour le chargement............................................................................418 Compilation et chargement d'objets...........................................................................................420 Chargement depuis le systme cible dans la PG ......................................................................422 Chargement d'une station dans la PG .......................................................................................424 Chargement de blocs depuis la CPU S7 ...................................................................................425 Edition de blocs chargs dans votre PG/PC..............................................................................425 Edition de blocs chargs lorsque le programme utilisateur se trouve dans votre PG/PC .........426 Edition de blocs chargs lorsque le programme utilisateur ne se trouve pas dans votre PG/PC ......................................................................................................................426 Effacement sur le systme cible ................................................................................................427 Effacement de la mmoire de chargement/travail et effacement gnral de la CPU................427 Effacement de blocs S7 sur le systme cible ............................................................................428 Compression de la mmoire utilisateur (RAM) ..........................................................................429 Intervalles dans la mmoire utilisateur (RAM) ...........................................................................429 Compression du contenu de la mmoire d'une CPU S7 ...........................................................430

18

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Sommaire

20

Test avec des tables de variables .........................................................................................................431 20.1 20.2 20.3 20.3.1 20.3.1.1 20.3.2 20.3.3 20.4 20.4.1 20.4.2 20.4.3 20.4.4 20.4.5 20.4.6 20.4.7 20.4.7.1 20.4.7.2 20.4.7.3 20.5 20.6 20.6.1 20.6.2 20.7 20.7.1 20.7.2 20.8 20.8.1 20.8.2 20.8.3 Introduction au test avec des tables de variables......................................................................431 Marche suivre pour la visualisation et le forage avec des tables de variables .....................432 Edition et enregistrement de tables de variables.......................................................................433 Cration et ouverture d'une table de variables ..........................................................................433 Marche suivre pour la cration et l'ouverture d'une table de variables...................................433 Copie ou dplacement de tables de variables...........................................................................435 Enregistrement d'une table de variables....................................................................................435 Saisie de variables dans des tables de variables ......................................................................436 Insertion d'oprandes ou de mnmoniques dans une table de variables .................................436 Insertion d'une plage d'oprandes continue dans une table de variables.................................438 Insertion de valeurs de forage..................................................................................................438 Limites suprieures pour la saisie de temporisations ................................................................439 Limites suprieures pour la saisie de compteurs.......................................................................440 Insertion de lignes de commentaire ...........................................................................................441 Exemples ...................................................................................................................................441 Exemple de saisie d'oprandes dans une table de variables....................................................441 Exemple de saisie dune plage doprandes continue ..............................................................441 Exemples de saisie de valeurs de forage/forage permanent.................................................442 Etablissement d'une liaison la CPU ........................................................................................444 Visualisation de variables ..........................................................................................................446 Introduction la visualisation de variables ................................................................................446 Dfinition du dclenchement pour la visualisation de variables ................................................446 Forage de variables .................................................................................................................448 Introduction au forage de variables..........................................................................................448 Dfinition du dclenchement pour le forage de variables........................................................449 Forage permanent de variables ...............................................................................................451 Mesures de scurit pour le forage permanent de variables...................................................451 Introduction au forage permanent de variables .......................................................................452 Diffrences entre forage de variables et forage permanent de variables ..............................454

21

Test avec la visualisation d'tat du programme ..................................................................................455 21.1 21.2 21.3 21.4 21.4.1 21.5 Affichage dans la visualisation d'tat de programme ................................................................456 Informations sur le test en mode pas pas et sur les points d'arrt .........................................458 Informations sur l'tat de fonctionnement "Attente" ...................................................................460 Etat du programme de blocs de donnes..................................................................................461 Dfinition de l'affichage de l'tat du programme........................................................................462 Dfinition du mode de fonctionnement pour le test ...................................................................463

22

Test avec le programme de simulation S7-PLCSIM (logiciel optionnel) ...........................................465 22.1 Test avec le programme de simulation (logiciel optionnel)........................................................465

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

19

Sommaire

23

Diagnostic ................................................................................................................................................467 23.1 23.2 23.3 23.3.1 23.3.2 23.4 23.4.1 23.4.2 23.5 23.5.1 23.5.2 23.5.3 23.5.4 Diagnostic du matriel et recherche d'erreurs ...........................................................................467 Icnes de diagnostic dans la vue en ligne .................................................................................469 Diagnostic du matriel : vue rapide ...........................................................................................471 Appel de la vue rapide ...............................................................................................................471 Fonctions d'information de la vue rapide ...................................................................................471 Diagnostic du matriel : vue du diagnostic ................................................................................472 Appel de la vue de diagnostic de HW Config ............................................................................472 Fonctions d'information de la vue du diagnostic........................................................................474 Etat du module ...........................................................................................................................475 Possibilits d'appel de l'tat du module .....................................................................................475 Fonctions d'information de l'tat du module ..............................................................................476 Volume d'informations selon le type de module dans l'tat du module .....................................479 Affichage de l'tat du module d'appareils de terrain PA et d'esclaves DP placs derrire un Y-Link ....................................................................................................................................481 23.6 Diagnostic l'tat de fonctionnement STOP .............................................................................483 23.6.1 Marche suivre pour dterminer la cause d'un passage l'tat d'arrt ...................................483 23.6.2 Contenu des piles l'tat d'arrt................................................................................................484 23.7 Contrle des temps de cycle pour viter les erreurs d'horloge..................................................485 23.7.1 Contrle des temps de cycle pour viter les erreurs d'horloge..................................................485 23.8 Transmission d'informations de diagnostic ................................................................................486 23.8.1 Liste d'tat systme (SZL) .........................................................................................................487 23.8.2 Envoi de vos propres messages de diagnostic .........................................................................490 23.8.3 Fonctions de diagnostic .............................................................................................................491 23.9 Mesures prendre dans le programme pour traiter les erreurs ................................................492 23.9.1 Exploitation du paramtre de sortie RET_VAL ..........................................................................493 23.9.2 OB d'erreur en raction la dtection d'une erreur...................................................................494 23.9.3 Insertion de valeurs de remplacement en cas d'erreur dtecte...............................................499 23.9.4 Erreur de redondance de priphrie (OB70) .............................................................................501 23.9.5 Erreur de redondance de CPU (OB72)......................................................................................502 23.9.6 Erreur de temps (OB80).............................................................................................................503 23.9.7 Erreur d'alimentation (OB81) .....................................................................................................504 23.9.8 Alarme de diagnostic (OB82).....................................................................................................505 23.9.9 Alarme de dbrochage/enfichage (OB83) .................................................................................506 23.9.10 Erreur matrielle CPU (OB84) ...................................................................................................507 23.9.11 Erreur dexcution du programme (OB85).................................................................................508 23.9.12 Dfaillance d'unit (OB86) .........................................................................................................509 23.9.13 Erreur de communication (OB87) ..............................................................................................510 23.9.14 Erreur de programmation (OB121) ............................................................................................511 23.9.15 Erreur d'accs la priphrie (OB122) .....................................................................................512 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme' ...................................................513 23.10.1 Affichage graphique d'vnements de diagnostic .....................................................................513 23.10.2 Etat de diagnostic ......................................................................................................................513 23.10.2.1 Aperu gnral sur l'tat de diagnostic......................................................................................513 23.10.2.2 Etat de diagnostic PROFIBUS ...................................................................................................513 23.10.2.3 Exemple pour un DB 125 avec un esclave DP..........................................................................516 23.10.2.4 Exemple de requte DB PROFIBUS DP ...................................................................................516 23.10.2.5 Etat de diagnostic PROFINET ...................................................................................................517 23.10.2.6 Exemple pour un DB 126 avec un systme IO 100 et les appareils de numro 2, 3 et 4 .........520 23.10.2.7 Exemple de requte DB PROFINET IO.....................................................................................520 23.10.2.8 DB d'tat de diagnostic ..............................................................................................................521 23.10.2.9 Exemple de requte d'un DB d'tat de diagnostic .....................................................................526 23.10.2.10 Importation des textes d'erreur et d'aide...........................................................................529
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

20

Sommaire

24

Impression et archivage .........................................................................................................................531 24.1 24.1.1 24.1.2 24.1.3 24.2 24.2.1 24.2.2 24.2.3 Impression de la documentation du projet.................................................................................531 Marche suivre pour l'impression .............................................................................................532 Fonctions d'impression ..............................................................................................................532 Particularits pour l'impression de l'arborescence des objets ...................................................533 Archivage de projets et de bibliothques...................................................................................534 Possibilits d'enregistrement / archivage...................................................................................535 Conditions requises pour l'archivage .........................................................................................536 Marche suivre pour l'archivage/le dsarchivage.....................................................................536

25

Utilisation des systmes d'automatisation M7.....................................................................................537 25.1 25.2 25.3 Marche suivre pour les systmes M7 .....................................................................................537 Logiciel optionnel pour la programmation M7............................................................................539 Systmes d'exploitation pour M7-300/400.................................................................................540

26

Astuces et conseils.................................................................................................................................543 26.1 26.2 26.3 26.4 26.5 26.6 26.7 Remplacement de modules dans la table de configuration.......................................................543 Projets comportant un grand nombre de stations en rseau.....................................................543 Rorganisation ...........................................................................................................................544 Edition de mnmoniques dans plusieurs rseaux .....................................................................544 Test l'aide de la table des variables........................................................................................545 Forage de variables depuis l'diteur de programmes..............................................................546 Mmoire virtuelle........................................................................................................................547

27

Annexe......................................................................................................................................................549 27.1 Etats de fonctionnement ............................................................................................................549 27.1.1 Etats de fonctionnement et changement d'tat de fonctionnement...........................................549 27.1.2 Etat de fonctionnement "Arrt" (STOP) .....................................................................................552 27.1.3 Mode de mise en route ..............................................................................................................553 27.1.4 Etat de fonctionnement "Marche" (RUN) ...................................................................................561 27.1.5 Etat de fonctionnement "Attente" ...............................................................................................562 27.2 Zones de mmoire des CPU S7 ................................................................................................563 27.2.1 Organisation des zones de mmoire .........................................................................................563 27.2.2 Mmoire de chargement et mmoire de travail .........................................................................564 27.2.3 Mmoire systme.......................................................................................................................567 27.2.3.1 Utilisation des zones de mmoire systme ...............................................................................567 27.2.3.2 Mmoire image des entres/sorties...........................................................................................568 27.2.3.3 Pile des donnes locales ...........................................................................................................573 27.2.3.4 Pile des interruptions .................................................................................................................574 27.2.3.5 Pile des blocs .............................................................................................................................575 27.2.3.6 Mmoire tampon de diagnostic..................................................................................................576 27.2.3.7 Exploitation de la mmoire tampon de diagnostic .....................................................................576 27.2.3.8 Zones de mmoire rmanentes des CPU S7-300.....................................................................579 27.2.3.9 Zones de mmoire rmanentes des CPU S7-400.....................................................................581 27.2.3.10 Objets mmoire configurables dans la mmoire de travail........................................................582 27.3 Types de donnes et de paramtre...........................................................................................583 27.3.1 Introduction aux types de donnes et de paramtre .................................................................583 27.3.2 Types de donnes simples ........................................................................................................584 27.3.2.1 Format du type de donnes INT (entiers de 16 bits) .................................................................586 27.3.2.2 Format du type de donnes DINT (nombres entiers de 32 bits) ...............................................586 27.3.2.3 Format du type de donnes REAL (nombres virgule flottante) ..............................................587 27.3.2.4 Format des types de donnes WORD et DWORD pour les nombres dcimaux cods binaire .............................................................................................................591

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

21

Sommaire

27.3.2.5 27.3.3 27.3.3.1 27.3.3.2 27.3.3.3 27.3.3.4 27.3.3.5 27.3.4 27.3.4.1 27.3.4.2 27.3.4.3 27.3.4.4 27.3.4.5 27.3.4.6 27.3.4.7 27.3.4.8 27.3.4.9 27.4 27.4.1 27.4.2 27.4.3 27.5 27.5.1 27.6 27.6.1 27.6.2 27.6.2.1 27.6.2.2 27.6.2.3 27.6.2.4 27.6.3 27.6.4 27.6.4.4 27.6.4.5 27.7 27.7.1 27.7.2 27.8 27.8.1 27.8.2 27.8.3 27.8.4

Format du type de donnes S5TIME (dure SIMATIC) ............................................................592 Types de donnes complexes ...................................................................................................593 Format du type de donnes DATE_AND_TIME (date et heure) ...............................................594 Utilisation de types de donnes complexes...............................................................................596 Utilisation de tableaux pour l'accs aux donnes......................................................................597 Utilisation de structures pour l'accs aux donnes....................................................................600 Utilisation de types de donnes utilisateur pour l'accs aux donnes ......................................602 Types de paramtre...................................................................................................................605 Format des types de paramtre BLOCK, COUNTER et TIMER ...............................................606 Format du type de donnes Paramtre POINTER ....................................................................606 Utilisation du type de donnes Paramtre POINTER................................................................607 Bloc pour modifier le pointeur ....................................................................................................609 Format du type de donnes Paramtre ANY.............................................................................612 Utilisation du type de donnes Paramtre ANY ........................................................................615 Affectation de types de donnes aux donnes locales de blocs de code .................................619 Types de donnes autoriss pour la transmission de paramtres ............................................621 Transmission au paramtre IN_OUT d'un FB ...........................................................................626 Utilisation d'anciens projets .......................................................................................................627 Conversion d'un ancien projet de version 2...............................................................................627 Edition de projets et bibliothques de la version 2 ....................................................................629 Remarque sur les projets STEP 7 de version V2.1 avec communication par donnes globales.................................................................................................................629 Extension d'esclaves DP crs avec des versions antrieures de STEP 7 ..............................630 Esclaves DP avec fichiers GSD manquants ou errons ...........................................................632 Exemples de programmes .........................................................................................................633 Exemples de projets et de programmes ....................................................................................633 Exemple de programme pour un processus de mlange industriel ..........................................635 Dfinition de blocs de code........................................................................................................638 Affectation de mnmoniques .....................................................................................................639 Cration du bloc fonctionnel pour le moteur ..............................................................................642 Cration de la fonction pour les soupapes ................................................................................647 Exemple d'utilisation d'alarmes horaires....................................................................................655 Exemple d'utilisation d'alarmes temporises .............................................................................665 Exemple de masquage et de dmasquage d'vnements d'erreurs synchrones .....................672 Exemple d'inhibition et de validation d'vnements d'alarme et d'vnements asynchrones (SFC 39 et 40)............................................................................................................................677 Accs aux zones de donnes du processus et de la priphrie ...............................................679 Accs la zone de donnes du processus ...............................................................................679 Accs la zone de donnes de priphrie................................................................................681 Dfinition du comportement en fonctionnement ........................................................................682 Modification du comportement et des proprits des modules .................................................684 Mise jour hors ligne du microprogramme (du systme d'exploitation) de modules................686 Avantages des fonctions d'horodatage......................................................................................688 Utilisation de mmentos de cadence et de temporisations .......................................................690

Index ...................................................................................................................................................................691

22

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

1
1.1

Introduction sur le produit et installation


Guide de STEP 7

Qu'est-ce que STEP 7 ?


STEP 7 est le progiciel de base pour la configuration et la programmation de systmes d'automatisation SIMATIC. Il fait partie de l'industrie logicielle SIMATIC. Le progiciel de base STEP 7 existe en plusieurs versions : STEP 7-Micro/DOS et STEP 7-Micro/Win pour des applications autonomes simples sur SIMATIC S7 - 200. STEP 7 pour des applications sur SIMATIC S7-300/400, SIMATIC M7-300/400 et SIMATIC C7 prsentant des fonctionnalits supplmentaires : Possibilit d'extension grce aux applications proposes par l'industrie logicielle SIMATIC (voir aussi Possibilits d'extension du logiciel de base STEP 7) Possibilit de paramtrage de modules fonctionnels et de modules de communication Forage et fonctionnement multiprocesseur Communication par donnes globales Transfert de donnes command par vnement l'aide de blocs de communication et de blocs fonctionnels Configuration de liaisons

STEP 7 fait l'objet du prsent manuel d'utilisation, STEP 7-Micro tant dcrit dans la documentation "STEP 7-Micro/DOS".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

23

Introduction sur le produit et installation 1.1 Guide de STEP 7

Tches fondamentales
La mise en place d'une solution d'automatisation avec STEP 7 ncessite la ralisation de tches fondamentales. La figure suivante indique les tches excuter dans la plupart des projets et les classe selon la marche suivre. Ce guide renvoie aux chapitres respectifs, vous permettant ainsi de vous dplacer dans le manuel selon la tche que vous avez raliser.

24

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.1 Guide de STEP 7

Solutions de rechange
Comme le montre la figure prcdente, vous pouvez procder de deux manires diffrentes : Vous pouvez configurer le matriel en premier lieu, puis programmer les blocs. Mais vous pouvez aussi programmer d'abord les blocs sans avoir configurer auparavant le matriel. Ceci est particulirement recommand pour les tches de maintenance. En effet, vous avez ainsi la possibilit d'intgrer des blocs programms dans un projet existant.

Brve description des diverses tapes :


Installation de STEP 7 et des "License Keys" Pour une premire utilisation, vous devez installer STEP 7 et transfrer les "License Keys" depuis la disquette sur le disque dur (voir aussi Installation de STEP 7 et Autorisation). Conception de la solution d'automatisation Avant d'utiliser STEP 7, vous devez planifier votre solution d'automatisation depuis la division du processus en tches individuelles jusqu' la ralisation d'un schma de configuration (voir aussi Conception d'une solution d'automatisation). Conception de la structure du programme En utilisant les blocs mis votre disposition par STEP 7, vous transposez les tches dcrites lors de la conception de votre solution d'automatisation en structure de programme (voir aussi Blocs dans le programme utilisateur). Dmarrage de STEP 7 Vous dmarrez STEP 7 depuis l'interface utilisateur de Windows (voir aussi Dmarrage de STEP 7). Dfinition de la structure du projet Un projet peut tre compar un dossier dans lequel toutes les donnes sont organises de manire hirarchique et sont toujours disponibles. Ds lors que vous avez cr un projet, toutes les tches suivantes y seront excutes (voir aussi Structure du projet). Cration de la station En crant la station, vous dfinissez l'automate programmable : p.ex. SIMATIC 300, SIMATIC 400, SIMATIC S5 (voir aussi Insertion de stations). Configuration matrielle Dans une table de configuration, vous dfinissez les modules que vous allez mettre en uvre dans votre solution d'automatisation ainsi que les adresses permettant d'y accder depuis le programme utilisateur. Vous pouvez en outre y paramtrer les caractristiques des modules (voir aussi Manipulations de base pour la configuration matrielle). Configuration de rseaux et de liaisons de communication La condition requise l'tablissement d'une communication est l'existence d'un rseau pralablement configur. Vous devez cet effet crer les rseaux auxiliaires ncessaires votre solution d'automatisation, dfinir leurs proprits et pour les stations mises en rseau, les caractristiques de connexion au rseau ainsi que, le cas chant, les liaisons de communication requises (voir aussi Marche suivre pour la configuration d'un sous-rseau). Dfinition de mnmoniques Dans une table des mnmoniques, vous pouvez remplacer des adresses par des mnmoniques locaux ou globaux de dsignation plus vocatrice afin de les utiliser dans votre programme (voir aussi Cration d'une table des mnmoniques)

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

25

Introduction sur le produit et installation 1.1 Guide de STEP 7

Cration du programme En utilisant l'un des langages de programmation mis votre disposition, vous crez un programme affect ou non un module, que vous enregistrez sous forme de blocs, de sources ou de diagrammes (voir aussi Marche suivre pour la cration de blocs de code et Principes de la programmation dans les sources LIST). S7 uniquement : cration et exploitation de donnes de rfrence Vous pouvez utiliser ces donnes de rfrence afin de vous faciliter le test et la modification de votre programme utilisateur (voir aussi Affichage des donnes de rfrence existantes). Configuration de messages Crez par exemple des messages sur bloc avec leurs textes et attributs. En utilisant le programme de transfert, vous transfrez ensuite les donnes de configuration de messages dans la base de donnes du systme de contrle-commande (p.ex. SIMATIC WinCC, SIMATIC ProTool) (voir aussi Configuration de messages). Configuration de variables de contrle-commande Vous dfinissez une fois pour toutes les variables de contrle-commande dans STEP 7 et leur affectez les attributs souhaits. En utilisant le programme de transfert, vous transfrez les variables de contrle-commande cres dans la base de donnes du systme de contrlecommande WinCC (voir aussi Configuration de variables de contrle-commande). Chargement de programmes dans le systme cible S7 uniquement : une fois la configuration, le paramtrage et la cration du programme termins, vous pouvez transfrer votre programme utilisateur complet ou des blocs individuels dans le systme cible (module programmable de votre solution matrielle). La CPU contient dj le systme d'exploitation (voir aussi Conditions pralables au chargement). M7 uniquement : parmi diffrents systmes d'exploitation, vous slectionnez celui qui s'adapte votre solution d'automatisation et le transfrez seul ou avec le programme utilisateur sur le support de donnes souhait du systme cible M7. Test de programmes S7 uniquement : pour effectuer un test, vous avez la possibilit d'afficher les valeurs de variables depuis votre programme utilisateur ou depuis une CPU, d'affecter des valeurs ces variables et de crer une table des variables que vous souhaitez afficher ou forcer (voir aussi Introduction au test avec des tables de variables). M7 uniquement : test du programme utilisateur l'aide d'un programme de dbogage en langage volu. Surveillance du fonctionnement, diagnostic du matriel Vous dterminez les causes du dfaut d'un module en affichant des informations en ligne relatives ce module. Vous dterminez les causes d'un dfaut dans le droulement d'un programme utilisateur l'aide de la mmoire tampon de diagnostic et du contenu des piles. Vous pouvez en outre vrifier si un programme utilisateur est excutable sur une CPU donne (voir aussi Diagnostic du matriel et affichage de l'tat du module). Documentation de l'installation Aprs avoir cr un projet ou une installation, il est conseill de documenter les donnes de configuration de manire claire afin de faciliter le traitement ultrieur du projet de mme que les tches de maintenance (voir aussi Impression de la documentation du projet). DOCPRO, l'application optionnelle de cration et de gestion de documentation d'installations permet la structuration des donnes de configuration, la prsentation sous forme de dossiers des schmas de l'installation et l'impression dans une prsentation homogne.

26

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.1 Guide de STEP 7

Extension du manuel avec des thmes particuliers


Diffrents thmes spciaux peuvent reprsenter un intrt pour vous lors de la ralisation d'une solution d'automatisation : Fonctionnement multiprocesseur - synchrone de plusieurs CPU (voir aussi Mode multiprocesseur - fonctionnement synchrone de plusieurs CPU) Travail de plusieurs personnes sur un mme projet (voir aussi Edition de projets par plusieurs personnes) Utilisation de systmes M7 (voir aussi Marche suivre pour les systmes M7)

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

27

Introduction sur le produit et installation 1.2 Logiciel de base STEP 7

1.2

Logiciel de base STEP 7

Normes en vigueur
Les langages de programmation SIMATIC intgrs STEP 7 rpondent la norme DIN EN 6.1131-3. Le progiciel de base s'excute sous les systmes d'exploitation MS Windows 2000 Professional (que par la suite nous appellerons Windows 2000) ainsi que MS Windows XP Professional (que par la suite nous appellerons Windows XP) ainsi que MS Windows Server 2003 ainsi que MS Windows 7 Business, Ultimate et Enterprise et s'adapte son organisation graphique oriente objet.

Fonctions du logiciel de base


Le logiciel de base vous assiste dans toutes les phases du processus de cration de vos solutions d'automatisation, comme par exemple : la cration et la gestion de projets, la configuration et le paramtrage du matriel et de la communication, la gestion des mnmoniques, la cration de programmes, par exemple pour les systmes cible S7, le chargement de programmes dans des systmes cible, le test de l'installation d'automatisation, le diagnostic lors de perturbations de l'installation.

La conception de l'interface utilisateur du logiciel STEP 7 rpond aux connaissances ergonomiques modernes et son apprentissage est trs facile. La documentation du logiciel STEP 7 met votre disposition tous les informations ncessaires en ligne, dans l'aide en ligne et dans des manuels lectroniques de format PDF.

28

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.2 Logiciel de base STEP 7

Applications disponibles
Le logiciel de base STEP 7met votre disposition diffrentes applications :

Il n'est pas ncessaire d'appeler sparment chaque application, car elles sont dmarres automatiquement lorsque vous slectionnez une fonction correspondante ou ouvrez un objet.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

29

Introduction sur le produit et installation 1.2 Logiciel de base STEP 7

Gestionnaire de projets SIMATIC


Le gestionnaire de projets SIMATIC gre toutes les donnes relatives un projet d'automatisation quel que soit le systme cible (S7/M7/C7) sur lequel elles ont t cres. Le gestionnaire de projets SIMATIC dmarre automatiquement les applications requises pour le traitement des donnes slectionnes.

Editeur de mnmoniques
L'diteur de mnmoniques vous permet de grer toutes les variables globales. Vous disposez des fonctions suivantes : dfinition de dsignations symboliques et de commentaires pour les signaux du processus (entres/sorties), mmentos et blocs, fonctions de tri, importation/exportation avec d'autres programmes Windows.

La table des mnmoniques qui en rsulte est mise disposition de toutes les applications. La modification de l'un des paramtres d'un mnmonique est de ce fait reconnue automatiquement par toutes les applications.

30

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.2 Logiciel de base STEP 7

Diagnostic du matriel
Le diagnostic du matriel fournit un aperu de l'tat du systme d'automatisation. Dans une reprsentation d'ensemble, un symbole permet de prciser pour chaque module, s'il est dfaillant ou pas. Un double clic sur le module dfaillant permet d'afficher des informations dtailles sur le dfaut. Les informations disponibles dpendent des diffrents modules : affichage d'informations gnrales sur le module (p.ex. numro de commande, version, dsignation) et son tat (p.ex. dfaillant), affichage d'erreurs sur les modules (p.ex. erreur de voie) de la priphrie centrale et des esclaves DP, affichage des messages de la mmoire tampon de diagnoctic.

Pour les CPU, des informations supplmentaires s'affichent : causes de dfaillance dans le droulement d'un programme utilisateur dure de cycle (le plus long, le plus court et dernier), possibilits et charge de la communication MPI, performances (nombre d'entres/sorties, de mmentos, de compteurs, de temporisations et de blocs possibles).

Langages de programmation
Les langages de programmation CONT, LIST et LOG pour S7-300/400 font partie intgrante du logiciel de base. Le schma contacts (CONT) est un langage de programmation graphique. La syntaxe des instructions fait penser aux schmas de circuits. CONT permet de suivre facilement le trajet du courant entre les barres d'alimentation en passant par les contacts, les lments complexes et les bobines. La liste d'instructions (LIST) est un langage de programmation textuel proche de la machine. Dans un programme LIST, les diffrentes instructions correspondent, dans une large mesure, aux tapes par lesquelles la CPU traite le programme. Pour faciliter la programmation, LIST a t complt par quelques structures de langage volu (comme, par exemple, des paramtres de blocs et accs structurs aux donnes). Le logigramme (LOG) est un langage de programmation graphique qui utilise les botes de l'algbre de Boole pour reprsenter les oprations logiques. Les fonctions complexes, comme par exemple les fonctions mathmatiques, peuvent tre reprsentes directement combines avec les botes logiques.

Vous pouvez vous procurer d'autres langages de programmation sous forme de logiciels optionnels.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

31

Introduction sur le produit et installation 1.2 Logiciel de base STEP 7

Configuration matrielle
Vous utilisez cette application pour configurer et paramtrer le matriel d'un projet d'automatisation. Vous disposez des fonctions suivantes : Pour configurer le systme d'automatisation, vous slectionnez des chssis (Racks) dans un catalogue lectronique et affectez les modules slectionns aux emplacements souhaits dans les racks. La configuration de la priphrie dcentralise est identique celle de la priphrie centralise. Pour le paramtrage de la CPU, des menus vous permettent de dfinir des caractristiques telles que le comportement la mise en route et la surveillance du temps de cycle. Le fonctionnement multiprocesseur est possible. Les donnes saisies sont enregistres dans des blocs de donnes systme. Pour le paramtrage des modules, des botes de dialogue vous permettent de dfinir tous les paramtres modifiables. Les rglages l'aide de commutateurs DIP s'avrent inutiles. Le paramtrage des modules est ralis automatiquement au dmarrage de la CPU. L'avantage suivant en rsulte. Le remplacement d'un module est ainsi possible sans nouveau paramtrage. Le paramtrage de modules fonctionnels (FM) et de processeurs de communication (CP) s'effectue de manire identique celui des autres modules dans la configuration matrielle. A cet effet, des botes de dialogues ainsi que des rgles spcifiques aux modules sont ainsi mises disposition pour chaque FM et CP (fournies dans le logiciel fonctionnel du FM/CP). Dans les botes de dialogue, le systme ne propose que des saisies possibles, ce qui empche les entres errones.

NetPro
NetPro permet un transfert de donnes cyclique dclench par temporisation via MPI avec : choix des participants la communication, saisie de la source et de la destination des donnes dans un tableau ; la gnration de tous les blocs charger (SDB) et leur transfert complet dans toutes les CPU s'effectuent automatiquement.

En outre, un transfert de donnes dclench par vnement est possible avec : la dfinition des liaisons de communication, le choix des blocs de communication/ blocs fonctionnels dans la bibliothque des blocs intgre, le paramtrage des blocs de communication/ blocs fonctionnels slectionns dans le langage de programmation habituel.

32

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.3 Nouveauts dans la version 5.5 de STEP 7

1.3

Nouveauts dans la version 5.5 de STEP 7


Les thmes suivants ont t actualiss : Systmes d'exploitation Configuration et diagnostic du matriel Modifications de l'installation pendant le fonctionnement (CiR) Bibliothques standard Signalisation d'erreurs systme Diagnostic Paramtrage de linterface PG/PC

Systmes d'exploitation
A partir de STEP 7 V5.5, les systmes d'exploitation MS Windows 7 Professional, Ultimate et Enterprise (installation standard) sont pris en charge.

Configuration et diagnostic du matriel


A partir de STEP 7 V5.5, vous pouvez gnrer des I-Devices partir de plusieurs contrleurs IO. A partir de STEP 7 V5.5, vous pouvez utiliser la fonction Shared Device (priphrique partag) de PROFINET. A partir de STEP 7 V5.5, vous pouvez attribuer les adresses IP et les noms d'appareils de manire dynamique. A partir de STEP 7 V5.5, vous pouvez utiliser la redondance des supports pour plusieurs domaines. A partir de STEP 7 V5.5, vous pouvez configurer le synchronisme dhorloge pour les IO-Devices. A partir de STEP 7 V5.5, vous pouvez, les mises jour matrielles sont installables directement partir du menu Dmarrer de Windows. A partir de STEP 7 V5.5, vous pouvez grer des droits utilisateur pour le Webserver. A partir de STEP 7 V5.5, vous pouvez accder des pages Web des CPU via une liaison HTTPS scurise. A partir de STEP 7 V5.5, vous pouvez paramtrer tous les temps Keep-Alive pour les liaisons TCP. A partir de STEP 7 V5.5, des donnes I&M peuvent tre charges pour plusieurs modules simultanment (par multislection).

Modifications de l'installation pendant le fonctionnement (CiR)


Les limitations des versions STEP 7 y compris V5.4 SP5 pour la configuration du matriel en RUN (CiR) pour PROFIBUS lors de la mise niveau des versions n'existent plus dans la version V5.5.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

33

Introduction sur le produit et installation 1.3 Nouveauts dans la version 5.5 de STEP 7

Bibliothques standard
A partir de STEP 7 V5.5, le SFB104 "IP_CONF" pour la configuration commande par programme de l'interface PROFINET intgre de votre CPU vient s'ajouter aux fonctions systme. A partir de STEP 7 V5.5, la SFC99 "WWW" pour l'activation ou la synchronisation de pages Web utilisateur vient s'ajouter aux fonctions systme. A partir de STEP 7 V5.5, les fonctions systme sont compltes par SFB 73"RCVREC" pour la rception d'enregistrement et SFB 74 "PRVREC" pour la mise disposition d'enregistrement sur un I-Device Ces SFC s'appliquent uniquement au CPU S7-300. A partir de STEP 7 V5.5, la liste partielle dsigne par W#16#xy9C vient complter la liste d'tat systme. Elle fournit des informations sur les changeurs d'outil configurs et leurs outils. A partir de STEP 7 V5.5, on dispose des FB suivants pour la communication S7 : FB28 "USEND_E", FB29 "URCV_E", FB34 "GET_E" et FB35 "PUT_E". Ils ne sont valables que pour les CPU S7-300 et uniquement pour des liaisons via l'interface PN intgre. A partir de STEP 7 V5.5, les deux FB suivants de la communication ouverte via Industrial Ethernet ont des nouveaux noms : le FB 210 (nom jusquici : "S5FW_TCP") a pour nom "FW_TCP", le FB 220 (nom jusquici : "S5FW_IOT") a pour nom "FW_IOT".

Signalisation d'erreurs systme


A partir de STEP 7 V5.5, vous pouvez dcider d'valuer l'tat des esclaves la mise en route de la CPU. A partir de STEP 7 V5.5, les textes complmentaires des messages sont affichs ou mis en oeuvre dans les botes de dialogue "Aperu des messages", "Imprimer" et "Aperu avant impression". A partir de STEP 7 V5.5, vous pouvez tlcharger galement dans HW Config les blocs gnrs par la Signalisation derreurs systme".

Diagnostic systme
A partir de STEP 7 V5.5, il existe deux botes de dialogue "Diagnostic en format hexadcimal" : l'une pour les esclaves PROFIBUS et l'autre pour les priphriques PROFINET.

Paramtrage de linterface PG/PC


A partir de STEP 7 V5.5, vous pouvez utiliser lUSB-Prommer sans installer de logiciel supplmentaire. La fonctionnalit ncessaire est intgre STEP 7.

34

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.4 Possibilits d'extension du logiciel de base STEP 7

1.4

Possibilits d'extension du logiciel de base STEP 7


L'extension du logiciel de base peut tre ralise l'aide de logiciels optionnels, regroups dans les trois catgories de logiciels suivantes : Applications techniques elles comportent des langages de programmation volus et des logiciels orientation technologique. Logiciels excutables ils englobent des logiciels excutables directement utilisables dans le processus de production. Interfaces homme/machine (Human Machine Interfaces ; HMI) elles dsignent des logiciels spcifiques au contrle-commande.

Le tableau suivant indique les logiciels optionnels pouvant tre mis en oeuvre selon le systme d'automatisation utilis :
STEP 7
S7-300 S7-400 Applications techniques Borland C/C++ CFC DOCPRO HARDPRO M7-ProC/C++ S7-GRAPH S7-HiGraph S7-PDIAG S7-PLCSIM S7-SCL TeleService +
1)

M7-300 M7-400 o +
1)

C7-620

+ +
3)

2)

+ +

o +
2)

+ + + + + +

+ + +

Logiciels excutables Fuzzy Control M7-DDE-Server M7-SYS RT Modular PID Control PC-DDE-Server PRODAVE MPI Standard PID Control + + + + + + + o + +

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

35

Introduction sur le produit et installation 1.4 Possibilits d'extension du logiciel de base STEP 7

STEP 7
S7-300 S7-400 Interface homme/machine ProAgent SIMATIC ProTool SIMATIC ProTool/Lite SIMATIC WinCC o M7-300 M7-400 C7-620

o = indispensable + = optionnel 1) = recommand partir de S7-400 2) = non recommand pour C7-620 3) = pas pour les programmes C

36

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.4 Possibilits d'extension du logiciel de base STEP 7

1.4.1

Applications techniques
Les applications techniques sont des applications orientes tche pouvant tre mises en oeuvre en tant qu'extension du logiciel de base. Elles englobent : les langages volus pour le programmeur, le langage graphique pour l'ingnieur en technologie, des logiciels complmentaires pour le diagnostic, la simulation, la maintenance distance, la documentation de l'installation, etc.

Langages volus
Vous disposez des logiciels de langage optionnels suivants pour la programmation des automates programmables SIMATIC S7-300/400. GRAPH est un langage de programmation permettant la description aise de commandes squentielles (programmation de graphes squentiels). Le droulement du processus y est subdivis en tapes. Celles-ci contiennent en particulier des actions pour la commande des sorties. Le passage d'une tape la suivante est soumis des conditions de transition. HiGraph est un langage de programmation permettant la description aise de processus asynchrones non squentiels sous forme de graphes d'tat. A cet effet, l'installation est subdivise en units fonctionnelles pouvant prendre diffrents tats. Ces units fonctionnelles peuvent se synchroniser par l'change de messages. SCL est un langage volu textuel conforme la norme DIN EN 61131-3. Il comporte des lments de langage que l'on trouve galement sous une forme similaire dans les langages de programmation Pascal et C. SCL convient donc particulirement aux utilisateurs dj habitus se servir d'un langage de programmation volu. Vous pouvez, par exemple, faire appel SCL pour programmer des fonctions trs complexes ou se rptant souvent.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

37

Introduction sur le produit et installation 1.4 Possibilits d'extension du logiciel de base STEP 7

Langage graphique
CFC pour S7 et M7 est un langage de programmation permettant l'interconnection graphique de fonctions existantes. Ces fonctions couvrent un large ventail allant de combinaisons logiques simples des rgulations et commandes complexes. Un grand nombre de ces fonctions est disponible sous la forme de blocs dans une bibliothque. La programmation se fait en copiant des blocs sur un diagramme et en reliant les connecteurs de blocs par des lignes.

Logiciels complmentaires
Borland C++ (pour M7 uniquement) contient l'environnement de dveloppement Borland. Avec DOCPRO, vous pouvez organiser toutes les donnes de configuration cres avec STEP 7 dans un dossier des schmas de l'installation. Ceci facilite la gestion des donnes de configuration et garantit la conformit aux normes lors de la prparation l'impression. HARDPRO est le systme de configuration matrielle pour S7-300 qui assiste l'utilisateur dans son norme tche de configuration de solutions d'automatisation complexes. M7-ProC/C++ (pour M7 uniquement) permet d'intgrer l'environnement de dveloppement Borland pour les langages de programmation C et C++ l'environnement de dveloppement STEP 7. PLCSIM (pour S7 uniquement) permet de simuler des automates programmables S7 connects votre outil de dveloppement (PG/PC) des fins de test. PDIAG (pour S7 uniquement) permet la configuration homogne du diagnostic du processus pour SIMATIC S7-300/400. Le diagnostic du precessus permet de dtecter des tats errons hors du systme d'automatisation (p.ex. position finale non atteinte). Tlservice offre la possibilit de programmer et d'effectuer la maintenance de systmes d'automatisation S7 et M7 depuis la PG ou le PC via le rseau tlphonique.

38

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.4 Possibilits d'extension du logiciel de base STEP 7

1.4.2

Logiciels excutables
Il s'agit de solutions logicielles finies programmes pouvant tre appeles dans le programme utilisateur. Les logiciels excutables sont directement intgrs dans la solution d'automatisation. Ils englobent : des rgulations pour SIMATIC S7. Des exemples en sont les rgulations standard, modulaire et Fuzzy, des applications de couplage des systmes d'automatisation avec des applications Windows, un systme de fonctionnement en temps rel pour SIMATIC M7.

Rgulations pour SIMATIC S7


Le contrle PID standard permet l'intgration de rgulateurs action continue, de rgulateurs impulsion et de rgulateurs incrmentiels dans le programme utilisateur. L'application de paramtrage laquelle la dfinition du rgulateur est intgre permet le paramtrage rapide et le rglage optimal du rgulateur. Le contrle PID modulaire est mis en oeuvre lorsqu'un rgulateur PID simple ne permet pas la rsolution de la tche d'automatisation. La mise en circuit des blocs fonctionnels standard fournis permet de raliser quasiment toutes les structures techniques de rgulation. Le contrle Fuzzy permet de crer des systmes Fuzzy. Ces systmes sont mis en oeuvre lorsque des processus ne peuvent pas ou peuvent difficilement tre dcrits mathmatiquement, lorsque le droulement de mcanismes et de processus est imprvisible, lorsque des comportements non linaires surviennent alors que l'on dispose d'une connaissance acquise par exprience du processus.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

39

Introduction sur le produit et installation 1.4 Possibilits d'extension du logiciel de base STEP 7

Applications de couplage
PRODAVE MPI est une palette d'outils permettant l'change de donnes du processus entre SIMATIC S7, SIMATIC M7 et SIMATIC C7. Elle ralise de manire autonome l'change de donnes via l'interface MPI. Le serveur M7-DDE (19>Dynamic Data Exchange) permet de relier des applications Windows des variables du processus dans SIMATIC M7, sans qu'une programmation supplmentaire ne soit ncessaire.

Systme d'exploitation en temps rel


M7-SYS RT contient le systme d'exploitation M7 RMOS 32 et des programmes systme. Il est indispensable l'utilisation des progiciels M7-ProC/C++ et CFC pour SIMATIC M7.

40

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Introduction sur le produit et installation 1.4 Possibilits d'extension du logiciel de base STEP 7

1.4.3

Interface homme/machine
Les interfaces homme/machine sont des logiciels spcifiques au contrle-commande dans SIMATIC. Les systmes de visualisation du processus SIMATIC WinCC et SIMATIC WinCC flexible sont des systmes de base indpendants des branches et technologies d'utilisation qui comportent toutes les fonctions indispensables au contrle-commande. SIMATIC ProTool et SIMATIC ProTool/Lite sont des applications modernes permettant la configuration des visuels SIMATIC et des appareils compacts SIMATIC C7. ProAgent permet un diagnostic du processus prcis et rapide dans les installations et machines en fournissant des informations relatives la localisation et la cause des erreurs.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

41

Introduction sur le produit et installation 1.4 Possibilits d'extension du logiciel de base STEP 7

42

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

2
2.1
2.1.1

Installation
Automation License Manager
Licence d'utilisation avec Automation License Manager

Automation Licence Manager


Pour pouvoir utiliser le logiciel de programmation STEP 7, une "License Key" (cl de licence) spcifique au produit (licence d'utilisation) est ncessaire. A partir de la version V5.3 de STEP 7, celleci est installe par Automation License Manager. Automation License Manager est un produit logiciel de Siemens AG. Il permet de grer des "License Keys" (cls de licence, reprsentants techniques de licences) dans l'ensemble du systme. Automation License Manager est disponible : sur le support d'installation du produit logiciel correspondant pour lequel une "License Key" est requise ou sur un support d'installation distinct, ainsi que sur les pages Internet de A&D Customer Support de Siemens AG, sous forme de produit tlcharger.

Automation License Manager dispose d'une aide en ligne contextuelle intgre, que vous pouvez appeler aprs l'installation en appuyant sur la touche F1 ou en choisissant la commande de menu ? > Aide de License Manager. Vous y trouverez des informations dtailles sur la fonctionnalit et l'utilisation de Automation License Manager.

Licences
Des licences sont ncessaires pour l'utilisation des progiciels de STEP 7 protgs par des droits de licence. Une licence est accorde comme droit d'utilisation de produits. Les reprsentants de ce droit sont : CoL (Certificate of License) et License Key (cl de licence)

Certificate of License (CoL)


Le "Certificate of License" contenu dans la livraison des produits respectifs constitue la preuve juridique du droit d'utilisation. Seul le propritaire du CoL ou les personnes mandates sont autorises utiliser le produit respectif.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

43

Installation 2.1 Automation License Manager

License Keys (cls de licence)


La "License Key" (cl de licence) est le reprsentant technique d'une licence (marque de licence lectronique). SIEMENS AG attribue une "License Key" (cl de licence) pour tout logiciel protg par des droits de licence. Le logiciel correspondant ne peut tre utilis conformment aux conditions de licence et d'utilisation lies la "Licence Key" (cl de licence) correspondante que si la prsence de la "License Key" (cl de licence) valide est constate sur un ordinateur, aprs dmarrage du logiciel.

Nota
Vous avez galement la possibilit d'utiliser le logiciel de base de STEP 7 sans "License Key" (cl de licence) pour en dcouvrir l'interface utilisateur et les fonctionnalits. L'utilisation sans restrictions, conforme aux dclarations de droits de licence, n'est cependant autorise et possible que lorsque la "License Key" (cl de licence) est installe. Si vous n'avez pas install la "License Key" (cl de licence), vous tes sollicit intervalles rguliers de raliser l'installation.

Les "License Keys" (cl de licence) sont disponibles sur les supports de donnes suivants et peuvent tre transfres d'un support l'autre : disquettes "License Key" (cl de licence) ou cls de mmoire USB, disques durs locaux et disques durs d'ordinateurs dans le rseau.

Si vous avez install des produits logiciels pour lesquels vous ne disposez pas de "License Key" (cl de licence), vous pouvez encore commander aprs-coup les licences requises. Des informations supplmentaires sur l'utilisation des "License Keys" (cls de licence) sont fournies dans l'aide en ligne de Automation License Manager.

44

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Installation 2.1 Automation License Manager

Types de licences
Pour les produits logiciels de Siemens AG, il existe les types suivants de licences orientes application. Le comportement du logiciel est dtermin par les diverses "License Keys" (cls de licence) correspondant ces types de licences. Le type d'utilisation est dfini par le "Certificate of License" respectif.
Type de licence Single License Floating License Trial License Description L'utilisation du logiciel est autorise pour une dure illimite sur un ordinateur quelconque. L'utilisation du logiciel est autorise pour une dure illimite sur un rseau (utilisation " distance"). une validit de 14 jours au maximum, un nombre de jours dfini partir de la premire utilisation, l'utilisation pour test et validation ( l'exclusion de toute responsabilit). une validit de 50 heures au maximum.

L'utilisation du logiciel est restreinte :

Rental License Upgrade License

L'utilisation du logiciel est restreinte : Une mise niveau peut tre ncessaire en raison d'exigences spcifiques de l'tat du systme : Une licence de mise niveau permet de transformer une licence d'une "ancienne" version x en une licence de version >x+.... Une mise niveau peut p. ex. tre requise en raison d'extension des capacits.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

45

Installation 2.1 Automation License Manager

2.1.2

Installation de Automation License Manager


L'installation de Automation License Manager est ralise par un Setup MSI. Le logiciel d'installation de Automation License Manager se trouve sur le CD du produit STEP 7. Vous pouvez installer Automation License Manager avec STEP 7 ou ultrieurement.

Nota
Des informations dtailles sur la procdure d'installation de Automation License Manager sont donnes dans le fichier Lisezmoi actuel. Tous les informations relatives la fonctionnalit et l'utilisation des "License Keys" (cls de licence) de Automation License Manager sont donnes dans l'aide en ligne.

Installation ultrieure de "License Keys" (cls de licence)


Si vous dmarrez le logiciel STEP 7 et qu'aucune "License Key" (cl de licence) n'est prsente, vous obtenez un message correspondant.

Nota
Vous avez galement la possibilit d'utiliser le logiciel de base de STEP 7 sans "License Key" (cl de licence) pour en dcouvrir l'interface utilisateur et les fonctionnalits. L'utilisation sans restrictions, conforme aux dclarations de droits de licence, n'est cependant autorise et possible que lorsque la "License Key" (cl de licence) est installe. Si vous n'avez pas install la "License Key" (cl de licence), vous tes sollicit intervalles rguliers de raliser l'installation.

Pour installer les "License Keys" (cl de licence) ultrieurement, vous avez les possibilits suivantes : installez les "License Keys" (cl de licence) depuis les disquettes ou des cls de mmoire USB, installez les "License Keys" (cl de licence) en les tlchargent depuis Internet (une commande pralable est requise), utilisez des "Floating License Keys" (cl de licence) disponibles sur Internet.

Vous trouverez des informations dtailles sur la procdure dans l'aide en ligne contextuelle de Automation License Manager, que vous pouvez appeler aprs l'installation en appuyant sur la touche F1 ou en choisissant la commande de menu ? > Aide de License Manager.

Nota
Les "License Keys" (cls de licence) sont uniquement fonctionnelles sous Windows XP/Server 2003 si elles se trouvent sur un disque dur possdant des droits d'accs en criture. Les "Floating Licenses" peuvent galement tre utilises via un rseau, c'est--dire " distance".

46

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Installation 2.1 Automation License Manager

2.1.3

Rgles d'utilisation des License Keys (cl de licence)


Avertissement Tenez compte des indications d'utilisation des "License Keys" (cls de licence) dcrites dans l'aide en ligne de Automation License Manager et dans le fichier Lisezmoi sur le CD-ROM de STEP 7. Le nonrespect de ces rgles risque d'entraner la perte irrmdiable des "License Keys" (cls de licence).

Vous pouvez appeler l'aide en ligne contextuelle de Automation License Manager en appuyant sur la touche F1 ou en choisissant la commande de menu ? > Aide de License Manager. Cette aide en ligne contient toutes les informations relatives la fonctionnalit et l'utilisation des "License Keys".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

47

Installation 2.2 Installation de STEP 7

2.2

Installation de STEP 7
STEP 7 contient un programme SETUP qui excute l'installation automatiquement. Des messages s'affichant l'cran vous guident tape par tape tout au long de la procdure d'installation. Vous l'appelez via la procdure d'installation de logiciel standard sous Windows XP/7/Server 2003. Les phases principales de l'installation sont : la copie des donnes dans votre outil de dveloppement, l'installation des pilotes pour EPROM et communication, l'installation des "License Keys" (cls de licence) (si souhaite).

Nota Les consoles de programmation Siemens sont livres avec, sur leur disque dur, le logiciel STEP 7 installable.

Conditions d'installation
Systme d'exploitation Windows Windows XP, Windows Server 2003, MS Windows 7 Professional et Enterprise de Microsoft (installation standard) Matriel de base Ordinateur personnel (PC) ou console de programmation (PG) avec : processeur pentium (600 MHz), mmoire vive : 512 Mo au minimum, moniteur couleur, clavier et souris pris en charge par Microsoft Windows.

Une console de programmation (PG) est un ordinateur personnel compact tout spcialement conu pour tre utilis dans un environnement industriel. Elle est quipe en srie de tous les programmes ncessaires la programmation de systmes d'automatisation SIMATIC. Mmoire requise Pour l'espace mmoire ncessaire sur le disque dur voir le fichier Lisezmoi. Interface MPI (optionnelle) L'interface multipoint MPI entre l'outil de dveloppement (console de programmation ou ordinateur personnel) et le systme cible n'est ncessaire que si vous voulez communiquer, sous STEP 7 et via MPI, avec le systme cible. A cet effet, vous devez utiliser : un adaptateur PC USB qui est reli l'interface de communication de votre console ou une carte MPI (p. ex. CP 5611) installe dans votre console.

L'interface MPI est dj intgre certaines consoles de programmation. Programmateur d'EPROM externe (optionnel) Un programmateur d'EPROM externe n'est ncessaire, lorsque vous utilisez un PC, que si vous voulez programmer des EPROM.

48

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Installation 2.2 Installation de STEP 7

Nota Veuillez galement tenir compte des remarques sur linstallation de STEP 7 figurant dans le fichier Lisezmoi ainsi que de la "Liste de compatibilit des logiciels SIMATIC avec les versions du logiciel de base STEP 7". Vous trouverez le fichier Lisezmoi en cliquant dans la barre des tches sur Dmarrer > Simatic > Informations. La liste de compatibilit se trouve dans Dmarrer > Simatic > Documentation.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

49

Installation 2.2 Installation de STEP 7

2.2.1

Marche suivre pour l'installation de STEP 7

Prparatifs
Vous devez lancer le systme d'exploitation (Windows XP, Server 2003 ou Windows 7) avant de commencer l'installation. Un support de donnes externe est inutile si le logiciel STEP 7 installable se trouve dj sur le disque dur de la PG. Pour effectuer l'installation partir du CD-ROM, insrez le CD-ROM dans le lecteur de CD-ROM de votre PC.

Lancement du programme d'installation


Procdez comme suit pour lancer l'installation : 1. Insrez le CD-ROM et lancez le Setup en cliquant sur "setup.exe". 2. Suivez tape par tape les instructions affiches par le programme d'installation. Ce programme vous guide pas pas tout au long de la procdure d'installation. Vous avez toujours la possibilit de revenir l'tape prcdente ou d'aller l'tape suivante. Pendant l'installation, des questions vous sont poses ou des options proposes dans des botes de dialogue. Tenez compte des indications ci-aprs qui vous permettront de rpondre plus rapidement et aisment aux dialogues.

Version de STEP 7 dj installe...


Si le programme d'installation constate qu'une version de STEP 7 se trouve dj sur l'outil de dveloppement, un message vous le signale et vous avez les possibilits suivantes : interrompre l'installation pour, ensuite, dsinstaller l'ancienne version de STEP7 sous Windows puis relancer l'installation ou poursuivre l'installation et substituer ainsi la nouvelle version l'ancienne.

Une maintenance correcte du logiciel exigerait que vous dsinstalliez toute version antrieure existante avant de procder une nouvelle installation. L'crasement pur et simple d'une ancienne version prsente, en outre, l'inconvnient qu'une dsinstallation ultrieure n'effacerait pas les parties ventuellement encore existantes d'une installation prcdente.

Choisir son installation


Trois variantes d'installation au choix sont possibles : Standard : Installation de STEP 7 sur votre ordinateur avec tous ses composants. La bote de dialogue suivante vous permettra de modifier le choix de la langue. Compacte : Installation de STEP 7 sur votre ordinateur avec le minimum de composants ncessaires. La bote de dialogue suivante vous permettra de modifier le choix de la langue. Personnalise : La bote de dialogue suivante affiche tous les composants pouvant tre installs. Vous pouvez choisir parmi ceux-ci les composants que vous dsirez installer.

50

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Installation 2.2 Installation de STEP 7

Numro d'identification
Un numro d'identification vous est demand durant l'installation. Entrez ce numro. Vous le trouverez sur le certificat du logiciel ou sur le support mmoire "License Key" (cl de licence) correspondant.

Installation de "License Keys"


Lors de l'installation, le programme vrifie si une "License Key" (cl de licence) correspondante existe sur le disque dur. Si aucune "License Key" (cl de licence) valide n'est reconnue, un message vous avertit que vous ne pouvez utiliser le logiciel qu'en prsence d'une "License Key" (cl de licence). Vous pouvez, si vous le dsirez, installer immdiatement les "License Keys" ou bien poursuivre l'installation de STEP 7 et installer les "License Keys" ultrieurement. Dans le premier cas, insrez la disquette "License Key" (cl de licence) fournie ou utilisez la cl A&D License lorsque le message correspondant vous y invite.

Paramtrage de l'interface PG/PC


Une bote de dialogue de paramtrage de l'interface PG/PC s'affiche pendant l'installation. Lisez cet effet "Paramtrage de l'interface PG/PC".

Paramtrage de cartes mmoire


Une bote de dialogue relative au paramtrage de cartes mmoire apparat pendant l'installation. Vous n'avez pas besoin de pilote EPROM si vous n'utilisez pas de cartes mmoire. Choisissez alors l'option "Aucun". Sinon, choisissez l'option correspondant votre PG. Si vous vous servez d'un ordinateur personnel, vous pouvez choisir un pilote pour programmateur d'EPROM externe. Vous devez alors galement indiquer l'interface laquelle ce programmateur est connect (par exemple LPT1).

Vous pouvez modifier les paramtres choisis aprs l'installation en appelant le programme "Paramtrage de cartes mmoire" dans le groupe de programmes STEP 7 ou dans le panneau de configuration.

Systme de fichiers flash


Vous pouvez prciser, dans la bote de dialogue de paramtrage de cartes mmoire, s'il faut installer un systme de fichiers flash. Ce systme est, par exemple, ncessaire si dans SIMATIC M7 vous voulez crire ou effacer des fichiers individuels sur une carte mmoire EPROM sans en modifier le contenu restant. Choisissez l'option d'installation du systme de fichiers flash si vous voulez utiliser cette fonction et disposez d'une console de programmation (PG 720/740/760, Field PG et Power PG) ou d'un programmateur d'EPROM appropris.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

51

Installation 2.2 Installation de STEP 7

Erreurs pendant l'installation


Les erreurs suivantes entranent l'interruption de l'installation : Si une erreur d'initialisation se produit immdiatement aprs le dmarrage du SETUP, vous avez certainement lanc l'installation dans un environnement autre que Windows. L'espace mmoire est insuffisant : selon l'option d'installation choisie, vous avez besoin d'environ 650 Mo 900 Mo d'espace libre sur votre disque dur pour le logiciel de base. CD dfectueux: adressez-vous votre agence Siemens si vous constatez qu'un CD est dfectueux. Erreur de manipulation : recommencez l'installation en observant rigoureusement les instructions.

Fin de l'installation
Un message s'affiche l'cran pour vous signaler que l'installation a russi. Si l'installation a entran l'actualisation des fichiers systme, vous tes invit relancer Windows. Une fois Windows redmarr (dmarrage chaud), vous pouvez cliquer sur l'icne du SIMATIC Manager pour lancer l'interface utilisateur de STEP7. Une installation sans erreur s'achve par la cration d'un groupe de programmes pour STEP 7.

52

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Installation 2.2 Installation de STEP 7

2.2.2

Paramtrage de l'interface PG/PC


Le paramtrage que vous ralisez ici vous permet de dfinir la communication entre PG/PC et systme d'automatisation. Une bote de dialogue de paramtrage de l'interface PG/PC s'affiche pendant l'installation. Vous pouvez galement afficher cette bote de dialogue aprs l'installation en appelant le programme "Paramtrage de l'interface PG/PC". Ce programme vous permet de modifier les jeux de paramtres aprs coup, indpendamment d'une quelconque installation.

Principe
L'utilisation d'une interface ncessite : des paramtrages dans le systme d'exploitation, un jeu de paramtres adquat.

Lorsque vous utilisez un PC avec une carte MPI ou des processeurs de communication (CP), vous devez vrifier l'affectation des interruptions et des adresses dans le "Panneau de configuration" de Windows, pour vous assurer de l'absence de conflits d'interruptions ou de recoupement de plages d'adresses. Des jeux de paramtres prdfinis vous sont proposs dans la bote de dialogue afin de simplifier le paramtrage de l'interface PG/PC.

Paramtrage de l'interface PG/PC


Procdez de la manire suivante (une description plus dtaille est donne dans l'aide en ligne) : 1. Dans le "Panneau de configuration" de Windows, effectuez un double clic sur "Paramtrage de l'interface PG/PC". 2. Slectionnez "S7ONLINE" comme "Entre de l'application". 3. Slectionnez le jeu de paramtres souhait dans la liste "Jeux de paramtres utiliss". Si le jeu de paramtres souhait ne figure pas dans la liste propose, vous devez d'abord installer un module ou un protocole en cliquant sur le bouton "Slectionner". Le jeu de paramtres est alors automatiquement cr. Dans les systmes Plug&Play, les CP Plug&Play (p. ex. CP 5611 et CP 5512) ne peuvent pas tre installs manuellement. Ils sont automatiquement intgrs au "Paramtrage de l'interface PG/PC" lorsque vous les branchez dans votre PG/PC. Si vous slectionnez une interface avec dtection automatique des paramtres de bus, (par exemple un CP 5611 (Auto)), vous pouvez connecter la PG ou le PC au rseau MPI ou PROFIBUS sans devoir slectionner ces paramtres de bus. Pour des vitesses de transmission infrieures 187,5 kbits/s, des temps d'attente allant jusqu' une minute ne sont pas exclus. Condition pour la dtection automatique : les matres connects au bus rpartissent les paramtres de bus de manire cyclique ; touts les nouveaux composants MPI le font ; la rpartition cyclique des paramtres de bus ne doit pas tre dsactive pour les sous-rseaux PROFIBUS (paramtrage par dfaut du rseau PROFIBUS). Lorsque vous slectionnez une interface sans dtection automatique des paramtres de bus, vous pouvez afficher les paramtres afin de les adapter au sous-rseau.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

53

Installation 2.2 Installation de STEP 7

Des modifications sont galement indispensables en cas de conflit avec d'autres paramtrages (par exemple, affectation d'interruptions ou d'adresses). Dans ce cas, effectuez les modifications requises en utilisant la fonction d'ajout de nouveau matriel et le panneau de configuration de Windows (voir ciaprs).

Avertissement Ne supprimez en aucun cas le jeu de paramtres "TCP/IP" ventuellement prsent ! Vous risqueriez de perturber l'excution des autres applications.

Contrle de l'affectation des interruptions et adresses


Lorsque vous utilisez un PC avec carte MPI, vous devez absolument vrifier si l'interruption et la plage d'adresses prdfinies sont libres.

54

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Installation 2.3 Dsinstallation de STEP 7

2.3

Dsinstallation de STEP 7
Utilisez la procdure de dsinstallation courante sous Windows : 1. Lancez, sous Windows, le dialogue d'installation de logiciel en effectuant un double clic sur l'icne "Ajout/Suppression de programmes" dans le "Panneau de configuration". 2. Slectionnez l'entre STEP 7 dans la liste affiche des logiciels installs. Cliquez sur le bouton de suppression du logiciel. 3. Si des botes de dialogue de suppression de fichiers autoriss apparaissent, cliquez sur le bouton "Non" en cas de doute.

2.4
2.4.1

Droits d'utilisateur
Droits d'utilisateur sous MS Windows XP/Server 2003
Vous devez tenir compte des points suivants concernant les droits utilisateur : Pour pouvoir utiliser STEP 7, vous devez ouvrir une session au moins en tant qu'utilisateur (une ouverture de session en tant qu'invit est insuffisante). Pour l'installation du logiciel STEP 7 et des HSP, la mise en uvre de modules ainsi que la modification de paramtres dans l'application "Paramtrage de l'interface PG/PC", vous devez possder des droits d'administrateur. Pour l'utilisation de progiciels, tenez compte les droits ncessaires pour chacun d'eux. Si des projets sont enregistrs sur des lecteurs NTFS, les utilisateurs doivent disposer d'un accs total. Il en est de mme pour le dossier contenant les mises jour HSP (par dfaut : C:\HWUPDATES). L'accs au sein du rpertoire de projet standard S7PROJ est valid automatiquement pour tous les utilisateurs.

Nota
La validit des droits utilisateur ne s'applique qu' STEP 7. Elle n'est pas garantie pour d'autres progiciels. Des droits d'administrateur ou d'utilisateur principal peuvent galement tre requis. Aprs l'installation/dsinstallation d'un nouveau matriel, l'ordinateur doit tre dmarr au moins 1 x directement avec des droits d'administrateur.

2.4.2

Droits d'utilisateur sous MS Windows 7

Dfinition des droits d'accs dans le systme d'exploitation


Le groupe d'utilisateurs "Siemens TIA Engineer" est cr automatiquement lors de l'installation de STEP 7 sous MS Windows 7. Il permet aux utilisateurs qui y sont inscrits de paramtrer l'interface

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

55

Installation 2.4 Droits d'utilisateur

PG/PC ainsi que de d'installer certains Hardware Support Packages. Pour la configuration IP manuelle (pour PROFINET sans DHCP), l'utilisateur doit de plus tre inscrit dans le groupe d'utilisateurs prdfini "Oprateurs de la configuration rseau" par le systme d'exploitation. L'attribution des ces droits utilisateur doit tre ralise par l'administrateur.

Ajout d'utilisateurs aux groupes d'utilisateurs "Siemens TIA Engineer" et "Oprateurs de la configuration rseau"
Ajoutez les utilisateurs locaux dont les Login accdent STEP 7 au groupe "Siemens TIA Engineer". Procdez de la manire suivante : 1. Ouvrez le panneau de configuration sous Windows et slectionnez l'entre "Comptes d'utilisateurs". 2. Dans la fentre de navigation, slectionnez l'entre "Grer les comptes d'utilisateur." 3. Dans l'onglet "Options avancs", slectionnez l'entre "Avanc" dans la section "Gestion avance des utilisateurs". 4. Dans la fentre de navigation, slectionnez l'entre "Utilisateurs et groupes locaux > Utilisateurs". Tous les utilisateurs s'affichent dans la fentre de donnes. 5. En choisissant le menu contextuel, ouvrez la bote de dialogue "Nouvel utilisateur" et ouvrez un compte d'utilisateur avec le mme Login pour chaque utilisateur qui doit accder STEP 7. 6. Pour chacun des utilisateurs crs, choisissez la commande de menu contextuelle "Proprits". 7. Dans la bote de dialogue qui s'ouvre, slectionnez l'onglet "Membre de" et cliquez sur le bouton "Ajouter...". 8. Dans la bote de dialogue "Slectionnez des groupes", entrez dans le champ "Entrez les noms des objets slectionner" le groupe d'utilisateurs "Siemens TIA Engineer" et confirmez par "OK". 9. Procdez de la mme manire avec les utilisateurs qui doivent galement tre ajouts au groupe d'utilisateurs "Oprateurs de la configuration rseau".

56

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Installation 2.4 Droits d'utilisateur

Cration du groupe d'utilisateurs global du domaine "Siemens TIA Engineer"


En cas d'utilisation dans un domaine, vous pouvez en alternative crer un groupe d'utilisateurs global au domaine, form d'aprs les groupes d'utilisateurs locaux "Siemens TIA Engineer" et "Oprateurs de la configuration rseau". Les conditions suivantes doivent tre remplies cet effet : L'administrateur du domaine a cr un groupe d'utilisateurs global du domaine. L'administrateur du domaine a ajout au groupe d'utilisateurs global du domaine les utilisateurs dont le Login accde STEP 7.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

57

Installation 2.4 Droits d'utilisateur

58

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

3
3.1

Conception de la solution d'automatisation


Conception d'une solution d'automatisation
Ce chapitre donne des informations pour l'excution des tches fondamentales ncessaires la planification d'une solution d'automatisation pour un automate programmable (AP). Un exemple d'automatisation de processus de mlange industriel vous explique comment procder tape par tape. Il existe de nombreuses mthodes pour concevoir une solution d'automatisation. La figure ci-aprs montre la marche suivre fondamentale que vous pouvez appliquer tout projet.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

59

Conception de la solution d'automatisation 3.2 Subdivision du processus en tches et zones

3.2

Subdivision du processus en tches et zones


Un processus d'automatisation est constitu de diffrentes tches. Il est possible de dfinir mme le processus le plus complexe en dterminant des zones cohrentes au sein du processus et en subdivisant ces dernires en tches partielles plus petites. L'exemple suivant vous montre, en se basant sur un processus de mlange industriel, comment structurer un processus en zones fonctionnelles et en tches individuelles.

60

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Conception de la solution d'automatisation 3.2 Subdivision du processus en tches et zones

Identification des zones du processus


Une fois le processus commander dfini, dcomposez le projet en groupes ou zones apparentes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

61

Conception de la solution d'automatisation 3.2 Subdivision du processus en tches et zones

Comme chaque zone est son tour subdivise en tches plus petites, les tches ncessaires pour commander la partie correspondante du processus ne sont pas trs complexes. Dans notre exemple de mlangeur industriel, nous pouvons identifier quatre zones (voir le tableau suivant). La zone pour la substance A ncessite le mme quipement que la zone pour la substance B.
Zone fonctionnelle Substance A Equipement associ Pompe d'alimentation pour la substance A Soupape d'admission pour la substance A Soupape d'alimentation pour la substance A Capteur de dbit pour la substance A Substance B Pompe d'alimentation pour la substance B Soupape d'admission pour la substance B Soupape d'alimentation pour la substance B Capteur de dbit pour la substance B Rservoir mlangeur Vidange Moteur mlangeur Commutateurs de mesure du niveau Soupape de vidange

62

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Conception de la solution d'automatisation 3.3 Description des diffrentes zones fonctionnelles

3.3

Description des diffrentes zones fonctionnelles


Lorsque vous dcrivez chaque zone et chaque tche dans votre processus, vous dfinissez non seulement le fonctionnement de chaque zone, mais galement les diffrents lments commandant cette zone, savoir : les entres et sorties logiques, mcaniques et lectriques pour chaque tche, les verrouillages et les relations de dpendance entre les diffrentes tches.

Notre exemple de processus de mlange industriel fait appel des pompes, des moteurs et des soupapes. Il faut dcrire chacun de ces lments prcisment afin d'identifier leurs caractristiques de fonctionnement et le type des verrouillages ncessaires pendant l'exploitation. Les tableaux suivants fournissent des modles de description de l'quipement utilis dans le mlangeur industriel pris en exemple. Vous pouvez galement vous servir de ces descriptions pour vous procurer l'quipement ncessaire.
Substances A et B : moteurs des pompes d'alimentation Les pompes d'alimentation amnent les substances A et B au rservoir mlangeur. Dbit : 400 l par minute Puissance : 100 KW pour 1200 tours/min

Le dmarrage et l'arrt des pompes sont commands partir d'un poste d'opration situ proximit du rservoir mlangeur. Le nombre de dmarrages est comptabilis des fins de maintenance. Il est possible de remettre zro le compteur et l'indicateur l'aide d'un mme bouton-poussoir. Les conditions de validation sont les suivantes : Le rservoir mlangeur n'est pas plein. La soupape de vidange du rservoir mlangeur est ferme. L'arrt d'urgence n'est pas activ. Le capteur de dbit ne signale pas de dbit 7 s aprs le dclenchement du moteur des pompes. Le capteur de dbit ne signale plus de dbit pendant le fonctionnement.

Les conditions d'arrt sont les suivantes :

Substances A et B : soupapes d'admission et d'alimentation Les soupapes d'admission et d'alimentation pour les substances A et B permettent ou empchent l'arrive des substances dans le rservoir mlangeur. Ces soupapes comportent un commutateur magntique avec rappel ressort. La soupape est ouverte lorsque le commutateur magntique est activ. La soupape est ferme lorsque le commutateur magntique est dsactiv.

Les soupapes d'admission et d'alimentation sont commandes par le programme utilisateur. La condition de validation est la suivante : Le moteur de la pompe d'alimentation fonctionne pendant une seconde au moins. Le capteur de dbit ne signale pas de dbit. Les conditions d'arrt sont les suivantes :

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

63

Conception de la solution d'automatisation 3.3 Description des diffrentes zones fonctionnelles

Moteur mlangeur Le moteur mlangeur mlange les substances A et B dans le rservoir mlangeur. Puissance : 100 KW pour 1200 tours/min Le dmarrage et l'arrt du moteur mlangeur sont commands partir d'un poste d'opration situ proximit du rservoir mlangeur. Le nombre de dmarrages est comptabilis des fins de maintenance. Il est possible de remettre zro le compteur et l'indicateur l'aide d'un mme bouton-poussoir. Les conditions de validation sont les suivantes : Le capteur de niveau n'indique pas "Rservoir en dessous du minimum". La soupape de vidange du rservoir mlangeur est ferme. L'arrt d'urgence n'est pas activ. Le capteur de dbit ne signale pas que le rgime nominal est atteint au plus tard 10 secondes aprs le dclenchement du moteur des pompes.

Les conditions d'arrt sont les suivantes :

Soupape de vidange La soupape de vidange permet de vidanger le mlange (par gravitation) afin de l'amener l'tape suivante du processus. Cette soupape comporte un commutateur magntique avec rappel ressort. Si le commutateur magntique est activ, la soupape de vidange est ouverte. Si le commutateur magntique est dsactiv, la soupape de vidange est ferme.

L'ouverture et la fermeture de la soupape de vidange sont commandes partir du poste d'opration. La soupape de vidange peut tre ouverte dans les conditions suivantes : Le moteur mlangeur est l'arrt. Le capteur de niveau ne signale pas "Rservoir vide". L'arrt d'urgence n'est pas activ. Le capteur de niveau signale "Rservoir vide".

La condition d'arrt est la suivante :

Commutateurs de mesure du niveau Les commutateurs de niveau informent sur le niveau dans le rservoir et servent galement au verrouillage des pompes d'alimentation et du moteur mlangeur.

64

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Conception de la solution d'automatisation 3.4 Liste des entres, sorties et entres/sorties

3.4

Liste des entres, sorties et entres/sorties


Aprs avoir dcrit physiquement chaque appareil commander, vous devez crer des diagrammes d'entres/sorties pour chaque appareil ou zone.

Ces diagrammes correspondent aux blocs de code programmer.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

65

Conception de la solution d'automatisation 3.5 Cration d'un diagramme d'entres/sorties pour les moteurs

3.5

Cration d'un diagramme d'entres/sorties pour les moteurs


Notre exemple de processus de mlange industriel fait appel deux pompes d'alimentation et un moteur mlangeur. La commande des diffrents moteurs se fait via un bloc "Moteur" identique pour les trois appareils. Ce bloc requiert six entres : deux entres pour le dmarrage et l'arrt du moteur, une entre pour la remise zro de l'indicateur de maintenance, une entre pour le signal en retour du moteur (moteur en marche/moteur arrt), une entre pour l'intervalle de temps durant lequel doit parvenir le signal en retour et une entre pour le numro de la temporisation utilise pour mesurer le temps. Ce bloc de code ncessite en outre quatre sorties : deux soties pour l'indication de l'tat de fonctionnement du moteur, une sortie pour la signalisation d'erreurs et une sortie indiquant qu'il faut effectuer la maintenance du moteur. Ce bloc comporte galement un paramtre d'entre/sortie qui sert commander le moteur mais est aussi trait et modifi dans le programme du bloc "Moteur".

66

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Conception de la solution d'automatisation 3.6 Cration d'un diagramme d'entres/sorties pour les soupapes

3.6

Cration d'un diagramme d'entres/sorties pour les soupapes


La commande des diffrentes soupapes se fait via un bloc "Soupape" identique pour toutes les soupapes utilises. Ce bloc de code comporte deux entres: une entre pour l'ouverture et une entre pour la fermeture de la soupape. Il ncessite en outre deux sorties: une sortie signale que la soupape est ouverte et l'autre que la soupape est ferme. Ce bloc comporte galement un paramtre d'entre/sortie qui sert commander la soupape mais est aussi trait et modifi dans le programme du bloc "Soupape".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

67

Conception de la solution d'automatisation 3.7 Dfinition des exigences en matire de scurit

3.7

Dfinition des exigences en matire de scurit


Choisissez les lments ncessaires pour garantir la scurit du processus, en accord avec les exigences lgales et la ligne suivie par votre entreprise. Prcisez, dans votre description, les influences qu'exercent ces lments de scurit sur les zones de votre processus.

Dfinition des exigences en matire de scurit


Dterminez les appareils qui ncessitent, pour des raisons de scurit, des circuits cbls. Ces circuits de scurit fonctionnent, par dfinition, indpendamment de l'automate programmable (bien qu'ils disposent, en gnral, d'une interface d'entre/sortie pour assurer la coordination avec le programme utilisateur). En principe, vous configurez une matrice pour relier chaque actionneur une zone d'arrt d'urgence propre. Cette matrice constitue alors la base pour les schmas des circuits de scurit. Procdez comme suit pour concevoir les dispositifs de scurit : Identifiez les verrouillages logiques et mcaniques ou lectriques entre les diffrentes parties de l'automatisme. Concevez les circuits permettant de commander manuellement en cas d'urgence les appareils utiliss dans le processus. Dterminez les autres exigences relatives la scurit assurant un droulement sr du processus.

Cration d'un circuit de scurit


Le mlangeur industriel pris comme processus-exemple fait appel la logique suivante pour son circuit de scurit : Un commutateur d'arrt d'urgence arrte les appareils suivants indpendamment de l'automate programmable : Pompe d'alimentation pour la substance A Pompe d'alimentation pour la substance B Moteur mlangeur Soupapes.

Ce commutateur d'arrt d'urgence est situ sur le poste d'opration. Une entre de l'automatisme reflte l'tat du commutateur d'arrt d'urgence.

68

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Conception de la solution d'automatisation 3.8 Description des lments de signalisation et de commande requis

3.8

Description des lments de signalisation et de commande requis


Tout processus ncessite un systme de contrle et de commande permettant l'homme d'intervenir dans le processus. La mise au point de ce poste d'opration fait aussi partie des spcifications de conception.

Dfinition d'un poste d'opration


Dans notre exemple de mlangeur industriel, chaque appareil dmarre ou s'arrte par l'intermdiaire d'un commutateur situ sur le poste d'opration. Ce poste comporte des indicateurs montrant l'tat de fonctionnement (voir la figure suivante).

Il dispose galement de lampes de signalisation pour les appareils devant faire l'objet d'une maintenance aprs un nombre donn de dmarrages et d'un bouton d'arrt d'urgence arrtant immdiatement le processus. Sur le poste d'opration se trouve galement un bouton de remise zro pour l'indicateur de maintenance des trois moteurs. Il vous permet d'teindre les lampes de signalisation de maintenance pour les moteurs ayant besoin d'une maintenance et de mettre zro les valeurs correspondantes des compteurs pour l'intervalle entre les maintenances.

3.9

Cration du schma de configuration


Dterminez, une fois les exigences de conception documentes, l'quipement de commande ncessaire pour ce projet.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

69

Conception de la solution d'automatisation 3.9 Cration du schma de configuration

En dcidant des modules qui seront utiliss, vous dterminez la structure de votre automate programmable. Crez un schma de configuration dans lequel vous spcifiez les points suivants : type de CPU, nombre et type des modules de signaux, configuration des entres et sorties physiques.

La figure suivante montre l'exemple d'une configuration S7 pour le mlangeur industriel.

70

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme


Programmes dans une CPU
Deux programmes diffrents s'excutent dans une CPU : le systme d'exploitation et le programme utilisateur.

4.1

Systme d'exploitation
Le systme d'exploitation, contenu dans chaque CPU, organise toutes les fonctions et procdures dans la CPU qui ne sont pas lies une tche d'automatisation spcifique. Ses tches sont les suivantes : le droulement du dmarrage chaud et du redmarrage, l'actualisation de la mmoire image des entres et l'mission de la mmoire image des sorties, l'appel du programme utilisateur, l'enregistrement des alarmes et l'appel des OB d'alarme, la dtection et le traitement d'erreurs, la gestion des zones de mmoire, la communication avec des consoles de programmation et d'autres partenaires de communication.

La modification des paramtres par dfaut du systme d'exploitation permet d'influer sur le comportement de la CPU dans des domaines prcis.

Programme utilisateur
Vous devez crer votre programme utilisateur et le charger dans la CPU. Il contient toutes les fonctions ncessaires au traitement de votre tche d'automatisation spcifique. Il doit entre autres : dterminer les conditions pour le dmarrage chaud et le redmarrage de la CPU (par exemple, initialiser des signaux), traiter des donnes du processus (par exemple, combiner des signaux binaires, lire et exploiter des valeurs analogiques, dfinir des signaux binaires pour la sortie, crire des valeurs analogiques), ragir aux alarmes, traiter les perturbations dans le droulement normal du programme.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

71

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

4.2

Blocs dans le programme utilisateur


Le logiciel de programmation STEP 7 vous permet de structurer votre programme utilisateur, c'est--dire de le subdiviser en diffrentes parties autonomes. Il en rsulte les avantages suivants : crire des programmes importants mais clairs, standardiser certaines parties du programme, simplifier l'organisation du programme, modifier facilement le programme, simplifier le test du programme, car vous pouvez l'excuter section par section, faciliter la mise en service.

Dans notre exemple de processus de mlange industriel, vous avez appris subdiviser votre processus d'automatisation en diffrentes tches. Les parties d'un programme utilisateur structur correspondent ces diffrentes tches ; il s'agit des blocs du programme.

Types de bloc
Vous pouvez utiliser diffrents types de bloc dans un programme utilisateur S7 :
Bloc Blocs d'organisation (OB) Blocs fonctionnels systme (SFB) et fonctions systme (SFC) Blocs fonctionnels (FB) Fonctions (FC) Brve description de la fonction Les OB dterminent la structure du programme utilisateur. Pour plus de dtails, voir Blocs d'organisation et structure du programme

Les SFB et SFC sont intgrs la CPU S7 et Blocs fonctionnels systme vous permettent de raliser quelques fonctions (SFB) et fonctions systme systmes importantes. (SFC) Les FB sont des blocs avec "mmoire" que vous programmez vous-mme. Les FC contiennent des routines de programmes pour les fonctions frquemment utilises. Les DB d'instance sont affects au bloc FB/SFB appel. Ils sont gnrs automatiquement lors de la compilation. Les DB sont des zones de donnes dans lesquelles l'on enregistre les donnes utilisateur. Outre les donnes affectes respectivement un bloc fonctionnel, vous pouvez dfinir des donnes globales utilisables par tous les blocs. Blocs fonctionnels (FB) Fonctions (FC)

Blocs de donnes d'instance (DB d'instance) Blocs de donnes (DB)

Blocs de donnes d'instance

Blocs de donnes globaux (DB)

Les OB, FB, SFB, FC et SFC contiennent des parties de programme et sont de ce fait galement dsigns comme blocs de code. Le nombre de blocs autoriss par type de bloc ainsi que la longueur maximale de chaque bloc dpendent de la CPU.

72

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

4.2.1

Blocs d'organisation et structure du programme


Les blocs d'organisation (OB) constituent l'interface entre le systme d'exploitation et le programme utilisateur. Ils sont appels par le systme d'exploitation et grent le traitement de programme cyclique et dclench par alarme, ainsi que le comportement la mise en route de l'automate programmable et le traitement des erreurs. Vous pouvez programmer les blocs d'organisation et dterminer ainsi le comportement de la CPU.

Priorit des blocs d'organisation


Les blocs d'organisation dfinissent l'ordre (vnements de dclenchement) dans lequel les diffrentes parties du programme sont traites. L'excution d'un OB peut tre interrompue par l'appel d'un autre OB. Cette interruption se fait selon la priorit : les OB de priorit plus leve interrompent les OB de priorit plus faible. La priorit la plus faible est celle de l'OB d'arrire-plan.

Types d'alarme et classes de priorit


On appelle alarmes les vnements qui dclenchent l'appel d'un OB donn. Le tableau suivant prsente les types d'alarme pour STEP 7 et la priorit des blocs d'organisation associs. Tous les blocs d'organisation indiqus et toutes leurs classes de priotit ne sont pas contenus dans toutes les CPU S7 (voir le manuel "Systme d'automatisation S7-300, Installation et configuration Caractristiques des CPU" ainsi que le manuel de rfrence "Systmes d'automatisation S7-400, M7-400 - Caractristiques des modules").
Type d'alarme Cycle libre Bloc d'organisation OB1 Classe de priorit (prdfinie) 1 Pour plus de dtails, voir Bloc d'organisation pour le traitement de programme cyclique (OB1) Blocs d'organisation pour l'alarme horaire (OB10 OB17) Blocs d'organisation pour l'alarme temporise (OB20 OB23)

Alarmes horaires Alarmes temporises

OB10 OB17 OB20 OB21 OB22 OB23

2 3 4 5 6 7 8 9 10 11 12 13 14 15

Alarmes cycliques

OB30 OB31 OB32 OB33 OB34 OB35 OB36 OB37 OB38

Blocs d'organisation pour l'alarme cyclique (OB30 OB38)

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

73

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Type d'alarme

Bloc d'organisation

Classe de priorit (prdfinie) 16 17 18 19 20 21 22 23 2 2 2 25

Pour plus de dtails, voir Blocs d'organisation pour l'alarme de processus (OB40 OB47)

Alarmes de processus OB40 OB41 OB42 OB43 OB44 OB45 OB46 OB47 Alarme DPV1 OB 55 OB 56 OB 57 Alarme multiprocesseur Alarmes de synchronisme d'horloge OB60 multiprocesseur

Programmation d'appareils DPV1

Mode multiprocesseur fonctionnement synchrone de plusieurs CPU Configuration de temps de raction du processus courts et de dure identique sur PROFIBUS DP

OB 61 OB 62 OB 63 OB 64 OB70 Erreur de redondance de priphrie (uniquement dans les systmes H) OB72 Erreur de redondance de CPU (uniquement dans les systmes H)

25

Erreur de redondance

25 28

Blocs d'organisation pour le traitement d'erreurs (OB70 OB87 / OB121 OB122)

Erreurs asynchrones

OB80 Erreur de temps OB81 Erreur d'alimentation OB82 Alarme de diagnostic OB83 Alarme de dbrochage/enfichage OB84 Erreur matrielle CPU OB85 Erreur d'excution du programme OB86 Dfaillance d'unit OB87 Erreur de communication

25 (ou 28 si l'OB d'erreur asynchrone figure dans le programme de mise en route)

Blocs d'organisation pour le traitement d'erreurs (OB70 OB87 / OB121 OB122)

Cycle en arrire-plan

OB90

29 1

Bloc d'organisation pour l'excution du programme en arrire-plan (OB90)

74

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Type d'alarme Mise en route

Bloc d'organisation OB100 Dmarrage chaud OB101 Redmarrage OB102 Dmarrage froid

Classe de priorit (prdfinie) 27 27 27 Priorit de l'OB l'origine de l'erreur

Pour plus de dtails, voir Blocs d'organisation pour la mise en route (OB100/OB101/OB102)

Erreurs synchrones

OB121 Erreur de programmation OB122 Erreur d'accs la priphrie

Blocs d'organisation pour le traitement d'erreurs (OB70 OB87 / OB121 OB122)

1)

A la classe de priorit 29 correspond la priorit 0.29. La priorit du cycle en arrire-plan et donc infrieure celle du cycle libre.

Modification de la priorit
STEP 7 permet de paramtrer les alarmes. Le paramtrage vous permet par exemple de dsactiver des OB d'alarme ou de modifier des classes de priorit dans les blocs de paramtres : alarmes horaires, alarmes temporises, alarmes cycliques et alarmes de processus. Vous ne pouvez pas modifier la priorit des blocs d'organisation dans les CPU S7-300. Dans les CPU S7-400 (ainsi que la CPU 318), vous pouvez modifier la priorit des blocs d'organisation suivants avec STEP 7 : OB10 OB47, OB70 OB72 (uniquement les CPU H) et OB81 OB87 l'tat de marche (RUN).

Classes de priorit autorise : les classes de priorit 2 23 pour les OB10 OB47, les classes de priorit 2 28 pour les OB70 OB72 ainsi que les classes de priorit 24 26 pour les OB81 OB87 ; ces classes de priorit ont t tendues pour les CPU partir de mi 2001 environ (version du Firmware 3.0) : pour les OB 81 OB 84, de mme que pour les OB 86 et OB 87, vous pouvez paramtrer les classes de priorit 2 26.

Vous pouvez affecter la mme priorit plusieurs OB. Les OB de priorit identique sont traits dans l'ordre d'apparition de leurs vnements dclencheurs. Les OB d'erreur dclenchs en cas d'erreurs synchrones sont traits selon la mme classe de priorit que celle du bloc en cours d'excution lors de la dtection de l'erreur.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

75

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Donnes locales
Vous pouvez dclarer des donnes locales temporaires lors de la cration de blocs de code (OB, FC, FB). La zone de donnes locales disponible dans la CPU est partage entre les diffrentes classes de priorit. Dans les CPU S7-400, vous pouvez, avec STEP 7, modifier le nombre de donnes locales par classe de priorit dans le bloc de paramtres "Classes de priorit".

Informations de dclenchement d'un OB


Chaque bloc d'organisation dispose d'informations de dclenchement de 20 octets de donnes locales que le systme d'exploitation transmet lors du lancement d'un OB. Ces informations prcisent l'vnement ayant dclench l'OB, la date et l'heure du dclenchement de l'OB, les erreurs apparues et les vnements de diagnostic. Les informations de dclenchement de l'OB40 d'alarme de processus contiennent, par exemple, l'adresse du module ayant gnr l'alarme.

OB d'alarme dsactivs
Si vous choisissez la classe de priorit 0 ou affectez moins de vingt octets de donnes locales une classe de priorit, l'OB d'alarme correspondant est dsactiv. Les OB d'alarme dsactivs : ne peuvent pas tre copis et insrs dans le programme utilisateur l'tat de fonctionnement "Marche" (RUN), peuvent certes tre copis et insrs dans le programme utilisateur l'tat "Arrt" (STOP), mais entranent lors du dmarrage chaud de la CPU l'interruption de la mise en route et gnrent une entre dans la mmoire tampon de diagnostic.

La dsactivation des OB d'alarme inutiles augmente la zone de donnes locales libre disponible qui peut donc servir la sauvegarde de donnes temporaires dans d'autres classes de priorit.

76

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Traitement de programme cyclique


Le traitement de programme cyclique constitue le traitement normal pour les automates programmables. Ceci signifie que le systme d'exploitation parcourt une boucle de programme (le cycle) et appelle le bloc d'organisation OB1 dans le programme principal une fois par boucle. Le programme utilisateur dans le bloc OB1 est donc excut cycliquement.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

77

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Traitement de programme dclench par vnement


Le traitement de programme cyclique peut tre interrompu par des vnements dclencheurs prcis : les alarmes. En prsence d'un tel vnement, le bloc en cours d'excution est interrompu la fin de l'instruction et le bloc d'organisation associ l'vnement dclencheur est trait. Le traitement du programme cyclique reprend ensuite au point d'interruption.

Vous avez ainsi la possibilit de ne traiter qu'en cas de besoin les parties du programme utilisateur qui ne doivent pas l'tre cycliquement. Vous pouvez subdiviser votre programme en parties que vous rpartissez dans diffrents blocs d'organisation. Il est ainsi recommand d'utiliser un OB qui sera dclench sur vnement en raction un signal se prsentant peu souvant (par exemple un signal de capteur indiquant qu'une cuve est pleine). L'apparition de l'vnement dclenche alors le traitement de cette partie de programme.

78

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Programmation linaire ou structure


Vous pouvez crire votre programme utilisateur complet dans l'OB1 (programmation linaire). Cela n'est toutefois recommand que pour des programmes simples s'excutant sur des CPU S7-300 avec une mmoire peu importante. Les automatismes complexes seront mieux traits si vous les subdivisez en parties plus petites qui correspondent aux fonctions technologiques du processus d'automatisation ou qui peuvent tre utilises plusieurs fois. Dans le programme utilisateur, ces tches partielles sont reprsentes par des parties de programme correspondantes : les blocs (programmation structure).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

79

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

4.2.2

Hirarchie d'appel dans le programme utilisateur


Pour faire fonctionner le programme utilisateur, vous devez appeler les blocs qui le composent. C'est ce que vous ralisez l'aide d'oprations STEP 7 spciales, les appels de blocs que vous ne pouvez programmer et dmarrer que dans des blocs de code.

Ordre et profondeur d'imbrication


On appelle hirarchie d'appel l'ordre et l'imbrication des appels de blocs. Le niveau de profondeur autoris pour les imbrications dpend de la CPU. L'exemple de la figure suivante illustre l'ordre et l'imbrication des appels de blocs dans un cycle de traitement.

Rgles relatives l'ordre de cration des blocs : Vous crez les blocs de haut en bas, ce qui signifie que vous commencez par la range de blocs suprieure. Tout bloc appel doit dj exister, ce qui signifie que dans une range de blocs, le sens de cration est de droite gauche. En dernier, vous crez l'OB1.

La transposition de ces rgles signifie l'ordre de cration suivant dans l'exemple considr : FC1 > FB1 + DB d'instance 1 > DB1 > SFC1 > FB2 + DB d'instance 2 > OB1

Nota Lorsque la profondeur d'imbrication est trop grande, la pile des donnes locales risque de dborder (voir aussi Pile des donnes locales).

80

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Appels de blocs
La figure suivante montre comment s'excute un appel de bloc au sein d'un programme utilisateur : le programme appelle le deuxime bloc dont les oprations sont alors traites dans leur intgralit. Une fois le bloc appel achev, le traitement se poursuit avec l'opration suivant l'appel de bloc dans le bloc appelant.

Avant de programmer un bloc, vous devez dterminer les donnes que le programme doit traiter : vous dclarez les variables du bloc.

Nota Les paramtres OUT doivent tre dcrits chaque appel de bloc.

Nota Le systme d'exploitation remet zro les instances du SFB3 "TP" lors d'un dmarrage froid. Pour initialiser des instances de ce SFB aprs le dmarrage chaud, vous devez les appeler avec PT = 0 ms dans l'OB100. C'est ce que vous pouvez par exemple obtenir avec une routine d'initialisation dans les blocs contenant des instances de ce SFB.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

81

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

4.2.3
4.2.3.1

Catgories de blocs
Bloc d'organisation pour le traitement de programme cyclique (OB1)
Le traitement de programme cyclique constitue le traitement normal pour les automates programmables. Le systme d'exploitation appelle l'OB1 cycliquement et dclenche ainsi le traitement cyclique du programme utilisateur.

Droulement du traitement de programme cyclique


Le tableau suivant montre les phases du traitement de programme cyclique :
Phase 1 2 Droulement dans les CPU jusqu' 10/98 Le systme d'exploitation dmarre la surveillance du temps de cycle. La CPU lit l'tat des entres dans les modules d'entres et met jour la mmoire image des entres. Puis, elle traite le programme utilisateur et excute les oprations indiques dans le programme. Elle crit ensuite les valeurs de la mmoire image des sorties dans les modules de sorties. A la fin d'un cycle, le systme d'exploitation excute les travaux en attente, par exemple le chargement et l'effacement de blocs ou la rception et l'mission de donnes globales. La CPU revient alors au dbut du cycle et dmarre nouveau la surveillance du temps de cycle. Droulement dans les CPU partir de 10/98 Le systme d'exploitation dmarre la surveillance du temps de cycle. Elle crit ensuite les valeurs de la mmoire image des sorties dans les modules de sorties. La CPU lit l'tat des entres dans les modules d'entres et met jour la mmoire image des entres. Puis, elle traite le programme utilisateur et excute les oprations indiques dans le programme. A la fin d'un cycle, le systme d'exploitation excute les travaux en attente, par exemple le chargement et l'effacement de blocs ou la rception et l'mission de donnes globales. La CPU revient alors au dbut du cycle et dmarre nouveau la surveillance du temps de cycle.

4 5

Mmoires image du processus


Pour disposer d'une image cohrente des signaux du processus pendant la dure du traitement de programme cyclique, la CPU n'accde pas directement aux modules de signaux lors de l'utilisation des plages d'oprandes Entres (E) et Sorties (A), mais une zone de mmoire interne de la CPU qui contient une image des entres et sorties.

Programmation du traitement de programme cyclique


Pour programmer le traitement cyclique, vous crivez votre programme utilisateur avec STEP 7 dans l'OB1 et les blocs qui y sont appels. Le traitement de programme cyclique commence ds que le programme de mise en route s'est achev sans erreur.

82

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Possibilits d'interruption
Le traitement de programme cyclique peut tre interrompu par : une alarme, une commande STOP (commutateur de mode, commande de menu depuis la PG, SFC46 STP, SFB20 STOP), une coupure de tension secteur, l'apparition d'une erreur de matriel ou de programme.

Temps de cycle
Le temps de cycle est le temps dont a besoin le systme d'exploitation pour le traitement du programme cyclique ainsi que de toutes les parties de programme interrompant ce cycle (par exemple, traitement des autres blocs d'organisation) et des activits du systme (par exemple, mise jour de la mmoire image). Ce temps est contrl. Ce temps (Tc) n'est pas identique chaque cycle. Les figures suivantes indiquent diffrents temps de cycle (TZ1 TZ2) pour les anciennes et les CPU jusqu' 10/98 et les CPU partir de 10/98.

L'OB1 est interrompu par une alarme horaire dans le cycle en cours.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

83

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Temps de surveillance du cycle


STEP 7 vous permet de modifier le temps de surveillance du cycle pris par dfaut. A l'expiration de ce temps, soit la CPU passe l'tat de fonctionnement "Arrt", soit l'OB80 dans lequel vous pouvez dfinir comment la CPU doit ragir cette erreur de temps est appel.

Temps de cycle minimal


STEP 7 vous permet de dfinir un temps de cycle minimal pour les CPU S7-400 et pour la CPU 318. Ceci est recommand : si lintervalle de temps sparant deux excutions de l'OB1 (cycle libre) doit rester constant afin dviter une actualisation trop frquente des mmoires image lorsque le temps de cycle est trs court.

Les figures suivantes illustrent la fonction du temps de surveillance du cycle dans le droulement du programme pour les CPU jusqu' 10/98 et les CPU partir de 10/98.

84

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Mise jour de la mmoire image


La mmoire image du processus est automatiquement mise jour lors du traitement de programme cyclique de la CPU. Vous pouvez dsactiver cette mise jour pour les CPU S7-400 et pour la CPU 318 : si vous voulez au lieu de cela accder directement la priphrie ou si vous voulez actualiser une ou plusieurs mmoires image des entres et des sorties un autre moment l'aide des fonctions systme SFC26 UPDAT_PI et SFC27 UPDAT_PO.

Charge du cycle due la communication


Le paramtre de CPU "Charge du cycle due la communication" vous permet de commander dans une certaine mesure la dure des processus de communication, qui allongent toujours le temps de cycle. On appelle processus de communication, par exemple, la transmission de donnes une autre CPU via MPI ou le chargement de blocs dclench via PG. Ce paramtre n'a presque pas d'influence sur les fonctions de test avec la PG qui peuvent pourtant allonger considrablement le temps de cycle. C'est dans le mode processus qu'on peut limiter le temps disponible pour les fonctions de test (seulement avec S7-300).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

85

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Comment le paramtre agit-il ?


Le systme d'exploitation de la CPU met continuellement la disposition de la communication le pourcentage configur de la puissance de traitement totale de la CPU (technique des tranches de temps). Lorsque cette puissance de traitement n'est pas ncessaire la communication, elle est disponible pour le reste du traitement.

Effet sur le temps de cycle rel


Sans vnements asynchrones supplmentaires, le temps de cycle de l'OB1 s'allonge d'un facteur calculable par la formule suivante :

Exemple 1 (pas d'vnements asynchrones en plus) Une charge du cycle par la communication fixe 50 % peut doubler le temps de cycle de l'OB1. En mme temps, le temps de cycle de l'OB1 est influenc aussi par des vnements asynchrones (tels qu'alarmes de processus ou alarmes cycliques). Le temps de cycle tant allong par la partie rserve la communication, il se produira - statistiquement parlant - plus d'vnements asynchrones dans un cycle d'OB1, ce qui allonge encore ce dernier. Cet allongement dpend du nombre d'vnements survenant par cycle d'OB1 et de la dure de traitement d'un vnement. Exemple 2 (compte tenu des vnements asynchrones supplmentaires) Une dure d'excution de l'OB1 de 500 ms avec une charge de communication de 50% peut donner un temps de cycle rel allant jusqu' 1000 ms ( condition que la CPU ait toujours assez de tches de communication traiter). Une alarme cyclique intervenant toutes les 100 ms avec une dure d'excution de 20 ms allongerait de 5*20 ms = 100 ms au total un cycle sans charge de communication, ce qui donnerait un temps de cycle rel de 600 ms. Puisqu'une alarme cyclique interrompt aussi la communication, elle allongera le temps de cycle de 10 * 20 ms avec une charge de communication de 50%, C'est--dire que le temps de cycle rel sera dans ce cas non pas de 1000 ms mais de 1200 ms.

Nota
Lorsque vous modifiez la valeur attribue au paramtre "Charge du cycle due la communication", vrifiezen les effets dans le fonctionnement de l'installation. Tenez compte de la charge due la communication lorsque vous fixez le temps de cycle minimal, pour viter les erreurs de temps.

86

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Recommandations
Autant que possible, adoptez la valeur par dfaut. Augmentez cette valeur seulement si la CPU est employe surtout des fins de communication et que le programme utilisateur n'est pas dure critique. Dans tous les autres cas, bornez-vous rduire cette valeur ! Passez en mode processus (seulement avec S7-300) et limitez le temps requis cet endroit pour les fonctions de test.

4.2.3.2

Fonctions (FC)
Les fonctions font partie des blocs que vous programmez vous-mme. Une fonction est un bloc de code sans mmoire. Les variables temporaires d'une fonction sont sauvegardes dans la pile des donnes locales. Ces donnes sont perdues l'achvement de la fonction. Les fonctions peuvent faire appel des blocs de donnes globaux pour la sauvegarde des donnes. Comme une fonction ne dispose pas de mmoire associe, vous devez toujours indiquer des paramtres effectifs pour elle. Vous ne pouvez pas affecter de valeur initiale aux donnes locales d'une FC.

Domaine d'application
Une fonction contient un programme qui est excut quand cette fonction est appele par un autre bloc de code. Vous pouvez faire appel des fonctions pour : renvoyer une valeur de fonction au bloc appelant (exemple : fonctions mathmatiques), excuter une fonction technologique (exemple : commande individuelle avec combinaison binaire).

Affectation de paramtres effectifs aux paramtres formels


Un paramtre formel sert de paramtre gnrique au paramtre "rel", le paramtre effectif. Les paramtres effectifs remplacent les paramtres formels lors de l'appel d'une FC. Vous devez toujours affecter des paramtres effectifs aux paramtres formels d'une FC (par exemple, le paramtre effectif "E3.6" au paramtre formel "Dmarrage"). Les paramtres d'entre, de sortie et d'entre/sortie utiliss par la FC sont sauvegards comme pointeurs dsignant les paramtres effectifs du bloc de code qui a appel la fonction.

Diffrence importante entre les paramtres de sortie des FC et des FB


Dans les blocs fonctionnels (FB), la copie du paramtre actuel figurant dans le DB d'instance est utilise lors de l'accs aux paramtres. Si un paramtre d'entre n'est pas transmis ou si un paramtre de sortie n'est pas affect dans le bloc lors de l'appel d'un FB, ce sont les anciennes valeurs encore disponibles dans le DB d'instance qui sont utilises (DB d'instance = mmoire du FB). Les fonctions (FC) ne disposent pas de mmoire (FC). Contrairement au FB, l'affectation des paramtres formels n'est de ce fait pas optionnelle, mais indispensable. L'accs aux paramtres de la FC s'effectue via des adresses (pointeur interzone). Si un oprande de la zone de donnes (bloc de donnes) ou une variable locale du bloc appelant sont utiliss comme paramtre actuel, une copie de ce paramtre actuel est enregistre temporairement dans les donnes locales du bloc appelant, lors de la transmission de paramtres.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

87

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Important Si dans un tel cas, un paramtre OUTPUT n'est pas affect dans une FC, les valeurs fournies risquent d'tre alatoires ! La zone mise disposition dans les donnes locales du bloc appelant pour la copie n'est pas affecte en raison de l'absence d'affectation au paramtre OUTPUT et reste inchange. C'est la valeur encore inscrite dans cette zone qui sera fournie, puisque les donnes locales ne disposent pas automatiquement d'une valeur par dfaut, p. ex. 0.

Tenez compte des points suivants : Si possible, initialisez le paramtre OUTPUT. Les instructions de mise 1 et de remise 0 dpendent du rsultat logique. Si ces instructions dterminent la valeur d'un paramtre OUTPUT, aucune valeur n'est fournie lorsque RLG = 0. Veillez ce que les paramtres OUTPUT soient affects dans tous les cas quels que soient les chemins de programme possibles dans le bloc. En particulier, tenez compte des instructions de saut et de la sortie ENO dans CONT et LOG. N'oubliez pas non plus BEB et l'effet des instructions MCR.

Nota Pour les paramtres OUTPUT d'un FB ou les paramtres INOUT d'une FC et d'un FB, les valeurs fournies ne sont pas alatoires, car en l'absence d'affectation du paramtre, c'est l'ancienne valeur de sortie ou l'ancienne valeur d'entre qui restent conserves comme valeur de sortie. Dans ce cas, il est galement recommand de tenir compte des remarques prcdentes, afin de ne pas continuer utiliser les "anciennes" valeurs.

4.2.3.3

Blocs fonctionnels (FB)


Les blocs fonctionnels font partie des blocs que vous programmez vous-mme. Un bloc fonctionnel est un bloc avec rmanence. Un bloc de donnes d'instance lui est associ qui en constitue la mmoire. Les paramtres transmis au FB ainsi que les variables statiques sont sauvegards dans le bloc de donnes d'instance. Les variables temporaires sont ranges dans la pile des donnes locales. Les donnes sauvegardes dans le bloc de donnes d'instance ne sont pas perdues l'achvement du traitement du FB. En revanche, les donnes sauvegardes dans la pile des donnes locales le sont.

Nota Afin d'viter des erreurs d'utilisation de FB, veuillez lire le paragraphe Types de donnes autoriss pour la transmission de paramtres en annexe.

88

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Domaine d'application
Un bloc fonctionnel contient un programme qui est excut quand ce bloc fonctionnel est appel par un autre bloc de code. Les blocs fonctionnels facilitent la programmation de fonctions complexes souvent utilises.

FB et DB d'instance
Un bloc de donnes d'instance est associ chaque appel de bloc fonctionnel transmettant des paramtres. En appelant plusieurs instances d'un FB, vous pouvez piloter plusieurs appareils avec un seul bloc fonctionnel. Un FB pour un type de moteur peut, par exemple, commander diffrents moteurs en utilisant des donnes d'instance diffrentes pour les diffrents moteurs. Il est possible de ranger les donnes pour chaque moteur (rgime, acclration, cumul des temps de fonctionnement, etc.) dans un ou plusieurs DB d'instance. La figure suivante montre les paramtres formels d'un FB qui utilise les paramtres effectifs sauvegards dans le DB d'instance.

Variables de type de donnes FB


Si votre programme utilisateur est organis de telle manire que, dans un FB, soient appels d'autres blocs fonctionnels existant dj, vous pouvez dclarer les FB appels comme variables statiques de type de donnes FB dans la table de dclaration des variables du FB appelant. Vous obtenez ainsi une imbrication des variables et la concentration des donnes d'instance dans un bloc de donnes d'instance (multi-instance).

Affectation de paramtres effectifs aux paramtres formels


Il n'est, en gnral, pas obligatoire dans STEP 7 d'affecter des paramtres effectifs aux paramtres formels d'un FB. Des paramtres effectifs doivent toutefois tre affects : pour un paramtre d'entre/sortie de type de donnes complexe (par exemple, STRING, ARRAY ou DATE_AND_TIME), pour tous les types de paramtre (par exemple, TIMER, COUNTER ou POINTER).

STEP 7 associe les paramtres effectifs aux paramtres formels de la manire suivante :

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

89

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Lorsque vous indiquez des paramtres effectifs dans l'instruction d'appel, les oprations du FB utilisent les paramtres effectifs ainsi mis disposition. Lorsque vous n'indiquez pas de paramtres effectifs dans l'instruction d'appel, les oprations du FB utilisent les valeurs contenues dans le DB d'instance.

Le tableau ci-aprs montre quelles variables du FB il faut affecter des paramtres effectifs.
Variables Type de donnes simple Entre Sortie Entre/sortie Paramtres facultatifs Paramtres facultatifs Paramtres facultatifs Type de donnes Type de donnes complexe Type de donnes paramtre Paramtres facultatifs Paramtres facultatifs Paramtres effectifs obligatoires Paramtres effectifs obligatoires Paramtres effectifs obligatoires

90

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Affectation de valeurs initiales aux paramtres formels


Vous pouvez prciser des valeurs initiales pour les paramtres formels dans la section de dclaration du FB. Ces valeurs sont reprises dans le bloc de donnes d'instance associ au FB. Si vous n'affectez pas de paramtres effectifs aux paramtres formels dans l'instruction d'appel, STEP 7 utilise les valeurs sauvegardes dans le DB d'instance. Il peut alors s'agir de valeurs initiales que vous avez saisies dans la table de dclaration des variables du FB. Le tableau suivant prsente les variables pour lesquelles vous pouvez indiquer une valeur initiale. Comme les donnes temporaires ne sont pas sauvegardes aprs le traitement du bloc, vous ne pouvez par leur affecter de valeur.
Type de donnes Variables Entre Sortie Entre/sortie Statique Temporaire Type de donnes simple Valeur initiale autorise Valeur initiale autorise Valeur initiale autorise Valeur initiale autorise Type de donnes complexe Valeur initiale autorise Valeur initiale autorise Valeur initiale autorise Type de donnes paramtre

4.2.3.4

Blocs de donnes d'instance


Un bloc de donnes d'instance est associ chaque appel de bloc fonctionnel transmettant des paramtres. Ce bloc de donnes d'instance contient les paramtres effectifs et les donnes statiques du FB. Les variables dclares dans le FB dterminent la structure du bloc de donnes d'instance. On appelle instance l'appel d'un bloc fonctionnel. Si, par exemple, un bloc fonctionnel est appel cinq fois dans le programme utilisateur S7, il existe cinq instances de ce bloc.

Cration d'un DB d'instance


Le bloc fonctionnel correspondant un DB d'instance doit exister avant que vous ne criez ce DB d'instance. Vous indiquez le numro de ce FB lors de la cration du bloc de donnes d'instance.

Un DB d'instance pour chaque instance


Si vous associez plusieurs blocs de donnes d'instance un bloc fonctionnel commandant un moteur, vous pourrez utiliser ce FB pour piloter diffrents moteurs. Vous rangez les diffrentes donnes pour chaque moteur (comme, par exemple, rgime, temps d'acclration, dure totale de fonctionnement) dans les diffrents blocs de donnes. Selon le DB associ au FB lors de l'appel, un autre moteur est command. Ainsi, un seul bloc fonctionnel est ncessaire pour plusieurs moteurs (voir la figure ci-aprs).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

91

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

92

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Un DB d'instance pour plusieurs instances d'un FB (multi-instances)


Vous pouvez transmettre un bloc fonctionnel les donnes d'instance pour diffrents moteurs dans le mme DB d'instance. Pour ce faire, vous devez appeler les commandes de moteur dans un autre FB dans la section de dclaration duquel vous dclarez des variables statiques de type de donnes FB pour les diffrentes instances. Utiliser un seul DB d'instance pour plusieurs instances d'un FB vous permet de gagner de l'espace mmoire et d'optimiser l'utilisation des blocs de donnes. Dans la figure suivante par exemple, le FB appelant est le FB21 "Traitement moteur", les variables sont de type de donnes FB22 et les instances sont identifies par Moteur_1, Moteur_2 et Moteur_3.

Le FB22 ne requiert pas de DB d'instance en propre dans cet exemple, car ses donnes d'instance sont contenues dans le DB d'instance du FB appelant.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

93

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Un DB d'instance pour plusieurs instances de diffrents FB (multi-instances)


Vous pouvez appeler, dans un bloc fonctionnel, des instances d'autres FB dj crs. Vous pouvez associer les donnes d'instance ncessaires pour cela au bloc de donnes d'instance du FB appelant et n'avez ainsi pas besoin de blocs de donnes supplmentaires pour les FB appels. Pour ces multi-instances dans un DB d'instance, vous devez dclarer, dans la section de dclaration du FB appelant, des variables statiques avec le type de donnes du FB appel pour les diffrentes instances. L'appel l'intrieur du FB se fait alors sans indication de DB d'instance, mais uniquement via le nom de la variable. Dans l'exemple de la figure, les donnes d'instance associes sont sauvegardes ensemble dans un seul DB d'instance.

4.2.3.5

Blocs de donnes globaux (DB)


Contrairement aux blocs de code, les blocs de donnes ne contiennent pas d'instructions STEP 7. Ils servent l'enregistrement de donnes utilisateur : ils contiennent des donnes variables que le programme utilisateur utilise. Les blocs de donnes globaux servent l'enregistrement de donnes utilisateur pouvant tre utilises par tous les autres blocs. La taille des DB peut varier. Vous trouverez la taille maximale autorise dans les descriptions de CPU /70/ et /101/. C'est vous qui dfinissez l'organisation des blocs de donnes globaux.

DB globaux dans le programme utilisateur


Lorsqu'il est appel, un bloc de code (FC, FB ou OB) peut occuper temporairement de l'espace mmoire dans la zone des donnes locales (pile L). En plus de cette zone de donnes locales, ce bloc de code peut ouvrir une autre zone de mmoire sous la forme d'un DB. Contrairement aux donnes dans la zone des donnes locales, les donnes du DB ne sont pas effaces la fermeture du DB ou la fin du traitement du bloc de code correspondant. Tout FB, FC ou OB peut lire les donnes contenues dans un DB global ou crire des donnes dans un DB global. Ces donnes sont conserves dans le blocs de donnes mme lorsqu'on quitte le DB.
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

94

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Il est possible d'ouvrir simultanment un DB global et un DB d'instance. La figure ci-aprs prsente les diffrents accs aux blocs de donnes.

4.2.3.6

Blocs fonctionnels systme (SFB) et fonctions systme (SFC)

Blocs dj programms
Il n'est pas ncessaire que vous programmiez vous-mme chaque fonction. En effet, les CPU S7 vous proposent des blocs tout prts que vous pouvez appeler partir du programme utilisateur. De plus amples informations ce sujet sont donnes dans l'aide de rfrence sur les blocs systme et fonctions systme (voir Sauts dans les descriptions de langage, aides sur les blocs, attributs systme).

Blocs fonctionnels systme


Un bloc fonctionnel systme (SFB) est un bloc fonctionnel intgr la CPU S7. Comme les SFB font partie du systme d'exploitation, ils ne sont pas chargs en tant que partie du programme. Comme les FB, les SFB sont des blocs avec mmoire. Vous devez donc galement crer pour les SFB des blocs de donnes d'instance que vous chargez dans la CPU en tant que partie du programme. Les CPU S7 proposent des SFB : pour la communication via des liaisons configures, pour des fonctions spciales intgres (par exemple, SFB29 HS_COUNT dans la CPU 312 IFM et la CPU 314 IFM).

Fonctions systme
Une fonction systme (SFC) est une fonction prprogramme et intgre dans la CPU S7. Vous pouvez appeler les SFC partir de votre programme. Comme ces fonctions font partie du systme d'exploitation, elles ne sont pas charges en tant que partie du programme. Comme les FC, les SFC constituent des blocs sans mmoire. Les CPU S7 proposent des fonctions systme pour : des fonctions de copie et de blocs, le contrle du programme, la gestion de l'horloge et du compteur d'heures de fonctionnement,

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

95

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

le transfert d'enregistrements logiques, le transfert, en mode de fonctionnement multiprocesseur, d'vnements d'une CPU toutes les CPU enfiches, la gestion des alarmes horaires et temporises, la gestion des vnements d'erreur synchrone, des vnements d'alarme et des vnements d'erreur asynchrone, l'information sur les donnes systme statiques et dynamiques, p. ex. le diagnostic, la mise jour de la mmoire image du processus et le traitement de champ binaire, l'adressage de modules, la priphrie dcentralise, la communication par donnes globales, la communication via des liaisons non configures, la cration de messages relatifs aux blocs.

Informations supplmentaires
De plus amples informations sur les SFB et SFC sont donnes dans le manuel de rfrence "Logiciel systme pour SIMATIC S7-300/400 - Fonctions standard et fonctions systme". Les SFB et SFC disponibles sont prciss dans le manuel "Systme d'automatisation S7-300, Installation et configuration - Caractristiques des CPU" ou le manuel de rfrence "Systmes d'automatisation S7-400, M7-400 - Caractristiques des modules".

96

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

4.2.4

Blocs d'organisation pour le traitement de programme dclench par alarme


En mettant votre disposition des OB d'alarme, les CPU S7 vous donnent la possibilit : de dclencher le traitement de parties de programme par horloge, de ragir de manire optimale aux signaux externes du processus.

Il est inutile que le programme utilisateur cyclique teste constamment si des vnements d'alarme sont apparus. En effet, en cas d'alarme, le systme d'exploitation fait en sorte que soit traite la partie du programme utilisateur figurant dans l'OB d'alarme et qui dtermine comment l'automate programmable doit ragir cette alarme.

Types d'alarme et applications


Le tableau suivant montre comment utiliser les types d'alarme.
Type d'alarme Alarme horaire Alarme temporise Alarme cyclique Alarme de processus OB d'alarme OB10 OB17 OB20 OB23 OB30 OB38 OB40 OB47 Exemples d'application Calcul du dbit d'un processus de mlange la fin de la journe de travail Commande d'un ventilateur devant fonctionner encore 20 s aprs l'arrt d'un moteur avant d'tre lui-mme arrt Echantillonnage d'un niveau de signal pour une installation de rgulation Signaler que le niveau maximal d'une cuve est atteint

4.2.4.1

Blocs d'organisation pour l'alarme horaire (OB10 OB17)


Les CPU S7 mettent votre disposition des OB d'alarme horaire pouvant tre traits une date donne ou des intervalles de temps dfinis. Les alarmes horaires peuvent tre dclenches : une seule fois un moment donn (indication de temps absolue avec date), priodiquement avec indication du commencement et de la frquence de rptition (par exemple, toutes les minutes, toutes les heures, tous les jours).

Rgles d'utilisation des alarmes horaires


Les alarmes horaires ne peuvent tre traites que si une alarme horaire a t paramtre et qu'un bloc d'organisation correspondant est contenu dans le programme utilisateur. Si tel n'est pas le cas, un message d'erreur est inscrit dans la mmoire tampon de diagnostic et un traitement d'erreur asynchrone est excut (OB80, voir "Blocs d'organisation pour le traitement d'erreur (OB70 OB87 / OB121 OB122)"). Les alarmes horaires priodiques doivent correspondre une date relle. Il n'est, par exemple, pas possible de ritrer chaque mois un OB10 ayant le 31 janvier comme point de dpart. Dans ce cas, l'OB ne serait dclench que pour les mois ayant effectivement 31 jours (pas en fvrier, avril, juin, etc.).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

97

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Une alarme horaire active au cours de la mise en route (dmarrage chaud ou redmarrage) n'est traite qu' la fin de la mise en route. Il n'est pas possible de dclencher les OB d'alarme horaire dsactivs par paramtrage. La CPU dtecte dans ce cas une erreur de programmation et passe l'tat de fonctionnement "Arrt" (STOP). Aprs un dmarrage chaud, il faut nouveau activer les alarmes horaires gnres, par exemple l'aide de la SFC30 ACT_TINT dans le programme de mise en route.

Dclenchement de l'alarme horaire


La CPU ne peut dclencher une alarme horaire qu'une fois que vous avez gnr puis activ cette dernire. Il existe trois types de dclenchement : dclenchement automatique de l'alarme horaire par paramtrage avec STEP 7 (bloc de paramtres "Alarmes horaires"), gnration et activation de l'alarme horaire via la SFC28 SET_TINT et la SFC30 ACT_TINT partir du programme utilisateur, gnration de l'alarme horaire par paramtrage avec STEP 7 et activation de l'alarme horaire via la SFC30 ACT_TINT partir du programme utilisateur.

Interrogation de l'alarme horaire


Pour savoir si des alarmes horaires ont t gnres et quel moment, vous pouvez : appeler la SFC31 QRY_TINT ou demander la liste partielle "Etat d'alarme" de la liste d'tat systme.

Dsactivation de l'alarme horaire


Vous pouvez dsactiver des alarmes horaires non encore traites l'aide de la SFC29 CAN_TINT. Il est possible de gnrer nouveau des alarmes horaires dsactives via la SFC28 SET_TINT et de les activer avec la SFC30 ACT_TINT.

Priorit des OB d'alarme horaire


Les huit OB d'alarme horaire sont prdfinis avec la mme classe de priorit (2) et sont donc traits dans l'ordre dapparition de leurs vnements dclencheurs. Il est possible de modifier la classe de priorit par paramtrage.

Changement de l'heure rgle


Il est possible de modifier l'heure rgle comme suit : Un matre d'heure synchronise l'heure pour le matre et les esclaves. L'heure est redfinie dans le programme utilisateur via la SFC0 SET_CLK.

98

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Comportement en cas de changement d'heure


Le tableau suivant montre comment les alarmes horaires se comportent aprs modification de l'heure.
Si une ou plusieurs alarmes horaires ont t sautes en raison de l'avancement de l'heure, alors l'OB80 est dmarr avec inscription dans ses informations de dclenchement des alarmes horaires sautes.

vous avez dsactiv dans l'OB80 les alarmes horaires les alarmes horaires sautes ne sont pas rattrapes. sautes, vous n'avez pas dsactiv dans l'OB80 les alarmes horaires sautes, des alarmes horaires dj traites sont nouveau en attente en raison du retardement de l'heure, la premire alarme horaire saute est reprise, mais il n'est pas tenu compte des suivantes. ces alarmes horaires sont traites une nouvelle fois dans le cas des CPU S7-300 ne sont pas traites une nouvelle fois dans le cas des CPU S7-400 et de la CPU 318.

4.2.4.2

Blocs d'organisation pour l'alarme temporise (OB20 OB23)


Les CPU S7 mettent votre disposition des OB d'alarme temporise grce auxquels vous pouvez programmer lexcution retarde de certaines parties de votre programme utilisateur.

Rgles d'utilisation des alarmes temporises


Les alarmes temporises ne peuvent tre traites que si un bloc d'organisation correspondant est contenu dans le programme CPU. Si tel n'est pas le cas, un message d'erreur est inscrit dans la mmoire tampon de diagnostic et un traitement d'erreur asynchrone est ralis (OB80, voir Blocs d'organisation pour le traitement d'erreurs (OB70 OB87 / OB121 OB122)"). Il n'est pas possible de dclencher les OB d'alarme temporise dsactivs par paramtrage. La CPU dtecte dans ce cas une erreur de programmation et passe l'tat de fonctionnement "Arrt" (STOP). Les alarmes temporises sont dclenches lorsque le temps de retard prcis dans la SFC32 SRT_DINT a expir.

Dclenchement de l'alarme temporise


Pour dmarrer une alarme temporise, vous devez fixer dans la SFC32 le temps de retard l'expiration duquel l'OB d'alarme temporise correspondant doit tre appel. La dure maximale autorise pour le temps de retard est donne dans le manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" et le manuel de rfrence "Systmes dautomatisation S7-400, M7-400 - Caractristiques des modules".

Priorit des OB d'alarme temporise


Par dfaut, les OB d'alarme temporise ont les classes de priorit 3 6. Vous pouvez les modifier par paramtrage.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

99

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

4.2.4.3

Blocs d'organisation pour l'alarme cyclique (OB30 OB38)


Les CPU S7 mettent votre disposition des OB d'alarme cyclique qui interrompent le traitement de programme cyclique intervalles prcis. Les alarmes cycliques sont dclenches des intervalles de temps prcis. Le moment de dclenchement de la priode est le passage de l'tat de fonctionnement "Arrt" (STOP) l'tat "Marche" (RUN).

Rgles d'utilisation des alarmes cycliques


Veillez, lorsque vous choisissez la priode, ce qu'il reste suffisamment de temps pour le traitement des alarmes cycliques entre les vnements de dclenchement des diffrentes alarmes cycliques. Il n'est pas possible de dclencher les OB d'alarme cyclique dsactivs par paramtrage. La CPU dtecte dans ce cas une erreur de programmation et passe l'tat de fonctionnement "Arrt" (STOP).

Dclenchement de l'alarme cyclique


Pour dclencher une alarme cyclique, vous devez prciser via STEP 7 une priode dans le bloc de paramtres "Alarmes cycliques". 7 Cette priode est toujours un multiple entier de la priode de base de 1 ms. Priode = n ? priode de base 1 ms Les neuf OB d'alarme cyclique disponibles ont des priodes prdfinies (voir tableau suivant). La priode par dfaut entre en vigueur lorsque l'OB d'alarme cyclique qui lui est associ est charg. Vous pouvez toutefois modifier par paramtrage les valeurs prdfinies. La limite suprieure est donne dans le manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" et le manuel de rfrence "Systmes dautomatisation S7-400, M7-400 - Caractristiques des modules.

100

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Dcalage de phase pour les alarmes cycliques


Afin d'viter que les alarmes cycliques de diffrents OB d'alarme cyclique ne reoivent une demande de dclenchement au mme moment provoquant ainsi ventuellement une erreur de temps (dpassement du temps de cycle), vous pouvez prciser un dcalage de phase. Ce dcalage de phase assure que le traitement d'une alarme cyclique est dcal d'une dure donne aprs coulement de la priode. Dcalage de phase = m ? priode de base (avec 0 m < n) La figure suivante montre le traitement d'un OB d'alarme cyclique avec dcalage de phase (OB37) compar une alarme cyclique sans dcalage de phase (OB38).

Priorit des OB d'alarme cyclique


Le tableau suivant montre les priodes et classes de priorit prdfinies des OB d'alarme cyclique. Vous pouvez modifier les priodes et classes de priorit par paramtrage.
OB d'alarme cyclique OB30 OB31 OB32 OB33 OB34 OB35 OB36 OB37 OB38 Priode en ms 5000 2000 1000 500 200 100 50 20 10 Classe de priorit 7 8 9 10 11 12 13 14 15

4.2.4.4

Blocs d'organisation pour l'alarme de processus (OB40 OB47)


Les CPU S7 mettent votre disposition des OB d'alarme de processus qui ragissent des signaux provenant des modules (modules de signaux SM, processeurs de communication CP, modules de fonction FM). STEP 7 vous permet de dfinir quel signal doit dclencher l'OB pour les modules TOR et analogiques paramtrables. Pour les CP et les FM, vous utiliserez cet effet les dialogues de paramtrage correspondants.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

101

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Les alarmes de processus sont dclenches lorsqu'un module de signaux pouvant gnrer des alarmes de processus, avec validation d'alarme de processus paramtre, transmet un signal de processus reu la CPU ou lorsqu'un module de fonction de la CPU signale une alarme.

Rgles d'utilisation d'alarmes du processus


Les alarmes de processus ne peuvent tre traites que si un bloc d'organisation correspondant est contenu dans le programme CPU. Si tel n'est pas le cas, un message d'erreur est inscrit dans la mmoire tampon de diagnostic et un traitement d'erreur asynchrone est ralis (voir Blocs d'organisation pour le traitement d'erreurs (OB70 OB87 / OB121 OB122)). Il n'est pas possible de dclencher les OB d'alarme de processus dsactivs par paramtrage. La CPU dtecte dans ce cas une erreur de programmation et passe l'tat de fonctionnement "Arrt" (STOP).

Paramtrage de modules de signaux pouvant gnrer des alarmes de processus


Chaque voie d'un module de signaux pouvant gnrer des alarmes de processus peut dclencher une alarme de processus. Aussi devez-vous dfinir l'aide de STEP 7 dans les jeux de paramtres de ces modules : ce qui doit dclencher une alarme de processus, quel OB d'alarme de processus doit tre trait (l'OB40 est prvu par dfaut pour le traitement de toutes les alarmes de processus).

Vous activez avec STEP 7 la gnration d'alarmes de processus des modules de fonction. Vous affectez d'autres paramtres dans les dialogues de paramtrage de ces modules.

Priorit des OB d'alarme de processus


Par dfaut, les OB d'alarme de processus ont les classes de priorit 16 23. Vous pouvez les modifier par paramtrage.

4.2.4.5

Blocs d'organisation pour la mise en route (OB100 / OB101 / OB102)

Modes de mise en route


On distingue entre les modes de mise en route suivants : redmarrage (n'existe pas pour les S7-300 et S7-400H), dmarrage chaud, dmarrage froid.

Le tableau suivant indique l'OB respectivement appel par le systme d'exploitation.


Mode de mise en route Redmarrage Dmarrage chaud Dmarrage froid OB associ OB101 OB100 OB102

102

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Evnements de dclenchement pour les OB de mise en route


La CPU excute une mise en route aprs mise sous tension lorsque vous actionnez le commutateur de mode de fonctionnement partir de STOP "RUN"/"RUN-P" aprs sollicitation par une fonction de communication aprs synchronisation en mode multiprocesseur dans un systme H, aprs couplage (uniquement sur la CPU de rserve)

L'OB de mise en route correspondant (OB100, OB101 ou OB102) est appel selon l'vnement de dclenchement, la CPU mise en uvre ainsi que les paramtres slectionns pour cette dernire.

Programme de mise en route


Vous pouvez dterminer les conditions supplmentaires pour le comportement de mise en route de votre CPU (valeurs d'initialisation pour "Marche", valeurs de mise en route pour les modules de priphrie) en crivant votre programme de mise en route dans les blocs d'organisation OB100 pour le dmarrage chaud, OB101 pour le redmarrage ou OB102 pour le dmarrage froid. La longueur du programme de mise en route est indiffrente : son excution n'est pas limite en dure, car la surveillance du temps de cycle n'est pas active. Lexcution commande par horloge ou par alarme n'est pas possible dans le programme de mise en route. Pendant cette dernire, toutes les sorties TOR prennent l'tat de signal 0.

Mode de mise en route aprs une mise en route manuelle


Pour les CPU S7-300, seuls les dmarrages manuel (dmarrages chaud) ou froid (uniquement CPU 318-2) sont possibles. Pour certaines CPU S7-400, vous pouvez excuter un redmarrage manuel (dmarrage chaud) ou un dmarrage froid avec le commutateur de mode de fonctionnement et le commutateur de mode de mise en route (CRST/WRST) si cela a t paramtr ainsi avec STEP 7. Le dmarrage manuel (dmarrage chaud) est possible sans paramtrage.

Mode de mise en route aprs une mise en route automatique


Seul le dmarrage chaud est possible aprs la mise sous tension pour les CPU S7-300. Pour les CPU S7-400, vous pouvez dterminer si une mise en route automatique aprs mise sous tension entrane un dmarrage (dmarrage chaud) ou un redmarrage.

Effacement de la mmoire image


En cas de redmarrage d'une CPU S7-400, la mmoire image des sorties est efface par dfaut aprs lexcution du reste du cycle. Vous pouvez toutefois dsactiver l'effacement de la mmoire

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

103

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

image si le programme utilisateur doit, aprs le redmarrage, continuer utiliser les valeurs en vigueur avant le redmarrage.

Contrle des modules : configuration prvue-configuration sur site


Vous pouvez demander par paramtrage que soit vrifi, avant la mise en route, si tous les modules figurant dans la table de configuration sont rellement enfichs et si leur type est correct. Lorsque le contrle des modules est activ, la mise en route n'est pas excute si une diffrence entre la configuration prvue et la configuration relle est mise en vidence.

Temps de surveillance
Vous pouvez paramtrer les temps de surveillance suivants pour garantir une mise en route sans erreur de l'automate programmable : le temps maximal autoris pour la transmission des paramtres aux modules, le temps maximal autoris pour le message Prt des modules aprs la mise sous tension, pour les CPU S7-400, le temps d'interruption maximal pendant lequel un redmarrage est encore autoris.

La CPU passe l'tat "Arrt" l'expiration des temps de surveillance ou seul un dmarrage est alors possible.

4.2.4.6

Bloc d'organisation pour lexcution du programme en arrire-plan (OB90)


Si vous avez paramtr un temps de cycle minimal avec STEP 7 et que celui-ci s'avre suprieur au temps de cycle effectif, la CPU dispose de temps dexcution la fin du programme cyclique. Ce temps restant sert lexcution de l'OB d'arrire-plan. Si l'OB90 n'existe pas dans votre CPU, cette dernire attend que le temps de cycle minimal paramtr soit expir. L'OB90 vous permet donc d'excuter des processus dure non critique et ainsi d'viter des temps d'attente.

Priorit de l'OB d'arrire-plan


L'OB d'arrire-plan a la classe de priorit 29 qui correspond la priorit 0.29. C'est donc l'OB la priorit la plus faible et vous ne pouvez pas modifier sa classe de priorit par paramtrage. La figure suivante montre un exemple dexcution du cycle en arrire-plan, du cycle libre et de l'OB10 (pour les CPU partir de 10/98).

104

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Programmation de l'OB90
Le systme d'exploitation de la CPU ne contrle pas le temps d'excution de l'OB90 ; vous pouvez donc y programmer des boucles de longueur indiffrente. Veillez la cohrence des donnes que vous utilisez dans le programme en arrire-plan en tenant compte des points suivants lors de leur programmation : les vnement de remise zro de l'OB90 (voir manuel de rfrence "Logiciel systme pour SIMATIC S7-300/400 - Fonctions standard et fonctions systme"), la mise jour de la mmoire image du processus qui est asynchrone par rapport l'OB90.

4.2.4.7

Blocs d'organisation pour le traitement d'erreurs (OB70 OB87 / OB121 OB122)

Types d'erreur
Les erreurs que les CPU S7 dtectent et auxquelles elles peuvent ragir l'aide de blocs d'organisation sont classables en deux catgories :

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

105

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Erreurs synchrones : ces erreurs peuvent tre associes une partie prcise du programme utilisateur. L'erreur apparat pendant le traitement d'une opration prcise. Si l'OB d'erreur synchrone correspondant n'est pas charg, la CPU passe l'tat "Arrt" (STOP) l'apparition d'une telle erreur. Erreurs asynchrones : ces erreurs ne peuvent pas tre directement associes au programme utilisateur trait. Il s'agit d'erreurs de classe de priorit, d'erreurs dans l'automate programmable (par exemple, module dfaillant) ou d'erreurs de redondance. Si l'OB d'erreur asynchrone correspondant n'est pas charg, la CPU passe l'tat "Arrt" (STOP) l'apparition d'une telle erreur (exceptions : OB70, OB72, OB81, OB87).

Le tableau ci-aprs montre les types d'erreur pouvant survenir, classs selon la catgorie des OB d'erreur.
Erreurs asynchrones / erreurs de redondance OB70 Erreur de redondance de priphrie (seulement dans les CPU H) OB72 Erreur de redondance de CPU (seulement dans les CPU H, ex. : dfaillance d'une CPU) OB80 Erreur de temps (ex. : dpassement du temps de cycle) OB81 Erreur d'alimentation (ex. : pile dfaillante) OB82 Alarme de diagnostic (ex. : court-circuit dans le module d'entres) OB83 Alarme de dbrochage/enfichage (ex. : dbrochage d'un module d'entres) OB84 Erreur matrielle CPU (erreur l'interface avec le rseau MPI) OB85 Erreur d'excution du programme (ex. : OB non charg) OB86 Dfaillance d'unit OB87 Erreur de communication (ex. : mauvaise ID de tlgramme pour communication par donnes globales) Erreurs synchrones OB121 Erreur de programmation (ex. : DB non charg) OB122 Erreur d'accs la priphrie (ex. : accs un module d'entres/sorties inexistant)

106

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

Utilisation des OB pour erreurs synchrones


Les erreurs synchrones apparaissent pendant le traitement d'une opration prcise. A l'apparition de ces erreurs, le systme d'exploitation gnre une entre dans la pile des interruptions et dclenche l'OB pour erreurs synchrones. Les OB d'erreur appels par des erreurs synchrones sont traits en tant que partie du programme avec la mme classe de priorit que le bloc en cours d'excution lors de la dtection de l'erreur. Les dtails sur l'erreur ayant dclench l'appel de l'OB sont donns dans les informations de dclenchement de l' OB. Vous pouvez vous servir de cette information pour ragir l'erreur, puis reprendre lexcution de votre programme (par exemple, indiquer une valeur de remplacement dans l'OB122 via la SFC44 RPL_VAL pour une erreur d'accs un module d'entres analogiques). Ainsi, toutefois, la pile L de cette classe de priorit doit en plus prendre en charge les donnes locales des OB d'erreur. Dans les CPU S7-400, un nouvel OB d'erreur synchrone peut tre lanc partir d'un OB d'erreur synchrone. Cela n'est pas possible dans les CPU S7-300.

Utilisation des OB pour erreurs asynchrones


Lorsque le systme d'exploitation de la CPU dtecte une erreur asynchrone, il dclenche l'OB d'erreur correspondant (OB70 OB72 et OB80 OB87). Les OB pour erreurs asynchrones ont la priorit la plus leve comme dfaut : ils ne peuvent pas tre interrompus par d'autres OB, lorsque tous les OB d'erreurs synchrones ont la mme priorit. Si plusieurs erreurs asynchrones de la mme priorit apparaissent simultanment, les OB d'erreur correspondants sont traits dans l'ordre d'apparition des erreurs.

Masquage d'vnements de dclenchement


Des fonctions systme vous permettent de masquer, d'ajourner ou d'inhiber les vnements de dclenchement pour quelques OB d'erreur. De plus amples informations ce sujet et sur les blocs d'organisation en particulier sont donnes dans le manuel de rfrence "Logiciel systme pour SIMATIC S7-300/400 - Fonctions standard et fonctions systme".
Type de l'OB d'erreur OB d'erreur synchrone SFC SFC36 MSK_FLT Fonction de la SFC Masquer des vnements d'erreur synchrone individuels. Les vnements d'erreur masqus ne dclenchent aucun OB d'erreur et n'entranent pas la raction programme. Inhiber globalement des vnements d'erreur asynchrone et d'alarme. Les vnements d'erreur inhibs ne dclenchent d'OB d'erreur dans aucun des cycles de CPU suivants et n'entranent pas la raction programme. Valider des vnements d'erreur asynchrone et d'alarme Ajourner les vnements d'erreur asynchrone et d'alarme prioritaires jusqu' la fin de l'OB Valider les vnements d'erreur asynchrone et d'alarme prioritaires

SFC37 DMSK_FLT Dmasquer des vnements d'erreur synchrone OB d'erreur asynchrone SFC39 DIS_IRT

SFC40 EN_IRT SFC41 DIS_AIRT SFC42 EN_AIRT

Nota Pour ignorer des alarmes, il est plus efficace de les inhiber au moyen de SFC la mise en route que de charger un OB vide (contenant BE).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

107

Principes de conception d'une structure de programme 4.2 Blocs dans le programme utilisateur

108

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

5
5.1

Dmarrage et utilisation du programme


Dmarrage de STEP 7
Une fois Windows dmarr, vous trouverez dans l'interface Windows une icne pour SIMATIC Manager qui permet d'accder au logiciel STEP 7. Vous dmarrez rapidement STEP 7 en effectuant un double clic sur l'icne "SIMATIC Manager". La fentre de SIMATIC Manager s'ouvre alors. De l, vous pouvez accder toutes les fonctions que vous avez installes aussi bien du logiciel de base que des logiciels optionnels. L'autre mthode consiste lancer SIMATIC Manager via le bouton "Dmarrer" dans la barre des tches du systme d'exploitation (sous "Simatic").

Nota Vous trouverez plus d'informations sur les manipulations et options standard de Windows dans votre guide de l'utilisateur Windows ou dans l'aide en ligne de votre systme d'exploitation Windows.

SIMATIC Manager
SIMATIC Manager constitue l'interface d'accs la configuration et la programmation. Vous pouvez : crer des projets, configurer et paramtrer le matriel, configurer le fonctionnement en rseau du matriel, programmer des blocs, tester et mettre en uvre vos programmes.

L'accs aux fonctions se fonde sur les objets et s'apprend facilement et intuitivement. Avec SIMATIC Manager, vous pouvez travailler : hors ligne, c'est--dire sans qu'un automate soit raccord ou en ligne, c'est--dire avec un automate raccord.

Tenez compte, dans ce dernier cas, des remarques relatives la scurit.

Pour poursuivre
Vous crez des solutions d'automatisation sous la forme de "projets". Vous vous faciliterez la tche en vous familiarisant tout d'abord avec : l'interface utilisateur, quelques manipulations fondamentales, l'aide en ligne.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

109

Dmarrage et utilisation du programme 5.2 Dmarrage de STEP 7 avec des paramtres initiaux prdfinis

5.2

Dmarrage de STEP 7 avec des paramtres initiaux prdfinis


A partir de STEP 7 V5, vous pouvez crer plusieurs icnes de SIMATIC Manager et indiquer pour chacune delles des paramtres initiaux dans la ligne cible. Vous pouvez ainsi faire en sorte que SIMATIC Manager se positionne sur l'objet dcrit par ces paramtres. Ceci vous permet de parvenir immdiatement une position donne dans un projet, par simple double clic. En appelant s7tgtopx.exe, vous pouvez spcifier les paramtres initiaux suivants : /e <chemin physique complet du projet> /o <chemin logique de l'objet sur lequel se positionner> /h <ObjektID> /onl Avec le paramtre initial /onl, le projet est ouvert en ligne et le chemin indiqu est appel. /off Avec le paramtre initial /off, le projet est ouvert hors ligne et le chemin indiqu est appel. /keep Lorsque SIMATIC Manager est ouvert, le paramtre initial /keep ouvre le nouveau projet indiqu dans la ligne de commande en plus des projets dj affichs. Lorsque SIMATIC Manager n'est pas encore ouvert, le nouveau projet ouvrir sera ouvert en plus des projets figurant dans la mmoire de session de SIMATIC Manager. Si ce paramtre initial n'est pas indiqu, les projets ouverts sont d'abord ferms, la mmoire de session ignore et seul le projet transmis est ouvert. Voici comment dterminer simplement les paramtres requis.

Dtermination des paramtres par copier/coller


Procdez de la manire suivante : 1. Sur votre bureau, crez un nouveau raccourci pour le fichier s7tgtopx.exe. Ce fichier se trouve dans votre rpertoire d'installation, sous S7bin. 2. Affichez la bote de dialogue des proprits. 3. Slectionnez l'onglet "Raccourci". Compltez la zone de saisie "Cible" de la manire suivante : 4. Slectionnez l'objet souhait dans SIMATIC Manager. 5. Copiez l'objet slectionn dans le presse-papiers l'aide de la combinaison de touches CTRL+ALT+C. 6. Positionnez le curseur la fin de la zone de saisie "Cible" dans la page d'onglet "Raccourci". 7. Collez le contenu du presse-papiers l'aide de la combinaison de touches CTRL+V. 8. Quittez la bote de dialogue par "OK".

110

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.2 Dmarrage de STEP 7 avec des paramtres initiaux prdfinis

Exemple de saisie de paramtres :


/e F:\SIEMENS\STEP7\S7proj\MyConfig\MyConfig.s7p /keep /o "1,8:MyConfig\SIMATIC 400(1)\CPU416-1\Programme S7(1)\Blocs\FB1" /h T00112001;129;T00116001;1;T00116101;16e /keep

Remarque concernant la structure du chemin du projet


Le chemin du projet correspond au chemin physique dans le systme de fichiers. Le chemin logique complet est structur de la manire suivante :
[Identification visible,Identification en ligne]:Nom du projet\{Nom de l'objet\}*\ Nom de l'objet Exemple /o "1,8:MyConfig\SIMATIC 400(1)\CPU416-1\Programme S7(1)\Blocs\FB1"

Dans le cas de lecteurs rseau, l'indication du chemin doit tre conforme la notation UNC (= Universal Naming Convention, c'est--dire \\<Nom du serveur>\<Share>\...). Exemple : \\<Non du serveur>\<Share>\SIEMENS\STEP7\S7proj\MyConfig\MyConfig.s7p /keep

Remarque concernant la structure du chemin logique


Le chemin logique complet ainsi que l'ID d'objet ne peuvent tre dtermins que par copie/collage. Il est toutefois galement possible de spcifier le chemin lisible par l'utilisateur, c'est--dire pour l'exemple prcdent : /o "MyConfig\SIMATIC 400(1)\CPU416-1\Programme S7(1)\Blocs\FB1". Avec les paramtres /onl ou /off, l'utilisateur peut prciser s'il s'agit du chemin pour la fentre en ligne ou hors ligne. La saisie de ce paramtre s'avre inutile lorsque vous procdez par copie/collage. Important : Lorsque le chemin contient des caractres d'espacement, il doit tre indiqu entre guillemets.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

111

Dmarrage et utilisation du programme 5.3 Appel des fonctions d'aide

5.3

Appel des fonctions d'aide

Aide en ligne
L'aide en ligne vous propose des informations l'endroit o vous en avez besoin. Vous pouvez ainsi aisment trouver des renseignements prcis sans devoir compulser des manuels. L'aide en ligne se compose des lments suivants : Rubriques d'aide : offre diffrents accs l'affichage d'informations d'aide. Aide contextuelle (touche F1) : fournit des informations sur l'objet slectionn ou encore sur la bote de dialogue ou la fentre actives. Introduction : donne un bref aperu sur l'utilisation, les caractristiques fondamentales et les fonctions d'une application. Mise en route : rsume les premires oprations que vous devez excuter pour obtenir votre premier succs. Utiliser l'aide : dcrit les possibilits dont vous disposez pour trouver certaines informations dans l'aide. A propos de : donne des informations sur la version en cours de l'application.

Le menu d'aide "?" vous permet galement d'accder, partir de chaque fentre, des rubriques en rapport avec la situation en cours.

Appel de l'aide en ligne


Vous pouvez appeler l'aide en ligne de diffrentes manires : Choisissez une commande du menu d'aide "?" dans la barre des menus. Cliquez sur le bouton "Aide" dans une bote de dialogue. L'aide correspondant la bote de dialogue apparat alors. Dans une fentre ou une bote de dialogue, positionnez le pointeur de la souris sur le thme propos duquel vous avez besoin d'aide et appuyez sur la touche F1, ou choisissez la commande ? > Aide contextuelle. Servez-vous du curseur "point d'interrogation" de Windows.

On appelle ces trois dernires catgories l'aide en ligne contextuelle.

Appel de l'aide abrge


Une aide abrge s'affiche pour les boutons de la barre d'outils lorsque vous y positionnez le curseur et l'y laissez un court instant.

112

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4

Objets et hirarchie d'objets


Dans SIMATIC Manager, la hirarchie d'objets pour les projets et bibliothques est similaire la structure des rpertoires comportant des dossiers et fichiers dans l'explorateur de Windows. La figure suivante donne un exemple de hirarchie d'objets.
Objet Programme S7/M7 Objet Dossier Sources Objet Dossier Blocs Objet Projet Objet Station Objet Module programmable

Les objets servent : de supports de proprits, de dossiers, de supports de fonctions (par exemple, pour le dmarrage d'une application prcise).

Objets comme supports de proprits


Les objets peuvent servir de supports aussi bien pour des fonctions que pour des proprits (par exemple, paramtres). Une fois un objet slectionn, vous pouvez : l'diter l'aide de la commande Edition > Ouvrir l'objet. ouvrir une bote de dialogue avec la commande Edition > Proprits de l'objet, dans laquelle vous effectuez les paramtrages propres l'objet.

Un dossier peut galement constituer un support de proprits.

Objets comme dossiers


Un dossier peut contenir d'autres dossiers ou des objets. Ceux-ci saffichent lorsque vous ouvrez le dossier.

Objets comme supports de fonctions


Lorsque vous ouvrez un objet, une fentre dans laquelle vous pouvez traiter l'objet apparat. Un objet est soit un dossier, soit un support de fonctions. Les stations constituent toutefois une exception : elles sont la fois dossiers (pour modules programmables) et supports de fonctions (pour la configuration matrielle). Lorsque vous effectuez un double clic sur une station, les objets qu'elle contient sont visualiss, savoir les modules programmables et la configuration de station (station comme dossier). Lorsque vous ouvrez une station avec la commande Edition > Ouvrir l'objet, vous pouvez la configurer et la paramtrer (station comme support d'une fonction). Cette commande a la mme fonction qu'un double clic sur l'objet "Matriel".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

113

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4.1

Objet Projet
Le projet reprsente l'ensemble des donnes et programmes d'une solution d'automatisation et se trouve la tte d'une hirarchie d'objets.

Position dans la vue du projet


Objet Projet Objet Station Objet Module programmable Objet Programme S7/M7 Objet Dossier Sources Objet Dossier Blocs

Icne

Dossier d'objets Projet

Slection de fonctions importantes Cration d'un projet Archivage de projets et de bibliothques Gestion multilingue des textes Recherche des logiciels optionnels requis pour un projet Impression de la documentation du projet Rorganisation Traduction et dition de textes destins l'utilisateur Insertion d'un objet OS Edition de projets par plusieurs personnes Conversion dun ancien projet de version 2 Paramtrage de l'interface PG/PC

114

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

Icne

Objets dans le niveau de projet Station : station SIMATIC 300 station SIMATIC 400 Programme S7

Slection de fonctions importantes Insertion de stations Les stations sont la fois des objets (niveau du projet) et des dossiers d'objets (niveau de la station). Pour d'autres fonctions, reportez-vous Objet Station Programme S7/M7 sans station ni CPU Les programmes S7/M7 sont la fois des objets (niveau du projet) et des dossiers d'objets (niveau du programme). Pour d'autres fonctions, reportez-vous Objet Programme S7/M7. Proprits des sous-rseaux et des participants la communication Prsentation : communication par donnes globales Configuration de la communication par donnes globales

Programme M7 Rseau pour le dmarrage de l'application de configuration de rseaux et pour la slection des paramtres de rseau

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

115

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4.2

Objet Bibliothque
Une bibliothque peut contenir des programmes S7 ou M7 et sert stocker des blocs. Elle se trouve la tte d'une hirarchie d'objets.
Objet Bibliothque Objet Programme S7/M7 Objet Dossier Sources Objet Dossier Blocs

Icne

Dossier d'objets Bibliothque

Slection de fonctions importantes Prsentation des bibliothques standard Utilisation de bibliothques Archivage de projets et de bibliothques

Icne

Objets dans le niveau de la bibliothque Programme S7

Slection de fonctions importantes Insertion d'un programme S7/M7 Les programmes S7/M7 sont la fois des objets (niveau du projet) et des dossiers d'objets (niveau du programme). Pour d'autres fonctions, reportez-vous Objet Programme S7/M7.

Programme M7

116

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4.3

Objet Station
Une station SIMATIC 300/400 reprsente une configuration matrielle S7 comportant un ou plusieurs modules programmables.

Position dans la vue du projet


Objet Projet Objet Station Objet Module programmable Objet Programme S7/M7 Objet Dossier Sources Objet Dossier Blocs

Icne

Dossier d'objets Station

Slection de fonctions importantes Insertion de stations Chargement dune station dans la PG Chargement d'une configuration dans un systme cible Chargement d'une configuration depuis une station dans la PG Affichage des messages de CPU et des messages de diagnostic personnaliss Configuration de la signalisation d'erreurs systme Diagnostic du matriel et affichage de l'tat du module Affichage et modification de l'tat de fonctionnement Affichage et rglage de l'heure et de la date Effacement de la mmoire de chargement/travail et effacement gnral de la CPU Cration et paramtrage de stations SIMATIC PC Configuration de liaisons pour une station SIMATIC PC Chargement dans une station SIMATIC PC Mise en valeur dans la vue de rseau d'une station SIMATIC PC configure

Station SIMATIC PC (non affecte)

Station SIMATIC PC (affecte)

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

117

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

Icne

Objets dans le niveau de Slection de fonctions importantes la station Matriel Module programmable Manipulations de base pour la configuration matrielle Marche suivre pour la configuration d'une station Configuration et paramtrage d'une installation centralise Marche suivre pour la configuration d'un rseau matre DP Configuration du mode multiprocesseur Les modules programmables sont la fois des objets (niveau de la station) et des dossiers d'objets (niveau des modules programmables). Pour d'autres fonctions, reportez-vous Objet Module programmable.

118

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4.4

Objet Module programmable


Un module programmable reprsente les donnes de paramtrage d'un module programmable (CPUxxx, FMxxx, CPxxx). Les donnes systme de modules ne possdant pas de mmoire rmanente (par exemple CP 441) sont chargs via la CPU de la station. Aucun objet "Donnes systme" n'est de ce fait affect de tels modules qui n'apparaissent pas dans la hirarchie du projet.

Position dans la vue du projet


Objet Projet Objet Station Objet Module programmable Objet Programme S7/M7 Objet Dossier Sources Objet Dossier Blocs

Icne

Dossier d'objets Module programmable

Slection de fonctions importantes Configuration et paramtrage d'une installation centralise Affichage des messages de CPU et des messages de diagnostic personnaliss Configuration de la signalisation d'erreurs systme Diagnostic du matriel et affichage de l'tat du module Chargement via des cartes mmoire EPROM Protection par mot de passe contre l'accs aux systmes cibles Affichage de la fentre de forage permanent Affichage et modification de l'tat de fonctionnement Affichage et rglage de l'heure et de la date Dfinition du comportement en fonctionnement Effacement de la mmoire de chargement/travail et effacement gnral de la CPU Icnes de diagnostic dans la vue en ligne Organisation des zones de mmoire Enregistrement de blocs chargs sur la mmoire intgre EPROM Actualisation du systme d'exploitation sur le systme cible Reprsentation de modules ayant t configurs avec des versions plus rcentes de STEP 7

Objet supplant pour un module programmable

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

119

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

Icne

Objets dans le niveau Slection de fonctions importantes "Module programmable" Programmes : Programme S7 Programme M7 Programme Liaisons pour la dfinition de liaisons dans le rseau Mise en rseau de stations au sein dun projet Types de liaison pour des partenaires dans le mme projet Informations sur les divers types de liaison Saisie d'une nouvelle liaison Configuration de liaisons pour les modules d'une station SIMATIC Insertion d'un programme S7/M7 Les programmes S7/M7 sont la fois des objets (niveau du projet) et des dossiers d'objets (niveau du programme). Pour d'autres fonctions, reportez-vous Objet Programme S7/M7

120

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4.5

Objet Programme S7/M7


Un programme (S7/M7) est un dossier contenant les logiciels pour les modules CPU S7/M7 et les logiciels pour les modules autres que les CPU (par exemple modules CP ou FM programmables).

Position dans la vue du projet


Objet Projet Objet Station Objet Module programmable Objet Programme S7/M7 Objet Dossier Sources Objet Dossier Blocs

Icne

Dossier d'objets Programme S7

Slection de fonctions importantes Insertion d'un programme S7/M7 Dfinition de la priorit de l'oprande (symbolique/absolu) Marche suivre pour la cration de blocs de code Attribution de numros de message Cration et dition de messages de diagnostic personnaliss (pour tout le projet) Cration et dition de messages de diagnostic personnaliss (pour la CPU) Traduction et dition de textes destins l'utilisateur Gestion multilingue de textes Affichage des messages de CPU et des messages de diagnostic personnaliss Mesures prendre dans le programme pour traiter les erreurs Procdure pour les systmes M7 Cration du logiciel dans le projet (principe)

Programme M7 Programme

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

121

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

Icne

Objets dans le niveau du Slection de fonctions importantes programme Dossier Sources Dossier Blocs Dossier Bibliothques de texte Table des mnmoniques pour l'affectation de mnmoniques des signaux et autres variables Bibliothques de texte utilisateur Adressage absolu et adressage symbolique Structure et lments de la table des mnmoniques Possibilits de saisie de mnmoniques globaux Remarques gnrales sur la saisie de mnmoniques Affectation et dition de messages sur mnmoniques (pour tout le projet) Affectation et dition de messages sur mnmoniques (pour la CPU) Traduction et dition de textes destins l'utilisateur Configuration des attributs de contrle-commande au moyen de la table des mnmoniques Edition de l'attribut de communication Exportation et importation de tables de mnmoniques Pour d'autres fonctions, reportez-vous Objet Dossier Blocs Pour d'autres fonctions, reportez-vous Objet Dossier Sources

122

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4.6

Object Dossier Blocs


Le dossier Blocs d'une vue hors ligne peut contenir : des blocs de code (OB, FB, FC, SFB, SFC), des blocs de donnes (DB), des types de donnes utilisateur (UDT) et des tables de variables. L'objet Donnes systme reprsente les blocs de donnes systme. Le dossier Blocs d'une vue en ligne contient les lments de programme excutables, chargs de manire rsidente dans le systme cible.

Position dans la vue du projet


Objet Projet Objet Station Objet Module programmable Objet Programme S7/M7 Objet Dossier Sources Objet Dossier Blocs

Icne

Dossier d'objets Blocs

Slection de fonctions importantes Chargement dans la gestion du projet Chargement hors gestion du projet Vue synoptique des donnes de rfrence possibles Rassignation Comparaison de blocs Traduction et dition de textes destins u'utilisateur Sauts dans la description des langages, aide sur les blocs, attributs systme

Icne

Objets dans le dossier Blocs Gnralits sur les blocs

Slection de fonctions importantes Marche suivre pour la cration de blocs de code Cration de blocs Principes de la programmation dans les sources LIST Comparaison de blocs Introduction aux types de donnes et de paramtres Conditions pralables au chargement Test avec la visualisation dtat du programme Informations sur le test en mode pas pas et sur les points d'arrt Rassignation Aide sur les blocs

OB (Blocs d'organisation)

Fonctions supplmentaires :

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

123

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

Icne

Objets dans le dossier Blocs FC (Fonctions)

Slection de fonctions importantes Fonctions supplmentaires : Introduction aux types de donnes et de paramtres Conditions pralables au chargement Test avec la visualisation dtat du programme Informations sur le test en mode pas pas et sur les points d'arrt Rassignation Attributs pour blocs et pour paramtres Introduction aux types de donnes et de paramtres Utilisation de multi-instances Conditions pralables au chargement Test avec la visualisation dtat du programme Informations sur le test en mode pas pas et sur les points d'arrt Rassignation Attributs pour blocs et pour paramtres Affectation et dition de messages sur bloc (pour tout le projet) Cration de massages sur bloc (pour la CPU) Configuration de messages PCS7 (pour tout le projet) Configuration de messages PCS7 (pour la CPU) Traduction et dition de textes destins l'utilisateur Affectation d'attributs C+C aux paramtres FB Cration de blocs Principes de la programmation dans des sources LIST Introduction aux types de donnes et de paramtres Utilisation de types de donnes utilisateur pour l'accs aux donnes Attributs pour blocs et pour paramtres

FB (Blocs fonctionnels)

Fonctions supplmentaires :

UDT (Types de donnes utilisateur)

124

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

Icne

Objets dans le dossier Blocs DB (Blocs de donnes)

Slection de fonctions importantes Vue des donnes de blocs de donnes Vue des dclarations de blocs de donnes Conditions pralables au chargement Etat du programme de blocs de donnes Introduction aux types de donnes et de paramtres Utilisation de multi-instances Attributs pour blocs et pour paramtres Affectation et dition de messages sur blocs (pour tout le projet -uniquement DB d'instance) Edition de messages sur bloc (pour la CPU - uniquement DB d'instance) Configuration de messages PCS7 (pour tout le projet uniquement DB d'instance) Configuration de messages PCS7 (pour la CPU - uniquement DB d'instance) Traduction et dition de textes destins l'utilisateur (uniquement DB d'instance) Conditions pralables au chargement Attributs pour blocs et pour paramtres Aide sur les blocs Conditions pralables au chargement Attributs pour blocs et pour paramtres Affectation et dition de messages sur bloc (pour tout le projet) Cration de messages sur bloc (pour la CPU) Configuration de messages PCS7 (pour tout le projet) Configuration de messages PCS7 (pour la CPU) Traduction et dition de textes destins l'utilisateur Aide sur les blocs Rgles pour la dfinition des proprits de bloc dans les sources LIST Proprits de bloc

SFC (Fonctions systme)

SFB (Blocs fonctionnels systme)

Bloc avec protection KNOW HOW Bloc avec fonction de diagnostic Bloc cr avec le langage de programmation LOG F/CONT F/LIST F/DB F Table de variables

De plus amples informations sont fournies dans la documentation du progicicel optionnel S7-PDIAG. De plus amples informations sont fournies dans la documentation du progicicel optionnel S7 Distributed Saftey. Marche suivre pour la visualisation et le forage avec des tables de variables Introduction au test avec des tables de variables Introduction la visualisation de variables Introduction au forage de variables Introduction au forage permanent de variables

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

125

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

Icne

Objets dans le dossier Blocs Donnes systme (SDB)

Slection de fonctions importantes Les SDB ne sont dits que de manire indirecte l'aide de fonctions de : Introduction la configuration du matriel Proprits des sous-rseaux et des participants la communication Prsentation : communication par donnes globales Affectation et dition de messages sur mnmoniques Conditions pralables au chargement

126

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4.7

Objet Dossier Sources


Un dossier Sources contient les programmes source sous forme de texte.

Position dans la vue du projet


Objet Programme S7/M7 Objet Dossier Sources Objet Dossier Blocs Objet Projet Objet Station Objet Module programmable

Icne

Dossier d'objets Dossier Sources

Slection de fonctions importantes Principes de la programmation dans les sources LIST Exportation dune source Importation dune source

Icne

Objets dans le dossier Sources Source (p. ex. source LIST)

Slection de fonctions importantes Principes de la programmation dans les sources LIST Cration dune source LIST Insertion de modles de blocs dans une source LIST Insertion du code source de blocs existants dans des sources LIST Vrification de la cohrence dune source LIST Compilation dune source LIST Gnration dune source LIST partir de blocs Exportation dune source Importation dune source Utilisation de modles de rseau

Modle de rseau

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

127

Dmarrage et utilisation du programme 5.4 Objets et hirarchie d'objets

5.4.8

Programme S7/M7 sans station ni CPU


Vous avez la possibilit de crer des programmes sans avoir pralablement configur une station SIMATIC. Dans un premier temps, vous pouvez ainsi programmer indpendamment du module programmer et de ses paramtres.

Cration du programme S7/M7


1. Ouvrez le projet correspondant en choisissant la commande Fichier > Ouvrir ou activez la fentre du projet. 2. Slectionnez le projet dans la fentre du projet de la vue hors ligne. 3. Selon le systme cible auquel le programme cr est destin, choisissez la commande correspondante : Insertion > Programme > Programme S7, si votre programme doit ultrieurement tre excut sur un automate programmable SIMATIC S7. Insertion > Programme > Programme M7, si votre programme doit ultrieurement tre excut sur un systme dautomatisation SIMATIC M7. Le programme S7/M7 est insr est plac directement sous le projet dans la fentre du projet. Il contient un dossier pour les blocs ainsi quune table des mnmoniques vide. Vous pouvez prsent crer et programmer des blocs.

Affectation un module programmable


Des programmes insrs indpendamment dun module peuvent tre affects ultrieurement un module dans la fentre du projet. Il suffit de copier ou dplacer ces programmes par glisser-lcher sur licne du module.

Insertion dans une bibliothque


Lorsque le programme est destin au systme cible SIMATIC S7 et doit tre utilis de manire multiple tel un "regroupement de logiciel", vous pouvez galement linsrer dans une bibliothque. Pour le test, les programmes doivent cependant se trouver directement sous un projet afin que vous puissiez tablir une liaison au systme cible.

Accs un systme cible


Slectionnez la vue en ligne du projet. Dans la bote de dialogue des proprits du programme, vous pouvez effectuer le paramtrage des adresses.

Nota Lorsque vous supprimez des stations ou modules programmables, le systme vous demande si vous souhaitez galement supprimer le programme quils contiennent. Si vous rpondez par non, le programme est directement accroch sous le projet en tant que programme sans station.

128

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

5.5
5.5.1

Interface utilisateur et manipulation


Concept d'utilisation

But : utilisation simple


L'interface utilisateur graphique doit permettre une approche aussi intuitive que possible. Vous y trouvez donc des objets que vous connaissez de par votre environnement de travail quotidien, comme les stations, les modules, les programmes et les blocs. Les actions que vous excutez lorsque vous utilisez STEP 7 comprennent la cration, la slection et la manipulation de tels objets.

Diffrences par rapport au concept orient application


Selon le concept d'utilisation traditionnel, qui est orient application, il fallait d'abord trouver quelle tait l'application ncessaire la rsolution d'un travail prcis et appeler ensuite cette application. Selon le concept oriente objets, il s'agit de savoir quel objet doit tre trait, puis d'ouvrir et de traiter cet objet. Ainsi, avec ce concept, il n'est plus ncessaire de connatre une syntaxe de commande particulire. Les objets sont reprsents, sur l'interface utilisateur, par des icnes que vous pouvez ouvrir par commandes de menu ou clics de la souris. A l'ouverture d'un objet, le composant logiciel appropri est automatiquement appel pour afficher ou traiter le contenu de l'objet.

Pages suivantes...
Les pages suivantes prsentent les oprations fondamentales pour le traitement des objets. Familiarisez-vous ds maintenant avec ces oprations fondamentales qui vous seront toujours indispensables par la suite.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

129

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

5.5.2

Structure de la fentre
Les composants standard d'une fentre sont prsents dans la figure suivante.

Barre de titre et barre des menus


La barre de titre et la barre des menus se situent toujours au bord suprieur de la fentre. La barre de titre contient le titre de la fentre et les boutons permettant d'influer sur la fentre. La barre des menus contient tous les menus disponibles dans la fentre.

Barre d'outils
La barre d'outils contient des boutons vous permettant d'accder rapidement par clic de la souris aux commandes de menu disponibles qui sont le plus souvent utilises. Une information succincte sur la fonction de chaque bouton s'affiche lorsque vous positionnez le curseur pendant un court instant sur le bouton, une information supplmentaire s'affiche dans la barre d'tat. Quand l'accs un bouton n'est pas possible dans la configuration en cours, celui-ci est estomp.

Barre d'tat
La barre d'tat affiche des informations contextuelles.

130

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

5.5.3

Elments dans les botes de dialogue

Saisie dans les botes de dialogue


Vous pouvez entrer dans les botes de dialogue les informations ncessaires pour l'excution de certains travaux. La figure suivante prsente, l'aide d'un exemple, les composants les plus courants des botes de dialogue.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

131

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

Zones de listes, zones de combinaisons


Certaines zones de texte sont suivies d'une flche vers le bas. Cette flche signifie qu'il existe d'autres choix pour la zone correspondante. Cliquez sur la flche pour ouvrir une zone de liste ou de combinaison. Si vous cliquez alors sur une entre, cette entre sera automatiquement reprise dans la zone de texte.

Botes de dialogue onglets


Le contenu de certaines botes de dialogue est organis par pages afin d'assurer une meilleure vue d'ensemble (voir la figure suivante).

Le nom des diffrentes pages est inscrit dans des onglets apparaissant en haut de la bote de dialogue. Pour amener une page d'onglet au premier plan, il suffit de cliquer sur l'onglet.

132

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

5.5.4

Cration et manipulation d'objets


Quelques oprations de base sont identiques pour tous les objets. Nous allons d'abord les rsumer, puis nous les considrerons comme acquises lorsque nous dcrirons les procds dans les chapitres suivants de ce guide. La squence normale de manipulation des objets est : cration de l'objet, slection de l'objet, excution d'actions sur l'objet (par exemple, copie, suppression).

Chemin de nouveaux projets/ nouvelles bibliothques


Les nouveaux projets utilisateur, nouvelles bibliothques et nouveaux multiprojets sont enregistrs par dfaut dans le rpertoire "\Siemens\Step7\S7proj". Si vous souhaitez choisir un autre rpertoire, vous devriez en dfinir le chemin avant la premire cration de nouveaux projets utilisateur, de nouvelles bibliothques ou de nouveaux multiprojets. Choisissez cet effet la commande Outils > Paramtres. Dans la page d'onglet "Gnral" de la bote de dialogue affiche, vous pouvez spcifier le chemin de cration des nouveaux projets et des nouvelles bibliothques.

Cration d'objets
L'assistant de STEP 7 "Nouveau projet" vous aidera crer un nouveau projet et insrer des objets. Pour l'appeler, choisissez la commande Fichier > Assistant "Nouveau projet". Dans les botes de dialogue qui s'affichent, vous pouvez dfinir la structure de votre projet, puis le faire crer par l'assistant. Si vous prfrez ne pas avoir recours l'assistant, vous pouvez crer des projets et des bibliothques l'aide de la commande Fichier > Nouveau. Ces objets constituent la tte d'une bjets. Vous pouvez crer tous les autres objets - condition bien sr qu'ils ne le soient pas automatiquement - l'aide des commandes du menu "Insertion". Les modules d'une station SIMATIC reprsentent une exception, car ils sont crs uniquement dans le cadre de la configuration matrielle et par l'assistant "Nouveau projet".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

133

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

Ouverture d'objets
Vous pouvez ouvrir un objet dans la vue de dtail de plusieurs manires : effectuez un double clic sur l'icne de l'objet ou slectionnez l'objet puis la commande Edition > Ouvrir l'objet. Ceci ne s'applique qu' des objets qui ne sont pas des dossiers.

Une fois un objet ouvert, vous pouvez crer ou modifier son contenu. Lorsque vous ouvrez un objet de ce second type, son contenu est reprsent pour traitement par un composant logiciel appropri dans une nouvelle fentre. Vous ne pouvez pas modifier des objets dont le contenu est dj utilis un autre endroit.

Nota Exception : Les stations reprsentent les dossiers des modules programmables (par double clic) et de la configuration de la station. Lorsque vous effectuez un double clic sur l'objet "Matriel", l'application de configuration du matriel dmarre. Le mme rsultat s'obtient par slection de la station puis activation de la commande Edition > Ouvrir l'objet.

Constitution d'une hirarchie d'objets


Faites-vous tablir la hirarchie des objets par l'assistant "Nouveau projet". Lorsque vous ouvrez un dossier, les objets qu'il contient dj s'affichent l'cran. Le menu "Insertion" vous permet alors de crer d'autres sous-objets, par exemple d'autres stations dans un projet. Ce menu ne met votre disposition que les commandes d'insertion de ceux des objets qui sont autoriss dans le dossier en cours.

Dfinition des proprits d'un objet


Les proprits sont des donnes de l'objet qui dterminent son comportement. La bote de dialogue de dfinition des proprits d'un objet s'affiche automatiquement quand vous crez un objet et qu'il faut en dfinir les proprits. Mais il est aussi possible de modifier les proprits aprs coup. La commande Edition > Proprits de l'objet appelle une bote de dialogue permettant de lire ou de dfinir les proprits pour l'objet choisi. La commande Edition > Proprits spcifiques de l'objet appelle des botes de dialogue permettant de saisir les donnes requises pour le contrle-commande ainsi que pour la configuration des messages. Par exemple, pour pouvoir appeler les proprits spcifiques d'un bloc pour le contrle-commande, il faut avoir dfini ce bloc comme bloc de contrle-commande, c'est--dire avoir crit l'attribut systme "s7_m_c" avec la valeur "true" dans la page d'onglet "Attributs" des proprits du bloc.

134

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

Nota
Vous ne pouvez ni afficher, ni modifier les proprits du dossier "Donnes systme" et de lobjet "Matriel. Vous ne pouvez pas crire dans les botes de dialogue des proprits dun projet protg en criture. Dans ce cas, les zones de saisie sont estompes. Lorsque vous affichez les proprits de modules programmables, vous ne pouvez pas diter les paramtres affichs pour des raisons de cohrence. Pour diter les paramtres, vous devez ouvrir lapplication "Configuration du matriel". Lorsque vous modifiez les paramtres dobjets sur loutil de dveloppement (p. ex. les donnes de paramtrage dun module), ils ne sont pas immdiatement actifs sur le systme cible. En effet, les blocs de donnes systme dans lesquels ces paramtres sont enregistrs doivent se trouver sur le systme cible. Lorsque vous chargez un programme utilisateur complet, les blocs de donnes systme sont automatiquement chargs. Si aprs avoir charg un programme, vous effectuez des modification du paramtrage, vous pouvez recharger lobjet "Donnes systme", afin damener les nouveaux paramtres dans le systme cible. Il est vivement recommand dditer les dossiers uniquement dans STEP 7, car leur structure physique peut tre diffrente que celle que vous voyez dans SIMATIC Manager.

Couper, coller ou copier


Vous pouvez couper, coller et copier la plupart des objets comme vous le faites sous Windows. Les commandes correspondantes appartiennent au menu "Edition". Vous pouvez galement copier des objets l'aide de la fonction "glisser-lcher" (Drag&Drop). Si vous pointez sur une destination incorrecte, le curseur se change en signe d'interdiction. Lorsque vous copiez un objet, toute la hirarchie en aval de cet objet est galement copie. Cela permet d'utiliser nouveau des composants conus pour une autre solution d'automatisation.

Nota Il n'est pas possible de copier la table des liaisons dans le dossier "Liaisons". Lorsque vous copiez des listes de textes destins l'utilisateur, veillez ce que seules soient reprises les langues qui sont installes dans l'objet cible.

La marche suivre pour la copie est dcrite tape par tape sous Copie d'objets.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

135

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

Renommer des objets


SIMATIC Manager attribue des noms standardiss certains objets nouvellement colls. Ces noms sont gnralement forms partir du type de l'objet et (lorsque plusieurs objets de ce type sont crs dans le mme dossier) d'un numro en cours. Ainsi, par exemple, le premier programme S7 est nomm "Programme S7 (1)", le deuxime "Programme S7 (2)". La table des mnmonique, quant elle, s'appelle simplement "Mnmoniques" puisqu'elle n'existe qu'une seule fois dans chaque dossier de niveau hirarchique suprieur. Vous avez la possibilit de renommer la plupart des objets afin de leur attribuer une dsignation plus explicite. Pour les projets, les noms de rpertoire du chemin ne doivent pas excder 8 caractres. Sinon, des problmes risqueraient de se poser lors de l'archivage et de l'utilisation de "C pour M7" (compilateur Borland). Les noms d'objets modifiables peuvent directement tre dits ou modifis l'aide des proprits d'objet. Edition directe : Dans la fentre du projet, cliquez deux fois lentement sur le nom d'un objet slectionn. Un cadre apparat autour du texte. Vous pouvez alors diter ce texte via le clavier.

Modification l'aide des proprits de l'objet : Dans la fentre du projet, slectionnez l'objet souhait et choisissez la commande de menu Edition > Renommer. Un cadre s'affiche autour du texte. Vous pouvez prsent diter la dsignation via le clavier.

Lorsqu'il n'est pas permis de modifier un nom d'objet, la zone de saisie est reprsente en gris dans la bote de dialogue, le nom en cours est affich et la saisie est impossible.

Nota Si, durant l'dition, vous dplacez le curseur hors de la zone du nom pour effectuer une autre action (par exemple slectionner une commande), l'dition est interrompue. Sil est valide, le nom modifi est repris.

La marche suivre pour renommer un objet est dcrite tape par tape sous Renommer un objet.

136

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

Dplacer un objet
SIMATIC Manager vous permet de dplacer des objets d'un dossier un autre, mme si ce dernier se trouve dans un autre projet. Lorsque vous dplacez un dossier, tout son contenu est galement dplac.

Nota Il n'est pas possible de dplacer les objets suivants :


Liaisons Blocs de donnes systme (SDB) dans la vue en ligne Fonctions systme (SFC) et blocs fonctionnels systme (SFB) dans la vue en ligne

Le marche suivre pour le dplacement est dcrite tape par tape dans Dplacement d'objets.

Trier des objets


Dans l'affichage de dtail (commande Affichage > Dtails), vous pouvez trier les objets d'aprs leurs attributs. Cliquez cet effet sur l'en-tte de colonne correspondant l'attribut souhait. Un nouveau clic inverse l'ordre de tri. Les blocs sont tris d'aprs le numro qui leur est attribu, par exemple FB1, FB2, FB11, FB12, FB21, FC1. Ordre de tri prdfini (tri par dfaut) : Lorsque vous ouvrez un projet pour la premire fois, les objets s'affichent d'aprs un ordre de tri prdfini dans l'affichage "Dtails". Exemples : Les blocs sont affichs dans l'ordre "Donnes systme, OB, FB, FC, DB, UDT, VAT, SFB, SFC". Dans les projets s'affichent d'abord toutes les stations puis les programmes S7.

Le critre de tri prdfini pour l'affichage de dtail ne correspond donc pas un classement alphabtique croissant ou dcroissant. Restauration du tri par dfaut : Aprs avoir effectu un tri, par exemple par clic sur l'en-tte de colonne "Nom de l'objet", vous pouvez nouveau restaurer l'ordre prdfini en procdant de la manire suivante : cliquez sur l'en-tte de colonne "Type" dans l'affichage de dtail, quittez puis ouvrez nouveau le projet.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

137

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

Suppression d'objets
Vous pouvez supprimer aussi bien des dossiers que des objets. Lorsque vous supprimez un dossier, tous les objets qu'il contient le sont galement. Il n'est pas possible d'annuler une opration de suppression. Si vous n'tes pas certain de ne plus avoir besoin d'un objet, il est prfrable d'archiver prcdemment l'ensemble du projet.

Nota Il n'est pas possible de supprimer les objets suivants :


Liaisons Blocs de donnes systme (SDB) dans la vue en ligne Fonctions systme (SFC) et blocs fonctionnels systme (SFB) dans la vue en ligne

La marche suivre pour la suppression est dcrite tape par tape dans Suppression d'objets.

138

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

5.5.5

Slection d'objets dans les botes de dialogue


La slection d'objets dans une bote de dialogue est une opration que vous devez effectuer diffrentes tapes.

Appel d'une bote de dialogue


Une bote de dialogue est, par exemple, appele dans la configuration matrielle par des commandes telles que Station > Nouvelle.../Ouvrir... ; la fentre d'accs "SIMATIC Manager" constitue une exception.

Composition d'une bote de dialogue


Une bote de dialogue offre les possibilits de slection prsentes par la figure suivante.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

139

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

5.5.6

Historique des sessions


SIMATIC Manager est en mesure de mmoriser le contenu des fentres, cest--dire les projets et bibliothques ouverts, ainsi que la disposition des fentres. La commande Outils > Paramtres vous permet de dfinir si le contenu et la disposition des fentres doivent tre enregistrs en fin de la session. Dans ce cas, ils seront restaurs au dbut de la session suivante. Dans les projets ouverts, le curseur se positionne sur le dernier dossier ouvert. La commande Fentre > Enregistrer la disposition enregistre le contenu et la disposition actuels de la fentre. La commande Fentre > Restaurer la disposition restaure le contenu et la disposition de la fentre prcdemment enregistrs laide de la commande Fentre > Enregistrer la disposition. Le curseur se positionne sur le dernier dossier ouvert.

Nota Le contenu de la fentre de projets en ligne, celui de la fentre "Partenaires accessibles" et celui de la fentre "Carte mmoire S7" ne sont pas enregistrs. Les mots de passe ventuellement saisis pour laccs aux systmes cible (S7- 300/S7-400) ne sont pas enregistrs au-del de la fin de la session.

5.5.7

Modification de la disposition des fentres


Pour disposer toutes les fentres affiches de manire ce quelles se chevauchent, vous avez les possibilits suivantes : Choisissez la commande Fentre > Disposition > Cascade. Appuyez sur les touches MAJ + F5.

Pour disposer toutes les fentres les unes sous les autres, choisissez la commande Fentre > Disposition > Mosaque verticale. Pour disposer toutes les fentres les unes ct des autres, choisissez la commande Fentre > Disposition > Mosaque horizontale.

140

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.5 Interface utilisateur et manipulation

5.5.8

Enregistrement et restauration de la disposition des fentres


Les applications de STEP 7 offrent la possibilit d'enregistrer la disposition actuelle des fentres afin de pouvoir la restaurer tout moment. Ce paramtrage peut tre ralis l'aide de la commande Outils > Paramtres, dans l'onglet "Gnral".

Informations sauvegardes
Lorsque vous effectuez l'enregistrement de la disposition des fentres, les informations suivantes sont sauvegardes : position de la fentre principale, projets et bibliothques ouverts ainsi que position des fentres correspondantes, ventuellement ordre de superposition des fentres.

Nota Le contenu des fentres de projets en ligne, celui de la fentre "Partenaires accessibles" et celui de la fentre "Carte mmoire S7" ne sont pas enregistrs.

Enregistrement de la disposition des fentres


Pour enregistrer la disposition actuelle des fentres, choisissez la commande Fentre > Enregistrer la disposition.

Restauration de la disposition des fentres


Pour restaurer une disposition des fentres enregistre, choisissez la commande Fentre > Restaurer la disposition.

Nota Lors de la restauration d'une fentre, seule la partie de la hirarchie contenant l'objet qui tait slectionn lors de l'enregistrement sera reprsente en dtail.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

141

Dmarrage et utilisation du programme 5.6 Utilisation du clavier

5.6

Utilisation du clavier
Dsignation internationale des touches HOME END PAGE-UP PAGE-DOWN CTRL ENTER DEL INSERT Dsignation franaise des touches ORIGINE FIN PG.PREC PG.SUIV CTRL ENTREE SUPPR INSER

5.6.1

Combinaisons de touches pour les commandes de menu


Vous pouvez dclencher chaque commande en tapant la combinaison de la touche ALT avec la lettre souligne approprie. Appuyez successivement sur les touches suivantes : touche ALT, lettre souligne dans le menu dsir (par exemple, ALT, F pour le menu Fichier si le menu Fichier figure dans la barre des menus). Le menu s'ouvre. lettre souligne dans la commande dsire (par exemple N pour la commande Nouveau). S'il s'agit d'une commande comportant des sous-menus, ceux-ci s'ouvriront. Continuez taper les lettres soulignes, jusqu' ce que la commande souhaite soit complte.

La commande est dclenche une fois la dernire lettre de la combinaison de touches saisie.

Exemples : Commandes Fichier > Archiver Fichier > Ouvrir Touches ALT, F, A ALT, F, O

142

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.6 Utilisation du clavier

Equivalences clavier
Fonction Nouveau Ouvrir Enregistrer sous Imprimer > Liste d'objets Imprimer > Objet Quitter Couper Copier Coller Effacer Slectionner tout Renommer Proprits de l'objet Ouvrir un objet Compiler Charger Diagnostic/Paramtres > Etat du module (menu Fichier) (menu Fichier) (menu Fichier) (menu Fichier) (menu Fichier) (menu Fichier) (menu Edition) (menu Edition) (menu Edition) (menu Edition) (menu Edition) (menu Edition) (menu Edition) (menu Edition) (menu Edition) (menu Systme cible) (menu Systme cible) CTRL+I F5 CTRL + F5 CTRL + ALT + E CTRL + ALT + R (menu Outils) (menu Fentre) (menu Fentre) MAJ + F3 (menu Fentre) (menu d'aide ?) F1 (S'il y a un contexte, par exemple si une commande est slectionne, la rubrique d'aide correspondante s'affiche. Sinon, c'est le sommaire de l'aide qui s'affiche.) MAJ + F5 MAJ + F2 Equivalence CTRL + N CTRL + O CTRL + S CTRL + P CTRL + ALT + P ALT + F4 CTRL + X CTRL + C CTRL + V SUPPR CTRL + A F2 ALT + ENTREE CTRL + ALT + O CTRL+B CTRL + L CTRL+D

Diagnostic/Paramtres > Etat de fonctionnement (menu Systme cible) Actualiser (menu Affichage) Pour actualiser l'affichage d'tat des CPU visibles dans la vue en ligne Paramtres Donnes de rfrence > afficher Disposition > Cascade Disposition > Mosaque horizontale Disposition > Mosaque verticale Aide contextuelle (menu Outils)

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

143

Dmarrage et utilisation du programme 5.6 Utilisation du clavier

5.6.2

Combinaisons de touches pour le dplacement du curseur

Dplacement du curseur dans la barre des menus ou dans un menu contextuel


Fonction Activer la barre des menus Atteindre le menu contextuel Au menu dont le nom contient le caractre soulign X Choisir une commande subordonne Dplacement d'un menu vers la gauche Dplacement d'un menu vers la droite Dplacement d'un menu vers le haut Dplacement d'un menu vers le bas Activer la commande slectionne Quitter le menu ou revenir au texte Touches F10 MAJ + F10 ALT + X Lettre souligne dans le nom de commande Flche vers la gauche Flche vers la droite Flche vers le haut Flche vers le bas ENTREE ECHAP

Dplacement du curseur lors de l'dition de texte


Fonction Une ligne vers le haut ou un caractre vers la gauche dans un texte d'une seule ligne Une ligne vers le bas ou un caractre vers la droite dans un texte d'une seule ligne Un caractre vers la droite Un caractre vers la gauche Un mot vers la droite Un mot vers la gauche Au dbut de la ligne A la fin de la ligne Une page d'cran vers le haut Une page d'cran vers le bas Au dbut du texte A la fin du texte Touches Flche vers le haut Flche vers le bas Flche vers la droite Flche vers la gauche CTRL + Flche vers la droite CTRL + Flche vers la gauche ORIGINE FIN PAGE PRECEDENTE PAGE SUIVANTE CTRL + ORIGINE CTRL + FIN

144

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.6 Utilisation du clavier

Dplacement du curseur lors de l'dition de tables


Fonction Une cellule vers le haut Une cellule vers le bas Un caractre ou une cellule vers la gauche Un caractre ou une cellule vers la droite Au dbut de la ligne A la fin de la ligne Au dbut de la cellule A la fin de la cellule Une page d'cran vers le haut Une page d'cran vers le bas Au dbut de la table A la fin de la table Uniquement dans la table des mnmoniques : la colonne mnmonique Uniquement dans la table des mnmoniques : la colonne commentaire Touches Flche vers le haut Flche vers le bas Flche vers la gauche Flche vers la droite CTRL + Flche vers la gauche CTRL + Flche vers la droite ORIGINE FIN PAGE PRECEDENTE PAGE SUIVANTE CTRL + ORIGINE CTRL + FIN MAJ + ORIGINE MAJ + FIN

Dplacement du curseur dans les botes de dialogue


Fonction Au champ de saisie suivant (de gauche droite et de haut en bas) Au champ de saisie prcdent Au champ de saisie dont le nom contient le caractre soulign X Slectionner dans une liste de choix Ouvrir une liste de choix Slectionner un objet ou en annuler la slection Confirmer la saisie et fermer la bote de dialogue (bouton "OK") Fermer la bote de dialogue sans enregistrer les choix (bouton "Annuler"). Touches TAB MAJ + TAB ALT + X TOUCHES DE DIRECTION ALT + Flche vers le bas ESPACE ENTREE ECHAP

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

145

Dmarrage et utilisation du programme 5.6 Utilisation du clavier

5.6.3

Combinaisons de touches pour la slection de texte


Fonction Un caractre vers la droite Un caractre vers la gauche Jusqu'au dbut de la ligne Jusqu' la fin de la ligne Une ligne dans la table Une ligne de texte vers le haut Une ligne de texte vers le bas Une page d'cran vers le haut Une page d'cran vers le bas Le texte jusqu'au dbut du fichier Le texte jusqu' la fin du fichier Touches MAJ + flche vers la droite MAJ + flche vers la gauche MAJ + ORIGINE MAJ + FIN MAJ + BARRE D'ESPACEMENT MAJ + flche vers le haut MAJ + flche vers le bas MAJ + PG.PREC MAJ + PG.SUIV CTRL + MAJ + ORIGINE CTRL + MAJ + FIN

5.6.4

Combinaisons de touches pour accder l'aide en ligne


Fonction Ouvrir l'aide Touches F1 (S'il y a un contexte, par exemple si une commande est slectionne, la rubrique d'aide correspondante s'affiche. Sinon, c'est le sommaire de l'aide qui s'affiche.) Activer le bouton "Point d'interrogation" afin d'obtenir MAJ + F1 une aide contextuelle Fermer la fentre d'aide et revenir celle de l'application ALT + F4

146

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dmarrage et utilisation du programme 5.6 Utilisation du clavier

5.6.5

Combinaisons de touches pour la bascule entre les diffrents types de fentres


Fonction Bascule d'un volet un autre Bascule au volet prcdent, en l'absence d'une fentre ancre Bascule entre la fentre du document et la fentre ancre au document (par exemple fentre de dclaration des variables) En l'absence d'une fentre ancre, la bascule s'effectue au volet prcdent. Bascule entre des fentres de document Bascule la fentre de document prcdente CTRL + F6 MAJ + CTRL + F6 Touches F6 MAJ + F6 MAJ + F6

Bascule entre des fentres autres que de documents ALT + F6 (fentres d'applications et fentre qui y sont ancres ; lors du retour une fentre d'application, la bascule s'effectue la dernire fentre de document active) Bascule la fentre autre que de document prcdente Fermer la fentre active MAJ + ALT + F6 CTRL + F4

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

147

Dmarrage et utilisation du programme 5.6 Utilisation du clavier

148

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

6
6.1

Cration et dition du projet


Structure du projet
Un projet permet de regrouper l'ensemble des programmes et donnes ncessaires raliser une tche d'automatisation. Ces donnes englobent en particulier : les donnes de configuration pour la configuration matrielle et les donnes de paramtrage pour les modules, les donnes de configuration pour la communication par rseau et les programmes pour modules programmables.

La tche principale dans la ralisation d'un projet, consiste prparer ces donnes et effectuer la programmation. Dans un projet, les donnes sont enregistres sous forme d'objets. Les objets sont organiss l'intrieur d'un projet selon une structure arborescente (hirarchie du projet). Dans la fentre du projet, cette structure hirarchique est reprsente de la mme manire que dans l'Explorateur Windows. Seules les icnes des objets sont diffrentes. Le sommet de la hirarchie se compose comme suit : 1. Niveau : 2. Niveau : 3. Niveau : projet sous-rseaux, stations ou programmes S7/M7 dpend de l'objet correspondant du niveau 2.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

149

Cration et dition du projet 6.1 Structure du projet

Fentre de projet
La fentre de projet est partage en deux volets. Le volet gauche reprsente l'arborescence du projet. Le volet droit affiche le contenu de l'objet slectionn dans le volet gauche dans le mode d'affichage slectionn (grandes icnes, petites icnes, liste ou dtails). Pour afficher l'arborescence complte du projet, cliquez sur les cases affichant le signe "Plus" dans la partie gauche de la fentre. Vous obtenez alors une reprsentation similaire celle de la figure suivante.

L'objet "S7_Pro1" se trouve ici la tte de la hirarchie d'objet, comme icne pour l'ensemble du projet. Il peut tre utilis pour afficher les proprits du projet et sert de dossier aux rseaux (pour la configuration de rseaux), stations (pour la configuration matrielle) ainsi qu'aux programmes S7 ou M7 (pour la cration du logiciel). Lorsque vous slectionnez l'icne du projet, les objets que contient ce dernier sont affichs dans le volet droit de la fentre de projet. Les objets la tte d'une telle hirarchie (projets mais aussi bibliothques) constituent les points de dpart dans les botes de dialogue pour la slection d'objets.

Vue du projet
Une fentre du projet vous permet d'afficher la structure du projet relative l'ensemble des donnes sur l'outil de dveloppement dans la vue hors ligne, une autre fentre du projet vous permettant d'afficher les donnes correspondantes sur le systme cible dans la vue en ligne. Vous pouvez galement slectionner la vue du gestionnaire de station, lorsque le logiciel optionnel est install.

Nota La configuration du matriel et des rseaux ne peut tre ralise que dans l'affichage hors ligne.

150

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.2 Informations sur la protection d'accs

6.2

Informations sur la protection d'accs


A partir de STEP 7 V5.4, vous avez la possibilit de mettre en place une protection d'accs pour les projets et bibliothques en attribuant un mot de passe au projet. Cette fonctionnalit suppose cependant que SIMATIC Logon est install. Vous pouvez en outre activer, dsactiver et afficher un journal des modifications. Si vous avez install SIMATIC Logon sur votre ordinateur, les commandes de menu suivantes s'affichent de manire dynamique l'cran dans SIMATIC Manager, afin que vous puissiez grer la protection d'accs un projet ou une bibliothque : Protection d'accs, Activer Protection d'accs, Dsactiver Protection d'accs, Grer Protection d'accs, Synchroniser dans le multiprojet Suppression de la protection d'accs et du journal des modifications

Vous activez la protection d'accs dans SIMATIC Manager, en choisissant la commande de menu Outils > Protection d'accs > Activer. Lorsque vous activez pour la premire fois la protection d'accs avec la commande de menu prcite, une bote de dialogue s'ouvre afin que vous puissiez vous annoncer dans SIMATIC Logon. Vous tes ensuite sollicit pour attribuer un mot de passe au projet. Il ne vous reste alors plus qu' diter le projet ou la bibliothque correspondants en tant qu'utilisateur authentifi ou aprs saisie du mot de passe du projet. La commande de menu Supprimer la protection d'accs et le journal des modifications vous permet de supprimer la fois la protection d'accs et le journal des modifications d'un projet ou d'une bibliothques protgs par un mot de passe. Une fois la protection d'accs dsactive, vous pouvez diter des projets de nouveau galement avec une version de STEP 7 antrieure V5.4.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

151

Cration et dition du projet 6.2 Informations sur la protection d'accs

Ouverture et fermeture de projets dont l'accs est protg


On distingue les cas suivants :
PC avec STEP 7 et SIMATIC Logon 1. Lutilisateur se connecte via SIMATIC Logon au moyen du nom dutilisateur et du mot de passe. Le projet protg est ouvert. PC avec STEP 7 et SIMATIC PC avec STEP 7 (sans SIMATIC Logon Logon ) Le projet dont laccs est protg est ouvert par un autre utilisateur. Lutilisateur ouvre le projet protg en saisissant le mot de passe du projet.

2.

Ldition du projet est possible mais les fonctions de SIMATIC Logon ne sont pas disponibles. Le projet est dit. Lutilisateur doit de nouveau sauthentifier avec le mot de passe du projet la fermeture et la rouverture du projet.

3.

Le projet est dit.

4.

La fermeture du nentrane La fermeture du projet nentrane pas de dconnexion pas de dconnexion dans dans SIMATIC Logon. SIMATIC Logon. La dconnexion de lutilisateur doit avoir lieu via Outils > SIMATIC Logon Services > bouton "Dconnecter".

5.

Nota
Pour pouvoir dsactiver la protection d'accs, vous devez tre authentifi en tant d'administrateur du projet dans SIMATIC Logon. Lors de la premire activation de la protection d'accs, le format du projet est modifi. Un message vous indique que le projet modifi ne peut plus tre dit avec des versions plus anciennes de STEP 7. Grce la fonction Outils -> Protection d'accs -> Supprimer la protection d'accs et le journal des modifications, vous pouvez de nouveau diter le projet ou la bibliothque avec une version de STEP 7 infrieure la version V5.4. Vous perdez cependant l'information sur les utilisateurs ayant accs ce projet ou cette bibliothque ainsi que tous les journaux des modifications. L'utilisateur actuellement connect est affich dans la barre d'tat de SIMATIC Manager. L'utilisateur de Logon actuellement connect, qui active la protection d'accs, est entr en tant qu'administrateur du projet et doit attribuer le mot de passe du projet lors de la premire activation. Pour pouvoir ouvrir un projet avec protection d'accs, vous devez tre authentifi en tant d'administrateur du projet ou diteur du projet dans SIMATIC Logon ou connatre le mot de passe du projet. Sachez qu' l'ouverture d'un projet protg par mot de passe, un utilisateur qui s'est connect est entr en tant qu'administrateur de ce projet. Lorsque le projet/la bibliothque possde une protection d'accs active, son icne prsente une cl rouge. Si le multiprojet est exclusivement constitu de projets/bibliothques avec une protection d'accs active, son icne contient galement une cl rouge. Si le projet/la bibliothque possde une protection d'accs dsactive, son icne prsente une cl blanche. Si le multiprojet est constitu la fois de projets/bibliothques avec protection d'accs active et de projets/bibliothques avec protection d'accs dsactive ou bien exclusivement de projets/bibliothques avec protection d'accs dsactive, son icne prsente galement une cl blanche.

152

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.3 Informations sur le journal des modifications

6.3

Informations sur le journal des modifications


A partir de STEP 7 V5.4, aprs avoir mis en place une protection d'accs pour les projets et bibliothques, vous avez la possibilit de tenir un journal des modifications consignant les actions en ligne. Exemples Activation / Dsactivation / Configuration de la protection d'accs et journal des modifications Ouverture / Fermeture de projets et de bibliothques Chargement dans le systme cible (donnes systme) Oprations slectionnes pour le chargement et la copie de blocs Actions de modification de l'tat de fonctionnement Effacement gnral

Vous pouvez afficher le journal des modifications et lui affecter des explications relatives la modification ainsi que des commentaires. Cette fonctionnalit suppose toutefois que vous avez install SIMATIC Logon. Vous activez le journal des modifications dans SIMATIC Manager, en choisissant la commande de menu Outils > Journal des modifications > Activer. Vous pouvez ensuite l'afficher ou le dsactiver en choisissant la commande de menu correspondante. Selon l'objet que vous avez slectionn dans l'arborescence du projet (p. ex. le dossier Projet ou la station subordonne), le journal des modifications correspondant s'affiche.

Nota
Grce la fonction Outils -> Protection d'accs -> Supprimer la protection d'accs et le journal des modifications, vous pouvez de nouveau diter le projet ou la bibliothque avec une version de STEP 7 infrieure la version V5.4. Vous perdez cependant l'information sur les utilisateurs ayant accs ce projet ou cette bibliothque ainsi que tous les journaux des modifications. Pour pouvoir excuter cette fonction, vous devez tre authentifi en tant d'administrateur du projet dans SIMATIC Logon et la protection d'accs doit tre active pour ce projet.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

153

Cration et dition du projet 6.4 Utilisation de jeux de caractres de langues trangres

6.4

Utilisation de jeux de caractres de langues trangres


A partir de STEP 7 V5.3 SP2, vous pouvez entrer, dans les projets et bibliothques, des textes dans une langue trangre qui ne correspond pas la langue paramtre dans STEP 7. A cet effet, vous devez slectionner les paramtres de langue de Windows correspondants dans le panneau de configuration du systme d'exploitation. Ainsi, il est p. ex. possible d'utiliser STEP 7 dans la langue anglaise sur un Windows chinois, tout en saisissant des textes en chinois. Il faut distinguer les possibilits suivantes de paramtrage de la langue :

Paramtres de langue de Windows


Vous slectionnez les paramtres de langue dans le panneau de configuration de Windows. Les textes du systme d'exploitation s'affichent dans la langue slectionne et vous pouvez entrer des textes dans des jeux de caractres de langues trangres.

Langue du projet
La langue du projet correspond la langue paramtre dans le panneau de configuration de Windows lors de la cration d'un projet. Il n'est pas possible de modifier la langue du projet. Le paramtrage "Indpendant de la langue" permet toutefois d'ouvrir un projet sur des ordinateurs possdant un autre paramtrage de langue de Windows. Avant de modifier la langue du projet en choisissant "Indpendant de la langue", veuillez vous assurer que seuls des caractres du jeu de caractres anglais (caractres ASCII 0x2a - 0x7f) aient t utiliss lors de la saisie de textes dans le projet. Avec la commande de menu Edition > Proprits de l'objet, vous pouvez afficher la langue dans laquelle un projet ou une bibliothque ont t crs. Dans la mme bote de dialogue, vous pouvez galement slectionner l'option "Peut tre ouvert sous tous les paramtres linguistiques de Windows (indpendant de la langue)". Lorsque vous copiez un projet avec la commande de menu Enregistrer sous et que la langue du projet ne correspond pas au paramtre linguistique actuel de Windows, vous pouvez changer la langue dans le projet copi en choisissant la langue actuelle paramtre dans Windows. Ceci s'avre utile lorsque vous souhaitez p. ex. crer des variantes d'un projet spcifiques la langue. Il est recommand que le projet matre contienne exclusivement des caractres du jeu de caractres anglais (caractres ASCII 0x2a - 0x7f), de sorte pouvoir garantir qu'aucune corruption de donnes ne se produise lors de l'dition du projet dans la langue respective.

Langue de STEP 7
Vous paramtrez la langue de STEP 7 dans SIMATIC Manager, en choisissant la commande de menu Outils > Paramtres. Les lments de l'interface, les commandes de menu, les botes de dialogue et les messages d'erreur de STEP 7 s'affichent dans cette langue. Si vous utilisez une autre langue de Windows que le franais, l'anglais, l'allemand, l'italien ou l'espagnol, vous pouvez vous assurer que l'interface utilisateur de STEP 7 est reprsente correctement en choisissant l'anglais comme langue de STEP 7.

154

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.4 Utilisation de jeux de caractres de langues trangres

Rgles
Si vous avez l'intention d'diter vos projets ou bibliothques sur des ordinateurs possdant des paramtres de langue diffrents, tenez compte des rgles suivantes afin d'viter des incompatibilits ou les altrations de donnes lors de l'utilisation de jeux de caractres de langues trangres : Installez STEP 7 uniquement dans des rpertoires contenant des caractres du jeu de caractres anglais (caractres ASCII 0x2a - 0x7f). Utilisez exclusivement des noms et des chemins de projets contenant des caractres du jeu de caractres anglais (caractres ASCII 0x2a - 0x7f). Si vous utilisez p. ex. des trmas allemands ou des caractres cyrilliques ou chinois, le projet peut uniquement tre ouvert sur des ordinateurs sur lesquels les paramtres de langue correspondants de Windows ont t slectionns. Dans les multiprojets, utilisez exclusivement des projets et des bibliothques possdant la mme langue de projet ou caractriss comme indpendants de la langue. Le multiprojet proprement dit est indpendant de la langue. Crez toujours des bibliothques indpendantes de la langue afin de garantir leur utilisation sur des ordinateurs avec diffrents paramtres de langue de Windows. Pour l'attribution des noms aux objets des bibliothques, les commentaires, les noms symboliques, etc., utilisez uniquement des caractres ASCII (0x2a - 0x7f) afin de pouvoir utiliser les bibliothques sans problmes. Lors de l'importation/exportation de configurations matrielles ou de tables des mnmoniques, veillez importer/exporter exclusivement des fichiers avec des langues compatibles. Dans les noms des attributs dfinis par l'utilisateur, utilisez exclusivement des caractres du jeu de caractres anglais (caractres ASCII 0x2a - 0x7f). Si, dans une source LIST, vous utilisez des caractres qui ne font pas partie du jeu de caractres anglais (caractres ASCII 0x2a - 0x7f) pour les entres des proprits de bloc TITLE, AUTHOR, FAMILY ou NAME, mettez simplement ces entres entre guillemets.

Nota
Si vous modifiez ou copiez des projets ou des bibliothques ayant t crs sur un ordinateur qui, bien qu'il soit caractris comme indpendant de la langue en ce qui concerne les paramtres de langue de Windows, n'est toutefois pas compatible avec l'ordinateur actuel, des corruptions de donnes risquent de se produire si dans le projet ou la bibliothque des caractres absents du jeu de caractres anglais (caractres ASCII 0x2a 0x7f) ont t utiliss. Avant l'dition de projets ou de bibliothques "trangers", vrifiez par consquent si les paramtres de langue de Windows sur votre ordinateur correspondent la langue de projet. Si vous exportez des configurations matrielles ou des tables de mnmoniques qui doivent tre importes avec un autre paramtre de langue de Windows, assurez-vous que seuls des caractres ASCII (0x2a - 0x7f) ont t utiliss et pas de caractres spcifiques la langue, tels que p. ex. des trmas allemands, des caractres japonais ou cyrilliques. Les configurations matrielles ou tables des mnmoniques exportes contenant des caractres spcifiques la langue, tels que p. ex. des trmas allemands, des caractres japonais ou cyrilliques, doivent uniquement tre importes avec le paramtre de langue de Windows avec lequel elles ont t exportes. Lorsque p. ex. vous importez d'anciennes tables de mnmoniques contenant probablement des caractres spcifiques la langue, vrifiez soigneusement le rsultat : les mnmoniques doivent tre univoques, ne pas contenir de point d'interrogation et tre plausibles. Dans les tables de mnmoniques contenant des caractres spciaux qui ne sont pas dfinis pour le paramtre de langue respectif de Windows, les points d'interrogation risquent d'entraner des modifications du nom des mnmoniques et des erreurs lors du tri d'aprs le nom et le commentaire. Lors de l'adressage symbolique, vous devez crire les noms symboliques entre guillemets ("<nom symbolique>").

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

155

Cration et dition du projet 6.4 Utilisation de jeux de caractres de langues trangres

Marche suivre
Afin de pouvoir saisir dans les projets et bibliothques, des textes dans des jeux de caractres de langues trangres, procdez de la manire suivante : 1. Paramtrez la langue souhaite dans le panneau de configuration de Windows. 2. Crez un projet. 3. Saisissez les textes souhaits dans la langue trangre.

Dans le cas de projets et de bibliothques dont la cration est antrieure STEP 7 V5.3 SP2, la langue du projet est "non encore dfinie". En choisissant la commande de menu Edition > Proprits de l'objet pour ces projets, vous pouvez slectionner comme langue du projet, la langue de Windows actuellement paramtre. Assurez-vous auparavant qu'aucun caractre non dfini dans le paramtre de langue actuel de Windows n'ait t utilis.

156

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.5 Paramtrage de la langue de Windows

6.5

Paramtrage de la langue de Windows


Pour paramtrer la langue de Windows, procdez de la manire suivante :

Paramtrage de la langue sous Windows XP et Windows Server 2003 :


1. Paramtrez la langue d'affichage souhaite dans le Panneau de configuration > Options rgionales et linguistiques > Options avances > Langue pour les programmes non Unicode. 2. Paramtrez la langue d'entre dans le Panneau de configuration > Options rgionales et linguistiques > Langues > Dtails (langue d'entre par dfaut). 3. Paramtrez la langue souhaite dans le Panneau de configuration > Options rgionales et linguistiques > Options rgionales (Standards et formats).

Paramtrage de la langue sous Windows 7 :


1. Paramtrez la langue d'affichage souhaite dans le Panneau de configuration > Horloge, langue et rgion > Rgion et langue > Formats > Format. 2. Ajoutez la langue de saisie dans le Panneau de configuration > Horloge, langue et rgion > Rgion et langue > Claviers et langues > Modifier les claviers. 3. Paramtrez la langue daffichage pour les programmes non Unicode dans le Panneau de configuration > Horloge, langue et rgion > Rgion et langue > Administration > Modifier les paramtres rgionaux. Ce n'est qu'aprs avoir effectu tous les paramtrages que vous pouvez entrer et afficher correctement les textes dans la langue souhaite.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

157

Cration et dition du projet 6.6 Cration d'un projet

6.6
6.6.1

Cration d'un projet


Cration d'un projet
Pour raliser votre tche d'automatisation au sein d'un gestionnaire de projets, vous devez d'abord crer un nouveau projet. Il sera cr dans le rpertoire que vous avez slectionn pour les projets, lorsque vous avez choisi la commande Outils > Paramtres et l'onglet "Gnral".

Nota SIMATIC Manager vous permet d'attribuer des noms dont le nombre de caractres est suprieur 8. Le nom du rpertoire du projet est tronqu aprs 8 caractres. Les noms de projets doivent de ce fait se distinguer dans leur 8 premiers caractres. Aucune diffrenciation n'est faite entre les majuscules et minuscules.

La marche suivre pour crer un projet est dcrite tape par tape dans Cration manuelle d'un projet ou Cration d'un projet l'aide de l'assistant.

Cration d'un projet l'aide de l'assistant


Le plus simple pour crer un nouveau projet, c'est d'avoir recours l'assistant "Nouveau projet". Pour l'appeler, choisissez la commande Fichier > Assistant "Nouveau projet". Il vous posera les questions ncessaires dans des botes de dialogue et crera le projet pour vous. Outre la station, la CPU, les dossiers Programmes, Sources et Blocs ainsi que l'OB1, vous pouvez dj y slectionner les OB de traitement d'erreurs et d'alarmes. La figure suivante illustre un projet cr l'aide de l'assistant.

Cration manuelle d'un projet


Vous avez galement la possibilit de crer un nouveau projet en choisissant la commande Fichier > Nouveau dans SIMATIC Manager. Ce projet contient dj l'objet "Sous-rseaux MPI".

Diffrentes faons de poursuivre


Vous disposez d'une grande libert d'action pour la suite du traitement de votre projet. Une fois votre projet cr, vous pouvez par exemple poursuivre votre travail en

158

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.6 Cration d'un projet


configurant d'abord le matriel, puis en crant le logiciel correspondant ou en crant d'abord le logiciel indpendamment d'un matriel configur.

Solution 1 : commencer par configurer le matriel


Si vous souhaitez commencer par la configuration matrielle, procdez comme dcrit dans le volume 2 du manuel "Configuration matrielle avec STEP 7". Aprs la configuration, les programmes S7 ou M7 requis pour la cration du logiciel seront dj insrs. Poursuivez ensuite en insrant les objets requis pour la cration du programme. Ecrivez ensuite le logiciel destin aux modules programmables.

Solution 2 : commencer par crire le logiciel


Vous pouvez, mme sans configuration matrielle pralable, crer le logiciel et procder la configuration ultrieurement. Pour saisir des programmes, il n'est pas ncessaire que la configuration matrielle d'une station soit fixe. Procdez de la manire suivante : 1. Insrez les dossiers du logiciel requis Programme S7/M7 sans station ni CPU dans votre projet. Vous dcidez uniquement si le dossier doit contenir des programmes pour du matriel S7 ou pour du matriel M7. 2. Ecrivez ensuite le logiciel destin aux modules programmables. 3. Configurez le matriel. 4. Aprs avoir configur le matriel, affectez le programme M7 ou S7 une CPU.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

159

Cration et dition du projet 6.6 Cration d'un projet

6.6.2

Insertion de stations
Dans un projet, la station reprsente la configuration matrielle de l'automate programmable et contient les donnes pour la configuration et le paramtrage des divers modules. Les nouveaux projets crs par l'assistant "Nouveau projet" contiennent dj une station. Vous pouvez galement crer la station en choisissant la commande Insertion > Station. Vous pouvez choisir les stations suivantes : station SIMATIC 300, station SIMATIC 400, station SIMATIC H, station SIMATIC PC, PC/PG, SIMATIC S5, autre station, c'est--dire non SIMATIC S7/M7, SIMATIC S5.

Les stations sont alors insres avec une dsignation par dfaut (par exemple, station SIMATIC 300 (1), station SIMATIC 300 (2), etc.). Vous pouvez remplacer ces dsignations par un nom plus vocateur. La marche suivre pour l'insertion est dcrite tape par tape dans Insertion d'une station.

Ralisation de la configuration matrielle


Dans la configuration matrielle, vous utilisez un catalogue des modules pour dfinir la CPU et tous les modules contenus dans sa commande. Vous dmarrez la configuration matrielle par double clic sur la station. Une fois que vous avez sauvegard et quitt la configuration matrielle, un programme S7 ou M7 est automatiquement cr comme dossier du logiciel ainsi qu'une table dew liaisons (objet "Liaisons"), et ce pour chaque module programmable que vous avez cr lors de la configuration. Les projets crs par l'assistant "Nouveau projet" contiennent dj ces objets. La marche suivre pour la configuration est dcrite tape par tape dans Configuration du matriel, des informations dtailles sont donnes dans Marche suivre pour la configuration d'une station.

Cration de la table des liaisons


Une table de liaisons vide (objet "Liaisons") est automatiquement cre pour chaque module programmable. Elle est utilise pour la dfinition de liaisons de communication entre modules programmables au sein d'un rseau. A son ouverture apparat une fentre contenant une table pour la dfinition de liaisons entre modules programmables. Des informations dtailles sont donnes dans Mise en rseau de stations au sein dun projet.

Etapes suivantes
Aprs avoir ralis la configuration matrielle, vous pouvez crer le logiciel pour vos modules programmables (voir aussi Insertion d'un programme S7/M7).

160

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.6 Cration d'un projet

6.6.3

Insertion d'un programme S7/M7


Le logiciel destin aux modules programmables est stock dans des dossiers d'objets. Pour les modules SIMATIC S7, un tel dossier d'objets s'appelle "ProgrammeS7", pour les modules SIMATIC M7, "ProgrammeM7". La figure suivante montre l'exemple d'un programme S7 dans un module programmable d'une station SIMATIC 300.

Composants dj crs
Un programme S7/M7 est automatiquement gnr comme dossier du logiciel pour chaque module programmable. Dans un programme S7 figurent dj : une table des mnmoniques (objet "Mnmoniques"), un dossier "Blocs" pour les blocs, contenant le premier bloc, un dossier "Sources" pour des programmes source.

Dans un programme M7 figurent dj : une table des mnmoniques (objet "Mnmoniques"), un dossier "Blocs".

Cration de blocs S7
Si vous souhaitez crire des programmes LIST, CONT ou LOG, vous slectionnez l'objet "Blocs" dj cr et choisissez ensuite la commande Insertion > Bloc S7. Le menu suivant vous permet de choisir le type de bloc : par exemple, bloc de donnes, type de donnes utilisateur (UDT), fonction, bloc fonctionnel, fonction, bloc d'organisation, table des variables (VAT). Vous saisissez votre programme LIST, CONT ou LOG dans le bloc (vide) qui s'ouvre alors. De plus amples informations sont donnes dans Marche suivre pour la cration de blocs de code ainsi que dans les manuels traitant des langages LIST, CONT et LOG.

Nota L'objet Donnes systme (SDB), que vous trouverez ventuellement dans des programmes utilisateur, est cr par le systme. Vous pouvez l'ouvrir, mais vous ne pouvez pas en modifier le contenu pour des raisons de cohrence. Il sert modifier la configuration aprs le chargement d'un programme et charger ces modifications dans le systme cible.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

161

Cration et dition du projet 6.6 Cration d'un projet

Blocs tirs de bibliothques standard


Pour crer vos programmes utilisateur, vous pouvez aussi utiliser des blocs tirs des bibliothques standard faisant partie du logiciel. Vous accdez aux bibliothques par la commande Fichier > Ouvrir. L'aide en ligne vous donnera des renseignements complmentaires sur l'utilisation des bibliothques standard ainsi que sur la cration de vos propres bibliothques sous Utilisation de bibliothques.

Cration de sources et diagrammes CFC


Si vous souhaitez crer une source dans un langage de programmation donn ou un diagramme CFC, vous slectionnez l'objet "Sources" ou "Diagrammes" dans le programme S7 et activez ensuite la commande Insertion > Logiciel S7. Le menu suivant vous permet de choisir la source correspondant au langage de programmation. Vous pouvez saisir le programme une fois la source vide ouverte. De plus amples informations sont donnes dans Principes de la programmation dans les sources LIST.

Cration de programmes pour M7


Si vous souhaitez crer des programmes pour le systme d'exploitation RMOS d'un module programmable de la gamme M7, vous slectionnez le programme M7 et choisissez la commande Insertion > Logiciel M7. Le menu suivant vous permet de choisir l'objet correspondant au langage de programmation ou au systme d'exploitation. Une fois l'objet cr ouvert, vous parvenez l'environnement de dveloppement correspondant.

Cration de table des mnmoniques


Une table des mnmoniques vide (objet "Mnmoniques") est automatiquement gnre lors de la cration d'un programme S7 ou M7. Son ouverture entrane galement celle de la fentre de l'diteur de mnmoniques et l'affichage de la table des mnmoniques qu'elle contient. De plus amples informations sont donnes dans Saisie de plusieurs mnmoniques globaux dans la table des mnmoniques.

Insertion de sources externes


Vous pouvez crer et diter des fichiers source avec des diteurs ASCII quelconques. Il est ensuite possible d'importer ces fichiers dans un projet et de les compiler en blocs individuels. Les blocs crs lors de la compilation d'une source importe sont placs dans le dossier Blocs. De plus amples informations sont donnes dans Insertion dune source externe.

162

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.7 Edition d'un projet

6.7

Edition d'un projet

Ouverture d'un projet


Pour ouvrir un projet, choisissez d'abord la commande Fichier > Ouvrir. Slectionnez ensuite un projet dans les botes de dialogue suivantes. La fentre de projet s'ouvre alors.

Nota Si ce projet ne figure pas dans la liste de projets propose, cliquez sur le bouton "Parcourir". Dans la bote de dialoge correspondante, vous pouvez chercher d'autres projets et reporter les projets trouvs dans la liste des projets. Vous pouvez modifier les entres dans la liste de projets en choisissant la commande Fichier > Grer.

Copie d'un projet


Vous copiez un projet en l'enregistrant sous un autre nom via la commande Fichier > Enregistrer sous. Vous copiez les lments de projet comme les stations, programmes, blocs etc. en choisissant la commande Edition > Copier. La marche suivre pour copier un projet est dcrite tape par tape dans Copie d'un projet et Copie d'un lment de projet.

Suppression d'un projet


Vous supprimez un projet en choisissant la commande Fichier > Supprimer. Vous supprimez des lments de projet comme les stations, programmes, blocs etc. en choisissant la commande Edition > Effacer. La marche suivre pour supprimer un projet est dcrite en dtail dans Suppression d'un projet et Suppression d'un lment de projet.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

163

Cration et dition du projet 6.7 Edition d'un projet

6.7.1

Recherche des logiciels requis pour un projet


Lorsque vous ditez un projet contenant des objets crs avec un autre logiciel, vous avez besoin de ce dernier. Quel que soit l'outil de dveloppement avec lequel vous ditez vos multiprojets, projets ou bibliothques, STEP 7 affiche les logiciels requis ainsi que leur version. Les informations relatives aux logiciels sont compltes lorsque : Le projet (ou tous les projets dans le multiprojet) ou la bibliothque ont t crs avec STEP 7 partir de la version V5.2. Vous avez recherch les logiciels requis pour un projet. Slectionnez cet effet le projet dans SIMATIC Manager, puis choisissez la commande de menu Edition > Proprits de l'objet. Dans la bote de dialogue qui s'ouvre, slectionnez l'onglet "Logiciels requis". Les informations affiches dans cette bote de dialogue prcisent si vous devez rechercher les logiciels requis pour le projet.

6.7.2

Gestion multilingue des textes


STEP 7 permet d'exporter des textes stocks dans un projet en une seule langue, pour les faire traduire, puis les rimporter et les afficher dans la langue de traduction. Les types de textes suivants autorisent cette gestion multilingue. Titres et commentaires : titres de bloc et commentaires de bloc, titres de rseau et commentaires de rseau, commentaires de ligne dans les programmes LIST, commentaires tirs des tables de mnmoniques, des tables de dclaration de variables, des types de donnes utilisateur et des blocs de donnes, commentaires, noms d'tat et noms de transition dans les programmes HiGraph, extensions des noms d'tape et des commentaires d'tape dans les programmes GRAPH.

Textes affichs : textes de message gnrs par STEP 7, GRAPH, HiGraph, PDIAG ou ProTool bibliothques de textes systme bibliothques de textes utilisateur textes personnaliss textes utilisateur

164

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.7 Edition d'un projet

Exportation
L'exportation est effectue pour tous les blocs et tables de mnmoniques se trouvant sous l'objet slectionn. Un fichier d'exportation est gnr pour chaque type de texte. Il contient une colonne pour la langue source et une pour la langue cible. Il est interdit de modifier les textes dans la langue source.

Importation
L'importation consiste adopter, dans le projet auquel appartient l'objet slectionn, le contenu des colonnes de la langue cible (colonne droite). Seules sont adopts les traductions dont les textes source (textes exports) correspondent avec une entre existante dans la colonne "Langue source".

Nota Lors de leur importation, les textes traduits sont remplacs dans le projet complet. Si vous avez p. ex. traduit des textes appartenant une CPU donne et que ces textes figurent encore d'autres endroits dans le projet, toutes les occurrences de ce texte seront remplaces !

Changement de langue
Vous pouvez choisir ici toutes les langues que vous avez indiques lors de l'importation dans le projet slectionn. Le changement de langue pour "Titre et commentaires" s'applique uniquement l'objet slectionn. Celui pour "Textes" s'applique toujours l'ensemble du projet.

Effacer langue
Lorsque vous effacez une langue, tous les textes traduits dans cette langue sont effacs dans la base de donnes interne. Il est recommand de toujours slectionner une langue de rfrence dans le projet. Il peut par exemple s'agir de votre langue nationale. N'effacez jamais cette langue. Lors de l'exportation et de l'importation, indiquez toujours cette langue de rfrence comme langue source. Choisissez la langue cible que vous souhaitez.

Rorganiser
Lors de la rorganisation, la langue est remplace par la langue actuellement paramtre. Il s'agit de la langue que vous avez slectionne comme "Langue des nouveaux blocs" dans les paramtres de traitement de commentaires. La rorganisation concerne uniquement le titre et les commentaires.

Traitement des commentaires


Vous pouvez slectionner la manire dont les commentaires des blocs tre traits dans des projets gestion multilingue de textes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

165

Cration et dition du projet 6.7 Edition d'un projet

Marche suivre

6.7.2.1

Types de textes gestion multilingue


A l'exportation, un fichier est cr pour chaque type de texte. Le nom de ce fichier est celui du type de texte et son extension est le format d'exportation (TypeTexte.Format : par ex. SymbolComment.CSV ou SymbolComment.XLS). Les fichiers ne respectant pas les conventions de nom ne peuvent tre utiliss comme source ou comme cible. Les textes traduisibles au sein d'un projet sont classs en types de texte suivants :
Type de texte BlockTitle BlockComment NetworkTitle NetworkComment LineComment InterfaceComment Signification Titre de bloc Commentaire de bloc Titre de rseau Commentaire de rseau Ligne de commentaire dans LIST Commentaire de Var_Section (table de dclaration dans les blocs de code) Commentaire d'UDT (type de donnes utilisateur) Commentaire de bloc de donnes SymbolComment S7UserTexts S7SystemTextLibrary Commentaire de mnmonique Textes saisis par l'utilisateur pouvant tre affichs sur des visuels Textes de bibliothques de textes systme pouvant tre intgrs des messages, actualiss de manire dynamique par rapport au temps de cycle et affichs sur la PG ou sur d'autres visuels

166

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.7 Edition d'un projet

Type de texte S7UserTextLibrary

Signification Textes de bibliothques de textes utilisateur pouvant tre intgrs des messages, actualiss de manire dynamique par rapport au temps de cycle et affichs sur la PG ou sur d'autres visuels S7-HiGraph Nom d'tat Commentaire d'tat Nom de transition Commentaire de transition S7-GRAPH Extension de nom d'tape Commentaire d'tape

HiGraphStateName HiGraphStateComment HiGraphTansitionName HiGraphTransitionComment S7GraphStateName S7GraphStateComment

Il peut encore exister d'autres types de textes spcifiques une application issus d'diteurs d'autres progiciels optionnels (p. ex. Protool, WinCC,.....). Ils ne sont pas dcrits ici.

6.7.2.2

Structure du fichier d'exportation


Le fichier d'exportation est toujours construit de la manire suivante. Exemple :

Voici les rgles fondamentales connatre : 1. Il est interdit de modifier, d'craser ou d'effacer : les champs prcds d'un "$_" (ce sont des mots-cl), les numros indiquant la langue (dans l'exemple ci-dessus, 7(1) pour la langue source Franais (France) et 9(1) pour la langue cible Anglais).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

167

Cration et dition du projet 6.7 Edition d'un projet

2. Un fichier contient toujours des textes du mme type. Dans notre exemple, il s'agit du type de texte Titre de reseau ($_Typ(NetworkTitle). Les rgles pour le traducteur qui dite ce fichier sont ranges dans le texte introductif du fichier d'exportation. 3. Les informations complmentaires sur les textes ou commentaires doivent toujours figurer avant la dfinition du type ($_Typ...) ou aprs la dernire colonne.

Nota Si la colonne de la langue cible contient seulement "512(32) $_Undefined", c'est qu'il n'en a pas t indiqu lors de l'exportation. Pour plus de clart, vous pouvez remplacer cette chane par la langue cible, "9(1) Anglais (USA)" par exemple. Dans ce cas, il faudra contrler la langue cible propose l'importation et la choisir de nouveau au besoin. Vous pouvez masquer des textes que vous ne souhaitez pas afficher dans la langue cible en utilisant le mot-cl $_hide. Ceci ne s'applique ni aux commentaires de variables (InterfaceComment), ni aux commentaires de mnmoniques (SymbolComment).

168

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.7 Edition d'un projet

Format du fichier d'exportation


Vous pouvez choisir le format dans lequel vous souhaitez stocker les fichiers d'expportation. Si vous choisissez le format CSV, sachez que lors de leur dition avec EXCEL, ce dernier n'ouvre un fichier CSV correctement que par la commande du menu Fichier. L'ouverture d'un fichier CSV par double-clic dans l'Explorateur le rend frquemment inutilisable. L'dition de fichiers CSV avec EXCEL sera plus facile si vous avez recours au procd suivant : 1. Ouvrir les fichiers d'exportation avec EXCEL. 2. Enregistrer les fichiers en tant que fichiers XLS. 3. Traduire les textes dans les fichiers XLS. 4. Enregistrer les fichiers XLS en format CSV avec EXCEL.

Nota Il est interdit de renommer les fichiers d'exportation.

6.7.2.3

Gestion de textes utilisateur dont la police de langue n'est pas installe


Vous avez galement la possibilit d'exporter, de compiler, d'importer puis d'enregistrer dans votre projet, des textes utilisateur dont la police de langue n'est pas installe dans votre systme d'exploitation. Cependant, vous pouvez uniquement afficher ces textes sur un ordinateur sur lequel la police de langue correspondante est installe. Pour traduire des textes utilisateurs en russe, p. ex., procdez de la manire suivante lorsque la police cyrillique n'est pas installe : 1. Exportez les textes utilisateur traduire avec comme langue source l'allemand et comme langue cible le russe. 2. Envoyez le fichier d'exportation au traducteur sur l'ordinateur duquel la police cyrillique est installe. 3. Importez les fichiers d'exportation traduits. Rsultat : le projet existe prsent dans plusieurs langues (allemand et russe) sur votre ordinateur. 4. Enregistrez le projet global et envoyez-le au client final qui aura la possibilit d'afficher les textes russes sur son ordinateur sur lequel la police cyrillique est installe.

6.7.2.4

Informations sur le fichier-journal


Les messages d'erreur et avertissements rsultant de la gestion multilingue des textes sont dits dans un fichier-journal de format TXT. Ce fichier se trouve dans le mme rpertoire que les fichiers d'exportation. Les messages sont gnralement implicites. Voici toutefois quelques explications complmentaires :

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

169

Cration et dition du projet 6.7 Edition d'un projet

Avertissement
Le texte 'xyz' existe dj dans le fichier 'xyz'. Les autres occurrences du texte seront ignores.

Explication
Un texte est utilis en tant que cl pour la traduction, quelle que soit sa langue. Lorsqu'un texte identique est utilis dans plusieurs langues ou alors plusieurs fois dans une mme langue, il ne peut plus tre affect de manire univoque et n'est de ce fait pas traduit. Exemple :

Ceci est valable uniquement pour les titres et les commentaires. Solution Renommez les textes concerns dans le fichier de texte export (dans l'exemple, il faut utiliser un seul terme au lieu des trois termes allemands diffrents) et importez de nouveau les textes.

6.7.2.5

Optimisation du modle traduire


Vous pouvez simplifier le "matriau source" de la traduction en unifiant les termes ou expressions ayant le mme sens.

Exemple
Avant la simplification (fichier d'exportation)

Rduction une mme expression :

170

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.7 Edition d'un projet

Aprs la simplification (c'est--dire aprs importation suivie d'une exportation) :

6.7.2.6

Optimisation de la traduction
Pour les projets dont la structure et les textes sont analogues ceux d'un projet prcdent, vous pouvez optimiser l'opration de traduction. Le procd dcrit ci-aprs est recommand en particuIier pour les projets que vous avez crs par copie et modification ultrieure.

Condition requise
Il y a dj une cible d'exportation.

Marche suivre
1. Copiez les fichiers d'exportation dans le rpertoire du nouveau projet traduire. 2. Ouvrez le nouveau projet et exportez les textes (commande Outils > Gestion multilingue des textes > Exporter) La cible d'exportation existant dj, un dialogue vous demande s'il faut la complter ou la remplacer. 3. Cliquez sur le bouton "Complter". 4. Faites traduire les fichiers d'exportation (seuls les nouveaux textes sont traduire). 5. Importez pour finir les fichiers traduits.

6.7.2.7

Masquer des textes dans certaines langues


Avec le mot-cl "$_hide", vous avez la possibilit de masquer des textes que vous ne souhaitez pas afficher dans la langue cible. Ceci ne s'applique pas aux commentaires de variables (InterfaceComment) et de mnmoniques (SymbolComment).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

171

Cration et dition du projet 6.7 Edition d'un projet

Exemple :

172

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.7 Edition d'un projet

6.7.3
6.7.3.1

Carte mmoire micro (MMC) en tant que support de donnes


Ce qu'il faut savoir sur les cartes mmoire micro (MMC)
Les cartes mmoire micro (MMC) sont des cartes enfichables caractrises par leur forme extrmement compacte que vous pouvez utiliser, par exemple, pour une CPU 31xC ou un IM 151/CPU (ET 200S). Le nouveau concept mmoire des cartes MMC est dcrit ci-aprs.

Contenu de la carte MMC


La carte MMC assure aussi bien la fonction de mmoire de chargement que la fonction de support de donnes.

Carte mmoire micro (MMC) en tant que mmoire de chargement


Les cartes MMC contiennent la mmoire de chargement complte d'une CPU adapte pour les cartes MMC. Celle-ci contient le programme avec les blocs (OB, DB, FC,...) de mme que la configuration matrielle. Ces contenus ont une influence sur le mode de fonctionnement de la CPU. Lorsque la carte mmoire micro est utilise comme mmoire de chargement, il est possible de transfrer des blocs, de mme que la configuration matrielle l'aide de fonctions de chargement (p. ex. Charger dans CPU). Les blocs chargs dans la CPU sont immdiatement actifs, la configuration matrielle l'tant aprs le dmarrage de la CPU.

Comportement aprs un effacement gnral


Aprs un effacement gnral, les blocs se trouvent toujours sur la carte MMC.

Chargement et effacement
Vous pouvez craser les blocs sur la carte MMC. Vous pouvez effacer les blocs sur la carte MMC. Vous ne pouvez pas restaurer les blocs crass ou effacs.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

173

Cration et dition du projet 6.7 Edition d'un projet

Accs aux blocs de donnes sur la carte MMC


Vous avez la possibilit de traiter les blocs de donnes et leur contenu sur la carte MMC, ce qui s'avre tout particulirement utile pour de grandes quantits de donnes ou pour des donnes rarement utilises dans le programme utilisateur. Vous disposez cet effet des nouvelles fonctions systme : SFC 82 : Cration d'un bloc de donnes dans la mmoire de chargement SFC 83 : Lecture d'un bloc de donnes dans la mmoire de chargement SFC 84 : Ecriture dans un bloc de donnes dans la mmoire de chargement

Carte MMC et protection par mot de passe


Si une CPU quipe d'une carte mmoire micro (MMC) (p. ex. une CPU de la famille 300-C) est protge par mot de passe, ce dernier est galement demand dans SIMATIC Manager, l'ouverture de cette carte mmoire micro sur la PG ou le PC.

Affichage de l'occupation mmoire avec STEP 7


Dans la bote de dialogue de l'tat du module (onglet "Mmoire"), l'affichage de l'occupation de la mmoire de chargement regroupe l'EPROM et la RAM. Sur la carte MMC, le comportement des blocs correspond 100% celui de l'EPROM.

6.7.3.2

Utilisation d'une micro-carte mmoire (MMC) comme support de donnes


Avec STEP 7, vous pouvez utiliser la micro-carte mmoire (MMC) SIMATIC comme un support de donnes externe tout fait normal. Dans la mesure o vous avez choisi une micro-carte mmoire (MMC) de taille suffisante, vous pouvez y transfrer toutes les donnes visibles dans l'Explorateur de fichiers du systme d'exploitation Vous pouvez ainsi mettre disposition de vos collaborateurs tous les dessins, instructions d'utilisation, descriptions fonctionnelles, etc. supplmentaires de votre installation.

6.7.3.3

Fichier carte mmoire


Les fichiers carte mmoire (*.wld) sont crs pour : l'automate logiciel (Software PLC) WinLC (WinAC Base et WinAC RTX) et les cartes CPU enfiches dans le PC (SlotPLCs) CPU 41x-2 PCI (WinAC Slot 412 et WinAC Slot 416).

Vous pouvez enregistrer les blocs et donnes systme pour WinLC ou la CPU 41x-2 PCI dans un fichier carte mmoire comme vous le faites avec une carte mmoire S7. Le contenu de ces fichiers quivaut celui d'une carte mmoire correspondante de CPU S7. Vous avez la possibilit de charger ce fichier dans la mmoire de chargement d'un WinLC ou de la CPU 41x-2 PCI l'aide du panneau de commande. Ceci correspond au chargement du programme utilisateur avec STEP 7.

174

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration et dition du projet 6.7 Edition d'un projet

Avec les CPU 41x-2 PCI, ce fichier peut tre charg automatiquement lors du dmarrage du systme d'exploitation du PC, lorsque la CPU 41x-2 PCI ne possde pas de mmoire de sauvegarde et fonctionne uniquement avec une carte RAM (fonction "Autoload"). Windows considre les fichiers carte mmoire comme des fichiers "classiques" que vous pouvez dplacer, effacer ou copier sur un support de donnes avec l'Explorateur. De plus amples informations sont fournies dans la documentation correspondante relative aux produits WinAC.

6.7.3.4

Enregistrement des donnes du projet sur une micro-carte mmoire (MMC)


Avec STEP 7, vous pouvez enregistrer les donnes de votre projet STEP 7 et d'autres donnes quelconques (p. ex. fichiers WORD ou Excel) sur une micro-carte mmoire (MMC) SIMATIC d'une CPU adapte ou de votre PG/PC. L'avantage rside dans le fait que vous pouvez ainsi galement accder aux donnes du projet avec des consoles de programmation sur lesquelles le projet n'est pas enregistr.

Conditions
L'enregistrement de donnes du projet sur une micro-carte mmoire MMC est uniquement possible si celle-ci est enfiche dans le logement correspondant de la CPU adapte ou de votre PG/PC et si une liaison en ligne est tablie. La taille de la micro-carte mmoire doit tre suffisante pour les donnes enregistrer.

Donnes pouvant tre enregistres sur une micro-carte mmoire (MMC)


Dans la mesure o vous avez choisi une micro-carte mmoire (MMC) de taille suffisante, vous pouvez y transfrer toutes les donnes visibles dans l'Explorateur de fichiers du systme d'exploitation, comme p. ex. : donnes de projet STEP 7 compltes, configurations de stations, tables des mnmoniques, blocs et sources, texte multilingue, autres donnes quelconques, comme p. ex. des fichiers WORD ou Excel.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

175

Cration et dition du projet 6.7 Edition d'un projet

176

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Edition de projets avec des versions differentes de STEP 7


Edition de projets et bibliothques de la version 2
La version V5.2 de STEP 7 ne prend plus en charge la modification de projets et de bibliothques de la version 2. Si vous ditez des projets ou bibliothques de cette version, des incohrences risquent de se produire qui rendraient impossible l'dition avec des versions plus anciennes de STEP 7. Pour continuer diter des projets ou des bibliothques de la version 2, il faut avoir recours une version de STEP 7 antrieure V5.1.

7.1

7.2

Extension d'esclaves DP crs avec des versions antrieures de STEP 7

Constellations pouvant rsulter de l'addition de nouveaux fichiers GSD


Il est possible d'ajouter de nouveaux esclaves DP au catalogue du matriel de HW Config en installant de nouveaux fichiers GSD. Une fois l'installation effectue, ils sont disponibles dans le dossier "Autres appareils de terrain". Vous ne pouvez plus modifier ou tendre comme d'habitude la configuration d'un esclave DP modulaire lorsque il a t configur avec une version antrieure de STEP 7 et que il n'a pas t reprsent dans le catalogue du matriel par un fichier GSD, mais par un fichier de type et que un nouveau fichier GSD a cras l'ancienne installation.

Solution
Si vous voulez utiliser l'esclave DP avec de nouveaux modules qui sont dcrits dans le fichier GSD : Effacez l'esclave DP et configurez-le de nouveau - il ne sera plus dcrit alors par le fichier de type, mais entirement par le fichier GSD.

Si vous comptez utiliser l'esclave DP sans les nouveaux modules qui ne sont dcrits que dans le fichier GSD : Slectionnez le dossier "Autres APPAREILS DE TERRAIN/Esclaves DP PROFIBUS compatibles" sous PROFIBUS DP dans la fentre "Catalogue du matriel". C'est l que STEP 7 range les "anciens" fichiers de type lorsqu'ils sont remplacs par de nouveaux fichiers GSD. Vous y trouverez les modules permettant l'extension de l'esclave DP dj configur.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

177

Edition de projets avec des versions differentes de STEP 7 7.2 Extension d'esclaves DP crs avec des versions antrieures de STEP 7

Constellation aprs un remplacement des fichiers de type par des fichiers GSD dans STEP 7 V5.1 Servicepack 4
A partir de STEP 7 V5.1, Servicepack 4, les fichiers de types ont t presque tous remplacs par des fichiers GSD ou mis jour. Le remplacement n'est effectu que pour les profils de catalogue livrs par STEP 7 mais pas pour les profils de catalogue que vous avez vous-mme crs. Les esclaves DP dont les proprits ne sont plus dfinies dans les fichiers de type mais dans les fichiers GSD se trouvent toujours au mme endroit dans le catalogue du matriel. Les "anciens" fichiers de type n'ont pas t effacs mais se trouvent un autre endroit du catalogue. Ils se trouvent sous "Autres appareils de terrain\Esclaves Profibus-DP compatibles\...".

Extension d'une configuration DP existante avec STEP 7 partir de V5.1, Servicepack 4


Si vous souhaitez tendre un esclave DP modulaire dans un projet cr avec une version de STEP 7 antrieure V5.1 SP4, vous ne pouvez pas utiliser les blocs ou les modules l'endroit habituel dans le catalogue du matriel. Utilisez l'esclave DP sous "Autres APPAREILS DE TERRAIN\Esclaves Profibus-DP compatibles\...".

Edition d'une configuration DP avec une version de STEP 7 antrieure V5.1 SP4
Si vous configurez un esclave DP "mis jour" avec STEP 7 partir de V5.1 Servicepack 4 et ditez ensuite le projet avec une version antrieure (version de STEP 7 antrieure V5.1, SP4), l'esclave DP n'est pas ditable car le fichier GSD est inconnu la version de STEP 7. Solution : Vous pouvez installer le fichier GSD requis dans l'ancienne version de STEP 7. Enregistrez pour cela le fichier GSD dans le projet. STEP 7 utilisera le nouveau fichier GSD lors de l'dition ultrieure du projet avec la version actuelle de STEP 7.

178

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Edition de projets avec des versions differentes de STEP 7 7.3 Editer des configurations actuelles avec des versions antrieures de STEP 7

7.3

Editer des configurations actuelles avec des versions antrieures de STEP 7

Configuration de l'change de donnes direct


Configuration de l'change de donnes direct avec un matre DP sans rseau matre DP : impossible avec STEP 7 V5, Servicepack 2 (ou plus ancien), possible avec STEP 7 V5.0 partir de Servicepack 3 et avec STEP 7 V5.1.

Si vous enregistrez un matre DP sans rseau matre DP avec des affectations configures pour l'change de donnes direct, puis continuez diter ce projet avec une version antrieure de STEP 7 V5 (STEP 7 V5.0, SP2 (ou antrieure)), les effets suivants peuvent se produire : Un rseau matre DP s'affiche avec des esclaves DP utiliss par STEP 7 pour stocker de manire interne les affectations pour l'change direct. Ces esclaves DP ne font pas partie du rseau matre DP indiqu. Vous ne pouvez connecter ce matre DP ni un nouveau rseau matre ni un rseau matre orphelin.

Liaison en ligne la CPU via l'interface PROFIBUS DP


Configuration de l'interface PROFIBUS DP sans rseau matre DP : STEP 7 V5.0, Servicepack 2 (ou antrieur) : une liaison la CPU via cette interface n'est pas possible. A partir de STEP 7 V5.0 partir de Servicepack 3 : la compilation gnre des donnes systme pour l'interface PROFIBUS DP ; une liaison la CPU via cette interface est possible aprs le chargement.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

179

Edition de projets avec des versions differentes de STEP 7 7.4 Utiliser les configurations PC SIMATIC partir des versions prcdentes

7.4

Utiliser les configurations PC SIMATIC partir des versions prcdentes

Configurations PC des projets de STEP 7 V5.1 (jusqu' SP 1)


A partir de la version STEP 7 V5.1, Servicepack 2, vous pouvez charger des liaisons dans la station PC, tel que c'est le cas pour une station S7-300 ou S7-400 (sans passer par un fichier de configuration). Cependant, un fichier de configuration est toujours cr lors de l'enregistrement et de la compilation afin de pouvoir transmettre, galement par ce moyen, la configuration sur la station PC cible. Par consquent, les fichiers de configuration qui viennent d'tre crs contiennent des informations qui ne pouvaient pas tre interprtes par les anciennes stations PC. STEP 7 s'adapte automatiquement cet tat: Lorsque vous reconfigurez une station SIMATIC PC avec STEP 7 partir de V5.1, Servicepack 2, STEP 7 part du principe que la station PC cible a t configure au moyen du CD SIMATIC NET partir du 7/2001), savoir que le S7RTM (gestionnaire Runtime) est install. Les donnes de configuration sont ainsi cres de sorte pouvoir tre interprtes par une "nouvelle" station PC. Lorsque vous utilisez une station configure SIMATIC PC partir d'une version prcdente (par exemple, une station PC qui a t configure avec STEP 7 V5.1, Servicepack 1),.STEP 7 ne part pas du principe que la station PC cible a t configure au moyen du CD SIMATIC NET partir du 7/2001. Les donnes de configuration sont cres de sorte pouvoir tre interprtes par une "ancienne" station PC.

Si ce comportement prdfini n'est pas adapt, vous pouvez le modifier, comme dcrit ci-aprs :

Paramtrage dans le contexte "Configuration du matriel"


1. Ouvrez la configuration matrielle de la station PC. 2. Cliquez avec le bouton droit de la souris dans la fentre de la station (dans la surface blanche). 3. Slectionnez le menu contextuel "Proprits de la station". 4. Activez ou dsactivez la case cocher sous "Compatibilit".

Paramtrage dans le contexte "Configuration de rseaux"


1. Ouvrez la configuration du rseau. 2. Slectionnez la station PC. 3. Slectionnez la commande Edition > Proprits de l'objet. 4. Slectionnez l'onglet "Configuration" dans la bote de dialogue. 5. Activez ou dsactivez la case cocher sous "Compatibilit".

Configurations PC partir des projets STEP 7 V5.0


Si vous souhaitez continuer exploiter, avec STEP 7 partir de V5.0, Servicepack 3, une station SIMATIC PC configure afin de configurer de nouveaux composants qui sont accepts uniquement partir de la version Servicepack 3, vous devez alors convertir la station :
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

180

Edition de projets avec des versions differentes de STEP 7 7.4 Utiliser les configurations PC SIMATIC partir des versions prcdentes

1. Slectionnez la station SIMATIC PC dans SIMATIC Manager et slectionnez la commande Edition > Proprits de l'objet. 2. Dans l'onglet "Fonctionnalit" de la bote de dialogue des proprits, cliquez sur le bouton "Extension". La station SIMATIC PC est ensuite convertie et doit tre exploite uniquement avec STEP 7 V5.0, Servicepack 3 ou des versions plus rcentes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

181

Edition de projets avec des versions differentes de STEP 7 7.5 Reprsentation de modules ayant t configurs avec des versions plus rcentes de STEP 7 ou avec un progiciel optionnel

7.5

Reprsentation de modules ayant t configurs avec des versions plus rcentes de STEP 7 ou avec un progiciel optionnel
A partir du Servicepack 3 de STEP 7 V5.1, tous les modules sont reprsents, mme ceux qui ont t configurs dans une version plus rcente de STEP 7 et qui, de ce fait, sont inconnus pour une version plus "ancienne" de STEP 7. Il est galement possible de reprsenter les modules qui ont t configurs avec un progiciel optionnel - mme lorsque ce dernier n'est pas install sur la PG sur laquelle vous ouvrez le projet. Dans les versions prcdentes de STEP 7, ces modules et les objets de hirarchie infrieure qu'ils contiennent n'taient pas reprsents. Dans la version actuelle, ils sont visibles et en partie ditables. A l'aide de cette fonction, vous pouvez p. ex. galement modifier des programmes utilisateur lorsque le projet a t cr sur un autre ordinateur avec une version plus rcente de STEP 7 et que le module (p. ex. une CPU) ne peut pas tre configur avec la version existante de STEP 7 du fait qu'il possde p. ex. de nouvelles proprits et de nouveaux paramtres. Le module "inconnu" pour STEP 7 apparat sous forme dobjet gnrique avec la reprsentation suivante :

Lorsque vous ouvrez le projet avec une version approprie de STEP 7 ou avec le progiciel optionnel adquat, tous les modules s'affichent dans la reprsentation habituelle et sont nouveau utilisables sans restriction.
PG avec version de STEP 7 plus rcente / avec progiciel optionnel PG avec version de STEP 7 plus ancienne / sans progiciel optionnel

>>>---Donnes projet--->>> Reprsentation avec module plus rcent "connu" Reprsentation du module plus rcent sous forme de module "inconnu"

182

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Edition de projets avec des versions differentes de STEP 7 7.5 Reprsentation de modules ayant t configurs avec des versions plus rcentes de STEP 7 ou avec un progiciel optionnel

Utilisation de l'objet gnrique dans SIMATIC Manager


Lorsque vous ouvrez le projet, un message vous informe qu'un ou plusieurs objets d'un type donn ne peuvent pas tre reprsents. L'objet gnrique est cependant visible sous la station. Tous les objets de niveau hirarchique infrieur, comme p. ex. le programme utilisateur, les donnes systme et la table des liaisons sont visibles et peuvent tre chargs depuis SIMATIC Manager. Vous avez la possibilit d'ouvrir, d'diter, de compiler et de charger le programme utilisateur (p. ex. des blocs). Les projets contenant des objets gnriques prsentent cependant les restrictions suivantes : La copie dune station contenant un objet gnrique n'est pas possible. La commande "Enregistrer le projet sous..." ne peut pas tre excute avec loption "avec rorganisation".

Utilisation de l'objet gnrique dans la configuration matrielle


L'objet gnrique est reprsent l'emplacement sur lequel il a t configur. Vous avez la possibilit d'ouvrir le module, mais ne pouvez ni le reparamtrer, ni le charger. Les proprits du module sont limites l'onglet "Objet gnrique". La configuration de la station ne peut pas tre modifie (vous ne pouvez p. ex. pas ajouter de nouveaux modules). Le diagnostic du matriel (p. ex. l'ouverture de la station en ligne) est galement possible (avec des restrictions ; les nouvelles possibilits de diagnostic et les textes de diagnostic ne sont pas pris en compte).

Utilisation de l'objet gnrique dans la configuration de rseau


L'objet gnrique est galement reprsent dans NetPro. Le nom du module dans la station correspondante est prcd d'un point d'interrogation. Vous pouvez ouvrir un projet contenant un objet gnrique seulement protg contre l'criture dans NetPro. Lorsque vous ouvrez le projet avec protection contre l'criture vous pouvez afficher et imprimer la configuration de rseau. L'tat des liaisons est galement possible ; du moins, les informations prises en charge dans la version prcdentes de STEP 7 sont affiches. Vous n'avez cependant pas la possibilit d'effectuer de modifications, de les enregistrer, de les compiler ou de les charger.

Rinstallation de modules
Si le module provient d'une version plus rcente de STEP 7 et qu'une mise jour matrielle est disponible pour ce module, vous pouvez remplacer l'objet gnrique par le module "rel". Ds l'ouverture de la station, vous obtenez des informations sur les mises jour matrielles ou logiciels optionnels ncessaires et avez la possibilit d'installer les mises jour matrielles depuis cette bote de dialogue. Une alternative consiste rinstaller les modules par le biais du menu Dmarrer ou dans HW Config via la commande de menu Outils > Installer mises jour matrielles.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

183

Edition de projets avec des versions differentes de STEP 7 7.5 Reprsentation de modules ayant t configurs avec des versions plus rcentes de STEP 7 ou avec un progiciel optionnel

184

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

8
8.1

Dfinition de mnmoniques
Adressage absolu et adressage symbolique
Dans un programme STEP 7, vous utilisez des oprandes comme des signaux d'E/S, des mmentos, des compteurs, des temporisations, des blocs de donnes et des blocs fonctionnels. Vous pouvez accder ces oprandes par adressage absolu dans votre programme. Toutefois, la lisibilit de vos programmes sera grandement amliore si vous faites plutt appel des mnmoniques (par exemple, Moteur_A_Marche ou dsignations usuelles dans le systme d'identification de votre secteur d'activit). Il est alors possible d'accder aux oprandes de votre programme utilisateur via ces mnmoniques.

Adresse absolue
Une adresse absolue est compose d'un identificateur d'oprande et d'une adresse (par exemple A 4.0, E 1.1, M 2.0, FB21).

Adressage symbolique
Vous pouvez structurer votre programme de manire plus lisible et faciliter ainsi la correction d'erreurs en affectant des noms symboliques (mnmoniques) aux adresses absolues. STEP 7 est en mesure de convertir automatiquement les mnmoniques dans les adresses absolues requises. Si vous prfrez adresser des ARRAY, STRUCT, blocs de donnes, donnes locales, blocs de code et types de donnes utilisateur de manire symbolique, vous devez cependant d'abord affecter un mnmonique aux adresses absolues, avant de pouvoir raliser l'adressage symbolique. Vous pouvez par exemple affecter le mnmonique Moteur_Marche l'oprande A 4.0, puis utiliser Moteur_Marche comme adresse dans une instruction de programme. L'adressage symbolique vous permet de dterminer plus aisment dans quelle mesure des lments du programme correspondent aux composants de votre projet de commande du processus.

Nota Dans un mnmonique (dsignation d'une variable), l'utilisation successive de deux caractres de soulignement n'est pas autorise (comme par exemple : Moteur_Marche).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

185

Dfinition de mnmoniques 8.1 Adressage absolu et adressage symbolique

Assistance lors de la saisie d'un programme


Dans les langages de programmation CONT, LOG et LIST, vous pouvez saisir les adresses, paramtres et noms de blocs de manire absolue ou symbolique. La commande Affichage > Reprsentation symbolique permet d'aller et venir entre l'affichage de l'adressage absolu et celui de l'adressage symbolique. Pour faciliter la programmation utilisant l'adressage symbolique, vous pouvez afficher les adresses absolues et commentaires correspondant aux mnmoniques utiliss. Choisissez cet effet la commande Affichage > Informations mnmonique. Aprs chaque instruction LIST, la ligne de commentaire est remplace en consquence. Vous ne pouvez pas diter l'affichage ; vous devez effectuer les modifications dans la table des mnmoniques ou dans la table de dclaration des variables. La figure suivante montre une informations sur mnmoniques dans le langage LIST.

A l'impression d'un bloc, la reprsentation en cours de l'cran est imprime avec le commentaire d'instruction ou le commentaire de mnmonique.

186

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.2 Mnmoniques globaux et mnmoniques locaux

8.2

Mnmoniques globaux et mnmoniques locaux


Un mnmonique (nom symbolique) vous permet d'utiliser des dsignations parlantes la place d'adresses absolues. En combinant l'usage de mnmoniques courts et de commentaires explicites, vous rpondez la fois aux besoins d'une programmation concise et d'une programmation bien documente. L'on distingue les mnmoniques locaux des mnmoniques globaux.
Mnmoniques globaux Domaine de validit Caractres autoriss ils sont valables dans l'ensemble du programme utilisateur, ils peuvent tre utiliss par tous les blocs, leur signification est la mme dans tous les blocs, leur nom doit tre univoque dans l'ensemble du programme utilisateur. lettres, chiffres, caractres spciaux, trmas l'exclusion de 0x00, 0xFF et des guillemets, lorsque vous utilisez des caractres spciaux dans un mnmonique, ce dernier doit tre plac entre guillemets. lettres, chiffres, caractre de soulignement (_), Mnmoniques locaux ils sont connus uniquement dans le bloc dans lequel ils ont t dfinis, vous pouvez utiliser le mme nom dans diffrents blocs des fins diffrentes.

Utilisation

Vous pouvez dfinir des mnmoniques globaux pour : entres/sorties (E, EB, EW, ED, A, AB, AW, AD) entres, sorties de priphrie (PE, PA) mmentos (M, MB, MW, MD) temporisations (T)/ compteurs (Z) blocs de code (OB, FB, FC, SFB, SFC) blocs de donnes (DB) types de donnes utilisateur table des variables (VAT)

Vous pouvez dfinir des mnmoniques locaux pour : paramtres de blocs (paramtres d'entre, de sortie, d'entre/sortie), donnes statiques d'un blocs donnes temporaires d'un bloc

Endroit de dfinition

table des mnmoniques

table de dclaration des variables du bloc

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

187

Dfinition de mnmoniques 8.3 Reprsentation des mnmoniques globaux et des mnmoniques locaux

8.3

Reprsentation des mnmoniques globaux et des mnmoniques locaux


Dans la section des instructions d'un programme, vous pouvez distinguer les mnmoniques globaux des mnmoniques locaux de la manire suivante : Les mnmoniques de la table des mnmoniques (globaux) sont reprsents entre guillemets (" "). Les mnmoniques de la table de dclaration des variables du bloc (locaux) sont prcds du signe "#".

Vous n'avez pas besoin de saisir vous-mme les guillemets ou le signe #. Le mnmonique sera automatiquement complt aprs vrification de la syntaxe lors de la saisie du programme en CONT, LOG ou LIST. Toutefois, lorsque la confusion est possible, par exemple parce que des mnmoniques identiques ont t utiliss dans la table des mnmoniques et dans la table de dclaration des variables, vous devez identifier de manire explicite le mnmonique global que vous souhaitez utiliser. En effet, le logiciel interprte les mnmoniques non identifis comme tant des variables locales. De plus, l'identification des mnmoniques globaux s'avre ncessaire lorsque ceux-ci contiennent des caractres d'espacement. Ces rgles et l'identification des mnmoniques valent galement pour la programmation dans une source LIST. Dans le cas de la saisie oriente source, les identifications ne sont pas compltes automatiquement, cependant elles ne sont requises que s'il y a un risque de confusion.

Nota La commande Affichage > Reprsentation symbolique permet d'aller et entre l'affichage des mnmoniques globaux dclars et celui des adresses absolues correspondantes.

188

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.4 Dfinition de la priorit de l'oprande (symbolique/absolu)

8.4

Dfinition de la priorit de l'oprande (symbolique/absolu)


Grce la priorit de l'oprande, vous pouvez rtablir le code du programme souhaits en cas de modifications dans la table des mnmoniques, de modification des noms de paramtres de blocs de donnes ou de blocs fonctionnels ou de modification de noms de composants d'UDT ou de multiinstances qui y font rfrence. Dfinissez la priorit de l'oprande pour chacune des situations suivantes. Afin que vous puissiez profiter des avantages de la priorit de l'oprande, nous vous recommandons de terminer toute procdure de modification avant d'en dmarrer une d'un autre type. Pour paramtrer la priorit de l'oprande, slectionnez le dossier Blocs dans SIMATIC Manager, puis choisissez la commande de menu Edition > Proprits de l'objet. Vous pouvez effectuer le paramtrage souhait dans la page d'onglet "Priorit de l'oprande". Pour paramtrer la priorit de l'oprande optimale, il convient de diffrencier les situations suivantes pour les modifications : correction de noms individuels remplacement de noms ou d'affectations mnmoniques, variables, paramtres ou composants nouveaux

Nota Sachez que lors d'appels de blocs ("Call FC" ou "Call FB, DB"), seul le numro de bloc absolu est dterminant pour le bloc de code - mme lorsque la priorit de l'oprande symbolique est paramtre !

Correction de noms individuels


Exemples : Il s'agit de corriger un nom dans la table des mnmoniques ou dans l'diteur de programmes/diteur de blocs en raison d'une erreur de frappe. Ceci s'applique tous les noms dans la table des mnmoniques, de mme qu' tous les noms de paramtres, variables ou composants qu'il est possible de modifier avec l'diteur de programmes/diteur de blocs.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

189

Dfinition de mnmoniques 8.4 Dfinition de la priorit de l'oprande (symbolique/absolu)

Dfinition de la priorit de l'oprande :

Ralisation des modifications :


Slectionnez le dossier Blocs dans SIMATIC Manager, puis choisissez la commande de menu Edition > Vrifier la cohrence des blocs. La fonction "Vrifier la cohrence des blocs" ralise les modifications ncessaires dans les blocs individuels.

Remplacement de noms ou d'affectations


Exemples : Les noms d'affectations existantes sont remplacs dans la table des mnmoniques. De nouvelles adresses sont affectes des affectations existantes dans la table des mnmoniques. Des noms de variables, paramtres ou composants sont remplacs dans l'diteur de programmes/diteur de blocs.

190

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.4 Dfinition de la priorit de l'oprande (symbolique/absolu)

Paramtrage de la priorit de l'oprande :

Ralisation des modifications:


Slectionnez le dossier Blocs dans SIMATIC Manager, puis choisissez la commande de menu Edition > Vrifier la cohrence des blocs. La fonction "Vrifier la cohrence des blocs" ralise les modifications ncessaires dans les blocs individuels.

Mnmoniques, variables, paramtres ou composants nouveaux


Exemple : Vous dfinissez de nouveaux mnmoniques pour des adresses utilises dans le programme. Vous ajoutez de nouvelles variables ou de nouveaux paramtres aux blocs de donnes, UDT ou blocs fonctionnels.

Dfinition de la priorit de l'oprande :


Dans le cas de modifications dans la table des mnmoniques.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

191

Dfinition de mnmoniques 8.4 Dfinition de la priorit de l'oprande (symbolique/absolu)

Dans le cas de modifications dans l'diteur de programmes/diteur de blocs.

Ralisation des modifications:


Slectionnez le dossier Blocs dans SIMATIC Manager, puis choisissez la commande de menu Edition > Vrifier la cohrence des blocs. La fonction "Vrifier la cohrence des blocs" ralise les modifications ncessaires dans les blocs individuels.

192

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.5 Table des mnmoniques pour mnmoniques globaux

8.5

Table des mnmoniques pour mnmoniques globaux


Dans la table des mnmoniques, vous dfinissez les mnmoniques globaux. Une table des mnmoniques (objet "Mnmoniques") vide est automatiquement gnre lorsque vous crez un programme S7 ou M7.

Domaine de validit
La table des mnmoniques vaut pour le module auquel le programme est associ. Si vous voulez vous servir des mmes mnmoniques dans diffrentes CPU, vous devez vous-mme faire en sorte que les entres correspondent dans les diffrentes tables de mnmoniques (par exemple, par copie).

8.5.1

Structure et lments de la table des mnmoniques

Structure de la table des mnmoniques

Colonne "Ligne"
Si les colonnes des "Proprits spcifiques de l'objet" sont masques (commande de menu Affichage > Colonnes D, O, S, C, N dslectionne), cette icne s'affiche dans la colonne "Ligne" lorsqu'une "Proprit spcifique de l'objet" au moins a t dfinie dans la ligne correspondante.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

193

Dfinition de mnmoniques 8.5 Table des mnmoniques pour mnmoniques globaux

Colonne "Etat"
Le mnmonique ou l'oprande sont identiques une autre entre dans la table des mnmoniques. Le mnmonique est encore incomplet (il manque son nom ou son adresse).

Colonnes "D/O/S/C/N"
Vous pouvez voir dans ces colonnes si des proprits spcifiques (attributs) ont t attribues au mnmonique : D signifie que des dfinitions d'erreur servant au diagnostic du processus ont t cres pour le mnmonique avec le logiciel optionnel S7 PDIAG (V5). O est la seconde lettre de contrle-commande et signifie que le mnmonique peut faire l'objet de cette fonction dans WinCC. S signifie qu'un message sur mnmonique (SCAN) a t affect au mnmonique. C signifie que le mnmonique a des proprits servant la communication. N signifie qu'un contrle-commande rapide et direct du mnmonique est possible depuis l'diteur de programmes (commande-commande par contact).

Cliquez sur les cases d'option pour activer ou dsactiver les "Proprits spcifiques de l'objet". Vous pouvez galement modifier les "Proprits spcifiques de l'objet" en choisissant la commande de menu Edition > Proprits spcifiques de l'objet.

Colonne "Mnmonique"
Le nom du mnmonique ne doit pas dpasser 24 caractres. Vous ne pouvez pas affecter de mnmoniques aux oprandes de blocs de donnes (DBD, DBW, DBB, DBX) dans la table des mnmoniques. Les noms de ces oprandes sont dfinis par la dclaration dans les blocs de donnes. Il existe, pour les blocs d'organisation (OB) et quelques blocs fonctionnels systme (SFB) et fonctions systme (SFC), des mnmoniques prdfinis que vous pouvez importer dans la table des mnmoniques de votre programme S7. Le fichier d'importation se trouve dans le rpertoire STEP 7, sous...\S7data\Symbol\Symbol.sdf.

Colonne "Oprande"
Il s'agit de l'adresse d'un oprande prcis. Exemple : entre E 12.1 La syntaxe de l'oprande est vrifie lors de la saisie.

194

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.5 Table des mnmoniques pour mnmoniques globaux

Colonne "Type de donnes"


Vous pouvez choisir parmi les diffrents types de donnes que STEP 7 met votre disposition. Un type de donnes pris par dfaut est inscrit dans ce champ, mais vous pouvez le modifier. Si votre modification n'est pas compatible avec l'oprande ou que la syntaxe est errone, un message d'erreur s'affiche lorsque vous quittez le champ.

Colonne "Commentaire"
Vous pouvez affecter des commentaires tous les mnmoniques. La combinaison de mnmoniques courts et de commentaires dtaills permet d'assurer une bonne documentation du programme ainsi qu'une programmation efficace. Un commentaire ne doit pas dpasser 80 caractres.

Conversion en variables C
Vous pouvez slectionner des mnmoniques dans la table des mnmoniques d'un programme M7 et les convertir en variables C en liaison avec le logiciel optionnel ProC/C++.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

195

Dfinition de mnmoniques 8.5 Table des mnmoniques pour mnmoniques globaux

8.5.2

Oprandes et types de donnes autoriss dans la table des mnmoniques


La notation employe doit tre la mme pour toute la table des mnmoniques. Pour effectuer un changement de la notation allemande (ancienne SIMATIC) la notation anglaise (ancienne CEI), ou inversement, il faut avoir recours la commande Outils > Paramtres, onglet "Langue" dans SIMATIC Manager.
Anglais I IB IW ID Q QB QW QD M MB MW MD PIB PQB PIW PQW PID PQD T C FB OB DB FC SFB SFC VAT UDT Allemand E EB EW ED A AB AW AD M MB MW MD PEB PAB PEW PAW PED PAD T Z FB OB DB FC SFB SFC VAT UDT Dsignation Bit d'entre Octet d'entre Mot d'entre Double mot d'entre Bit de sortie Octet de sortie Mot de sortie Double mot de sortie Bit de mmento Octet de mmento Mot de mmento Double mot de mmento Octet de priphrie d'entre Mot de priphrie d'entre Mot de priphrie de sortie Double mot de priphrie d'entre Type de donnes BOOL BYTE, CHAR WORD, INT, S5TIME, DATE DWORD, DINT, REAL, TOD, TIME BOOL BYTE, CHAR WORD, INT, S5TIME, DATE DWORD, DINT, REAL, TOD, TIME BOOL BYTE, CHAR WORD, INT, S5TIME, DATE DWORD, DINT, REAL, TOD, TIME BYTE, CHAR WORD, INT, S5TIME, DATE WORD, INT, S5TIME, DATE DWORD, DINT, REAL, TOD, TIME Plage d'adresses 0.0..65535.7 0..65535 0..65534 0..65532 0.0..65535.7 0..65535 0..65534 0..65532 0.0..65535.7 0..65535 0..65534 0..65532 0..65535 0..65535 0..65534 0..65534 0..65532 0..65532 0..65535 0..65535 0..65535 1..65535 1..65535 0..65535 0..65535 0..65535 0..65535 UDT 0..65535

Octet de priphrie de sortie BYTE, CHAR

Double mot de priphrie de DWORD, DINT, REAL, TOD, TIME sortie Temporisation Compteur Bloc fonctionnel Bloc d'organisation Bloc de donnes Fonction Bloc fonctionnel systme Fonction systme Table des variables Type de donnes utilisateur TIMER COUNTER FB OB DB, FB, SFB, UDT FC SFB SFC

196

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.5 Table des mnmoniques pour mnmoniques globaux

8.5.3

Mnmoniques incomplets ou non univoques dans la table des mnmoniques

Mnmoniques incomplets
Vous pouvez galement sauvegarder des mnmoniques incomplets ce qui vous permet, par exemple, de ne dfinir dans un premier temps que leur nom et de complter l'indication de l'adresse (oprande) plus tard. Vous pouvez, en particulier, interrompre votre travail dans la table des mnmoniques tout moment et enregistrer l'tat intermdiaire de cette dernire. Les mnmoniques incomplets sont dans la colonne "Etat". Pour pouvoir utiliser le mnmonique lors de la caractriss par l'icne cration du logiciel sans recevoir de message d'erreur, il faut toutefois que le mnmonique, l'oprande et le type de donnes soient indiqus.

Formation de mnmoniques non univoques


Vous pouvez avoir des mnmoniques non univoques lorsque vous ajoutez un mnmonique la table des mnmoniques et que le nom ou l'adresse spcifie figure dj dans la table pour un autre mnmonique. Le nouveau et l'ancien mnmonique ne sont donc plus univoques. Cet tat est caractris dans la colonne "Etat" par l'icne . C'est ce qui se produit, par exemple, quand vous copiez et insrez un mnmonique pour modifier ensuite lgrement l'entre dans la copie.

Reprage des mnmoniques non univoques


Les mnmoniques non univoques sont reprs, dans la table, par une mise en valeur graphique (couleur, police) afin d'attirer votre attention sur la ncessit d'une correction. Vous pouvez afficher tous les mnmoniques ou, par un filtre, seulement les mnmoniques univoques ou seulement les mnmoniques non univoques.

Correction de la non-univocit
Un mnmonique non univoque le devient lorsque vous modifiez le composant - nom et (ou) oprande - qui a engendr la non-univocit. Le mnmonique ayant auparavant la mme adresse reprend automatiquement son unicit.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

197

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

8.6

Possibilits de saisie de mnmoniques globaux


Il existe trois manires de saisir les mnmoniques qui seront rutiliss ultrieurement lors de la programmation : Saisie via une bote de dialogue Vous pouvez, dans la fentre de saisie du programme, ouvrir une bote de dialogue et y dfinir un nouveau mnmonique. Ce procd convient la dfinition de mnmoniques individuels quand vous constatez, par exemple, au cours de la programmation qu'un mnmonique manque ou doit tre corrig. Vous vitez ainsi l'affichage de la table des mnmoniques. Saisie directe dans la table des mnmoniques Vous pouvez inscrire les mnmoniques et leur adresse associe directement dans une "table des mnmoniques". Ce procd est recommand pour la saisie de plusieurs mnmoniques et pour la cration initiale de la table des mnmoniques, car les mnmoniques dj dfinis sont affichs l'cran et vous conservez ainsi une meilleure vue d'ensemble. Importation de tables des mnmoniques depuis d'autres tableurs Vous pouvez crer les donnes pour la table des mnmoniques l'aide de votre tableur prfr, par exemple Microsoft Excel, et ensuite importer le fichier cr dans la table des mnmoniques.

8.6.1

Remarques gnrales sur la saisie de mnmoniques


Pour entrer de nouveaux mnmoniques dans la table des mnmoniques, vous vous positionnez dans la premire ligne vide de la table et en compltez les champs. Vous pouvez insrer de nouvelles lignes avant la ligne en cours via la commande Insertion > Mnmonique. Quand la ligne prcdant la position du curseur contient dj un oprande, l'insertion d'un nouveau mnmonique vous est facilite par des valeurs par dfaut s'inscrivant automatiquement dans les colonnes "Oprande" et "Type de donnes" : un oprande driv de celui de la ligne prcdente et le type de donnes par dfaut. Les commandes du menu "Edition" permettent de copier, puis de modifier des entres existantes. Ensuite, vous sauvegardez et fermez la table des mnmoniques. Vous pouvez galement sauvegarder des mnmoniques qui ne sont pas encore entirement dfinis. En dfinissant les mnmoniques, vous devez tenir compte des particularits suivantes :
Colonne Mnmonique Nota Ce nom doit tre univoque dans l'ensemble de la table des mnmoniques. Quand vous confirmez votre saisie ou quittez ce champ, un repre est plac devant un mnmonique non univoque. Un mnmonique ne doit pas dpasser 24 caractres. Les guillemets ne sont pas autoriss. Quand vous validez ou quittez ce champ, le programme vrifie si l'oprande indiqu est autoris. Quand vous avez entr un oprande, une valeur par dfaut s'inscrit dans ce champ. Si vous la modifiez, le programme vrifie si le nouveau type de donnes convient l'oprande. Ce champ vous permet de saisir des remarques (80 caractres au maximum) dcrivant la fonction du mnmonique. La saisie d'un commentaire est facultative.

Oprande Type de donnes Commentaire

198

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

8.6.2

Saisie de mnmoniques globaux individuels dans des botes de dialogue


La procdure suivante vous montre comment modifier ou crer, lors de la programmation de blocs, des mnmoniques via des botes de dialogue sans devoir afficher la table des mnmoniques. Cette mthode est utile lorsque vous ne dsirez diter qu'un seul mnmonique. Nous vous conseillons, pour la modification de plusieurs mnmoniques, d'ouvrir la table des mnmoniques et d'y travailler directement.

Activation de l'affichage des mnmoniques dans le bloc


Lorsqu'un bloc est ouvert, vous pouvez activer l'affichage des mnmoniques dans la fentre de bloc avec la commande Affichage > Reprsentation symbolique. Cette commande est coche lorsque la reprsentation symbolique est active.

Dfinition de mnmoniques lors de la saisie du programme


1. Assurez-vous que la reprsentation symbolique est active dans la fentre de bloc (commande Affichage > Reprsentation symbolique). 2. Slectionnez, dans la section des instructions de votre programme, l'adresse absolue laquelle vous voulez affecter un mnmonique. 3. Choisissez la commande Edition > Mnmonique. 4. Compltez la bote de dialogue affiche en y inscrivant en particulier un mnmonique, puis fermez-la. Le mnmonique dfini s'inscrit dans la table des mnmoniques. Les donnes qui engendreraient des mnmoniques non univoques sont refuses et un message d'erreur est mis.

Edition dans la table des mnmoniques


La commande Outils > Table des mnmoniques vous permet d'ouvrir la table des mnmoniques en vue de son dition.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

199

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

8.6.3

Saisie de plusieurs mnmoniques globaux dans la table des mnmoniques

Ouverture d'une table des mnmoniques


Pour ouvrir la table des mnmoniques, vous pouvez : effectuer un double clic sur la table des mnmoniques dans la fentre de projet, slectionner la table des mnmoniques dans la fentre de projet et choisir la commande Edition > Ouvrir l'objet.

La table des mnmoniques pour le programme en cours s'affiche dans sa propre fentre. Vous pouvez alors crer ou modifier des mnmoniques. La table est vide lorsque vous l'ouvrez pour la premire fois aprs sa cration.

Saisie de mnmoniques
Pour entrer de nouveaux mnmoniques dans la table des mnmoniques, vous vous positionnez dans la premire ligne vide de la table et en compltez les champs. Vous pouvez insrer de nouvelles lignes vides avant la ligne en cours via la commande Insertion > Mnmonique. Les commandes du menu "Edition" permettent de copier, puis de modifier des entres existantes. Ensuite, vous sauvegardez et fermez la table des mnmoniques. Vous pouvez galement sauvegarder des mnmoniques qui ne sont pas encore entirement dfinis.

Tri des mnmoniques


Il est possible de classer les enregistrements logiques de la table des mnmoniques dans l'ordre alphabtique des mnmoniques, des oprandes, des types de donnes ou des commentaires. Vous pouvez par exemple modifier le classement dans la bote de dialogue que vous appelez en choisissant la commande Affichage > Tri....

Filtres pour les mnmoniques


Les filtres vous permettent de choisir des sous-ensembles parmi tous les enregistrements de la table. La commande Affichage > Filtre ouvre la bote de dialogue "Filtre". Vous pouvez y dfinir des critres auxquels les enregistrements logiques doivent satisfaire pour tre affichs. Vous pouvez slectionner un filtre pour les noms, adresses, types de donnes, commentaires mnmoniques possdant un attribut de contrle-commande, mnmoniques possdant des proprits de communication, mnmoniques pour variable binaire dans les messages (mmento ou entre du processus) mnmoniques avec l'tat "valide", "invalide (non univoque, incomplet)"

Les diffrents critres sont combins par ET. Les enregistrements logiques affichs commencent par les chanes de caractres indiques. Pour en savoir plus sur les possibilits offertes dans la bote de dialogue "Filtrer", ouvrez l'aide en ligne en appuyant sur la touche de fonction F1.

200

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

8.6.4

Majuscules/minuscules pour les mnmoniques

Aucune diffrenciation n'est faite entre les majuscules et minuscules.


Jusqu' prsent, vous aviez la possibilit de dfinir des mnmoniques dans STEP 7, qui se distinguaient uniquement par l'emploi de majuscules et de minuscules de certains caractres. Ceci t modifi partir de STEP 7 V4.02. La distinction des mnmoniques selon l'emploi de majuscules et de minuscules n'est plus possible partir de cette version. Avec cette modification, nous avons rpondu aux attentes de nos clients, puisqu'ainsi les sources d'erreurs possibles dans un programme sont considrablement rduites. Cette restriction dans la dfinition des mnmoniques va galement dans le sens des objectifs de PLCopen quant la dfinition d'une norme pour les programmes transmissibles. Une dfinition distincte de mnmoniques, uniquement due l'emploi de majuscules ou de minuscules n'est dsormais plus possible. Jusqu' prsent, la dfinition suivante, par exemple, tait possible dans la table des mnmoniques : Moteur1 = E 0.0 moteur1 = E 1.0

Les mnmoniques se distinguaient par la graphie (majuscules/minuscules) du premier caractre. Ce mode de distinction occasionne un important risque de confusion. Avec la dfinition en vigueur, cette probable source d'erreur est prsent exclue.

Effet sur les programmes existant Si jusqu' prsent vous avez utilis ce critre de distinction dans la dfinition de mnmoniques, des conflits sont possibles avec la nouvelle dfinition lorsque : des mnmoniques se distinguent uniquement par l'emploi de majuscules/minuscules des paramtres se distinguent uniquement par l'emploi de majuscules/minuscules des mnmoniques se distinguent uniquement des paramtres par l'emploi de majuscules/minuscules

Il est cependant possible d'analyser et de corriger ces trois cas comme dcrit ci-aprs.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

201

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

Mnmoniques se distinguant uniquement par l'emploi de majuscules/minuscules Conflit : Si la table des mnmoniques n'a pas encore t dite avec la version logicielle en cours, c'est le premier des mnmoniques non univoques de la table des mnmoniques qui est utilis lors de la compilation de fichiers source. Si la table des mnmoniques a dj t dite, de tels mnmoniques sont invalides, ce qui signifie qu' l'ouverture des blocs, aucune symbolique ne s'affiche et qu'une compilation exempte d'erreurs des fichiers source utilisant ces mnmoniques n'est plus possible. Solution : Vrifiez les conflits dans la table des mnmoniques en l'ouvrant, puis en l'enregistrant une nouvelle fois. Ceci permet de dtecter les mnmoniques non univoques. Vous pouvez prsent afficher ces mnmoniques non univoques au moyen du filtre "Mnmoniques non univoques" et les corriger. Corrigez ensuite les fichiers source prsentant des conflits. Aucune autre modification n'est ncessaire pour les blocs, puisqu' leur ouverture, c'est la table des mnmoniques actuelle (sans conflit) qui est automatiquement utilise ou affiche.

Paramtres se distinguant uniquement par l'emploi de majuscules/minuscules Conflit : Les fichiers source prsentant de telles interfaces ne peuvent plus tre compils. Bien que les blocs prsentant de telles interface peuvent encore tre ouverts, aucun accs au second de ces paramtres n'est possible. Lors de l'enregistrement, l'accs au second de ces paramtres est automatiquement remplac par l'accs au premier paramtre. Solution : Afin de dterminer quels blocs prsentent de tels conflits, il est recommand de gnrer un fichier source pour tous les blocs d'un programme, l'aide de la fonction "Gnrer source". Si des erreurs surviennent lorsque vous tentez de recompiler le fichier source gnr, un conflit se prsente. Corrigez vos fichiers source en rendant les paramtres univoques, par exemple l'aide de la fonction Rechercher/Remplacer, puis recompilez le fichier source.

Mnmoniques se distinguant uniquement de paramtres par l'emploi de majuscules/minuscules Conflit : Si les mnmoniques globaux et locaux d'un fichier source ne se distinguent que par l'emploi de majuscules/minuscules et si aucun caractre d'identification des mnmoniques globaux ("Mnmonique") ou locaux (#Mnmonique) n'a t utilis, c'est le mnmonique local qui est toujours utilis lors de la compilation. Ceci engendre un code machine modifi. Solution : Dans ce cas, il est recommand de gnrer une nouvelle source partir de tous les blocs. Les caractres d'identification correspondants seront ainsi automatiquement attribus aux adresses locales et globales, qui seront traites correctement lors des compilations ultrieures.

202

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

8.6.5

Exportation et importation de tables de mnmoniques


Vous pouvez exporter dans un fichier de texte la table des mnmoniques affiche, pour la traiter avec un diteur de texte de votre choix, par exemple. Vous pouvez importer, dans votre table des mnmoniques, des tables cres avec une autre application et poursuivre leur traitement dans la table des mnmoniques. Cette fonction vous servira, par exemple, enregistrer dans la table des mnmoniques et aprs leur conversion, des listes d'assignation cres sous STEP 5/ST. Vous disposez des formats de fichier *.SDF, *.ASC, *.DIF et *.SEQ.

Rgles pour l'exportation


Vous pouvez exporter la table des mnmoniques entire, un sous-ensemble de cette table dfini par filtre ou des lignes slectionnes dans la reprsentation de la table. Les proprits des mnmoniques que vous pouvez dfinir l'aide de la commande Edition > Proprits spcifiques de l'objet... ne sont pas exportes.

Rgles pour l'importation


Pour les blocs fonctionnels systme (SFB), les fonctions systme (SFC) et les blocs d'organisation (OB) les plus frquemment utiliss, vous trouverez dans le fichier...\S7DATA\SYMBOL\SYMBOL.SDF des mnmoniques prdfinis que vous pouvez importer si besoin est. Les proprits des mnmoniques que vous pouvez dfinir l'aide de la commande Edition > Proprits spcifiques de l'objet... ne sont pas prises en compte lors de l'exportation et de l'importation.

8.6.6

Formats de fichier pour l'importation/exportation d'une table des mnmoniques


Vous pouvez importer les formats de fichier suivants dans la table des mnmoniques ou les en exporter : Format de fichier ASCII (ASC) Format de fichier DIF (Data Interchange Format) Vous pouvez ouvrir, diter, puis enregistrer les fichiers DIF (Data Interchange Format) avec l'application Microsoft Excel. Format de fichier SDF (System Data Format) Vous pouvez ouvrir, diter, puis enregistrer les fichiers SDF (System Data Format) avec l'application Microsoft Access. Utilisez le format SDF pour importer des donnes dans l'application Microsoft ACCESS ou pour les en exporter. Slectionnez, dans ACCESS, le format de fichier "Texte (avec sparateurs)". Utilisez le guillemet (") comme sparateur de texte. Utilisez la virgule (,) comme sparateur de champ.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

203

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

Liste d'assignation (SEQ) Avertissement : Lors de l'exportation de la table des mnmoniques dans un fichier de type Typ.SEQ, les commentaires de plus de 40 caractres sont tronqus aprs le 40me caractre !

Format de fichier ASCII (ASC)


Type de fichier Structure Exemple *.ASC Longueur de l'enregistrement, sparateur (virgule), enregistrement 126,phase_verte_piet, 126,rouge_piet A T2 0.0 TIMER Dure de la phase verte pour pitons BOOL Rouge pour pitons

Data Interchange Format (DIF)


Type de fichier Structure *.DIF Un fichier DIF est compos d'un en-tte (header) et de donnes :

En-tte

TABLE 0,1 "<Titre>" VECTORS 0,<Nombre denregistrements> "" TUPLES 0,<Nombre de colonnes> "" DATA 0,0 ""

Dbut dun fichier DIF Chane de caractres du commentaire Nombre d'enregistrements dans le fichier

Nombre de champs de donnes dans un enregistrement

Identification de fin d'en-tte et de dbut de donnes

Donnes (par enregistrement)

<Type>,<valeur numrique> <chane de caractres> V

Identification du type de donnes, valeur numrique Partie alphanumrique, ou si la partie alphanumrique n'est pas utilise.

En-tte : len-tte du fichier doit comporter les types denregistrement TABLE, VECTORS, TUPLES et DATA dans l'ordre indiqu ; dans les fichiers DIF, le type denregistrement DATA peut tre prcd d'autres types denregistrements optionnels, mais l'diteur de mnmoniques n'en tiendra pas compte. Donnes : dans la section des donnes, chaque entre comporte trois parties, savoir l'identification du type de donnes, une valeur numrique et une partie alphanumrique. Vous pouvez ouvrir, diter et enregistrer les fichiers DIF dans l'application Microsoft Excel. N'utilisez toutefois aucun caractre particulier la langue, comme par exemple une lettre accentue.

204

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

System Data Format (SDF)


Type de fichier Structure Exemple *.SDF Chanes de caractres entre guillemets, sections spares par des virgules. "phase_verte_piet","T 2","TIMER","Dure de la phase verte pour pitons" "rouge_piet","A 0.0","BOOL","Rouge pour pitons"

Pour ouvrir un fichier SDF dans Microsoft Access, choisissez le format de fichier "texte (avec sparateur)". Indiquez comme sparateur de texte les guillemets (") et comme sparateur de champ la virgule (,).

Liste d'assignation (SEQ)


Type de fichier Structure Exemple *.SEQ TAB oprande TAB mnmonique TAB commentaire CR T 2 phase_verte_piet Dure de la phase verte pour pitons A 0.0 rouge_piet Rouge pour pitons

TAB reprsente le caractre de tabulation (09H), CR un saut de ligne (retour chariot) avec la touche d'entre (0DH).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

205

Dfinition de mnmoniques 8.6 Possibilits de saisie de mnmoniques globaux

8.6.7

Edition de zones dans des tables de mnmoniques


A partir de la version V5.3 de STEP 7, il est possible de slectionner et d'diter des zones conscutives d'une table de mnmoniques. Vous pouvez p. ex. copier, couper, coller ou effacer ces zones dans une autre table des mnmoniques. Vous pouvez ainsi transfrer aisment des donnes d'une table des mnmoniques dans une autre table des mnmoniques, ce qui facilite leur actualisation.

Zones pouvant tre slectionnes


Vous pouvez slectionner des lignes entires en cliquant dans la premire colonne de la ligne. Une slection de toutes les cellules de la colonne "Etat" la colonne "Commentaire" correspond galement la slection de la ligne. Vous pouvez slectionner des cellules individuelles ou plusieurs cellules conscutives comme zone. Pour pouvoir diter cette zone slectionne, toutes les cellules doivent appartenir aux colonnes "Mnmonique", "Adresse", "Type de donne" et "Commentaire". Si votre slection est incorrecte, les commandes d'dition ne sont pas actives. Les colonnes D, O, S, C, N contiennent les proprits spcifiques de l'objet des mnmoniques respectifs et sont uniquement copies si la case cocher "Copier les proprits spcifiques de l'objet" est active dans la bote de dialogue "Paramtres", que vous appelez en choisissant la commande de menu Outils > Paramtres, et si, comme zone, vous avez slectionn des lignes entires. La copie du contenu des colonnes D, O, S, C, N ne dpend pas du fait que ces colonnes soient affiches ou pas. Vous pouvez commuter l'affichage en choisissant la commande de menu Affichage > Colonnes D, O, S, C, N.

Procdez de la manire suivante


1. Slectionnez la zone que vous souhaitez diter dans la table des mnmoniques. Cliquez cet effet dans la cellule de dbut souhaite avec la souris, puis dplacez cette dernire sur la zone slectionner, tout en maintenant le bouton gauche enfonc ou Slectionnez la zone souhaite via le clavier en appuyant sur les touches Maj + Touche de direction.

2. La zone slectionne s'affiche dans la couleur de la slection. La cellule slectionne en premier dans la table des mnmoniques est affiche dans la couleur normale et entoure d'un cadre. 3. Editez ensuite la zone slectionne votre convenance.

206

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

9
9.1

Cration de blocs et de bibliothques


Choix de la mthode de cration
Selon le langage de programmation que vous utilisez pour crer votre programme, vous pouvez le saisir de manire incrmentielle et/ou oriente source.

Editeurs incrmentiels pour les langages de programmation CONT, LOG, LIST et GRAPH
Avec les diteurs incrmentiels pour CONT, LOG, LIST et GRAPH, vous crez des blocs qui sont stocks dans le programme utilisateur. Choisissez la saisie incrmentielle lorsque vous souhaitez que vos entres soient immdiatement vrifies. Ce mode de saisie convient galement aux dbutants en programmation. Dans la saisie incrmentielle, une vrification de la syntaxe est immdiatement ralise pour chaque ligne ou lment. D'ventuelles erreurs sont affiches et doivent tre corriges avant la fin de la saisie. Les entres correctes du point de vue syntaxique sont automatiquement compiles et ranges dans le programme utilisateur. Les mnmoniques utiliss doivent avoir t dfinis avant l'dition de l'instruction. En cas d'absence de certains mnmoniques, la compilation du bloc est incomplte ; vous pouvez cependant enregistrer cet "tat provisoire incohrent".

Editeurs (de texte) source pour les langages de programmation LIST, SCL ou HiGraph
Dans les diteurs source, vous crez des sources qui seront ensuite compiles en blocs. Choisissez la saisie oriente source pour entrer ou crire rapidement un programme. Dans la saisie oriente source, le programme ou un bloc sont dits dans un fichier de texte qui est ensuite compil. Les fichiers de texte (sources) sont stocks dans le dossier Sources de votre programme S7, par exemple comme source LIST ou source SCL. Un fichier source peut contenir le code pour un ou plusieurs blocs. Les diteurs de texte pour LIST et SCL vous permettent d'crire le code pour des OB, FB, FC, DB et UDT (types de donnes utilisateur), c'est--dire aussi pour un programme utilisateur complet. L'ensemble du programme d'une CPU (c'est--dire tous les blocs) peut tre contenu dans un fichier de texte unique. Les blocs sont gnrs et stocks dans le programme utilisateur lors de la compilation du fichier source correspondant. Les mnmoniques utiliss doivent avoir t dfinis avant la compilation. D'ventuelles erreurs ne sont signales qu'aprs compilation par le compilateur correspondant. Il est important, pour la compilation, que vous respectiez la syntaxe du langage de programmation. Cette syntaxe n'est contrle que lorsque vous effectuez la vrification de cohrence ou la compilation en blocs.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

207

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

9.2

Choix du langage de programmation

Choix du langage de programmation et de l'diteur


Lors de la cration d'un bloc ou d'une source, vous dterminez dans les proprits de l'objet avec quel langage de programmation et quel diteur vous voulez crire ce bloc ou cette source. L'diteur correspondant ce choix est appel lorsque vous ouvrez le bloc ou le fichier source.

Appel de l'diteur
Vous lancez l'diteur de langage choisi dans SIMATIC Manager par double clic sur l'objet correspondant (bloc, fichier source, etc.), l'aide de la commande Edition >Ouvrir l'objet ou via le bouton correspondant dans la barre d'outils.

Vous disposez des langages de programmation indiqus dans le tableau pour crer le programme S7. Les langages de programmation CONT, LOG et LIST font partie du logiciel de base de STEP 7. Les autres peuvent tre commands comme logiciels optionnels.

Vous pouvez ainsi faire votre choix parmi diffrentes philosophies de programmation (schma contacts, logigramme, liste d'instructions, langage volu, commande squentielle ou graphe d'tat) et entre la programmation textuelle ou graphique. Le choix du langage de programmation dtermine galement les mthodes de saisie possibles ().
Langage de programmation Groupe d'utilisateurs Application Saisie incrmentale Saisie oriente source Possibilit de redocumenter le bloc de la CPU

Liste d'instructions LIST

Utilisateurs voulant une programmation proche de la machine

Programmes optimiss en temps d'excution et en espace mmoire

Schma contacts CONT Logigramme LOG

Utilisateurs habitus Programmation de aux schmas de commandes circuits combinatoires Utilisateurs habitus Programmation de aux botes logiques commandes de l'algbre combinatoires boolenne Utilisateurs habitus aux langages de programmation CONT et LOG Utilisateurs ayant programm en langages volus comme Pascal ou C Programmation de programmes de scurit pour systmes F Programmation de tches de programmation de donnes

CONT F, LOG F Progiciel optionnel SCL (Structured Control Language) Progiciel optionnel

208

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

Langage de programmation

Groupe d'utilisateurs

Application

Saisie incrmentale

Saisie oriente source

Possibilit de redocumenter le bloc de la CPU

GRAPH

Progiciel optionnel

Utilisateurs se basant sur la technologie, ayant peu de connaissances approfondies de la programmation ou des automates programmables Utilisateurs se basant sur la technologie, ayant peu de connaissances approfondies de la programmation ou des automates programmables Utilisateurs se basant sur la technologie, ayant peu de connaissances approfondies de la programmation ou des automates programmables

Description souple de processus squentiels

HiGraph

Progiciel optionnel

Description souple de processus asynchrones non squentiels

CFC

Description de processus continus

Progiciel optionnel

Pour les blocs exempts d'erreur, vous pouvez faire le va-et-vient entre les reprsentations de bloc dans les langages CONT, LOG et LIST. Les parties de programme ne pouvant pas tre reprsentes dans le langage cible sont reprsentes en LIST. Vous pouvez crer des blocs partir de fichiers source en LIST et partir de ces blocs, galement nouveau gnrer des sources.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

209

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

9.2.1

Langage de programmation CONT (schma contacts)


La reprsentation en langage de programmation CONT (schma contacts) s'inspire des schmas de circuits. Les lments d'un schma de circuit, tels que contacts fermeture et contacts ouverture, sont rassembls dans des rseaux. Un ou plusieurs rseaux forment la section des instructions complte d'un bloc de code.

Exemple de rseaux en CONT

Le langage de programmation CONT fait partie du logiciel de base STEP 7. Dans le langage CONT, vous crez le programme en utilisant un diteur incrmental.

210

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

9.2.2

Langage de programmation LOG (logigramme)


Le langage de programmation LOG (logigramme) utilise les botes fonctionnelles graphiques de l'algbre boolene pour reprsenter des lments logiques. Il permet en outre de reprsenter des fonctions complexes, telles que les fonctions mathmatiques en les mettant directement en liaison avec ces botes logiques. Le langage de programmation LOG fait partie du logiciel de base STEP7.

Exemple d'un rseau en LOG

Dans le langage LOG, vous crez le programme en utilisant un diteur incrmental.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

211

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

9.2.3

Langage de programmation LIST (liste d'instructions)


Le langage de programmation LIST (liste d'instructions) est un langage textuel proche du langage machine. Chaque instruction correspond une tape de l'excution du programme par la CPU. Vous pouvez regrouper plusieurs instructions en rseaux.

Exemple de rseaux en LIST

Le langage de programmation LIST fait partie du logiciel de base STEP 7. Il vous permet d'diter des blocs S7 avec des diteurs incrmentaux ou de crer votre programme dans une source LIST avec un diteur orient source, puis de le compiler en blocs.

212

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

9.2.4

Langage de programmation SCL


Le langage de programmation SCL (Structured Control Language) optionnel est un langage volu textuel, dont la structure du langue correspond pour l'essentiel la norme CEI 1131-3. Grce ses instructions en langage volu et contrairement au langage LIST, ce langage proche du PASCAL simplifie entre autres la programmation de boucles et de branches conditionnelles. SCL est de ce fait tout particulirement adapt au calcul de formules, aux algorithmes d'optimisation complexes ou la gestion de grandes quantits de donnes.

Dans le langage SCL, vous crez le programme dans une source SCL, en utilisant un diteur orient source.

Exemple :
FUNCTION_BLOCK FB 20
VAR_INPUT VALFINALE END_VAR VAR_IN_OUT IQ1: END_VAR VAR INDEX: END_VAR INT; REAL; INT;

BEGIN CONTROL := FALSE;

FOR INDEX := 1 TO VALFINALE DO IQ1 := IQ1 * 2; IF IQ1 > 10000 THEN CONTROL = TRUE END_IF; END_FOR; END_FUNCTION_BLOCK

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

213

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

9.2.5

Langage de programmation GRAPH (commande squentielle)


Le langage de programmation graphique optionnel GRAPH vous permet de programmer des commandes squentielles. Ceci implique la cration d'une succession d'tapes, la dfinition des actions associes chaque tape et celle des transitions indiquant les possibilits d'volution entre deux tapes successives. Pour dfinir les actions associes aux tapes, vous utilisez un langage de programmation spcial (similaire LIST), alors que pour dterminer les conditions de rceptivit des transitions, vous utilisez une reprsentation sous forme de schma contacts (langage de programmation CONT restreint). GRAPH permet la reprsentation trs claire de squences mme complexes, ce qui favorise une programmation et une recherche d'erreurs efficaces.

Exemple de commande squentielle en GRAPH

Blocs crs
Vous programmez le bloc fonctionnel contenant le graphe squentiel avec l'diteur GRAPH. Un bloc de donnes d'instance associ contient les donnes du graphe squentiel, par exemple les paramtres du FB et les conditions pour les tapes et transitions. Vous crez ce DB d'instance automatiquement dans l'diteur GRAPH.

Fichier source
Il est possible de gnrer, partir d'un FB cr avec GRAPH, un fichier source textuel (source GRAPH) pouvant tre interprt par des pupitres oprateur (OP) ou des afficheurs de texte (TD) pour l'affichage de la commande squentielle.

214

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

9.2.6

Langage de programmation HiGraph (graphe d'tat)


Le langage de programmation graphique optionnel HiGraph vous permet de programmer certains blocs de votre programme comme graphes d'tat. Vous dcomposez alors votre installation en units fonctionnelles indpendantes pouvant adopter diffrents tats. Pour le passage d'un tat un autre, vous dfinissez des transitions. Vous dcrivez les actions associes aux tats, de mme que les conditions de transition entre les tats, dans un macro-langage fond sur LIST. Pour chaque unit fonctionnelle, vous crez un graphe qui en dcrit le comportement. Tous les graphes d'une installation sont assembls en groupes de graphes. Des informations de synchronisation d'units fonctionnelles peuvent tre changes entre les graphes. La reprsentation claire des transitions dans une unit fonctionnelle autorise une programmation systmatique et facilite la recherche d'erreurs. A un instant donn, il n'y a jamais qu'un seul tat actif dans HiGraph, contrairement ce qui se passe avec les tapes de GRAPH. La figure suivante reprsente la cration de graphes pour des units fonctionnelles (exemple).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

215

Cration de blocs et de bibliothques 9.2 Choix du langage de programmation

Un groupe de graphes est enregistr dans une source HiGraph dans le dossier Sources, sous le programme S7. Cette source sera ensuite compile en blocs S7 pour le programme utilisateur. La vrification de la syntaxe et des paramtres formels est ralise aprs la dernire entre pour un graphe (lorsque la fentre de travail se ferme). Les oprandes et mnmoniques ne sont vrifis que durant la compilation de la source.

9.2.7

Langage de programmation CFC


Le logiciel optionnel CFC (Continuous Function Chart) est un langage de programmation permettant de regrouper des fonctions complexes en rseaux graphiques. Ce langage de programmation vous permet de programmer en reliant graphiquement des fonctions donnes. De nombreuses fonctions standard que vous n'avez pas besoin de programmer vous-mme sont accessibles dans des bibliothques sous forme de blocs standard (par exemple pour des fonctions logiques, arithmtiques, ou encore des fonctions de rgulation ou de gestion de donnes). L'utilisation du langage de programmation CFC ne requiert ni connaissance approfondie de la programmation, ni comptence spcifique dans le domaine des automates programmables. Vous pouvez ainsi porter toute votre attention sur la technologie propre votre secteur d'activit. Le programme cr est enregistr sous forme de diagrammes CFC. Ceux-ci sont stocks dans le dossier "Diagrammes" sous le programme S7.Les blocs S7 pour le programme utilisateur seront compils partir de ces diagrammes. Si vous souhaitez crer vous-mme les blocs relier, vous pouvez les programmer dans l'un des langages de programmation S7 pour SIMATIC S7 ou dans les langages C/C++ pour SIMATIC M7.

216

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

9.3
9.3.1

Ce qu'il faut savoir pour crer des blocs


Dossier Blocs
Vous pouvez crer le programme pour une CPU S7 sous forme de : Blocs Sources

Pour stocker les blocs, vous disposez du dossier "Blocs" sous Programme S7. Le dossier Blocs contient les blocs que vous allez charger dans la CPU S7 pour raliser votre tche d'automatisation. Ces blocs charger englobent les blocs de code (OB, FB, FC) et les blocs de donnes (DB). Un bloc de code OB 1 vide est cr automatiquement dans le dossier Blocs, car sa prsence dans la CPU S7 est indispensable pour l'excution de votre programme. Le dossier Blocs contient en outre les objets suivants : Les types de donnes utilisateur que vous crez. Ils vous facilitent la programmation, ne sont cependant pas chargs dans la CPU. Les tables de variables (VAT), que vous pouvez crer pour tester votre programme en visualisant et forant des variables. Elles ne sont pas charges dans la CPU. L'objet "Donnes systme" (blocs de donnes systme), contenant des informations relatives au systme (configuration ou paramtres du systme). Ces blocs de donnes systme sont crs et des donnes y sont inscrites lors de la configuration du matriel. Les fonctions systme (SFC) et les blocs fonctionnels systme (SFB) que vous voulez appeler dans votre programme utilisateur. Les SFC et SFB eux-mmes ne peuvent pas tre dits.

Les blocs du programme utilisateur peuvent tre dits dans les diteurs correspondants, l'exception des blocs de donnes systme (qui ne sont crs et dits que lors de la configuration du systme d'automatisation). Lorsque vous cliquez deux fois sur un bloc, l'diteur correspondant dmarre automatiquement.

Nota Les blocs que vous avez programms sous forme de sources, puis compils sont galement enregistrs dans le dossier Blocs.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

217

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

9.3.2

Types de donnes utilisateur (UDT)


Les types de donnes utilisateur (user data type, UDT) sont des structures de donnes particulires, cres par vous. Vous pouvez les utiliser, une fois dfinis, dans l'ensemble du programme utilisateur S7. Vous pouvez utiliser les UDT comme types de donnes simples ou comme types de donnes complexes dans la dclaration des variables de blocs de code (FC, FB, OB) ou encore comme types de donnes pour des variables dans un bloc de donnes (DB). L'avantage rside dans le fait que vous ne dfinissez qu'une seule fois une structure de donnes spciale, que vous allez utiliser plusieurs fois en l'affectant un nombre illimit de variables. Les UDT peuvent servir de modle afin de crer des blocs de donnes de mme structure. Cela signifie que vous ne dfinissez qu'une seule fois la structure et crez ensuite les blocs de donnes requis par simple affectation du type de donnes utilisateur (exemple d'une recette : la structure du DB est toujours la mme, seules les quantits varient).

Vous crez les types de donnes utilisateur de la mme manire que les autres blocs, dans SIMATIC Manager ou dans l'diteur incrmental.

Nota Un conflit de type peut se produire si vous appelez dans l'diteur de programmes un bloc cr dans le langage de programmation S7-SCL qui contient un paramtre UDT. Aussi est-il prfrable d'viter d'appeler des blocs crs dans SCL en cas d'utilisation d'UDT.

Structure d'un UDT


Aprs l'ouverture de l'UDT, une nouvelle fentre de travail s'ouvre montrant la table - et, plus prcisment, la vue des dclarations - pour ce type de donnes utilisateur. Les premire et dernire lignes contiennent dj les dclarations STRUCT et END_STRUCT pour dbut et fin de type de donnes utilisateur ; vous ne pouvez pas modifier ces lignes. Pour diter un type de donnes utilisateur, vous saisissez vos donnes dans les colonnes correspondantes partir de la deuxime ligne de la table de dclaration. Vous pouvez structurer les types de donnes utilisateur partir de : types de donnes simples, types de donnes complexes, types de donnes utilisateur existant.

Les types de donnes utilisateur du programme utilisateur S7 ne sont pas chargs dans la CPU S7. Ils sont soit crs et dits directement avec des diteurs incrmentaux, soit ils rsultent de la compilation de sources.

9.3.3

Attributs de bloc
Les attributs de bloc vous permettent de mieux identifier les blocs crs (par exemple, grce au numro de version) ou de les protger de modifications non autorises.
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

218

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

Vous ne devez diter les attributs d'un bloc que si ce bloc est ouvert. Outre les attributs ditables, la bote de dialogue correspondante affiche galement des donnes pour votre information : vous ne pouvez pas les diter. SIMATIC Manager affiche galement les attributs de bloc et les attributs systme dans les proprits d'objet pour un bloc. Vous ne pouvez cependant y diter que les attributs NOM, FAMILLE, AUTEUR et VERSION. Vous pouvez diter les proprits de l'objet aprs insertion du bloc avec SIMATIC Manager. Pour un bloc qui n'a pas t cr avec SIMATIC Manager, mais avec l'un des diteurs disponibles, ces informations (par exemple langage de programmation) figurent automatiquement dans les proprits de l'objet.

Nota Pour dfinir les abrviations utiliser dans la programmation de vos blocs S7, choisissez dans SIMATIC Manager la commande Outils > Paramtres, puis l'onglet "Langue".

Tableau des attributs de bloc


Lorsque vous indiquez des attributs de bloc, vous devez respecter l'ordre donn dans le tableau suivant.
Mot-cl / Attribut [KNOW_HOW_PROTECT] Signification Exemple

Protection du bloc : il est impossible de KNOW_HOW_PROTECT visualiser la section des instructions d'un bloc compil avec cette option. ll est uniquement possible de lire l'interface du bloc et non de la modifier. Nom de l'auteur, nom de la socit, du service ou autres noms (8 caractres au maximum, sans espace) Nom de la famille du bloc : par exemple, Regul (8 caractres au maximum, sans espace) Nom du bloc (8 caractres au maximum) Numro de version du bloc (ces deux nombres entre 0 et 15, soit 0.0 15.15) Identification indiquant si un FB admet des multi-instances ou non. Si vous voulez dclarer des multi-instances, le FB ne doit pas avoir cet attribut. AUTHOR : Siemens, mais pas de motcl

[AUTHOR:]

[FAMILY:]

FAMILY : Regul, mais pas de mot-cl

[NAME:] [VERSION: int1. int2]

NAME : PID, mais pas de mot-cl VERSION : 3.10

[CODE_VERSION1]

CODE_VERSION1

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

219

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

Mot-cl / Attribut

Signification

Exemple

[UNLINKED] seulement pour Les blocs de donnes possdant DB l'attribut UNLINKED sont uniquement stocks dans la mmoire de chargement, n'occupent pas d'espace dans la mmoire de travail et ne sont pas relis au programme. Il n'est pas possible d'y accder avec des commandes MC7. Les contenus de tels DB peuvent uniquement tre transfrs dans la mmoire de travail au moyen des SFC 20 BLKMOV ou SFC 83 READ_DBL, selon la CPU respective. [Non-Retain] Les blocs de donnes possdant cet attribut reprennent leurs valeurs de chargement aprs chaque mise hors tension ou sous tension et aprs chaque commutation STOP-RUN de la CPU. Protection pour blocs de donnes : il est uniquement possible de lire les donnes et non de les modifier. Copie d'un bloc ayant t sauvegard en lecture seule des fins de rfrence. Cette proprit peut uniquement tre attribue dans l'diteur de programmes avec la commande de menu Fichier > Sauvegarder en lecture seule. READ_ONLY

[READ_ONLY] seulement pour DB Bloc en lecture seule

Protger un bloc par KNOW_HOW_PROTECT a les consquences suivantes : Lorsque vous afficherez plus tard un bloc compil dans l'diteur CONT, LOG ou LIST incrmental, vous n'aurez pas accs la section des instructions de ce bloc. Seules les variables de types de dclaration var_in, var_out et var_in_out seront visualises dans la table de dclaration des variables du bloc. Les variables internes dclares comme var_stat et var_temp seront masques.

220

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

Attributs de blocs possibles


Le tableau suivant prsente les attributs que vous pouvez dclarer pour les diffrents types de blocs.
Attribut KNOW_HOW_PROTECT AUTHOR FAMILY NAME VERSION UNLINKED READ_ONLY Non-Retain Bloc en lecture seule OB FB FC DB UDT

Vous pouvez dfinir lattribut KNOW_HOW_PROTECT dans une source, lors de la programmation du bloc. Il sera affich dans la bote de dialogue des proprits de bloc, mais ne pourra pas y tre modifi.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

221

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

9.3.4

Affichage de la longueur des blocs


La longueur des blocs est affiche en "octets".

Affichage dans les proprits du dossier Blocs


Dans les proprits du dossier Blocs, les longueurs suivantes sont affiches dans la vue hors ligne : longueur (somme de tous les blocs sans donnes systme) dans la mmoire de chargement du systme cible longueur (somme de tous les blocs sans donnes systme) dans la mmoire de travail du systme cible Les proprits du dossier Blocs n'affichent pas les longueurs des blocs dans l'outil de dveloppement (PG/PC).

Affichage dans les proprits du bloc


Dans les proprits du bloc, sont affichs : le nombre de donnes locales requises : longueur des donnes locales en octets, MC7 : longueur du code MC7 en octets ou longueur des donnes utiles de DB, longueur dans la mmoire de chargement du systme cible, longueur dans la mmoire de travail du systme cible : n'est affiche que lorsque l'affectation matrielle est connue. Les affichages ne dpendent pas du fait que le bloc se trouve dans la fentre d'une vue en ligne ou hors ligne.

Affichage dans SIMATIC Manager (vue dtaille)


Lorsque vous ouvrez un dossier Blocs et que vous avez slectionn la "vue dtaille", la mmoire de travail requise s'affiche dans la fentre du projet, que le dossier Blocs se trouve dans la fentre d'une vue en ligne ou hors ligne. Vous pouvez additionner les longueurs de plusieurs blocs, en slectionnant ces derniers. Leur somme s'affiche alors dans la ligne d'tat de SIMATIC Manager. Aucune longueur ne s'affiche pour les blocs qui ne peuvent pas tre chargs dans le systme cible (par exemple VAT). La vue dtaille ne permet pas d'afficher les longueurs de bloc dans l'outil de dveloppement (PG/PC).

222

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

9.3.5

Comparaison de blocs

Introduction
Pour comparer des blocs qui se trouvent des endroits diffrents, vous avez les possibilits suivantes : Appel de la comparaison de blocs dans SIMATIC Manager avec la commande de menu Outils > Comparer les blocs. Lorsque vous cliquez sur le bouton "Aller " dans la bote de dialogue "Comparaison de blocs Rsultats" qui s'ouvre, la page d'onglet "Comparaison" est complte dans l'diteur de programmes (CONT/LOG/LIST). Appel de la comparaison de blocs dans l'diteur de programmes avec la commande de menu Outils > Comparer les partenaires en/hors ligne.

Pour vous expliquer comment fonctionne la comparaison de blocs, nous allons distinguer les blocs de code (OB, FB, FC) et les blocs de donnes (DB). L'action de l'option "y compris SDB" lorsque vous ralisez la comparaison ONLINE/offline de blocs dans SIMATIC Manager est dcrite au paragraphe suivant : Comparaison de blocs de donnes systme (SDB)

Fonctionnement de la comparaison de blocs : bloc de code


Dans un premier temps, STEP 7 compare les horodatages des interfaces des blocs de code. Si ces horodatages sont les mmes, STEP 7 considre que les interfaces sont identiques. Si les horodatages des interfaces sont diffrents, STEP 7 compare les types de donnes des interfaces, section aprs section. En cas de diffrences, STEP 7 dtermine respectivement la premire diffrence d'une section, c'est--dire la premire diffrence dans les sections de dclaration respectives. Les multiinstances et les UDT sont galement compars. Si les types de donnes dans les sections sont identiques, STEP 7 compare les valeurs de dbut des variables. Toutes les diffrences sont affiches. Dans un second temps, STEP 7 vrifie le code, rseau par rseau (si l'option "Effectuer comparaison de code" n'tait pas active, une comparaison de code est malgr tout ralise lorsque vous cliquez sur le bouton "Aller " dans l'diteur de programmes !). STEP 7 dtermine d'abord les rseaux ayant t insrs ou supprims. Dans le rsultat de la comparaison, les rseaux figurant dans un seul bloc sont comments par "uniquement contenu dans". Les rseaux restant sont ensuite respectivement compars jusqu' la premire instruction diffrente. La comparaison est ralise de la manire suivante : dans le cas du paramtrage "Priorit de l'oprande absolu", en fonction des oprandes absolus, dans le cas du paramtrage "Priorit du mnmonique", en fonction du mnmonique. Nota : lorsque la priorit du mnmonique est active pour les blocs qui peuvent ainsi tre compars de manire symbolique, l'option "Excuter une comparaison dtaille" doit tre active.

Des instructions sont identiques lorsque l'oprateur et l'oprande sont identiques. Si les blocs comparer ont t programms dans des langages diffrents, STEP 7 les compare dans le langage de programmation LIST.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

223

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

Particularit de la comparaison hors ligne : A la diffrence d'une comparaison hors ligne en ligne, la comparaison hors ligne hors ligne permet STEP 7 de dterminer galement les noms de variable diffrents. Ceci n'est pas possible lors de la comparaison hors ligne en ligne, car seuls des mnmoniques de remplacement sont disponibles en ligne. Les commentaires de blocs, de rseaux et de lignes ainsi que d'autres attributs de blocs (p. ex. les informations sur S7-PDIAG et les messages) sont exclus de la comparaison.

Fonctionnement de la comparaison de blocs : blocs de donnes


Dans un premier temps, STEP 7 compare les horodatages des interfaces des blocs de donnes, comme pour les blocs de code. Si ces horodatages sont les mmes, STEP 7 considre que les structures de donnes sont identiques. Si les horodatages des interfaces sont diffrents, STEP 7 compare les structures jusqu' la premire diffrence dans la structure de donnes. Si les structures de donnes dans les sections sont identiques, STEP 7 compare les valeurs de dbut et valeurs actuelles des variables. Toutes les diffrences sont affiches. Particularit de la comparaison hors ligne hors ligne : A la diffrence d'une comparaison hors ligne en ligne, la comparaison hors ligne hors ligne permet STEP 7 de dterminer galement les noms de variable diffrents. Ceci n'est pas possible lors de la comparaison hors ligne en ligne, car seuls des mnmoniques de remplacement sont disponibles en ligne. Les commentaires ainsi que les structures des UDT utiliss dans le bloc de donnes sont exclus de la comparaison.

Fonctionnement de la comparaison de blocs : types de donnes (UDT)


Dans un premier temps, STEP 7 compare les horodatages des interfaces des types de donnes, comme pour les blocs de donnes. Si ces horodatages sont les mmes, STEP 7 considre que les structures de donnes sont identiques. Si les horodatages des interfaces sont diffrents, STEP 7 compare les structures jusqu' la premire diffrence dans la structure de donnes. Si les structures de donnes dans les sections sont identiques, STEP 7 compare les valeurs de dbut. Toutes les diffrences sont affiches

Procdure : comparaison de blocs dans l'diteur de programmes


1. Ouvrez le bloc que vous souhaitez comparer avec la version charge. 2. Choisissez la commande de menu Outils > Comparer le partenaire en ligne/hors ligne. Si le partenaire en ligne est accessible, les rsultats de la comparaison s'affichent dans la page d'onglet "7 : comparer", dans la partie infrieure de la fentre de l'diteur de programmes. Astuce : si deux rseaux ont t dtermins comme tant "diffrents", vous pouvez ouvrir le rseau correspondant par double clic sur cette ligne.

224

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

Procdure : comparaison de blocs dans SIMATIC Manager


1. Dans SIMATIC Manager, slectionnez le dossier Blocs ou uniquement les blocs que vous souhaitez comparer. 2. Choisissez la commande de menu Outils > Comparer les blocs. 3. Dans la bote de dialogue "Comparer les blocs", slectionnez le type de comparaison (EN LIGNE / hors ligne ou Chemin1/chemin2). 4. Dans le cas de la comparaison Chemin1/chemin2 : dans SIMATIC Manager, choisissez le dossier Blocs ou les blocs avec lesquels vous souhaitez effectuer la comparaison. Les blocs sont alors saisis automatiquement dans la bote de dialogue. 5. Cochez la case "Y compris SDB", si les SDB doivent galement tre compars. 6. Cochez la case "Raliser la comparaison du code", si vous souhaitez en plus effectuer une comparaison du code. Lorsque cette case cocher est active, vous pouvez ensuite dfinir si une "Comparaison dtaille" doit tre ralise. Dans le cas de la comparaison dtaille, les modifications du nom de variables locales et du nom de paramtres sont galement affiches en plus des parties significatives pour l'excution des blocs (interfaces et code). La case cocher "galement blocs avec langages diffrents" permet de dterminer si les blocs crs dans un autre langage doivent galement tre compars (p. ex. LIST, LOG,...). Dans ce cas, les blocs sont compars sur la base de LIST. 7. Cliquez sur le bouton "OK" dans la bote de dialogue. Les rsultats de la comparaison s'affichent dans une bote de dialogue distincte "Comparaison de blocs Rsultats". 8. Si, dans cette bote de dialogue, vous cliquez galement sur le bouton "Dtails", les proprits des blocs compars s'affichent (p. ex. le moment des dernires modifications, les sommes de contrle, etc.). Lorsque vous cliquez sur le bouton "Aller ", l'diteur de programmes s'ouvre et les rsultats de la comparaison sont visibles dans la partie infrieure de la fentre.

Nota Lors de la comparaison d'un dossier Bloc hors ligne avec un dossier Blocs en ligne, seuls les types de blocs qu'il est possible de charger sont compars (OB, FB,...). Lors de la comparaison Hors ligne/en ligne ou Chemin1/chemin2 d'une slection multiple, tous les blocs slectionns sont compars, mme s'il s'agit de blocs qu'il n'est pas possible de charger (p. ex. tables de variables ou UDT).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

225

Cration de blocs et de bibliothques 9.3 Ce qu'il faut savoir pour crer des blocs

9.3.6

Rassignation
Vous pouvez rassigner les blocs et oprandes suivants : entres, sorties, mmentos, temporisations, compteurs, fonctions, blocs fonctionnels.

Procdez de la manire suivante : 9. Dans SIMATIC Manager, slectionnez le dossier Blocs contenant les blocs que vous souhaitez rassigner. 10. Choisissez la commande Outils > Rassignation. 11. Dans la bote de dialogue "Rassignation" qui s'affiche, entrez les remplacements souhaits (ancien oprande / nouvel oprande) dans le tableau. 12. Slectionnez l'option "Pour tous les oprandes de la plage spcifie" si vous souhaitez rassigner des plages d'oprandes (BYTE, WORD, DWORD). Par exemple, si vous avez indiqu EW0 et EW4 pour la rassignation de la plage d'oprandes, les oprandes E0.0 E1.7 devriendront E4.0 E5.7. Les oprandes de la plage rassigne (par ex. E0.1) ne pourront plus alors tre entrs individuellement dans le tableau. 13. Cliquez sur le bouton "OK". Vous dmarrez ainsi la rassignation. Lorsqu'elle est termine, vous pouvez dcider dans une bote de dialogue si vous souhaitez voir le fichier d'information relatif la rassignation. Ce fichier contient la liste des oprandes "Ancien oprande" et "Nouvel oprande". Les blocs y figurent individuellement avec le nombre de rassignations qui y ont t effectues. Lors d'une rassignation, il faut faire attention aux points suivants : Quand vous rassignez un bloc (c'est--dire le renommez), le nouveau bloc ne doit pas dj exister. S'il existe dj, l'opration sera annule. Quand vous rassignez un bloc fonctionnel (FB), son DB d'instance est associ automatiquement au FB rassign, mais il ne change pas (son numro de DB reste le mme).

9.3.7

Attributs pour blocs et pour paramtres


La description des attributs figure dans l'aide de rfrence pour les attributs systme.

226

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.4 Utilisation de bibliothques

9.4

Utilisation de bibliothques
Une bibliothque permet de stocker des composants de programmes rutilisables, destins aux automates programmables SIMATIC S7/M7. Ces lments peuvent tre copis dans une bibliothque partir de projets existants ou y tre crs directement, indpendamment de tout projet. En enregistrant les blocs que vous souhaitez utiliser frquemment dans un programme S7 sous une bibliothque, vous vitez de les programmer nouveau. Il vous suffira chaque fois de les copier dans le programme utilisateur correspondant. Pour crer des programmes S7/M7 dans une bibliothque, vous disposez des mmes fonctionnalits que dans un projet, l'exception des fonctions de test.

Cration de bibliothques
Vous crez les bibliothques de la mme manire que les projets, en choisissant la commande Fichier > Nouveau. La nouvelle bibliothque va tre cre dans le rpertoire que vous avez slectionn pour les bibliothques, lorsque vous avez choisi la commande Outils > Paramtres et l'onglet "Gnral".

Nota SIMATIC Manager accpte des noms dune longueur excdant 8 caractres. Le nom du rpertoire de la bibliothque est tronqu aprs 8 caractres. Les 8 premiers caractres doivent donc suffire identifier la bibliothque. Aucune distinction n'est faite entre les majuscules et minuscules. Lorsque vous voulez ouvrir une bibliothque l'aide de "Parcourir", le nom entier s'affiche, alors que lorsque vous feuilletez, il apparat sous forme abrge. Sachez que vous ne pouvez pas utiliser de bibliothques d'une version de STEP 7 plus rcente dans des projets d'une ancienne version de STEP 7.

Ouverture de bibliothques
Pour ouvrir une bibliothque, choisissez d'abord la commande Fichier > Ouvrir. Slectionnez ensuite une bibliothque dans les botes de dialogue suivantes. La fentre de bibliothque s'ouvre alors.

Nota Si la bibliothque voulue n'apparat pas dans la liste de bibliothques, cliquez sur le bouton "Parcourir" dans la bote de dialogue "Ouvrir". La bote de dialogue standard de Windows affiche alors l'arborescence de rpertoires dans laquelle vous pouvez rechercher la bibilothque. Le nom du fichier correspond toujours au nom initial de la bibliothque cre, ce qui veut dire que les changements de nom du fichier ne sont pas visibles dans SIMATIC Manager. Ds lors que vous slectionnez la bibliothque, elle est reprise dans la liste de bibliothques. Vous pouvez modifier les entres dans la liste de bibliothques en choisissant la commande Fichier > Grer.

Copie de bibliothques
Pour copier une bibliothque, vous l'enregistrez sous un autre nom en choisissant la commande Fichier > Enregistrer sous.
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

227

Cration de blocs et de bibliothques 9.4 Utilisation de bibliothques

Pour copier des composants de bibliothques comme les programmes, blocs, sources, etc., vous choisissez la commande Edition > Copier.

Suppression de bibliothques
Pour supprimer une bibliothque, vous choisissez la commande Fichier > Supprimer. Pour effacer des composants de bibliothques comme les programmes, blocs, sources etc., vous choisissez la commande Edition > Effacer.

228

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs et de bibliothques 9.4 Utilisation de bibliothques

9.4.1

Structure hirarchique des bibliothques


De mme qu'un projet, une bibliothque possde une structure hirarchique : Une bibliothque peut contenir des programmes S7/M7. Un programme S7 peut contenir exactement un dossier Blocs (programme utilisateur), un dossier Sources, un dossier Diagrammes ainsi qu'un objet "Mnmoniques" (table des mnmoniques). Un programme M7 peut contenir des diagrammes et programmes C pour les modules programmables M7 ainsi que l'objet "Mnmoniques" (table des mnmoniques) et un dossier Blocs pour les DB et tables de variables. Le dossier Blocs comprend les blocs que vous pouvez charger dans la CPU S7. Il contient galement les tables des variables (VAT) et les types de donnes utilisateur qui eux, ne peuvent pas tre chargs dans la CPU. Le dossier Sources contient les sources pour les programmes crs dans les diffrents langages de programmation. Le dossier Diagrammes contient les diagrammes CFC (uniquement avec le logiciel optionnel CFC).

Lorsque vous crez un nouveau programme S7/M7, un dossier Blocs et un dossier Sources (uniquement pour S7) ainsi qu'un objet "Mnmoniques" y sont automatiquement insrs.

9.4.2

Prsentation des bibliothques standard


Le logiciel de base STEP 7 contient les bibliothques standard suivantes : Sytem Function Blocks : fonctions systme (SFC) et blocs fonctionnels systme (SFB) ; S5-S7 Converting Blocks : blocs servant convertir d'anciens programmes de STEP 5 ; IEC Function Blocks : blocs servant aux fonctions, par exemple, modification de la date et de l'heure, oprations de comparaison, traitement de chanes et choix de maxima et minima ; Organization Blocks : blocs d'organisation (OB) standard ; PID Control Blocks : blocs fonctionnels (FB) pour la rgulation PID Communication Blocks : fonctions (FC) et blocs fonctionnels (FB) pour les CP SIMATICNET ; TI-S7 Converting Blocks : fonctions standard usage gnral ; Miscellaneous Blocks : blocs pour l'horodatage et la synchronisation d'horloge ;

D'autres bibliothques peuvent s'ajouter celle-ci lors de l'installation de logiciels optionnels.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

229

Cration de blocs et de bibliothques 9.4 Utilisation de bibliothques

Suppression et installation de bibliothques fournies


Vous pouvez, dans SIMATIC Manager, supprimer puis rinstaller les bibliothques fournies. Pour l'installation, vous excutez une nouvelle fois le programme Setup de STEP 7.

Nota Les bibliothques fournies sont toujours copies lorsque vous installez STEP 7. Si vous avez modifi des bibliothques fournies, elles seront crases par l'original lors d'une nouvelle installation de STEP 7. Il est donc recommand de copier les bibliothques fournies avant de les modifier et de ne modifier que la copie.

230

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

10
10.1

Cration de blocs de code


Principes de la cration de blocs de code

10.1.1 Structure de la fentre de l'diteur de programmes


La fentre de l'diteur de programme comporte les zones suivantes :

Vues d'ensemble
L'onglet "Elments de programme" affiche une vue d'ensemble complte des lments de programme que vous pouvez insrer dans votre programme CONT, LOG ou LIST. L'onglet "Structure d'appels" affiche la hirarchie d'appel des blocs dans le programme S7 en cours.

Dclaration de variables
La dclaration de variables est divise en vue d'ensemble des variables et en vue de dtail des variables.

Instructions
La section d'instructions affiche le code du bloc devant tre trait par l'automate programmable. Elle comporte un ou plusieurs rseaux.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

231

Cration de blocs de code 10.1 Principes de la cration de blocs de code

Dtails
Les divers onglets de la fentre "Dtails" permettent p. ex. l'affichage de messages d'erreur, l'affichage d'informations sur les oprandes, l'dition de mnmoniques, le forage d'oprandes, la comparaison de blocs et l'dition de dfinitions d'erreur pour le diagnostic du processus.

232

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.1 Principes de la cration de blocs de code

10.1.2 Marche suivre pour la cration de blocs de code


Les blocs de code (OB, FB, FC) comportent une section de dclaration de variables et une section d'instructions. De plus, ils possdent galement des proprits. Lors de la programmation, vous devez par consquent diter les trois parties suivantes : dclaration des variables : vous y dfinissez les paramtres, attributs systme des paramtres ainsi que les variables locales du bloc. section des instructions : vous y programmez le code du bloc que l'automate programmable doit excuter. La section des instructions comporte un ou plusieurs rseaux. Pour crer les rseaux, vous disposez par exemple des langages de programmation LIST (liste d'instructions), CONT (schmas contacts) et LOG (logigramme). proprits de bloc : elles contiennent des informations supplmentaires comme l'horodatage ou l'indication du chemin qui sont entres par le systme. Vous pouvez galement entrer vous-mme des donnes sur le nom, la famille, la version et l'auteur ou bien affecter des attributs systme aux blocs.

En principe, vous pouvez diter les parties d'un bloc de code dans un ordre quelconque. Vous avez bien entendu aussi la possibilit de les corriger/complter.

Nota Lorsque vous souhaitez reprendre des mnmoniques de la table des mnmoniques, vous devriez d'abord vrifier qu'ils sont prsents et, le cas chant, les complter.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

233

Cration de blocs de code 10.1 Principes de la cration de blocs de code

10.1.3 Prslections pour l'diteur de programmes CONT/LOG/LIST


Avant de commencer la programmation, vous devriez vous familiariser avec les possibilits de prslection afin de travailler aisment selon vos habitudes. La commande Outils > Paramtres ouvre une bote de dialogue onglets. Dans les diffrents onglets, vous effectuez les prslections pour la programmation de blocs, par exemple dans l'onglet "Gnral": l'criture (police et taille) dans le texte et les tableaux, si vous souhaitez afficher immdiatement les mnmoniques et le commentaire pour un nouveau bloc.

Vous pouvez aussi modifier les prslections pour le langage, le commentaire et les mnmoniques durant l'dition l'aide des commandes Affichage >.... Vous modifiez la couleur reprsentant, par exemple, des slections de rseaux ou de sections des instructions dans la page d'onglet "CONT/LOG".

10.1.4 Droits d'accs aux blocs ou aux sources


Une base de donnes commune est souvent utilise lors du traitement d'un projet. Il peut donc arriver que plusieurs personnes veuillent accder au mme bloc ou la mme source de donnes. Les droits de lecture et d'criture sont attribus comme suit : Traitement hors ligne Lors de l'ouverture d'un bloc ou d'une source, le logiciel vrifie si cet objet peut tre ouvert avec le droit Ecriture. Si la source ou le bloc est dj ouvert, il n'est possible de travailler que sur une copie. Si vous voulez enregistrer la copie, le logiciel vous demande si vous voulez la substituer l'original ou si vous dsirez la sauvegarder sous un autre nom. Traitement en ligne Si vous ouvrez un bloc en ligne par l'intermdiaire d'une liaison configure, le bloc hors ligne associ est verrouill, rendant ainsi sa modification simultane impossible.

234

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.1 Principes de la cration de blocs de code

10.1.5 Instructions dans la vue d'ensemble des lments de programme


L'onglet "Elments de programme" dans la fentre de la vue d'ensemble met votre disposition des lments de langage CONT et LOG ainsi que des multi-instances dj dclares, des blocs finis et des blocs de bibliothques. Vous appelez cet onglet en choisissant la commande de menu Affichage > Vues d'ensemble. Vous pouvez galement reprendre des lments de programme dans la section des instructions en choisissant la commande Insertion > Elments de programme.

Exemple de l'onglet "Elments de programme" dans CONT

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

235

Cration de blocs de code 10.2 Edition de la dclaration des variables

10.2

Edition de la dclaration des variables

10.2.1 Utilisation de la dclaration des variables dans les blocs de code


Lorsque vous ouvrez un bloc de code, la vue d'ensemble et la vue de dtail des variables s'affichent dans le volet suprieur d'une fentre et la section des instructions, dans laquelle vous ditez le code du bloc proprement dit, dans le volet infrieur.

Exemple : vue des variables et section des instructions en LIST

236

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.2 Edition de la dclaration des variables

Dans la vue de dtail des variables, vous dfinissez les variables locales y compris les paramtres formels du bloc et les attributs systme pour les paramtres. En voici certains effets : La dclaration sert rserver l'espace mmoire correspondant pour les variables temporaires dans la pile des donnes locales, dans le cas de blocs fonctionnels, pour les variables statiques dans le DB d'instance ultrieurement affect. En dfinissant les paramtres d'entre, de sortie, d'entre/sortie, vous dterminez galement "l'interface" pour l'appel du bloc dans le programme. Lorsque vous dclarez les variables dans un bloc fonctionnel, celles-ci ( l'exception des variables temporaires) dterminent galement la structure de donnes pour chaque DB d'instance que vous affecterez au FB. En dfinissant les attributs systme, vous affectez aux paramtres des proprits particulires pour la configuration des messages et des liaisons, pour les fonctions de contrle-commande et pour la configuration de processus de conduite.

10.2.2 Relation entre la vue de dtail des variables et la section des instructions
La dclaration des variables et la section des instructions de blocs de code sont fortement lies, puisque lors de la programmation, la section des instructions utilise les noms de la dclaration des variables. Les modifications dans la table de dclaration des variables se rpercutent donc dans l'ensemble de la section des instructions.
Action dans la table de dclaration des variables Nouvelle entre correcte Changement de nom sans modification de type correct Nom correct chang en nom invalide Nom invalide chang en nom correct Modification du type Raction dans la section des instructions Dans le cas d'un code erron, la variable prcdemment non dclare devient valide. Le mnmonique est immdiatement partout reprsent avec le nouveau nom. Le code n'est pas modifi. Dans le cas d'un code erron, celui-ci devient valide. Dans le cas d'un code erron, celui-ci devient valide et dans le cas d'un code correct, celui-ci devient invalide dans certaines conditions. Le code correct devient invalide.

Suppression dune variable (mnmonique) utilise dans le code

Les modifications de commentaire, la saisie errone d'une nouvelle variable, la modification d'une valeur initiale ou la suppression d'une variable non utilise n'ont aucun effet sur la section des instructions.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

237

Cration de blocs de code 10.2 Edition de la dclaration des variables

10.2.3 Structure de la fentre de dclaration des variables


La fentre de dclaration des variables comporte la vue d'ensemble des variables et la vue de dtail des variables.

Aussitt que vous ouvrez un bloc de code nouvellement cr, la vue d'ensemble des variables par dfaut s'affiche. Celle-ci affiche uniquement la liste des types de dclaration autoriss pour le type de bloc slectionn (in, out, in_out, stat, temp) et ce, dans l'ordre dfini. Lorsque vous crez un nouvel OB, une dclaration de variables standard s'affiche. Vous avez la possibilit d'en modifier les valeurs. Les types de donnes autoriss pour les donnes locales des diffrents types de blocs sont dcrits dans Affectation de types de donnes aux donnes locales de blocs de code.

238

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.3 Multi-instances dans la dclaration des variables

10.3

Multi-instances dans la dclaration des variables

10.3.1 Utilisation de multi-instances


Il est probable qu'en raison des caractristiques (par exemple espace mmoire) des CPU S7 utilises, vous ne puissiez ou ne souhaitiez affecter qu'un nombre limit de blocs de donnes aux donnes d'instance. Lorsque vous appelez des blocs fonctionnels supplmentaires existant dans un FB de votre programme utilisateur (hirarchie d'appel de FB), vous pouvez appeler ces blocs fonctionnels supplmentaires sans qu'ils ne possdent leur propres DB d'instance (c'est--dire sans DB d'instance supplmentaires). Vous pouvez appliquer la solution suivante : Entrez les FB appeler comme variables statiques dans la dclaration des variables du FB appelant. Dans ce bloc fonctionnel vous pouvez appeler d'autre blocs fonctionnels sans qu'ils ne possdent leur propres DB d'instance (c'est--dire sans DB d'instance supplmentaires). Vous pouvez ainsi regrouper les donnes d'instance dans un seul DB d'instance et, ainsi, mieux utiliser le nombre de DB disponibles.

L'exemple suivant illustre la solution dcrite : FB 2 et FB 3 utilisent le DB d'instance du bloc fonctionnel FB 1 qui les appelle.

Condition unique : vous devez "indiquer" au bloc fonctionnel appelant, quelles instances vous appelez et de quel type (de FB) elles sont. Ces indications doivent tre ralises dans la fentre de dclaration du FB appelant. Le FB utiliser doit possder au minimum une variable ou un paramtre de la zone de donnes (c'est--dire pas VAR_TEMP). N'utilisez pas de blocs de donnes multi-instance tant que des modifications en ligne sont attendues lorsque la CPU est en marche. Un rechargement rgulier n'est garanti que si vous utilisez des blocs de donnes d'instance.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

239

Cration de blocs de code 10.3 Multi-instances dans la dclaration des variables

10.3.2 Rgles pour la formation de multi-instances


Les rgles suivantes s'appliquent la dclaration des multi-instances : La dclaration de multi-instances n'est possible que dans les blocs fonctionnels crs dans STEP 7 partir de la version 2 (cf. attribut de bloc dans les proprits du FB). Pour la dclaration de multi-instances, le bloc fonctionnel doit avoir t cr comme FB admettant les multi-instances (prslection partir de STEP 7 Version x.x ; peut tre dsactive l'aide de la commande Outils > Paramtres dans l'diteur). Vous devez affecter un DB d'instance au bloc fonctionnel dans lequel vous dclarez une multiinstance. Une multi-instance ne peut tre dclare que comme variable statique (type de dclaration "stat").

Nota
Vous pouvez galement crer des multi-instances pour les blocs fonctionnels systme. Si le FB na pas t conu pour admettre des multi-instances et que cette qualit savre ncessaire par la suite, vous pouvez gnrer une source partir du FB dans laquelle vous supprimez la proprit de bloc CODE_VERSION1 pour la recompiler ensuite en FB.

10.3.3 Saisie de multi-instances dans la fentre de dclaration des variables


1. Ouvrez le FB partir duquel les FB imbriqus doivent tre appels. 2. Dfinissez, dans la dclaration des variables du FB appelant, une variable statique pour chaque appel d'un bloc fonctionnel pour l'instance duquel vous ne voulez pas prciser de DB. Dans la vue d'ensemble des variables, slectionnez le niveau hirarchique "STAT". Dans la colonne "Nom" de la vue de dtail des variables, saisissez une dsignation pour l'appel du FB. Dans la colonne "Type de donnes", saisissez le FB appeler, sous forme d'adresse absolue ou sous forme de mnmonique. Vous pouvez saisir d'ventuels explications dans la colonne de commentaire.

Appels dans la section des instructions


Si vous avez dclar des multi-instances, vous pouvez utiliser des appels de FB sans indication d'un DB d'instance. Exemple : la variable statique "Nom : Moteur_1, Type de donnes : FB20" tant dfinie, l'instance peut tre appele de la manire suivante : CALL Moteur_1 // Appel du FB 20 sans DB d'instance

240

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.4 Remarques gnrales sur la saisie d'instructions et de commentaires

10.4

Remarques gnrales sur la saisie d'instructions et de commentaires

10.4.1 Structure de la section des instructions


Vous dcrivez l'excution du programme de votre bloc de code dans la section des instructions. Vous crivez cet effet les instructions correspondantes dans des rseaux, en fonction du langage de programmation activ. L'diteur effectue une vrification de la syntaxe immdiatement aprs la saisie d'une instruction et reprsente les ventuelles erreurs en italique et en rouge. Dans la plupart des cas, la section des instructions d'un bloc de code comporte plusieurs rseaux, eux-mmes composs d'une liste d'instructions. Vous pouvez diter le titre de bloc, les commentaires de bloc, les titres de rseaux, les commentaires de rseaux ainsi que les lignes d'instructions dans les rseaux d'une section d'instructions.

Structure de la section des instructions dans l'exemple du langage de programmation LIST

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

241

Cration de blocs de code 10.4 Remarques gnrales sur la saisie d'instructions et de commentaires

10.4.2 Marche suivre pour la saisie d'instructions


De manire gnrale, vous pouvez diter les composants de la section des instructions dans un ordre quelconque. Lorsque vous programmez un bloc pour la premire fois, il est recommand de procder dans l'ordre suivant :

Vous pouvez effectuer les modifications dans les modes d'insertion et de substitution. Vous passer d'un mode l'autre avec la touche INSERTION.

242

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.4 Remarques gnrales sur la saisie d'instructions et de commentaires

10.4.3 Saisie de mnmoniques globaux dans un programme


En choisissant la commande Insertion > Mnmonique, vous pouvez insrer des mnmoniques dans la section des instructions de votre programme. Lorsque le curseur est positionn au dbut, la fin ou l'intrieur d'une chane de caractres, le mnmonique commenant par cette chane de caractres est dj slectionn - si un tel mnmonique existe. Si vous modifiez la chane de caractres, la slection est reprise dans la liste. Les sparateurs de dbut et de fin d'une chane de caractres sont par exemple le caractre d'espacement, le point et le double point. Les sparateurs ne sont pas interprts dans les mnmoniques globaux. Pour insrer des mnmoniques, vous pouvez procder de la manire suivante : 1. Saisissez les caractres de dbut du mnmonique souhait dans le programme. 2. Appuyez simultanment sur la touche CTRL et sur la touche J, pour afficher la liste des mnmoniques. Le premier mnmonique commenant par les caractres de dbut saisis est dj slectionn. 3. Validez le mnmonique en appuyant sur la touche ENTREE ou slectionnez un autre mnmonique. Le mnmonique entre guillemets remplace alors les caractres de dbut. De manire gnrale : lorsque, lors de l'insertion d'un mnmonique, le curseur se trouve au dbut, la fin ou l'intrieur d'une chane de caractres, cette chane de caractres est remplace par le mnmonique entre guillemets.

10.4.4 Titres et commentaires de blocs et de rseaux


Les commentaires amliorent la lisibilit de votre programme utilisateur et facilitent ainsi la mise en service et la recherche des erreurs ventuelles. Vous devez absolument y faire appel, car ils constituent une part importante de la documentation du programme.

Commentaires pour les programmes CONT, LOG et LIST


Vous disposez des commentaires suivants : Titre de bloc : titre d'un bloc de 64 caractres au maximum. Commentaire de bloc : documentation du bloc de code entier, indique par exemple la fonction du bloc. Titre de rseau : titre d'un rseau de 64 caractres au maximum. Commentaire de rseau : documentation de la fonction des diffrents rseaux. Colonne de commentaire de la vue de dtail des variables : commentaires pour les donnes locales dclares. Commentaire de mnmonique : commentaires ayant t saisis pour un oprande lors de la dfinition du nom dans la table des mnmoniques. Vous pouvez afficher ces commentaires en choisissant la commande Affichage > Afficher avec > Informations mnmonique.

Vous pouvez saisir le titre de bloc, les titres de rseaux ainsi que les commentaires de bloc et les commentaires de rseaux dans la section des instructions d'un bloc de code.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

243

Cration de blocs de code 10.4 Remarques gnrales sur la saisie d'instructions et de commentaires

Titre de bloc ou de rseau


Pour saisir un titre de bloc ou de rseau, positionnez le curseur sur le mot "Titre :" droite du nom de bloc ou de rseau (par exemple, Rseau 1 : Titre :). Une zone de texte dans laquelle vous pouvez entrer le titre s'ouvre. Ce titre peut comporter 64 caractres au maximum. Le commentaire d'un bloc se rapporte au bloc de code entier : vous pouvez en dcrire la fonction. Quant aux commentaires de rseaux, ils font rfrence aux rseaux individuels et dcrivent donc les caractristiques de chacun.

Pour attribuer automatiquement des titres de rseau, choisissez la commande de menu Outils > Paramtres, puis dans l'onglet "Gnral" activez l'option "Attribution automatique de titres de rseau". Le commentaire de mnmonique du premier oprande saisi sera alors repris comme titre de rseau.

Commentaires de blocs et de rseaux


Vous pouvez activer/dsactiver l'affichage des zones de commentaires grises en choisissant la commande Affichage > Afficher avec > Commentaire. Un double clic sur une telle zone de commentaires ouvre une zone de texte dans laquelle vous pouvez saisir vos explications. Vous disposez de 64 kilo-octets par bloc pour les commentaires de blocs et de rseaux.

244

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.4 Remarques gnrales sur la saisie d'instructions et de commentaires

10.4.5 Saisie de commentaires de blocs et de rseaux


1. Activez - commande coche - l'affichage des commentaires via la commande Affichage > Afficher avec > Commentaire. 2. Positionnez le curseur par un clic de la souris dans la zone grise sous le nom de bloc ou de rseau. Un cadre dlimite maintenant la zone de commentaire qui est passe du gris au blanc. 3. Saisissez le commentaire dans la zone de texte ouverte. Vous disposez de 64 kilo-octets en tout par bloc pour les commentaires de blocs et de rseaux. 4. Quittez la zone de texte par un clic de la souris en dehors de la zone de texte, via la touche TABULATION ou via la combinaison de touches MAJ + TAB. 5. Dsactivez ventuellement l'affichage des commentaires via la commande Affichage > Afficher avec > Commentaire.

10.4.6 Utilisation de modles de rseau


Si lors de la programmation de blocs, vous souhaitez utiliser certains rseaux plusieurs fois, vous pouvez les enregistrer dans une bibliothque, sous forme de modle de rseau contenant ventuellement des emplacements de rserve (p. ex. pour des oprandes). La bibliothque doit dj exister avant la cration d'un modle de rseau.

Cration d'un modle de rseau


Crez, le cas chant, une nouvelle bibliothque dans SIMATIC Manager, puis insrez un programme dans cette bibliothque en choisissant la commande de menu Insertion > Programme > Programme S7. 1. Ouvrez le bloc contenant le ou les rseaux qui vont servir de modle. 2. Dans le bloc ouvert, remplacez ventuellement le titre, le commentaire ou les oprandes par des chanes de caractres pour rserver de l'emplacement. Vous pouvez utilisez les chanes de caractres %00 %99. Celles-ci sont reprsentes en rouge. Ceci ne pose pas de problme, puisque vous nenregistrez pas le bloc aprs cration du modle de rseau. Lors de linsertion dun modle de rseau dans un bloc, vous pourrez ultrieurement remplacer les caractres non dfinis par des oprandes appropris. 3. Slectionnez "Rseau <Nr>" pour le ou les rseaux qui doivent figurer dans le modle. 4. Choisissez la commande Edition > Crer modle de rseau. 5. Dans la bote de dialogue affiche, saisissez un commentaire vocateur pour les divers caractres non dfinis utiliss. 6. Fermez la bote de dialogue en cliquant sur "OK". 7. Dans la bote de dialogue qui s'ouvre ensuite, slectionnez le Dossier Sources du programme S7 dans votre bibliothque de modles de rseau et entrez un nom pour le modle. 8. Confirmez ensuite votre saisie en cliquant sur le bouton "OK". Le modle de rseau s'affiche dans la bibliothque slectionne. 9. Fermez le bloc sans lenregistrer.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

245

Cration de blocs de code 10.4 Remarques gnrales sur la saisie d'instructions et de commentaires

Insertion d'un rseau partir d'un modle de rseau


1. Ouvrez le bloc dans lequel vous souhaitez insrer le nouveau rseau. 2. Dans le bloc, cliquez dans le rseau aprs lequel vous souhaitez insrer le rseau correspondant au modle de rseau. 3. Ouvrez l'onglet "Elments de programme" (commande de menu Insertion > Elments de programme). 4. Ouvrez le dossier "Programme S7" de la bibliothque correspondante. 5. Effectuez un double clic sur le modle de rseau. 6. Dans la bote de dialogue affiche, remplacez les caractres non dfinis dans le modle de rseau. 7. Cliquez sur le bouton "OK". Le modle de rseau est insr la suite du rseau actuel.

Nota Vous pouvez galement glisser le modle de rseau depuis l'onglet dans la fentre de l'diteur par glisser-lcher.

10.4.7 Fonction de recherche d'erreurs dans la section des instructions


Puisqu'elles sont reprsentes en rouge, les erreurs peuvent tre localises aisment dans la section des instructions. Pour passer facilement aux erreurs se trouvant hors de la zone visisible, l'diteur propose les deux fonctions de recherche Edition > Aller > Erreur prcdente/suivante. Cette recherche se fait par-del les rseaux, c'est--dire dans toute la section des instructions et pas uniquement dans le rseau en cours ou dans la zone actuellement visible. Lorsque vous activez la barre d'tat en choisissant la commande Affichage > Barre d'tat, des informations sur les erreurs s'y affichent. Vous avez galement la possibilit de corriger des erreurs et d'effectuer des modifications en mode de substitution. Vous passez du mode d'insertion au mode de substitution et inversement avec la touche INSERTION.

246

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.5 Edition d'instructions CONT dans la section des instructions

10.5

Edition d'instructions CONT dans la section des instructions

10.5.1 Paramtres pour le langage de programmation CONT


Paramtrage de la mise en page pour CONT
Vous pouvez dfinir la mise en page pour la programmation en langage CONT. Le format choisi (format vertical DIN A4, format horizontal DIN A4, taille maximale) a une influence sur le nombre d'lments CONT reprsentables dans une branche. 1. Choisissez la commande Outils > Paramtres. 2. Choisissez l'onglet "CONT/LOG" dans la bote de dialogue qui s'affiche alors. 3. Choisissez le format dsir dans la zone de liste "Mise en page". Indiquez la taille de format dsire.

Paramtres pour l'impression :


Si vous dsirez imprimer la section des instructions CONT, nous vous conseillons de dfinir le format de page appropri avant mme d'crire la section des instructions.

Paramtres dans la page d'onglet "CONT/LOG"


Dans la page d'onglet "CONT/LOG", laquelle vous accdez par la commande Outils > Paramtres, vous pouvez dfinir les paramtres gnraux comme par exemple le format ou la largeur du champ de l'oprande.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

247

Cration de blocs de code 10.5 Edition d'instructions CONT dans la section des instructions

10.5.2 Rgles pour la saisie d'instructions CONT


La description du langage "CONT" figure dans le manuel "CONT pour S7-300/400 - Programmation de blocs" ou dans l'aide en ligne sur CONT. Un rseau CONT peut tre compos de plusieurs lments dans plusieurs branches. Tous les lments et branches doivent tre relis entre eux, la barre conductrice gauche n'tant pas considre comme une liaison (CEI 1131-3). Vous devez observer quelques rgles lors de la programmation en CONT. Des messages vous signaleront d'ventuelles erreurs.

Terminaison d'un rseau CONT


Tout rseau CONT doit possder une terminaison sous forme de bobine ou de bote. Vous ne pouvez cependant pas utiliser les lments CONT suivants comme terminaison de rseau : botes de comparaison bobines pour connecteurs _/(#)_/ bobines pour le traitement de fronts positifs _/(P)_/ ou ngatifs _/(N)_/

Placement de botes
Le point de dpart de la branche pour la connexion d'une bote doit toujours tre la barre conductrice gauche. La branche prcdant la bote peut cependant contenir des fonctions logiques ou d'autres botes.

Placement de bobines
Les bobines sont automatiquement places l'extrmit droite du rseau, o elles forment la terminaison d'une branche. Exceptions : les bobines pour connecteurs _/(#)_/ et les traitements de front positifs _/(P)_/ ou ngatifs _/(N)_/ ne peuvent tre placs ni compltement gauche, ni compltement droite dans la branche. Ils ne sont pas non plus autoriss dans les branches parallles. Il existe des bobines pour lesquelles une fonction logique boolenne est requise et d'autres qui l'interdisent. Bobines ncessitant une fonction logique : sortie _/( ), mise 1 sortie _/(S), remise 0 sortie _/(R) connecteur _/(#)_/, front positif _/(P)_/, front ngatif _/(N)_/ toutes les bobines pour compteurs et temporisations sauts si 0 _/(JMPN) activation relais de masquage _/(MCR<) chargement du rsultat logique dans le registre RB _/(SAVE) retour saut _/(RET)

Bobines interdisant une fonction logique :

248

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.5 Edition d'instructions CONT dans la section des instructions

dbut de relais de masquage _/(MCRA) fin de relais de masquage _/(MCRD) ouverture bloc de donnes _/(OPN) dsactivation relais de masquage _/(MCR>)

Pour toutes les autres bobines, les fonctions logiques sont autorises sans tre requises.

Vous ne devez pas utiliser les bobines suivantes comme sortie parallle : sauts si 0 _/(JMPN) sauts si 1 _/(JMP) appel de bloc _/(CALL) retour _/(RET)

Entre de validation / sortie de validation


La connexion de l'entre de validation "EN" ou de la sortie de validation "ENO" de botes est possible mais pas requise.

Suppression et modification
Lorsqu'une branche n'est compose que d'un lment, la suppression de cet lment supprime la branche entire. La suppression d'une bote entrane galement la suppression de toutes les branches relies avec les entres boolennes de cette bote, l'exception de la branche principale. Pour le simple change d'lments du mme type, vous disposez du mode de substitution.

Branches parallles
Insrez les branches OU de la gauche vers la droite. Les branches parallles s'ouvrent vers le bas et se ferment vers le haut. Les branches parallles s'ouvrent toujours aprs l'lment CONT slectionn. Les branches parallles se ferment toujours aprs l'lment CONT slectionn. Pour effacer une branche parallle, vous devez effacer tous les lments CONT qu'elle contient. La suppression du dernier lment CONT de la branche entrane galement l'effacement du reste de celle-ci.

Constantes
Il n'est pas possible d'affecter des constantes (p. ex. TRUE ou FALSE) des combinaisons binaires. Utilisez cet effet des oprandes de type BOOL.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

249

Cration de blocs de code 10.5 Edition d'instructions CONT dans la section des instructions

10.5.3 Branchements interdits en CONT


Circulation du courant de la droite vers la gauche
Vous ne pouvez pas diter de branches qui provoqueraient une circulation inverse du courant. La figure suivante en montre un exemple. Si E 1.4 a l'tat de signal "0", E 6.8 entranerait une circulation du courant de la droite vers la gauche. Ceci est interdit.

Court-circuit
Vous ne pouvez pas diter de branches qui entranent un court-circuit. La figure suivante en montre un exemple :

250

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.6 Edition d'instructions LOG dans la section des instructions

10.6

Edition d'instructions LOG dans la section des instructions

10.6.1 Paramtres pour le langage de programmation LOG


Dfinition de la mise en page pour LOG
Vous pouvez dfinir la mise en page pour la programmation en langage LOG. Le format choisi (format vertical DIN A4, format horizontal DIN A4, taille maximale) a une influence sur le nombre d'lments LOG reprsentables dans une branche. 1. Choisissez la commande Outils > Paramtres. 2. Choisissez l'onglet "CONT/LOG" dans la bote de dialogue qui s'affiche alors. 3. Choisissez le format dsir dans la zone "Mise en page". Indiquez la taille de format dsire.

Remarques pour l'impression


Si vous dsirez imprimer la section des instructions LOG, nous vous conseillons de dfinir le format de page appropri avant mme d'crire la section des instructions.

Onglet CONT/LOG sous Outils > Paramtres


Dans la page d'onglet "CONT/LOG", laquelle vous parvenez via la commande Outils > Paramtres, vous pouvez dfinir les paramtres gnraux comme par exemple le format ou la largeur du champ de l'oprande.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

251

Cration de blocs de code 10.6 Edition d'instructions LOG dans la section des instructions

10.6.2 Rgles pour la saisie d'instructions LOG


La description du langage "LOG" figure dans le manuel "LOG pour S7-300/400 - Programmation de blocs" ou dans l'aide en ligne sur LOG. Un rseau LOG peut tre compos de plusieurs lments. Tous les lments doivent tre relis entre eux (CEI 1131-3). Vous devez observer quelques rgles lors de la programmation en LOG. Des messages vous signaleront d'ventuelles erreurs.

Insertion et dition d'adresses et de paramtres


Lors de l'insertion d'un lment LOG, les chanes de caractres "???" et "..." sont utilises pour rserver l'emplacement des adresses ou des paramtres. La chane de caractres "???" en rouge signale les adresses et paramtres devant tre dfinis. La chane de caractres "..." en noir signale les adresses et paramtres pouvant tre dfinis.

Le type de donnes escompt s'affiche lorsque vous placez le pointeur de la souris sur les adresses ou paramtres non dfinis.

Placement de botes
Aux botes avec des fonctions logiques binaires (&, >=1, XOR), vous pouvez accoler des botes standard (bascules, compteurs, temporisations, oprations de calcul, etc.). Les botes de comparaison sont exclues de cette rgle. Dans un rseau, vous n'tes pas autoris programmer des fonctions logiques spares par des sorties distinctes. A l'aide de la branche, vous pouvez cependant attribuer plusieurs affectations une squence de botes logiques. La figure suivante reprsente un rseau contenant deux affectations

252

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.6 Edition d'instructions LOG dans la section des instructions

Les botes suivantes ne doivent pas tre places l'extrmit droite de la squence logique, o elles forment la terminaison de la squence : Rinitialiser le compteur Comptage, dcomptage Activer la temporisation "Impulsion" / "Impulsion prolonge" Activer la temporisation "Retard la monte" / "retard la retombe".

Il existe des botes pour lesquelles une fonction logique boolenne est requise et d'autres qui l'interdisent.

Botes ncessitant une fonction logique :


sortie, mise 1 sortie, remise 0 sortie _/[R] connecteur _/[#]_/, front positif _/[P]_/, front ngatif _/[N]_/ toutes les botes pour compteurs et temporisations sauts si 0 _/[JMPN] activation relais de masquage _/[MCR<] chargement du rsultat logique dans le registre RB _/[SAVE] retour saut _/[RET]

Botes interdisant une fonction logique :


dbut de relais de masquage [MCRA] fin de relais de masquage [MCRD] ouverture bloc de donnes [OPN] dsactivation relais de masquage [MCR>]

Pour toutes les autres botes, les fonctions logiques sont autorises sans tre requises.

Entre de validation/ sortie de validation


La connexion de l'entre de validation "EN" ou de la sortie de validation "ENO" de botes est possible mais pas requise.

Suppression et modification
La suppression d'une bote entrane galement la suppression de toutes les branches relies avec les entres boolennes de cette bote, l'exception de la branche principale. Pour le simple change d'lments du mme type, vous disposez du mode de substitution.

Constantes
Il n'est pas possible d'affecter des constantes (p. ex. TRUE ou FALSE) des combinaisons binaires. Utilisez cet effet des oprandes de type BOOL.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

253

Cration de blocs de code 10.7 Edition d'instructions LIST dans la section des instructions

10.7

Edition d'instructions LIST dans la section des instructions

10.7.1 Paramtres pour le langage de programmation LIST


Slection des abrviations
Vous pouvez choisir parmi deux types d'abrviations : allemandes ou anglaises

Avant d'ouvrir un bloc, vous slectionnez les abrviations dans SIMATIC Manager, en choisissant la commande Outils > Paramtres, puis l'onglet "Langage". Vous ne pouvez pas modifier les abrviations durant l'dition d'un bloc. Vous ditez les proprits de bloc dans une bote de dialogue distincte. Vous pouvez ouvrir plusieurs blocs dans l'diteur et les diter les uns aprs les autres.

10.7.2 Rgles pour la saisie d'instructions LIST


La description du langage "LIST" figure dans le manuel "LIST pour S7-300/400 - Programmation de blocs" ou dans l'aide en ligne sur LIST (Description des langages). Vous devez respecter les rgles suivantes lors de la saisie d'instructions LIST en mode de saisie incrmentale :. Respectez l'ordre de programmation des blocs : il faut programmer les blocs appels avant les blocs appelants. Une instruction se compose d'un repre de saut (facultatif), d'une opration, d'un oprande et d'un commentaire (facultatif). Exemple M001: U E1.0 //commentaire Une ligne contient une seule instruction. Un bloc peut contenir 999 rseaux au maximum. Un rseau peut contenir environ 2000 lignes. Le nombre de lignes possibles varie selon que l'affichage est agrandi ou rduit. Vous pouvez saisir les oprations et les adresses absolues indiffremment en majuscules ou en minuscules.

254

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.8 Actualisation d'appels de blocs

10.8

Actualisation d'appels de blocs


En choisissant la commande Edition > Appel > Actualiser dans "CONT/LOG/LIST : Programmation de blocs S7", vous pouvez mettre jour automatiquement des appels de bloc devenus invalides. Aprs les modifications d'interfaces suivantes, vous devez effectuer une actualisation : insertion de nouveaux paramtres formels, suppression de paramtres formels, changement du nom de paramtres formels, modification du type de paramtres formels, changement de l'ordre (recopie) de paramtres formels.

L'affectation entre paramtres formels et paramtres effectifs est ralise d'aprs les rgles suivantes, dans l'ordre spcifi : 1. Noms de paramtre identiques : Les paramtres effectifs sont affects automatiquement lorsque le nom du paramtre formel est rest identique. Cas particulier : dans CONT et LOG, la fonction logique prcdente de paramtres d'entre binaires ne peut tre affecte automatiquement que si le type de donnes est identique (BOOL). Si dans un tel cas, le type de donnes a t modifi, la fonction logique prcdente reste conserve sous forme de branche ouverte. 2. Types de donnes de paramtre identiques : Une fois que les paramtres de nom identique ont t affects, les paramtres effectifs non encore affects le seront des paramtres formels de mme type de donnes que "l'ancien" paramtre formel. 3. Position de paramtre identique : Les paramtres effectifs non encore affects d'aprs les rgles 1 et 2, seront prsent affects aux nouveaux paramtres formels, d'aprs leur position dans "l'ancienne" interface. 4. Si des paramtres effectifs ne peuvent pas tre affects d'aprs les trois rgles prcites, ils seront supprims ou, dans le cas de fonctions logiques prcdentes dans CONT ou LOG, resteront conservs sous forme de branches ouvertes. Aprs avoir excut cette fonction, vrifiez les modifications ralises dans la table de dclaration des variables ainsi que dans la section des instructions du programme.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

255

Cration de blocs de code 10.8 Actualisation d'appels de blocs

10.8.1 Modifications dinterfaces


Pour les blocs hors ligne dits dans la version 5 de STEP 7, vous pouvez galement effectuer les modifications dinterface dans lditeur incrmental. 1. Assurez-vous que tous les blocs ont t compils avec la version 5 de STEP 7. Gnrez cet effet une source de tous les blocs, puis compilez cette dernire. 2. Modifiez linterface du bloc concern. 3. Ouvrez prsent successivement tous les appels - les appels correspondants sont reprsents en rouge. 4. Utilisez la commande Edition > Appel > Actualiser. 5. Gnrez une nouvelle fois les blocs de donnes dinstance concerns.

Nota
Une modification dinterface dans un bloc ouvert en ligne peut conduire larrt de la CPU. Rassignation dappels de blocs Modifiez dabord le numro des blocs appels, puis excutez la fonction de rassignation pour adapter les appels.

256

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de code 10.9 Enregistrement de blocs de code

10.9

Enregistrement de blocs de code


Pour intgrer les blocs nouvellement crs ou bien les modifications apportes la section des instructions de blocs de code ou aux tables de dclaration au systme de gestion de donnes de la PG, vous devez sauvegarder les blocs correspondants. Ainsi, les donnes sont crites sur le disque dur de la console de programmation.

Enregistrement de blocs sur le disque dur de la PG


1. Activez la fentre de travail du bloc enregistrer. 2. Choisissez : la commande Fichier > Enregistrer si vous voulez sauvegarder le bloc sous le mme nom ; la commande Fichier > Enregistrer sous si vous voulez sauvegarder le bloc sous un autre programme utilisateur S7 ou sous un autre nom. Indiquez, dans la bote de dialogue qui apparat alors, le nouveau chemin d'accs ou le nouveau bloc.

Dans les deux cas, le bloc n'est enregistr que si sa syntaxe est correcte. Les erreurs de syntaxe ventuelles sont immdiatement reconnues lors de la cration et sont affiches en rouge. Vous devez les corriger avant l'enregistrement du bloc.

Nota
Vous pouvez enregistrer des blocs ou des sources sous d'autres projets ou bibliothques galement dans SIMATIC Manager (par exemple, par glisser-lcher). L'enregistrement de blocs ou de programmes utilisateur complets sur une carte mmoire n'est possible que dans SIMATIC Manager. En cas de problme lors de l'enregistrement ou de la compilation de blocs volumineux, vous devriez rorganiser le projet. Choisissez cet effet la commande Fichier > Rorganiser dans SIMATIC Manager. Faites ensuite une nouvelle tentative d'enregistrement ou de compilation.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

257

Cration de blocs de code 10.9 Enregistrement de blocs de code

258

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

11
11.1

Cration de blocs de donnes


Principes de la cration des blocs de donnes
Dans un bloc de donnes, vous stockez, par exemple, les valeurs auxquelles votre machine ou installation accde. Contrairement au bloc de code que vous avez programm dans l'un des langages de programmation CONT/LOG ou LIST, le bloc de donnes ne comporte que la section de dclaration des variables. Il ne possde pas de section d'instructions, et ne ncessite donc pas de programmation de rseaux. Aprs avoir ouvert un bloc de donnes, vous pouvez l'afficher dans la vue des dclarations ou dans la vue des donnes. Vous passez d'une vue l'autre en choisissant les commandes Affichage > Vue des dclarations et Affichage > Vue des donnes.

Vue des dclarations


Choisissez la vue des dclarations pour lire ou dterminer la structure de donnes des DB globaux, lire la structure de donnes des DB associs un type de donnes utilisateur (UDT), lire la structure de donnes des DB associs un bloc fonctionnel.

Vous ne pouvez pas modifier la structure des blocs de donnes associs un FB ou un type de donnes utilisateur. Il vous faudrait d'abord modifier le FB ou l'UDT correspondant, puis crer un nouveau DB.

Vue des donnes


Choisissez la vue des donnes pour modifier des donnes. Seule la vue des donnes vous permet d'afficher, de saisir ou de modifier la valeur en cours de chaque lment. Dans la vue des donnes des blocs de donnes, les lments des variables avec types de donnes complexes sont numrs chacun avec leur nom complet.

Diffrence entre un bloc de donnes d'instance et un bloc de donnes global


Le bloc de donnes global n'est pas affect un bloc de code. Il contient des valeurs qui sont requises par les installations ou machines et peut tre appel directement un endroit quelconque du programme. Le bloc de donnes d'instance est quant lui directement affect un bloc de code, par exemple un bloc fonctionnel. Le bloc de donnes d'instance contient les donnes ayant t stockes dans la table de dclaration des variables d'un bloc fonctionnel.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

259

Cration de blocs de donnes 11.2 Vue des dclarations de blocs de donnes

11.2

Vue des dclarations de blocs de donnes


Vous ne pouvez pas modifier la vue des dclarations de blocs de donnes non globaux.
Colonne Adresse Dclaration Signification Ici s'affiche l'adresse que STEP 7 affecte automatiquement la variable lorsque vous achevez la saisie d'une dclaration. Cette colonne n'existe que pour les blocs de donnes d'instance. Elle indique comment les variables ont t dclares dans la dclaration des variables du FB : Nom Type Paramtres d'entre (IN) Paramtres de sortie (OUT) Paramtres d'entre/sortie (IN_OUT) Donnes statiques (STAT)

Indiquez ici le nom que vous devez affecter chaque variable. Indiquez ici le type de donnes pour la variable (BOOL, INT, WORD, ARRAY, etc.). Les variables peuvent avoir un type de donnes simple, un type de donnes complexe ou un type de donnes utilisateur. Vous pouvez prciser ici une valeur initiale si le logiciel ne doit pas prendre la valeur par dfaut pour le type de donnes indiqu. Toutes les valeurs saisies doivent tre compatibles avec les types de donnes. Cette valeur initiale est prise comme valeur en cours de la variable lors de la premire sauvegarde du bloc de donnes si vous n'affectez pas explicitement une valeur en cours cette variable. Nota : les valeurs initiales ne peuvent pas tre charges dans la CPU !

Valeur initiale

Commentaire

Vous pouvez saisir dans cette zone un commentaire pour la documentation de la variable. La longueur du commentaire ne doit pas dpasser 79 caractres.

260

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de donnes 11.3 Vue des donnes de blocs de donnes

11.3

Vue des donnes de blocs de donnes


La vue des donnes affiche les valeurs en cours de toutes les variables du bloc de donnes. Vous ne pouvez modifier ces valeurs que dans cette vue. La reprsentation sous forme de tableau est identique pour tous les blocs de donnes globaux. Elle contient une colonne "Dclaration" supplmentaire pour les blocs de donnes d'instance. Dans la vue des donnes, les lments des variables avec types de donnes complexes ou types de donnes utilisateur sont chacun lists dans leur propre ligne avec leur nom complet. Si ces lments se situent dans la zone IN_OUT d'un bloc de donnes d'instance, le pointeur apparat sur le type de donnes complexe ou utilisateur dans la colonne "Valeur en cours". La vue des donnes reprsente les colonnes suivantes :
Colonne Adresse Dclaration Signification Cette colonne affiche l'adresse que STEP 7 affecte automatiquement la variable. Cette colonne n'existe que pour les DB d'instance. Elle indique comment les variables ont t dclares dans la dclaration des variables du FB : Nom Type Paramtres d'entre (IN) Paramtres de sortie (OUT) Paramtres d'entre/sortie (IN_OUT) Donnes statiques (STAT)

Il s'agit ici du nom affect la variable. Vous ne pouvez pas diter cette zone dans la vue des donnes. Il s'agit ici du type de donnes affect la variable. Puisque, dans la vue des donnes, les lments sont numrs individuellement pour les variables avec type de donnes complexe ou utilisateur, il n'y a plus ici que des types de donnes simples pour un bloc de donnes global. Pour un bloc de donnes d'instance, cette colonne contient galement les types de paramtre. Un pointeur dsigne le type de donnes pour les paramtres d'entre/sortie (IN_OUT) avec type de donnes complexe ou utilisateur dans la colonne "Valeur en cours".

Valeur initiale

Il s'agit ici de la valeur initiale que vous avez dfinie pour la variable si le logiciel ne doit pas utiliser la valeur par dfaut pour le type de donnes indiqu. La valeur initiale est prise comme valeur en cours de la variable lors de la premire sauvegarde du bloc de donnes si vous n'affectez pas explicitement une valeur en cours cette variable. Nota : contrairement aux valeurs en cours, les valeurs initiales ne peuvent pas tre charges dans la CPU !

Valeur en cours

Hors ligne : il s'agit de la valeur de la variable l'ouverture du bloc de donnes ou aprs sa dernire modification enregistre (mme si le DB est ouvert en ligne, la mise jour de cet affichage n'a pas lieu !). En ligne : il s'agit de la valeur en cours l'ouverture du bloc de donnes. Elle n'est pas mise jour automatiquement ; vous devez actualiser l'affichage avec la touche F5. Vous pouvez diter cette zone si elle ne correspond pas un paramtre d'entre/sortie (IN_OUT) avec type de donnes complexe ou utilisateur. Toutes les valeurs saisies doivent tre compatibles avec les types de donnes. Nota : seules les valeurs en cours peuvent tre charges dans la CPU !

Commentaire

Il s'agit ici du commentaire dfini dans la dclaration des variables pour la documentation de la variable. Vous ne pouvez pas diter cette zone dans la vue des donnes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

261

Cration de blocs de donnes 11.4 Saisie et enregistrement des blocs de donnes

11.4

Saisie et enregistrement des blocs de donnes

11.4.1 Saisie de la structure de donnes de blocs de donnes globaux


Si vous avez ouvert un bloc de donnes qui n'est associ ni un UDT ni un FB, vous pouvez dfinir sa structure dans la vue des dclaration. Vous ne pouvez pas modifier la vue des dclarations de blocs de donnes non globaux. 1. Ouvrez un bloc de donnes global, c'est--dire un bloc qui n'est associ ni un UDT, ni un FB. 2. Affichez la vue des dclarations du bloc de donnes, si ce n'est dj le cas. 3. Dfinissez sa structure en compltant la table affiche avec les donnes suivantes. Vous ne pouvez pas modifier la vue des dclarations de blocs de donnes non globaux.
Colonne Adresse Nom Type Signification Ici s'affiche l'adresse que STEP 7 affecte automatiquement la variable lorsque vous achevez la saisie d'une dclaration. Indiquez ici le nom que vous devez affecter chaque variable. Indiquez ici le type de donnes pour la variable (BOOL, INT, WORD, ARRAY, etc.). Les variables peuvent avoir un type de donnes simple, un type de donnes complexe ou un type de donnes utilisateur. Vous pouvez prciser ici une valeur initiale si le logiciel ne doit pas prendre la valeur par dfaut pour le type de donnes indiqu. Toutes les valeurs saisies doivent tre compatibles avec les types de donnes. Cette valeur initiale est prise comme valeur en cours de la variable lors de la premire sauvegarde du bloc de donnes si vous n'affectez pas explicitement une valeur en cours cette variable. Commentaire Vous pouvez saisir dans cette zone un commentaire pour la documentation de la variable. La longueur du commentaire ne doit pas dpasser 79 caractres.

Valeur initiale

262

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de donnes 11.4 Saisie et enregistrement des blocs de donnes

11.4.2 Saisie / affichage de la structure de donnes de blocs de donnes associs un FB (DB d'instance)
Saisie
Lorsque vous associez un bloc de donnes un bloc fonctionnel (DB d'instance), la dclaration des variables du FB dtermine la structure du bloc de donnes. Les modifications ne sont possibles que dans le bloc fonctionnel associ. 1. Ouvrez le bloc fonctionnel associ. 2. Editez la dclaration des variables du bloc fonctionnel. 3. Recrez ensuite le bloc de donnes d'instance.

Affichage
Vous pouvez afficher dans la vue des dclarations du DB d'instance la manire dont les variables ont t dclares dans le FB. 1. Ouvrez le bloc de donnes. 2. Affichez la vue des dclarations du bloc de donnes, si ce pas dj le cas. 3. Les explications relatives la table affiche figurent ci-aprs. Vous ne pouvez pas modifier la vue des dclarations de blocs de donnes non globaux.
Colonne Adresse Dclaration Signification Cette colonne affiche l'adresse que STEP 7 affecte automatiquement la variable. Cette colonne vous indique comment les variables ont t dclares dans le bloc fonctionnel : Nom Type Paramtres d'entre (IN) Paramtres de sortie (OUT) Paramtres d'entre/sortie (IN_OUT) Donnes statiques (STAT)

Les donnes temporaires dclares du FB ne sont pas dans le bloc de donnes d'instance. Il s'agit ici du nom affect la variable dans la dclaration des variables du FB. Il s'agit ici du type de donnes affect la variable dans la dclaration des variables du FB. Les variables peuvent avoir un type de donnes simple, un type de donnes complexe ou un type de donnes utilisateur. Si d'autres blocs fonctionnels pour l'appel desquels des variables statiques ont t dclares sont appels l'intrieur du FB, il est possible d'indiquer ici un FB ou un bloc fonctionnel systme (SFB) comme type de donnes. Il s'agit ici de la valeur initiale que vous avez dfinie pour la variable dans la dclaration des variables du FB si le logiciel ne doit pas utiliser la valeur par dfaut du type de donnes. La valeur initiale est prise comme valeur en cours de la variable lors de la premire sauvegarde du bloc de donnes si vous n'affectez pas explicitement une valeur en cours cette variable. Commentaire Il s'agit ici du commentaire dfini dans la dclaration des variables du FB pour la documentation de l'lment de donnes. Vous ne pouvez pas diter cette zone.

Valeur initiale

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

263

Cration de blocs de donnes 11.4 Saisie et enregistrement des blocs de donnes

Nota Dans les blocs de donnes associs un FB, vous ne pouvez diter que les valeurs en cours des variables. La saisie de ces valeurs en cours se fait dans la vue des donnes des blocs de donnes.

264

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de donnes 11.4 Saisie et enregistrement des blocs de donnes

11.4.3 Saisie de la structure de types de donnes utilisateur (UDT)


1. Ouvrez le type de donnes utilisateur (UDT). 2. Affichez la vue des dclarations, si ce n'est dj le cas. 3. Dfinissez la structure du type de donnes utilisateur en dterminant l'ordre des variables, leur type de donnes et, ventuellement, leur valeur initiale en fonction des donnes ci-aprs. 4. Vous achevez la saisie d'une variable en quittant la ligne avec la touche TAB ou ENTREE.
Colonne Adresse Nom Type Signification Ici s'affiche l'adresse que STEP 7 affecte automatiquement la variable lorsque vous achevez la saisie d'une dclaration. Indiquez ici le nom que vous devez affecter chaque variable. Indiquez ici le type de donnes pour la variable (BOOL, INT, WORD, ARRAY, etc.). Les variables peuvent avoir un type de donnes simple, un type de donnes complexe ou un type de donnes utilisateur. Vous pouvez prciser ici une valeur initiale si le logiciel ne doit pas prendre la valeur par dfaut pour le type de donnes indiqu. Toutes les valeurs saisies doivent tre compatibles avec les types de donnes. Lorsque vous sauvegardez pour la premire fois une instance de l'UDT (variable ou bloc de donnes), la valeur initiale est prise comme valeur en cours pour la variable si vous n'indiquez pas explicitement une autre valeur en cours. Commentaire Vous pouvez saisir dans cette zone un commentaire pour la documentation de la variable. La longueur du commentaire ne doit pas dpasser 79 caractres.

Valeur initiale

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

265

Cration de blocs de donnes 11.4 Saisie et enregistrement des blocs de donnes

11.4.4 Saisie / affichage de la structure de blocs de donnes associs un UDT


Saisie
Lorsque vous associez un bloc de donnes un type de donnes utilisateur (UDT), la structure des donnes de l'UDT dtermine celle du bloc de donnes. Les modifications ne sont possibles que dans le type de donnes utilisateur associ. 1. Ouvrez le type de donnes utilisateur. 2. Editez la structure du type de donnes utilisateur. 3. Recrez le bloc de donnes.

Affichage
Vous pouvez uniquement afficher dans la vue des dclarations du DB la manire dont les variables ont t dclares dans l'UDT. 1. Ouvrez le bloc de donnes. 2. Affichez la vue des dclarations du bloc de donnes, si ce n'est dj le cas. 3. Les explications relatives la table affiche figurent ci-aprs. Vous ne pouvez pas modifier la vue des dclarations. Les modifications ne sont possibles que dans le type de donnes utilisateur associ.
Colonne Adresse Nom Type Signification Cette colonne affiche l'adresse que STEP 7 affecte automatiquement la variable. Il s'agit ici du nom affect la variable dans l'UDT. Il s'agit ici du type de donnes affect la variable dans l'UDT. Les variables peuvent avoir un type de donnes simple, un type de donnes complexe ou un type de donnes utilisateur. Il s'agit ici de la valeur initiale que vous avez dfinie pour la variable dans l'UDT si le logiciel ne doit pas utiliser la valeur par dfaut du type de donnes. Cette valeur initiale est prise comme valeur en cours de la variable lors de la premire sauvegarde du bloc de donnes si vous n'affectez pas explicitement une valeur en cours cette variable. Commentaire Il s'agit ici du commentaire dfini dans l'UDT pour la documentation de l'lment de donnes.

Valeur initiale

Nota Dans les blocs de donnes associs un UDT, vous ne pouvez diter que les valeurs en cours des variables. La saisie de ces valeurs en cours se fait dans la vue des donnes des blocs de donnes.

266

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de blocs de donnes 11.4 Saisie et enregistrement des blocs de donnes

11.4.5 Modification de valeurs dans la vue des donnes


L'dition de valeurs en cours n'est possible que dans la vue des donnes de blocs de donnes. 1. Activez, si ncessaire, la vue des donnes de la table l'aide de la commande Affichage > Vue des donnes. 2. Saisissez les valeurs en cours dsires pour les lments de donnes dans la colonne "Valeur en cours". Ces valeurs doivent tre compatibles avec le type de donnes des lments ; Les saisies errones - par exemple, une valeur saisie incompatible avec le type de donnes - sont reconnues immdiatement lors de l'dition et affiches en rouge. Vous devez les corriger avant de sauvegarder le bloc de donnes.

Nota Les modifications des valeurs ne sont sauvegardes que lors de l'enregistrement des blocs de donnes.

11.4.6 Rinitialisation de valeurs en leur substituant leur valeur initiale


La rinitialisation est uniquement possible dans la vue des donnes de blocs de donnes. 1. Activez, si ncessaire, la vue des donnes de la table l'aide de la commande Affichage > Vue des donnes. 2. Choisissez pour ce faire la commande Edition > Rinitialiser bloc de donnes. Toutes les variables sont rinitialises, c'est--dire aux valeurs en cours de toutes les variables est substitue la valeur initiale correspondante.

Nota Les modifications des valeurs ne sont sauvegardes que lors de l'enregistrement des blocs de donnes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

267

Cration de blocs de donnes 11.4 Saisie et enregistrement des blocs de donnes

11.4.7 Enregistrement de blocs de donnes


Pour intgrer les blocs de donnes nouvellement crs ou les modifications apportes aux valeurs dans les blocs de donnes au systme de gestion de donnes de la PG, vous devez sauvegarder les blocs correspondants. Ainsi, les donnes sont crites sur le disque dur de la console de programmation.

Enregistrement de blocs sur le disque dur de la PG


1. Activez la fentre de travail du bloc enregistrer. 2. Choisissez : la commande Fichier > Enregistrer si vous voulez sauvegarder le bloc sous le mme nom ; la commande Fichier > Enregistrer sous si vous voulez sauvegarder le bloc sous un autre programme utilisateur S7 ou sous un autre nom. Indiquez, dans la bote de dialogue qui apparat alors, le nouveau chemin d'accs ou le nouveau bloc. Il est interdit de spcifier DB0 qui est rserv au systme.

Dans les deux cas, le bloc n'est enregistr que si sa syntaxe est correcte. Les erreurs de syntaxe ventuelles sont immdiatement reconnues lors de la cration et sont affiches en rouge. Vous devez les corriger avant l'enregistrement du bloc.

Nota
Vous pouvez enregistrer des blocs ou des sources sous d'autres projets ou bibliothques galement dans SIMATIC Manager (par exemple, par glisser-lcher). L'enregistrement de blocs ou de programmes utilisateur complets sur une carte mmoire n'est possible que dans SIMATIC Manager. En cas de problme lors de l'enregistrement ou de la compilation de blocs volumineux, vous devriez rorganiser le projet. Choisissez cet effet la commande Fichier > Rorganiser dans SIMATIC Manager. Faites ensuite une nouvelle tentative d'enregistrement ou de compilation.

268

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

12

Paramtrage de blocs de donnes


La fonction "Paramtrage de blocs de donnes" vous permet d'diter les valeurs actuelles de blocs de donnes d'instance et de les charger dans le systme cible sans devoir charger le blocs de donnes complet, de visualiser en ligne les blocs de donnes d'instance, de paramtrer et de visualiser en ligne dans la vue des paramtres, les blocs de donnes d'instance et les multiinstances possdant l'attribut systme S7_techparam (fonctions technologiques), en dehors de l'diteur de programmes CONT/LIST/LOG.

Procdez de la manire suivante :


1. Ouvrez le bloc de donnes d'instance par double clic dans SIMATIC Manager. 2. Rpondez par "Oui" la demande d'ouverture de l'application "Paramtrage de blocs de donnes". Rsultat : le DB d'instance s'ouvre dans l'application "Paramtrage de blocs de donnes". 3. En choisissant l'une des commandes de menu Affichage > Vue des donnes ou Affichage > Vue des dclarations, prcisez la vue dans laquelle vous souhaitez afficher le bloc de donnes. La vue de paramtrage technologique s'ouvre automatiquement pour les blocs de donnes d'instance ou les multiinstances possdant l'attribut systme S7_techparam. 4. Editez ensuite le blocs de donnes d'instance. D'ventuels informations, avertissements et erreurs s'affichent dans la fentre des messages. En effectuant un double clic sur un avertissement ou une erreur, vous parvenez l'occurrence de l'erreur. 5. Choisissez la commande de menu Systme cible > Charger les donnes de paramtrage pour charger les valeurs actuelles modifies depuis votre PG dans la CPU que vous avez affecte au programme S7 actuel. 6. Choisissez la commande de menu Test > Visualiser pour afficher l'tat du programme pour le bloc ouvert et visualiser en ligne l'dition des valeurs actuelles charges.

Nota Pour savoir si un bloc de donnes d'instance possde l'attribut systme S7_techparam, slectionnez le bloc dans SIMATIC Manager, choisissez la commande de menu Edition > Proprits de l'objet, puis ouvrez l'onglet "Attributs".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

269

Paramtrage de blocs de donnes 12.1 Paramtrage de fonctions technologiques

12.1

Paramtrage de fonctions technologiques


La fonction "Paramtrage de blocs de donnes" vous permet de paramtrer et de visualiser en ligne les blocs de rgulation de temprature FB 58 "TCONT_CP" et FB 59 "TCONT_S" livrs dans la bibliothque "Standard Library", grce une interface graphique facile utiliser.

Procdez de la manire suivante :


1. Ouvrez la bibliothque standard "Standard Library" de STEP 7 en choisissant la commande Fichier > Ouvrir > Bibliothques dans SIMATIC Manager. 2. Slectionnez "PID Control Blocks", puis cliquez sur "Blocks". Les blocs fonctionnels suivants avec l'attribut "S7_techparam" vous sont proposs : FB 58 "TCONT_CP" : rgulateur de temprature pour actionneurs signal d'entre en continu ou puls FB 59 "TCONT_S" : rgulateur de temprature pour actionneurs action par intgration

3. Copiez le bloc fonctionnel souhait (FB 58 ou FB 59) depuis la bibliothque standard dans votre projet. 4. Crez un DB d'instance pour le FB slectionn en choisissant la commande Insertion > Bloc S7 > Bloc de donnes. 5. Dans SIMATIC Manager, ouvrez le DB d'instance par double clic afin de dmarrer la fonction "Paramtrage de blocs de donnes". Rsultat : le DB d'instance s'ouvre dans la vue technologique. Vous pouvez prsent le paramtrer et le visualiser facilement en ligne. 6. Entrez les valeurs de rgulation souhaites dans la vue technologique. Les informations, avertissements et erreurs ventuels sont affichs dans la fentre de message. En effectuant un doucle-clic sur un avertissement ou une erreur, vous parvenez lendroit correspondant.

Nota Pour reconnatre un bloc qui possde l'attribut systme "S7_techparam", slectionnez-le dans SIMATIC Manager, choisissez la commande de menu Edition > Proprits de l'objet et ouvrez la page d'onglet "Attributs".

270

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

13
13.1

Cration de sources LIST


Principes de la programmation dans des sources LIST
Vous pouvez saisir tout ou partie de votre programme sous forme de source LIST que vous compilez ensuite en blocs. La source peut contenir le code pour plusieurs blocs qui seront ensuite compils en une seule opration en blocs. Les avantages qui rsident dans la cration d'un programme dans une source sont les suivants : Vous pouvez crer et traiter votre source avec l'diteur ASCII de votre choix, puis l'importer et la compiler en blocs individuels avec cette application. La compilation entrane la gnration des diffrents blocs et leur sauvegarde dans le programme utilisateur S7. Vous pouvez programmer plusieurs blocs dans une mme source. Vous pouvez enregistrer une source malgr la prsence ventuelle d'erreurs de syntaxe, ce qui n'est pas possible lors de la cration de blocs de code avec vrification de syntaxe incrmentale. Cela signifie toutefois galement que les erreurs de syntaxe ne vous seront signales que lors de la compilation de la source.

Vous crez votre source dans la syntaxe du langage de programmation "liste d'instructions (LIST)". L'organisation de la source en blocs, dclaration de variables ou rseaux se fait l'aide de mots-cls.

Lors de la cration de blocs dans des sources LIST, vous devez considrer : Rgles pour la programmation de sources LIST Syntaxe et formats autoriss dans les sources LIST Structure de bloc autorise des sources LIST

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

271

Cration de sources LIST 13.2 Rgles pour la programmation dans une source LIST

13.2

Rgles pour la programmation dans une source LIST

13.2.1 Rgles pour la saisie d'instructions dans une source LIST


Une source LIST contient essentiellement un texte continu. Vous devez respecter des structures et des rgles de syntaxe prcises pour qu'elle puisse tre traduite en blocs. Les rgles gnrales suivantes sont valables pour la cration de programmes utilisateur sous forme de sources LIST :
Thme Syntaxe CALL Rgle La syntaxe des instructions LIST est identique celle dans l'diteur LIST incrmental. L'opration d'appel CALL constitue une exception. Dans une source, vous indiquez les paramtres entre parenthses. Les paramtres individuels sont spars par une virgule. Exemple d'appel de FC (une ligne) : CALL FC 10 (param1 :=E0.0,param2 :=E0.1); Exemple d'appel de FB (une ligne) : CALL FB10, DB100 (para1 :=E0.0,para2 :=E0.1); Exemple d'appel de FB (plusieurs lignes) : CALL FB10, DB100 ( para1 :=E0.0, para2 :=E0.1); Nota : Lors dun appel de bloc dans lditeur ASCII, vous devez transmettre les paramtres selon un ordre dfini. Sinon, laffectation des commentaires de ces lignes ne sera pas correct dans laffichage en LIST ou dans laffichage de la source, le cas chant. Majuscules ou minuscules L'diteur de cette application ne tient, en gnral, pas compte des majuscules et minuscules, si ce n'est pour les attributs systme et les repres de saut. Vous devez galement respecter les majuscules et minuscules lors de la saisie de chanes de caractres (type de donnes STRING). Les mots-cls sont reprsents en majuscules. Mais vous pouvez les indiquer en majuscules, en minuscules ou encore en majuscules et minuscules mlanges, car il n'est pas fait de diffrence entre majuscules et minuscules lors de la compilation. Vous devez signaler la fin de chaque instruction LIST et de chaque dclaration de variable par un point-virgule. Vous pouvez crire plusieurs instructions par ligne.

Point-virgule

Deux barres obliques (//)

Introduisez chaque commentaire par deux barres obliques (//) et achevez la saisie des commentaires avec la touche ENTREE.

272

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.2 Rgles pour la programmation dans une source LIST

13.2.2 Rgles pour la dclaration de variables dans une source LIST


Vous devez dclarer les variables correspondant chaque bloc de la source. La dclaration des variables prcde la section des instructions du bloc. Si elles existent, il faut dclarer les variables dans l'ordre indiqu des types de dclarations. Ainsi, toutes les variables d'un mme type de dclaration sont regroupes. Alors qu'en CONT, LOG ou LIST vous remplissez une table de dclaration des variables, vous devez ici utiliser les mots-cls appropris.

Mots-cls pour la dclaration des variables


Type de dclaration Paramtres d'entre Mots-cls "VAR_INPUT" Liste de dclaration "END_VAR" Paramtres de sortie "VAR_OUTPUT" Liste de dclaration "END_VAR" Paramtres d'entre/sortie "VAR_IN_OUT" Liste de dclaration "END_VAR" Variables statiques "VAR" Liste de dclaration "END_VAR" Variables temporaires "VAR_TEMP" Liste de dclaration" END_VAR" OB, FB, FC FB FB, FC FB, FC Possible pour... FB, FC

Le mot-cl END_VAR caractrise la fin d'une liste de dclaration. La liste de dclaration correspond la liste des variables d'un type de dclaration. Vous pouvez y affecter une valeur initiale aux variables ( l'exception de VAR_TEMP). La figure suivante illustre la structure d'une entre dans la liste de dclaration : Dure_moteur1 Variable S5TIME Type de donnes := S5T#1H_30M ;

Valeur par dfaut

Nota
Le nom de la variable doit commencer par une lettre ou le caractre de soulignement. Vous ne devez pas indiquer de nom de variable correspondant un mot-cl rserv. Si des noms de variables sont identiques dans les dclarations locales et dans la table des mnmoniques, faites prcder les noms des variables locales du signe # et crivez les variables de la table des mnmoniques entre guillemets. Sinon, le bloc interprte la variable comme variable locale.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

273

Cration de sources LIST 13.2 Rgles pour la programmation dans une source LIST

13.2.3 Rgles pour l'ordre des blocs dans une source LIST
Les blocs appels doivent prcder les blocs appelants, c'est--dire : L'OB1 utilis dans la plupart des cas et qui appelle d'autres blocs vient en dernier. De mme, les blocs appels par des blocs eux-mmes appels dans l'OB1 doivent prcder ces blocs. Les types de donnes utilisateur (UDT) doivent prcder les blocs o ils sont utiliss. Les blocs de donnes associs un type de donnes utilisateur (UDT) doivent se trouver aprs cet UDT. Les blocs de donnes globaux doivent prcder tous les blocs qui les appellent. Un bloc de donnes d'instance doit se trouver aprs le bloc fonctionnel auquel il est associ. Le DB0 est rserv ; vous ne pouvez pas gnrer de DB portant ce numro.

13.2.4 Rgles pour la dfinition d'attributs systme dans une source LIST
Il est possible daffecter des blocs et des paramtres des attributs systme qui rgissent la configuration des messages et des liaisons, les fonctions de contrle-commande et la configuration du systme.

Rgles respecter dans la source : Les mots-cls des attributs systme commencent toujours par S7_. Il faut crire les attributs systme entre accolades. Syntaxe : {S7_identificateur := 'chane'} Il faut sparer les diffrents identificateurs par un point-virgule. Les attributs systme pour blocs prcdent les proprits de bloc, mais suivent les mots-cls ORGANIZATION_ ou TITLE. Les attributs systme pour paramtres figurent dans la dclaration des paramtres, c'est--dire avant le deux-points de la dclaration des donnes. La distinction est faite entre les majuscules et les minuscules, ce qui signifie que les majuscules et minuscules sont significatives pour la saisie d'attributs systme !

Vous pouvez contrler et modifier les attributs systme pour blocs en saisie incrmentale l'aide de la commande Fichier > Proprits qui ouvre la page d'onglet "Attributs". Vous pouvez contrler et modifier les attributs systme pour paramtres en saisie incrmentale l'aide de la commande Edition > Proprits de l'objet. Le curseur doit se trouver dans le champ de nom de la dclaration de paramtre.

274

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.2 Rgles pour la programmation dans une source LIST

13.2.5 Rgles pour la dfinition de proprits de bloc dans une source LIST
Les proprits de bloc vous permettent de mieux identifier les blocs crs (par exemple, grce au numro de version) ou de les protger de modifications non autorises. Vous pouvez les contrler et les modifier en saisie incrmentale, l'aide de la commande Fichier > Proprits, dans les pages d'onglet "Fiche didentit, partie 1" et "Fiche didentit, partie 2". Vous ne pouvez indiquer les autres proprits de bloc que dans la source. Rgles respecter dans la source : Il faut indiquer les proprits de bloc avant la section de dclaration des variables. Utilisez une ligne par proprit de bloc. N'achevez pas la ligne par un point-virgule. Faites prcder chaque proprit de bloc de son mot-cl. Si vous dsirez saisir des proprits de bloc, respectez l'ordre du tableau des proprits de bloc. Vous trouverez les proprits possibles pour un type de bloc dans Affectation de proprits de bloc selon les types de blocs.

Nota Les proprits de bloc sont galement affiches dans SIMATIC Manager, dans les proprits d'objet pour un bloc. L, il est aussi possible d'diter les proprits AUTHOR, FAMILY, NAME et VERSION.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

275

Cration de sources LIST 13.2 Rgles pour la programmation dans une source LIST

Proprits de bloc et ordre


Lorsque vous indiquez des proprits de bloc, vous devez respecter l'ordre donn dans le tableau suivant.
Ordre 1. Mot-cl / Proprit [KNOW_HOW_PROTECT] Signification Protection du bloc : il est impossible de visualiser la section des instructions d'un bloc compil avec cette option. Il est possible de lire l'interface du bloc et non de la modifier. Exemple KNOW_HOW_PROTECT

2.

[AUTHOR:]

Nom de l'auteur, nom de la socit, du AUTHOR : Siemens, mais service ou autres noms pas de mot-cl (8 caractres au maximum, sans espace) Nom de la famille du bloc : par exemple, FAMILY : Regul, mais pas Regul de mot-cl (8 caractres au maximum, sans espace) Nom du bloc (8 caractres au maximum) Numro de version du bloc (ces deux nombres entre 0 et 15, soit 0.0 15.15) Identification indiquant si un FB admet des multi-instances ou non. Si vous voulez dclarer des multi-instances, le FB ne doit pas avoir cette proprit. Les blocs de donnes possdant l'attribut UNLINKED sont uniquement stocks dans la mmoire de chargement, n'occupent pas d'espace dans la mmoire de travail et ne sont pas relis au programme. Il n'est pas possible d'y accder avec des commandes MC7. Les contenus de tels DB peuvent uniquement tre transfrs dans la mmoire de travail au moyen des SFC 20 BLKMOV (S7-300. S7-400) L'application de cette option suppose que la CPU prenne en charge la fonctionnalit Retain des DB. Un bloc de donnes avec la proprit "Non-Retain" n'est pas enregistr dans la mmoire rmanente d'une telle CPU (p. B. CPU 317 V2.1) et repend par consquent les valeurs de chargement aprs chaque mise hors/sous tension et aprs chaque passage de la CPU de STOP en RUN. Protection pour blocs de donnes : il est uniquement possible de lire les donnes et non de les modifier. FAMILY= Exemples VERSION= 3.10 READ_ONLY NAME : PID, mais pas de mot-cl VERSION : 3.10

3.

[FAMILY:]

4. 5.

[NAME:] [VERSION: int1. int2]

6.

[CODE_VERSION1]

CODE_VERSION1

7.

[UNLINKED] seulement pour DB

8.

[NON_RETAIN]

9.

[READ_ONLY] seulement pour DB

276

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.2 Rgles pour la programmation dans une source LIST

13.2.6 Proprits de bloc autorises pour chaque type de bloc


Le tableau suivant prsente les proprits que vous pouvez dclarer pour les diffrents types de blocs.
Proprit KNOW_HOW_PROTECT AUTHOR FAMILY NAME VERSION Attribut "Unlinked" NON_RETAIN READ_ONLY OB FB FC DB UDT

Dfinition d'une protection de bloc avec KNOW_HOW_PROTECT


Vous pouvez protger un bloc en indiquant le mot-cl KNOW_HOW_PROTECT dans la source LIST lors de la programmation du bloc. Protger un bloc a les consquences suivantes : Lorsque vous afficherez plus tard un bloc compil dans l'diteur CONT, LOG ou LIST incrmental, vous n'aurez pas accs la section des instructions de ce bloc. Seules les variables de types de dclarations IN, OUT et IN_OUT seront visualises dans la table de dclaration des variables du bloc. Les variables internes dclares comme STAT et TEMP seront masques. Indiquez le mot-cl KNOW_HOW_PROTECT avant toutes les autres proprits du bloc.

Dfinition d'une protection en criture pour les blocs de donnes avec READ_ONLY
Vous pouvez dfinir une protection en criture pour les blocs de donnes afin que leur contenu ne soit pas remplac lors de l'excution du programme. A cet effet, le bloc de donnes doit exister sous forme de source LIST. Dans la source, indiquez le mot-cl READ_ONLY. Il doit se trouver juste avant les dclarations de variables dans sa propre ligne.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

277

Cration de sources LIST 13.3 Structure des blocs dans une source LIST

13.3

Structure des blocs dans une source LIST


La structuration de blocs dans une source LIST s'effectue au moyen de mots-cls. Selon le type de bloc, l'on distingue la structure de : blocs de code blocs de donnes types de donnes utilisateur

13.3.1 Structure des blocs de code dans une source LIST


Un bloc de code se compose des zones suivantes, introduites par leur mot-cl respectif : Dbut de bloc, identifi par un mot-cl et un numro ou un nom, par exemple : "ORGANIZATION_BLOCK OB 1" pour un bloc d'organisation "FUNCTION_BLOCK FB 6" pour un bloc fonctionnel "FUNCTION FC 1 : INT" pour une fonction. Son type est galement indiqu. Il peut s'agir d'un type de donnes simple ou complexe (sauf ARRAY et STRUCT) et c'est lui qui dtermine le type de donnes de la valeur en retour (RET_VAL). Indiquez le mot-cl VOID si la fonction ne doit pas renvoyer de valeur.

Titre de bloc facultatif, introduit par le mot-cl TITLE= (longueur maximale de 64 caractres). Commentaire supplmentaire, introduit par deux barres obliques // en dbut de ligne Indication des proprits du bloc (facultative) Section de dclaration des variables Section des instructions introduite par BEGIN. Cette section contient un ou plusieurs rseaux identifis par le mot-cl NETWORK. Vous ne pouvez pas indiquer de numro de rseau. Titre de rseau facultatif pour chaque rseau ralis, introduit par le mot-cl TITLE = (longueur maximale de 64 caractres). Commentaire supplmentaire pour chaque rseau, introduit par deux barres obliques // en dbut de ligne Fin de bloc identifie par END_ORGANIZATION_BLOCK, END_FUNCTION_BLOCK ou END_FUNCTION Le type de bloc et le numro de bloc sont spars par un espace. Vous pouvez crire le mnmonique du bloc entre guillemets afin de garantir l'univocit entre noms de variables locales et noms dans la table des mnmoniques.

278

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.3 Structure des blocs dans une source LIST

13.3.2 Structure des blocs de donnes dans une source LIST


Un bloc de donnes se compose des zones suivantes, introduites par leur mot-cl respectif : Dbut de bloc, identifi par le mot-cl et le numro ou le nom du bloc, par exemple DATA_BLOCK DB 26 Indication (facultative) du type de donnes utilisateur ou du bloc fonctionnel auquel le DB est associ Titre de bloc facultatif, introduit par le mot-cl TITLE =. Ce titre est tronqu au-del de 64 caractres. Commentaire de bloc facultatif, introduit par deux barres obliques // Indication des proprits du bloc (facultative) Section de dclaration des variables (facultative) Section d'affectation avec valeurs initiales, introduite par BEGIN (facultative) Fin de bloc identifie par END_DATA_BLOCK

Il existe trois types de blocs de donnes : les blocs de donnes (dfinis par l'utilisateur), les blocs de donnes associs un type de donnes utilisateur (UDT), les blocs de donnes associs un bloc fonctionnel (DB d'instance).

13.3.3 Structure des types de donnes utilisateur dans une source LIST
Un type de donnes utilisateur se compose des zones suivantes, introduites par leur mot-cl respectif : Dbut, identifi par le mot-cl TYPE et un numro ou un nom, par exemple TYPE UDT 20 Indication d'un type de donnes structur Fin, identifie par le mot-cl END_TYPE

N'oubliez pas que la dfinition de types de donnes utilisateur doit se situer avant les blocs qui utilisent ces types de donnes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

279

Cration de sources LIST 13.4 Syntaxe et formats pour les blocs dans une source LIST

13.4

Syntaxe et formats pour les blocs dans une source LIST


Les tableaux prsentent la syntaxe et les formats que vous devez respecter lors de la programmation de <18>sources LIST. La syntaxe est indique comme suit : Chaque lment est dcrit dans la colonne de droite. Les lments obligatoires sont indiqus entre guillemets. Les indications entre crochets [...] sont facultatives. Les mots-cls sont donns en majuscules.

13.4.1 Tableau du format pour les OB


Le tableau suivant prsente, sous forme condense, le format pour les blocs d'organisation dans les sources LIST :
Organisation "ORGANIZATION_BLOCK" n-OB ou nom-OB [TITLE= ] [Commentaire de bloc] [Attributs systme pour blocs] [Proprits de bloc] Section de dclaration des variables "BEGIN" NETWORK [TITLE= ] [Commentaire de rseau] Liste des instructions LIST "END_ORGANIZATION_BLOCK" Description n-OB est le numro du bloc, par exemple OB 1 nom-OB est le mnmonique du bloc selon la table des mnmoniques Titre jusqu'au retour chariot ; il est tronqu au-del de 64 caractres. Commentaire facultatif prcd de // Attributs systme pour blocs Proprits de bloc Dclaration des variables temporaires Mot-cl sparant la section de dclaration des variables des instructions LIST Dbut d'un rseau Titre de rseau (64 caractres au maximum) Commentaire facultatif prcd de // Instructions du bloc Mot-cl indiquant la fin du bloc d'organisation

280

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.4 Syntaxe et formats pour les blocs dans une source LIST

13.4.2 Tableau du format pour les FB


Le tableau suivant prsente, sous forme condense, le format pour les blocs fonctionnels dans les sources LIST :
Organisation "FUNCTION_BLOCK" n-FB ou nomFB [TITLE= ] [Commentaire de bloc] [Attributs systme pour blocs] [Proprits de bloc] Section de dclaration des variables Description n-FB est le numro du bloc, par exemple FB 6 nom-FB est le mnmonique du bloc selon la table des mnmoniques Titre jusqu'au retour chariot ; il est tronqu au-del de 64 caractres. Commentaire facultatif prcd de // Attributs systme pour blocs Proprits de bloc Dclaration des paramtres d'entre, de sortie et d'entre/sortie, ainsi que des variables temporaires ou statiques La dclaration des paramtres peut contenir les dclarations des attributs systme pour paramtres. "BEGIN" NETWORK [TITLE= ] [Commentaire de rseau] Liste des instructions LIST "END_FUNCTION_BLOCK" Mot-cl sparant la section de dclaration des variables des instructions LIST Dbut d'un rseau Titre de rseau (64 caractres au maximum) Commentaire facultatif prcd de // Instructions du bloc Mot-cl indiquant la fin du bloc fonctionnel

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

281

Cration de sources LIST 13.4 Syntaxe et formats pour les blocs dans une source LIST

13.4.3 Tableau du format pour les FC


Le tableau suivant prsente, sous forme condense, le format pour les fonctions dans les sources LIST :
Organisation "FUNCTION" n-FC : type-FC ou nom-FC : type-FC Description n-FC est le numro de la fonction, par exemple FC 5 nom-FC est le mnmonique de la fonction selon la table des mnmoniques type-FC indique le type de donnes de la valeur en retour (RET_VAL) de la fonction. Il peut s'agir d'un type de donnes simple ou complexe (sauf ARRAY et STRUCT) ou bien de VOID. Si vous souhaitez utiliser des attributs systme pour la valeur en retour (RET_VAL), vous devez inscrire les attributs systme pour paramtresavant les deux-points de la dclaration des donnes. [TITLE= ] [Commentaire de bloc] [Attributs systme pour blocs] [Proprits de bloc] Section de dclaration des variables "BEGIN" NETWORK [TITLE= ] [Commentaire de rseau] Liste des instructions LIST "END_FUNCTION" Titre jusqu'au retour chariot ; il est tronqu au-del de 64 caractres. Commentaire facultatif prcd de // Attributs systme pour blocs Proprits de bloc Dclaration des paramtres d'entre, de sortie et d'entre/sortie, ainsi que des variables temporaires Mot-cl sparant la section de dclaration des variables des instructions LIST Dbut d'un rseau Titre de rseau (64 caractres au maximum) Commentaire facultatif prcd de // Instructions du bloc Mot-cl indiquant la fin de la fonction

282

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.4 Syntaxe et formats pour les blocs dans une source LIST

13.4.4 Tableau du format pour les DB


Le tableau suivant prsente, sous forme condense, le format pour les blocs de donnes dans les sources LIST :
Organisation "DATA_BLOCK" n-DB ou nom-DB [TITLE= ] [Commentaire de bloc] [Attributs systme pour blocs] [Proprits de bloc] Section de dclaration Description n-DB est le numro du bloc, par exemple DB 5 nom-DB est le mnmonique du bloc selon la table des mnmoniques Titre jusqu'au retour chariot ; il est tronqu au-del de 64 caractres. Commentaire facultatif prcd de // Attributs systme pour blocs Proprits de bloc DB d'instance : indication de l'UDT ou du FB auquel le DB est associ sous forme de numro de bloc ou de mnmonique selon la table des mnmoniques. DB global : indication de la variable avec le type de donnes et la valeur initiale (facultative). "BEGIN" [Affectation de valeurs actuelles] Mot-cl sparant la section de dclaration de la liste des affectations de valeurs Il est possible d'affecter des valeurs actuelles aux variables. Des constantes sont affectes certaines variables ou il est fait rfrence d'autres blocs. Mot-cl indiquant la fin du bloc de donnes

"END_DATA_BLOCK"

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

283

Cration de sources LIST 13.5 Cration d'une source LIST

13.5

Cration d'une source LIST

13.5.1 Cration d'une source LIST


Vous devez crer la source sous le programme S7, dans un dossier Sources. Vous pouvez crer une source dans SIMATIC Manager ou dans la fentre d'dition.

Cration d'une source dans SIMATIC Manager


1. Ouvrez le dossier Sources correspondant en cliquant deux fois dessus. 2. Pour insrer une source LIST, choisissez la commande Insertion > Logiciel S7 > Source LIST.

Cration d'une source dans la fentre d'dition


1. Choisissez la commande Fichier > Nouveau. 2. Choisissez, dans la bote de dialogue, le dossier Sources du programme S7 dans lequel se trouve galement le programme utilisateur avec les blocs. 3. Attribuez un nom la source crer. 4. Confirmez par "OK". La source est cre avec le nom que vous avez indiqu et affiche dans une fentre de travail pour dition.

13.5.2 Edition d'une source S7


Le langage de programmation et l'diteur avec lesquels vous ditez une source donne sont dfinis dans les proprits de l'objet. Ainsi, l'diteur correct sera toujours dmarr avec le langage de programmation correspondant la source. Le logiciel de base STEP 7 permet la programmation dans une source LIST. D'autres langages de programmation sont toutefois disponibles sous forme de logiciels optionnels. Le logiciel optionnel doit tre install sur votre ordinateur, pour que vous puissiez dmarrez l'diteur correspondant en cliquant deux fois sur la source. Procdez de la manire suivante : 1. Ouvrez le dossier Sources correspondant en cliquant deux fois dessus. 2. Dmarrez l'diteur ncessaire l'dition de la manire suivante : Cliquez deux fois sur la source correspondante dans la partie droite de la fentre. Slectionnez la source correspondante dans la partie droite de la fentre et choisissez la commande Edition > Ouvrir l'objet.

284

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.5 Cration d'une source LIST

13.5.3 Dfinition de la mise en page du texte source


Pour augmenter la lisibilit du texte dans les fichiers source, choisissez la commande de menu Outils > Paramtres, puis dans l'onglet "Texte source" dfinissez la police et la couleur des divers lments du texte source. Vous pouvez p. ex. choisir d'afficher les numros de ligne et de reprsenter les mots-cls en majuscules.

13.5.4 Insertion de modles de blocs dans une source LIST


Vous disposez, pour la programmation de sources LIST, de modles de blocs pour OB, FB, FC, DB, DB d'instance, DB associs des UDT et UDT. Ces modles de blocs vous facilitent la saisie et le respect de la syntaxe et de l'organisation des diffrents blocs. Procdez de la manire suivante : 1. Activez la fentre de travail de la source dans laquelle vous voulez insrer un modle de bloc. 2. Positionnez le curseur l'emplacement aprs lequel vous voulez insrer le modle de bloc. 3. Choisissez la commande correspondante Insertion > Modle de bloc_ _> OB/FB/FC/DB/IDB/DB partir de UDT/UDT. Le modle de bloc est alors insr aprs la position du curseur.

13.5.5 Insertion du contenu d'autres source LIST


Vous pouvez insrer dans votre source LIST le contenu d'autres sources. Procdez de la manire suivante : 1. Activez la fentre de travail de la source dans laquelle vous voulez insrer le contenu d'une autre source. 2. Positionnez le curseur l'emplacement aprs lequel vous voulez insrer le contenu de cette autre source. 3. Choisissez la commande Insertion > Objet > Fichier. 4. Choisissez, dans la bote de dialogue qui apparat alors, la source dsire. Le contenu de la source slectionne est insr aprs la position du curseur. Les retours la ligne y sont conservs.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

285

Cration de sources LIST 13.5 Cration d'une source LIST

13.5.6 Insertion du code source de blocs existant dans une source LIST
Vous pouvez insrer dans votre source LIST le code source de blocs programms en CONT, LOG ou LIST. Cela est possible pour les OB, les FB, les FC, les DB et les types de donnes utilisateur (UDT). Procdez de la manire suivante : 1. Activez la fentre de travail de la source dans laquelle vous voulez insrer un bloc. 2. Positionnez le curseur l'emplacement aprs lequel vous voulez insrer le texte du bloc. 3. Choisissez la commande Insertion > Objet > Bloc. 4. Choisissez, dans la bote de dialogue qui apparat alors, le bloc dsir. Une source est implicitement gnre partir du bloc dsir. Le contenu de cette source est insr aprs la position du curseur.

13.5.7 Insertion d'une source externe


Vous pouvez crer et traiter votre source avec l'diteur ASCII de votre choix, puis l'importer dans un projet et la compiler en blocs individuels. Les sources doivent tre importes dans le dossier Sources du programme S7, pour que les blocs rsultant de la compilation soient enregistrs dans le programme utilisateur S7 de ce mme programme S7. Procdez de la manire suivante : 1. Slectionnez le dossier Sources du programme S7 dans lequel vous voulez importer les sources externes. 2. Choisissez la commande Insertion > Source externe. 3. Dans la bote de dialogue suivante, indiquez la source importer. L'extension donne au nom de fichier de la source importer doit tre valide. En effet, c'est l'extension qui permet de dterminer le type de la source dans STEP 7. Ainsi, un fichier d'extension.awl sera import comme source LIST. Les extensions de fichier possibles sont indiques dans la bote de dialogue sous "Type de fichier".

Nota La commande Insertion > Source externe vous permet galement d'insrer d'anciennes sources qui ont t cres dans la version 1 de STEP 7.

286

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.5 Cration d'une source LIST

13.5.8 Gnration d'une source LIST partir de blocs


Vous pouvez gnrer, partir de blocs existants, une source LIST que vous pouvez traiter avec un diteur de texte de votre choix. La source gnre est cre dans le dossier source du programme S7. Procdez de la manire suivante : 1. Choisissez la commande Fichier > Gnrer source dans l'diteur de programmes. 2. Slectionnez, dans la bote de dialogue, le dossier Sources dans lequel vous dsirez ranger la nouvelle source. 3. Attribuez un nom la source dans la zone correspondante. 4. Slectionnez, dans la bote de dialogue "Slection de blocs STEP 7", le ou les blocs partir desquels vous voulez gnrer la source choisie auparavant. Les blocs slectionns s'affichent dans la liste droite. 5. Confirmez par "OK". Les blocs slectionns sont alors compils en une source LIST continue qui s'affiche pour dition dans une fentre de travail.

13.5.9 Importation d'une source


Pour importer une source depuis un rpertoire quelconque dans un projet, procdez de la manire suivante : 1. Dans SIMATIC Manager, slectionnez le dossier Sources dans lequel vous souhaitez importer la source. 2. Choisissez la commande Insertion > Source externe. 3. Dans la bote de dialogue affiche, slectionnez le rpertoire et la source importer. 4. Cliquez sur le bouton "Ouvrir".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

287

Cration de sources LIST 13.5 Cration d'une source LIST

13.5.10 Exportation d'une source


Pour exporter la source d'un projet dans un rpertoire cible quelconque, procdez de la manire suivante : 1. Slectionnez la source dans le dossier Sources. 2. Choisissez la commande Edition > Exporter une source, dans SIMATIC Manager. 3. Indiquez le rpertoire cible ainsi que le nom de fichier dans la bote de dialogue affiche. 4. Cliquez sur le bouton "Enregistrer".

Nota Si le nom de l'objet ne possde pas d'extension, il en sera ajoute une son nom de fichier partir de son type. Une source LIST "prog", par exemple, sera exporte dans le fichier "prog.awl". Si le nom de l'objet possde dj une extension valide, celle-ci sera conserve et aucune autre ne lui sera ajoute. Une source LIST "prog.awl", par exemple, sera exporte dans le fichier "prog.awl". Si un nom d'objet possde une extension errone (c'est--dire le nom comporte un point), aucune extension ne sera ajoute au fichier. Les extensions de fichier possibles sont indiques dans la bote de dialogue "Exporter source" sous "Type de fichier".

288

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.6 Enregistrement, compilation et vrification d'une source LIST

13.6

Enregistrement, compilation et vrification d'une source LIST

13.6.1 Enregistrement d'une source LIST


Vous pouvez sauvegarder une source LIST tout moment dans l'tat o elle est. Dans ce cas, le programme n'est pas compil et sa syntaxe n'est pas vrifie (les erreurs ventuelles sont donc galement enregistres). Les erreurs de syntaxe ne seront dtectes et signales que lors de la compilation de la source ou lors d'une vrification de cohrence. Pour enregistrer une source sous le mme nom : 1. Activez la fentre de travail de la source enregistrer. 2. Choisissez la commande Fichier > Enregistrer. Pour enregistrer une source sous autre nom ou dans un autre projet : 1. Activez la fentre de travail de la source enregistrer. 2. Choisissez la commande Fichier > Enregistrer sous. 3. Slectionnez, dans la bote de dialogue qui apparat alors, le dossier Sources auquel la source doit tre affecte et indiquez le nouveau nom de la source.

13.6.2 Vrification de la cohrence d'une source LIST


En choisissant la commande Fichier > Vrifier la cohrence, vous pouvez afficher d'ventuelles erreurs de syntaxe dans une source LIST. Contrairement la compilation, cette vrification n'entrane pas la gnration des blocs. Une fois la vrification de cohrence acheve, apparat une bote de dialogue qui indique le nombre total d'erreurs trouves. S'il existe des erreurs, elles sont toutes numres dans la partie infrieure de la fentre de travail avec indication de leur ligne. Vous devez les liminer avant la compilation de la source pour que tous les blocs soient gnrs.

13.6.3 Recherche d'erreurs dans une source LIST


La fentre de travail pour les sources comporte deux parties. Dans sa moiti infrieure sont numres les erreurs suivantes : erreurs dtectes aprs dclenchement d'une compilation via la commande Fichier > Compiler ; erreurs dtectes aprs dclenchement d'une vrification de cohrence via la commande Fichier > Vrifier la cohrence.

Pour trouver l'emplacement d'une erreur dans la source, positionnez le curseur sur le message d'erreur en question dans l'onglet "Erreurs" de la fentre des erreurs et avertissements. La ligne de texte correspondante est alors automatiquement slectionne dans la section des instructions. Le message d'erreur est, en outre, repris dans la barre d'tat.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

289

Cration de sources LIST 13.6 Enregistrement, compilation et vrification d'une source LIST

13.6.4 Compilation d'une source LIST


Condition pralable
Afin que le programme cr dans une source puisse tre compil en blocs, les conditions suivantes doivent tre remplies : Seules peuvent tre compiles les sources qui sont enregistres dans le dossier Sources sous un programme S7. Un dossier Blocs doit se trouver sous le programme S7, au mme niveau que le dossier Sources pour que les blocs compils puissent y tre enregistrs. Les blocs programms dans la source ne sont crs que si aucune erreur n'est dcele durant la compilation de la source. Seuls les blocs d'une source exempts d'erreurs sont compils. Vous pouvez ensuite ouvrir ces blocs individuellement, les diter, les charger dans une CPU et les tester.

Marche suivre dans l'diteur


1. Ouvrez la source que vous voulez compiler. Elle doit se trouver dans le dossier Sources du programme S7 dans le programme utilisateur duquel les blocs compils doivent tre rangs. 2. Choisissez la commande Fichier > Compiler. 3. S'ouvre alors la bote de dialogue "Journal de la compilation" qui montre le nombre de lignes compiles et le nombre d'erreurs de syntaxe dtectes. Les blocs indiqus dans la source ne sont gnrs que si la source a t compile sans erreur. Seuls les blocs d'une source exempts d'erreurs sont compils. Les avertissements n'empchent pas la gnration des blocs. Les erreurs de syntaxe dtectes lors de la compilation sont reprsentes dans la moiti infrieure de la fentre de travail et doivent tre corriges pour que les blocs correspondants puissent galement tre gnrs.

Marche suivre dans SIMATIC Manager


1. Ouvrez le dossier Sources correspondant en cliquant deux fois dessus. 2. Slectionnez une ou plusieurs sources compiler. Vous ne pouvez pas effectuer la compilation d'un dossier Sources ferm afin de compiler toutes les sources qu'il contient. 3. Choisissez la commande Fichier > Compiler pour dmarrer la compilation. Le compilateur correspondant la source slectionne est appel. Les blocs correctement compils sont ensuite enregistrs dans le dossier Blocs sous le programme S7. Les erreurs de syntaxe dceles durant la compilation sont signales dans une bote de dialogue et doivent tre corriges afin que ces blocs puissent eux aussi tre crs.

290

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.7 Exemples de sources LIST

13.7

Exemples de sources LIST

13.7.1 Exemples de dclarations de variables dans une source LIST


Variables de type de donnes simple
// Les commentaires sont spars de la section de dclaration par //. VAR_INPUT // Mot-cl variable d'entre in1 : INT; // Nom de variable et type sont spars par ":" in3 : DWORD; in2 : INT := 10; END_VAR VAR_OUTPUT END_VAR VAR_TEMP temp1 : INT; END_VAR // Un point-virgule met fin chaque dclaration de variable. // Dfinition facultative de la valeur initiale dans la dclaration

// Fin de la dclaration des variables de mme type de dclaration // Mot-cl variable de sortie out1 : WORD; // Mot-cl variable temporaire

Variables de type de donnes ARRAY


VAR_INPUT // Variable d'entre champ1 : ARRAY [1..20] of INT; END_VAR // champ1 est un champ unidimentionnel champ2 : ARRAY [1..20, 1..40] of DWORD; // champ2 est un champ bidimentionnel

Variables de type de donnes STRUCT


VAR_OUT SORTIE1: // Variable de sortie STRUCT // SORTIE1 est de type de donnes STRUCT. var1 : BOOL; var2 : DWORD; END_VAR // Elment 1 de la structure // Elment 2 de la structure

END_STRUCT; // Fin de la structure

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

291

Cration de sources LIST 13.7 Exemples de sources LIST

13.7.2 Exemple d'OB dans une source LIST


ORGANIZATION_BLOCK OB 1 TITLE = Exemple d'OB 1 avec diffrents appels de blocs //Les 3 rseaux reprsents montrent des appels de blocs //avec et sans paramtres. {S7_pdiag := 'true'} //Attribut systme pour blocs AUTHOR: Siemens FAMILY: Exemple Nom OB_test VERSION: 1.1 VAR_TEMP ValInterm : INT; // Mmoire intermdiaire END_VAR BEGIN NETWORK TITLE = Appel d'une fonction avec transmission de paramtres // Transmission de paramtres en une ligne CALL FC1 (param1 :=E0.0,param2 :=E0.1);

NETWORK TITLE = Appel d'un bloc fonctionnel avec //transmission de paramtres // Transmission de paramtres en plusieurs lignes CALL Regul_feux , DB 6 ( // Nom du FB, DB d'instance dur_v_p := S5T#10S, // Affectation de valeurs effectives aux paramtres eff_r_p := S5T#30S, demarr := TRUE, t_dur_o_voit := T 2, t_dur_v_piet := T 3, t_ret_o_voit := T 4, t_dur_r_voit := T 5, t_rou_suiv_voit := T 6, r_voit := "ro_main", // Les guillemets identifient les noms o_voit := "or_main", // de la table des mnmoniques. v_voit_ _:= "ve_main", r_piet := "ro_int", v_piet := "ve_int"); NETWORK TITLE = Appel d'un bloc fonctionnel avec //transmission de paramtres // Transmission de paramtres en une ligne CALL FB10, DB100 (para1 :=E0.0,para2 :=E0.1); END_ORGANIZATION_BLOCK

292

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.7 Exemples de sources LIST

13.7.3 Exemple de FC dans une source LIST


FUNCTION FC 1: VOID // Seulement pour l'appel VAR_INPUT param1 : bool; param2 : bool; END_VAR Begin end_function

FUNCTION FC2 : INT TITLE = Augmentation de la production // Tant que la valeur transmise est < 1000, cette fonction //augmente la valeur transmise. Si le nombre de pices est //suprieur 1000, "-1" est renvoy via la valeur en retour //de la fonction (RET_VAL). AUTHOR: FAMILY: Nom VERSION: Siemens Product PIECES 1.0

VAR_IN_OUT PRODUCTION : INT; END_VAR BEGIN

// Nombre de pices effectivement produites

NETWORK TITLE = Augmentation production de 1 // Tant que la production effective est infrieure 1000, // elle peut tre augmente d'1. L PRODUCTION; L 1000; // Exemple de plusieurs > I; SPB ERR; // instructions dans une ligne L 0; T RET_VAL; L PRODUCTION; INC 1; T PRODUCTION; BEA; ERR: L -1; T RET_VAL; END_FUNCTION

FUNCTION FC3 {S7_pdiag := 'true'} : INT TITLE = Augmentation de la production // Tant que la valeur transmise est < 1000, cette fonction //augmente la valeur transmise. Si le nombre de pices est //suprieur 1000, "-1" est renvoy via la valeur en retour //de la fonction (RET_VAL). // //RET_VAL comporte ici un attribut systme pour paramtres. AUTHOR: FAMILY: Nom VERSION: Siemens PRODUCT PIECES 1.0

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

293

Cration de sources LIST 13.7 Exemples de sources LIST

VAR_IN_OUT PRODUCTION {S7_visible := 'true'}: INT; END_VAR BEGIN

// Nb. de pices effectivement produites //Attributs systme pour paramtres

NETWORK TITLE = Augmentation production de 1 // Tant que la production effective est infrieure 1000, // elle peut tre augmente d'1. L PRODUCTION; L 1000; // Exemple de plusieurs > I; SPB ERR; // instructions dans une ligne L 0; T RET_VAL; L PRODUCTION; INC 1; T PRODUCTION; BEA; ERR: L -1; T RET_VAL; END_FUNCTION

294

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.7 Exemples de sources LIST

13.7.4 Exemple de FB dans une source LIST


FUNCTION_BLOCK FB 6 TITLE = Rglage simple des feux // Rgulation des feux pour un passage pitons // sur la rue principale {S7_m_c := 'true'} AUTHOR: Siemens FAMILY: Feux Nom Feux VERSION: 1.3 VAR_INPUT demarr: BOOL := FALSE; // Demande de traverse pitons t_dur_o_voit : TIMER; // Dure vert pitons t_r_suiv_voit : TIMER; // Dure entre rouge pour voitures t_dur_r_voit : TIMER; nombre {S7_server := 'alarm_archiv'; S7_a_type := 'alarm_8'} :DWORD; // Nb. Voitures // nombre comporte des attributs systme pour paramtres END_VAR VAR_OUTPUT v_voit : END_VAR VAR condition END_VAR BOOL := FALSE; // VERT pour voitures //Attribut systme pour blocs

BOOL

:=

FALSE; // Notification rouge pour voitures

BEGIN NETWORK TITLE = Notification rouge pour circulation automobile // Aprs respect d'un intervalle de temps minimum, la //demande de traverse pitons gnre une notification //de rouge pour la circulation automobile. U(; U #demarr; // Demande de traverse pitons et U #t_r_suiv_voit; // dure entre deux phases de // rouge coule O #condition; // ou notification pour rouge ("maintien") ); UN #t_dur_o_voit; // et actuellement feu pas rouge = #condition; // Notification rouge NETWORK TITLE = Feu vert pour circulation automobile UN #condition; // Pas de notification de rouge pour // circulation = #v_voit; // VERT pour circulation automobile

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

295

Cration de sources LIST 13.7 Exemples de sources LIST

NETWORK TITLE = Dure de phase orange pour voitures // Reste du programme pour raliser // le rglage des feux END_FUNCTION_BLOCK

FUNCTION_BLOCK FB 10 VAR_INPUT para1 : bool; para2: bool; end_var begin end_function_block data_block db 10 fb10 begin end_data_block data_block db 6 fb6 begin end_data_block

296

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Cration de sources LIST 13.7 Exemples de sources LIST

13.7.5 Exemples de DB dans une source LIST


Bloc de donnes
DATA_BLOCK DB 10 TITLE = Exemple DB 10 STRUCT aa : BOOL; bb : INT; cc : WORD; END_STRUCT; BEGIN // Affectation de valeurs actuelles aa := TRUE; bb := 1500; END_DATA_BLOCK // Variable aa de type BOOL // Variable bb de type INT

DB associ un type de donnes utilisateur


DATA_BLOCK DB 20 TITLE = Exemple DB (UDT) UDT 20 BEGIN start := TRUE; soll := 10; END_DATA_BLOCK // Affectation de valeurs actuelles // Indication de l'UDT affect

Nota L'UDT utilis doit se situer avant le bloc de donnes dans la source.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

297

Cration de sources LIST 13.7 Exemples de sources LIST

DB associ un bloc fonctionnel


DATA_BLOCK DB 30 TITLE = Exemple DB (FB) FB 30 BEGIN start := TRUE; soll := 10; END_DATA_BLOCK // Affectation de valeurs actuelles // Indication du FB affect

Nota Le FB associ doit se situer avant le bloc de donnes dans la source.

13.7.6 Exemple d'UDT dans une source LIST


TYPE UDT 20 STRUCT demarr : BOOL; consigne : INT; valeur : WORD; END_STRUCT; END_TYPE //Variable de type BOOL //Variable de type INT //Variable de type WORD

298

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

14
14.1

Affichage des donnes de rfrence


Prsentation des donnes de rfrence possibles
Afin de faciliter le test et la modification de votre programme utilisateur, vous pouvez crer et exploiter des donnes de rfrence. Les donnes de rfrence servent par exemple : de vue d'ensemble sur votre programme utilisateur complet, de base pour les modifications et les tests, complter la documentation de votre programme.

Le tableau suivant prsente les informations que vous retrouvez dans les diffrentes vues :
Vue Liste des rfrences croises Application Vue d'ensemble de l'emploi d'oprandes des zones de mmoire E, A, M, P, T, Z et d'appels de DB, FB, FC, SFB et SFC au sein du programme utilisateur. La commande Affichage > Rfrences croises pour l'oprande vous permet dafficher toutes les rfrences croises, y compris les accs multiples loprande slectionn. Tableau d'affectation La vue d'ensemble montrant quels bits des oprandes appartenant aux zones de mmoire E, A et M ou quels temporisations et compteurs sont dj affects au sein du programme utilisateur constitue une base importante pour la recherche d'erreurs et les modifications dans le programme utilisateur. Hirarchie d'appel des blocs au sein du programme utilisateur et vue d'ensemble des blocs utiliss et de leurs relations de dpendance. Vue d'ensemble de tous les mnmoniques dfinis dans la table des mnmoniques, mais qui ne sont pas utiliss dans les parties du programme utilisateur pour lesquelles il y a des donnes de rfrence. Vue d'ensemble de toutes les adresses absolues (oprandes et blocs) qui sont utilises dans les parties du programme utilisateur et pour lesquelles il y a des donnes de rfrence, mais pour lesquelles aucun mnmonique n'est dfini dans la table des mnmoniques.

Structure du programme Oprandes libres

Mnmoniques manquants

Les donnes de rfrence du programme utilisateur slectionn englobent les listes contenues dans le tableau. Vous pouvez crer et afficher plusieurs listes pour un programme utilisateur ou pour divers programmes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

299

Affichage des donnes de rfrence 14.1 Prsentation des donnes de rfrence possibles

Affichage simultan de plusieurs vues


L'affichage de listes dans des fentres supplmentaires vous permet par exemple : de comparer les mmes types de listes de programmes utilisateur S7 diffrents, d'afficher cte cte sur l'cran une mme liste (par exemple, une liste des rfrences croises) optimise diffremment. Dans une liste de rfrences croises, vous pouvez par exemple afficher uniquement les entres d'un programme utilisateur S7 et dans la seconde liste des rfrences croises uniquement les sorties. d'ouvrir simultanment plusieurs listes d'un mme programme utilisateur S7, par exemple la structure du programme et la liste des rfrences croises.

300

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Affichage des donnes de rfrence 14.1 Prsentation des donnes de rfrence possibles

14.1.1 Liste des rfrences croises


La liste des rfrences croises offre un aperu de l'utilisation des oprandes dans un programme utilisateur S7. La liste des rfrences croises indique les oprandes des zones de mmoire entre(E), sortie (A), mmento (M), temporisation (T), compteur (Z), bloc fonctionnel (FB), fonction (FC), bloc fonctionnel systme (SFB), fonction systme (SFC), priphrie (P) et bloc de donnes (DB) qui sont utiliss dans le programme utilisateur S7, leur adresse (adresse absolue, nom) ainsi que leur utilisation. Cette liste s'affiche dans une fentre de travail. La barre de titre de cette fentre donne le nom du programme utilisateur auquel appartient la liste des rfrences croises. Chaque ligne de la fentre correspond une entre de la liste des rfrences croises. Une fonction de recherche permet de retrouver facilement des oprandes et mnmoniques prcis. La liste des rfrence croises est la vue par dfaut pour l'affichage des donnes de rfrence. Vous pouvez modifier cette valeur par dfaut.

Structure
Elle comprend les colonnes suivantes :
Colonne Oprande (mnmon.) Bloc (mnmon.) Accs Langage Occurrence Contenu/signification Adresse de l'oprande Bloc dans lequel l'oprande est utilis. Indique si l'accs l'oprande est un accs en lecture (R) ou en criture (W). Informations relatives au langage de cration du bloc Pour sauter l'occurrence de l'oprande slectionn, effetuez un double clic dans le champ d'une occurrence.

Les colonnes Bloc, Type, Langage et Occurrence ne s'affichent que lorsque les proprits correspondantes ont t slectionnes pour la liste des rfrences croises. Ces informations sur le bloc varient en fonction du langage dans lequel le bloc a t cr. A l'aide de la souris, adaptez la largeur des colonnes vos besoins dans la liste des rfrences croises affiche l'cran.

Tri
Par dfaut, la liste des rfrences croises est classe par zones de mmoire. Pour la classer selon les entres d'une colonne prcise, cliquez avec la souris sur le titre de cette colonne.

Exemple de structure de la liste des rfrences croises


Oprande (mnmon.) E 1.0 (Moteur marche) M1.2 (Bit de mmento) Z2 (Compteur2) Bloc (mnmon.) OB 2 FC 2 FB2 Accs R R Langage LIST CONT LOG Occurrence NW 2 Anw 33 /O NW 33 NW2

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

301

Affichage des donnes de rfrence 14.1 Prsentation des donnes de rfrence possibles

14.1.2 Structure du programme


La structure du programme dcrit la hirarchie d'appel des blocs l'intrieur d'un programme utilisateur S7. Vous obtenez en outre un aperu des blocs utiliss, de leur relations et de leur besoin en donnes locales. En choisissant la commande Affichage > Filtrer dans la fentre "Afficher les donnes de rfrence S7", vous ouvrez une bote de dialogue onglets. Dans la page d'onglet "Structure du programme", vous pouvez choisir la reprsentation de la structure du programme :

Vous avez le choix entre structure d'appels et structure des dpendances.

Vous pouvez demander la reprsentation de tous les blocs ou l'affichage de la hirarchie partir d'un bloc prcis.

Icnes utilises dans la structure du programme


Icne Signification Appel normal d'un bloc (CALL FB10) Appel inconditionnel d'un bloc (UC FB10) Appel conditionnel d'un bloc (CC FB10) Bloc de donnes Rcurrence Rcurrence et appel conditionnel Rcurrence et appel inconditionnel Bloc non appel

Les rcurrences d'appel sont dtectes et marques comme telles graphiquement dans la structure d'appels. Des rcurrences au sein de la hirarchie d'appel sont reprsentes par des boutons diffrents. L'appel normal d'un bloc (CALL), l'appel conditionnel d'un bloc (CC) et l'appel inconditionnel d'un bloc (UC) sont caractriss par des boutons diffrents. Les blocs non appels sont indiqus la fin de la structure arborescente et marqus d'une croix noire. Leur structure d'appel ne sera pas dtaille davantage.

302

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Affichage des donnes de rfrence 14.1 Prsentation des donnes de rfrence possibles

Affichage sous forme de structure d'appels


La totalit de la structure d'appels est reprsente.

Si l'arborescence doit tre ralise pour tous les blocs d'organisation (OB) et si l'OB 1 ou le bloc de dpart indiqus ne se trouvent pas dans le programme utilisateur S7, le logiciel vous invitera automatiquement spcifier un autre bloc qui servira de racine l'arborescence. L'affichage d'appels multiples de blocs peut tre dsactiv, aussi bien pour la structure d'appels que pour les "Structure des dpendances", grce aux options proposes.

Affichage du besoin maximal en donnes locales dans la structure d'appels


Pour voir immdiatement le besoin en donnes locales des OB dans le programme utilisateur affich, vous pouvez afficher dans la reprsentation arborescente : le besoin maximal en donnes locales par OB le besoin en donnes locales par chemin.

Vous pouvez activer ou dsactiver cet affichage dans l'onglet "Structure du programme". En cas de prsence d'OB d'erreur synchrones (OB 121, OB 122), un signe plus ainsi que la place requise pour les OB d'erreur synchrones sont affichs aprs la valeur des donnes locales maximales.

Structure des dpendances


La structure des dpendances affiche pour chaque bloc du projet, ses dpendances avec les autres blocs. Le bloc en question est reprsent entirement gauche, les blocs qui l'appellent ou l'utilisent tant reprsents en-dessous de manire dcale.

Affichage de blocs supprims


Les lignes correspondant des blocs supprims sont reprsentes en rouge.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

303

Affichage des donnes de rfrence 14.1 Prsentation des donnes de rfrence possibles

14.1.3 Tableau d'affectation


Le tableau d'affectation vous montre quels oprandes sont dj occups dans le programme utilisateur. Cet affichage constitue un lment important pour la recherche d'erreurs ou les modifications dans le programme utilisateur. L'affichage du tableau d'affectation permet de savoir quel bit est utilis dans quel octet des zones de mmoire entre (E), sortie (A), et mmento (M) de mme que quelles temporisations (T) et quels compteurs (Z) sont utiliss.. Le tableau d'affectation s'affiche dans une fentre de travail. La barre de titre de la fentre de travail donne le nom du programme utilisateur S7 auquel il appartient.

Vue d'ensemble E/A/M


Chaque ligne contient un octet de la zone de mmoire, dont les huit bits sont diffrencis selon leur mode d'accs. En outre, il sera galement prcis s'ils sont adresss par octet, mot ou double mot.

Identificateur dans la vue d'ensemble E/A/M :


arrire-plan blanc x arrire-plan bleu l'oprande n'est pas adress et n'est donc pas encore occup l'oprande est utilis directement l'oprande est trait indirectement (accs par octet, mot ou double mot)

Colonnes dans la vue d'ensemble E/A/M :


Colonne 7 6 5 4 3 2 1 0 O W D l'octet est adress par un octet l'octet est adress par un mot l'octet est adress par un mot double numro du bit de l'octet correspondant Contenu/signification

304

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Affichage des donnes de rfrence 14.1 Prsentation des donnes de rfrence possibles

Exemple
L'exemple suivant reprsente la structure typique d'un tableau d'affectation pour les entres, sorties et mmentos (E/A/M).

La premire ligne montre l'occupation de l'octet d'entre EB 0. Les entres de l'oprande EB 0 sont utilises directement (accs par bit). La lettre "X" qui figure respectivement dans les colonnes "0", "1", "2", "3", "5", et "6" caractrise l'accs par bit. De plus, les octets de mmento 1 et 2, 2 et 3 ou 4 et 5 sont accds par mot, ce qui est reprsent par une "barre" dans la colonne "W". De plus, les cellules sont reprsentes sur fond bleu clair. La pointe noire de la barre dsigne le dbut de l'accs par mot..

Vue d'ensemble T/Z


Chaque ligne reprsente 10 temporisations ou compteurs.

Exemple
0 T 00-09 T 10-19 T 20-29 Z 00-09 Z 10-19 Z 20-29 Z 30-39 . . . . . . . 1 T1 . . . . . . 2 . T12 . Z2 . . . 3 . . . . . . . . T24 . . . Z34 4 . . . . . . . 5 . . . . . . 6 T6 . T17 . Z7 . . . 7 . . . . . . . 8 . T19 . . Z19 . . 9

Dans le prsent exemple, les temporisations T1, T6, T12, T17, T19, T24 et les compteurs Z2, Z7, Z19, Z34 sont utiliss. Ces tableaux sont classs par ordre alphabtique. Vous pouvez trier leurs entres en cliquant sur le titre de la colonne correspondante.

14.1.4 Oprandes libres


Vous obtenez une vue d'ensemble de tous les mnmoniques possdant les proprits suivantes :
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

305

Affichage des donnes de rfrence 14.1 Prsentation des donnes de rfrence possibles

Il s'agit de mnmoniques dfinis dans la table des mnmoniques. Ces mnmoniques ne sont toutefois pas utiliss dans les parties de programme pour lesquelles des donnes de rfrence existent.

Cette liste s'affiche dans une fentre de travail. La barre de titre de la fentre de travail donne le nom du programme utilisateur auquel appartient la liste. Chaque ligne de la fentre correspond une entre de la liste. Elle comprend l'oprande, le mnmonique, le type de donnes et le commentaire.
Colonne Oprande Type de donnes Commentaire de l'oprande Contenu/signification Adresse absolue de l'oprande Type de donnes de l'oprande. Commentaire de l'oprande extrait de la table des mnmoniques

Exemple de liste des oprandes libres


Mnmonique MS1 MS2 MS3 Oprande E103.6 E120.5 E121.3 Type de donnes BOOL BOOL BOOL Commentaire de l'oprande Disjoncteur de protection1 Disjoncteur de protection2 Disjoncteur de protection3

Vous pouvez trier leurs entres en cliquant sur le titre de la colonne correspondante. Vous pouvez galement slectionner des oprandes libres affichs dans la liste et les effacer avec la fonction "Effacer les mnmoniques" de la table des mnmoniques.

306

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Affichage des donnes de rfrence 14.1 Prsentation des donnes de rfrence possibles

14.1.5 Mnmoniques manquants


L'affichage des mnmoniques manquants donne la liste des lments utiliss dans le programme utilisateur S7 qui ne sont pas dfinis dans la table des mnmoniques. Cette liste s'affiche dans une fentre de travail. La barre de titre de la fentre de travail donne le nom du programme utilisateur auquel appartient la liste. Elle comprend l'oprande et ses occurrences. Les entres sont classes selon les oprandes.

Exemple
Oprande A 2.5 E 23.6 M 34.1 Nombre 4 3 20

Vous pouvez slectionner les mnmoniques manquants affichs dans la liste et leur affecter des noms de mnmoniques avec la fonction "Editer les mnmoniques".

14.1.6 Affichage d'informations sur le bloc pour CONT, LOG, LIST


Les informations sur le bloc pour CONT, LOG ou LIST s'affichent dans la liste des rfrences croises et dans la structure du programme. Elles comportent le langage du bloc et des dtails. Dans le mode d'affichage "Structure du programme", vous pouvez uniquement afficher les informations sur le bloc si dans dans l'onglet "Structure du programme" des options de filtrage, vous avez slectionn la reprsentation "Structure d'appels" avec les options correspondantes. Dans le mode d'affichage "Rfrences croises", vous pouvez activer ou dsactiver l'affichage des informations sur le bloc en choisissant la commande Affichage > Filtre. Pour afficher les informations sur le bloc, cochez les cases "Langage du bloc" et "Dtails" dans l'onglet "Rfrences croises" de la bote de dialogue "Filtre".

Les informations sur le bloc varient selon le langage dans lequel le bloc a t cr et sont reprsentes par des abrviations.
Langage LIST CONT LOG Rseau Re Re Re Instruction Inst Opration /

Re, Inst indiquent dans quel rseau et dans quelle instruction loprande est utilis (rfrences croises) ou le bloc est appel (structure du programme).

Affichage d'informations sur le bloc pour des langages de programmation optionnels


L'aide relative l'information sur les blocs est disponible lorsque le logiciel optionnel est install.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

307

Affichage des donnes de rfrence 14.2 Utilisation des donnes de rfrence

14.2

Utilisation des donnes de rfrence

14.2.1 Affichage des donnes de rfrence


Pour afficher les donnes de rfrence, vous avez les possibilits suivantes :

Affichage dans SIMATIC Manager :


1. Dans la vue du projet hors ligne de la fentre du projet, slectionnez le dossier Blocs. 2. Choisissez la commande Outils > Donnes de rfrence > Afficher.

Affichage dans la fentre de l'diteur :


1. Ouvrez un bloc dans le dossier Blocs. 2. Dans la fentre de l'diteur appropri, vous choisissez la commande Outils > Donnes de rfrence. La bote de dialogue "Paramtres" souvre. Vous pouvez y slectionner la premire vue qui doit safficher. Par dfaut, il sagit de la vue ferme en dernier dans lapplication permettant dafficher les donnes de rfrence. Cette bote de dialogue peut tre ignore pour les appels futurs. Si les donnes de rfrence sont incompltes, une bote de dialogue s'ouvre, vous permettant de dclencher leur mise jour.

Affichage directement depuis le bloc compil


Vous pouvez afficher directement depuis l'diteur de langage les donnes de rfrence d'un bloc compil et obtenir ainsi une vue d'ensemble actuelle de votre programme utilisateur.

14.2.2 Affichage de listes dans des fentres supplmentaires


La commande Fentre > Nouvelle fentre permet d'ouvrir des fentres de travail supplmentaires pour y afficher d'autres vues des donnes de rfrence dj affiches (par exemple la liste des oprandes libres). Vous pouvez ouvrir une fentre de travail pour des donnes de rfrence pas encore affiches en choisissant la commande Donnes de rfrence > Ouvrir. Vous pouvez passer une autre vue des donnes de rfrence en choisissant la commande Affichage ou en cliquant sur le bouton correspondant dans la barre d'outils :
Vue des donnes de rfrence Mnmoniques manquants Oprandes libres Tableau d'affectation Structure du programme Rfrences croises Commande pour l'affichage de cette vue des donnes de rfrence Affichage > Mnmoniques manquants Affichage > Oprandes libres Affichage > Tableau d'affectation Affichage > Structure du programme Affichage > Rfrences croises

308

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Affichage des donnes de rfrence 14.2 Utilisation des donnes de rfrence

14.2.3 Cration et affichage de donnes de rfrence


Cration de donnes de rfrence
1. Dans SIMATIC Manager, slectionnez le dossier Blocs pour lequel vous souhaitez gnrer les donnes de rfrence. 2. Dans SIMATIC Manager, choisissez la commande Outils > Donnes de rfrence > Gnrer. Avant de gnrer des donnes de rfrence, le logiciel vrifie si elles sont prsentes et actuelles. En l'absence de donnes de rfrence, celles-ci sont gnres. Lorsque les donnes de rfrence ne sont pas actuelles, vous pouvez choisir, dans une bote de dialogue, si vous souhaitez les actualiser ou les gnrer de nouveau.

Affichage de donnes de rfrence :


La commande Outils > Donnes de rfrence > Afficher vous permet d'afficher les donnes de rfrence. Avant d'afficher des donnes de rfrence, le systme vrifie si elles sont prsentes et actuelles. En l'absence de donnes de rfrence, celles-ci sont gnres. Si les donnes de rfrence existantes sont incompltes, une bote de dialogue vous informe de leur incohrence. Vous pouvez alors dcider quelles donnes de rfrence vous souhaitez actualiser. Les choix suivants vous sont proposs :
Signification dans ce cas, les donnes de rfrence des blocs modifis et des nouveaux blocs sont actualises et les informations relatives aux blocs effacs sont supprimes des donnes de rfrence; les donnes de rfrence de tous les blocs sont alors gnres en totalit; les donnes de rfrence ne sont pas actualises.

Choix pour les blocs modifis seulement : pour tous les blocs : ne pas les actualiser :

Cette mise jour des donnes de rfrence est obtenue par une nouvelle compilation des blocs, ce pour quoi le compilateur convenant chaque bloc est appel. La commande Affichage > Actualiser permet de mettre jour, dans la fentre active, des donnes de rfrence dj affiches.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

309

Affichage des donnes de rfrence 14.2 Utilisation des donnes de rfrence

14.2.4 Positionnement rapide sur les occurrences dans le programme


Vous pouvez vous servir des donnes de rfrence pour vous positionner sur les occurrences dun oprande lors de la programmation. Les donnes de rfrence doivent tre actuelles. Il nest pas ncessaire dappeler lapplication permettant dafficher les donnes de rfrence.

Marche suivre
1. Dans SIMATIC Manager, choisissez la commande Outils > Donnes de rfrence > Gnrer pour crer les donnes de rfrence actuelles. Cette tape ne savre ncessaire que si les donnes de rfrence nont pas t cres ou si elles ne sont pas actuelles. 2. Slectionnez loprande souhait dans un bloc ouvert. 3. Choisissez la commande Edition > Aller > Occurrence. Une bote de dialogue souvre avec la liste des occurrences de loprande dans le programme. 4. Si la case doption "Pour tous les oprandes de la plage dadresses spcifie" est active, le tableau affichera les occurrences de tous les oprandes de la plage dadresses spcifie. 5. Slectionnez une occurrence dans la liste et cliquez sur le bouton "Aller ". Si les donnes de rfrence ne sont pas actuelles lorsque vous appelez cette bote de dialogue, un message vous en informe. Vous pouvez alors actualiser les donnes de rfrence.

Liste des occurrences


La liste des occurrences dans la bote de dialogue fournit les donnes suivantes : bloc dans lequel loprande est utilis, mnmonique du bloc, le cas chant, dtails, cest--dire informations fonction du langage de cration du bloc/de la source (SCL) sur loccurrence et le cas chant sur lopration, informations spcifiques au langage, type daccs loprande : lecture (R), criture (W), lecture et criture (RW), indterminable (?), langage du bloc.

Vous avez la possibilit de filtrer laffichage des occurrences, afin dafficher uniquement les accs en criture un oprande, par exemple. De plus amples informations sur les possibilits de saisie et sur laffichage sont donnes dans laide ne ligne de cette bote de dialogue.

Nota Les donnes de rfrence existent uniquement hors ligne. Cette fonction utilise donc toujours les rfrences croises des blocs hors ligne, mme si vous appelez cette fonction dans un bloc en ligne.

14.2.5 Exemple de recherche d'occurrences


Vous souhaitez rechercher les occurrences pour lesquelles la sortie A1.0 (directe/indirecte) est mise 1. Comme exemple, nous allons utiliser le code LIST suivant dans lOB 1:
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

310

Affichage des donnes de rfrence 14.2 Utilisation des donnes de rfrence

Rseau 1:........... U A 1.0 // dans notre exemple, = A 1.1 // insignifiant Rseau 2: U M1.0 U M2.0 = A 1.0 // Affectation Rseau 3: //uniquement ligne de commentaire SET = M1.0 // Affectation Rseau 4: U E 1.0 U E 2.0 = M2.0 // Affectation

Pour A1.0, on obtient donc le schma daffectation suivant :

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

311

Affichage des donnes de rfrence 14.2 Utilisation des donnes de rfrence

Vous procdez alors de la manire suivante : 1. Dans lditeur CONT/LIST/LOG, positionnez-vous sur A1.0 (R1, inst 1) dans lOB 1. 2. Choisissez la commande Edition > Aller > Occurrence ou cliquez sur le bouton droit de la souris pour appeler la bote de dialogue "Aller occurrence". Toutes les affectations de A1.0 sont entre autres affiches dans la bote de dialogue : OB1 Cycle Execution R 2 Inst 3 /= W LIST OB1 Cycle Execution R 1 Inst 1 /U R LIST 3. Slectionnez "Aller " dans la bote de dialogue pour sauter "R 2 Inst 3" dans lditeur : Rseau 2: U M1.0 U M2.0 = A 1.0 4. Vous devez vrifier aussi bien les affectations de M1.0 que de M2.0. Positionnez-vous dabord sur M1.0 dans lditeur CONT/LIST/LOG. 5. Choisissez la commande Edition > Aller > Occurrence ou cliquez sur le bouton droit de la souris pour appeler la bote de dialogue "Aller occurrence". Celle-ci affiche entre autres toutes les affectations de M1.0 : OB1 Cycle Execution R 3 Inst 2 /= W LIST OB1 Cycle Execution R 2 Inst 1 /U R LIST 6. Slectionnez "Aller " pour sauter "R 3 Inst 2" dans lditeur CONT/LIST/LOG. 7. Dans le rseau 3 de lditeur CONT/LIST/LOG, nous constatons que laffectation de M1.0 ne nous intresse pas (toujours TRUE) et que nous devons donc vrifier celle de M2.0. Dans les versions de STEP 7 antrieure V5, il fallait pour cela repasser par l'ensemble de la chane daffectations. Les boutons ">>" et "<<" facilitent la suite de la procdure : 8. Amenez au premier plan la bote de dialogue "Aller occurrence" encore ouverte ou appelez-la partir de la position actuelle dans lditeur CONT/LIST/LOG. 9. Appuyez une ou deux fois sur le bouton "<<", jusqu ce que toutes les occurrences de A 1.0 saffichent, la dernire, "R 2 Inst 3" tant slectionne. 10. Slectionnez "Aller " (comme ltape 3) dans la bote de dialogue des occurrences pour sauter "R 2 Inst 3" dans lditeur : Rseau 2: U M1.0 U M2.0 = A 1.0 11. A ltape 4 et aux suivantes, nous avions vrifi laffectation de M1.0. Nous devons prsent vrifier toutes les affectations (directes/indirectes) de M2.0. Positionnez-vous donc sur M2.0 dans lditeur et appelez "Aller occurrence" : toutes les affectations de M2.0, entre autres, saffichent : OB1 Cycle Execution R 4 Inst 3 /= W LIST OB1 Cycle Execution R 2 Inst 2 /U R LIST

312

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Affichage des donnes de rfrence 14.2 Utilisation des donnes de rfrence

12. Slectionnez "Aller " pour sauter "R 4 Inst 3" dans lditeur CONT/LIST/LOG : Rseau 4: U E 1.0 U E 2.0 = M2.0 13. Vous devez prsent vrifier les affectations de E1.0 et E2.0. Nous nallons pas le faire dans cet exemple, car la procdure est similaire celle utilise jusqu prsent (tape 4 et suivantes). En commutant entre lditeur CONT/LIST/LOG et la bote de dialogue des occurrences, vous pouvez ainsi dterminer et vrifier les occurrences dans votre programme.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

313

Affichage des donnes de rfrence 14.2 Utilisation des donnes de rfrence

314

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

15

Vrifier la cohrence des blocs et horodatage comme proprit de bloc


Vrifier la cohrence des blocs

15.1

Introduction
Si vous tes oblig d'adapter ou de complter les interfaces ou le code de certains objets au cours de l'criture du programme ou aprs, il peut en rsulter des conflits d'horodatage qui leur tour risquent d'entraner des incohrences entre l'objet appelant et l'objet appel ou entre blocs de rfrence. Ceci peut ncessiter d'importantes corrections. La fonction "Vrifier la cohrence des blocs" simplifie cette tche de correction. Elle supprime automatiquement la majeure partie de tous les conflits d'horodatage et des incohrences entre blocs. Dans les objets dans lesquels elle n'est pas capable de supprimer ces erreurs automatiquement, cette fonction ouvre l'diteur correspondant et positionne le curseur l'endroit que vous devez modifier. Vous pouvez alors y effectuer les modifications ncessaires. Vous pouvez ainsi supprimer pas pas toutes les incohrences et compiler les objets.

Conditions
La vrification de cohrence des blocs n'est possible que pour les projets crs avec la version V5.0, Servicepack 3 de STEP 7 ou V5.1. Avec les projets plus anciens, vous devez donc commencer par compiler tout (commande Programme > Compiler tout). Pour les objets crs avec un logiciel optionnel, il faut que le logiciel optionnel pour vrification de cohrence soit install.

Dmarrage de la vrification de cohrence des blocs


Au dmarrage, la fonction commence par vrifier les horodatages des interfaces et met en valeur, dans la vue de l'arborescence (structure d'appel : arborescence rfrences/dpendances), les objets susceptibles de prsenter des incohrences. 1. Dans la fentre du projet de SIMATIC Manager, slectionnez le dossier Blocs souhait et dmarrez la vrification de cohrence des blocs en choisissant la commande de menu Edition > Vrification de la cohrence des blocs. 2. Choisissez la commande Programme > Compiler dans la "Vrification de cohrence des blocs". STEP 7 reconnat le langage de cration utilis pour les objets concerns et il ouvre l'diteur appropri. Autant que possible, les conflits d'horodatage et incohrences sont supprims automatiquement et les objets compils. Ceux dont la suppression automatique n'est pas possible sont signales par un message dans la fentre de rsultats (il faut alors continuer l'tape 3). Cette opration se rpte pour tous les objets de la vue de l'arborescence.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

315

Vrifier la cohrence des blocs et horodatage comme proprit de bloc 15.1 Vrifier la cohrence des blocs

3. Si toutes les incohrences entre blocs n'ont pas pu tre supprimes durant la compilation, les objets correspondants sont signals comme messages d'erreur dans la fentre de rsultats. Positionnez le curseur sur l'entre errone et choisissez, avec le bouton droit de la souris, la commande Afficher les erreurs dans le menu contextuel. L'diteur appropri s'ouvre alors et saute la position modifier. Eliminez toutes les incohrences, puis fermez l'objet et enregistrezle. Rptez cette opration pour tous les objets signals comme erreurs. 4. Rptez les tapes 2 et 3 jusqu' ce qu'aucune erreur ne soit plus signale dans la fentre de rsultats.

316

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Vrifier la cohrence des blocs et horodatage comme proprit de bloc 15.2 Horodatage comme proprit de bloc et conflits d'horodatage

15.2

Horodatage comme proprit de bloc et conflits d'horodatage


Les blocs contiennent un horodatage du code et un horodatage des interfaces. Ces horodatages s'affichent dans la bote de dialogue des proprits de bloc. Ils permettent de vrifier la cohrence des programmes STEP 7. STEP 7 signale un conflit d'horodatage lorsque l'un des manquements la rgle suivants est dtect lors de la comparaison d'horodatages. Un bloc appel est plus rcent que le bloc appelant (CALL). Un bloc rfrenc est plus rcent que le bloc qui l'utilise. Exemples relatifs au second point : Un UDT est plus rcent que le bloc qui l'utilise, p. ex. un DB ou un autre UDT, ou un FC, FB, OB qui utilise cet UDT dans la table de dclaration des variables. Un FB est plus rcent que le DB d'instance correspondant. Un FB 2 est dfini comme multi-instance dans un FB 1et FB 2 est plus rcent que FB 1.

Nota Des incohrences sont galement susceptibles de se produire, mme lorsque la relation entre les horodatages d'interfaces est correcte :
La dfinition de l'interface du bloc rfrenc ne correspond pas l'interface utilise son occurrence. De telles incohrences sont appeles conflits d'interface. Ils peuvent par exemple rsulter de la copie de blocs de programmes diffrents ou de la compilation d'une source ASCII lors de laquelle seule une partie des blocs d'un programme complet est cre.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

317

Vrifier la cohrence des blocs et horodatage comme proprit de bloc 15.3 Horodatage dans les blocs de code

15.3

Horodatage dans les blocs de code

Horodatage du code
L'instant de cration du bloc y est notifi. L'horodatage est actualis en cas de modification de code du programme modification de la description d'interfaces modification du commentaire gnration et de compilation d'une source ASCII modification des proprits de bloc (bote de dialogue : Proprits)

Horodatage des interfaces


L'horodatage est actualis en cas de modification de la description d'interfaces (modification de types de donnes ou de valeurs initiales, nouveaux paramtres) gnration et compilation d'une source ASCII, si la structure de l'interface change.

L'horodatage n'est pas actualis en cas de : modification de mnmoniques modification de commentaires dans la dclaration de variables modification dans la zone TEMP.

Rgles pour l'appel de blocs


L'horodatage des interfaces du bloc appel doit tre antrieur l'horodatage du code du bloc appelant. Ne modifiez l'interface d'un bloc que si aucun bloc qui appelle celui-ci n'est ouvert. En effet, si vous enregistrez les blocs appelant aprs le bloc modifi, cette incohrence ne pourra pas tre dtecte par l'horotatage.

En cas d'erreur d'horodatage


Un conflit d'horodatage est signal l'ouverture du bloc appelant. Aprs modification d'une interface de FC ou de FB, tous les appels de ce bloc seront reprsents sous forme tendue dans les blocs appelant. Si vous modifiez l'interface d'un bloc, vous devez adapter tous les blocs qui appelent ce bloc. Aprs modification d'une interface de FB, vous devez actualiser les dfinitions de multi-instances et les blocs de donnes existant.

318

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Vrifier la cohrence des blocs et horodatage comme proprit de bloc 15.4 Horodatage dans les blocs de donnes globaux

15.4

Horodatage dans les blocs de donnes globaux

Horodatage du code
L'horodatage est actualis en cas de gnration, compilation d'une source ASCII, modification dans la vue des dclarations ou dans la vue des donnes du bloc.

Horodatage des interfaces


L'horodatage est actualis en cas de modification de la description des interfaces dans la vue des dclarations (modification de types de donnes ou de valeurs initiales, nouveaux paramtres)

15.5

Horodatage dans les blocs de donnes d'instance


Un bloc de donnes d'instance enregistre les paramtres formels et les donnes statiques de blocs fonctionnels.

Horodatage du code
L'instance de cration du bloc de donnes d'instance y est notifi. L'horodatage est actualis lorsque vous saisissez des valeurs effectives dans la vue des donnes du bloc de donnes d'instance. L'utilisateur ne peut pas modifier la structure d'un bloc de donnes d'instance ; en effet, sa structure est reprise du bloc fonctionnel (FB) ou du bloc fonctionnel systme (SFB) correspondant.

Horodatage des interfaces


Lors de la cration d'un bloc de donnes d'instance, l'horodatage des interfaces du FB ou du SFB correspondant y est notifi.

Rgles pour une ouverture exempte de conflits


L'horodatage des interfaces du FB/SFB et celui du bloc de donnes d'instance correspondant doivent concorder.

En cas de conflit d'horodatage


Lorsque vous modifiez l'interface d'un FB, l'horodatage des interfaces de ce FB est actualis. A l'ouverture d'un bloc de donnes d'instance correspondant, un conflit d'horodatage est signal, puisque les horodatages du bloc de donnes d'instance et du FB ne concordent plus. L'interface est reprsente avec les mnmoniques gnrs par le compilateur (pseudo-mnmoniques) dans la section de dclaration du DB. Le bloc de donnes d'instance peut uniquement tre visualis. Afin de rsoudre de tels conflits d'horodatage, vous devez crer une nouvelle fois le DB d'instance appartenant un FB modifi.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

319

Vrifier la cohrence des blocs et horodatage comme proprit de bloc 15.6 Horodatage dans les UDT et DB repris d'UDT

15.6

Horodatage dans les UDT et DB repris d'UDT


Vous pouvez utiliser des types de donnes utilisateur (UDT), par exemple pour crer plusieurs blocs de donnes de structure identique.

Horodatage du code
L'horodatage du code est actualis chaque modification.

Horodatage des interfaces


L'horodatage des interfaces est actualis lors de la modification de la description des interfaces (modification de types de donnes ou de valeurs initiales, nouveaux paramtres). L'horodatage des interfaces d'un UDT est galement actualis lors de la compilation de la source ASCII.

Rgles pour une ouverture exempte de conflits


L'horodatage des interfaces du type de donnes utilisateur doit tre antrieur celui des blocs de code dans lequel ce type de donnes est utilis. L'horodatage des interfaces du type de donnes utilisateur doit tre identique l'horodatage d'un DB repris d'un UDT. L'horodatage des interfaces du type de donnes utilisateur doit tre postrieur l'horodatage d'un UDT qui y est contenu.

En cas de conflit d'horodatage


Lorsque vous modifiez une dfinition d'UDT utilise dans un DB, une FC, un FB ou une autre dfinition d'UDT, STEP 7 signale un conflit d'horodatage l'ouverture d'un tel bloc. Le composant UDT est reprsent non assembl, sous forme de structure. Tous les noms de variables sont remplacs par des valeurs par dfaut du systme.

15.7

Correction des interfaces dans une FC, un FB ou un UDT


Si vous avez corriger l'interface dans un FB, une FC ou un UDT, procdez de la manire suivante afin d'viter des conflits d'horodatage : 1. Gnrez une source LIST avec le bloc modifier ainsi qu'avec tous les blocs qui s'y rfrent de manire directe ou indirecte. 2. Enregistrez les modifications dans la source gnre. 3. Recompilez la source modifie en blocs. Vous pouvez prsent enregistrer/charger la modification d'interface.

320

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Vrifier la cohrence des blocs et horodatage comme proprit de bloc 15.8 Comment viter des erreurs lors de l'appel de blocs

15.8

Comment viter des erreurs lors de l'appel de blocs

STEP 7 crase des donnes dans le registre DB


STEP 7 modifie les registres des CPU S7-300/S7-400 lors de certaines oprations. Les contenus des registres DB et DI sont, par exemple, permuts lors de l'appel d'un FB : cela permet d'ouvrir le DB d'instance du FB appel sans perdre l'adresse du DB d'instance prcdent. En adressage absolu, des erreurs peuvent se produire lors de l'accs des donnes figurant dans les registres : dans certains cas, les adresses dans le registre d'adresse1 (AR1) et dans le registre de DB sont crases. Il se peut donc que vous lisiez des adresses errones ou que vous criviez des adresses errones.

Danger Il existe un risque de dgts matriels et de dommages physiques lorsque vous utilisez : 1. CALL FC, CALL FB, CALL multi-instance, 2. des accs un DB indiqus intgralement (par exemple, DB20.DBW10), 3. des accs des variables de type de donnes complexe, Il est possible que les contenus des registres de bloc de donnes (DB et DI), des registres d'adresse (AR1, AR2) et des accumulateurs (ACCU1 et ACCU2) soient modifis. En outre, il n'est pas possible d'utiliser le rsultat logique RLG comme paramtre supplmentaire (implicite) lors de l'appel d'une fonction ou d'un bloc fonctionnel. Si vous utilisez les mthodes de programmation ci-dessus, vous devez vous-mme faire en sorte que ces contenus soient corrects afin d'viter tout dysfonctionnement.

Sauvegarde de donnes correctes


Le contenu du registre de DB s'avre tout particulirement important lorsque vous accdez des donnes en format abrg de l'adresse absolue. Si, par exemple, vous partez du principe que le DB20 est ouvert (son numro est donc enregistr dans le registre DB), vous pouvez indiquer DBX0.2 pour accder aux donnes figurant dans le bit 2 de l'octet 0 du DB dont l'adresse figure dans le registre DB, donc le DB20. Toutefois, si le registre DB contient une autre adresse, vous accdez des donnes errones. Pour viter toute erreur lors d'accs aux donnes du registre DB, nous vous conseillons : d'utiliser l'adressage symbolique, de donner l'adresse absolue complte (par exemple, DB20.DBX0.).

Avec ces deux mthodes d'adressage, STEP 7 ouvre automatiquement le bon DB. Si vous utilisez le registre AR1 pour l'adressage indirect, vous devez toujours charger l'adresse correcte dans AR1.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

321

Vrifier la cohrence des blocs et horodatage comme proprit de bloc 15.8 Comment viter des erreurs lors de l'appel de blocs

Situation dans lesquelles les registres sont modifis


La manipulation des registres d'adresse pour l'adressage indirect ne concerne que le langage LIST. Les autres langages n'autorisent pas l'accs indirect aux registres d'adresse. En revanche, il faut tenir compte de la modification du registre du DB par le compilateur dans tous les langages de programmation afin de garantir une transmission correcte des paramtres lors d'appels de blocs. Le contenu du registre d'adresse AR1 et du registre de DB du bloc appelant est cras dans les situations suivantes :
Situation Signification Une fois que vous avez affect un bloc un paramtre effectif qui est sauvegard dans un bloc de donnes (par exemple, DB20.DBX0.2), STEP 7 ouvre ce bloc de donnes (DB20) et modifie le contenu du registre de DB en consquence. Aprs l'appel de bloc, le programme utilise alors le DB modifi. Le contenu du registre AR1 et du registre de DB du bloc appelant est modifi aprs un appel de bloc dans une FC qui transmet un composant d'un paramtre formel de type de donnes complexe (chane, tableau, structure ou UDT) au bloc appel. Il en est de mme lors d'un appel dans un FB si le paramtre se situe dans la zone VAR_IN_OUT du bloc appelant. STEP7 utilise le registre d'adresse AR1 et le registre de DB lors de l'accs d'un FB un composant d'un paramtre formel de type de donnes complexe dans la zone VAR_IN_OUT (chane, tableau, structure ou UDT). Cela entrane donc la modification du contenu de ces deux registres. STEP7 utilise le registre d'adresse AR1 et le registre de DB lors de l'accs d'une FC un composant d'un paramtre formel de type de donnes complexe (chane, tableau, stucture ou UDT). Cela entrane donc la modification du contenu de ces deux registres.

Paramtres effectifs provenant d'un DB

Appel de bloc en relation avec des types de donnes complexes

Accs des composants de type de donnes complexe

Nota
Lors de l'appel d'un FB dans un bloc de version 1, le parmtre effectif pour le premier paramtre boolen IN ou IN_OUT n'est pas transmis correctement si l'opration avant l'appel ne dlimite pas les RLG. Dans ce cas, ce paramtre est combin au RLG existant. Il y a criture dans le registre d'adresse AR2 lors de l'appel d'un FB (simple ou multi-instance). Le tratement correct d'un FB n'est plus garanti si le registre d'adresse AR2 est modifi l'intrieur de ce FB, p. ex. par les oprations UC, CC ou CALL (appel de FC/SFC sans paramtres). Si ladresse absolue du DB nest pas transmise en entier un paramtre ANY, le pointeur ANY ne contient pas le numro du DB ouvert, mais toujours le numro 0.

322

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

16
16.1

Configuration de messages
Concept de signalisation
Les messages vous permettent de dtecter rapidement, de localiser avec prcision et de corriger les erreurs d'excution du processus dans les automates programmables. Les temps d'immobilisation de votre installation s'en trouvent considrablement rduits. Avant que les messages ne puissent s'afficher, ils doivent tre configurs. STEP 7 vous permet de crer, dditer, de compiler et dafficher des messages qui sont fonction d'vnements sur des visuels, avec les textes et attributs correspondants.

16.1.1 Quels procds de signalisation existe-t-il ?


Il existe diffrents procds de cration de messages.

Procd de signalisation par bit


Pour le procd de signalisation par bit, le programmeur doit raliser 3 tapes : Il cre le programme utilisateur sur la PG et met le bit souhait 1. Il cre une liste d'affectation dans un diteur de texte quelconque, dans laquelle il affecte un texte au bit de signalisation (par exemple B. M 3.1 = Commutateur de fin de course Pression). Dans le systme de commande, il cre la liste des textes de message sur la base de la liste d'affectation.

Le systme de contrle-commande interroge cycliquement l'automate programmable pour vrifier si le bit de signalisation a t modifi. Si l'automate programmable signale une modification, le message correspondant s'affiche. Ce message comporte l'horodatage du systme de contrle-commande.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

323

Configuration de messages 16.1 Concept de signalisation

Procd de numro de message


Pour le procd de numro de message, le programmeur ne doit raliser qu'une tape : Il cre le programme utilisateur sur la PG, met le bit souhait 1 et affecte immditament lors de la programmation le texte souhait au bit.

Il n'y a pas d'interrogation cyclique de l'automate programmable. Aussitt que ce dernier signale une modification, le numro de message correspondant est transmis au systme de contrle-commande et le message correspondant s'affiche. Le message comporte l'horodatage de l'automate programmable et peut de ce fait tre affect avec plus de prcision que dans le cas du procd de signalisation par bit.

324

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.1 Concept de signalisation

16.1.2 Slection du procd de signalisation


Gnralits
Le tableau suivant prcise les caractristiques et conditions additionnelles des diffrents procds de signalisation.
Procd de numro de message Les messages sont grs dans une base de donnes commune la PG et au systme de commande. La charge pour le bus est faible (l'AP est signal actif). Les messages reoivent l'horodatage de l'automate programmable. Procd de signalisation par bit Il n'y a pas de base de donnes commune la PG et au systme de commande. La charge pour le bus est leve (le systme de commande interroge). Les messages reoivent l'horodatage du systme de commande.

Le procd de numro de message englobe les trois types de messages suivants :


Messages sur bloc Messages sur mnmonique Messages de diagnostic personnaliss Synchrone avec le programme Affichage dans la mmoire tampon de diagnostic sur la PG Possible pour S7-300/400 Programmation l'aide de blocs de signalisation (fonction systme) WR_USMSG

Synchrone avec le programme Affichage via ProTool (uniquement ALARM_S) et WinCC Possible pour S7-300/400 Programmation l'aide de blocs de signalisation : ALARM (uniquement S7-400) ALARM_8 (uniquement S7-400) ALARM_8P (uniquement S7-400) NOTIFY (uniquement S7-400) ALARM_S(Q) AR_SEND (uniquement S7-400) ALARM_D(Q)

Asynchrone avec le programme Affichage via WinCC

Possible seulmt pour S7-400 Configuration l'aide de la table des mnmoniques Transmission l'AP l'aide de blocs de donnes systme (SDB) Transmission au systme de commande l'aide de AS-OS-Engineering

Pas de transmission au systme de commande

Transmission au systme de commande pour WinCC, via AS-OSEngineering pour ProTool via les fonctions ProTool

STEP 7 utilise uniquement le procd le plus confortable, le procd de numro de message que nous allons dcrire en dtail ci-aprs. Le procd de messages binaires est configur dans les appareils IHM et y est dcrit.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

325

Configuration de messages 16.1 Concept de signalisation

Exemples du procd de numro de message


Procd de signalisation Messages sur bloc Messages sur mnmonique Messages personnaliss Dommaine d'application Pour signaler des vnements synchrones avec le programme, il s'agit par exemple d'indiquer qu'un rgulateur a atteint une valeur limite Pour signaler des vnements indpendants du programme, il s'agit par exemple de surveiller la position d'un commutateur Pour signaler des vnements de diagnostic dans la mmoire tampon de diagnostic, chaque appel de la SFC

326

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.1 Concept de signalisation

16.1.3 Composants SIMATIC


Gnralits
La figure suivante donne une vue d'ensemble des composants SIMATIC participant la configuration et l'affichage de messages.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

327

Configuration de messages 16.1 Concept de signalisation

16.1.4 Elments constituants d'un message


La manire de laquelle un message s'affiche dpend du procd de signalisation, du bloc de signalisation utilis et du visuel. Le tableau suivant contient la liste des lments constituants possibles :
Elment constituant Horodatage Etat de signalisation Variable Image Numro du message Texte du message Description Cr dans l'automate programmable l'apparition de l'vnement de signalisation Possibilits : arrivant, partant, partant sans acquittement, partant avec acquittement Il est possible d'ajouter certains messages une valeur de processus pouvant tre exploite par le bloc de signalisation utilis. En cas de blocage du systme, les messages arrivants peuvent tre affichs aprs coup sur l'OS. Numro univoque dans l'ensemble du projet ou de la CPU, attribu par le systme et qui identifie un message. Configurs par l'utilisateur

Exemple
L'exemple suivant montre un message d'alarme sur un pupitre oprateur (Operator Panel).

328

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.1 Concept de signalisation

16.1.5 Quels blocs de signalisation existe-t-il ?


Vous disposez des blocs de signalisation suivants, dans lesquels une fonction de signalisation est dj programme : SFB 33 : "ALARM" SFB 34 : "ALARM_8" SFB 35: "ALARM_8P" SFB 36 : "NOTIFY" SFC 18 : "ALARM_S" et SFC 17 : "ALARM_SQ" SFB 37 : "AR_SEND" (pour envoyer des archives ; configuration de textes et d'attributs de signalisation impossible) SFB 31 : "NOTIFY_8P" SFC 107 : "ALARM_DQ" SFC 108 : "ALARM_D"

De plus amples informations ce sujet sont donnes dans l'aide de rfrence sur les blocs.

Quand utiliser quel bloc de signalisation ?


Le tableau ci-aprs vous aidera choisir le bloc de signalisation convenant votre cas. Ce choix est guid par : le nombre de voies disponibles dans le bloc et donc le nombre de signaux surveills par appel de bloc, la possibilit d'acquitter des messages, la possibilit d'accompagner ceux-ci de variables, les visuels mis en oeuvre, la capacit de votre CPU.
Voies Acquittement Variable Affichage WinCC Affichage PROTOOL non Affichage mess. de CPU/ tat S7 non AP Particularits

Bloc de signalisation

ALARM SFB 33 ALARM_8 SFB 34

possible

10 au oui plus non oui

S7-400

Emet un message chaque front arrivant ou partant Emet un message chaque front arrivant ou partant d'un ou de plusieurs signaux Comme ALARM_8 Comme ALARM

possible

non

non

S7-400

ALARM_8P SFB 35 NOTIFY SFB 36

8 1

possible non

10 au oui plus 10 au oui plus

non non

non non

S7-400 S7-400

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

329

Configuration de messages 16.1 Concept de signalisation

Bloc de signalisation

Voies

Acquittement

Variable

Affichage WinCC

Affichage PROTOOL non non

Affichage mess. de CPU/ tat S7 non non

AP

Particularits

NOTIFY_8P SFB 31 AR_SEND SFB 37

8 1

non -

10 au oui plus oui

S7-400 S7-400

Comme NOTIFY Sert envoyer des archives ; configuration de textes et d'attributs de signalisation impossible Un message est gnr chaque appel de SFC et lors d'une modification de signal par rapport l'appel de SFC prcdent Comme ALARM_SQ Comme ALARM_SQ Comme ALARM_SQ

ALARM_SQ SFC 17

possible

oui

oui*

oui

S7-300/ 400

ALARM_S SFC 18 ALARM_DQ SFC 107 ALARM_D SFC 108


* en fonction du type d'OP

1 1 1

non possible non

1 1 1

oui oui oui

oui* oui * oui *

oui oui oui

S7-300/ 400 S7300/400 S7300/400

330

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.1 Concept de signalisation

16.1.6 Paramtres formels, attributs systme et blocs de signalisation


Paramtre formel comme entre de numro de message
Pour chaque message ou groupe de messages, vous avez besoin, dans votre programme, d'un paramtre formel que vous indiquez en tant que paramtre IN dans la table de dclaration des variables de votre programme. Ce paramtre formel est utilis comme entre de numro de message et constitue la base d'un message.

Valorisation des paramtres formels avec des attributs systme


Pour passer dans la configuration des messages, il faut d'abord que vous ayez valoris les paramtres formels avec des attributs systme. 1. Vous avez ajout les attributs systme suivants pour les paramtres : "S7_server" et "S7_a_type". 2. Vous leur avez donn des valeurs convenant aux blocs de signalisation que vous avez appels dans votre code de programme: pour s7_server, c'est toujours alarm_archiv, pour s7_a_type, elle dpend du bloc de signalisation appel.

Attributs systme et blocs de signalisation correspondants


Les objets qui s'affichent dans le serveur de messages ne sont pas les blocs de signalisation proprement parler, mais les valeurs correspondantes de l'attribut S7_a_type. Ces valeurs portent le mme nom que les blocs de signalisation existant en tant que SFB ou SFC (exception : alarm_s)
S7_a_type alarm_8 alarm_8p notify alarm alarm_s alarm_s ar_send notify_8p alarm_s alarm_s Bloc de Dsignation signalisation ALARM_8 SFB 34 ALARM_8P NOTIFY ALARM ALARM_S ALARM_SQ AR_SEND NOTIFY_8P ALARM_DQ ALARM_D SFB 35 SFB 36 SFB 33 SFC 18 SFC 17 SFB 37 SFB 31 SFC 107 SFC 108 Proprits 8 voies, acquittement possible, pas de variable additionnelle 8 voies, acquittement possible, jusqu' 10 variables additionnelles par voie 1 voie, pas d'acquittement, jusqu' 10 variables additionnelles 1 voie, acquittement possible, jusqu' 10 variables additionnelles 1 voie, pas d'acquittement, jusqu' 1 variable additionnelle 1 voie, acquittement possible, jusqu' 1 variable additionnelle sert envoyer des donnes d'archives 8 voies, pas d'acquittement, jusqu' 10 variables additionnelles 1 voie, acquittement possible, jusqu' 1 variable additionnelle 1 voie, pas d'acquittement, jusqu' 1 variable additionnelle

De plus amples informations ce sujet sont donnes dans l'aide de rfrence sur les attributs systme Les attributs systme sont affects automatiquement lorsque les blocs de signalisation que vous utilisez dans votre programme sont des SFB ou FB avec des attributs systme correspondants et lorsque vous les appelez comme multi-instances.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

331

Configuration de messages 16.1 Concept de signalisation

16.1.7 Type de message et messages


La configuration des messages vous permet de crer, par des oprations diffrentes, soit un type de message, soit des messages. Ceci dpend du bloc fonctions de signalisation par lequel vous accdez la configuration des messages.

Ce bloc ayant des fonctions de signalisation peut tre un FB ou un DB d'instance.


Si c'est un FB, vous pouvez crer un type de message pour les messages. Toutes les entres que vous effectuez pour le type de message seront automatiquement reprises dans les messages. Si vous affectez au FB un DB d'instance, des messages seront gnrs automatiquement sur ce type pour le DB d'instance, et des numros de message leur seront attribus. Si c'est un DB d'instance, vous pouvez modifier, pour chaque instance, les messages gnrs partir du type de message.

La diffrence visible, c'est que des numros sont attribus aux messages mais pas au type de message.

Verrouillage des donnes dans le type de message


La configuration des messages sert saisir des textes et des attributs pour des messages dclenchs par vnement. Ce faisant, vous pouvez, par exemple, dfinir l'aspect des messages sur certains visuels. Pour faciliter la cration des messages, il faut crer d'abord des types de message. En saisissant les donnes (attributs et textes) pour le type de message, vous pouvez dcider de les verrouiller ou pas. Quand les attributs sont verrouills, un symbole de cl figure ct de la zone de saisie ou ils sont cochs dans la colonne "Verrouill". Les textes verrouills sont cochs dans la colonne "Verrouill". Dans le type de message donnes verrouilles, vous ne pouvez plus modifier les messages propres aux instances. Elles seront seulement affiches. Si vous avez pourtant besoin de les modifier, vous devrez revenir au type de message pour y annuler le verrouillage et effectuer les modifications. Tourefois, ces modifications ne s'appliquent pas aux instances qui ont t gnres avant la modification.

332

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.1 Concept de signalisation

Modification des donnes dans le type de message


Selon que lors de la cration du projet, vous avez attribu les numros de message tout le projet ou la CPU, les modifications des donnes dans dans le type de message s'appliquent aux instances ou pas. Attribution des numros de message pour tout le projet : si vous souhaitez modifier ultrieurement des donnes dans le type de message et que ces modifications doivent aussi s'appliquer aux instances, alors vous devez galement effectuer ces modifications dans les instances. Attribution de numros de message pour la CPU : si vous modifiez ultrieurement des donnes dans le type de message, elles s'appliqueront automatiquement aux instances. Exceptions : vous avez prcdemment modifi ces donnes dans les instances ou les avez verrouilles ou dverrouilles ultrieurement dans le type de message. Lorsque vous copiez un FB et un DB d'instance depuis un projet avec attribution des numros de message pour le projet dans un projet avec attribution des numros de message pour la CPU, vous devez galement raliser dans l'instance, les modifications des donnes que vous avez prcdemment faites dans le type de message.

Important
Si vous copiez des instances dans un autre programme, sans galement copier le type de message, l'instance risque de ne pas tre complte. Dans ce cas, copiez le type de message dans le nouveau programme. Si des textes et attributs sont reprsents en vert dans un instance, cela signifie que ces textes et attributs sont encore tels qu'ils ont t configurs dans le type. Entre-temps, ils n'ont pas t modifis dans l'instance.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

333

Configuration de messages 16.1 Concept de signalisation

16.1.8 Cration d'une source LIST partir de blocs de signalisation


Lorsque vous crez une source LIST partir de blocs de signalisation, les informations projet sont galement intgres cette source. L'information est inscrite dans un pseudo-commentaire commenant par "*$ALARM_SERVER" et se terminant par "*".

Important Lorsque vous rfrencez un bloc de manire symbolique, veillez ne pas modifier la table des mnmoniques avant de raliser la compilation de la source.

Lorsque la source comporte plusieurs blocs, plusieurs blocs de pseudo-commentaires sont regroups en un bloc de commentaires. Vous ne pouvez pas supprimer des blocs individuels possdant des attributs de message dans une source LIST.

16.1.9 Attribution de numros de message


Vous pouvez dcider d'attribuer les numros de message pour tout le projet ou pour la CPU. L'avantage de l'attribution des numros de message pour la CPU est que vous pouvez copier un programme sans que les numros de messages ne changent et doivent tre recompils. Il n'est possible d'afficher les numros de messages pour la CPU sur un appareil IHM qu'avec "WinCC V6.0" et/ou "ProTool V6.0". Si vous travaillez avec des versions antrieures la version V6.0 de ces applications, choisissez les numros de message pour le projet.

334

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.1 Concept de signalisation

16.1.10 Diffrences entre l'attribution de numros de message pour tout le projet et celle pour la CPU
Le tableau suivant indique les diffrences entre l'attribution de numros de message pour l'ensemble du projet et celle pour la CPU :
Tout le projet Certains attributs et textes de message dpendent de l'appareil IHM mis en uvre et doivent tre configurs en fonction du visuel. Lors de la copie de programmes, une nouvelle compilation doit tre ralise. CPU Les attributs et textes affects sont indpendant de l'appareil IHM mis en uvre, c'est--dire que vous ne devez plus insrer de visuel et configurer un message spcifique au visuel pour cet appareil. Les programmes peuvent tre copis au sein d'un projet et d'un projet vers un autre. Lors de la copie de blocs individuels, une nouvelle compilation est cependant ncessaire. Lorsque vous modifiez ultrieurement des donnes (textes et attributs) dans le modle de message, ces modifications sont reprises automatiquement dans les instances (exception : vous avez dj modifi ces donnes dans les instances).

Lorsque vous modifiez ultrieurement des donnes (textes et attributs) dans le modle de message, vous devez reporter ces modifications dans les instances.

Vous pouvez uniquement saisir des textes une ligne. Vous pouvez galement saisir des textes plusieurs lignes. Pour tous les types de messages ( l'exception de WR_USMSG), vous pouvez crer jusqu' 2097151 messages par programme. Vous avez la possibilit de crer jusqu' 8191 messages alarm_s par programme. Pour tous les autres types de messages ( l'exception de WR_USMSG), vous pouvez crer jusqu' 32767 messages par programme. Lorsque vous ralisez un "Enregistrement sous avec rorganisation" de projets ou une copie de programmes d'un concept de numros de message pour l'ensemble du projet vers un concept de numros de messages pour la CPU, vous devez de ce fait veiller ne pas dpasser le nombre maximum possible de messages par programme pour ce second concept !

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

335

Configuration de messages 16.1 Concept de signalisation

16.1.11 Possibilits de modification de l'attribution des numros de message d'un projet


Le mode d'attribution des numros de message peut tre prslectionn pour les futurs nouveaux projets et bibliothques dans la page d'onglet "Numros de message" (commande de menu Outils > Paramtres) de SIMATIC Manager. Dans cette page d'onglet, vous indiquez si les numros de message doivent tre attribus de manire univoque pour la CPU ou pour le projet. Vous pouvez galement slectionner "Demande pralable" pour raliser l'attribution ultrieurement. Si au moment de la cration d'un projet ou d'une bibliothque, la prslection "Numros de message univoques pour la CPU" ou "Numros de message univoques pour le projet" est active, ce mode d'attribution des numros de message ne peut plus tre modifi dans ce projet ou cette bibliothque. Si l'attribution des numros de message "Numros de message univoques pour le projet" a t paramtre et que vous souhaitez une attribution des "Numros de message univoques pour la CPU", procdez de la manire suivante : 1. Dans SIMATIC Manager, slectionnez le projet ou la bibliothque souhaits. 2. Choisissez la commande de menu Fichier > Enregistrer sous. 3. Dans la bote de dialogue qui s'ouvre, activez la case cocher "Avec rorganisation" et entrez un nouveau nom. 4. Dmarrez la procdure "Enregistrez sous" en cliquant sur le bouton "OK". 5. Dans l'une des botes de dialogue suivantes, vous pouvez dfinir l'attribution des numros de message "Numros de message univoques pour la CPU".

La commande de menu Fichier > Supprimer vous permet de supprimer le projet initial ou la bibliothque initiale.

336

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.2 Configuration de messsages pour tout le projet

16.2

Configuration de messsages pour tout le projet

16.2.1 Attribution de numros de message pour tout le projet


Les messages sont identifis par un numro univoque dans l'ensemble du projet. Une plage de numros appartenant la plage totale disponible (1 2097151) est cet effet attribue chaque programme S7. En cas de conflit - lorsque vous copiez un programme et que des numros de messages identiques ont dj t attribus dans la plage cible -, vous devez attribuer une autre plage de numros au nouveau programme. Dans un tel cas, STEP 7 ouvre automatiquement la bote de dialogue dans laquelle vous pouvez attribuer la nouvelle plage de numros. La commande Edition > Proprits spcifiques de l'objet > Numros de messages vous permet, lorsqu'aucun message n'a t configur dans le programme, en outre de dfinir ou de modifier la plage de numros pour un programme S7. Par dfaut, les plages de numros de message sont attribues par tranche de 20 000.

16.2.2 Affectation et dition de messages sur bloc


Les messages sur bloc sont affects un bloc (DB d'instance). Pour crer un message sur bloc, vous pouvez utiliser des blocs fonctionnels systme (SFB) et des fonctions systme (SFC) comme blocs de signalisation.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

337

Configuration de messages 16.2 Configuration de messsages pour tout le projet

16.2.2.1

Cration de messages sur bloc (pour tout le projet)

Marche suivre

Programmation d'un bloc apte la signalisation (FB)


1. Dans SIMATIC Manager, slectionnez le bloc fonctionnel (FB) pour lequel vous souhaitez crer un message et ouvrez-le par double clic. Rsultat : le bloc slectionn s'ouvre et s'affiche dans la fentre "CONT/LOG/LIST". 2. Compltez la table de dclaration des variables. Pour chaque bloc de signalisation appel dans le FB, vous devez dclarer des variables dans le FB appelant. Pour ce faire, entrez les variables suivantes dans la vue des variables : pour le paramtre "IN", un mnmonique pour l'entre du bloc de signalisation, par exemple "Mess01" (pour l'entre du message 01) ainsi que le type de donnes correspondant (il doit s'agir de "DWORD" sans valeur initiale). pour le paramtre "STAT", un mnmonique pour le bloc de signalisation appeler, par exemple "alarme" ainsi que le type de donnes correspondant, en l'occurrence "SFB33".

338

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.2 Configuration de messsages pour tout le projet

3. Dans la section des instructions du FB, insrez l'appel du bloc de signalisation slectionn, dans notre exemple "CALL alarme", puis validez votre saisie par la touche ENTREE. Rsultat : les variables d'entre du bloc de signalisation appel, dans notre exemple le SFB33, s'affichent dans la section des instructions du FB. 4. Affectez la variable "EV_ID" le mnmonique que vous aviez affect l'tape 2 l'entre du bloc de signalisation, dans notre cas "Mess01". A prsent les attributs systme sont repris pour le type de message "alarme" (pour certaines SFC, vous devez affecter vous-mme les attributs systme pour le paramtre "IN" (commande de menu Edition > Proprits de l'objet, onglet "Attributs")). Rsultat : si la colonne "Nom" n'est pas slectionne, un "drapeau" y apparat pour le paramtre "IN". Le bloc slectionn acquiert ainsi des fonctions de signalisation. Les attributs systme requis (par exemple S7_server et S7_a_type) ainsi que les valeurs correspondantes sont affects automatiquement. Important : si au lieu d'un SFB, vous appelez un FB avec des multi-instances et dans lequel des messages sont galement configurs, vous devez alors configurer les messages du FB avec des multi-instances dans le bloc appelant. 5. Renouvelez les tapes 2 4 pour tous les appels de blocs de signalisation dans ce FB. 6. Enregistrez le bloc en choisissant la commande Fichier > Enregistrer. 7. Fermez la fentre "CONT, LIST, LOG".

Appel de l'application de configuration des messages


Slectionnez le bloc de signalisation souhait, puis dans SIMATIC Manager, choisissez la commande Edition > Proprits spcifiques de l'objet > Signalisation. Rsultat : la bote de dialogue de la configuration des messages de STEP 7 (bote de dialogue par dfaut) s'ouvre. Pour savoir comment appelez la configuration des messages PCS7, reportez vous Configuration des messages PCS7.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

339

Configuration de messages 16.2 Configuration de messsages pour tout le projet

Edition d'un type de message


1. Slectionnez le bloc de signalisation voulu, ouvrez la configuration des messages, puis saisissez le texte souhaits dans les pages d'onglet "Texte" et "Attributs" ou slectionnez les attributs de message souhaits. Si vous avez slectionn un bloc de signalisation plusieurs voies (par exemple "ALARM_8"), vous pouvez affecter chaque sous-numro ses propres textes et en partie des attributs propres. 2. Affectez les visuels souhaits au type de message en cliquant sur le bouton "Nouveau visuel", puis en slectionnant des visuels dans la bote de dialogue "Insrer un visuel" qui apparat. Saisissez galement, dans les pages d'onglet suivantes, les textes et attributs souhaits pour les visuels. Quittez la bote de dialogue par "OK".

Nota Pour diter les textes et attributs propres au visuel, veuillez consulter la documentation livre avec ce visuel.

Cration de DB d'instance
1. Aprs avoir cr un type de message, vous pouvez lui affecter des blocs de donnes d'instance (DB) et diter le message propre chaque instance. Dans SIMATIC Manager, ouvrez cet effet le bloc qui doit appeler votre FB pralablement configur, par exemple l'"OB1", en cliquant deux fois dessus. Dans la section des instructions ouverte de l'OB, entrez l'appel ("CALL") suivi du nom et du numro du FB appeler ainsi que du DB que vous voulez affecter au FB comme instance. Confirmez votre saisie par la touche ENTREE. Exemple : entrez "CALL FB1, DB1". Si le DB1 n'existe pas encore, confirmez par "Oui" la demande de gnration du DB d'instance. Rsultat : le DB d'instance est cr. Les variables d'entre du FB correspondant, dans notre cas"Mess01" ainsi que le numro de message attribu par le systme, ici "1" s'affichent dans la section des instructions. 2. Enregistrez l'OB avec la commande Fichier > Enregistrer et fermez la fentre "CONT, LIST, LOG".

340

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.2 Configuration de messsages pour tout le projet

Edition de messages
1. Dans SIMATIC Manager, slectionnez le DB d'instance cr, par exemple le "DB1" et appelez la configuration des messages en choisissant la commande Edition > Proprits spcifiques de l'objet > Signalisation.... Rsultat : la bote de dialogue "Configuration des messages" s'ouvre et le DB d'instance slectionn s'affiche avec le numro de message attribu par le systme. 2. Effectuez les modifications souhaites pour le DB d'instance respectif dans les diverses pages d'onglet et si vous le souhaitez, ajoutez d'autres visuels. Quittez la fonction par "OK". Rsultat : la configuration des messages est ainsi termine pour le DB d'instance slectionn.

Transfert des donnes de configuration


Transfrez les donnes configures dans la base de donnes de WinCC (avec la fonction Transfert des donnes vers l'OS) ou dans celle de ProTool.

16.2.2.2

Edition de messages sur bloc (pour tout le projet)


1. Slectionnez le bloc souhait dans SIMATIC Manager, puis choisissez la commande de menu Edition > Proprits spcifiques de l'objet > Message. 2. Dans la structure des rpertoires, cliquez sur une entre de bloc de signalisation ou sur l'un de ses sous-numros (s'il en existe) Rsultat : la partie de la page d'onglet correspondant un message gnral s'affiche. 3. Saisissez les textes et attributs dans les onglets "Texte" et "Attributs". Rsultat : vous avez cr un message standard qui peut s'afficher sur tous les visuels. 4. En cliquant sur le bouton "Nouveau visuel", insrez un nouveau visuel de type "ProTool" (Opx) ou "WinCC". Seuls les visuels sur lesquels les messages configurs peuvent tre affichs vous sont proposs. Rsultat : le nouveau visuel se trouve insr et slectionn, l'onglet correspondant s'affiche. 5. Saisissez des attributs et des textes pour le message propre un visuel dans les onglets "Textes" et "Attributs" propres un visuel. Rsultat : vous avez cr une variante de message qui sera utilise seulement pour le message sur le visuel choisi. Pour diter d'autres variantes du message pour des visuels dj existants, ouvrez le bloc de signalisation par un double clic dans la vue de dtail. Rsultat : le premier visuel se trouve automatiquement choisi et vous pouvez diter la variante de message qui lui est propre.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

341

Configuration de messages 16.2 Configuration de messsages pour tout le projet

16.2.2.3

Configuration des messages PCS7 (pour tout le projet)


Pour l'dition de types de messages et de messages devant s'afficher sur les visuels WinCC, la configuration des messages PCS7 mise votre disposition par STEP 7 vous offre la possibilit de simplifier la configuration des visuels (ils sont crs automatiquement), simplifier la saisie d'attributs et de textes pour les messages, garantir l'homognit des messages.

Appel de la configuration des messages PCS7


1. Dans SIMATIC Manager, slectionnez le bloc (FB ou DB) dont vous souhaitez diter les textes de message et choisissez la commande Edition > Proprits de l'objet pour ouvrir la bote de dialogue de saisie des attributs systme. 2. Entrez dans la table qui s'affiche l'attribut systme "S7_alarm_ui" et la valeur : "1" (la valeur "0" dsactive la configuration de messages PCS 7). Les paramtres des attributs peuvent tre attribus dans CONT/LOG/LIST. Les DB ensuite gnrs et affects aux FB correspondants reoivent ces paramtres et peuvent tre commuts indpendamment du type de message (FB) dans leurs propres paramtres d'attributs. Nota : Une vrification syntaxique accompagne la saisie des attributs systme et les entres errones sont repres en rouge. 3. Quittez la bote de dialogue par "OK". 4. Choisissez la commande Edition > Proprits spcifiques de l'objet > Signalisation. Rsultat : la bote de dialogue de la configuration des messages PCS7 s'ouvre.

Edition de types de message


1. Dans SIMATIC Manager, slectionnez le FB dont vous souhaitez diter les textes de message et appelez la configuration des messages PCS7. Rsultat : Dans la bote de dialogue, une page d'onglet s'affiche pour chaque bloc de signalisation pour lequel vous avez dclar une variable dans le FB. 2. Compltez les zones de texte pour les lments constituants des messages "Origine", "Secteur OS" et "Code Batch". 3. Pour tous les vnements des blocs de signalisation utiliss, indiquez la classe du message ainsi que le texte de l'vnement et dfinissez si chaque vnement doit tre acquitt individuellement. 4. Pour les lments constituants des messages valables pour toutes les instances et qui ne doivent pas y tre modifis, cochez la case "Verrouill".

Edition de messages
1. Dans SIMATIC Manager, slectionnez le DB d'instance dont vous souhaitez diter les textes de message et appelez la configuration des messages PCS7. 2. Modifiez les lments constituants de message qui sont spcifiques aux instances et ne sont pas verrouills.

342

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.2 Configuration de messsages pour tout le projet

16.2.3 Affectation et dition de messages sur mnmonique


16.2.3.1 Affectation et dition de messages sur mnmonique (pour tout le projet)
Les messages sur mnmonique (SCAN) sont directement affects un signal dans la table des mnmoniques. Les signaux autoriss sont tous les oprandes boolens, savoir les entres (E), les sorties (A) et les mmentos (M). Dans l'application de configuration des messages vous pouvez leur affecter diffrents attributs, textes de message et jusqu' 10 variables additionnelles. La dfinition de filtres vous facilite le choix des signaux dans la table des mnmoniques. Un message sur mnmoniques vous permet de scruter un signal selon un intervalle de temps donn afin de dtecter un ventuel changement d'tat. Nota L'intervalle de temps dpend de la CPU utilise.

Marche suivre

Les signaux pour lesquels vous avez configur des messages sont scruts de manire asynchrone lexcution de votre programme. La scrutation a lieu aux intervalles de temps configurs. Les messages saffichent sur les visuels affects. Important Si vous souhaitez affecter ou diter des messages sur mnmonique et avez prcdemment copi des mnmoniques entre deux tables de mnmoniques, vous devez d'abord fermer la table de mnmoniques dans laquelle vous ne souhaitez plus travailler. Sinon, vous ne pouvez pas enregistrer la configuration des messages. Le cas chant, les dernires entres dans la bote de dialogue de la configuration des messages sont perdues.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

343

Configuration de messages 16.2 Configuration de messsages pour tout le projet

16.2.4 Cration et dition de messages de diagnostic personnaliss


Cette fonction vous permet d'crire une entre utilisateur dans la mmoire de diagnostic et d'mettre un message correspondant que vous crez dans l'application de configuration des messages. C'est la fonction SFC52 (WR_USMSG ; classe d'erreur A ou B) qui, utilise comme bloc de signalisation, ralise ces messages de diagnostic personnaliss. Vous devez insrer l'appel de la SFC52 dans votre programme utilisateur et lui affecter l'ID d'vnement.

Conditions pralables
Pour pouvoir crer un message de diagnostic personnalis, vous devez avoir : cr un projet dans SIMATIC Manager et dans ce projet, cr un programme S7 auquel vous souhaitez affecter un ou plusieurs messages.

Marche suivre
Pour crer et afficher un message de diagnostic personnalis, procdez de la manire suivante :

344

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.3 Configuration de messsages pour la CPU

16.3

Configuration de messsages pour la CPU

16.3.1 Attribution de numros de message pour la CPU


Les messages sont identifis par un numro univoque pour la CPU. Une plage de numros est cet effet attribue chaque CPU. Lorsque vous copiez un programme, vous devez ne devez pas attribuer de nouvelle plage de numros au nouveau programme - contrairement ce que vous faites lors de l'attribution de numros de message pour l'ensemble du projet. Une nouvelle compilation des programmes ne s'avre donc plus ncessaire. La copie de blocs individuels constitue une exception. Dans ce cas, une nouvelle compilation est ncessaire pour intgrer les numros de message modifis au programme.

Conditions
WinCC V6.0 ProTool V6.0

16.3.2 Affectation et dition de messages sur bloc


Les messages sur bloc sont affects un bloc (DB d'instance). Pour crer un message sur bloc, vous pouvez utiliser des blocs fonctionnels systme (SFB) et des fonctions systme (SFC) comme blocs de signalisation.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

345

Configuration de messages 16.3 Configuration de messsages pour la CPU

16.3.2.1

Cration de messages sur bloc (pour la CPU)

Marche suivre

346

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.3 Configuration de messsages pour la CPU

Programmation d'un bloc apte la signalisation (FB)


1. Dans SIMATIC Manager, slectionnez le bloc fonctionnel (FB) pour lequel vous souhaitez crer un message sur bloc et ouvrez-le par double clic. Rsultat : le bloc slectionn s'ouvre et s'affiche dans la fentre "CONT/LOG/LIST". 2. Compltez la table de dclaration des variables. Pour chaque bloc de signalisation appel dans le FB, vous devez dclarer des variables dans le FB appelant. Pour ce faire, entrez les variables suivantes dans la vue des variables : pour le paramtre "IN", un mnmonique pour l'entre du bloc de signalisation, par exemple "Mess01" (pour l'entre du message 01) ainsi que le type de donnes correspondant (il doit s'agir de "DWORD" sans valeur initiale). pour le paramtre "STAT", un mnmonique pour le bloc de signalisation appeler, par exemple "alarme" ainsi que le type de donnes correspondant, en l'occurrence "SFB33".

3. Dans la section des instructions du FB, insrez l'appel du bloc de signalisation slectionn, dans notre exemple "CALL alarme", puis validez votre saisie par la touche ENTREE. Rsultat : les variables d'entre du bloc de signalisation appel, dans notre exemple le SFB33, s'affichent dans la section des instructions du FB. 4. Affectez la variable "EV_ID" le mnmonique que vous aviez affect l'tape 2 l'entre du bloc de signalisation, dans notre cas "Mess01". Rsultat : si la colonne "Nom" n'est pas slectionne, un "drapeau" y apparat pour le paramtre "IN". Le bloc slectionn acquiert ainsi des fonctions de signalisation. Les attributs systme requis (par exemple S7_server et S7_a_type) ainsi que les valeurs correspondantes sont affects automatiquement (pour certaines SFC, vous devez affecter vous-mme les attributs systme pour le paramtre "IN" (commande de menu Edition > Proprits de l'objet, onglet "Attributs")). Important : si au lieu d'un SFB, vous appelez un FB avec des multi-instances et dans lequel des messages sont galement configurs, vous devez alors configurer les messages du FB avec des multi-instances dans le bloc appelant. 5. Renouvelez les tapes 2 4 pour tous les appels de blocs de signalisation dans ce FB. 6. Enregistrez le bloc en choisissant la commande Fichier > Enregistrer. 7. Fermez la fentre "CONT, LIST, LOG".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

347

Configuration de messages 16.3 Configuration de messsages pour la CPU

Appel de l'application de configuration des messages


Slectionnez le bloc de signalisation souhait, puis dans SIMATIC Manager, choisissez la commande Edition > Proprits spcifiques de l'objet > Signalisation. Rsultat : la bote de dialogue de la configuration des messages de STEP 7 s'ouvre. Pour savoir comment appelez la configuration des messages PCS7, reportez vous Configuration des messages PCS7 (pour la CPU).

Edition d'un type de message


Slectionnez le bloc de signalisation voulu Saisissez les textes souhaits dans les colonnes correspondantes ou slectionnez les attributs souhaits. Vous pouvez galement cliquer sur le bouton "Etendu" dans la bote de dialogue "Configuration des messages", puis entrer le texte de message et le texte complmentaire souhaits dans l'onglet "Textes par dfaut". Si vous avez slectionn un bloc de signalisation plusieurs voies (par exemple "ALARM_8"), vous pouvez affecter chaque sous-numro ses propres textes et en partie ses propres attributs. Les attributs valent pour tous les sous-numros. Si vous souhaitez que les textes et attributs ne puissent pas tre modifis dans l'instance, verrouillez-les dans le type de message.

Cration de DB d'instance
1. Aprs avoir cr un type de message, vous pouvez lui affecter des blocs de donnes d'instance (DB) et diter le message propre chaque instance. Dans SIMATIC Manager, ouvrez cet effet le bloc qui doit appeler votre FB pralablement configur, par exemple l'"OB1", en cliquant deux fois dessus. Dans la section des instructions ouverte de l'OB, entrez l'appel ("CALL") suivi du nom et du numro du FB appeler ainsi que du DB que vous voulez affecter au FB comme instance. Confirmez votre saisie par la touche ENTREE. Exemple : entrez "CALL FB1, DB1". Si le DB1 n'existe pas encore, confirmez par "Oui" la demande de gnration du DB d'instance. Rsultat : le DB d'instance est cr. Les variables d'entre du FB correspondant, dans notre cas"Mess01" ainsi que le numro de message attribu par le systme, ici "1" s'affichent dans la section des instructions. 2. Enregistrez l'OB avec la commande Fichier > Enregistrer et fermez la fentre "CONT LIST LOG".

348

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.3 Configuration de messsages pour la CPU

Edition de messages
1. Dans SIMATIC Manager, slectionnez le DB d'instance cr, par exemple le "DB1" et appelez la configuration des messages en choisissant la commande Edition > Proprits spcifiques de l'objet > Signalisation.... Rsultat : la bote de dialogue "Configuration des messages" s'ouvre et le DB d'instance slectionn s'affiche avec le numro de message attribu par le systme. 2. Effectuez les modifications souhaites pour le DB d'instance respectif dans les diverses pages d'onglet et si vous le souhaitez, ajoutez d'autres visuels. Quittez la fonction par "OK". Rsultat : la configuration des messages est ainsi termine pour le DB d'instance slectionn. Nota Si des textes et attributs sont reprsents en vert dans un instance, cela signifie que ces textes et attributs sont encore tels qu'ils ont t configurs dans le type. Entre-temps, ils n'ont pas t modifis dans l'instance.

Transfert des donnes de configuration


Transfrez les donnes configures dans la base de donnes de WinCC (avec la fonction de Transfert des donnes vers l'OS) ou dans celle de ProTool.

16.3.2.2

Edition de messages sur bloc (pour la CPU)


1. Slectionnez un bloc de signalisation et appelez la configuration des messages en choisissant la commande de menu Edition > Proprits spcifiques de l'objet > Signalisation. 2. Entrez les textes souhaits dans les colonnes "Textes par dfaut" et "Textes complmentaires". Vous pouvez galement cliquer sur le bouton "Etendu", puis entrer les souhaits avec des retours chariot dans les onglets "Textes par dafaut" et "Textes complmentaire". Rsultat : vous avez cr un message standard. Nota Si des textes et attributs sont reprsents en vert dans un instance, cela signifie que ces textes et attributs sont encore tels qu'ils ont t configurs dans le type. Entre-temps, ils n'ont pas t modifis dans l'instance.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

349

Configuration de messages 16.3 Configuration de messsages pour la CPU

16.3.2.3

Configuration des messages PCS7 (pour la CPU)


Pour l'dition de types de messages et de messages devant s'afficher sur les visuels WinCC ( partir de V6.0), la configuration des messages PCS7 mise votre disposition par STEP 7 vous offre la possibilit de simplifier la configuration des visuels (ils sont crs automatiquement), simplifier la saisie d'attributs et de textes pour les messages, garantir l'homognit des messages.

Appel de la configuration des messages PCS7


1. Dans SIMATIC Manager, slectionnez le bloc (FB ou DB) dont vous souhaitez diter les textes de message et choisissez la commande Edition > Proprits de l'objet pour ouvrir la bote de dialogue de saisie des attributs systme. 2. Entrez dans la table qui s'affiche l'attribut systme "S7_alarm_ui" et la valeur : "1" (la valeur "0" dsactive la configuration de messages PCS 7). Les paramtres des attributs peuvent tre attribus dans CONT/LOG/LIST. Les DB ensuite gnrs et affects aux FB correspondants reoivent ces paramtres et peuvent tre commuts indpendamment du type de message (FB) dans leurs propres paramtres d'attributs. Nota : Une vrification syntaxique accompagne la saisie des attributs systme et les entres errones sont repres en rouge. 3. Quittez la bote de dialogue par "OK". 4. Choisissez la commande Edition > Proprits spcifiques de l'objet > Signalisation. Rsultat : la bote de dialogue de la configuration des messages PCS7 s'ouvre.

Edition de types de message


1. Dans SIMATIC Manager, slectionnez le FB dont vous souhaitez diter les textes de message et appelez la configuration des messages PCS7. 2. Cliquez sur le bouton "Etendu", puis dans la page d'onglet "Bloc Texte de message" compltez les zones de texte pour les lments constituants des messages "Origine", "Secteur OS" et "Code Batch". 3. Pour tous les vnements des blocs de signalisation utiliss, indiquez la classe du message ainsi que le texte de l'vnement et dfinissez si chaque vnement doit tre acquitt individuellement. 4. Pour les lments constituants des messages valables pour toutes les instances et qui ne doivent pas y tre modifis, cochez la case "Verrouill".

Edition de messages
1. Dans SIMATIC Manager, slectionnez le DB d'instance dont vous souhaitez diter les textes de message et appelez la configuration des messages PCS7. 2. Modifiez les lments constituants de message qui sont spcifiques aux instances et ne sont pas verrouills.

350

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.3 Configuration de messsages pour la CPU

16.3.3 Affectation et dition de messages sur mnmonique


16.3.3.1 Affectation et dition de messages sur mnmonique (pour la CPU)
Les messages sur mnmonique (SCAN) sont directement affects un signal dans la table des mnmoniques. Les signaux autoriss sont tous les oprandes boolens, savoir les entres (E), les sorties (A) et les mmentos (M). Dans l'application de configuration des messages vous pouvez leur affecter diffrents attributs, textes de message et jusqu' 10 variables additionnelles. La dfinition de filtres vous facilite le choix des signaux dans la table des mnmoniques. Un message sur mnmoniques vous permet de scruter un signal selon un intervalle de temps donn afin de dtecter un ventuel changement d'tat.

Nota L'intervalle de temps dpend de la CPU utilise.

Marche suivre

Les signaux pour lesquels vous avez configur des messages sont scruts de manire asynchrone lexcution de votre programme. La scrutation a lieu aux intervalles de temps configurs. Les messages saffichent sur les visuels affects.

Important Si vous souhaitez affecter ou diter des messages sur mnmonique et avez prcdemment copi des mnmoniques entre deux tables de mnmoniques, vous devez d'abord fermer la table de mnmoniques dans laquelle vous ne souhaitez plus travailler. Sinon, vous ne pouvez pas enregistrer la configuration des messages. Le cas chant, les dernires entres dans la bote de dialogue de la configuration des messages sont perdues.

16.3.4 Cration et dition de messages de diagnostic personnaliss


Cette fonction vous permet d'crire une entre utilisateur dans la mmoire de diagnostic et d'mettre un message correspondant que vous crez dans l'application de configuration des messages. C'est la
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

351

Configuration de messages 16.3 Configuration de messsages pour la CPU

fonction SFC52 (WR_USMSG ; classe d'erreur A ou B) qui, utilise comme bloc de signalisation, ralise ces messages de diagnostic personnaliss. Vous devez insrer l'appel de la SFC52 dans votre programme utilisateur et lui affecter l'ID d'vnement.

Conditions pralables
Pour pouvoir crer un message de diagnostic personnalis, vous devez avoir : cr un projet dans SIMATIC Manager et dans ce projet, cr un programme S7 auquel vous souhaitez affecter un ou plusieurs messages.

Marche suivre
Pour crer et afficher un message de diagnostic personnalis, procdez de la manire suivante :

352

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.4 Conseils pour l'utilisation de messages

16.4

Conseils pour l'utilisation de messages

16.4.1 Insertion d'une variable dans un message


Afin d'ajouter des informations actuelles, par exemple du processus, des messages sur bloc ou sur mnmonique, vous pouvez insrer des variables additionnelles un endroit quelconque d'un texte de message.

Procdez de la manire suivante :


1. Composez un bloc construit comme suit : @<N de la variable><Type d'lment><Indication de format>@. 2. Insrez ce bloc dans le texte du message aux endroits o vous voulez que la variable additionnelle apparaisse.

Type d'lment
Il dtermine sans ambigut le type de donnes de la variable additionnelle :
Type d'lment Y W X I D B C R Type de donnes BYTE WORD DWORD entier DINT BOOL CHAR REAL

Le type d'lment sert seulement prciser le type de donnes transfr dans l'AS. Il n'est pas utilis comme casting operator.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

353

Configuration de messages 16.4 Conseils pour l'utilisation de messages

Indication de format
Prcisez ici le format utiliser pour reprsenter la variable additionnelle sur le visuel. L'indication du format est introduite par le caractre %. Pour les textes de message, il y a des indications de format fixes qui sont les suivantes :
Indication du format %[i]X %[i]u %[i]d %[i]b %[i][.y]f Description Nombre hexadcimal i positions Nombre dcimal sans signe i positions Nombre dcimal avec signe i positions Nombre binaire i positions Nombre virgule fixe Valeur avec signe de la forme [ - ]dddd.dddd

dddd : un ou plusieurs chiffres y positions aprs la virgule et i positions au total


%[i]s Chane de caractres (ANSI String) i positions Les caractres sont imprims jusqu'au premier octet 0 (00hexa). %t#<nom de la bibliothque de textes> Accs une bibliothque de textes

Si l'indication du format est trop petite, la valeur est malgr tout affiche dans sa longueur totale. Si l'indication du format est trop grande, la valeur est affiche prcde d'un nombre correspondant de caractres d'espacement.

Nota Sachez que vous pouvez entrer "[i]" de manire optionnelle, sans crochets.

354

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.4 Conseils pour l'utilisation de messages

Exemples de variables additionnelles :


@1I%6d@ : la valeur contenue dans la variable 1 est reprsente comme nombre dcimal 6 positions au plus. @2R%6f@ : la valeur "5.4" contenue dans la variable 2 est reprsente comme nombre virgule fixe "5.4" (trois espacements en tte). @2R%2f@ : la valeur "5.4" contenue dans la variable 2 est reprsente comme nombre virgule fixe "5.4" (pas de tronquage s'il n'y a pas assez de positions). @1W%t#BibText1@ : la variable 1 du type de donnes WORD est l'indicatif caractrisant, dans la bibliothque BibText1, le texte incorporer.

Nota S7-PDIAG requiert toujours le type d'lment "C" pour CHAR et "R" pour REAL. Les autres types d'lments valables de S7-PDIAG, savoir BOOL, BYTE, WORD, INT, DWORD et DINT requirent toujours "X". Si vous dsirez transmettre plus d'une variable l'un des blocs ALARM_S, vous pouvez transmettre un tableau de 12 octets maximum de longueur. Il peut s'agir par exemple de 12 octets ou caractres maximum, 6 mots ou entiers maximum ou 3 doubles mots rels ou entiers (Real ou Dint) maximum.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

355

Configuration de messages 16.4 Conseils pour l'utilisation de messages

16.4.2 Incorporer dans des messages des textes tirs de bibliothques


Vous pouvez incorporer dans un message autant de textes que vous le souhaitez provenant de 4 bibliothques diffrentes au plus. C'est vous de choisir la position des textes, ce qui en permet l'emploi dans des messages en langue trangre. Procdez de la manire suivante : 1. Slectionnez la CPU dans SIMATIC Manager, ou un objet subordonn la CPU, et choisissez la commande Outils > Bibliothques de textes > Bibliothque de textes systme ou Outils > Bibliothques de textes > Bibliothque de textes utilisateur pour ouvrir une bibliothque de textes. Important Vous pouvez intgrer des textes de bibliothques de texte utilisateur dans des messages uniquement si vous avez slectionn l'attribution des numros de message pour la CPU. 2. Cherchez l'indicatif du texte que vous souhaitez incorporer dans votre message. 3. Tapez un joker de format @[Index]%t#[Textbib]@ l'endroit du message o vous voulez faire apparatre le texte. Nota [Index] = p. ex. 1W, 1W correspondant la premire variable additionnelle du message de type WORD.

Exemple
Texte de message configur : La pression est @1734W%t#Bibtext1@. Bibliothque de textes portant le nom "Bibtext1" :
Indicatif 1734 Allemand zu hoch Franais trop haut(e)

La deuxime variable additionnelle transmise a reu la valeur 1734. Le texte de message suivant s'affiche : La pression est trop haut(e).

16.4.3 Effacer des variables additionnelles


Pour effacer une variable, effacez dans le texte du message la chane de caractres reprsentant la variable.

Procdez de la manire suivante :


1. Dans le message de texte, cherchez le bloc correspondant la variable effacer. Ce bloc commence par le caractre @, il contient le numro de la variable ainsi qu'une indication de format et se termine par le caractre @. 2. Quand vous l'avez trouv, effacez le bloc du texte du message.

356

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.5 Traduction et dition de textes destins l'utilisateur

16.5

Traduction et dition de textes destins l'utilisateur


Les textes qui s'affichent sur les visuels durant le traitement du processus ont t saisis habituellement dans la langue employe pour programmer la solution d'automatisation. Il arrive pourtant frquemment que l'utilisateur devant ragir plus tard ces messages ne connaisse pas cette langue. Il lui faudrait les textes dans sa langue maternelle. C'est la condition pour garantir un traitement sr et une raction rapide aux messages affichs. STEP 7 vous offre la possibilit de traduire les textes destins l'utilisateur dans toutes les langues. Il faut pour cela que vous ayez dj install la langue souhaite dans votre projet. Le nombre de langues proposes est dtermin lors de l'installation de Windows (proprit du systme). Ceci vous donne l'assurance que tous ceux qui seront confronts l'avenir aux messages affichs pourront les obtenir dans la langue qui leur convient. La sret du processus s'en trouvera considrablement amliore. Parmi les textes destins l'utilisateur, on distingue les textes personnaliss et les bibliothques de textes.

16.5.1 Traduction et dition de textes personnaliss


Vous pouvez crer des textes personnaliss pour un projet complet, pour des programmes S7, pour le dossier Blocs ou pour des blocs individuels ainsi que pour la table des mnmoniques, dans la mesure o des messages sont configurs dans ces objets. Vous pouvez tablir pour un mme projet plusieurs listes de textes personnaliss et les traduire dans les langues dont vous avez besoin. C'est vous qui choisissez les langues qui seront disponibles dans un projet (commande Outils > Langue de visuel). Vous pouvez aussi ajouter ou supprimer des langues ultrieurement.

Exportation et importation de textes personnaliss


Vous pouvez traduire ou diter en dehors de STEP 7 des textes personnaliss crs dans STEP 7. Pour ce faire, exportez la liste de textes affiche dans des fichiers d'exportation que vous diterez dans un diteur ASCII ou dans un tableur, comme l'application Microsoft EXCEL par exemple (commande de menu Outils > Gestion multilingue des textes > Exporter). Lorsque vous ouvrez ce fichier, l'cran affiche un tableau dont chaque colonne reprsente une langue. La premire colonne affiche toujours la langue paramtre comme langue standard. Aprs avoir traduit les textes, rimportez-les dans STEP 7. Les textes personnaliss ne peuvent tre imports que dans la partie de projet d'o ils ont t exports.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

357

Configuration de messages 16.5 Traduction et dition de textes destins l'utilisateur

Marche suivre
Vrifiez d'abord que vous avez bien choisi, avec la commande Outils > Langue de visuel de SIMATIC Manager, les langues dans lesquelles vous souhaitez traduire les textes personnaliss.

Nota Vous pouvez uniquement imprimer les textes utilisateur dans l'application dans laquelle vous les traduisez.

358

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.6 Edition et traduction de bibliothques de textes

16.6

Edition et traduction de bibliothques de textes

16.6.1 Bibliothques de texte utilisateur


En utilisant une bibliothque de textes utilisateur, vous pouvez afficher des textes ou parties de texte de manire dynamique en fonction d'une variable aditionnelle. Cette dernire fournit cet effet au texte actuel l'index de la bibliothque de textes. Un joker est inscrit l'endroit o le texte dynamique doit tre intgr. Vous avez la possibilit de crer des bibliothques de textes utilisateur pour un programme, d'y saisir des textes et leur affecter votre propre index. L'application vrifie automatiquement si l'index est univoque dans la bibliothque de textes utilisateur. Tous les messages disponibles de cette CPU peuvent faire rfrence une bibliothque de textes utilisateur. Un dossier Bibliothques de textes peut contenir un nombre illimit de bibliothques de textes. Ceci permet p. ex. d'utiliser le mme programme pour diffrentes tches d'automatisation en adaptant simplement les bibliothques de textes vos exigences. Important Lorsque vous copiez, dans un autre programme, un bloc de signalisation faisant rfrence des bibliothques de textes, vous devez galement copier les bibliothques de textes correspondantes ou crer une autre bibliothque de textes avec le mme nom et le mme contenu ou encore modifier la rfrence dans le texte de message. Lorsque vous crez une entre de texte, l'attribution d'un index est indispensable. Lorsque vous crez une nouvelle ligne, l'application propose par dfaut le prochain index libre. Des index doubles ne sont pas autoriss dans une bibliothque de textes et sont rejets par l'application.

16.6.2 Cration de bibliothques de textes utilisateur


Pour crer une bibliothque de textes utilisateur, procdez de la manire suivante : 1. Dans SIMATIC Manager, slectionnez le programme ou l'un des objets qu'il contient pour lequel vous souhaitez crer une bibliothque de textes utilisateur, puis choisissez la commande de menu Insertion > Bibliothque de textes > Dossier Bibliothque de textes. Rsultat : le dossier "Bibliothque de textes" est cr. 2. Slectionnez ensuite le dossier "Bibliothque de textes", choisissez la commande de menu Insertion > Bibliothque de textes > Bibliothque de textes utilisateur et entrez un nom pour la bibliothque de textes. 3. Pour ouvrir la bibliothque de textes, choisissez la commande de menu Outils > Bibliothques de textes > Bibliothque de textes utilisateur. 4. Vous pouvez prsent entrer les textes souhaits. Nota Lorsque vous crez une entre de texte, l'attribution d'un index est force. Lors de la cration d'une nouvelle ligne, l'application propose par dfaut le prochain index libre. Les index doubles ne sont pas autoriss dans une bibliothque de textes et sont rejets par l'application.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

359

Configuration de messages 16.6 Edition et traduction de bibliothques de textes

16.6.3 Edition de bibliothques de textes utilisateur


Pour diter des bibliothques de textes utilisateur existantes, procdez de la manire suivante : 1. Slectionnez dans SIMATIC Manager le programme ou l'un des objets qu'il contient et dont vous souhaitez diter la bibliothque de textes, puis choisissez la commande de menu Outils > Bibliothque de textes > Bibliothque de textes utilisateur. 2. Dans la bote de dialogue "Bibliothques de textes disponibles", slectionnez la bibliothque de textes utilisateur que vous souhaitez ouvrir. 3. Editez les textes affichs. Diverses fonctions d'dition vous sont proposes cet effet (p. ex. Recherche et remplacement). Vous pouvez entrer vos propres textes. L'index des textes utilisateur est cr automatiquement, mais peut tre modifi tout moment. Si vous entrez un index dj attribu, cette valeur s'affiche en rouge. Pour insrer une nouvelle ligne, choisissez la commande de menu Insertion > Nouvelle ligne ou cliquez sur l'icne correspondante dans la barre d'outils. 4. Imprimez les textes dont vous souhaitez disposer sur papier. 5. Une fois toutes vos tches ralises, enregistrez la bibliothque de textes utilisateur. 6. Aprs avoir dit tous les textes souhaits, quittez l'application.

Important Lorsque vous copiez, dans un autre programme, un bloc de signalisation faisant rfrence des bibliothques de textes, vous devez galement copier les bibliothques de textes correspondantes ou crer une autre bibliothque de textes avec le mme nom ou encore modifier la rfrence dans le texte de message. Lorsque vous modifiez le nom d'une bibliothque de textes existante, toutes les variables additionnelles qui font rfrence cette bibliothque de textes ne seront plus valides dans les messages dj configurs !

360

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.6 Edition et traduction de bibliothques de textes

16.6.4 Edition de bibliothques systme


Pour diter des bibliothques de textes systme existantes, procdez de la manire suivante : 1. Slectionnez dans SIMATIC Manager la CPU ou l'un des objets qu'elle contient et dont vous souhaitez diter la bibliothque de textes, puis choisissez la commande de menu Outils > Bibliothque de textes > Bibliothque de textes systme. 2. Dans la bote de dialogue "Bibliothques de textes disponibles", slectionnez la bibliothque de textes systme que vous souhaitez ouvrir. 3. Editez les textes affichs. Diverses fonctions d'dition vous sont proposes cet effet (p. ex. Recherche et remplacement). L'index de chaque texte est cr automatiquement et ne peut pas tre modifi. 4. Imprimez les textes dont vous souhaitez disposer sur papier. 5. Une fois toutes vos tches ralises, enregistrez la bibliothque de textes. 6. Aprs avoir dit tous les textes souhaits, quittez l'application.

Important Lorsque vous copiez, dans un autre programme, un bloc de signalisation faisant rfrence une bibliothque de textes, vous devez galement copier la bibliothque de textes correspondante ou crer une autre bibliothque de textes avec le mme nom ou encore modifier la rfrence dans le texte de message. Lorsque vous modifiez le nom d'une bibliothque de textes existante, toutes les variables additionnelles qui font rfrence cette bibliothque de textes ne seront plus valides dans les messages dj configurs !

16.6.5 Bibliothques de textes systme


Une bibliothque de textes systme est cre automatiquement, p. ex. lors de la gnration de blocs dans la "Signalisation d'erreurs systme". Vous ne pouvez pas crer vous-mme de bibliothques de textes systme, mais pouvez uniquement diter celles qui existent. Tous les messages disponibles de cette CPU peuvent faire rfrence une bibliothque de textes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

361

Configuration de messages 16.6 Edition et traduction de bibliothques de textes

16.6.6 Traduction de bibliothques de textes


Les bibliothques de textes systme et les bibliothques de textes utilisateur proposent une liste de textes pouvant tre incorpors dans des messages, actualiss dynamiquement durant l'excution du processus et affichs sur la PG ou sur d'autres visuels. Les textes contenus dans les bibliothques de textes systme sont fournis par STEP 7 ou par des logiciels optionnels de STEP 7. A une mme CPU peuvent tre affectes plusieurs bibliothques que vous traduirez dans les langues dont vous avez besoin. C'est vous qui choisissez les langues qui seront disponibles dans un projet (commande Outils > Langue de visuel). Vous pouvez aussi ajouter ou supprimer des langues ultrieurement. Lorsque vous souhaitez traduire une bibliothque de textes (commande de menu Outils > Gestion multilingue de textes > Exporter), un fichier d'exportation que vous pouvez diter p. ex. avec Microsoft EXCEL est cr. Lorsque vous ouvrez ce fichier, l'cran affiche un tableau dont les colonnes reprsentent respectivement une langue.

Important Un fichier d'exportation au format CSV ne doit pas tre ouvert par double clic. Ouvrez ce fichier en choisissant la commande de menu Fichier > Ouvrir de Microsoft EXCEL.

Nota Vous pouvez uniquement imprimer les textes utilisateur dans l'application dans laquelle vous les traduisez.

Exemple pour un fichier d'exportation


franais ne rpond pas dfaillant erreur de paramtrage allemand ausgefallen gestrt Parametrierfehler

362

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.6 Edition et traduction de bibliothques de textes

Procd
Vrifiez d'abord que vous avez bien choisi, avec la commande Outils > Langue de visuel de SIMATIC Manager, les langues dans lesquelles vous souhaitez traduire la bibliothque de textes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

363

Configuration de messages 16.7 Transfert des donnes de configuration dans le systme cible

16.7

Transfert des donnes de configuration dans le systme cible

Introduction
L'application Transfert des donnes vers l'OS vous permet de transfrer les donnes de configuration que vous avez cres pour le contrle-commande dans le stock de donnes de WinCC.

Conditions pralables
Pour pouvoir commencer le transfert, il faut que les conditions suivantes soient remplies : vous avez install le programme AS-OS-Engineering, vous avez cr les donnes de configuration pour la cration de messages.

Marche suivre

364

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.8 Affichage des messages de CPU et des messages de diagnostic personnaliss

16.8

Affichage des messages de CPU et des messages de diagnostic personnaliss


La fonction "Messages de CPU" (commande de menu Systme cible > Messages de CPU) permet de visualiser des messages asynchrones d'vnements de diagnostic, des messages de diagnostic personnaliss aussi bien que des messages de blocs ALARM_S (SFC 18 et SFC 108 pour la cration de messages sur bloc toujours acquitts ainsi que SFC 17 et SFC 107 pour la cration de messages sur bloc acquittables). En outre, vous pouvez dmarrer la configuration des messages et crer des messages de diagnostic personnaliss depuis l'application "Messages de CPU", grce la commande Edition > Message > Diagnostic personnalis.

Possibilits d'affichage
La fonction "Messages de CPU" vous permet de dcider si et comment des messages seront affichs pour des CPU slectionnes. "Mise en valeur dans la barre des tches" : aussitt qu'un message est reu et que la fentre ne se trouve pas au premier plan, "Messages de la CPU" est mis en valeur dans la barre des tches de Windows. "A l'arrire-plan" : la rception des messages de CPU se droule larrire-plan. La fentre reste l'arrire-plan la rception de nouveaux messages, mais peut tre amene au premier plan si besoin est. "Ignorer le message" : les nouveaux messages de CPU ne sont pas affichs et, contrairement aux deux cas prcdents, ne sont pas non plus archivs.

Dans la fentre "Messages de CPU", vous pouvez choisir entre les onglets "Archive" et "Alarme". Dans chacun de ces onglets, vous pouvez choisir si vous souhaitez afficher les messages avec ou sans texte d'information grce la commande de menu Affichage > Afficher le texte d'information.

Onglet "Archive"
Les messages arrivants y sont affichs et archivs selon leur ordre d'apparition. Vous pouvez dfinir la taille de l'archive (entre 40 et 3000 messages de CPU) en choisissant la commande de menu Outils > Paramtres dans la bote de dialogue "Paramtres - Messages de CPU". Lorsque la taille paramtre pour l'archive est dpasse, c'est le message le plus ancien qui est respectivement effac. Les messages acquittables (ALARM_SQ et ALARM_DQ) sont reprsents en caractres gras et peuvent tre acquitts par la commande de menu Edition > Acquitter le message de la CPU.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

365

Configuration de messages 16.8 Affichage des messages de CPU et des messages de diagnostic personnaliss

La figure ci-aprs en prsente quelques exemples.

366

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.8 Affichage des messages de CPU et des messages de diagnostic personnaliss

Onglet "Alarme"
Les messages de blocs ALARM_S encore prsents ou non acquitts sont galement affichs avec leur tat dans l'onglet "Alarme". En choisissant la commande de menu Affichage > Messages multilignes, vous pouvez choisir d'afficher les messages sur une ou plusieurs lignes. De plus, vous pouvez trier les colonnes comme vous le souhaitez.

Actualisation des messages de blocs ALARM_S


Lors de l'actualisation, tous les messages encore prsents ou non acquitts sont une nouvelle fois inscrits dans l'archive. Les messages sont actualiss : au redmarrage du module auquel se rapportent les messages (pas au dmarrage), lorsque vous activez le champ "A" pour les messages de blocs ALARM_S dans la liste des modules.

Marche suivre
Pour configurer des messages de CPU pour des modules slectionns :

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

367

Configuration de messages 16.8 Affichage des messages de CPU et des messages de diagnostic personnaliss

16.8.1 Configuration des messages de CPU


Pour configurer des messages de CPU pour des modules slectionns, procdez de la manire suivante : 1. Dans SIMATIC Manager, dmarrez l'application "Messages de CPU" partir d'un projet en ligne. Pour ce faire, slectionnez un programme S7 en ligne et appelez l'application pour la CPU choisie l'aide de la commande Systme cible > Messages de CPU. Rsultat : la fentre de l'application "Messages de CPU" apparat avec la liste des CPU dclares. 2. Au besoin, dclarez d'autres CPU en rptant l'tape 1 pour d'autres programmes ou interfaces. 3. Cochez les cases places devant les entres de la liste et dterminez quels messages doivent tre reus pour le module. A : active des messages de blocs ALARM_S (SFC 18 et SFC 108 pour la cration de messages sur bloc toujours acquitts ainsi que SFC 17 et SFC 107 pour la cration de messages sur bloc acquittables), par ex. messages de diagnostic du processus provenant de S7-PDIAG, S7-GRAPH ou "Signalisation d'erreurs systme". W : active les vnements de diagnostic. 4. Dfinissez la taille du fichier d'archives. Rsultat : ds que les messages en question se prsenteront, ils seront crits dans les archives de messages sous la forme que vous avez dfinie, et affichs.

Nota La liste des modules dclars dans la fentre de l'application "Messages de CPU" numre les CPU pour lesquelles vous avez appel la commande Systme cible > Messages de CPU. Les entres restent dans la liste jusqu' ce que vous les effaciez.

16.8.2 Affichage des messages de CPU enregistrs


Les messages de CPU sont toujours enregistrs dans le fichier darchives, moins que vous nayez activ la commande Affichage > Ignorer message. L'affichage montre toujours tous les messages archivs.

368

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

16.9

Configuration de la signalisation d'erreurs systme

16.9.1 Aperu gnral sur la 'signalisation d'erreurs systme'


En cas d'erreurs systme, STEP 7 vous permet de visualiser sur un ou plusieurs visuels (p. ex. WinCC, OP) des messages dcrivant l'erreur survenue et sa localisation.

16.9.2 Configuration de la signalisation d'erreurs systme


Introduction
Les composants matriels et les "esclaves DP norms" (esclaves dont les proprits sont dtermines par leur fichier GSD) peuvent dclencher des appels de blocs d'organisation l'apparition d'une erreur systme. Exemple : en cas de rupture de fil, un module capable de diagnostic peut dclencher une alarme de diagnostic (OB82). Les composants matriels fournissent des informations sur l'erreur systme survenue. Les informations d'vnement dclencheur, c'est--dire les donnes locales de l'OB associ (contenant entre autres l'enregistrement 0) donnent des renseignements d'ordre gnral sur le lieu de l'erreur (par ex. adresse logique du module) et sur son type (par ex. erreur de voie ou dfaillance de sauvegarde). De plus, des informations de diagnostic complmentaires (lecture de l'enregistrement 1 avec SFC 51 ou du tlgramme de diagnostic d'esclaves DP norms avec SFC 13) donnent plus de dtail sur l'erreur : par ex. voie 0 ou 1, rupture de fil ou dpassement de plage de mesure. La fonction "Signalisation d'erreurs systme" de STEP 7 offre un moyen convivial d'afficher sous forme de messages les informations de diagnostic fournies par le composant. Les blocs et les textes de message ncessaires cet effet sont gnrs par STEP 7. L'utilisateur n'a plus qu' charger les blocs gnrs dans la CPU et transfrer les textes dans les appareils IHM (interface homme-machine) connects. Pour reprsenter de manire graphique des vnements de diagnostic sur un appareil HMI, vous pouvez crer un DB PROFIBUS DP (par dfaut, le DB125) ou un DB PROFINET IO (par dfaut, le DB 126). Les lments "Map_ErrorNo" et "Map_HelpNo" sont dclars dans l'interface de chaque bloc de donnes. Durant le fonctionnement, ces lments reoivent une ID d'erreur ou une ID de texte d'aide. Lors de la gnration, les valeurs possibles ainsi que leur signification sont exportes par l'application 'Signalisation d'erreurs systme' dans des fichiers csv du rpertoire slectionn. Pour pouvoir afficher la signification d'une ID d'erreur ou une ID de texte d'aide, HMI doit importer ces textes. Vous avez la possibilit de crer un bloc de donnes pour la prise en charge du serveur Web de la CPU (par dfaut le DB 127), afin d'afficher l'tat du module dans le serveur Web de la CPU. Un tableau prcis des informations de diagnostic prises en charge selon les diffrents esclaves se trouve la rubrique Composants pris en charge et fonctionnalits.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

369

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

Marche suivre de principe

Les messages sont envoys par le chemin de signalisation standard ALARM_S/SQ la fonction "Messages de CPU" sur la PG ou aux appareils IHM connects. Vous pouvez dsactiver l'envoi des messages un appareil HMI.

Nota Les blocs gnrs par 'Signalisation d'erreurs systme" peuvent uniquement tre chargs dans la CPU s'ils se trouvent l'tat de fonctionnement ARRET.

370

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

16.9.3 Composants pris en charge et fonctionnalits


Les composants des stations S7-300, des stations S7-400, des appareils PROFINET IO, des esclaves DP et Win AC sont pris en charge par la "Signalisation d'erreurs systme" supportant les alarmes de diagnostic, de dbrochage/enfichage et le diagnostic spcifique chaque voie. Les composants suivants ne sont pas pris en charge par la "Signalisation d'erreurs systme" : configurations M7 les configurations PROFIBUS DP utilisant des coupleurs de matre DP (CP 342-5 DP) dans les stations S7-300, les appareils PROFINET IO utilisant un contrleur externe (CP 343-1 Advanced) dans les stations S7-300

En cas de redmarrage, il faut savoir que certains messages d'alarme peuvent manquer. En effet, la mmoire d'acquittement des messages n'est pas efface dans la CPU au redmarrage, mais la "Signalisation d'erreurs systme" remet les donnes internes zro. Les erreurs de module ou de voie survenant avant le dmarrage ou pendant une dfaillance ne sont pas toutes signales. Au maximum 8 erreurs de voies sont signales par module.

Nota Si vous utilisez un CP 443-5 et que celui-ci se trouve l'tat de fonctionnement ARRET, aucune dfaillance de systme matre n'est signale au dmarrage.

PROFIBUS DP
Les tableaux ci-aprs indiquent tous les blocs de diagnostic de diffrents esclaves PROFIBUS DP pris en charge par la "Signalisation d'erreurs systme".
Bloc de diagnostic Identificateur (emplacement d'enfichage erron) Voie (voie errone)1) Etat du module (erreur de module, module incorrect/ manquant) 0x00 type 0x82 Message en clair Appareil

En-tte 2) ET 200S

0x01 Message : "L'alarme de diagnostic a t dclenche." Message : "L'alarme de diagnostic a t dclenche." N'est pas valu "L'alarme de diagnostic a t dclenche." "L'alarme de diagnostic a t dclenche."

0x10 Message en clair

0x00 + 1 octet info diagnostic -

ET 200pro

Message en clair

Message en clair

ET 200M ET 200X ET 200X Desina

Message en clair Message en clair

Message en clair Message en clair

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

371

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

Bloc de diagnostic

Identificateur (emplacement d'enfichage erron)

Voie (voie errone)


1)

Etat du module (erreur de module, module incorrect/ manquant) -

Appareil

ET 200L ET 200B TOR ET 200B analogique ET 200C TOR ET 200C analogique ET 200U

N'est pas valu -" Message : "L'alarme de diagnostic a t dclenche." Message : "L'alarme de diagnostic a t dclenche." Message : "L'alarme de diagnostic a t dclenche." -

Message : "Prsence d'un diagnostic."

Message : "Prsence d'un diagnostic." Message : "Prsence d'un diagnostic."

ET 200iS

Message en clair

Message en clair

ET 200eco

Message en texte clair

Bloc de diagnostic En-tte


2)

Enregistrement 0/1 1) 0x00 type 0x01 Message en clair Message en clair Message en clair Message en clair Message en clair Message en clair Message en clair Message en clair 0x00

Autres caractristiques autre type N'est pas valu -

ET 200S ET 200pro ET 200M ET 200X ET 200X Desina ET 200L ET 200B TOR ET 200B analogique ET 200C TOR ET 200C analogique ET 200iS ET 200eco

1)

DS0 :

DS1 :

Diagnostic standard, p. ex. module dfectueux, tension d'alimentation externe ou connecteur frontal manquants. Taille 4 octets contenus dans les donnes locales de l'OB 82. erreur de voie, dfinie diffremment pour chaque type de voie, lisible dans le programme utilisateur via la SFC 51. Les textes sont issus du diagnostic matriel S7. identification de diffrents lments de diagnostic dans le tlgramme de diagnostic.

2)

En-tte :

372

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

Nota
Pour tous les esclaves PROFIBUS DP, les erreurs de diagnostic (dfaillance/retour) s'affichent avec un message en clair. Pour tous les esclaves PROFIBUS DP, le diagnostic spcifique au fabricant est pris en charge avec les restrictions suivantes :

seuls des esclaves V1 sont pris en charge. Il s'agit d'esclaves, dont le fichier GSD contient l'entre "DPV1_Slave=1", le mode d'alarme DP doit tre paramtr sur "DPV0" pour cet esclave.

Erreurs ne survenant pas durant le fonctionnement (CPU l'ARRET, esclave DP dfaillant) : les erreurs de station sont prises en charge les erreurs de module sont prises en charge les erreurs de voie sont prises en charge et les informations tendues d'erreurs de voie sont values

Dans STEP 7, le tlgramme de diagnostic s'affiche sous "Reprsentation hexadcimale", dans la page d'onglet "Diagnostic de l'esclave DP" de la fentre en ligne "HW Config" (diagnostic du matriel) lorsque vous appelez l'tat du module. Rpteur de diagnostic : les messages du rpteur de diagnostic s'affichent en clair. Les textes sont extraits du fichier GSD.

PROFIBUS DP utilisant un IE/PB-Link


Le rseau matre PROFIBUS-DP d'un IE/PB-Link n'est pas diagnosticable. L'tat d'un rseau matre PROFIBUS-DP en aval d'un IE/PB Link n'est pas actualis dans le bloc de donnes PROFIBUS (DB 125). Le diagnostic est ralis en partie via le DB PROFINET IO. Dans ce cas, seul l'tat des esclaves (OK, dfaut, dfaillance) est disponible dans le DB PROFINET IO, et pas les erreurs de module et de voie.

PROFIBUS DP/PA utilisant un DP/PA-Link


Les tats de station suivants sont dtects : Station OK (la station complte fonctionne sans erreur) Station perturbe (bien qu'une erreur ait t dclenche dans la station, celle-ci continue fonctionner) Station dfaillante (la station complte est dfaillante)

Nota
Vous ne pouvez pas configurer le DP/PA-Link via un fichier GSD. Le diagnostic d'un DP/PA-Link n'est pas pris en charge dans une CPU de la famille 300.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

373

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

PROFINET IO
Vous trouverez ci-aprs le diagnostic des diffrentes appareils PROFINET IO qui sont pris en charge par la 'Signalisation d'erreurs systme' : Erreurs survenant pendant le fonctionnement (CPU en RUN) : les erreurs d'appareil (dfaillance, retour) sont prises en charge les erreurs de module et les erreurs de cartouche (module/cartouche retir, module/cartouche erron, module/cartouche compatible) sont prises en charge les erreurs de voie sont prises en charge et les informations tendues d'erreurs de voie sont values

Erreurs ne survenant pas en fonctionnement (CPU en STOP, appareil IO dfaillant) : Pour les CPU partir de la version de firmware 5.0 ou dotes d'une interface PROFINET IO intgre, toutes les erreurs sont signales (voir CPU en RUN). les erreurs d'appareil dpendant d'une interface PROFINET IO intgre sont prises en charge. Pour les autres, les erreurs d'appareil sont signales.

Toutes les erreurs s'affichent en clair. Les enregistrements de diagnostic (conformes la norme PROFINET) peuvent tre lus dans le programme utilisateur au moyen des SFB 54 et SFB 52.

Nota
ET 200S : les esclaves avec adresses comprimes sont pris en charge. Pour les appareils PROFINET IO, le diagnostic spcifique au fabricant est pris en charge.

PROFINET IO via IO-Link


Les erreurs de voie sont prises en charge et les informations d'erreurs de voie tendues sont values.

AS-Interface
Pour les esclaves AS-Interface, un message est mis dans le cas o la configuration relle est diffrente de la configuration prvue. Les matres AS-i suivants sont pris en charge : CP 342-2 CP 343-2 CP 343-2 P DP/AS-i Link 20E DP/AS-i LINK Advanced D (uniquement si configur sans fichier GSD) DP/AS-i F-Link IE/AS-i Link

374

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

Shared Devices
SFM value l'information indiquant si un (sous-)module a t configur comme Shared Device, c'est-dire comme priphrique partag. Comme SFM se concentre sur une CPU, seuls sont pris en compte pour le diagnostic les (sous-)modules qui ont activ l'accs total pour cette CPU. Les (sous-) modules configurs comme "non affects" ne sont pas considrs.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

375

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

16.9.4 Paramtrage de la signalisation d'erreurs systme


Il y a plusieurs faons d'appeler la bote de dialogue des paramtres : Slectionnez dans HW Config la CPU pour laquelle vous voulez configurer la signalisation d'erreurs systme. Choisissez ensuite la commande Outils > Signalisation d'erreurs systme. Si vous avez dj gnr des blocs pour la signalisation d'erreurs systme, il vous suffira de cliquer deux fois sur un bloc gnr (FB, DB). Dans la bote de dialogue des proprits de la station, activez l'option qui en dtermine l'appel automatique lorsque vous enregistrez et compilez la configuration.

Pour obtenir cette option d'appel automatique, procdez comme suit : 1. Slectionnez la station concerne dans SIMATIC Manager. 2. Choisissez la commande Edition > Proprits de l'objet. 3. Slectionnez l'onglet "Paramtres".

Nota Vous pouvez galement ouvrir la page d'onglet "Paramtres" de la bote de dialogue des proprits dans HW Config en choisissant la commande Station > Proprits.

Dans la bote de dialogue des paramtres, vous indiquez entre autres : quel FB et quel DB d'instance associ il faut gnrer ; s'il faut gnrer des donnes de rfrence ; s'il faut toujours afficher les avertissements durant la gnration de la signalisation d'erreurs systme ; si la bote de dialogue doit s'afficher lorsque la signalisation d'erreurs systme est appele automatiquement aprs enregistrement et compilation de la configuration (voir ci-dessus) ; cration d'OB d'erreur : si les OB d'erreur n'existant pas encore dans le programme S7 doivent tre crs ou pas et dans quels OB la "Signalisation d'erreurs systme" doit tre appele ; comportement de la CPU en cas d'erreur : vous pouvez paramtrer quelles classes d'erreur doivent entraner le passage l'arrt de la CPU aprs leur apparition ; l'aspect des messages (composition et ordre des parties de texte possibles). si les messages doivent tre acquittables ; quels paramtres doivent tre contenus dans l'interface du bloc utilisateur ; quels DB d'tat sont crs pour PROFIBUS DP, PROFINET IO ou pour l'tat du module dans le serveur Web de la CPU.

Vous trouverez des informations plus dtailles dans l'aide de la bote de dialogue appele.

376

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

16.9.5 Gnration de blocs pour la signalisation d'erreurs systme


Aprs avoir effectu le paramtrage pour la signalisation d'erreurs systme, vous pouvez crer les blocs ncessaires (FB avec DB d'instance affect, un ou plusieurs DB globaux, un FC et, en fonction du paramtrage, galement les OB n'existant pas encore). Cliquez cet effet sur le bouton "Gnrer" dans la bote de dialogue "Signalisation d'erreurs systme". Les blocs suivants sont crs : un FB de diagnostic (par dfaut FB49), un DB d'instance pour le FB de diagnostic (par dfaut DB49), un DB global (par dfaut : DB global 50), un FC (par dfaut : FC 49), les OB d'erreur (si vous avez activ cette option dans l'onglet "Configuration des OB"), un bloc utilisateur optionnel qui est appel par le FB de diagnostic,

Les FB et DB d'instance sont appels par des OB, les FC et DB globaux par le FB SFM.

Nota Si vous souhaitez rorganiser votre projet avec la commande de menu Fichier > Enregistrer sous... et l'option "Avec rorganisation", sachez qu'une nouvelle gnration des blocs de diagnostic doit tre ralise dans 'Signalisation d'erreurs systme'. La rorganisation d'un projet avec des blocs de diagnostic tant trs lente, il est recommand de supprimer au pralable les blocs de diagnostic, puis de les gnrer de nouveau.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

377

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

16.9.6 OB d'erreur gnrs


En fonction de la CPU, vous pouvez gnrer les OB d'erreur suivants avec la fonction "Signalisation d'erreurs systme" : OB 70 (erreur de redondance de la priphrie) avec appel du FB de diagnostic gnr. Cet OB existe uniquement pour les CPU H. OB 72 (erreur de redondance de la CPU) avec appel du FB de diagnostic gnr. Cet OB existe uniquement pour les CPU H. OB 73 (erreur de redondance de communication) avec appel du FB de diagnostic gnr. Cet OB existe uniquement pour certaines CPU H. OB 80 (erreur de temps) Cet OB est gnr sans contenu afin que la CPU ne passe pas en STOP en cas d'erreur de communication. Les erreurs ne sont pas values, aucun message n'est gnr. OB 81 (erreur d'alimentation) avec appel du FB de diagnostic gnr. OB 82 (alarme de diagnostic) avec appel du FB de diagnostic gnr. OB 83 (alarme de dbrochage/enfichage) avec appel du FB de diagnostic gnr. OB 84 (erreur matrielle CPU) Cet OB est gnr sans contenu afin que la CPU ne passe pas en STOP en cas d'erreur de communication (par ex. en cas de problme avec la rsistance terminale MPI quand le cble MPI est dbroch et enfich). Les erreurs ne sont pas values, aucun message n'est gnr. OB 85 (erreur d'excution du programme) Si la signalisation d'erreurs systme' gnre cet OB lors de la gnration des blocs de diagnostic, des rseaux supplmentaires sont insrs, qui ralisent le programme suivant : L'arrt de la CPU est empch en cas d'erreur dans la mise jour de la mmoire image (par ex. dbrochage du module), afin que le FB de diagnostic puisse tre excut dans l'OB 83. Une ventuelle option "Arrt de la CPU aprs la signalisation d'une erreur systme" entre en vigueur dans l'OB 83. Pour tous les autres vnements d'erreur d'OB 85, la CPU passe en STOP.

Au cas o l'OB 85 existe dj, il n'est pas modifi par la 'signalisation d'erreurs systme'. OB 86 (dfaillance d'un profil support/chssis, d'un rseau matre DP ou d'un appareil de priphrie dcentralise) avec appel du FB de diagnostic gnr.

Lorsque les OB d'erreur existent dj...


Les OB d'erreur existants ne sont pas crass. Le cas chant, l'appel du FB de diagnostic est rajout.

Lorsque la configuration comporte des appareils DP...


Pour l'valuation des erreurs dans la priphrie dcentralise, le FB gnr appelle automatiquement la SFC13 (lecture des donnes de diagnostic des esclaves DP). Pour assurer cette fonction, il faut que le FB gnr soit appel soit seulement dans l'OB1, soit dans un OB d'alarme cyclique rythme court et dans les OB de mise en route.

378

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

ATTENTION
Notez bien que : L'OB85 gnr par "Signalisation d'erreurs systme" ne provoque plus d'arrt de la CPU pour l'vnement "Erreur lors de l'actualisation de la mmoire image". L'OB 85 est appel en plus par la CPU pour les erreurs suivantes : "OB non charg", "Erreur l'appel d'un bloc non charg ou l'accs un tel bloc".

Dans ces cas-l, un arrt de la CPU avec l'OB85 gnr par "Signalisation d'erreurs systme" a toujours lieu, comme avant l'utilisation de la signalisation d'erreurs systme. L'option "CPU passe l'arrt aprs excution du FB de diagnostic" n'a pas d'effet pour OB84 et OB85, car le FB de "Signalisation d'erreurs systme" n'est pas appel dans ces OB. Dans le cas de l'OB85, cette option est prise en compte indirectement par l'appel du FB dans l'OB83.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

379

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

16.9.7 Blocs gnrs


Le bloc de diagnostic gnr (FB avec DB d'instance affect et un ou plusieurs DB globaux et un FC) par la 'Signalisation d'erreurs systme' value les donnes locales de l'OB d'erreur et lit d'ventuelles informations de diagnostic supplmentaires du composant matriel qui a provoqu l'erreur. Il possde les attributs suivants : langage de cration SFM (Signalisation d'erreurs systme) (s'applique galement aux blocs prcits), protection Know-How (s'applique galement au blocs prcits), retarde les alarmes apparaissantes durant l'excution, appelle par double clic la bote de dialogue servant paramtrer la fonction "Signalisation d'erreurs systme".

Bloc utilisateur
Le FB de diagnostic ayant la protection Know-how, vous ne pouvez pas l'diter. Il met cependant disposition une interface pour le programme utilisateur, de sorte que vous avez accs l'tat d'erreur, par exemple, ou au numro de message. Le bloc qui sert l'valuation dans le programme utilisateur (paramtrable dans la page d'onglet "Bloc utilisateur" de la bote de dialogue) est appel dans le FB gnr avec les paramtres slectionns. Vous pouvez choisir les paramtres suivants :
Nom EV_C EV_ID IO_Flag logAdr TextlistId ErrorNo Channel_Error ChannelNo ErrClass HErrClass SFC_RET_VAL ExtendedErrorNo ExtendedTextlistId ExtendedAddValue Type de donnes BOOL DWORD BYTE WORD WORD WORD BOOL WORD WORD WORD INT WORD WORD DWORD Commentaire //Message apparaissant (TRUE) ou disparaissant (FALSE) //Numro de message gnr //Module d'entres : B#16#54, Module de sorties : B#16#55 //Adresse logique //ID de la bibliothque de texte (bibliothque de textes par dfaut = 1) //Numro d'erreur gnr //Erreur de voie (TRUE) //Numro de voie //Classe d'erreur //Classe d'erreur des systmes H //Valeur en retour pour SFC 17/18 ou SFC 107/108 //Numro d'erreur gnr d'une erreur de voie tendue //ID de la bibliothque de texte d'une erreur de voie tendue //Valeur supplmentaire lors d'un diagnostic de voie tendu (4 octets)

Si le FB utilisateur n'existe pas encore, il est cr par SFM avec les paramtres slectionns.

Les textes d'erreur crs pour les erreurs standard correspondent l'affectation suivante :

380

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

Numro d'erreur (dcimal) de 1 162 193 224 289 513 849 1537 1729 1738 1743 307 540 900 1540 1736 1742 1744 86 163 194

OB d'erreur concern

Code d'erreur dans l'OB de B#16#56 B#16#A3 B#16#C2 B#16#33 B#16#84 B#16#C8 B#16#CE

OB 72 OB 70 OB 72 OB 73 OB 81 OB 82 OB 83 OB 86 OB 86 OB 86 OB 86

B#16#1 B#16#A2 B#16#C1 B#16#E0 B#16#21 B#16#51 B#16#C1 B#16#CA

Les numros d'erreur suprieurs 12288 correspondent des erreurs de voie. Lorsque vous affichez les numros d'erreur en reprsentation hexadcimale, vous pouvez calculer le type de voie et reconnatre le bit d'erreur. La description prcise est donnes dans l'aide respective du module ou dans l'aide de la voie. Exemple : 12288 = W#16#3000 -> octet de poids fort 0x30 - 0x10 = type de voie 0x20 (interface CP) ; octet de poids faible 0x00, c'est--dire bit d'erreur 0 32774 = W#16#8006 -> octet de poids fort 0x80 - 0x10 = type de voie 0x70 (entre TOR) ; octet de poids faible 0x06, c'est--dire bit d'erreur 6

Assistance au diagnostic
Pour reprsenter de manire graphique des vnements de diagnostic sur un appareil HMI, vous pouvez crer un DB PROFIBUS DP (par dfaut, le DB 125) ou un DB PROFINET IO (par dfaut, le DB 126). Pour afficher l'tat du module dans le serveur Web de la CPU, vous avez la possibilit des crer un bloc de donnes pour la prise en charge du serveur Web de la CPU (par dfaut, le DB 127).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

381

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

16.9.8 Affectation des erreurs systme aux classes d'erreur


Le tableau ci-dessous dcrit l'affectation des erreurs systme aux classes d'erreur :
Matriel Erreur Classe d'erreur

Central Chssis Module d'alimentation/CPU CPU H Dfaillance Erreur d'alimentation Perte de redondance Retour de redondance Module Erreur de chssis -* -* -*

Dbrochage/enfichage du module ou type de Erreur de module module incorrect Enregistrement 0 Erreur de voie Erreur de module Erreur de voie Erreur de chssis Erreur de chssis Erreur de chssis

Matre DP IO-Controller Matre AS-i PROFIBUS-DP Station DP

Dfaillance Dfaillance Dfaillance

Dfaillance Diagnostic spcifique au fabricant

Erreur de chssis -* -*

Tte Module

Diagnostic spcifique au fabricant

Dbrochage/enfichage du module ou type de Erreur de module module incorrect Enregistrement 0 Erreur de voie Erreur de module Erreur de voie -* Erreur de module Erreur de chssis -*

Tte rp. diag. Tte ET 200 B, C, U, Eco Station H Tte station H

Erreur spcifique du rpteur de diagnostic Dfaut Dfaillance Perte de redondance

382

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

Matriel

Erreur

Classe d'erreur

PROFINET IO IO-Device Module de tte IO-Device Dfaillance Erreur spcifique au fabricant Erreur de voie Maintenance Enregistrement 0 Erreur de voie pour le module de tte complet (sous-emplacement = 0) Cartouche de tte IO-Device (PDEV) Erreur de voie Maintenance Enregistrement 0 Erreur de voie pour la cartouche de tte complte (sous-emplacement = 0) Module Erreur de chssis -* Erreur de voie -* Erreur de module Erreur de module Erreur de voie -* Erreur de module Erreur de cartouche

Dbrochage/enfichage du module ou type de Erreur de module module incorrect Enregistrement 0 Erreur de voie (voie 0...7FFF) Erreur de module Erreur de voie

Erreur de voie pour le module complet (sous- Erreur de module emplacement = 0) Maintenance (voie 0...7FFF) Maintenance (module complet) Cartouche -* -*

Dbrochage/enfichage du module ou type de Erreur de cartouche module incorrect Enregistrement 0 Erreur de voie (voie 0...7FFF) Erreur de voie pour la cartouche complte (sous-emplacement >= 1) Maintenance (voie 0...7FFF) Maintenance (cartouche complte) Erreur de module Erreur de voie Erreur de cartouche -* -* Erreur de chssis Erreur de chssis

IE/PB-Link Station PROFIBUS aprs un Link

Dfaillance Dfaillance

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

383

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

Matriel

Erreur

Classe d'erreur

Esclave AS-i Esclave AS-i Erreur de voie PROFIBUS/central Esclave AS-i Module PROFINET Dfaillance -*

Dfaillance

-*

* La CPU ne va pas l'tat STOP.

Nota En mode "Dmarrage", la CPU ne va pas en STOP.

384

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

16.9.9 Cration de textes de message dans une autre langue dans la 'Signalisation d'erreurs systme'
Vous pouvez afficher les messages configurs dans la 'Signalisation d'erreurs systme' dans les langues dans lesquelles vous avez install STEP 7. Procdez de la manire suivante : 1. Dans SIMATIC Manager, choisissez la commande de menu Outils > Langue de visuel..., puis dans la bote de dialogue qui s'ouvre, ajoutez la langue souhaite votre projet. 2. Confirmez vos paramtres en cliquant sur OK. 3. Dans HW Config, choisissez la commande de menu Outils > Signalisation des erreurs systme..., puis dans la bote de dialogue qui s'ouvre, cliquez sur le bouton "Gnrer". Rsultat : les textes de messages sont crs dans toutes les langues dans lesquelles vous avez install STEP 7, mais sont cependant uniquement affichs dans la langue que vous avez dfinie en cliquant sur le bouton "Par dfaut" dans la bote de dialogue "Ajouter, supprimer une langue, choisir une langue par dfaut".

Exemple
Vous avez install STEP 7 en allemand, anglais et franais et ces langues sont dfinies dans votre projet. Gnrez prsent les textes de message comme dcrit ci-dessus. Pour afficher les textes de message dans la langue respective, dfinissez la langue souhaite comme langue par dfaut dans la bote de dialogue "Ajouter, supprimer une langue, choisir une langue par dfaut".

Nota
Lorsque vous utilisez les messages et textes d'aide dans une autre langue, vrifiez la langue des visuels dans la bote de dialogue "Ajouter, supprimer une langue, choisir une langue par dfaut" et changez la si ncessaire. Lorsque vous modifiez les paramtres de la langue durant l'excution de 'Signalisation d'erreurs systme", le bloc doit tre gnr de nouveau afin que les messages s'affichent dans la langue souhaite.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

385

Configuration de messages 16.9 Configuration de la signalisation d'erreurs systme

Traduction de messages et de textes d'erreur dans une langue non fournie par STEP 7
Les textes crits dans une langue non fournie par STEP 7 s'affichent dans la langue dfinie comme langue par dfaut. Vous pouvez les exporter, les traduire dans la langue souhaite, puis les rimporter dans STEP 7. Ajoutez cet effet la langue souhaite (Outils > Langue de visuel) et dfinissez-la comme langue par dfaut. Avant d'exporter et de traduire les textes avec la commande "Gestion multilingue des textes", vous devez de nouveau gnrer la 'Signalisation d'erreurs systme'. Marche suivre recommande : 1. Crez un projet de rfrence contenant tous les composants que vous utilisez. 2. Choisissez la commande de menu Outils > Langue de visuel... dans SIMATIC Manager, puis, dans la bote de dialogue qui s'ouvre, ajoutez la langue souhaite votre projet et dfinissez-la comme langue par dfaut. 3. Confirmez vos paramtrages par OK. 4. La configuration tant termine, choisissez la commande de menu Outils > Signalisation des erreurs systme... dans HW Config, puis cliquez sur le bouton "Gnrer" dans la bote de dialogue qui s'ouvre. 5. Choisissez la commande de menu Outils > Gestion multilingue des textes > Exporter dans SIMATIC Manager, puis, dans la bote de dialogue qui s'ouvre, slectionnez les textes que vous souhaitez exporter. Slectionnez comme langue source une langue installe dans le projet qui est galement une langue livre avec STEP 7 et comme langue cible la langue que vous souhaitez. Rsultat : plusieurs fichiers de texte sont gnrs dans le rpertoire slectionn. 6. Traduisez les textes des fichiers "S7SystemTextLibrary.xls" et "S7UserTexts.xls". 7. Choisissez la commande de menu Outils > Gestion multilingue des textes > Importer dans SIMATIC Manager. Rsultat : les textes que vous venez de traduire s'affichent dans la langue paramtre.

Nota Si ultrieurement vous modifiez votre configuration dans HW Config et/ou gnrez de nouveau la "Signalisation d'erreurs systme", les messages et textes d'erreur s'affichent de nouveau dans l'une des langues fournies par STEP 7. Vous devez traduire ces textes comme dcrit ci-dessus. Veuillez alors slectionner lors de l'exportation l'option "Elargir la cible de l'exportation". Les nouveaux texts sont insrs la fin du fichier de texte correspondant (sous "//$_Delta-Export").

386

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

17
17.1

Contrle-commande de variables
Configuration de variables pour le contrle-commande

Gnralits
Avec WinCC, STEP 7 vous offre un moyen ais d'effectuer le contrle-commande des grandeurs variables de votre processus ou automate programmable. L'avantage par rapport aux anciennes mthodes rside dans le fait que vous n'avez plus raliser la configuration des donnes individuellement pour chaque station de contrle-commande (OS), mais une seule fois dans STEP 7. Vous pouvez transmettre les donnes configures dans STEP 7 la base de donnes de WinCC en utilisant l'application "Transfert des donnes vers l'OS" (qui fait partie du progiciel "Process Control System PCS7"), la cohrence et la compatibilit des donnes avec le visuel tant vrifie. WinCC utilise les donnes sous forme de blocs d'image et d'objets graphiques. Vous pouvez configurer ou modifier les attributs de contrle-commande suivants dans STEP 7 : paramtres d'entre, de sortie et d'entre/sortie de blocs fonctionnels, mmentos et signaux d'entre/sortie, paramtres de blocs CFC dans des diagrammes CFC.

Marche suivre
La marche suivre pour configurer des variables contrler et commander dpend du langage de programmation ou de configuration choisis ainsi que du type des variables contrler et commander. Mais les tapes suivantes sont toujours ncessaires : 1. Affectez des attributs systme pour le contrle-commande aux paramtres d'un bloc fonctionnel ou aux mnmoniques dans une table des mnmoniques. Cette tape s'avre inutile dans CFC, car vous prenez des blocs dj configurs dans une bibliothque. 2. Dans une fentre d'dition, affectez aux variables contrler et commander les attributs de contrle-commande requis (S7_m_c). La bote de dialogue "Contrle-commande" (commande Edition > Proprits spcifiques de l'objet > Contrle-commande) vous permet de modifier des attributs WinCC tels que valeurs limite, valeurs de remplacement, caractristiques du journal, etc. 3. Avec "Transfert des donnes vers l'OS", transfrez dans votre visuel (WinCC) les donnes de configuration cres dans STEP 7.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

387

Contrle-commande de variables 17.1 Configuration de variables pour le contrle-commande

Convention pour l'attribution de noms


Afin de pouvoir tre sauvegardes et transfres, les donnes de configuration pour WinCC sont enregistres sous un nom univoque attribu automatiquement par STEP 7. Ce nom est form partir des noms des variables contrler et commander, des noms des diagrammes CFC et de ceux des programmes S7 qui doivent de ce fait adopter des conventions particulires : Les noms des programmes S7 doivent tre univoques au sein d'un projet S7 (diverses stations ne doivent pas contenir des programmes S7 de mme nom). Les noms des variables, programmes S7 et diagrammes CFC ne doivent comporter ni caractre de soulignement, ni caractre d'espacement ou l'un des caractres spciaux suivant : [ ' ] [. ] [ % ] [ - ] [ / ] [ * ] [ + ].

388

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Contrle-commande de variables 17.2 Configuration d'attributs de contrlecommande avec LIST, CONT, LOG

17.2

Configuration d'attributs de contrle-commande avec LIST, CONT, LOG

Introduction
Le procd que nous allons dcrire ci-aprs va vous permettre de prparer des paramtres de blocs fonctionnels au contrle-commande et d'affecter les attributs de contrle-commande requis aux DB d'instance ou blocs de donnes globaux correspondants dans votre programme utilisateur.

Condition pralable
Vous avez cr un projet STEP 7, un programme S7 ainsi qu'un bloc fonctionnel (FB).

Marche suivre

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

389

Contrle-commande de variables 17.3 Configuration des attributs de contrlecommande au moyen de la table des mnmoniques

17.3

Configuration des attributs de contrle-commande au moyen de la table des mnmoniques

Introduction
Quel que soit le langage de programmation utilis, le procd que nous allons dcrire ci-aprs vous permet de configurer les variables suivantes : mmentos signaux d'E/S

Conditions pralables
Avant que vous ne commenciez, les conditions suivantes doivent tre satisfaites : vous avez cr un projet dans SIMATIC Manager, ce projet contient un programme S7 avec une table des mnmoniques, la table des mnmoniques est ouverte.

Marche suivre

390

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Contrle-commande de variables 17.4 Modification des attributs de contrle-commande avec CFC

17.4

Modification des attributs de contrle-commande avec CFC

Introduction
CFC vous permet de crer votre programme utilisateur en slectionnant des blocs dj prpars pour le contrle-commande dans une bibliothque, puis en les disposant et les reliant dans un diagramme.

Condition pralable
Vous avez insr un programme S7 dans un projet STEP 7 et cr un diagramme CFC dans lesquel vous avez dispos des blocs.

Marche suivre

Nota Si vous utilisez des blocs que vous avez crs vous-mme et auxquels vous avez affect l'attribut systme S7_m_c dans leur langage de cration, vous pouvez les prparer au contrle-commande en activant la case d'option "Contrle-commande" dans la bote de dialogue "Contrle-commande" (commande Edition > Proprits spcifiques de l'objet > Contrle-commande).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

391

Contrle-commande de variables 17.5 Transfert des donnes de configuration dans le systme cible de contrle-commande

17.5

Transfert des donnes de configuration dans le systme cible de contrle-commande

Introduction
L'application "Transfert des donnes vers l'OS" vous permet de transfrer les donnes de configuration cres pour le contrle-commande dans la base de donnes de WinCC.

Condition pralable
Pour pouvoir commencer le transfert, il faut que les conditions suivantes soient satisfaites : vous avez install le programme AS-OS-Engineering, vous avez cr les donnes de configuration pour le contrle-commande.

Marche suivre
Pour transfrer les donnes de configuration pour le contrle-commande dans la base de donnes de WinCC, procdez de la manire suivante :

392

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

18

Etablissement d'une liaison en ligne et choix de la CPU


Etablissement de liaisons en ligne
Une liaison en ligne est requise entre l'outil de dveloppement et le systme cible pour le chargement de programmes utilisateurs S7 et de blocs, le chargement de blocs depuis le systme cible S7 dans l'outil de dveloppement ainsi que pour les tches suivantes : Test de programmes utilisateur Affichage et modification de l'tat de fonctionnement de la CPU Affichage et rglage de l'heure et de la date de la CPU Affichage de l'tat du module Comparaison en ligne/hors ligne de blocs Diagnostic du matriel

18.1

Pour qu'une liaison en ligne puisse tre tablie, l'outil de dveloppement et le systme cible doivent tre relis entre-eux par l'intermdiaire d'une interface approprie (par exemple une interface multipoint (MPI)). Vous pouvez ensuite accder au systme cible depuis la fentre en ligne du projet ou depuis la fentre "Partenaires accessibles".

18.1.1 Etablissement d'une liaison en ligne depuis la fentre "Partenaires accessibles"


Ce mode d'accs permet une maintenance rapide. Vous pouvez accder tous les modules programmables du rseau. Choisissez cette mthode en cas d'absence de donnes de projet relatives au systme cible sur votre PG. Vous ouvrez la fentre "Partenaires accessibles" en choisissant la commande Systme cible > Afficher les partenaires accessibles. L'objet "Partenaires accessibles" affiche tous les participants accessibles dans le rseau avec leur adresse. Mme les partenaires que vous ne pouvez pas programmer avec STEP 7 sont affichs (par exemple les consoles de programmation ou les pupitres oprateur). Les informations supplmentaires suivantes peuvent galement tre affiches entre parenthses : (direcrte) : ce participant est directement connect l'outil de dveloppement (PG ou PC). (passif) : la programmation et la visualisation/forage via PROFIBUS DP ne sont pas possibles pour ce participant. (attend) : il n'est pas possible de communiquer avec ce participant, car sa configuration n'est pas compatible avec les autres paramtrages du rseau.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

393

Etablissement d'une liaison en ligne et choix de la CPU 18.1 Etablissement de liaisons en ligne

Dtermination du participant directement connect


L'information supplmentaire "directe" n'est pas disponible pour les participants PROFINET. Afin de pouvoir identifier malgr tout le participant directement connect, choisissez la commande de menu Systme cible > Diagnostic/Paramtres > Test du clignotement. Dans la bote de dialogue qui s'ouvre, vous pouvez paramtrer la dure de clignotement et lancer le test du clignotement. Le participant directement connect se reconnat sa LED FORCE qui clignote. Le test du clignotement ne peut pas tre ralis lorsque la fonction de FORCAGE PERMANENT est active.

18.1.2 Etablissement d'une liaison en ligne depuis la fentre en ligne du projet


Choisissez cette mthode si vous avez configur le systme cible dans un projet sur votre PG/PC. Vous ouvrez la fentre en ligne en choisissant la commande Affichage > En ligne dans SIMATIC Manager. Elle affiche les donnes de projet sur le systme cible (contrairement la fentre hors ligne qui affiche les donnes de projet sur votre PG/PC). La fentre en ligne affiche les donnes qui se trouvent sur le systme cible, aussi bien pour le programme S7, que pour le programme M7. Vous utilisez la vue du projet en ligne pour accder au systme cible. Ainsi, vous pouvez appeler certaines commandes du menu "Systme cible" de SIMATIC Manager dans la fentre en ligne, mais pas dans la fentre hors ligne. On distingue : Accs lorsque le matriel est configur Dans ce mode d'accs, vous ne pouvez accder qu'aux modules configurs hors ligne. Les modules en ligne auxquels vous pouvez accder sont dtermins par l'adresse MPI dfinie lors de la configuration des modules programmables. Accs lorsque le matriel n'est pas configur Dans ce mode d'accs, la prsence d'un programme S7 ou d'un programme M7 crs indpendamment du matriel (c'est--dire se trouvant directement sous le projet) est imprative. Vous dterminez les modules en ligne auxquels vous pouvez accder en indiquant leur adresse MPI respective dans les proprits de l'objet du programme S7/M7.

L'accs depuis la fentre en ligne combine les donnes sur le systme cible avec les donnes correspondantes sur l'outil de dveloppement. Si vous ouvrez par exemple un bloc S7 dans un projet en ligne, l'affichage se composera : du code du bloc dans la CPU du systme cible S7 et des commentaires et des mnmoniques qui font partie des donnes dans l'outil de dveloppement (s'ils existent hors ligne). Si vous ouvrez des blocs directement dans la CPU connecte, hors structure de projet, ils seront affichs tels qu'ils se trouvent dans la CPU, c'est--dire sans mnmoniques ni commentaires.

394

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Etablissement d'une liaison en ligne et choix de la CPU 18.1 Etablissement de liaisons en ligne

18.1.3 Accs en ligne aux systmes cibles dans le multiprojet


Accs plusieurs projets avec une PG ou un PC affects
La fonction "Affectation PG/PC" est galement disponible dans le multiprojet pour les objets "PG/PC" et "Station SIMATIC PC". Vous pouvez slectionner le module cible pour l'accs en ligne dans un projet quelconque du multiprojet. La procdure est identique celle n'utilisant qu'un seul projet.

Conditions
Pour les PG/PC ou stations PC devant accder en ligne des systmes cibles, l'affectation doit se trouver dans un projet quelconque au sein du multiprojet. Nota : la PG, le PC ou la station PC affects sont mis en valeur en jaune lorsque le projet correspondant est ouvert. Une affectation PG/PC est uniquement visible lorsque l'affectation de la PG ouvrant le projet est correcte. Les sous-rseaux qui s'tendent sur plusieurs projets sont regroups. Tous les projets du multiprojet sont compils et l'information de configuration est charge dans les stations correspondantes, de manire ce que toutes les informations de routage, p. ex., soient disponibles pour tous les modules participant l'tablissement de la liaison entre votre PG/PC et le module cible. Le module cible est accessible via le rseau.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

395

Etablissement d'une liaison en ligne et choix de la CPU 18.1 Etablissement de liaisons en ligne

Eventuels problmes des projets rpartis


Lorsque les attributions de projets changent et qu'un projet est ouvert sur une PG ou un PC sur lequel il n'a pas t cr, l'affectation PG/PC n'est pas visible. L'objet PG/PC configur possde bien la proprit "affect" mais pas avec la PG ou le PC "corrects". Dans ce cas, vous devez d'abord annuler l'affectation existante, puis raliser une nouvelle affectation de l'objet PG/PC. L'accs en ligne aux modules accessibles dans le multiprojet est alors possible sans restriction.

Conseil en cas de projets partags


Lorsque plusieurs collaborateurs accdent avec des PG en ligne des systmes cibles, il est recommand de configurer, dans le multiprojet, un objet "PG/PC" ou "Station SIMATIC PC" pour chacune de ces PG, puis de crer une affectation pour chaque PG. En fonction de PG qui ouvre le projet, seul l'objet qui lui est affect est reprsent par une flche jaune dans SIMATIC Manager.

396

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Etablissement d'une liaison en ligne et choix de la CPU 18.1 Etablissement de liaisons en ligne

18.1.4 Protection par mot de passe contre l'accs aux systmes cible
La protection par mot de passe vous permet de protger le programme utilisateur et ses donnes dans la CPU contre les modifications involontaires (protection en criture), de prserver le savoir faire (know how) contenu dans votre programme utilisateur (protection en lecture), d'empcher les fonctions en ligne qui gneraient le processus

Vous ne pouvez protger un module ou le contenu d'une MMC (par exemple pour une CPU 31xC) par un mot de passe que si le module possde cette fonctionnalit. Si vous souhaitez protger un module ou le contenu d'une MMC par un mot de passe, vous devez dfinir le niveau de protection et le mot de passe dans le cadre du paramtrage du module, puis charger le paramtrage modifi dans le module. Lorsque, dans une CPU, vous activez la protection d'accs intgre STEP 7 partir de la version V4.02, tenez compte du cas suivant : si aprs une activation, vous tentez d'diter la CPU avec une version infrieure STEP 7 V4.02, des messages s'affichent pour vous signaler que cette CPU est protge par mot de passe (p. ex. "Niveau de protection non atteint", "...n'a pas pu tre charge", "...n'a pas pu tre ouverte").

Nota Si votre CPU est paramtre avec le niveau de protection 1 et qu'elle met la SFC 109 "PROTECT" disposition, cette dernire vous permet de commuter entre les niveaux de protection 1 et 2.

Lorsque la saisie d'un mot de passe est requise pour l'excution d'une fonction en ligne ou l'accs au contenu d'une MMC, la bote de dialogue "Saisie du mot de passe" s'affiche. La saisie du mot de passe correct vous donne l'autorisation d'accder des modules pour lesquels vous avez dfini un niveau de protection particulier dans le cadre de leur paramtrage. Vous avez alors la possibilit d'tablir des connexions en ligne avec le module protg et d'excuter les fonctions en ligne correspondant au niveau de protection.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

397

Etablissement d'une liaison en ligne et choix de la CPU 18.1 Etablissement de liaisons en ligne

La commande Systme cible > Droit d'accs > Instaurer vous permet d'appeler directement la bote de dialogue de saisie du mot de passe. Vous pouvez ainsi par exemple changer votre mot de passe en dbut de session et vous n'aurez plus l'entrer par la suite lors d'accs en ligne. Ce mot de passe reste valide jusqu' la fin de la session dans le SIMATIC Manager ou son annulation avec la commande de menu Systme cible > Droit d'accs > Annuler.
Paramtres de la CPU Mode de test / mode de processus (pas pour S7-400 ni CPU 318-2) Observations Paramtrable dans la page d'onglet "Protection". En mode de processus, les fonctions de test comme "Etat du programme" ou "Visualisation/forage de variables" sont restreintes, afin que l'augmentation du temps de cycle autorise ne soit pas dpasse. Ainsi, par exemple, pour la fonction "Etat du programme", les conditions d'appel ne sont pas autorises et la visualisation d'tat d'une boucle programme est interrompue la position de retour. Le test utilisant des points d'arrt et l'excution pas pas du programme n'est pas possible en mode de processus. En mode de test, toutes les fonctions de test via PG/PC sont possibles sans restrictions, mme celles qui sont susceptibles d'entraner une augmentation importante du temps de cycle. Niveau de protection Slectionnable dans la page d'onglet "Protection" (Nota : si votre CPU est paramtre avec le niveau de protection 1 et qu'elle met la SFC 109 "PROTECT" disposition, cette dernire vous permet de commuter entre les niveaux de protection 1 et 2). Vous pouvez soumettre les accs en lecture et en criture la CPU la saisie d'un mot de passe, qui doit tre dfini dans cette page d'onglet.

Autorisation d'accs pour modules M7


Lorsque vous tentez de charger un bloc sur un module M7, alors que le commutateur de mode de fonctionnement est en position RUN, la bote de dialogue "Saisie du mot de passe" s'affiche avec le message : "Le module <xxx> est protg par un mot de passe". Ce message ne concerne pas les modules M7 avec M7-SYS RT < V5.0. Dans ce cas, procdez de la manire suivante : 1. Fermez la bote de dialogue en cliquant sur "Annuler". 2. Mettez le commutateur de mode de fonctionnement l'tat STOP ou RUN-P. 3. Appelez un nouvelle fois la fonction souhaite.

398

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Etablissement d'une liaison en ligne et choix de la CPU 18.1 Etablissement de liaisons en ligne

18.1.5 Remarque sur l'actualisation du contenu de la fentre


Sachez que : des modifications dans la fentre en ligne d'un projet, rsultant d'une manipulation de l'utilisateur (par exemple chargement ou effacement de blocs) ne sont pas automatiquement reprises dans une fentre "Partenaires accessibles" ventuellement ouverte. des modifications dans la fentre "Partenaires accessibles" ne sont pas automatiquement reprises dans une fentre du projet en ligne ventuellement ouvert.

Pour obtenir un affichage actuel dans une fentre ouverte simultanment, vous devez galement actualiser cette fentre ( l'aide de la commande de menu ou de la touche F5).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

399

Etablissement d'une liaison en ligne et choix de la CPU 18.2 Affichage et modification de l'tat de fonctionnement

18.2

Affichage et modification de l'tat de fonctionnement


Cette fonction vous permet, par exemple, de remettre la CPU l'tat de marche (RUN) aprs avoir corrig une erreur.

Affichage de l'tat de fonctionnement


1. Ouvrez votre projet et slectionnez un programme S7/M7 ou ouvrez la fentre "Partenaires accessibles" en choisissant la commande Systme cible > Afficher partenaires accessibles et slectionnez un partenaire (MPI=..."). 2. Choisissez la commande Systme cible > Diagnostic/Paramtres > Etat de fonctionnement. Cette bote de dialogue affiche le dernier et le plus actuel tat de fonctionnement du module, de mme que la position actuelle de son commutateur cl. Pour les modules sur lesquels la position du commutateur cl ne peut pas tre lue, le texte "indfini" s'affiche.

Modification de l'tat de fonctionnement


Vous pouvez modifier l'tat de fonctionnement de la CPU l'aide des boutons. Les boutons actifs sont ceux que vous avez la possibilit de slectionner l'tat de fonctionnement actuel.

400

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Etablissement d'une liaison en ligne et choix de la CPU 18.3 Affichage et rglage de l'heure et de la date

18.3

Affichage et rglage de l'heure et de la date

18.3.1 Horloges CPU avec rglage des zones horaires et heure d't/heure d'hiver
Pour les CPU S7 400 partir de la version de firmware 3, vous pouvez galement effectuer et/ou exploiter les rglages suivants dans le cas des nouvelles CPU ( partir de la version 3 de firmware), outre l'heure/la date : Heure d't/d'hiver Facteur de correction pour la prsentation des zones horaires

Reprsentation des zones horaires


Une heure unique et sans interruption, savoir l'heure du module, est prvue sur toute l'installation. Une heure locale supplmentaire, diffrente de l'heure du module est calcule au niveau local dans le systme d'automatisation et est utilise par le programme utilisateur. L'heure locale n'est pas directement saisie, mais se calcule partir de l'heure du module, en sus et/ou en dduction d'un dcalage horaire par rapport l'heure du module.

Heure d't/d'hiver
Lors du rglage de l'heure et de la date, vous pouvez galement rgler l'heure d't ou d'hiver. Lorsque l'on passe de l'heure d't l'heure d'hiver, par exemple pour chaque programme utilisateur, cela entre en ligne de compte uniquement pour le dcalage horaire par rapport l'heure du module. Vous pouvez procder la commutation au moyen d'un bloc qui est mis votre disposition sur Internet.

Lecture et rglage de l'heure et de l'tat de l'heure


L'identification de l'heure d't/d'hiver ainsi que le dcalage horaire par rapport l'heure du module figurent dans l'tat de l'heure. Vous disposez des possibilits suivantes pour la lecture et/ou le rglage de l'heure et de l'tat de l'heure : Avec STEP 7 (en ligne) Par la commande Systme cible > Diagnostic/Paramtres > Mettre l'heure (lecture et rglage) Par la bote de dialogue "Etat du module", onglet "Horodatage" (lecture uniquement)

dans le programme utilisateur SFC 100 SET_CLKS (lecture et rglage) SFC 51 RDSYSST avec SZL 132, index 8 (lecture uniquement)

Horodatage dans le tampon de diagnostic, dans les messages et les informations de dclenchement des OB
Les horodatages sont crs avec l'heure du module.
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

401

Etablissement d'une liaison en ligne et choix de la CPU 18.3 Affichage et rglage de l'heure et de la date

Alarmes horaires
Si, suite au passage de l'heure d'hiver l'heure d't, les alarmes horaires n'ont pas t dclenches en raison du changement d'heure, l'OB 80 est alors appel. Lors du passage de l'heure d't l'heure d'hiver, la priodicit est conserve pour les alarmes horaires avec priodicit des minutes et des heures.

Synchronisation de l'heure
Une CPU qui est paramtre comme matre de synchronisation (par exemple, dans l'onglet CPU "Diagnostic/Heure") synchronise toujours d'autres horloges avec l'heure du module et leur tat actuel de l'heure.

402

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Etablissement d'une liaison en ligne et choix de la CPU 18.4 Mise jour du microprogramme

18.4

Mise jour du microprogramme

18.4.1 Mise jour en ligne du microprogramme de modules


A partir du Servicepack 3 de STEP 7 V5.1, vous pouvez effectuer la mise jour en ligne des modules d'une station de manire uniforme. La procdure est dcrite ci-aprs.

Concept
Des fichiers (*.UPD) sont fournis avec le microprogramme actuel sur Internet ("http://www.siemens.com/automation/support") afin de vous permettre d'effectuer la mise jour du microprogramme d'un module (CPU, IM, DI, DO, etc.). Il vous suffit de slectionner l'un de ces fichiers et de le charger dans le module (menu Systme cible).

Conditions
Le module dont vous souhaitez mettre jour le microprogramme doit tre accessible en ligne dans la station. Pour cela, la PG doit tre connecte au mme rseau MPI, PROFIBUS ou Ethernet que le module dont vous souhaitez mettre jour le microprogramme. Une mise jour du microprogramme est galement possible lorsque la PG est connecte l'interface MPI de la CPU matre DP et le module, dont vous souhaitez mettre jour le microprogramme, au rseau PROFIBUS de l'interface DP ou au rseau Ethernet de l'interface PN. A cet effet, la CPU doit prendre en charge le routage S7 entre l'interface MPI et l'interface DP ou entre l'interface MPI et l'interface PN. Le module doit prendre en charge la mise jour du microprogramme.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

403

Etablissement d'une liaison en ligne et choix de la CPU 18.4 Mise jour du microprogramme

Les fichiers contenant les versions actuelles du microprogramme doivent tre disponibles dans le systme de fichiers de votre PG/PC. Chaque dossier doit uniquement contenir les fichiers pour une version de firmware.

(1) Sous-rseau PROFIBUS ou Ethernet (2) Sous-rseau MPI (3) CPU avec interface MPI et interface DP ou interface PN (avec routage S7)

404

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Etablissement d'une liaison en ligne et choix de la CPU 18.4 Mise jour du microprogramme

Procdure dans HW Config


1. Ouvrez la station dans laquelle se trouve le module mettre jour. 2. Slectionnez ce module. Dans le cas de modules de couplage PROFIBUS DP, comme p. ex. un IM 151, slectionnez l'icne de l'esclave DP, dans le cas prsent l'ET 200S correspondant. Procdez de la mme manire pour les IO-Devices PROFINET : Si vous souhaitez actualiser le firmware d'un module d'un esclave DP ou IO-Device, cliquez sur le bouton "Changer emplacement", puis dans la bote de dialogue "Changer emplacement", slectionner l'emplacement du module que vous souhaitez actualiser. 3. Choisissez la commande Systme > Actualiser le firmware. Cette commande de menu peut uniquement tre active si le module / esclave DP / IO-Device ou l'esclave DP slectionns prennent en charge la fonction "Actualiser le firmware". 4. Dans la bote de dialogue "Actualiser le firmware" qui s'ouvre, naviguez jusqu'aux fichiers de mise jour du microprogramme (*.UPD) en cliquant sur le bouton "Parcourir". 5. Une fois que vous avez slectionn un fichier, une information s'affiche dans les champs de la partie infrieure de la bote de dialogue "Actualiser le firmware", spcifiant les modules pour lesquels ce fichier est valable et partir de quelle version de microprogramme. 6. Cliquez sur le bouton "Excuter". STEP 7 vrifie que le fichier slectionn peut tre interprt par le module et, si cela est le cas, le charge dans le module. Si l'tat de fonctionnement de la CPU doit tre modifi cet effet, des dialogues vous y sollicitent. Le module effectue ensuite automatiquement la mise jour du microprogramme. Nota : pour la mise jour du microprogramme, p. ex. d'une CPU 317-2 PN/DP, une liaison indpendante est en gnral tablie avec la CPU. Dans ce cas, la procdure peut tre annule. Si aucune ressource n'est disponible pour tablir une autre liaison, une liaison existante est automatiquement utilise. Dans ce cas, la procdure ne peut pas tre annule ; le bouton "Annuler" est reprsent de manire estompe dans la bote de transfert et ne peut pas tre activ. 7. Vrifiez dans STEP 7 (lecture de la mmoire tampon de la CPU), si le module fonctionne correctement avec son nouveau microprogramme.

Procdure dans SIMATIC Manager


La procdure correspond celle de HW Config et la commande de menu sappelle galement Systme cible > Mise jour du firmware. STEP 7 ne vrifie cependant quau moment de lexcution de la fonction si celle-ci prend le module en charge.

Mise jour du firmware pour les modules en mode redondant


A partir de STEP 7 V5.4, la mise jour du firmware est prise en charge pour les modules en mode redondant, p. ex. pour lIM 153-2BA00 avec bus de fond de panier actif sur une station H. Pour les IM redondants, vous pouvez raliser une mise jour du firmware en une seule procdure ; lIM redondant reoit automatiquement la nouvelle version du firmware. Condition : la PG est connecte au mme PROFIBUS que lun des IM et vous ralisez la mise jour du firmware via "Partenaires accessibles" dans SIMATIC Manager.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

405

Etablissement d'une liaison en ligne et choix de la CPU 18.4 Mise jour du microprogramme

Principe

Consquences lors de l'actualisation du firmware durant le fonctionnement


Dans la bote de dialogue de l'actualisation du firmware, une option vous permet de dfinir que le nouveau firmware doit tre activ immdiatement aprs son actualisation. Lorsque cette option est active, la station ralise une remise en route comme aprs une MISE HORS TENSION/MISE SOUS TENSION. Une CPU peut p. ex. rester l'tat STOP ou l'excution du programme utilisateur peut en tre errone. En raison de ces restrictions de fonctionnement, vous devez prendre des mesures prventives. En cas de redmarrage, cela entrane la dfaillance de nombreux modules de la station - y compris de la priphrie de scurit ventuellement prsente. Lors d'une MISE HORS TENSION, la priphrie de scurit signale une erreur de communication au coupleur et ralise un arrt de scurit - elle est passive. Cette passivation n'est pas annule lors du redmarrage du coupleur. Vous devez dpassiver les modules individuellement. Ceci a pour consquence que les applications de scurit ne fonctionnent pas.

406

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

19
19.1

Chargement
Chargement dans le systme cible depuis la PG

19.1.1 Conditions pralables au chargement


Conditions pralables au chargement dans le systme cible
Une liaison est tablie entre votre PG et la CPU du systme cible (par exemple via l'interface MPI). L'accs au systme cible est possible. Lors du chargement de blocs dans le systme cible, l'entre "STEP 7" doit tre slectionne comme "Utilisation" dans les proprits de l'objet du projet. La compilation du programme charger s'est faite sans erreur. La CPU doit se trouver dans un tat de fonctionnement autorisant le chargement (arrt ou marche (RUN-P)). A l'tat de fonctionnement de marche (RUN-P), veillez charger le programme bloc par bloc. En effet, des conflits risqueraient de survenir si vous crasiez un ancien programme CPU et que, par exemple, des paramtres de bloc seraient modifis. Durant l'excution du cycle, la CPU passerait alors l'tat d'arrt. C'est pourquoi, il est recommand de mettre la CPU l'tat d'arrt avant de raliser le chargement. Si vous avez ouvert hors ligne le bloc que vous voulez charger, un programme utilisateur en ligne doit tre affect la CPU dans SIMATIC Manager. Nous vous recommandons d'effectuer un effacement gnral de la CPU avant de charger votre programme utilisateur, afin d'tre sr qu'il n'y a plus d'anciens blocs dans la CPU.

Etat de fonctionnement "Arrt" (STOP)


Vous devez faire passer la CPU de l'tat de fonctionnement "Marche" (RUN) l'tat "Arrt" (STOP) avant : de charger le programme utilisateur complet ou certaines de ses parties dans la CPU, d'effectuer un effacement gnral de la CPU, de comprimer la mmoire utilisateur.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

407

Chargement 19.1 Chargement dans le systme cible depuis la PG

Dmarrage chaud (passage l'tat de fonctionnement "Marche")


Lorsque vous demandez un dmarrage chaud partir de l'tat de fonctionnement "Arrt" (STOP), le programme recommence au dbut et le programme de mise en route - dans le bloc OB100 - est d'abord excut en mode mise en route. Si la mise en route s'achve sans erreur, la CPU passe l'tat "Marche" (RUN). Un dmarrage chaud est ncessaire aprs : l'effacement gnral de la CPU, le chargement du programme utilisateur l'tat "Arrt" (STOP).

408

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.1 Chargement dans le systme cible depuis la PG

19.1.2 Diffrence entre l'enregistrement et le chargement de blocs


L'enregistrement et le chargement de blocs prsentent une diffrence fondamentale.
Enregistrement Commande Fonction Vrification de la syntaxe Fichier > Enregistrer Fichier > Enregistrer sous L'tat en cours du bloc de l'diteur est sauvegard sur le disque dur de la PG. La syntaxe est vrifie. Le cas chant, les erreurs vous seront signales dans des botes de dialogue, avec indication de la cause et de l'emplacement des erreurs. Vous devez corriger ces erreurs avant d'enregistrer ou de charger le bloc. Si la syntaxe est correcte, le bloc est ensuite compil en code machine et enregistr ou charg. L'tat en cours du bloc de l'diteur est charg seulement dans la CPU. La syntaxe est vrifie. Le cas chant, les erreurs vous seront signales dans des botes de dialogue, avec indication de la cause et de l'emplacement des erreurs. Vous devez corriger ces erreurs avant d'enregistrer ou de charger le bloc. Si la syntaxe est correcte, le bloc est ensuite compil en code machine et enregistr ou charg. Chargement Systme cible > Charger

Ce tableau s'applique aussi bien des blocs ouverts en ligne qu'hors ligne:

Remarque sur l'enregistrement de modifications de blocs pralable au chargement


Pour valider les blocs nouvellement crs ou les modifications apportes la section des instructions de blocs de code, aux tables de dclaration ou aux valeurs dans les blocs de donnes, vous devez enregistrer les blocs correspondants. Il est indispensable d'enregistrer galement sur le disque dur de la PG, avant de quitter l'diteur, les modifications que vous avez faites et que vous avez transfres directement dans la CPU avec la commande Systme cible > Charger par exemple, parce qu'elles taient minimes et que vous vouliez les tester immdiatement. Sinon en effet, vous aurez des versions diffrentes de votre programme utilisateur dans la CPU et dans la console de programmation. En gnral, il est conseill de toujours enregistrer d'abord les modifications et de ne les charger qu'ensuite.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

409

Chargement 19.1 Chargement dans le systme cible depuis la PG

19.1.3 Mmoire de chargement et mmoire de travail dans la CPU


Une fois la configuration, le paramtrage et l'criture du programme achevs et la liaison en ligne tablie, vous pouvez transfrer des programmes utilisateur entiers ou des blocs individuels dans un systme cible. Vous devez, pour tester des blocs individuels, charger au moins un OB ainsi que les FB et les FC qui y sont appels et les DB utiliss. Pour transfrer dans le systme cible les donnes systme obtenues aprs la configuration du matriel et des rseaux ou la cration d'une table des liaisons, vous chargez l'objet "Blocs de donnes systme". Dans le SIMATIC Manager, vous chargez des programmes utilisateur dans un systme cible, par exemple dans la phase finale du test du programme ou pour excuter le programme utilisateur achev.

Relation entre la mmoire de chargement et la mmoire de travail de la CPU


Le programme utilisateur entier est charg dans la mmoire de chargement, les parties du programme significatives pour l'excution l'tant galement dans la mmoire de travail.

Mmoire de chargement de la CPU


La mmoire de chargement sert l'enregistrement du programme utilisateur sans table des mnmoniques ni commentaires (ces derniers restent dans la mmoire de la console de programmation). Les blocs identifis comme non significatifs pour l'excution sont exclusivement chargs dans la mmoire de chargement. Selon le systme cible, il peut s'agir pour la mmoire de chargement de mmoire vive (RAM), de mmoire morte (ROM) ou de mmoire EPROM Pour le S7-300, la mmoire de chargement peut comporter une partie EEPROM intgre en plus de la partie RAM (par exemple CPU312 IFM et CPU314 IFM). Pour le S7-400, l'utilisation d'une carte mmoire (RAM ou EEPROM) s'avre indispensable pour l'extension de la mmoire de chargement.

410

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.1 Chargement dans le systme cible depuis la PG

Mmoire de travail de la CPU


La mmoire de travail (mmoire vive intgre) contient les parties du programme significatives pour l'excution du programme.

Procdures de chargement possibles


La fonction de chargement vous permet de charger le programme utilisateur ou des objets chargeables (par exemple des blocs) dans le systme cible. Si un bloc se trouve dj dans la mmoire vive de la CPU, un message vous demande, lors du chargement, si ce bloc doit tre cras ou non. Vous pouvez slectionner les objets chargeables dans la fentre de projet et les charger partir de SIMATIC Manager (commande Systme cible > Charger). Lors de la programmation de blocs et lors de la configuration du matriel et de rseaux, vous pouvez charger directement l'objet en cours de traitement via le menu dans la fentre principale associe votre activit (commande Systme cible > Charger). Une autre possibilit consiste ouvrir une fentre en ligne avec la vue du systme cible (par exemple via la commande Affichage > En ligne ou Systme cible > Afficher les partenaires accessibles) et de copier l'objet charger dans la fentre en ligne.

Inversement, vous pouvez charger le contenu actuel de blocs de la mmoire vive de chargement de la CPU dans votre console de programmation.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

411

Chargement 19.1 Chargement dans le systme cible depuis la PG

19.1.4 Possibilits de chargement selon la mmoire de chargement


La structure de la mmoire de chargement forme d'une partie RAM et d'une partie EEPROM n'est pas sans consquence sur les possibilits de chargement de votre programme utilisateur ou de blocs individuels. Le chargement des donnes dans la CPU peut s'effectuer de plusieurs manires :
Mmoire de chargement Possibilits de chargement Type de communication entre outil de dveloppement et systme cible

Mmoire vive (RAM)

Chargement et effacement de blocs Liaison en ligne PG - systme cible individuels Chargement et effacement d'un programme utilisateur entier Chargement de blocs individuels Liaison en ligne PG - systme cible Liaison en ligne PG - systme cible Liaison en ligne PG - systme cible Chargement externe de l'EPROM et enfichage de la carte mmoire ou chargement via la liaison en ligne l'EPROM enfiche dans le systme cible

EPROM intgre (uniquement S7-300) ou enfichable EPROM enfichable

Chargement de programmes utilisateur entiers Chargement de programmes utilisateur entiers

Chargement dans la RAM via une liaison en ligne


En cas de panne secteur, les donnes ne sont pas protges dans le systme cible si la mmoire vive ne possde pas de sauvegarde. Dans ce cas, les donnes sont perdues dans la RAM.

Enregistrement sur une carte mmoire EPROM


Les blocs ou le programme utilisateur sont enregistrs sur une carte mmoire EPROM que l'on enfiche ensuite dans un emplacement prvu cet effet sur la CPU. Les cartes mmoire sont des supports de donnes portatifs. Vous y inscrivez les donnes depuis l'outil de dveloppement, puis les enfichez l'emplacement prvu cet effet sur la CPU. Les donnes qui y sont sauvegardes sont conserves en cas de coupure de courant ou d'effacement gnral de la CPU. Aprs effacement gnral de la CPU, et aprs retour du courant suite une panne secteur quand la mmoire vive n'est pas sauvegarde, le contenu de l'EPROM est nouveau copi dans la zone de mmoire vive de la mmoire de la CPU.

Enregistrement dans la mmoire intgre EPROM


Pour la CPU 312, il existe encore la possibilit de charger le contenu de la mmoire vive dans la mmoire intgre EPROM, o les donnes sont rmanentes en cas de panne secteur. Aprs retour du courant suite une panne secteur, quand la mmoire vive n'est pas sauvegarde, et aprs effacement gnral de la CPU, le contenu de l'EPROM est nouveau copi dans la zone de mmoire vive de la mmoire de la CPU.

412

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.1 Chargement dans le systme cible depuis la PG

19.1.5 Mise jour en ligne du microprogramme de modules


A partir du Servicepack 3 de STEP 7 V5.1, vous pouvez effectuer la mise jour en ligne des modules d'une station de manire uniforme. La procdure est dcrite ci-aprs.

Concept
Des fichiers (*.UPD) sont fournis avec le microprogramme actuel sur Internet ("http://www.siemens.com/automation/support") afin de vous permettre d'effectuer la mise jour du microprogramme d'un module (CPU, IM, DI, DO, etc.). Il vous suffit de slectionner l'un de ces fichiers et de le charger dans le module (menu Systme cible).

Conditions
Le module dont vous souhaitez mettre jour le microprogramme doit tre accessible en ligne dans la station. Pour cela, la PG doit tre connecte au mme rseau MPI, PROFIBUS ou Ethernet que le module dont vous souhaitez mettre jour le microprogramme. Une mise jour du microprogramme est galement possible lorsque la PG est connecte l'interface MPI de la CPU matre DP et le module, dont vous souhaitez mettre jour le microprogramme, au rseau PROFIBUS de l'interface DP ou au rseau Ethernet de l'interface PN. A cet effet, la CPU doit prendre en charge le routage S7 entre l'interface MPI et l'interface DP ou entre l'interface MPI et l'interface PN. Le module doit prendre en charge la mise jour du microprogramme. Les fichiers contenant les versions actuelles du microprogramme doivent tre disponibles dans le systme de fichiers de votre PG/PC. Chaque dossier doit uniquement contenir les fichiers pour une version de firmware.

(1) Sous-rseau PROFIBUS ou Ethernet (2) Sous-rseau MPI (3) CPU avec interface MPI et interface DP ou interface PN (avec routage S7)

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

413

Chargement 19.1 Chargement dans le systme cible depuis la PG

Procdure dans HW Config


1. Ouvrez la station dans laquelle se trouve le module mettre jour. 2. Slectionnez ce module. Dans le cas de modules de couplage PROFIBUS DP, comme p. ex. un IM 151, slectionnez l'icne de l'esclave DP, dans le cas prsent l'ET 200S correspondant. Procdez de la mme manire pour les IO-Devices PROFINET : Si vous souhaitez actualiser le firmware d'un module d'un esclave DP ou IO-Device, cliquez sur le bouton "Changer emplacement", puis dans la bote de dialogue "Changer emplacement", slectionner l'emplacement du module que vous souhaitez actualiser. 3. Choisissez la commande Systme > Actualiser le firmware. Cette commande de menu peut uniquement tre active si le module / esclave DP / IO-Device ou l'esclave DP slectionns prennent en charge la fonction "Actualiser le firmware". 4. Dans la bote de dialogue "Actualiser le firmware" qui s'ouvre, naviguez jusqu'aux fichiers de mise jour du microprogramme (*.UPD) en cliquant sur le bouton "Parcourir". 5. Une fois que vous avez slectionn un fichier, une information s'affiche dans les champs de la partie infrieure de la bote de dialogue "Actualiser le firmware", spcifiant les modules pour lesquels ce fichier est valable et partir de quelle version de microprogramme. 6. Cliquez sur le bouton "Excuter". STEP 7 vrifie que le fichier slectionn peut tre interprt par le module et, si cela est le cas, le charge dans le module. Si l'tat de fonctionnement de la CPU doit tre modifi cet effet, des dialogues vous y sollicitent. Le module effectue ensuite automatiquement la mise jour du microprogramme. Nota : pour la mise jour du microprogramme, p. ex. d'une CPU 317-2 PN/DP, une liaison indpendante est en gnral tablie avec la CPU. Dans ce cas, la procdure peut tre annule. Si aucune ressource n'est disponible pour tablir une autre liaison, une liaison existante est automatiquement utilise. Dans ce cas, la procdure ne peut pas tre annule ; le bouton "Annuler" est reprsent de manire estompe dans la bote de transfert et ne peut pas tre activ. 7. Vrifiez dans STEP 7 (lecture de la mmoire tampon de la CPU), si le module fonctionne correctement avec son nouveau microprogramme.

Procdure dans SIMATIC Manager


La procdure correspond celle de HW Config et la commande de menu sappelle galement Systme cible > Mise jour du firmware. STEP 7 ne vrifie cependant quau moment de lexcution de la fonction si celle-ci prend le module en charge.

Mise jour du firmware pour les modules en mode redondant


A partir de STEP 7 V5.4, la mise jour du firmware est prise en charge pour les modules en mode redondant, p. ex. pour lIM 153-2BA00 avec bus de fond de panier actif sur une station H. Pour les IM redondants, vous pouvez raliser une mise jour du firmware en une seule procdure ; lIM redondant reoit automatiquement la nouvelle version du firmware. Condition : la PG est connecte au mme PROFIBUS que lun des IM et vous ralisez la mise jour du firmware via "Partenaires accessibles" dans SIMATIC Manager.

414

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.1 Chargement dans le systme cible depuis la PG

Principe

Consquences lors de l'actualisation du firmware durant le fonctionnement


Dans la bote de dialogue de l'actualisation du firmware, une option vous permet de dfinir que le nouveau firmware doit tre activ immdiatement aprs son actualisation. Lorsque cette option est active, la station ralise une remise en route comme aprs une MISE HORS TENSION/MISE SOUS TENSION. Une CPU peut p. ex. rester l'tat STOP ou l'excution du programme utilisateur peut en tre errone. En raison de ces restrictions de fonctionnement, vous devez prendre des mesures prventives. En cas de redmarrage, cela entrane la dfaillance de nombreux modules de la station - y compris de la priphrie de scurit ventuellement prsente. Lors d'une MISE HORS TENSION, la priphrie de scurit signale une erreur de communication au coupleur et ralise un arrt de scurit - elle est passive. Cette passivation n'est pas annule lors du redmarrage du coupleur. Vous devez dpassiver les modules individuellement. Ceci a pour consquence que les applications de scurit ne fonctionnent pas.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

415

Chargement 19.1 Chargement dans le systme cible depuis la PG

19.1.6 Chargement du programme dans la CPU S7


19.1.6.1 Chargement dans la gestion du projet
1. Dans la fentre du projet, slectionnez le programme utilisateur ou les blocs charger. 2. Chargez les objets slectionns dans le systme cible en choisissant la commande Systme cible > Charger.

Autre procdure possible (glisser-lcher)


1. Ouvrez la fois une fentre hors ligne et une fentre en ligne de votre projet. 2. Slectionnez ensuite les objets charger dans la fentre hors ligne, puis glissez-les dans la fentre en ligne.

19.1.6.2

Chargement hors gestion du projet


1. Choisissez la commande Systme cible > Partenaires accessibles ou cliquez sur le bouton correspondant dans la barre d'outils pour ouvrir la fentre "Partenaires accessibles". 2. Dans la fentre "Partenaires accessibles", effectuez un double-clic sur le partenaire correspondant ("MPI=...") pour voir le dossier Blocs. 3. Ouvrez la bibliothque ou le projet, partir desquels vous voulez charger le programme utilisateur ou les blocs dans le systme cible. Choisissez cet effet la commande Fichier > Ouvrir. 4. Dans la fentre du projet ou de la bibliothque ouverte, slectionnez les objets que vous voulez charger. 5. Chargez ces objets dans le systme cible, en les copiant l'aide de la souris ou des commandes de menu sur le dossier Blocs dans la fentre "Partenaires accessibles".

19.1.6.3

Chargement de blocs dans le systme cible


Vous pouvez craser les blocs prsents dans la mmoire de chargement (mmoire vive) ou dans la mmoire de travail de la CPU du systme cible S7 avec une nouvelle version (chargement dans le systme cible). L'ancienne version des blocs est alors crase. La manire de procder pour charger des blocs S7 est la mme que celle pour les charger, ceci prs que le systme vous demandera si vous voulez craser les blocs prsents. Un bloc enregistr dans une EPROM ne peut tre cras, mais sera dclar non valable aprs le chargement dans le systme cible. Le nouveau bloc est charg dans la mmoire vive. Dans la mmoire de chargement ou dans la mmoire de travail, il en rsulte des intervalles, susceptibles d'empcher le chargement de nouveaux blocs. Dans ce cas, il est recommand de comprimer les mmoires.

Nota En cas de retour de courant suite une panne secteur, quand la mmoire vive n'est pas sauvegarde, ou en cas d'effacement gnral de la CPU, les "anciens blocs" de l'EPROM seront nouveau valables et chargs dans le systme cible !

416

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.1 Chargement dans le systme cible depuis la PG

19.1.6.4

Enregistrement de blocs chargs dans la mmoire intgre EPROM


Dans les modules CPU disposant d'une EPROM intgre (par exemple la CPU 312), vous pouvez copier des blocs de la mmoire vive dans l'EPROM intgre afin de ne pas perdre les donnes en cas de coupure de courant ou d'effacement gnral. 1. Affichez une fentre avec la vue en ligne d'un projet ouvert en choisissant la commande Affichage > En ligne ou alors affichez la fentre "Partenaires accessibles" en cliquant sur le bouton "Partenaires accessibles" dans la barre d'outils ou en choisissant la commande Systme cible > Afficher les partenaires accessibles. 2. Choisissez le programme S7 ou M7 dans la fentre en ligne du projet ou le partenaire dans la fentre "Partenaires accessibles". 3. Slectionnez le dossier Blocs de la CPU que vous voulez enregistrer dans : la fentre en ligne du projet si vous travaillez dans la gestion du projet. la fentre "Partenaires accessibles", si vous travaillez hors gestion du projet.

4. Choisissez la commande Systme cible > Copier de RAM en ROM.

19.1.6.5

Chargement via des cartes mmoire EPROM

Condition pralable
Pour pouvoir accder depuis l'outil de dveloppement aux cartes mmoire EPROM destines un systme cible S7, vous devez avoir install le pilote d'EPROM correspondant. Pour pouvoir accder aux cartes mmoire EPROM destines un systme cible M7, vous devez avoir install le systme Flash File (ceci n'est possible que sur les PG720/740/760, Field PG et Power PG). Le pilote d'EPROM et le systme Flash File sont proposs en option lors de l'installation du logiciel de base STEP 7. Si vous utilisez un PC, vous devez en plus possder un programmateur d'EPROM externe pour pouvoir raliser l'enregistrement sur une carte mmoire EPROM. Vous pouvez galement installer les pilotes ultrieurement. Ouvrez cet effet la bote de dialogue correspondante via la barre des tches (Dmarrer > Simatic > STEP 7 > Paramtrage de cartes mmoire) ou via le panneau de configuration (double clic sur l'icne "Paramtrage de cartes mmoire").

Sauvegarde sur carte mmoire


Pour sauvegarder des blocs ou des programmes utilisateur sur une carte mmoire, procdez de la manire suivante : 1. Enfichez la carte mmoire dans l'emplacement prvu cet effet sur votre outil de dveloppement. 2. Ouvrez la fentre "Carte mmoire S7" de la manire suivante : Cliquez sur le bouton de la carte mmoire dans la barre d'outils. Si cette dernire n'est pas affiche, vous pouvez le faire en choisissant la commande Affichage > Barre d'outils. Une alternative consisterait choisir la commande Fichier > Carte mmoire S7 > Ouvrir.

3. Ouvrez ou activez la fentre dans laquelle vous allez afficher les blocs enregistrer. Il peut s'agir d'une : fentre du projet, vue du projet en ligne

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

417

Chargement 19.2 Compilation et chargement de plusieurs objets depuis la PG

fentre du projet, vue du projet hors ligne fentre de bibliothque fentre "Partenaires accessibles"

4. Slectionnez le dossier Blocs ou les blocs enregistrer, puis copiez-les dans la fentre "Carte mmoire S7". 5. Si un bloc se trouve dj sur la carte mmoire, un message d'erreur est mis. Dans ce cas, effacez le contenu de la carte mmoire et rptez les tapes partir de l'tape 2.

19.2

Compilation et chargement de plusieurs objets depuis la PG

19.2.1 Conditions et remarques pour le chargement


Chargement de dossiers Bloc
Dans les dossiers Bloc, il est uniquement possible de charger les blocs de code. Les autres objets du dossier Bloc, tels que les donnes systme (SDB), etc. ne peuvent pas tre chargs partir de l. Les SDB sont chargs partir de l'objet "Matriel".

Nota
Pour les projets PCS 7, le chargement de blocs n'est possible ni depuis SIMATIC Manager, ni depuis la bote de dialogue "Compiler et charger les objets". En effet, pour les projets PCS 7, le chargement des systmes cibles ne peut tre ralis que dans CFC afin de garantir un ordre de chargement correct et ainsi viter le passage en STOP de la CPU. Pour savoir s'il s'agit d'un projet PCS 7, veuillez consulter les proprits spcifiques de l'objet du projet.

Chargement de parties F de commandes de scurit


Pour des raisons de scurit, le chargement de parties F de commandes de scurit est uniquement possible aprs saisie d'un mot de passe. Dans "Compilation et chargement d'objets", la procdure de chargement est de ce fait interrompue par un message d'erreur. Le chargement des parties de programme correspondantes dans le systme cible doit tre ralis avec le progiciel optionnel.

Chargement du matriel
Le chargement du matriel (c'est--dire le chargement des SDB hors ligne) au moyen de la fonction "Compilation et chargement d'objets" peut uniquement tre excut sans interruption pour tous les objets slectionns si aucun message d'erreur ou interrogations ne sont mis. Des informations sur la faon d'viter des messages d'erreur et des interrogations sont donnes au paragraphe suivant.

418

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.2 Compilation et chargement de plusieurs objets depuis la PG

Conditions requises pour le chargement du matriel


Les CPU doivent se trouver l'tat de fonctionnement ARRET. Les liaisons en ligne avec les CPU doivent tre possibles ; les CPU protges par mot de passe requirent une liaison autorise ou la saisie d'un mot du mot de passe. Pour saisir le mot de passe, cliquez sur le bouton "Edition" lorsque la CPU est slectionne ou slectionnez le dossier Bloc avant de dmarrer la fonction "Compilation et chargement d'objets". Certains paramtrages ne sont pas autoriss pour l'interface du systme cible via laquelle le chargement est ralis : l'adresse de l'interface ne doit pas tre modifie, une modification des paramtres de rseau risque d'empcher l'accs certains modules.

Dans le cas des CPU H, vous pouvez slectionner la CPU charger (CPU H 0 ou CPU H 1) avant le dmarrage de la fonction "Compilation et chargement d'objets" (slectionnez l'objet "CPU" et cliquez sur le bouton "Edition"). Les paramtres de CPU suivants ne doivent pas avoir t modifis : la taille maximale pour les donnes locales et les ressources de communication de la CPU (onglet "Mmoire"), la protection par mot de passe de la CPU F (onglet "Protection").

Pour chaque module configur, les conditions suivantes doivent tre remplies : le numro de rfrence du module configur doit tre identique celui du module effectivement enfich, la version du firmware du module configur ne doit pas tre suprieure celle du module effectivement enfich, le nom de la station, le nom du module et le repre d'installation ne doivent pas avoir t modifis depuis le dernier chargement. La nouvelle attribution d'un repre d'installation est autorise.

Remarques sur le droulement du chargement


Tous les SDB hors ligne sont chargs (c'est--dire outre la configuration matrielle, galement les SDB de liaison et les SDB rsultant de la configuration des donnes globales). Le chargement est uniquement effectu si prcdemment aucune erreur n'est survenue lors de la compilation. Durant le chargement les messages sont bloqus ; en cas d'insuffisance de mmoire de la CPU, une compression est p. ex. effectue sans demande de confirmation. Aprs le chargement, les modules chargs restent l'tat d'ARRET ( l'exception des modules qui sont automatiquement arrts et redmarrs sans demande de confirmation).

Conseil
Si, aprs le chargement, un message signale que le chargement de l'objet a t ralis avec des avertissements, il est indispensable de consulter le journal. Il est probable que l'objet n'ait pas t charg ou l'ait t partiellement.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

419

Chargement 19.2 Compilation et chargement de plusieurs objets depuis la PG

19.2.2 Compilation et chargement d'objets


Dans la bote de dialogue "Compilation et chargement d'objets" vous prparez les objets pouvant tre slectionns dans votre projet ou multiprojet pour leur chargement dans le systme cible, puis les chargez dans ce dernier si vous le dsirez. Cette bote de dialogue peut tre utilise pour les objets d'une station, d'un projet ou d'un multiprojet. Selon l'objet slectionn, certaines informations ne peuvent pas tre affiches ou de nombreuses fonctions dcrites ci-aprs ne sont pas disponibles pour ces objets. Des restrictions peuvent survenir, en particulier pour des objets crs par des progiciels optionnels. Pour les blocs d'un dossier Blocs, la "compilation" signifie que la cohrence des blocs est vrifie. Pour plus de facilit, la vrification de cohrence des blocs sera par la suite dcrite comme procdure de compilation. Procdez de la manire suivante : 1. Dans SIMATIC Manager, slectionnez l'objet que vous souhaitez compiler ou compiler et charger. Vous pouvez slectionner les objets suivants dans SIMATIC Manager : - multiprojet, - projet, - station, - programme S7 non affect une station. 2. Dans SIMATIC Manager, choisissez la commande de menu Systme cible > Compiler et charger les objets. 3. Slectionnez "Compilation uniquement", si vous souhaitez vrifier les blocs sans les charger dans le systme cible. Activez cette option lorsque vous ne souhaitez charger aucun des objets dans le systme cible. Nota : les stations dont les HSP manquent ne sont ni compiles, ni charges (les cases cocher ne sont pas visibles). 4. Si vous souhaitez empcher le chargement incomplet des stations en raison d'erreurs de compilation, activez la case cocher "Ne pas charger en cas d'erreur de compilation". Dans ce cas, aucun chargement n'est effectu. Lorsque cette case cocher n'est pas active, tous les objets ayant t compils sans erreur sont chargs. Les objets ayant entran une erreur lors de la compilation ne sont pas chargs. 5. Si vous souhaitez compiler et charger des liaisons, activez la case cocher correspondante pour l'objet "Liaisons". Le multiprojet convient tout particulirement comme objet d'entre, car partir de cet objet, tous les partenaires de liaison entre plusieurs projets peuvent tre chargs automatiquement. 6. Dans les colonnes "Compiler" et "Charger", slectionnez les objets que vous souhaitez compiler ou charger. Ils seront cochs. Si l'tape 3, vous avez activ l'option "Compilation uniquement", la colonne "Charger" est masque. 7. Dmarrez la procdure de compilation en cliquant sur le bouton "Dmarrer". 8. Suivez les instructions qui s'affichent l'cran.

420

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.2 Compilation et chargement de plusieurs objets depuis la PG

Aprs la procdure de compilation ou de chargement, le journal de la procdure complte s'affiche automatiquement. Vous pouvez cependant ouvrir tout moment le journal de la procdure complte ou le journal d'objets individuels : Cliquez sur le bouton "Tout" si vous souhaitez visualiser le journal de la procdure complte. Cliquez sur le bouton "Objet individuel", si vous souhaitez visualiser un journal de l'objet slectionn dans la liste.

Particularits lors de la compilation et du chargement de liaisons


Si, pour un module, vous slectionnez l'objet "Liaisons" afin de le compiler, STEP 7 slectionne automatiquement les objets "Liaisons" correspondants des partenaires de liaison. Ainsi, STEP 7 cre toujours des donnes de configuration cohrentes (blocs de donnes systme). Les objets slectionns automatiquement ne peuvent pas tre dslectionns directement manuellement. Leur slection est toutefois supprime automatiquement lorsque vous dslectionnez l'objet "Liaisons" initialement slectionn. Si, pour un module, vous slectionnez l'objet "Liaisons" afin de le charger, STEP 7 active galement automatiquement la case cocher "Compiler". De plus, STEP 7 active les cases cocher "Compiler" et "Charger" de tous les partenaires de liaison. Si seuls des objets du type "Liaisons" ont t slectionns, vous pouvez galement charger les liaisons l'tat de fonctionnement RUN-P de la CPU. Vous pouvez chargez des liaisons individuelles en utilisant NetPro.

Compilation et chargement du matriel : effets sur les liaisons


Lorsque vous slectionnez l'objet "Matriel" afin de le compiler ou de le charger, les objets "Liaisons" placs sous le matriel slectionn sont automatiquement slectionns pour tre compils ou chargs. Dans ce cas, les objets de liaison des partenaires de liaison ne sont pas slectionns automatiquement !

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

421

Chargement 19.3 Chargement depuis le systme cible dans la PG

19.3

Chargement depuis le systme cible dans la PG


Cette fonction vous permet de raliser les tches suivantes : enregistrement dinformations du systme cible (p. ex. des fins de maintenance) configuration et dition rapides dune station, lorsque les composants matriels sont prsentes au dbut de la tche de configuration

Enregistrement dinformations du systme cible


Cette mesure peut savrer ncessaire lorsque, par exemple, les donnes du projet hors ligne correspondant ltat actuel dans la CPU ne sont pas prsentes ou uniquement partiellement. Vous pouvez alors au moins charger la partie des donnes du projet disponible en ligne dans votre PG.

Configuration rapide
Vous pouvez vous faciliter la saisie de la configuration de la station en chargeant les donnes de configuration depuis le systme cible dans votre PG, aprs avoir configur le matriel et rinitialis la station (dmarrage chaud). Vous obtenez ainsi la configuration de la station avec les indication de type des diffrents modules. Il vous suffira ensuite de spcifier prcisment les diffrents modules (numro de rfrence) et de les paramtrer. Les informations suivantes sont charges dans la PG : S7-300 : configuration du profil support de base et profils support dextension ventuellement prsents. S7-400 : configuration du chssis de base avec une CPU et des modules de signaux sans chssis dextension. Les donnes de configuration de la priphrie dcentralise ne peuvent pas tre charges dans la PG.

Il sagit des informations qui sont charges lorsque le systme cible ne possde pas encore dinformations de configuration, par exemple en cas deffacement gnral des systmes. Sinon la fonction de "Chargement dans la PG" fournit de bien meilleurs rsultats. Dans le cas de systmes S7-300 sans priphrie dcentralise, il vous suffit alors de spcifier prcisment les modules (numro de rfrence) et de les paramtrer.

Nota Lors du chargement dans la PG (en labsence dune configuration hors ligne) STEP 7 nest pas en mesure de fournir tous les numros de rfrence des composants dans leur intgralit. Vous pouvez complter les numros de rfrence "incomplets" lors de la configuration du matriel en choisissant la commande Outils > Spcifier le module. Vous pouvez ainsi paramtrer des modules inconnus pour STEP 7 (cest--dire qui ne figurent pas dans la fentre "Catalogue du matriel"), sans que les rgles de paramtrage ne soient toutefois prises en compte !

422

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.3 Chargement depuis le systme cible dans la PG

Restrictions lors du chargement depuis le systme cible


Les restrictions suivantes sappliquent aux donnes charges depuis le systme cible dans la PG : Les blocs ne contiennent pas de mnmoniques pour les paramtres, variables et repres. Les blocs ne contiennent pas de commentaires. Lensemble du programme est charg dans la PG avec toutes les donnes systme. Seule la partie des donnes systme relative la "configuration matrielle" pourra cependant tre dite, comme laccoutume. Les donnes relatives la "communication par donnes globales (GD)" et la "configuration de messages sur mnmoniques" ne pourront pas tre dites. Les commandes de forage permanent ne sont pas charges dans la PG. Elles doivent tre enregistres sparment sous forme de table de variables via laffichage de la tche de forage permanent. Les commentaires dans les botes de dialogue des modules ne sont pas chargs. Les noms des modules ne saffichent que si vous avez slectionn cette option lors de la configuration (HW Config : Outils > Paramtres, Enregsitrer les noms dobjet dans le systme cible).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

423

Chargement 19.3 Chargement depuis le systme cible dans la PG

19.3.1 Chargement d'une station dans la PG


La commande Systme cible > Charger station dans la PG vous permet de charger dans la PG la configuration actuelle ainsi que tous les blocs de l'automate programmable slectionner. STEP 7 cre cet effet une nouvelle station dans le projet en cours, sous laquelle la configuration est enregistre. Vous pouvez renommer le nom prslectionn de la station insre (par exemple "Station SIMATIC 300 (1)"). La station insre s'affiche aussi bien dans la vue "en ligne" que dans la vue "hors ligne". Cette commande peut tre slectionne lorsqu'un projet est ouvert. La slection d'un objet dans la fentre du projet ou la vue (en ligne ou hors ligne) de sont pas significatives pour cette commande. Cette fonction vous permet de vous faciliter la configuration. Pour les systmes cible S7-300, la configuration est charge avec les profils support dextension sans priphrie dcentralise (DP). Pour les systmes cible S7-400, la configuration du chssis de base est charge sans chssis dextension ni priphrie dcentralise.

Dans le cas de systmes S7-300 sans priphrie dcentralise, il vous suffit alors de spcifier prcisment les modules (numro de rfrence) et de les paramtrer.

Restrictions lors du chargement dune station dans la PG


Les restrictions suivantes sappliquent aux donnes charges dans la PG : Les blocs ne contiennent pas de mnmoniques pour les paramtres formels, les variables temporaires et les repres. Les blocs ne contiennent pas de commentaires. Lensemble du programme est charg dans la PG avec toutes les donnes systme ("AGAbzug"). Toutes les donnes ne peuvent cependant pas tre dites. Les donnes relatives la "communication par donnes globales (GD)", la "configuration de messages sur mnmoniques" et la "configuration de rseaux" ne pourront pas tre dites. Les commandes de forage permanent ne peuvent pas tre charges dans la PG, puis nouveau dans le systme cible.

424

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.3 Chargement depuis le systme cible dans la PG

19.3.2 Chargement de blocs depuis la CPU S7


SIMATIC Manager vous permet de charger des blocs S7 de la CPU sur le disque dur de l'outil de dveloppement. Vous utilisez par exemple cette possibilit pour : effectuer une sauvegarde du programme utilisateur actuel, charg dans la CPU. En cas de maintenance conscutive un ventuel effacement gnral de la CPU, le personnel comptent serait en mesure de charger cette copie de sauvegarde. charger le programme utilisateur de la CPU dans l'outil de dveloppement pour l'y diter afin par exemple d'y rechercher des erreurs lors de la maintenance. Vous ne disposez alors ni des mnmoniques, ni des commentaires documentant le programme. Cette procdure n'est donc vraiment destine qu' la maintenance.

19.3.3 Edition de blocs chargs dans votre PG/PC


La possibilit d'diter des blocs dans la PG vous permet : de corriger directement un bloc dans la CPU en phase de test et de documenter le rsultat ; de charger le contenu actuel de blocs de la mmoire vive de chargement de la CPU dans votre console de programmation.

Nota

Conflits d'horodatage lors de l'dition en ligne et hors ligne


Les procdures suivantes entranent des conflits d'horodatage et doivent de ce fait tre vites. Des conflits d'horodatage se produisent l'ouverture en ligne d'un bloc lorsque
des modifications effectues en ligne n'ont pas t enregistres dans le programme utilisateur S7 hors ligne des modifications effectues hors ligne n'ont pas t charges dans la CPU.

Des conflits d'horodatage se produisent l'ouverture hors ligne d'un bloc lorsque
un bloc en ligne prsentant un conflit d'horodatage a t copi dans le programme utilisateur S7 hors ligne, puis est ouvert hors ligne.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

425

Chargement 19.3 Chargement depuis le systme cible dans la PG

Cas possibles
Il faut distinguer deux cas pour le chargement de blocs de la CPU dans la console de programmation. 1. le programme utilisateur auquel les blocs appartiennent se trouve dans la console de programmation. 2. le programme utilisateur auquel les blocs appartiennent ne se trouve pas dans la console de programmation. Cela signifie que des parties de programme qui ne peuvent pas tre charges dans la CPU ne sont pas disponibles. Il s'agit : de la table des mnmoniques et commentaires pour les oprandes, des commentaires de rseaux d'un programme LOG ou CONT, des commentaires de lignes d'un programme LIST, des types de donnes utilisateur.

19.3.3.1

Edition de blocs chargs lorsque le programme utilisateur se trouve dans votre PG/PC
Pour diter des blocs de la CPU, procdez de la manire suivante : 1. Dans SIMATIC Manager, ouvrez la fentre du projet en ligne. 2. Dans la fentre en ligne, slectionnez un dossier Blocs. La liste des blocs chargs s'affiche. 3. Vous pouvez prsent slectionner des blocs, puis les ouvrir et les diter. 4. La commande Fichier > Enregistrer vous permet de sauvegarder les modifications hors ligne dans la PG. 5. Choisissez la commande Systme cible > Charger pour charger les blocs modifis dans le systme cible.

19.3.3.2

Edition de blocs chargs lorsque le programme utilisateur ne se trouve pas dans votre PG/PC
Pour diter des blocs de la CPU, procdez de la manire suivante : 1. Dans SIMATIC Manager, cliquez sur le bouton "Partenaires accessibles" ou choisissez la commande Systme cible > Afficher les partenaires accessibles. 2. Slectionnez le partenaire (objet "MPI=...") dans la liste affiche et ouvrez le dossier Blocs pour afficher les blocs. 3. Vous pouvez alors ouvrir des blocs et, si besoin est, les diter, les surveiller ou les copier. 4. Choisissez la commande Fichier > Enregistrer sous... en indiquant, dans la bote de dialogue correspondante, le chemin d'accs dsignant l'emplacement de mmoire dsir sur la PG. , 5. Choisissez la commande Systme cible > Charger pour charger les blocs modifis dans le systme cible.

426

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.4 Effacement sur le systme cible

19.4

Effacement sur le systme cible

19.4.1 Effacement de la mmoire de chargement/travail et effacement gnral de la CPU


Avant de charger votre programme utilisateur dans le systme cible S7, nous vous recommandons d'effectuer un effacement gnral de la CPU, afin de vous assurer qu'elle ne contient plus "d'anciens" blocs.

Condition pralable l'effacement gnral


Pour qu'un effacement gnral soit possible, la CPU doit se trouver l'tat de fonctionnement "arrt" (le commutateur de mode de fonctionnement doit tre positionn sur arrt (STOP) ou encore sur marche (RUN-P), auquel cas vous devez mettre la CPU l'arrt en choisissant la commande Systme cible > Diagnostic/Paramtres > Etat de fonctionnement).

Effacement gnral de la CPU S7


Voici ce qui se droule lors de l'effacement gnral d'une CPU S7 : La CPU est remise 0. Toutes les donnes utilisateur sont effaces (les blocs et les blocs de donnes systme (SDB) l'exclusion des paramtres MPI). La CPU suspend toutes les liaisons en cours. S'il existe des donnes dans une EPROM (carte mmoire ou EPROM intgre), la CPU copie, aprs l'effacement gnral, le contenu de l'EPROM dans la zone RAM de la mmoire.

Le contenu de la mmoire tampon de diagnostic et les paramtres de l'interface MPI sont conservs.

Effacement gnral de CPU/FM M7


Voici ce qui se droule lors de l'effacement gnral de CPU/FM M7 : L'tat initial est restaur. Les SDB l'exclusion des paramtres MPI sont effacs. La CPU/le FM suspend toutes les liaisons en cours. Les programmes utilisateur sont conservs et leur excution reprend aussitt que vous commutez la CPU de STOP en RUN.

La fonction d'effacement gnral vous permet de restaurer l'tat initial de la CPU ou du FM M7 aprs une erreur majeure. Vous devez pour cela effacer les blocs de donnes systme (SDB) dans la mmoire de travail et charger ceux qui se trouvent dans la mmoire permanente. Dans certains cas, il faut effectuer en plus un dmarrage chaud du systme d'exploitation. Pour cela, vous devez effectuer un effacement gnral du M7 en actionnant le commutateur de mode de fonctionnement (position MRES). Une remise zro via le commutateur de mode de fonctionnement des CPU/FM SIMATIC M7 n'est possible que sous le systme d'exploitation RMOS32.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

427

Chargement 19.4 Effacement sur le systme cible

19.4.2 Effacement de blocs S7 sur le systme cible


Durant la phase de test du programme de la CPU, il peut s'avrer ncessaire d'effacer certains blocs dans la CPU. Les blocs sont sauvegards dans la mmoire utilisateur de la CPU soit dans l'EPROM, soit dans la RAM (en fonction de la CPU et de la procdure de chargement). Vous pouvez effacer directement les blocs chargs dans la mmoire vive. L'espace mmoire qui tait occup dans les mmoires de chargement et de travail est alors libr. Les blocs enregistrs dans l'EPROM intgre sont toujours copis dans la zone de mmoire vive aprs effacement de la CPU. Vous pouvez effacer directement ces copies dans la mmoire vive. Les blocs effacs seront alors dclars non valables dans l'EPROM jusqu'au prochain effacement gnral ou jusqu' la prochaine panne secteur, lorsque la mmoire vive n'est pas sauvegarde. En cas d'effacement gnral ou de panne secteur lorsque la mmoire vive n'est pas sauvegarde, les blocs "effacs" sont nouveau copis de l'EPROM dans la mmoire vive, o ils sont alors nouveau actifs. Les blocs enregistrs dans l'EPROM intgre (par exemple de la CPU 312) sont effacs par crasement par le nouveau contenu de la mmoire vive. Les cartes mmoire EPROM doivent tre effaces dans l'outil de dveloppement.

428

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Chargement 19.5 Compression de la mmoire utilisateur (RAM)

19.5

Compression de la mmoire utilisateur (RAM)

19.5.1 Intervalles dans la mmoire utilisateur (RAM)


Les intervalles rsultant des effacements et chargements successifs de blocs rduisent l'espace mmoire utilisable. Il importe de comprimer la mmoire utilisateur en rorganisant les blocs existants afin de crer une zone de mmoire libre d'un seul tenant. La figure ci-aprs montre schmatiquement comment les blocs de mmoire occups sont dplacs par la fonction "Compression de la mmoire".

La compression l'tat de fonctionnement "arrt" est recommande.


Seule la compression l'tat de fonctionnement "Arrt" (STOP) permet d'liminer tous les intervalles en mmoire. Si vous effectuez la compression l'tat de fonctionnement RUN-P (position du commutateur de mode de fonctionnement), les blocs en cours d'dition ne seront pas dplacs, puisqu'ils sont ouverts. La fonction de compression ne peut pas tre excute l'tat de fonctionnement RUN (position du commutateur de mode de fonctionnement) (protection en criture !).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

429

Chargement 19.5 Compression de la mmoire utilisateur (RAM)

19.5.2 Compression du contenu de la mmoire d'une CPU S7


Possibilits de compression
Vous avez deux possibilits pour comprimer la mmoire utilisateur. Si un manque de mmoire apparat dans le systme cible lors du chargement, une bote de dialogue vous signalant l'incident s'affiche. Vous pouvez comprimer la mmoire en cliquant sur le bouton correspondant dans cette bote de dialogue. En guise de mesure prventive, vous pouvez afficher l'occupation de la mmoire (commande Systme cible > Diagnostic/Paramtres > Etat du module.../page d'onglet "Mmoire"), et, ventuellement, dclencher la compression.

Procdure
1. Slectionnez le programme S7 dans la vue en ligne ou dans la fentre "Partenaires accessibles". 2. Choisissez la commande Systme cible > Diagnostic/Paramtres > Etat du module. 3. Dans la bote de dialogue suivante, choisissez l'onglet "Mmoire" Vous y trouvez le bouton de compression, si la CPU permet la mise en uvre de cette fonction.

430

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

20
20.1

Test avec des tables de variables


Introduction au test avec des tables de variables
Les tables de variables permettent d'enregistrer des environnements de test diffrents et donc de reproduire sans peine les tests et les observations au cours d'une mise en service ou des fins de maintenance. Il n'y a pas de limite au nombre de tables de variables enregistres. Pour effectuer le test avec des tables de variables, vous disposez des fonctions suivantes : Visualisation de variables Cette fonction vous permet d'afficher sur la PG ou le PC les valeurs en cours de certaines variables d'un programme utilisateur ou d'une CPU. Forage de variables Cette fonction vous permet d'attribuer des valeurs fixes certaines variables d'un programme utilisateur ou d'une CPU. Le test avec l'tat du programme permet galement le forage unique et immdiat. Dbloquer sorties priphriques et Activer valeurs de forage Ces deux fonctions vous permettent d'attribuer des valeurs fixes certaines sorties de priphrie d'une CPU l'tat d'arrt. Forage permanent de variables Cette fonction vous permet d'attribuer certaines variables d'un programme utilisateur ou d'une CPU, une valeur fixe que le programme utilisateur ne peut pas craser.

Vous pouvez forcer et visualiser les variables suivantes : entres, sorties, mmentos, temporisations et compteurs contenus de blocs de donnes, priphrie.

Vous indiquez les variables forcer ou visualiser en tablissant une table de variables. Vous dterminez quel point et quelle frquence visualiser ou forcer les variables en dfinissant un point de dclenchement et une condition de dclenchement.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

431

Test avec des tables de variables 20.2 Marche suivre pour la visualisation et le forage avec des tables de variables

20.2

Marche suivre pour la visualisation et le forage avec des tables de variables


Pour excuter les fonctions de visualisation et de forage, procdez de la manire suivante : 1. Crez une nouvelle table de variables ou ouvrez-en une existante. 2. Editez ou vrifiez la table de variables. 3. Etablissez une liaison en ligne entre la table de variables en cours et la CPU de votre choix l'aide de la commande Systme cible > Etablir la liaison .... 4. Choisissez, avec la commande Variable > Dclenchement, un point de dclenchement appropri et dfinissez la condition de dclenchement. 5. Les commandes Variable > Visualiser et Variable > Forcer activent et dsactivent les fonctions correspondantes. 6. Sauvegardez la table de variables acheve en choisissant la commande Table > Enregistrer ou Table > Enregistrer sous, afin de pouvoir la rappeler tout moment.

432

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.3 Edition et enregistrement de tables de variables

20.3

Edition et enregistrement de tables de variables

20.3.1 Cration et ouverture d'une table de variables


Pour visualiser ou forcer des variables, il faut d'abord crer une table de variables (VAT) et y entrer les variables concernes. Pour crer une table de variables, vous disposez des possibilits suivantes :

Dans SIMATIC Manager :


Slectionnez le dossier Blocs et choisissez la commande Insertion > Bloc S7 > Table des variables. Vous pouvez donner un nom la table dans la bote de dialogue qui apparat alors (champ de saisie "Nom symbolique"). Ce nom s'affichera dans la fentre de projet. Pour ouvrir la table de variables, effectuez un double clic sur l'objet. Slectionnez une liaison dans la liste des partenaires accessibles ou un programme S7/M7 dans la vue en ligne. Vous pouvez alors crer une table de variables sans nom l'aide de la commande Systme cible > Visualiser/forcer des variables.

Dans la fentre "Visualisation et forage de variables" :


Vous pouvez crer, avec la commande Table > Nouvelle, une nouvelle table qui n'est encore affecte aucun programme S7 ou M7. Vous ouvrez les tables existantes avec la commande Table > Ouvrir. Vous pouvez vous servir des boutons de la barre d'outils pour crer ou ouvrir une table de variables.

Une fois cre, vous pouvez sauvegarder, imprimer et rutiliser la table des variables pour la visualisation et le forage.

20.3.1.1

Marche suivre pour la cration et l'ouverture d'une table de variables

Premire mthode, dans SIMATIC Manager


1. Slectionnez la vue du projet hors ligne. 2. Ouvrez le dossier Blocs, dans lequel vous souhaitez enregistrer la table des variables. 3. Choisissez la commande Insertion > Bloc S7 > Table des variables. 4. Dans la bote de dialogue affiche, donnez un nom la table des variables. 5. Ouvrez la table des variables, par exemple par double clic.

Deuxime mthode, dans SIMATIC Manager


Choisissez la commande Systme cible > Visualiser/forcer des variables dans une fentre en ligne (fentre "Vue en ligne" du projet ou "Partenaires accessibles"). La fentre de visualisation et de forage de variables s'ouvre alors.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

433

Test avec des tables de variables 20.3 Edition et enregistrement de tables de variables

Troisime mthode, dans "Visualisation/forage de variables"


Crez une nouvelle table de variables en choisissant la commande Table > Nouvelle dans la fentre affiche.

434

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.3 Edition et enregistrement de tables de variables

20.3.2 Copie ou dplacement de tables de variables


Vous pouvez copier ou dplacer des tables de variables dans le dossier Blocs d'un programme S7/M7. Ce faisant, tenez compte des points suivants : Les mnmoniques existant dj dans la table des mnmoniques du programme cible y sont mis jour. Lorsque vous dplacez une table de variables, les mnmoniques correspondants figurant dans la table des mnmoniques du programme source sont eux aussi dplacs et crits dans la table des mnmoniques du programme cible. Lorsque vous effacez des tables de variables du dossier Blocs, les mnmoniques correspondants sont effacs eux aussi de la table des mnmoniques du programme S7/M7. Si le programme cible comporte dj une table des variables portant le mme nom, vous aurez la possibilit de la renommer lors de la copie (par dfaut, un numro sera ajout au nom existant).

Nota Tenez compte du fait que, lors de la copie ou du dplacement de tables de variables, le nom symbolique est prioritaire, c'est--dire que le numro est attribu automatiquement. Exemple 1 : Vous dsirez copier ou dplacer la table de variables de nom symbolique "JEAN" et de nom "VAT1" (non modifiable) dans un autre projet qui contient galement une table de variables de nom symbolique "JEAN". Le systme vous demande si vous dsirez craser la table de variables existante ou attribuer un nouveau nom. Si vous attribuez un nouveau nom (symbolique), le nom non modifiable de la nouvelle table de variables est adapt. Exemple 2 : Vous dsirez copier ou dplacer la table de variables de nom symbolique "JEAN" et de nom "VAT1" (non modifiable) dans un autre projet qui ne contient pas de table de variables de nom symbolique "JEAN". Lors de l'insertion de la nouvelle table de variables, le nom non modifiable de la nouvelle table de variables est adapt.

20.3.3 Enregistrement d'une table de variables


Vous pouvez rutiliser les tables de variables enregistres pour visualiser ou forcer les variables lors d'un nouveau test de votre programme. 1. Enregistrez la table de variables en choisissant la commande Table > Enregistrer. 2. Si vous venez de crer la table des variables, vous devez maintenant lui attribuer un nom, par exemple "Test_prog1". Lorsque vous enregistrez une table de variables, tous les paramtres actuels et le format de la table le sont galement, c'est--dire aussi les paramtres dfinis avec la commande Dclenchement.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

435

Test avec des tables de variables 20.4 Saisie de variables dans des tables de variables

20.4

Saisie de variables dans des tables de variables

20.4.1 Insertion d'oprandes ou de mnmoniques dans une table de variables


Dterminez les variables dont vous souhaitez visualiser l'tat ou que vous dsirez forcer, et entrez-les dans la table. Pour ce faire, procdez de "l'extrieur" vers "l'intrieur", c'est--dire choisissez d'abord les entres, puis les variables influences par les entres ou influenant les sorties et, pour finir, les sorties. Par exemple, si vous dsirez visualiser l'tat du bit d'entre 1.0, du mot de mmento 5 et de l'octet de sortie 0, entrez les valeurs suivantes dans la colonne de l'oprande: Exemple E 1.0 MW 5 AB 0

Exemple de table de variables complte


La figure suivante montre une table des variables avec les colonnes suivantes : Oprande, Mnmonique, Format d'affichage, Valeur d'tat et Valeur de forage.

436

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.4 Saisie de variables dans des tables de variables

Remarques sur l'insertion de mnmoniques


Vous indiquez la variable forcer par son oprande (adresse absolue) ou son mnmonique. Vous pouvez saisir des oprandes et des mnmoniques aussi bien dans la colonne "Oprande" que dans la colonne "Mnmonique". L'entre est automatiquement reporte dans la colonne qui convient. Si un tel mnmonique est dfini dans la table des mnmoniques, l'entre correspondante de la colonne de mnmonique ou d'oprande est automatiquement complte. Vous ne pouvez inscrire que des mnmoniques dj dfinis dans la table des mnmoniques. Vous devez saisir les mnmoniques exactement comme ils ont t dfinis dans la table des mnmoniques. Ecrivez entre guillemets les mnmoniques contenant des caractres spciaux (par exemple, "Moteur.Arrt", " Moteur+Arrt", " Moteur- Arrt"). Utilisez la commande Outils > Table des mnmoniques pour dfinir de nouveaux mnmoniques dans la table des mnmoniques. Vous pouvez galement copier des mnmoniques de la table des mnmoniques, puis les insrer dans une table de variables.

Vrification de la syntaxe
Lorsque vous inscrivez des variables dans la table, une vrification de la syntaxe est excute avant l'abandon de la ligne. Les entres errones sont marques en rouge. Lorsque vous placez le curseur sur une ligne signale en rouge, une info-bulle prcise la cause de l'erreur. La touche F1 vous donne alors des indications pour remdier cette erreur.

Nota Si vous prfrez diter la table des variables en utilisant le clavier (sans souris), nous vous recommandons d'activer l'option "Infos-bulles pour une utilisation du clavier". Le cas chant, modifiez ce paramtrage dans la table des variables en choisissant la commande de menu Outils > Paramtres, onglet "Gnral".

Taille maximale
Une table de variables peut comprendre au maximum 255 caractres par ligne. Il n'est pas possible d'obtenir une seconde ligne par retour chariot. La longueur d'une table de variables est fixe 1024 lignes. La taille maximale de la table est alors atteinte.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

437

Test avec des tables de variables 20.4 Saisie de variables dans des tables de variables

20.4.2 Insertion d'une plage d'oprandes continue dans une table de variables
1. Ouvrez une table de variables. 2. Positionnez le curseur dans la ligne la suite de laquelle vous souhaitez insrer la plage doprandes. 3. Choisissez la commande Insertion > Plage : la bote de dialogue "Insrer une plage doprandes" saffiche. 4. Dans le champ "Oprande initial", tapez une adresse doprande comme adresse de dbut de plage. 5. Dans le champ "Nombre", tapez le nombre de lignes insrer. 6. Choisissez le format d'affichage souhait dans la liste affiche. 7. Cliquez sur OK. La plage doprandes est alors insre dans la table des variables.

20.4.3 Insertion de valeurs de forage


Mise en commentaire
Si vous souhaitez mettre en commentaire la "valeur de forage" d'une variable, choisissez la commande Variable > Mise en commentaire. L'indicatif de commentaire "//", plac devant la valeur de forage de la variable indique sa mise en commentaire. Au lieu d'appeler la commande, vous pouvez galement saisir l'indicatif de commentaire "//" devant la "valeur de forage". Pour annuler la mise en commentaire de la "valeur de forage", choisissez nouveau la commande Variable > Mise en commentaire ou supprimez l'indicatif de commentaire.

438

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.4 Saisie de variables dans des tables de variables

20.4.4 Limites suprieures pour la saisie de temporisations


Pour la saisie des temporisations, veuillez respecter les limites suprieures suivantes : W#16#3999 (valeur maximale en format DCB)

Exemples :
Oprande T MW MW MW 1 4 4 6 Format d'affichage DUREE SIMATIC DUREE SIMATIC HEXA HEXA Frappe 137 137 137 157 Valeur de forage affiche S5TIME#130MS S5TIME#890MS W#16#0089 W#16#009D Signification Conversion en millisecondes Reprsentation en format DCB possible Reprsentation en format DCB possible Reprsentation en format DCB impossible ; aussi ne pouvezvous pas slectionner le format d'affichage DUREE SIMATIC.

Nota
Vous pouvez saisir les temporisations avec une prcision d'une milliseconde, mais la valeur entre est corrige en fonction d'une base de temps interne. La grille de temps dpend de la valeur entre (137 donne 130ms, les 7ms ayant t arrondies). Les valeurs de forage d'oprandes de type de donnes WORD, par exemple EW1, sont converties en format DCB. Mais chaque profil binaire n'est pas un nombre DCB correct ! Quand, pour un oprande de type WORD, la valeur saisie ne peut tre reprsente comme DUREE SIMATIC, elle est reprsente automatiquement dans le format par dfaut, ici : HEXA ; voir Choisir format d'affichage, Format par dfaut (menu Affichage) afin d'tre affiche.

Format DCB pour les variables en format DUREE SIMATIC


Les valeurs de variables en format DUREE SIMATIC sont saisies en format DCB. Les 16 bits ont la signification suivante. |00xx|cccc|dddd|uuuu| Bits15 et 14 sont toujours 0. Bits 13 et 12 (indiqus par xx) dterminent le multiplicateur pour les bits 0 11 : 00 => multiplicateur 10 millisecondes 01 => multiplicateur 100 millisecondes 10 => multiplicateur 1 seconde _ 11 => multiplicateur 10 secondes Bits 11 8 centaines (cccc) Bits 7 4 dizaines (dddd) Bits 3 0 units (uuuu)

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

439

Test avec des tables de variables 20.4 Saisie de variables dans des tables de variables

20.4.5 Limites suprieures pour la saisie de compteurs


Pour la saisie des compteurs, veuillez respecter les limites suprieures suivantes : valeur limite pour compteur : C#999 W#16#0999 (valeur maximale en format DCB)

Exemples :
Oprande Z MW MW MW 1 4 4 6 Format d'affichage COMPTEUR COMPTEUR HEXA HEXA Frappe 137 137 137 157 Valeur de forage affiche C#137 C#89 W#16#0089 W#16#009D Signification Conversion Reprsentation en format DCB possible Reprsentation en format DCB possible Reprsentation en format DCB impossible ; aussi ne pouvezvous pas slectionner le format d'affichage COMPTEUR.

Nota
Si vous entrez un nombre dcimal pour un compteur sans caractriser la valeur par C#, elle sera convertie automatiquement en format DCB (137 donne C#137). Les valeurs de forage d'oprandes de type de donnes WORD, par exemple EW1, sont converties en format DCB. Mais chaque profil binaire n'est pas un nombre DCB correct ! Quand, pour un oprande de type WORD, la valeur saisie ne peut tre reprsente comme COMPTEUR, elle est reprsente automatiquement dans le format par dfaut, ici : HEXA ; voir Choisir format d'affichage, Format par dfaut (menu Affichage) afin d'tre affiche.

440

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.4 Saisie de variables dans des tables de variables

20.4.6 Insertion de lignes de commentaire


Les lignes de commentaire sont introduites par le signe //. Si vous souhaitez mettre en commentaire une ou plusieurs lignes de la tables des variables choisissez la commande Edition > Dsactiver ligne ou cliquez sur le bouton correspondant dans la barre d'outils.

20.4.7 Exemples
20.4.7.1 Exemple de saisie d'oprandes dans une table de variables
Oprande admissible Entre | Sortie | Mmento Entre | Sortie | Mmento Entre | Sortie | Mmento Entre | Sortie | Mmento Priphrie (Entre | Sortie ) Priphrie (Entre | Sortie ) Priphrie (Entre | Sortie ) Temporisations Compteurs Bloc de donnes Bloc de donnes Bloc de donnes Bloc de donnes Type de donnes BOOL BYTE WORD DWORD BYTE WORD DWORD TIMER COUNTER BOOL BYTE WORD DWORD Exemple (abrviations allemandes) E 1.0 | A 1.7 | M 10.1 EB 1 | AB 10 | MB 100 EW 1 | AW 10 | MW 100 ED 1 | AD 10 | MD 100 PEB 0 | PAB 1 PEW 0 | PAW 1 PED 0 | PAD 1 T1 Z1 DB1.DBX 1.0 DB1.DBB 1 DB1.DBW 1 DB1.DBD 1

Nota La saisie de "DB0..." n'est pas autorise en raison de son utilisation interne.

Dans la fentre des valeurs de forage


Avec les modules S7-300, vous ne pouvez forcer que les entres, sorties et priphries (sorties). Avec les modules S7-400, vous ne pouvez forcer que les entres, sorties, mmentos et priphries (entres/sorties).

20.4.7.2

Exemple de saisie dune plage doprandes continue


Ouvrez une table de variables et choisissez la commande Insertion > Plage pour afficher la bote de dialogue "Insrer une plage doprandes".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

441

Test avec des tables de variables 20.4 Saisie de variables dans des tables de variables

Durant la saisie dans la bote de dialogue, les lignes suivantes seront ajoutes la table de variables pour des mmentos (M) : Oprande initial : M 3.0 Nombre : 10 Format d'affichage : BIN
Oprande M 3.0 M 3.1 M 3.2 M 3.3 M 3.4 M 3.5 M 3.6 M 3.7 M 4.0 M 4.1 Format d'affichage BIN BIN BIN BIN BIN BIN BIN BIN BIN BIN

Notez comme dans le prsent exemple, la dsignation change aprs la huitime entre dans la colonne "Oprande".

20.4.7.3

Exemples de saisie de valeurs de forage/forage permanent

Oprandes de type bit


Oprandes de type bit possibles E1.0 M1.7 A10.7 DB1.DBX1.1 E1.1 M1.6 Valeurs de forage/forage permanent autorises true false 0 1 2#0 2#1

Oprandes de type octet


Oprandes de type octet possibles EB 1 MB 12 MB 14 Valeurs de forage/forage permanent autorises 2#00110011 b#16#1F 1F

442

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.4 Saisie de variables dans des tables de variables

Oprandes de type octet possibles AB 10 DB1.DBB 1 PAB 2

Valeurs de forage/forage permanent autorises 'a' 10 12

Oprandes de type mot


Oprandes de type mot possibles EW 1 MW 12 MW 14 AW 10 DB1.DBW 1 PAW 2 MW 3 MW 5 MW 7 MW 9 MW 11 Valeurs de forage/forage permanent autorises 2#0011001100110011 w#16#ABCD ABCD b#(12,34) 'ab' 12345 12345 S5t#12s340ms 0.3s ou 0,3s C#123 d#1990-12-31

Oprandes de type double mot


Oprandes de type double mot possibles ED 1 MD 0 MD 4 AD 10 AD 12 DB1.DBD 1 PAD 2 MD 8 MD 12 MD 16 MD 20 MD 24 MD 28 MD 32 Valeurs de forage/forage permanent autorises 2#00110011001100110011001100110011 1.23e4 1.2 dw#16#abcdef10 ABCDEF10 b#(12,34,56,78) 'abcd' L# -12 L#12 123456789 123456789 T#12s345ms Tod#1:2:34.567 p#e0.0

Temporisations
Oprandes de type temporisation possibles
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Valeurs de forage/ forage permanent autorises

Signification

443

Test avec des tables de variables 20.5 Etablissement d'une liaison la CPU

Oprandes de type temporisation possibles T1 T 12 T 14 T 16 T 18 T 20

Valeurs de forage/ forage permanent autorises 0 20 12345 s5t#12s340ms 1.3 1.3s

Signification Valeur de temps en millisecondes (ms) Valeur de temps en millisecondes (ms) Valeur de temps en millisecondes (ms) Valeur de temps gale 12s 340ms Valeur de temps gale 1s 300 ms Valeur de temps gale 1s 300 ms

Le forage d'une temporisation n'influe que sur la valeur, pas sur l'tat. Ainsi, il est possible de forcer la temporisation T1 la valeur 0, mais le rsultat logique pour U T1 n'est pas modifi. Les chanes de caractres "s5t" et "s5time" peuvent tre crites aussi bien en minuscules quen majuscules.

Compteurs
Oprandes de type compteur possibles Z1 Z 14 Z 16 Valeurs de forage/forage permanent autorises 0 20 c#123

Le forage d'un compteur n'influe que sur la valeur, pas sur l'tat. Ainsi, il est possible de forcer le compteur Z1 la valeur 0, mais le rsultat logique pour U Z1 n'est pas modifi.

20.5

Etablissement d'une liaison la CPU


Pour visualiser ou forcer les variables que vous avez dfinies dans la table de variables (VAT) en vigueur, vous devez tablir une liaison la CPU correspondante. Vous pouvez tablir une liaison une CPU diffrente pour chaque table de variables.

Affichage de la liaison en ligne


En prsence d'une liaison en ligne, la barre de titre de la fentre de la table des variables affiche "En ligne". En fonction de la CPU, la barre d'tat affiche les tats de fonctionnement "Marche", "Arrt", Dconnecte" ou "Connecte".

Etablissement d'une liaison en ligne la CPU


S'il n'existe pas de liaison en ligne avec la CPU de votre choix, vous en dfinissez une l'aide de la commande Systme cible > Etablir la liaison >... afin de pouvoir visualiser ou forcer les variables.

Suspension d'une liaison en ligne la CPU


La commande Systme cible > Suspendre la liaison permet d'interrompre la liaison entre table de variables et CPU.

444

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.5 Etablissement d'une liaison la CPU

Nota Si vous avez cr une table de variables en possdant pas de nom l'aide de la commande Table > Nouvelle, vous pouvez tablir une liaison la dernire CPU configure si elle est dfinie.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

445

Test avec des tables de variables 20.6 Visualisation de variables

20.6

Visualisation de variables

20.6.1 Introduction la visualisation de variables


Vous disposez des possibilits suivantes pour visualiser des variables : Activez la fonction de visualisation avec la commande Variable > Visualiser. Les valeurs des variables slectionnes sont alors affiches dans la table des variables en fonction du point et de la condition de dclenchement dfinis. Si vous avez choisi la condition de dclenchement "Cyclique", vous pouvez nouveau dsactiver la fonction de visualisation avec la commande Variable > Visualiser. Actualisez les valeurs des variables slectionnes de manire unique et immdiatement avec la commande Variable > Actualiser les valeurs d'tat. Les valeurs actuelles des variables slectionnes sont alors affiches dans la table des variables.

Interruption de la visualisation par la touche ECHAP


La fonction "Visualisation" tant en cours d'excution, une pression de la touche ECHAP y met fin sans demande de confirmation.

20.6.2 Dfinition du dclenchement pour la visualisation de variables


Pour la visualisation, vous pouvez afficher la PG les valeurs en cours de certaines variables d'un programme utilisateur, en un point dtermin du programme, le point de dclenchement. En choisissant un point de dclenchement, vous dfinissez quel instant les valeurs d'tat des variables vont tre affiches. La commande Variable > Dclenchement vous permet de dfinir un point et une condition de dclenchement.
Dclenchement Point de dclenchement Possibilits de paramtrage Dbut de cycle Fin de cycle Passage de "Marche" "Arrt" Condition de dclenchement unique cyclique

446

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.6 Visualisation de variables

Point de dclenchement
La figure suivante montre les diffrents points de dclenchement.

Pour afficher la valeur force dans la colonne "Valeur d'tat", dfinissez comme point de dclenchement de la visualisation "Dbut de cycle" et comme point de dclenchement du forage "Fin de cycle".

Dclenchement immdiat
Vous pouvez actualiser les valeurs de variables slectionnes en choisissant la commande Variable > Actualiser les valeurs d'tat. Cette tche est excute une seule fois et le plus rapidement possible, sans relation avec un endroit prcis dans le programme utilisateur. Ces fonctions s'utilisent principalement l'tat d'"Arrt" (STOP) pour la visualisation et le forage.

Condition de dclenchement
Le tableau suivant montre l'effet de la condition de dclenchement slectionne sur la visualisation de variables :
Condition de dclenchement "Unique" Visualiser Actualisation unique des variables dpend du point de dclenchement Condition de dclenchement "Cyclique" Visualisation avec dclenchement dfini Lorsque vous testez un bloc, vous pouvez suivre avec prcision la poursuite du traitement.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

447

Test avec des tables de variables 20.7 Forage de variables

20.7

Forage de variables
Diffrences entre forage de variables et forage permanent de variables

20.7.1 Introduction au forage de variables


Vous disposez des possibilits suivantes pour forcer des variables : Activez la fonction de forage avec la commande Variable > Forcer. Le programme utilisateur affecte aux variables slectionnes les valeurs de forage figurant dans la table des variables, en fonction du point et de la condition de dclenchement dfinis. Si vous avez choisi la condition de dclenchement "Cyclique", vous pouvez nouveau dsactiver la fonction de forage avec la commande Variable > Forcer. Actualisez les valeurs des variables slectionnes de manire unique et immdiatement avec la commande Variable > Actualiser valeurs d'tat.

Des possibilits supplmentaires vous sont offertes avec les fonctions "Forage permanent" et "Dbloquer sorties priphriques".

Important lors du forage :


Le forage s'applique seulement aux oprandes qui taient visibles dans la table des variables au dbut du forage. Si la zone visible de la table de variables se trouve rduite aprs le dbut du forage, il peut arriver que des oprandes devenus invisibles soient forcs. Si la zone visible de la table de variables se trouve agrandie, il peut arriver que des oprandes devenus visibles ne soient pas forcs. Il n'est pas possible d'annuler le forage (par exemple avec la commande Edition > Annuler).

Danger Modifier les valeurs des variables alors que l'installation est en marche peut, en cas de dfaut de fonctionnement ou d'erreurs dans le programme, entraner des blessures corporelles graves et des dgts matriels importants. Assurez-vous qu'aucun tat dangereux ne peut apparatre avant d'excuter la fonction "Forage".

Interruption du forage par la touche ECHAP


La fonction "Forage" tant en cours d'excution, une pression de la touche ECHAP y met fin sans demande de confirmation.

448

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.7 Forage de variables

20.7.2 Dfinition du dclenchement pour le forage de variables


Vous pouvez affecter de manire unique ou cyclique des valeurs fixes des variables d'un programme utilisateur en un point dfini dans l'excution du programme (point de dclenchement). En choisissant un point de dclenchement, vous dfinissez quel instant les valeurs de forage seront affectes aux variables. La commande Variable > Dclenchement vous permet de dfinir le point et une condition de dclenchement.
Dclenchement Point de dclenchement Possibilits de paramtrage Dbut de cycle Fin de cycle Passage de "Marche" "Arrt" Condition de dclenchement unique cyclique

Point de dclenchement
La figure suivante illustre la position des points de dclenchement.

Le choix du point de dclenchement a les effets suivants : Le forage des entres n'a de sens que si le point de dclenchement"Dbut de cycle" a t choisi, les entres tant sinon crases juste aprs le forage en raison de l'actualisation de la mmoire image des entres au dbut de l'excution de l'OB cyclique (OB1). Les forage des sorties n'a de sens que si le point de dclenchement "Fin de cycle" a t choisi, la mmoire image des sorties tant sinon crase par le programme utilisateur.

Pour afficher la valeur force dans la colonne "Valeur d'tat", dfinissez comme point de dclenchement de la visualisation "Dbut de cycle" et comme point de dclenchement du forage "Fin de cycle".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

449

Test avec des tables de variables 20.7 Forage de variables

Lors du forage de variables, tenez compte des indications suivantes en ce qui concerne les points de dclenchement : Si vous avez choisi la condition de dclenchement "Unique", vous obtenez un message lorsque les variables slectionnes ne peuvent pas tre forces. Si la condition de dclenchement est "Cyclique", vous n'obtenez pas de message.

Dclenchement immdiat
Vous pouvez forcer les valeurs de variables slectionnes en choisissant la commande Variable > Activer valeurs de forage. Cette tche est excute une seule fois et le plus rapidement possible, sans relation avec un endroit prcis dans le programme utilisateur. Cette fonction s'utilise principalement l'tat d'"Arrt" (STOP) pour le forage.

Condition de dclenchement
Le tableau suivant montre l'effet de la condition de dclenchement slectionne sur le forage de variables :
Condition de dclenchement "Unique" Forcer des variables Activation unique (forage de variables) Vous pouvez affecter des valeurs des variables une fois en fonction du point de dclenchement. Condition de dclenchement "Cyclique" Forage avec dclenchement dfini Le forage de variables des valeurs fixes permet de simuler des situations prcises pour votre programme utilisateur et de tester ainsi les fonctions programmes.

450

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.8 Forage permanent de variables

20.8

Forage permanent de variables

20.8.1 Mesures de scurit pour le forage permanent de variables

Vous devez viter des lsions corporelles ou un dommage matriel !


Notez bien qu'une erreur de manipulation de la fonction "Forage permanent" risque de mettre en danger la vie ou la sant des oprateurs, d'endommager la machine ou l'ensemble de l'installation.

Avertissement
Avant de lancer la fonction de forage permanent, assurez-vous que personne d'autre ne l'excute simultanment sur la mme CPU. Seule la commande Variable > Annuler forage permanent peut effacer une tche de forage permanent ou y mettre fin. Les valeurs de forage permanent ne sont pas effaces par la fermeture de la fentre qui les affiche ou par celle de l'application "Visualisation et forage de variables". La commande Edition > Annuler ne permet pas d'annuler le forage permanent. Renseignez-vous sur les diffrences entre forage de variables et forage permanent de variables. Aucune des commandes du menu "Variable" concernant le forage permanent n'est disponible quand une CPU n'accepte pas la fonction de forage permanent.

Tous les modules de sorties faisant l'objet d'un forage permanent indiquent leur valeur de forage permanent si vous annulez le blocage des sorties avec la commande Variable > Dbloquer sorties priphriques.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

451

Test avec des tables de variables 20.8 Forage permanent de variables

20.8.2 Introduction au forage permanent de variables


Vous pouvez affecter des valeurs fixes des variables individuelles d'un programme utilisateur afin qu'elles ne puissent ni tre modifies ni tre crases, mme par le programme utilisateur excut dans la CPU. Il faut videmment que la CPU possde cette fonction (comme, par exemple, la CPU S7-400). Le forage permanent de variables des valeurs fixes permet de simuler des situations prcises pour votre programme utilisateur et de tester ainsi les fonctions programmes.

Fentre des valeurs de forage permanent


Les commandes de forage permanent ne sont disponibles qu'une fois la fentre des valeurs de forage permanent ouverte. Pour afficher cette fentre, choisissez la commande Variable > Afficher valeurs de forage permanent. Vous n'tes autoris ouvrir qu'une seule fentre de valeurs de forage permanent par CPU. Les variables y sont affiches avec leurs valeurs pour la tche active de forage permanent.

Exemple de fentre des valeurs de forage permanent

La barre du titre mentionne le nom de la liaison en ligne actuelle. La barre d'tat indique le moment (date et heure) auquel la tche de forage permanent a t lue dans la CPU. La fentre est vide si aucune tche de forage permanent n'est active. Les diffrents types d'affichage de variables dans cette fentre ont les significations suivantes :
Affichage Affichage gras : Affichage normal : Affichage estomp : Signification variables ayant dj reu une valeur fixe dans la CPU variables en cours d'dition variables d'un module inexistant ou non enfich ou variables avec erreur d'adressage, un message d'erreur s'affichera.

452

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec des tables de variables 20.8 Forage permanent de variables

Reprise d'oprandes forables de la table des variables


Lorsque vous souhaitez reprendre des variables d'une table des variables dans la fentre des valeurs de forage permanent, slectionnez la table, puis les variables souhaites. Ouvrez ensuite la fentre des valeurs de forage permanent en choisissant la commande de menu Variable > Valeurs de forage permanent. Les variables pouvant tre forces de manire permanente par le module sont reprises dans la fentre des valeurs de forage permanent.

Reprise de la tche de forage permanent de la CPU ou cration d'une nouvelle tche de forage permanent
Un autre message s'affiche lorsque la fentre des valeurs de forage permanent est ouverte et active : Si vous confirmez, les modifications dans la fentre des valeurs de forage permanent sont remplaces par la tche de forage permanent se trouvant dans la CPU. La commande Edition > Annuler vous permet de rtablir le contenu prcdent de la fentre. Si vous annulez, la fentre des valeurs de forage permanent conserve son contenu actuel. Vous pouvez ensuite enregistrer le contenu de la fentre en tant que table de variables avec la commande Table > Enregistrer sous ou bien choisir la commande Variable >Forage permanent : ainsi, le contenu en cours de la fentre des valeurs de forage permanent est crit dans la CPU comme nouvelle tche de forage permanent.

La visualisation et le forage de variables ne sont possibles que dans la tables des variables, mais pas dans la fentre "Valeurs de forage permanent".

Suppression de valeurs de forage permanent


La commande de menu Variable > Afficher valeurs forage permanent ouvre la fentre des valeurs de forage permanent. Vous pouvez ensuite choisir la commande de menu Variable > Annuler forage permanent pour supprimer les valeurs de forage permanent dans la CPU slectionne.

Enregistrement d'une fentre de valeurs de forage permanent


Vous pouvez mmoriser le contenu dune fentre de valeurs de forage permanent dans une table de variables. La commande Insertion > Table de variables permet dinsrer de nouveau le contenu mmoris dans la fentre des valeurs de forage permanent.

Remarques sur les mnmoniques dans la fentre "Valeurs de forage"


Les mnmoniques de la dernire fentre active sont repris, except lorsque vous appelez "Visualisation et forage de variables" partir d'une autre application qui ne dispose pas de mnmoniques. La colonne "Mnmonique" ne figure pas dans la table si vous ne pouvez pas saisir de mnmoniques. Dans ce cas, la commande Outils > Table des mnmoniques n'est pas non plus disponible.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

453

Test avec des tables de variables 20.8 Forage permanent de variables

20.8.3 Diffrences entre forage de variables et forage permanent de variables


Le tableau suivant rsume les diffrences entre forage et forage permanent.
Caractristique / fonction Forage permanent avec S7-400 (incl. CPU 318-2DP) oui oui oui oui oui oui oui Forage permanent avec S7-300 (sans CPU 318-2DP) oui oui oui oui oui Forage

Mmentos (M) Temporisations et compteurs (T, Z) Blocs de donnes (DB) Entres de priphrie (PEB, PEW, PED) Sorties de priphrie (PAB, PAW,PAD) Entres et sorties (E, A) Le programme utilisateur peut craser les valeurs de forage/forage perm. Le remplacement de la valeur de forage permanent prend effet sans interruption Les variables conservent leurs valeurs aprs la fermeture de l'application Les variables conservent leurs valeurs une fois la liaison la CPU suspendue Erreur d'adressage autorise : par ex. : EW1 valeur de forage/forage permanent : 1 EW1 valeur de forage/forage permanent : 0 Dfinition du dclenchement

oui oui oui oui oui oui La dernire prend effet

Toujours dclenchement immdiat

Toujours dclenchement immdiat S'applique toutes les valeurs de forage permanent

Unique ou cyclique oui

La fonction ne s'applique qu'aux variables figurant S'applique toutes dans la zone visible de la fentre active les valeurs de forage permanent

Nota
Avec la fonction "Dblocage des sorties de priphrie", les valeurs de forage permanent pour les sorties de priphrie concernes prennent effet aux modules correspondants, mais pas les valeurs de forage pour les sorties de priphrie forces de manire cyclique. En cas de forage permanent, la variable possde toujours la valeur de forage permanent. Cette valeur est lue dans le programme utilisateur chaque accs en lecture. Tous les accs en criture sont inefficaces. En cas de forage cyclique, les accs en criture du programme sont efficaces et le restent jusqu'au point de dclenchement suivant.

454

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

21

Test avec la visualisation d'tat du programme


Vous pouvez tester votre programme en affichant, pour chaque instruction, l'tat du programme (RLG, bit d'tat) ou le contenu des registres correspondants. Vous slectionner les informations afficher dans la page d'onglet "LIST" de la bote de dialogue "Paramtres". Pour ouvrir cette bote de dialogue, choisissez la commande Outils > Paramtres dans la fentre "CONT/LOG/LIST" : Programmation de blocs".

Attention Si vous effectuez le test d'une installation en marche, d'ventuels dfauts de fonctionnement ou erreurs de programmation risquent d'occasionner des dommages matriels et personnels graves ! Avant d'excuter une fonction, assurez-vous qu'aucune situation dangereuse ne peut se produire !

Conditions pralables
Pour pouvoir afficher l'tat du programme, il faut que les conditions suivantes soient remplies : Vous avez enregistr le bloc sans erreurs, puis l'avez charg dans la CPU. La CPU est en marche, le programme utilisateur s'excute.

Marche suivre de principe pour la visualisation de l'tat du programme :


Il est fortement recommand de ne pas appeler et tester immdiatement le programme complet, mais d'appeler et tester les blocs les uns aprs les autres. Ce faisant, il faut commencer par les blocs de niveau infrieur, c'est--dire les blocs au dernier niveau d'imbrication de la hirarchie d'appel. Vous appelez, par exemple, ces blocs dans l'OB1 et crez l'environnement tester pour ces blocs par visualisation et forage des variables.

Pour effectuer un test en utilisant la fonction de visualisation d'tat du programme, pour dfinir des points d'arrt et pour excuter le programme en mode pas pas, vous devez slectionner le mode de fonctionnement test (cf. commande Test > Mode de fonctionnement). En mode processus, ces fonctions de test ne sont pas possibles.
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

455

Test avec la visualisation d'tat du programme 21.1 Affichage dans la visualisation d'tat de programme

21.1

Affichage dans la visualisation d'tat de programme


L'affichage de la visualisation d'tat de programme est actualis cycliquement. Il dbute avec le rseau slectionn.

Valeurs par dfaut


Etat satisfait : lignes continues en vert Etat non satisfait : lignes pointilles en bleu Etat inconnu : lignes continues en noir

Vous pouvez modifier ces valeurs pour le type et la couleur des lignes dans la page d'onglet "CONT/LOG" que vous affichez via la commande Outils > Paramtres.

Etat des lments


L'tat d'un contact : est satisfait lorsque l'oprande a la valeur "1" ; n'est pas satisfait lorsque l'oprande a la valeur "0" ; est inconnu lorsque la valeur de l'oprande est inconnue.

L'tat d'lments avec sortie de validation (ENO) correspond l'tat d'un contact avec la valeur de la sortie ENO comme oprande. L'tat d'lments avec sortie Q correspond l'tat d'un contact avec la valeur de l'oprande. L'tat pour des oprations CALL est satisfait lorsque le bit de rsultat binaire est 1 aprs l'appel. L'tat d'une opration de saut est satisfait lorsque le saut est excut, c'est--dire lorsque la condition de saut est satisfaite. Les lments avec sortie de validation (ENO) sont reprsents en noir lorsque la sortie de validation n'est pas dfinie.

Etat des lignes


Les lignes sont en noir lorsqu'elles n'ont pas t empruntes ou que leur tat est inconnu. L'tat des lignes commenant la barre d'alimentation est toujours satisfait ("1"). L'tat des lignes au dbut de branches parallles est toujours satisfait ("1"). L'tat des lignes aprs un lment est satisfait lorsque l'tat de la ligne avant l'lment et l'tat de l'lment sont satisfaits. L'tat de la ligne aprs NOT est satisfait lorsque l'tat de la ligne avant NOT n'est pas satisfait (et inversement). L'tat de la ligne aprs la jonction de plusieurs lignes est satisfait : lorsque, d'une part, l'tat d'une ligne au moins avant la jonction est satisfait et que, d'autre part, l'tat de la ligne avant l'ouverture de la branche ou des branches est satisfait.

456

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec la visualisation d'tat du programme 21.1 Affichage dans la visualisation d'tat de programme

Etat des paramtres


Les valeurs de paramtres en gras sont les valeurs en cours. Les valeurs de paramtres en criture normale proviennent d'un cycle prcdent ; il n'y a pas eu de passage par cet endroit du programme pendant le cycle en cours.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

457

Test avec la visualisation d'tat du programme 21.2 Informations sur le test en mode pas pas et sur les points d'arrt

21.2

Informations sur le test en mode pas pas et sur les points d'arrt
Lors du test en mode pas pas, vous pouvez : traiter des programmes instruction par instruction (pas pas) ; dfinir des points d'arrt.

La fonction "Test en mode pas pas" n'est pas ralise dans tous les automates programmables (voyez la documentation de votre automate).

Conditions pralables
Vous devez avoir slectionn mode test. Le test en mode pas pas n'est pas possible en mode processus (cf. commande Test > Mode de fonctionnement). Le test en mode pas pas n'est possible qu'en LIST. Pour les blocs en CONT ou en LOG, vous devez d'abord changer l'affichage l'aide de la commande Affichage > LIST. Le bloc ne doit pas tre protg. Le bloc doit tre ouvert en ligne. Il ne faut pas que le bloc ouvert ait t modifi dans l'diteur.

Nombre de points d'arrt


Le nombre de points d'arrt varie et dpend : du nombre de points d'arrt dj dfinis, du nombre d'tats de variable en cours, du nombre d'tats de programme en cours.

Consultez votre documentation pour savoir si votre automate programmable prend en charge le test en mode pas pas. Les commandes vous permettant de dfinir, d'activer ou de supprimer des points d'arrt font partie du menu "Test". Vous avez en outre la possibilit de choisir ces commandes l'aide des boutons correspondants dans la barre des points d'arrt. Pour afficher la barre des points d'arrt, choisissez la commande Affichage > Barre de points d'arrt.

458

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec la visualisation d'tat du programme 21.2 Informations sur le test en mode pas pas et sur les points d'arrt

Fonctions de test autorises


Visualisation et forage de variables Etat du module Etat de fonctionnement

Danger Attention aux tats dangereux de l'installation dans l'tat de fonctionnement "Attente".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

459

Test avec la visualisation d'tat du programme 21.3 Informations sur l'tat de fonctionnement "Attente"

21.3

Informations sur l'tat de fonctionnement "Attente"


Lorsque le programme atteint un point d'arrt, l'automate programmable passe l'tat de fonctionnement "Attente".

Signalisation des diodes lectroluminescentes (DEL) l'tat "Attente"


La DEL La DEL RUN clignote. STOP est allume.

Traitement du programme l'tat de fonctionnement "Attente"


Le code S7 n'est pas trait l'tat "Attente" : aucun niveau d'excution n'est plus trait. Tous les temps sont suspendus : - pas de traitement des cellules de temporisation, - arrt de tous les temps de surveillance, - arrt des impulsions de base des niveaux dclenchs par horloge. L'horloge temps rel continue fonctionner. Pour des raisons de scurit, les sorties sont toujours inhibes l'tat de fonctionnement "Attente" (voir "output disable" des modules de sorties).

Comportement en cas de coupure secteur l'tat de fonctionnement "Attente"


Si, lorsqu'un automate programmable avec sauvegarde est l'tat "Attente", il y a une coupure secteur suivie d'un retour de tension, cet automate passe l'tat de fonctionnement "Arrt" (STOP) et y reste. La CPU n'excute pas de mise en route automatique. Vous dcidez vousmme, partir de l'tat "Arrt", de la raction approprie (par exemple, dfinir ou effacer des points d'arrt, excuter une mise en route manuelle). Les automates programmables sans sauvegarde n'ont pas de "mmoire" et excutent donc un dmarrage automatique (dmarrage chaud) lors du retour de la tension, quel qu'ait t l'tat de fonctionnement prcdent.

460

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec la visualisation d'tat du programme 21.4 Etat du programme de blocs de donnes

21.4

Etat du programme de blocs de donnes


A partir de la version 5 de STEP 7, il est possible de visualiser un bloc de donnes dans la vue des donnes en ligne. Cet affichage peut tre activ aussi bien depuis un bloc de donnes en ligne que depuis un bloc de donnes hors ligne. Dans les deux cas, cest le contenu du bloc de donnes en ligne du systme cible qui est affich. Le bloc de donnes ne doit pas tre modifi avant lappel de ltat du programme. En cas de diffrence structurelle (dclaration) entre le bloc de donnes en ligne et le bloc de donnes hors ligne, vous pouvez directement charger le bloc de donnes hors ligne dans le systme cible. Le bloc de donnes doit se trouver dans la "vue des donnes", afin que les valeurs en ligne puissent tre reprsentes dans la colonne "Valeur actuelle". Seule la partie du bloc de donnes visible lcran est actualise. Pendant que ltat est actif, vous ne pouvez pas passer la vue des dclarations. Durant lactualisation, la barre de dfilement verte est visible dans la barre dtat du bloc de donnes et ltat de fonctionnement est affich. Les valeurs sont affiches dans le format du type de donnes respectif. Une modification du format nest pas possible. Lorsque vous mettez fin ltat du programme, le contenu qui tait pralablement valable saffiche nouveau dans la colonne des valeurs actuelles. Vous ne pouvez pas reprendre les valeurs en ligne actualises dans le bloc de donnes hors ligne.

Actualisation de types de donnes


Tous les types de donnes simples sont aussi bien actualiss dans un DB global que dans toutes les dclarations (in/out/inout/stat) dun bloc de donnes dinstance. Certains types de donnes ne peuvent pas tre actualiss. Lorsque ltat du programme est activ, les champs contenant des donnes non actualises sont estomps dans la colonne "Valeur actuelle". Les types de donnes complexes DATE_AND_TIME et STRING ne sont pas actualiss. Dans les types de donnes complexes ARRAY, STRUCT, UDT, FB, SFB, seuls les lments qui sont des types de donnes simples sont actualiss. Dans la dclaration INOUT dun bloc de donnes dinstance, seul le pointeur sur le type de donnes complexe est reprsent mais ses lments ne le sont pas. Le pointeur nest pas actualis. Les types de paramtre ne sont pas actualiss.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

461

Test avec la visualisation d'tat du programme 21.4 Etat du programme de blocs de donnes

21.4.1 Dfinition de l'affichage de l'tat du programme


Vous pouvez dfinir vous-mme l'affichage de l'tat du programme dans un bloc LIST, LOG ou CONT. Procdez de la manire suivante : 1. Choisissez la commande Outils > Paramtres. 2. Slectionnez, dans la bote de dialogue "CONT/LOG/LIST", l'onglet "LIST" ou l'onglet "CONT/LOG". 3. Choisissez les options dsires pour le test. Vous pouvez afficher les champs d'tat suivants :
Lorsque vous cochez... Bit d'tat Rsultat logique Standard Registre d'adresse 1/2 Accu 2 Registre des DB 1/2 Indirect s'affiche : Bit d'tat, c.--d. bit 2 du mot d'tat Bit 1 du mot d'tat ; indique le rsultat d'une fonction logique ou d'une comparaison arithmtique. Contenu de l'ACCU 1. Contenu du registre d'adresse correspondant dans le cas de l'adressage indirect (intrazone ou interzone) par registre Contenu de l'ACCU 2 Contenu du registre des DB du premier ou du deuxime bloc de donnes ouvert. Rfrence mmoire indirecte ; indication du pointeur (adresse), pas du contenu de l'adresse ; possible uniquement pour l'adressage indirect en mmoire, pas pour l'adressage indirect par registre. Contenu d'un mot de temporisation ou d'un mot de compteur lorsque l'instruction comporte les oprations correspondantes. Tous les bits d'tat du mot d'tat

Mot d'tat

462

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Test avec la visualisation d'tat du programme 21.5 Dfinition du mode de fonctionnement pour le test

21.5

Dfinition du mode de fonctionnement pour le test

Marche suivre
1. Choisissez la commande Test > Mode de fonctionnement pour afficher l'environnement de test slectionn. 2. Slectionnez le mode de fonctionnement souhait. Vous disposez du mode test et du mode processus.
Mode de fonctionnement Mode test Signification Toutes les fonctions de test peuvent tre utilises sans restrictions. D'importantes augmentations du temps de cycle de la CPU sont possibles, puisque l'tat des instructions dans des boucles programmes est, par exemple, dtermin chaque passage. Mode processus La fonction de test "Etat du programme" est restreinte pour garantir une charge du temps de cycle la plus faible possible. Ainsi, par exemple, les conditions d'appel ne sont pas autorises. La visualisation d'tat d'une boucle programme est interrompue la position de retour. Les fonctions de test "ATTENTE" et l'excution du programme pas pas ne sont pas possibles.

Nota Si le mode de test t dfini dans le cadre du paramtrage de la CPU, vous ne pouvez le modifier que par commutation entre les modes de fonctionnement test et processus. Sinon, vous pouvez le modifier dans la bote de dialogue affiche.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

463

Test avec la visualisation d'tat du programme 21.5 Dfinition du mode de fonctionnement pour le test

464

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

22

Test avec le programme de simulation S7-PLCSIM (logiciel optionnel)


Test avec le programme de simulation (logiciel optionnel)
Le logicidel optionnel de simulation vous permet d'excuter et de tester votre programme dans un systme d'automatisation que vous simulez dans votre ordinateur ou dans votre console de programmation (par exemple une Power PG). La simulation tant compltement ralise au sein du logiciel STEP 7, il n'est pas ncessaire que vous soyez connect un matriel S7 quelconque (CPU ou modules de signaux). La CPU S7 simule vous permet de tester les programmes destins aussi bien aux CPU S7-300 qu'aux CPU S7-400 et de remdier d'ventuelles erreurs. Cette application dispose d'une interface simple vous permettant de surveiller et de modifier les diffrents paramtres utiliss par le programme (comme par exemple d'activer ou de dsactiver des entres). Tout en excutant votre programme dans la CPU simule, vous avez en outre la possibilit de mettre en uvre les diffrents applications du logiciel STEP 7, comme par exemple la table des variables afin d'y visualiser et d'y forcer des variables.

22.1

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

465

Test avec le programme de simulation S7-PLCSIM (logiciel optionnel) 22.1 Test avec le programme de simulation (logiciel optionnel)

466

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

23
23.1

Diagnostic
Diagnostic du matriel et recherche d'erreurs
Des icnes de diagnostic vous permettent de dceler la prsence dinformations de diagnostic pour un module. Elles indiquent ltat du module concern et, pour les CPU, galement leur tat de fonctionnement. Les icnes de diagnostic s'affichent dans la vue en ligne de la fentre du projet, dans la vue rapide (prslection) ou encore dans la vue de diagnostic lorsque vous appelez la fonction "Diagnostic du matriel". Des informations de diagnostic dtailles sont donnes par l'"Etat du module" que vous appellerez par double clic sur une icne de diagnostic dans la vue rapide ou dans la vue de diagnostic.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

467

Diagnostic 23.1 Diagnostic du matriel et recherche d'erreurs

Affichage d'informations de maintenance


A partir de STEP 7 V5.4 Servicepack 1, certains composants PROFINET sont en mesure d'afficher des informations indiquant si une maintenance prventive est requise et, si oui, quelle est son urgence. Il existe les informations de maintenance suivantes : Maintenance requise (symbolise par un tournevis vert) : Un remplacement du composant doit tre ralis dans un intervalle de temps moyen terme. Demande de maintenance (symbolise par un tournevis jaune) : Un remplacement du composant doit tre ralis dans un intervalle de temps court terme.

Le remplacement d'un cble fibres optiques en raison de l'augmentation de la valeur d'amortissement au niveau d'un port de l'interface PROFINET d'une CPU constitue un exemple de maintenance ncessaire.

Marche suivre pour localiser les dfauts


1. Ouvrez la fentre en ligne du projet en choisissant la commande Affichage > En ligne. 2. Ouvrez toutes les stations de sorte que les modules programmables qui y sont configurs saffichent. 3. Vrifiez pour quelle CPU une icne de diagnostic est affiche pour signaler une erreur ou un dfaut. En appuyant sur la touche F1, vous obtenez une page daide avec les explications relatives aux icnes de diagnostic. 4. Slectionnez la station que vous souhaitez examiner. 5. Choisissez la commande Systme cible > Diagnostic/Paramtres > Etat du module pour afficher ltat du module de la CPU appartenant cette station. 6. Choisissez la commande Systme cible > Diagnostic/Paramtres > Diagnostic du matriel pour afficher la "vue rapide" avec la CPU et les modules dfectueux de cette station. Laffichage de la vue rapide est prslectionn (commande Outils > Paramtres, page donglet "Affichage"). 7. Slectionnez un module dfectueux dans la vue rapide. 8. Cliquez sur le bouton "Etat du module" pour obtenir les informations sur ce module. 9. Dans la vue rapide, cliquez sur le bouton "Station en ligne" pour afficher la vue de diagnostic. La vue de diagnostic affiche tous les modules de la station dans la disposition des emplacements. 10. Effectuez un double clic sur un module dans la vue de diagnostic pour en afficher ltat correspondant. Vous obtenez ainsi galement des informations sur les modules non dfectueux, qui ne sont donc pas affichs dans la vue rapide. Il nest pas impratif de raliser la totalit de ces tapes et vous pouvez vous arrter ds que vous avez trouv linformation de diagnostic recherche.

468

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.2 Icnes de diagnostic dans la vue en ligne

23.2

Icnes de diagnostic dans la vue en ligne


Les icnes de diagnostic s'affichent aussi bien dans la fentre en ligne du projet que dans la vue en ligne des tables de la fentre de configuration du matriel. Les icnes de diagnostic vous facilitent la recherche d'erreur en cas de dfaut. Un coup d'il sur l'icne du module vous indique s'il y a des informations de diagnostic son sujet. En cas de fonctionnement sans erreur, les icnes des types de module sont reprsentes sans icne de diagnostic supplmentaire. Quand il y a des informations de diagnostic au sujet d'un module, une icne de diagnostic s'ajoute celle du module, ou l'icne du module est reprsente estompe.

Icnes de diagnostic pour modules (exemple FM/CPU)


Icne Signification La configuration sur site diffre de la configuration prvue : le module configur n'est pas enfich ou un autre type de module est enfich. Erreur : module dfectueux. Causes possibles : dtection d'une alarme de diagnostic, d'une erreur d'accs la priphrie ou d'une DEL d'erreur. Le diagnostic n'est pas possible, parce qu'il n'y a pas de liaison en ligne ou que la CPU ne fournit pas d'informations de diagnostic sur le module (par ex. alimentation en courant, cartouches).

Icnes de diagnostic pour tats de fonctionnement ( l'exemple d'une CPU)


Icne Etat de fonctionnement Mise en route Arrt Arrt dclench par l'tat d'arrt d'une autre CPU en fonctionnement multiprocesseur Marche Attente

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

469

Diagnostic 23.2 Icnes de diagnostic dans la vue en ligne

Icne de diagnostic pour forage permanent


Icne Etat de fonctionnement Un forage permanent de variables est effectu sur ce module, ce qui signifie que certaines variables du programme utilisateur ont reu des valeurs fixes que le programme ne peut pas modifier. La marque de forage permanent peut tre combine avec d'autres icnes (elle l'est ici avec l'icne reprsentant l'tat Marche).

Icnes de diagnostic pour informations de maintenance (exemple CPU)


Icne Signification Maintenance ncessaire Maintenance requise

Icne de diagnostic pour dsactivation (exemple esclave DP ou PROFINET IO-Device)


Icne Signification Cet esclave DP ou ce PROFINET IO-Device ont t dsactivs au moyen de la SFC 12.

Actualisation de l'affichage des icnes de diagnostic


La fentre correspondante doit tre active. Appuyez sur la touche de fonction F5 ou choisissez la commande Affichage > Actualiser dans la fentre.

470

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.3 Diagnostic du matriel : vue rapide

23.3

Diagnostic du matriel : vue rapide

23.3.1 Appel de la vue rapide


La vue rapide vous permet de parvenir rapidement dans le "Diagnostic du matriel" en fournissant des informations rduites par rapport aux informations compltes affiches dans HW Config. La vue rapide saffiche par dfaut lappel de la fonction "Diagnostic du matriel".

Affichage de la vue rapide


Vous appelez cette fonction dans SIMATIC Manager en choisissant la commande Systme cible > Diagnostic/Paramtres > Diagnostic du matriel. Vous pouvez utiliser cette commande de la manire suivante : dans la fentre en ligne du projet, lorsquun module ou un programme S7/M7 sont slectionns, dans la fentre "Partenaires accessibles", lorsquun partenaire ("MPI=...") est slectionn et que cette entre appartient une CPU.

Dans les tables de configuration ouvertes, vous pouvez alors slectionner des modules pour lesquels vous souhaitez afficher ltat.

23.3.2 Fonctions d'information de la vue rapide


La vue rapide affiche les informations suivantes : donnes pour la liaison en ligne la CPU, icne de diagnostic de la CPU, icnes de diagnostic des modules pour lesquels la CPU a dtect un dfaut (par exemple, alarme de diagnostic, erreur daccs la priphrie), type et adresse du module (profil support/chssis, emplacement denfichage, rseau matre DP avec numro de station).

Autres possibilits de diagnostic dans la vue rapide


Affichage de ltat du module Vous appelez cette bote de dialogue en cliquant sur le bouton "Etat du module". Selon laptitude au diagnostic du module, vous y obtenez des informations dtailles sur le module slectionn. Ltat du module de la CPU vous permet en particulier dafficher les entres dans la mmoire tampon de diagnostic. Affichage de la vue de diagnostic En cliquant sur le bouton "Station en ligne" vous appelez cette bote de dialogue qui, contrairement la vue rapide, fournit une reprsentation graphique de lensemble de la station ainsi que des informations sur la configuration. Vous tes positionn sur le module qui est slectionn dans la liste "CPU / Modules dfaillants".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

471

Diagnostic 23.4 Diagnostic du matriel : vue du diagnostic

23.4

Diagnostic du matriel : vue du diagnostic

23.4.1 Appel de la vue de diagnostic de HW Config


Cette mthode vous permet d'afficher la bote de dialogue onglets "Etat du module" pour tous les modules du profil support ou chssis. La vue de diagnostic (table de configuration) montre la composition effective d'une station au niveau des profils supports ou chssis et des stations DP avec leurs modules.

Nota
Si la table de configuration est dj ouverte hors ligne, la commande Station > Ouvrir en ligne vous donne galement la vue en ligne des tables de configuration. La bote de dialogue onglets "Etat du module" affiche un nombre variable d'onglets selon les fonctions de diagnostic ralises par le module. La fentre "Partenaires accessibles" affiche exclusivement les modules possdant leur propre adresse de rseau (adresse Ethernet, MPI ou PROFIBUS).

472

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.4 Diagnostic du matriel : vue du diagnostic

Appel dans SIMATIC Manager, depuis la vue EN LIGNE d'un projet


1. Dans la vue du projet de SIMATIC Manager, tablissez une liaison en ligne avec le systme cible en choisissant la commande Affichage > En ligne. 2. Slectionnez une station et ouvrez-la par double clic. 3. Ouvrez l'objet "Matriel" qu'elle contient ; La vue du diagnostic s'ouvre. Vous pouvez prsent slectionner un module et en appeler l'tat en choisissant la commande Systme cible > Diagnostic/Paramtres > Etat du module.

Appel dans SIMATIC Manager, depuis la vue hors ligne d'un projet
Procdez de la manire suivante : 1. Dans la vue du projet de SIMATIC Manager, slectionnez une station et ouvrez-la par double clic. 2. Ouvrez l'objet "Matriel" qu'elle contient ; La table de configuration s'ouvre. 3. Choisissez la commande Station > Ouvrir en ligne. 4. La vue de diagnostic de HW Config s'ouvre avec la configuration de station telle qu'elle a t fournie par les modules (par exemple CPU). L'tat des modules est reprsent par des icnes. La signification des icnes est donne dans l'aide en ligne. Les modules dfectueux ou manquants sont numrs dans une bote de dialogue part. Vous pouvez passer directement de cette bote l'un des modules mentionns (bouton "Aller "). 5. Cliquez deux fois sur l'icne du module dont vous souhaitez connatre l'tat. Une bote de dialogue onglets (qui dpendent du type de module) vous permet de raliser une analyse dtaille de l'tat du module.

Appel dans SIMATIC Manager, depuis la fentre "Partenaires accessibles"


Procdez de la manire suivante : 1. Dans SIMATIC Manager, choisissez la commande Systme cible > Partenaires accessibles pour ouvrir la fentre "Partenaires accessibles". 2. Slectionnez un partenaire dans la fentre "Partenaires accessibles". 3. Choisissez la commande Systme cible> Diagnostic/Paramtres > Diagnostic du matriel.

Nota La fentre "Partenaires accessibles" affiche exclusivement les modules possdant leur propre adresse de rseau (adresse Ethernet, MPI ou PROFIBUS).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

473

Diagnostic 23.4 Diagnostic du matriel : vue du diagnostic

23.4.2 Fonctions d'information de la vue du diagnostic


Contrairement la vue rapide, la vue de diagnostic affiche lensemble de la configuration de la station accessible en ligne. Celle-ci comprend : la configuration des profils support/chssis, les icnes de diagnostic de tous les modules configurs Ltat des modules respectifs est donc affich et pour les CPU, galement ltat de fonctionnement. le type de module, le numro de rfrence, des informations sur les adresses et des commentaires sur la configuration.

Autres possibilits de diagnostic dans la vue de diagnostic


En effectuant un double clic sur un module, vous pouvez en afficher ltat.

474

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.5 Etat du module

23.5

Etat du module

23.5.1 Possibilits d'appel de l'tat du module


Vous pouvez afficher la bote de dialogue "Etat du module" depuis des points de dpart diffrents. Les procds ci-dessous sont cits titre d'exemple, ils sont d'un emploi frquent. Appel dans SIMATIC Manager, depuis une fentre avec la vue du projet "En ligne" ou "Hors ligne". Appel dans SIMATIC Manager, depuis une fentre "Partenaires accessibles". Appel depuis la vue de diagnostic de HW Config.

Pour que vous puissiez interroger l'tat d'un module possdant sa propre adresse de rseau, il faut que vous ayez tabli une liaison en ligne avec le systme cible. C'est ce que vous faites dans la vue du projet en ligne ou dans la fentre "Partenaires accessibles".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

475

Diagnostic 23.5 Etat du module

23.5.2 Fonctions d'information de l'tat du module


Les fonctions d'informations sont disponibles dans la page d'onglet de mme nom dans la bote de dialogue "Etat du module". Dans votre exemple d'application concret, seules les pages d'onglet significatives pour le module slectionn sont affiches.
Fonction d'information Gnral Information Utilisation

Donnes d'identification du module slectionn, Les informations en ligne du par exemple type, numro de rfrence, version, module enfich peuvent tre tat, emplacement dans le chssis/profil support. compares avec les donnes de configuration du module. Vue d'ensemble des vnements dans la mmoire tampon de diagnostic ainsi qu'informations dtailles sur l'vnement slectionn. Pour valuer la cause du passage l'tat "Arrt" d'une CPU et pour valuer les vnements prcdents sur le module slectionn. Grce la mmoire tampon de diagnostic, les erreurs dans le systme peuvent tre values, mme bien plus tard, en vue de dterminer l'origine d'un passage l'tat "Arrt" ou de remonter la trace des vnements de diagnostic individuels.

Mmoire tampon de diagnostic

Alarme de diagnostic

Donnes de diagnostic du module slectionn.

Pour dterminer la cause d'un dfaut de module. Pour dterminer la cause d'une erreur d'un esclave DP Avant de transmettre de nouveau blocs ou des blocs tendus sur une CPU, pour vrifier si la mmoire de chargement est suffisante dans cette CPU/ce FM ainsi que pour comprimer le contenu de la mmoire. Pour contrler le temps de cycle minimal paramtr ainsi que les temps de cycle maximal et actuel. Pour afficher l'heure et la date d'un module et contrler la synchronisation des horloges Avant et pendant la cration d'un programme utilisateur et pour vrifier si la CPU prsente les conditions requises pour l'excution d'un programme utilisateur, par exemple quant la taille de la mmoire image.

Diagnostic de l'esclave Donnes de diagnostic de l'esclave DP DP slectionn (selon EN 50170) Mmoire Organisation de la mmoire, occupation actuelle de la mmoire de travail, de la mmoire de chargement et des donnes de la mmoire rmanente de la CPU ou du FM de M7 slectionn.

Temps de cycle

Dure du cycle le plus long, du cycle le plus court et du dernier cycle de la CPU ou du FM de M7. Heure actuelle, compteur d'heures de fonctionnement et informations pour la synchronisation des horloges (intervalles de synchronisation).

Horodatage

Performances

Plages d'oprandes et blocs disponibles pour le module (CPU/FM) slectionn.

476

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.5 Etat du module

Fonction d'information

Information

Utilisation

Affichage de tous les types de blocs disponibles Pour vrifier quels blocs standard dans le module slectionn. Liste des OB, SFB, et votre programme utilisateur peut SFC pouvant tre utiliss dans ce module. contenir ou appeler pour pouvoir s'excuter dans la CPU choisie. Communication Vitesses de transmission, les liaisons tablies, la charge due la communication ainsi que la taille maximale des tlgrammes sur le bus K du module slectionn Pour vrifier combien de liaisons et quelles liaisons de la CPU ou du FM de M7 sont possibles ou affectes.

Piles

Onglet Piles : vous ne pouvez ouvrir cet onglet Pour trouver la cause d'un qu' l'tat d'arrt ou d'attente. passage l'tat "Arrt" et pour La pile des blocs (pile B) du module slectionn corriger un bloc. s'affiche. Vous pouvez en outre lire la pile des interruptions (pile I), la pile des donnes locales (pile L), ainsi que la pile des parenthses et sauter dans le bloc l'endroit o l'erreur a caus une interruption. Donnes de diagnostic de l'IO-Device PROFINET dlectionn Pour dterminer la cause d'une erreur d'un IO-Device

Diagnostic de l'IODevice Identification

Donnes d'identification du module slectionn, p. L'information en ligne du module ex. numro de srie, dsignation du fabricant enfich peut tre compare avec les donnes du module configur. Donnes de diagnostic (erreur de communication) Pour dterminer la cause d'une du module PROFINET slectionn erreur de communication avec le port ou l'interface d'un IO-Device Informations relatives l'interface du module PROFINET slectionn, p. ex. adresse IP Proprits physiques de l'interface PROFINET d'un module PROFINET Pour dterminer l'ensemble des proprits de l'interface d'un module PROFINET Pour dterminer l'ensemble des proprits physiques de l'interface PROFINET d'un module PROFINET Pour valuer la qualit de la transmission de donnes partir ou vers un module PROFINET

Diagnostic de communication Interface

Raccordement rseau

Statistiques

Donnes statistiques relatives aux paquets de donnes envoys et reus par un module PROFINET

Informations supplmentaires affiches


Les informations suivantes figurent dans chaque page d'onglet : chemin d'accs en ligne du module slectionn, tat de fonctionnement de la CPU concerne (par exemple "Marche", "Arrt"), tat du module slectionn (par exemple Erreur, OK), tat de fonctionnement du module slectionn (par exemple "Marche", "Arrt") si celui-ci possde son propre tat de fonctionnement (par exemple CP 342-5).

Il n'est pas possible d'afficher l'tat de fonctionnement de la CPU elle-mme ni l'tat du module slectionn si l'tat du module d'un module autre qu'une CPU a t interrog depuis la fentre "Partenaires accessibles".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

477

Diagnostic 23.5 Etat du module

Affichage simultan de plusieurs modules


Vous pouvez interroger et afficher simultanment l'tat de plusieurs modules. Pour cela, vous devez retourner au contexte de module qui vous intresse, slectionner un autre module et en appeler l'tat. Une autre bote de dialogue onglets vous est alors propose. Mais vous ne pouvez ouvrir qu'une bote de dialogue onglets par module.

Actualisation de l'affichage de l'tat du module


Une nouvelle lecture des donnes du module a lieu chaque activation dune nouvelle page donglet de la bote de dialogue "Etat du module". En revanche, le contenu des pages donglet nest pas mis jour automatiquement pendant laffichage dune page. Pour effectuer une nouvelle lecture des donnes actuelles du module sans changer de page donglet, il vous suffit de cliquer sur le bouton "Actualiser".

478

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.5 Etat du module

23.5.3 Volume d'informations selon le type de module dans l'tat du module


Le volume des informations susceptibles d'tre values et affiches dpend du module slectionn et de la vue depuis laquelle vous interrogez l'tat du module. Quand vous interrogez l'tat du module depuis la vue en ligne des tables de configuration ou depuis la fentre du projet, vous obtenez le volume complet des informations. Quand vous interrogez l'tat du module depuis la vue de projet "Partenaires accessibles", vous obtenez un volume d'informations restreint.

Selon le volume des informations, on distingue entre modules diagnostic systme, modules diagnostic ou modules sans diagnostic. C'est ce qu'illustre le schma ci-dessous.

Les modules FM 351 et FM 354, par exemple, possdent des fonctions de diagnostic systme. La plupart des modules SM analogiques possdent des fonctions de diagnostic. La plupart des modules SM TOR ne possdent pas de fonctions de diagnostic.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

479

Diagnostic 23.5 Etat du module

Pages d'onglet affiches


Le tableau prcise quelles pages d'onglets peuvent s'afficher dans la bote de dialogue "Etat du module" pour les diffrents types de modules.
Onglet CPU ou FM de M7 oui oui oui oui oui oui oui Module diagnostic systme oui oui oui Module diagnostic oui oui Module sans Esclave DP fonction de normalis diagnostic oui oui oui IO-Device

Gnral Mmoire tampon de diagnostic Alarme de diagnostic Mmoire Temps de cycle Horodatage Performances Piles Communication Identification Diagnostic de l'esclave DP Diagnostic de l'IODevice Etat H 1) Diagnostic de communication Interface Raccordement rseau Statistiques
1)

oui oui

oui oui

oui

oui

oui oui

oui
oui oui oui oui oui

oui

uniquement pour les CPU dans les systmes H

Outre les informations contenues dans les pages d'onglet, l'tat de fonctionnement est affich pour les modules qui en possdent un. Quand vous interrogez l'tat du module depuis les tables de configuration en ligne, c'est l'tat du point de vue de la CPU qui est indiqu (par exemple ok, erreur, module inexistant).

480

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.5 Etat du module

23.5.4 Affichage de l'tat du module d'appareils de terrain PA et d'esclaves DP placs derrire un Y-Link
A partir du Servicepack 3 de STEP 7 V5.1, l'tat du module peut galement tre exploit pour des esclaves DP et des appareils de terrain PA placs "derrire" un DP/PA-Link (IM 157). Ceci concerne les configurations suivantes : IM 157 avec coupleurs DP/PA pour la connexion de PROFIBUS-PA. IM 157 utilis comme module de couplage redondant pour la connexion d'un PROFIBUS DP non redondant ("Y-Link").

Dans ces configurations, la PG est relie au mme sous-rseau PROFIBUS que le DP/PA-Link. Il existe encore une autre possibilit de configuration, dans laquelle la PG est relie au rseau Industrial Ethernet et effectue le routage d'une station S7-400 sur le sous-rseau PROFIBUS. Les conditions requises sont dcrites dans les figures suivantes.

IM 157 avec coupleurs DP/PA pour la connexion de PROFIBUS-PA

IM 157 en tant que Y-Link

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

481

Diagnostic 23.5 Etat du module

PG sur Industrial Ethernet

482

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.6 Diagnostic l'tat de fonctionnement STOP

23.6

Diagnostic l'tat de fonctionnement STOP

23.6.1 Marche suivre pour dterminer la cause d'un passage l'tat d'arrt
Pour dterminer la cause d'un passage l'arrt de la CPU, procdez de la manire suivante : 1. Slectionnez la CPU qui est passe l'tat d'arrt. 2. Choisissez la commande Systme cible > Diagnostic/Paramtres > Etat du module. 3. Choisissez l'onglet "Tampon de diagnostic". 4. Les dernires entres vous permettent de dterminer la cause du passage l'arrt.

Pour une erreur de programmation : 1. L'entre "Arrt car OB d'erreur de programmation non charg", par exemple, signifie que la CPU a dtect une erreur de programmation, puis a tent de dmarrer l'OB (manquant) de traitement de l'erreur de programmation. L'erreur de programmation est indique par l'entre prcdente. 2. Slectionnez le message d'erreur de programmation. 3. Cliquez sur le bouton "Ouvrir le bloc". 4. Slectionnez la page d'onglet "Piles".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

483

Diagnostic 23.6 Diagnostic l'tat de fonctionnement STOP

23.6.2 Contenu des piles l'tat d'arrt


L'exploitation de la mmoire de diagnostic et du contenu des piles vous permet de dterminer la cause d'un dfaut dans l'excution d'un programme utilisateur. Lorsque la CPU passe l'tat d'arrt, par exemple suite une erreur de programmation ou une instruction d'arrt, la pile des blocs s'affiche dans la page d'onglet "Piles" de l'tat du module. Vous pouvez afficher d'autres contenus de piles grce aux boutons "Pile des interruptions", "Pile des donnes locales" et "Pile des parenthses". Le contenu des piles vous indique quelle instruction dans quel bloc a entran le passage l'tat "Arrt" (STOP) de la CPU.

Contenu de la pile des blocs


La pile des blocs donne la liste de tous les blocs appels avant le passage l'tat de fonctionnement "Arrt" (STOP) et qui n'ont pas encore t excuts jusqu' la fin.

Contenu de la pile des interruptions


Vous obtenez des informations sur l'emplacement d'interruption lorsque vous cliquez sur le bouton "Pile I". La pile des interruptions contient les donnes et les tats qui taient valables au moment de l'interruption, par exemple : contenu des accumulateurs et des registres, DB ouverts et leur taille, contenu du mot d'tat, classe de priorit, bloc interrompu, bloc dans lequel l'excution du programme a t poursuivie aprs l'interruption.

Contenu de la pile des donnes locales


Pour chacun des blocs numrs dans la pile B, vous pouvez afficher les donnes locales correspondantes en slectionnant le bloc et en cliquant sur le bouton "Pile L". La pile des donnes locales (pile L) contient les valeurs des donnes locales des blocs que le programme utilisateur a utilis jusqu' l'interruption. L'interprtation et l'exploitation des donnes locales affiches demandent de trs bonnes connaissances du systme. La partie avant des donnes affiches correspond aux variables temporaires du bloc.

Contenu de la pile des parenthses


Quand vous cliquez sur le bouton "Pile P", le contenu de la pile des parenthses est reprsent l'endroit de l'interruption. La pile des parenthses est une zone de mmoire utilise par les oprations combinatoires U(, UN(, O(, ON(, X( et XN(. Le bouton n'est actif que lorsqu'il y a encore des expressions entre parenthses ouvertes au moment de l'interruption.

484

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.7 Contrle des temps de cycle pour viter les erreurs d'horloge

23.7

Contrle des temps de cycle pour viter les erreurs d'horloge

23.7.1 Contrle des temps de cycle pour viter les erreurs d'horloge
La page d'onglet "Temps de cycle" de l'tat du module vous donne des renseignements sur les temps de cycle du programme utilisateur. Lorsque la dure du cycle le plus long est proche du temps de surveillance, il peut arriver que des fluctuations dans le temps de cycle entranent une erreur de temps. Vous pouvez viter cela en augmentant le temps de cycle maximal du programme utilisateur. Si la dure de cycle est infrieure au temps de cycle minimal paramtr, la CPU ou le FM l'allongent automatiquement au temps de cycle minimal paramtr. Dans le cas dune CPU, lOB darrire-plan (OB90) est excut durant cette phase, sil est charg.

Dfinition du temps de cycle


Vous pouvez dfinir les temps de cycle minimal et maximal lors de la configuration du matriel. Slectionnez pour ce faire dans la vue hors ligne de la table de configuration la CPU ou le FM et choisissez dans le menu contextuel la commande Proprits de l'objet, afin de dfinir ses proprits. Vous pouvez entrer vos valeurs dans la page d'onglet "Cycle/Mmento de cadence".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

485

Diagnostic 23.8 Transmission d'informations de diagnostic

23.8

Transmission d'informations de diagnostic


La figure suivante montre comment les informations de diagnostic sont transmises dans SIMATIC S7.

Lecture des informations de diagnostic


Vous pouvez lire les entres de diagnostic dans le programme utilisateur l'aide de la SFC51 RDSYSST ou afficher les messages de diagnostic en clair avec STEP 7. Ces informations prcisent : o et quand l'erreur est apparue, quel type d'vnements de diagnostic appartient l'entre (vnement de diagnostic personnalis, erreur synchrone ou asynchrone, changement d'tat de fonctionnement).

Cration de messages groups systme


La CPU inscrit dans la mmoire tampon de diagnostic les vnements du diagnostic standard et du diagnostic tendu. Elle gnre en outre un message group systme pour les vnements de diagnostic standard si les conditions suivantes sont satisfaites : Vous avez indiqu via STEP 7 que des messages groups systme doivent tre gnrs. Un appareil de visualisation au moins s'est dclar auprs de la CPU pour messages groups systme. Un message group systme n'est cr que lorsqu'il n'existe pas encore de tel message de la classe correspondante (il y a sept classes). Il est possible de gnrer un message group systme par classe.

486

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.8 Transmission d'informations de diagnostic

23.8.1 Liste d'tat systme (SZL)


La liste d'tat systme (SZL) dcrit l'tat en cours de l'automate programmable : elle donne une vue d'ensemble de la configuration, du paramtrage en vigueur, des tats et excutions en cours dans la CPU et les modules associs. Vous pouvez seulement lire les donnes de la liste d'tat systme, et non les modifier. Il s'agit en fait d'une liste virtuelle, gnre uniquement sur demande. On peut subdiviser les informations contenues dans la liste d'tat systme en quatre domaines.

Lecture de la SZL
Il existe deux mthodes pour lire les informations de la liste d'tat systme : implicitement partir de la console de programmation via des commandes de STEP 7 (par exemple, tendue de la mmoire, donnes de CPU statiques, mmoire tampon de diagnostic, indications d'tat), explicitement partir du programme utilisateur via la fonction systme SFC 51 RDSYSST par indication du numro de liste partielle souhaite (voir aide sur les blocs).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

487

Diagnostic 23.8 Transmission d'informations de diagnostic

Donnes systme de la liste SZL


Les donnes systme sont des caractristiques fixes ou paramtres d'une CPU. Le tableau suivant montre pour quels thmes il est possible d'obtenir des informations (listes partielles de la SZL).
Domaine Identificateur de module Caractristiques de la CPU Informations Numro de rfrence, identification de type et version du module Systme d'horadatage, comportement du systme (par exemple, fonctionnement multiprocesseur) et description de langage de la CPU Etendue de mmoire du module (taille de la mmoire de travail) Mmoire systme du module (par exemple, nombre de mmentos, temporisations et compteurs, type de mmoire) Types de blocs (OB, DB, SDB, FC, FB) disponibles dans le module, nombre maximal des blocs d'un type et taille maximale d'un type de bloc Affectation d'alarmes/erreurs aux OB Traitement et gnration d'alarmes en cours OB en cours de traitement, classe de priorit verrouille par paramtrage Etats de fonctionnement possibles, dernier changement d'tat de fonctionnement, tat de fonctionnement en vigueur

Zones de mmoire Zones systme Types de blocs

Affectation alarmes/erreurs Etat d'alarme Etat des classes de priorit Etat de fonctionnement et changement d'tat de fonctionnement

Donnes d'tat de diagnostic dans la CPU


Les donnes d'tat de diagnostic dcrivent l'tat en vigueur des composants surveills par le diagnostic systme. Le tableau suivant montre pour quels thmes il est possible d'obtenir des informations (listes partielles de la SZL).
Domaine Donnes d'tat de la communication Partenaires de diagnostic Liste d'informations de dclenchement de l'OB Liste d'vnements de dclenchement Informations d'tat des modules Informations Fonctions de communication actuellement actives dans le systme Modules aptes au diagnostic dclars la CPU Informations de dclenchement pour les OB de la CPU Evnements de dclenchement et classes de priorit des OB Informations d'tat de tous les modules affects, gnrant des alarmes de processus, dfectueux et enfichs

488

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.8 Transmission d'informations de diagnostic

Donnes de diagnostic des modules


Il existe, outre la CPU, d'autres modules aptes au diagnostic (SM, CP, FM) dont les donnes de diagnostic sont inscrites dans la liste d'tat systme. Le tableau suivant montre pour quels thmes il est possible d'obtenir des informations (listes partielles de la SZL).
Domaine Informations de diagnostic de module Donnes de diagnostic de module Informations Adresse de dbut de module, erreurs internes/externes, erreurs de voie, erreurs de paramtres (4 octets) Toutes les donnes de diagnostic d'un module prcis

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

489

Diagnostic 23.8 Transmission d'informations de diagnostic

23.8.2 Envoi de vos propres messages de diagnostic


Vous pouvez, en outre, tendre le diagnostic systme standard de SIMATIC S7 l'aide de la fonction systme SFC52 WR_USMSG : en inscrivant vos propres informations de diagnostic (par exemple, informations sur l'excution du programme utilisateur) dans la mmoire tampon de diagnostic, en envoyant des messages de diagnostic que vous avez dfinis des correspondants dclars (appareils de contrle comme PG, OP, TD).

Evnements de diagnostic personnalis


Les vnements de diagnostic sont rpartis en classes d'vnement 1 F. Ceux que vous dfinissez vous mme appartiennent aux classes d'vnement 8 B. On peut les subdiviser en deux groupes : Les classes d'vnement 8 et 9 comprennent les vnements avec un numro dfini et un texte prpar que vous pouvez appeler via le numro. Les classes d'vnement A et B regroupent les vnements avec numro (A000 A0FF, B000 B0FF) et texte libres.

Envoi de messages de diagnostic des correspondants


En plus d'inscrire un vnement de diagnostic personnalis dans la mmoire tampon de diagnostic, vous pouvez, l'aide de la SFC52 WR_USMSG, envoyer le message correspondant des appareils de visualisation dclars. A l'appel de la SFC52 avec SEND = 1, le message de diagnostic est crit dans la mmoire tampon d'mission et automatiquement envoy aux correspondants dclars la CPU. Si l'envoi du message de diagnostic s'avre impossible - par exemple parce qu'un correspondant n'a pas t dclar ou que la mmoire tampon d'mission est pleine -, l'vnement de diagnostic personnalis est quand mme inscrit dans la mmoire tampon de diagnostic.

Cration de messages avec indication d'acquittement


Procdez comme suit si vous voulez acquitter un vnement de diagnostic personnalis et enregistrer cet acquittement par programme : Ecrivez un 1 dans une variable de type BOOL pour un vnement entrant ; crivez 0 pour un vnement sortant. Surveillez cette variable l'aide du bloc SFB33 ALARM.

490

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.8 Transmission d'informations de diagnostic

23.8.3 Fonctions de diagnostic


Le diagnostic systme dtecte, value et signale les erreurs survenant au sein d'un automate programmable. Chaque CPU et chaque module possdant la fonction de diagnostic systme (par exemple FM354) disposent cet effet d'une mmoire tampon de diagnostic dans laquelle sont inscrites des informations plus prcises sur tous les vnements de diagnostic dans l'ordre de leur apparition.

Evnements de diagnostic
Les vnements suivants provoquent des entres dans la mmoire tampon de diagnostic, par exemple : les erreurs internes et externes sur un module, les erreurs systme dans la CPU, les changements d'tat de fonctionnement (par exemple de "Marche" "Arrt") les erreurs dans le programme utilisateur, le dbrochage/enfichage de modules. les messages personnaliss saisis via la fonction systme SFC52

Le contenu de la mmoire tampon de diagnostic est conserv lors de l'effacement gnral des CPU. Grce la mmoire tampon de diagnostic, les erreurs dans le systme peuvent tre values, mme bien plus tard, en vue de dterminer l'origine d'un passage l'"Arrt" ou de remonter la trace des vnements de diagnostic individuels.

Enregistrement des donnes de diagnostic


Il est inutile de programmer l'enregistrement de donnes de diagnostic par le diagnostic systme, car elle se fait automatiquement. SIMATIC S7 propose diffrentes fonctions de diagnostic. Certaines d'entre elles sont intgres dans la CPU et d'autres sont mises votre disposition par les modules (SM, CP et FM).

Affichage d'erreurs
Les erreurs internes et externes aux modules sont signales par des diodes lectroluminescentes en face avant du module concern. Les signalisations par DEL et leur valuation sont dcrites dans les manuels sur le matriel S7. Dans S7-300, les erreurs internes et externes forment des erreurs groupes. La CPU dtecte les erreurs systme ainsi que les erreurs dans le programme utilisateur et inscrit les messages de diagnostic dans la liste d'tat systme et dans la mmoire tampon de diagnostic. Il est possible de lire ces messages la console de programmation. Les modules de fonction et de signaux aptes au diagnostic dtectent des erreurs de module internes et externes et gnrent une alarme de diagnostic laquelle vous pouvez ragir l'aide d'un OB d'alarme.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

491

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9

Mesures prendre dans le programme pour traiter les erreurs


Lorsque la CPU dtecte des erreurs dans l'excution du programme (erreurs synchrones) ou des erreurs dans l'automate programmable (erreurs asynchrones), elle appelle l'OB d'erreur correspondant l'erreur respective :
Erreur survenue Erreur de redondance de priphrie Erreur de redondance de CPU Erreur de temps Erreur d'alimentation Alarme de diagnostic Alarme de dbrochage/enfichage Erreur matrielle CPU Erreur d'excution du programme Dfaillance d'un chssis ou d'une station en priphrie dcentralise Erreur de communication Erreur de programmation Erreur d'accs la priphrie OB d'erreur OB 70 OB 72 OB 80 OB 81 OB 82 OB 83 OB 84 OB 85 OB 86 OB 87 OB 121 OB 122

En absence de l'OB correspondant, la CPU passe l'tat de fonctionnement "Arrt" (STOP) (exceptions : OB 70, OB 72, OB 81, OB 87). Sinon, vous avez la possibilit de saisir des instructions dans l'OB, sur la manire de ragir cette situation d'erreur. Il est ainsi possible de minimiser ou supprimer les ventuelles consquences de l'erreur.

Procdez de la manire suivante.


Cration et ouverture de l'OB 1. Appelez l'tat de fonctionnement de votre CPU. 2. Slectionnez l'onglet "Performances". 3. Vrifiez dans la liste affiche, si l'OB programmer est autoris pour cette CPU. 4. Insrez l'OB dans le dossier "Blocs" de votre programme et ouvrez-le. 5. Saisissez le programme de traitement de l'erreur. 6. Chargez l'OB dans le systme cible. Programmation des mesures de traitement d'erreur 1. Exploitation des donnes locales de l'OB pour une dtermination plus prcise de la cause d'erreur. Les variables OB8x_FLT_ID ou OB12x_SW_FLT des donnes locales contiennent le code d'erreur. Leur signification est dcrite dans le manuel de rfrence des fonctions systme et des fonctions standard. 2. Aller dans la section de programme qui ragit cette erreur. Un exemple de traitement d'alarmes de diagnostic est fourni dans l'aide de rfrence des fonctions systme et fonctions standard sous le titre "Exemple de diagnostic de module avec le bloc SFC51 (RDSYSST)". Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

492

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.1 Exploitation du paramtre de sortie RET_VAL


Une fonction systme signale par le paramtre de sortie RET_VAL (valeur en retour) si la CPU a pu l'excuter avec ou sans erreur.

Informations d'erreur dans la valeur en retour


La valeur en retour est de type de donnes INT (nombre entier), le signe prcisant s'il s'agit d'un entier positif ou ngatif. La relation de la valeur en retour la valeur 0 indique si une erreur s'est produite pendant le traitement de la fonction (voir aussi tableau 11-5). Si une erreur apparat pendant le traitement de la fonction, la valeur en retour est infrieure 0. Le bit de signe du nombre entier est 1. Si la fonction est traite sans erreur, la valeur en retour est suprieure ou gale 0. Le bit de signe du nombre entier est 0.
Valeur en retour Infrieure 0 Suprieure ou gale 0 Signe du nombre entier Ngatif (bit de signe 1) Positif (bit de signe 0)

Traitement de la SFC par la CPU Avec erreur Sans erreur

Raction aux informations d'erreur


Si une erreur apparat pendant le traitement d'une fonction systme, la SFC renvoie un code d'erreur par l'intermdiaire de la valeur en retour RET_VAL. Ce faisant, on distingue : un code d'erreur gnral que toutes les SFC peuvent mettre et un code d'erreur spcifique qu'une SFC peut mettre selon ses fonctions spcifiques.

Transmission de la valeur de la fonction


Certaines fonctions systme utilisent galement le paramtre de sortie RET_VAL pour renvoyer leur rsultat. La SFC64 TIME_TCK, par exemple, renvoie l'heure systme lue via RET_VAL.

Vous trouverez des informations dtailles sur le paramtre RET_VAL dans l'aide sur les SFB/SFC.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

493

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.2 OB d'erreur en raction la dtection d'une erreur


Erreurs dtectables
Le programme systme peut dtecter les erreurs suivantes : fonctionnement erron de la CPU, erreurs dans le traitement du programme systme, erreurs dans le programme utilisateur, erreurs dans la priphrie.

Selon le type d'erreur, la CPU passe l'tat de fonctionnement "Arrt" (STOP) ou un OB d'erreur est appel.

Programmation de ractions
Vous pouvez concevoir des programmes pour ragir aux diffrents types d'erreur et dterminer le comportement de la CPU. Vous pouvez ensuite sauvegarder le programme pour une erreur donne dans un OB d'erreur. Ce programme sera donc trait l'appel de cet OB d'erreur.

494

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

OB d'erreur
On distingue entre erreurs synchrones et asynchrones. Les erreurs synchrones peuvent tre associes une commande MC7 (par exemple, commande de chargement pour un module de signaux retir). Les erreurs asynchrones peuvent tre attribues une classe de priorit ou l'automate programmable entier (par exemple, dpassement du temps de cycle).

Le tableau ci-aprs prsente les types d'erreur pouvant en principe apparatre. Les OB disponibles pour les diffrentes CPU sont indiqus dans le manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" ou dans le manuel de rfrence "Systmes dautomatisation S7-400/M7-400, Installation et configuration - Caractristiques des modules".
Catgorie d'erreur Redondance Type d'erreur Erreur de redondance de priphrie (uniquement dans les CPU H) Erreur de redondance de CPU (uniquement dans les CPU H) Asynchrone Erreur de temps Erreur d'alimentation OB OB 70 OB 72 OB 80 OB 81 Priorit 25 28 26 (ou 28 lorsque l'OB d'erreur est appel dans le programme de mise en route)

Alarme de diagnostic Alarme de dbrochage/enfichage Erreur matrielle CPU Erreur d'excution du programme Dfaillance d'unit Erreur de communication Synchrone Erreur de programmation Erreur d'accs

OB 82 OB 83 OB 84 OB 85 OB 86 OB 87 OB 121 OB 122 Priorit de l'OB l'origine de l'erreur

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

495

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

Exemple d'utilisation de l'OB d'erreur 81


Les donnes locales (informations de dclenchement) de l'OB d'erreur vous permettent d'valuer la nature de l'erreur apparue. Si la CPU dtecte un dfaut de pile, par exemple, le systme d'exploitation appelle l'OB81 (voir figure).

Vous pouvez crire un programme qui value l'ID de l'vnement ayant dclench l'appel de l'OB81. Vous pouvez galement crire un programme de raction comme, par exemple, l'activation d'une sortie relie une lampe du poste d'opration.

496

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

Donnes locales de l'OB d'erreur 81


Le tableau suivant dcrit les variables temporaires (TEMP) inscrites dans la table de dclaration des variables de l'OB81. Il faut galement que la table des mnmoniques identifie le mnmonique Defaut_pile (BOOL) comme tant une sortie (par exemple A 4.0) afin que d'autres parties du programme puissent accder ces donnes.
Dcl. TEMP TEMP Nom OB81_EV_CLASS OB81_FLT_ID Type BYTE BYTE Description Classe et code d'vnement 39xx Code d'erreur : B#16#21 = Au moins une des piles de sauvegarde de l'appareil de base est puise. 1 B#16#22 = La tension de sauvegarde manque dans l'appareil de base. B#16#23 = L'alimentation 24 V est dfaillante dans l'appareil de base. 1 B#16#31 = Au moins une des piles de sauvegarde d'un appareil d'extension est puise. 1 B#16#32 = La tension de sauvegarde manque dans un appareil d'extension. 1 B#16#33 = L'alimentation 24 V est dfaillante dans un appareil d'extension. 1 TEMP TEMP TEMP TEMP TEMP OB81_PRIORITY OB81_OB_NUMBR OB81_RESERVED_1 OB81_RESERVED_2 OB81_RACK_CPU BYTE BYTE BYTE BYTE WORD Classe de priorit = 26/28 81 = OB81 Rserv Rserv Bits 0 7 : B#16#00 Bits 8 15 : pour une CPU standard : B#16#00, pour une CPU H : bits 8 10 n de chssis, bit 11 : 0=CPU de rserve, 1=CPU matre, bits 12 15 : 1111 TEMP TEMP TEMP TEMP TEMP
1

OB81_RESERVED_3 OB81_RESERVED_4 OB81_RESERVED_5 OB81_RESERVED_6 OB81_DATE_TIME

BYTE BYTE BYTE BYTE DATE_AND_TIME

Significatif uniquement pour les codes d'erreur B#16#31, B#16#32 et B#16#33

Date et heure de dclenchement de l'OB

Pas pour le S7-300

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

497

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

Exemple de programme pour l'OB d'erreur 81


L'exemple de programme LIST ci-dessous montre comment lire le code d'erreur dans l'OB81. Ce programme est organis comme suit. Le code d'erreur figurant dans l'OB81 (OB81_FLT_ID) est lu et compar l'ID de l'vnement "Pile puise" (B#16#3921). Si ce code d'erreur correspond l'ID pour "Pile puise", le programme saute au repre "DP" et active la sortie Defaut_pile. Si ce code d'erreur est diffrent de l'ID pour "Pile puise", le programme le compare l'ID pour "Pas de tension de sauvegarde". Si le code d'erreur correspond l'ID pour "Pas de tension de sauvegarde", le programme saute au repre "DP" et active la sortie Defaut_pile. Sinon, le bloc s'achve.
Description B#16#21 #OB81_FLT_ID // Comparer l'ID de l'vnement // "Pile puise" (B#16#21) L ==I SPB DP L ==I SPB DP BEA DP: L L ==I S L ==I R Defaut_pile Defaut_pile B#16#38 B#16#39 #OB81_EV_CLASS B#16#22 // Comparer l'ID de l'vnement // "Pas de tension de sauvegarde" (B#16#22) // au code d'erreur de l'OB81. // Si identiques, sauter DP. // Pas de message sur dfaut de pile // Comparer le code pour vnement apparaissant // au code d'erreur de l'OB81. // Si dfaillance de tension de sauvegarde // ou de pile dtecte, // mettre 1 Defaut_pile // (variable de la table des mnmoniques). // Comparer le code pour vnement // disparaissant // au code d'erreur de l'OB81. // Remettre 0 Defaut_pile quand limine. // au code d'erreur de l'OB81. // Si identiques (pile vide), // sauter DP.

LIST L

Vous trouverez des informations dtailles sur les OB, SFB et SFC ainsi que l'explication des ID d'vnement dans les aides sur les blocs correspondantes.

498

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.3 Insertion de valeurs de remplacement en cas d'erreur dtecte


Pour certains types d'erreur (par exemple, rupture de fil pour signal d'entre), vous pouvez indiquer des valeurs de remplacement pour celles qui s'avrent indisponibles en raison de l'erreur. Il y a deux faons d'indiquer des valeurs de remplacement. Vous pouvez paramtrer avec STEP 7 des valeurs de remplacement pour les modules de sorties paramtrables. Les modules de sorties non paramtrables ont la valeur de remplacement prdfinie 0. Vous pouvez programmer des valeurs de remplacement dans les OB d'erreur l'aide de la SFC44 RPL_VAL (uniquement pour les modules d'entres).

Vous pouvez indiquer, pour toutes les commandes de chargement entranant des erreurs synchrones, une valeur de remplacement pour le contenu de l'accumulateur dans l'OB d'erreur.

Exemple de programme de remplacement de valeur


Dans l'exemple de programme suivant, une valeur de remplacement est mise disposition dans la SFC44 RPL_VAL. La figure ci-aprs montre comment appeler l'OB122 si la CPU s'aperoit qu'un module d'entres ne ragit pas.

Dans cet exemple, la valeur de remplacement de la figure ci-aprs est introduite dans le programme afin que l'excution de ce dernier se poursuive avec des valeurs cohrentes.

En cas de dfaillance d'un module d'entres, le traitement de l'instruction L PEB0 gnre une erreur synchrone et dclenche l'OB122. L'instruction de chargement lit par dfaut la valeur 0. Vous pouvez toutefois, l'aide de la SFC44, dfinir des valeurs de remplacement adaptes au processus. La SFC remplace le contenu de l'accumulateur par la valeur de remplacement prcise. L'OB122 pourrait contenir l'exemple de programme suivant. Le tableau suivant prsente les variables temporaires supplmentaires inscrire dans la table de dclaration des variables de l'OB122.
Dcl. Nom Type Description

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

499

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

Dcl. TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP

Nom OB122_EV_CLASS OB122_SW_FLT OB122_PRIORITY OB122_OB_NUMBR OB122_BLK_TYPE OB122_MEM_AREA OB122_MEM_ADDR OB122_BLK_NUM OB122_PRG_ADDR OB122_DATE_TIME Erreur

Type BYTE BYTE BYTE BYTE BYTE BYTE WORD WORD WORD DATE_AND_TIME INT

Description Classe et code d'vnement 29xx Code d'erreur : 16#42, 16#43, 16#44 1, 16#45 1 Classe de priorit = priorit de l'OB o s'est produite l'erreur 122 = OB122 Type du bloc o s'est produite l'erreur Zone de mmoire et type d'accs Adresse de mmoire o s'est produite l'erreur Numro du bloc o s'est produite l'erreur Adresse relative de la commande l'origine de l'erreur Date et heure de dclenchement de l'OB Contient le code d'erreur provenant de la SFC44.

1 Pas pour le S7-300


LIST L L ==I SPB L <> I SPB Stop ErrA: CALL "REPL_VAL" VAL : = DW#16#2912 RET_VAL : = #Erreur L L ==I BEB #Erreur 0 Comparer #Erreur 0 (si gal, pas d'erreur lors du traitement de l'OB122). Fin du bloc si pas d'erreur. Repre "Stop" : Appeler la SFC46 STP pour mettre la CPU l'tat de fonctionnement "Arrt". QFeh B#16#2943 B#16#2942 #OB122_SW_FLT Description Comparer le code d'vnement de l'OB122 au code d'vnement (B#16#2942) pour acquittement d'une erreur de temps lors de la lecture de la priphrie. Si identiques, sauter "ErrA". Comparer le code d'vnement de l'OB122 au code d'vnement (B#16#2943) pour erreur d'adressage (criture d'un module inexistant). Si diffrents, sauter "Stop". Repre "ErrA" : Transmettre DW#16#2912 (10010 binaire) la SFC44 (REPL_VAL). La SFC44 charge cette valeur dans l'ACCU1, remplaant ainsi la valeur qui a caus l'appel de l'OB122. Sauvegarder le code d'erreur SFC dans #Erreur.

Stop: CALL "STP"

500

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.4 Erreur de redondance de priphrie (OB70)


Description
Le systme d'exploitation de la CPU H appelle l'OB70 lorsqu'une perte de redondance se produit sur le rseau PROFIBUS DP (par exemple en cas de dfaillance du bus sur le matre DP actif ou en cas d'erreur de couplage de l'esclave DP) ou en cas de changement du matre DP actif pour des esclaves DP avec priphrie couple

Programmation de l'OB70
Vous devez crer l'OB70 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB70 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. L'OB70 peut, par exemple, vous servir : exploiter ses informations de dclenchement pour constater quel vnement dclench la perte de redondance de la priphrie. dterminer l'tat de votre systme l'aide de la SFC51 RDSYSST (SZL_ID=B#16#71).

La CPU ne passe pas ltat darrt lorsquune erreur de redondance de priphrie survient et que lOB70 nest pas programm. Si lOB70 est charg et si le systme H se trouve en fonctionnement redondant, lOB70 est trait dans les deux CPU. Le systme H reste en fonctionnement redondant. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

501

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.5 Erreur de redondance de CPU (OB72)


Description
Le systme d'exploitation de la CPU H appelle l'OB72 l'apparition d'un des vnements suivants : perte de redondance des CPU, erreur de comparaison (p. ex. RAM, MIS), bascule rserve-matre, erreur de synchronisation, erreur dans un module SYNC, interruption de la procdure dhorodatage. LOB72 est excut par toutes les CPU qui se trouvent ltat de marche ou de mise en route aprs un vnement de dclenchement correspondant.

Programmation de l'OB72
Vous devez crer l'OB72 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB72 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. L'OB72 peut, par exemple, vous servir : exploiter ses informations de dclenchement pour dterminer lvnement ayant dclench la perte de redondance de la CPU, dterminer ltat de votre systme laide de la SFC51 RDSYSST (SZL_ID=B#16#71), ragir la perte de redondance de la CPU en fonction de votre installation.

La CPU ne passe pas ltat darrt lorsquune erreur de redondance de CPU survient et que lOB72 nest pas programm. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

502

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.6 Erreur de temps (OB80)


Description
Le systme d'exploitation de la CPU appelle l'OB80 lorsqu'apparat une erreur de temps. Les erreurs de temps sont par exemple : le dpassement du temps de cycle maximal, le saut d'alarmes horaires parce que l'heure a t avance, un retard excessif pour le traitement d'une classe de priorit.

Programmation de l'OB80
Vous devez crer l'OB80 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB80 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. L'OB80 peut, par exemple, vous servir : exploiter ses informations de dclenchement pour constater quelles alarmes horaires ont t sautes ; dsactiver l'alarme horaire saute l'aide de la SFC29 CAN_TINT afin qu'elle ne soit pas excute et obtenir une situation nette pour le traitement des alarmes horaires avec la nouvelle heure rgle.

Si vous ne dsactivez pas les alarmes horaires sautes dans l'OB80, la premire alarme saute est traite et il n'est pas tenu compte de toutes les autres. Si l'OB80 n'est pas programm, la CPU se met l'tat de fonctionnement "Arrt" (STOP) la dtection d'une erreur de temps. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

503

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.7 Erreur d'alimentation (OB81)


Description
Le systme d'exploitation de la CPU appelle l'OB81 lors d'une dfaillance dans l'appareil de base ou dans un appareil d'extension : de la tension d'alimentation 24 V, d'une pile, du systme de sauvegarde entier,

ou bien lorsqu'il a t remdi cette dfaillance (appel pour vnement entrant et sortant).

Programmation de l'OB81
Vous devez crer l'OB81 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB81 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. L'OB81 peut, par exemple, vous servir : aprs exploitation de ses informations de dclenchement, constater quelle erreur d'alimentation est apparue ; connatre le numro du profil support ou du chssis l'alimentation dfaillante ; commander une lampe sur un poste d'opration afin de signaler au personnel de maintenance qu'une pile doit tre remplace.

La CPU ne se met pas l'tat "Arrt" (STOP) si l'OB81 n'est pas programm et qu'une erreur d'alimentation est dtecte. L'erreur est cependant inscrite dans la mmoire tampon de diagnostic et la DEL correspondante en face avant signale cette erreur. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

504

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.8 Alarme de diagnostic (OB82)


Description
Le systme d'exploitation de la CPU appelle l'OB82 lorsqu'un module avec fonction de diagnostic pour lequel vous avez valid l'alarme de diagnostic dtecte une erreur et lorsqu'il a t remdi cette erreur (appel pour vnement entrant et sortant).

Programmation de l'OB82
Vous devez crer l'OB82 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB82 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. Vous pouvez, par exemple, vous servir de l'OB82 pour : exploiter ses informations de dclenchement, effectuer un diagnostic prcis de l'erreur apparue.

Lorsqu'une alarme de diagnostic est dclenche, le module dfectueux inscrit automatiquement 4 octets de donnes de diagnostic et son adresse de dbut dans les informations de dclenchement de l'OB d'alarme de diagnostic et dans la mmoire tampon de diagnostic. Vous apprenez ainsi sur quel module et quel moment s'est produite l'erreur. Vous pouvez exploiter d'autres donnes de diagnostic du module dfectueux (voie o s'est produite l'erreur, erreur dont il s'agit) l'aide d'un programme correspondant dans l'OB82. La SFC51 RDSYSST permet de lire les donnes de diagnostic du module et la SFC52WR_USRMSG d'inscrire ces informations dans la mmoire tampon de diagnostic. Vous pouvez, en outre, envoyer un appareil de contrle dclar un message de diagnostic que vous dfinissez vous-mme. Si vous n'avez pas programm l'OB82, la CPU passe l'tat de fonctionnement "Arrt" (STOP) au dclenchement d'une alarme de diagnostic. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

505

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.9 Alarme de dbrochage/enfichage (OB83)


Description
Les CPU S7-400 contrlent cycliquement (environ toutes les secondes) l'enfichage et le dbrochage de modules dans l'appareil de base ou les appareils d'extension. Aprs la mise sous tension secteur, la CPU vrifie si tous les modules numrs dans la table de configuration cre avec STEP 7 sont effectivement en place. Si c'est le cas, cette configuration relle est sauvegarde et sert de rfrence pour le contrle cyclique des modules. A chaque cycle de contrle, le nouvelle configuration relle constate est compare la configuration relle valable jusqu'alors. En cas de diffrences, une alarme de dbrochage/enfichage est signale avec entre dans la mmoire tampon de diagnostic et la liste d'tat systme. L'OB de dbrochage/enfichage est dclench l'tat de fonctionnement "Marche" (RUN).

Nota Il est interdit de retirer modules d'alimentation, CPU et IM l'tat de fonctionnement "Marche" (RUN). Deux secondes au moins doivent s'couler entre le retrait et l'enfichage d'un module pour que ce retrait ou cet enfichage soit correctement dtect par la CPU.

Paramtrage d'un module nouvellement enfich


Si un module est enfich l'tat "Marche" (RUN), la CPU vrifie si le type du nouveau module enfich correspond celui du module prcdent. Le paramtrage se fait si les types de modules correspondent : les paramtres par dfaut ou ceux que vous avez attribus via STEP 7 sont transmis au module.

Programmation de l'OB83
Vous devez crer l'OB83 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB83 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. Vous pouvez, par exemple, vous servir de l'OB83 pour : exploiter ses informations de dclenchement, reparamtrer le nouveau module enfich l'aide des fonctions systme SFC55 SFC59.

Si l'OB83 n'est pas programm, la CPU passe de l'tat de fonctionnement "Marche" (RUN) l'tat "Arrt" (STOP) l'apparition d'une alarme de dbrochage/enfichage. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

506

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.10 Erreur matrielle CPU (OB84)


Description
Le systme d'exploitation de la CPU appelle l'OB84 lorsqu'une erreur est dtecte pour l'interface au rseau MPI, au bus de communication ou au coupleur pour la priphrie dcentralise : p. ex. : lorsquun niveau de signal erron est dtect sur la voie ou lorsqu'il a t remdi cette erreur (appel pour vnement entrant et sortant).

Programmation de l'OB84
Vous devez crer l'OB84 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB84 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. Vous pouvez, par exemple, vous servir de l'OB84 pour : exploiter ses informations de dclenchement, envoyer un message la mmoire tampon de diagnostic l'aide de la fonction systme SFC52 WR_USMSG.

Si l'OB84 n'est pas programm, la CPU passe l'tat de fonctionnement "Arrt" (STOP) lors de la dtection d'une erreur matrielle CPU. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

507

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.11 Erreur dexcution du programme (OB85)


Description
Le systme d'exploitation de la CPU appelle l'OB85 lorsqu'il existe un vnement de dclenchement pour un OB d'alarme, mais que l'OB ne peut pas tre excut car il n'a pas t charg dans la CPU ; lorsqu'une erreur est apparue lors de l'accs au bloc de donnes d'instance d'un bloc fonctionnel systme ; lorsqu'une erreur est apparue lors de la mise jour de la mmoire image du processus (module configur et absent ou module configur et dfaillant).

Programmation de l'OB85
Vous devez crer l'OB85 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB85 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. Vous pouvez, par exemple, vous servir de l'OB85 pour : exploiter ses informations de dclenchement et dcouvrir quel module est dfaillant ou manque (indication de l'adresse de dbut du module), calculer l'emplacement du module concern l'aide de la fonction systme SFC49 LGC_GADR.

Si l'OB85 n'est pas programm, la CPU passe l'tat de fonctionnement "Arrt" (STOP) la dtection d'une erreur de classe de priorit.

508

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.12 Dfaillance d'unit (OB86)


Description
Le systme d'exploitation de la CPU appelle l'OB86 lorsqu'il a dtect l'un des vnements suivants : dfaillance d'un appareil d'extension centralis (pas pour S7-300), p. ex. cble de liaison interrompu, coupure de tension dcentralise d'un profil support ou chssis. dfaillance d'un rseau matre ou d'un esclave (PROFIBUS DP) ou dfaillance d'un rseau IO ou d'un IO Device (PROFINET IO).

L'OB86 est galement appel lorsqu'il a t remdi cette erreur (appel pour vnement entrant et sortant).

Programmation de l'OB86
Vous devez crer l'OB86 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB86 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. Vous pouvez, par exemple, vous servir de l'OB86 pour : exploiter ses informations de dclenchement et dcouvrir quelle unit est dfaillante ou manque, inscrire un message dans la mmoire tampon de diagnostic et envoyer ce message un appareil de contrle l'aide de la fonction systme SFC52 WR_USMSG.

Si l'OB86 n'est pas programm, la CPU passe l'tat de fonctionnement "Arrt" (STOP) la dtection d'une dfaillance d'unit. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

509

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.13 Erreur de communication (OB87)


Description
Le systme d'exploitation de la CPU appelle l'OB87 lorsqu'une erreur de communication apparat lors de l'change de donnes via des blocs fonctionnels de communication ou la communication par donnes globales, par exemple : un identificateur de tlgramme erron a t dtect lors de la rception de donnes globales, le bloc de donnes pour les informations d'tat des donnes globales manque ou est trop court.

Programmation de l'OB87
Vous devez crer l'OB87 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB87 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. Vous pouvez, par exemple, vous servir de l'OB87 pour : exploiter ses informations de dclenchement, crer un bloc de donnes si le bloc de donnes pour les informations d'tat de la communication par donnes globales manque.

La CPU ne passe pas l'tat de fonctionnement "Arrt" (STOP) lorsqu'une erreur de communication est dtecte et l'OB87 n'est pas programm. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

510

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.14 Erreur de programmation (OB121)


Description
Le systme d'exploitation de la CPU appelle l'OB121 lorsqu'une erreur de programmation apparat, par exemple : des temporisations adresses manquent, un bloc appel n'est pas charg.

Programmation de l'OB121
Vous devez crer l'OB121 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB121 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. Vous pouvez, par exemple, vous servir de l'OB121 pour : exploiter ses informations de dclenchement, inscrire la cause de l'erreur dans un bloc de donnes de signalisation.

Si l'OB121 n'est pas programm, la CPU passe l'tat de fonctionnement "Arrt" (STOP) la dtection d'une erreur de programmation. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

511

Diagnostic 23.9 Mesures prendre dans le programme pour traiter les erreurs

23.9.15 Erreur d'accs la priphrie (OB122)


Description
Le systme d'exploitation de la CPU appelle l'OB122 lorsqu'une opration STEP 7 accde une entre ou une sortie d'un module de signaux laquelle aucun module n'tait associ lors du dernier dmarrage, par exemple : erreur en cas d'accs direct la priphrie (module dfaillant ou manquant), accs une adresse de priphrie inconnue de la CPU.

Programmation de l'OB122
Vous devez crer l'OB122 avec STEP 7 comme objet dans votre programme S7. Ecrivez le programme devant tre trait dans l'OB122 dans le bloc cr et chargez-le dans la CPU en tant que partie de votre programme utilisateur. Vous pouvez, par exemple, vous servir de l'OB122 pour : exploiter ses informations de dclenchement, appeler la fonction systme SFC44 et indiquer une valeur de remplacement pour un module d'entres afin que le programme puisse se poursuivre avec une valeur dpendante du processus cohrente.

Si l'OB122 n'est pas programm, la CPU passe l'tat de fonctionnement "Arrt" (STOP) la dtection d'une erreur d'accs la priphrie. Des informations dtailles sur les OB, SFB et SFC sont donnes dans les aides sur les blocs correspondantes.

512

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'


23.10.1 Affichage graphique d'vnements de diagnostic
Afin de visualiser sous forme graphique des rsultats de diagnostic sur un appareil HMI, vous pouvez gnrer un DB PROFIBUS DP (standard : DB 125) ou un DB PROFINET IO (standard : DB 126).

23.10.2 Etat de diagnostic


23.10.2.1 Aperu gnral sur l'tat de diagnostic
La 'signalisation d'erreurs systme' vous permet de configurer la gnration des blocs de telle sorte que les blocs de donnes gnrs puissent recevoir l'tat actuel des rseaux matre PROFIBUS ou des rseaux PROFINET IO. Le DB PROFIBUS DP (DB 125) prend en charge l'tat d'esclaves PROFIBUS dans des rseaux matres DP (1),..., (32). Le DB PROFINET IO (DB 126) prend en charge l'tat d'IO-Device dans des rseaux IO (100),..., (115) et l'tat d'esclaves DP dans des rseaux matres (2980ff) en aval d'un IE/PB-Link. Le DB d'tat de diagnostic (DB 127) prend en charge l'tat de chssis, modules centraux, d'esclaves PROFIBUS et d'IO-Device.

23.10.2.2 Etat de diagnostic PROFIBUS Interface pour le DB PROFIBUS DP


Le bloc de donnes cr reprsente l'tat actuel de toutes les stations configures du rseau matre DP actuel et peut, sur demande, dcrire de manire plus dtaille l'tat de tous les esclaves DP. Le bloc de donnes est gnr de manire dynamique et dpend de la configuration matrielle. Le DB permet au FB de diagnostic SFM (par dfaut, le FB 49) d'accder aux donnes de diagnostic. L'tat actuel des esclaves DP est entr directement par ce FB dans le DB PROFIBUS. Durant l'dition du DB PROFIBUS, toutes les interruptions sont retardes. Les informations sur les interfaces prises en charge figurent dans le fichier Lisezmoi.

Nota Le rseau matre d'un IE/PB-Link n'est pas diagnosticable. Le diagnostic est effectu via le DB PROFINET IO.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

513

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Mode de fonctionnement "Manuel"


Dans ce mode de fonctionnement, toutes les erreurs de la station slectionne s'affichent successivement.

Mode de fonctionnement "Automatique"


Dans ce mode de fonctionnement, les erreurs de toutes les stations configures s'affichent successivement.

Plage des variables statiques


Adresse 0 2.0 2.1 2.2 2.3 2.4 2.5 3 4.0 5 6 7 Nom DP_MASTERSYSTEM EXTERNAL_DP_INTERFACE MANUAL_MODE SINGLE_STEP_SLAVE SINGLE_STEP_ERROR RESET SINGLE_DIAG SINGLE_DIAG_ADR ALL_DP_SLAVES_OK SUM_SLAVES_DIAG SLAVE_ADR SLAVE_STATE Type de donnes INT BOOL BOOL BOOL BOOL BOOL BOOL BYTE BOOL BYTE BYTE BYTE Description Numro du rseau matre DP Interface DP externe (CP/IM) Mode de fonctionnement Passage la station suivante concerne Passage l'erreur suivante Rseau matre DP (numro et interface) repris ; tout est rinitialis Diagnostic d'esclave DP individuel Adresse d'esclave DP pour diagnostic individuel Affichage group indiquant si tous les esclaves DP fonctionnent sans erreur Nombre de stations concernes (dfaillantes ou dfectueuses) Numro de la station actuelle Etat de la station : 0 : o.k. 1 : dfaillant 2 : dfectueux 3 : non configur/diagnostic impossible Numro d'identification PROFIBUS Numro d'erreur actuel 1 : diagnostic d'emplacement (indication gnrale) 2 : tat du module 3 : diagnostic de voie d'aprs la norme DP 4 : diagnostic S7 (DS0/DS1) 5 : diagnostic d'appareil (spcifique au fabricant) 6 : diagnostic de cble (rpteur de diagnostic) 7 : diagnostic d'appareil dcod Numro d'emplacement. Numro de voie. Type de voie
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

8 10 11

SLAVE_IDENT_NO ERROR_NO ERROR_TYPE

WORD BYTE BYTE

12 13 14

MODULE_NO CHANNEL_NO CHANNEL_TYPE

BYTE BYTE BYTE

514

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Adresse 15 16 20 24 25.0 25.1 1176 1191 1192 1207 1208 1223 1224 1239 1240 1255 1256 1271 1272 1397 1404 1408 1412 1416 1418 1420 1424

Nom CHANNEL_ERROR_CODE CHANNEL_ERROR_INFO_1 CHANNEL_ERROR_INFO_2 DIAG_COUNTER DIAG_OVERFLOW BUSY CONFIG_SLAVES EXIST_SLAVES FAILED_SLAVES FAULTY_SLAVES AFFECT_SLAVES AFFECT_SLAVES_MEM DIAG_CNT ERROR_CAT HELP_CAT ERROR_NO MAP_ERRORNO MAP_HELPNO MASTERSTATUS_FAILED MASTERSTATUS_FAULTY

Type de donnes BYTE DWORD DWORD BYTE BOOL BOOL BYTE [1..244] DWORD [1..4] DWORD [1..4] DWORD [1..4] DWORD [1..4] DWORD [1..4] DWORD [1..4] BYTE [1..126] DWORD DWORD DWORD WORD WORD BOOL [1..32] BOOL [1..32]

Description Code d'erreur Erreur de voie code 1 Erreur de voie code 2 Somme de tous les diagnostics de la station affiche Dbordement du diagnostic Exploitation en cours Donnes de diagnostic esclave Esclaves configurs Esclaves existants (accessibles) Esclaves dfaillants Esclaves dfectueux Esclaves concerns (dfaillants ou dfectueux) Enregistrement des esclaves concerns (interne) Nombre de diagnostics par esclave ID de la bibliothque de textes du texte d'erreur ID de la bibliothque de textes du texte d'aide ID de texte dans les bibliothques de textes ID d'erreur dans le fichier d'exportation ID du texte d'aide dans le fichier d'exportation True, si au moins une station du rseau matre PROFIBUS (1 - 32) est dfaillante True, si au moins une station du rseau matre PROFIBUS (1 - 32) est dfectueuse

932 - 1176 DIAG_DAT_NORM

Etat de la station dans la vue :


Etat Codage OK 0 Dfaillant 1 Dfectueux 2 Non configur/ diagnosticable 3

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

515

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

23.10.2.3 Exemple pour un DB 125 avec un esclave DP


Voici un exemple d'affectation du DB 125 en mode de fonctionnement "Manuel" :
DP_MASTERSYSTEM EXTERNAL_DP_INTERFACE MANUAL_MODE SINGLE_STEP_SLAVE SINGLE_STEP_ERROR RESET SINGLE_DIAG SINGLE_DIAG_ADR INT BOOL BOOL BOOL BOOL BOOL BOOL BYTE 0 2.0 2.1 2.2 2.3 2.4 2.4 3.0 (dernires valeurs utilises) Inutilis (dernires valeurs utilises) TRUE Inutilis Front positif passe l'erreur suivante Inutilis (sauf pour front positif) Front positif : relecture du tlgramme Numro de station (1 126)

23.10.2.4 Exemple de requte DB PROFIBUS DP


Vous souhaitez appeler toutes les erreurs du rseau matre 27 sur l'OP. Ce rseau matre est enfich sur une interface intgre. La station ET 200S, PROFIBUS-ID 15, adresse de diagnostic 8190 prsente une erreur de voie.

Requte :
DP_MASTERSYSTEM EXTERNAL_DP_INTERFACE RESET 27 FALSE Aprs TRUE (front positif)

Rsultat :
ALL_DP_SLAVE_OK SUM_SLAVES_DIAG SLAVE_ADR SLAVE_STATE SLAVE_IDENT_NO ERROR_NO ERROR_TYPE MODULE_NO MODULE_STATE CHANNEL_NO CHANNEL_TYPE CHANNEL_ERROR_CODE FALSE : des dfaillances sont survenues 1 : une station est dfaillante 15 : adresse PROFIBUS 2 : dfaillant W#16#80E0: ET 200S HF 1 : premire erreur 3 : diagnostic de voie conforme la norme DP 2 0 : module correct 2 : voie 2 2 : sortie 1 : court-circuit
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

516

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

ALL_DP_SLAVE_OK CHANNEL_ERROR_INFO_1 CHANNEL_ERROR_INFO_2 DIAG_COUNTER DIAG_OVERFLOW BUSY

FALSE : des dfaillances sont survenues 2 : court-circuit 0 3 : 3 alarmes de diagnostic ont dj t dclenches FALSE FALSE

Variable CONFIG_SLAVES EXIST_SLAVES FAILED_SLAVES FAULTY_SLAVES AFFECT_SLAVES AFFECT_SLAVES_MEM DIAG_CNT

Adresse binaire 1176 + 15 - 1 = 1192 1192 + 15 1 = 1216 1208 + 15 1 = 1222 1224 + 15 1 = 1238 1240 + 15 1 = 1254 1256 + 15 1 = 1270 1272 + (15-1) * 8 = 1384

Valeur TRUE TRUE FALSE TRUE TRUE TRUE B#16#3

Explication Station 15 configure Station 15 existe Station 15 non dfaillante Station 15 dfaillante Station 15 est concerne Station 15 a t concerne 3 alarmes de diagnostic

Une fois l'erreur corrige, les erreurs sont actualises :

Rsultat :
ALL_DP_SLAVE_OK TRUE : aucune dfaillance n'est survenue SUM_SLAVES_DIAG 0 : aucune station n'est dfaillante
Variable CONFIG_SLAVES EXIST_SLAVES FAILED_SLAVES FAULTY_SLAVES AFFECT_SLAVES AFFECT_SLAVES_MEM DIAG_CNT Adresse binaire 1176 + 15 - 1 = 1192 1192 + 15 1 = 1216 1208 + 15 1 = 1222 1224 + 15 1 = 1240 + 15 - 1 1256 + 15 - 1 1272 + (15-12) * 8 Valeur TRUE TRUE FALSE FALSE FALSE TRUE B#16#4 Explication Station 15 configure Station 15 existe Station 15 non dfaillante Station 15 dfaillante Station 15 est concerne Station 15 a t concerne 4 alarmes de diagnostic

23.10.2.5 Etat de diagnostic PROFINET Interface pour le DB PROFINET IO


Le bloc de donnes cr reprsente l'tat actuel de tous les appareils configurs et peut, sur demande de l'appareil IHM, dcrire de manire plus dtaille l'tat d'un appareil. Le bloc de donnes est gnr de manire dynamique et dpend de la configuration matrielle. Le DB permet au FB de diagnostic SFM (par dfaut, le FB 49) d'accder aux donnes de diagnostic. L'tat actuel des appareils est entr directement par ce FB dans le DB.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

517

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Un seul appareil IHM (p. ex. OP, MP, PC) peut accder au DB pour le commander. Si plusieurs appareils IHM sont connects, la commande simultane est verrouille via la variable IHM_ID. Les informations sur les interfaces prises en charge figurent dans le fichier Lisezmoi.

Nota Le diagnostic en aval d'un IE/PB-Link est restreint.

Plage de variables statique


Adresse 0 2 4 6.0 6.1 6.2 6.3 7 8 10 12 14 16 17 18 20 22 24 28 32 36 38 40 42 Module_No Submodule_No Channel_No Error_Cat Help_Cat Error_No Map_ErrorNo Map_HelpNo Number_IO_Sys Systems_Status Nom HMI_ID System_No Device_No Enable Next_Error Busy More_Errors Device_Status Offset_System_Header Offset_System_Array Vendor_ID Device_ID Error_Level Type de donnes WORD WORD WORD BOOL BOOL BOOL BOOL BYTE WORD WORD WORD WORD BYTE BYTE WORD WORD WORD DWORD DWORD DWORD WORD WORD WORD WORD Description N de l'OP qui utilise le DB (0 = inutilis) N du systme IO vrifier N de l'appareil IO vrifier Appelle les erreurs de l'appareil indiqu Appelle l'erreur suivante du mme appareil Busy = 1 ; valuation en cours Il existe d'autres messages d'erreur Etat de l'appareil concern Adresse de Detail_IO_Sys[n] du systme recherch Adresse de IO_Sys[n] du systme recherch Identification du fabricant ; complte si prise en charge par la CPU Identification de l'appareil ; complte si prise en charge par la CPU Niveau d'erreur 1=appareil IO, 2=module, 3=cartouche, 4=voie Rserv N du module concern N de la cartouche concerne N de la voie concerne Catgorie de l'erreur (index dans le lexique) Catgorie de l'erreur dans le lexique d'aide Numro de l'erreur (index dans le lexique) Les numros du texte d'erreur dans le tableau d'exportation Les numros du texte d'aide dans le tableau d'exportation Nombre de systmes IO configurs Vue d'ensemble de tous les systmes IO

518

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Plage de variables dynamiques


Nom de manire unique par systme IO Detail_IO_Sys System_No Max_Num_Dev Offset Devices_Affected Offset_Status Type Struct[n] Word Word Word Word Word Commentaire Tableau de structures par systme IO Numro du systme ID maximum des appareils configurs Dcalage en octets au dbut du tableau par rapport Detail_IO_Sys Nombre d'appareils concerns Dcalage en octets au dbut du tableau IO_Sys_Status indpendamment de Detail_IO_Sys

par appareil

IO_Sys_<n>

ARRAY OF WORD[n] Etat des groupes ; 1 bit pour 16 appareils. Le tableau est assez grand pour contenir tous les appareils configurs (Max_Num_Dev ).

Etat d'un appareil dans la vue IO_Sys_<n> :


Etat Dodage (Bit b+1, Bit b) Octet Bit IO_Sys_<n>[0] : numro d'appareil IO_Sys_<n>[1] : numro d'appareil ... OK 00 dfaut 01 dfaillance 10 non configur 11

N 6-7 4 12 4-5 3 11 2-3 2 10 0-1 1 9

N+1 6-7 8 16 4-5 7 15 2-3 6 14 0-1 5 13

Etat d'un groupe d'appareil dans la vue IO_Sys_Status_<n> :


Etat Codage Tous les appareils du groupe sont OK ou non configurs 0 Au moins un appareil du groupe est dfectueux ou dfaillant 1

Octet Bit IO_Sys_Status_<n>[0] : numro d'appareil

N 7 113-128 ... 17-112 0 1 - 16

N+1 7 241 - 256 ... 145 - 240 0 129 - 144

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

519

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Octet Groupe ...

N 8 2-7 1

N+1 16 10 - 15 9

23.10.2.6 Exemple pour un DB 126 avec un systme IO 100 et les appareils de numro 2, 3 et 4
Number_IO_Sys Detail_IO_Sys [0].System_No Detail_IO_Sys [0].Max_Num_Dev Detail_IO_Sys [0].Offset W#16#1 W#16#64 W#16#4 W#16#2E Nombre de systmes IO configurs Numro du systme ID maximum des appareils configurs Dcalage au dbut du tableau IO_Sys_Status dans l'octet relatif Detail_IO_Sys Nombre d'appareils concerns Liste d'tat du systme IO 100

Detail_IO_Sys [0].Devices_Affected IO_Sys_0

W#16#0 ARRAY [0..0] OF WORD

Etat :
Device 1 Device 2 Device 3 Device 4 non configur dfaillant OK non accessible

"Devices_Affected" a ainsi t modifi :


Detail_IO_Sys [0].Devices_Affected W#16#2 Nombre d'appareils concerns

La barre d'tat est groupe sous forme de champ de bits, 2 bits formant l'tat d'un appareil. L'octet 50 se prsente de la manire suivante: [11] [01] [00] [10]

23.10.2.7 Exemple de requte DB PROFINET IO


Vous voulez appeler dans l'OP avec l'HMI_ID 1 l'erreur du Device 50 dans le systme IO 100. Si l'HMI_ID est "0", l'OB n'est utilis par personne et une requte peut tre mise.

Requte
HMI_ID System_No 1 100

520

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

HMI_ID Device_No Enable Next_Error

1 50 TRUE *

Comme le bloc travaille de manire asynchrone, vous devez attendre que Busy soit sur "false". Rsultat pour un systme IO 100 : Device 50 a deux erreurs de voie.

Rsultat 1
Busy Offset_Sys_Header Offset_Sys_Array Vendor Id Device Id Device_Status More_Errors Error_Level Map_HelpNr 16884 FALSE 42 50 0 0 1 TRUE 4

* : Les champ avec * sont ignorer.

23.10.2.8 DB d'tat de diagnostic Interface pour le DB d'tat de diagnostic


Le bloc de donnes gnr (DB 127) offre la possibilit de raliser une requte de l'tat systme d'un composant configur ainsi qu'ventuellement de tous ses sous-composants. Ce bloc de donnes est requis pour la prise en charge du diagnostic systme via le serveur Web de la CPU. Il est dsactiv par dfaut, cependant lorsque cette fonctionnalit est galement active dans une CPU configure, le DB 127 est activ automatiquement par la 'Signalisation d'erreurs systme'.

Nota Aprs le dmarrage d'une CPU serveur Web, l'tat du module est affich avec un certain retard. Pour rduire le temps d'attente, vous pouvez appeler le bloc de diagnostic SFM dans un OB d'alarme cyclique priode plus courte.

Plage de variables statique

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

521

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Adresse +0 0 2 4 6 8 10 12 14 +16 0 2.0

Nom Directory D_Version D_pGlobalState D_pQuery D_pComponent D_pError D_pState D_pAlarm D_pSubComponent GlobalState G_EventCount G_StartReporting

Type de donnes WORD WORD WORD WORD WORD WORD WORD WORD

Description Version prenant en charge SFM Dcalage d'octet jusqu'au dbut de la section "GlobalState" Dcalage d'octet jusqu'au dbut de la section "Query" Dcalage d'octet jusqu'au dbut de la section "Component" Dcalage d'octet jusqu'au dbut de la section "Error" Dcalage d'octet jusqu'au dbut de la section "State" Dcalage d'octet jusqu'au dbut de la section "Alarm" Dcalage d'octet jusqu'au dbut de la section "Subcomponent" ID du dernier vnement (compteur) Exploitation du dmarrage en cours

WORD BOOL

522

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Adresse +20 0

Nom Query Q_ClientID_User

Type de donnes DWORD

Description ID du client ; utilisez une valeur comprise entre 1 et 255. Assurez-vous que des clients diffrents utilisent des ID diffrentes. ID du client (interne) Avec/sans tat du composant subordonn (lent) Le matre AS-i renvoie des alarmes l'esclave AS-i. Rserv Rserv Rserv Rserv Rserv Rserv Lancer l'interrogation Erreur interne lors de l'interrogation Rserv Mode d'adressage du module Rserv ID matrielle du composant (interne) Indice de l'erreur requise/relle Mis 1 lorsque E_ErrorNo est diffrent de 0. Valeur TRUE, si E_ErrorNo correspond l'indice de la dernire erreur, sinon FALSE Rserv

4 8.0 8.1 8.2 8.3 8.4 8.5 8.6 8.7 9.0 10.0 11.0 +32 0 1 2 +36 0 2.0

Q_ClientID_Intern

DWORD

Q_WithSubCompone BOOL nt Q_SubComponentAl arm Q_Reserved2 Q_Reserved3 Q_Reserved4 Q_Reserved5 Q_Reserved6 Q_Reserved7 Q_Start Q_Error Q_Reserved8 Component C_AddressMode C_Reserved1 C_ComponentID Error E_ErrorNo E_LastError WORD BOOL BYTE BYTE WORD BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BYTE BYTE

2.1

E_Reserved

ARRAY [1..15] BOOL

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

523

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Adresse +40 0 1 2.0 2.1 2.2 2.3

Nom State S_Hierarchy S_Periphery S_SupFault S_NotAvailable S_Faulty S_MoreErrors

Type de donnes BYTE BYTE BOOL BOOL BOOL BOOL

Description Rserv Rserv Le composant n'est pas accessible Le composant manque Le composant est dfaillant ; la section "Alarm" n'est pas vide Le nombre d'erreurs dpasse la capacit d'enregistrement de la Signalisation d'erreurs systme Une ncessit de maintenance a t signale Une requte de maintenance a t mise Le composant a t dsactiv *) Rserv Un composant subordonn est dfaillant Une ncessit de maintenance a t signale pour un composant subordonn Une requte de maintenance a t mise pour un composant subordonn Un composant subordonn est dsactiv. Rserv Rserv Rserv Rserv Etat de maintenance du composant Etat de maintenance : voies configures Etat de maintenance : voies dfaillantes Nombre de voies; valable uniquement si Q_WithSubComponent est active Liste des voies concernes; valable uniquement si Q_WithSubComponent est active

2.4 2.5 2.6 2.7 3.0 3.1

S_Maintenance1 S_Maintenance2 S_Deactivated S_Reserved2 S_SubFault S_SubMaintenance1

BOOL BOOL BOOL BOOL BOOL BOOL

3.2 3.3 3.4 3.5 3.6 3.7 4.0 8.0 12.0 16.0 18.0

S_SubMaintenance2 S_SubDeactivated S_Reserved4 S_Reserved5 S_Reserved6 S_Reserved7 S_TIAMS

BOOL BOOL BOOL BOOL BOOL BOOL DWORD

S_TIAMSChannelExi DWORD st S_TIAMSChannelOK DWORD S_ChannelCount S_ChannelVector WORD ARRAY [0..255] BOOL

524

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Adresse +90 0 2 4 6 8 10 12 14 16 18 20 22 26 28 +130 0 2

Nom Alarm A_ComponentID A_TextID1 A_TextLexikonID1 A_HelpTextLexikonI D1 A_MapTextID A_MapHelpTextID A_TextID2 A_TextLexikonID2 A_HelpTextLexikonI D2 A_MapTextID2 A_MapHelpTextID2 A_AlarmID A_ValueCount A_AssociatedValue SubComponent

Type de donnes WORD WORD WORD WORD WORD WORD WORD WORD WORD WORD WORD DWORD WORD ARRAY [1..6] WORD

Description ID matrielle du composant (interne) ID du premier texte d'erreur ID du premier dictionnaire de textes d'erreur ID du premier dictionnaire de textes d'aide ID du premier texte d'erreur dans le fichier d'exportation (IHM) Rserv Rserv Rserv Rserv Rserv Rserv Numro de message Nombre d'octets supplmentaires occups (12) Valeurs accompagnant le message n = A_ValueCount / 2 (= 6) Nombre de composants subordonns Liste de composants subordonns "n" dpend de la configuration **)

U_SubComponentCo WORD unt U_SubComponentFa ARRAY [1..32] ult BOOL

*) Si le composant a t dsactiv, lindex de lerreur demande/effective nest pas modifie et "E_LastError" est mis sur "true". En outre, la plage de variables de lalarme nest pas remplie. **) La liste des composants de niveau infrieur est uniquement valide lorsque Q_WithSubComponent est mis 1. ARRAY contient un octet d'tat par composant configur. Dans le cas d'un matre, ARRAY contient l'tat des stations configures, tries par ordre croissant de leur ID. Dans le cas d'une station, ARRAY contient l'tat des emplacements configurs, tris par ordre croissant de leur numro. Ce champ peut comporter au maximum 4096 entres (pour un rseau IO) ; seule la taille maximale effective s'affiche. L'octet d'tat pour chaque composant de niveau infrieur est dfini de la manire suivante : Bit 0 = SubFault : le composant n'est pas accessible Bit 1 = Fault : le composant n'est pas disponible ou est erron Bit 2 = Maintenance1 : le composant a signal une maintenance Bit 3 = Maintenance2 : le composant a signal une maintenance Bit 4 = Deactivated : le composant a t dsactiv Bit 5 = SubFault : un composant de niveau infrieur est dfaillant Bit 6 = SubMaintenance1 : un composant de niveau infrieur a signal une maintenance Bit 7 = SubMaintenance2 : un composant de niveau infrieur a signal une maintenance

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

525

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

23.10.2.9 Exemple de requte d'un DB d'tat de diagnostic Exemple 1 :


Sur l'OP, vous souhaitez raliser une requte des erreurs du module central possdant l'adresse de priphrie AB 50. Ce module possde deux voies, la voie 1 a signal une rupture de fil. Comme ID client, vous avez slectionn la valeur "5".

Requte
1. Tant que Q_ClientID_Intern est diffrent de DW#16#00000005, Q_ClientID_User := DW#16#00000005 2. Si Q_ClientID_Intern est gal DW#16#00000005 Q_WithSubComponent := FALSE C_AddressMode := B#16#1 C_ComponentID := W#16#8032 E_ErrorNo := 1 Q_Start := TRUE 3. Attente jusqu' ce que Q_Start soit gal FALSE 4. Si Q_ClientID_Intern est diffrent de DW#16#00000005, retour l'tape 1 5. Lecture des donnes : S_SupFault S_NotAvailable S_Faulty S_MoreErrors S_Maintenance1 S_Maintenance2 S_SubFault S_SubMainenance1 S_SubMaintenance2 S_TIAMS S_TIAMSChannelExist S_TIAMSChannelOK S_ChannelCount A_ComponentID A_TextID1 A_TextLexikonID1 FALSE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE DW#16#00000007 DW#16#00000003 DW#16#FFFFFFFD W#16#2 W#16#8002 W#16#8C06 W#16#1

526

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

A_AlarmID A_ValueCount A_AssociatedValue[1] A_AssociatedValue[2] A_AssociatedValue[3] A_AssociatedValue[4] A_AssociatedValue[5] A_AssociatedValue[6] U_SubComponentCount U_SubComponentFault[]

DW#32#60200032 W#16#C W#16#8C06 W#16#1 W#16#0 W#16#0 W#16#0 W#16#8002 W#16#0 {FALSE}

1. Vrification de la validit : Si Q_ClientID_Intern est diffrent de DW#16#00000005, retour l'tape 1 2. L'exploitation des donnes est possible. Le DB est rinitialis automatiquement.

Exemple 2 :
Sur l'OP avec l'adresse IP 192.168.10.54, vous souhaitez raliser une requte des erreurs du rseau matre DP connect au CP possdant l'adresse de diagnostic E 16383. Les stations DP possdant les adresses Profibus 1, 48, 50 ont t configures. La station 1 est dfaillante, la station 48 fonctionne sans erreur et la station 50 est dfaillante.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

527

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

Requte
1. Tant que Q_ClientID_Intern est diffrent de DW#16#00000005, Q_ClientID_User := DW#16#00000005 2. Si Q_ClientID_Intern est gal DW#16#00000005, Q_WithSubComponent := TRUE C_AddressMode := B#16#1 C_ComponentID := W#16#3FFF E_ErrorNo := 0 Q_Start := TRUE 3. Attente jusqu' ce que Q_Busy gal FALSE 4. Si Q_ClientID_Intern est diffrent de DW#16#00000005, retour l'tape 1 5. Lecture des donnes : S_SupFault S_NotAvailable S_Faulty S_MoreErrors S_Maintenance1 S_Maintenance2 S_SubFault S_SubMainenance1 S_SubMaintenance2 S_TIAMS S_TIAMSChannelExist S_TIAMSChannelOK S_ChannelCount U_SubComponentCount U_SubComponentFault[1] U_SubComponentFault[2] U_SubComponentFault[3] FALSE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE DW#16#0 DW#16#0 DW#16#0 W#16#0 W#16#3 TRUE FALSE TRUE

6. Vrification de la validit : Si Q_ClientID_Intern est diffrent de DW#16#00000005, retour l'tape 1 7. L'exploitation des donnes est possible. Le DB est rinitialis automatiquement

528

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

23.10.2.10 Importation des textes d'erreur et d'aide


Pour pouvoir afficher les textes d'erreur et d'aide dans les pupitres IHM, vous devez les importer dans chaque pupitre. Pour cela, plusieurs fichiers d'exportation sont gnrs la gnration de la signalisation d'erreurs systme dans le rpertoire d'exportation paramtr. Le fichier d'exportation est dfini dans l'onglet Prise en charge de diagnostic dans le champ 'Fichiers d'exportation IHM'. Comme les possibilits d'affichage sur les pupitres IHM sont diffrentes, plusieurs fichiers d'exportation sont gnrs. Les fichiers pour PROFIBUS ou PROFINET se diffrencient dans la longueur maximale des textes qu'ils contiennent, les textes trop longs sont coups la longueur maximale correspondante. C'est la raison pour laquelle il est recommand de vrifier les textes d'erreur et d'aide et de les adapter le cas chant.
Nom Other_Profibus40...csv Other_Profinet40...csv Other_Profibus80...csv Other_Profinet80...csv Other_Profibus256...csv Other_Profinet256...csv Contenu Texte d'erreur/d'aide pour PROFIBUS avec une longueur de texte de 40 caractres Texte d'erreur/d'aide pour PROFINET avec une longueur de texte de 40 caractres FeTexte d'erreur/d'aide pour PROFIBUS avec une longueur de texte de 80 caractres Texte d'erreur/d'aide pour PROFINET avec une longueur de texte de 80 caractres Texte d'erreur/d'aide pour PROFIBUS avec une longueur de texte de 256 caractres Texte d'erreur/d'aide pour PROFINET avec une longueur de texte de 256 caractres

Une dsignation forme partir du projet, de la station et de la CPU est encore ajoute au nom du fichier prcit. Ceci vous permet d'exporter les fichiers d'exportation pour diffrentes CPU dans le mme rpertoire. Vous devez renommer le fichier d'exportation avec la longueur en 'other.csv' et l'importer dans l'OP. Dans les cas suivants, vous devez importer un nouveau fichier d'exportation dans le pupitre IHM : Modification de la configuration matrielle Modification du paramtrage de la 'Signalisation d'erreurs systme'

Langue d'affichage Allemand (Liechtenstein) sur l'OP


La langue d'affichage Allemand (Liechtenstein) ne peut pas tre paramtre sur le pupitre IHM, car les textes d'erreur et d'aide ne sont sinon pas affichs correctement.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

529

Diagnostic 23.10 Diagnostic systme avec la 'signalisation d'erreurs systme'

530

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

24
24.1

Impression et archivage
Impression de la documentation du projet
Une fois cr le programme pour votre solution d'automatisation, vous pouvez imprimer toutes les donnes importantes de votre projet afin de le documenter, en utilisant les fonctions d'impression intgres STEP 7.

Elments constituants du projet imprimables


Vous pouvez imprimer un objet soit directement depuis SIMATIC Manager, soit en ouvrant l'objet voulu puis en dmarrant l'impression. Depuis SIMATIC Manager, vous pouvez directement imprimer les lments constituants suivants d'un projet : arborescence des objets (structure du projet/de la bibliothque) liste d'objets (contenu d'un dossier d'objets) contenu d'un objet messages

En ouvrant l'objet correspondant, vous pourrez imprimer par exemple les lments constituants suivants du projet : blocs, dans les modes de reprsentation CONT, LOG, LIST ou dans un autre langage (logiciel optionnel), table des mnmoniques (avec les mnmoniques d'adresses absolues), table de configuration avec la disposition des modules dans l'automate et les paramtres des modules, contenu de la mmoire tampon de diagnostic, table des variables avec formats de valeur d'tat et valeurs d'tat et de forage, donnes de rfrence, c'est--dire listes des rfrences croises, tableaux d'affectation, structures de programme, oprandes libres, mnmoniques manquants, table des donnes globales, caractristiques du module avec tat du module, textes destins l'utilisateur (textes utilisateur et bibliothques de textes), documents de progiciels optionnels, par exemple de langages de programmation.

Progiciel optionnel DOCPRO


Pour crer, diter et imprimer des dossiers normaliss de vos schmas d'installation, vous pouvez utiliser le progiciel optionnel DOCPRO. Vous obtenez ainsi une documentation de votre installation rpondant aux normes DIN et ANSI.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

531

Impression et archivage 24.1 Impression de la documentation du projet

24.1.1 Marche suivre pour l'impression


Pour l'impression, procdez de la manire suivante : 1. Ouvrez l'objet appropri pour afficher l'cran les informations imprimer. 2. Appelez la bote de dialogue d'impression l'aide de la commande Fichier > Imprimer... dans la fentre en question. Selon la fentre, le premier menu dans la barre des menus peut diffrer de "Fichier". Il peut par exemple s'agir du menu "Table". 3. Modifiez, si ncessaire, les paramtres d'impression dans la bote de dialogue (par exemple, l'imprimante, ltendue, le nombre d'exemplaires), puis fermez cette bote de dialogue. Certaines botes de dialogue, comme par exemple celle de l'tat du module contiennent le bouton "Imprimer". Cliquez sur ce bouton pour imprimer le contenu de la bote de dialogue. Il n'est pas ncessaire d'ouvrir les blocs. Vous pouvez les imprimer directement dans SIMATIC Manager via la commande Fichier > Imprimer....

24.1.2 Fonctions d'impression


Pour imprimer les objets, vous disposez des fonctions complmentaires suivantes :
Objet imprimer Commande Fonction Aperu avant impression Blocs, sources LIST Etat du module Table de donnes globales Table de configuration Objet, dossier Objets Donnes de rfrence Table des mnmoniques Table des variables Table des liaisons Textes destins l'utilisateur (textes personnaliss, bibliothques de textes) Table GD > * Station > * Fichier > * Donnes de rfrence > * Table > * Table > * Rseau > * Textes > * Fichier > * Fonction Mise en page, onglet "Format papier" Fonction Mise en page, onglet "En-tte et bas de page"

* : Le caractre * dsigne la fonction correspondante dans la commande (p. ex. Aperu avant impression ou Mise en page)

La marche suivre pour imprimer les objets individuels est donne dans : Impression.

532

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Impression et archivage 24.1 Impression de la documentation du projet

Aperu avant impression


Grce la fonction "Aperu avant impression", vous pouvez examiner le document avant de l'imprimer. Nota L'aperu avant impression n'affiche pas la prsentation de l'impression optimise.

Dfinition de la mise en page ainsi que des en-ttes et bas de page


En choisissant la commande de menu Fichier > Mise en page, puis l'onglet "Format du papier", vous pouvez dfinir la mise en page (p. ex. A4, A5, Lettre) et l'orientation (portrait ou paysage) pour le document imprimer. Vous pouvez galement prciser si ces paramtres s'appliquent l'ensemble du projet ou uniquement la session actuelle. Adaptez le formulaire utilis pour l'impression au format de papier dsir. Si le formulaire est trop large, la partie droite sera imprime sur une page suivante. Si vous choisissez une taille de papier avec marge (par exemple : "A4 marge"), le document imprim aura une marge gauche qui peut servir le perforer. Dans l'onglet "En-ttes et bas de page", vous pouvez dfinir les en-ttes et bas de page des documents imprimer, pour l'ensemble du projet ou pour la session actuelle.

24.1.3 Particularits pour l'impression de l'arborescence des objets


En activant la case d'option "Arborescence" dans la bote de dialogue "Imprimer la liste d'objets", vous pouvez non seulement imprimer la liste des objets, mais galement l'arborescence des objets. Si vous activez la case d'option "Tous" sous "Etendue", l'arborescence complte s'imprimera. En activant le bouton "Slection", l'arborescence s'imprimera vers le bas, partir de l'objet slectionn. Nota Les paramtrages effectus dans la bote de dialogue ne valent que pour l'impression de la liste ou de l'arborescence, mais pas pour celle des contenus. En effet, pour l'impression des contenus, ce sont les paramtrages des applications concernes qui sont utiliss.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

533

Impression et archivage 24.2 Archivage de projets et de bibliothques

24.2

Archivage de projets et de bibliothques


Vous pouvez mmoriser un projet ou une bibliothque particuliers sous forme comprime dans un fichier d'archivage. Celui-ci pourra ensuite tre copi sur le disque dur ou sur un support d'enregistrement amovible (une disquette, par exemple).

Programmes d'archivage
Dans STEP 7, vous pouvez appeler votre programme le programme d'archivage que vous prfrez pour archiver des projets. Les programmes d'archivage ARJ et PKZip sont livrs et installs automatiquement avec STEP 7. Vous trouverez les descriptions correspondantes dans le rpertoire d'installation du programme d'archivage respectif. Pour utiliser un programme d'archivage prcis, vous devez en possder la version suivante (ou une version plus rcente) : PKZip V12.4 (fait partie de la livraison) WinZip (test avec la version 14) ARJ V2.50a (uniquement pour le dsarchivage, fait partie de la livraison (ne fonctionne pas sous Windows 7))

Particularits
Si ARJ32 V3.x a t utilis dans d'anciennes versions de STEP 7, les archives cres peuvent uniquement tre dsarchives avec ARJ32 V3.x. L'archivage avec PKZip est beaucoup plus long sur des lecteurs rseaux que sur des lecteurs locaux.

534

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Impression et archivage 24.2 Archivage de projets et de bibliothques

24.2.1 Possibilits d'enregistrement / archivage


Enregistrer sous
Cette fonction permet de crer une copie du projet sous un autre nom. Vous pouvez l'utiliser pour crer des copies de sauvegarde copier un projet afin de le modifier pour rpondre d'autres besoins.

Si vous voulez que la copie soit rapide, choisissez l'option de sauvegarde sans rorganisation dans la bote de dialogue. L'arborescence entire du projet sera alors copie et sauvegarde sous un autre nom sans vrification. Vrifiez que la mmoire disponible sur le support de donnes est suffisante pour la copie. N'essayez pas de sauvegarder des projets sur disquettes, car la place mmoire en gnral ne suffit pas. Pour le transport de vos donnes de projet sur disquettes, choisissez la fonction "Archiver". La sauvegarde d'un projet avec rorganisation dure plus longtemps. Un message est toutefois affich quand un objet ne peut tre copi et sauvegard. La raison peut en tre un logiciel optionnel manquant ou des donnes dfectueuses.

Archiver
Vous pouvez mmoriser un projet ou une bibliothque particuliers sous forme comprime dans un fichier d'archivage. Celui-ci pourra ensuite tre copi sur le disque dur ou sur un support d'enregistrement amovible (une disquette, par exemple). Ne transportez vos projets sur disquettes qu'archivs dans des fichiers d'archives. Si le projet est trop grand, slectionnez un programme d'archivage autorisant l'archivage sur plusieurs disquettes. Les projets et bibliothques qui ont t comprims en fichiers d'archivage ne peuvent pas tre utiliss tels quels. Si vous souhaitez les rutiliser, vous devez pralablement dcomprimer les donnes, c'est-dire dsarchiver le projet ou la bibliothque.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

535

Impression et archivage 24.2 Archivage de projets et de bibliothques

24.2.2 Conditions requises pour l'archivage


Pour archiver un projet/une bibliothque, les conditions suivantes doivent tre remplies : Le programme d'archivage doit tre install dans votre systme. L'intgration STEP 7 est explique dans l'aide en ligne, la rubrique "Marche suivre pour l'archivage/le dsarchivage. Toutes les donnes du projet sans exception doivent se trouver dans ou sous le rpertoire de projet. Il est certes possible, dans l'environnement de dveloppement C, de stocker des donnes d'autres endroits, mais ces donnes ne seront alors pas enregistres dans le fichier d'archives. Si vous utilisez WinZip sous MS Windows 7 et souhaitez archiver un projet, le rpertoire cible ne doit tre ni slectionn, ni ouvert dans l'explorateur. Pour plus d'informations, reportez-vous la documentation du programme d'archivage.

24.2.3 Marche suivre pour l'archivage/le dsarchivage


Vous archivez/dsarchivez votre projet/bibliothque en choisissant l'une des commandes Fichier > Archiver ou Fichier > Dsarchiver.

Nota Les projets et bibliothques qui ont t comprims en fichiers d'archivage ne peuvent pas tre utiliss tels quels. Si vous souhaitez les rutiliser, vous devez pralablement dcomprimer les donnes, c'est-dire dsarchiver le projet ou la bibliothque.

Lors du dsarchivage, les projets/bibliothques sont intgrs automatiquement la liste des projets/bibliothques.

Dfinition du rpertoire cible


Pour dfinir le rpertoire cible, vous choisissez la commande Outils > Paramtres dans SIMATIC Manager pour ouvrir la bote de dialogue "Paramtres". L'onglet "Archiver" de cette bote de dialogue propose l'option "Rpertoire cible dsarchivage". Lorsque cette option est dsactive, le rpertoire cible utilis sera celui dfini dans la page d'onglet "Gnral" sous "Lieu d'archivage des projets" ou "Lieu d'archivage des bibliothques" de la mme bote de dialogue.

Copie d'un fichier d'archivage sur disquette


Vous pouvez archiver un projet ou une bibliothque puis copier le fichier d'archives sur une disquette. Il est galement possible de slectionner directement un lecteur de disquettes dans la bote de dialogue d'archivage.

536

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

25
25.1

Utilisation des systmes d'automatisation M7


Marche suivre pour les systmes M7
Grce son architecture PC standardise, le systme d'automatisation M7-300/400 constitue une extension librement programmable de la plateforme d'automatisation SIMATIC. Vous pouvez programmer les programmes utilisateur pour SIMATIC M7 dans un langage volu comme C ou dans un langage graphique comme CFC (Continuous Function Chart). Pour crer ces programmes, vous avez besoin - en plus de STEP 7 - du logiciel systme M7-SYS RT pour M7-300/400 ainsi que d'un environnement de dveloppement pour programmes M7 (ProC/C++ ou CFC).

Marche suivre
La ralisation d'une solution d'automatisation avec SIMATIC M7 appelle les tches fondamentales suivantes. Le tableau suivant indique les tches raliser dans la plupart des projets et indique la marche suivre sous forme de guide. Il fait rfrence aux chapitres correspondants du prsent manuel ou d'autres manuels.
Marche suivre Conception d'une solution d'automatisation Dmarrage de STEP 7 Cration de la structure du projet Cration d'une station Configuration du matriel Configuration de liaisons de communication Dfinition de la table des mnmoniques Cration d'un programme utilisateur C ou CFC Configuration du systme d'exploitation Installation du systme d'exploitation sur le M7-300/400 Chargement de la configuration matrielle et du programme utilisateur dans M7 Test et dbogage du programme utilisateur Surveillance du fonctionnement et diagnostic de M7 Impression et Archivage ProC/C++ Comme pour STEP 7, cependant sans diagnostic personnalis Comme pour STEP 7 Comme pour STEP 7 Comme pour STEP 7 Spcifique M7 ; voir ProC/C++ Spcifique M7 ; voir BHB M7-SYS Rt Description Spcifique M7 ; voir PHB M7-SYS RT Comme pour STEP 7 Comme pour STEP 7

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

537

Utilisation des systmes d'automatisation M7 25.1 Marche suivre pour les systmes M7

Quelles sont les diffrences ?


Pour M7-300/400, STEP 7 ne propose pas les fonctions suivantes : Mode multiprocesseur - fonctionnement synchrone de plusieurs CPU Forage permanent de variables Communication par donnes globales Diagnostic personnalis

Gestion des systmes M7


STEP 7 vous assiste particulirement pour la rsolution des tches suivantes avec les systmes d'automatisation M7 : Installation du systme d'exploitation sur le M7-300/400 Configuration du systme d'exploitation par dition de fichiers systme Transfert de programmes utilisateur dans le M7-300/400 Actualisation du micro-programme

Pour parvenir dans la gestion du systme cible M7, vous appelez la commande suivante dans le contexte d'un projet contenant des stations avec des CPU ou des FM S7, le dossier des programmes tant slectionn : Systme cible > Grer le systme cible M7 Des instructions dtailles sont donnes dans l'aide en ligne et dans le manuel utilisateur M7-SYS RT.

538

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Utilisation des systmes d'automatisation M7 25.2 Logiciel optionnel pour la programmation M7

25.2

Logiciel optionnel pour la programmation M7

Logiciel optionnel M7
STEP 7 vous offre les fonctions de base ncessaires pour : crer et grer des projets, configurer et paramtrer le matriel, configurer des rseaux et des liaisons, grer les mnmoniques (donnes symboliques).

Ces fonctions sont indpendantes du fait que votre systme d'automatisation soit un SIMATIC S7 ou un SIMATIC M7. Pour crer des programmes utilisateur M7, vous avez besoin du logiciel optionnel M7 en plus de STEP 7.
Logiciel M7-SYS RT Contenu CFC pour S7 et M7 M7-ProC/C++ Borland C++ Systme d'exploitation M7 RMOS32 Bibliothque systme M7-API Prise en charge MPI Intgration de l'environnement de dveloppement Borland dans STEP 7 Editeur et gnrateur d'importation de mnmoniques Dbogueur de langages volus Organon xdb386

Logiciel de programmation pour applications CFC (Continuous Function Chart)

Environnement de dveloppement Borland C++

Avec le logiciel optionnel M7, STEP 7 vous assiste en outre dans les activits suivantes : transfert de donnes dans le M7 via MPI, recherche d'informations sur le systme d'automatisation M7 excution d'oprations prcises dans le systme d'automatisation M7 et effacement gnral du M7.

La figure suivante montre les interdpendances au sein du logiciel optionnel M7 pour la programmation M7.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

539

Utilisation des systmes d'automatisation M7 25.3 Systmes d'exploitation pour M7-300/400

Rcapitulatif
Pour crer des... programmes C/C++ vous avez besoin du logiciel optionnel M7... 1. 2. 3. programmes CFC 4. 5. 6. M7-SYS RT M7-ProC/C++ Borland C++ M7-SYS RT CFC pour S7 et M7 Borland C++

Assistance
Les outils spcifiques pour la cration d'applications M7 sont intgrs pour partie dans STEP 7 et pour partie dans le logiciel optionnel M7. Le tableau suivant indique dans quels domaines les diffrents progiciels vous assistent.
Le logiciel... STEP 7 vous aide... M7-SYS RT M7-ProC/C++ Borland C++ CFC pour S7 et M7 pour l'installation du systme d'exploitation M7, pour la gestion du systme d'automatisation M7, pour le transfert, le lancement et la suppression des programmes utilisateur M7, pour l'appel de donnes d'tat et de diagnostic, pour l'effacement gnral de la CPU. la commande de l'excution des programmes, la gestion de la mmoire et des ressources, l'accs au matriel SIMATIC et ordinateur, la gestion des alarmes, le diagnostic, la surveillance de l'tat et la communication. grce la gnration de code intgre (intgration de l'environnement de dveloppement Borland dans STEP7), grce l'intgration des mnmoniques de projet dans le code source, grce la fonction de dbogage intgre. pour la cration de programmes C et C++. pour la cration, le test et le dbogage de programmes CFC et pour le lancement et l'excution de programmes CFC.

via les utilitaires du systme d'exploitation M7 et du logiciel systme M7 pour :

25.3

Systmes d'exploitation pour M7-300/400


Les utilitaires du systme d'exploitation sont de premire importance pour les applications cres dans les langages volus C et C++. Le systme d'exploitation assure les tches suivantes pour l'application :
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

540

Utilisation des systmes d'automatisation M7 25.3 Systmes d'exploitation pour M7-300/400


accs au matriel, gestion des ressources, intgration dans le systme, communication avec d'autres composants du systme.

Pour la rsolution de tches d'automatisation, nous mettons en oeuvre le systme d'exploitation temps rel M7 RMOS32 (RMOS = Realtime-Multitasking-Operating-System) sur le systme d'automatisation SIMATIC M7. Pour permettre son intgration dans le systme SIMATIC, M7 RMOS a t complt par une interface d'appel : M7-API (Application Programming Interface). Le systme d'exploitation en temps rel RMOS32 de M7 sert la rsolution de problmes temps rel et multitches critiques en temps pour des applications de 32 bits. Il est disponible dans les configurations suivantes pour les modules M7 : M7 RMOS32 M7 RMOS32 avec MS-DOS

La configuration du systme d'exploitation que vous choisissez pour votre systme d'automatisation M7 dpend des modules M7 que vous mettez en oeuvre :
Configurations de systme d'exploitation M7 RMOS32 Module / mmoire centrale FM 356-4 / 4Mo FM 356-4 / 8Mo CPU 388-4 / 8Mo FM 456-4 / 16Mo CPU 488-3 / 16Mo CPU 486-3 / 16Mo FM 356-4 / 8Mo CPU 388-4 / 8Mo FM 456-4 / 16Mo CPU 488-3 / 16Mo CPU 486-3 / 16Mo PROFIBUS DP et TCP/IP oui/non non oui oui oui oui oui non non oui oui oui Installation sur mmoire de masse carte mmoire 4 Mo ou disque dur

M7 RMOS32 avec MS-DOS

carte mmoire 4 Mo ou disque dur

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

541

Utilisation des systmes d'automatisation M7 25.3 Systmes d'exploitation pour M7-300/400

542

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

26
26.1

Astuces et conseils
Remplacement de modules dans la table de configuration
Lorsque vous retouchez la configuration d'une station dans HW Config et que vous souhaitez remplacer un module, par exemple par un autre qui a un autre numro de rfrence, procdez de la manire suivante : 1. Amenez le module par glisser-lcher de la fentre "Catalogue du matriel" sur le module ("ancien") dj plac. 2. Lchez le nouveau module ; dans la mesure du possible, il adopte alors les paramtres du module dj enfich. Cette faon de faire est plus rapide que celle qui consiste effacer d'abord l'ancien module avant d'insrer le nouveau et de le paramtrer. Vous pouvez activer ou dsactiver cette fonction expressment dans HW Config au moyen de la commande Outils > Paramtres ("Remplacement de modules possible").

26.2

Projets comportant un grand nombre de stations en rseau


Lorsque vous configurez toutes les stations l'une aprs l'autre et n'appelez NetPro par Outils > Configurer le rseau que dans un deuxime temps pour configurer les liaisons, les stations sont places automatiquement dans la vue de rseau. L'inconvnient, c'est que vous devez alors classer les stations et les sous-rseaux aprs coup selon des critres topologiques. Si votre projet comporte un grand nombre de stations en rseau que vous souhaitez relier par des liaisons, il vaut mieux configurer la structure de l'installation dans la vue de rseau ds le dpart, pour conserver une vue d'ensemble. 1. Crez le nouveau projet dans SIMATIC Manager (commande Fichier > Nouveau). 2. Dmarrez NetPro (commande Outils > Configurer le rseau). 3. Gnrez les stations l'une aprs l'autre dans NetPro : Prlevez la station dans la fentre "Catalogue" et placez-la par glisser-lcher. Cliquez deux fois sur la station pour dmarrer HW Config. Dans HW Config, placez par glisser-lcher les modules de communication (CPU, CP, FM, cartouches d'interface). Si vous voulez connecter ces modules un rseau, cliquez deux fois sur les lignes concernes de la table de configuration pour crer des sous-rseaux et connecter les interfaces. Enregistrez la configuration et passez dans NetPro. Positionnez stations et sous-rseaux dans NetPro (faites glisser l'objet avec le pointeur de la souris jusqu' la position qui vous convient).

4. Configurez les liaisons dans NetPro et rectifiez au besoin la mise en rseau.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

543

Astuces et conseils 26.3 Rorganisation

26.3

Rorganisation
Lorsque des problmes inexpliqus surviennent lors de l'utilisation de STEP 7, la solution consiste souvent rorganiser la base de donnes du projet ou de la bibliothque. Choisissez cet effet la commande Fichier > Rorganiser. La rorganisation permet de supprimer les intervalles conscutifs l'effacement, c'est--dire de rduire l'espace mmoire requis par des donnes du projet/de la bibliothque. Cette fonction optimise la base de donnes pour le projet ou la bibliothque tout comme un programme, par exemple, optimise la base de donnes sur le disque dur pour sa dfragmentation. La dure de la rorganisation dpend des dplacements de donnes requis et peut occuper un temps relativement long. C'est la raison pour laquelle cette fonction n'est pas excute automatiquement (par exemple la fermeture d'un projet), mais doit tre dmarre par l'utilisateur lorsqu'il souhaite rorganiser le projet ou la bibliothque. Pour vrifier le niveau de remplissage de la base de donnes, slectionnez le dossier Blocs, puis choisissez la commande de menu Edition > Proprits de l'objet. Dans l'onglet "Niveau de remplissage", cliquez ensuite sur le bouton "Dterminer le niveau". Une fois la dtermination du niveau de remplissage termine, les valeurs, de mme qu'une recommandation relative la rorganisation du projet s'affichent dans la partie infrieure de l'onglet.

Condition pralable
Un projet ou une bibliothque ne peuvent tre rorganiss que si aucun des objets qu'ils contiennent n'est utilis par une autre application est donc inaccessible.

26.4

Edition de mnmoniques dans plusieurs rseaux


Dans l'diteur de programmes CONT/LIST/LOG, vous pouvez afficher et diter les mnmoniques de plusieurs rseaux. 1. Slectionnez un rseau en cliquant sur sa dsignation (p. ex. "Rseau 1"). 2. Maintenez la touche CRTL enfonce et slectionnez d'autres rseaux. 3. Avec le bouton droit de la souris, choisissez la commande de menu contextuelle Editer les mnmoniques. Pour slectionner tous les rseaux d'un bloc, appuyez sur les touches CTRL+A, puis slectionnez une dsignation de rseau.

544

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Astuces et conseils 26.5 Test l'aide de la table des variables

26.5

Test l'aide de la table des variables


Voici une srie de conseils facilitant la visualisation et le forage de variables dans la table des variables. Vous pouvez taper les mnmoniques et les oprandes dans la colonne "Mnmonique" comme dans la colonne "Oprande". L'entre est automatiquement reporte dans la colonne approprie. Pour obtenir l'affichage de la valeur force, choisissez comme point de dclenchement "Dbut de cycle" pour la visualisation et "Fin de cycle" pour le forage. Si vous positionnez le curseur dans une ligne repre en rouge, une info-bulle vous indique la cause d'erreur. Appuyez alors sur la touche F1 pour afficher la solution. Vous ne pouvez entrer que des mnmoniques dj dfinis dans la table des mnmoniques. Il faut entrer un mnmonique exactement comme il est dfini dans la table. Les mnmoniques comportant des caractres spciaux s'crivent entre guillemets (ex. : "Moteur.stop", "Moteur+stop", "Moteur-stop"). Suppression des messages d'avertissement (option de l'onglet "Online" de la bote de dialogue "Paramtres"). Changement possible de liaison sans avoir coup la liaison existante pralable. Possibilit de dfinir le dclenchement durant la visualisation des variables.

Possibilit de forcer des variables par slection des lignes voulues dans la table et de la fonction "Forcer". Seules les variables visibles dans la table sont alors forces. Quitter sans demande de confirmation :

La visualisation, le forage ou le dblocage des sorties de priphrie tant en cours d'excution, une pression de la touche ECHAP mettra fin ces fonctions sans demande de confirmation. Saisir une plage d'oprandes conscutifs Utilisez la commande Insertion > Plage. Afficher et masquer des colonnes Mnmonique : Affichage > Mnmonique Commentaire de mnmonique : Affichage > Commentaire de mnmonique Format de reprsentation de la valeur d'tat : Affichage > Format d'affichage Valeur d'tat de la variable : Affichage > Valeur d'tat Valeur de forage de la variable : Affichage > Valeur de forage

Utilisez les commandes suivantes pour afficher ou masquer les colonnes de votre choix :

Modifier le format d'affichage dans plusieurs lignes la fois - Pour slectionner la partie de la table dans laquelle vous voulez changer de format d'affichage, faites glisser le pointeur dessus en maintenant la touche gauche de la souris enfonce. - Choisissez la nouvelle reprsentation avec la commande Affichage > Choisir format d'affichage. Le format changera seulement pour celles des lignes slectionnes qui autorisent ce changement. Exemples de saisie par la touche F1 Positionnez le curseur dans la colonne des oprandes et appuyez sur F1 pour obtenir des exemples montrant la saisie d'oprandes. Positionnez le curseur dans la colonne des valeurs de forage et appuyez sur F1 pour obtenir des exemples montrant la saisie de valeurs de forage ou de forage permanent.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

545

Astuces et conseils 26.6 Forage de variables depuis l'diteur de programmes

26.6

Forage de variables depuis l'diteur de programmes


Dans l'diteur de programmes, vous pouvez attribuer un bouton aux entres et aux mmentos binaires. En cliquant sur ce bouton, vous pouvez forcer ces oprandes de manire simple et rapide.

Conditions
Dans la table des mnmoniques, vous avez attribu cette proprit l'oprande que vous souhaitez forcer avec la commande de menu Proprits spcifiques de l'objet > Commande par contact. Dans l'onglet "Gnral" de l'diteur CONT/LIST/LOG (commande de menu Outils > Paramtres), vous avez activ l'option "Commande par contact". Vous avez choisi la commande de menu Test > Visualiser.

La condition de dclenchement est "permanent/au dbut du cycle". Les entres effectivement prsentes dans votre installation sont forces tant que le bouton reste enfonc. La slection multiple (touche CTRL) vous permet de forcer plusieurs oprandes simultanment. Dans le cas de mmentos ou d'entres manquantes, l'tat est mis 1 lorsque vous appuyez sur le bouton. Il n'est remis 0 que si vous le ralisez explicitement dans le menu contextuel ou dans la table des variables ou lorsque l'oprande est remis 0 par le programme S7. Le bouton tant enfonc, le forage s'effectue avec la valeur de forage "1" lorsque l'entre ou le mmento ne sont pas inverss et avec la valeur de forage "0" lorsque l'entre ou le mmento sont inverss.

Remarque pour WinCC


Si l'diteur de programmes a t dmarr depuis WinCC par le contrle-commande d'une variable, seul le forage depuis WinCC est possible, moins que l'utilisateur dispose des "droits de maintenance" de WinCC, auquel cas les deux possibilits de forage sont possibles.

546

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Astuces et conseils 26.7 Mmoire virtuelle

26.7

Mmoire virtuelle
Une raison de la dfaillance de STEP 7 peut tre une mmoire virtuelle trop petite. Pour utiliser STEP 7, il est recommand d'adapter le paramtrage de la mmoire virtuelle. Procdez de la manire suivante : 1. Ouvrez le panneau de configuration, p. ex. depuis le menu de dmarrage en choisissant la commande Dmarrer > Paramtres > Panneau de configuration et effectuez un double clic sur l'icne "Systme". 2. Dans la bote de dialogue qui s'ouvre, slectionnez l'onglet "Avanc" et cliquez sur le bouton "Paramtres" sous "Performances". 3. Dans les options de performances, slectionnez l'onglet "Avanc" et cliquez sur le bouton "Modifier". 4. Entrez comme minimum ou "Taille initiale (Mo)" au moins 40 Mo et comme maximum ou "Taille maximale" au moins 150 Mo.

Nota Puisque la mmoire virtuelle se trouve sur le disque dur (par dfaut C: et de manire dynamique), vous devez vous assurer que l'espace mmoire disponible pour les rpertoires TMP ou TEMP est suffisant (environ 20 30 Mo) :
Si le projet S7 devait se trouver sur la mme partition que la mmoire virtuelle, il faudrait que le double environ de l'espace mmoire occup par le projet S7 soit encore disponible. Toutefois, si le projet est gr sur une autre partition, cette condition s'avre inutile.

Adaptation de la mmoire virtuelle sous MS Windows 7


Si la mmoire virtuelle a t modifie manuellement sur votre PC, procdez de la manire suivante : 1. Ouvrez le panneau de configuration, p. ex. depuis le menu de dmarrage en choisissant la commande Dmarrer > Panneau de configuration et effectuez un double clic sur "Systme". 2. Double-cliquez sur "Scurit et systme", slectionnez l'entre "Paramtres systme avancs" et, dans la bote de dialogue qui s'ouvre, cliquez sur "Paramtres" sous "Performance". 3. Dans l'onglet "Avanc", cliquez sur le bouton "Modifier". 4. Activez l'option "Grer automatiquement le fichier d'change pour tous les lecteurs".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

547

Astuces et conseils 26.7 Mmoire virtuelle

548

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

27
27.1

Annexe
Etats de fonctionnement

27.1.1 Etats de fonctionnement et changement d'tat de fonctionnement


Etats de fonctionnement
Les tats de fonctionnement dcrivent le comportement de la CPU un instant quelconque. La connaissance de ces tats est utile pour la programmation de la mise en route, le test de l'automate, ainsi que pour le diagnostic des erreurs. Les CPU S7-300 et S7-400 possdent les tats de fonctionnement suivants : Arrt Mise en route Marche Attente

A l'tat de fonctionnement "Arrt" (STOP), la CPU vrifie si tous les modules configurs ou utilisant l'adressage par dfaut sont prsents et place la priphrie dans un tat fondamental prdfini. Le programme utilisateur n'est pas trait dans cet tat. On distingue en mode de mise en route, entre les modes "Dmarrage chaud", "Dmarrage froid" et "Redmarrage" : En cas de dmarrage chaud, le traitement du programme recommence au dbut avec une "dfinition de base" des donnes systme et des plages d'oprandes utilisateur (les temporisations, compteurs et mmentos non rmanents sont remis zro). En cas de dmarrage froid, la mmoire image est lue et le programme utilisateur STEP 7 est excut en commenant par la premire instruction dans l'OB1 (ceci est galement le cas pour le dmarrage chaud). Les blocs de donnes crs par SFC dans la mmoire de travail sont effacs, les autres blocs de donnes prennent la valeur par dfaut de la mmoire de chargement. La mmoire image ainsi que tous les compteurs, temporisations et mmentos sont remis zro, qu'ils aient t paramtrs comme tant rmanents ou pas.

En cas de redmarrage, le traitement du programme se poursuit au point d'interruption (les temporisations, compteurs et mmentos ne sont pas remis zro). Seules les CPU S7-400 peuvent excuter un redmarrage.

A l'tat de fonctionnement "Marche" (RUN), la CPU traite le programme utilisateur, met jour les entres et les sorties, traite les alarmes et messages d'erreur. Le traitement du programme utilisateur est suspendu l'tat de fonctionnement "Attente" et vous pouvez tester ce programme pas pas. Cet tat n'est accessible que lors du test avec la console de programmation.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

549

Annexe 27.1 Etats de fonctionnement

Dans tous ces tats de fonctionnement, la CPU peut communiquer via l'interface MPI.

Autres tats de fonctionnement


Lorsque la CPU n'est pas prte fonctionner, elle se trouve dans l'un des tats suivants : Sans tension : il n'y a pas de tension secteur. Dfaillante : une erreur irrmdiable s'est produite. Vrifiez si la CPU prsente vraiment une dfaillance : mettez-la sur STOP et teignez puis allumez le commutateur secteur. Si la CPU se met en route, lisez la mmoire tampon de diagnostic afin d'analyser l'erreur. Si la CPU ne dmarre pas, il faut la remplacer.

Changements d'tat de fonctionnement


La figure suivante reprsente les tats de fonctionnement et les changements d'tat de fonctionnement des CPU S7-300 et S7-400 :

Le tableau suivant donne les conditions de changement d'tat de fonctionnement.


Changement 1. 2. Description La CPU est l'tat "Arrt" (STOP) lors de la mise sous tension. La CPU passe l'tat "Mise en route" : lorsque la position RUN ou RUN-P est slectionne via le commutateur cl ou la console de programmation ou aprs dclenchement automatique d'un mode de mise en route par mise sous tension.

lorsque la fonction de communication "RESUME" ou "START" est excute. Le commutateur de mode de fonctionnement doit se trouver dans ces deux cas sur RUN ou RUN-P. 3. La CPU passe de nouveau l'tat "Arrt" (STOP) lorsque : 4. 5. une erreur est dtecte pendant la mise en route ; la CPU est mise sur STOP via le commutateur de mode de fonctionnement ou depuis la PG ; une commande d'arrt est traite dans l'OB de mise en route ; la fonction de communication "STOP" est excute.

La CPU passe l'tat de fonctionnement "Attente" lorsqu'un point d'arrt est atteint dans le programme de mise en route. La CPU passe en mode de mise en route lorsque le point d'arrt tait dfini dans un programme de mise en route et que la commande QUITTER ATTENTE est excute (fonction de test).

550

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.1 Etats de fonctionnement

Changement 6.

Description La CPU passe de nouveau l'tat "Arrt" (STOP) lorsque : la CPU est mise sur STOP via le commutateur de mode de fonctionnement ou depuis la PG ; la fonction de communication "STOP" est excute.

7. 8.

La CPU passe l'tat "Marche" (RUN) si la mise en route s'achve sans erreur. La CPU passe de nouveau l'tat "Arrt" (STOP) lorsque : une erreur est dtecte l'tat "Marche" et que l'OB correspondant n'est pas charg ; la CPU est mise sur STOP via le commutateur de mode de fonctionnement ou depuis la PG ; une commande d'arrt est traite dans le programme utilisateur ; la fonction de communication "STOP" est excute.

9. 10.

La CPU passe l'tat de fonctionnement "Marche" lorsqu'un point d'arrt tait dfini et que la commande QUITTER ATTENTE est excute. La CPU passe l'tat de fonctionnement "Attente" lorsqu'un point d'arrt est atteint dans le programme utilisateur.

Priorit des tats de fonctionnement


Lorsque plusieurs tats de fonctionnement sont demands en mme temps, la CPU passe l'tat de fonctionnement ayant la priorit la plus leve. Si le commutateur de mode se trouve, par exemple, sur RUN et que vous tentez de commuter la CPU l'tat "Arrt" (STOP) depuis la PG, la CPU passe bien l'tat "Arrt", car cet tat a la priorit la plus leve.
Priorit La plus leve Etat de fonctionnement Arrt Attente Mise en route La plus faible Marche

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

551

Annexe 27.1 Etats de fonctionnement

27.1.2 Etat de fonctionnement "Arrt" (STOP)


Le programme utilisateur n'est pas trait dans cet tat. Toutes les sorties sont mises des valeurs de substitution afin d'amener le processus command un tat sr. La CPU vrifie s'il y a des problmes de matriel (par exemple, modules non disponibles) ; si la CPU doit prendre les valeurs par dfaut ou s'il existe des jeux de paramtres ; si les conditions annexes pour le comportement de mise en route programm sont correctes ; s'il y a des problmes de logiciel systme.

Il est possible, l'tat "Arrt", de recevoir des donnes globales et d'excuter une communication sens unique passive via des SFB de communication pour liaisons configures et via des SFC de communication pour liaisons non configures.

Effacement gnral
Vous pouvez effectuer un effacement gnral de la CPU l'tat "Arrt", soit manuellement en positionnant le commutateur cl sur MRES, soit partir de la console de programmation (par exemple, avant le chargement d'un programme utilisateur). L'effacement gnral remet la CPU dans son "tat fondamental", ce qui signifie que :_ Le programme utilisateur complet dans la mmoire de travail et dans la mmoire de chargement RAM ainsi que toutes les plages d'oprandes sont effacs. Les paramtres systme ainsi que les paramtres des modules et de la CPU reprennent leur valeur par dfaut. Seuls les paramtres MPI dfinis avant l'effacement gnral sont conservs. Lorsqu'une carte mmoire est enfiche (EPROM flash), la CPU copie le programme utilisateur de la carte mmoire dans la mmoire de travail (y compris les paramtres de CPU et de modules si les donnes de configuration correspondantes se trouvent galement sur la carte mmoire).

La mmoire tampon de diagnostic, les paramtres MPI, l'heure et le compteur d'heures de fonctionnement ne sont pas remis zro.

552

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.1 Etats de fonctionnement

27.1.3 Mode de mise en route


Un programme de mise en route est excut avant que la CPU ne commence traiter le programme utilisateur aprs la mise sous tension. Dans ce programme de mise en route, vous pouvez dfinir des prslections prcises pour votre programme cyclique en programmant en consquence les OB de mise en route. Il existe trois modes de mise en route : dmarrage chaud, dmarrage froid et redmarrage. Le rdmarrage n'est possible que pour les CPU S7-400. Il doit avoir t dfini avec STEP 7 dans le jeu de paramtres de la CPU. En mode de mise en route : le programme contenu dans l'OB de mise en route (OB100 pour dmarrage chaud, OB101 pour redmarrage et OB102 pour dmarrage froid) est excut ; aucun traitement de programme dclench par horloge et par alarme n'est possible ; les temporisations sont mises jour ; le compteur d'heures de fonctionnement s'excute ; les sorties TOR des modules de signaux sont verrouilles, mais peuvent tre mises 1 par accs direct.

Dmarrage chaud
Un dmarrage chaud est toujours autoris moins qu'un effacement gnral n'ait t demand par le systme. Seul le dmarrage chaud est possible aprs : effacement gnral, chargement du programme utilisateur l'tat de fonctionnement "Arrt" de la CPU, dbordement de la pile des interruptions ou de la pile des blocs, interruption d'un dmarrage chaud (par mise hors tension ou via le commutateur de mode), dpassement de la limite de temps d'interruption paramtre pour le redmarrage.

Dmarrage chaud manuel


Un dmarrage chaud manuel peut tre dclench : via le commutateur de mode de fonctionnement, (le commutateur CRST/WRST - s'il existe - doit tre sur WRST). par une commande de menu provenant de la PG ou par des fonctions de communication (lorsque le commutateur de mode est en position RUN ou RUN-P).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

553

Annexe 27.1 Etats de fonctionnement

Dmarrage chaud automatique


Un dmarragea chaud automatique peut tre dclench la mise sous tension lorsque : la CPU n'tait pas l'arrt lors de la mise hors tension ; le commutateur de mode est en position RUN ou RUN-P ; aucun redmarrage automatique aprs mise sous tension n'est paramtr ; la CPU a t interrompue par coupure secteur au dmarrage chaud (indpendamment du paramtrage du mode de mise en route).

La position du commutateur CRST/WRST reste sans effet en cas de dmarrage chaud automatique.

Dmarrage chaud automatique sans sauvegarde


Si votre CPU fonctionne sans pile de sauvegarde (fonctionnement sans maintenance requis), un effacement gnral est automatiquement effectu la mise sous tension ou au retour de la tension aprs mise hors tension, puis un dmarrage chaud est excut. Le programme utilisateur doit tre disponible sur carte mmoire (EPROM flash) et il ne faut pas activer de surveillance de pile via le commutateur "Batt.Indic" sur l'alimentation.

Redmarrage
Aprs une coupure secteur l'tat de fonctionnement "Marche" (RUN) puis retour de la tension, les CPU S7-400 excutent un sous-programme d'initialisation puis, automatiquement, un redmarrage. Lors d'un redmarrage, le programme utilisateur se poursuit au point o son traitement a t interrompu. On appelle cycle restant la partie du programme utilisateur qui n'a pas t traite avant la coupure secteur. Le cycle restant peut contenir des parties de programme dclenches par horloge ou par alarme. Un redmarrage n'est par principe possible que si vous n'avez pas modifi le programme utilisateur l'tat "Arrt" (par exemple, en rechargeant un bloc modifi) ou si un dmarrage chaud n'est pas requis pour d'autres raisons. On distingue entre redmarrage manuel et redmarrage automatique.

Redmarrage manuel
Un redmarrage manuel n'est possible qu'en cas de paramtrage correspondant dans le jeu de paramtres de la CPU et aprs un passage l'arrt ayant les causes suivantes : commutation du commutateur de mode de RUN sur STOP, "Arrt" programm par l'utilisateur, "Arrt" aprs appel d'OB non chargs tat d'"arrt" provoqu par la PG ou une fonction de communication.

Un redmarrage manuel peut tre dclench : via le commutateur de mode, Le commutateur CRST/WRST doit tre sur WRST. par une commande de menu provenant de la PG ou par des fonctions de communication (lorsque le commutateur de mode est en position RUN ou RUN-P). lorsque le redmarrage manuel a t paramtr dans le jeu de paramtres de la CPU.

554

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.1 Etats de fonctionnement

Redmarrage automatique
Un redmarrage automatique peut tre dclench la mise sous tension lorsque : la CPU n'tait pas l'tat d'arrt ou d'attente lors de la mise hors tension ; le commutateur de mode est en position RUN ou RUN-P ; le redmarrage automatique aprs mise sous tension a t paramtr dans le jeu de paramtres de la CPU.

La position du commutateur CRST/WRST reste sans effet en cas de redmarrage automatique.

Zones de donnes rmanentes aprs coupure secteur


Les CPU S7-300 et S7-400 ragissent diffremment lors du retour de la tension aprs coupure secteur. Les CPU S7-300 ( l'exception de la CPU 318) connaissent uniquement le mode de mise en route "Dmarrage". Vous pouvez toutefois, avec STEP 7, dfinir comme rmanents des mmentos, temporisations, compteurs et zones dans des blocs de donnes afin d'viter la perte de donnes en cas de coupure de courant. Un "dmarrage automatique avec rmanence" est alors excut au retour de la tension. Les CPU S7-400 ragissent un retour de tension selon leur paramtrage par un "Dmarrage chaud" (aprs une mise sous tension avec ou sans sauvegarde) ou un "Redmarrage" (possible uniquement aprs une mise sous tension avec sauvegarde). Le tableau suivant montre le comportement de rmanence des CPU S7-300 et S7-400 en cas de dmarrage chaud, dmarrage froid ou redmarrage. X VC VX signifie signifie signifie les donnes sont conserves le bloc de code dans l'EPROM est conserv, le bloc de code ventuellement charg est perdu le bloc de donnes n'est conserv que s'il est prsent dans l'EPROM, les donnes rmanentes sont reprises de NV-RAM (les blocs de donnes chargs ou crs dans la RAM sont perdus) les donnes sont remises zro ou effaces (contenu des DB) les donnes prennent la valeur par dfaut de l'EPROM impossible, puisque NV-RAM absente

0 V ---

signifie signifie signifie

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

555

Annexe 27.1 Etats de fonctionnement

Comportement de rmanence dans la mmoire de travail (pour la mmoire de chargement EPROM et RAM)
EPROM CPU avec Donnes blocs ds mm. charg. DB ds mm. travail (carte sauveg. mm. tempos compt. (param. rmanents) Dmarrag. chaud X pour S7-300 Dmarrag. chaud X pour S7-400 Dmarr. froid pour S7-300 Dmarr. froid pour S7-400 Redmarr age pour S7-400 X X X X Seul le dmarrage chaud est autoris X 0 0 0 VC --V 0 0 X mm. tempos compt. (param. non rmanents) 0 VC blocs ds mm. charg. mmoire ou intgre) CPU DB ds mm. travail (param. rmanents) sans DB ds mm. travail (param. non rmanents) V sauveg. mm. tempos compt. (param. rmanents) mm. tempos compt. (param. non rmanents) 0

VX

VC

---

VC

556

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.1 Etats de fonctionnement

Activits la mise en route


Le tableau ci-aprs montre les activits excutes par la CPU lors de la mise en route.
Activits dans l'ordre de leur traitement Effacer la pile des interruptions et la pile des blocs Effacer les mmentos, temporisations et compteurs non rmanents Effacer tous les mmentos, temporisations et compteurs Effacer la mmoire image des sorties Effacer les sorties des modules de signaux Rejeter les alarmes de processus Rejeter les alarmes temporises Rejeter les alarmes de diagnostic Actualiser la liste d'tat systme (SZL) Exploiter les paramtres de modules et les transmettre aux modules ou bien leur transmettre les valeurs par dfaut Traiter l'OB de mise en route concern Traiter le cycle restant (partie du programme utilisateur n'ayant pu tre excute en raison d'une mise hors tension) Actualiser la mmoire image des entres Valider les sorties TOR (dbloquer les sorties TOR) aprs passage l'tat de fonctionnement "Marche"
X 0 signifie signifie est excut n'est pas excut

Dmarrage chaud X X 0 X X X X X X X

Dmarrage froid X 0 X X X X X X X X

Redmarrage 0 0 0 paramtrable paramtrable 0 0 X X X

X 0

X 0

X X

X X

X X

X X

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

557

Annexe 27.1 Etats de fonctionnement

Interruption de la mise en route


Si des erreurs apparaissent au cours de la mise en route, cette dernire est interrompue et la CPU passe ou reste l'tat "Arrt". Un dmarrage chaud interrompu doit tre recommenc. Aprs l'interruption d'un redmarrage, dmarrage chaud ou redmarrage sont tous deux possibles. Une mise en route (dmarrage chaud ou redmarrage) n'est pas excute ou est interrompue : si le commutateur de mode de fonctionnement de la CPU est en position STOP ; si un effacement gnral est demand ; si une carte mmoire dont l'identificateur d'application n'est pas autoris pour STEP 7 (par exemple, STEP 5) est enfiche ; si plus d'une CPU est enfiche en mode monoprocesseur ; si le programme utilisateur contient un OB que la CPU ne connat pas ou qui a t verrouill ; si la CPU constate, aprs la mise sous tension, que tous les modules figurant dans la table de configuration cre avec STEP 7 ne sont pas enfichs ( entre paramtrage nominal et effectif non autorise) ; si des erreurs apparaissent lors de l'exploitation des paramtres des modules.

Un redmarrage n'est pas non plus excut ou est interrompu : si la CPU a auparavant subi un effacement gnral (seul un dmarrage chaud est possible aprs un effacement gnral) ; si la limite de temps d'interruption a t dpasse (il s'agit du temps qui s'coule aprs l'abandon de l'tat "Marche" jusqu'au traitement de l'OB de mise en route, cycle restant inclus) ; si la configuration des modules a t modifie (remplacement de modules, par exemple) ; si le paramtrage autorise uniquement un dmarrage chaud ; si des blocs ont t chargs, effacs ou modifis l'tat "Arrt".

558

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.1 Etats de fonctionnement

Droulement
La figure ci-aprs montre les activits de la CPU dans les tats de fonctionnement "Mise en route" et "Marche" (RUN).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

559

Annexe 27.1 Etats de fonctionnement

Lgende de la figure "Activits de la CPU dans les tats de fonctionnement Mise en route et Marche" 1. Toutes les sorties de priphrie sont mises l'tat de scurit (valeur par dfaut =0) par le matriel des modules de priphrie, qu'elles soient utilises dans le programme utilisateur au sein de la zone de la mmoire image du processus ou en dehors. Si vous employez des modules de signaux pouvant traiter une valeur de remplacement, il est possible de paramtrer le comportement des sorties, par exemple Conserver dernire valeur. 2. Est ncessaire l'excution du cycle restant. 3. Les OB d'alarme disposent galement d'une mmoire image des entres actuelle lors de leur premier appel. 4. Vous pouvez recourir aux mesures suivantes pour dterminer l'tat des sorties de priphrie centralise et dcentralise dans le premier cycle du programme utilisateur : utiliser des modules de sorties paramtrables pour pouvoir crire des valeurs de remplacement ou conserver la dernire valeur ; au redmarrage : activer l'option "Remise 0 des sorties au redmarrage" pour la mise en route de la CPU, afin d'crire un "0" (qui est la valeur par dfaut) ; donner des valeurs par dfaut aux sorties dans l'OB de mise en route (OB100, OB101, OB102).

5. Dans les systmes S7-300 sans sauvegarde, seules les zones DB configures comme rmanentes sont conserves.

560

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.1 Etats de fonctionnement

27.1.4 Etat de fonctionnement "Marche" (RUN)


A l'tat "Marche" s'effectue le traitement de programme cyclique et command par horloge et par alarme : La mmoire image des entres est lue. Le programme utilisateur est trait. La mmoire image des sorties est mise.

L'change actif de donnes entre les CPU par communication par donnes globales (table des donnes globales), par SFB de communication pour les liaisons configures et par SFC pour les liaisons non configures n'est possible qu' l'tat de "Marche". Le tableau ci-aprs illustre quand l'change de donnes est possible dans les diffrents tats de fonctionnement :
Type de communication Etat de Sens de l'change fonctionnement de la de donnes CPU 1 Marche Marche Arrt Arrt Attente Communication sens unique Par SFB de communication Communication double sens par SFB de communication Communication sens unique Par SFC de communication Communication double sens par SFC de communication
X

Etat de fonctionnement de la CPU 2 Marche Arrt/Attente Marche Arrt Arrt/Attente Marche Arrt/Attente Marche Marche Arrt/Attente Marche

Communication par donnes globales

X X

Marche Marche Marche Marche Marche Marche

signifie change de donnes possible dans les deux sens signifie change de donnes possible dans un sens seulement signifie change de donnes impossible

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

561

Annexe 27.1 Etats de fonctionnement

27.1.5 Etat de fonctionnement "Attente"


L'tat de fonctionnement "Attente" tient une place part. Il ne sert qu' des fins de test la mise en route ou en marche. Dans l'tat de fonctionnement "Attente" : Tous les temps sont suspendus : les temporisations et les compteurs d'heures de fonctionnement ne sont pas traits. Les temps de surveillance ainsi que les priodes de base des niveaux commands par horloge sont interrompus. L'horloge temps rel fonctionne. Les sorties ne sont pas libres, mais peuvent tre valides des fins de test. Il est possible de commander les entres et les sorties. En cas de coupure secteur et de retour de la tension, les CPU avec sauvegarde en "Attente" passent l'tat "Arrt" et n'excutent pas de dmarrage ni de redmarrage automatique (dmarrage chaud). Au retour de la tension, les CPU sans sauvegarde effectuent un dmarrage automatique (dmarrage chaud) sans sauvegarde. Il est possible de recevoir des donnes globales et d'excuter une communication sens unique passive par SFB de communication pour les liaisons configures et par SFC de communication pour les liaisons non configures (voir aussi tableau l'tat de fonctionnement "Marche").

562

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

27.2

Zones de mmoire des CPU S7

27.2.1 Organisation des zones de mmoire


La mmoire des CPU S7 comporte trois zones (voir la figure ci-aprs) : La mmoire de chargement sert l'enregistrement du programme utilisateur sans affectation de mnmoniques ni de commentaires (ces derniers restent dans la mmoire de la console de programmation). La mmoire de chargement peut tre soit la mmoire vive (RAM), soit la mmoire EPROM. Les blocs identifis comme non significatifs pour l'excution sont exclusivement chargs dans la mmoire de chargement. La mmoire de travail (mmoire vive intgre) contient les parties du programme S7 significatives pour l'excution du programme. Le traitement du programme a lieu exclusivement dans la mmoire de travail et dans la mmoire systme. La mmoire systme (mmoire vive) contient les lments de mmoire que chaque CPU met la disposition du programme utilisateur comme, par exemple, mmoire image des entres, mmoire image des sorties, mmentos, temporisations et compteurs. La mmoire systme contient, en outre, la pile des blocs et la pile des interruptions. C'est galement la mmoire systme de la CPU qui fournit la mmoire temporaire (pile des donnes locales) alloue au programme lors de l'appel d'un bloc pour les donnes temporaires. Ces donnes sont valables tant que le bloc est actif.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

563

Annexe 27.2 Zones de mmoire des CPU S7

27.2.2 Mmoire de chargement et mmoire de travail


Lorsque vous chargez le programme utilisateur de la console de programmation dans la CPU, seuls les blocs de code et les blocs de donnes sont chargs dans la mmoire de chargement et dans la mmoire de travail de la CPU. La table des mnmoniques et les commentaires de blocs restent dans la zone de mmoire de la PG.

Rpartition du programme utilisateur


Afin de garantir un traitement rapide du programme utilisateur et de ne pas surcharger inutilement la mmoire de travail non extensible, seules les parties des blocs significatives pour le traitement du programme sont charges dans la mmoire de travail. Les parties de blocs non requises pour l'excution du programme (par exemple, les en-ttes de blocs) restent dans la mmoire de chargement. La figure suivante reprsente le chargement du programme dans la mmoire de la CPU.

Nota Les blocs de donnes crs dans le programme utilisateur l'aide de fonctions systme (par exemple SFC 22 CREAT_DB) sont enregistr compltement dans la mmoire de travail par la CPU. Certaines CPU disposent de zones gres sparment pour le code et les donnes dans la mmoire de travail. Pour ces CPU, la taille et l'occupation de ces zones sont affiches sur la page d'onglet "Mmoire" de l'tat du module.

564

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

Qualification de blocs de donnes comme "non significatifs pour l'excution"


On peut qualifier de "non significatifs pour l'excution" - mot-cl UNLINKED - les blocs de donnes programms comme partie d'un programme LIST dans un fichier source. Lors du chargement dans la CPU, ces DB ne sont donc rangs que dans la mmoire de chargement. Si besoin est, il est possible de copier leur contenu dans la mmoire de travail l'aide de la SFC20 BLKMOV. Cela permet donc de gagner de la place dans la mmoire de travail, la mmoire de chargement extensible servant de mmoire intermdiaire (par exemple pour les formules : seule la prochaine formule traiter est charge dans la mmoire de travail).

Structure de la mmoire de chargement


Il est possible d'tendre la mmoire de chargement l'aide de cartes mmoire. La taille maximale de la mmoire de chargement est donne dans le manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques de la CPU" et le manuel de rfrence "Systmes dautomatisation S7-400/M7-400, Caractristiques des modules". Pour les CPU S7-300, la mmoire de chargement peut comporter une partie EPROM intgre en plus de la partie RAM. Dans les blocs de donnes, certaines zones peuvent tre dclares comme rmanentes par paramtrage dans STEP 7 (voir Zones de mmoire rmanentes des CPU S7-300). Pour les CPU S7-400, l'utilisation d'une carte mmoire (RAM ou EPROM) s'avre indispensable pour l'extension de la mmoire de chargement. En effet, la mmoire de chargement intgre est une mmoire vive qui sert essentiellement au rechargement et la correction des blocs. Pour certaines CPU S7-400, une mmoire de travail supplmentaire peut galement tre enfiche.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

565

Annexe 27.2 Zones de mmoire des CPU S7

Comportement de la mmoire de chargement pour les zones RAM et EPROM


Selon que vous choisissez une carte mmoire RAM ou EPROM pour tendre la mmoire de chargement, il peut s'ensuivre un comportement diffrent de cette mmoire lors du chargement, du rechargement et de l'effacement gnral. Le tableau suivant reprsente les possibilits de chargement :
Type de mmoire Mmoire vive (RAM) Possibilits de chargement Chargement et effacement de blocs individuels Chargement et effacement d'un programme S7 entier Rechargement de blocs individuels EPROM intgre (uniquement S7-300) ou enfichable EPROM enfichable Chargement de programmes S7 entiers Chargement de programmes S7 entiers Type de chargement Liaison PG-CPU Liaison PG-CPU Liaison PG-CPU Liaison PG-CPU

Chargement de l'EPROM sur la PG et enfichage de la carte mmoire dans la CPU. Chargement de l'EPROM sur la CPU.

Les programmes sauvegards en mmoire vive sont perdus lorsque vous excutez un effacement gnral de la CPU (MRES) ou lorsque vous retirez la CPU ou la carte mmoire RAM. Les programmes enregistrs sur cartes mmoire EPROM ne sont pas perdus en cas d'effacement gnral et restent conservs mme sans sauvegarde par pile (transport, copies de sret).

566

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

27.2.3 Mmoire systme


27.2.3.1 Utilisation des zones de mmoire systme
La mmoire systme des CPU S7 est subdivise en plages d'oprandes (voir le tableau ci-aprs). En utilisant les oprations correspondantes, vous accdez dans votre programme aux donnes directement dans la plage d'oprandes en question.
Plage d'oprandes Mmoire image des entres Accs par des units de taille suivante Entre (bit) Notation S7 E Description Au dbut de chaque cycle, la CPU lit les entres provenant des modules d'entres et enregistre ces valeurs dans la mmoire image des entres.

Octet d'entre Mot d'entre Double mot d'entre Mmoire image des sorties Sortie (bit)

EB EW ED A Pendant le cycle, le programme calcule les valeurs pour les sorties et les dpose dans la mmoire image des sorties. A la fin du cycle, la CPU crit les valeurs de sortie calcules dans les modules de sorties.

Octet de sortie Mot de sortie Double mot de sortie Mmentos Mmento (bit)

AB AW AD M Cette zone met disposition de l'espace mmoire pour les rsultats intermdiaires calculs dans le programme.

Octet de mmento Mot de mmento Temporisations Compteur Bloc de donnes Temporisation (T) Compteur (Z) Bloc de donnes ouvert avec AUF DB :

MB MW T Z DB Cette zone sert d'espace mmoire pour les temporisations. Cette zone sert d'espace mmoire pour les compteurs. Les blocs de donnes contiennent des informations pour le programme. Ils peuvent soit servir tous les blocs de code (DB globaux), soit tre associs un FB ou un SFB spcifique (DB d'instance).

Double mot de mmento MD

Bit de donnes Octet de donnes Mot de donnes Double mot de donnes Bloc de donnes ouvert avec AUF DB : Bit de donnes Octet de donnes Mot de donnes Double mot de donnes

DBX DBB DBW DBD DI DIX DIB DIW DID

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

567

Annexe 27.2 Zones de mmoire des CPU S7

Plage d'oprandes Donnes locales

Accs par des units de taille suivante Bit de donnes locales

Notation S7 L

Description Cette zone fournit de l'espace mmoire aux donnes temporaires d'un bloc pour la dure du traitement de ce bloc. La pile L sert galement la transmission de paramtres de blocs et la sauvegarde de rsultats intermdiaires pour les rseaux CONT.

Octet de donnes locales Mot de donnes locales Double mot de donnes locales Zone de priphrie : entres Octet d'entre de priphrie

LB LW LD PEB Les zones de priphrie des entres et des sorties permettent l'accs direct des modules d'entres et de sorties centraliss et dcentraliss.

Mot d'entre de priphrie Double mot d'entre de priphrie Zone de priphrie : sorties Octet de sortie de priphrie Mot de sortie de priphrie Double mot de sortie de priphrie

PEW PED PAB PAW PAD

Vous trouverez les plages d'adresses autorises pour votre CPU dans les descriptions de CPU ainsi que dans les listes d'oprations suivantes : Manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" Liste d'oprations "Automate programmable S7-300". Liste d'oprations "Automate programmable S7-400".

27.2.3.2

Mmoire image des entres/sorties


Lorsque le programme utilisateur accde aux plages d'oprandes Entres (E) et Sorties (A), il n'interroge pas les tats de signaux sur les modules de signaux TOR, mais accde une zone de mmoire dans la mmoire systme de la CPU et de la priphrie dcentralise. On appelle cette zone de mmoire "mmoire image du processus".

Mise jour de la mmoire image du processus


La figure suivante reprsente les tapes de traitement durant un cycle.

568

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

Une fois que les tches internes du systme d'exploitation (SE) ont t ralises, l'tat des entres est lu dans la mmoire image des entres (MIE). Puis a lieu le traitement du programme utilisateur avec tous les blocs qui y sont appels. Le cycle se termine par l'criture de la mmoire image des sorties (MIS) sur les sorties des modules. La lecture de la mmoire image des entres et l'criture de la mmoire image des sorties sur les sorties des modules sont ralises automatiquement par le systme d'exploitation.

Une fois que les tches internes du systme d'exploitation (SE) ont t ralises, la mmoire image des sorties (MIS) est inscrite dans les sorties des modules et l'tat des entres et lu dans la mmoire image des entres (MIE). Puis a lieu le traitement du programme utilisateur avec tous les blocs qui y sont appels. L'criture de la mmoire image des sorties (MIS) sur les sorties des modules et la lecture de la mmoire image des entres sont ralises automatiquement par le systme d'exploitation.

Avantages de la mmoire image du processus


L'accs la mmoire image du processus offre, par rapport l'accs direct aux modules d'entres et de sorties, l'avantage que la CPU dispose d'une mmoire image des signaux du processus cohrente pendant la dure du traitement de programme cyclique. Si un tat de signal change sur un module d'entres pendant le traitement du programme, l'tat de signal dans la mmoire image est conserv

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

569

Annexe 27.2 Zones de mmoire des CPU S7

jusqu' la mise jour de la mmoire image du processus dans le cycle suivant. L'interrogation rpte d'un signal d'entre dans un programme utilisateur permet de garantir la cohrence de l'information d'entre. En outre, l'accs la mmoire image prend bien moins de temps que l'accs direct aux modules de signaux, car la mmoire image du processus se trouve dans la mmoire interne de la CPU.

Mmoires image partielles


A ct de la mmoire image du processus (MIE et MIS) automatiquement actualise par le systme d'exploitation, vous pouvez paramtrer pour SIMATIC S7-400 jusqu' 15 mmoires images partielles du processus par CPU (selon la CPU, n 1 n 15 au plus ; voir manuel de rfrence "Systmes dautomatisation S7-400/M7-400, Caractristiques des modules"). Vous pouvez ainsi, en cas de besoin, mettre jour des parties de la mmoire image du processus, et ce indpendamment de la mise jour cyclique. Chaque adresse d'entre/sortie que vous avez affecte avec STEP 7 une mmoire image partielle ne fait plus partie de la mmoire image des entres-sorties gre par l'OB1 ! Les adresses d'entre/sortie ne peuvent tre affectes qu'une seule fois via la mmoire image de l'OB1 et via l'ensemble des mmoires images partielles. Vous dfinissez une mmoire image partielle avec STEP 7 lors de l'affectation d'adresses (quelles adresses d'entre/sortie des modules sont mentionnes dans quelle mmoire image partielle). La mise jour de la mmoire image partielle est effectue soit par lutilisateur l'aide de SFC, soit automatiquement par le systme au moyen d'un couplage un OB. Exception : Les mmoires image partielles des OB d'alarme de synchronisme d'horloge ne sont pas actualises par le systme quoiqu'elles soient couples un OB (OB 61 OB 64). Nota Dans les CPU S7-300, il est possible d'utiliser les entres et sorties non occupes de la mmoire image comme zones de mmentos supplmentaires. Les programmes utilisant cette mthode ne peuvent s'excuter sur les CPU S7- 400 anciennes (c'est--dire avant 4/99) qu' la condition suivante :
il faut que les mmoires images utilises comme mmentos se trouvent en dehors de la "Taille de la mmoire image" paramtre, ou bien il faut qu'elles se trouvent dans une mmoire image partielle qui n'est mise jour ni par le systme ni par SFC26/SFC27 !

Mise jour des mmoires images partielles par SFC


Des SFC vous permettent de mettre jour l'ensemble de la mmoire image ou seulement des mmoires images partielles partir du programme utilisateur. Condition : la mmoire image partielle en question n'est pas mise jour par le systme ! La SFC26 UPDAT_PI met jour la mmoire image des entres. La SFC27 UPDAT_PO met jour la mmoire image des sorties.

570

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

Mise jour des mmoires images partielles par le systme


Vous pouvez aussi demander la mise jour automatique par le systme des mmoires images partielles l'appel d'un OB - comme pour la mmoire image gnrale qui est mise jour cycliquement avant ou aprs l'excution de l'OB1. Cette fonction est paramtrable pour certaines CPU seulement. En cours de fonctionnement, la mmoire image partielle affecte est mise jour automatiquement : la mmoire image partielle des entres avant l'excution de l'OB, celle des sorties aprs l'excution de l'OB

Vous paramtrez quelle mmoire image partielle est affecte quel OB en mme temps que la priorit des OB.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

571

Annexe 27.2 Zones de mmoire des CPU S7

Erreur d'accs la priphrie lors de la mise jour de mmoire image


Selon la famille de CPU (S7-300 et S7-400), la raction prrgle une erreur durant la mise jour de mmoire image n'est pas la mme. S7-300 : pas d'inscription dans le tampon de diagnostic, pas d'appel d'OB, les octets d'entre concerns sont mis "0" et restent "0" jusqu' ce que l'erreur disparaisse. S7-400 : inscription dans le tampon de diagnostic et dmarrage de l'OB85 chaque accs la priphrie chaque mise jour de la mmoire image concerne. Les octets d'entre errons sont mis "0" chaque accs la mmoire image.

Avec les nouvelles CPU ( partir de 4/99), vous pouvez modifier par paramtrage la raction aux erreurs d'accs la priphrie, afin que la CPU ne gnre une entre dans le tampon de diagnostic et ne dmarre l'OB85 que pour une erreur d'accs la priphrie apparaissant ou disparaissant (avant l'appel de l'OB 85, les octets d'entre errons sont mis "0" et ne sont plus crass par le systme d'exploitation jusqu' ce que l'erreur d'accs la priphrie disparaisse) ou prsente le comportement prrgl des S7-300 (pas d'appel d'OB85, les octets d'entre errons sont mis "0" et ne sont plus crass par le systme d'exploitation jusqu' ce que l'erreur soit corrige) ou prsente le comportement prrgl des S7-400 (appel de l'OB85 chaque accs la priphrie les octets d'entre errons sont mis "0" chaque accs la mmoire image).

Nombre de dmarrages de l'OB85


En plus de la raction paramtre aux erreurs d'accs la priphrie (apparaissant/disparaissant ou chaque accs la priphrie), la plage d'adresses d'un module a aussi une influence sur le nombre de dmarrages de l'OB85. Pour un module dont la plage d'adresses va jusqu'au double-mot, l'OB85 dmarre une fois : par exemple pour un module TOR possdant jusqu' 32 entres ou sorties ou pour un module analogique 2 voies. Pour les modules dont la plage d'adresses est plus grande, l'OB85 dmarre autant de fois qu'il est ncessaire d'accder la plage avec des instructions sur double-mot : par exemple deux fois pour un module analogique 4 voies.

572

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

27.2.3.3

Pile des donnes locales


La pile L enregistre : les variables temporaires des donnes locales de blocs, les informations de dclenchement des blocs d'organisation, des informations pour la transmission de paramtres, des rsultats intermdiaires dans les programmes CONT.

Vous pouvez, lors de la cration de blocs d'organisation, dclarer des variables temporaires (TEMP) disponibles uniquement pendant le traitement du bloc et qui sont ensuite crases. Les donnes locales doivent tre initialises avant le premier accs. Chaque bloc d'organisation ncessite, en outre, 20 octets de donnes locales pour ses informations de dclenchement. La CPU possde une mmoire limite pour les variables temporaires (donnes locales) des blocs en cours de traitement. La taille de cette zone de mmoire dpend de la CPU. Par dfaut, elle est subdivise par parts gales entre les diffrentes classes de priorit. Ainsi, chaque classe de priorit dispose d'une zone de donnes locales en propre. Cela garantit que mme les classes de priorit les plus leves avec leurs OB associs ont suffisamment de place pour leurs donnes locales. La figure suivante illustre l'affectation de donnes locales aux classes de priorit dans un exemple o dans la pile L, l'OB1 est interrompu par l'OB10, puis nouveau par l'OB81.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

573

Annexe 27.2 Zones de mmoire des CPU S7

Avertissement Si vous utilisez des variables temporaires, pensez qu'elles ne sont valides que dans le bloc concern et qu'elles sont disponibles en tant que donnes locales prcdentes pour les autres blocs appels dans ce bloc. Lorsque vous quittez le bloc pour l'appeler nouveau, il n'est pas certain que les variables temporaires conservent les valeurs qu'elles avaient la fin de l'appel prcdent. Par dfinition, les variables temporaires sont indtermines l'appel d'un bloc et doivent toujours tre rinitialises lors de la premire utilisation d'un bloc. Toutes les variables temporaires (TEMP) d'un OB et des blocs qui y sont appels sont sauvegardes dans la pile L. Cette dernire peut dborder lorsque vous imbriquez trop de niveaux dans votre traitement des blocs. Les CPU S7 passent l'tat "Arrt" (STOP) lorsque vous dpassez la taille de pile L autorise pour un programme. Nous vous conseillons donc de tester la pile L (les variables temporaires) dans votre programme. Tenez compte de l'espace mmoire requis pour les donnes locales d'OB d'erreur synchrones.

Affectation de donnes locales aux classes de priorit


Les classes de priorit n'ont pas toutes besoin du mme espace dans la pile des donnes locales. STEP 7 vous permet de paramtrer diffremment la taille de la zone de donnes locales pour les diffrentes classes de priorit dans les CPU S7-400 et la CPU 318. Vous pouvez galement dsactiver les classes de priorit dont vous n'avez pas besoin, ce qui permet d'augmenter la zone de mmoire pour les autres classes de priorit dans les CPU S7-400 et la CPU 318. Les OB inactivs ne sont pas pris en compte lors du traitement du programme ; vous gagnez ainsi du temps de calcul. En revanche, un volume fixe de donnes locales (256 octets) est affect chaque classe de priorit pour les autres CPU S7-300. Vous ne pouvez pas le modifier.

27.2.3.4

Pile des interruptions


Lorsque le traitement du programme est interrompu par un OB de priorit plus leve, le systme d'exploitation sauvegarde, dans la pile des interruptions (pile I), le contenu des accumulateurs et des registres d'adresse ainsi que le numro et la taille des blocs de donnes ouverts. A l'achvement du traitement du nouvel OB, le systme d'exploitation charge les informations contenues dans la pile I et reprend le traitement du bloc interrompu au point o s'tait produite l'interruption. A l'tat de fonctionnement "Arrt" (STOP), vous pouvez lire la pile des interruptions la PG l'aide de STEP 7. Vous trouverez ainsi plus facilement la cause du passage de la CPU l'tat "Arrt".

574

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

27.2.3.5

Pile des blocs


Lorsque le traitement d'un bloc est interrompu par l'appel d'un autre bloc ou par une classe de priorit plus leve (alarme/traitement d'erreur), la pile B enregistre les donnes suivantes : numro, type (OB, FB, FC, SFB, SFC) et adresse de retour du bloc interrompu, numro des blocs de donnes (des onglets DB et DI) ouverts au moment de l'interruption.

Ces informations permettent de poursuivre l'excution du programme utilisateur aprs l'interruption. Si la CPU est l'tat de fonctionnement "Arrt" (STOP), vous pouvez afficher la pile des blocs sur la console de programmation l'aide de STEP 7. Cette pile numre tous les blocs dont le traitement n'tait pas termin au moment o la CPU est passe l'tat "Arrt". Ces blocs sont lists dans l'ordre dans lequel leur traitement avait commenc (voir la figure ci-aprs).

Registres de bloc de donnes


Il existe deux registres de bloc de donnes. Ils contiennent les numros des blocs de donnes ouverts. Le registre DB contient le numro du bloc de donnes global ouvert. Le registre DI contient le numro du bloc de donnes d'instance ouvert.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

575

Annexe 27.2 Zones de mmoire des CPU S7

27.2.3.6

Mmoire tampon de diagnostic


Dans la mmoire tampon de diagnostic, les messages de diagnostic sont affichs dans l'ordre de leur apparition. La premire entre contient l'vnement le plus rcent. Le nombre des entres dans la mmoire tampon de diagnostic dpend du module et de son tat de fonctionnement en cours. Parmi les vnements de diagnostic, on trouve : erreur dans un module, erreur d'assignation du processus erreur systme dans la CPU, changements d'tat de fonctionnement de la CPU erreurs dans le programme utilisateur, vnements de diagnostic personnaliss (via la fonction systme SFC 52).

27.2.3.7

Exploitation de la mmoire tampon de diagnostic


Une partie de la liste d'tat systme est constitue de la mmoire tampon de diagnostic dans laquelle sont inscrites des informations plus prcises sur les vnements de diagnostic systme et personnalis dans l'ordre de leur apparition. Les informations relatives un vnement de diagnostic systme sont les mmes que les informations de dclenchement transmises au bloc d'organisation correspondant. Il n'est pas possible d'effacer les entres dans la mmoire tampon de diagnostic ; son contenu est conserv mme aprs un effacement gnral. La mmoire tampon de diagnostic permet : en cas d'arrt de l'installation, d'valuer les derniers vnements avant le passage l'tat de fonctionnement "Arrt" (STOP) et la cause de l'arrt, de reconnatre plus rapidement l'origine des erreurs et d'amliorer ainsi la disponibilit de l'installation, d'valuer et d'optimiser le comportement dynamique de l'installation.

576

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

Organisation de la mmoire tampon de diagnostic


La mmoire tampon de diagnostic est organise comme mmoire circulante pour un nombre maximal d'entres dpendant du module. L'entre la plus ancienne est crase lorsque le nombre maximal d'entres est atteint et toutes les entres sont dplaces en consquence. Ainsi, l'entre la plus rcente est-elle toujours la premire place. La mmoire tampon de diagnostic de la CPU 314 S7-300 compte, par exemple, 100 entres :

Le nombre des entres affiches dans la mmoire tampon de diagnostic dpend du module et de son tat de fonctionnement en cours. Pour certaines CPU, la longueur de la mmoire tampon de diagnostic est paramtrable.

Contenu de la mmoire tampon de diagnostic


La zone suprieure contient la liste de tous les vnements de diagnostic qui se sont produits, avec les informations suivantes : numro d'ordre de l'entre (l'vnement le plus rcent a le numro 1), heure et date de l'vnement de diagnostic : l'heure et la date du module sont indiqus, si le module possde une horloge. Il est donc important, pour pouvoir utiliser correctement ces indications horaires, que vous rgliez la date et l'heure du module et que vous vrifiiez ces dernires de temps autre. texte abrg de l'vnement.

La zone infrieure affiche des informations supplmentaires sur l'vnement slectionn dans la zone suprieure. Ce sont, par exemple : numro de l'vnement, dsignation de l'vnement, changement d'tat de fonctionnement occasionn par l'vnement de diagnostic, renvoi l'endroit de l'erreur dans un bloc (type et numro de bloc et adresse relative) ayant entran l'inscription de l'vnement, vnement arrivant ou partant, informations complmentaires spcifiques de l'vnement. En cliquant sur le bouton "A propos de l'vnement", vous pouvez afficher des informations complmentaires sur l'vnement slectionn dans la liste.

Vous trouverez des explications sur les ID d'vnement dans l'aide sur les fonctions systme et les blocs fonctionnels systme (Sauts dans les descriptions de langage, aides sur les blocs, attributs systme).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

577

Annexe 27.2 Zones de mmoire des CPU S7

Enregistrement dans un fichier de texte


Le bouton "Enregistrer sous" dans la page d'onglet "Mmoire tampon de diagnostic" de la bote de dialogue "Etat du module" permet d'enregistrer le contenu du tampon de diagnostic sous forme de texte ASCII.

Lecture de la mmoire tampon de diagnostic


Vous pouvez afficher le contenu de la mmoire tampon de diagnostic sur la PG/le PC via la page d'onglet "Mmoire tampon de diagnostic" de la bote de dialogue "Etat du module", ou en effectuer la lecture dans un programme via la SFC51 RDSYSST.

Dernire entre avant arrt


Vous pouvez demander que la dernire entre de la mmoire tampon de diagnostic avant le passage de l'tat "Marche" (RUN) l'tat "Arrt" (STOP) soit envoye un appareil de contrle dclar (PG, OP, TD, par exemple). Cela permet de localiser et de corriger plus rapidement la cause du passage l'tat "Arrt".

578

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

27.2.3.8

Zones de mmoire rmanentes des CPU S7-300


En cas de coupure de courant ou d'effacement gnral (MRES), la mmoire de la CPU S7-300 mmoire de chargement dynamique (RAM), mmoire de travail et mmoire systme - est remise zro et toutes les donnes figurant dans ces zones sont perdues. Les CPU S7-300 fournissent toutefois des moyens pour conserver programme et donnes. Vous pouvez sauvegarder, l'aide d'une pile, toutes les donnes se trouvant en mmoire de chargement, en mmoire de travail et dans certaines parties de la mmoire systme. Vous pouvez sauvegarder votre programme dans l'EPROM (soit sous forme de carte mmoire, soit intgre dans la CPU ; voir le manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU") Vous pouvez sauvegarder un volume de donnes dpendant de la CPU dans une zone de mmoire vive non volatile (NVRAM).

Mmoire vive non volatile


Votre CPU S7-300 comporte une zone de mmoire vive non volatile (NVRAM ; voir la figure ci-aprs). Si vous avez rang votre programme dans l'EPROM de la mmoire de chargement, vous pouvez galement sauvegarder certaines donnes - en cas de coupure de courant ou de passage de l'tat de fonctionnement "Arrt" (STOP) l'tat "Marche" (RUN) - en excutant la configuration correspondante.

A cet effet, vous rglez votre CPU de manire sauvegarder les donnes suivantes en mmoire vive non volatile : informations ranges dans un DB (utile uniquement si vous avez aussi sauvegard votre programme dans une EPROM de la mmoire de chargement), valeurs de temporisations et de compteurs, informations figurant dans des mmentos.

Chaque CPU permet de sauvegarder un nombre prcis de temporisations, de compteurs et de mmentos. Chaque CPU fournit galement un nombre donn d'octets o les donnes figurant dans des DB pouvent tre conserves. L'adresse d'interface multipoint (MPI) de votre CPU est sauvegarde en mmoire vive non volatile afin que votre CPU puisse toujours communiquer, mme aprs une coupure de courant ou un effacement gnral.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

579

Annexe 27.2 Zones de mmoire des CPU S7

Utilisation d'une pile de sauvegarde


Avec une pile de sauvegarde, la mmoire de chargement et la mmoire de travail deviennent rmanentes en cas de coupure de courant. Les temporisations, compteurs et mmentos que vous avez configurs pour sauvegarde en mmoire vive non volatile sont galement conservs, indpendamment de la sauvegarde par pile.

Configuration des donnes de la mmoire vive non volatile


Vous dterminez les zones de mmoire rmanentes lors de la configuration de la CPU avec STEP 7. La taille de mmoire pouvant tre configure en mmoire vive non volatile dpend de la CPU ; vous ne pouvez pas sauvegarder plus de donnes que le volume prcis pour votre CPU.

580

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.2 Zones de mmoire des CPU S7

27.2.3.9

Zones de mmoire rmanentes des CPU S7-400

Fonctionnement sans sauvegarde


En cas de coupure de courant ou d'effacement gnral (MRES), la mmoire de la CPU S7-400 mmoire de chargement dynamique (RAM), mmoire de travail et mmoire systme - est remise zro et toutes les donnes figurant dans ces zones sont perdues. En fonctionnement sans sauvegarde, seul un dmarrage chaud est possible et il n'existe pas de zones de mmoire rmanentes. Seuls sont conservs les paramtres MPI (par exemple, l'adresse MPI de la CPU) aprs une coupure de courant. Ainsi la CPU est-elle encore capable de communiquer aprs une coupure de courant ou un effacement gnral.

Fonctionnement avec sauvegarde


En fonctionnement avec sauvegarde : le contenu de toutes les zones RAM est intgralement conserv en cas de redmarrage aprs coupure de courant ; les plages d'oprandes mmentos, temporisations et compteurs sont effaces. Les contenus des blocs de donnes conservs lors d'un dmarrage chaud ; le contenu de la mmoire de travail RAM est conserv l'exception des mmentos, temporisations et compteurs paramtrs comme non rmanents.

Configuration de zones de donnes rmanentes


Vous pouvez dfinir comme rmanents un nombre de mmentos, temporisations et compteurs dpendant de la CPU. Ces donnes sont alors conserves en cas de dmarrage chaud en fonctionnement avec sauvegarde. Dans STEP 7, vous pouvez paramtrer quels mmentos, temporisations et compteurs doivent tre rmanents au dmarrage chaud. Il n'est pas possible de sauvegarder plus de donnes que le volume autoris pour votre CPU. De plus amples informations sur le paramtrage de zones de mmoire rmanentes sont fournies dans le manuel de rfrence "Systmes dautomatisation S7-400/M7-400 - Caractristiques des CPU".

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

581

Annexe 27.2 Zones de mmoire des CPU S7

27.2.3.10 Objets mmoire configurables dans la mmoire de travail


Pour certaines CPU, la taille des objets tels que les donnes locales ou la mmoire tampon de diagnostic peut tre paramtre dans HW Config. Si, par exemple, vous diminuez les valeurs par dfaut, une plus grande partie de la mmoire de travail sera disponibles pour d'autres tches. Le paramtrage de ces CPU peut tre lu dans la page d'onglet "Mmoire" de l'tat du module (bouton Dtails). Aprs modification de la configuration de la mmoire et chargement dans le systme cible, un dmarrage froid du systme cible s'avre ncessaire pour activer les modifications.

582

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3

Types de donnes et de paramtre

27.3.1 Introduction aux types de donnes et de paramtre


Il faut indiquer le type de donnes pour toutes les donnes utilises dans le programme utilisateur. On distingue entre : les types de donnes simples que STEP 7 met votre disposition, les types de donnes complexes que vous pouvez crer en combinant des types de donnes simples et les types de paramtre avec lesquels vous dfinissez des paramtres transmettre des FB ou des FC.

Informations gnrales
Les oprations LIST, LOG ou CONT utilisent des objets de donnes de taille dfinie. Les opration combinatoires sur bit, par exemple, utilisent des bits. Les oprations de chargement et de transfert (LIST) ainsi que les oprations de transfert (LOG et CONT) utilisent des octets, mots et double mots. Un bit est un chiffre binaire "0" ou "1". Un octet contient 8 bits, un mot 16 bits et un double mot 32 bits. Les oprations arithmtiques utilisent galement des octets, mots ou double mots. Dans ces oprandes de type octet, mot ou double mot vous pouvez coder des nombres de formats diffrents, comme par exemple les nombres entiers et les nombres virgule flottante. Si vous utilisez l'adressage symbolique, vous dfinissez des mnmoniques et leur affectez un type de donnes (voir le tableau suivant). Les diffrents types de donnes possdent diffrentes options pour le format et diverses reprsentations de nombre. Le prsent chapitre ne dcrit que certaines des notations possibles pour les nombres et les constantes. Le tableau suivant liste les formats de nombres et de constantes qui ne seront pas abords en dtail.
Format hexadcimal binaire, date CEI dure CEI heure CARACTERE Taille en bits 8, 16 et 32 8, 16 et 32 16 32 32 8 Reprsentation des nombres B#16#, W#16# et DW#16# 2# D# T# TOD# 'A'

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

583

Annexe 27.3 Types de donnes et de paramtre

27.3.2 Types de donnes simples


Chaque type de donnes simple a une longueur dfinie. Le tableau ci-aprs prsente les types de donnes simples.
Type et description Taille Options pour en le format : bits 1 8 Texte boolen Nombre hexadcimal Nombre en binaire pur Nombre hexadcimal BCD Nombre dcimal non sign DWORD (double mot) 32 Nombre en binaire pur 2#0 2#1111_1111_1111_1111_ 1111_1111_1111_1111 Nombre hexadcimal Nombre dcimal non sign INT (entier) DINT (nombre entier de 32 bits) REAL (nombre virgule flottante) S5TIME (dure SIMATIC) TIME (dure CEI) 32 16 32 32 16 Nombre dcimal -32768 32767 sign Nombre dcimal L#-2147483648 L#2147483647 sign IEEE nombre virgule flottante Dure S7 en pas de 10 ms (valeur par dfaut) Limite suprieure : 3.402823e+38 Limite infrieure : 1.175 495e-38 S5T#0H_0M_0S_10MS S5T#2H_46M_30S_0MS et S5T#0H_0M_0S_0MS L S5T#0H_1M_0S_0MS L S5TIME#0H_1H_1M_0S_0MS DW#16#0000_0000 DW#16#FFFF_FFFF B#(0,0,0,0) B#(255,255,255,255) L DW#16#00A2_1234 L dword#16#00A2_1234 L B#(1, 14, 100, 120) L byte#(1,14,100,120) Plage et reprsentation des nombres (valeur minimale valeur maximale) TRUE/FALSE B#16#0 B#16#FF Exemple

BOOL (bit) BYTE (octet) WORD (mot)

TRUE L B#16#10 L byte#16#10 L 2#0001_0000_0000_0000 L W#16#1000 L word#16#1000 L C#998 L B#(10,20) L byte#(10,20)

16

2#0 2#1111_1111_1111_1111 W#16#0 W#16#FFFF C#0 C#999 B#(0,0) B#(255,255)

2#1000_0001_0001_1000_ 1011_1011_0111_1111

L1 L L#1

L 1.234567e+13

Dure CEI en T#-24D_20H_31M_23S_648MS L T#0D_1H_1M_0S_0MS incrments de 1 T#24D_20H_31M_23S_647MS L TIME#0D_1H_1M_0S_0MS ms, entier sign

584

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Type et description

Taille Options pour en le format : bits 16

Plage et reprsentation des nombres (valeur minimale valeur maximale)

Exemple

DATE (date CEI)

Date CEI en D#1990-1-1 incrments de 1 D#2168-12-31 jour Heure en pas de 1 ms Caractres ASCII TOD#0:0:0.0 TOD#23:59:59.999 'A','B' etc.

L D#1994-3-15 L DATE#1994-3-15 L TOD#1:10:3.3 L TIME_OF_DAY#1:10:3.3 L 'E'

TIME_OF_DAY 32 (heure) CHAR (caractre) 8

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

585

Annexe 27.3 Types de donnes et de paramtre

27.3.2.1

Format du type de donnes INT (entiers de 16 bits)


Un nombre entier comporte un signe prcisant s'il s'agit d'un entier positif ou ngatif. L'espace occup par un nombre entier (16 bits) dans la mmoire est d'un mot. Le tableau suivant reprsente la plage d'un nombre entier (16 bits).
Format Entier (16 bits) : Plage -32 768 +32 767

La figure suivante reprsente le nombre entier +44 sous forme de nombre en binaire pur.

27.3.2.2

Format du type de donnes DINT (nombres entiers de 32 bits)


Un nombre entier comporte un signe prcisant s'il s'agit d'un entier positif ou ngatif. L'espace occup par un nombre entier (32 bits) dans la mmoire est de deux mots. le tableau suivant reprsente la plage d'un nombre entier (32 bits).
Format Nombre entier (32 bits) : Plage -2 147 483 648 +2 147 483 647

La figure suivante reprsente le nombre entier -500 000 comme nombre en binaire pur. Dans le systme binaire, la forme ngative d'un nombre entier est reprsente comme complment deux du nombre entier positif. Vous obtenez le complment deux d'un nombre entier en inversant les tats de signaux de tous les bits, puis en additionnant +1 au rsultat.

586

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.2.3

Format du type de donnes REAL (nombres virgule flottante)


La reprsentation gnrale dun nombre virgule flottante est "nombre = m b exposant E". La base "b" et lexposant "E" sont des nombres entiers, la mantisse "m" un nombre rationnel. Ce type de reprsentation de nombres offre lavantage de permettre de reprsenter de trs grandes et de trs petites valeurs dans un espace limit. Le nombre limit de bits pour la mantisse et lexposant permet de reprsenter une vaste plage de nombres. Le dsavantage rside dans la limitation de la prcision de calcul. Pour le calcul de la somme de deux nombres, par exemple, les exposants doivent tre adapts par dcalage de la mantisse (virgule flottante) (addition des mantisses de deux nombres possdant le mme exposant).

Format virgule flottante dans STEP 7


Dans STEP 7, les nombres virgule flottante correspondent au format de base de simple largeur, comme dcrit dans la norme ANSI/IEEE Std 754-1985, IEEE Standard for Binary Floating-Point Arithmetic. Ils sont forms des composants suivants : le signe s lexposant e = E + Bias augment dune constante (Bias = +127) la partie fractionnaire de la mantisse m. La partie entire de la mantisse nest pas indique, car elle est toujours gale 1 dans la plage de nombres valide.

Ces trois composants occupent au total un double mot (32 bits) :

Le tableau suivant illustre la valeur de chaque bit dans le format virgule flottante.
Composant du nombre virgule flottante Signe s Exposant e ... Exposant e Exposant e Mantisse m ... Mantisse m Mantisse m Numro du bit 31 30 ... 24 23 22 ... 1 0 2 exposant 7 ... 2 exposant 1 2 exposant 0 2 exposant -1 ... 2 exposant -22 2 exposant -23 Valeur

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

587

Annexe 27.3 Types de donnes et de paramtre

Les trois composants s, e et m dfinissent la valeur dun nombre reprsent dans ce format par la formule : Nombre = 1,m 2 exposant (e-Bias) O : e : 1 e 254 Bias : Bias = 127. Ceci permet dviter un signe supplmentaire pour lexposant. s : pour un nombre positif, s = 0 et pour un nombre ngatif, s = 1.

Plage de valeurs des nombres virgule flottante


Avec le format virgule flottante reprsent ci-avant : le nombre virgule flottante le plus petit = 1,0 2 exposant (1-127) = 1,0 2 exposant (-126) = 1,175 495E-38 et le nombre virgule flottante le plus grand = 2-2 exposant (-23) 2 exposant (254-127) = 2-2 exposant (-23) 2 exposant (+127) = 3,402 823E+38

Le nombre zro est reprsent par e = m = 0 ; e = 255 et m = 0 signifie "infini".


Format Nombres virgule flottante selon la norme ANSI/IEEE Plage1) -3,402 823E+38 -1,175 495E-38 et 0 et +1,175 495E-38 +3,402 823E+38

Le tableau suivant reprsente ltat de signal des bits du mot dtat pour le rsultat doprations sur des nombres virgule flottante se trouvant hors de la plage admise.
Rsultat dans la plage invalide -1,175494E-38 < rsultat < -1,401298E-45 (nombre ngatif) Dpassement bas +1,401298E-45 < rsultat < +1,175494E-38 (nombre positif) Dpassement bas Rsultat < -3,402823E+38 (nombre ngatif) Dpassement haut Rsultat > 3,402823E+38 (nombre positif) Dpassement haut Pas de nombre virgule flottante valide ou opration invalide (valeur dentre hors de la plage de valeurs admise) A1 0 0 0 1 1 A0 0 0 1 0 1 OV 1 1 1 1 1 OS 1 1 1 1 1

Attention pour les oprations mathmatiques : Lon obtient par exemple le rsultat "Pas de nombre virgule flottante valide" lorsque lon tente dextraire la racine carre de -2. Dans le cas doprations mathmatiques, vous devez donc toujours dabord valuer les bits dtat avant de poursuivre le calcul avec le rsultat. Attention pour le "Forage de variables" : Lorsque lon inscrit les valeurs pour les oprations sur nombres virgule flottante dans des double mots de mmento, par exemple, il est possible de modifier ces valeurs avec des modles binaires quelconques. Chaque modle binaire ne reprsente cependant pas un nombre valide !

588

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Prcision dans le calcul sur nombres virgule flottante


Avertissement Des imprcisions peuvent survenir dans des rsultats de calculs importants sur des nombres prsentant des ordres de grandeur trs diffrents (plusieurs 10aines de puissances).

Dans STEP 7, la prcision des nombres virgule flottante est de 6 dcimales. Lorsque vous saisissez des constantes virgule flottante, tes donc limit 6 dcimales au maximum.

Nota
La prcision de calcul de 6 dcimales signifie par exemple que laddition du nombre1 + nombre2 = nombre1, lorsque nombre1 est suprieur nombre2 10 exposant y, et y > 6 : 100 000 000 + 1 = 100 000 000.

Exemples de nombres reprsents dans le format virgule flottante


La figure suivante illustre le format de nombres virgule flottante pour les valeurs dcimales suivantes : 10,0 Pi (3,141593) racine carre de 2 (1,414214)

Le nombre 10,0 dans le premier exemple rsulte de la manire suivante de son format virgule flottante (reprsentation en HEX : 4120 0000) : e = 2 exposant 7 + 2 exposant 1 = 130 m = 2 exposant (-2) = 0,25 Il en rsulte : (1 + m) 2 exposant (e - Bias) = 1,25 2 exposant 3 = 10.0. [1,25 2 exposant (130-127) = 1,25 2 exposant 3 = 10,0]

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

589

Annexe 27.3 Types de donnes et de paramtre

590

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.2.4

Format des types de donnes WORD et DWORD pour les nombres dcimaux cods binaire
Dans la reprsentation dcimale code binaire (DCB), un nombre dcimal est reprsent par des groupes de chiffres binaires (bits). Un groupe de 4 bits reprsente un chiffre ou le signe d'un nombre dcimal. Les groupes de 4 bits forment un mot (16 bits) ou un double mot (32 bits). Les quatre bits de poids le plus fort indiquent le signe du nombre ("1111" signifie moins et "0000" plus). Les instructions comportant des oprandes dcimaux cods binaires n'expoitent que le bit de poids le plus fort (15 en format mot, 31 en format double mot). Le tableau suivant indique le format et la plage des deux types de nombre DCB.
Format Mot (16 bits, nombre DCB trois positions sign) Double mot (32 bits, nombre DCB 7 positions sign) Plage -999 +999 -9 999 999 +9 999 999

Les figures suivantes donnent des exemples d'un nombre dcimal cod binaire dans les formats suivants : Format mot

Format double mot

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

591

Annexe 27.3 Types de donnes et de paramtre

27.3.2.5

Format du type de donnes S5TIME (dure SIMATIC)


Lorsque vous saisissez la dure avec le type de donnes S5TIME, vos entres sont enregistres en format DCB. La figure suivante indique le contenu de l'oprande de temporisation pour une valeur de temps gale 12 et une base de temps d'1 s.

Lorsque vous utilisez le type de donnes S5TIME, vous indiquez une valeur de temps comprise dans la plage 0 999 et spcifiez une base de temps (cf. tableau suivant). La base de temps correspond l'intervalle dans lequel une dure diminue la valeur de temps d'une unit, jusqu' atteindre "0". Base de temps pour S5TIME
Base de temps 10 ms 100 ms 1s 10 s Code binaire pour la base de temps 00 01 10 11

Vous pouvez chargez une valeur de temps prdfinie en utilisant la syntaxe suivante : L1 W#16#wxyz o : w = base de temps (c'est--dire intervalle de temps ou rsolution) xyz = valeur de temps en format DCB

L1 S5T#aH_bbM_ccS_dddMS o : a = heures, bb = minutes, cc = secondes et ddd = millisecondes. La slection de la base de temps est automatique et la valeur est arrondie au nombre infrieur le plus proche avec cette base de temps.

Vous pouvez entrer une valeur de temps de 9 990 secondes ou 2H_46M_30S au maximum.
1

= L doit uniquement tre entr en programmation LIST

592

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.3 Types de donnes complexes


Les types de donnes complexes dfinissent des groupes de donnes comportant plus de 32 bits ou des groupes de donnes composs partir d'autres types de donnes. STEP 7 autorise les types de donnes complexes suivants : DATE_AND_TIME STRING ARRAY (tableau) STRUCT (structure) UDT (types de donnes utilisateur), FB et SFB

Le tableau ci-aprs dcrit les types de donnes complexes. Vous dfinissez les structures et les tableaux soit dans la dclaration des variables du bloc de code, soit dans un bloc de donnes.
Type de donnes DATE_AND_TIME DT STRING Description Dfinit une zone de 64 bits (8 octets). Ce type de donnes sauvegarde en format dcimal cod binaire. Dfinit un ensemble de 254 caractres au maximum (type de donnes CHAR). La zone rserve une chane de caractres est par dfaut de 256 octets : c'est la mmoire ncessaire la sauvegarde de 254 octets et d'un en-tte de deux octets. Vous pouvez indiquer le nombre de caractres dans la chane et rduire ainsi l'espace utilis en mmoire (par exemple, STRING[9] 'Siemens'). Dfinit un agrgat multidimensionnel d'un mme type de donnes (soit simple, soit complexe). Par exemple, "ARRAY[1..2,1..3] OF INT" correspond un tableau de nombres entiers de format 2 x 3. Vous accdez aux donnes sauvegardes dans un tableau via l'indice (ex. : [2,2]). Un tableau peut comporter 6 dimensions au maximum ; l'indice peut tre un nombre entier quelconque (de -32768 32767). Dfinit un agrgat de types de donnes quelconques combins. Vous pouvez, par exemple, dfinir un tableau de structures ou une structure contenant structures et tableaux. Un UDT vous permet d'organiser des volumes de donnes importants et de simplifier la saisie des types de donnes lorsque vous voulez crer des blocs de donnes ou dclarer des variables dans la table de dclaration des variables. Dans STEP 7, vous pouvez combiner des types de donnes simples et complexes et, ainsi, crer votre propre type de donnes. Les UDT ont un nom propre et peuvent donc tre utiliss plusieurs fois. Dterminent la structure du bloc de donnes d'instance associ et permettent la transmission de donnes d'instance pour plusieurs appels de FB dans un DB d'instance.

ARRAY

STRUCT

UDT

FB, SFB

Les types de donnes structurs sont rangs par alignement sur les limites de mots (WORD aligned).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

593

Annexe 27.3 Types de donnes et de paramtre

27.3.3.1

Format du type de donnes DATE_AND_TIME (date et heure)


Lorsque vous saisissez la date et l'heure avec le type de donnes DATE_AND_TIME (DT), vos entres sont enregistres dans 8 octets en format DCB. Le type de donnes DATE_AND_TIME est form de la plage suivante : DT#1990-1-1-0:0:0.0 DT#2089-12-31-23:59:59.999 Les exemples suivants indiquent les syntaxes possibles pour la saisie de la date et de l'heure du jeudi, le 25 dcembre 1993, 8:12 et 34,567 secondes. Les deux formats suivants sont possibles : DATE_AND_TIME#1993-12-25-8:12:34.567 DT#1993-12-25-8:12:34.567

Vous disposez des fonctions standard CEI (International Electrotechnical Commission) suivantes pour traiter le type de donnes DATE_AND_TIME : Conversion de la date et de l'heure au format DATE_AND_TIME FC3 : D_TOD_DT

Dtermination de la date partir du format DATE_AND_TIME FC6 : DT_DATE

Dtermination du jour de la semaine partir du format DATE_AND_TIME FC7 : DT_DAY

Dtermination de l'heure partir du format DATE_AND_TIME FC8 : DT_TOD

Le tableau suivant prsente le contenu des octets qui contiennent l'information sur la date et l'heure. L'exemple montre la date et l'heure pour jeudi le 25 dcembre 1993, 8:12 et 34,567 secondes.
Octet 0 1 2 3 4 5 6 7 (4MSB) 7 (4LSB) Contenu anne mois jour heures minutes secondes les deux chiffres de poids le plus fort de MSEC le chiffre de poids le plus faible de MSEC jour de la semaine 1 = dimanche 2 = lundi ... 7 = samedi Exemple B#16#93 B#16#12 B#16#25 B#16#08 B#16#12 B#16#34 B#16#56 B#16#7_ B#16#_5

594

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

La plage autorise pour le type de donnes "DATE_AND_TIME" est : min. : DT#1990-1-1-0:0:0.0 max. : DT#2089-12-31-23:59:59.999
Plage de valeurs possible anne mois jour heures minutes secondes millisecondes jour de la semaine 1990 - 1999 2000 - 2089 1 - 12 1 - 31 00 - 23 00 - 59 00 - 59 0 - 999 dimanche - samedi Code DCB 90 - 99 00 - 89 01 - 12 01 - 31 00 - 23 00 - 59 00 - 59 000 - 999 1-7

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

595

Annexe 27.3 Types de donnes et de paramtre

27.3.3.2

Utilisation de types de donnes complexes


Vous pouvez crer de nouveaux types de donnes en combinant des types de donnes simples et complexes pour obtenir les types de donnes complexes suivants : tableau (ARRAY) : agrgat de donnes de mme type, structure (STRUCT) : agrgat de donnes de types diffrents, chane (STRING) : tableau une dimension de 254 caractres (type de donnes CHAR) au maximum. Une chane ne peut tre transmise que comme entit complte et la longueur de la chane doit tre identique pour les paramtres formel et effectif du bloc. date et heure (DATE_AND_TIME) : anne, mois, jour, heures, minutes, secondes, millisecondes et jour de la semaine.

La figure ci-aprs montre comment les tableaux et structures organisent des types de donnes en une zone de stockage d'informations. Vous pouvez dfinir un tableau ou une structure soit dans un DB, soit dans la table de dclaration des variables d'un FB, d'une FC ou d'un OB.

596

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.3.3 Tableaux

Utilisation de tableaux pour l'accs aux donnes

Un tableau correspond un agrgat de donnes de mme type (simple ou complexe). Il n'est pas possible de dfinir un tableau de tableaux. Lorsque vous dfinissez un tableau : vous prcisez son nom ; vous dclarez son type l'aide du mot-cl ARRAY ; vous indiquez sa taille l'aide d'indices. Vous entrez le premier et le dernier nombre pour chaque dimension (jusqu' 6) dans le tableau. Vous indiquez les indices entre crochets, chaque dimension tant spare par une virgule et les premier et dernier nombres pour chaque dimension par deux points. Voici, par exemple, comment dfinir un tableau tridimensionnel : [1..5,-2..3,30..32] vous identifiez le type des donnes sauvegarder dans le tableau.

Exemple 1
La figure ci-aprs montre un tableau de trois nombres entiers. Vous accdez aux donnes ranges dans le tableau l'aide de l'indice, c'est--dire du nombre entre crochets. L'indice pour le deuxime nombre entier est, par exemple, Temp_fonct[2]. Un indice peut tre une valeur entire quelconque, mme ngative (-32768 32767). Il aurait galement t possible de dfinir le tableau de la figure ci-aprs comme ARRAY [-1..1]. L'indice pour le premier entier serait alors Temp_fonct[-1], celui pour le deuxime entier Temp_fonct[0] et celui pour le troisime Temp_fonct[1].

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

597

Annexe 27.3 Types de donnes et de paramtre

Exemple 2
Un tableau peut galement dcrire un agrgat multidimensionnel de types de donnes. La figure ciaprs montre un tableau bidimensionnel de nombres entiers.

Vous accdez aux donnes de ce tableau l'aide des indices. Pour l'exemple, le premier nombre entier est Temp_fonct[1,1], le troisime Temp_fonct[1,3], le quatrime Temp_fonct[2,1] et le sixime Temp_fonct[2,3]. Un tableau peut avoir jusqu' six dimensions (six jeux d'indices). Vous dfinissez la variable Temp_fonct comme tant un tableau six dimensions de la manire suivante par exemple : ARRAY [1..3,1..2,1..3,1..4,1..3,1..4] Le premier lment de ce tableau sera donc Temp_fonct[1,1,1,1,1,1] et le dernier Temp_fonct[3,2,3,4,3,4].

Cration d'un tableau


La dfinition d'un tableau se fait lors de la dclaration de donnes dans un DB ou dans la table de dclaration des variables. Pour dclarer un tableau, vous entrez le mot-cl ARRAY suivi de sa taille entre crochets : [limite infrieure..limite suprieure] Pour un tableau multidimensionnel, vous prcisez les limites infrieure et suprieure pour chaque dimension, en les sparant par une virgule. Dans la figure ci-aprs, on dclare un tableau 2 x 3.

598

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Saisie de valeurs initiales dans un tableau


Vous pouvez affecter une valeur initiale chaque lment des tableaux que vous crez. Il existe deux mthodes pour saisir les valeurs initiales : Saisie de valeurs individuelles : Vous indiquez pour chaque lment du tableau une valeur autorise (pour le type de donnes du tableau). Indiquez les valeurs dans l'ordre des lments, par exemple [1,1]. Les diffrents lments sont spars par une virgule. Indication d'un facteur de rptition : Pour des lments qui se suivent et doivent prendre la mme valeur initiale, vous pouvez prciser le nombre d'lments (facteur de rptition x) et leur valeur initiale. Le format de saisie d'un facteur de rptition est x(y), x tant le facteur de rptition et y la valeur rpter.

Pour l'exemple de la figure ci-avant, vous pouvez dfinir la valeur initiale des six lments en entrant : 17, 23, -45, 556, 3342, 0. Mais pour leur donner tous la valeur initiale 10, il vous suffirait d'indiquer : 6(10). Vous pourriez galement donner une valeur individuelle aux deux premiers lments et la valeur nulle aux quatre autres en prcisant : 17,23,4(0).

Accs aux donnes d'un tableau


Vous accdez aux donnes d'un tableau par l'indice de l'lment concern dans le tableau. L'indice est combin au mnmonique du tableau. Exemple : si le tableau dclar dans la figure ci-avant commence au premier octet du DB20 (Moteur), vous accdez au deuxime lment du tableau l'aide de l'adresse suivante : Moteur.Chaleur_2x3[1,2]

Utilisation de tableaux comme paramtres


Vous pouvez transmettre des tableaux comme paramtres. Lorsque vous dclarez un paramtre ARRAY dans la dclaration des variables, vous devez transmettre le tableau complet, et non pas des lments individuels. Il est toutefois possible d'affecter un lment de tableau un paramtre lorsque vous appelez un bloc si cet lment correspond au type de donnes du paramtre. Les tableaux que vous transmettez comme paramtres ne doivent pas ncessairement avoir le mme nom (ou mme avoir un nom), mais il faut qu'ils soient tous deux - paramtre effectif et paramtre formel - organiss de manire identique. Ainsi, un tableau 2x3 de nombres entiers ne peut-il tre transmis comme paramtre que si le paramtre formel du bloc dfinit un tableau 2x3 de nombres entiers et si le paramtre effectif fourni dans l'opration d'appel est galement un tableau 2x3 de nombres entiers.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

599

Annexe 27.3 Types de donnes et de paramtre

27.3.3.4 Structures

Utilisation de structures pour l'accs aux donnes

Une structure correspond un agrgat de donnes de types diffrents (toute combinaison de types de donnes simples ou complexes, y compris tableaux et structures). Cela permet de regrouper des donnes selon la logique de votre processus. Cela permet galement de transmettre des paramtres comme une entit de donnes, plutt que sous la forme d'lments distincts. La figure ci-aprs montre une structure constitue d'un nombre entier, d'un octet, d'un caractre, d'un nombre virgule flottante et d'une valeur boolenne.

Une structure peut tre imbrique jusqu' huit niveaux (par exemple, une structure de structures contenant des tableaux).

Cration d'une structure


La dfinition d'une structure se fait lors de la dclaration de donnes dans un DB ou dans la dclaration des variables d'un bloc de code. Dans la figure ci-aprs, on dclare une structure lot_1 constitue des lments suivants : un nombre entier (pour la quantit), un octet (pour les donnes brutes), un caractre (pour le code de commande), un nombre virgule flottante (pour la temprature) et un mmento boolen (pour signaler l'achvement).

Affectation de valeurs initiales une structure


Pour affecter une valeur initiale chaque lment d'une structure, vous indiquez une valeur autorise pour le type de donnes et le nom de chaque lment. Vous pourriez affecter les valeurs initiales suivantes l'exemple de la figure ci-avant : Quantit Donnes brutes Code de commande Temprature Achvement = = = = = 100 B#(0) 'Z' 120 False

600

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Sauvegarde des donnes et accs aux donnes dans une structure


Vous accdez aux lments individuels d'une structure. Vous pouvez utiliser l'adresse symbolique lot_1.temperature, par exemple - ou l'adresse absolue sous laquelle est rang l'lment. Si, par exemple, lot_1 est sauvegard dans le DB20 partir de l'octet 0, l'adresse absolue de quantite est DB20.DBW0 et celle de temperature est DB20.DBD6.

Utilisation de structures comme paramtres


Vous pouvez transmettre des structures comme paramtres. Lorsque vous dclarez un paramtre STRUCT dans la dclaration des variables, vous devez transmettre une structure d'organisation identique. Il est possible d'affecter un lment de structure un paramtre lorsque vous appelez un bloc si cet lment correspond au type de donnes du paramtre. Lorsque vous transmettez des structures comme paramtres, elles doivent tre toutes deux paramtre effectif et paramtre formel - organises de manire identique : elles doivent avoir les mmes types de donnes dans le mme ordre.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

601

Annexe 27.3 Types de donnes et de paramtre

27.3.3.5

Utilisation de types de donnes utilisateur pour l'accs aux donnes

Types de donnes utilisateur


Les types de donnes utilisateur (user data type, UDT) peuvent combiner des types de donnes simples et complexes. Vous pouvez attribuer un nom aux UDT et les utiliser plusieurs fois. La figure ci-aprs montre la structure d'un type de donnes utilisateur constitu d'un nombre entier, d'un octet, d'un caractre, d'un nombre virgule flottante et d'une valeur boolenne.

Il vous suffit alors, au lieu d'entrer tous les types de donnes individuellement ou sous forme de structure, d'indiquer "UDT20" comme type de donnes et STEP 7 allouera automatiquement l'espace ncessaire en mmoire.

Cration d'un type de donnes utilisateur


Vous dfinisser les UDT dans STEP 7. La figure suivante montre un UDT compos des lments suivants : un nombre entier (pour la quantit), un octet (pour les donnes brutes), un caractre (pour le code de commande), un nombre virgule flottante (pour la temprature) et un mmento boolen (pour signaler l'achvement). Vous pouvez affecter un mnmonique cet UDT dans la table des mnmoniques (donnees_process, par exemple).

Aprs avoir cr un UDT, vous pouvez l'utiliser comme un type de donnes, par exemplecomme si pour une variable vous dclariez le type de donnes UDT200 dans un DB (ou dans la table de dclaration des variables d'un FB). La figure suivante montre un DB avec la variable donnees_processus_1 de type de donnes UDT200. Vous indiquez uniquement UDT200 et donnees_processus_1. Les autres champs sont crs la compilation du DB.

602

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Affectation de valeurs initiales un type de donnes utilisateur


Pour affecter une valeur initiale chaque lment d'un UDT, vous indiquez une valeur autorise pour le type de donnes et le nom de chaque lment. Vous pourriez affecter les valeurs initiales suivantes l'exemple de la figure ci-avant : Quantit Donnes brutes Code de commande Temprature Achvement = = = = = 100 B#16#0 'Z' 1.200000e+002 False

Lorsque vous dclarez une variable comme tant d'un type de donnes utilisateur, les valeurs initiales pour cette variable seront les valeurs entres la cration de l'UDT.

Sauvegarde des donnes et accs aux donnes dans un type de donnes utilisateur
Vous accdez aux lments individuels d'un UDT. Vous pouvez utiliser l'adresse symbolique lot_1.temperature, par exemple - ou l'adresse absolue sous laquelle est rang l'lment. Si, par exemple, lot_1 est sauvegard dans le DB20 partir de l'octet 0, l'adresse absolue de quantite est DB20.DBW0 et celle de temperature est DB20.DBD6.

Utilisation de types de donnes utilisateur comme paramtres


Vous pouvez transmettre des variables de type de donnes UDT comme paramtres. Lorsque vous dclarez un paramtre comme UDT dans la dclaration des variables, vous devez transmettre un UDT dont les lments de donnes ont une organisation identique. Il est galement possible d'affecter un lment d'UDT un paramtre lorsque vous appelez un bloc si cet lment correspond au type de donnes du paramtre.

Nota Un conflit de type peut se produire si vous appelez dans l'diteur de programmes un bloc cr dans le langage de programmation S7-SCL qui contient un paramtre UDT. Aussi est-il prfrable d'viter d'appeler des blocs crs dans SCL en cas d'utilisation d'UDT.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

603

Annexe 27.3 Types de donnes et de paramtre

Avantages des DB associs un UDT


Vous pouvez, l'aide des UDT que vous avez crs, gnrer de nombreux blocs de donnes ayant la mme organisation de donnes. Vous pouvez adapter ces blocs de donnes chaque tche en saisissant des valeurs effectives diffrentes. Si, par exemple, vous organisez un UDT pour une formule (par exemple, le mlange de couleurs), vous pouvez associer cet UDT plusieurs DB contenant chaque fois d'autres indications de quantits.

L'organisation de l'UDT conditionne celle du bloc de donnes associ.

604

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.4 Types de paramtre


En plus des types de donnes simples et complexes, vous pouvez dfinir des types de paramtre pour des paramtres formels devant tre transmis entre blocs. STEP 7 dispose des types de paramtre ci-aprs. TIMER ou COUNTER : identifient une temporisation ou un compteur prcis devant tre utilis lors du traitement. Le paramtre effectif que vous fournissez un paramtre formel de type TIMER ou COUNTER doit tre une temporisation ou un compteur : vous indiquez un T ou un Z suivi d'un nombre entier positif. BLOCK : identifie un bloc prcis devant tre utilis comme entre ou comme sortie. La dclaration du paramtre dtermine le type de bloc (FB, FC, DB, etc.) utiliser. Si vous indiquez un paramtre effectif pour un paramtre formel de type BLOCK, ce doit tre une adresse de bloc. Exemple : "FC101" en adressage absolu ou "Soupape" en adressage symbolique. POINTER : rfrence l'adresse d'une variable. Un pointeur contient une adresse au lieu d'une valeur. Lorsque vous indiquez un paramtre effectif pour un paramtre formel de type POINTER, ce doit tre l'adresse. Dans STEP 7, vous pouvez prciser un pointeur en format de pointeur ou simplement comme adresse (par exemple, M50.0). Exemple de format de pointeur pour l'adressage de donnes commenant M 50.0 : P#M50.0 ANY : s'utilise lorsque le type de donnes du paramtre effectif est inconnu ou lorsqu'on peut faire appel un type de donnes quelconque. Vous trouverez de plus amples informations sur le paramtre ANY dans les paragraphes Format du type de donnes Paramtre ANY ou Utilisation du type de donnes Paramtre ANY.

Un type de donnes paramtre peut galement tre un type de donnes utilisateur (UDT). Vous trouverez de plus amples informations sur les UDT dans le paragraphe "Utilisation de types de donnes utilisateur pour l'accs aux donnes".
Paramtre TIMER Taille 2 octets Description Identifie une temporisation prcise que le programme dans le bloc de code appel doit utiliser. Format : T1 Identifie un compteur prcis que le programme dans le bloc de code appel doit utiliser. Format : Z10 Identifie un bloc prcis que le programme dans le bloc de code appel doit utiliser. Format : FC101 DB42 Identifie l'adresse. Format : P#M50.0 Utilis lorsque le type de donnes du paramtre effectif est inconnu. Format: P#M50.0 BYTE 10 format ANY pour types de donnes P#M100.0 WORD 5 L#1COUNTER 10 format ANY pour
types de paramtre

COUNTER

2 octets

BLOCK_FB BLOCK_FC BLOCK_DB BLOCK_SDB POINTER ANY

2 octets

6 octets 10 octets

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

605

Annexe 27.3 Types de donnes et de paramtre

27.3.4.1

Format des types de paramtre BLOCK, COUNTER et TIMER


STEP 7 enregistre les types de paramtre BLOCK, COUNTER et TIMER sous forme de nombres binaires dans un mot (16 bits). La figure suivante montre le format de ces types de paramtre.

Le nombre autoris de blocs, temporisations et compteurs dpend de la version de votre CPU S7. Vous trouverez de plus amples informations sur le nombre autoris de temporisations et de compteurs ainsi que sur le nombre maximal de blocs disponibles dans les fiches techniques relatives votre CPU dans le manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" ou dans le manuel d'installation " Systmes dautomatisation S7-400/M7-400, Installation et configuration".

27.3.4.2

Format du type de donnes Paramtre POINTER


STEP 7 enregistre le type de donnes Paramtre POINTER dans 6 octets (48 bits). La figure suivante montre la nature des donnes enregistres dans chaque octet.

Le type de donnes Paramtre POINTER enregistre les informations suivantes : Numro de DB (ou 0, lorsque les donnes ne sont pas enregistres dans un DB) Zone de mmoire dans la CPU (le tableau suivant indique les codes hexadcimaux des zones de mmoire pour le type de donnes Paramtre POINTER)
Zone de mmoire E A M DB DI L V Description Zone de mmoire des entres Zone de mmoire des sorties Zone de mmoire des mmentos Bloc de donnes Bloc de donnes d'instance Donnes locales (pile L) Donnes locales prcdentes

Code hexadcimal b#16#81 b#16#82 b#16#83 b#16#84 b#16#85 b#16#86 b#16#87

606

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Adresse des donnes (en format octet.bit) STEP 7 propose le format pointeur : p#zone de mmoire octet.bit_adresse. (Si le paramtre formel a t dclar comme type de donnes Paramtre POINTER, il vous suffit d'indiquer la zone de mmoire et l'adresse. STEP 7 convertit automatiquement votre entre en format pointeur.) Les exemples suivants montrent comment vous saisissez le type de donnes Paramtre POINTER pour les donnes commenant M50.0 :

P#M50.0 M50.0 (si le paramtre formel a t dclar comme POINTER)

27.3.4.3

Utilisation du type de donnes Paramtre POINTER


Un pointeur est utilis pour adresser un oprande. L'avantage de ce type d'adressage est que vous pouvez modifier de manire dynamique l'oprande de l'instruction durant l'excution du programme.

Pointeur pour l'adressage indirect en mmoire


Les instructions de programme utilisant l'adressage indirect en mmoire, sont composes d'une opration, d'un identificateur d'oprande et d'un dcalage (qui doit tre indiqu entre crochets). Exemple de pointeur en format double mot :
L T U = P#8.7 MD2 E [MD2] A [MD2] charger la valeur du pointeur dans l'ACCU 1 transfrer le pointeur dans MD2. interroger l'tat de signal l'entre E 8.7 et affecter l'tat de signal la sortie A 8.7

Pointeur pour l'adressage intrazone et interzone


Les instructions de programme utilisant ce type d'adressage sont composes d'une opration et des lments suivants : identificateur d'oprande, identificateur de registre d'adresse, dcalage. Le registre d'adresse (AR1/2) et le dcalage doivent tre indiqus ensemble entre crochets.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

607

Annexe 27.3 Types de donnes et de paramtre

Exemple d'adressage intrazone


Le pointeur ne contient aucune indication de zone de mmoire :
L LAR1 U = E [AR1, P#0.0] A [AR1, P#1.1] P#8.7 charger la valeur du pointeur dans l'ACCU 1 charger le pointeur de l'ACCU 1 dans AR1 interroger l'tat de signal de l'entre E 8.7 et affecter l'tat de signal la sortie A 10.0

Le dcalage 0.0 n'a pas d'effet. La sortie 10.0 se calcule partir de 8.7 (AR1) plus le dcalage 1.1. Le rsultat est 10.0 et non pas 9.8, voir le format du pointeur.

Exemple d'adressage interzone


Dans l'adressage interzone, la zone de mmoire est prcise dans le pointeur (dans l'exemple, E ou A).
L LAR1 L LAR2 U = [AR1, P#0.0] [AR2, P#1.1] P# A8.7 P# E8.7 charger la valeur du pointeur et l'identification de zone dans l'ACCU 1 charger la zone de mmoire E et l'adresse 8.7 dans AR1 charger la valeur du pointeur et l'identification de zone dans l'ACCU 1 charger la zone de mmoire A et l'adresse 8.7 dans AR2 interroger l'tat de signal de l'entre E 8.7 et affecter l'tat de signal la sortie A 10.0.

Le dcalage 0.0 n'a pas d'effet. La sortie 10.0 se calcule partir de 8.7 (AR2) plus 1.1 (dcalage). Le rsultat est 10.0 et non pas 9.8, voir format du pointeur.

608

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.4.4

Bloc pour modifier le pointeur


L'exemple de bloc FC 3 "Dcalage de pointeurs" permet de modifier l'adresse de bit ou l'adresse d'octet d'un pointeur. A l'appel de la FC, le pointeur modifier est transmis la variable "Pointeur" (vous pouvez utiliser des pointeurs interzone et intrazone en format double mot). Le paramtre "bit-octet" vous permet de modifier l'adresse de bit ou l'adresse d'octet du pointeur (0 : adresse de bit, 1 : adresse d'octet). La variable "valeur_inc" (en format entier) indique la valeur qui doit tre additionne ou soustraite au contenu de l'adresse. Vous pouvez galement indiquer des nombres ngatifs pour dcrmenter l'adresse. Pour la modification de l'adresse de bit, un transfert dans l'adresse d'octet est effectu (galement pour la dcrmentation) ; par exemple : P#M 5.3, bit_octet = 0, valeur_inc = 6 => P#M 6.1 ou P#M 5.3, bit_octet = 0, valeur_inc = -6 => P#M 4.5.

La fonction n'a pas d'effet sur l'information de zone du pointeur. Le dbordement haut/bas du pointeur corrige la FC. Dans ce cas, le pointeur n'est pas modifi et la variable ct sortie "RET_VAL" (traitement d'erreur possible) est mise "1" (jusqu'au prochain traitement correct de la FC 3). Ceci est le cas lorsque : L'adresse de bit est slectionne et valeur_inc >7 ou <-7. L'adresse de bit ou l'adresse d'octet sont slectionnes et la modification aurait pour consquence une adresse d'octet "ngative". L'adresse de bit ou l'adresse d'octet sont slectionnes et la modification aurait pour consquence une adresse d'octet de taille non autorise.

Exemple de bloc pour modifier le pointeur dans LIST :


FUNCTION FC 3: BOOL TITLE =Rangement de pointeurs //La FC 3 peut tre utilise pour modifier des pointeurs. AUTHOR : AUT1CS1 FAMILY : INDADR NAME : ADRPOINT VERSION : 0.0 VAR_INPUT Bit_octet : BOOL ; Valeur_inc : INT ; END_VAR VAR_IN_OUT Pointeur : DWORD ; END_VAR //Pointeur utiliser //0 : adresse de bit, 1 : adresse d'octet //Incrment (si valeur ngative => dcrmentation/ //si valeur positive => incrmentation)

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

609

Annexe 27.3 Types de donnes et de paramtre


VAR_TEMP Valeur_inc1 : INT ; Pointeur1 : DWORD ; Val_int : DWORD ; END_VAR BEGIN NETWORK TITLE = //Le bloc corrige automatiquement les modifications qui modifient les informations de zone //du pointeur, ou qui conduisent des pointeurs "ngatifs" ! SET R L T L T U SPB L L <I S SPB L <I S SPB U SPB L L +D SPA neg: L L NEGI -D SPA Octet: L L <I SPB L L NEGI SLD -D SPA ; #RET_VAL; #Pointeur; #Pointeur1; #Valeur_inc; #Valeur_inc1; #Bit_octet; Octet; 7; #Valeur_inc1; ; #RET_VAL; Fin; -7; ; #RET_VAL; Fin; L neg; #Pointeur1; #Valeur_inc1; ; test; #Pointeur1; #Valeur_inc1; ; ; test; 0; #Valeur_inc1; ; pos; #Pointeur1; #Valeur_inc1; ; 3; ; test; //sauter l'addition, sinon //charger l'information d'adresse du pointeur, //charger l'incrment, //effectuer la ngation de la valeur ngative, //dcaler l'incrment de 3 positions vers la gauche, //soustraire la valeur //et sauter au test //Sauter au test de rsultat ngatif //Charger l'information d'adresse du pointeur //Charger l'incrment //Effectuer la ngation de la valeur ngative, //soustraire la valeur //et sauter au test //Dbut de la modification de l'adresse d'octet //Si incrment >=0, alors 1.3; //alors mettre RET_VAL 1 et //sauter la fin //si bit 4 de la valeur = 1 (valeur_inc ngative) //alors sauter la soustraction des adresses de bit //Charger l'information d'adresse du pointeur //et additionner l'incrment //alors mettre RET_VAL 1 et //sauter la fin //Si valeur incrment < -7, //Mettre le RLG 1 et //remettre le dbordement zro //Affecter le pointeur temporaire //de valeur intermdiaire //Affecter l'incrment temporaire //de valeur intermdiaire //lorsque =1, alors opration sur l'adresse d'octet //Saut au calcul de l'adresse d'octet //Si valeur incrment > 7, //Incrment de valeur intermdiaire //Pointeur de valeur intermdiaire //Variable auxiliaire

610

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre


pos: SLD L +D test: T U S SPB L T Fin: NOP END_FUNCTION 3; #Pointeur1; ; #Valeur_int; L Fin; #Valeur_int; #Pointeur; 0; 7.3; #RET_VAL; //dcaler l'incrment de 3 positions vers la gauche //charger l'information d'adresse du pointeur //additionner l'incrment //Transfrer les calculs de rsultat dans Valeur_int, //Si adresse d'octet invalide (trop grande ou //ngative), alors mettre RET_VAL 1 //et sauter la fin, //sinon transfrer le rsultat //dans le pointeur

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

611

Annexe 27.3 Types de donnes et de paramtre

27.3.4.5

Format du type de donnes Paramtre ANY


STEP 7 enregistre les donnes du type de donnes Paramtre ANY dans 10 octets. Lors de la dfinition d'un paramtre de type ANY, vous devez veiller ce que les 10 octets soient tous occups, car le bloc appel exploite le contenu entier du paramtre. Si, par exemple, vous spcifiez un numro de DB dans l'octet 4, vous devez galement indiquer de manire explicite la zone de mmoire dans l'octet 6. STEP 7 gre les types de donnes simples et complexes diffremment que les types de paramtre.

Format ANY pour les types de donnes


Pour les types de donnes simples et complexes, STEP 7 enregistre les donnes suivantes : types de donnes, facteur de rptition, numro de DB, zone de mmoire dans laquelle les informations sont enregistres, adresse de dbut des donnes.

Le facteur de rptition dsigne une quantit du type de donnes identifi qui est transmettre par le type de donnes Paramtre ANY. Vous pouvez ainsi indiquer une zone de donnes et galement utiliser des tableaux et structures en liaison avec le type de donnes Paramtre ANY. STEP 7 caractrise les tableaux et structures comme nombre de types de donnes ( l'aide du facteur de rptition). Pour transmettre 10 mots, par exemple, vous devez entrer la valeur 10 pour le facteur de rptition et la valeur 04 pour le type de donnes. L'adresse est enregistre dans le format octet.bit, l'adresse d'octet tant enregistre dans les bits 0 2 de l'octet 7, dans les bits 0 7 de l'octet 8 et dans les bits 3 7 de l'octet 9. L'adresse de bit est enregistre dans les bits 0 2 de l'octet 9. Dans le cas du pointeur zro de type de donnes NIL, tous les octets ont la valeur 0 partir de l'octet 1.

612

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Les tableaux suivants indiquent le codage des types de donnes ou des zones de mmoire pour le type de donnes Paramtre ANY.
Codage des types de donnes Code hexadcimal b#16#00 b#16#01 b#16#02 b#16#03 b#16#04 b#16#05 b#16#06 b#16#07 b#16#08 b#16#09 b#16#0A b#16#0B b#16#0C b#16#0E b#16#13 Type de donnes NIL BOOL BYTE CHAR WORD INT DWORD DINT REAL DATE TIME_OF_DAY (TOD) TIME S5TIME DATE_AND_TIME (DT) STRING Description Pointeur zro Bits Octets (8 bits) Caractres (8 bits) Mots (16 bits) Entiers (16 bits) Mots (32 bits) Entiers (32 bits) Nombres virgule flottante (32 bits) Date Heure Temporisation Type de donnes S5TIME Date et heure (64 bits) Chane de caractres

Codage des zones de mmoire Code hexadcimal b#16#80 b#16#81 b#16#82 b#16#83 b#16#84 b#16#85 b#16#86 b#16#87 Zone P E A M DB DI L V Description Zone de mmoire de priphrie Zone de mmoire des entres Zone de mmoire des sorties Zone de mmoire des mmentos Bloc de donnes Bloc de donnes d'instance Donnes locales (pile L) Donnes locales prcdentes

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

613

Annexe 27.3 Types de donnes et de paramtre

Format ANY pour les types de paramtre


Pour les types de paramtre, STEP 7 enregistre le type de donnes et l'adresse des paramtres. Le facteur de rptition est toujours gal 1. Les octets 4, 5 et 7 sont toujours 0. Les octets 8 et 9 indiquent le numro de la temporisation, du compteur ou du bloc.

Le tableau suivant indique le codage des types de donnes pour le type de donnes Paramtre ANY avec les types de paramtre.
Code hexadcimal b#16#17 b#16#18 b#16#19 b#16#1A b#16#1C b#16#1D Type de donnes BLOCK_FB BLOCK_FC BLOCK_DB BLOCK_SDB COUNTER TIMER Description Numro du FB Numro de la FC Numro du DB Numro du SDB Numro du compteur Numro de la temporisation

614

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.4.6

Utilisation du type de donnes Paramtre ANY


Vous pouvez dfinir, pour un bloc, des paramtres formels acceptant des paramtres effectifs de n'importe quel type de donnes. Cela s'avre surtout utile lorsque le type de donnes du paramtre effectif fourni lors de l'appel du bloc est inconnu ou peut varier (et lorsque tout type de donnes est acceptable). Dans la dclaration des variables du bloc, vous dclarez le paramtre comme type de donnes ANY. Vous pourrez ainsi lui affecter un paramtre effectif d'un type de donnes quelconque dans STEP 7. STEP 7 rserve 80 bits de mmoire une variable de type ANY. Lorsque vous affectez un paramtre effectif un tel paramtre formel, STEP 7 code l'adresse de dpart, le type de donnes et la longueur du paramtre effectif dans ces 80 bits. Le bloc appel analysera ces 80 bits de donnes sauvegardes pour le paramtre ANY afin d'obtenir les renseignements ncessaires pour le traitement supplmentaire.

Transmission d'un paramtre effectif un paramtre ANY


En dclarant un paramtre formel de type de donnes ANY, vous pouvez lui affecter un paramtre effectif de n'importe quel type de donnes. Vous pouvez indiquer des paramtres effectifs de types de donnes suivants dans STEP 7 : Types de donnes simples : vous indiquez l'adresse absolue ou le mnmonique du paramtre effectif. Types de donnes complexes : vous entrez le mnmonique correspondant (par exemple, tableaux ou structures). Temporisations, compteurs et blocs : vous prcisez leur numro (par exemple, T1, Z20 ou FB6).

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

615

Annexe 27.3 Types de donnes et de paramtre

La figure ci-aprs montre comment transmettre des donnes une fonction avec des paramtres de type ANY.

Dans cet exemple de FC100, il s'agit des trois paramtres: par_ent1, par_ent2 et par_ent3. Lorsque le bloc fonctionnel FB10 appelle la fonction FC100, il transmet un nombre entier (variable statique "Regime"), un mot (MW100) et un double mot du DB10 (DB10.DBD40). Lorsque le bloc fonctionnel FB11 appelle la fonction FC100, il transmet un tableau de nombres rels (variable temporaire "Thermo"), une valeur boolenne (M 1.3) et une temporisation (T2).

616

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Indication d'une zone de donnes pour un paramtre ANY


Vous pouvez non seulement affecter des oprandes individuels un paramtre ANY (par exemple MW100), mais galement indiquer une zone de donnes. Vous devez utiliser, cet effet, la notation de constante ci-aprs pour identifier le volume de donnes transmettre : p# code-zone octet.bit type-donnes facteur-rptition

Vous pouvez indiquer, en notation de constante pour l'lment type-donnes, tous les types de donnes simples ainsi que le type de donnes DATE_AND_TIME. Hormis pour le type de donnes BOOL, il faut prciser l'adresse de bit 0 (x.0). Le tableau ci-aprs prsente des exemples de notation constante pour indiquer les zones de mmoire transmettre un paramtre ANY.
Paramtres effectifs p# M 50.0 BYTE 10 p# DB10.DBX5.0 S5TIME 3 Description Correspond 10 octets dans la zone de mmoire "Mmentos": de MB50 MB59 Correspond 3 units de donnes de type S5TIME contenues dans le DB10 : de DB octet 5 DB octet 10 Correspond 4 bits dans la zone de mmoire "Sorties" : de A 10.0 A 10.3

p# A 10.0 BOOL 4

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

617

Annexe 27.3 Types de donnes et de paramtre

Exemple d'utilisation du type de donnes Paramtre ANY


L'exemple suivant montre comment vous pouvez copier une zone de mmoire de 10 octets en utilisant le type de donnes Paramtre ANY et la fonction systme SFC 20 BLKMOV.
LIST FUNCTION FC 10: VOID VAR_TEMP Source : ANY; Destination ANY; END_VAR BEGIN LAR1 P#Source; Charger l'ID de syntaxe et la transfrer dans le pointeur ANY. Charger le type de donnes octet et L B#16#02; T LB[AR1,P#1.0]; L 10; T LW[AR1,P#2.0]; L T L T 22; LW[AR1,P#4.0]; P#DBX11.0; LD[AR1,P#6.0]; Charger l'adresse de dbut du pointeur ANY dans AR1. LAR1 P#Destination; Charger l'ID de syntaxe et la transfrer dans le pointeur ANY. Charger le type de donnes octet et L B#16#02; T LB[AR1,P#1.0]; L 10; T LW[AR1,P#2.0]; L T L T 33; LW[AR1,P#4.0]; P#DBX202.0; LD[AR1,P#6.0]; Appel de la fonction systme Blockmove CALL SFC 20 ( SRCBLK := Source, RET_VAL := MW 12, DSTBLK := Destination ); END_FUNCTION Exploitation du bit RB et du MW 12 Transfrer dans le pointeur ANY. Charger 10 octets et les transfrer dans le pointeur ANY. La destination correspond au DB33, DBB202 Transfrer dans le pointeur ANY. Charger 10 octets et les transfrer dans le pointeur ANY. La source correspond au DB22, DBB11 Charger l'adresse de dbut du pointeur ANY dans AR1. : Signification

L B#16#10; T LB[AR1,P#0.0];

L B#16#10; T LB[AR1,P#0.0];

618

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.4.7

Affectation de types de donnes aux donnes locales de blocs de code


STEP 7 limite les types de donnes - simples, complexes et paramtres - pouvant tre affects aux donnes locales d'un bloc dans la dclaration des variables.

Types autoriss pour les donnes locales d'un OB


Le tableau ci-prs prsente les restrictions valables pour les donnes locales des blocs d'organisation OB. Un OB ne pouvant tre appel, il ne peut pas avoir de paramtres (entre, sortie ou entre/sortie). Un OB n'ayant pas de DB d'instance, vous ne pouvez pas dclarer de variables statiques. Les variables temporaires d'un OB peuvent tre de type de donnes simple, complexe ou ANY. Les affectations valides sont indiques par le symbole z.
Type de dclaration Types de donnes simples Types de donnes complexes Type de donnes Paramtre TIMER Entre Sortie Entre/sortie Statique Temporaire z(1) z(1) Type de donnes Paramtre COUNTER Type de donnes Paramtre BLOCK Type de donnes Paramtre POINTER Type de donnes Paramtre ANY z(1)

(1) Mmoris dans la pile L de l'OB

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

619

Annexe 27.3 Types de donnes et de paramtre

Types autoriss pour les donnes locales d'un FB


Le tableau ci-prs prsente les restrictions valables pour les donnes locales des blocs fonctionnels FB. Les FB disposant d'un DB d'instance, ces restrictions sont moindres. S'il n'y en a pas pour la dclaration de paramtres d'entre, vous ne pouvez toutefois dclarer aucun type de donnes Paramtre pour les paramtres de sortie et seuls les types de paramtre POINTER et ANY sont autoriss pour les paramtres d'entre/sortie. Vous pouvez dclarer des variables temporaires de type ANY, tous les autres types de paramtre tant interdits. Les affectations valides sont indiques par le symbole z.
Type de dclaration Types de donnes simples z z z z z(2) Types de donnes complexes z z z(1)(3) z z(2) Type de donnes Paramtre TIMER Entre Sortie Entre/sortie Statique Temporaire z Type de donnes Paramtre COUNTER z Type de donnes Paramtre BLOCK z Type de donnes Paramtre POINTER z z Type de donnes Paramtre ANY z z z(2)

(1) Mmoris dans le DB d'instance comme renvoi (pointeur 48 bits) (2) Mmoris dans la pile L du FB (3) Les types STRING peuvent tre dfinis seulement dans la longueur standard.

Types autoriss pour les donnes locales d'une FC


Le tableau ci-prs prsente les restrictions valables pour les donnes locales des fonctions FC. Une FC n'ayant pas de DB d'instance, vous ne pouvez pas dclarer de variables statiques. Les types de paramtre POINTER et ANY sont valables pour les paramtres d'entre, de sortie et d'entre/sortie. Vous pouvez galement dclarer des variables temporaires de type de donnes Paramtre ANY. Les affectations valides sont indiques par le symbole z.
Type de dclaration Types de donnes simples z z z z(1) Types de donnes complexes z(2) z(2) z(2) z(1) Type de Type de Type de Type de Type de donnes donnes donnes donnes donnes Paramtre Paramtre Paramtre Paramtre Paramtre TIMER Entre Sortie Entre/sortie Temporaire z COUNTER z BLOCK z POINTER z z z ANY z z z z(1)

(1) Mmoris dans la pile L de la FC (2) Les types STRING peuvent tre dfinis seulement dans la longueur standard.

620

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

27.3.4.8

Types de donnes autoriss pour la transmission de paramtres

Rgles pour la transmission de paramtres entre blocs


Lorsque vous affectez des paramtres effectifs des paramtres formels, vous pouvez indiquer soit une adresse absolue, soit un mnmonique, soit une constante. Ces diffrents types d'affectation ne sont pas autoriss pour tous les paramtres dans STEP 7. Il est, par exemple, interdit d'affecter des valeurs constantes des paramtres de sortie ou d'entre/sortie puisque de tels paramtres doivent, par dfinition, changer de valeur. Ces restrictions concernent surtout les paramtres de type de donnes complexe auxquels on ne peut affecter ni adresse absolue, ni constante. Les tableaux ci-aprs rcapitulent les restrictions relatives aux types de donnes de paramtres effectifs affects des paramtres formels. Les affectations valides sont indiques par le symbole z.
Types de donnes simples Type de dclaration Entre Sortie Entre/sortie Adresse absolue z z z Mnmonique (dans table mnmo.) z z z Mnmonique bloc loc. z z z Constante z

Types de donnes complexes Type de dclaration Entre Sortie Entre/sortie Adresse absolue Mnmonique de l'lment du DB (dans table mnmo.) z z z Mnmonique bloc loc. z z z Constante

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

621

Annexe 27.3 Types de donnes et de paramtre

Types de donnes autoriss pour l'appel d'une FC par une autre FC


Vous pouvez affecter les paramtres formels d'une FC appelante aux paramtres formels de la FC appele. La figure ci-aprs montre les paramtres formels de la FC10 qui sont affects en tant que paramtres effectifs aux paramtres formels de la FC12.

STEP 7 impose toutefois des restrictions dans ce domaine. Ainsi, vous ne pouvez pas affecter en tant que paramtres effectifs des paramtres de type de donnes complexe ou de type de donnes Paramtre. Le tableau ci-aprs montre les types de donnes autoriss (z) lorsqu'une fonction appelle une autre fonction.
Type de dclaration Types de Types de Type de Type de Type de Type de Type de donnes donnes donnes donnes donnes donnes donnes simples complexes Paramtre Paramtre Paramtre Paramtre Paramtre TIMER Entre Entre Entre Sortie Entre Entre/sortie Sortie Entre Sortie Sortie Sortie Entre/sortie Entre/sortie Entre Entre/sortie Sortie Entre/sortie Entre/sortie z z z z z COUNTER BLOCK POINTER ANY

622

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Types de donnes autoriss pour l'appel d'une FC par un FB


Vous pouvez affecter les paramtres formels d'un FB appelant aux paramtres formels de la FC appele. La figure ci-aprs montre les paramtres formels du FB10 qui sont affects en tant que paramtres effectifs aux paramtres formels de la FC12.

STEP 7 impose toutefois des restrictions dans ce domaine. Ainsi, vous ne pouvez pas affecter en tant que paramtres effectifs des paramtres de type de donnes paramtre. Le tableau ci-aprs montre les types de donnes autoriss (z) lorsque qu'un bloc fonctionnel appelle une fonction.
Type de dclaration Types de donnes simples z z z z z Types de donnes complexes z z Type de donnes Paramtre Type de donnes Paramtre COUNTER Type de donnes Paramtre BLOCK Type de donnes Paramtre POINTER Type de donnes Paramtre ANY

TIMER
Entre Entre Entre Sortie Entre Entre/sortie Sortie Entre Sortie Sortie Sortie Entre/sortie Entre/sortie Entre Entre/sortie Sortie Entre/sortie Entre/sortie

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

623

Annexe 27.3 Types de donnes et de paramtre

Types de donnes autoriss pour l'appel d'un FB par une FC


Vous pouvez affecter les paramtres formels d'une FC appelante aux paramtres formels du FB appel. La figure ci-aprs montre les paramtres formels de la FC10 qui sont affects en tant que paramtres effectifs aux paramtres formels du FB12.

STEP 7 impose toutefois des restrictions dans ce domaine. Ainsi, vous ne pouvez pas affecter en tant que paramtres effectifs des paramtres de type de donnes complexe, Mais vous pouvez affecter des paramtres d'entre de type de donnes Paramtre TIMER, COUNTER et BLOCK aux paramtres d'entre du FB appel. Le tableau ci-aprs montre les types de donnes autoriss (z) lorsqu'une fonction appelle un bloc fonctionnel.
Type de dclaration Types de donnes simples z z z z z Types de donnes complexes Type de donnes Paramtre TIMER Entre Entre Entre Sortie Entre Entre/sortie Sortie Entre Sortie Sortie Sortie Entre/sortie Entre/sortie Entre Entre/sortie Sortie Entre/sortie Entre/sortie z Type de donnes Paramtre COUNTER z Type de donnes Paramtre BLOCK z Type de donnes Paramtre POINTER Type de donnes Paramtre ANY

624

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.3 Types de donnes et de paramtre

Types de donnes autoriss pour l'appel d'un FB par un autre FB


Vous pouvez affecter les paramtres formels d'un FB appelant aux paramtres formels du FB appel. La figure ci-aprs montre les paramtres formels du FB10 qui sont affects en tant que paramtres effectifs aux paramtres formels du FB12.

STEP 7 impose toutefois des restrictions dans ce domaine. Ainsi, vous ne pouvez pas affecter, en tant que paramtres effectifs, des paramtres d'entre et de sortie de type de donnes complexe aux paramtres d'entre et de sortie du FB appel. Mais vous pouvez affecter des paramtres d'entre de type de donnes Paramtre TIMER, COUNTER et BLOCK aux paramtres d'entre du FB appel. Le tableau ci-aprs montre les types de donnes autoriss (z) lorsqu'un bloc fonctionnel appelle un autre bloc fonctionnel.
Type de dclaration Types de donnes simples z z z z z Types de donnes complexes z z Type de donnes Paramtre TIMER Entre Entre Entre Sortie Entre Entre/sortie Sortie Entre Sortie Sortie Sortie Entre/sortie Entre/sortie Entre Entre/sortie Sortie Entre/sortie Entre/sortie z Type de donnes Paramtre COUNTER z Type de donnes Paramtre BLOCK z Type de donnes Paramtre POINTER Type de donnes Paramtre ANY

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

625

Annexe 27.3 Types de donnes et de paramtre

27.3.4.9

Transmission au paramtre IN_OUT d'un FB


Pour la transmission de types de donnes complexes au paramtre IN_OUT d'un bloc fonctionnel (FB), c'est l'adresse d'oprande de la variable qui est transmise (call by reference). Pour la transmission de types de donnes simples au paramtre IN_OUT d'un FB, les valeurs sont copies dans le bloc de donnes d'instance avant l'excution du FB et extraites du bloc de donnes d'instance lorsque l'excution du FB est termine. Ainsi, les variables IN_OUT de type de donnes simple peuvent tre initialises avec une valeur. Dans un appel, il n'est toutefois pas possible d'indiquer une constante comme paramtre effectif la place d'une variable IN_OUT, car une constante ne peut tre crase. Les variables de type de donnes STRUCT ou ARRAY ne peuvent pas tre initialises, car dans ce cas le bloc de donnes d'instance ne contient qu'une seule adresse.

626

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.4 Utilisation d'anciens projets

27.4

Utilisation d'anciens projets

27.4.1 Conversion d'un ancien projet de version 2


La commande Fichier > Ouvrir de STEP 7 vous permet galement d'ouvrir des projets de version 2. Vous pouvez convertir des projets/bibliothques de version 2 dans la version actuelle de STEP 7 (migration) en choisissant la commande Fichier > Enregistrer sous et en slectionnant le paramtre "avec rorganisation". Le projet est alors enregistr comme projet de version actuelle de STEP 7. Pour diter et enregistrer des projets et bibliothques d'anciennes versions de STEP 7 tout en conservant leur format, slectionnez le type de fichier de l'ancienne version de STEP 7 dans la bote de dialogue "Enregistrer le projet sous". Pour diter les objets avec la version 2.1 de STEP 7, slectionnez ici le projet 2.x ou la bibliothque 2.x ( partir de la version 5.1, il n'est plus possible d'enregistrer sous forme de version 2, voir aussi Edition de projet et de bibliothques de version 2).

Dsignations du type de fichier


STEP 7 V3 Type de fichier de la version actuelle Type de fichier de la version prcdente Projet3.x Bibliothque3.x Projet2.x Bibliothque2.x partir de STEP 7 V4 Projet Bibliothque Projet2.x Bibliothque2.x

Dans ce cas, vous ne disposez cependant que des fonctions de l'ancienne version. Les projets et bibliothques pourront toujours tre dits avec cette ancienne version de STEP 7.

Nota Dans la conversion de la version 3 la version 4, seule la dsignation a t modifie, le format tant rest identique. C'est la raison pour laquelle il n'existe pas de type de fichier Projet3.x dans STEP 7 V4.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

627

Annexe 27.4 Utilisation d'anciens projets

Marche suivre
Pour convertir des projets de version 2 dans le format de la version actuelle de STEP 7, procdez de la manire suivante : 1. Excutez la fonction "Enregistrer sous (menu Fichier)" avec rorganisation. 2. Slectionnez le type de fichier "Projet" dans la bote de dialogue "Enregistrer le projet sous" et cliquez sur le bouton "Enregistrer". Pour convertir des projets de version 2, tout en conservant leur format, dans la version actuelle de STEP 7, procdez de la manire suivante : 1. Le cas chant, procdez l'tape 1, comme dcrit ci-avant. 2. Dans la bote de dialogue "Enregistrer le projet sous", slectionnez le type de fichier correspondant l'ancienne version de STEP 7 et cliquez sur le bouton "Enregistrer".

628

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.4 Utilisation d'anciens projets

27.4.2 Edition de projets et bibliothques de la version 2


La version V5.2 de STEP 7 ne prend plus en charge la modification de projets et de bibliothques de la version 2. Si vous ditez des projets ou bibliothques de cette version, des incohrences risquent de se produire qui rendraient impossible l'dition avec des versions plus anciennes de STEP 7. Pour continuer diter des projets ou des bibliothques de la version 2, il faut avoir recours une version de STEP 7 antrieure V5.1.

27.4.3 Remarque sur les projets STEP 7 de version V2.1 avec communication par donnes globales
Lorsque vous souhaitez convertir un projet avec communication par donnes globales de STEP 7 V2.1 dans STEP 7 V5, vous devez pralablement ouvrir la table des donnes globales depuis STEP 7 V5.0 dans le projet STEP 7 V2.1. Les donnes de communication dj configures seront ainsi automatiquement converties dans la nouvelle structure par la communication par donnes globales. Lors de l'archivage de projets STEP 7 V2.1, vous pouvez obtenir un message d'erreur mis par un ancien programme de compression (ARJ, PKZip...), si le projet contient des fichiers dont le nom comporte plus de huit caractres. Ce message s'affiche galement lorsque le rseau MPI a t dit avec une dsignation suprieure 8 caractres dans le projet STEP 7 V2.1. Avant de dbuter pour la premire fois la configuration de la communication par donnes globales, ditez un nom de 8 caractres au maximum pour le rseau MPI dans les projets STEP 7 V2.1 avec donnes globales. Si vous souhaitez renommer un projet STEP 7 V2.1, vous devez raffecter les titres des colonnes (CPU) dans la table des donnes globales en slectionnant une nouvelle fois la CPU correspondante. Si vous restaurez l'ancien nom de projet, vous obtiendrez les affectations correspondantes.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

629

Annexe 27.5 Extension d'esclaves DP crs avec des versions antrieures de STEP 7

27.5

Extension d'esclaves DP crs avec des versions antrieures de STEP 7

Constellations pouvant rsulter de l'addition de nouveaux fichiers GSD


Il est possible d'ajouter de nouveaux esclaves DP au catalogue du matriel de HW Config en installant de nouveaux fichiers GSD. Une fois l'installation effectue, ils sont disponibles dans le dossier "Autres appareils de terrain". Vous ne pouvez plus modifier ou tendre comme d'habitude la configuration d'un esclave DP modulaire lorsque il a t configur avec une version antrieure de STEP 7 et que il n'a pas t reprsent dans le catalogue du matriel par un fichier GSD, mais par un fichier de type et que un nouveau fichier GSD a cras l'ancienne installation.

Solution
Si vous voulez utiliser l'esclave DP avec de nouveaux modules qui sont dcrits dans le fichier GSD : Effacez l'esclave DP et configurez-le de nouveau - il ne sera plus dcrit alors par le fichier de type, mais entirement par le fichier GSD.

Si vous comptez utiliser l'esclave DP sans les nouveaux modules qui ne sont dcrits que dans le fichier GSD : Slectionnez le dossier "Autres APPAREILS DE TERRAIN/Esclaves DP PROFIBUS compatibles" sous PROFIBUS DP dans la fentre "Catalogue du matriel". C'est l que STEP 7 range les "anciens" fichiers de type lorsqu'ils sont remplacs par de nouveaux fichiers GSD. Vous y trouverez les modules permettant l'extension de l'esclave DP dj configur.

Constellation aprs un remplacement des fichiers de type par des fichiers GSD dans STEP 7 V5.1 Servicepack 4
A partir de STEP 7 V5.1, Servicepack 4, les fichiers de types ont t presque tous remplacs par des fichiers GSD ou mis jour. Le remplacement n'est effectu que pour les profils de catalogue livrs par STEP 7 mais pas pour les profils de catalogue que vous avez vous-mme crs. Les esclaves DP dont les proprits ne sont plus dfinies dans les fichiers de type mais dans les fichiers GSD se trouvent toujours au mme endroit dans le catalogue du matriel. Les "anciens" fichiers de type n'ont pas t effacs mais se trouvent un autre endroit du catalogue. Ils se trouvent sous "Autres appareils de terrain\Esclaves Profibus-DP compatibles\...".

Extension d'une configuration DP existante avec STEP 7 partir de V5.1, Servicepack 4


Si vous souhaitez tendre un esclave DP modulaire dans un projet cr avec une version de STEP 7 antrieure V5.1 SP4, vous ne pouvez pas utiliser les blocs ou les modules l'endroit habituel dans le catalogue du matriel. Utilisez l'esclave DP sous "Autres APPAREILS DE TERRAIN\Esclaves Profibus-DP compatibles\...".

630

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.5 Extension d'esclaves DP crs avec des versions antrieures de STEP 7

Edition d'une configuration DP avec une version de STEP 7 antrieure V5.1 SP4
Si vous configurez un esclave DP "mis jour" avec STEP 7 partir de V5.1 Servicepack 4 et ditez ensuite le projet avec une version antrieure (version de STEP 7 antrieure V5.1, SP4), l'esclave DP n'est pas ditable car le fichier GSD est inconnu la version de STEP 7. Solution : Vous pouvez installer le fichier GSD requis dans l'ancienne version de STEP 7. Enregistrez pour cela le fichier GSD dans le projet. STEP 7 utilisera le nouveau fichier GSD lors de l'dition ultrieure du projet avec la version actuelle de STEP 7.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

631

Annexe 27.5 Extension d'esclaves DP crs avec des versions antrieures de STEP 7

27.5.1 Esclaves DP avec fichiers GSD manquants ou errons


Lorsque vous utilisez d'anciennes configurations de stations dans la version 5.1 de STEP 7, il peut arriver, dans de rares cas, que le fichier GSD d'un esclave DP manque ou ne peut pas tre compil (p. ex. en raison d'erreurs de syntaxe dans le fichier GSD). Dans ce cas, STEP 7 cre un esclave "Dummy" qui reprsente l'esclave configur, par exemple aprs un chargement de station dans la PG ou aprs ouverture et dition d'un ancien projet. Vous ne pouvez diter cet esclave "Dummy" qu'avec de fortes restrictions ; vous ne pouvez modifier ni sa configuration (identification DP), ni ses paramtres. Un nouveau chargement dans la station est cependant possible, la configuration initiale de l'esclave restant conserve. Vous ne pouvez pas non plus effacer l'esclave DP complet.

Reconfiguration et reparamtrage de l'esclave DP


Si vous souhaitez reconfigurer ou reparamtrer l'esclave DP, vous devez demander un fichier GSD actuel auprs du fabricant de cet esclave DP, puis l'installer via la commande Outils > Installer les fichiers GSD. Lorsque le fichier GSD correct est install, il permet de reprsenter l'esclave DP. Celui-ci conserve ses donnes et peut nouveau tre utilis.

632

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6

Exemples de programmes

27.6.1 Exemples de projets et de programmes


Le support d'installation de STEP 7 contient plusieurs exemples de projets utiles, dont la liste figure dans le tableau ci-aprs. Une fois installs, les exemples de projets figurent dans la bote de dialogue "Ouvrir" de SIMATIC Manager (onglet "Exemples de projets"). D'autres exemples de projets peuvent venir les complter lorsque vous installez des logiciels optionnels. Le contenu de ces exemples de projets est prcis dans la documentation du logiciel optionnel.
Exemples et exemples de projets Contenus dans le CD Dcrits dans le prsent chapitre Manuel distinct Description all/engl. dans l'OB1

Projets "ZFr01_01_STEP7_*" "ZFr01_06_STEP7_*"(Projet exemples Getting Started) Projet "ZFr01_11_STEP7_P_dec" (exemple d'une configuration PROFIBUS DP) Projet "ZFr01_08_STEP7_Mixeur" (processus de mlange industriel) Projet "ZFr01_09_STEP7_Feux" (commande de feux un passage pour pitons) Projet "ZFr01_10_STEP7_COM_SFB" (change de donnes entre deux CPU S7-400) Projet "ZXX01_14_HSystem_S7400H" (projet d'entre pour systmes haute disponibilit) Projet ZXX01_15_HSystem_RED_IO (projet d'entre pour systmes haute disponibilit avec priphrie redondante) Projets "ZFr01_11_STEP7_COM_SFC1" et "ZFr01_12_STEP7_COM_SFC2" (change de donnes par SFC de communication pour des liaisons non configures) Projet "ZFr01_13_STEP7_PID-Temp" (exemple de rgulation de temprature au moyen des FB 58 et FB 59) Exemple d'utilisation d'alarmes horaires Exemple d'utilisation d'alarmes temporises Exemple de masquage et de dmasquage d'vnements d'erreurs synchrones Exemple d'inhibition et de validation d'vnements d'alarme et d'vnements asynchrones Exemple de traitement diffr d'vnements d'alarme et d'vnements asynchrones


Manuel distinct Manuel distinct

Dans les exemples, il ne s'agit pas tant de montrer un style de programmation ou une comptence technique dans la commande d'un processus particulier, mais bien plutt de raliser quelles tapes doivent tre excutes lors de la conception du programme.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

633

Annexe 27.6 Exemples de programmes

Suppression, copie et installation d'exemples de projets


Dans SIMATIC Manager, vous pouvez supprimer, puis nouveau rinstaller les exemples de projets fournis. Pour l'installation, vous dmarrez le programme Setup de STEP 7. Vous pouvez slectionner les exemples de projets rinstaller. Les copies des exemples de projets fournis cres par "Enregistrer sous" et les exemples de projets que vous crez vous-mme peuvent exclusivement tre enregistrs sous forme de projet utilisateur.

Nota Lors d'une installation de STEP 7, les exemples de projets fournis sont copis, moins qu'ils soient dslectionns. Si vous avez modifi des exemples de projets fournis, ils seront remplacs par les originaux lors d'une nouvelle installation de STEP 7. C'est la raison pour laquelle, il est recommand de copier les exemples de projets fournis avant de les modifier et d'diter uniquement la copie.

634

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6.2 Exemple de programme pour un processus de mlange industriel


Notre exemple de programme se base sur les informations de la premire partie du manuel relatives la commande d'un processus de mlange industriel.

Problme pos
Deux substances (A et B) doivent tre mlanges par un moteur mlangeur dans un rservoir. Cette masse doit ensuite s'couler du rservoir par une soupape de vidange. La figure ci-aprs montre un diagramme de notre exemple de processus.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

635

Annexe 27.6 Exemples de programmes

Description des processus partiels


Nous vous avons expliqu dans la premire partie du manuel, comment subdiviser l'exemple de processus en zones fonctionnelles et en diffrentes tches. Voici la description des diffrentes zones. Zones pour substances A et B Les conduites d'amene des substances doivent comporter une soupape d'admission, une soupape d'alimentation ainsi qu'une pompe d'alimentation. Dans ces conduites se trouvent des capteurs de dbit. La mise en marche des pompes d'alimentation doit tre inhibe lorsque le capteur de niveau indique "Rservoir plein". La mise en marche des pompes d'alimentation doit tre inhibe lorsque la soupape de vidange est ouverte. Les soupapes d'admission et d'alimentation doivent tre ouvertes au plus tt 1 seconde aprs le dclenchement de la pompe d'alimentation. Les soupapes doivent tre fermes immdiatement aprs l'arrt des pompes d'alimentation (signal du capteur de dbit) afin d'viter un coulement de la substance en provenance de la pompe. Le dclenchement des pompes est surveill par une temporisation : le capteur de dbit doit signaler un dbit 7 secondes au maximum aprs ce dclenchement. Les pompes d'alimentation doivent tre arrtes le plus rapidement possible lorsque les capteurs de dbit ne signalent plus de dbit pendant le fonctionnement des pompes. Le nombre de dmarrages des pompes d'alimentation doit tre comptabilis (priode de maintenance). Le dclenchement du moteur mlangeur doit tre verrouill lorsque le capteur de niveau indique "Rservoir en dessous du minimum" ou lorsque la soupape de vidange est ouverte. Le moteur mlangeur met un signal en retour une fois le rgime nominal atteint. S'il n'met pas ce signal 10 secondes au maximum aprs l'activation du moteur, il faut l'arrter. Le nombre de dmarrages du moteur mlangeur doit tre comptabilis (priode de maintenance). Le rservoir de mlange doit comporter trois capteurs : - Rservoir plein : contact ouverture. Lorsque le niveau maximal est atteint, le contact est ouvert. - Niveau dans le rservoir en dessous du minimum : contact fermeture. Lorsque le niveau minimal est atteint, le contact est ferm. - Rservoir pas vide : contact fermeture. Le contact est ferm si le rservoir n'est pas vide. La vidange doit tre commande par soupape magntique. La soupape magntique est commande par l'oprateur, mais doit tre referme au plus tard lors du signal "Rservoir vide". L'ouverture de la soupape de vidange est verrouille lorsque le moteur mlangeur fonctionne ; lorsque le rservoir est vide.

Zone Rservoir de mlange

Zone Vidange

636

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Poste d'opration
Il faut galement installer un poste d'opration pour que l'oprateur puisse dmarrer et arrter ainsi que surveiller le processus. Ce poste d'opration comporte : des commutateurs pour commander les vnements les plus importants Le bouton "Mettre 0 indicateur de maintenance" permet d'teindre les lampes de signalisation de maintenance pour les moteurs ayant besoin d'une maintenance et de mettre zro les valeurs correspondantes des compteurs pour l'intervalle entre les maintenances ; des lampes de signalisation indiquant l'tat de fonctionnement, le commutateur d'arrt d'urgence.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

637

Annexe 27.6 Exemples de programmes

27.6.2.1

Dfinition de blocs de code


Vous dfinissez la structure de votre programme utilisateur en le rpartissant dans diffrents blocs et en fixant la hirarchie d'appel de ces blocs.

Hirarchie d'appel des blocs


La figure ci-aprs prsente la hirarchie des blocs devant tre appels dans le programme structur.

OB1 : il s'agit de l'interface avec le systme d'exploitation de la CPU ; il contient le programme principal. Le bloc fonctionnel FB1 et la fonction FC1 sont appels et les paramtres spcifiques ncessaires pour la commande du processus sont transmis dans l'OB1. FB1 : la pompe d'alimentation pour la substance A, la pompe d'alimentation pour la substance B et le moteur mlangeur peuvent tre commands par un mme bloc fonctionnel, puisque les tches sont identiques (activation, dsactivation, comptage des interventions, etc.). DB d'instance 1-3 : les paramtres effectifs et les donnes statiques pour la commande des pompes d'alimentation pour les substances A et B ainsi que pour celle du moteur mlangeur sont diffrents et sont donc inscrits dans trois DB d'instance affects au FB1. FC1 : les soupapes d'admission et d'alimentation pour les substances A et B ainsi que la soupape de vidange utilisent galement un bloc de code commun. Puisqu'il s'agit uniquement de programmer la fonction d'ouverture et de fermeture, une seule fonction suffit.

638

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6.2.2

Affectation de mnmoniques

Dfinition de mnmoniques
Notre exemple de programme utilise des mnmoniques (ou noms symboliques) dfinis dans la table des mnmoniques avec STEP 7. Les tableaux ci-aprs prsentent les mnmoniques et les adresses absolues correspondantes pour les lments du programme utiliss.
Mnmoniques pour les pompes d'alimentation et le moteur mlangeur Mnmonique Feed_pump_A_start Oprande E 0.0 Type de donnes BOOL Description Commutateur bouton-poussoir de dmarrage de la pompe d'alimentation pour substance A Commutateur bouton-poussoir d'arrt de la pompe d'alimentation pour substance A La substance A coule. Commande de la soupape d'admission pour substance A Commande de la soupape d'alimentation pour substance A Lampe de signalisation "Pompe d'alimentation pour substance A en marche" Lampe de signalisation "Pompe d'alimentation pour substance A arrte" Commande de la pompe d'alimentation pour substance A Lampe de signalisation "Erreur de la pompe d'alimentation A" Lampe de signalisation "Maintenance de la pompe d'alimentation A" Commutateur bouton-poussoir de dmarrage de la pompe d'alimentation pour substance B Commutateur bouton-poussoir d'arrt de la pompe d'alimentation pour substance B La substance B coule. Commande de la soupape d'admission pour substance B Commande de la soupape d'alimentation pour substance B Lampe de signalisation "Pompe d'alimentation pour substance B en marche"

Feed_pump_A_stop

E 0.1

BOOL

Flow_A Inlet_valve_A Feed_valve_A Feed_pump_A_on

E 0.2 A 4.0 A 4.1 A 4.2

BOOL BOOL BOOL BOOL

Feed_pump_A_off

A 4.3

BOOL

Feed_pump_A Feed_pump_A_fault Feed_pump_A_maint Feed_pump_B_start

A 4.4 A 4.5 A 4.6 E 0.3

BOOL BOOL BOOL BOOL

Feed_pump_B_stop

E 0.4

BOOL

Flow_B Inlet_valve_B Feed_valve_B Feed_pump_B_on

E 0.5 A 5.0 A 5.1 A 5.2

BOOL BOOL BOOL BOOL

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

639

Annexe 27.6 Exemples de programmes

Mnmoniques pour les pompes d'alimentation et le moteur mlangeur Feed_pump_B_off A 5.3 BOOL Lampe de signalisation "Pompe d'alimentation pour substance B arrte" Commande de la pompe d'alimentation pour substance B Lampe de signalisation "Erreur de la pompe d'alimentation B" Lampe de signalisation "Maintenance de la pompe d'alimentation B" Signal en retour du moteur mlangeur Commutateur bouton-poussoir de dmarrage du moteur mlangeur Commutateur bouton-poussoir d'arrt du moteur mlangeur Commande du moteur mlangeur Lampe de signalisation "Moteur mlangeur en marche" Lampe de signalisation "Moteur mlangeur arrt" Lampe de signalisation "Erreur du moteur mlangeur" Lampe de signalisation "Maintenance du moteur mlangeur"

Feed_pump_B Feed_pump_B_fault Feed_pump_B_maint Agitator_running Agitator_start Agitator_stop Agitator Agitator_on Agitator_off Agitator_fault Agitator_maint

A 5.4 A 5.5 A 5.6 E 1.0 E 1.1 E 1.2 A 8.0 A 8.1 A 8.2 A 8.3 A 8.4

BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL

Mnmoniques pour les capteurs et les indicateurs de niveau du rservoir Mnmonique Tank_below_max Tank_above_min Tank_not_empty Tank_max_disp Tank_min_disp Tank_empty_disp Oprande E 1.3 E 1.4 E 1.5 A 9.0 A 9.1 A 9.2 Type de donnes BOOL BOOL BOOL BOOL BOOL BOOL Description Capteur "Rservoir de mlange pas plein" Capteur "Rservoir de mlange au-dessus du minimum" Capteur "Rservoir de mlange pas vide" Lampe de signalisation "Rservoir de mlange plein" Lampe de signalisation "Rservoir en dessous du minimum" Lampe de signalisation "Rservoir de mlange vide"

640

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Mnmoniques pour la soupape de vidange Mnmonique Drain_open Drain_closed Drain Drain_open_disp Drain_closed_disp Oprande E 0.6 E 0.7 A 9.5 A 9.6 A 9.7 Type de donnes BOOL BOOL BOOL BOOL BOOL Description Commutateur bouton-poussoir d'ouverture de la soupape de vidange Commutateur bouton-poussoir de fermeture de la soupape de vidange Commande de la soupape de vidange Lampe de signalisation "Soupape de vidange ouverte" Lampe de signalisation "Soupape de vidange ferme"

Mnmoniques pour les autres lments du programme Mnmonique EMER_STOP_off Reset_maint Oprande E 1.6 E 1.7 Type de donnes BOOL BOOL Description Commutateur d'arrt d'urgence Bouton-poussoir de remise zro pour les lampes de signalisation de maintenance de tous les moteurs FB pour commander pompes et moteur FC pour commander les soupapes DB d'instance pour la commande de la pompe d'alimentation A DB d'instance pour la commande de la pompe d'alimentation B DB d'instance pour la commande du moteur mlangeur

Motor_block Valve_block DB_feed_pump_A DB_feed_pump_B DB_agitator

FB1 FC1 DB1 DB2 DB3

FB1 FC1 FB1 FB1 FB1

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

641

Annexe 27.6 Exemples de programmes

27.6.2.3

Cration du bloc fonctionnel pour le moteur

Tches pour le FB
Le FB pour le moteur contient les fonctions logiques ci-aprs : Il existe une entre de dmarrage et une entre d'arrt. Une srie de verrouillages permet le fonctionnement de l'quipement (pompes et moteur mlangeur). L'tat des verrouillages est sauvegard dans les donnes locales temporaires (pile L) de l'OB1 ("Enable_Motor") et est combin aux entres de dmarrage et d'arrt lors de l'excution du FB pour le moteur. Un signal en retour de l'quipement doit apparatre avant l'expiration d'un temps donn. Sinon, le programme considre qu'une erreur s'est produite et le moteur sera arrt. Il faut dfinir la temporisation et la valeur de temps pour le cycle signal en retour/erreur. Si le bouton de dmarrage est actionn et que la validation soit donne, l'appareil dmarre et fonctionne jusqu' ce que le bouton d'arrt soit actionn. Une temporisation est dclenche la mise en marche de l'appareil. L'appareil s'arrte s'il n'met pas de signal en retour avant que cette temporisation n'expire.

Identification des entres et sorties


La figure ci-aprs montre les entres et les sorties du FB gnrique pour le moteur.

642

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Dfinition des paramtres pour le FB


Vous devez dfinir des noms de paramtres gnriques pour les entres et les sorties afin de crer un FB "Moteur" rutilisable, permettant de commander les deux pompes et le moteur mlangeur. Dans l'exemple du processus, le FB pour le moteur doit remplir les conditions ci-aprs : Des signaux provenant du poste d'opration sont ncessaires pour le dmarrage ou l'arrt du moteur ou des pompes. Un signal en retour provenant des pompes ou du moteur doit indiquer que le moteur est en marche. Il faut calculer le temps entre l'mission du signal de mise en marche du moteur et la rception du signal en retour. En l'absence de signal en retour l'expiration de ce temps, le moteur doit tre arrt. Les lampes respectives sur le poste d'opration doivent s'allumer et s'teindre. Le FB fournit un signal pour la commande du moteur.

Ces conditions peuvent tre dfinies comme entres et sorties du bloc fonctionnel. Le tableau ci-aprs prsente les paramtres du FB pour le moteur.
Nom du paramtre Start Stop Response Reset_Maint Timer_No Response_Time Fault Start_Dsp Stop_Dsp Maint Motor Entre x x x x x x x x x x x Sortie Entre/sortie

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

643

Annexe 27.6 Exemples de programmes

Dclaration des variables du FB pour le moteur


Vous devez dclarer les paramtres d'entre, de sortie et d'entre/sortie du FB pour le moteur.
Oprande 0.0 0.1 0.2 0.3 2.0 4.0 6.0 6.1 6.2 6.3 8.0 10.0 12.0 14.0 16.0 Dclaration IN IN IN IN IN IN OUT OUT OUT OUT IN_OUT STAT STAT STAT STAT Nom Demarrage Stop Response Reset_Maint Time_No Response_Time Fault Start_Dsp Stop_Dsp Maint Motor Time_bin Time_BCD Starts Start_Edge Type BOOL BOOL BOOL BOOL TIMER S5TIME BOOL BOOL BOOL BOOL BOOL WORD WORD INT BOOL S5T#0MS FALSE FALSE FALSE FALSE FALSE W#16#0 W#16#0 0 FALSE Valeur initiale FALSE FALSE FALSE FALSE

Pour les FB, les variables d'entre, de sortie, d'entre/sortie et statiques sont contenues dans le DB d'instance indiqu dans l'opration d'appel. Quant aux variables temporaires, elles se trouvent dans la pile L.

644

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Programmation du FB pour le moteur


Dans STEP 7, il faut crer les blocs appels par d'autres blocs avant les blocs contenant l'appel. Vous devez donc, dans notre exemple de programme, crire le FB pour le moteur avant l'OB1. La section des instructions du FB1 se prsente comme suit en langage de programmation LIST. Rseau 1 Dmarrage/arrt et maintien

U( O #Start O #Motor ) UN #Stop = #Motor Rseau 2 Surveillance de la mise en route

U #Motor L #Response_Time SE #Timer_No UN #Motor R #Timer_No L #Timer_No T #Time_bin LC #Timer_No T #Time_BCD U #Timer_No UN #Response S #Fault R #Motor Rseau 3 Lampe de dmarrage et remise zro erreurs

U #Response = #Start_Dsp R #Fault Rseau 4 Lampe d'arrt

UN #Response = #Stop_Dsp Rseau 5 Comptage des dmarrages

U #Motor FP #Start_Edge SPBN lab1 L #Starts + 1 T #Starts lab1: NOP 0

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

645

Annexe 27.6 Exemples de programmes

Rseau 6 L #Starts L 50 >=I = #Maint Rseau 7

Lampe de signalisation de maintenance

Remise zro du compteur du nombre de dmarrages

U #Reset_Maint U #Maint SPBN END L 0 T #Starts END: NOP 0

Cration des blocs de donnes d'instance


Crez trois blocs de donnes et ouvrez-les les uns aprs les autres. Dans la bote de dialogue "Nouveau bloc de donnes", activez la case d'option "Bloc de donnes associ un bloc fonctionnel". Slectionnez "FB1" dans la zone de liste "Affectation". Vous venez ainsi de dfinir les blocs de donnes comme blocs de donnes d'instance avec affectation fixe au FB1.

646

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6.2.4

Cration de la fonction pour les soupapes

Tches de la FC
La fonction pour les soupapes d'admission et d'alimentation ainsi que pour la soupape de vidange contient les fonctions logiques ci-aprs. Il existe une entre d'ouverture et une entre de fermeture des soupapes. Une srie de verrouillages permet l'ouverture des soupapes. L'tat des verrouillages est sauvegard dans les donnes locales temporaires (pile L) de l'OB1 ("Enable_Valve") et est combin aux entres d'ouverture et de fermeture lors de l'excution de la FC pour les soupapes.

Le tableau ci-aprs prsente les paramtres transmettre la fonction.


Paramtres pour les soupapes Open Close Dsp_Open Dsp_Closed Valve Entre Sortie Entre/sortie

x x x x x

Identification des entres et sorties


La figure ci-aprs montre les entres et les sorties de la FC gnrique pour les soupapes. Les appareils appelant le FB pour le moteur transmettent les paramtres d'entre et la FC pour les soupapes renvoie les paramtres de sortie.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

647

Annexe 27.6 Exemples de programmes

Dclaration des variables de la FC pour les soupapes


Vous devez dclarer les paramtres d'entre, de sortie et d'entre/sortie pour la fonction commandant les soupapes comme vous l'avez fait pour le FB "Moteur" (voir la table de dclaration des variables ciaprs).
Oprande 0.0 0.1 2.0 2.1 4.0 Dclaration IN IN OUT OUT IN_OUT Nom Open Close Dsp_Open Dsp_Closed Valve Type BOOL BOOL BOOL BOOL BOOL Valeur initiale FALSE FALSE FALSE FALSE FALSE

Pour les FC, les variables temporaires sont sauvegardes dans la pile L. Les variables d'entre, de sortie et d'entre/sortie prennent la forme de pointeurs dsignant le bloc de code ayant appel la FC. Un espace mmoire supplmentaire est utilis pour ces variables dans la pile L (aprs les variables temporaires).

Programmation de la FC pour les soupapes


Vous devez galement crire la fonction FC1 pour les soupapes avant l'OB1, car il faut crer le bloc appel avant le bloc appelant. La section des instructions de la FC1 se prsente comme suit en langage de programmation LIST. Rseau 1 Ouverture/fermeture et maintien

U( O #Open O #Valve ) UN #Close = #Valve Rseau 2 , si soupape ouverte

U #Valve = #Dsp_Open Rseau 3 Signalisation, si soupape ferme

UN #Valve = #Dsp_Closed

648

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6.2.5

Cration de l'OB1
L'OB1 dtermine la structure de l'exemple de programme. Il contient, en outre, les paramtres transmis aux diffrents blocs fonctionnels et fonctions. Ainsi : Les rseaux LIST pour les pompes d'alimentation et le moteur mlangeur fournissent au FB pour le moteur les paramtres d'entre pour le dmarrage ("Start"), l'arrt ("Stop"), pour le signal en retour ("Response") et pour la remise zro de l'indicateur de maintenance ("Reset_Maint"). Le FB pour le moteur s'excute chaque cycle de l'automate. Lorsque le FB pour le moteur s'excute, les entres "Timer_No" et "Response_Time" dterminent la temporisation utiliser et la dure pendant laquelle un signal en retour doit tre mis. La fonction pour les soupapes et le FB "Moteur" s'excutent chaque cycle de programme de l'automate, car ils sont appels dans l'OB1.

Le programme utilise le FB "Moteur" avec diffrents DB d'instance afin d'accomplir les tches requises pour la commande des pompes d'alimentation et du moteur mlangeur.

Dclaration de variables pour l'OB1


La table de dclaration des variables pour l'OB1 est reprsente ci-aprs. Il ne faut pas modifier les vingt premiers octets qui contiennent les informations de dclenchement de l'OB1.
Oprande 0.0 1.0 2.0 3.0 4.0 5.0 6.0 8.0 10.0 12.0 20.0 20.1 20.2 20.3 20.4 20.5 20.6 20.7 21.0 21.1 21.2 21.3 21.4 21.5 21.6 Dclaration TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP Nom OB1_EV_CLASS OB1_SCAN1 OB1_PRIORITY OB1_OB_NUMBR OB1_RESERVED_1 OB1_RESERVED_2 OB1_PREV_CYCLE OB1_MIN_CYCLE OB1_MAX_CYCLE OB1_DATE_TIME Enable_Motor Enable_Valve Start_Fulfilled Stop_Fulfilled Inlet_Valve_A_Open Inlet_Valve_A_Closed Feed_Valve_A_Open Feed_Valve_A_Closed Inlet_Valve_B_Open Inlet_Valve_B_Closed Feed_Valve_B_Open Feed_Valve_B_Closed Open_Drain Close_Drain Close_Valve_Fulfilled Type BYTE BYTE BYTE BYTE BYTE BYTE INT INT INT DATE_AND_TIME BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

649

Annexe 27.6 Exemples de programmes

Cration du programme pour l'OB1


Dans STEP 7, il faut crer les blocs appels par d'autres blocs avant les blocs contenant l'appel. Vous devez donc, dans notre exemple de programme, crire le FB pour le moteur et la FC pour les soupapes avant le programme de l'OB1. Les blocs FB1 et FC1 sont appels plusieurs reprises dans l'OB1, le FB1 avec diffrents DB d'instance :

650

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

La section des instructions de l'OB1 se prsente comme suit en langage de programmation LIST. Rseau 1 Verrouillages pour la pompe d'alimentation A

U "EMER_STOP_off" U "Tank_below_max" UN "Drain" = #Enable_Motor Rseau 2 Appel du FB Moteur pour substance A

U "Feed_pump_A_start" U #Enable_Motor = #Start_Fulfilled U( O "Feed_pump_A_stop" ON #Enable_Motor ) = #Stop_Fulfilled CALL "Motor_block", "DB_feed_pump_A" Start :=#Start_Fulfilled Stop :=#Stop_Fullfilled Response :="Flow_A" Reset_Maint :="Reset_maint" Timer_No :=T12 Reponse_Time:=S5T#7S Fault :="Feed_pump_A_fault" Start_Dsp :="Feed_pump_A_on" Stop_Dsp :="Feed_pump_A_off" Maint :="Feed_pump_A_maint" Motor :="Feed_pump_A" Rseau 3 Ajournement de la validation de soupape pour substance A

U "Feed_pump_A" L S5T#1S SE T 13 UN "Feed_pump_A" R T 13 U T 13 = #Enable_Valve Rseau 4 Commande de la soupape d'admission pour substance A

UN "Flow_A" UN "Feed_pump_A" = #Close_Valve_Fulfilled CALL "Valve_block" Open :=#Enable_Valve Close :=#Close_Valve_Fulfilled Dsp_Open :=#Inlet_Valve_A_Open Dsp_Closed:=#Inlet_Valve_A_Closed Valve :="Inlet_Valve_A"

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

651

Annexe 27.6 Exemples de programmes

Rseau 5

Commande de la soupape d'alimentation pour substance A

UN "Flow_A" UN "Feed_pump_A" = #Close_Valve_Fulfilled CALL "Valve_block" Open :=#Enable_Valve Close :=#Close_Valve_Fulfilled Dsp_Open :=#Feed_Valve_A_Open Dsp_Closed:=#Feed_Valve_A_Closed Valve :="Feed_Valve_A" Rseau 6 Verrouillages pour la pompe d'alimentation B

U "EMER_STOP_off" U "Tank_below_max" UN "Drain" = "Enable_Motor Rseau 7 Appel du FB Moteur pour substance B

U "Feed_pump_B_start" U #Enable_Motor = #Start_Fulfilled U( O "Feed_pump_B_stop" ON #Enable_Motor ) = #Stop_Fulfilled CALL "Motor_block", "DB_feed_pump_B" Start :=#Start_Fulfilled Stop :=#Stop_Fullfilled Response :="Flow_B" Reset_Maint :="Reset_maint" Timer_No :=T14 Reponse_Time:=S5T#7S Fault :="Feed_pump_B_fault" Start_Dsp :="Feed_pump_B_on" Stop_Dsp :="Feed_pump_B_off" Maint :="Feed_pump_B_maint" Motor :="Feed_pump_B" Rseau 8 Ajournement de la validation de soupape pour substance B

U "Feed_pump_B" L S5T#1S SE T 15 UN "Feed_pump_B" R T 15 U T 15 = #Enable_Valve

652

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Rseau 9

Commande de la soupape d'admission pour substance B

UN "Flow_B" UN "Feed_pump_B" = #Close_Valve_Fulfilled CALL "Valve_block" Open :=#Enable_Valve Close :=#Close_Valve_Fulfilled Dsp_Open :=#Inlet_Valve_B_Open Dsp_Closed:=#Inlet_Valve_B_Closed Valve :="Inlet_Valve_B" Rseau 10 Commande de la soupape d'alimentation pour substance B

UN "Flow_B" UN "Feed_pump_B" = #Close_Valve_Fulfilled CALL "Valve_block" Open :=#Enable_Valve Close :=#Close_Valve_Fulfilled Dsp_Open :=#Feed_Valve_B_Open Dsp_Closed:=#Feed_Valve_B_Closed Valve :="Feed_Valve_B" Rseau 11 Verrouillages pour le moteur mlangeur

U "EMER_STOP_off" U "Tank_above_min" UN "Drain" = #Enable_Motor Rseau 12 Appel du FB Moteur pour moteur mlangeur

U "Agitator_start" U #Enable_Motor = #Start_Fulfilled U( O "Agitator_stop" ON #Enable_Motor ) = #Stop_Fulfilled CALL "Motor_block", "DB_Agitator" Start :=#Start_Fulfilled Stop :=#Stop_Fullfilled Response :="Agitator_running" Reset_Maint :="Reset_maint" Timer_No :=T16 Reponse_Time:=S5T#10S Fault :="Agitator_fault" Start_Dsp :="Agitator_on" Stop_Dsp :="Agitator_off" Maint :="Agitator_maint" Motor :="Agitator"

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

653

Annexe 27.6 Exemples de programmes

Rseau 13

Verrouillages pour la soupape de vidange

U "EMER_STOP_off" U "Tank_not_empty" UN "Agitator" = "Enable_Valve Rseau 14 Commande de la soupape de vidange

U "Drain_open" U #Enable_Valve = #Open_Drain U( O "Drain_closed" ON #Enable_Valve ) = #Close_Drain CALL "Valve_block" Open :=#Open_Drain Close :=#Close_Drain Dsp_Open :="Drain_open_disp" Dsp_Closed :="Drain_closed_disp" Valve :="Drain" Rseau 15 Indication du niveau du rservoir

UN "Tank_below_max" = "Tank_max_disp" UN "Tank_above_min" = "Tank_min_disp" UN "Tank_not_empty" = "Tank_empty_disp"

654

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6.3 Exemple d'utilisation d'alarmes horaires


Structure du programme utilisateur "Alarme horaire" FC12 OB10 OB1 et OB80

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

655

Annexe 27.6 Exemples de programmes

27.6.3.1

Structure de l'alarme horaire du programme utilisateur

Problme pos
La sortie A 4.0 doit tre mise 1 du lundi, 5.00 heures au vendredi, 20.00 heures. Du vendredi, 20.00 heures au lundi, 5.00 heures la sortie A 4.0 doit tre remise 0.

Transcription dans le programme utilisateur


Le tableau suivant montre les tches partielles des blocs utiliss.
Bloc OB1 FC12 Tche partielle Appel de la fonction FC12 Selon l'tat de la sortie A 4.0, de l'tat de l'alarme horaire et des entres E 0.0 et E 0.1 OB10 OB80 Prdfinir instant de dclenchement Mettre alarme horaire 1 Activer alarme horaire CAN_TINT Prdfinir instant de dclenchement Mettre 1 ou remettre 0 la sortie A 4.0 Mettre 1 l'alarme horaire suivante Activer l'alarme horaire suivante

Selon le jour de la semaine en cours

Mies 1 de la sortie A 4.1 Enregistrer l'information de l'vnement de dclenchement de l'OB80 dans la zone des mmentos

656

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Oprandes utiliss
Le tableau suivant montre les oprandes globaux utiliss. Les variables temporaires des blocs sont dclares dans la section de dclaration du bloc respectif.
Oprande E 0.0 E 0.1 A 4.0 A 4.1 MW 16 MB 100 MB 107 MB 110 MB 129 MW 200 MB 202 MW 204 MW 208 Signification Entre de validation de "Mettre alarme horaire 1" et "Activer alarme horaire" Entre d'annulation d'une alarme horaire Sortie mise 1/remise 0 par l'OB d'alarme horaire (OB10) Sortie mise 1 en cas d'erreur d'horloge (OB80) ETAT de l'alarme horaire (SFC31 "QRY_TINT") Mmoire pour l'information de l'vnement de dclenchement de l'OB10 (uniquement horodatage) Mmoire pour l'information de l'vnement de dclenchement de l'OB80 (erreur d'horloge) RET_VAL de la SFC28 "SET_TINT" Mmoire intermdiaire des rsultats binaires (bit d'tat RB) pour les SFC RET_VAL de la SFC30 "ACT_TINT" RET_VAL de la SFC31 "QRY_TINT"

SFC et FC utiliss
Les fonctions systme suivantes sont utilises dans l'exemple de programme : SFC28 "SET_TINT" SFC29 "CAN_TINT" SFC30 "ACT_TINT" SFC31 "QRY_TINT" FC3 "D_TOD_DT" : : : : Rglage de l'alarme horaire Annulation de l'alarme horaire Activation de l'alarme horaire

Interrogation de l'alarme horaire Regroupement de DATE et TIME_OF_DAY en DT

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

657

Annexe 27.6 Exemples de programmes

27.6.3.2

FC12

Section de dclaration
Les variables temporaires de blocs suivantes sont dclares dans la section de dclaration de la FC12 :
Nom de la variable IN_HEURE IN_DATE OUT_HEURE_DATE MEMENTO_OK Type de donnes TIME_OF_DAY DATE DATE_AND_TIME BOOL Dclaration TEMP TEMP TEMP TEMP Commentaire Prdfinition de l'heure de dclenchement Prdfinition de la date de dclenchement Date/heure de dclenchement converties Validation pour le rglage de l'alarme horaire

Section des instructions en LIST


Dans la section des instructions de la FC12, vous entrez le programme utilisateur LIST suivant :
LIST (FC 12) Rseau 1 : CALL SFC 31 OB_NR := 10 RET_VAL:= MW 208 STATUS := MW 16 Rseau 2 : UN SPB L T L T SPA mont: L T L T wndl: NOP A mont D#1995-1-27 #IN_DATUM TOD#20:0:0.0 #IN_UHRZEIT wndl D#1995-1-23 #IN_DATUM TOD#5:0:0.0 #IN_UHRZEIT 0 La date de dclenchement est un lundi. 4.0 Prdfinir instant de dclenchement en fonction de A 4.0 (dans la variable #IN_DATUM et #IN_UHRZEIT) La date de dclenchement est un vendredi. Signification SFC QRY_TINT Interrogation de l'ETAT de l'alarme horaire.

658

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes


LIST (FC 12) Rseau 3 : CALL FC 3 IN1 IN2 Rseau 4 : U UN U = Rseau 5 : U SPBNB OB_NR SDT #OK_MERKER m001 := 10 := #OUT_UHRZEIT_DATUM ...et activer l'alarme horaire. E 0.0 M 17.2 M 17.4 #OK_MERKER := #IN_DATUM := #IN_UHRZEIT Convertir format de DATE et TIME_OF_DAY en DATE_AND_TIME (pour rgler l'alarme horaire) Signification

RET_VAL := #OUT_UHRZEIT_DATUM Toutes les conditions pour rgler l'alarme horaire remplies ? (entre de validation mise 1, alarme horaire non active et OB d'alarme horaire charg) Si oui, alors rgler l'alarme horaire...

CALL SFC 28

PERIOD := W#16#1201 RET_VAL := MW 200 m001 : U = Rseau 6 : U SPBNB OB_NR m002 : U = Rseau 7 : U SPBNB OB_NR m003 : U = E 0.1 m003 := 10 BIE M 202.5 #OK_MERKER m002 := 10 BIE M 202.4 Si l'entre pour annuler l'alarme horaire est mise 1, alors annuler l'alarme horaire. BIE M 202.3

CALL SFC 30 RET_VAL := MW 204

CALL SFC 29 RET_VAL := MW 210

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

659

Annexe 27.6 Exemples de programmes

27.6.3.3

OB10

Section de dclaration
Selon la section de dclaration prdfinie pour l'OB10, les variables temporaires de bloc suivantes sont dclares : Structure pour l'ensemble de l'information de l'vnement de dclenchement (STARTINFO) Dans la structure STARTINFO, une structure pour l'heure (T_STMP) Autres variables temporaire de blocs JOURSEM, IN_DATE, IN_HEURE et OUT_HEURE_DATE
Type de donnes STRUCT Dclaration TEMP Commentaire Ensemble de l'information de l'vnement de dclenchement de l'OB10 dclar comme structure ID d'vnement Classe de priorit Numro de l'OB Rserv Rserv Priodicit de l'alarme horaire Rserv Structure pour les indications d'horodatage

Nom de la variable STARTINFO

ID_E CLASSE_PR NR_OB RESERVED_1 RESERVED_2 PERIODE RESERVED_3 T_STMP ANNEE MOIS JOUR HEURES MINUTES SECONDES MSEC_JOURSEM

WORD BYTE BYTE BYTE BYTE WORD DWORD STRUCT BYTE BYTE BYTE BYTE BYTE BYTE WORD END_STRUCT END_STRUCT

TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP

JOURSEM IN_DATE IN_HEURE OUT_HEURE_DATE

INT DATE TIME_OF_DAY DATE_AND_TIME

Jour de la semaine Variable d'entre pour FC3 (conversion du format horaire) Variable d'entre pour FC3 (conversion du format horaire) Variable de sortie pour FC3 et variable d'entre pour SFC28

660

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Section des instructions en LIST


Dans la section des instructions de l'OB10, vous entrez le programme utilisateur LIST suivant :
LIST (OB 10) Rseau 1 : L L UW T Rseau 2 : L L <>I SPB Rseau 3 : L T L T SET = SPA mont: L T L T CLR = conv: NOP CALL IN1 IN2 Rseau 5 : CALL SFC 28 NR_OB SDT := 10 := #OUT_HEURE_DATE A 4.0 0 FC 3 := #IN_DATE := #IN_HEURE Prdfinition de l'instant de dclenchement termine. Convertir l'instant de dclenchement prdfini dans le format DATE_AND_TIME (pour SFC28). A 4.0 conv D#1995-1-23 #IN_DATE TOD#5:0:0.0 #IN_HEURE D#1995-1-27 #IN_DATE TOD#20:0:0.0 #IN_HEURE Sinon, c'est--dire si le jour de la semaine = lundi, alors prdfinir vendredi, 20.00 heures comme prochain instant de dclenchement et mettre la sortie A 4.0 1. mont #JOURSEM 2 Si le jour de la semaine n'est pas un lundi, alors prdfinir le lundi, 5.00 heures comme prochain instant de dclenchement et remettre la sortie A 4.0 zro. #JOURSEM et mmoriser. #STARTINFO.T_STMP.MSEC_JOURSEM W#16#F Slectionner jour de la semaine Signification

Rseau 4 :

VAL_RET := #OUT_HEURE_DATE Rgler l'alarme horaire.

PERIODE := W#16#1201 VAL_RET := MW 200 U = Rseau 6 : CALL SFC 30 NR_OB U = Rseau 7 : := 10 RB M 202.2 VAL_RET := MW 204 Activer alarme horaire RB M 202.1

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

661

Annexe 27.6 Exemples de programmes

CALL SFC 20 SRCBLK := #STARTINFO.T_STMP VAL_RET := MW 206 DSTBLK := P#M 100.0 OCTET 8

Transfert de bloc : enregistrer indication horaire de l'information de l'vnement de dclenchement de l'OB10 dans la zone de mmento MB 100 MB 107.

662

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6.3.4

OB1 et OB80
Puisque l'information de l'vnement de dclenchement de l'OB1 (OB pour le programme cyclique) n'est pas exploite dans cet exemple, seule l'information de l'vnement de dclenchement de l'OB80 est reprsente.

Section des instructions de l'OB1


Dans la section des instructions de l'OB1, vous entrez le programme utilisateur LIST suivant :
LIST (OB 1) CALL FC 12 Signification Appel de la fonction FC12

Section de dclaration de l'OB80


Selon la section de dclaration prdfinie de l'OB80, les variables temporaires de bloc suivantes sont dclares : Structure pour l'ensemble de l'information de l'vnement de dclenchement (STARTINFO) Dans la structure STARTINFO, une autre structure pour l'heure (T_STMP)
Type de donnes STRUCT Dclaration TEMP Commentaire Ensemble de l'information de l'vnement de dclenchement de l'OB80 dclar comme structure ID d'vnement Classe de priorit Numro de l'OB Rserv Rserv Information supplmentaire sur l'vnement ayant occasionn l'erreur. Information supplmentaire sur l'ID d'vnement, la classe de priorit et le numro d'OB de l'vnement d'erreur Structure pour les indications d'horodatage

Nom de la variable STARTINFO

ID_E CLASSE_PR NR_OB RESERVED_1 RESERVED_2 INFO_S1 INFO_S2

WORD BYTE BYTE BYTE BYTE WORD DWORD

TEMP TEMP TEMP TEMP TEMP TEMP TEMP

T_STMP ANNEE MOIS JOUR HEURES MINUTES SECONDES MSEC_JOURSEM

STRUCT BYTE BYTE BYTE BYTE BYTE BYTE WORD

TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

663

Annexe 27.6 Exemples de programmes

Nom de la variable

Type de donnes END_STRUCT END_STRUCT

Dclaration TEMP TEMP

Commentaire

Section des instructions de l'OB80


Dans la section des instructions de l'OB80, appel par le systme d'exploitation en cas d'erreur d'horloge, vous entrez le programme utilisateur LIST suivant :
LIST (OB 80) Rseau 1 : UN S A 4.1 A 4.1 Mettez la sortie A 4.1 1 lorsque l'erreur d'horloge est survenue. Transfert de bloc : enregistrer l'ensemble de l'vnement de dclenchement dans la zone de mmento MB 110 MB 129. Signification

CALL SFC 20 SRCBLK := #STARTINFO VAL_RET := MW 210 DSTBLK := P#M 110.0 octet 20

664

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6.4 Exemple d'utilisation d'alarmes temporises


Structure du programme utilisateur "Alarme temporise" OB20 OB1

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

665

Annexe 27.6 Exemples de programmes

27.6.4.1

Structure de l'alarme temporise du programme utilisateur

Problme pos
Lorsque l'entre E 0.0 est mise 1, la sortie A 4.0 doit tre mise 1, et ceci 10 secondes plus tard. Chaque mise 1 de l'entre E 0.0 doit dclencher une nouvelle fois le temps de retard. Comme identificateur spcifique l'utilisateur, l'instant (secondes et millisecondes) de dclenchement de l'alarme temporise doit apparatre dans l'information de l'vnement de dclenchement de l'OB d'alarme temporise (OB20). Si E 0.1 est mise 1 durant ces 10 secondes, le bloc d'organisation OB20 ne doit pas tre appel, c'est--dire la sortie A 4.0 ne doit pas tre mise 1. Lorsque l'entre E 0.2 est mise 1, la sortie A 4.0 doit tre remise 0.

Transcription dans le programme utilisateur


Le tableau suivant montre les tches partielles des blocs utiliss.
Bloc OB1 Tche partielle Lecture et prparation de l'heure actuelle pour le dclenchement de l'alarme temporise Dclenchement de l'alarme temporise en fonction du changement de front l'entre E 0.0 Annulation de l'alarme temporise en fonction de l'tat de l'alarme temporise et du changement de front l'entre E 0.1 Remise 0 de la sortie A 4.0 en fonction de l'tat de l'entre E 0.2 Mise 1 de la sortie A 4.0 Lecture et prparation de l'heure actuelle Enregistrement de l'information de l'vnement de dclenchement dans la zone des mmentos

OB20

666

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Oprandes utiliss
Le tableau ci-aprs montre les tables de donnes globales utilises. Les variables temporaires des blocs sont dclares dans la section de dclaration du bloc respectif.
Oprande E 0.0 E 0.1 E 0.2 A 4.0 MB 1 MW 4 MD 10 MW 100 MW 102 MW 104 MW 106 MB 120 MB 139 MD 140 MW 144 Signification Entre de validation de "Dclencher l'alarme de temporisation" Entre d'annulation d'une alarme temporise Entre de remise 0 de la sortie A 4.0 Sortie mise 1 par l'OB d'alarme temporise (OB20) Utilis pour les mmentos de front et la mmoire intermdiaire des rsultats binaires (bit d'tat RB) pour les SFC ETAT de l'alarme temporise (SFC34 "QRY_TINT") Secondes et millisecondes en format DCB reprises dans l'information de l'vnement de dclenchement de l'OB1 VAL_RET de la SFC32 "SRT_DINT" VAL_RET de la SFC34 "QRY_DINT" VAL_RET de la SFC33 "CAN_DINT" VAL_RET de la SFC20 "BLKMOV" Mmoire pour l'information de l'vnement de dclenchement de l'OB20 Secondes et millisecondes en format DCB reprises dans l'information de l'vnement de dclenchement de l'OB20 Secondes et millisecondes en format DCB reprises dans l'information de l'vnement de dclenchement de l'OB1 ; repris dans l'information de l'vnement de dclenchement de l'OB20 (identificateur spcifique l'utilisateur SIGN)

SFC utilises
Les fonctions systme suivantes sont utilises dans le programme utilisateur "Alarmes temporises" : SFC32 "SRT_DINT" SFC33 "CAN_DINT" SFC34 "QRY_DINT" : : : Dclenchement de l'alarme temporise Annulation de l'alarme temporise Interrogation de l'tat d'une alarme temporise

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

667

Annexe 27.6 Exemples de programmes

27.6.4.2

OB20

Section de dclaration
En fonction de la section de dclaration prdfinie de l'OB20, les variables temporaires de bloc suivantes sont dclares : Structure pour l'ensemble de l'information de l'vnement de dclenchement (STARTINFO) Dans la structure STARTINFO, une structure pour l'horodatage (T_STMP)
Type de donnes STRUCT WORD BYTE BYTE BYTE BYTE WORD TIME STRUCT Dclaration TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP Commentaire Informations de dclenchement pour l'OB20 ID d'vnement Niveau d'excution Numro d'OB Identification de donnes 1 Identification de donnes 2 Identification spcifique l'utilisateur Heure de dclenchement de l'alarme temporise Structure pour les indications d'horodatage (horodateur)

Nom de la variable STARTINFO ID_E NR_NIVEX NR_OB IDD1 IDD2 SIGN DTIME T_STMP

ANNEE MOIS JOUR HEURES MINUTES SECONDES MSEC_JOURSEM

BYTE BYTE BYTE BYTE BYTE BYTE WORD END_STRUCT END_STRUCT

TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP

668

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Section des instructions


Dans la section des instructions de l'OB20, vous entrez le programme utilisateur LIST suivant :
LIST (OB 20) Rseau 1 : SET = Rseau 2 : L T Rseau 3 : L T L T L SRD T Rseau 4 : L T Rseau 5 : CALL SFC 20 SRCBLK := STARTINFO VAL_RET := MW 106 DSTBLK := P#M 120.0 OCTET 20 #STARTINFO.SIGN MW 144 #STARTINFO.T_STMP.SECONDES MW 140 #STARTINFO.T_STMP.MSEC_JOURSEM MW 142 MD 140 4 MD 140 Elimination du jour de la semaine et rinscription des millisecondes (sont prsent en format DCB dans le MW 142). Lecture de l'instant de dclenchement de l'alarme temporise (=appel de la SFC32) dans l'information de l'vnement de dclenchement Copie de l'information de l'vnement de dclenchement dans la zone de mmoire (MB 120 MB 139) Lecture des secondes dans les informations de l'vnement de dclenchement Lecture des millisecondes et du jour de la semaine dans les informations de l'vnement de dclenchement AW 4 PAW 4 Actualisation immdiate du mot de sortie A 4.0 Mise 1 imprative de la sortie A 4.0 Signification

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

669

Annexe 27.6 Exemples de programmes

27.6.4.3

OB1

Section de dclaration
En fonction de la section de dclaration prdfinie de l'OB1, les variables temporaires de bloc suivantes sont dclares : Structure pour l'ensemble de l'information de l'vnement de dclenchement (STARTINFO) Dans la structure STARTINFO, une structure pour l'horodatage (T_STMP)
Type de donnes STRUCT WORD BYTE BYTE BYTE BYTE INT INT INT STRUCT BYTE BYTE BYTE BYTE BYTE BYTE WORD END_STRUCT END_STRUCT Dclaration TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP TEMP Commentaire Informations de dclenchement pour l'OB1 ID d'vnement Niveau d'excution Numro d'OB Identification de donnes 1 Identification de donnes 2 Temps de cycle en cours Temps de cycle minimum Temps de cycle maximal Structure pour les indications d'horodatage (horodatage)

Nom de la variable STARTINFO ID_E NR_NIVEX NR_OB IDD 1 IDD 2 CYC_ACT CYC_MIN CYC_MAX T_STMP ANNEE MOIS JOUR HEURE MINUTES SECONDES MSEC_JOURSEM

670

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

Section des instructions


Dans la section des instructions de l'OB1, vous entrez le programme utilisateur LIST suivant :
LIST (OB 1) Rseau 1 : L T L T L SRD T Rseau 2 : U FP = Rseau 3 : U SPBNB M 1.1 m001 E 0.0 M 1.0 M 1.1 Si oui, dclenchement de l'alarme temporise (instant de dclenchement de l'alarme temporise affect au paramtre SIGN) #STARTINFO.T_STMP.SECONDES MW 10 #STARTINFO.T_STMP.MSEC_JOURSEM MW 12 MD 10 4 MD 10 Lecture des secondes dans l'information de l'vnement de dclenchement Lecture des millisecondes et du jour de la semaine dans les informations de l'vnement de dclenchement Elimination du jour de la semaine et rinscription des millisecondes (sont prsent en format DCB dans le MW 12) Front positif l'entre E 0.0 ? Signification

CALL SFC 32 NR_OB := 20 DTME SIGN m001: NOP := T#10S := MW 12 0 Interrogation de l'tat de l'alarme temporise (SFC QRY_DINT)

VAL_RET:= MW 100

Rseau 4 : CALL SFC 34 NR_OB := 20 VAL_RET:= MW 102 ETAT := MW 4 Rseau 5 : U FP = Rseau 6 : U U SPBNB M 1.4 M 5.2 m002 E 0.1 M 1.3 M 1.4

Front positif l'entre E 0.1 ?

... et alarme temporise active ? (bit 2 de l'ETAT de l'alarme temporise) Alors annulation de l'alarme temporise

CALL SFC 33 NR_OB := 20 VAL_RET:= MW 104 m002: NOP U R 0 E 0.2 A 4.0 Remise 0 de la sortie A 4.0 avec l'entre E 0.2

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

671

Annexe 27.6 Exemples de programmes

27.6.4.4

Exemple de masquage et de dmasquage d'vnements d'erreurs synchrones

Dans l'exemple suivant d'un programme utilisateur, nous allons vous montrer le masquage et le dmasquage d'vnements d'erreurs synchrones. La SFC36 "MSK_FLT" masque les erreurs suivantes dans le masque d'erreurs de programmation : Erreur de longueur de zone lors de la lecture Erreur de longueur de zone lors de l'criture

Un second appel de la SFC36 "MSK_FLT" masque en plus une erreur d'accs : Erreur d'accs la priphrie lors de l'criture

La SFC38 "READ_ERR" interroge les vnements d'erreurs synchrones masqus. L"Erreur d'accs la priphrie lors de l'criture est nouveau dmasque par la SFC37 "DMSK_FLT".

Instruction
La suite reprsente l'OB1, dans lequel l'exemple pour le programme utilisateur a t programm en LIST.
LIST (rseau 1) UN SPBNB CALL M 255.0 m001 SFC 36 :=DW#16#C :=DW#16#0 :=MW 100 SFC36 MSK_FLT (Masquage d'vnements d'erreurs synchrones) Bit2=Bit3=1 (BLFL et BLFS sont masqus) tous les bits=0 (aucune erreur d'accs n'est masque) Valeur en retour Affichage du masque d'erreurs de programmation actuel dans MD 10 Affichage du masque d'erreurs d'accs actuel dans MD 14 Mise 1 de M255.0, si masquage russi m001: U S RB M 255.0 Signification mmento non rmanent M 255.0 (uniquement lors du premier cycle=0)

PRGFLT_SET_MASK ACCFLT_SET_MASK VAL_RET PRGFLT_MASKED :=MD 10 ACCFLT_MASKED :=MD 14

672

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

LIST (rseau 2) CALL SFC 36 :=DW#16#0 :=DW#16#8 :=MW 102

Signification SFC36 MSK_FLT (masquage d'vnements d'erreurs synchrones) tous les bits=0 (aucune autre erreur de programmation n'est masque) Bit3=1 (les erreurs d'accs en criture sont masques) Valeur en retour Affichage du masque d'erreurs de programmation actuel dans MD 20 Affichage du masque d'erreurs d'accs actuel dans MD 24

PRGFLT_SET_MASK ACCFLT_SET_MASK VAL_RET PRGFLT_MASKED :=MD 20 ACCFLT_MASKED :=MD 24

LIST (rseau 3) UN BEB M 27.3

Signification Fin du bloc, si erreur d'accs en criture (bit3 dans ACCFLT_MASKED) non masque

LIST (rseau 4) L T B#16#0 PAB 16

Signification Accs en criture (avec valeur 0) sur PAB 16

LIST (rseau 5) CALL SFC 38 :=DW#16#0 :=DW#16#8 :=MW 104 :=MD 30 :=MD 34

Signification SFC38 READ_ERR (interrogation d'vnements d'erreurs synchrones) tous les bits=0 (aucune interrogation d'erreur de programmation) Bit3=1 (interrogation d'erreur d'accs en criture) Valeur en retour Affichage du masque d'erreurs de programmation actuel dans MD 30 Affichage du masque d'erreurs d'accs actuel dans MD 34 aucune erreur survenue ni erreur d'accs en criture dtecte Inversion du RLG M 0.0=1, si PAB 16 existant

PRGFLT_QUERY ACCFLT_QUERY VAL_RET PRGFLT_CLR ACCFLT_CLR U U NOT = M 0.0 RB M 37.3

LIST (rseau 6) L T B#16#0 PAB 17

Signification Erreur d'accs en criture (avec valeur 0) sur PAB 17

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

673

Annexe 27.6 Exemples de programmes

LIST (rseau 7) CALL SFC 38 :=DW#16#0 :=DW#16#8 :=MW 104 :=MD 30 :=MD 34

Signification SFC38 READ_ERR (interrogation d'vnements d'erreurs synchrones) tous les bits=0 (aucune interrogation d'erreurs de programmation) Bit3=1 (interrogation d'erreur d'accs en criture) Valeur en retour Affichage du masque d'erreurs de programmation actuel dans MD 30 Affichage du masque d'erreurs d'accs actuel dans MD 34 aucune erreur survenue ni erreur d'accs en criture dtecte Inversion du RLG M 0.1=1, si PAB 17 existant

PRGFLT_QUERY ACCFLT_QUERY VAL_RET PRGFLT_CLR ACCFLT_CLR U U NOT = M 0.1 RB M 37.3

LIST (rseau 8) L T B#16#0 PAB 18

Signification Accs en criture (avec valeur 0) sur PAB 18

LIST (rseau 9) CALL SFC 38 :=DW#16#0 :=DW#16#8 :=MW 104 :=MD 30 :=MD 34

Signification SFC38 READ_ERR (interrogation d'vnements d'erreurs synchrones) tous les bits=0 (aucune interrogation d'erreurs de programmation) Bit3=1 (interrogation d'erreur d'accs en criture) Valeur en retour Affichage du masque d'erreurs de programmation actuel dans MD 30 Affichage du masque d'erreurs d'accs actuel dans MD 34 aucune erreur survenue ni erreur d'accs en criture dtecte Inversion du RLG M 0.2=1, si PAB 18 existant

PRGFLT_QUERY ACCFLT_QUERY VAL_RET PRGFLT_CLR ACCFLT_CLR U U NOT = M 0.2 RB M 37.3

LIST (rseau 10) L T B#16#0 PAB 19

Signification Accs en criture (avec valeur 0) sur PAB 19

674

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

LIST (rseau 11) CALL SFC 38 :=DW#16#0 :=DW#16#8 :=MW 104 :=MD 30 :=MD 34

Signification SFC38 READ_ERR (interrogation d'vnements d'erreurs synchrones) tous les bits=0 (aucune interrogation d'erreur de programmation) Bit3=1 (interrogation d'erreur d'accs en criture) Valeur en retour Affichage du masque d'erreurs de programmation actuel dans MD 30 Affichage du masque d'erreurs d'accs actuel dans MD 34 aucune erreur survenue ni erreur d'accs en criture dtecte Inversion du RLG M 0.3=1, si PAB 19 existant

PRGFLT_QUERY ACCFLT_QUERY VAL_RET PRGFLT_CLR ACCFLT_CLR U U NOT = M 0.3 RB M 37.3

LIST (rseau 12) CALL SFC 37 :=DW#16#0 :=DW#16#8 :=MW 102

Signification SFC37 DMSK_FLT (dmasquage d'vnements d'erreurs synchrones) tous les bits=0 (aucun dmasquage d'erreur de programmation) Bit3=1 (dmasquage d'erreur d'accs en criture) Valeur en retour Affichage du masque d'erreurs de programmation actuel dans MD 20 Affichage du masque d'erreurs d'accs actuel dans MD 24

PRGFLT_RESET_MASK ACCFLT_RESET_MASK VAL_RET PRGFLT_MASKED :=MD 20 ACCFLT_MASKED :=MD 24

LIST (rseau 13) U BEB M 27.3

Signification Fin de bloc, si erreur d'accs en criture (bit3 dans ACCFLT_MASKED) non dmasque

LIST (rseau 14) U SPBNB L T m002: NOP M 0.0 m002 EB 0 PAB 16 0

Signification

transfrer EB 0 dans PAB 16, si existant

LIST (rseau 15) U SPBNB L T m003: NOP M 0.1 m003 EB 1 PAB 17 0

Signification

transfrer EB 1 dans PAB 17, si existant

LIST (rseau 16)

Signification

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

675

Annexe 27.6 Exemples de programmes

U SPBNB L T m004: NOP

M 0.2 m004 EB 2 PAB 18 0 transfrer EB 2 dans PAB 18, si existant

LIST (rseau 17) U SPBNB L T m005: NOP M 0.3 m005 EB 3 PAB 19 0

Signification

transfrer EB 3 dans PAB 19, si existant

676

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.6 Exemples de programmes

27.6.4.5

Exemple d'inhibition et de validation d'vnements d'alarme et d'vnements asynchrones (SFC 39 et 40)

Dans cet exemple de programme utilisateur, on considre qu'une partie du programme ne doit pas tre interrompue par des alarmes. Pour cette partie du programme, la SFC39 "DIS_IRT" inhibe les appels de l'OB35 (alarme horaire) et la SFC40 "EN_IRT" valide nouveau les appels de l'OB35. Les SFC39 et SFC40 sont appeles dans l'OB1 :
LIST (OB 1) U S U S : : CALL MODE SFC 39 :=B#16#2 :=MW 100 Partie du programme ne devant pas tre interrompue par des alarmes : Inhiber et rejeter les alarmes Mode 2 : inhibition d'OB d'alarme individuels inhibition de l'OB35 M 0.0 M 90.1 M 0.1 M 90.0 Signification Partie du programme pouvant tre interrompue :

NR_OB :=35 VAL_RET : : L T L T : : CALL MODE SFC 40 :=B#16#2 :=MW 102 PEW 100 MW 200 MW 90 MW 92

Validation des alarmes Mode 2 : validation d'OB d'alarme individuels Validation de l'OB35 Partie du programme pouvant tre interrompue :

NR_OB :=35 VAL_RET

U S U S : :

M 10.0 M 190.1 M 10.1 M 190.0

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

677

Annexe 27.6 Exemples de programmes

27.6.4.6

Exemple de traitement diffr d'vnements d'alarme et d'vnements asynchrones (SFC 41 et 42)


Dans cet exemple de programme utilisateur, on considre qu'une partie du programme ne doit pas tre interrompue par des alarmes. Dans cette partie du programme, la SFC41 "DIS_AIRT" retarde les alarmes qui sont ultrieurement valides par la SFC42 "EN_AIRT". La SFC41 et la SFC42 sont appeles dans l'OB1 :
LIST (OB 1) U S U S : : CALL L T L T : : : CALL L DEC L <>I SPB err SFC 42 :=MW 102 MW 100 1 MW 102 VAL_RET Validation de l'alarme La valeur en retour contient le nombre d'inhibitions d'alarmes mises en uvre La valeur en retour contient le nombre d'inhibitions d'alarmes mises en uvre aprs validation des alarmes, ce nombre doit tre identique comme avant l'inhibition des alarmes (dans ce cas "0") SFC 41 :=MW 100 PEW 100 MW 200 MW 90 MW 92 Partie du programme ne devant pas tre interrompue par des alarmes : Inhibition et retardement des alarmes M 0.0 M 90.1 M 0.1 M 90.0 Signification Partie du programme pouvant tre interrompue :

VAL_RET

U S U S : : BEA erre: L T

M 10.0 M 190.1 M 10.1 M 190.0

Partie du programme pouvant tre interrompue :

MW 102 AW 12

Le nombre d'inhibitions d'alarmes mises en oeuvre est affich

678

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.7 Accs aux zones de donnes du processus et de la priphrie

27.7

Accs aux zones de donnes du processus et de la priphrie

27.7.1 Accs la zone de donnes du processus


La CPU peut accder aux entres et sorties des modules d'entres/sorties TOR centraliss ou dcentraliss soit indirectement via la mmoire image du processus, soit directement via le bus interne/de fond de panier ou P. Quant aux entres et sorties des modules d'entres/sorties analogiques centraliss et dcentraliss, la CPU y accde directement via le bus interne/de fond de panier ou P. Vous avez cependant galement la possibilit d'entrer les adresses des modules analogiques dans la zone de mmoire image.

Adressage des modules


L'association entre les adresses utilises dans le programme utilisateur et les modules se fait par configuration des modules avec STEP 7 : pour la priphrie centralise : disposition du profil support ou chssis et affectation des modules aux emplacement dans la table de configuration ; pour la priphrie dcentralise (PROFIBUS DP ou PROFINET IO) : disposition des esclaves de priphrie dcentralise (DP) ou IO Devices avec indication de l'adresse PROFIBUS ou du nom d'appareil et affectation des modules aux emplacements.

La configuration des modules remplace le rglage d'adresses des diffrents modules par commutateurs. La CPU reoit de la PG des donnes comme rsultat de la configuration, donnes grce auxquelles elle reconnat les modules affects.

Adressage de la priphrie
Il existe une plage d'adresses propre pour les entres et pour les sorties. Aussi, l'adresse d'une zone de priphrie doit-elle contenir l'identification E - pour les entres - et A - pour les sorties - en plus de l'indication d'octet ou de mot. Le tableau suivant prsente les plages d'adresses de priphrie disponibles.
Plage d'oprandes Zone de priphrie des entres Accs par des units de taille suivante Octet de priphrie d'entre Mot de priphrie d'entre Double mot de priphrie d'entre Octet de priphrie de sortie Mot de priphrie de sortie Double mot de priphrie de sortie Notation S7 PEB PEW PED PAB PAW PAD

Zone de priphrie des sorties

Reportez-vous aux manuels suivants pour savoir quelles plages d'adresses sont possibles pour les diffrents modules. CPU 31xC et CPU 31x, Caractristiques techniques Systmes dautomatisation S7-400, Caractristiques des CPU

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

679

Annexe 27.7 Accs aux zones de donnes du processus et de la priphrie

Adresse de dbut de module


L'adresse de dbut de module est l'adresse d'octet la plus basse d'un module. Elle reprsente l'adresse de dbut de la zone des donnes utiles du module et est souvent utilise pour dsigner le module entier. Elle est, par exemple, inscrite dans les informations de dclenchement des blocs d'organisation associs des alarmes de processus, de diagnostic, de dbrochage/enfichage et des erreurs d'alimentation, et identifie ainsi le module l'origine de l'alarme.

680

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.7 Accs aux zones de donnes du processus et de la priphrie

27.7.2 Accs la zone de donnes de priphrie


La zone de donnes de priphrie se dcompose : en donnes utiles et en donnes de diagnostic et de paramtres.

Ces deux parties comportent une zone d'entre (accs en lecture uniquement) et une zone de sortie (accs en criture uniquement).

Donnes utiles
On accde aux donnes utiles via l'adresse d'octet - pour les modules de signaux TOR - et via l'adresse de mot - pour les modules de signaux analogiques - de la zone d'entre ou de sortie. Vous pouvez accder ces donnes utiles l'aide de commandes de chargement et de transfert, de fonctions de communication (accs de contrle-commande) ou par l'intermdiaire du transfert de mmoire image. Parmi les donnes utiles, on compte : les signaux d'entre et de sortie analogiques et TOR de modules de signaux, les informations d'tat et de forage de modules de fonction et les informations pour couplages point point et par bus de modules de communication (uniquement S7-300).

Lors de la transmission de donnes utiles, il est possible d'atteindre une cohrence des donnes de quatre octets au maximum (except pour les esclaves norms DP ; voir Dfinition du comportement en fonctionnement). Si vous utilisez l'instruction "Transfrer double mot", 4 octets sont transmis en un bloc et sans modification. En revanche, si vous vous servez de quatre instructions "Transfrer octet d'entre", il se pourrait que soit dclench une limite d'instruction un OB d'alarme de processus qui transmette des donnes la mme adresse et modifie ainsi le contenu des quatre octets d'origine.

Donnes de diagnostic et de paramtres


Il n'est pas possible d'accder individuellement aux donnes de diagnostic et de paramtres d'un module, mais uniquement sous la forme d'enregistrements entiers. En principe, les donnes de diagnostic et de paramtres sont transmises de manire cohrente. On accde aux donnes de diagnostic et de paramtres via l'adresse de dbut du module concern et le numro d'enregistrement. Les enregistrements sont subdiviss en enregistrements d'entre et de sortie, les enregistrements d'entre pouvant uniquement tre lus et les enregistrements de sortie uniquement tre crits. Vous pouvez accder aux enregistrements l'aide de fonctions systme ou de fonctions de communication (contrle-commande). Le tableau suivant montre l'affectation des enregistrements aux donnes de diagnostic et de paramtres.
Donnes Donnes de diagnostic Donnes de paramtres Description Pour les modules capables de diagnostic, vous recevez lors de la lecture des enregistrements 0 et 1 les donnes de diagnostic de ce module. Pour les modules paramtrables, vous transfrez lors de l'criture des enregistrements 0 et 1 les paramtres de ce module.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

681

Annexe 27.8 Dfinition du comportement en fonctionnement

Accs aux enregistrements


Vous pouvez utiliser les informations contenues dans les enregistrements d'un module pour modifier le paramtrage de modules paramtrables et pour lire les informations de diagnostic des modules aptes au diagnostic. Le tableau suivant prsente les fonctions systme permettant d'accder aux enregistrements.
SFC Paramtrage de modules SFC55 WR_PARM SFC56 WR_DPARM SFC57 PARM_MOD SFC58 WR_REC Lecture d'informations de diagnostic SFC59 RD_REC Lecture des donnes de diagnostic Transfert des paramtres modifiables (enregistrement 1) au module de signaux adress Transfert des paramtres des SDB 100 129 au module de signaux adress Transfert de tous les paramtres des SDB 100 129 au module de signaux adress Transfert d'un enregistrement quelconque au module de signaux adress Application

Nota Lorsqu'un esclave DPV1 est configur via un fichier GSD (GSD partir de la rvision 3) et que l'interface DP du matre DP est paramtre sur "Compatible S7", aucun enregistrement ne peut tre lu ou crit dans les modules E/S dans le programme utilisateur avec les SFC 58/59 ou SFB 53/52. Dans ce cas, le matre DP adresse un emplacement erron (emplacement configur +3). Solution : commutez l'interface du matre DP sur "DPV1".

Adressage de modules S5
Vous avez la possibilit de : coupler un automate S7-400 des chssis d'extension SIMATIC S5 avec la carte de couplage IM 463 et enficher certaines cartes S5 en botiers d'adaptation dans les chssis centraliss de l'automate S7-400.

Consultez le manuel "Systmes dautomatisation S7-400, M7-400 - Installation et configuration" ou la description livre avec le botier d'adaptation pour savoir comment adresser les cartes S5 avec SIMATIC S7.

27.8

Dfinition du comportement en fonctionnement


Ce chapitre explique comment vous pouvez influer, l'aide des paramtres systme ou de fonctions systme, sur les proprits des automates programmables S7-300 et S7-400 qui ne sont pas dfinitivement fixes.

682

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.8 Dfinition du comportement en fonctionnement

Vous trouverez des informations dtailles sur les paramtres des modules dans l'aide en ligne de STEP 7 ainsi que dans les manuels suivants : Manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" Manuel de rfrence "Systmes dautomatisation S7-300, M7-300 - Caractristiques des modules" Manuel de rfrence "Systmes dautomatisation S7-400, M7-400 -Caractristiques des modules"

Vous trouverez toutes les informations sur les fonctions systme dans le manuel de rfrence "Logiciel systme pour SIMATIC S7-300/400 - Fonctions standard et fonctions systme".

Adressage des esclaves norms DP


Si des esclaves norms DP doivent mettre ou recevoir des donnes de plus de 4 octets, vous devez faire appel des fonctions systme spcifiques. Dans le cas de CPU qui prennent en charge l'change de donnes cohrentes (> 4 octets) via la zone de priphrie, il nest pas ncessaire d'utiliser les SFC 14/15 (voir lecture et criture dcentralise de donnes cohrentes).
SFC Paramtrage de modules SFC15 DPWR_DAT Lecture d'informations de diagnostic SFC13 DPNRM_DG SFC14 DPRD_DAT Lecture des donnes de diagnostic (lecture asynchrone) Lecture de donnes cohrentes (longueur 3 ou suprieure 4 octets) Transfert de donnes quelconques au module de signaux adress Application

Une alarme de diagnostic avec 4 octets de donnes de diagnostic est signale la CPU lors de l'arrive d'un tlgramme de diagnostic DP. Il est possible de lire ces quatre octets avec la fonction systme SFC13 DPNRM_DG.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

683

Annexe 27.8 Dfinition du comportement en fonctionnement

27.8.1 Modification du comportement et des proprits des modules


Paramtres par dfaut
A la livraison, tous les modules paramtrables du systme d'automates programmables S7 sont rgls des valeurs par dfaut qui conviennent des applications standard. Ces valeurs par dfaut vous permettent d'utiliser directement les modules sans devoir effectuer d'autres rglages. Elles sont prsentes dans les descriptions de modules des manuels suivants : Manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" Manuel de rfrence "Systmes dautomatisation S7-300, M7-300 - Caractristiques des modules" Manuel de rfrence "Systmes dautomatisation S7-400, M7-400 - Caractristiques des modules"

Modules paramtrables
Vous pouvez toutefois bien sr paramtrer le comportement et les proprits des modules et, ainsi, les adapter aux exigences et aux caractristiques de votre installation. Les CPU, FM, CP ainsi que certains modules d'entres et de sorties analogiques et modules d'entres TOR sont des modules paramtrables. Il existe des modules paramtrables avec ou sans sauvegarde. Aprs chaque coupure de courant, vous devez transmettre nouveau les donnes de paramtrage aux modules sans sauvegarde. Les paramtres de ces modules sont sauvegards dans la zone de mmoire rmanente de la CPU (paramtrage indirect par la CPU).

Dfinition et chargement des paramtres


Vous dfinissez les paramtres des modules l'aide de STEP 7. Lors de l'enregistrement des paramtres, STEP7 cre l'objet "Blocs de donnes systme" qui est charg dans la CPU avec le programme utilisateur et qui, de l, est transfr dans les modules concerns lors de la mise en route.

684

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.8 Dfinition du comportement en fonctionnement

Paramtrages possibles
Les paramtres des modules sont rpartis en blocs de paramtres. Le manuel "Automate programmable S7-300, Installation et configuration - Caractristiques des CPU" et le manuel de rfrence "Automate programmable S7-400, M7-400 -Caractristiques des modules" prcisent quels blocs de paramtres sont disponibles sur quelles CPU. Exemples de blocs de paramtres : comportement la mise en route, cycle, MPI diagnostic, rmanence, mmentos de cadence, traitement d'alarmes, priphrie interne (uniquement pour S7-300), niveau de protection, donnes locales, horloge temps rel, erreurs asynchrones.

Paramtrage l'aide de SFC


Outre par paramtrage avec STEP 7, il est galement possible de modifier les paramtres des modules l'aide de fonctions systme partir du programme S7. Le tableau suivant indique quelles SFC transfrent quels paramtres de modules.
SFC SFC55 WR_PARM SFC56 WR_DPARM SFC57 PARM_MOD SFC58 WR_REC Application Transfert des paramtres modifiables (enregistrement 1) au module de signaux adress Transfert des paramtres des SDB associs au module de signaux adress Transfert de tous les paramtres des SDB associs au module de signaux adress Transfert d'un enregistrement quelconque au module de signaux adress

Vous trouverez des informations dtailles sur les fonctions systme dans le manuel de rfrence "Logiciel systme pour SIMATIC S7-300/400 - Fonctions standard et fonctions systme". Les manuels suivants indiquent quels paramtres de module vous pouvez modifier dynamiquement. Manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" Manuel de rfrence "Systmes dautomatisation S7-300, M7-300 - Caractristiques des modules" Manuel de rfrence "Systmes dautomatisation S7-400, M7-400 -Caractristiques des modules"

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

685

Annexe 27.8 Dfinition du comportement en fonctionnement

27.8.2 Mise jour hors ligne du microprogramme (du systme d'exploitation) de modules
La manire de transfrer une nouvelle version du microprogramme (= nouvelle version du systme d'exploitation) sur un module tel qu'une CPU via une carte mmoire est dcrite ci-aprs. Deux tapes sont ncessaires la mise jour : 1. Cration d'une "Update-Memory Card" (transfert des fichiers de mise jour sur une carte mmoire) avec la PG ou le PC et un programmateur externe). 2. Ralisation d'une mise jour du systme d'exploitation avec la "Update-Memory Card" sur la CPU.

Conditions
Carte mmoire avec une capacit de mmoire suffisante. Vous obtiendrez des informations sur les pages de tlchargement du service Customer-Supports. Vous y trouverez galement les fichiers de mise jour. PG ou PC quip d'un dispositif de programmation de cartes mmoire.

Transfert des fichiers de mise jour sur une carte mmoire


1. Utilisez lExplorateur de Windows pour crer un nouveau rpertoire. 2. Chargez le fichier de mise jour souhait dans ce rpertoire et dcompimez-le. Ce rpertoire contient ensuite le fichier de mise jour. 3. Enfichez la carte mmoire S7 dans la PG ou dans le programmateur. 4. Effacez la carte mmoire (commande de menu Fichier > Carte mmoire S7 > Effacer dans SIMATIC Manager). 5. Choisissez la commande Systme cible > Actualiser le systme d'exploitation de l'AP dans SIMATIC Manager. 6. Dans la bote de dialogue qui souvre, slectionnez le rpertoire contenant le fichier de mise jour. 7. Effectuez un double clic sur le fichier de mise jour. Vous dmarrez ainsi la procdure de programmation. Lorsqu'elle est termine, le message suivant s'affiche : "La mise jour du microprogramme pour le module portant le n de rfrence a t transfre correctement sur la carte mmoire S7.

686

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.8 Dfinition du comportement en fonctionnement

Ralisation d'une mise jour du systme d'exploitation


1. Coupez l'alimentation (PS) de la CPU. 2. Enfichez dans la CPU la carte mmoire prpare contenant la mise jour. 3. Rtablissez l'alimentation de la CPU. Le systme d'exploitation est transfr de la carte mmoire S7 dans l'EPROM flash interne. Durant cette opration, toutes les DEL de la CPU s'allument. 4. La mise jour est termine au bout de 2 min. environ, ce qui est signal par un clignotement lent de la DEL STOP de la CPU (demande d'effacement gnral par le systme). 5. Coupez l'alimentation et enfichez ventuellement la carte mmoire S7 prvue pour l'exploitation. 6. Rtablissez l'alimentation. La CPU excute alors un effacement gnral automatique, aprs quoi elle est prte fonctionner.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

687

Annexe 27.8 Dfinition du comportement en fonctionnement

27.8.3 Avantages des fonctions d'horodatage


Toutes les CPU S7-300/S7-400 possdent une horloge (horloge temps rel ou horloge logicielle). Dans lautomate programmable, lhorloge peut aussi bien fonctionner comme horloge matre que comme esclave avec synchronisation externe. Elle permet lutilisation dalarmes horaires et de compteurs dheures de fonctionnement.

Format horaire
Lhorloge affiche toujours lheure (rsolution minimale 1 s) et la date avec le jour de la semaine. Certaines CPU permettent aussi laffichage de millisecondes (voir le manuel "Systme dautomatisation S7-300, Installation et configuration - Caractristiques des CPU" et le manuel de rfrence "Systmes dautomatisation S7-400, M7-400, Caractristiques des modules").

Rglage et lecture de l'heure


Pour rgler lheure et la date de lhorloge de la CPU, vous appelez la SFC0 SET_CLK dans le programme utilisateur ou choisissez la commande depuis la PG pour dmarrer lhorloge. La SFC1 READ_CLK ou la commande de menu sur la PG vous permettent de lire la date et lheure actuelles de la CPU.

Nota Pour viter des indications diffrentes dans les systmes IHM, il est conseill de rgler la CPU sur l'heure d'hiver !

Paramtrage de l'horloge
Lorsquun rseau comporte plus dun module avec horloge, vous devez paramtrer dans STEP 7, quelle CPU doit fonctionner comme matre et quelle CPU doit fonctionner comme esclave pour la synchronisation de lheure. Le paramtrage vous permet galement de dfinir si la synchronisation doit tre ralise via le bus de communication ou via linterface MPI et ce quels intervalles.

Synchronisation de l'heure
Afin de garantir que tous les modules du rseau sont rgls la mme heure, les horloges esclave du programme systme sont synchronises des intervalles rguliers (paramtrables) par le programme systme. La fonction systme SFC48 SNC_RTCB vous permet de transmettre la date et lheure de lhorloge matre aux horloges esclave.

688

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Annexe 27.8 Dfinition du comportement en fonctionnement

Mise en uvre d'un compteur d'heures de fonctionnement


Un compteur dheures de fonctionnement permet de compter la dure dactivation dun lment du systme connect ou la dure de fonctionnement de la CPU sous forme de somme du nombre dheures de fonctionnement. Le compteur dheures de fonctionnement est stopp lorsque la CPU est ltat darrt. Sa valeur est conserve aprs un effacement gnral. Lors dun dmarrage chaud, le compteur dheures de fonctionnement doit tre dmarr par le programme utilisateur, lors dun redmarrage, il continue fonctionner sil tait activ. Vous pouvez affecter une valeur initiale au compteur dheures de fonctionnement laide de la SFC2 SET_RTM. La SFC3 CTRL_RTM vous permet de le dmarrer ou de larrter. Avec la SFC4 READ_RTM, vous pouvez lire le nombre actuel dheures de fonctionnement ainsi que ltat du compteur ("arrt" ou "compte"). Une CPU peut possder jusqu 8 compteurs dheures de fonctionnement. La numrotation dbute 0.

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

689

Annexe 27.8 Dfinition du comportement en fonctionnement

27.8.4 Utilisation de mmentos de cadence et de temporisations


Mmentos de cadence
Un mmento de cadence est un mmento dont l'tat binaire change priodiquement dans un rapport impulsion-pause de 1:1. Vous dterminez, lors du paramtrage du mmento de cadence avec STEP 7, l'octet de mmento de la CPU qui servira de mmento de cadence.

Utilit
Vous pouvez vous servir de mmentos de cadence dans votre programme utilisateur pour, par exemple, commander des avertisseurs lumineux avec lampe clignotante ou pour dclencher des vnements priodiques (comme l'enregistrement d'une valeur de mesure).

Frquences possibles
A chaque bit de l'octet de mmento de cadence est affecte une frquence. Le tableau suivant prsente cette affectation.
Bits de l'octet du mmento de cadence Priode (s) Frquence (Hz) 7 6 5 4 3 2 1 0

2,0 0,5

1,6 0,625

1,0 1

0,8 1,25

0,5 2

0,4 2,5

0,2 5

0,1 10

Nota
Les mmentos de cadence s'excutent de manire asynchrone par rapport au cycle de CPU. Ainsi, dans les cycles longs, l'tat du mmento de cadence peut changer plusieurs fois.

Temporisations
Les temporisations sont une zone de la mmoire systme. La fonction d'une temporisation est dfinie par le programme utilisateur (par exemple, retard la monte). Le nombre de temporisations disponibles dpend de la CPU.

Nota
Si vous faites appel, dans votre programme utilisateur, plus de temporisations que n'en autorise la CPU, une erreur synchrone est signale et l'OB121 est dclench. Dans les S7-300 ( l'exception de la CPU 318), les temporisations ne peuvent tre simultanment dmarres et actualises que dans l'OB1 et dans l'OB100. Dans tous les autres OB, elles peuvent uniquement tre dmarres.

690

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Index
A
Abrviations slection 254 Accs la zone de donnes de priphrie 681 Accs la zone de donnes du processus 679 Accs en ligne aux systmes cibles dans le multiprojet 395 ACT_TINT 97, 655 Activation affichage des mnmoniques dans le bloc 199 Actualisation appels de blocs 255 mmoire image 82, 85 Adressage indirect en mmoire 607 interzone 607, 608 intrazone 607, 608 Adressage absolu 185, 186 symbolique 185, 186 vrification 53 Adressage de modules S5 682 Adressage absolu et adressage symbolique 185 Adressage des esclaves DP norms 683 Adressage des modules 679 Adressage symbolique 188 Adressage symbolique dans l'exemple de programme 639 Adresse de dbut 680 Affectation mnmoniques 639, 640, 641 Affectation de types de donnes aux donnes locales de blocs de code 619 Affectation des erreurs systme aux classes d'erreur 382 Affectation des interruptions vrification 53 Affectation et dition de messages sur mnmonique pour la CPU 351 Affichage informations sur le bloc pour CONT LOG LIST 307 Affichage activation des mnmoniques dans le bloc 199 besoin maximal en donnes locales dans la structure arborescente 302 bloc supprim 302 longueurs des blocs 222 sous forme de paires d'appelants-appels 302 sous forme de structure arborescente 302 structure de blocs de donnes associs un UDT 266 structure de donnes de blocs de donnes associs un FB (DB d'instance) 263 Affichage donnes de rfrence 308 Affichage donnes de rfrence 308 Affichage donnes de rfrence 308 Affichage donnes de rfrence 308 Affichage donnes de rfrence 308 Affichage listes dans des fentres supplmentaires 308 Affichage mnmoniques manquants 308 Affichage mnmoniques manquants 308 Affichage oprandes libres 308 Affichage oprandes libres 308 Affichage structure du programme 308 Affichage structure du programme 308 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

691

Index

Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage donnes de rfrence 309 Affichage tat de fonctionnement 400 Affichage dans la visualisation d'tat de programme 456 Affichage dfinition pour l'tat du programme 462 Affichage de ltat du module desclaves DP derrire un Y-Link 481 Affichage de ltat du module dappareils de terrain PA 481 Affichage des partenaires accessibles 393 Affichage du journal des modifications 153 Affichage graphique d'vnements de diagnostic 513 Affichage matriel tat du module 467 Afficher longueur des blocs 222 Afficher les messages enregistrs de la CPU 368 Aide (en ligne) appel 112 rubriques 112 Aide contextuelle 112 Aide en ligne appel 112 modification de la police 112 rubriques 112 Alarme cyclique 100 dmarrage 100 rglage 100 Alarme de dbrochage/enfichage (OB83) 506 Alarme de diagnostic (OB82) 505 Alarme de processus 101 Alarme de processus dclenchement 101 Alarme de processus rglage 101 Alarme de processus priorit 102 Alarme de processus priorit 102 Alarme horaire 97, 401 changement de l'heure 98 dmarrage 98 dsactivation 98 exemple 655 interrogation 98 priorit 98 Alarme horaire structure 656

Alarme temporise dclenchement 99 priorit 99 rglage 99 utilisation 665 Alarme temporise structure 666 Allocation de mmoire 573 dans la pile L 573, 574 Ancien projet utilisation 627 ANY 605, 612, 614 paramtre description et utilisation 615 Aperu gnral sur la signalisation d'erreurs systme 369 Aperu gnral sur l'tat de diagnostic 513 Appareils de terrain PA 481 Appareils PROFIBUS PA 481 Appel 112 Appel de la vue rapide 471 Appel de l'tat du module 491 Appel de l'tat du module depuis la vue du projet (en ligne) 472 Appel de l'tat du module vue d'ensemble des possibilits 491 Appels de bloc 80 Appels de blocs actualisation 255 Appels imbriqus de blocs de code effets sur la pile B et la pile L 575 Applications techniques 37 Architecture du systme cycle 82 Architecture systme tats de fonctionnement de la CPU 549 Archivage conditions requises 536 marche suivre 536 possibilits 535 projets et bibliothques 534 Archive 365 Archiver projets STEP 7 de version V2.1 avec communication par donnes globales 629 ARRAY 593 Arrt 483 Arrt dtermination de la cause 483 Arrt tat de fonctionnement de la CPU 549 Arrt (STOP) 552 Assistant de cration d'un proje 158 Attente 562 Attente tat de fonctionnement de la CPU 549 Attribution des numros de message 336 Attributs de bloc 219 Attributs de contrle-commande 387

692

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Index

Attributs de contrle-commande modification avec CFC 391 Attributs de contrle-commande configuration au moyen de la table des mnmoniques 390 configuration avec LIST CONT LOG 389 Attributs pour blocs et pour paramtres 226 Attributs systme dans la table des mnmoniques 194, 195 pour la configuration des messages 331 pour la configuration des messages PCS 7 (pour tout le projet) 342 pour la configuration des messages PCS7 (pour la CPU) 350 pour les paramtres 236 Automate logiciel (Software PLC) 174 Automation License Manager 43 Avantages des fonctions dhorodatage 688 Avertissement 573 Dbordement de la pile L 573

B
Barre de titre 130 Barre des menus 130 Barre d'tat exemple 130 Barre d'outils boutons 130 Bascule entre les diffrents types de fentres 147 Base de temps pour S5 TIME 592 Besoin en donnes locales 302, 303 Bibliothque 116 Bibliothque de textes 362, 363 textes incorporer dans des messages 356 Bibliothque standard 161 Bibliothques 162, 177, 629 dition de la version 2 177, 629 Bibliothques utilisation 227 Bibliothques structure hirarchique 229 Bibliothques rorganisation 544 Bibliothques rorganisation 544 Bibliothques rorganisation 544 Bibliothques de texte utilisateur 359 Bibliothques de textes 359, 361 traduction 362 Bibliothques de textes systme 361 Bibliothques de textes utilisateur 360 Bibliothques de textes utilisateur cration 359 dition 360 ditionEdition bibliothques de textes utilisateur 360

Bibliothques standard prsentation 229 BLKMOV 564 Bloc pour modifier le pointeur 609 Bloc gnral vrifier la cohrence 315 vue d'ensemble 72 Bloc apte la signalisation 338 Bloc de donnes (DB) 72 Bloc de donnes (DB) blocs de donnes d'instance 91 Bloc de donnes (DB) structure 94 Bloc de donnes (DB) global 95 Bloc de donnes (DB) global 95 Bloc de donnes (DB) global 95 Bloc de donnes (DB) rmanent 579 Bloc de donnes d'instance 91, 94 cration de plusieurs instances pour un FB 88 Bloc de donnes d'instance rmanent 579 Bloc de signalisation 347, 348 Bloc d'organisation traitement cyclique du programme (OB1) 82 Bloc d'organisation (OB) OB d'arrire-plan (OB90) 73, 104 Bloc d'organisation pour lexcution du programme en arrire-plan (OB90) 104 Bloc pour 377 BLOCK type de paramtre 605 BLOCK_DB 605 BLOCK_FB 605 BLOCK_FC 605 BLOCK_SDB 605 Blocs attributs 226 chargement dans le systme cible 416 chargement depuis la CPU S7 425 commentaires 243 cration avec GRAPH 214 droits d'accs 234 effacement sur le systme cible 428 rassignation 226 saisie en LIST 242 titres 243 Blocs - chargs enregistrement dans l'EPROM 417 Blocs chargs dition dans votre PG/PC 425 Blocs de code dans l'diteur incrmental 233 dfinition exemple 638 enregistrement 257 horodatage 318

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

693

Index

structure 233 Blocs de donnes 269 Blocs de donnes enregistrement 268 modification de valeurs dans la vue des donnes 267 principes 259 rinitialisation de valeurs en leur substituant leur valeur initiale 267 saisie/affichage de la structure de donnes avec FB associ (DB d'instance) 263 vue des dclarations 260 vue des donnes 261 Blocs de donnes paramtrage 269 Blocs de donnes (DB) blocs de donnes d'instance 88 Blocs de donnes d'instance 91 Blocs de donnes d'instance horodatage 319 Blocs de donnes d'instance horodatage 319 Blocs de donnes globaux horodatage 319 saisie de la structure de donnes 262 Blocs de donnes globaux (DB) 94 Blocs de signalisation 331 tableau 329 Blocs dj programms 95 Blocs d'organisation 72 Blocs d'organisation dfinition 73 Blocs d'organisation classes de priorit 73 Blocs d'organisation classes de priorit 75 Blocs d'organisation classes de priorit 75 Blocs d'organisation classes de priorit 75 Blocs d'organisation classes de priorit 75 Blocs d'organisation classes de priorit 75 Blocs d'organisation classes de priorit 75 Blocs d'organisation classes de priorit 75 Blocs d'organisation classes de priorit 76 Blocs d'organisation informations de dclenchement 76 Blocs d'organisation informations de dclenchement 76 Blocs d'organisation classes de priorit 76 Blocs d'organisation raction aux erreurs 105

Blocs d'organisation erreur dtect OB122 valeurs de remplacement 499 Blocs d'organisation erreur dtect OB122 valeurs de remplacement 499 Blocs d'organisation erreur dtect OB122 valeurs de remplacement 499 Blocs d'organisation erreur dtect OB122 valeurs de remplacement 499 Blocs d'organisation erreur dtect OB122 valeurs de remplacement 499 Blocs d'organisation cration d'un OB pour l'exemple d'un processus de mlange industriel 649 Blocs d'organisation et structure du programme 73 Blocs d'organisation pour la mise en route (OB100/OB101/OB102) 102 Blocs d'organisation pour l'alarme de processus (OB40 OB47) 101 Blocs d'organisation pour l'alarme temporise (OB20 OB23) 99 Blocs d'organisation pour le traitement de programme dclench par alarme 97 Blocs d'organisation pour le traitement d'erreurs (OB70 OB87 / OB121 OB122) 105 Blocs fonctionnels (FB) domaine d'application 89 paramtres effectifs 89, 90, 91 Blocs fonctionnels (FB) cration exemple de FB pour l'exemple de processus de mlange industriel 642 Blocs fonctionnels systme 95 Blocs fonctionnels systme types 95 Blocs fonctionnels systme (SFB) et fonctions systme (SFC) 95 Blocs fonctionnels systme SFB 72 Blocs gnrs (signalisation d'erreurs systme) 380 Blocs pour la signalisation derreurs systme 377 Bobines placement 248 Bote de dialogue onglets 131 Bote de dialogue de slection 139 Bote de dialogue relative au systme voir la configuration des messages PCS 7 (pour tout le projet) 342 Bote de dialogue systme voie Configuration des messages PCS7 (pour la CPU) 350 Botes
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

694

Index

placement 248, 252 suppression modification 253 Botes de dialogue 131, 132 BOOL comme type de donnes 583 plage 584 Boutons barre d'outils 130 Branche T 252 Branchements interdits en CONT 250

C
CAN_DINT 665 CAN_TINT 97, 655 Caractre (CHAR) plage 584 Caractre de commentaire 436 Carte mmoire 564 Carte mmoire paramtrage 51 Carte MPI dans la PG ou le PC 53 Carte MPI-ISA (Auto) 53 Cartes mmoire micro (MMC) 173 Ce qu'il faut savoir sur les cartes mmoire micro (MMC) 173 Certificate of License 43 CFC 209, 216 Changement heure pour l'alarme horaire 97 Changement d'tat de fonctionnement 550 Charge du cycle due la communication 82, 85 Chargement 418, 419, 420, 421 Chargement conditions pralables 407 dans la gestion du projet 416 des cartes mmoire EPROM 417 hors gestion du projet 416 programmes utilisateur dans le systme cible 410 Chargement objets 420 Chargement objets 420 Chargement objets 420 Chargement objets 420 Chargement objets 420 Chargement objets 420 Chargement objets 420 Chargement objets 420 Chargement objets 420

Chargement objets 421 Chargement objets 421 Chargement objets 421 Chargement objets 421 Chargement objets 421 Chargement depuis le systme cible dans la PG 423 Chargement configuration actuelle et tous les blocs dans la PG 424 Chargement blocs depuis la CPU S7 425 Chargement programme utilisateur 564 Chargement programme utilisateur 564 Chargement programme utilisateur 564 Chargement programme utilisateur 564 Chargement de blocs dans le systme cible 416 Chargement de plusieurs objets 418 Choix langage de programmation 208 mthode de cration de cration du programme 207 Cl de licence 47 Clignotement de la LED FORCE 393 Code source de blocs existant insertion dans une source LIST 286 Cohrence des blocs 315 Cohrence d'une source LIST vrification 289 Combinaisons de touches accs l'aide en ligne 146 bascule entre les diffrents types de fentres 147 commandes de menu 142 dplacement du curseur 144, 145 slection de texte 146 Commande par contact 546 Commande squentielle 214 Comment viter des erreurs lors de l'appel de blocs 321 Commentaires de blocs 244 de rseaux 243, 244 Commentaires de blocs saisie 245 Commentaires de rseaux saisie 245 Communication par donnes globales 629 Comparaison de blocs 223, 224, 225 Comparaison dtaille 225 Comparer partenaire en/hors ligne 223 compatibilit 629 Compatibilit 177, 629, 630, 632 projets et bibliothques de la version 2 177, 629

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

695

Index

Compatibilit esclaves DP 177 Compatibilit esclaves DP 630 Compatibilit esclave DP 632 Compatibilit esclave DP 632 Compilation 420, 421 Compilation objets 420 source LIST 290 Compilation et chargement 418 Compilation et chargement d'objets 418 Complexes types de donnes 593 Composants pris en charge et fonctionnalits 371 Composants SIMATIC pour la configuration des messages 327 Compression 429 Compression contenu de la mmoire d'une CPU S7 430 Compteur zone de mmoire rmanente 579 Compteur dheures de fonctionnement 688 Compteurs 304, 305 Compteurs tableau d'affectation 304 Compteurs tableau d'affectation 304 Compteurs tableau d'affectation 305 Compteurs limites suprieures pour la saisie 440 Concept 323 Concept concept de signalisation 323 Concept d'utilisation 129 Conception d'une solution d'automatisation 59 Conception d'une solution d'automatisation subdivision du processus en tches et zones 60 Conception d'une solution d'automatisation description des diffrentes zones fonctionnelles 63 Conception d'une solution d'automatisation zones fonctionnelles 63 Conception d'une solution d'automatisation liste des entres sorties et entres/sorties 65 Conception d'une solution d'automatisation entres sorties entres/sorties listes 65 Conception d'une solution d'automatisation cration du diagramme d'entres/sorties pour les moteurs 66 Conception d'une solution d'automatisation cration du diagramme d'entres/sorties pour les soupapes 67 Conception d'une solution d'automatisation

dfinition des exigences en matire de scurit 68 Conception d'une solution d'automatisation description des lments de signalisation et de commande 69 Conception d'une solution d'automatisation cration du schma de configuration 70 Concet de signalisation principesSignalisation concept 323 Conditions de dclenchement 446 Conditions d'installation 48 Conditions et remarques pour le chargement 418 Conditions pralables au chargement 407 Conditions requises pour l'archivage 536 Configuration signalisation derreurs systme 369 Configuration d'attributs de contrle-commande avec LIST CONT LOG 389 Configuration de messages transfert vers WinCC 364 Configuration de variables pour le contrle-commande 387 Configuration des attributs de contrle-commande au moyen de la table des mnmoniques 390 Configuration des messages composants SIMATIC 327 Configuration des messages PCS7 (pour la CPU) 350 Configuration des messages PCS7 (pour tout le projet) 342 Configuration du matriel 543 Configuration gnrale 368 Configuration gnrale messages de CPU 368 Configuration matrielle 543 configuration prvue-configuration relle 102 Conflits d'horodatage 317 Conseils et astuces 543, 544, 545, 547 CONT 208, 209, 210 affichage d'informations sur le bloc 307 CONT branchements interdits 250 Contenu des piles l'tat d'arrt 484 Contrle des modules configuration prvue-configuration relle OB de mise en route 103 Contrle des temps de cycle pour viter les erreurs d'horloge 485 Contrle-commande de variables 387 Conventions pour l'attribution de noms pour les donnes de configuration 387 Conversion 629 Conversion projet avec communication par donnes globales 629 Conversion d'un ancine projet de version 2 627 Convertir 629 Copie ou dplacement de tables de variables 435 Correction des interfaces dans une FC
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

696

Index

un FB ou un UDT 320 Correction d'erreur 494 COUNTER 605 type de paramtre 605 Coupure secteur 554, 555 Court-circuit 250 CPU effacement gnral 427 simulation 465 CPU (Central Processing Unit) tats de fonctionnement 549, 550, 551 CPU 31xC 173, 174, 175 CREAT_DB 564 Cration 284 objets 133 Cration diagramme d'entres/sorties pour les moteurs 66 diagramme d'entres/sorties pour les soupapes 67 schma de configuration 70 Cration de programmes utilisateur 233 Cration donnes de rfrence 309 Cration table de variables 433 Cration tableaux 597 Cration tableaux 597 Cration tableaux 599 Cration tableaux 599 Cration tableaux 599 Cration tableaux 599 Cration structure 600 Cration structure 600 Cration structure 600 Cration structure 600 Cration structure 600 Cration structure 600 Cration structure 600 Cration structure 600 Cration structure 601 Cration structure 601

Cration type de donnes utilisateur 602 Cration type de donnes utilisateur 602 Cration type de donnes utilisateur 603 Cration type de donnes utilisateur 603 Cration type de donnes utilisateur 603 Cration FB pour le moteur 642 Cration FB pour le moteur 642 Cration FB pour le moteur 643 Cration FB pour le moteur 643 Cration FB pour le moteur 644 Cration FB pour le moteur 644 Cration FB pour le moteur 645 Cration FB pour le moteur 645 Cration FC pour les soupapes 647 Cration FC pour les soupapes 647 Cration FC pour les soupapes 648 Cration FC pour les soupapes 648 Cration OB1 pour l'exemple d'un processus de mlange industriel 649 Cration - projet 158 Cration projet marche suivre gnraleCration d'un projet 158 Cration de bibliothques de texte utilisateur 359 Cration de bibliothques de textes utilisateur 359 Cration de textes de message dans une autre langue dans la 'Signalisation d'erreurs systme' 385 Cration du schma de configuration dans l'exemple d'un processus de mlange industriel 70 Cration d'un bloc de donnes dans la mmoire de chargement 174 Cration d'un programme marche suivre gnrale 23 Cration et manipulation d'objets 133 CRST/WRST 553, 554, 555 CTRL_RTM 689 Cycle 73, 74, 75, 82, 83, 84, 85, 86 Cyclique traitement du programme 78

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

697

Index

D
DATE AND TIME (date et heure) format 594 plage 594, 595 DATE_AND_TIME 593 DB 94, 95, 283, 297, 298 DB d'tat de diagnostic 521 DCB 591 de la mmoire utilisateur 429 Dbordement de la pile L 573 Dcalage de phase 101 Dclaration de donnes locales 619 Dclaration de paramtres FC pour l'exemple d'un processus de mlange industriel 647 Dclaration de variables locales FB pour l'exemple d'un processus de mlange industriel 642 OB pour l'exemple d'un processus de mlange industriel 649 Dclarations de variables dans une source LIST exemples 291 Dclenchement alarme temporise 99 Dclenchement alarme de processus 101 Dclenchement du traitement du programme par alarme 73 Dfaillance d'unit (OB86) 509 Dfaillante tat de fonctionnement de la CPU 549 Dfauts 467 Dfauts localisation 467 Dfinition affichage de l'tat du programme 462 blocs de code 638 comportement en fonctionnement 683 de mnmoniques lors de la saisie du programme 199 exigences en matire de scurit 68 mode de fonctionnement pour le test 463 Dfinition de la mise en page du texte source 285 Dfinition de la priorit de l'oprande (symbolique/absolu) 189 Dfinition de l'affichage pour des messages de CPU et des messages de diagnostic personnaliss 365 Dfinition des points de dclenchement 446 Dfinition du dclenchement pour la visualisation de variables 446 pour le forage de variables 449 Demande de maintenance 468 Dmarrage 549, 553, 554, 555, 556, 557, 558 alarme cyclique 100, 101 alarme horaire 97 STEP 7 109 Dmarrage installation de STEP 7 50

Dmarrage STEP 7 avec des paramtres initiaux prdfinis 110 Dmarrage automatique 553 Dmarrage interruption 553 Dmarrage manuel 553 Dmarrage chaud 553, 554, 555, 556, 557, 558 Dmarrage froid 549 Dmasquage vnements de dclenchement 105 Dmasquage d'vnements d'erreurs synchrones exemple 672 Dplacer un objet 133 Dsactivation alarme horaire 97 Dsarchivage marche suivre 536 Description des diffrentes zones fonctionnelles 63 des lments de signalisation et de commande requis 69 exigences en matire de scurit pour l'exemple d'un processus de mlange industriel 68 Description des diffrentes tches et zones pour l'exemple de mlangeur industriel 63 Description du poste d'opration pour l'exemple d'un processus de mlange industriel 69 Dsinstallation de la licence d'utilisation 47 STEP 7 55 Dtection d'erreur utilisation d'OB d'erreur en raction aux erreurs 105 Dtection d'erreurs types d'OB OB81 497 Dtermination du participant au sous-rseau 393 Diagnostic 467, 468 Diagnostic du matriel 468 Diagnostic du matriel vue de diagnostic dtaille 474 Diagnostic systme 490 Diagramme de sorties pour les moteurs cration 66 Diagramme de sorties pour les soupapes cration 67 Diagramme d'entres pour les moteurs cration 66 Diagramme d'entres pour les soupapes cration 67 Diffrence entre l'enregistrement et le chargement de blocs 409 Diffrence entre paramtrage nominal et effectif 553 Diffrences entre forage de variables et forage permanent de variables 454 Diffrences entre l'attribution de numros de message pour tout le projet et pour la CPU 335

698

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Index

DINT type de donnes 586 DIS_AIRT 107 DIS_IRT 107 Disposition botes 252, 253 Disposition des fentres enregistrement 141 modification 140 restauration 141 DMSK_FLT 107 DOCPRO 531 Documentation des lments constituants du projet impression 531 Documentation du projet impression 531 Documentation d'un projet 23, 113, 114 Documentation d'un projet entier impression 531 Donnes de configuration 387, 388 Donnes de configuration conditions requises pour le transfert 364 transfert 364 Donnes de configuration conditions pralables au transfert 392 Donnes de configuration transfert 392 Donnes de diagnostic sur les modules 487 Donnes de priphrie 681 Donnes de rfrence 299 Donnes de rfrence application 299 Donnes de rfrence affichage 308 Donnes de rfrence affichage 308 Donnes de rfrence affichage 308 Donnes de rfrence gnration 309 Donnes de rfrence cration 309 Donnes de rfrence affichage 309 Donnes de rfrence affichage 309 Donnes d'tat du diagnostic 487 Donnes globales communication 629 Donnes systme 488 Donnes utiles 681 Dossier Blocs 217 Dossier Blocs 123, 217 Dossier Sources 127 Dossiers des schmas de l'installation impression 531 Double mot (DWORD) plage 584 type de donnes 583 DP/PA-Link (IM 157) 481
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

DPNRM_DG 683 DPRD_DAT 683 DPWR_DAT 683 Droit d'accs 398 Droits d'accs aux blocs ou aux sources 234 Droits d'utilisateur sous MS Windows 2000/XP 55 Droits d'utilisateur sous MS Windows 7 56 Dure d'interruption 553 DWORD type de donnes 591

E
Echange de donnes diffrent tats de fonctionnement 561 Ecriture dans un bloc de donnes dans la mmoire de chargement 174 Editeur prslections pour LIST 234 Editeur de langage dmarrage 208 Editeur de programmes 223, 231 Edition 360, 361 Edition dans la table des mnmoniques 199 source S7 284 Edition bibliothques de textes systme 361 Edition de blocs chargs dans votre PG/PC 425 Edition de blocs chargs lorsque le programme utilisateur se trouve dans votre PG/PC 426 Edition de blocs chargs lorsque le programme utilisateur ne se trouve pas dans votre PG/PC 426 Edition de 360 Edition de mnmoniques dans plusieurs rseaux 544 Edition de tables de mnmoniques 206 Edition de zones dans des tables de mnmoniques 206 Effacement blocs S7 sur le systme cible 428 mmoire de chargement/travail 427 Effacement gnral 552 Effacement gnral CPU 427 Effacer des objets STEP 7 133 Effacer des variables additionnelles 356 Elments constituants du projet impression 531 Elments constituants d'un message 328 Elments CONT reprsentation 247 Elments dans les botes de dialogue 131 Elments de commande description dans l'exemple d'un processus de mlange industriel 69

699

Index

Elments de programme insertion 235 Elments de signalisation description 69 Elments LOG reprsentation 251 EN / ENO connexion 253 EN_AIRT 107 EN_IRT 107 Enregistrement accs 682 blocs de code 257 blocs de donnes 268 de blocs chargs dans l'EPROM intgre 417 disposition des fentres 141 d'une source LIST 289 criture 681 lecture 681, 682 possibilits 535 table de variables 435 Enregistrer 175 Enregistrer sur micro-carte mmoire 175 Entres mmoire image 568 Entres listes 65 tableau d'affectation 304 Entres/sorties listes 65 EPROM 417, 579 EPROM enregistrement de blocs chargs 417 Erreur durant l'installation 51 Erreur d'accs la priphrie (OB122) 512 Erreur d'accs la priphrie lors de la mise jour de la mmoire image 568 Erreur d'alimentation (OB81) 504 Erreur de communication (OB87) 510 Erreur de programmation (OB121) 511 Erreur de redondance de CPU (OB72) 502 Erreur de redondance de priphrie (OB70) 501 Erreur de temps (OB80) 503 Erreur dtecte exemples de programmes valeurs de remplacement 499 Erreur dexcution du programme (OB85) 508 Erreur matrielle CPU (OB84) 507 Erreurs 492 Erreurs traiter 492 Erreurs asynchrones OB81 494 utilisation d'OB en raction aux erreurs 105 Erreurs dtectables 494 Erreurs lors de l'appel de blocs viter 321

Erreurs synchrones utilisation d'OB en raction aux erreurs 105 Erreurs systmes configurer une signalisation derreurs systme 369 Esclave DP avec fichiers GSD manquants ou errons 632 Esclave Dummy 632 Esclaves DP 177, 178, 630 Esclaves norms DP 683 Etablissement d'une liaison en ligne depuis la fentre en ligne du projet 394 Etablissement liaison en ligne depuis la fentre "Partenaires accessibles" 393 liaisons en ligne 393 Etablissement d'une liaison la CPU 444, 445 Etablissement d'une liaison la CPU 444 Etablissement d'une liaison en ligne depuis la fentre en ligne du projet 394 Etat d'arrt contenu des piles 484 Etat de diagnostic PROFIBUS 513, 514, 515 PROFINET 517 Etat de fonctionnement 460 Etat de fonctionnement affichage et modification 400 Etat de fonctionnement "Arrt" 549 Etat de fonctionnement "Marche" 549 Etat de fonctionnement "Attente" 549 Etat de fonctionnement "Arrt" 550 Etat de fonctionnement "Mise en route" 550 Etat de fonctionnement "Arrt" 550 Etat de fonctionnement "Attente" 550 Etat de fonctionnement "Arrt" 551 Etat de fonctionnement "Marche" 551 Etat de fonctionnement "Arrt" 551 Etat de fonctionnement "Marche" 551 Etat de fonctionnement "Marche" 551 Etat de fonctionnement "Attente" 551 Etat de fonctionnement "Arrt" 551 Etat de fonctionnement "Arrt" 551

700

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Index

Etat de fonctionnement "Arrt" (STOP) 552 Etat de fonctionnement "Mise en route" 559 Etat de fonctionnement "Attente" 562 Etat de fonctionnement "Marche" (RUN) 561 Etat de l'heure 401 Etat du module 467, 472, 479, 481 Etat du module affichage 468 Etat du module affichage 468 Etat du module appel 473 Etat du module appel 473 Etat du module appel 473 Etat du module possibilits d'appel 475 Etat du module fonctions d'information 476 Etat du module appel 491 Etat du programme dfinition de l'affichage 462 Etat du programme de blocs de donnes 461 Etats de fonctionnement priorit 551 Etats de fonctionnement de la CPU 549 Etats de fonctionnement et changement d'tat de fonctionnement 549 Evnement 82 Evnement de diagnostic 576 Evnements asynchrones 82 Evnements asynchrones inhibition et validation 677 Evnements asynchrones traitement diffr 678 Evnements d'alarme inhibition et validation 677 traitement diffr 678 Evnements de dclenchement masquage 107 OB de mise en route 102 retardement 105 Evnements d'erreurs synchrones masquage et dmasquage 672 Exemple FB dans une source LIST 295 FC dans une source LIST 293 format de nombres virgule flottante 589 inhibition et validation d'vnements d'alarme et d'vnements asynchrones (SFC 39 et 40) 677 masquage et dmasquage d'vnements d'erreurs synchrones 672 OB dans une source LIST 292 saisie d'oprandes dans une table de variables 441 saisie dune plage doprandes continue 441 traitement diffr d'vnements d'alarme et d'vnements asynchrones (SFC 41 et 42) 678
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

UDT dans une source LIST 298 Exemple de programme processus de mlange industriel 635 Exemple de recherche d'occurrences 311 Exemple pour un DB 125 avec un esclave DP 516 Exemples dclarations de variables dans une source LIST 291 saisie de valeurs de forage/forage permanent 442 Exemples - Bloc de donnes 520 Exemples - Bloc de donnes DB PROFINET IOExemple de requte DB PROFINET IO 520 Exemples - Blocs de donnes 516, 526 Exemples - Blocs de donnes DB PROFIBUS DPExemple de requte DB PROFIBUS DP 516 Exemples - Blocs de donnes DB d'tat de diagnostic 526 Exemples - source LIST 297 Exemples utilisation de diffrentes alarmes horaires 655 Exemples utilisation de diffrentes alarmes temporises 665 Exemples de blocs de donnes DB 126 avec un systme IO 100 et des appareils 520 Exemples de programme exemple de mlangeur industriel description des diffrentes zones et tches 63 exemple d'un processus de mlange industriel description du poste d'opration 69 insertion de valeurs de remplacement 499 Exemples de programmes exemple d'un processus de mlange industriel cration du schma de configuration 70 dfinition des exigences en matire de scurit 68 description des diffrentes tches et zones cration d'un diagramme d'entres/sorties 65 subdivision d'un processus en tches 60 FB pour l'exemple d'un processus de mlange industriel 642 FC pour l'exemple d'un processus de mlange industriel 647 OB pour l'exemple d'un processus de mlange industriel 649 raction une dfaillance de pile 494 valeurs de remplacement 499 Exemples de projets et de programmes 633 Exemples LIST 297 Exigences en matire de scurit dfinition pour l'exemple d'un processus de mlange industriel 68 Exploitation paramtre de sortie RET_VAL 493 Exportation source 288 tables de mnmoniques 203 Extension d'esclaves DP (crs avec des versions antrieures de STEP 7) 177, 630

701

Index

F
Facteur de correction 401 FB 88, 89, 90, 91, 593 FB tableau du format 281 FB correction de l'interface 320 FB dans une source LIST exemple 295 FC 87, 88 FC tableau du format 282 FC correction de l'interface 320 FC dans une source LIST exemple 293, 294 FC12 658 Fentre "Partenaires accessibles" 393 Fentre de dclaration des variables saisie de multi-instances 240 Fentre de projet 150 Fentres bascule entre les diffrents types 147 FEPROM 579 Fichier *.awl 175 Fichier *.k7e 175 Fichier *.k7p 175 Fichier *.sdf 175 Fichier carte mmoire 174 Fichier de type 177, 630 Fichier d'exportation S7 175 Fichier GSD esclaves DP crs avec des versions antrieures de STEP 7 177, 630 fichiers GSD manquants ou erron 632 Fichiers source dans GRAPH 214 Filtres pour les mnmoniques 200 Fonction (FC) 72, 87 Fonction (FC) domaine d'application 87 Fonction (FC) cration exemple de FC pour l'exemple d'un processus de mlange industriel 647 Fonction de recherche d'erreurs dans la section des instructions 246 Fonctionnalits de "Signalisation d'erreurs systme" 371 Fonctionnement avec sauvegarde zones de mmoire rmanentes 581 Fonctionnement sans sauvegarde zones de mmoire rmanentes 581 Fonctions (FC) 87 Fonctions dhorodatage 688 Fonctions d'information 479 Fonctions d'information de la vue du diagnostic 474 Fonctions d'information de la vue rapide 471

Fonctions d'information de l'tat du module 476 Fonctions systme 95 Fonctions systme types 95 Fonctions systme SFC 72 Forage 448 Forage marche suivre 432 Forage variables 449 Forage variables 449 Forage variables 450 Forage variables 450 Forage variables 450 Forage variables 450 Forage variables 450 Forage variables 450 Forage variables 450 Forage de variables 448 Introduction 448 Forage de variables depuis l'diteur de programmes 546 Forage permanent de variables 452 Introduction 452 Forage permanent de variables mesures de scurit 451 Format BLOCK 606 COUNTER 606 TIMER 606 type de donnes DATE_AND_TIME (date et heure) 594 type de donnes DINT (nombres entiers de 32 bits) 586 type de donnes INT (nombres entiers de 16 bits) 586 type de donnes Paramtre ANY 612, 613, 614 type de donnes REAL (nombres virgule flottante) 587 type de donnes S5TIME (dure) 592 type de donness Paramtre POINTER 606 types de donnes WORD et DWORD pour les nombres dcimaux cods binaire 591 types de paramtre BLOCK COUNTER et TIMER 606 Format DCB 592 Format de page 532 Format horaire 688 Format pointeur 605, 607 Formats 280 Formats blocs dans une source LIST 280 Formats de fichier pour l'importation/exportation d'une table des mnmoniques 203
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

702

Index

G
Gnration donnes de rfrence 309 d'une source LIST partir de blocs 287 Gnration de blocs pour la signalisation d'erreurs systme 377 Gnrer 377 blocs pour la signalisation d'erreurs systme 377 Gestion de textes utilisateur dont la police de langue n'est pas installe 169 Gestion multilingue des textes 164 GRAPH 209, 214 Graphe d'tat 215 Guide de STEP 7 23

H
HALT 460 Heure modification 99 Heure rglage 688 Heure lecture 688 Heure (TIME OF DAY) plage 584 Heure d'hiver 401 Heure du module 401 Heure locale 401 Hirarchie d'appel dans le programme utilisateur 80 Hirarchie des objets constitution 134 Hirarchie d'objets 113 HiGraph 209, 215, 216 Historique des sessions 140 Horloge paramtrage 688 synchronisation 688 Horloges CPU avec rglage des zones horaires 401 Horodatage 402 Horodatage dans les blocs de code 318 dans les blocs de donnes d'instance 319 dans les blocs de donnes globaux 319 dans les UDT et DB repris d'UDT 320 Horodatage comme proprit de bloc 317

I
Icne de modules inconnus 182 Icnes de diagnostic dans la vue en ligne 469 Icnes des objets dans SIMATIC Manager 113 Identification de mnmoniques 188 Identification du participant directement connect la PG 393 IM 157 (DP/PA-Link) 481 Importation

source 287 source externe 161 table des mnmoniques 203 Importation des textes d'erreur et d'aide 529 Impression blocs 531 contenu de la mmoire tampon de diagnostic 531 documentation du projet 531 donnes de rfrence 531 lments constituants du projet 531 table de configuration 531 table des donnes globales 531 table des mnmoniques 531 table des variables 531 Imprimante configuration 532 fonctions 532 IN (dclaration de variables) 619 IN_OUT (dclaration de variables) 619 Incompatibilit 629 Indicatif dans une bibliothque de textes 356 Indirect paramtrage 684, 685 Informations de maintenance 468 Informations mnmonique 185 Informations relatives la scurit 573 dbordement de la pile L 573 Informations sur la protection d'accs 151 Informations sur le fichier-journal 169 Informations sur le test en mode pas pas et sur les points d'arrt 458 Informations sur l'tat de fonctionnement "Attente" 460 Inhibition d'vnements d'alarme et d'vnements asynchrones exemple 677 Insertion code source de blocs existant dans une source LIST 286 contenu d'autres source LIST 285 d'une plage d'oprandes continue dans une table de variables 438 d'une source externe 286 modles de blocs dans une source LIST 285 oprandes ou mnmoniques dans une table de variables 436 valeurs de forage 438 Insertion de lignes de commentaire 441 Insertion d'une source externe 286 Insertion d'une station 160 Insertion d'une variable dans un message 353 Insertion gnrale programme S7/M7 161 valeurs de remplacement en cas d'erreur dtecte 499 Installation de STEP 7 49 Installation de Automation License Manager 46 Installation de STEP 7 48 Instance 91 Instruction LIST

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

703

Index

rgles pour la saisie 272 Instructions saisie marche suivre 242 Instructions CONT rgles pour la saisie 248 Instructions dans la vue d'ensemble des lments de programme 235 Instructions LIST rgles pour la saisie 254 Instructions LOG rgles pour la saisie 252 INT type de donnes 586 Interface homme/machine 41 Interface MPI 48 Interface PG/PC 53 Interface PG/PC paramtrage 53 Interface PG/PC paramtrage 53 Interface PG/PC paramtrage 53 Interface PG/PC paramtrage 53 Interface utilisateur 130 Interrogation de l'alarme horaire 97 Intervalles dans la mmoire utilisateur (RAM) 429 Introduction au forage permanent de variables 452 Introduction au test avec des tables de variables 431 Introduction aux types de donnes et de paramtre 583

L
Langage de programmation CFC 216 choix 208 CONT (schma contacts) 210 dfinition 208 GRAPH (commande squentielle) 214 HiGraph (graphe d'tat) 215 LOG (logigramme) 211 SCL 213 Langage de programmation LIST (liste d'instructions) 212 Langages de programmation 28 Langue daffichage 357 Langue de visuel 357 Largeur de zone d'oprande 247, 251 Lecture d'un bloc de donnes dans la mmoire de chargement 174 Lecture et rglage de l'heure et de l'tat de l'heure 401 Liaison en ligne 394 tablissement d'une liaison en ligne depuis la fentre en ligne du projet 394 Liaison en ligne tablissement depuis la fentre "Partenaires accessibles" 393 Liaisons en ligne tablissement 393 Licence d'utilisation avec Automation License Manager 43 License 43, 44, 45 License Key 43 License Manager 43, 44 Ligne de commentaire 436 Lignes de commentaire insertion 441 Lignes d'en-tte et de bas de page 532 Limites suprieures pour la saisie de compteurs 440 Limites suprieures pour la saisie de temporisations 439 LIST 208, 209, 212 affichage d'informations sur le bloc 307 LIST saisie de blocs 242 LIST paramtres 254 Liste des entres sorties et entres/sorties 65 Liste des rfrences croise 301 Liste d'tat systme contenu 487 lecture 487 Liste d'tat systme (SZL) 487 Liste d'instructions 212 Listes de textes vor Listes de textes destins l'utilisateur 357 Listes de textes destins l'utilisateur 357 Localisation de dfauts 467 LOG 211 affichage d'informations sur le bloc 307

J
Jeu de paramtres accder 684 Journal des modifications 151, 153

K
k7e 175 k7p 175

704

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Index

Logiciel de base STEP 7 28 Logiciel optionnel 465, 539, 540 Logiciel optionnel pour la programmation M7 539 Logiciels excutables 39 Logigramme 211 Longueur des blocs affichage 222

M
M7-300/400 systmes dexploitation 537 Maintenance ncessaire 470 Maintenance requise 468, 470 Majuscules/minuscules pour les mnmoniques 201 Make (voir Compilation et chargement d'objets) 420 Make (voir Vrifier la Cohrence des blocs) 315 Manipulation objets 133, 134, 135, 136, 137, 138 Marche activits de la CPU 559 tat de fonctionnement de la CPU 549 Marche (RUN) 561 Marche suivre pour limpression 532 Marche suivre affichage et modification de l'tat de fonctionnement 400 pour dterminer la cause d'un passage l'tat d'arrt 483 pour la cration de blocs de code 233 pour la cration et louverture d'une table de variables 433 pour la saisie d'instructions 242 pour la visualisation et le forage 432 Marche suivre pour larchivage/le dsarchivage 536 Marche suivre pour les systmes M7 537 Marche suivre pour les systmes M7 537 Marche suivre pour l'installation de STEP 7 50 Masquage vnements de dclenchement 105 Masquage d'vnements d'erreurs synchrones exemple 672 Masque (voir compilation et chargement d'objets) 418 Masquer des textes dans certaines langues 172 Mmento zone de mmoire rmanente 579 Mmentos tableau d'affectation 304 Mmentos de cadence 690 Mmoire 582 Mmoire configurable 582 Mmoire circulante (mmoire tampon de diagnostic) 576 Mmoire de chargement 410, 563, 564 Mmoire de chargement

enregistrement de DB non significatifs pour l'excution 564 Mmoire de chargement et mmoire de travail 564 Mmoire de chargement et mmoire de travail dans la CPU 410 Mmoire de chargement/travail effacement 427 Mmoire de travail 410, 411, 563, 564, 565 Mmoire image 82 entres/sorties 568 Mmoire image actualiser 85 Mmoire image effacer 102 Mmoire image du processus 569, 570 Mmoire image partielle mise jour par le systme 570 mise jour par SFC 568 Mmoire rmanente des CPU S7-300 579 des CPU S7-400 581 Mmoire systme 563 Mmoire tampon de diagnostic 576, 577, 578 contenu 576, 577, 578 dfinition 576 exploitation 576 lecture 578 Mmoire tampon de diagnostic lecture 486 Mmoire utilisateur compression 429 Mmoire virtuelle paramtrage 547 Mmoire vive non volatile 579, 580 Message lments constituants 328 exemple 328 sur bloc 337, 345 sur mnmonique pour la CPU 351 sur mnmonique pour tout le projet 343 Message de diagnostic 490 Message SCAN 343, 351 Message sur bloc 338 Message sur mnmonique (pour tout le projet) affectation et dition 343 Messages textes tirs de bibliothques 356 Messages cration pour tout le projet 338 Messages de CPU 365, 367, 368 Messages de CPU taille de l'archive 365 Messages de CPU affichage 367 Messages de CPU configuration 368 Messages de CPU et messages de diagnostic affichage 365 Messages de diagnostic 513

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

705

Index

Messages de diagnostic personnaliss affichage 365 cration et dition 344, 352 Messages sur bloc affectation et dition 337, 345 cration pour la CPU 346 diter pour tout le projet 341 dition pour la CPU 349 Messages sur mnmonique (pour tout le projet) affectation la table des mnmoniques 343 signaux autoriss 343 Messages sur mnmonique pour la CPU affectation la table des mnmoniques 351 signaux autoriss 351 Mesures prendre dans le programme pour traiter les erreurs 492 Mesures de scurit pour le forage permanent de variables 451 Mthodes de conception conception d'un programme structur 638 Micro-carte mmoire (MMC) 174, 175 Micro-carte mmoire (MMC) Enregistrement des donnes du proje 175 Microprogramme mise jour 403, 413 Mise jour 403, 405, 413, 414, 686, 687 mmoire image 568 Mise jour microprogramme (systme d'exploitation) de modules en ligne 403 Mise jour microprogramme (systme d'exploitation) de modules en ligne 413 Mise jour microprogramme (systme d'exploitation) de modules hors ligne 686 Mise jour du microprogramme 403, 405, 413, 414 Mise jour du systme d'exploitation (voir mise jour en ligne du microprogramme de modules) 403, 413 Mise jour en ligne du microprogramme de modules 403, 413 Mise jour hors ligne du microprogramme de modules 686 Mise jour hors ligne du systme d'exploitation de modules 686 Mise en page CONT 247 Mise en page LOG 251 Mise en place protection d'accs 151, 152 Mise en place d'une protection d'accs 151 Mise en route activits de la CPU 553 tat de fonctionnement de la CPU 549 MMC 173, 174, 175 Mnmonique 544 Mnmonique affecter 639 Mnmoniques 201, 202

Mnmoniques dfinition lors de la saisie du programme 199 filtres 200 globaux 187 locaux 187 saisie 200 tri 200 Mnmoniques majuscules/minuscules 201 Mnmoniques majuscules/minuscules 201 Mnmoniques majuscules/minuscules 202 Mnmoniques dans la structure du programme 302 Mnmoniques insertion dans une table de variables 436 Mnmoniques globaux saisie dans la table des mnmoniques 200 saisie dans un programme 243 saisie individuelle dans les botes de dialogue 199 Mnmoniques globaux et mnmoniques locaux 187 Mnmoniques incomplets ou non univoques dans la table des mnmoniques 197 Mnmoniques manquants 307 Mnmoniques manquants affichage 308 Mode de fonctionnement dfinition pour le test 463 Mode de substitution 246 Mode processus 85, 87 Mode redondant 405, 414 Modles de blocs insertion dans une source LIST 285 Modification tat de fonctionnement 400 valeurs dans la vue des donnes de blocs de donnes 267 Modification de la disposition des fentres 140 Modification de l'attribution des numros de message d'un projet 336 Modification des attributs de contrle-commande avec CFC 391 Modification dinterfaces 256 Modification du comportement et des proprits des modules 684 Module adresse de dbut 679 simulation 465 Module de signaux simulation 465 Modules 543 Modules remplacement dans la table de configuration 543 Modules paramtrage 684 Modules de signaux aptes aux alarmes de processus paramtrage 101, 102 Modules inconnus 182 Modules programmables 684 Mot (WORD)
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

706

Index

plage 584 type de donnes 583 Mot de passe 397, 398 Moteurs cration du diagramme d'entres/sorties 66 MPI 403, 404, 413 MSK_FLT 107 Multi-instance 88, 91 Multi-instances rgles 240 saisie dans la fentre de dclaration des variables 240 utilisation 239 Multiprojets avec protection d'accs 151

N
Navigateur 139 Nombre virgule flottante lments de base 587 exemple 587, 588, 589 paramtres 587 zones de composants 587 Nombre entier (16 bits) format 586 Nombre entier (16 bits) (INT) plage 584 Nombre entier (32 bits) format 586 Nombre entier (32 bits) (DINT) plage 584 Nombre rel plage 584 type de donnes 584 Nombres virgule flottante format 587, 588, 589 Nombres dcimaux cods binaire (DCB) 591 Non-Retain 221 Nouveauts dans STEP 7 V5.5 33 Numros de messages 335 NVRAM 579

O
OB 73, 74, 75, 76, 78 OB tableau du format 280 OB 100 553 OB 101 553 OB 102 553 OB 122 512 OB 72 502 OB d'alarme 97 paramtrage 98 Utilisation 97 OB d'alarme dsactivation 76 paramtrage 75 OB d'alarme de dbrochage/enfichage 506 OB d'alarme de diagnostic 505, 507 OB dans une source LIST

exemple 292 OB d'arrire-plan priorit 104 programmation 105 OB de dfaillance d'unit 509 OB de dmarrage 553 OB de mise en route 102 OB de mise en route vnements de dclenchement 102 OB de mise en route contrle des modules 104 OB de mise en route contrle des modules 104 OB de mise en route OB 100/OB 101/OB 1002 553 OB d'erreur 378, 494, 495 OB d'erreur types d'OB OB121 et OB122 105 OB70 et OB72 105 OB80 OB87 105 utilisation d'OB d'erreur en raction aux vnements 105 OB d'erreur en raction la dtection d'une erreur 494 OB d'erreur d'alimentation 504 OB d'erreur de communication 510 OB d'erreur de programmation 511 OB d'erreur de temps 503 OB derreur dexcution du programme 508 OB derreur gnrs (Signalisation d'erreurs systme) 378 OB d'erreur matrielle CPU 507 OB derreursignalisation derreur systme 378 OB1 670 OB1 et OB80 663 OB10 660 OB100 102, 103 OB101 102, 103 OB102 103 OB121 511 OB121 et OB122 105 OB20 668 OB20 OB23 99 OB40 OB47 101 OB70 501 OB70 OB87 105 OB80 503 OB81 504 OB82 505 OB83 506 OB84 507 OB85 508, 568 OB86 509 OB87 510 OB90 104

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

707

Index

Objet 420 couper - copier - coller 133 crer 133, 134 dplacer 137 effacer 133 hirarchie 134, 135 manipuler 133 ouvrir 134, 135 proprits 134, 135, 136 renommer 133 Objet slection 139 Objet slection 139 Objet compilation et chargement 420 Objet Bibliothque 116 Objet Dossier Blocs 123 Objet Dossier Sources 127 Objet gnrique 183 Objet Module programmable 119 Objet Programme S7/M7 121 Objet Station 117 Objets dans SIMATIC Manager 113, 114 Objets dans SIMATIC Manager hirarchie d'objets 113 Objets dans SIMATIC Manager hirarchie d'objets 113 Objets dans SIMATIC Manager projet 114 Objets mmoire configurables dans la mmoire de travail 582 Octet comme type de donnes 583 plage 584 Oprandes insertion dans une table de variables 436 rassignation 226 Oprandes et types de donnes autoriss dans la table des mnmoniques 196 Oprandes libres 306 Oprandes libres affichage 308 Optimisation de la traduction 171 Optimisation du modle traduire 170 Organisation des zones de mmoire 563 OUT (dclaration de variables) 619 Ouverture table de variables 433 table des mnmoniques 200

P
Paramtrage 269, 376 signalisation d'erreurs systme 376 Paramtrage blocs de donnes 269 interface PG/PC 53 modules de signaux aptes aux alarmes de processus 101

Paramtrage blocs de donnes 269 Paramtrage blocs de donnes 269 Paramtrage mmoire virtuelle 547 Paramtrage mmoire virtuelle 547 Paramtrage mmoire virtuelle 547 Paramtrage mmoire virtuelle 547 Paramtrage mmoire virtuelle 547 Paramtrage mmoire virtuelle 547 Paramtrage avec SFC 684 Paramtrage avec STEP 7 685 Paramtrage heure 688 Paramtrage heure 688 Paramtrage de fonctions technologiques 270 Paramtrage de la langue sous Windows 157 Paramtrage de l'interface PG/PC 53 Paramtrage indirect 684 paramtrage nominal et effectif comparaison 553 Paramtre de sortie RET_VAL exploitation 493 Paramtre IN_OUT d'un bloc fonctionnel 626 Paramtres attributs 226 pour le langage de programmation LIST 254 pour le langage de programmation LOG 251 Paramtres de la CPU "Charge du cycle due la communication" 82 Paramtres de langue de Windows 154, 155, 156 Paramtres de moduels 684 Paramtres de modules transfert avec SFC 684 transfert avec STEP 7 684 Paramtres de sortie 620 Paramtres d'entre/sortie 620 Paramtres d'entres 619 Paramtres effectifs 87 Paramtres formels 331 Paramtres pour le langage de programmation CONT 247 Paramtres systme 683 PARM_MOD 682, 685 Participant PROFInet 393 Particularits pour l'impression de l'arborescence des objets 533 Passage d'un tat de fonctionnement un autre 549 Priphrie zones de donnes 679 Priphrie dcentralise 177, 630 Pile B
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

708

Index

appels imbriqus 575 donnes enregistres dans la pile B 575 Pile des blocs 563, 575 Pile des donnes locales 563, 574 Pile des interruptions 574 Pile I description 574 utilisation par la mmoire systme 574 Pile L 573, 574 allocation de mmoire aux variables locales 573 craser 573 enregistrement de variables temporaires 88 Pile L traitement de donnes dans un appel imbriqu 575 Piles des interruptions 563 Placement botes 252 Plages d'oprandes description 567 Pointer 607 POINTER 605 type de paramtre 605 Pointeur 609, 610, 611 Pointeur zro 612, 613 Points d'arrt 458 Positionnement rapide sur les occurrences dans le programme 310 Possibilits d'appel de l'tat du module 475 Possibilits de chargement 564 Possibilits de chargement selon la mmoire de chargement 412 Possibilits de saisie de mnmoniques globaux 198 Possibilits d'enregistrement / archivage 535 Possibilits d'extension du logiciel de base STEP 7 35 Poste d'opration description 69 pour la CPU 335, 336 pour le projet 335 Pour le projet 336 Prslections diteur LIST 234 Prslections pour l'diteur de programmes CONT/LOG/LIST 234 Prsentation bibliothques standard 229 Prsentation des donnes de rfrence possibles 299 Prvention de blessures du personnel 452 Prvention de dommages matriels 452 Principes 271 Principes blocs de donnes 259 Principes programmation dans des sources LIST 271 Principes du concept de signalisation 323 Priorit alarme horaire 97 alarme temporise 99 Priorit modification 75 Priorit alarme de processus 102
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Priorit alarme de processus 102 Priorit OB d'arrire-plan 104 Priorit de l'oprande (symbolique/absolu) 189 Procd de numro de message 324 Procd de signalisation 325, 326 Procd de signalisation par bit 323, 324 Procdure compression du contenu de la mmoire d'une CPU S7 430 Processus subdivision 635 Processus subdivision 60 subdivision en tches et zones 60 subdivision en tches pour l'exemple d'un processus de mlange industriel 60 Processus de communication 85 PROFIBUS DP 177, 405, 414, 630 Profondeur d'imbrication 80 Progiciels 164 Programmation 23, 26 transmission de paramtres 88 utilisation de blocs de donnes 88 Programmation avec STEP 7 24 Programmation OB d'arrire-plan 104 Programmation conception d'un programme structur 638 Programmation FB exemple 645 Programmation d'une FC exemple 647 Programmation d'un OB1 exemple 650 Programmation linaire 79 Programmation structure 73 Programme choix de la mthode de cration 207 Programme CFC 537 Programme de mise en route 103 Programme de simulation 465 Programme M7 insertion 161, 162 Programme S7 insertion 161 Programme S7/M7 sans station ni CPU 128 Programme structur avantages 72 conception 638

709

Index

Programme utilisateur chargement 564, 565, 566 dans la mmoire de la CPU 564 lments 72 tches 71 Programmes dans une CPU 71 Programmes utilisateur chargement dans le systme cible 410 Projet 114, 164 Projet cration l'aide de l'assistant 158 Projet cration 158 Projet cration manuelle 158 Projet cration 158 Projet cration 158 Projet cration 158 Projet cration manuelle 158 Projet cration 159 Projet cration 159 Projet ouverture 163 Projet copie 163 Projet copie 163 Projet copie 163 Projet suppression 163 Projet suppression 163 Projet suppression 163 Projet recherche des logiciels requis 164 Projet avec communication par donnes globales archiver convertir renommer 629 Projet de version 2 conversion 627 Projets 177, 629 dition de projets de la version 2 177, 629 renommer 136 Projets ordre de traitrement 158 Projets archivage 534 Projets rorganisation 544 Projets comportant un grand nombre de stations en rseau 543 Projets de la version 2 177, 629

Projets et bibliothques de la version 2 dition de projets et de bibliothques de la version 2 177, 629 Projets possdant une protection d'accs 151 Projets volumineux 543 Proprit de bloc horodatage 317 Proprits de bloc 233, 277 Proprits de bloc affichage de la longueur des blocs 222 Proprits du dossier Blocs affichage de la longueurs de blocs 222 Protection d'accs 151 Protection d'accs suppression 151 Protection par mot de passe contre l'accs aux systmes cibles 397 Protection par mot de passe contre les accs aux systmes cible 397

Q
QRY_DINT 665 QRY_TINT 97, 655 Quels blocs de signalisation existe-t-il ? 329 Quels procds de signalisation existe-t-il ? 323

R
RAM 563, 579 Rapport entre les tats de fonctionnement de la CPU 549 RDSYSST 486, 487, 578 READ_CLK 688 READ_RTM 688 Real type de donnes 587 Rassignation blocs 226 oprandes 226 Recherche derreurs 467 Recherche derreurs matriel 467 Recherche d'erreurs 289 Recherche d'erreurs dans les blocs 246 Recherche d'erreurs dans une source LIST 289 Redmarrage 549, 553, 554, 555, 556, 557, 558, 560 Redmarrage interruption 553 Redmarrage interruption 553 Redmarrage manuel 553 Redmarrage manuel 553

710

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Index

Redmarrage automatique 554 Redmarrage automatique 554 Redmarrage automatique 554 Redmarrage automatique 554 Redmarrage automatique 554 Redmarrage automatique sans sauvegarde 554 Redmarrage manuel 554 Redmarrage automatique 554 Redmarrage manuel 554 Redmarrage manuel 554 Redmarrage manuel 554 Redmarrage manuel 554 Redmarrage automatique 555 Redmarrage automatique 555 Redmarrage automatique 555 Redmarrage automatique 555 Redmarrage automatique 555 Redmarrage interruption 558 Redmarrage automatique sans sauvegarde 560 Registres de bloc de donnes 575 Rglage alarme cyclique 100 alarme horaire 97, 98, 99 alarme temporise 99 Rglage alarme de processus 101 Rglage de l'heure 401 Rglage heure d't/heure d'hiver 401 Rgle pour l'importation de tables des mnmoniques 203 Rgles pour CONT 248 pour la formation de multi-instances 240 pour la saisie d'instructions CONT 248 pour la saisie d'instructions dans une source LIST 272 pour la saisie d'instructions LIST 254 pour la saisie d'instructions LOG 252 pour l'exportation de tables des mnmoniques 203 pour LOG 252 utilisation des cls de licence 47
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Rgles dans une source LIST dclaration de variables 273 dfinition d'attributs systme 274 dfinition de proprits de bloc 275 ordre des blocs 274 Rgles d'utilisation des cls de licence 47 Rinitialisation de valeurs en leur substituant leur valeur initiale 267 Relation entre la vue de dtail des variables et la section des instructions 237 Rmanence aprs une coupure secteur 553 Remarque sur l'actualisation du contenu de la fentre 399 Remarques sur les projets STEP 7 de version V2.1 avec communication par donnes globales 629 Remarques gnrales sur la saisie de mnmoniques 198 Remdier une mmoire insuffisante 429 Remplacement de modules 543 Renommer objet 134, 135, 136, 138 projet 133, 134, 135, 136, 137, 138 Renommer projets STEP 7 de version V2.1 avec communication par donnes globales 629 Rorganisation de projets et de bibliothques 544 Reprsentation 182 Reprsentation modules inconnus 182 Reprsentation mnmoniques globaux et mnmoniques locaux 188 Reprsentation lments CONT 247 Reprsentation lments LOG 251 Reprsentation des nombres bit 583 date et heure (DATE AND TIME) 594 double mot 583 mot 583 nombre entier (16 bits) 586 nombre entier (32 bits) 586 nombres virgule flottante 587, 588, 589 nombres dcimaux cods binaire (DCB) 591 octet 583 S5 TIME 592 Rseaux 211 Rseaux commentaires 243 Rseaux commentaires 243 Rseaux commentaires 243 Rseaux commentaires 243 Rseaux commentaires 243 Rseaux commentaires 243

711

Index

Rseaux titres 243 Rseaux commentaires 243 Rseaux commentaires 243 Rseaux commentaires 244 Rseaux titres 244 Rseaux titres 244 Rseaux commentaires 244 Rseaux commentaires 244 Rseaux commentaires 244 Rseaux commentaires 244 Rseaux terminaison en CONT 248 Restauration disposition des fentres 141 Reste du cyle 553 Retardement vnements de dclenchement 107 RPL_VAL 499 RUN ("Marche") 561

S
S5 TIME base de temps 592 format 592 plage 584 S5TIME type de donnes 592 S7-Routing 403, 413 Saisie commentaires de blocs et de rseaux 245 de mnmoniques 200 de mnmoniques globaux individuels dans les botes de dialogue 199 mnmoniques globaux dans un programme 243 multi-instances dans la table de dclaration des variables 240 structure de blocs de donnes associs un UDT 266 structure de donnes de blocs de donnes associs un FB (DB d'instance) 263 structure de donnes de blocs de donnes globaux 262 structure de types de donnes utilisateur (UDT) 265 Saisie dans les botes de dialogue 131 Saisie de plusieurs mnmoniques globaux dans la table des mnmoniques 200 Saisie du numro d'identification 50 Sans tension tat de fonctionnement de la CPU 549 Schma contacts 210

Schma de configuration cration 70 SCL 208, 213 sdf 175 Section des instructions 233, 237 Section des instructions en CONT 236 Section des instructions dition 241 Section des instructions structure 241 Section des instructions fonction de recherche d'erreurs 246 Slection d'objets dans les botes de dialogue 139 Slection du procd de signalisation 325 SET_CLK 97, 688 SET_CLKS 401 SET_RTM 688 SET_TINT 98, 655 Setup paramtrage de la carte mmoire 50 saisie du numro d'identification 50 systme de fichiers flash 51 SFB 95, 96, 593 SFB 20 STOP 82 SFB33 329 SFB34 329 SFB35 329 SFB36 329 SFB37 329 SFC 95, 96 utilisation 568 SFC 26 UPDAT_PI 82 SFC 27 UPDAT_PO 82 SFC 28 SET_TINT 655 SFC 29 CAN_TINT 655 SFC 30 ACT_TINT 655 SFC 31 QRY_TINT 655 SFC 32 SRT_DINT 665 SFC 33 CAN_DINT 665 SFC 34 QRY_DINT 665 SFC 44 RPL_VAL 499 SFC 46 STP 82 SFC 52 WR_USMSG 490 SFC 55 WR_PARM 684 SFC 56 WR_DPARM 684 SFC 57 PARM_MOD 684 SFC0 SET_CLK 98, 688 SFC1 READ_CLK 688 SFC100 'SET_CLKS' 401 SFC13 DPNRM_DG 683 SFC14 DPRD_DAT 683 SFC15 DPWR_DAT 683 SFC17/18 329 SFC2 SET_RTM 689 SFC20 BLKMOV 565 SFC22 CREAT_DB 564 SFC26 UPDAT_PI 568 SFC27 UPDAT_PO 568 SFC28 SET_TINT 97 SFC29 CAN_TINT 98
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

712

Index

SFC3 CTRL_RTM 688 SFC30 ACT_TINT 98 SFC31 QRY_TINT 97 SFC32 SRT_DINT 99 SFC36 MSK_FLT 105 SFC36 MSK_FLT exemple dans LIST 672 SFC36 MSK_FLT exemple dans CONT 672 SFC37 DMSK_FLT 105 SFC37 DMSK_FLT exemple dans LIST 672 SFC37 DMSK_FLT exemple dans CONT 672 SFC38 READ_ERR exemple dans CONT 672 exemple dans LIST 672 SFC39 DIS_IRT 105 SFC39 DIS_IRT exemple dans LIST 677 SFC4 READ_RTM 689 SFC40 EN_IRT 105 SFC40 EN_IRT exemple dans LIST 677 SFC41 DIS_AIRT 105 SFC41 DIS_AIRT exemple dans LIST 678 SFC42 EN_AIRT 105 SFC42 EN_AIRT exemple dans LIST 678 SFC48 SNC_RTCB 688 SFC51 RDSYSST 486, 487, 576 SFC55 WR_PARM 681 SFC56 WR_DPARM 681 SFC57 PARM_MOD 681 SFC82 173 SFC83 173 SFC84 173 Signalisation 370, 380 Signalisation derreur systme OB derreur 378 signalisation derreurs systme paramtrage 376 Signalisation d'erreurs systme 380 composants pris en charge 371 Signalisation d'erreurs systme blocs gnrs 380 SIMATIC Manager 109, 223, 225 SIMATIC Manager affichage de la longueur des blocs 222 Simples types de donnes 584 Simulation CPU ou module de signaux 465 SlotPLC 174 SNC_RTCB 688 Solution d'automatisation conception 59 conception cration du diagramme d'entres/sorties pour les moteurs 66
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

conception cration du diagramme d'entres/sorties pour les soupapes 67 conception description des lments de signalisation et de commande requis 69 conception cration du schma de configuration 70 dfinition des exigences en matire de scurit 68 Sorties mmoire image 568, 569, 570, 571, 572 Sorties listes 65 tableau d'affectation 304 Soupapes cration du diagramme d'entres/sorties 67 Source exportation 288 importation 287 Source LIST Recherche d'erreurs 289 Source LIST cration 284 insertion de modles de blocs 285 insertion du code source de blocs existant 286 insertion du contenu d'autres source LIST 285 principes de la programmation 271 rgles 274, 275, 280 vrification de la cohrence 289 Source LIST compilation 290 Source LIST compilation 290 Source LIST compilation 290 Source LIST compilation 290 Source LIST compilation 290 Source LIST exemples de dclarations de variables 291 Source LIST exemple d'OB 292 Source LIST exemple de FC 293 Source LIST exemple de FB 295 Source LIST exemple d'UDT 298 Source S7 dition 284 Sources droits d'accs 234 enregistrement d'une source LIST 289 externes 162 gnration d'une source LIST partir de blocs 287 insertion d'une source externe 286 Rgles pour la saisie d'instructions dans une source LIST 272 Sources LIST enregistrement 289

713

Index

gnration partir de blocs 287 insertion d'une source externe 286 rgles 273 SRT_DINT 99, 665 STAT (dclaration de variables) 619 Station 117 Station insertion 160 Station insertion 160 Station insertion 160 Station chargement dans la PG 424 Station PC 180 Station SIMATIC PC 180, 181 STEP 7 33, 34 lancement du logiciel 109 langages de programmation 28, 31 logiciel de base 28, 29, 31 nouveauts dans V5.5 33 STEP 7 installation 48 STEP 7 erreur durant l'installation 50 STEP 7 dsinstallation 55 STEP 7 OB d'erreur raction aux erreurs 105 STEP 7 interface utilisateur 130 STOP 83 STOP ("Arrt") 552 STP 83 STRING 593 STRUCT 593 Structure "alarme horaire" du programme utilisateur 656 cration 600 des blocs dans une source LIST 278 des blocs de code dans une source LIST 278 des blocs de donnes dans une source LIST 279 des types de donnes utilisateur dans une source LIST 279 fentre 130 fentre de dclaration des variables 238 liste des rfrences croises 301 mmoire de chargement 564, 565, 566 section des instructions 241 UDT 218 Structure arborescente 302 Structure de la fentre de l'diteur de programmes 231 Structure de l'alarme temporise du programme utilisateur 666 Structure du fichier d'exportation 167 Structure du programme 302 Structure du programme affichage 308 Structure du programme affichage 308

Structure du programme affichage 308 Structure du programme affichage 308 Structure du programme affichage 308 Structure du projet 150 Structure et lments de la table des mnmoniques 193 Structure hirarchique des bibliothques 229 Structure LIST de blocs bloc de donnes 279 Structure LIST des blocs blocs de code 278 Structures LIST de blocs types de donnes utilisateur 279 Structures LIST des blocs 278 Subdivision du processus dans l'exemple un processus de mlange industriel 60 Subdivision du processus en tches et zones 60 Subdivision d'un processus en tches pour l'exemple d'un processus de mlange industriel 60 Support de donnes 174 Suppression de la protection d'accs 151 Surveillance du processus 432 Symbolique 188 Synchronisation horloge 688 Synchronisation d'horloge 401 Syntaxe pour les blocs dans une source LIST 280 Systme cible chargement de blocs 416 Systme de fichiers flash 50 Systme d'exploitation 82, 83, 86 Systme d'exploitation tches 71 Systmes d'exploitation pour M7-300/400 541 SZL liste d'tat systme 487, 489

T
t 158 Table de dclaration des variables 233, 236 Table de dclaration des variables tche 236 Table de dclaration des variables attributs systme pour les paramtres 237 Table de dclaration des variables pour l' OB81 494 Table de dclaration des variables FB pour l'exemple d'un processus de mlange industriel 642 Table de dclaration des variables FC pour l'exemple d'un processus de mlange industriel 647 Table de dclaration des variables OB pour l'exemple d'un processus de mlange industriel 649 Table de variables copie ou dplacement 435

714

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Index

Table de variables cration et ouverture 433 enregistrer 431 utilisation 431 Table de variables enregistrement 435 Table de variables dition 436 Table de variables insertion d'oprandes ou de mnmoniques 436 Table de variables exemple 436 Table de variables exemple 436 Table de variables exemple 436 Table de variables exemple 437 Table de variables vrification de la syntaxe 437 Table de variables vrification de la syntaxe 437 Table de variables taille maximale 437 Table de variables taille maximale 437 Table de variables exemple de saisie d'oprandes 441 Table des mnmoniques 188 Structure et lments 193 Table des mnmoniques pour mnmoniques globaux 193 Table des mnmoniques oprandes autoriss 196 Table des mnmoniques types de donnes autoriss 196 Table des mnmoniques ouverture 200 Table des mnmoniques importation/exportation 203 Table des mnmoniques formats de fichier pour l'importation/exportation 203 Table des mnmoniques configuration des attributs de contrle-commande 390 Table des variables Insertion d'une plage d'oprandes continue 438 Tableau (type de donnes ARRAY) description 597 nombre de niveaux imbriqus 596 Tableau des blocs de signalisation 329 Tableau du format 283 Tableau du format DB 283 Tableau du format pour les FB 281 Tableau du format pour les FC 282 Tableau du format pour les OB 280 Tableaux cration 598 utilisation pour l'accs aux donnes 597 TEMP (dclaration de variables) 619 Temporisation (T)
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

zone de mmoire rmanente 579 Temporisations 304, 305 Temporisations tableau d'affectation 304 Temporisations limites suprieures pour la saisie 439 Temporisations (T) 690 Temps de cycle 82 Temps de cycle contrle pour viter les erreurs d'horloge 485 Temps de cycle de l'OB1 86 Temps de cycle maximal 82 Temps de cycle minimal 84, 86 Temps de rfrence (voir heure du module) 401 Temps de surveillance 104 Temps de surveillance du cycle 82 Test 545 Test avec des tables de variables 431 avec le programme de simulation (logiciel optionnel) 465 dfinition du mode de fonctionnement 463 Test l'aide de la table des variables 545 Test avec la visualisation d'tat du programme 455 Test du clignotement 394 Test en mode pas pas 458 Tester 455 avec la visualisation d'tat du programme 455 Tester avec 455 Texte source 285 Texte source dfinition de la mise en page 285 Textes destins lutilisateur 357 Textes personnaliss traduction et dition 357 TIMER 605 Type de paramtre 605 Titres de blocs 243 Titres de rseaux 243 Traduction Textes textes destins l'utilisateur 357 Traduction et dition de textes destins l'utilisateur 357 Traitement projet 163 Traitement de programme 97 dclench par alarme 97 Traitement diffr d'vnements d'alarme et d'vnements asynchrones exemple 678 Traitement du programme cyclique 73, 77, 78 dclench par alarme 73 Trajet du courant 250 Transfert des donnes de configuration dans le systme cible 364 Transfert des donnes de configuration dans le systme cible de contrle-commande 392 Transmission au paramtre IN_OUT d'un FB 626

715

Index

Transmission de paramtres enregistrement des valeurs transmises 88 types de paramtre 605 Transmission de paramtres exemple de FB pour l'exemple d'un processus de mlange industriel 642 Transmission de paramtres conception de paramtres pour un programme structur 642 Transmission d'informations de diagnostic 486 Tri dans la liste des rfrences croises 301 mnmoniques 200 Type de dclaration modifier 238 type de donnes DATE AND TIME\ Date et heure 594 Type de donnes DWORD 591 S5 TIME 592 UDT 218 utilisateur 218 WORD 591 Type de donnes structure (STRUCT) description 600 nombre de niveaux imbriqus 596 Type de donnes utilisateur cration 602, 603 Type de message 332, 333 Type de message et messages 332 Type de paramtre ANY 605 BLOCK_DB 605 BLOCK_FB 605 BLOCK_FC 605 BLOCK_SDB 605 COUNTER 605 POINTER 605 TIMER 605 Types d'alarme 73 Types de donnes FB SFB 88 Types de donnes introduction 583 Types de donnes octet 583 Types de donnes BOOL 583 Types de donnes mot 583 Types de donnes double mot 583 Types de donnes octet 584 Types de donnes mot (WORD) 584 Types de donnes double mot (DWORD) 584 Types de donnes

nombre entier (16 bits) (INT) 584 Types de donnes nombre entier (32 bits) (DINT) 584 Types de donnes nombre rel (REAL) 584 Types de donnes S5 TIME 584 Types de donnes dure (TIME) 584 Types de donnes heure (TIME OF DAY) 584 Types de donnes caractre (CHAR) 584 Types de donnes description 584 Types de donnes BOOL 584 Types de donnes BOOL 584 Types de donnes date 585 Types de donnes date 585 Types de donnes INT\ nombre entier (16 bits) 586 Types de donnes INT\ nombre entier (16 bits) 586 Types de donnes DINT\ nombre entier (32 bits) 586 Types de donnes DINT\ nombre entier (32 bits) 586 Types de donnes DINT\ nombre entier (32 bits) 586 Types de donnes REAL nombre virgule flottante 587 Types de donnes REAL nombre virgule flottante 588 Types de donnes REAL nombre virgule flottante 588 Types de donnes REAL nombre virgule flottante 588 Types de donnes REAL nombre virgule flottante 588 Types de donnes UDT 593 Types de donnes FB SFB 593 Types de donnes ARRAY 593 Types de donnes
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

716

Index

DATE_AND_TIME 593 Types de donnes dfinis par l'utilisateur 593 Types de donnes complexes 593 Types de donnes complexes 593 Types de donnes STRING 593 Types de donnes STRUCT 593 Types de donnes complexes 593 Types de donnes complexes 593 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 615 Types de donnes type de donnes Paramtre ANY paramtre 617 Types de donnes type de donnes Paramtre ANY paramtre 617 Types de donnes type de donnes Paramtre
Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

ANY paramtre 617 Types de donnes type de donnes Paramtre ANY paramtre 618 Types de donnes type de donnes Paramtre ANY paramtre 618 Types de donnes autoriss pour la transmission de paramtres 621 Types de donnes complexes 593 Types de donnes Paramtre ANY 612, 615, 616, 617, 618 Types de donnes simples 584 Types de donnes structurs 596 Types de donnes structurs structure structures d'imbrication et tableaux 596 Types de donnes structurs tableau structures d'imbrication et tableaux 596 Types de donnes structurs tableau 597 Types de donnes structurs tableau 597 Types de donnes structurs tableau 597 Types de donnes structurs tableau 597 Types de donnes structurs tableau 597 Types de donnes structurs tableau 597 Types de donnes structurs tableau 597 Types de donnes structurs tableau 597 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598 Types de donnes structurs tableau 598

717

Index

Types de donnes structurs tableau 599 Types de donnes structurs tableau 599 Types de donnes structurs tableau 599 Types de donnes structurs tableau 599 Types de donnes structurs tableau 599 Types de donnes structurs tableau 599 Types de donnes structurs tableau 599 Types de donnes structurs tableau 599 Types de donnes structurs structure 600 Types de donnes utilisateur description 602 saisie de la structure 265 Types de donnes utilisateur (UDT) 218 Types de licenses 43 Enterprise License 43 Floating License 43 Rental License 45 Trial License 43 Upgrade License 43 Types de paramtre 605 Types de paramtre introduction 583 Types de texte gestion multilingue 166

de types de donnes utilisateur pour l'accs aux donnes 602 Utilisation type de paramtre ANY 615 Utilisation ancien projet 627 Utilisation mmentos de cadence et temporisations 690 Utilisation de jeux de caractres de langues trangres 154 Utilisation de la dclaration des variables dans les blocs de code 236 Utilisation de modles de rseau 245 Utilisation de multi-instances 239 Utilisation du clavier 142 Utilisation du type de donnes Paramtre POINTER 607 Utilisation d'une micro-carte mmoire (MMC) comme support de donnes 174 Utiliser les configurations PC SIMATIC partir des versions prcdentes 180

V
Valeur de forage exemples de saisie 442 Valeur de remplacement en cas d'erreur dtecte 499 Valeurs modification dans la vue des donnes de blocs de donnes 267 rinitialisation en leur substituant leur valeur initiale 267 Valeurs de forage insertion 438 Valeurs de forage permanent exemples de saisie 442 Validation d'vnements d'alarme et d'vnements asynchrones exemple 677 Variables 448 forage 448 Variables contrle-commande 387 visualisation - introduction 446 Variables temporaires 619, 620 Vrification cohrence d'une source LIST 289 donnes de rfrence 309 Vrifier la cohrence 315 Vrifier la cohrence blocs 315 Vrifier la cohrence blocs 315 Vrifier la cohrence blocs 315 Vrifier la cohrence blocs 315 Vrifier la cohrence blocs 315 Vrifier la cohrence blocs 316

U
UDT 218, 593 UDT saisie de la structure 265 UDT correction de l'interface 320 UDT dans une source LIST exemple 298 UPDAT_PI 85, 570 UPDAT_PO 85, 570 Utilisation 543 SFC 570 Type de paramtre POINTER 607 Utilisation bibliothques 227, 228 Utilisation de projets voluminueux 543 Utilisation zones de mmoire systme 567 Utilisation types de donnes complexes 596 Utilisation de tableaux pour l'accs aux donnes 597 Utilisation de structures pour l'accs aux donnes 600 Utilisation

718

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

Index

Versions antrieures de STEP 7 179 compatibilit (change de donnes direct) 179 Versions antrieures de STEP 7 compatibilit (liaison en ligne via interface PROFIBUS DP) 179 compatibilit aval 179 change de donnes direct 179 diter des configurations actuelles avec des versions antrieures de STEP 7 179 liaison en ligne via interface DP 179 Versions antrieures de STEP 7 priphrie dcentralise 179 Versions antrieures de STEP 7 PROFIBUS DP 179 Versions antrieures de STEP 7 PROFIBUS DP 179 Versions antrieures de STEP 7 PROFIBUS DP 179 Visualisation marche suivre 432 variables 446, 447 Visualisation d'tat de programme affichage 456 Visualisation d'tat du programme 455 Volume d'informations selon le type de module dans l'tat du module 479 Vue de dtail des variables 237 Vue de dtail des variables structure 238 Vue de diagnostic 474 Vue des dclarations de blocs de donnes 260 Vue des donnes de blocs de donnes 261 Vue du projet 150 Vue en ligne Icnes de diagnostic 469, 470

WR_DPARM 682, 685 WR_PARM 682, 685 WR_USMSG 490

Y
Y-Link 481

Z
Zone de combinaison dfinition 131 Zone de liste 132 Zone de mmoire vive 581 Zone EPROM 564 Zone RAM 564 Zones de donnes rmanentes des CPU S7-300 579 Zones de mmoire 563 Zones de mmoire mmoire de chargement 563 Zones de mmoire mmoire de travail 563 Zones de mmoire mmoire systme 563 Zones de mmoire mmoire systme 563 Zones de mmoire mmoire systme 563 Zones de mmoire mmoire systme 563 Zones de mmoire particularits pour S7-300 564 Zones de mmoire particularits pour S7-400 564 Zones de mmoire Plages d'adresses 568 Zones de mmoire mmoire rmanente 579 Zones de mmoire rmanentes des CPU S7-400 581 Zones horaires 401

W
WinAC 174, 175 WinLC 174 WORD type de donnes 591

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

719

Index

720

Programmer avec STEP 7 Manuel, 05/2010, A5E02789667-01

You might also like