COUR STEP7 .pdf

60
E E x x p p o o s s e e p p a a r r L L A A H H C C I I N N I I 1 Programmer avec STEP 7 Les instructions de step7 Le lecteur trouve dans de ce document un jeu d'instructions les plus courantes permettant de résoudre les tâches d'automatisation avec step7. 1.2 INSTRUCTIONS DE BASE Les instructions suivantes suffisent pour la programmation de base. Il ne s'agit donc pas d'une liste complète d’instructions. Vous trouverez des informations détaillées sur toutes les instructions CONT/LOG/LIST dans les manuels en internet chercher SIMATIC S7 Langage CONTACT pour SIMATIC S7-300/400. 1.2.1 AFFECTATION L'affectation (=) copie le résultat logique (RLG) de l'opération précédente et l'assigne à l'opérande suivant. Une affectation ferme une séquence d'opérations logiques. = E 0.0 A 0.0 () E 0.0 A0.0 CONT LOG LIST U E 0.0 = A 0.0 || 1.2.2 FONCTION ET La fonction ET est comparable à un montage en série de contacts du schéma des circuits. La sortie A 0.0 affiche l'état logique 1 si toutes les entrées ont simultanément pour état logique 1. Si l'une des entrées a pour état logique 0, la sortie affiche l'état logique 0. & E 0.0 E 0.1 A 0.0 || || () E 0.0 E 0.1 A 0.0 CONT LOG LIST U E 0.0 U E 0.1 = A 0.0 =

Transcript of COUR STEP7 .pdf

Page 1: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 1

Programmer avec STEP 7

Les instructions de step7

Le lecteur trouve dans de ce document un jeu d'instructions les plus courantes permettant

de résoudre les tâches d'automatisation avec step7.

1.2 INSTRUCTIONS DE BASE

Les instructions suivantes suffisent pour la programmation de base. Il ne

s'agit donc pas d'une liste complète d’instructions.

Vous trouverez des informations détaillées sur toutes les instructions

CONT/LOG/LIST dans les manuels en internet chercher SIMATIC S7

Langage CONTACT pour SIMATIC S7-300/400.

1.2.1 AFFECTATIONL'affectation (=) copie le résultat logique (RLG) de l'opération précédente et

l'assigne à l'opérande suivant.

Une affectation ferme une séquence d'opérations logiques.

=E 0.0

A 0.0

()E 0.0 A0.0

CONT

LOG

LIST

U E 0.0= A 0.0

| |

1.2.2 FONCTION ETLa fonction ET est comparable à un montage en série de contacts du

schéma des circuits. La sortie A 0.0 affiche l'état logique 1 si toutes les

entrées ont simultanément pour état logique 1. Si l'une des entrées a pour

état logique 0, la sortie affiche l'état logique 0.

&E 0.0

E 0.1

A 0.0

| | | | ()E 0.0 E 0.1 A 0.0

CONT

LOG

LIST

U E 0.0U E 0.1= A 0.0

=

Page 2: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 2

1.2.3 FONCTION OULa fonction OU peut elle être comparée à un montage en parallèle de

contacts du schéma des circuits. La sortie A 0.1 affiche l'état logique 1 si au

moins l'une des entrées a pour état logique 1. Elle n'affiche 0 que si toutes

les entrées ont pour état logique 0.

E 0.2

E 0.3

A 0.1

| |

| |

()E 0.2

E 0.3

A 0.1

CONT

LOG

LIST

>1

O E 0.2O E 0.3= A 0.1

=

1.3 FONCTION ET AVANT OULa fonction ET avant OU est comparable à un montage en parallèle de

plusieurs contacts montés en série du schéma des circuits.

La sortie 0.1 délivre l'état logique 1 si dans au moins une branche tous les

contacts en série sont fermés (=état logique 1).

Les fonctions ET avant OU sont programmées en mode de représentation

LIST sans parenthèses, les branches parallèles doivent toutefois être

séparées par le caractère O (fonction OU).

Les fonctions ET sont traitées en premier, leurs résultats servant à former le

résultat de la fonction OU. La première fonction ET (E 0.0, E 0.1) est

séparée de la deuxième fonction ET (E 0.2, E 0.3) par l'unique O (fonction

OU).

LOG

&

E 0.2

E 0.3

&

>1

A 0.1

E 0.0

E 0.1| | | | ()

E 0.0 E 0.1

CONT

| | | |

A 0.1

E 0.2 E 0.3

LIST

U E 0.0U E 0.1OU E 0.2U E 0.3= A 0.1=

Les fonctions ET sont prioritaires et sont toujours traitées avant les

fonctions OU.

1.4 FONCTION OU AVANT ETLa fonction OU avant ET peut être comparée à un montage en série de

plusieurs contacts montés en parallèle du schéma des circuits. La sortie 1.0

n'affiche l'état logique 1 que si dans chacune des deux branches parallèles

au moins un contact a l'état logique 1.

Page 3: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 3

LOG

&

>1| | | | ()

CONT

| | | |

LIST

>1

E 1.0

E 1.1

E 1.2

E 1.3

A 1.0A 1.0E 1.0

E 1.1

E 1.2

E 1.3

U(O E 1.0O E 1.1)U(O E 1.2O E 1.3)= A 1.0

=

Pour que les fonctions OU aient la priorité sur les fonctions ET, elles doivent

figurer entre parenthèses .

1.5 TEST A 0 DE L'ETAT DU SIGNALLe test à 0 de l'état de signal équivaut à un contact à ouverture dans un

circuit de contacts et est réalisé dans les opérations logiques ET NON (UN),

OU NON (ON) et OU NON EXCLUSIF (XN).

Exemple d'une fonction OU NON:

E 0.2

E 0.3

A 0.1

| |

|/|

()E 0.2

E 0.3

A 0.1

CONT

LOG

LIST

>1

O E 0.2ON E 0.3= A 0.1

=

1.6 FONCTION OU EXCLUSIFLe circuit comporte une fonction OU exclusif (X) dans laquelle la sortie 1.0

n'est activée (état de signal 1) que si l'une des entrées a pour état de signal

1. Ceci ne peut être réalisé dans un circuit de contacts qu'avec des contacts

à ouverture et fermeture.

LOG

| |

| |

()

CONT LIST

A1.0E1.0

|/|

|/|E1.0

E1.1

E1.1X E1.0X E1.1= A1.0

E1.0

E1.1 A1.0XOR

Page 4: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 4

Nota : La fonction OU exclusif ne doit comporter exactement que deux

entrées.

1.7 TEST DES SORTIESDifférentes conditions déterminent l'activation des sorties A 1.0 et A 1.1. Il

faut prévoir dans ces cas pour chaque sortie une branche ou un symbole de

fonction séparé. Comme l'automate peut interroger non seulement l'état du

signal des entrées mais aussi celui des sorties, mémentos etc., la sortie A

1.0 est interrogée dans la fonction ET de la sortie A 1.1.

E 1.0

E 1.1

E 1.2

&

&

A 1.0

A 1.1

LOG

A 1.0

A 1.0

E 1.2

E 1.0 E 1.1

LIST

U E 1.0U E 1.1= A 1.0U A 1.0U E 1.2= A 1.1

| | | | ()

| | ()| |A 1.0 A 1.1

Cont

=

=

1.8 ELEMENTS BISTABLES R - SUn élément bistable est représenté selon DIN 40900 et DIN 19239 par un

rectangle avec une entrée S (Set) et une entrée R (Reset).

Un état de signal 1 bref sur l'entrée S met la bascule à 1. Un état de signal 1

