Vous êtes sur la page 1sur 112

s

Bienvenue dans STEP 7 Sommaire A la dcouverte de STEP 7

1 2 3 4 5 6 7 8 9 10 11 A

SIMATIC Mise en route STEP 7


Getting Started

SIMATIC Manager Programmation symbolique Cration dun programme dans lOB1 Cration dun programme avec FB et DB Configuration des units centrales Chargement et test du programme Programmation dune fonction (FC) Programmation dun bloc de donnes global Programmation dun bloc multiinstance Configuration de la priphrie dcentralise Annexe

Annexe A Index

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

Edition 03/2006
C79000-P7077-C48-01

Consignes de scurit
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
signifie que la non-application des mesures de scurit appropries peut entraner des blessures lgres.

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

Personnel qualifi
L'installation et l'exploitation de l'appareil/du systme concern ne sont autorises qu'en liaison avec la prsente documentation. La mise en service et l'exploitation d'un appareil/systme ne doivent tre effectues que par des personnes qualifies. Au sens des consignes de scurit figurant dans cette documentation, les personnes qualifies sont des personnes qui sont habilites mettre en service, mettre la terre et identifier des appareils, systmes et circuits en conformit avec les normes de scurit.

Utilisation conforme la destination


Tenez compte des points suivants :

Attention
L'appareil/le systme ne doit tre utilis que pour les applications spcifies dans le catalogue ou dans la description technique, et uniquement en liaison avec des appareils et composants recommands ou agrs par Siemens s'ils ne sont pas de Siemens. Le transport, le stockage, le montage, la mise en service ainsi que l'utilisation et la maintenance Le fonctionnement correct et sr du produit implique son transport, stockage, montage et mise en service selon les rgles de l'art ainsi qu'une utilisation et maintenance soigneuses.

Marque 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 Automation and Drives Postfach 4848 90437 NRNBERG ALLEMAGNE

C79000-P7077-C48-01 03/2006

Copyright Siemens AG 2006 Sous rserve de modifications techniques

Bienvenue dans STEP 7...


... le logiciel SIMATIC de base pour la conception de programmes pour systmes dautomatisation SIMATIC S7-300/400 dans les langages de programmation CONT, LOG ou LIST.

Quelques informations sur ce Getting Started


Vous apprenez dans ce livre les principes de SIMATIC STEP 7. Nous vous montrons laide dexercices pratiques les botes de dialogue et les techniques de programmation centrales. Ce manuel a t conu de sorte que vous pouvez le prendre en cours et le commencer pour ainsi dire chaque chapitre. Vous trouvez dans chaque sous-chapitre une partie explicative repre par une bande grise et une partie programmation repre en vert. La squence de programmation commence toujours par une flche dans la marge verte gauche et peut se poursuivre sur plusieurs pages avant de se terminer par un point suivi dun complment dinformation. Une exprience de Windows (maniement de la souris, technique multifentres ou utilisation de menus droulants etc.) et des connaissances dans le domaine de lautomatisation sont utiles. Vous avez la possibilit dapprofondir les connaissances acquises dans ce Getting Started au cours de stages de formation STEP 7, dans lesquels vous apprenez concevoir et laborer une solution dautomatisation dans toutes ses phases.

Environnement requis pour travailler avec Getting Started


Pour raliser les exercices pratiques sur STEP 7 prsents dans ce Getting Started vous avez besoin dune console de programmation Siemens ou dun PC, du logiciel de base STEP 7 et de la "License Key" correspondante et dun systme dautomatisation SIMATIC S7-300 ou S7-400 (pour le chapitre 7 "Charger et tester le programme")

Autre documentation de STEP 7


STEP 7 Connaissances fondamentales STEP 7 Manuels de rfrence

Aprs linstallation de STEP 7, vous trouvez les manuels lectroniques dans le menu de dmarrage sous SIMATIC > Documentation. Vous avez galement la possibilit de les commander dans nimporte quelle filiale Siemens. Toutes les informations contenues dans les manuels de STEP 7 peuvent galement tre appeles dans laide en ligne. Nous vous souhaitons un parcours agrable avec Getting Started ! Votre SIEMENS AG

Getting Started STEP 7 C79000-P7077-C48-01

iii

Avant-propos

iv

Getting Started STEP 7 C79000-P7077-C48-01

Sommaire
1
1.1 1.2 1.3 1.4

A la dcouverte de STEP 7
Quapprendrez-vous dans ce manuel ? Interaction du logiciel et du matriel STEP 7 : Mode demploi Installation de STEP 7 1-1 1-3 1-4 1-5

2
2.1 2.2

SIMATIC Manager
Lancer SIMATIC Manager et crer un projet Structure du projet dans SIMATIC Manager et appel de laide de STEP 7 2-1 2-4
Dans les chapitres 3 5, vous crez un programme simple.

3
3.1 3.2

Programmation symbolique
Adresse absolue Programmation symbolique 3-1 3-2

4
4.1 4.2 4.3 4.4

Cration dun programme dans lOB1


Ouvrir lditeur de programme dans la vue CONT, LIST ou LOG et l'ouvrir dans l'OB1 Programmation de lOB1 en CONT Programmation de lOB1 en LIST Programmation de lOB1 en LOG 4-1 4-4 4-8 4-11

5
5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8

Cration dun programme avec FB et DB


Crer et ouvrir un bloc fonctionnel Programmation du bloc FB1 en CONT Programmation du bloc FB1 en LIST Programmation du bloc FB1 en LOG Gnrer les blocs de donnes dinstance et modifier les valeurs effectives Programmation d'un appel de bloc en CONT Programmation d'un appel de bloc en LIST Programmation d'un appel de bloc en LOG 5-1 5-3 5-7 5-10 5-14 5-16 5-19 5-21

Getting Started STEP 7 C79000-P7077-C48-01

Sommaire

Dans les chapitres 6 et 7, vous configurez le matriel et testez votre programme.

6
6.1

Configuration des units centrales


Configuration matrielle 6-1

7
7.1 7.2 7.3 7.4 7.5

Chargement et test du programme


Etablir la liaison en ligne Chargement du programme dans le systme cible Tester le programme avec la fonction de visualisation Tester le programme avec la table des variables Evaluer la mmoire tampon de diagnostic 7-1 7-3 7-6 7-8 7-12
Dans les chapitres 8 11, vous largissez vos connaissances en apprenant dautres fonctions.

8
8.1 8.2 8.3

Programmation dune fonction (FC)


Crer et ouvrir une fonction Programmer la fonction Appel de la fonction dans lOB1 8-1 8-3 8-6

9
9.1

Programmation dun bloc de donnes global


Crer et ouvrir un bloc de donnes global 9-1

10

Programmation dun bloc multiinstance


10-1 10-3 10-7 10-9

10.1 Crer et ouvrir un bloc fonctionnel 10.2 Programmer le bloc FB10 10.3 Gnrer un DB10 et modifier la valeur effective 10.4 Appel du FB10 dans lOB1

11

Configuration de la priphrie dcentralise


11-1

11.1 Installer et configurer la priphrie dcentralise avec PROFIBUS-DP

Annexe A
Vue densemble des exemples de projet relatifs au manuel Getting Started A-1

Index

Index-1

vi

Getting Started STEP 7 C79000-P7077-C48-01

1
1.1

A la dcouverte de STEP 7
Quapprendrez-vous dans ce manuel ?
Nous voulons vous montrer laide dexercices pratiques comme il est simple de programmer en CONT, LOG et LIST avec STEP 7. Vous apprendrez utiliser les diffrentes applications de STEP 7 au cours des onze leons suivantes.

Cration dun programme laide de fonctions binaires


Dans les chapitres 2 7, vous crez un programme laide de fonctions binaires permettant ladressage des entres et sorties de votre CPU si vous en avez une. Les programmes-exemples de "Getting Started" utilisent pour lessentiel trois fonctions binaires de base. La fonction binaire que vous aurez en premier programmer est la fonction ET. Cette dernire peut tre reprsente par un circuit lectrique deux commutateurs.
Commutat. 1 Commut. 2

La seconde fonction binaire que nous serons amen programmer est la fonction OU. On peut galement la reprsenter par un circuit lectrique.
Commut. 3

Commut. 4

Lactionnement du commutateur 3 ou 4 fait sallumer la lampe.

Getting Started STEP 7 C79000-P7077-C48-01

1-1

A la dcouverte de STEP 7

La troisime fonction qui nous occupera est la bascule (fonction SR). Celle-ci ragit dans un circuit lectrique certains tats de tension et a pour fonction de les transmettre dautres lments du circuit.

Commut. S

Bascule

R
Commut. R

Lactionnement du commutateur S fait sallumer la lampe qui reste allume jusqu laction du commutateur R.

1-2

Getting Started STEP 7 C79000-P7077-C48-01

A la dcouverte de STEP 7

1.2

Interaction du logiciel et du matriel


Vous crez laide du logiciel STEP 7 votre programme S7 dans un projet. Lautomate S7 est constitu dun module dalimentation, dune CPU et de modules dentres ou de sorties (modules dE/S). Lautomate programmable (AP) contrle et commande laide du programme S7 votre machine. Ladressage des modules dE/S se fait par lintermdiaire des adresses du programme S7.

Cble PG

Console de programmation Transfert du programme cr

Logiciel STEP 7

Machine devant tre commande

CPU

Module de sorties

Module dalimentation

Module dentres

Getting Started STEP 7 C79000-P7077-C48-01

1-3

A la dcouverte de STEP 7

1.3

STEP 7 : Mode demploi


Avant de crer votre projet, sachez que diffrentes approches sont possibles. En effet, vous tes libre dans STEP 7 de procder dans lordre qui vous convient. Conception dune solution dautomatisation

Cration dun projet (Chapitre 2) Alternative 1 Configuration matrielle (Chapitre 6) Alternative 2 Cration du programme (Chapitres 3 5)

Cration du programme (Chapitres 3 5)

Configuration matrielle (Chapitre 6)

Transfert et test du programme dans la CPU (Chapitre 7)

Si votre programme contient beaucoup dentres et de sorties, nous vous recommandons de commencer par configurer le matriel, lapplication de configuration matrielle de STEP 7 prsentant lavantage que les adresses y sont slectionnes pour vous. Si vous choisissez la seconde alternative, il vous faudra rechercher vous-mme les adresses en fonction des constituants choisis. Vous ne pourrez alors pas bnficier de la fonction dadressage automatique de STEP 7. La configuration matrielle vous permet non seulement de slectionner les adresses, mais galement de modifier les paramtres et les proprits des modules. Pour la mise en uvre de plusieurs CPU, il faut par exemple modifier les adresses MPI des CPU.

Comme nous navons pas besoin de beaucoup dentres et de sorties dans ce "Getting Started", sautons la configuration matrielle et passons directement la programmation.

1-4

Getting Started STEP 7 C79000-P7077-C48-01

A la dcouverte de STEP 7

1.4

Installation de STEP 7
Que vous vouliez commencer par la programmation ou par la configuration matrielle, vous devez tout dabord installer STEP 7, moins que vous nutilisiez une PG SIMATIC sur laquelle STEP 7 est dj install. Pour installer le logiciel STEP 7 sur une PG/PC sans logiciel prinstall, tenez compte de lenvironnement logiciel et matriel requis. Vous trouvez ceux-ci dcrits dans le fichier Lisezmoi qui se trouve sur le CD-ROM de STEP 7 sous <Lecteur>:\STEP 7\Disk1

Si vous devez dabord installer STEP7, insrez le CD-ROM de STEP 7 dans le lecteur. Le programme dinstallation est automatiquement lanc. Suivez les instructions affiches par celui-ci.
Si le lancement automatique du programme choue, vous pouvez lancer ce dernier partir du CD-ROM sous : <Lecteur>:\STEP 7\Disk1\setup.exe.

Aprs linstallation et le redmarrage de lordinateur, licne du "SIMATIC Manager" saffiche sur votre bureau.

En double-cliquant linstallation une fois acheve sur licne "SIMATIC Manager" , vous lancez automatiquement lassistant de STEP 7. Vous trouverez de plus amples informations sur linstallation du logiciel dans le fichier Lisezmoi.wri qui figure sur le CD de STEP 7 sous <Lecteur>:\STEP 7\Disk1\Lisezmoi.wri

Getting Started STEP 7 C79000-P7077-C48-01

1-5

A la dcouverte de STEP 7

1-6

Getting Started STEP 7 C79000-P7077-C48-01

2
2.1

SIMATIC Manager
Lancer SIMATIC Manager et crer un projet
Le lancement de STEP 7 fait souvrir le gestionnaire de projets SIMATIC Manager. Lassistant de STEP 7 est par dfaut toujours activ. Celui-ci a pour but de vous assister dans la cration de votre projet STEP 7. La structure du projet sert ordonner les donnes et programmes crs au cours du projet.
Les donnes sont archives dans le projet sous la forme dobjets en une structure hirarchique.

La station SIMATIC et la CPU renferment les donnes de configuration et de paramtrage du matriel.

Le programme S7 contient tous les blocs des divers programmes qui serviront commander la machine.

Double-cliquez sur licne SIMATIC Manager sur le bureau Windows. Choisissez la commande de menu Fichier > Assistant "Nouveau projet", si lassistant ne dmarre pas automatiquement. Avec Aperu, vous pouvez afficher ou masquer la structure du projet cr. Avec Suivant, vous passez la feuille suivante de lassistant.

Getting Started STEP 7 C79000-P7077-C48-01

2-1

SIMATIC Manager

Slectionnez pour lexemple de projet de notre Getting Started la CPU 314. Cet exemple a t conu de telle sorte que vous pouvez slectionner la CPU qui vous a t livre. Ladresse MPI est rgle par dfaut sur 2. Confirmez vos slections et passez au prochain dialogue avec Suivant.
Chaque CPU a des caractristiques, comme la capacit de mmoire ou les plages doprandes qui lui sont propres. Cest pourquoi vous devez toujours slectionner une CPU avant de programmer. Ladresse MPI (Multi Point Interface) est requise pour la communication entre la CPU et la PG ou le PC.

Slectionnez le bloc dorganisation OB1 (sil nest dj slectionn). Choisissez votre langage de programmation : CONT, LOG ou LIST. Confirmez vos slections avec Suivant.

LOB1 se trouve la tte de la hirarchie du programme. Tous les autres blocs du programme lui sont subordonns. Vous pouvez changer de langage de programmation tout moment ultrieur.

2-2

Getting Started STEP 7 C79000-P7077-C48-01

SIMATIC Manager

Slectionnez en double-cliquant dans la zone de texte Nom du projet le nom propos et entrez la place de celui-ci Getting Started. Si vous cliquez sur Crer, votre nouveau projet sera cr selon la structure que vous pouvez voir avec Aperu.

