Vous êtes sur la page 1sur 49

Automation and drives - SCE

Documents de formation T I A Page 1 sur 47 Annexe I


Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300














Document de formation
pour une solution complte dautomatisation
Totally Integrated Automation (T I A)

Annexe I
Base de la programmation dAPI
avec SIMATIC S7-300






Automation and drives - SCE


Documents de formation T I A Page 2 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300








































Ce document a t dit par Siemens A&D SCE (Automatisierungs und Antriebstechnik, Siemens A&D
Cooperates with Education) des fins de formation.
Siemens ne se porte pas garant de son contenu.

La communication, la distribution et lutilisation de ce document sont autorises dans le cadre de formation
publique. En dehors de ces conditions, une autorisation crite par Siemens A&D SCE est exige ( M. Knust: E-
Mail: michael.knust@hvr.siemens.de).
Tout non-respect de cette rgle entranera des dommages et intrts. Tous les droits, ceux de la traduction y
compris, sont rservs, en particulier dans le cas de brevets ou de modles dposs.

Nous remercions lentreprise Michael Dziallas Engineering et les enseignants dcoles professionnelles ainsi que
tous ceux qui ont particip llaboration de ce document.


Automation and drives - SCE


Documents de formation T I A Page 3 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

PAGE :

1. Avant-propos................................................................................................ 5

2. Structure et fonction dun API ...................................................................... 6

2.1 Catgorie de signaux en technique de rgulation....................................... 6
2.1.1 Signaux binaires ............................................................................................. 6
2.1.2 Signaux analogiques ....................................................................................... 8

2.2 Format de nombre........................................................................................ 10
2.2.1 Systme dcimal ............................................................................................ 10
2.2.2 Systme dual ................................................................................................. 11
2.2.3 Code BCD (Code 8-4-2-1) ................................................................................ 11
2.2.4 Systme hexadcimal ..................................................................................... 12
2.2.5 Reprsentation des systmes de nombre.......................................................... 13
2.2.6 Rgles de conversion ...................................................................................... 14

2.3 Notions du monde de linformatique ............................................................ 16
2.3.1 Bit .......................................................................................................... 16
2.3.2 Octet .......................................................................................................... 16
2.3.3 Mot .......................................................................................................... 16
2.3.4 Mot double..................................................................................................... 17
2.3.5 Adresse de bit ................................................................................................ 17
2.3.6 Adresse doctet .............................................................................................. 17
2.3.7 Adresse de mot .............................................................................................. 18
2.3.8 Adresse de mot double.................................................................................... 18

2.4 Structure dun API ........................................................................................ 19

2.5 Fonctionnement de base dun API ............................................................... 21
2.5.1 Le module central CPU.................................................................................... 21
2.5.2 Le systme bus ........................................................................................... 22
2.5.3 Le module dalimentation en courant ................................................................. 23
2.5.4 Mmoire programme ....................................................................................... 23
2.5.5 RAM .......................................................................................................... 23
2.5.6 Memory Card (Flash- EPROM)......................................................................... 23
2.5.7 Micro Memory Card (MMC).............................................................................. 24
2.5.8 Retirer et enficher des cartes mmoire (Memory Card et MMC)........................... 24

2.6 Systme dautomatisation SIMATIC S7......................................................... 25
2.6.1 SIMATIC S7-300............................................................................................. 25

Automation and drives - SCE


Documents de formation T I A Page 4 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

PAGE :

2.7 Traitement du programme ........................................................................... 32
2.7.1 Mmoire programme ....................................................................................... 32
2.7.2 Traitement linaire du programme..................................................................... 32
2.7.3 Traitement structur du programme .................................................................. 33
2.7.4 Blocs utilisateur.............................................................................................. 34
2.7.5 Blocs systmes pour les fonctions standards et systme................................... 34

3. Langage de programmation STEP7 ............................................................. 35

3.1 Gnralits sur le langage de programmation STEP7 ................................. 35

3.2 Conversion STEP5 STEP7........................................................................ 35

3.3 La norme IEC 61131...................................................................................... 36

3.4 Arborescence ............................................................................................... 37

3.5 Configurer et paramtrer.............................................................................. 39

3.6 Linstruction de commande.......................................................................... 40
3.6.1 Partie Opration.............................................................................................. 40
3.6.2 Partie Oprande.............................................................................................. 42

3.7 Adressage..................................................................................................... 43
3.7.1 Adressage mnmonique.................................................................................. 43
3.7.2 Adressage inconditionnel ................................................................................. 43

3.8 Reprsentation du programme..................................................................... 45
3.8.1 Schma contact CONT................................................................................. 45
3.8.2 Plan logique LOG............................................................................................ 45
3.8.3 Liste dinstructions LIST.................................................................................. 46

3.9 Mmoire interne ........................................................................................... 47
3.9.1 Mmoire interne rmanente.............................................................................. 47
3.9.2 Mmoire interne non rmanente....................................................................... 47


Automation and drives - SCE


Documents de formation T I A Page 5 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

1. AVANT-PROPOS

Lannexe I est le pr-requis pour le traitement du module Fondements de la programmation STEP
7.





















Objectif :
Les automates mmoire programmable, ou API , se sont aujourdhui imposs comme la partie
centrale de tout automate. Avec ces commandes, les tches dautomatisation peuvent tre excutes
conomiquement suivant chaque problmatique.


S P S
CAL CUL ER
SERVI R ET VI SUALI SER
SI GNALER ET PROTOCOLER
REGUL ER
COMMANDE R


On donnera dans ces documents un aperu sur le systme dautomatisation SIMATIC S7-300 et le
logiciel de programmation correspondant STEP 7.
Pr-requis :
Aucun pr-requis particulier nest ncessaire pour ltude de cette annexe, car elle traite elle-mme
des bases.


Systme de bus
industriels
2- 3 jours Modules D
Visualisation
des processus
2- 3 jours Modules F
Langages de
programmation
2- 3 jours Modules C
Communication IT
avec SIMATIC S7
1- 2 jours Modules E
Programmation sur STEP 7
Notions de base
2 - 3 jours Modules A
Simulation de systmes
avec SIMIT SCE
1- 2 jours Modules G
Fonctions tendues de la
programmation STEP 7
2- 3 jours Modules B
Automation and drives - SCE


Documents de formation T I A Page 6 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Automation and drives - SCE


Documents de formation T I A Page 7 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2. STRUCTURE ET FONCTION DUN API
La commande a pour tche de mener des oprations indivuelles dune machine ou dun dispositif
daprs un droulement prdfini de fonctions dpendant de signaleurs.

2.1 CATEGORIE DE SIGNAUX EN TECHNIQUE DE REGULATION
Les signaux lectriques se trouvant aux entres et sorties peuvent tre fondamentalement diviss en
deux groupes distincts :

Signaux binaires Signaux analogiques



2.1.1 SIGNAUX BINAIRES
Les signaux binaires peuvent seulement prendre deux tats de signal. Il sagit de :

Etat de signal 1 = Tension disponible = par ex. Interrupteur ferm
Etat de signal 0 = Tension indisponible = par ex. Interrupteur ouvert

Automation and drives - SCE


Documents de formation T I A Page 8 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

En technique des commandes, on utilisera souvent une tension continue de 24V comme Tension de
commande . Un niveau de tension de + 24V sur une borne dentre correspond ainsi ltat de signal
1 pour cette entre. De la mme manire, 0V correspond ltat du signal 0. En plus de ltat du
signal, le classement logique des capteurs est aussi important. On doit savoir pour le capteur sil sagit
dun contact ouverture ou dun contact fermeture. Un contact ouverture dlivre sil est actif, cest-
-dire lorsquil est actionn, ltat de signal 0. On dsigne ce comportement commutateur par actif 0
ou actif bas (low). De la mme manire, un contact fermeture qui est actif 1 / actif haut (high)
dlivre un signal 1 lorsquil est actionn.
En gnral, les signaleurs sont des actifs 1. Une application typique pour un capteur actif 0 est celle
du bouton darrt durgence. Un bouton darrt durgence est toujours conducteur en tat non actionn
(bouton de secours non appuy), cest--dire quil dlivre lentre connecte le signal 1 (Fil rupture
de scurit). Si laction du bouton darrt durgence doit entraner une raction dfinie (par exemple,
celle de fermer tous les clapets), alors celle-ci doit tre dclenche par ltat de signal 0.