bref sur l'entrée R remet la bascule à 0. L'état de signal 0 aux entrées R et

S ne modifie pas l'état préalable.

Si les deux entrées R et S ont simultanément l'état de signal 1, une mise à 1

ou à 0 prioritaire aura lieu. Cette mise à 1 ou à 0 prioritaire doit être

programmée.

1.8.1 MISE A ZERO PRIORITAIRE

Page 5: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 5

E 1.1

| |

| | ( )

(R)

(S)

A 2.0E 1.1

| |

| |

R Q

A 2.0

S

CONT(1)LIST

LOG

U E 1.1S A 2.0U E 1.0R A 2.0

SR

S Q

R

A 2.0E 1.0

E 1.1

E 1.0

A 2.0

CONT(2)

E 1.0 =

A 2.0A 2.0

Les instructions programmées en dernier sont traitées en priorité par

l'automate. Dans l'exemple, la mise à 1 est d'abord effectuée, puis la sortie

A 2.0 est remise à 0 et reste à 0 pendant le reste du traitement du

programme.

Cette mise à 1 brève de la sortie n'est exécutée que dans la mémoireimage.L'état de signal sur le module de périphérie correspondant n'est pasinfluencé durant le traitement du programme.

1.8.2 MISE A UN PRIORITAIRESelon le paragraphe 4.10.1., la mise à 1 de la sortie A 2.1 dans cet exemple

est prioritaire.

E 1.1

| |

| | ( )

(S)

(R)

A 2.1E 1.1

| |

| |

S Q

R

CONT 1 LIST

LOG

U E 1.1R A 2.1U E 1.0S A 2.1

RS

R Q

S

A 2.1E 1.0

E 1.1

E 1.0

A 2.1

CONT 2

E 1.0

A 2.1

=

A 2.1A 2.1

1.9 FRONTSA l'opposé de l'état de signal statique "0" et "1", un front correspond à un

changement de signal par exemple celui d'une entrée. Le programme d'un

front correspond à un contact détecteur de front d'un circuit à relais.

1.9.1 FRONT MONTANT (FP)

Page 6: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 6

Si un front montant (transition de '0' à '1') est détecté à l'entrée E 0.2, A 4.0

est mis à '1' pour la durée d'un cycle de l'OB1. Cette sortie peut ensuite

servir à mettre par exemple un mémento à 1. Pour détecter le front montant,

le système d'automatisation sauvegarde le RLG fourni par l'opération U

dans le mémento de front M 2.0 et le compare au RLG du cycle précédent.

Le second mode de représentation en CONT/LOG présente l'avantage de

pouvoir connecter d'autres opérations logiques à l'entrée du front.

LIST

U E 0.2FP M 2.0= A 4.0

CONT/LOG

POS

A

M_BITM 2.0

E 0.2

( )

A 4.0

ou :

12119 1087654321

Diagramme de l'état du signal

E 0.2

M 2.0

A 4.0

Cycle OB1

101010

1.9.2 FRONT DESCENDANT (FN)Si un front descendant (transition de '1'à '0') est détecté à l'entrée E 0.2, A

4.0 est mise à '1' pendant la durée d'un cycle de l'OB1. Cette sortie peut

ensuite servir à mettre par exemple un mémento à 1. Pour détecter le front

descendant, le système d'automatisation sauvegarde le RLG fourni par

l'opération U dans le mémento de front M 2.0 et le compare au RLG du

cycle précédent.

Le second mode de représentation en CONT/LOG présente l'avantage de

pouvoir connecter d'autres opérations logiques à l'entrée du front.

( )

M 2.0

P

A 4.0

E 0.2

Page 7: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 7

LIST

U E 0.2FN M 2.0= A 4.0

CONT/LOG

NEG

A

M_BITM 2.0

E 0.2

( )

A 4.0

ou :

12119 1087654321

Diagramme de l'état du signal

E 0.2

M 2.0

A 4.0

Cycle OB1

101010

1.10 TEMPORISATIONSDiverses temporisations sont souvent utilisées dans la réalisation de tâches

d'automatisation. Ces fonctions sont intégrées dans l'unité centrale de

l'automate programmable. Leur temps d'exécution et leur déclenchement

sont paramétrés dans le programme utilisateur. Les automates

programmables SIMATIC disposent d'un nombre défini de temporisations

qui varie en fonction de la CPU. Un mot de 16 bits est affecté à chaque

temporisation.

Les fonctions suivantes peuvent être programmées dans une temporisation.

1.10.1 VALIDATION DE LA TEMPORISATION (FR) SEULEMENT EN LISTUn front montant ( de '0' à '1' ) dans le résultat logique de l'opération

Validation (FR) valide la temporisation.

La validation n'est pas nécessaire pour le déclenchement ou le

fonctionnement normal d'une temporisation. La validation est uniquement

utilisée pour réarmer, c'est-à-dire redéclencher une temporisation en cours

d'exécution. Ce redéclenchement n'est possible que si l'opération de

déclenchement a toujours le RLG '1'.

1.10.2 DECLENCHEMENT DE LA TEMPORISATION (SI/SV/SE/SS/SA)Une transition à l'entrée de déclenchement (front montant) lance l'exécution

de la temporisation.

( )

M 2.0

N

A 4.0

E 0.2

L'opération Validation (FR) n'existe que dans le mode dereprésentation LIST.

Page 8: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 8

Pour lancer une temporisation, insérez ces trois instructions dans votre

programme LIST.

Interrogation de l'état du signal

Chargement du temps de déclenchement dans l'accu 1

Déclenchement ( SI, SV, SE, SS ou SA)

1.10.3 PRESELECTION DE LA TEMPORISATION (TW)Une temporisation doit toujours s'exécuter durant un temps prédéfini. La

durée de temporisation TW peut être définie soit comme constante dans le

programme ou comme mot d'entrée EW, mot de sortie AW, mot de données

DBW/DIW, mot de données locales LW ou mot de mémento MW. La valeur

de temporisation est décrémentée d'une unité à chaque intervalle de temps

défini dans la base de temps.

Une valeur de temporisation prédéfinie est chargée avec la syntaxe

suivante :

L W#16#abcd- avec : a = base de temps codée binaire (c'est-à-dire intervalle de tempsou résolution; voir plusbas)

- bcd = valeur de temporisation en format DCB L S5T#aH_bbM_ccS_dddMS- avec: a = heures, bb = minutes, cc = secondes et ddd = millisecondes- La base de temps est automatiquement choisie.

Base de temps :

La base de temps définit l'intervalle de temps nécessaire pour que la valeur

de la temporisation soit décrémentée d'une unité.

Les valeurs qui ne sont pas des multiples de l'intervalle de temps sont

tronquées. Les valeurs dont la résolution est trop grande pour la plage

souhaitée sont arrondies.

1.10.4 REINITIALISATION DE LA TEMPORISATION (R)

Un signal à l'entrée de la réinitialisation met fin à l'exécution de la

temporisation. La valeur courante de la temporisation est effacée, la sortie

Q du temporisateur est remise à 0.

Par exemple

:

U E 0.0

L

Base tps Code bin. Plage de temps

10ms 00 10MS à 9S_990MS

100ms 01 100MS à 1M_39S_900MS

1s 10 1S à 16M_39S

10s 11 10S à 2H_46M_30S

Page 9: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 9

1.10.5 INTERROGATION DE LA VALEUR DE TEMPORISATION (L/LC)

La valeur de temporisation est sauvegardée dans un mot de temporisation

codé binaire. La valeur figurant dans le mot de temporisation peut être

