Vous êtes sur la page 1sur 99

TP.

API

SIMATIC
Automate Programmable S7-300
Configuration et Programmation

Dr. Mohamed-Faouzi Harkat


1
PLAN
• Présentation de l’automate et son environnement
- Materiels prérequis
- Montage et cablage
• Présentation de STEP 7 (logiciel de
programmation)
• Configuration de l’API
• Adressage et Mnémoniques
• Programmation
- Principes
- Structure d’un programme
• Exemples (programmation sur bit, sur mots,...)
• S7-PLCSIM et S7-GRAPH 2
3
4
5
6
7
8
9
10
11
12
STEP 7, c’est quoi ?

13
STEP 7

14
STEP 7

15
STEP 7

16
STEP 7

17
STEP 7

18
STEP 7

19
20
Configuration

21
Configuration
1. Démarrer le logiciel SIMATIC MANAGER à l'aide
du raccourci qui se trouve sur le bureau
2. Création d'un nouveau projet :
Nota : Ne pas utiliser l'assistant nouveau projet pour ne
pas être tributaire des choix du logiciel.
• Ouvrir un nouveau projet dans le menu Fichier —
Nouveau Projet
• Donnez lui un nom, par exemple Votre Nom_TP

• Laissez le chemin C:\Siemens\Step7\S7proj et
valider sur OK pour l'enregistrement.
22
Configuration
. Le logiciel est plus performant lorsque les projets sont enregistrés
sous C:.
Vous venez de vous créer un nouveau projet sous SIMATIC
MANAGER et vous vous trouvez à présent sous l'environnement du
logiciel. Voir ci-dessous:

23
Configuration

3. Configuration matériel :
Une fois votre nouveau projet créé, il faut configurer les
caractéristiques de l'automate dans le logiciel.
Caractéristiques de l'automate :
L'automate SIEMENS que vous allez configurer comporte trois
parties. Il faut donc configurer ces trois parties dans le logiciel.
Partie 1 : Alimentation externe
Partie 2 : CPU
Partie 3 : Carte d'entrées sorties

24
Configuration

a. Insertion d'une Station :


• Dans le menu Insertion — Station — Station SIMATIC 300
Une station représente une configuration matérielle. Vous pouvez
avoir plusieurs Stations (Automates) sur un même projet.
Lorsque vous sélectionnez une station dans la partie gauche de la
fenêtre de ce projet, les objets qu'elle contient s'affichent dans la
partie droite de cette fenêtre.
Nota : Vous pouvez renommer le nom de votre station (SIMATIC
300(1)) par Station N°X. Avec X le N° de votre poste.

25
Configuration

26
Configuration

b. Configuration du matériel :
• L'icône matériel vous permet de démarrer l'application de
configuration du matériel.
• Dans le menu Insertion — Cliquez sur Composants matériels
— Un catalogue apparaît à droite de l'écran.
Il faut à présent sélectionner un support de matériel. Ce support va
vous permettre de placer les différents modules de l'automate à
configurer.
• Dans le catalogue de composants, sélectionnez :
SIMATIC 300 — RACK 300 — Cliquer sur Profilé support

27
Configuration

Votre environnement de travail doit être le suivant :

28
Configuration

Maintenant que le profilé support est installé, vous pouvez


placer les différents modules de l'automate.
Les modules que vous avez à configurer sont les suivants :
1. L'alimentation externe de l'automate
2. La CPU
3. Les cartes d'entrées/sorties

29
Configuration
1) Exemple pour l'alimentation externe :
Sur l'alimentation de l'automate, se trouve l'inscription PS7 2A.
Dans le catalogue de composants, allez chercher cette
alimentation et placez là dans l'emplacement 1.

30
Configuration
2) Implantation de la CPU :
• Choisir ensuite la CPU dans le catalogue de composants et
placer la sur le profilé support.
Les caractéristiques de la CPU ainsi que son adresse MPI, sont
inscrites directement sur l'Automate.
Une fois la CPU installée, modifiez son adresse MPI. ( Sinon,
vous risquez de modifier le programme sur l'automate de votre
voisin)
Pour modifier l'adresse MPI, cliquez sur la CPU. Dans le menu
Général, Cliquez sur Propriétés et modifiez l'adresse MPI.
Nota : La CPU de l'automate utilise deux emplacements. C'est à
dire qu'il ne faudra pas installer de modules à l'emplacement 3.
31
Configuration