Aprs lexcution de la commande Crer, SIMATIC Manager souvre avec la fentre du projet "Getting Started" nouvellement cr. La signification et la manipulation des fichiers et dossiers crs sera explique dans les pages suivantes. Lassistant de STEP 7 est activ par dfaut chaque nouveau lancement du programme. Si vous voulez le dsactiver, vous pouvez le faire dans le premier dialogue de lassistant. Sachez toutefois quil vous faudra crer manuellement chaque dossier du projet que vous crerez sans lassistant.

Pour plus dinformations, rfrez-vous la rubrique d'aide "Cration et dition de projets" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

2-3

SIMATIC Manager

2.2

Structure du projet dans SIMATIC Manager et appel de laide de STEP 7


Ds que lAssistant est referm, SIMATIC Manager apparat de nouveau avec la fentre du projet Getting Started qui vient dtre cr ouverte. Cest partir de cette fentre que vous allez appeler toutes les fonctions et les autres fentres de STEP 7.
Ouvir, organiser et imprimer les projets

Editer les blocs et insrer les lments de programme

Choisir la reprsentation et la disposition des fentres, choisir la langue et slectionner diverses options pour les donnes du processus

Charger le programme et surveiller le matriel Appeler lAide de STEP 7

Le contenu de la fentre de gauche affiche la structure du projet.

Le contenu de la fentre de droite affiche les objets et les dossiers du dossier slectionn gauche.

2-4

Getting Started STEP 7 C79000-P7077-C48-01

SIMATIC Manager

Appeler lAide de STEP 7

F1

Alternative 1 : Slectionnez une commande de menu quelconque et appuyez sur la touche de fonction F1. Une aide contextuelle saffiche alors sur la commande en question. Alternative 2 : Cliquez dans la barre des menus sur ? et slectionnez-y la commande Rubriques daide. Ceci ouvre le menu de lAide de STEP 7. Dans la partie gauche de la fentre est affich le sommaire avec toutes les rubriques traites, dans la partie droite la rubrique slectionne. Naviguez dans le sommaire jusqu la rubrique dsire en ouvrant ventuellement par un clic sur le signe + les livres pour afficher les rubriques quil contient. Quand vous slectionnez une rubrique, son contenu saffiche aussitt dans la partie droite de la fentre Avec Index et Rechercher, vous pouvez entrer vos critres de recherche afin de cibler la recherche. Alternative 3 : Cliquez dans laide de STEP 7 sur licne "Page daccueil". Un portail dinformation saffiche. Il offre un accs rapide aux thmes centraux de laide en ligne comme par exemple : Mise en route rapide de STEP 7 Configuration et programmation Test et dbogage SIMATIC sur Internet

Alternative 4 : Cliquez sur le curseur daide. Le prochain clic sur un objet quelconque affiche laide pour cet objet.

Getting Started STEP 7 C79000-P7077-C48-01

2-5

SIMATIC Manager

Naviguer dans la structure du projet


La structure du projet nouvellement cr saffiche avec la station S7 et la CPU slectionnes. Cliquez sur le signe + ou pour ouvrir ou fermer les diffrents dossiers. Vous appelez les autres fonctions en cliquant sur les icnes apparaissant dans la partie droite de la fentre.

Cliquez sur le dossier Programme S7 (1). Il contient son tour dautres constituants du programme. Via Mnmoniques vous ouvrez la table des mnmoniques dcrite au chapitre 3 dans laquelle vous donnez aux adresses des noms symboliques. Le dossier Sources sert archiver vos programmes source. Ces derniers ne sont pas traits dans ce Getting Started. Si vous cliquez sur le dossier Blocs, vous voyez lunique bloc cr jusquici lOB1. Il contiendra tous les autres blocs qui viendront aprs lui. Via les blocs vous parvenez la programmation en CONT, LOG et LIST dcrite aux chapitres 4 et 5. Cliquez sur le dossier Station SIMATIC 300. Il contient toutes les donnes du projet servant au matriel. Via Matriel vous spcifiez les paramtres de votre systme dautomatisation comme dcrit au chapitre 6.

Les logiciels optionnels servant lextension de votre tche dautomatisation tels PLC-SIM (programme de simulation du matriel) ou S7-GRAPH (langage graphique de programmation) sont intgrs STEP 7. Vous pouvez alors ouvrir leurs objets, par exemple un bloc fonctionnel S7-GRAPH depuis SIMATIC Manager. Pour plus dinformations, voir les rubriques daide Elaboration du concept dautomatisation et Principes de conception de la structure du programme". Pour plus dinformations sur les logiciels optionnels, voir le catalogue SIMATIC Constituants pour lintgration totale de systmes automatiss ST 70. 2-6
Getting Started STEP 7 C79000-P7077-C48-01

3
3.1

Programmation symbolique
Adresse absolue
Chaque entre et chaque sortie possde par dfaut une adresse absolue dtermine par la configuration matrielle. Celle-ci est indique de manire directe, cest--dire absolue. Ladresse absolue peut tre remplace par des noms symboliques pouvant tre librement choisis.

DC 24V

ON OFF

Module dentres TOR Octet 0 Bits 0 7


SF BATF DC 5V FRCE RUN STOP RUN P RUN STOP M RES L+ N

0 1 2 3 4 5 6 7

0 1 2 3 4 5 6 7

Module de sorties TOR Octet 4 Bits 0 7 Module de sorties TOR Octet 5 Bits 0 7

0 1 2 3 4 5 6 7

L+ M L+ M

Module dentresTOR Octet 1 Bits 0 7


M L+ M

1 2 3 4 5 6 7

Adresse absolue :

1.5

Entre

Octet 1

Bit 5

Nutilisez la programmation absolue que si le nombre d'entres et de sorties de votre programme est limit.

Getting Started STEP 7 C79000-P7077-C48-01

3-1

Programmation symbolique

3.2

Programmation symbolique
Vous affectez dans la table des mnmoniques un nom symbolique toutes les adresses absolues que vous voulez appeler dans le programme ainsi que le type de donnes, par exemple pour lentre E0.1 le mnmonique Commutateur 1. Ces noms valent pour toutes les sections du programme. Cest pourquoi on les appelle des variables globales. La programmation symbolique permet dallger lcriture de votre programme qui y gagne en clart.

Travailler avec lditeur de mnmoniques


Pour ouvrir celui-ci, naviguez dans la fentre de projet "Getting Started" jusquau Programme S7 (1) et double-cliquez sur Mnmoniques. La table des mnmoniques ne contient pour linstant que le bloc dorganisation dfini par dfaut, lOB1.

Cliquez sur Cycle Execution et crivez la place de celui-ci "Programme principal". Entrez dans la ligne 2 "Feu vert" et "A 4.0". Le type de donnes sinscrit automatiquement dans la colonne du type. Cliquez dans la ligne 1 ou 2 sur la colonne du commentaire pour entrer ventuellement un commentaire de mnmonique. L'action de la touche Entre clt la ligne ou lenregistrement et insre une nouvelle ligne de mnmonique. Entrez dans la ligne 3 "Feu rouge" et "A 4.1" et confirmez la saisie avec Entre.

Affectez de la mme manire un nom symbolique toutes les entres et sorties du programme.

3-2

Getting Started STEP 7 C79000-P7077-C48-01

Programmation symbolique

Enregistrez vos entres ou vos modifications de la table des mnmoniques et fermez la fentre. Comme le projet "Getting Started" contient beaucoup de noms, vous pouvez copier la table des mnmoniques dans votre projet comme dcrit au chapitre ci-aprs.

Vous voyez ci-contre la table des mnmoniques de lexemple de programme S7 "Getting Started" pour LIST. De manire gnrale, une table des mnmoniques est gnre pour chaque programme S7, et quel que soit le langage de programmation choisi. Tous les caractres pouvant tre imprims (lettres accentues, espaces etc.) sont autoriss dans la table des mnmoniques.

Le type de donnes inscrit automatiquement dans la table des mnmoniques indique la CPU le type de signal quelle a traiter. STEP 7 utilise entre autres les types de donnes suivants :
BOOL BYTE WORD DWORD CHAR INT DINT REAL S5TIME TIME DATE TIME_OF_DAY Les donnes ayant ce type autorisent les oprations sur bits de 1 bit (type BOOL) 32 bits (DWORD).

Les donnes ayant ce type occupent exactement un caractre du jeu de caractres ASCII. Ces types de donnes servent au traitement de valeurs numriques (par exemple au calcul dexpressions arithmtiques). Formats de temps existants dans STEP 7 pour indiquer une date ou entrer une valeur de temps.

Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs" et "Dfinir les mnmoniques" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

3-3

Programmation symbolique

3-4

Getting Started STEP 7 C79000-P7077-C48-01

4
4.1

Cration dun programme dans lOB1


Ouvrir l'diteur de programme dans la vue CONT, LIST ou LOG et ouvrir lOB1
Choisissez votre langage de programmation : CONT, LIST ou LOG
Pour crer vos programmes S7, vous disposez dans STEP 7 de trois langages de programmation CONT, LIST ou LOG. Dans la pratique et pour ce chapitre, vous devez vous dcider pour lun de ces langages. CONT (Schma CONTacts)
Pour lhabitu des schmas lectriques.

LIST (LISTe dinstructions)


Pour linformaticien.

LOG (LOGigramme)
Pour le spcialiste des circuits ou le programmeur prfrant les oprations logiques.

Le bloc OB1 souvre dans la vue du langage choisi lors de sa cration avec lassistant au projet. Vous pouvez toutefois modifier le langage par dfaut tout moment ultrieur.

Getting Started STEP 7 C79000-P7077-C48-01

4-1

Cration dun programme dans lOB1

Copier la table des mnmoniques et ouvrir lOB1


Sil nest pas encore ouvert, ouvrez votre projet "Getting Started". Cliquez pour cela dans la barre doutils sur le bouton Ouvrir, slectionnez dans la liste propose le projet cr "Getting Started" et confirmez avec OK. Slectionnez dans longlet "Projetsexemples" en outre lun des projets suivants en fonction du langage de programmation choisi : ZFr01_05_STEP7_KOP_1-9 ou ZFr01_01_STEP7_AWL_1-9 ou

ZFr01_03_STEP7_FUP_1-9. Vous pouvez voir ci-contre ces trois exemples de projet reprsents. Naviguez dans ZFr01_XXX jusqu lobjet Mnmoniques et copiez celui-ci par glisser-lcher dans le dossier Programme S7 de la fentre de votre projet "Getting Started". Fermez ensuite la fentre du projet ZFr01_XXX.
Glisser-lcher signifie slectionner un objet en cliquant dessus avec la souris et le dplacer en maintenant le bouton de la souris appuy. Le relchement du bouton de la souris permet dinsrer lobjet lendroit dsir.

Double-cliquez dans le projet "Getting Started" sur lOB1. Lditeur de programme CONT/LIST/LOG souvre.

LOB1 de STEP 7 est excut de manire cyclique par la CPU. La CPU lit pour cela le programme ligne par ligne et en excute les commandes. Lorsque la CPU est revenue la premire ligne du programme, elle a effectu un cycle. Le temps quelle a mis pour le faire est appel le temps de cycle. Pour poursuivre la programmation, reportez-vous si vous avez choisi le langage CONT au paragraphe 4.2, le langage LIST au paragraphe 4.3 et le langage LOG au paragraphe 4.4. Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs" et "Cration de blocs et de bibliothques" via la commande de menu ? > Rubriques daide.

4-2

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme dans lOB1

Lditeur de programme CONT/LIST/LOG


Cest dans lditeur de programme CONT/LIST/LOG que vous programmez les blocs. Vous voyez reprsente ici titre dexemple la vue CONT.

Insrer un nouveau rseau Principaux lments de programme CONT et LOG Afficher, masquer les lments de programme et la structure du programme (la fentre peut tre pingle nimporte o dans la fentre de programme) Modifier la vue du langage de programmation

Elments de programme (ici CONT) et structure d'appels

La vue densemble des variables ou la vue de dtail contient les paramtres et les variables locales du bloc.

Titre et zone de commentaire du bloc ou du rseau

Ligne de saisie du programme (encore appele Rseau ou Branche de courant).

Description succincte de llment de programme slectionn

Les diffrents onglets de la fentre "Dtails" permettent laffichage de messages derreur et dinformations sur les oprandes, sur ldition des mnmoniques, le forage des variables, la comparaison de blocs et ldition de dfinitions derreur pour le diagnostic de processus.

Getting Started STEP 7 C79000-P7077-C48-01

4-3

Cration dun programme dans lOB1

4.2

Programmation de lOB1 en CONT


Vous apprenez dans les pages suivantes programmer un circuit srie, un circuit parallle et une bascule Mise 1 /Remise 0 en langage de programmation CONT (Schma CONTacts).

Programmation dun circuit srie en CONT


Si vous ne lavez pas encore fait, slectionnez via le menu Affichage le langage de programmation CONT.

Cliquez dans la zone Titre de lOB1 et entrez comme titre pour celui-ci "Excution cyclique ". Slectionnez la position voulue de la branche de courant pour y insrer le premier lment. Cliquez dans la barre doutils sur le bouton reprsent ici et insrez un contact fermeture. Insrez de la mme manire un second contact fermeture. Insrez une bobine lextrmit droite de la branche de courant. Pour achever notre circuit srie, il manque encore les adresses des contacts et de la bobine. Vrifiez si vous avez activ la reprsentation symbolique.

4-4

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme dans lOB1

Cliquez sur ??.? et entrez le nom symbolique "Commutateur 1" (entre guillemets !). Vous pouvez galement choisir le nom dans la liste droulante affiche. Confirmez avec la touche Entre. Introduisez pour le second contact fermeture le nom symbolique "Commutateur 2". Entrez pour la bobine le nom "Feu vert". Votre circuit srie est maintenant programm. Enregistrez le bloc lorsque le programme ne signale plus aucune erreur.

Les mnmoniques sont affichs en rouge sils ne sont pas contenus dans la table des mnmoniques ou sil y a une erreur syntaxique dans le programme.

Getting Started STEP 7 C79000-P7077-C48-01

4-5

Cration dun programme dans lOB1

Programmation dun circuit parallle en CONT


Slectionnez le Rseau 1.

Insrez un nouveau rseau. Slectionnez nouveau la branche de courant. Insrez un contact fermeture et une bobine. Slectionnez la branche verticale du rseau. Insrez une branche parallle. Insrez dans la branche parallle un second contact fermeture. Fermez la branche en cliquant le cas chant sur lextrmit de la flche). Il ne reste plus qu complter les adresses. Procdez pour cela comme pour le circuit srie. Entrez pour le contact du haut "Commutateur 3", pour le contact du bas "Commutateur 4" et pour la bobine "Feu rouge". Enregistrez le bloc.

4-6

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme dans lOB1

Programmation dune bascule en CONT


Slectionnez le rseau 2, et insrez un troisime rseau. Slectionnez ensuite la branche de courant. Naviguez dans le catalogue des lments de programme jusqu lentre Oprations sur bits et slectionnez-y la bascule SR. Doublecliquez sur celle-ci pour linsrer. Insrez un contact fermeture avant les entres S et R. Entrez pour la bascule SR les noms symboliques suivants : "Automatique Marche" pour le premier contact, "Manuel Marche" pour le second contact et entrez comme titre de bascule "Mode automatique". Enregistrez le bloc et fermez lditeur de programme.