Cases binaires :
Un signal binaire peut donc prendre seulement les deux valeurs (tats de signal) 0 ou 1. Un tel signal
est aussi dsign sous le nom de binaire numrique et prend le nom de bit en langage technique.
Plusieurs signaux binaires regroups engendrent un signal numrique suivant un ordre dfini. Alors
quun signal binaire permet seulement la prise en compte dune grandeur deux valeurs (par ex. porte
ouverte / porte ferme), on peut, par la reprsentation de cases binaires, construire par ex. un nombre
ou un chiffre comme information numrique.
Le regroupement de n cases binaires permet la reprsentation de 2n combinaisons diffrentes.

On peut ainsi par ex. avec 2 cases binaires soit 2x2 reprsenter 4 informations diffrentes :

0 0 Information1 (par ex. les deux interrupteurs sont ouverts)
0 1 Information2 (Commutateur 1 ouvert / Commutateur 2 ferm)
1 0 Information3 (Commutateur 1 ferm / Commutateur 2 ouvert)
1 1 Information4 ( les deux interrupteurs sont ferms)

Automation and drives - SCE


Documents de formation T I A Page 9 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.1.2 SIGNAUX ANALOGIQUES
Contrairement un signal binaire, qui peut seulement prendre les deux tats de signal Tension
disponible +24V et Tension indisponible 0V, les signaux analogiques peuvent prendre de nombreuses
valeurs lintrieur dun domaine donn. Lexemple typique de capteur analogique est le potentiomtre.
Selon la position du curseur sur le potentiomtre, on peut lui faire prendre une rsistance quelconque
en-dessous de sa rsistance maximale.

Exemples de grandeurs analogiques en technique des rgulations :

n Temprature -50 ... +150C
n Dbit 0 ... 200l/min
n Nombre de tours 500 ... 1500 U/min
n etc.

Ces caractristiques physiques sont converties en tensions lectriques, courants ou rsistances
laide dun convertisseur de mesure. Si lon doit dterminer par exemple un nombre de tours, on peut
convertir un domaine de nombre de tours de 500 1500 tours/min dans un domaine de tension de 0
+10V par un convertisseur de mesure. Si lon mesure un nombre de tours de 865 tours/min, le
convertisseur de mesure nous donne ainsi une tension de + 3,65 V.


























36
1000
10V
10tr : 1000 tr/min = 0,01 V/U/min
365 tr/min x 0,01 tr/U/min = 3,65
0 V +10
50 86 1500 Tr/min
Automation and drives - SCE


Documents de formation T I A Page 10 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Automation and drives - SCE


Documents de formation T I A Page 11 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Si des donnes analogiques sont traites par un SPS, la valeur de tension/courant/impdance lue doit
tre convertie en une information numrique. Cette conversion est connue sous le nom de conversion
analogique/numrique (CAN (A/D)). Ceci signifie quune valeur de tension valant par exemple 3,65V doit
tre traduite dans une srie de chiffres binaires comme information. Plus on utilise de chiffres binaires
pour la reprsentation numrique, meilleure est la rsolution. Si on avait par exemple un seul bit
disposition pour le domaine de tension 0 ... +10V, on pourrait seulement dire que la tension mesure
se trouve dans le domaine 0 .. +5V ou dans +5V ... +10V. Avec 2 bits, on pourrait dj diviser le
domaine en 4 sous domaines individuels, soit 0 ... 2,5 / 2,5 ... 5 / 5 ... 7,5 / 7,5 ... 10V. Les
convertisseurs A/N (A/D) usuels convertissent avec 8 ou 11 bits en technique des rgulations.
Les convertisseurs 8 bits ont 256 domaines lmentaires et les 11 bits une rsolution de 2048
domaines lmentaires.


11
10V: 2048 =
On peut dtecter des diffrences
de tension infrieures <5mV
0 204
0A/0V 20mA/10
Automation and drives - SCE


Documents de formation T I A Page 12 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.2 FORMAT DE NOMBRE
Pour le traitement des adresses de cellules mmoires, dentres, de sorties, de dures, de mmoires
internes etc, cest le systme dual qui est employ, et non pas le systme dcimal.

2.2.1 SYSTEME DECIMAL
Pour comprendre le systme dual, il est dabord ncessaire dtudier le systme dcimal. On souhaite
reprsenter ici le nombre 215. Le 2 y reprsente les centaines, le 1 les dizaines et le 5 les units. En
fait, on doit crire 215 comme ceci : 200+10+5. Si lon crit lexpression 200+10+5, comme reprsent
ci-dessous, laide de puissances de 10, alors on constate que chaque chiffre lintrieur dune case
est attribu une puissance de 10.



+ +
10 10 10
10 10 10
2 1
2 1 5
5
5
200 10
* * *
0 1 2
2 1 0
Dizaine Centaine Unit
Nombre dcimal
Puissance de 10


Chaque chiffre du nombre dcimal est attribu une puissance de 10.

Automation and drives - SCE


Documents de formation T I A Page 13 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.2.2 SYSTEME DE NOMBRE DUAL
Le systme de nombre dual ne connat que les chiffres 0 et 1, qui sont facilement reprsentables et
valuables en traitement des donnes. Il sagit donc dun systme de nombre binaire.
Les valeurs case dun nombre dual sont ordonnes suivant des puissances de 2, comme reprsentes
ci-dessous.





+

+

2
1
1 1 0
0 8 4
* * *
1 2 3
3 2 1


+

1
1
*
0
0
2 2 2
1 1 0
2 2 2 2
Dualzahl
Zugeordnete
Zehnerpotenz
= 13
Dezimalzahl
Nombre dual
Puissances de 2


Chaque chiffre lintrieur dun nombre dual est attibu une puissance de 2.

2.2.3 CODE BCD (CODE 8-4-2-1)
Pour pouvoir reprsenter de grands nombres de faon claire, on utilise souvent le code BCD (Binaire
Cod Dcimal). Le nombre dcimal est reprsent laide du systme de nombre dual. Le chiffre
dcimal reprsentable le plus haut est le 9. On a besoin pour la reprsentation du nombre 9 en case de
puissance de 2 jusqu 2
3
, soit 4 cases au total.


2 2 2 2
3 2 1 0
8 4 2 1
1 0 0 1
1 0 0 0
= 9 Dcimal
= 8 Dcimal

Comme la reprsentation du plus grand chiffre dcimal requiert 4 cases binaires, on utilise pour chaque
chiffre dcimal une unit de 4 cases, que lon dnomme une ttrade. Le code BCD est donc un code 4
bits.

Automation and drives - SCE


Documents de formation T I A Page 14 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Chaque nombre dcimal est cod de manire lmentaire. Le nombre 285 par ex. se compose de 3
chiffres dcimaux. Chaque chiffre dcimal est reprsent dans le code BCD en unit de 4 cases
(ttrade).

2 8 5
0010 1000 0101

Chaque chiffre dcimal est cod part et reprsent par une ttrade.

2.2.4 SYSTEME DE NOMBRE HEXADECIMAL
Le systme de nombre hexadcimal appartient aux systmes des cases de valeurs. Chaque case
emploie une puissance du nombre 16. Le systme hexadcimal est donc un systme en base 16.
Chaque case lintrieur dun nombre hexadcimal est attribue une puissance de 16. On a besoin
au total de 16 chiffres, 0 compris. Pour les chiffres de 0 9, on emploi le systme dcimal, pour les
chiffres de 10 15, on emploie les lettres A, B, C, D, E et F.

Chaque case lintrieur dun nombre hexadcimal est attribue une puissance de 16.

Automation and drives - SCE


Documents de formation T I A Page 15 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.2.5 REPRESENTATION DES SYSTEMES DE NOMBRE
Dezimalzahl
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Dualzahl
16 8 4 2 1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
Hexadezimalzahl
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
0
1
2
3
1
1
1
1

Dcimal
Dual
Hexadcimal



Automation and drives - SCE