chargée dans l'accumulateur sous forme de nombre binaire (DUAL) ou de

nombre décimal codé binaire (DCB) pour être à partir de là transférée dans

d'autres zones d'opérandes.

En programmation LIST, vous avez le choix entre L T1 pour interroger le

nombre binaire et LC T1 pour interroger le nombre DCB.

1.10.6 TEST A 0/1 DE L'ETAT DU SIGNAL DE LA TEMPORISATION (Q)

Il est possible de tester à 0/1 l'état du signal ('0' ou '1') d'une temporisation.

Les états de signaux peuvent être testés comme d'habitude - avec U T1,

UN T1, ON T1, etc... et servir à d'autres opérations.

Vous pouvez sélectionner l'une des cinq temporisations suivantes.

1.10.7 TEMPORISATION SOUS FORME D'IMPULSION (SI)La sortie d'une temporisation lancée comme impulsion délivre après son

déclenchement l'état de signal 1 (1). La sortie est remise à 0 si le temps

programmé est écoulé (2), si le signal de déclenchement est remis à 0 (3)

ou si l'entrée de réinitialisation de la temporisation a pour état de signal 1

(4).

Un front montant (transition de '0' à '1' ) dans le RLG de l'opération de

validation (FR) redéclenche la temporisation (5). Ce redéclenchement n'est

possible que si l'opération de déclenchement a comme RLG '1'.

S_IMPULS

S DUAL

TW DEZ

R Q

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

LOG LIST

U E 0.2FR T1 Validation de temporisation T1

(seulement dans LIST)U E 0.0L S5T#2S Charge le temps (2s) ds accu 1SI T1 Lance T1 sous forme impulsionU E 0.1R T1 Remise à 0 T1L T1 Charge T1 codé binaireT MW0LC T1 Charge T1 codé DCBT MW2U T1 Interrogation temps T1= A 4.0S_IMPULS

S Q

TW DUAL

R DEZ

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

CONT

( )

Page 10: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 10

Diagramme de l'état du signal avec validation

E 0.0

E 0.1

A 4.0

101010-T-

1 2 3 4 5

E 0.2

-T- -T-

10

1.10.8 IMPULSION PROLONGEE (SV)La sortie d'une temporisation lancée sous forme d'impulsion prolongée

délivre après son déclenchement l'état de signal 1 (1). La sortie est remise à

0 si le temps programmé est écoulé (2) ou si l'entrée de réinitialisation de la

temporisation est activée (5).

La désactivation de l'entrée de déclenchement pendant l'écoulement de la

temporisation ne remet pas à 0 la sortie (automaintien) (3). Une nouvelle

mise à 1 à l'entrée de déclenchement de la temporisation pendant

l'écoulement de la temporisation relance (redéclenche) la temporisation (4).

S_VIMP

S DUAL

TW DEZ

R Q

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

LOG LIST

U E 0.0L S5T#2S Charge temps (2s) in AKKU 1SV T1 Lance T1 sous forme

d'impulsionU E 0.1R T1 Remet T1 à 0L T1 Charge T1 codé binaireT MW0LC T1 Charge T1 codé DCBT MW2U T1 Interrogation tempo T1= A 4.0

S_VIMP

S Q

TW DUAL

R DEZ

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

CONT

( )

Diagramme état du si gnal

E 0.0

E 0.1

A 4.0

101010-T- -T- -T-

1 2 3 4 5

Page 11: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 11

1.10.9 RETARD A LA MONTEE (SE)La sortie d'une temporisation lancée comme retard à la montée ne délivre

après son déclenchement l'état de signal 1 que si le temps programmé est

écoulé et que le RLG à l'entrée de déclenchement est toujours 1 (1).

L'activation de l'entrée de déclenchement entraîne l'activation de la sortie Q

retardée du temps spécifié. La sortie est remise à 0 si l'entrée de

déclenchement est désactivée (2) ou si l'entrée de réinitialisation de la

temporisation a comme état de signal 1 (3). La sortie Q n'est pas activée en

cas de désactivation de l'entrée de déclenchement ou de mise à 1 de

l'entrée de réinitialisation durant l'exécution de la temporisation.

S_EVERZ

S DUAL

TW DEZ

R Q

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

LOG LIST

U E 0.0L S5T#2S Charge tmps (2s) dans l'accu 1SE T1 Lance T1 ss forme d'impulsionU E 0.1R T1 Remet T1 à 0L T1 Charge T1 codé binaireT MW0LC T1 Charge T1 codé DCBT MW2U T1 Interrogation de tempo T1= A 4.0

S_EVERZ

S Q

TW DUAL

R DEZ

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

CONT

( )

Diagramme état du signal

E 0.0

E 0.1

A 4.0

101010-T- -T- -T-

1 2 3

Page 12: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 12

1.10.10 RETARD A LA MONTEE MEMORISE (SS)La sortie d'une temporisation lancée comme retard à la montée mémorisé

ne délivre après son déclenchement l'état de signal 1 que si le temps

programmé est écoulé (1). La fonction n'a après son lancement plus besoin

du RLG 1 à l'entrée de déclenchement (automaintien), cette dernière peut

donc être désactivée (3).

La sortie n'est remise à 0 qui si l'entrée de réinitialisation de la temporisation

est activée (2). Une désactivation et réactivation de l'entrée de

déclenchement durant l'exécution de la temporisation relance (redéclenche)

la temporisation (4).

S_SEVERZ

S DUAL

TW DEZ

R Q

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

LOG LIST

U E 0.0L S5T#2S Charge temps (2s) ds accu 1SS T1 Lance T1 sous forme impulsionU E 0.1R T1 Remet T1 à 0L T1 Charge T1 codé binaireT MW0LC T1 Charge T1 codé DCBT MW2U T1 Interrogation tempo T1= A 4.0

S_SEVERZ

S Q

TW DUAL

R DEZ

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

CONT

( )

Diagramme état du signal

E 0.0

E 0.1

A 4.0

101010

-T- -T- -T-

1 2 3 4

Page 13: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 13

1.10.11 RETARD A LA RETOMBEE (SA)Une transition (front montant) à l'entrée d'une temporisation lancée comme

retard à la retombée active la sortie Q de la temporisation (1). Si l'entrée de

déclenchement est désactivée, la sortie continue à délivrer l'état de signal 1

jusqu'à ce que la temporisation soit écoulée (2). La désactivation de l'entrée

de déclenchement (front descendant) entraîne la désactivation de la sortie

retardée du temps spécifié.

La sortie de la temporisation est aussi désactivée si l'entrée de

réinitialisation a l'état de signal 1 (4). Une nouvelle activation de la

temporisation durant son exécution arrête la temporisation qui ne sera

relancée qu'à la prochaine désactivation de l'entrée de déclenchement (3).

Si l'entrée de déclenchement et l'entrée de réinitialisation de la

temporisation ont toutes deux pour état du signal 1, la sortie de la

temporisation n'est mise à 1 que si la remise à 0 dominante a été

désactivée (5).

S_AVERZ

S DUAL

TW DEZ

R Q

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

LOG LIST

U E 0.0L S5T#2S Charge temps (2s) dans accu 1SA T1 Lance T1 sous forme impulsionU E 0.1R T1 Remet T1 à 0L T1 Charge T1 codé binaireT MW0LC T1 Charge T1 codé DCBT MW2U T1 Interrogation de tempo T1= A 4.0

S_AVERZ

S Q

TW DUAL

R DEZ

T1

E0.0

S5T#2S

E0.1

MW0

MW2

A 4.0

CONT

( )