Si vous voulez voir la diffrence entre ladressage absolu et ladressage symbolique, dsactivez laffichage symbolique en choisissant dans le menu Affichage la commande Afficher avec > mnmoniques.
Exemple d'adressage symbolique en CONT

Exemple d'adressage absolu en CONT

Si les mnmoniques apparaissent coups, vous pouvez agrandir la largeur du champ de loprande avec la commande de menu Outils > Paramtres > CONT/LOG > Largeur du champ doprande de lditeur de programme CONT/LIST/LOG. Celui-ci peut tre largi une largeur de 10 26 caractres. Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs", "Cration de blocs de code" et "Edition dinstructions CONT" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

4-7

Cration dun programme dans lOB1

4.3

Programmation de lOB1 en LIST


Vous apprenez dans les pages qui suivent programmer une instruction ET, une instruction OU et des instructions de mise 1 et de mise 0 en LIST (LISTe dinstructions).

Programmation dune instruction ET en LIST


Si vous ne lavez pas encore fait, slectionnez dans le menu Affichage le langage de programmation LIST.

Vrifiez que la reprsentation symbolique est active.

Cliquez dans la zone de Titre de lOB1 et entrez par exemple pour titre "Excution cyclique". Slectionnez la zone de la premire instruction.

Inscrivez dans la premire ligne du programme un U (UND) pour ET suivi dun espace et du mnmonique "Commutateur 1" (entre guillemets). Cliquez la fin de la ligne sur la touche Entre. Le curseur saute la ligne suivante.

4-8

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme dans lOB1

Compltez de la mme manire linstruction UND (ET).

Votre fonction ET est maintenant programme. Enregistrez le bloc lorsque le programme ne signale plus aucune erreur.
Les mnmoniques sont affichs en rouge sils ne sont pas contenus dans la table des mnmoniques ou sil y a une erreur syntaxique dans le programme.

Programmation dune instruction OU en LIST


Slectionnez le Rseau 1.

Insrez un nouveau rseau et slectionnez nouveau la zone de saisie. Entrez un O (ODER) pour OU suivi du mnmonique "Commutateur 3" (comme nous lavons fait pour ET). Compltez linstruction ODER (OU) et enregistrez-la.

Getting Started STEP 7 C79000-P7077-C48-01

4-9

Cration dun programme dans lOB1

Programmation dune bascule en LIST


Slectionnez le rseau 2 et insrez un troisime rseau. Inscrivez linstruction U dans la premire ligne avec pour mnmonique "Automatique Marche". Compltez linstruction de bascule en vous orientant au modle ci-contre et enregistrez-la. Fermez le bloc.

Si vous voulez voir la diffrence entre ladressage absolu et ladressage symbolique, dsactivez laffichage symbolique en choisissant dans le menu Affichage la commande Afficher avec > mnmoniques.
Exemple dadressage symbolique en LIST

Exemple dadressage absolu en LIST

Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs", "Cration de blocs de code" et "Edition dinstructions LIST" via la commande de menu ? > Rubriques daide.

4-10

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme dans lOB1

4.4

Programmation de lOB1 en LOG


Vous apprenez dans les pages qui suivent programmer une fonction ET, une fonction OU et une bascule en langage de programmation LOG (LOGigramme).

Programmation dune fonction ET en LOG


Si cela nest dj fait, slectionnez le langage de programmation LOG dans le menu Affichage.

Cliquez dans la zone de titre de lOB1 et entrez comme titre "Excution cyclique". Slectionnez la zone de saisie pour y entrer la fonction ET (sous la zone du commentaire).

Insrez une bote ET (&) et une affectation (=). Il ne reste plus qu complter les adresses des diffrents lments de la fonction ET. Vrifiez que la reprsentation symbolique est active.

Getting Started STEP 7 C79000-P7077-C48-01

4-11

Cration dun programme dans lOB1

Cliquez sur ??.? et entrez le nom symbolique "Commutateur 1" (entre guillemets !). Vous pouvez galement slectionner le nom dans la liste droulante affiche. Confirmez avec la touche Entre. Inscrivez pour la seconde entre le mnmonique "Commutateur 2".

Entrez comme nom daffectation "Feu rouge".

Votre fonction ET est maintenant programme. Lorsquaucun oprande nest plus affich en rouge, vous pouvez enregistrer.

Les mnmoniques sont affichs en rouge sils ne sont pas contenus dans la table des mnmoniques ou sil y a une erreur syntaxique dans le programme.

4-12

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme dans lOB1

Programmation dune fonction OU en LOG


Insrez un nouveau rseau. Slectionnez nouveau la zone de saisie pour y entrer la fonction OU.

Insrez une bote OU (1) et une affectation (=). Il ne reste plus qu complter les adresses. Procdez comme pour la fonction ET. Entrez pour la premire entre partant du haut le mnmonique "Commutateur 3", pour la seconde entre le mnmonique "Commutateur 4" et pour laffectation le mnmonique "Feu rouge". Enregistrez le bloc.

Getting Started STEP 7 C79000-P7077-C48-01

4-13

Cration dun programme dans lOB1

Programmation dune bascule en LOG


Slectionnez le rseau 2 et insrez un troisime rseau. Slectionnez de nouveau la zone de saisie (sous la zone du commentaire). Naviguez dans le catalogue des lments de programme jusqu lentre Oprations sur bits et slectionnez-y une bascule SR. Un double clic sur celle-ci insre une bascule dans le rseau. Introduisez aux entres et sorties de la bascule les noms symboliques suivants : S "Automatique Marche, R "Manuel Marche, Mmento "Mode automatique. Enregistrez le bloc et fermez lditeur de programme.

Si vous voulez voir la diffrence entre ladressage absolu et ladressage symbolique, dsactivez laffichage symbolique en choisissant dans le menu Affichage la commande Afficher avec > mnmoniques.
Exemple dadressage symbolique en LOG

Exemple dadressage absolu en LOG

Si les mnmoniques apparaissent coups, vous pouvez agrandir la largeur du champ de loprande avec la commande de menu Outils > Paramtres > CONT/LOG > Largeur du champ doprande de lditeur de programme CONT/LIST/LOG. Celui-ci peut tre largi une largeur de 10 26 caractres. Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs", "Cration de blocs de code" et "Edition dinstructions LOG" via la commande de menu ? > Rubriques daide.

4-14

Getting Started STEP 7 C79000-P7077-C48-01

5
5.1

Cration dun programme avec FB et DB


Crer et ouvrir un bloc fonctionnel
Le bloc fonctionnel (FB) est subordonn au bloc dorganisation. Il renferme une partie du programme qui peut tre appele autant de fois quon le veut dans lOB1. Tous les paramtres formels et toutes les donnes statiques du bloc fonctionnel sont stockes dans un bloc de donnes DB spar qui est associ au bloc fonctionnel. Vous programmez le bloc fonctionnel (FB1 au nom symbolique "Moteur", voir la table des mnmoniques, page 3-3) dans lditeur de programme CONT/LIST/LOG dj connu. Vous devez utiliser pour cela le mme langage de programmation que celui que vous avez utilis au chapitre 4 (Programmation de lOB1). La table des mnmoniques doit pour cela avoir t copie dans le projet "Getting Started". Si ce nest pas le cas, rfrez-vous la page 4-2, copiez la table des mnmoniques et revenez cette page. Ouvez si le projet nest pas encore ouvert la fentre du projet "Getting Started". Naviguez jusquau dossier Blocs et ouvrez-le. Cliquez avec le bouton droit de la souris dans la partie droite de la fentre.

Le menu contextuel du bouton droit de la souris offre nouveau les principales commandes de menu de la barre doutils. Insrez comme nouvel objet un bloc fonctionnel.

Getting Started STEP 7 C79000-P7077-C48-01

5-1

Cration dun programme avec FB et DB

Choisissez dans la bote de dialogue des proprits du bloc fonctionnel, le langage de cration, activez la case doption Multiinstance et validez toutes les autres options avec OK.

Le bloc fonctionnel FB1 a t insr dans le dossier Blocs. Un double clic sur le bloc FB1 ouvre lditeur de programme CONT/LIST/LOG.

Si vous avez choisi le langage de programmation CONT, poursuivez au chapitre 5.2, si vous avez choisi le langage LIST au chapitre 5.3 et si vous avez choisi le langage LOG au chapitre 5.4. Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs" et "Cration de blocs et de bibliothques" via la commande de menu ? > Rubriques daide.

5-2

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

5.2

Programmation du bloc FB1 en CONT


Nous vous montrons comment programmer un bloc fonctionnel pouvant par exemple commander et surveiller un moteur essence et un moteur Diesel grce ses deux blocs de donnes. Tous les signaux spcifiques un type de moteur sont transmis sous la forme de paramtres par le bloc dorganisation au bloc fonctionnel et doivent donc au pralable tre dclars comme paramtres dentre et de sortie ( "in" et "out") dans la table de dclaration des variables. Vous devez dj connatre la programmation dun circuit srie, dun circuit parallle et dune bascule avec STEP 7.

Dclarer ou dfinir en premier les variables