Documents de formation T I A Page 16 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.2.6 REGLE DE CONVERSION
La conversion entre les diffrents systmes de reprsentation est base sur des rgles simples. Celle-
ci doit tre contrle par lutilisateur du SPS puisquelle va tre souvent employe dans le cadre de
cette technique. Pour identifier le systme de nombre sur lequel est reprsent un nombre, on va
employer un indice se situant droite du nombre. On utilise D pour dcimal, B pour binaire (dual) et
H pour hexadcimal. Cette identification est souvent ncessaire car une suite de chiffres reprsente
une valeur compltement diffrente suivant le systme de nombre considr.
Ainsi, par exemple 111 en dcimal correspond la valeur 111
D
(cent onze), en dual, 111
B
correspond
la valeur dcimale 7 (1x2
0
+ 1x 2
1
+ 1x2
2
) et le nombre hexadcimal 111
H
correspond la valeur
dcimale 273 (1x16
0
+ 1x16
1
+ 1x 16
2
).

Conversion Dcimal Dual

Les nombres dcimaux entiers seront diviss par la base 2 jusqu obtenir le rsultat zro. Les restes
(0 ou 1) successivement obtenus lors des divisions donnent le nombre dual. Il faut faire attention
lordre des restes. Le reste de la premire division est le premier bit en partant de la droite (bit de poids
faible).

Par ex. : On doit convertir le nombre dcimal 123 en son nombre dual.


Reste
Reste
Reste
Reste
Reste
Reste
Reste
Transposer dans
le sens des
aiguilles dune
montre !

Vrification :
1 1 1 1 0 1 1
1x2
6
+ 1x2
5
+ 1x2
4
+ 1x2
3
+ 0x2
2
+ 1x2
1
+ 1x2
0

64 + 32 + 16 + 8 + 0 + 2 + 1 = 123

Automation and drives - SCE


Documents de formation T I A Page 17 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Conversion Dcimal Hexadcimal

Cette conversion seffectue exactement comme la Dcimal Dual. La diffrence se situe au niveau de
la base employe : ici la base 16 (au lieu de la base 2 dans lautre cas). On doit donc diviser par 16 au
lieu de diviser par 2.

Par ex, le nombre dcimal 123 doit tre converti en sa reprsentation hexadcimale.


Reste
Reste
Transposer dans
le sens des
aiguilles dune
montre !


Vrification :
7 B
7x16
1
+ 11x16
0

112 + 11 = 123

Conversion Dual Hexadcimal

Pour la conversion dun nombre dual en un nombre hexadcimal, on pourrait tout dabord dterminer la
valeur dcimale du nombre (Addition des valeurs). On pourrait ensuite sucessivement diviser ce nombre
dcimal par 16 afin de le convertir en hexadcimal.
Mais il y a aussi la possibilit de convertir directement un nombre dual en sa valeur hexadcimale
correspondante.
Pour cela, on va tout dabord rpartir le nombre dual en groupes de 4, en commenant par la droite.
Chacun de ces groupes de 4 donne ensuite un nombre hexadcimal. Si ncessaire, on complte les
bits manquants du groupe le plus gauche par des zros.
On veut par ex. convertir le dual 1111011 directement en un nombre hexadcimal.
1 1 1 1 0 1 1B
1 0 1 1 0 1 1 1
0x2
3
+ 1x2
2
+ 1x2
1
+ 1x2
0
1x2
3
+ 0x2
2
+ 1x2
1
+ 1x2
0
7 B H

Automation and drives - SCE


Documents de formation T I A Page 18 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.3 NOTIONS INFORMATIQUES
On emploiera souvent des termes issu du vocabulaire du traitement des informations et des donnes
tels que BIT, OCTET et MOT dans le cadre du travail avec des automates mmoire programmable.

2.3.1 BIT
Bit est labrviation de chiffre binaire. Le bit est la plus petite unit dinformation binaire (base 2), il peut
prendre ltat de signal "1" ou "0".


2.3.2 OCTET
On utilise la notion dOCTET pour une unit compose de 8 chiffres binaires. Un octet a donc une taille
de 8 bits.


2.3.3 MOT
Un mot est une suite de chiffres binaires qui entretiennent une relation dfinie et qui sont vus comme
une unit. La longueur dun mot correspond 16 chiffres binaires.
Avec des mots, on peut par exemple reprsenter des :

Duals,
Caractres
Instructions de commande
pour un contrle



Un mot a donc la taille de 2 octets ou encore de 16 bits.
S i g n a l z u s t a n d
B Y T E 0 0 0 0 1 1 1 1
ETAT SIGNAL
0 Pas de tension

24

0
1 tension

0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 M O T
1 Octet 1 Octet
Etat de signal
OCTET
Automation and drives - SCE


Documents de formation T I A Page 19 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.3.4 DOUBLE MOT
Un double mot a une longueur de mot de 32 chiffres binaires.

Un double mot a donc la taille de 2 mots, de 4 octets, ou encore de 32 bits.

Dautres units existent : Kilobit ou Kilooctet pour 2
10
, donc 1024 bits respt. 1024 octets et le Megabit
ou Megaoctet pour 1024 Kilobit respt. 1024 Kilooctet.

2.3.5 ADRESSE DE BIT
Afin quon puisse accder aux bits lmentaires, chaque bit dun octet est attribu un chiffre,
ladresse de bit. On numrote ainsi ladresse du bit le plus droite 0. En incrmentant de 1 vers la
gauche, on numrote les autres bits, pour arriver ladresse de bit 7 tout gauche.



2.3.6 ADRESSE DOCTET
Mme les octets lmentaires reoivent des numros, les adresses doctet. De plus, loprande est
aussi identifi, afin que par ex. EB 2 reprsente loctet dentre 2 ou que AB 4 reprsente loctet de
sortie 4.
Les bits lmentaires sont adresss de manire unique par la combinaison dadresse de bit et doctet.
Ladresse de bit est spare de ladresse doctet par un point. A droite du point se trouve ladresse de
bit, gauche de celui-ci ladresse de loctet.



7 6 5 4 3 2 1 0
B i t a d r e s s e
Adresse de
bit
E 0 . 7 E 0 . 6 E 0 . 5 E 0 . 4 E 0 . 3 E 0 . 2 E 0 . 1 E 0 . 0
B y t e a d r e s s e 1

B y t e
Adresse
doctet
1
octet
Automation and drives - SCE


Documents de formation T I A Page 20 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.3.7 ADRESSE DE MOT
Le numrotage des mots donne ladresse de mot.

Indication : En employant des mots, par ex. des mots dentres (EW), des mots de sortie (AW), des
mots de mmoire interne (MW) etc., ladresse du mot est toujours la plus petite adresse
des 2 octets correspondants. Par ex, un mot se composant de EB2 et de EB3, a pour
adresse EW2.





Indication : Lors du traitement de mot, il faut faire particulirement attention : par ex. le mot dentre 0
et le mot dentre 1 se recoupent dans un octet. En outre, on commence compter les
bits en commenant par la droite. Par ex., le bit 0 de EW1 est E2.0. Le bit 1 de E2.1. ...
Le bit 7 de E 2.7. Le bit 8 de E1.0. ... Le bit 15 de E1.7. Entre les bits 7 et 8, il y a ainsi
un saut .

2.3.8 ADRESSE DE DOUBLE MOT
Le numrotage des doubles mots donne ladresse des doubles mots.

Indication : En employant des mots doubles, par ex ED, AD, MD etc. ladresse de mot double est
toujours ladresse de mot la plus petite des deux mots correspondants.






ED0
Adresse de double mot
EW0 EW2
EB0 EB1 EB2 EB3
EW1
EW0 EW2
EB0 EB1 EB2 EB3
EW1
Adresse de mot
Automation and drives - SCE


Documents de formation T I A Page 21 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.4 STRUCTURE DUN API
Les automates commande programmable sont des appareils fabriqus en srie, qui sont conus de
manire gnrique. Tout ce qui est ncessaire la technique des rgulations, les lments logiques,
les fonctions mmoire, les temporisateurs, les compteurs etc est intgr lorigine dans lappareil
par le constructeur. Ces lments, pour la programmation, feront partie de la commande fonctionnelle.
Les appareils de commande sont proposs en diffrentes units de fonction. Elles se diffrencient
notamment par le nombre possible de :

Entres et sorties,
Espaces mmoire,
Compteurs,
Dures,
Fonctions mmoire interne,
Fonctions spcialises,
par la vitesse de travail,
et la catgorie de traitement du programme.

Les appareils de commande importants sont organiss en blocs individuels de faon modulaire. Avec
ces systmes modulaires vous pouvez adapter vos applications pratiques partir des quipements de
base, en assemblant des systmes SPS.
Pour les petites tches dautomatisation, des appareils de commande conus de manire compacte
sont proposs. Ils se prsentent sous la forme dunits fermes avec un nombre fixe prdfini dentres
et de sorties.