1 2 3 4 5

-T-

Diagramme état du signal

E 0.0

E 0.1

A 4.0

101010-T-

Page 14: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 14

1.11 HORLOGESLes horloges sont utilisées pour diverses tâches de contrôle, surveillance et

commande. Elles sont qualifiés en technologie numérique de bascules

astables.

Une fréquence de clignotement est dans la pratique requise pour les

signalisations de marche ou de défaut.

Paramétrage des mémentos d'horloge :

Les mémentos d'horloge sont des mémentos contenus dans les octets de

mémentos d'horloge. Un octet de mémentos quelconque peut être défini

comme "octet de mémentos d'horloge" par paramétrage (cliquez pour cela

dans la ligne de la CPU dans l'application Configuration). La valeur binaire

d'un mémento d'horloge varie périodiquement.

Si vous activez un mémento d'horloge (case cochée), vous devez choisir un

numéro pour l'octet de mémentos. L'octet de mémentos sélectionné ne peut

pas être utilisé pour la sauvegarde intermédiaire de données.

Durée de période du cycle d'horloge :

Une durée de période ou une fréquence est affectée à chaque bit de l'octet

de mémentos d'horloge. L'affectation est comme suit :

Bit : 7 6 5 4 3 2 10

Durée de période(s) : 2 1,6 1 0,8 0,5 0,4 0,20,1Fréquence (Hz) : 0,5 0,625 1 1,25 2 2,5 5 10

Il existe dans la CPU S7-300 un mémento d'horlogeparamétrable que vous configurez avec l'application S7

Page 15: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 15

1.12 OPERATIONS DE COMPTAGEDans l'automatisation, les fonctions de comptage sont requises pour

l'acquisition du nombre de pièces ou d'impulsions, pour la lecture de

temporisations et de distances. Des compteurs sont déjà intégrés dans le

SIMATIC S7. Ces compteurs ont leur zone de mémoire réservée. La plage

de valeurs du compteur est comprise entre 0 et 999.

Les fonctions suivantes ne peuvent être programmées que pour un

compteur :

1.12.1 VALIDATION DU COMPTEUR (FR) UNIQUEMENT EN LISTUn front montant (de '0'à '1' ) du résultat logique de l'opération Validation

(FR) valide le compteur.

Une validation du compteur n'est requise ni pour l'activation du compteur, ni

pour les opérations normales de comptage. Si l'on veut toutefois activer un

compteur ou lancer le comptage ou le décomptage sans front montant

avant l'opération de comptage correspondante ( ZV, ZR ou S ), il est

possible de le faire à l'aide de la validation. Mais ceci n'est possible que si le

bit RLG précédant l'opération concernée ( ZV, ZR ou S ) a pour état de

signal '1'.

1.12.2 COMPTAGE (ZV)La valeur du compteur adressé est incrémentée de 1. La fonction n'est

active qu'en cas de front montant de l'opération programmée avant le

compteur ZV. Lorsque la valeur du compteur a atteint la limite supérieure

999, elle n'est plus incrémentée. ( Il n'y a pas de report ! )

1.12.3 DECOMPTAGE (ZR)La valeur du compteur adressé est décrémentée de 1. La fonction n'est

active qu'en cas de front montant de l'opération programmée avant le

compteur ZR. Lorsque la valeur du compteur a atteint la limite inférieure 0,

elle n'est plus décrémentée. ( Valeurs positives seulement ! )

1.12.4 INITIALISATION DU COMPTEUR (S)Pour initialiser un compteur, insérez les trois instructions suivantes dans

votre programme LIST :

Interrogation de l'état du signal

Chargement de la valeur de comptage

Initialisation du compteur avec la valeur chargée

Cette fonction n'est traitée qu'après un front

montant de l'interrogation.

Par ex. :

U E 2.3

L C#5

S Z1

L'opération Validation (FR) n'existe que dans le mode dereprésentation LIST.

Page 16: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 16

1.12.5 PREDEFINITION DE LA VALEUR DE COMPTAGE (ZW)Le contenu de l'accumulateur 1 est pris comme valeur de comptage lors de

l'initialisation du compteur. Vous pouvez charger la valeur de comptage soit

en code binaire, soit en code DCB.

Les opérandes suivants sont possibles :

- Mot d'entrée EW ..

- Mot de sortie AW ..

- Mot de mémento MW ..

- Mot de données DBW/DIW ..

- Mot de données locales LW ..

- Constantes ^ C#5, 2#...etc.

1.12.6 REINITIALISATION DU COMPTEUR (R)Le compteur est réinitialisé (remis à 0) lorsque le RLG est égal à 1. Si le

RLG est égal à 0, le compteur n'est pas influencé. La remise à 0 d'un

compteur agit de manière statique. Lorsque la condition de remise à 0 est

vraie, l'initialisation ou le comptage ne sont pas possibles.

1.12.7 INTERROGATION DE LA VALEUR DU COMPTEUR (L/LC)Une valeur de comptage est sauvegardée dans un mot compteur codé

binaire. La valeur figurant dans le compteur peut être chargée dans

l'accumulateur sous la forme d'un nombre binaire (DU) ou DCB (DE) et être

transférée à partir de là dans d'autres zones d'opérandes.

En programmation LIST, vous avez le choix entre L Z1 pour l'interrogation

du nombre binaire et LC Z1 pour l'interrogation du nombre DCB.

1.12.8 TEST A 0/1 DE L'ETAT DU SIGNAL DU COMPTEUR (Q)Il est possible de tester à 0/1 l'état de signal du compteur, 0 et 1 ayant les

significations suivantes.

Etat du signal 0 = Le compteur est sur la valeur 0;

Etat du signal 1 = Le compteur fonctionne, c-à-d. est prêt à compter.

Vous pouvez interroger les états de signaux comme vous êtes habitué à le

faire avec U Z1, UN Z1, ON Z1,etc... et utiliser ce résultat pour d'autres

opérations.

Page 17: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 17

CompteurZV

ZR

S DUAL

ZW DEZ

R Q

Z1

E0.0

C#5

E0.3

AW2

AW4

A 0.0

LOG LIST

U E 0.7 Validation (seulement en LIST)

FR Z1

U E 0.0

ZV Z1 Comptage

U E 0.1

ZR Z1 Décomptage

U E 0.2

L C#5 Chargement valeur prédéfinie

S Z1 Initialisation compteur Z1

U E 0.3

R Z1 Réinitialisation compteur Z1

L Z1 Chargement Z1 codé binaire

T AW2

LC Z1 Chargement Z1 codé DCB

T AW4

U Z1 Interrogation du compteur Z1

= A 0.0

CompteurZV Q

ZR

S

ZW DUAL

R DEZ

Z1

E0.0

C#5

E0.2

AW2

AW4

A 0.0

CONT

( )

E0.1

E0.1

E0.3

E0.2

Diagramme de l'état du signal :

FR

ZV

ZR

S

R

A 0.0

0

5

Page 18: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 18

1.13 OPERATIONS DE CHARGEMENT ET DE TRANSFERT (L/T)UNIQUEMENT EN LIST

Des opérations de chargement et de transfert permettent en langage de

programmation LIST de STEP 7 l'échange d'informations par octets, mots

ou double mots entre modules d'entrées et de sorties, la mémoire image

des entrées et sorties, les mémoires de temporisations, compteurs et

mémentos ainsi que les blocs de données.

Cet échange d'informations n'a pas lieu directement, mais toujours via

l'accumulateur 1.

L'accumulateur 1 est un registre dans le processeur et sert de mémoire

intermédiaire.