La fentre de lditeur de programme CONT/LIST/LOG est ouverte et la vue CONT est active (commande Affichage > CONT. Vous voyez maintenant en titre de la fentre FB1 car vous avez ouvert lditeur de programme en doublecliquant sur ce bloc.

La section de dclaration des variables est constitue dune vue densemble des variables (volet gauche de la fentre) et de la vue de dtail des variables (volet droit de la fentre). Slectionnez successivement dans la vue densemble les types de dclaration "IN", "OUT" et "STAT" et entrez dans la vue de dtails des variables les dclarations suivantes. Cliquez dans les champs correspondants de la vue dtaille des variables et reprenez les donnes affiches dans les figures suivantes. Slectionnez le type de donnes dans la liste droulante affiche.

Getting Started STEP 7 C79000-P7077-C48-01

5-3

Cration dun programme avec FB et DB

Pour afficher les colonnes invisibles, cliquez sur le bouton droit de la souris et choisissez les colonnes voulues dans le menu contextuel. Seules les lettres, les chiffres et le caractre de soulignement sont autoriss pour lintroduction de noms dans la table de dclaration des variables.

Programmer la mise en marche et la mise larrt du moteur


Insrez dans le rseau 1 un contact fermeture, un contact ouverture et une bascule SR en srie en cliquant sur les icnes correspondantes ou en les slectionnant dans le catalogue des lments de programme. Slectionnez ensuite la branche de courant suivant immdiatement lentre R.

Insrez un autre contact fermeture. Slectionnez la branche de courant suivant immdiatement le contact fermeture. Insrez paralllement au contact fermeture un contact ouverture.

5-4

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

Vrifiez que la reprsentation symbolique est active.

Slectionnez les points dinterrogation et entrez les noms symboliques de la table de dclaration des variables (# est automatiquement attribu). Entrez pour le contact ouverture du circuit srie le mnmonique "Mode automatique". Enregistrez ensuite votre programme.

Les variables locales sont caractrises par un symbole # et ne sont valables qu lintrieur du bloc. Les variables globales figurent entre des guillemets. Elles sont dfinies dans la table des mnmoniques et sont valables dans tout le programme. Ltat de signal Mode automatique est dfini dans lOB1 (rseau 3, voir pages 4-7) par une autre bascule SR et interrog prsent dans le bloc FB1.

Getting Started STEP 7 C79000-P7077-C48-01

5-5

Cration dun programme avec FB et DB

Programmer une surveillance de vitesse


Insrez un nouveau rseau et slectionnez la branche de courant. Naviguez ensuite dans le catalogue des lments de programme jusquau dossier Comparaison et insrez le comparateur CMP>=I. Insrez galement une bobine la fin de la branche de courant. Slectionnez de nouveau les points dinterrogation et intitulez la bobine et le comparateur en vous servant des noms correspondants dans la table de dclaration des variables. Enregistrez en dernier lieu votre programme.

Quand le moteur se met-il en marche ou larrt ? Le moteur est activ si la variable #Mise en marche a pour tat de signal "1" et si la variable "Mode automatique" a pour tat de signal "0". Nous ralisons cette fonctionnalit en niant la variable "Mode automatique" (contact ouverture). Si la variable #Mise larrt a pour tat de signal "1" ou si la variable #Defaillance a pour tat de signal "0", le moteur se met larrt. Nous ralisons cette fonction nouveau en niant la variable #Defaillance (#Defaillance est donc un signal entrant en action quand sa valeur est nulle. Dans le cas normal, il aura la valeur 1, dans le cas d'une dfaillance, il aura la valeur 0.). Comment le comparateur surveille-t-il la vitesse du moteur ? Le comparateur compare les variables #Actual_Speed et #Preset_Speed et inscrit ce rsultat dans la variable #Preset_Speed_Reached (tat de signal 1). Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs", "Cration de blocs de code" et "Editer la table de dclaration des variables" ou "Editer les instructions CONT" via la commande de menu ? > Rubriques daide.

5-6

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

5.3

Programmation du bloc FB1 en LIST


Nous vous montrons comment programmer un bloc fonctionnel pouvant par exemple commander et surveiller un moteur essence et un moteur Diesel grce ses deux blocs de donnes. Tous les signaux spcifiques un type de moteur sont transmis sous la forme de paramtres par le bloc dorganisation au bloc fonctionnel et doivent donc au pralable tre dclars comme paramtres dentre et de sortie ( "in" et "out") dans la table de dclaration des variables. Vous devez dj connatre la programmation dune instruction ET, d'une instruction OU et dune bascule en LIST.

Dclarer ou dfinir en premier les variables


La fentre de lditeur de programme CONT/LIST/LOG est ouverte et la vue CONT est active (commande Affichage > LIST. Vous voyez maintenant en titre de la fentre FB1 car vous avez ouvert lditeur de programme en doublecliquant sur ce bloc.

La section de dclaration des variables est constitue dune vue densemble des variables (volet gauche de la fentre) et de la vue de dtail des variables (volet droit de la fentre). Slectionnez successivement dans la vue densemble les types de dclaration "IN", "OUT" et "STAT" et entrez dans la vue de dtails des variables les dclarations suivantes. Cliquez dans les champs correspondants de la vue dtaille des variables et reprenez les donnes affiches dans les figures suivantes. Slectionnez le type de donnes dans la liste droulante affiche.

Getting Started STEP 7 C79000-P7077-C48-01

5-7

Cration dun programme avec FB et DB

Seules les lettres, les chiffres et le caractre de soulignement sont autoriss pour lintroduction de noms dans la table de dclaration des variables.

Programmer la mise en marche et la mise larrt du moteur


Vrifiez que la reprsentation symbolique est active.

Entrez dans le rseau 1 les instructions requises.


Les variables locales sont caractrises par un symbole # et ne sont valables qu lintrieur du bloc. Les variables globales figurent entre des guillemets. Elles sont dfinies dans la table des mnmoniques et sont valables dans tout le programme. Ltat de signal "Mode automatique" est dfini dans lOB1 (rseau 3, voir pages 4-7) par une autre bascule SR et interrog prsent dans le bloc FB1.

5-8

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

Programmer une surveillance de vitesse


Insrez un nouveau rseau et entrez les instructions voulues. Enregistrez ensuite votre programme.

Quand le moteur se met-il en marche ou larrt ? Le moteur est activ si la variable #Mise en marche a pour tat de signal "1" et si la variable "Mode automatique" a pour tat de signal "0". Nous ralisons cette fonctionnalit en niant la variable "Mode automatique" (contact ouverture). Si la variable #Mise larrt a pour tat de signal "1" ou si la variable #Defaillance a pour tat de signal "0", le moteur se met larrt. Nous ralisons cette fonctionnalit galement en niant la variable #Defaillance (#Defaillance est un signal qui entre en action quand sa valeur est nulle. Il a dans le cas normal la valeur 1, et en cas de dfaillance la valeur 0.). Comment le comparateur surveille-t-il la vitesse du moteur ? Le comparateur compare les variables #Actual_Speed et #Preset_Speed et inscrit ce rsultat dans la variable #Preset_Speed_Reached (tat de signal 1). Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs", "Cration de blocs de code" et "Editer la table de dclaration des variables" ou "Editer les instructions LIST" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

5-9

Cration dun programme avec FB et DB

5.4

Programmation du bloc FB1 en LOG


Nous vous montrons comment programmer un bloc fonctionnel pouvant par exemple commander et surveiller un moteur essence et un moteur Diesel grce ses deux blocs de donnes. Tous les signaux spcifiques un type de moteur sont transmis sous la forme de paramtres par le bloc dorganisation au bloc fonctionnel et doivent donc au pralable tre dclars comme paramtres dentre et de sortie ( "in" et "out") dans la table de dclaration des variables. Vous devez pour cela dj savoir programmer une fonction ET, une fonction OU et une bascule en LOG.

Dclarer ou dfinir en premier les variables


La fentre de lditeur de programme CONT/LIST/LOG est ouverte et la vue LOG est active (commande Affichage > LOG. Vous voyez maintenant en titre de la fentre FB1 car vous avez ouvert lditeur de programme en doublecliquant sur ce bloc.

La section de dclaration des variables est constitue dune vue densemble des variables (volet gauche de la fentre) et de la vue de dtail des variables (volet droit de la fentre). Slectionnez successivement dans la vue densemble les types de dclaration "IN", "OUT" et "STAT" et entrez dans la vue de dtails des variables les dclarations suivantes. Cliquez dans les champs correspondants de la vue dtaille des variables et reprenez les donnes affiches dans les figures suivantes. Slectionnez le type de donnes dans la liste droulante affiche.

5-10

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

Seules les lettres, les chiffres et le caractre de soulignement sont autoriss pour lintroduction de noms dans la table de dclaration des variables.

Programmer la mise en marche et la mise larrt dun moteur


Insrez dans le rseau 1 une fonction SR (dossier Oprations sur bits) que vous slectionnez dans le catalogue des lments de programme. Reliez lentre S (mise 1) une bote ET et lentre R (remise 0) une bote OU. Vrifiez que la reprsentation symbolique est active.

Getting Started STEP 7 C79000-P7077-C48-01

5-11

Cration dun programme avec FB et DB

Cliquez sur les points dinterrogation ??.? et entrez leur place les noms appropris de la table de dclaration des variables (# est automatiquement entr par le programme). Veillez ce quune entre de la fonction ET ait pour adresse le nom symbolique "Mode automatique". Il ne vous reste plus qu nier les entres "Mode automatique" et #Defaillance en cliquant dans la barre doutils sur le bouton servant la ngation. Enregistrez ensuite votre programme.

Les variables locales sont caractrises par un symbole # et ne sont valables qu lintrieur du bloc. Les variables globales figurent entre des guillemets. Elles sont dfinies dans la table des mnmoniques et sont valables dans tout le programme. Ltat de signal "Mode automatique" est dfini dans lOB1 (rseau 3, voir pages 4-7) par une autre bascule SR et interrog prsent dans le bloc FB1.

5-12

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

Programmer une surveillance de vitesse


Insrez un nouveau rseau et slectionnez la zone de saisie. Naviguez ensuite dans le catalogue des lments de programme jusquau dossier Comparaison et slectionnez un comparateur CMP>=I. Insrez aprs le comparateur une affectation de sortie et entrez aux adresses les mnmoniques de la table de dclaration des variables. Enregistrez ensuite votre programme.

Quand le moteur se met-il en marche ou larrt ? Le moteur est activ si la variable #Mise en marche a pour tat de signal "1" et si la variable "Mode automatique" a pour tat de signal "0". Nous ralisons cette fonctionnalit en niant (contact ouverture) la variable "Mode automatique". Si la variable #Mise larrt a pour tat de signal "1" ou si la variable #Defaillance a pour tat de signal "0", le moteur se met larrt. Nous ralisons cette fonctionnalit galement en niant la variable #Defaillance (#Defaillance est un signal entrant en action quand sa valeur est nulle. Il a dans le cas normal la valeur 1, et en cas de dfaillance la valeur 0). Comment le comparateur surveille-t-il la vitesse du moteur ? Le comparateur compare les variables #Actual_Speed et #Preset_Speed et inscrit ce rsultat dans la variable #Preset_Speed_Reached (tat de signal 1).

Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs", "Cration de blocs de code" et "Editer la table de dclaration des variables" ou "Editer les instructions LOG" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

5-13

Cration dun programme avec FB et DB

5.5

Gnrer les blocs de donnes dinstance et modifier les valeurs effectives


Vous avez programm le bloc fonctionnel FB1 ("Moteur") et dfini les paramtres spcifiques chaque moteur dans la table de dclaration des variables. Pour pouvoir programmer lappel (CALL) du FB dans lOB1, vous devez gnrer son bloc de donnes (DB). Un FB est toujours affect un DB dinstance. Le FB doit commander et surveiller un moteur essence ou un moteur Diesel. Les vitesses prescrites des moteurs sont stockes dans deux DB distincts dans lesquels seule la valeur effective (#Vitesse_ prescrite) change. En ne programmant le bloc fonctionnel quune seule fois, vous rduisez le temps de programmation. Le projet "Getting Started" est ouvert dans SIMATIC Manager. Naviguez jusquau dossier Blocs et cliquez avec le bouton droit de la souris dans la partie droite de la fentre. Insrez avec le menu contextuel du bouton droit de la souris un Bloc de donnes.

Reprenez dans la bote de dialogue "Proprits Bloc de donnes" le nom DB1, choisissez dans la liste droulante le type "DB dinstance" et reprenez le nom du bloc fonctionnel "FB1". Confirmez vos entres avec OK. Le bloc de donnes DB1 est insr dans le projet "Getting Started".

5-14

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

Ouvrez le bloc DB1 par un double clic. Confirmez dans le dialogue suivant par OUI pour paramtrer le bloc de donnes dinstance.

Entrez prsent pour le moteur essence la valeur 1500 dans la colonne de la valeur effective (dans la ligne Vitesse_Prescrite). Vous venez ainsi de dfinir la vitesse maximale du moteur. Enregistrez le DB1 et fermez lditeur de programme. Gnrez de la mme manire un second DB pour le FB1 que vous appelerez DB2. Entrez cette fois pour la valeur effective du moteur Diesel 1200. Enregistrez le DB 2 et fermez la fentre de programme.

Avec la modification des valeurs effectives, nous en avons termin avec les prparatifs de notre bloc fonctionnel destin commander deux moteurs. Pour commander dautres moteurs, il nous suffirait de gnrer dautres blocs de donnes. Pour programmer maintenant lappel du FB dans lOB1, reportez-vous si votre langage de programmation est CONT au paragraphe 5.6, si votre langage de programmation est LIST au paragraphe 5.7 et si vous avez comme langage de programmation LOG au paragraphe 5.8. Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs" et "Cration de blocs de donnes" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

5-15

Cration dun programme avec FB et DB

5.6

Programmation d'un appel de bloc en CONT


Toute la programmation du FB resterait sans effet si son appel ntait pas programm dans lOB1. Un bloc de donnes est utilis pour chaque appel du FB et servira commander un moteur diffrent.
DB1 Donnes du moteur essence

OB1
Appel

FB1 "Moteur"

DB2 Donnes du moteur Diesel

SIMATIC Manager est ouvert avec le projet "Getting Started". Naviguez jusquau dossier Blocs et ouvrez lOB1. Slectionnez dans la fentre de programme CONT/LIST/LOG le rseau 3 et insrez le rseau 4. Naviguez ensuite dans longlet "Elments de programme" jusquau FB1 et insrez-le dans votre programme par double clic. Insrez un contact fermeture avant les paramtres Mise en marche, Mise larrt et Dfaillance. Cliquez sur les points dinterrrogation ??? au-dessus de "Moteur", puis aussitt dans le cadre de saisie avec le bouton droit de la souris. Cliquez dans le menu contextuel du bouton droit de la souris sur Insrer mnmonique. Ceci fait souvrir une liste droulante.

5-16

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

Double-cliquez sur le bloc de donnes Essence. Il saffiche automatiquement entre guillemets dans le cadre de saisie. Cliquez sur les points dinterrogation et entrez une adresse qui doit figurer entre guillemets. Entrez pour les autres paramtres du bloc fonctionnel les mnmoniques appropris que vous slectionnez dans la liste droulante.

Les variables dentre et de sortie (dclaration "in" et "out") spcifiques au moteur sont affiches dans le FB "Moteur". Ces variables reoivent chacune un signal "MotEss_xxx" signalant leur appartenance au DB Moteur essence.

Getting Started STEP 7 C79000-P7077-C48-01

5-17

Cration dun programme avec FB et DB

Programmez dans un nouveau rseau lappel du bloc fonctionnel "Moteur" (FB1) avec le bloc de donnes "Diesel" (DB2) en slectionnant pour chaque paramtre loprande dans la liste droulante.

Un signal "MotDies_xxx" pour le DB moteur Diesel est affect chaque variable.

Enregistrez votre programme et fermez le bloc.

Si vous crez des structures de programme avec des OB, des FB et des DB, vous devez programmer lappel dun bloc subordonn (par exemple un FB1) dans le bloc hirarchique suprieur (par lexemple lOB1). La procdure reste la mme. Vous pouvez donner des noms symboliques aux diffrents blocs dans la table des mnmoniques (FB1 a par exemple pour nom "Moteur" et le DB1 le nom "Essence"). Les blocs programms peuvent tre tout moment archivs ou imprims. Vous trouvez les fonctions correspondantes dans SIMATIC Manager sous les commandes de menu Fichier > Archiver ou Fichier > Imprimer.

Pour plus dinformations, rfrez-vous aux rubriques "Appel des aides de rfrence", "Description du langage CONT" et "Gestion du programme" via la commande de menu ? > Rubriques daide.

5-18

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

5.7

Programmation dun appel de bloc en LIST


Lentire programmation du bloc fonctionnel resterait sans effet si son appel ntait pas programm dans lOB1. Un bloc de donnes diffrent est utilis chaque appel du bloc fonctionnel commandant chaque fois un moteur diffrent.
DB1 Donnes Moteur essence

OB1
Appel

FB1 "Moteur"

DB2 Donnes Moteur Diesel

SIMATIC Manager est ouvert avec le projet "Getting Started". Naviguez jusquau dossier Blocs, et ouvrez lOB1. Slectionnez dans la fentre de programme CONT/LIST/LOG le rseau 3 et insrez le rseau 4. Entrez dans la section des instructions CALL "Moteur", "Essence" et appuyez sur la touche Entre. Tous les paramtres du bloc fonctionnel "Essence" sont affichs. Positionnez le curseur aprs le signe dgalit suivant Mise en marche et cliquez avec le bouton droit de la souris. Slectionnez dans le menu contextuel qui souvre alors la commande Insrer mnmonique. Ceci fait safficher une liste droulante.

Getting Started STEP 7 C79000-P7077-C48-01

5-19

Cration dun programme avec FB et DB

Cliquez sur le mnmonique MotEss_marche. Celui-ci vient sinsrer automatiquement avec les guillemets dans votre programme.

Affectez toutes les variables du bloc fonctionnel loprande appropri que vous slectionnez dans la liste droulante.
Chaque variable se voit affecter le signal "MotEss_xxx " signalant son appartenance au DB Moteur essence.

Programmez dans un nouveau rseau lappel du bloc fonctionnel "Moteur" (FB1) avec le bloc de donnes "Diesel" (DB2). Procdez comme pour lappel prcdent. Enregistrez votre programme et fermez le bloc.

Si vous crez des structures de programme avec des OB, des FB et des DB, vous devez programmer lappel dun bloc subordonn (par exemple un FB1) dans le bloc suprieur (par lexemple lOB1). La procdure reste la mme. Vous pouvez donner des noms symboliques aux diffrents blocs dans la table des mnmoniques (FB1 a par exemple pour nom "Moteur" et le DB1 le nom "Essence"). Les blocs programms peuvent tre tout moment archivs ou imprims. Vous trouvez les fonctions correspondantes dans SIMATIC Manager sous les commandes de menu Fichier > Archiver ou Fichier > Imprimer. Pour plus dinformations, rfrez-vous aux rubriques "Appel des aides de rfrence", "Description du langage LIST" et "Gestion du programme" via la commande de menu ? > Rubriques daide.

5-20

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

5.8

Programmation dun appel de bloc en LOG


Lentire programmation du bloc fonctionnel resterait sans effet si son appel ntait pas programm dans lOB1. Un bloc de donnes diffrent est utilis chaque appel du bloc fonctionnel commandant chaque fois un moteur diffrent.
DB1 Donnes Moteur essence

OB1
Appel

FB1 "Moteur"

DB2 Donnes Moteur Diesel

SIMATIC Manager est ouvert avec le projet "Getting Started". Naviguez jusquau dossier Blocs, et ouvrez lOB1. Slectionnez dans la fentre de programme CONT/LIST/LOG le rseau 3 et insrez le rseau 4. Naviguez ensuite dans longlet "Elments de programme" jusquau FB1 et insrez-le dans votre programme par double clic. Toutes les variables dentre et de sortie spcifiques au moteur sont affiches. Cliquez sur les points dinterrogation ??? au-dessus de "Moteur" et cliquez aussitt avec le bouton droit de la souris dans le cadre de saisie. Slectionnez dans le menu contextuel qui souvre alors la commande Insrer mnmonique. Ceci fait safficher une liste droulante.

Getting Started STEP 7 C79000-P7077-C48-01

5-21

Cration dun programme avec FB et DB

Double-cliquez dans la liste droulante sur le bloc de donnes Essence. Il est automatiquement repris avec les guillemets dans le cadre de saisie. Affectez de la mme manire chaque paramtre du bloc fonctionnel loprande symbolique appropri en le slectionnant dans la liste droulante.

Chaque variable se voit affecter un signal "MotEss_xxx" signifiant son appartenance au DB Moteur essence.

5-22

Getting Started STEP 7 C79000-P7077-C48-01

Cration dun programme avec FB et DB

Programmez dans un nouveau rseau lappel du bloc fonctionnel "Moteur" (FB1) avec le bloc de donnes "Diesel" (DB2) en slectionnant chaque fois loprande appropri dans la liste droulante.
Chaque variable se voit affecter un signal "MotDies_xxx" signifiant qu'elle appartient au DB Moteur Diesel.

Enregistrez votre programme et fermez le bloc.

Si vous crez des structures de programme avec des OB, des FB et des DB, vous devez programmer lappel dun bloc subordonn (par exemple un FB1) dans le bloc hirarchique suprieur (par lexemple lOB1). La procdure reste la mme. Vous pouvez donner des noms symboliques aux diffrents blocs dans la table des mnmoniques (FB1 a par exemple pour nom "Moteur" et le DB1 le nom "Essence"). Les blocs programms peuvent tre tout moment archivs ou imprims. Vous trouvez les fonctions correspondantes dans SIMATIC Manager sous les commandes de menu Fichier > Archiver ou Fichier > Imprimer. Pour plus dinformations, rfrez-vous aux rubriques "Appel des aides de rfrence", "Description du langage LOG" et "Gestion du programme" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

5-23

Cration dun programme avec FB et DB

5-24

Getting Started STEP 7 C79000-P7077-C48-01

6
6.1

Configuration des units centrales


Configuration matrielle
Pour pouvoir configurer le matriel, vous devez avoir au pralable cr un projet avec une station SIMATIC. La structure du projet cre laide de lAssistant de STEP 7 au chapitre 2.1 remplit toutes ces conditions. Vous configurez le matriel avec STEP 7. Ces donnes de configuration sont ensuite charges (voir le chapitre 7 "Chargement" ) dans le systme dautomatisation. Le point de dpart de la configuration est toujours SIMATIC Manager avec le projet "Getting Started" ouvert. Ouvrez le dossier Station SIMATIC 300, et double-cliquez sur licne Matriel. La fentre "HW Config" souvre. La CPU qui a t slectionne la cration du projet est affiche. Il sagit pour notre "Getting Started" de la CPU314.

Chssis avec les diffrents emplacements denfichage Catalogue du matriel

Table de configuration avec les adresses MPI et les adresse dE/S

Information succincte sur llment slectionn

Getting Started STEP 7 C79000-P7077-C48-01

6-1

Configuration des units centrales

Vous avez tout dabord besoin dun module dalimentation. Naviguez dans le catalogue jusquau module dalimentation PS307 2A et enfichez ce dernier par glisser-lcher sur lemplacement 1. Slectionnez ensuite un module dentres TOR (DI, Digital Input) SM321 DI32xDC24V et enfichez-le sur lemplacement 4. Lemplacement 3 reste libre.

Enfichez de la mme manire sur lemplacement 5 le module de sorties SM322 DO32xDC24V/0.5A. Pour modifier les paramtres (par exemple ladresse) dun module lintrieur dun projet, il vous suffit douvrir celui-ci par double-clic. Mais ne modifiez les paramtres que lorsque vous connaissez les rpercussions que celles-ci peuvent avoir sur votre automate. Aucune modification de paramtres nest requise pour lexemple de projet Getting Started.

Les donnes sont aussitt prpares pour le transfert dans la CPU avec la commande Enregistrer et compiler. Aprs avoir ferm HW Config, vous pouvez voir une nouvelle icne dans le dossier Blocs. Il sagit des Donnes systme.

Vous pouvez en outre vrifier la configuration en choisissant la commande de menu Station > Vrifier la cohrence qui permet de rechercher les erreurs formelles dans le programme. STEP 7 vous offre diverses solutions si des erreurs sont trouves. Pour plus dinformations, rfrez-vous aux rubriques "Configuration du matriel" et "Configuration des units centrales" via la commande de menu ? > Rubriques daide.

6-2

Getting Started STEP 7 C79000-P7077-C48-01

7
7.1

Chargement et test du programme


Etablir la liaison en ligne
Nous allons vous montrer laide du projet-exemple livr "zFr01_06_STEP7_CONT_1_10" ou du projet dj cr "Getting Started" et un montage de test simple comment charger votre programme dans le systme dautomatisation (AP) pour ensuite le tester. Vous devez avoir : configur le matriel du projet "Getting Started" (voir le chapitre 6) mont le matriel conformment au manuel

Exemple de circuit srie (fonction ET) : La diode la sortie A 4.0 du module de sorties TOR ne doit sallumer que si les deux commutateurs E 0.1 et E 0.2 sont appuys. Effectuez le montage de test en vous aidant de cbles et de la CPU.

Alimentation Marche/Arrt

Commutateur de mode de fonctionnement

Chssis

PG avec logiciel STEP 7

Octet 0

Octet 4

A 4.0 E 0.1 E 0.2

Octet 1

Octet 5

24 volts

Pont de connexion

Cble PG

Getting Started STEP 7 C79000-P7077-C48-01

7-1

Chargement et test du programme

Monter le matriel
Pour monter un module sur le profil support, procdez comme suit : Enfichez le module sur le connecteur du bus Accrochez le module et faites-le pivoter vers le bas Vissez fond le module Montez les modules restants Aprs avoir mont tous les modules, enfichez la cl dans la CPU.

Le test peut tre effectu avec un matriel diffrent de celui dcrit ci-dessus. Seul ladressage des entres et sorties doit tre conserv. STEP 7 offre diffrentes possibilits de test telles que la visualisation du programme ou la table des variables. Pour plus dinformations sur le montage des units centrales, rfrez-vous aux manuels "S7-300 Installation et configuration ; Caractristiques de la CPU" ou "S7-400/M7-400 Installation et configuration"

7-2

Getting Started STEP 7 C79000-P7077-C48-01

Chargement et test du programme

7.2

Chargement du programme dans le systme cible


Le chargement du programme nest possible que si une liaison en ligne la CPU a t tablie.

Appliquer la tension
Appliquez la tension en activant le commutateur ON/OFF. La diode "DC 5V" sallume sur la CPU.

Mettez le commutateur de mode de fonctionnement sur STOP (sil ne sy trouve pas dj). La LED "STOP" sallume en rouge.

Effacement gnral de la CPU et passage RUN


Mettez le commutateur de mode sur MRES et maintenez-le en cette position durant au moins 3 secondes jusqu ce que la LED "STOP" clignote en rouge.
Leffacement gnral efface toutes les donnes sur la CPU. La CPU se trouve maintenant dans son tat initial.

Relchez le commutateur de mode et remettez-le aprs 3 secondes maximum en position MRES. Quand la LED "STOP" clignote rapidement, la CPU a t remise zro. Si ce nest pas le cas, recommencez la procdure.

Charger le programme dans la CPU


Pour charger le programme, le commutateur de mode doit nouveau se trouver sur STOP.

Getting Started STEP 7 C79000-P7077-C48-01

7-3

Chargement et test du programme

Dmarrez SIMATIC Manager et ouvrez le projet "Getting Started sil nest dj ouvert via la bote de dialogue "Ouvrir". Appelez la vue en ligne du projet en plus de la vue hors ligne dj ouverte. Vous pouvez les distinguer leur barre de titre de couleur diffrente.

Naviguez dans les deux fentres jusquau dossier Blocs. La fentre "Hors ligne" montre ce qui se passe sur la PG, la fentre "En ligne" montre ce qui se passe dans la CPU.
Des fonctions systme (SFC) se trouvent encore sur la CPU mme aprs leffacement gnral de celleci. Ces fonctions sont mises disposition par le systme dexploitation de la CPU. Elles nont pas besoin dtre charges, mais

Slectionnez le dossier Blocs dans la fentre "Hors ligne" et chargez ensuite le programme dans la CPU via la commande Systme cible > Charger. Rpondez la demande de confirmation par OK. Aprs le chargement, les blocs du programme saffichent dans la fentre "En ligne".
Vous pouvez encore appeler la commande Systme cible > Charger via le bouton correspondant de la barre doutils ou via le menu contextuel en cliquant avec le bouton droit de la souris.

7-4

Getting Started STEP 7 C79000-P7077-C48-01

Chargement et test du programme

Mettre en marche la CPU et vrifier le mode de fonctionnement de celle-ci


Mettez le commutateur de mode sur RUN-P. La LED verte de "RUN" sallume et la LED rouge de "STOP" steint. La CPU est prte fonctionner. Lorsque la LED verte est allume, vous pouvez commencer tester votre programme. Si la LED rouge ne steint pas, cest quil y a une erreur. Evaluez alors la mmoire tampon de diagnostic pour en rechercher la cause.

Chargement de blocs isols Pour ragir rapidement dans la pratique aux erreurs, vous avez la possibilit de transfrer par glisser-lcher des blocs un par un dans la CPU. Le commutateur de mode doit se trouver pour le chargement soit sur "RUN-P", soit sur "STOP". En mode "RUN" les blocs chargs sont aussitt activs. Tenez compte ce faisant des points suivants : Lcrasement de blocs exempts derreur par des blocs dfectueux peut entraner un mauvais fonctionnement de votre installation. Pour viter ceci, testez vos blocs avant de les charger dans la CPU. Si lordre de chargement des blocs na pas t respect dabord les blocs de niveaux infrieurs, ensuite les blocs de niveaux suprieurs la CPU passe en STOP. Pour viter ceci, chargez le programme entier dans la CPU.

Programmer en ligne Il peut savrer dans la pratique ncessaire de modifier les blocs dj chargs dans la CPU. Cliquez pour cela sur le bloc voulu dans la fentre "En ligne" pour ouvrir lditeur de programme CONT/LIST/LOG. Programmez ensuite le bloc comme vous tes habitu la faire. Notez que le bloc programm est immdiatement activ dans la CPU.

Pour plus dinformations, rfrez-vous aux rubriques "Chargement" et " Etablissement de liaisons en ligne et choix de la CPU" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

7-5

Chargement et test du programme

7.3

Tester le programme avec la fonction de visualisation


La fonction de visualisation permet de tester le bloc dun programme. Une liaison en ligne doit avoir t tablie la CPU, la CPU doit tre en mode RUN ou RUN-P et le programme doit avoir t charg dans la CPU. Ouvrez lOB1 dans la fentre en ligne du projet. Lditeur de programme CONT/LIST/LOG souvre.

Activer la fonction Test > Visualiser.

Tester avec CONT


Le circuit srie du rseau 1 est affich dans la vue CONT. Le trajet du courant est reprsent par un trait continu, indiquant le passage de la tension.

Tester avec LIST


Dans LIST, les rsultat logique (RLG), bit dtat (ETA) et tat standard (STANDARD) sont reprsents sous la forme dune table.

Tester avec LOG


Ltat de signal est reprsent dans LOG par un "0" ou un "1". Une ligne en pointills signifie quil ny a pas de rsultat logique.
Vous pouvez modifier laffichage du langage de programmation durant le test avec la commande Outils > Paramtres.

7-6

Getting Started STEP 7 C79000-P7077-C48-01

Chargement et test du programme

Fermez maintenant les deux commutateurs de votre circuit de test. Les diodes aux entres E 0.1 et E 0.2. du module dentres sallument. La diode de la sortie A 4.0 du module de sorties sallume aussi.

E 0.1 E 0.2

Dans les langages de programmation graphiques CONT et LOG, vous pouvez suivre le trajet du courant lcran et voir les valeurs du rseau programm changer durant le test. Le changement de couleur indique que le rsultat logique est rempli jusquici. Dans le langage de programmation LIST, vous voyez les valeurs changer dans les colonnes ETA et RLG lorsque le rsultat logique est satisfait. Dsactivez la fonction Test > Visualiser et fermez la fentre. Aprs quoi, vous pouvez refermer la fentre "En ligne" dans le SIMATIC Manager.

Nous vous recommandons de ne jamais charger, ni dexcuter de programmes volumineux dans la CPU, la dtection des erreurs tant rendue difficile par les multiples sources derreur. Il est recommand pour un test plus rapide et efficace de charger et de tester les blocs un par un. Pour plus dinformations, rfrez-vous aux rubriques "Test" et "Test avec la fonction de visualisation" via la commande de menu ? > Rubriques daide

Getting Started STEP 7 C79000-P7077-C48-01

7-7

Chargement et test du programme

7.4

Tester le programme avec la table des variables


Vous testez des variables isoles du programme en les visualisant et en les forant. Il faut pour cela quune liaison en ligne la CPU existe, que la CPU se trouve en mode RUN-P et que le programme soit charg. Comme dans la visualisation du programme, vous pouvez visualiser ltat des entres et sorties du rseau 1 (circuit srie ou fonction ET) dans la table des variables. Vous pouvez en outre tester le comparateur de vitesse de moteur du FB1 en entrant une vitesse relle.

Crer la table des variables


Vous devez pour cela vous trouver nouveau dans la fentre du projet "Getting Started" ouverte hors ligne. Naviguez jusquau dossier Blocs, et cliquez avec le bouton droit de la souris dans la partie droite de la fentre. Slectionnez dans le menu contextuel du bouton droit de la souris lobjet Table des variables.

Validez les options par dfaut de la bote de dialogue des proprits avec OK. Une autre mthode consiste entrer un nom de mnmonique et lui attribuer un commentaire.

Une table de variables (par dfaut VAT1) est insre dans le dossier Blocs. Ouvrez VAT1 par double clic. La fentre "Visualisation et forage des variables" souvre.

7-8

Getting Started STEP 7 C79000-P7077-C48-01

Chargement et test du programme

La table des variables est dabord vide. Entrez les oprandes et les mnmoniques pour lexemple "Getting Started" comme reprsent ci-dessous. Le programme complte les autres colonnes une fois que vous avez confirm la saisie avec la touche Entre. Changez le format de la valeur dtat en format dcimal pour toutes les valeurs de vitesse. Cliquez pour cela sur la cellule voulue et choisissez dans le menu contextuel (clic sur le bouton droit de la souris) le format DECIMAL.

Enregistrez votre table des variables.

Commuter la table des variables en ligne


Etablissez la liaison en ligne la CPU configure. Le mode de la CPU saffiche dans la barre dtat. Mettez le conmmutateur de mode de la CPU sur RUN-P (si vous ne lavez pas encore fait).

Getting Started STEP 7 C79000-P7077-C48-01

7-9

Chargement et test du programme

Visualiser les variables


Cliquez sur licne Visualiser la variable. Fermez les commutateurs 1 et 2 de votre circuit de test et observez le rsultat dans la table des variables. Les valeurs dtat passent de false true dans la table des variables.

Forcer des variables


Entrez la valeur "1500" pour loprande MW2 et "1300" pour loprande MW4 dans la colonne Valeur de forage de la table des variables.

Transfrez les valeurs de forage dans votre CPU.

7-10

Getting Started STEP 7 C79000-P7077-C48-01

Chargement et test du programme

Aprs leur transfert, ces valeurs sont traites par la CPU. Vous pouvez alors observer le rsultat de la comparaison. Fermez la fentre Visualisation et forage des variables. Rpondez une demande de confirmation ventuelle par Oui ou par OK.

Il arrive frquemment quune table des variables de taille importante ne puisse pas tre affiche dans sa totalit lcran en raison des dimensions limites de ce dernier. Si vous avez de grandes tables de variables, vous vous recommandons den crer plusieurs avec STEP 7 pour un mme programme S7. Vous pouvez ainsi crer vos tables de variables en fonction de vos besoins de test. Vous pouvez leur donner comme aux blocs un nom individuel (par exemple le nom OB1_Rseau1 au lieu de VAT1). Vous pouvez renommer vos tables VAT dans la table des mnmoniques. Pour plus dinformations, rfrez-vous aux rubriques "Test" et "Tester avec la table des variables" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

7-11

Chargement et test du programme

7.5

Evaluer la mmoire tampon de diagnostic


Pour le cas o la CPU passerait en STOP durant le traitement dun programme S7 ou que la CPU ne se laisse plus commuter sur RUN aprs le chargement du programme, vous pouvez lire les messages du tampon de diagnostic pour rechercher la cause de lerreur. Il faut pour cela quune liaison en ligne la CPU existe et que la CPU se trouve ltat de fonctionnement "STOP". Commutez dabord la CPU sur "STOP" avec le commutateur de mode.

Le point de dpart est de nouveau le projet "Getting Started" ouvert hors ligne dans SIMATIC Manager. Slectionnez le dossier Blocs.

Sil y a plusieurs CPU dans votre projet, vrifiez dabord quelle est la CPU larrt. Toutes les CPU adressables sont affiches dans la bote de dialogue "Diagnostic du matriel". La CPU qui se trouve en STOP y est slectionne. Le projet "Getting Started" na quune CPU. Vous ne voyez donc quune CPU affiche. Cliquez sur le bouton Etat du module pour lire la mmoire tampon de diagnostic de la CPU.
Sil ny a quune CPU de connecte, vous pouvez lire directement ltat du module via la commande de menu Systme cible > Diagnostic/Rglage > Etat du module.

7-12

Getting Started STEP 7 C79000-P7077-C48-01

Chargement et test du programme

La fentre "Etat du module" vous renseigne sur les proprits et les paramtres de votre CPU. Cliquez prsent sur longlet Mmoire tampon de diagnostic pour rechercher la cause du passage STOP de la CPU.

Le bouton "Ouvrir le bloc" nest pas activ, car le bloc contenu dans le projet "Getting Started" est exempt derreur.

Lvnement le plus rcent (No 1) est toujours affich dans la premire ligne. La cause du passage STOP est affiche. Fermez toutes les fentres, sauf celle de SIMATIC Manager.

Si une erreur de programmation est lorigine du passage STOP de la CPU, slectionnez lvnement et cliquez sur le bouton Ouvrir le bloc. Le bloc est alors ouvert dans lditeur CONT/LIST/LOG connu et le rseau dans lequel se trouve lerreur est affich. Vous avez dans ce chapitre achev de crer et de tester le projet-exemple "Getting Started". Dans les chapitres suivants, vous pourrez approfondir votre savoir par des exercices choisis. Pour plus dinformations, rfrez-vous aux rubriques "Diagnostic" et "Fonctions de renseignements sur ltat du module" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

7-13

Chargement et test du programme

7-14

Getting Started STEP 7 C79000-P7077-C48-01

8
8.1

Programmation dune fonction (FC)


Crer et ouvrir une fonction
La fonction est comme le bloc fonctionnel subordonne au bloc dorganisation. Afin quelle puisse tre traite par la CPU, il faut galement lappeler dans le bloc suprieur. A loppos du bloc fonctionnel, elle na pas besoin de bloc de donnes. Les paramtres de la fonction sont aussi dclars dans la table de dclaration des variables, mais les donnes locales statiques ne sont pas autorises. Vous programmez la fonction comme le bloc fonctionnel dans lditeur de programme CONT/LIST/LOG. Vous devez dj tre familiaris avec la programmation en CONT, LIST ou LOG (voir les chapitres 4 et 5) et la programmation symbolique (voir le chapitre 3). Si vous avez excut le projet exemple "Getting Started" (chapitres 1 7 ), ouvrez-le prsent. Crez sinon un nouveau projet dans SIMATIC Manager avec Fichier > Assistant "Nouveau projet". Procdez comme dcrit dans la paragraphe 2.1 et nommez le projet "Fonction Getting Started". Nous parlerons dans la suite de ce chapitre du projet "Getting Started". Mais vous pouvez excuter chacune des tapes dcrites avec nimporte quel nouveau projet. Naviguez jusquau dossier Blocs et ouvrez-le. Cliquez avec le bouton droit de la souris dans la partie droite de la fentre.

Getting Started STEP 7 C79000-P7077-C48-01

8-1

Programmation dune fonction (FC)

Insrez avec le menu contextuel du bouton droit de la souris une Fonction (FC).

Validez le nom FC1 dans la bote des proprits de la fonction et slectionnez votre langage de cration. Confirmez les options restantes avec OK.

La fonction FC1 a t insre dans le dossier Blocs. Ouvrez la fonction FC1 par un double clic.

A loppos du bloc fonctionnel, il nest pas possible de dfinir de donnes statiques dans la table de dclaration des variables dune fonction. Les donnes statiques dfinies dans un bloc fonctionnel sont conserves aprs le traitement du bloc. Il peut sagir par exemple des mmentos utiliss pour les valeurs limites de "Vitesse" (voir chapitre 5). Vous pouvez, comme vous en avez lhabitude, avoir recours aux mnmoniques de la table des mnmoniques pour programmer la fonction. Pour plus dinformations, rfrez-vous aux rubriques "Elaboration du concept dautomatisation", "Conception dune structure du programme" et "Blocs dans le programme utilisateur" via la commande de menu ? > Rubriques daide.

8-2

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dune fonction (FC)

8.2

Programmer la fonction
Nous allons programmer dans notre exemple une fonction de temporisation. Celle-ci aura pour fonction dactiver paralllement la mise en marche du moteur un ventilateur qui continuera fonctionner (retard la retombe) durant quatre secondes aprs larrt du moteur. Il nous faut pralablement dclarer les paramtres dentre et sortie (dclaration "in" et "out") de la fonction dans la vue de dtail des variables. Vous avez ouvert pour cela la fentre de lditeur de programme CONT/LIST/LOG. Vous remplissez cette vue de dtail des variables comme vous lavez fait pour le bloc fonctionnel (voir chapitre 5). Entrez les dclarations suivantes.

Programmer une fonction de temporisation en CONT


Slectionnez la branche de courant afin dy insrer le nouvel lment CONT. Naviguez dans le catalogue des lments de programme jusqu llment S_AVERZ (temporisation sous forme de retard la retombe) et insrez-le dans le rseau. Insrez un contact fermeture avant lentre S et ajoutez une bobine aprs la sortie Q.

Getting Started STEP 7 C79000-P7077-C48-01

8-3

Programmation dune fonction (FC)

Slectionnez les points dinterrogation, entrez un caractre "#" et choisissez le nom voulu. Entrez le temps de retard de la temporisation lentre TW de S_AVERZ. Une constante au type de donnes S5Time# (S5T#) dune dure de 4 secondes (4s) sera par exemple dfinie comme suit : S5T#4s. Enregistrez ensuite la fonction et fermez lditeur.

Le paramtre dentre "#Moteur_Marche" permet de lancer la "#Fonction de temporisation". Celle-ci recevra son appel dans lOB1 dabord les paramtres du moteur essence, puis les paramtres du moteur Diesel (par exemple T1 pour "Retard _MotEss"). Les mnmoniques de ces paramtres devront encore tre entrs dans la table des mnmoniques.

Programmer une fonction de temporisation en LIST


Si vous programmez en LIST, slectionnez la zone de saisie du rseau et entrez linstruction ci-contre. Enregistrez ensuite la fonction et fermez lditeur.

8-4

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dune fonction (FC)

Programmer une fonction de temporisation en LOG


Si vous programmez en LOG, slectionnez la zone de saisie du rseau et entrez le programme LOG ci-dessous pour la fonction de temporisation. Enregsitrez ensuite la fonction et fermez lditeur.

Il faut encore programmer lappel de la fonction dans le bloc suprieur (dans notre exemple lOB1) si lon veut que la temporisation soit excute dans le programme. Pour plus dinformations, rfrez-vous aux rubriques "Appel des aides de rfrence", "Description du langage CONT/LOG/LIST" et "Temporisations" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

8-5

Programmation dune fonction (FC)

8.3

Appel de la fonction dans lOB1


Lappel de la fonction FC1 dans lOB1 est similaire celui du bloc fonctionnel. Les paramtres de la fonction reoivent dans lOB1 les oprandes correspondants du moteur essence ou Diesel. Comme nous navons pas encore dfini ces oprandes dans la table des mnmoniques, nous allons le faire maintenant.
Dans une instruction STEP 7, loprande est llment sur lequel lopration du processeur doit porter. Ladressage doprandes peut tre absolu ou symbolique.

SIMATIC Manager est ouvert avec le projet "Getting Started" ou le projet nouvellement cr. Naviguez jusquau dossier Blocs et ouvrez lOB1. La fentre de lditeur de programme CONT/LIST/LOG souvre.

Programmer lappel de la fonction dans LOG


Vous vous trouvez dans la vue CONT. Slectionnez le rseau 5 et insrez un nouveau rseau (No 6). Naviguez ensuite dans le catalogue des lments de programme jusqu la fonction FC1, et insrez la fonction dans votre rseau. Insrez avant "Moteur_Marche" un contact fermeture.
Vous pouvez passer de laffichage absolu laffichage symbolique avec la commande de menu Affichage > Afficher avec > mnmoniques.

Cliquez sur les points dinterrogation de lappel FC1 et entrez les mnmoniques suivants.

8-6

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dune fonction (FC)

Programmez un appel de fonction FC1 dans le rseau 7 avec les oprandes du moteur Diesel. Procdez ce faisant comme pour le rseau prcdant (les oprandes du moteur Diesel doivent dj avoir t entrs dans la table des mnmoniques).

Enregistrez le bloc et fermez lditeur.


Affichez les informations mnmonique avec la commande de menu Affichage > Afficher avec > informations mnmonique. Pour voir plusieurs rseaux en mme temps sur lcran, masquez les commentaires avec la commande Affichage > Afficher avec > commentaires et les informations mnmonique avec la commande Affichage > Afficher avec > Informations mnmonique. Vous pouvez changer lchelle de reprsentation des rseaux avec la commande de menu Affichage > Facteur dagrandissement.

Getting Started STEP 7 C79000-P7077-C48-01

8-7

Programmation dune fonction (FC)

Programmer un appel de fonction en LIST


Si vous programmez en LIST, slectionnez la zone de saisie dun nouveau rseau et entrez les instructions LIST suivantes. Enregistrez ensuite lappel de fonction et fermez lditeur.

Programmer un appel de fonction en LOG


Si vous programmez en LOG, slectionnez la zone de saisie dun nouveau rseau et entrez les instructions LOG suivantes. Enregistrez ensuite lappel de fonction et fermez lditeur.

Lappel des fonctions a t programm dans notre exemple comme un appel inconditionnel, cela signifie que la fonction sera toujours excute. Vous pouvez si vous en avez besoin dans votre tche dautomatisation programmer les appels de FC et FB en les faisant dpendre de conditions : en les reliant par exemple une entre ou un autre circuit en amont. Vous programmez les conditions lentre EN ou la sortie ENO de la bote de la fonction. Pour plus dinformations, rfrez-vous aux rubriques "Appel des aides de rfrence", "Description du langage CONT/LOG/LIST" via la commande de menu ? > Rubriques daide.

8-8

Getting Started STEP 7 C79000-P7077-C48-01

9
9.1

Programmation dun bloc de donnes global


Crer et ouvrir un bloc de donnes global
Si le nombre des mmentos internes (cellules de mmoire) dune CPU ne suffit plus intgrer le stock de donnes, vous avez la possibilit darchiver des donnes slectionnes dans un bloc de donnes global. Les donnes du bloc de donns global sont mises disposition de tous les autres blocs. Un bloc de donnes dinstance en revanche est affect un bloc fonctionnel prcis, ses donnes ne sont disponibles que dans ce bloc fonctionnel (voir le paragraphe 5.5), cest--dire quelles sont locales. Vous devez dj tre familiaris avec la programmation en CONT, LIST ou LOG (voir les chapitres 4 et 5) et avec la programmation symbolique (voir le chapitre 3). Si vous avez excut le projet-exemple "Getting Started" (chapitres 1-7), ouvrez-le prsent. Crez sinon un nouveau projet dans SIMATIC Manager avec Fichier > Assistant "Nouveau projet". Procdez comme dcrit dans le paragraphe 2.1 et nommez le projet ainsi cr "DB global Getting Started". Nous parlerons dans la suite de ce chapitre du projet "Getting Started". Mais vous pouvez excuter chaque tape avec nimporte quel nouveau projet. Naviguez jusquau dossier Blocs et ouvrez-le. Cliquez avec le bouton droit de la souris dans la partie droite de la fentre.

Getting Started STEP 7 C79000-P7077-C48-01

9-1

Programmation dun bloc de donnes global

Insrez partir du menu contextuel un bloc de donnes.

Validez les options par dfaut dans la bote de dialogue des proprits du bloc avec OK. Appelez laide sur cette bote de dialogue pour plus dinformations. Le bloc de donnes DB3 a t insr dans le dossier Blocs. Ouvrez le DB3 avec un double clic. Dans la bote de dialogue "Nouveau bloc de donnes" qui souvre alors, activez loption Bloc de donnes. Fermez la bote de dialogue par OK.
Rappel : Dans le paragraphe 5.5 vous avez cr un bloc de donnes dinstance en slectionnant loption "Bloc de donnes associ un bloc fonctionnel". Avec loption "Bloc de donnes", vous crez un bloc de donnes global.

Programmer des variables dans le bloc de donnes


Entrez dans la colonne du nom "MotEss_Vitesse_courante". Faites drouler le menu contextuel Type de donnes > simple > INT. A titre dexemple, trois donnes globales ont t dfinies dans le DB3. Dclarez ces donnes dans la table de dclaration des variables comme dans le tableau ci-dessous.

Les variables des vitesses courantes du bloc de donnes "Vitesse_courante_MotEss" et "Vitesse_courante_ MotDies" sont traites de la mme manire que les mots de mmento MW2 (Vitesse_courante_MotEss) et MW4 (Vitesse_courante_ MotDies). Ceci sera montr au chapitre suivant.

Enregistrez le bloc de donnes global.

9-2

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dun bloc de donnes global

Affectation de mnmoniques
Il est galement possible de donner un nom symbolique aux blocs de donnes. Ouvrez la Table de mnmoniques et entrez pour le bloc de donnes DB3 le mnmonique "Donnes_G".
Si vous avez copi au chapitre 4 la table des mnmoniques dun projet-exemple (Exemple_CONT, exemple_LIST ou Exemple_LOG) dans votre projet "Getting Started", vous navez pas besoin de dfinir de mnmoniques.

Enregistrez la table des mnmoniques et fermez l'diteur de mnmoniques. Fermez galement le bloc de donnes global.

DB global dans la table de dclaration des variables : Avec Affichage > Vue des donnes vous pouvez voir les valeurs courantes de type INT changer dans la table du bloc de donnes global (se rfrer au chapitre 5.5). DB global dans la table des mnmoniques : A l'oppos du DB d'instance, le type de donnes du DB global est toujours l'adresse absolue, dans notre exemple le type de donnes DB3. Le type de donnes du bloc de donnes d'instance est en revanche le bloc FB associ. Pour plus d'informations, rfrez-vous aux rubriques "Programmation de blocs" et "Cration de blocs de donnes" via la commande de menu ? > Rubriques d'aide.

Getting Started STEP 7 C79000-P7077-C48-01

9-3

Programmation dun bloc de donnes global

9-4

Getting Started STEP 7 C79000-P7077-C48-01

10 Programmation dun bloc multiinstance


10.1 Crer et ouvrir un bloc fonctionnel
Vous avez programm dans le chapitre 5 une commande de moteur laide du bloc fonctionnel "Moteur" (FB1). Les blocs de donnes "Essence" (DB1) et "Diesel" (DB2) taient utiliss lors de lappel du bloc fonctionnel FB1 dans le bloc dorganisation OB1. Chaque bloc de donnes contenait les donnes spcifiques chaque moteur (par exemple #Vitesse_Prescrite). Imaginons-nous maintenant que notre tche dautomatisation ait commander dautres moteurs, par exemple un moteur lhuile de colza ou un moteur hydrogne etc. En appliquant la mthode pratique jusquici, vous affecteriez pour chaque nouveau moteur un nouveau DB avec les donnes de ce moteur au FB utilis jusquici. Un DB3 pour commander le moteur huile de colza et un DB4 pour commander le moteur hydrogne etc. Le nombre de blocs augmenterait alors avec chaque nouvelle commande de moteur. Vous pouvez rduire le nombre de blocs en utilisant un bloc multiinstance. Crez pour cela un nouveau bloc FB (dans notre exemple le bloc FB10) et appelez dans celui-ci le bloc FB1 tel quil est comme "instance locale". Le bloc FB1 transfre chaque appel ses donnes dans le bloc de donnes DB10 du bloc suprieur FB10. Ainsi, il ny a plus besoin daffecter diffrents DB au bloc fonctionnel.Tous les FB, sil y en a plusieurs, utilisent un seul bloc de donnes (ici le DB10).
Les blocs de donnes DB1 et DB2 sont intgrs au bloc DB10. Il faut pour cela dclarer le FB1 dans les donnes statiques du bloc FB10.

OB1
CALL FB10, DB10

FB10
CALL FB1 (pour moteur essence) CALL FB1 (pour moteur Diesel) ...

FB1
Moteur

DB10
Donnes Moteur essence Donnes Moteur Diesel

FB1
Moteur

Getting Started STEP 7 C79000-P7077-C48-01

10-1

Programmation dun bloc multiinstance

Vous devez dj tre familiaris avec la programmation en CONT, LIST ou LOG (voir les chapitres 4 et 5) et avec la programmation symbolique (chapitre 3). Si vous avez excut lexemple "Getting Started" (chapitres 17), ouvrez le projet "Getting Started". Si ce nest pas le cas, ouvrez dans SIMATIC Manager le projet ZFr01_05_STEP7_CONT, ZFr01_01_STEP7_LIST_1-9 ou ZFr01_03_STEP7_LOG_1-9.

Naviguez ensuite jusquau dossier Blocs et ouvrez-le. Cliquez avec le bouton droit de la souris dans la partie droite de la fentre et slectionnez un bloc fonctionnel dans le menu contextuel. Nommez ce bloc "FB10" et choisissez votre langage de cration. Activez si elle ne lest dj la case doption Multiinstance, et confirmez le reste des options avec OK. Le bloc FB10 a t insr dans le dossier Blocs. Double-cliquez sur celui-ci pour louvrir.

Vous pouvez crer des multiinstances pour tous les types de blocs fonctionnels, mme pour les commandes de valves par exemple. Sachez si vous utilisez ce genre de bloc, que non seulement les blocs fonctionnels appels mais galement les blocs appelants peuvent avoir des multiinstances. Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs" et "Cration de blocs et de bibliothques" via la commande de menu ? > Rubriques daide.

10-2

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dun bloc multiinstance

10.2 Programmer le bloc FB10


Une variable statique laquelle on donnera chaque fois un nom diffrent est dclare dans la table de dclaration des variables pour chaque appel prvu du bloc FB1 que lon veut appeler comme instance locale dans le bloc FB10. On inscrira dans la colonne du type de donnes FB1 ("Moteur").

Dclarer ou dfinir les variables


Le FB 10 est ouvert dans la fentre de programme CONT/LIST/LOG. Reportez les dclarations de la figure suivante dans la vue de dtail des variables. Choisissez pour cela successivement dans la vue densemble des variables les types de dclaration "OUT", "STAT" et "TEMP" et faites vos entres dans la vue de dtail. Choisissez pour le type de dclaration "STAT" le type de donnes "<No> FB" dans la liste droulante et remplacez la suite de caractres "<No>" par le chiffre "1".

Les instances locales dclares apparaissent ensuite dans le catalogue des lments de programme sous la rubrique "Multiinstances".

Getting Started STEP 7 C79000-P7077-C48-01

10-3

Programmation dun bloc multiinstance

Programmer le FB10 en CONT


Insrez lappel du bloc "MotEss" comme bloc multiinstance dans le rseau 1. Insrez ensuite le contact fermeture qui manque encore et remplacez les points dinterrogation par les mnmoniques.

La "vitesse courante" des moteurs nest pas fournie ici par un mmento (voir paragraphe 5.6 et suivants), mais par un bloc de donnes global (voir paragraphe 9.1). Les rgles dadressage sont les suivantes : "NomDBglobal".Oprande, par ex. "Donnes_G".MotEss_Vitesse_courante

Insrez un nouveau rseau et programmez lappel du moteur Diesel. Procdez pour cela comme pour le rseau 1.

10-4

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dun bloc multiinstance

Insrez un nouveau rseau et programmez un circuit srie, puis compltez ses adresses. Enregistrez ensuite votre programme et fermez le bloc. Utilisez chaque fois les variables temporaires. Vous reconnaissez celles-ci au symbole ci-contre. Enregistrez votre programme et fermez le bloc.

Les variables temporaires ("MotEss_Vitesse_atteinte" et "MotDies_Vitesse_atteinte") sont transfres au paramtre de sortie "Vitesse_atteinte" qui est ensuite trait dans lOB1.

Programmer le FB10 avec LIST

Si vous programmez en LIST, slectionnez la zone de saisie du nouveau rseau et entrez les instructions LIST ci-contre. Enregistrez votre programme et fermez le bloc.

Getting Started STEP 7 C79000-P7077-C48-01

10-5

Programmation dun bloc multiinstance

Programmer le FB10 en LOG


Si vous programmez en LOG, slectionnez la zone de saisie dun nouveau rseau et entrez les instructions LOG suivantes. Enregistrez ensuite votre programme et fermez le bloc.

Pour que les deux appels du FB1 dans le FB10 soient traits, il faut galement appeler ce dernier. Vous ne pouvez programmer de multiinstances que pour les blocs fonctionnels. La cration de multiinstances nest pas possible pour les fonctions (FC). Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs", "Cration de blocs de code" et "Multiinstances dans la dclaration des variables" via la commande de menu ? > Rubriques daide.

10-6

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dun bloc multiinstance

10.3 Gnrer un DB10 et modifier la valeur effective


Le bloc de donnes DB10 remplacera les blocs de donnes DB1 et DB2. Le DB10 renferme les donnes du moteur essence et Diesel requises plus tard lors de lappel du FB10 dans lOB1 (voir lappel du FB1 dans lOB1 dans le paragraphe 5.6 et les suivants). Gnrez un bloc de donnes DB dans le dossier Blocs du projet "Getting Started" avec le menu contextuel du bouton droit de la souris DB10.

Modifiez pour cela dans la bote de dialogue "Proprits Bloc de donnes" le nom du bloc de donnes DB10, slectionnez dans la liste droulante correspondante le type "DB dinstance". Choisissez dans la liste droulante de droite le bloc fonctionnel "FB10" auquel il doit tre affect et confirmez vos entres avec OK. Le bloc de donnes DB10 est maintenant insr dans le projet "Getting Started". Ouvrez le DB10 par double clic. Confirmez la bote de dialogue suivante avec OUI pour paramtrer le bloc de donnes dinstance. Activez la vue des donnes.

La vue des donnes affiche toutes les variables du DB10, y compris les variables "internes" des deux appels du FB1 ("instances locales"). La vue de dclaration montre les variables telles que vous les avez dclares dans le FB10.

Getting Started STEP 7 C79000-P7077-C48-01

10-7

Programmation dun bloc multiinstance

Entrez "1300" la place de la valeur effective du moteur Diesel. Enregistrez le bloc de donnes et fermez-le.

La table de dclaration des variables du DB10 contient prsent toutes les variables. Dans la partie suprieure de la table, vous voyez les variables de lappel du bloc fonctionnel "Moteur essence" et dans la partie infrieure de la table lappel du bloc fonctionnel "Moteur Diesel" (voir paragraphe 5.5). Les variables internes du FB1 conservent leurs noms symboliques, par exemple "Marche". Il est seulement prcd du nom de linstance locale, par exemple "MotEss.Marche". Pour plus dinformations, rfrez-vous aux rubriques "Programmation de blocs", "Cration de blocs de donnes" via la commande de menu ? > Rubriques daide.

10-8

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dun bloc multiinstance

10.4 Appel du FB10 dans lOB1


Dans notre exemple, le FB10 est appel dans lOB1. Il sagit de la mme fonctionnalit que celle nous avons dj vue lorsque nous avons programm et appel le bloc FB1 dans lOB1 (paragraphes 5.6 et suivants). Lutilisation dun bloc fonctionnel multiinstance permet de remplacer les rseaux 4 et 5 programms au chapitre 5. Ouvrez lOB1 dans lequel vous venez de programmer le bloc FB10.

Dfinir les mnmoniques


La fentre de lditeur de programme CONT/LIST/LOG est ouverte. uvrez la table des mnmoniques avec Outils > Table des mnmoniques et entrez les noms symboliques du bloc fonctionnel FB10 et du bloc de donnes DB10 dans la table. Enregistrez la table des mnmoniques et fermez la fentre.

Programmer lappel dans CONT


Insrez la fin de lOB1 un nouveau rseau et programmez lappel du FB10 ("Moteurs").

Getting Started STEP 7 C79000-P7077-C48-01

10-9

Programmation dun bloc multiinstance

Compltez lappel en inscrivant les mnmoniques voulus comme dans la figure ci-dessous. Effacez lappel du FB1 dans lOB1 (rseaux 4 et 5 des paragraphes 5.6 et suivants), car le bloc FB1 ne devra plus tre appel que centralement par lintermdiaire du bloc FB10. Enregistrez ensuite votre programme et fermez le bloc.

Le signal de sortie "Vitesse_atteinte" du FB10 ("Moteurs") est transmis la variable du bloc de donnes.

Programmer lappel dans LIST


Si vous programmez en LIST, cliquez dans la zone de saisie du nouveau rseau et entrez les instructions LIST suivantes. Slectionnez pour cela le FB10 "Moteurs" dans les blocs FB du catalogue des lments de programme. Effacez lappel du FB1 dans lOB1 (rseaux 4 et 5 des paragraphes 5.6 et suivants), car le bloc FB1 ne devra plus tre appel que centralement par lntermdiaire du FB10. Enregistrez ensuite votre programme et fermez le bloc.

10-10

Getting Started STEP 7 C79000-P7077-C48-01

Programmation dun bloc multiinstance

Programmer lappel dans LOG


Si vous programmez en LOG, cliquez dans la zone de saisie du nouveau rseau et entrez les instructions LOG comme dans la figure ci-dessous. Slectionnez pour cela dans le catalogue des lments du programme le FB10 "Moteurs" parmi les blocs FB. Effacez lappel du bloc FB1 dans lOB1 (rseaux 4 et 5 des paragraphes 5.6 et suivantes), car le bloc ne devra plus tre appel que centralement par lintermdiaire du bloc FB10. Enregistrez ensuite votre programme et fermez le bloc.

Si vous avez besoin dans votre solution dautomatisation dautres commandes de moteurs, par exemple pour des moteurs gaz naturel ou gaz biologique, vous pouvez les programmer comme multiinstance et les appeler dans le FB10. Vous dclarez pour cela les nouveaux moteurs dans la table de dclaration des variables du FB10 ("Moteurs") et programmez lappel du FB1 (multiinstance dans le catalogue des lments de programme) dans le bloc FB10. Si vous voulez utiliser ladressage symbolique, vous devez dfinir les nouveaux mnmoniques, par exemple pour la mise en marche et la mise larrt des moteurs, dans la table des mnmoniques. Pour plus dinformations, rfrez-vous aux rubriques "Appel des aides de rfrence", "Description du langage CONT/LOG/LIST" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

10-11

Programmation dun bloc multiinstance

10-12

Getting Started STEP 7 C79000-P7077-C48-01

11 Configuration de la priphrie dcentralise


11.1 Installer et configurer la priphrie dcentralise avec PROFIBUS-DP
Dans la configuration traditionnelle dune installation dautomatisation, les cbles de liaison des capteurs et des actionneurs sont enfichs directement dans les modules dentres/sorties de lappareil de base, entranant des cots et un temps de cblage importants. En configuration dcentralise, les cots de cblage peuvent tre considrablement rduits en plaant les modules dentres/sorties proximit des capteurs et actionneurs. Le bus de terrain PROFIBUS-DP fait la liaison entre le systme dautomatisation, les modules de priphrie et les appareils de terrain. Vous avez pu apprendre la programmation utilise pour la configuration conventionnelle au chapitre 6. La configuration dcentralise ne requiert pas de programmation particulire. Vous choisissez vos modules dans le catalogue du matriel, les disposez sur un chssis et adaptez leurs proprits en fonction de vos besoins. Vous devez savoir comment crer un projet et configurer une installation centralise ( voir chapitre 6 et paragraphe 2.1).
Esclaves compacts : par ex. modules dE/S ET 200B-16DI / -16DO Esclaves modulaires : par ex. ET 200 M-IM153

Rseau PROFIBUS-DP entre le matre et les esclaves

Liaison directe entre la CPU et la PG/lePC via MPI

Appareil matre : par exemple la CPU 315-2DP

Getting Started STEP 7 C79000-P7077-C48-01

11-1

Configuration de la priphrie dcentralise

Crer un nouveau projet


Vous pouvez nouveau partir du SIMATIC Manager. Fermez ventuellement les projets encore ouverts pour plus de clart.

Crez un nouveau projet.

Slectionnez lorsque lAssistant vous le demande la CPU 315-2DP (CPU avec rseau PROFIBUS-D). Procdez autrement comme au paragraphe 2.1 et entrez comme nom de projet "GS-DP" (Getting Started Priphrie dcentralise). Si vous dsirez tout de suite crer votre propre configuration, indiquez cet endroit votre CPU. Attention ! Elle doit prendre DP en charge.

Insrer un rseau PROFIBUS


Slectionnez le dossier GS-DP.

Insrez un rseau PROFIBUS via le menu contextuel du bouton droit de la souris.

11-2

Getting Started STEP 7 C79000-P7077-C48-01

Configuration de la priphrie dcentralise

Configurer la station
Slectionnez le dossier Station SIMATIC 300 et double-cliquez sur Matriel. Ceci ouvre la fentre "HW Config" (voir le paragraphe 6.1).

La CPU 315-2DP est dj enfiche sur le chssis. Sil nest pas visible, slectionnez la commande de menu Affichage > Catalogue du matriel pour faire apparatre le catalogue ou cliquez sur le bouton correspondant. Slectionnez et faites glisser un module dalimentation PS307 2A lemplacement 1.

Enfichez de la mme manire sur les emplacements 4 et 5 les modules dentres/sorties DI32xDC24V et DO32xDC24V/0.5A.

Il est possible de placer aussi des units centrales sur le mme rack en plus de la CPU-DP (ceci ne sera pas expliqu ici).

Getting Started STEP 7 C79000-P7077-C48-01

11-3

Configuration de la priphrie dcentralise

Configurer le rseau matre DP


Slectionnez le matre DP lemplacement 2.1 et insrez un rseau matre DP.

Acceptez ladresse propose dans la bote de dialogue qui saffiche. Slectionnez dans le champ "Sous-rseau" lentre "PROFIBUS(1)" et confirmez vos entres avec OK.

Vous pouvez dplacer tous les objets qui se trouvent sur le rseau matre DP en les slectionnant et en les faisant glisser tout en maintenant le bouton de la souris enfonc.

Naviguez dans le catalogue du matriel jusquau module B-16DI et insrez-le par glisser-lcher dans le rseau matre (attendez que le curseur change daspect et relchez-le). Ladresse rseau du module insr peut tre alors modifie dans la page donglet Paramtres de ses proprits. Confirmez ladresse propose avec OK.

11-4

Getting Started STEP 7 C79000-P7077-C48-01

Configuration de la priphrie dcentralise

Amenez de la mme manire le module B-16DO sur le rseau matre DP. Son adresse de rseau sera automatiquement modifie dans les proprits. Confirmez celle-ci par OK.

Faites glisser le coupleur IM 153 sur le rseau matre DP et validez ladresse rseau propose avec OK.
Nous conservons dans notre exemple les adresses par dfaut. Celles-ci peuvent toutefois tre modifies pour les besoins de linstallation.

Slectionnez le module ET 200M dans le rseau. Vous pouvez voir dans la table de configuration les emplacements vides de lET 200M. Slectionnez lemplacement 4.

Le module ET 200M peut recevoir son tour dautres modules dentres/sorties. Choisissez par exemple le module DI32xDC24V pour lemplacement 4 et insrez le module par double clic.
Vrifiez avant de slectionner des modules dans le catalogue du matriel que vous tes dans le bon dossier, par exemple dans le dossier ET 200M si vous voulez slectionner des modules ET 200M.

Getting Started STEP 7 C79000-P7077-C48-01

11-5

Configuration de la priphrie dcentralise

Modifier ladresse rseau


Dans notre exemple, nous navons pas eu modifier ladresse rseau. Dans la pratique, vous aurez souvent le faire. Slectionnez lun aprs lautre les autres partenaires de rseau et vrifiez leurs adresses dentre et de sortie. Les adresses ont t modifies dans la configuration matrielle, il ny a pas dadresses attribues en double. Admettons que vous vouliez modifier ladresse du ET 200M : Slectionnez le ET 200M et doublecliquez sur le module DI32xDC24V (emplacement 4).

Modifiez prsent dans la page donglet Adresses des proprits les adresses dentre de 6 12. Fermez la bote de dialogue avec OK.

11-6

Getting Started STEP 7 C79000-P7077-C48-01

Configuration de la priphrie dcentralise

Enregistrez finalement votre configuration de priphrie dcentralise avec la commande : Enregistrer et compiler. Fermez la fentre.

Avec la commande Enregistrer et compiler, une vrification de la cohrence de votre configuration a automatiquement lieu. Lorsque cette vrification na dtect aucune erreur, les donnes systme sont gnres et charges dans le systme cible. Avec la commande Enregistrer, vous pouvez enregistrer une configuration inacheve ou comportant encore des erreurs. Il nest pas possible de charger les donnes dans le systme cible.

Alternative : configuration du rseau


La configuration de priphrie dcentralise peut galement tre effectue dans la configuration des rseaux. Double-cliquez dans SIMATIC Manager sur le rseau PROFIBUS (1). La fentre "NetPro" souvre. Vous pouvez ajouter par glisser-lcher dautres esclaves DP que vous slectionnez dans le catalogue des objets de rseau au bus PROFIBUS-DP. Double-cliquez sur un lment quelconque pour le configurer. La fentre "Configuration matrielle" souvre.

Avec Station > Vrifier la cohrence (fentre de la configuration matrielle) et Rseau > Vrifier la cohrence (fentre de la configuration de rseau), vous pouvez lancer une vrification formelle du programme avant quil soit enregistr. Les erreurs trouves par STEP 7 sont affiches et des solutions vous sont proposes. Pour plus dinformations, rfrez-vous aux rubriques "Configuration du matriel" et "Configuration de la priphrie dcentralise" via la commande de menu ? > Rubriques daide.

Getting Started STEP 7 C79000-P7077-C48-01

11-7

Configuration de la priphrie dcentralise

Flicitations ! Vous tes arriv en fin de parcours de ce "Getting Started" et avez abord les thmes centraux, appris les techniques de programmation et fait un tour dhorizon des fonctions principales de STEP 7. Vous pouvez prsent vous lancer dans votre premier projet. Pour le cas o vous auriez besoin daide dans la recherche de fonctions prcises ou auriez oubli des manipulations, noubliez pas de recourir laide tendue de STEP 7. Pour vous permettre dapprofondir vos connaissances sur STEP 7, nous vous proposons des stages de formation. Votre partenaire Siemens dans nos filiales se tient votre disposition pour toute question. Nous vous souhaitons beaucoup de succs pour la conception de vos projets ! Votre Siemens AG

11-8

Getting Started STEP 7 C79000-P7077-C48-01

A. Annexe A
A.1 Vue densemble des exemples de projet relatifs au manuel Getting Started
ZFr01_02_STEP7__LIST_1-10 : Les chapitres programms de 1 10 y compris la table des variables du langage de programmation LIST. ZFr01_01_STEP7__LIST_1-9 : Les chapitres programms de 1 9 y compris la table des variables du langage de programmation LIST. ZFr01_06_STEP7__CONT_1-10 : Les chapitres programms de 1 10 y compris la table des variables du langage de programmation CONT. ZFr01_05_STEP7__CONT_1-9 : Les chapitres programms de 1 9 y compris la table des variables du langage de programmation CONT. ZFr01_04_STEP7__LOG_1-10 : Les chapitres programms de 1 10 y compris la table des variables du langage de programmation LOG. ZFr01_03_STEP7__LOG_1-9 : Les chapitres programms de 1 9 y compris la table des variables du langage de programmation LOG. ZFr01_07_STEP7__DezP_11 : Le chapitre programm 11 et la priphrie dcentralise.

Getting Started STEP 7 C79000-P7077-C48-01

A-1

Annexe A

A-2

Getting Started STEP 7 C79000-P7077-C48-01

Index
A
Adresse absolue ............................................ 3-1 Adresse rseau modifier .................................................... 11-6 Appel de bloc dans CONT ........................... 5-16 Appel de la fonction ....................................... 8-6 Appel de l'Aide de STEP 7............................. 2-5 Appliquer la tension ....................................... 7-3 tester ..........................................................7-6 Copier la table des mnmoniques ..................4-2 Cration dun programme avec FB et DB.......5-1 Cration dun programme dans lOB1 ............4-1 Cration de la table des variables ..................7-8 Cration d'un bloc de donnes global ............9-1 Cration d'un projet ........................................2-1 Cration d'une fonction...................................8-1 Crer un bloc fonctionnel................................5-1

B
Beispielprojekte..............................................A-1 Bloc de donnes programmer ............................................... 9-1 Bloc de donnes global crer........................................................... 9-1 ouvrir .......................................................... 9-1 Bloc de donnes global dans la table des variables .................................................... 9-3 Bloc fonctionnel crer........................................................... 5-1 ouvrir .......................................................... 5-1 Blocs de donnes gnrer les blocs de donnes dinstance............................................. 5-14

E
Effacement gnral de la CPU et passage RUN ......................................7-3 Etablissement de la liaison en ligne ...............7-1 Evaluer la mmoire tampon de diagnostic....7-12

diteur de mnmoniques................................3-2 diteur de programme CONT/LIST/LOG........4-3

F
Fonction appeler .......................................................8-6 crer ...........................................................8-1 ouvrir ..........................................................8-1 Forage des variables ..................................7-10

C
Chargement de blocs isols........................... 7-5 Chargement du programme dans le systme cible................................. 7-3 Choix du langage de programmation ............. 4-1 Commutation de la table des variables en ligne ...................................................... 7-9 Configuration de la priphrie dcentralise............................................ 11-1 Configuration des units centrales................. 6-1 Configuration du rseau............................... 11-7 Configuration du rseau matre DP.............. 11-4 Configuration matrielle .......................... 6-1, 7-1 Configuration PROFIBUS-DP ...................... 11-1 CONT appel de bloc............................................ 5-16 programmation du FB1 .............................. 5-3 programmer un circuit ................................ 4-6 programmer un circuit srie ....................... 4-4 programmer une bascule ........................... 4-7 programmer une fonction de temporisation .................................... 8-3

G
Gnrer les blocs de donnes dinstance.....5-14

I
Insrer > Mnmonique ..........................4-9, 4-12 Insertion > Mnmonique.................................4-5 Interroger ltat du module............................7-12

L
Lancement de SIMATIC Manager ..................2-1 Liaison en ligne tablir..........................................................7-1 LIST Appel de bloc............................................5-19 programmation du bloc FB1 .......................5-7 programmer une bascule..........................4-10 programmer une fonction de temporisation .....................................8-4

Getting Started STEP 7 C79000-P7077-C48-01

Index-1

Index

programmer une instruction ET.................. 4-8 programmer une instruction OU................. 4-9 tester.......................................................... 7-6 LIST insrer un mnmonique ............................. 4-9 reprsentation symbolique ....................... 4-10 LOG appel de bloc............................................ 5-21 Programmation du bloc FB1 .................... 5-10 programmer une bascule ......................... 4-14 programmer une fonction de temporisation .................................... 8-5 programmer une fonction OU................... 4-13 tester.......................................................... 7-6 LOG insrer un mnmonique ........................... 4-12 programmer une fonction ET ................... 4-11 reprsentation symbolique ....................... 4-14 Logiciels optionnels SIMATIC ........................ 2-6

Programmation du bloc FB1 en LIST .............5-7 Programmation du bloc FB1 en LOG ...........5-10 Programmation du FB1 en CONT ..................5-3 Programmation d'un circuit parallle en CONT ....................................................4-6 Programmation d'une bascule en CONT........4-7 Programmation d'une bascule en LOG ........4-14 Programmation d'une fonction de temporisation en CONT.........................8-3 Programmation d'une fonction de temporisation en LIST ...........................8-4 Programmation d'une fonction de temporisation en LOG ...........................8-5 Programmation d'une fonction OU en LOG ..4-13 Programmation en ligne .................................7-5 Programmation symbolique............................3-2

R
Remplir la table de dclaration des variables CONT .........................................................5-3 LIST............................................................5-7 LOG..........................................................5-10 Reprsentation symbolique CONT .........................................................4-7 Rseau > Vrifier la cohrence ....................11-7 Rseau matre DP configurer .................................................11-4

M
Matrielle configuration.................................. 6-1 Mmoire tampon de diagnostic valuer ..................................................... 7-12 Mise en marche de la CPU ............................ 7-5 Modification de ladresse rseau.................. 11-6 Modifier les valeurs effectives ...................... 5-14 Multiinstance programmer ............................................. 10-1

N
Navigation dans la structure du projet............ 2-6

S
Station > Vrifier la cohrence .....................11-7 STEP 7 installer .......................................................1-5 STEP 7 mode d'emploi ............................................1-4 STEP7 Assistent nouveau projet........................................2-1 Structure du projet dans SIMATIC Manager...2-4

O
OB1 ouvrir .......................................................... 4-2 Ouvrir l'OB1 ................................................... 4-2 Ouvrir un bloc de donnes global .................. 9-1 Ouvrir un bloc fonctionnel .............................. 5-1 Ouvrir une fonction......................................... 8-1

T
Table des mnmoniques ................................3-2 Table des mnmoniques copier..........................................................4-2 Table des variables commuter en ligne ......................................7-9 crer ...........................................................7-8 Test avec CONT.............................................7-6 Test avec LIST ...............................................7-6 Test avec LOG ...............................................7-6 Type de donns..............................................3-3

P
Priphrie dcentralise configurer ................................................. 11-1 Programmation dun appel de bloc en LIST........................................ 5-19 Programmation dun appel de bloc en LOG........................................ 5-21 Programmation dun bloc de donnes global...................................... 9-1 Programmation dun circuit srie en CONT ... 4-4 Programmation dune bascule en LIST........ 4-10 Programmation dune fonction (FC) ............... 8-1 Programmation dune fonction ET en LOG............................................... 4-11 Programmation dune instruction ET en LIST................................................. 4-8 Programmation dune instruction OU en LIST ................................................ 4-9 Programmation dune multiinstance............. 10-1

V
Variables forcer ........................................................7-10 visualiser ..................................................7-10 Vrification du mode de fonctionnement ........7-5 Visualisation des variables ...........................7-10 Vue de dclaration .......................................10-7 Vue des donnes .........................................10-7
Getting Started STEP 7 C79000-P7077-C48-01

Index-2