Les lments suivants appartiennent un automate mmoire programmable :


SPS
Appar ei l cont r l eur / l ampe
d aver t i ssement
Aut omat e
Si gnal eur

Automation and drives - SCE


Documents de formation T I A Page 22 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Lautomate se compose pour lessentiel de :

Modul e c e nt r a l e pr oc e s s e ur
Modul es d ent r e/ sor t i e
M mo i r e p r o g r a mme
Sy s t me bus
Modul e d al i ment at i on cour ant
Aut o ma t e
Aut o ma t e


Conception dune commande mmoire programmable :


Strom ver-
s orgung s-
baugruppe
Zentralbaugruppe
Pr o gra mmsp eich er
P rozessor
Eingab e-
baugrupp e
Ausgabe-
baugruppe
Signalg eber
Stromversorgung fr Signalgeber
S
t
r
omvers orgun g fr S t ellgerte/
Leuchtmelder
Stellgerte / Leuchtmelder

Alimentation courant pour signaleur
Signaleur
Alimentation courant pour appareil de contrle
Lampe davertissement
Appareil de contrle Lampe davertissement
Module
alim
courant
Module
sortie Module
entre
Module central
Mmoire programme

Automation and drives - SCE


Documents de formation T I A Page 23 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.5 FONCTIONNEMENT DE BASE DUN API

2.5.1 LE MODULE CENTRAL CPU
La tension venant du signaleur est connecte sur la barrette de connexion du module dentre. Dans la
CPU (Module central), le processeur traite le programme se trouvant dans la mmoire et interroge les
entres de lappareil pour savoir si elles dlivrent de la tension ou pas. En fonction de cet tat des
entres et du programme se trouvant en mmoire, le processeur ordonne au module de sortie de
commuter sur le connecteur de la barrette de connexion correspondante. En fonction de ltat de
tension sur les connecteurs des modules de sortie, les appareils positionner et les lampes
indicatrices sont connects ou dconnects.

Unit centrale (CPU) de lAPI:

000 UE 1.0
001 UE 1.1
002 = A 0.0
003 OE 2.0
509 OE 3.2
510 =A 4.0
BE
Steuerwerk
Anweisungs-
Register
Merker
Interne Zeiten
Interne Zhler
Prozeabbild fr
digitale und
analoge Ein-
und Ausgnge
+1
Peripheri ebus ( Busmodul )
Eingabe
digital und
anl og
Ausgabe
digit al und
analog
Zeit-, Zhl-
und Grenzwert-
baugruppen

Mmoire
interne
Tempos internes
Compteurs internes
Registre
dinstructions
Unit de
contrle
Bus de priphrie (module de bus)
Image du processus
pour les
entres/sorties
analogiques et
numriques
Entre
num. et
analogique
Sortie num.
et
analogique
Modules temps -
compteur - limite



Automation and drives - SCE


Documents de formation T I A Page 24 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Le compteur dadresses interroge les instructions du programme mmoire les unes aprs les autres
(srie) et provoque la transmission dinformations dpendantes du programme depuis la mmoire
programme au registre dinstructions. On appelle usuellement les mmoires dun processeur les
registres.
Le systme de commandes obtient ses instructions du registre dinstructions. Pendant que le systme
de commande traite les instructions en cours, le compteur dadresse dcale la prochaine instruction
dans le registre dinstruction. A la transmision du statut des entres dans limage des processus des
entres (PAE) se succdent les oprations logiques, la mise en place des membres temporels, les
compteurs, les accumulateurs et la transmission du rsultat de lopration logique (VKE) limage des
processus des sorties (PAA). Si aprs lexcution du programme utilisateur, la fin du bloc (BE) est
reconnue, alors la transmission de chaque statut a lieu depuis le PAA aux sorties.
Le bus de priphrie excute lchange de donnes entre le module central et la priphrie.
Les modules numriques dentre/sortie, les modules analogiques dentre/sortie et les modules de
temporisation, de compteur et de frontire appartiennent la priphrie.

2.5.2 SYSTEME A BUS
Le systme bus est un cble collecteur de signaux pour la transmission. Lchange de signaux dans
les automates seffectue ainsi entre le processeur et les modules dentre et de sortie par un systme
bus de processus.
Le bus est compos de 3 cbles de signaux parallles :

Bus d a dr e s s e
Bu s d e
c o mma n d e
Bu s d e d o n n e s
S y s t me b u s


- Les modules lmentaires correspondent aux adresses par le bus dadresse..
- Avec le bus de donnes, les donnes sont transfres par exemple des modules dentre vers les
modules de sortie.
- Les signaux de commande et de surveillance du droulement des fonctions lintrieur de
lappareil dautomatisation sont transmis par le bus de commande.
Automation and drives - SCE


Documents de formation T I A Page 25 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.5.3 LE MODULE DALIMENTATION EN COURANT
Le module dalimentation en courant produit, depuis la tension secteur, la tension pour les modules
lectroniques de lappareil dautomatisation. La valeur de cette tension vaut 24 Volts. Les tensions pour
les signaleurs, les appareils de contrle et les lampes davertissement, qui marchent sous du 24 Volt,
ncessitent un appareil secteur et un transformateur de commande.

2.5.4 MEMOIRE PROGRAMME
Les lments mmoire sont des lments de conception, dans lesquels des informations sous la forme
de signaux binaires peuvent tre stockes (mmorises).
La mmoire programme est le plus souvent ralise en mmoire semi-conducteur. Une mmoire se
compose de cellules de mmoire au nombre de 512, 1024, 2048 etc. Il est courant dexprimer la
capacit (cest--dire le nombre de cellules mmoire) de la mmoire programme en multiples de 1 K ( 1
K correspond ici 1024).
Dans chaque cellule mmoire, on peut crire (programmer) une instruction de commande laide dun
appareil programmable. Chaque lment binaire dune cellule mmoire peut prendre le signal dtat "1"
ou "0".

2.5.5 RAM
On dsigne par RAM une mmoire en criture et lecture, ralise par la technique des semi-
conducteurs. Les diffrents emplacements mmoire sont identifis par des adresses, laide
desquelles on peut accder ces espaces mmoire.
Dans les cellules mmoires, on peut souvent crire des informations falcutatives. Les informations en
sont extraites et ceci sans pour autant perdre le contenu de linformation.
Les mmoires RAM sont pourtant volatiles, par exemple, les informations seront perdues en cas de
coupure de la tension dalimentation. La mmoire RAM est efface lectriquement.
Le programme interne et galement la mmoire de travail dun SIMATIC S7-300 sont prcisment de la
mmoire RAM. La batterie de mmoire tampon, quil est possible de mettre en place dans le SPS, sert
la scurisation de cette mmoire. Les nouvelles CPU compactes sont des exceptions ce systme.
Dans celles-ci, les programmes ne sont plus stocks dans la RAM, mais dans des Micro Memory Card
enfichables (MMC) (cf. chapitre 2.5.7). La mmoire de travail total y est mise en tampon. On na ainsi
plus besoin de la batterie.

2.5.6 CARTE MEMOIRE (MEMORY CARD) (FLASH- EPROM)
EPROM est labrviation pour mmoire morte EFFACABLE, PROGRAMMABLE. Le contenu de l
EPROM est effaable dans sa totalit par la lumire ultra violet ou par une tension, et ensuite de
nouveau programmable. Elle est ainsi bien adapte au transport de donnes sans perte.
Dans le SIMATIC S7- 300, vous avez la possibilit de scuriser votre programme avec le PG sur une
dnomme Memory Card (Flash-EPROM) et ainsi de remettre rapidement votre systme en
fonctionnement aprs un manque de tension.
Une tension de 5V est ncessaire pour effacer et crire sur cette Flash- EPROM. Cela peut donc se
produire avec un PG ou avec STEP 7, si elle est branche la CPU.
Automation and drives - SCE