Le flux d'informations n'est pas le même en fonction du sens :

CHARGEMENT : de la mémoire source dans l'accumulateur 1

TRANSFERT : de l'accumulateur dans la mémoire cible

0151631

ACCU 1

Mémoire cibleMémoiresource

TRANS-

FERTCHARGT

Le contenu de la mémoire source adressée est copiée lors du chargement

et écrite dans l'accumulateur 1. Le contenu de l'accumulateur est ensuite

transféré dans l'accumulateur 2.

Le contenu de l'accumulateur 1 est copié lors du transfert et écrit dans la

mémoire cible adressée.

Comme le contenu de l'accumulateur est seulement copié, il reste

disponible pour d'autres opérations de transfert.

LIST :

: L EW 0

: T AW 4

: L +5

: T AW 6

: BE

MIE EW 0 ACCU

ACCU+5 AW 6

AW 4

Constante

MIS

MIS

(*1) (*2)

*1: Mémoire image des entrées *2: Mémoire image des sorties

Le chargement et le transfert sont des opérations inconditionnelles qui sont

exécutées à chaque cycle quel que soit le résultat logique.

Page 19: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 19

1.14 OPERATIONS DE COMPARAISONLes langages de programmation de STEP7 vous offrent la possibilité de

comparer directement deux valeurs numériques et de connecter aussitôt le

résultat de la comparaison (RLG). Il faut pour cela que les deux nombres

aient le même format.

Les paires suivantes de valeurs numériques peuvent être comparées :

deux entiers ( 16 bits symbole : I )

deux entiers ( 32 bits symbole: D )

deux réels (nombres à virgule flottante 32 bits, symbole : R )

Vous pouvez choisir entre six types de comparaisons :