3) Implantation des cartes d'entrées/sorties :


Suivez la même procédure que précédemment et configurez les 4
cartes d'entrées/sorties installées dans votre automate.
4) Sauvegardez votre configuration matériel et retournez à
l'environnement SIMATIC MANAGER de départ. Vous pouvez à
présent programmer votre cycle sur le logiciel.
5) Exemple et explications d'une configuration finale :
Nota : La configuration ci-dessous, n'est pas la configuration finale
que vous devez avoir dans votre projet.

32
Configuration

33
Configuration

34
35
36
États de fonctionnement de la CPU
État de marche (RUN-P)
La CPU exécute le programme tout en vous permettant de le modifier, de même que ses paramètres. Afin
de pouvoir utiliser les applications de STEP 7 pour forcer un paramètre quelconque du programme durant
son exécution, vous devez mettre la CPU à l'état RUN-P.
Vous avez toujours la possibilité d'utiliser les "fenêtres" créées dans l'application de simulation de modules
S7-PLCSIM pour modifier une donnée quelconque utilisée par le programme.
État de marche (RUN)
La CPU exécute le programme en lisant les entrées, exécutant le programme, puis en actualisant les
sorties. Lorsque la CPU se trouve à l'état de marche (RUN), vous ne pouvez ni charger aucun programme,
ni utiliser les applications de STEP 7 pour forcer un paramètre quelconque (comme les valeurs d'entrée).
Vous pouvez uniquement utiliser les fenêtres créées dans l'application de simulation de modules S7-
PLCSIM pour modifier une donnée quelconque utilisée par le programme.
État d'arrêt (STOP)
La CPU n'exécute pas le programme. Contrairement à l'état d'arrêt (STOP) des CPU réelles, les sorties ne
prennent pas de valeurs (de "sécurité") prédéfinies, mais conservent l'état auquel elles étaient lorsque la
CPU est passée à l'état d'arrêt (STOP). Vous pouvez charger des programmes dans la CPU lorsqu'elle est
à l'arrêt. Le passage de l'état d'arrêt (STOP) à celui de marche (RUN) démarre l'exécution du programme à
partir de la première opération.
Les états de fonctionnement de la CPU, les indicateurs de la CPU et le bouton MRES (effacement général)
sont tous représentés dans la fenêtre "CPU". Vous pouvez définir l'état de fonctionnement de la CPU avec
la commande Position du commutateur à clé. Vous pouvez suspendre l'exécution du programme de l'AP de
simulation lorsque la CPU est à l'état RUN ou RUN-P.
37
Adressage
Dans cette partie, nous abordons les problèmes d'adressage
dans la programmation sur Automate SIEMENS.

Il existe différent types d'opérande.


Principalement :
• Les entrées
• Les sorties
• Les mémoires internes
Ces opérandes possèdent des adresses correspondant à des
bits (Zones de mémoire dont l'état est 0 où 1). Ainsi, elles
sont organisées par "familles" (Opérandes) autour d'octets
(Bytes en anglais), de mots (Word) et d'entier long (Double).
38
Adressage
Pour l'automate à notre disposition, la syntaxe d'une
adresse spécifique est donc la suivante :

Opérande Octet Bit

Entrée I ou E 0-255 0-7

Sortie Q ou A 0-255 0-7

Mémoire interne M 0-255 0-7

39
Adressage
Exemple 1: les entrées sont repérées sur la première carte
d'entrées : I0.0, I0.1,..., I0.7 puis I1.0,..., I1.7
Exemple 2 : Exemple sur la zone de mémento

Sur la zone de mémoire mémento M, on peut enregistrer des


valeurs dans le programme.
Ainsi, si vous avez besoin d'enregistrer un état vrai ou faux,
on utilisera un bit.
40
Adressage
Si on veut par exemple compter un nombre de cycles pour faire
un contrôle de production, alors on utilisera un mot (si nb
cycles < 255) pour enregistrer l'information... (Voir ci-dessous)
Valeur Valeur
Type Opérande Valeur binaire
Décimale Hexadécimale

Bit M156.4 1 1 1

Octet (Byte) MB156 00010110 22 16

Mot (Word) MW156 0001011000010100 5652 1614

Entier Long (Double) MD156 000101100001010001001000110110000111 2963424963 B0A246C3

41
Les Mnémoniques
Les mnémoniques sont là pour vous faciliter la vie. Ils permettent une
représentation symbolique des entrées, sorties, zones de mémoires... .
Ainsi plus besoin de se souvenir que le bouton X est connecté à
l'entrée I1.2. Il suffit de l'enregistrer au début dans la table des
mnémoniques en tant que Bouton X.
Vous pouvez alors librement utiliser Bouton X dans le programme, le
compilateur saura qu'il s'agit de I1.2.

Dans la table des mnémoniques ou la table des variables globales,


vous affectez des mnémoniques aux adresses d'E/S et de mémoire AP.
Lorsque vous définissez un mnémonique dans la table des
mnémoniques ou dans la table des variables globales, il a une portée
globale. Vous pouvez donc l'utiliser dans toutes les UOP pour faire
référence aux données à l'adresse de ce mnémonique.
42
Les Mnémoniques
· Vous pouvez définir des mnémoniques à tout moment : avant, pendant ou après
l'écriture du code du programme.
· Vous pouvez documenter vos mnémoniques dans la colonne "Commentaire".
· Vous pouvez sélectionner la commande Fichier > Imprimer et cocher la case
appropriée pour imprimer la table des mnémoniques ou la table des variables
globales.
· Une fois les mnémoniques définis, vous pouvez afficher les affectations et les
commentaires de mnémoniques après chaque réseau dans les éditeurs de programme
CONT et LOG en activant la table d'information sur les mnémoniques.
Remarque : Il n'est pas nécessaire de définir les mnémoniques préalablement à leur
utilisation dans le programme. Vous pouvez définir les adresses de mémoire
ultérieurement. Un soulignement apparaît si le mnémonique n'est pas connu.

43
Les Mnémoniques
L'adoption d'une convention au début de la programmation est
nécessaire pour bien se repérer. Et, ainsi ne pas s'obliger à tout le
temps regarder dans la table des mnémoniques pour voir comment
on avait appelé telle ou telle variable.
Par exemple nous adoptons la norme CNOMO pour les entrées /
sorties :
Type Désignation

Capteur SQ

Électrovanne YV

Bouton poussoir SB

Commutateur SA

44
Les Mnémoniques
En ce qui concerne les zones Mémentos, on opère de la même
façon.
Exemple :
Fonction FC correspondant Bit associé Désignation

Arrêt immédiat FC3 Mxxx.3 AI

Condition de sécurité en mode Manu FC4 Mxxx.4 CM

Validation de mouvement en mode Manu FC5 Mxxx.5 VM

Condition de sécurité en mode Auto FC6 Mxxx.6 CA

Validation de mouvement en mode Auto FC7 Mxxx.7 VA

45
Les Mnémoniques
Exemple : Pour la rentrée d’un vérin M1 :
La sortie est : M1R à laquelle on associe par exemple le mot MW105,
on a ainsi
Désignation Bit associé

AIM1R M105.3

CMM1R M105.4

VMM1R M105.5

CAM1R M105.6

VAM1R M105.7

46
Programmation
Cette partie correspond au résumé des principales notions lorsqu'on utilise pour
la première fois le langage ladder.

Il existe pour les automates SIEMENS 3 types de représentations équivalentes pour


la programmation :

LOG : L'éditeur Logigramme (LOG) vous permet de visualiser les


opérations sous forme de boîtes logiques ressemblant à des schémas
de porte logique courants.

LIST : Avec l'éditeur Liste d'instructions (LIST), vous entrez des


abréviations d'opérations quand vous créez des programmes de
commande. Généralement, l'éditeur LIST convient mieux aux
programmeurs expérimentés, habitués aux automates programmables
et à la programmation de code.
47
Programmation

LIST : L'éditeur LIST permet également de créer des programmes qu'il


n'est pas possible de représenter avec les éditeurs CONT ou LOG.
En effet, avec cet éditeur, vous programmez dans un langage natif de la
CPU et non dans un éditeur graphique où des restrictions sont nécessaires
pour que les schémas soient tracés correctement.

CONT : L'éditeur Schéma à contacts (CONT, LADDER) vous permet


de créer des programmes qui ressemblent à un schéma de câblage
électrique. La programmation en CONT est la méthode choisie par de
nombreux programmeurs d'automates programmables et par le personnel
de maintenance ; c'est un langage qui convient également très bien aux
programmeurs débutants.
48
Exemple Programmation

49
Programmation
Nous avons choisi le langage à contact pour la programmation car il s'agit
du langage le plus simple. Il peut être compris par n'importe qui ayant des
notions de logique, même s'il ne parle pas la même langue que vous...
De plus, il est le plus facile à débugger et permet une vision facile en
temps réel avec l'installation.
Il permet une bonne lisibilité, et il faut bien imposer une règle.
Principes
Fondamentalement, les programmes CONT permettent à la CPU
d'émuler le trajet de courant électrique partant d'une source de tension, à
travers une série de conditions d'entrée logiques validant, à leur tour, des
conditions de sortie logiques. Généralement, on subdivise le code en
sections de petites tailles et faciles à comprendre, souvent appelées
"réseaux". L'exécution du programme se fait réseau par réseau, de
gauche à droite et de haut en bas, comme prescrit par le programme.
Lorsque la CPU a atteint la fin du programme, elle recommence au début
du programme. 50
Programmation
Les principales opérations en CONT
Les différentes opérations sont représentées par des symboles graphiques de trois types
fondamentaux :
Les contacts représentent des conditions d'entrée logiques, telles que commutateurs,
boutons-poussoirs, conditions internes, etc.
Les bobines représentent généralement des résultats de sortie logiques, tels que
lampes, démarreurs de moteur, relais intermédiaires, conditions de sortie internes, etc.
Les boîtes représentent des opérations supplémentaires, telles que temporisations,
compteurs ou opérations arithmétiques.

En CONT, vous pouvez créer des réseaux simples ou très complexes. Vos réseaux
peuvent contenir des connecteurs et vous pouvez même connecter plusieurs boîtes
d'opérations en série si elles comportent une sortie Q (Enable Output). Si un flux de
signal est présent à l'entrée S d'une boîte et que l'opération correspondante est exécutée
sans erreur, la sortie Q transmet le flux de signal à l'élément suivant. Vous pouvez
utiliser Q comme bit de validation qui indique l'achèvement réussi d'une opération.
51
Programmation
Remarques
Lorsque vous sélectionnez l'éditeur CONT, vous devez considérer les aspects principaux
suivants :
• Les programmeurs débutants apprennent facilement le schéma à contacts.
• La représentation graphique facilite souvent la compréhension et est utilisée partout
dans le monde.
• Vous pouvez toujours afficher avec l'éditeur LIST un programme que vous avez créé
avec l'éditeur CONT

Les contacts

Un bouton poussoir, un bit (mémoire interne appelé mémento), une entrée... sont
représentés par le symbole

Son équivalent en schéma électrique est : <=>

<=>

52
Programmation
Les bobines
Une lampe, une électrovanne, une sortie plus généralement ou la mise à 1 d'un bit
interne sont représentés par

Son équivalent en schéma électrique pour une lampe par exemple est :

<=>
Les boites

Les boîtes sont des éléments supplémentaires pour effectuer certaines opérations telles
que la temporisation ou une comparaison entre deux mots... Il existe une panoplie de
ces boîtes. Par exemple, l'opération Démarrer temporisation sous forme de retard à
la montée (TON) compte le temps qui s'écoule lorsque l'entrée de validation est
activée.
Lorsque la valeur en cours (Txxx) est supérieure ou égale au temps prédéfini (PT), le
bit de temporisation est activé.
53
Programmation
Exemple de la tempo retard à la montée :

S et Q sont les paramètres qui vont respectivement activer la tempo et donner le


résultat lorsque celle-ci sera finie.
TV est le paramètre où on indique la durée de la tempo que l'on souhaite. (Notez
la syntaxe)
R est le paramètre qui remet à zéro la tempo (Reset).
Vous n'êtes pas obligé de remplir tous les paramètres. Pour plus de
renseignements consulter l'aide.

54
Programmation
Les réseaux contiennent les actions que vous voulez effectuer. Ainsi, pour allumer une
lampe en appuyant sur un bouton, le schéma électrique équivalent peut se transcrire de
la façon suivante :

Et se programmer comme suit :

Pour réaliser par exemple la fonction Bouton 1 OU Bouton 2 allume la Lampe :

55
Programmation
Pour réaliser par exemple la fonction Bouton 1 ET Bouton 2 allume la Lampe 1 et la
Lampe 2 :

Règles pour le positionnement des contacts

Chaque réseau doit commencer par un contact.


Vous ne pouvez pas terminer un réseau par un contact.

Règles pour le positionnement des bobines

Vous ne pouvez pas commencer un réseau par une bobine ; les bobines servent à
terminer un réseau de logique. Un réseau unique peut contenir plusieurs bobines si ces
bobines sont situées sur des branches parallèles du réseau. Vous ne pouvez pas placer
plusieurs bobines en série (vous ne pouvez pas avoir plusieurs bobines sur une seule
ligne horizontale d'un réseau). 56
Programmation
Structure d’un Programme

La méthode proposée est une méthode simple et rigoureuse. Elle n'est pas unique, car
aucune norme ne régit la façon de programmer un automate. Il suffit d'en connaître
quelques règles pour bien l'assimiler et la comprendre.

La programmation sous Step-7 est organisée autour d'un bloc principal dans lequel
on fait appel aux différentes fonctions qui sont à réaliser. C'est dans ce bloc principal
(OB1 par exemple) que sont faites les différentes connexions entre les fonctions.
Ainsi, on peut associer à chaque fonction (FC1 par exemple) un rôle spécial qui
permet de contrôler son système en interagissant avec les autres.

57
Programmation

FC1

OB1
58
Programmation
Exemple

59
Programmation
Remarque : Les choix de l'emplacement des mnémoniques des
différentes étapes est laissé libre.
On commence par programmer la description Grafcet. On
démarre avec la dernière étape :
Réseau 1

Traduction : Quand l'étape 4 est valide et que le Vérin A est


rentré, alors on Reset l'étape 4. (Plus d'étape valide donc on
valide l'étape 0 par le Réseau 4)

60
Programmation
Réseau 2

Traduction : Quand l'étape 3 est valide et que le Vérin B est rentré, alors
on Reset (dévalide) l'étape 3 et on Set (valide) l'étape 4.

Réseau 3

Traduction : Quand l'étape 2 est valide et que le Vérin B est sorti,


alors on Reset (dévalide) l'étape 2 et on Set (valide) l'étape 3.
61
Programmation
Réseau 4 Traduction : Quand l'étape 1 est valide et que le
Vérin A est sorti, alors on Reset (dévalide) l'étape 2
et on Set (valide) l'étape 2.

Réseau 5 Traduction : Quand l'étape 0 est valide et que l'on


appuie sur Début de Cycle, alors on Reset (dévalide)
l'étape 0 et on Set (valide) l'étape 1.

Réseau 6 Traduction : Lorsqu'aucune des étapes allant de 1 à


4 n'est valide, alors on valide l'étape 0.

Réseau 7 Traduction : Si le mode Auto n'est pas activé,


on Reset (dévalide) toutes les étapes.

Important : On commence par la dernière étape


car l'automate lit le grafcet de façon linéaire.
Ainsi, si on écrit deux fois la même sortie, c'est
celle qui se trouve dans le dernier réseau qui
prime. Ainsi, si on bascule en mode Manu, on
est sûr de bien annuler les étapes. 62
Programmation
On décrit la validation des sorties pour les étapes correspondantes

Traduction : Quand l'étape 1 est active, on valide


Réseau 1 le mouvement de sortie en automatique du vérin A

Réseau 2 Traduction : Quand l'étape 2 est active, on valide le


mouvement de sortie en automatique du vérin B

Traduction : Quand l'étape 3 est active, on valide le


Réseau 3 mouvement de rentrée en automatique du vérin B

Traduction : Quand l'étape 4 est active, on valide le


Réseau 4 mouvement de rentrée en automatique du vérin A

Traduction : Quand l'étape 1 ou l'étape 5 est active,


on valide le mouvement
Réseau 5

63
S7-PLCSIM
Mise en route

1. Ouvrez le gestionnaire de projets SIMATIC.


2. Cliquez sur ou sélectionnez la commande Outils >
Simulation de modules. Cela lance l'application S7-
PLCSIM et ouvre une fenêtre CPU (ayant l'adresse MPI
par défaut, c'est-à-dire 2).
3. Dans le gestionnaire de projets SIMATIC, cliquez sur
ou choisissez la commande Système cible > Charger pour
charger le dossier Blocs dans l'AP de simulation.
4. Dans l'application S7-PLCSIM, créez de nouvelles
fenêtres pour visualiser les informations provenant de l'AP
de simulation :
• Cliquez sur ou sélectionnez la commande Insertion >
Entrée. La fenêtre affiche EB0 (octet d'entrée 0).
64
S7-PLCSIM
Mise en route

• Cliquez sur ou sélectionnez la commande Insertion > Sortie


pour afficher une seconde fenêtre, AB0 (octet de sortie 0).

• Cliquez sur ou sélectionnez la commande Insertion >


Temporisation pour afficher trois fenêtres de temporisations.
Tapez 2, 3 et 4 (pour les temporisations T 2, T 3 et T 4) dans
les fenêtres respectives, en appuyan sur la touche Entrée
après chaque valeur.
5. Choisissez le menu CPU dans S7-PLCSIM et vérifiez que la
commande Mettre sous tension est activée (•).
6. Choisissez la commande Exécution > Mode d'exécution et
vérifiez que la commande Cycle continu est activée (•).
7. Mettez la CPU de simulation en marche en cliquant sur l'une
des cases à cocher RUN ou RUN-P. 65
EXEMPLES

66
Circuit Inversseur du sens de Rotation

67
Circuit Inversseur du sens de Rotation

67
Circuit Inversseur du sens de Rotation

68
Circuit Inversseur du sens de Rotation

68
Circuit Inversseur du sens de Rotation

69
Montage Etoile-Triangle automatique

70
Montage Etoile-Triangle automatique

71
Montage Etoile-Triangle automatique

72
Bande transporteuse à circuit séquentiel

73
Bande transporteuse à circuit séquentiel
Description fonctionnelle
Trois tapis roulants doivent pouvoir être enclenchés séparément et arrêtés tous
ensemble à l’aide de boutons-poussoirs. Pour qu’aucun des tapis roulants ne soit
comblé, ils doivent pouvoir être enclenchés uniquement dans l’ordre tapis 3, tapis
2, tapis 1 après activation du bouton-poussoir de validation S4. Les tapis roulants
enclenchés doivent pouvoir être arrêtés à tout instant au moyen du bouton-
poussoir S0 ; ce faisant, il convient de bloquer la validation. Les contacts Q1, Q2
et Q3 du relais de protection du moteur sont branchés en série. Si un moteur est
surchargé de telle sorte que le relais de protection du moteur réagit (simulation
moyennant le bouton-poussoir S5), le voyant lumineux H4 doit le signaler. L’état
d’enclenchement des tapis roulants devra être signalé par les voyants lumineux
H1, H2 et H3 correspondants.
En complément à la description fonctionnelle 1, il doit aussi être possible d’arrêter
les tapis roulants séparément avec les boutons-poussoirs S6, S7 et S8. Pour
qu’aucun tapis roulant ne soit comblé, un arrêt des tapis à l’aide des boutons-
poussoirs S6, S7 et S8 ne doit être possible que dans l’ordre tapis 3, tapis 2 et tapis
1. 74
Bande transporteuse à circuit séquentiel

75
Bande transporteuse à circuit séquentiel

76
Bande transporteuse à circuit séquentiel

77
Exemple 1
Bit clignotant a 1 Hz

78
79
80
81
82
83
84
85
86
Comment travailler avec STEP 7

87
Comment travailler avec STEP 7

88
89
90
91
92
93
94
95
96
97

Vous aimerez peut-être aussi