Documents de formation T I A Page 26 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.5.7 CARTE MMOIRE MICRO (MICRO MEMORY CARD) (MMC)
Dans les nouvelles CPU compactes, les programmes, qui taient avant stocks dans la mmoire RAM,
sont dsormais enregistrs dans les Micro Memory Card (MMC) enfichables.
La mmoire de chargement total se trouve sur cette Micro Memory Card (MMC).
Les MMC existent avec des tailles de mmoire diffrentes. Ils servent la rception de blocs de code
et de donnes ainsi que de donnes sytmes (Configuration, Liaisons, paramtre de modules, etc.).
En outre, toutes les donnes de plannification dun projet peuvent tre stockes sur un MMC.
La mmoire vive toute entire est ici galement mise en mmoire tampon. Par contre, ici, aucune
batterie de mmoire tampon nest ncessaire.
La MMC peut tre crite avec un PG ou, connecte dans la CPU, avec STEP 7.

Indication : Sil ny a pas de MMC branche sur la CPU, alors la CPU nest pas en mesure de
marcher (il ny a pas de mmoire chargement disponible). Un fonctionnement nest possible quaprs le
branchement dune MMC et un formatage.

2.5.8 RETIRER ET ENFICHER DES MEMORY CARD ET MICRO MEMORY CARD (MMC)

La CPU dtecte le fait de retirer et de brancher une carte mmoire (Memory Card) dans chaque tat de
fonctionnement.

Droulement lors du dbranchement :
1. La CPU doit tre commute sur STOP.
2. Aucune fonction PG dcriture ne doit tre active (par ex. Le chargement de blocs)
3. Aprs le dbranchement de la carte mmoire, la CPU sollicite le formatage

Droulement lors du branchement :
La connexion dune carte mmoire (Memory Card) avec le programme utilisateur correspondant se
droule suivant les tapes suivantes :
1. Branchez la carte mmoire
2. La CPU sollicite le formatage
3. Confirmez le formattage
4. Dmarrez la CPU


Automation and drives - SCE


Documents de formation T I A Page 27 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.6 SYSTEME DAUTOMATISATION SIMATIC S7
SIMATIC S7 est une dsignation de produit de lentreprise SIEMENS et sapplique pour la srie actuelle
des automates mmoire programmable.
Cette famille de systmes SIMATIC S7 est un module de la solution complte dautomatisation pour
les techniques de production et de processus : Totally Integrated Automation.

2.6.1 SIMATIC S7 - 300
Spectre modulaire :
Les diffrentes catgories de modules suivantes forment, associes une CPU, la structure du
SIMATIC S7-300 :

PS : IM : SM : FM : CP :
Entre : - Envoyer DE/DA - Compteurs - Point point
AC120/230V - Recevoir - DC 24V - Rgles - PROFIBUS DP/FMS
Sortie: - Envoyer/Recevoir - AC 120/230V - Position
DC 24V - Relais - Came
- Etat
- 2 A AE/AA - NC
- 5 A - Tension
- 10 A - Courant FM-ATB :
- Rsistance - Technologie
utilisateur

Thermolment (Plateforme
MS-DOS/C)




Automation and drives - SCE


Documents de formation T I A Page 28 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Une slection de CPU :
On va maintenant lister des CPU adaptes des fins de formation. Il y a toutefois dautres CPU
meilleur fonctionnement de qualit et il sort toujours de nouvelles CPU avec des puissances de calcul
plus importantes. Celles-ci ne sont toutefois pas ncessaires pour traiter les programmes qui ne sont
pas trop demandeurs en mmoire dans cette formation.

CPU 312 IFM CPU 313 CPU 314 IFM CPU 314 CPU 315 CPU315-2DP
2K Instructions
6Koctets Mmoire
de travail
20Koctets
mmoire charg.
4K Instructions
12 Koctets
Mmoire de
travail 20Koctets
mmoire charg.
8K Instructions
24 Koctets
Mmoire de
travail 40Koctets
mmoire charg.
8K Instructions
24 Koctets
Mmoire de
travail 40Koctets
mmoire charg.
16K Instructions.
48 Koctets
Mmoire travail
80Koctets
mmoire charg.
16K Instructions.
48 Koctets
Mmoire de
travail 80K octets
mmoire charg.
128 octets DE/DA 128 octets
DE/DA
512 octets
DE/DA
512 octets
DE/DA
1024 octets
DE/DA
1024 octets
DE/DA
32 octets AE/AA 32 octets AE/AA 64 octets AE/AA 64 octets AE/AA 128 octets
AE/AA
128 octets
AE/AA
0,6 ms /
1K Commandes
0,6 ms /
1K Commandes
0,3 ms /
1 K Commandes
0,3 ms /
1K Commandes
0,3 ms /
1K Commandes
0,3 ms /
1K Commandes
1024 Bits mmoire
interne
2048 Bits
mmoire interne
2048 Bits
mmoire interne
2048 Bits
mmoire interne
2048 Bits
mmoire interne
2048 Bits
mmoire interne
32 Compteurs 64 Compteurs 64 Compteurs 64 Compteurs 64 Compteurs 64 Compteurs
64 Dures 128 Dures 128 Dures 128 Dures 128 Dures 128 Dures
10 DE/6DA
embarqus, dont 4
DE pour des
alarmes de
processus ou des
fonctions intgres
Compteurs rapides
EPROM
20Koctets intgr
20 DE/16DA
embarqus, dont
4 DE pour des
alarmes de
processus ou
des fonctions
intgres
Compteurs
rapides 4 AI /
1AA embarqus
Rsolution :
11Bits + signe
EPROM
40Koctets
intgr
PROFIBUS DP
integr
Connexion
(Matre / Esclave)
Attribution des
adresses
paramtrables

Automation and drives - SCE


Documents de formation T I A Page 29 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
CPU compactes :
Il y a galement un certain nombre de CPU compactes qui sont parfaitement adaptes la formation
du fait de leurs conceptions plus compactes, leurs prix particulirement bon march et leurs interfaces
de communication ventuelles intgres.
Celles-ci sont comparables la fois dans leur fonctionnalit et dans leur maniement avec les CPU
standards.
Le tableau suivant prsente une slection de CPU compacts..

CPU 312C CPU 313C CPU 313C-2DP CPU 314C-2DP
Dure de la
commande
(Binaire/flottant/rfrenc
e)
0.2 / 4 / 40s 0.1 / 2 / 20s 0.1 / 2 / 20s 0.1 / 2 / 20s.
Mmoire de travail 16 KB 32 KB 32 KB 48 KB
Carte mmoire micro
SIMATIC
De 64 KB 4
MB
De 64 KB 4
MB
De 64 KB 4
MB
De 64 KB 4 MB
Priphrie embaque
(On board)
DE/DA
AE/AA *PT100

10 / 6
-/-

24 / 16
4+1*/2

16 / 16
-/-

24 / 16
4+1* / 2
Fonctions
technologiques
- Compter/Frquence
- Sorties dimpulsion
- Rgulation
- Positionnement



2 (10KHz)
2 (2,5 KHz)
non
non


3 (30KHz)
4 (2,5 KHz)
oui
non


3 (30KHz)
4 (2,5 KHz)
oui
non


4 (60KHz)
4 (2,5 KHz)
oui
1
Interfaces
- MPI 187,5 kBaud
- Fonctionnalit DP


oui
non

oui
non

oui
Matre/Esclave

oui
Matre/Esclave

Automation and drives - SCE


Documents de formation T I A Page 30 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Possibilit de conception dun SIMATIC S7 - 300


Emplacement
Enfichage
Local

Limage montre la structure maximale dune SIMATIC S7-300/CPU314. La conception permet la mise
en place jusqu 32 modules (CPU 312IFM, CPU 312C et CPU 313 seulement 8 modules), pour chaque
rack (Ligne) jusqu 8 modules.

En ce qui concerne les emplacements denfichage, on observera les rgles suivantes :
Poste denfichage 1 : Alimentation courant PS (= Attribution fixe)
Poste denfichage 2 : Module central CPU (= Attribution fixe)
Poste denfichage 3 : Module coupl IM (= Attribution fixe)
Poste denfichage 4-11 : Modules de signal SM, Modules de fonction FM et processeurs
de communication CP (= Pas dattribution fixe)

Le bus est boucl entre les racks par les modules de connexion (IM 361). La connexion IMS reprsente
lexpditeur, et lIMR le rcepteur. Les modules de connexion doivent tre mis en place aux
emplacements denfichage donns.
Dans les racks dextension, il faut aussi prvoir une alimentation courant supplmentaire.
Comme variante bon march pour une conception biligne, on trouve le module de connexion IM 365
cbl de manire fixe avec lequel il ny a pas besoin dalimentation courant supplmentaire.