Si valeur du nombre Z 1(dans l'accu 2) est

la valeur du nombre Z 2(dans l'accu 1)

égale à = =différente de < >supérieure ou égale à > =supérieure à >inférieure ou égale à < =inférieure à <

L'opération de comparaison compare les deux valeurs figurant dans les

accumulateurs 1 et 2. Le premier opérande (par exemple EW 0) est chargé

dans l'accumulateur 1 lors du premier chargement. Le second chargement

transfère le premier opérande de l'accumulateur 1 à l'accumulateur 2, puis

le second opérande (par exemple EW 2) dans l'accumulateur 1. Les valeurs

numériques figurant dans les deux accumulateurs sont ensuite comparées

bit par bit dans le bloc arithmétique. Le résultat de la comparaison est

binaire. Si la comparaison recherchée s'avère vraie, le résultat logique est

1. Si la comparaison recherchée n'est pas vraie, le RLG sera 0.

A 4.7LOG/CONT LIST

L EW 0

L EW 2

> I

= A 4.7

ACCU 1 ACCU 2

EW 0 * * *

EW 2 EW 0

Bloc arithmétique

RLG

EW 0

EW 2

( )CMP

> I

IN 1

IN 2

Utilisation de steep7 et application des instructions

Page 20: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 20

Le logiciel de programmation STEP 7 vous permet de structurer votre programme utilisateur,c'est à dire de le subdiviser en différentes parties autonomes. Il en résulte les avantagessuivants :

écrire des programmes importants mais clairs, standardiser certaines parties du programme, simplifier l'organisation du programme, modifier facilement le programme, simplifier le test du programme, car vous pouvez l'exécuter section par section, faciliter la mise en service.

Programmation

1-Lancer l’application

Pour lancer l’application, il suffit de trouver l'icône de STEP 7 dans l'interface Windows

et de double cliquer dessus.

2-Création d'un projet à l'aide de l'assistant

Le plus simple pour créer un nouveau projet, c'est d'avoir recours à l'assistant "Nouveauprojet". Pour l'appeler, choisissez la commande Fichier > Assistant "Nouveau projet".

Page 21: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 21

Il vous posera les questions nécessaires dans des boîtes de dialogue et créera le projet pourvous.

Cliquer sur suivant

Page 22: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 22

Choisir le type de CPU ( CPU 314 IFM) et Cliquer sur suivant.

Choisir un langage par exemple CONT et cliquer sur suivant.

Page 23: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 23

Taper le nom du projet et cliquer sur créer.

Pour écrire un programme sur le bloc OB1Double cliquer sur OB1.

Page 24: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 24

3-Ecrire un programme.Programme de Démarrage étoile tringle d’un moteur

asynchrone.

Réseau 1

Réseau 2

Page 25: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 25

Réseau 3

Réseau 4

Réseau 5

Ajouter le réseau suivant pour le test en mode de simulation avec PLCSIM.

Page 26: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 26

3-Enregistrer. Activez la fenêtre de travail du bloc à enregistrer. Choisissez : lacommande Fichier > EnregistrerSi vous voulez sauvegarder le bloc sous le même nom ; la commande Fichier >Enregistrer sous si vous voulez sauvegarder le bloc sous un autre programme utilisateurS7 ou sous un autre nom. Indiquez, dans la boîte de dialogue qui apparaît alors, le nouveauchemin d'accès ou le nouveau bloc.

4-Simulation avec PLCSIMLancer PlcSimSélectionner le bloc programme OB1 et cliquer sur charger puis sur visualiser.

Page 27: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 27

5-Paramétrage de l'interface de programmation (adaptateur PC) et chargerun programme.

Paramétrage de l'interface

Une liaison MPI est nécessaire pour programmer un SIMATIC S7-300

depuis le PC ou la PG. MPI signifie Multi Point Interface (interface

multipoint) et est une interface de communication utilisée pour la

programmation, le contrôle-commande avec HMI et l'échange de données

entre CPU SIMATIC S7 jusqu'à 32 nœuds maximum.

Chaque CPU du SIMATIC S7-300 est équipée d'une interface MPI intégrée.

Il existe plusieurs possibilités pour raccorder le PC, la PG ou un portable à

l'interface MPI :

- Processeurs de communication ISA intégrés pour la PG

- Processeurs de communication ISA pour le PC (par exemple carte MPI-

ISA)

- Processeurs de communication PCI pour le PC (par exemple CP5611)

- Processeurs de communication PCMCIA pour le portable (par exemple

CP5511)

- Adaptateur pour la communication via l'interface série du PC ou du

portable (par exemple adaptateur PC)

Nous décrivons par la suite étape par étape comment choisir et paramétrer

l'adaptateur PC pour le PC.

1. Appelez le 'Paramétrage de l'interface PG/PC'. ( Démarrer

SIMATIC STEP7 Paramétrage de l'interface PG/PC)

Page 28: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 28

2. Cliquez ensuite sur le bouton 'Selectionner ' pour installer l'interface MPI

proposée. ( Selectionner )

3. Sélectionnez la carte voulue, par exemple 'PC Apapter (PC/MPI-Cable)', et

choisissez 'Installer' ('PC Apapter (PC/MPI-Cable)Installer).

4. Sélectionnez l'appareil voulu (PC Apapter (PC/MPI-Cable) OK )

5. Choisissez les 'Propriétés' de l' PC Apapter (MPI)’ ( PC Apapter (MPI)

Propriétés)

Cliquez sur 'PCApapter(PC/MPI-

Cliquez sur 'Installer’!

Cliquez sur'Selectionner’!

Page 29: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 29

6. Réglez le 'Port COM' et la 'Vitesse de transmission' de l'interface série.

Nota : La vitesse de transmission doit être également réglée sur l'adaptateur PC ! Les

adaptateurs PC de l'ancienne génération (aussi appelés câbles PC/MPI) ne peuvent traiter

qu'une vitesse de transmission plus lente de 19200 bit/s.

7. Sélectionnez des valeurs pour les options 'Adresse', Délai d’attente ', 'Vitesse de

transmission' et 'Adresse la plus élevée'.

Cliquez sur' PCApapter (MPI)’

Cliquez sur'Propriétés’ !

Port COM

Vitesse de transmission

Page 30: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 30

Nota : Il est recommandé de laisser les valeurs par défaut !

8. Validez les paramètres par défaut ( OK OK ).

9. Pour voir si le paramétrage est correct, appelez maintenant 'SIMATIC

Manager' en double-cliquant sur son icône. ( SIMATIC Manager)

10. Enfichez ensuite le connecteur provenant de l'interface MPI du PC dans

l'interface MPI de la CPU et activez l'alimentation en courant de l'automate.

L'interface MPI est située derrière le couvercle de la CPU. Il s'agit d'un

connecteur sub D à 9 points.

11. Cliquez ensuite sur le bouton ' – Partenaires accessibles'. Si tous

les paramètres sont corrects, la boîte de dialogue suivante s'affiche. Vous

pouvez y lire l'adresse MPI de la CPU qui est l'adresse par défaut (MPI =

2). ( )

Vitesse detransmission !

Adresse la plusélevée !

Délai d’attente

Adresse MPI duPC/PG !

Page 31: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 31

6-Charger le programme en PG

Nous vous recommandons d'effectuer un effacement général de la CPU avant de chargervotre programme utilisateur, afin d'être sûr qu'il n'y a plus d'anciens blocs dans la CPU.RemarqueVous devez faire passer la CPU de l'état de fonctionnement "Marche" (RUN) à l'état"Arrêt" (STOP) avant : de charger le programme utilisateur complet ou certaines de ses parties dans la CPU, d'effectuer un effacement général de la CPU,Remarque.En cas d'effacement général ou de panne secteur lorsque la mémoire vive n'est passauvegardée, les blocs "effacés" sont à nouveau copiés de l'EPROM dans la mémoire vive,où ils sont alors à nouveau actifs.Système cible > Effacement général.

Système cible > ChargerUne autre possibilité consiste à ouvrir une fenêtre en ligne avec la vue du système cible(par exemple via la commande Affichage > En ligne ou Système cible > Afficher lespartenaires accessibles) et de copier l'objet à charger dans la fenêtre en ligne.

Page 32: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 32

L'état en cours du bloc de l'éditeur est chargé seulement dans la CPU.

La syntaxe est vérifiée. Le cas échéant, les erreurs vous seront signalées dans des boîtes dedialogue, avec indication de la cause et de l'emplacement des erreurs. Vous devez corrigerces erreurs avant d'enregistrer ou de charger le bloc. Si la syntaxe est correcte, le bloc estensuite compilé en code machine et enregistré ou chargé.

Pour le S7-300, la mémoire de chargement peut comporter une partie EEPROM intégréeen plus de la partie RAM (par exemple CPU312 IFM et CPU314 IFM).

Pour le S7-400, l'utilisation d'une carte mémoire (RAM ou EEPROM) s'avèreindispensable pour l'extension de la mémoire de chargement

7-Ouverture en ligne du blocProcédez de la manière suivante :Avec gestion du projet

1. Ouvrez la fenêtre du projet en ligne dans SIMATIC Manager.2. Dans la fenêtre en ligne, sélectionnez un dossier Blocs. La liste des blocs chargés

s'affiche.3. Effectuez un double clic sur le bloc que vous souhaitez ouvrir.

Sans gestion du projet1. Cliquez sur le bouton "Partenaires accessibles" dans SIMATIC Manager ou choisissez

la commande Système cible > Partenaires accessibles.

Page 33: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 33

2. Sélectionnez le partenaire (objet "MPI=...") dans la liste affichée et ouvrez le dossierBlocs pour afficher les blocs.

3. Effectuez un double clic sur le bloc que vous souhaitez ouvrir

6-Introduction au forçage de variables

Vous disposez des possibilités suivantes pour forcer des variables : Activer la visualisation en cliquant sur des lunettes. Activez la fonction de forçage avec la commande Variable > Forcer. Le programme

utilisateur affecte aux variables sélectionnées les valeurs de forçage figurant dans latable des variables, en fonction du point et de la condition de déclenchement définis.Si vous avez choisi la condition de déclenchement "Cyclique", vous pouvez à nouveaudésactiver la fonction de forçage avec la commande Variable > Forcer.

Actualisez les valeurs des variables sélectionnées de manière unique etimmédiatement avec la commande Variable > Actualiser valeurs d'état.

Création et ouverture d'une table de variables

Pour visualiser ou forcer des variables, il faut d'abord créer une table de variables (VAT) et yentrer les variables concernées. Pour créer une table de variables, vous disposez despossibilités suivantes :Dans SIMATIC Manager :

Sélectionnez le dossier Blocs et choisissez la commande Insertion > Bloc S7 > Tabledes variables. Vous pouvez donner un nom à la table dans la boîte de dialogue quiapparaît alors (champ de saisie "Nom symbolique"). Ce nom s'affichera dans la fenêtrede projet. Pour ouvrir la table de variables, effectuez un double clic sur l'objet.

Sélectionnez une liaison dans la liste des partenaires accessibles ou un programmeS7/M7 dans la vue en ligne. Vous pouvez alors créer une table de variables sans nom àl'aide de la commande Système cible > Visualiser/forcer des variables.

Insertion d'une plage d'opérandes continue dans une table de variables

Page 34: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 34

1. Ouvrez une table de variables.2. Positionnez le curseur dans la ligne à la suite de laquelle vous souhaitez insérer la

plage d’opérandes.3. Choisissez la commande Insertion > Plage : la boîte de dialogue "Insérer une plage

d’opérandes" s’affiche.4. Dans le champ "Opérande initial", tapez une adresse d’opérande comme adresse de

début de plage.5. Dans le champ "Nombre", tapez le nombre de lignes à insérer.6. Choisissez le format d'affichage souhaité dans la liste affichée.7. Cliquez sur OK.

La plage d’opérandes est alors insérée dans la table des variables.Dans la fenêtre "Visualisation et forçage de variables" :

Vous pouvez créer, avec la commande Table > Nouvelle, une nouvelle table qui n'estencore affectée à aucun programme S7 ou M7. Vous ouvrez les tables existantes avecla commande Table > Ouvrir.

Vous pouvez vous servir des boutons de la barre d'outils pour créer ou ouvrir une tablede variables.

Une fois créée, vous pouvez sauvegarder, imprimer et réutiliser la table des variables pour lavisualisation et le forçage.

8-Marche à suivre pour la visualisation et le forçage avec des tables devariables

Pour exécuter les fonctions de visualisation et de forçage, procédez de la manière suivante :1. Créez une nouvelle table de variables ou ouvrezen une existante.2. Editez ou vérifiez la table de variables.3. Etablissez une liaison en ligne entre la table de variables en cours et la CPU de votre

choix à l'aide de la commande Système cible > Etablir la liaison à....4. Choisissez, avec la commande Variable > Déclenchement, un point de

déclenchement approprié et définissez la condition de déclenchement.5. Les commandes Variable > Visualiser et Variable > Forcer activent et désactivent

les fonctions correspondantes.6. Sauvegardez la table de variables achevée en choisissant la commande Table >

Enregistrer ou Table > Enregistrer sous, afin de pouvoir la rappeler à tout moment.

Chargement et enregistrement (EPROM)

Enregistrement dans la mémoire intégrée EPROMPour la CPU 312, il existe encore la possibilité de charger le contenu de la mémoire vivedans la mémoire intégrée EPROM, où les données sont rémanentes en cas de pannesecteur. Après retour du courant suite à une panne secteur, quand la mémoire vive n'est passauvegardée, et après effacement général de la CPU, le contenu de l'EPROM est à nouveaucopié dans la zone de mémoire vive de la mémoire de la CPU.

Chargement dans la gestion du projet

1. Dans la fenêtre du projet, sélectionnez le programme utilisateur ou les blocs à charger.2. Chargez les objets sélectionnés dans le système cible en choisissant la commande

Système cible > Charger.Autre procédure possible (glisser-lâcher)

1. Ouvrez à la fois une fenêtre hors ligne et une fenêtre en ligne de votre projet.2. Sélectionnez ensuite les objets à charger dans la fenêtre hors ligne, puis glissez-les

dans la fenêtre en ligne.

Enregistrement de blocs chargés dans la mémoire intégrée EPROM

Page 35: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 35

Dans les modules CPU disposant d'une EPROM intégrée (par exemple la CPU 312), vouspouvez copier des blocs de la mémoire vive dans l'EPROM intégrée afin de ne pas perdre lesdonnées en cas de coupure de courant ou d'effacement général.

1. Affichez une fenêtre avec la vue en ligne d'un projet ouvert en choisissant lacommande Affichage > En ligne ou alors affichez la fenêtre "Partenaires accessibles"en cliquant sur le bouton "Partenaires accessibles" dans la barre d'outils ou enchoisissant la commande Système cible > Afficher les partenaires accessibles.

2. Choisissez le programme S7 ou M7 dans la fenêtre en ligne du projet ou le partenairedans la fenêtre "Partenaires accessibles".

3. Sélectionnez le dossier Blocs de la CPU que vous voulez enregistrer dans :o la fenêtre en ligne du projet si vous travaillez dans la gestion du projet.o la fenêtre "Partenaires accessibles", si vous travaillez hors gestion du projet.

4. Choisissez la commande Système cible > Copier de RAM en ROM.

Chargement via des cartes mémoire EPROM

Condition préalablePour pouvoir accéder depuis l'outil de développement aux cartes mémoire EPROM destinéesà un système cible S7, vous devez avoir installé le pilote d'EPROM correspondant. Pourpouvoir accéder aux cartes mémoire EPROM destinées à un système cible M7, vous devezavoir installé le système Flash File (ceci n'est possible que sur les PG720/740/760). Le piloted'EPROM et le système Flash File sont proposés en option lors de l'installation du logiciel debase STEP 7. Si vous utilisez un PC, vous devez en plus posséder un programmateurd'EPROM externe pour pouvoir réaliser l'enregistrement sur une carte mémoire EPROM.Vous pouvez également installer les pilotes ultérieurement. Ouvrez à cet effet la boîte dedialogue correspondante via la barre des tâches (Démarrer > Simatic > STEP 7 >Paramétrage de cartes mémoire) ou via le panneau de configuration (double clic sur l'icône"Paramétrage de cartes mémoire”).

Sauvegarde sur carte mémoirePour sauvegarder des blocs ou des programmes utilisateur sur une carte mémoire, procédez dela manière suivante :

1. Enfichez la carte mémoire dans l'emplacement prévu à cet effet sur votre outil dedéveloppement.

2. Ouvrez la fenêtre "Carte mémoire S7" de la manière suivante :o Cliquez sur le bouton de la carte mémoire dans la barre d'outils. Si cette

dernière n'est pas affichée, vous pouvez le faire en choisissant la commandeAffichage > Barre d'outils.

o Une alternative consisterait à choisir la commande Fichier > Carte mémoire S7> Ouvrir.

3. Ouvrez ou activez la fenêtre dans laquelle vous allez afficher les blocs à enregistrer. Ilpeut s'agir d'une :

o fenêtre du projet, vue du projet en ligneo fenêtre du projet, vue du projet hors ligneo fenêtre de bibliothèqueo fenêtre "Partenaires accessibles"

4. Sélectionnez le dossier Blocs ou les blocs à enregistrer, puis copiez-les dans la fenêtre"Carte mémoire S7".

5. Si un bloc se trouve déjà sur la carte mémoire, un message d'erreur est émis. Dans cecas, effacez le contenu de la carte mémoire et répétez les étapes à partir de l'étape 2.

Chargement d'une configuration depuis une station dans la PG

Page 36: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 36

Condition préalableVous avez connecté la console de programmation à l'interface MPI de la CPU via un câbleMPI.ConseilsChargez des stations dans un projet vide, nouvellement créé.Marche à suivre

1. Choisissez la commande Système cible > Charger dans PGLa boîte de dialogue dans laquelle vous ouvrez la configuration s'affiche.

2. Sélectionnez le projet dans lequel vous souhaitez ultérieurement sauvegarder laconfiguration, puis cliquez sur "OK".

3. Dans la boîte de dialogue suivante, vous paramétrez l'adresse de réseau, le numéro dechâssis et l'emplacement d'enfichage du module dont vous souhaitez lire laconfiguration (en général, une CPU). Confirmez par "OK".

Vous pouvez donner un nom de station à cette configuration en choisissant la commandeStation > Propriétés, puis la sauvegarder dans le projet présélectionné avec la commandeStation > Enregistrer.

L’Effacement

Effacement dans la mémoire vive du système cible

Vous pouvez effacer un ou plusieurs blocs que la CPU soit à l'état de fonctionnement d'arrêt(STOP) ou de marche (RUN-P). Si à l'état de marche (RUN-P) vous effacez un bloc qui estencore appelé, soit la CPU passera à l'état d'arrêt, soit un OB d'erreur sera appelé.Procédez de la manière suivante :

1. Sélectionnez les blocs à effacer dans la fenêtre du projet en ligne ou dans le fenêtre"Partenaires accessibles".

2. Dans SIMATIC Manager, choisissez la commande Edition > Effacer ou appuyez surla touche SUPPR.

Pour effacer le programme utilisateur entier de la CPU, vous pouvez aussi effectuer uneffacement général de la CPU

Effacement dans l'EPROM intégrée

Pour effacer l'EPROM intégrée de la CPU 314, vous écrasez son contenu par le contenuactuel de la mémoire vive dans laquelle vous aviez effacé tous les blocs utilisateur.Procédez de la manière suivante :

1. Dans SIMATIC Manager, ouvrez la fenêtre "Partenaires accessibles" en choisissant lacommande Système cible > Afficher les partenaires accessibles ou la fenêtre duprojet en ligne via la commande Affichage > En ligne.

2. Sélectionnez les blocs à effacer.3. Choisissez la commande Edition > Effacer ou appuyez sur la touche SUPPR.4. Choisissez la commande Système cible > Copier de RAM en ROM.

Effacement de la carte mémoire EPROM

Pour effacer la carte mémoire EPROM, procédez de la manière suivante :1. Enfichez la carte mémoire dans l'emplacement prévu à cet effet sur votre outil de

développement.2. Cliquez sur le bouton de la carte mémoire dans la barre d'outils (carte mémoire S7). La

fenêtre "Carte mémoire S7" s'ouvre.3. Dans cette fenêtre, sélectionnez le dossier "S7-Memory Card".4. Choisissez la commande Edition > Effacer ou appuyez sur la touche SUPPR.

Autre manière de procéder :

Page 37: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 37

1. Enfichez la carte mémoire dans le logement correspondant sur votre système cible.2. Choisissez la commande Fichier > Carte mémoire S7 > Effacer.

Vous pouvez ainsi également effacer des cartes mémoire que vous ne pouvez pas ouvrir

9 Commutateurs :

RUN-P : Automate en marche, et modification de programme autorisée.RUN : Automate en marche, et modification de programme interdite.STOP : Automate à l‘arrêt, et modification de programme autorisée.MRES : Effacement général de la CPU.

Voyants :

SF : Défauts groupés : Matériel, logiciel, programme, ...BATF : Défaut batterie.DC5V : Alimentation 5V correcte.FRCE : Fixe ? indique la présence d’un (de) forçage(s) permanent(s).RUN : Clignotant ? Démarrage. Fixe ? CPU en marche.

STOP : Clignotant ? Demande d’effacement général. Fixe >>> CPU à l’arrêt

Ici, vous définissez le format d'affichage de la date et de l'heure. Vous pouvez choisir lesformats d'affichage suivants :

Page 38: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 38

Selon la langue nationale STEP 7

Activez cette option, si vous souhaitez afficher la date et l'heure conformément à la langue deSTEP 7.Si vous n'avez pas effectué de choix, il s'agit du paramétrage par défaut.

Exemple de formats d'affichage dans la langue de STEP 7

Page 39: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 39

Chariot

Page 40: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 40

Traduction GRAFCET ladder

Page 41: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 41

uuuu

Page 42: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 42

FC2 les étapes.

Page 43: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 43

Page 44: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 44

FC3 les temporisateurs et compteur.

Page 45: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 45

OB100 le premier scruté au démarrage une seule fois.

Page 46: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 46

OB1

Page 47: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 47

Pour suivre l’évolution des étapes et des actions programmer les lignes suivantes enOB1.

Page 48: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 48

Lancer simatic et éditer la table des mnémoniques.

Page 49: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 49

Programmer FB2

Page 50: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 50

Programmer OB1

Page 51: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 51

Tp en S7-siemensTraduction grafcet- ladder

GRAFCET

Le GRAFCET est un diagramme qui représente L’état Logique d’un procédé et qui Lecontrôle. Nous ferons ici Le GRAFCET d’un automatisme très simple.

Page 52: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 52

Ce petit automatisme de remplissage de bouteilles est constitué :D’un convoyeur commandé par un moteur « MT ».D’une valve de remplissage « V » .De deux capteurs, un capteur de présence de bouteille prête à être remplie « pb » eu un boutonpoussoir « m ».Pour démarrer L’automatisme, il suffit d’appuyer sur Le bouton poussoir « m ». Le tapisroulant démarre et une première bouteille se présente au poste de remplissage. La capteur «pb » détecte La bouteille, puis La vanne « V » s’ouvre pendant 12 secondes pour remplir labouteille.La bouteille est évacuée et une nouvelle bouteille est présentée pour remplissage. IL fautremplir six bouteilles suite à L’appui sur Le bouton « m ».Le GRAFCET de niveau 2 sera Le suivant :

Le GRAFCET est composé d’étapes que nous représenterons en utilisant des mémoiresinternes (ou mémentos) identifiés M(octet).(bit).Ainsi pour notre GRAFCET, nous pouvons choisir de faire La correspondance suivante :

Étape1 X1 :M0.0Étape2 X2 :M0.1Étape3 X3 : M0.2Étape 4 X4 : M0.3

Le GRAFCET est aussi composé de transitions que nous représenterons aussi avec desmémoires internes.Ainsi pour notre GRAFCET, nous pouvons choisir de faire La correspondance suivante :Transition « étape 1 → étape 2 » (T1) : M1.0 (mnémonique Y001)Transition « étape 2 → étape 3 » (T2) : M1.1 (mnémonique Y002)Transition « étape 3 → étape 4» (T3) : M1.2 (mnémonique Y003)Transition « étape 4 → étape 1 » (T4a) : M1.3(mnémonique Y004)Transition « étape 4 → étape 2 » (T4b) : M1.4. (mnémonique Y005)

L’automate reçoit deux signaux d’entrée :Bouton poussoir « m » branché à l’entrée I124.0Capteur de présence de bouteille « pb » branché à L’entrée I124.1

4

Page 53: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 53

L’automate envoie deux signaux de sortie :Contacteur commandant Le moteur « MT » branché à La sortie Q124.0 ;Vane de remplissage « V » branchée à La sortie Q124.1.En premier Lieu créer un nouveau projet et nommé le.Lors de La création de ce projet avec L’assistant demander d’inclure Les blocs OB1 etOB100.

Phase1 : création de projet et chois de cpu.

Phase2 : création d’une table de mnémoniques.

Programmons dans Le bloc de fonction FC1 Les 5 transitions. L’équation Logique de La premièretransition est :Y001= X001•m•pbCette équation contient L’état de L’étape validant cette transition (ici c’est L’étape 1identifiée X001) et La réceptivité de cette transition.Les autres transitions auront comme équations Logiques :

Y002 = X002•pbY003 = X002•T1 Y004a = X004•pb•C1Y004b = X004•pb•C1Le bit C1 identifie L’état d’un compteur décrémentaL qui donne un niveau Logique 0 Lorsque Lecompteur est à 0. Le temporisateur T1 identifie L’état d’un temporisateur de 12 secondes avecdéLai sur La montée.

Phase3 : Edition de bloc FC1.

Page 54: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 54

Phase4 : Edition de bloc FC2Programmons maintenant Les quatre équations représentant L’état des quatre étapes.

.Le signal « Init » initialise L’étape initiale et sera obtenu avec Le bit interne M10.0.

X001= Y004b + X001× !Y001+Init

Les autres étapes auront comme équations Logiques :

X002 = Y001+ Y004b + X002 × !Y002X003 = Y002 + X003 × !Y002X004 = Y003 + X004 × !Y004a × !Y004b

Le diagramme échelle du FC2 est :

Page 55: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 55

Phase4 : Edition de bloc FC3 Les actions de notre GRAFCET.

Les équations Logiques des actions seront :

MT = X002 + X004V = X003La temporisation et Le compteur seront aussi dans ce bloc qui sera donc :

Page 56: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 56

Phase4 : Edition de bloc OB1

Finalement Pour que le tout fonctionne, il faut éditer le bloc OB1 pour qu’il appelle les 3blocs de fonction.Le bloc OB1 doit remettre le bit d’initialisation « Init » à 0. Ainsi, OB1 sera :

e contact de remise à 0 du réseau 4 qui est identifié « (R) » est obtenu via Le répertoire« eléments de programmes » de La fenêtre « éléments de programmes ».Le signal d’initialisation doit être mis à 1 Lors de La mise en marche de L’automate (LorsqueL’automate passe du mode STOP au mode RUN). Cela est obtenu en programmant Le blocOB100 qui s’exécute Lors du changement de mode.Donc Lorsque L’on utilise un GRAFCET, on programme Le bloc OB100 comme suit :

Phase : Edition de bloc OB100

Page 57: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 57

Phase6 : Vérifier le programme en utilisant PLCSIM

Tester le programme en appuyant sur les boutons des entrées « m » et « pb » pour simulerce procédé et examiner les voyants des sorties « MT » et « V ». Visualiser les blocs de fonctionsFC1, FC2 et FC3.

Page 58: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 58

Page 59: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 59

Configuration Bloc OB10 ALARME

On programme OB1 et OB10 et simule le fonctionnement.

Page 60: COUR STEP7 .pdf

EEExxxpppooossseee pppaaarrr LLLAAAHHHCCCIIINNNIII 60