Les caractristiques suivantes de cbles entres les lignes sont disposition :
- conception bi-ligne avec IM 365 1m max.
- conception multiligne avec IM 361 de 10m max.

Les modules de fonction, par ex. SINUMERIK FM NC, peuvent tre attribus quelques priphries.
De cette manire, un module FM a son propre domaine de priphrie et peut y accder rapidement. On
appelle ce domaine de priphrie un segment local.
Il existe un segment local par rack. Il nest donc plus possible daccder ces priphries par la CPU
lorsque le systme est en marche.
Automation and drives - SCE


Documents de formation T I A Page 31 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Elments importants de lalimentation en tension et de la CPU :


Alimentation courant
Carte mmoire
ventuellement
Modules de signaux
Interface MPI
Commutateur mode
fonctionnement
Connexion Rseau
Commutateur
MARCHE/ARRET
Slection tension
rseau
LED de statut
Batterie
ventuellement


Indicateurs de statut et derreur de la CPU :

Indicateurs Signification Explication
SF (rouge) Liste derreurs Les modules capables de diagnostiquer
affichent ici une liste derreurs.
BF (rouge) Erreur de bus (si disponible) Indique les perturbations du PROFIBUS DP
BAF (rouge) Erreur de batterie Indique si la batterie mmoire tampon ne
dlivre pas assez de tension ou carrment
pas du tout
DC5V (vert) Alimentation DC5V pour la CPU
et le bus panneau arrire
Indicateur pour lalimentation interne
fonctionnelle 5V de la CPU
FRCE (vert) Forages Indicateurs dtat de la CPU, dans les entres
et les sorties par une fonction de test de
forage de commande
RUN (vert) Etat de fonctionnement RUN Clignote lors du dmarrage de la CPU Fixe
lorsque la CPU est dans ltat Run
STOP (orange) Etat de fonctionnement STOP Clignote lorsque le formatage est demand
Fixe lorsque la CPU est ltat arrt
Automation and drives - SCE


Documents de formation T I A Page 32 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Concept de protection de la CPU:
Chaque CPU possde un commutateur de mode de fonctionnement pour commuter entre les diffrentes
catgories de fonctionnement. Celui-ci est la plupart du temps conu sous la forme dun commutateur
cl, qui peut tre plac sur les modes de fonctionnement RUN et STOP. Les modes de fonctionnement
suivants sont possibles :


Le programme est trait, toutes les fonctions PG
sont autorises
Le programme est trait, seules les fonctions PG en
lectures sont autorises
Le programme nest pas trait ; toutes les fonctions
PG sont autorises
Dans cette position, vous pouvez procder un
formatage comme expliqu ci-dessous



Indication : Pour les CPU des sries CPU31xC, ce commutateur est conu sous forme dinterrupteur
bascule. Le mode de fonctionnement Run protection de lecture manque dans ce cas. Ici aussi, les
fonctions PG en criture sont autorises.

Le concept de protection pour la SIMATIC S7-300 vous permet de protger des parties dfinies du
systme dautomatisation daccs non autoriss. Cela concerne :
les CPU et tous les modules programmables
tous les objets (comme par ex. les blocs)

Ces parties protger peuvent tre influences par les appareils PG ou B&B.

Le concept de protection de la CPU est rparti en trois niveaux de protection. Ce paramtrage de
niveaux de protection dfinit ce qui est autoris pour un utilisateur :
Etape 1 Position commutateur cl Run-P ou Stop : pas de protection, toutes les fonctions sont
autorises.
Etape 2 Position commutateur cl Run (Pas pour les CPU31xC !) : Les fonctions protges en
criture, les fonctions en lecture sont autorises, par ex les fonctions de visualisation, les fonctions
dinformations, le chargement depuis la CPU.
Etape 3 Paramtrage par la configuration S7 (Protection par mot de passe). Seules sont autorises
les fonctions de visualisation et dinformation si lutilisateur ne connat pas le mot de passe.
Automation and drives - SCE


Documents de formation T I A Page 33 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Formatage de la CPU:

Avec le commutateur de mode de fonctionnement, on peut aussi procder au formatage de la CPU :
Lindicateur STOP clignote pendant
environ 3 secondes et sallume
ensuite de nouveau : tout sest bien
pass ; la CPU est formate
Placez le commutateur
de nouveau en position
STOP et finalement
remettez le sur la
position MRES avant que
2 secondes ne se soient
coules
3
Lindicateur STOP steint et aprs
environ 3 secondes il sallume de
nouveau. Dans les nouvelles CPU,
attendre que lindicateur STOP
sallume pour la deuxime fois.
Important :
Entre ltape 2 et ltape 3, il doit se
passer 3 secondes max..
Placez le commutateur
en mode MRES et
maintenez le dans cette
position (environ 3
secondes) jusqu ce que
lindicateur STOP se
rallume
2
Indicateur STOP sallume Placez le commutateur
de mode de
fonctionnement sur
STOP.
1
Rsultat Excution Etape
Automation and drives - SCE


Documents de formation T I A Page 34 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.7 TRAITEMENT DU PROGRAMME

2.7.1 MEMOIRE PROGRAMME
Lors du traitement du programme, il y a deux possibilits diffrentes, dpendantes de lappareil de
commande utilis et de la programmation.
Le traitement de chaque instruction ncessite un certain temps (de lordre de la microseconde). On
appelle dure de cycle, la dure dun (seul) traitement de toutes les instructions. Cest le temps dun
cycle programme.

2.7.2 TRAITEMENT LINEAIRE DE PROGRAMME
Lors de la programmation linaire, les instructions de lappareil de commande sont traites les unes
aprs les autres, telles qucrites dans la mmoire programme. Si la fin du programme (BE) est
atteinte, le traitement du programme recommence du dbut.
On parle de traitement cyclique.
La dure, ncessaire un appareil pour une itration de traitement, est appele dure de cycle.
Le traitement linaire du programme est la plupart du temps utilis pour des commandes simples et
pas trop volumineuses. Il peut tre ralis dans un seul OB.



,
OB1
1.
BE
2.
3.
Automation and drives - SCE


Documents de formation T I A Page 35 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.7.3 TRAITEMENT STRUCTURE DU PROGRAMME
On rpartit le programme dun ensemble volumineux de tches de commande en blocs de programmes
petits, clairs, associs des fonctions. Cela prsente lavantage de pouvoir tester les blocs de manire
individuelle et de les faire fonctionner ensemble par une fonction globale.
Les blocs de programme doivent tre appels par des commandes dappel de blocs (Call xx / UC xx /
CC xx). Si la fin du bloc est reconnue, le programme qui a appel le bloc est de nouveau trait.

Call FB1, DB10
















UC FC2




OB = Bloc dorganisation
FB = Bloc de fonctions
FC = Fonction
DB = Bloc de donnes
Instance-DB
Donnes locales
seulement FB1




BE
DB globale
Pour tous les
FB
FC
OB



BE
Call FC21










BE
OB 1
FC 2
DB 11
DB 10
FC 21 FB 1


Automation and drives - SCE


Documents de formation T I A Page 36 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

2.7.4 BLOCS UTILISATEUR
STEP 7 offre pour la programmation structure les blocs utilisateur suivants :

OB (Bloc Organisation) :
Un OB est appel cycliquement par le systme dexploitation et ralise ainsi linterface entre le
programme utilisateur et le systme dexploitation. Le dispositif de commande est inform dans cet
OB par des commandes dappel de blocs, de quels blocs de programme il doit traiter.
FB (Bloc de fonction) :
Le FB est disposition via un espace mmoire correspondant. Si un FB est appel, il lui est attribu
un bloc de donnes (DB). On peut accder aux donnes de cette instance DB par des appels depuis
le FB. Un FB peut tre attribu diffrents DB. Dautres FB et dautres FC peuvent tre appels dans
un bloc de fonction par des commandes dappel de blocs.
FC (Fonction) :
Une FC ne possde pas un espace mmoire attribu. Les donnes locales dune fonction sont
perdues aprs le traitement de la fonction. Dautres FB et FC peuvent tre appels dans une fonction
par des commandes dappel de blocs.
DB (Bloc de donnes) :
Les DB sont employs afin de tenir disposition de lespace mmoire pour les variables de donnes.
Il y a deux catgories de blocs de donnes. Les DB globaux o tous les OB, FB et FC peuvent lire
des donnes enregistres et crire eux-mmes des donnes dans le DB. Les instances DB sont
attribues un FB dfini.

2.7.5 BLOCS SYSTEME POUR LES FONCTIONS STANDARDS ET LES FONCTIONS SYSTEMES
Dans les blocs systme, il sagit de fonctions dj prtes, enregistres dans la CPU.
Ces blocs peuvent tre appels par lutilisateur et tre utiliss dans le programme.

STEP 7 offre les blocs systme suivants :

SFB (Bloc de fonctions systme) :
Enregistr dans le systme dexploitation de la CPU et bloc de fonction appelable par lutilisateur.
SFC (Fonction systme):
Enregistre dans le systme dexploitation de la CPU et fonction appelable par lutilisateur.
SDB (Donnes systme):
Espace mmoire dans le programme qui est cr par plusieurs outils STEP 7 (par ex. : Configuration
matrielle, NetPro ... ), afin denregistrer des donnes pour le systme dautomatisation.

Automation and drives - SCE


Documents de formation T I A Page 37 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3. LANGAGE DE PROGRAMMATION STEP 7

3.1 GENERALITES SUR LE LANGAGE DE PROGRAMMATION STEP 7


3.2 CONVERSION STEP 5 STEP 7
En STEP 7, vous avez la possibilit de convertir vos programmes STEP 5 vers STEP 7 par la fonction
Convertir fichier S5.



A la suite du remplacement de SIMATIC S5 par SIMATIC S7 un
nouveau logiciel de programmation (STEP7), bas sur la norme
IEC 61131, a t dvelopp.
STEP 7 marche sous WINDOWS 95, 98 ou NT et possde une
interface utilisateur graphique.
Vous trouverez de plus amples informations sur la conversion de STEP 5 dans
les manuels de rfrence STEP 7 ou dans les instructions de conversion STEP 5
-> STEP 7 du Module B6 - Conversion STEP 5 -> STEP 7.
Automation and drives - SCE


Documents de formation T I A Page 38 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.3 LA NORME IEC 61131 POUR SPS



Jusque l, les nouveaux dveloppements de la technique SPS ont conduit une quantit de langages
et dialectes spcifiques aux constructeurs. La langue commune de base sest peu peu perdue et,
consquence de cette tendance, il arrivait mme des problmes de communication entre diffrents
SPS.



Par la norme IEC 61131, la technique des SPS a t pour la premire fois tablie sur une unit de base
mondiale. Sous la prsidence des Etats-Unis, la commission internationale de llectrotechnique (IEC)
a adopt la normalisation SPS suivant les cinq thmes suivants :

Partie 1 : Dfinitions gnrales et caractristiques typiques des fonctions
Partie 2 : Cahiers des charges lectriques, mcaniques et fonctionnels des appareils
Partie 3 : Cinq langages de programmation
Partie 4 : Lignes directrices des phases de projet
Partie 5 : Communication entre SPS de diffrents constructeurs
'(_
^N
+-
-+
X I 0.0
X M 12.4
= Q 2.7
J
Automation and drives - SCE


Documents de formation T I A Page 39 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3.4 ARBORESCENCE
La gestion des fichiers en STEP 7 seffectue avec SIMATIC Manager. Ici il est possible par ex. de
copier les blocs de programme ou dappeler dautres traitements avec dautres outils en cliquant avec la
souris. Lutilisation correspond aux standards habituels WINDOWS. (donc on a entre autres la
possibilit de faire apparatre un menu contextuel sur chaque composant par un bouton droit de la
souris).

En STEP 7, chaque projet est stock dans une structure fixe prdfinie.
Dans les rpertoires Station SIMATIC 300 et CPU on met en place la conception matrielle du
SPS. En consquence, on voit toujours un tel projet dun point de vue de son matriel.

Les programmes sont enregistrs dans les rpertoires suivants :





















*
1
Dnominations de STEP 7 Version 2.x



Projet :
Ce rpertoire contient le
matriel (par ex. Stations
SIMATIC 300) et les sous-
rseaux (par ex. MPI et
PROFIBUS).
Stations SIMATIC 300 :
Ici sont stockes les
configurations matrielles
(Hardware/SC*
1
) et les
donnes de la CPU.
Sources/SO*
1
:
Ici sont stockes les sources
(par ex. les sources SCL),
pouvant tre converties par
linterprtation dans le
programme courant.
Blocs/AP-off*
1
:
Ici sont stocks les blocs
de donnes ( OB, FB, FC,
SFB, SFC, DB etc. ).
Mnmonique/SY*
1
:
Ici sont stockes les listes de
mnmoniques pour
ladressage mnmonique.
CPU :
Ici sont insrs les
programmes S7 et
les partenaires de
liaison en rseau
(Liaisons/CO*
1
).
Programme S7 :
Ici sont grs les programmes
utilisateur (Blocs/AP-off*
1
), les
tableaux mnmoniques
(Mnmonique/SY*
1
) et les
sources (Sources/SO*
1
).
Automation and drives - SCE


Documents de formation T I A Page 40 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Pour crer un projet indpendant de la configuration matrielle, il y a toutefois la possibilit de
lamnager de telle sorte quil ne soit pas contenu dans ce rpertoire.

Il a ainsi la structure suivante :

















*
1
Dnominations de STEP 7 Version 2.x

Projet:
Ce rpertoire contient le
matriel (par ex. Stations
SIMATIC 300) et les sous-
rseaux (par ex. MPI et
PROFIBUS)..
Sources/SO*
1
:
Ici sont stockes les sources
(par ex. les sources SCL),
pouvant tre converties par
linterprteur dans le
programme courant.
Blocs/AP-off*
1
:
Ici sont stocks les blocs
de donnes ( OB, FB, FC,
SFB, SFC, DB etc. ).
Mnmonique/SY*
1
:
Ici sont stockes les listes de
mnmoniques pour
ladressage mnmonique.
Programme S7 :
Ici sont grs les programmes
utilisateur (Blocs/AP-off*
1
), les
tableaux mnmoniques
(Mnmonique/SY*
1
) et les
sources (Sources/SO*
1
).
Automation and drives - SCE


Documents de formation T I A Page 41 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3.5 CONFIGURER ET PARAMETRER
Pendant le montage, la CPU produit une configuration pratique et stocke celle-ci dans les donnes
systme (SDB).
Avec loutil Configuration HW il est possible de crer une configuration thorique drivant de cette
dernire et ainsi de configurer une nouvelle conception. De plus, on peut aussi charger une
configuration existante depuis une CPU. En plus des modules comme la CPU, dautres paramtres
peuvent tre prdfinis (par ex. comportement de dmarrage et de cycle dune CPU).



Automation and drives - SCE


Documents de formation T I A Page 42 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3.6 LINSTRUCTION DE COMMANDE
Pour le traitement par une commande mmoire programmable, la tche de programmation est
dcompose en instructions lmentaires de commande. Une instruction de commande est lunit
autonome dun programme de commande. Elle reprsente une directive de travail pour le systme de
contrle.

Les dnominations, les identificateurs et les symboles des instructions de commandes sont imposs
par la norme DIN 19 239.

Une instruction de commande est structure de la manire suivante :



3.6.1 PARTIE OPERATION
Lopration dcrit la fonction excuter. DIN 19 239 distingue :


Oprations
Oprations dorganisation
Oprations
numriques
Oprations binaires


Instruction de commande
Partie opration
Paramtres
Partie oprande
Identificateu

U E 0.0
Automation and drives - SCE


Documents de formation T I A Page 43 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Exemples doprations numriques :

L . . . . . Charger
T . . . . . Transfrer
>I . . . . . Plus grand que, pour des entiers
==R . . . . . Egalit, pour des rels
etc

Exemples doprations binaires:

Extrait de DIN 19 239

FUP KOP AWL
||
()
|/| N
=
U
&
>1
||
O

LOG
CONT LIST
ET

NON

OU

ATTRIBUTION


etc

Exemples doprations dorganisation :

CC . . . . . Appel de bloc conditionnel
UC . . . . . Appel de bloc inconditionnel
AUF . . . . . Ouvrir bloc de donnes
SPA . . . . . Saut inconditionnel
SPB . . . . . Saut conditionnel
BEA . . . . . Terminaison de bloc inconditionnelle
BEB . . . . . Terminaison de bloc conditionnelle
etc
Automation and drives - SCE


Documents de formation T I A Page 44 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3.6.2 PARTIE OPERANDE
La partie oprande contient toutes les indications ncessaires pour lexcution doprations.
Elle dtermine avec quoi le systme de contrle doit excuter une opration.
Lidentificateur des oprandes comprend la catgorie de loprande.

Il y a par exemple :











Le paramtre de loprande donne ladresse des oprandes.

E pour Entre
A pour Sortie
M pour Mmoire Interne
L pour donnes Locales (variables
internes au bloc)
T pour le Temps
Z pour les Compteurs
OB pour bloc dorganisation
FB pour bloc de fonction
FC pour Fonction
DB pour bloc de donnes
SFB pour bloc de fonctions
systme
SFC pour fonction systme
L#.pour Constante 32 bits etc.
Automation and drives - SCE


Documents de formation T I A Page 45 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3.7 ADRESSAGE

3.7.1 ADRESSAGE MNEMONIQUE
Ladressage mnmonique est souvent fort utile pour une meilleure comprhension. Il vous permet
dassocier une adresse absolue dfinie un nom mnmonique. Par exemple, on peut attribuer
lentre E 0.0 le nom END_STOP et au type de donnes BOOL. Chaque nom mnmonique ne doit tre
utilis quune fois. Lattribution des associations seffectue avec loutil diteur de mnmoniques que
vous dmarrez depuis SIMATIC Manager.

3.7.2 ADRESSAGE ABSOLU
En STEP 7 il y a les catgories suivantes dadressage absolu :

adressage immdiat
adressage direct
adressage mmoire indirect

Adressage immdiat :

Lors de ladressage immdiat, loprande est directement cod dans lopration, cest--dire quil a
directement la valeur avec laquelle lopration doit tre traite, soit que lopration fournisse
implicitement loprande.
Exemple :




Adressage direct :

Lors de ladressage direct, ladresse de loprande est code dans lopration, cest--dire que
loprande donne ladresse de la valeur que lopration doit traiter.
Loprande se compose dun identificateur doprande et dun paramtre. Il pointe directement sur
ladresse de la valeur.
Exemple :




SET Met le VKE (Rsultat logique) 1.
+D Ajoute le contenu de ACCU1 au contenu de ACCU 2
et stocke le rsultat dans ACCU 1.

U E 0.0 Excute un ET logique du bit dentre E 0.0.
L EB 0 Charge loctet dentre EB 0 dans l ACCU 1.
= A 4.0 Attribue VKE le bit de sortie A 4.0.

Automation and drives - SCE


Documents de formation T I A Page 46 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

Adressage mmoire indirect :

Dans le cas de ladressage mmoire indirect, ladresse de loprande est prdfinie par un autre
oprande qui contient ladresse du premier. Autrement dit, loprande donne ladresse de la valeur sur
laquelle doit tre effectue lopration.
Loprande se compose dun identificateur doprande et dun des pointeurs suivants :

un mot qui contient le numro dun temps (T), dun compteur (Z), dun bloc de donnes (DB), dune
fonction (FC) ou dun bloc de fonctions (FB).
un double mot qui contient ladresse exacte dune valeur lintrieur de lespace mmoire, la
valeur donnant lidentificateur de loprande
Ladresse de la valeur ou du numro est fournie indirectement via le pointeur. Le mot ou le double
mot peuvent se trouver dans une mmoire interne (M), dans un bloc de donnes (DB), dans un bloc de
donnes instance (DI) ou dans des donnes locales (L).

Exemple :








U E [MD 3] Excute une opration logique ET du bit dentre. Ladresse
exacte se trouve dans la mmoire interne double mot MD 3.
L EB [DID 4] Charge loctet dentre dans ACCU 1. Ladresse exacte se
trouve dans linstance du mot double de donnes DID 4.
AUF DB [MW 2] Ouvre le bloc de donnes. Le numro du bloc de donnes se
trouve dans le mot de mmoire interne MW 2.

Automation and drives - SCE


Documents de formation T I A Page 47 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3.8 REPRESENTATION DE PROGRAMME

En STEP 7, un programme dans loutil Programmer des blocs CONT/LIST/LOG peut tre
programm et reprsent dans trois catgories diffrentes :

Schma contact CONT
Plan logique LOG
Liste dinstructions LIST

En option, il y a ancore les packs logiciel programmation de langage haut niveau (SCL), de
programmation graph-7 (S7-GRAPH) et la programmation dtat graphique (S7-HiGraph).

3.8.1 SCHEMA A CONTACT CONT
Le schma contact est la reprsentation image des tches de commandes avec des mnmoniques
suivant DIN 19 239, qui est aussi courante aux Etats-Unis. Il a beaucoup de ressemblances avec le
traditionnel schma de connexion, la diffrence notable que la reprsentation lcran utilise des
traits horizontaux, et non pas verticaux, pour les branches de circuit.



3.8.2 PLAN LOGIQUE LOG ( EN STEP 7 A PARTIR DES VERSIONS 3.x )
Le plan logique est la reprsentation image des tches de commande avec des mnmoniques suivant
DIN 40 700 et DIN 19 239. Les diffrentes fonctions sont reprsentes par un symbole qui les identifie.
A gauche du symbole, on trouve les entres et droite, les sorties.




&
E 0.0
E 0.1
A 0.0
E 0.2
E 0.3
A 0.1
>1
ET logique OU logique
() | | | |
E 0.0 E 0.1 A 0.0
ET logique
| |
| |
()
E 0.2
E 0.3 A 0.1
OU logique
Automation and drives - SCE


Documents de formation T I A Page 48 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3.8.3 LISTE DINSTRUCTIONS LIST
En liste dinstructions, les tches de commande sont dcrites par des instructions de commande.
Les instructions (Opration et oprande) de commande reprsentent les tches au moyen
dabrviations (videntes) des dsignations de fonction. (suivant DIN 19 239)

Partie opration :

Partie oprande :
Symbole Paramtre


U E 0.0 ET logique
U E 0.1
= A 4.0
O E 0.2 OU logique
O E 0.3
= A 4.1


Chaque reprsentation possde ses propres proprits et ses limites dfinies. Si lors de la
programmation les rgles prcises sont suivies, alors ce nest pas un problme deffectuer une
traduction du problme dans les trois modes de reprsentation. Si des programmes de commande ont
t crits en CONT ou en LOG, ils peuvent systmatiquement tre traduits en LIST.
Dans la mmoire programme de lappareil de commande, le programme est toujours stock en LIST (
en langage machine, en fait ).

Automation and drives - SCE


Documents de formation T I A Page 49 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300

3.9 MEMOIRE INTERNE
On mettra en place des mmoires internes sur des liaisons de commandes, pour lesquelles il ny a pas
de transfert en dehors de la commande.
Les mmoires internes sont des lments mmoire lectroniques (Bascule R-S), dans lesquels les
deux tats de signaux "0" et "1" peuvent tre stocks.
Chaque SPS dispose dun grand nombre de mmoires internes. Elles sont programmes comme les
sorties. En cas de coupure de la tension systme, le contenu stock dans la mmoire interne est
perdu.

3.9.1 MEMOIRE INTERNE REMANENTE
Une partie de cette mmoire interne est pourtant rmanente (tension nulle scurise). A laide dune
batterie tampon dans le SPS, la coupure de tension est ponte. Ces tats logiques sont ainsi
conservs.


Conserve le dernier tat davant la coupure de la tension dalimentation
Conserve le dernier tat avant le changement de rgime "RUN>STOP"
Peut tre rinitialise par AG>FORMATER (en plus de la
possibilit de le faire par le programme utilisateur)
Mmoire interne rmanente

En employant la mmoire rmanente, on peut sauvegarder le dernier tat du dispositif ou des machines
avant de quitter ltat de fonctionnement courant. En redmarrant, on a la possibilit de travailler avec le
dispositif ou la machine dans ltat o il sest arrt.
Lespace de rmanence est dfini dans les proprits de la CPU, au niveau de loutil Configuration
matrielle sous Rmanence.

3.9.2 MEMOIRE INTERNE NON REMANENTE


Les mmoires internes sont rinitialises par commutation sur les modes de fonctionnement
RUN>STOP et "RESEAU MARCHE".