Вы находитесь на странице: 1из 67

I° Généralités et définitions relatives aux automates programmables industriels

Les Automates Programmables Industriels « API » sont apparus la première fois aux USA. Ils étaient
destinés à l'origine à automatiser les chaînes de montages automobiles. Le père fondateur des « API » est
Dick Morely en 1969 (qui est aussi fondateur de la société « Modicon » en 1968). Le succès de la société
« Modicon » donna naissance à une industrie mondiale qui s’est considérablement développée. C'est en
1971 qu'ils firent leur apparition en France. Les automates programmables sont de plus en plus employés
dans toutes les industries et présentent aujourd’hui l’intelligence des systèmes et procédés automatisés de
l’industrie, des infrastructures, du bâtiment, … Ils correspondent à la partie commande d’un système
automatisé (voir la figure suivante) :

Figure n° 1 : Schéma d’un système automatisé avec utilisation des Automates Programmables Industriels « API »

La terminologie relative aux « API » est différente en fonction des régions :


 PC : Programmable Controller au Royaume Uni ;
 PLC : Programmable Logic Controller au Etats Unis ;
 PBS : Programmable Binary System en Suède ;…

1° Définition d’un automate programmable industriel


D’après la norme NFC 63-850, un automate programmable industriel est défini comme suit : c’est un
appareil électronique qui comporte une mémoire programmable par un utilisateur automaticien (et non
informaticien) à l’aide d’un langage adapté, pour le stockage interne des instructions composant les
fonctions d’automatisme comme par exemple les fonctions relatives :
 à la logique combinatoire (fonctions binaires de base et secondaires, …) et séquentielle (les
temporisateurs, compteurs, décompteurs, …) ;
 au calcul arithmétique ;
 au réglage, à l’asservissement, à la régulation, … pour commander, mesurer et contrôler au moyen
d’entrées et de sorties (logiques, numériques ou analogiques) différentes sortes de machines ou de
processus, en environnement industriel » ; …

II° Etude et programmation des automates « Siemens »


1° Présentation succincte du groupe « Siemens »
Siemens est un groupe allemand d'équipements électroniques et électrotechniques. Ce groupe a été fondé
en 1847 par Werner Von Siemens et son siège est à Munich. Il est le premier employeur privé
d'Allemagne. Il fabrique et développe des automates programmables depuis plus de 30 ans. Elle assure le
service après vente dans environ 190 pays et parmi ses produits, nous pouvons citer à titre d’exemple
(voir le tableau n° 1) : le module logique LOGO, le S7-200, le S7-300, le S7-400, le C7, le CPU T Motion
Control, le CPU SIMATIC ET 200, le S7-1200, le S7-1500, … L’ENSMR dispose actuellement des
automates suivants : le S7-200, le S7-313C et le S7-1500. En se basant sur différentes documentations du
groupe Siemens, nous présenterons, dans ce qui suit, quelques automates Siemens.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 5
Module LOGO SIMATIC S7-200 SIMATIC S7-300 SIMATIC S7-400 CPU T Motion Control CPU SIMATIC ET 2000 SIMATIC S-1200 SIMATIC S-1500

Tableau n° 1 : Echantillon de quelques produits Siemens

2° Présentation succincte de l’automate « LOGO! »


L’automate « LOGO! » est un système logique destiné aux tâches simples
d’automatisme dans les domaines du tertiaire, du résidentiel et de
l’industrie. Il permet de remplacer les appareils traditionnels, en utilisant
des coffrets plus petits et en diminuant les frais de maintenance. Il est géré
par le logiciel « Logo Soft Comfort », qui est facile d’utilisation avec un
choix de fonctions intégrées. Les modules de base existent avec ou sans
écran pour 8 entrées et 4 sorties « TOR ». A titre d’exemple, la génération
« LOGO! 8 », avec ou sans écran », permet :
 des extensions jusqu’à 24 entrées « TOR », 20 sorties « TOR », 8 entrées Figure n° 2 : API « LOGO! » sans écran

analogiques et 8 sorties analogiques ;


 des options de communication complètes via Ethernet et un serveur web
intégré, comme l’implémentation des configurations avec les automates
SIMATIC S7 et HMI ;
 la configuration de petits réseaux Ethernet ;
 la communication par SMS ;
 la détermination de la position ;
 des communications Modbus TCP / IP intégrée ; … Figure n° 3 : API « LOGO » avec écran

Le tableau ci-dessous contient un échantillon de quelques versions d’automates « LOGO! » disponibles :

Symboles Noms Tension d’alimentation Entrées Sorties Caractéristiques


LOGO! 12/24 RC 12/24 V CC 8 TOR (1) 4 Relais (10 A)

LOGO! 24 24 V CC 8 TOR (1) 4 Transistors 24V/0,3A Pas d’horloge

LOGO! 24RC (3) 24 V CA/24 V CC 8 TOR 4 Relais (10 A)

LOGO! 230RC (2) 115...240 V CA/CC 8 TOR 4 Relais (10 A)

LOGO! 12/24RCo 12/24 V CC 8 TOR (1) 4 Relais (10 A) Pas d’écran & pas de clavier

LOGO! 24o 24 V CC 8 TOR (1) 4 Transistors 24V/0,3A Pas d’écran & pas de clavier &
pas d’horloge
LOGO! 24RCo (3) 24 V CA/24 V CC 8 TOR 4 Relais (10 A) Pas d’écran & pas de clavier

LOGO! 230RCo (2) 115...240 V CA/CC 8 TOR 4 Relais (10 A) Pas d’écran & pas de clavier
(1) : Vous pouvez également utiliser au choix : 4 entrées analogiques (0 ... 10V) et 4 entrées « TOR » rapides.
(2) : 230 V CA, versions : deux groupes, chacun étant composé de 4 entrées. Au sein d’un groupe, chaque entrée doit être raccordée à la même
phase. Les groupes peuvent être interconnectés avec une phase différente.
(3) : Les entrées « TOR » peuvent être soit à commutation P, soit à commutation N.

Tableau n° 2 : Echantillon de quelques automates « LOGO! »

Le tableau suivant contient un échantillon de quelques modules d’extension disponibles et qui peuvent
être raccordés aux automates « LOGO! » :

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 6
Symbole Nom Alimentation Entrées Sorties
LOGO! DM 8 12/24R 12/24 V CC 4 TOR 4 Relais (5A)
LOGO! DM 8 24 24 V CC 4 TOR 4 transistors 24V/0,3A
LOGO! DM 8 24R (3) 24 V CA/CC 4 TOR 4 Relais (5A)
LOGO! DM 8 230R 115...240 V CA/CC 4 TOR (1) 4 Relais (5A)
LOGO! DM 16 24 24 V CC 8 TOR 8 transistors 24V/0,3A
LOGO! DM 16 24R 24 V CC 8 TOR 8 Relais (5A)
LOGO! DM 16 230R 115...240 V CA/CC 8 TOR (4) 8 Relais (5A)
LOGO! AM 2 12/24 V CC 2 Analogiques (0 ... 10V) ou (0 ... 20mA) (2) Aucune
LOGO! AM 2 PT100 12/24 V CC 2 Pt100 (-50 ˚C à +200 ˚C) Aucune
LOGO! AM 2 AQ 24 V CC Aucune 2 Analogiques
(0 ... 10 V CC)
(0/4...20mA) (5)
(1) : Des phases différentes ne sont pas autorisées dans les entrées.
(2) : Raccordement facultatif de : 0 ... 10 V ou 0 ... 20 mA.
(3) : Les entrées « TOR » peuvent être soit à commutation P, soit à commutation N.
(4) : Deux groupes composés chacun de 4 entrées. Au sein d’un groupe, chaque entrée doit être raccordée à la même phase. Les groupes peuvent être
interconnectés avec une phase différente.
(5) : Raccordement facultatif de : 0 ... 10 V ou 0/4 … 20 mA.

Tableau n° 3 : Echantillon de quelques modules d’extension pour les automates « LOGO! »

Le tableau ci-dessous contient deux modules de communication, qui peuvent être raccordés aux
automates « LOGO! » :
Symbole Nom Alimentation Entrées Sorties
LOGO! CM AS- interface 30 V CC Les 4 entrées suivantes derrière Les 4 sorties suivantes derrière les
les entrées physiques de sorties physiques de « LOGO! »
« LOGO! » (In ... In+3) (Qn ... Qn+3)
LOGO! CM EIB/KNX 24 V CA/CC Max. 16 entrées TOR virtuelles (I) ; max. 12 sorties TOR virtuelles (Q) ;
Max. 8 entrées analogiques Max. 2 sorties analogiques
virtuelles (AI) virtuelles (AQ)

Tableau n° 4 : Deux modules de communication pour les automates « LOGO! »

Le tableau suivant contient un module afficheur de textes qui peut être connecté aux automates
« LOGO! » :

Symbole Nom Tension d’alimentation Ecran

LOGO! TD 24 V CA/CC ou 12 V CC LCD (128 x 64), affichage à 4 lignes

Tableau n° 5 : Le module « LOGO! TD », disponible pour les automates « LOGO! »

La figure suivante correspond à un exemple de configuration « LOGO! » avec trois modules d’extension.

Figure n° 4 : Exemple de configuration de l’API « LOGO » avec trois modules d’extension

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 7
2.1 Raccordement de la tension d’alimentation à l’automate « LOGO! »
Les automates LOGO! 230 conviennent aux tensions de réseau de valeur nominale 115V et 240V. Quant
aux automates LOGO! 24 et LOGO! 12, ils conviennent aux tensions d’alimentation 24V CC, 24V CA ou
12V CC.

Figure n° 5 : API « LOGO! » avec alimentation en courant continue Figure n° 6 : API « LOGO! » avec alimentation en courant alternatif

NB : on peut envisager une protection par fusible (recommandé) pour : 12V → 0,8 A et 24V → 2,0A

2.2 Exemples d’utilisation de l’automate programmable « LOGO! »


Les entrées de l’automate « LOGO! » servent à lui raccorder des capteurs/détecteurs et les sorties vont
véhiculer les signaux permettant de commander des pré-actionneurs et différents dispositifs. Dans ce qui
suit, nous allons donner trois exemples de mise en application.

2.2.1 Représentation d’un schéma simple des connexions


Dans un premier temps, nous allons étudier le schéma électrique de la figure n° 7 pour réaliser son
câblage et sa commande par un automate programmable « LOGO! » :
Analyse du schéma de la figure n° 7 :
Les commutateurs S1, S2 et S3 sont des entrées, elles permettent
d’activer et désactiver la sortie E1.
Le relais K1 répond si la condition suivante :
(S1 OU S2) ET S3 est remplie Figure n° 7 : Exemple de schéma électrique

La réalisation du circuit avec l’automate programmable « LOGO! » est schématisé par la figure n° 8.

Figure n° 8 : Schéma de câblage et programme automate « LOGO! », correspondant au schéma électrique de la figure n° 7

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 8
2.2.2 Commande de l’éclairage d’une cage d’escalier ou de couloir
Notons, dans un premier temps, que les exigences relatives à un éclairage de la cage d’escalier ou de
couloir sont généralement imposées, nous pouvons citer ce qui suit :
 La lumière doit être allumée pendant qu’une personne utilise l’escalier ou traverse le couloir ;
 Lorsque personne ne se trouve dans l’escalier ou dans le couloir, la lumière doit être éteinte afin
d’économiser de l’énergie.
Solution conventionnelle : il existe deux possibilités de
commuter l’éclairage : la 1ère avec un relais à impulsions et la
2ième avec un système automatique. Le câblage requis pour les
deux systèmes précités est identique.
 En cas d’utilisation d’un relais à impulsions, le dispositif
d’éclairage présente le comportement suivant : l’action sur un
interrupteur quelconque, implique l’activation de l’éclairage
et l’action de nouveau d’un interrupteur quelconque,
implique la désactivation de l’éclairage. Figure n° 9 : Exemple n° 1 de commande de l’éclairage
NB : on oublie souvent d’éteindre la lumière !
 En cas d’utilisation d’un système automatique, le dispositif d’éclairage présente le comportement
suivant : l’action sur un interrupteur quelconque, implique l’activation de l’éclairage et après
écoulement d’un temps prédéfini, l’éclairage s’éteint de nouveau automatiquement.

NB : la lumière ne peut pas être allumée pour une durée plus longue (par exemple, pour le ménage).
Le commutateur prévu pour l’éclairage permanent se trouve la plupart du temps au niveau du
système automatique d’éclairage de l’escalier, lequel est difficile d’accès, voire inaccessible !

Solution avec utilisation de l’automate « LOGO! » : les deux


systèmes ci-dessus peuvent être remplacés par un automate
« LOGO! » comme le schématise la figure à côté. On peut mettre
en œuvre les deux fonctions (désactivation en fonction du temps et
relais à impulsion) dans un même appareil. Par ailleurs, on peut
mettre en œuvre d’autres fonctions sans qu’il soit nécessaire de
modifier le câblage. Voici quelques exemples :
 Relais à impulsion avec l’automate « LOGO! » ;
 Système automatique d’éclairage d’escalier avec « LOGO! » ;
 Interrupteur confort avec « LOGO! » ; … Figure n° 10 : Exemple de commande de l’éclairage

Le câblage du dispositif d’éclairage avec l’automate « LOGO! » n’est pas différent d’un éclairage
conventionnel prévu dans les cages d’escalier ou couloirs. Seul le système d’éclairage automatique de
l’escalier ou le relais à impulsion sont remplacés. Les fonctions supplémentaires sont directement saisies
dans l’automate « LOGO! ».

2.2.3 Commande d’une porte automatique


Notons, dans un premier lieu, que ce type de commande automatique de portes peut se trouver à l’entrée
des supermarchés, bâtiments publics, banques, hôpitaux, etc.
Les exigences relatives à ce type de commande peuvent être résumées comme suit :
 La porte doit s’ouvrir automatiquement à l’approche d’une personne ;
 La porte doit rester ouverte tant que des personnes se trouvent dans le passage ;
 Lorsque plus personne ne se trouve dans le passage, la porte doit se fermer automatiquement après un
court délai d’attente.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 9
Figure n° 11 : Vue de dessus et de face de la porte à commander par l’automate « LOGO! »

NB : La porte est le plus souvent entraînée par un moteur et un accouplement à friction. Ce système évite
que des personnes ne soient bloquées et blessées par la porte. La commande complète est raccordée
au secteur par un interrupteur général.
Parmi les composants utilisés, nous pouvons citer ce qui suit :
 K1 Contacteur principal → Ouvrir ;
 K2 Contacteur principal → Fermer ;
 S1 (Contact à ouverture) → Commutateur de fin de course Fermé ;
 S2 (Contact à ouverture) → Commutateur de fin de course Ouvert ;
 B1 (Contact à fermeture) → Détecteur de mouvement infrarouge extérieur ;
 B2 (Contact à fermeture) → Détecteur de mouvement infrarouge intérieur.
Solution à base de la logique câblée : Le schéma à
côté correspond à la commande de l’ouverture et
fermeture de la porte :
 Si l’un des détecteurs de mouvement B1 ou B2
détecte la présence d’une personne, l’ouverture de
la porte s’active via le contacteur K3 ;
 Lorsque la zone de détection des deux détecteurs de
mouvement est vide (pendant un temps minimum),
le contacteur K4 valide l’opération de fermeture de
la porte.
Figure n° 12 : Schéma de commande de la porte

Commande de la porte avec l’automate « LOGO! » : l’utilisation


d’un automate de type « LOGO! » peut considérablement simplifier
le circuit de commande d’une porte. Il suffit de connecter les
détecteurs de mouvement, les commutateurs de fin de course et les
contacteurs principaux à l’automate « LOGO! », voir la figure à côté.
La figure n° 14 donne le schéma correspondant au diagramme du
circuit de la solution à base de la logique câblée.
On peut simplifier le circuit de la figure n° 14 en utilisant les
fonctions de l’automate « LOGO! ». Cette simplification est
représentée dans la figure n° 15.
Figure n° 13 : Schéma de câblage de l’API « LOGO »

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 10
Figure n° 14 : Schéma de la solution à base de la logique câblée Figure n° 15 : Circuit programmée sur l’API « LOGO »

3° Présentation succincte de l’automate programmable « S7-200 »


Le micro automate SIMATIC « S7-200 » est compact. Ses
configurations du SIMATIC « S7-200 » sont de faible encombrement,
avec une variante d’unités centrales (voir le tableau ci-dessous) et
différents modules d’extension. En outre, des extensions spécifiques
permettent la mise en réseau sur PROFIBUS, AS-i, Ethernet/Internet,
modem et la commande de positionnement des moteurs.
Les ports de communication assurent la mise en réseau d’éléments
extérieurs pour la conduite et la supervision. Figure n° 16 : API « S7-200 »

Les interfaces standard assurent la connexion des consoles de programmation, des Interfaces Homme
Machine « IHM » ainsi que des produits extérieurs : modem, imprimante, lecteur code barre, PC, ... Le
port USB permet le pilotage de 31 variateurs de vitesse. Ce type d’automate est géré par le logiciel de
programmation Micro/WIN contenant les outils et langages nécessaires pour toute la gamme « S7-200 ».

Caractéristique CPU 221 CPU 222 CPU 224 CPU 226 CPU 226XM

Mémoire de programme 2048 mots 2048 mots 4096 mots 4096 mots 8192 mots

Mémoire de données 1024 mots 1024 mots 2560 mots 2560 mots 5120 mots

E/S intégrées locales 6E/4S 8E/6S 14E/10S 24 E/16 S 24 E/16 S

Modules d’extension 0 2 7 7 7

Compteurs rapides 4 à 30 kHz 4 à 30 kHz 6 à 30 kHz 6 à 30 kHz 6 à 30 kHz


2 à 20 kHz 2 à 20 kHz 2 à 20 kHz 4 à 20 kHz 4 à 20 kHz

Sorties d’impulsions (CC) 2 à 20 kHz 2 à 20 kHz 2 à 20 kHz 2 à 20 kHz 2 à 20 kHz

Potentiomètres analogiques 1 1 2 2 2

Horloge temps réel Cartouche Cartouche Intégrée Intégrée Intégrée

Interfaces de communication 1 RS-485 1 RS-485 1 RS-485 2 RS-485 2 RS-485


Virgule flottante Oui
Taille de la mémoire image
d’E/S TOR 256 (128 entrées, 128 sorties)

Vitesse d’exécution booléenne 0,37 microseconde / opération

Tableau n° 6 : Echantillon de quelques modèles de CPU « S7-200 » avec des caractéristiques correspondant

3.1 Schéma de brochage et exemple de câblage de l’automate « S7-200 »


La figure n° 17 donne le schéma de brochage d’un automate ‘compacte » de type « S7-200 », avec les
éléments suivants :

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 11
 Sur la partie supérieure, nous avons de gauche à droite : des bornes à vis pour les sorties de
commande et des bornes à vis pour l’alimentation ;
 Sur la partie de gauche, nous avons le connecteur correspondant à l’interface de programmation ;
 Sur la partie de droite, nous avons respectivement le sélecteur de mode de fonctionnement de
l’automate (STOP, TERM et RUN), le connecteur correspondant au mode d’extension (il n’existe pas
pour la CPU 221) et un potentiomètre de réglage ;
 Sur la partie inférieure, nous avons de gauche à droite : des bornes à vis pour les bornes d’entrées et
aussi des bornes à vis pour l’alimentation (24 VCC/180 mA) qui sera destinée aux détecteurs/capteurs.
La figure n° 18 donne un exemple de câblage de l’automate « S7-200 avec la CPU 221 » permettant de :
 commander un moteur à courant continue (24 VCC) et une bobine → (partie supérieure) ;
 lire des informations « TOR » arrivant sur les différentes entrées → (partie inférieure).

Figure n° 17 : Schéma de brochage de l’automate « S7-200 » Figure n° 18 : Exemple de câblage de l’automate « S7-200 »

3.2 Exemple d’utilisation de l’automate programmable « S7-200 »


L’exemple d’application ci-dessous correspond à la commande d’une cuve de mélange permettant de
créer différents coloris de peinture (figure n° 19).

Figure n° 19 : Schéma de la cuve de mélange

Le fonctionnement du système peut être décrit comme suit : Deux tuyaux aboutissent au sommet de la

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 12
cuve, apportant deux ingrédients différents. Un tuyau au bas de la cuve transporte le mélange de peinture
achevé. L’exemple de programme commande le remplissage, surveille le niveau de la cuve et commande
le cycle de mélange et de chauffage, comme décrit dans les étapes suivantes :
 Etape 1 : remplir la cuve avec l’ingrédient 1 ;
 Etape 2 : remplir la cuve avec l’ingrédient 2 ;
 Etape 3 : surveiller le niveau de la cuve (fermeture du commutateur de niveau supérieur) ;
 Etape 4 : maintenir l’état des pompes si le commutateur de démarrage s’ouvre ;
 Etape 5 : commencer le cycle de mélange et de chauffage ;
 Etape 6 : démarrer le moteur mélangeur et activer la soupape de vapeur ;
 Etape 7 : vidanger la cuve de mélange ;
 Etape 8 : compter chaque cycle.

3.2.1 Exemple de programme écrit en langage « LIST : liste d’instructions »


Sur l’automate programmable « S7-200 », on peut introduire le programme « LIST » suivant à l’aide du
logiciel « MicroWin » :

Figure n° 20 : Exemple de programme écrit en langage « LIST : liste d’instructions »

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 13
3.2.2 Exemple de programme écrit en langage « CONT : à contacts »

De la même façon qu’en § II 3.2.1, on peut introduire le programme « CONT » suivant sur l’automate
programmable « S7-200 » à l’aide du logiciel « MicroWin » :

Figure n° 21 : Exemple de programme écrit en langage « CONT : à contacts »

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 14
4° Présentation de l’automate programmable « S7-300 »
L’automate S7-300 est conçu pour des solutions dédiées aux systèmes
manufacturiers comme l’automobile, l’emballage, l’agro-alimentaire,
la plasturgie, …. Il est géré par le logiciel de programmation
SIMATIC Manager contenant les outils et langages nécessaires pour
toute la gamme « S7-300 ». Cette classe d’automates offre de
nombreux avantages, citons entre autres :
 une construction compacte et modulaire ; Figure n° 22 : API « S7-300 »

 une large gamme de CPU adaptée à toutes les demandes de performances pouvant obtenir des temps
de cycle machines courts :
- 24 CPU standards : avec interface Ethernet/PROFInet intégrée ;
- CPUS de sécurité ;
- CPU compactes avec fonctions technologiques et périphérie intégrées (exemple le comptage, la
régulation ou le positionnement) ;
- CPU technologiques pour la gestion des fonctions motion control (fonctions qui se classent en deux
catégories : les fonctions pour les mouvements mono-axe et celles pour les mouvements multi-axes).
 modules d’E/S « TOR » et analogiques pour la quasi-totalité des signaux avec possibilité de traitement
des interruptions et du diagnostic ;
 modules pour emploi dans des zones à atmosphère explosive ;
 modules de fonction technologique : régulation et came électronique et des modules de communication
point à point ou par bus ASi, Profibus ou Industrial Ethernet.

4.1 Schéma synoptique d’un automate de type « S7-300 » avec les modules d’entrées/sorties
Dans ce qui suit, nous allons présenter, dans un premier temps, les caractéristiques des principaux
modules composant un automate modulaire de la famille Siemens, citons entre autres (figures n° 23) : le
module alimentation « PS… », l’unité centrale « CPU », les modules d’entrées/sorties, le module
communication « COM », … Tous ces modules sont montés sur un profilé métallique que nous
appelons le Rack. Ce dernier sert comme support aux différents modules de l’automate programmable
(figures n° 24).

Figure n° 23 : Modules & accessoires composant un automate siemens Figure n° 24 : Schéma du Rack

1 Module d'alimentation 6 Carte mémoire


2 Pile de sauvegarde 7 Interface multipoint (MPI)
3 Connexion au 24V cc 8 Connecteur frontal 8 Connecteur frontal
4 Commutateur de mode (à clé) 9 Volet en face avant
5 LED de signalisation d'état et de défauts

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 15
4.2 Le module d’alimentation « PS 307 »
Le module d’alimentation fournit à l’automate (CPU et différents modules
correspondant) l’énergie nécessaire à son fonctionnement : à partir de
l’alimentation prise du secteur, il délivre des sources de tension dont
l’automate a besoin : 24V, 12V ou 5V en continu. Ces modules portent le
symbole : PS 307 (Power Supply). On les choisit en fonction de la puissance
totale à fournir aux cartes, exemple :
 PS 307 : Alimentation, AC 100/240V, DC, 24V, 2.5A
 PS 307 : Alimentation, DC 24V, 6..12A, pour le Speedbus
Figure n° 25 : Module « PS 307 »
 PS 307 : Alimentation, AC 100/240V, DC, 24V, 5A
 PS 307 : Alimentation, AC 100/240V, DC, 24V, 10A, …

4.3 L’unité centrale « CPU »


L’unité centrale « CPU » représente le cœur des automates programmables
industriels. Elle est composée d’un processeur et d’une mémoire
programmable par l’utilisateur. La CPU est connectée aux différentes cartes
(d’entrées/sorties, de communication, …) et effectue le traitement des
informations en fonction du programme. Parmi ces traitements, nous
pouvons citer ce qui suit :
 le traitement des opérations logiques ET, OU, Négation, ...
 le traitement des opérations de calcul, de temporisation, de comptage, ...
La mémoire centrale est l’élément fonctionnel qui peut recevoir, conserver et
restituer des informations. Elle est découpée en zones où l’on trouve : Figure n° 26 :
L’unité centrale « CPU »
 la zone mémoire programme (programme à exécuter) ;
 la zone mémoire des données (état des entrées/sorties, valeurs des compteurs, temporisations) ;
 une zone où sont stockés des résultats de calcul utilisés ultérieurement dans le programme ;
 une zone pour les variables internes.
Nous présentons dans ce qui suit, une liste non exhaustive des CPU de la famille Siemens « S7-3xx » :

CPU 312SC CPU 313SC CPU 314ST/DPM CPU 315SN/NET CPU 317SE/DPM
Technologie SPEED7 Technologie SPEED7 Technologie SPEED7 Technologie SPEED7 Technologie SPEED7

- DI 16xDC 24V, - DI 16xDC 24V, - DI 8xDC 24V, - 1 MB, extensible - 2 MB extensible jusque
- Compteurs 2x32 bit, Compteurs 3x32 - Compteurs 4x32 bit, jusque 2MB 8M Byte mémoire data,
- DO 8xDC 24V 0.5A, - bit (AB), - DIO 8xDC 24V 0.5A, mémoire data, - SPEEDbus,
- PtP RS485, - DO 16xDC 24V 0.5A, - AI 4x12Bit, - Profibus DP - Profibus DP Master,
- ASCII, - Profibus-DP Master, - AO 2x12Bit, Master, - Ethernet-Interface pour
- Modbus-Master, 12Mbit/s tot 125, - 1xPt100, - Ethernet-Interface PG/OP-communication,
- USS-Master, - Slaves/PtP, - Profibus DP pour PG/OP- - MPI-Interface
- Ethernet interface - RS485, Ethernet-Interface - Ethernet interfaxe pour communication,
pour communication pour communication communication PG/OP, - Ethernet-CP 343,
PG/OP PG/OP - MPI-Interface - MPI-Interface

Tableau n° 7 : Liste non exhaustive des CPU de la famille Siemens

4.4 Les modules des signaux « SM : Signal Modul »


Les modules des signaux (SM : Signal Modul) sont des cartes d’entrées, de sorties ou cartes mixtes (avec

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 16
à la fois des entrées et des sorties).

4.4.1 Les modules d’entrées digitales ou Tout Ou Rien « SM321 »


Les modules d’entrées digitales (Digital Input « DI ») ou Tout Ou Rien « TOR » permettent de recueillir
l'information des différents détecteurs (voir la figure ci-dessus) qui sont raccordés à l’automate et de la
matérialiser par des bits images de l'état de chaque détecteur. Ces cartes assurent aussi l’adaptation,
l’isolement, le filtrage et la mise en forme des signaux électriques. Une diode électroluminescente située
sur la carte donne l’état de chaque entrée. Parmi les modules digitaux d’entrées pour les automates
Siemens, nous pouvons citer :
 le SM321 - avec 16 entrées (TOR à 24 Vcc) ;
 le SM321 avec 32 entrées (TOR à 24 Vcc) ;
 le SM321 avec 16 entrées (TOR à 48-125 Vcc) ;
 le SM321 avec 8 entrées (TOR à 120-220 Vca) ;
Etc.
La figure à côté correspond au schéma synoptique
du module SM 321 (DI 16 x 120/230 Vca) avec les
propriétés suivantes :
 16 entrées, séparées électriquement par groupes
de 4 ;
 tension nominale d'entrée : 120/230 Vca ;
 ce type de module convient, par exemple, pour
des commutateurs et des détecteurs de proximité
CA 2 ou 3 fils (tension alternative). Figure n° 27 : Schéma de branchement du module SM 321 (DI 16)

4.4.2 Les modules de sorties digitales ou Tout Ou Rien « SM322 »


Les modules de sorties digitales (Digital Output « DO ») ou « TOR » permettent de raccorder à
l’automate les différents pré-actionneurs. Cette classe de sorties offrent deux types de technologies : les
sorties à relais électromagnétiques (bobine plus contact) et les sorties statiques (à base de transistors ou de
triacs). Elles permettent de raccorder à l’automate les différents pré-actionneurs tels que les vannes,
contacteurs, voyants, …
Les tensions de sorties usuelles sont de 24, 48, 110
ou 220 V continues ou alternatives. Les courants
vont de quelques milliampères à quelques ampères.
L’état de chaque sortie est visualisé par une diode
électroluminescente. La figure à côté correspond
au schéma synoptique du module SM 322 (DO 16
x 24 Vcc/0.5 A) avec les propriétés suivantes :
 16 sorties (avec la séparation galvanique par
groupes de 8) ;
 le courant de sortie 0,5 A ;
 la tension d'alimentation nominale 24 Vcc ;
 ces modules conviennent pour les
électrovannes, contacteurs, LED, …
Figure n° 28 : Schéma de branchement du module SM 322 (DO 16)

NB : Le câblage peut s’effectuer directement sur les cartes E/S ou par l’intermédiaire de borniers
déportés
Parmi les modules digitaux de sortie, nous pouvons citer :

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 17
 le SM322 avec 8 sorties digitales à : 24V, 2A
 le SM322 avec 16 sorties digitales à : 24V, 1A
 le SM322 avec 16 sorties digitales à : 16xDC 24V, 2A
 le SM322 avec 32 sorties digitales à : 24V, 1A
 le SM322 avec 16 sorties Relais à : 24V/AC 230V, 5A ; …

4.4.3 Les modules mixtes « SM323 » (avec des entrées/sorties digitales)


Parmi les modules mixtes digitaux, nous pouvons citer : le SM323 (avec 8 entrées digitales à 24V et 8
sorties digitales à 24V, 1A) et le SM322 (avec 16 sorties Relais à : 24V/AC 230V, 5A) ; …

4.4.4 Les modules d’entrées analogiques « SM331 »


Les cartes d’entrées analogiques (Analogic Input « AI »)
permettent de gérer des grandeurs analogiques. Les entrées
analogiques sont converties en signaux numériques à l’aide des
convertisseurs « A/N ». Elles sont scrutées les unes à la suite des
autres par un multiplexeur (voir l’exemple donné par la figure à
côté). Notons au passage que parmi les types d’entrées
analogiques, nous pouvons citer :
 les entrées avec un niveau haut (qui acceptent en tension
0..10V et en intensité 0..20mA ou 4..20mA) ;
 les entrées pour des thermocouples (avec un signal d’entrée
0..20mV, 0..50mV, 0..100mV) ;
 les entrées pour les sonde Pt 100 (avec un signal d’entrée
0..100mV, 0..250mV, 0..400mV) ; ...
Parmi les modules d’entrées analogiques qui existent sur le
marché, nous pouvons citer :
 le SM331 - Analog Input AI 8x13Bit, U/I/R/Thermo,
 le SM331 - Analog Input AI 2x12Bit, U/I/R/Thermo, Figure n° 29 : Schéma du module SM331 (AI8 x 16 bits)
 le SM331 - Analog Input AI 8x12Bit, U/I/R/Thermo, …

4.4.5 Les modules de sorties analogiques « SM332 »


Les cartes de sortie analogiques (Analogic Output « AO »)
permettent de gérer des grandeurs analogiques en faisant
varier un code numérique au sein du module (voir l’exemple
à côté). Parmi les grands types de cartes de sorties qui
existent sur le marché, nous pouvons citer ce qui suit :
 les cartes avec une résolution de 8 bits (en tension 0..10V
ou en intensité, 0..20mA ou 4..20mA) ;
 les cartes avec une résolution de 12 bits (en tension
0/10V, 0/5V, ±5V, ±10V ou en intensité 0..20mA ou
4..20mA) ; …
Ces cartes assurent la conversion N/A et l’intensité ou la
tension correspondant est proportionnelle à la valeur
numérique. Avec les résolutions 8 bits, il y a 256 valeurs
numériques possibles et 4096 avec 12 bits, ... Figure n° 30 : Schéma du module SM 332 (AO 8 x 12 bits)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 18
Parmi les modules de sorties analogiques qui existent sur le marché, nous pouvons citer ce qui suit :
 le SM332 (analogic output AO 2x12Bit, U/I),
 le SM332 (analogic output AO 4x12Bit, U/I), …

4.5 Les modules de fonction « FM : Function Modul »


Les modules (FM) sont des cartes qui possèdent des fonctions particulières telles que :
 la commande d’axe ;
 le comptage et le comptage rapide. Ce dernier permet d'acquérir des informations de fréquences
élevées incompatibles avec le temps de traitement de l'automate, exemple : signal issu d'un codeur de
position ;
 les cames électroniques ;
 la régulation ;
 le pesage ;
 la commande de moteur pas à pas ; …

4.6 Les modules de commande d’axe « FM 351 »


Les modules de positionnement
« FM351 » permettent d'assurer le
positionnement avec précision
d'éléments mécaniques selon un ou
plusieurs axes. Ils comprennent 2
canaux indépendants avec lesquels
ils commandent des axes rotatifs ou
linéaires (voir la figure à côté).
Chaque canal du module supporte le
raccordement d’un capteur
incrémental ou absolu (SSI). Ils
fonctionnent de manière autonome.
Un programme utilisateur dans le S7
pilote le module de positionnement. Figure n° 31 : Les principaux paramètres d’un positionnement d’axe

Sur l’exemple donné par le schéma ci-dessous, le moteur est piloté par l’étage de puissance et entraîne
l’axe linéaire.
D’autre part, l’étage de puissance (un montage à
contacteurs par exemple) est piloté via les sorties
« TOR » du module de commandes d’axes
« FM351 ». En cas de d’actionnement du
dispositif de sécurité (Arrêt d’urgence ou fin de
course matériel), l’étage de puissance coupe le
moteur.
Les modules de commandes d’axes « FM 351 »
sont utilisés dans de nombreux domaines, nous
pouvons citer entre autres :
 les machines d’emballage,
 les machines à papier et d’imprimerie,
Figure n° 32 : Les principaux composants d’un positionnement d’axe
 l’industrie de matériaux de construction,
 les machines outils, …

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 19
4.7 Les modules de comptage « FM 350-2 »
Les modules de fonction « FM 350-2 » permettent de réaliser des comptages à 8 voies avec des fonctions
de dosage pouvant être utilisées dans un automate programmable « S7-300 ». Ils peuvent fonctionner à
l’intérieur de la plage de comptage maximale suivante :

De - 2 147 483 684 (soit : - 231) à + 2 147 483 684 (soit : + 231)

La fréquence d’entrée maximale des signaux de comptage s’élève, en fonction du signale de capteur,
jusqu’à 10 kHz par voie de comptage. Et les modules « FM 350-2 » peuvent être utilisés pour les tâches
suivantes :
 les fonctions compteur et décompteurs,
 la mesure de fréquence,
 la mesure de la vitesse de rotation,
 la mesure de la période,
 le dosage, ...
NB :
 Le démarrage et l’arrêt du comptage et du décomptage se font à l’aide du programme (validation
logicielle) ou de signaux externes (validation matérielle).
 Les signaux de comptage, de validation et de direction peuvent être directement connectés au module.
 On peut stocker dans les modules « FM 350-2 » un seuil de comparaison pour chaque voie de
comptage (quatre seuils de comparaison en mode « Dosage »). Lorsqu’un compteur atteint ce seuil de
comparaison, on peut mettre la sortie à 1 ou à 0 afin de déclencher directement des opérations de
commande dans le processus et/ou déclencher une alarme de processus.
Les modules de comptage « FM 350-2 » sont utilisés dans de nombreux domaines, nous pouvons citer
entre autres :
 les installations d’emballage,
 les installations de tri,
 les installations de dosage,
 les machines à papier et d’imprimerie,
 les régulations de vitesse et surveillance de turbines à gaz, …
La figure suivante correspond à un exemple de mise en application : il s’agit d’un système qui permet le
remplissage d’un carton avec un certain nombre de pièces provenant d’un conteneur.
La voie de comptage « 0 » compte les pièces et
commande la soupape de remplissage. Quant à
la voie de comptage « 1 », elle commande le
moteur assurant le transport des cartons et
compte le nombre de cartons.
Lorsque le carton se trouve au bon endroit, la
soupape s’ouvre et le carton est rempli de pièces.
La soupape se ferme lorsque le nombre de
pièces indiqué est atteint et le transport du carton
est déclenché. Les pièces tombant ensuite sont
comptabilisées jusqu’à l’arrivé d’un nouveau
carton. Il est possible d’indiquer un nouveau
nombre de pièces pendant le transport des 1)-Bande ; 2) Moteur ; 3)-Validation ; 4)-Barrières photoélectriques ; 5)-Valve
cartons. On peut surveiller les pièces mises dans
les cartons ainsi que le nombre de cartons. Figure n° 33 : Exemple d’un système permettant le remplissage
d’un carton avec un certain nombre de pièce

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 20
4.8 Les modules pour la mesure de la température « FM 355 »
La mesure de la température peut se faire à l’aide des modules « FM 355 » dont une liste est donnée ci-
dessous :
 FM 355-3SD00 Temperature Control Module « TCM », 4 voies, U/I ;
 FM 355-3SD00 TCM 4 voies, Thermo-element-/Pt100 ;
 FM 355-3SD10 TCM 4 voies, Thermo-element-/Pt100 ;
 FM 355-3SF00 TCM 8 voies, U/I ;
 FM 355-3SF10 TCM 8 voies, Thermo-element-/Pt100 ;
 FM 355-4SD00 TCM 4 voies, output 8xDIO 24V (DO 0.5 A), U/I ;
 FM 355-4SD10 TCM 4 voies, output 8xDIO 24V, Thermo-element-/Pt100 ;
 FM 355-4SF00 TCM 8 voies, output 24xDIO 24V (DO 0.5 A), U/I ;
 FM 355-4SF10 TCM 8 voies, output 24xDIO 24V, Thermo-element-/Pt100 ;…

4.9 Les processeurs ou modules de communication


Les processeurs de communication (CP : Communication Processors) permettent d’établir une
communication entre automates programmables et aussi entre ceux-ci et un PC de supervision. Parmi les
modules qui sont très utilisés dans la pratique, nous pouvons citer : le CP Ethernet basé sur Industriel
Ethernet, le CP Profibus basé sur Industriel Profibus, ...
Définition de Industrial Ethernet : Dans le cadre du système de communication SIMATIC NET, Industrial
Ethernet est un réseau défini par la norme internationale IEEE 802.3, ouvert et indépendant de tout
constructeur.
Le support physique correspondant est soit un réseau électrique constitué d’un câble coaxial blindé ou
d’une paire torsadée, soit un réseau optique réalisé à l’aide de fibres optiques (FO).
Industrial Ethernet permet des communications sans faille dans le secteur industriel : il permet avec
PROFINET / PROFIBUS et AS - Interface (AS - i) de réaliser une mise en réseau sans faille des niveaux
conduite, cellule et terrain (voir les figures suivantes).

Définition du réseau Profibus : Le réseau Profibus est conforme à la norme européenne Profibus [EN
50170 Vo. 2e] de bus de process et de terrain. C’est un bus ouvert et indépendant de tout constructeur. En
outre, il est dédié aux niveaux cellule et terrain. Le support physique correspondant est soit un réseau
électrique constitué d’une paire torsadée, soit un réseau optique réalisé à l’aide de fibres optiques (FO).
Ce type de réseaux permet avec Ethernet et AS - Interface (AS - i) de réaliser une mise en réseau sans
faille des niveaux conduite, cellule et terrain (voir les figures suivantes).

Figure n° 34 : Les réseaux : Industriel Ethernet, Profibus et AS-Interface au sein du concept SIMATIC Net

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 21
4.10 Les processeurs de communication « CP Ethernet » sur automates SIMATIC S-7

RT : Real Time) ; IRT : Isochronous Real Time, pour le trafic de données IO cyclique

Figure n° 35 : Les différents modes de communication supportés par CP Ethernet

Les différents modes de communication supportés par CP Ethernet sont schématisés sur la figure ci-
dessus :
→ La communication PG/OP sert au chargement de programmes et de données de configuration, à
l’exécution de fonctions de test et de diagnostic ainsi qu’au contrôle - commande des process ;
→ La communication S7 constitue une interface simple et efficace entre stations SIMATIC S7 et entre
stations et PG/PC via des blocs fonctionnels de communication (CFB) ;
→ La communication compatible S5 avec interface SEND/RECEIVE assure la communication
programmée via une liaison configurée entre automates SIMATIC S7 et automates SIMATIC S7 ou
SIMATIC S5 et entre ces automates et des PC/PG ou des stations d’autres constructeurs. Selon le
type de CP, les services de communication ci-après sont disponibles au niveau de l’interface
SEND/RECEIVE :
 Transport ISO optimisé pour la mise en œuvre performante sur un niveau de fabrication fermé ;
 TCP/IP pour la communication inter-réseau avec liaisons ISO - on - TCP (RFC 1006), liaisons
TCP et service de datagrammes UDP (y compris broadcast / multicast) ;
 Envoi de courrier électronique, ça permet à l’automate d’envoyer des messages en fonction des
événements du process.
→ La communication compatible S5 avec services FETCH/WRITE (serveur) : Les services
FETCH/WRITE (serveur) permettent à des automates SIMATIC S5, des stations PC SIMATIC ou
d’un autre constructeur d’accéder directement aux zones de mémoire système de la CPU d’un
automate SIMATIC S7. Selon le type de CP, les services de communication ci - après sont disponibles
pour les accès FETCH/WRITE :
 Transport ISO optimisé pour la mise en œuvre performante sur un niveau de fabrication fermé ;
 TCP/IP pour la communication inter - réseau avec liaisons ISO - on - TCP (RFC 1006), liaisons TCP.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 22
→ La communication PROFINET IO : PROFINET est une norme de l’organisation des utilisateurs
PROFIBUS (PNO). Les modes correspondants sont les suivants :
 PROFINET IO Controller : les CP S7 qui prennent en charge le mode PROFINET IO Controller,
permettent d’accéder directement aux IO Devices via Industrial Ethernet ;
 PROFINET IO Device : les CP S7 qui prennent en charge le mode PROFINET IO Device permettent
d’utiliser des stations S7 comme des PROFINET IO Devices ‘intelligent’ sur Industrial Ethernet.
NB : La communication PROFINET IO fait appel à des liaisons TCP pour le paramétrage et des
liaisons RT (Real Time) ou IRT (Isochronous Real Time) pour le trafic de données IO cyclique.
→ La communication PROFINET CBA : sous PROFINET CBA, on utilise des connexions
acycliques et cycliques ;

→ La communication Contrôle de process HTML : sur ce type de CP, les fonctions et pages HTML
mises à disposition permettent d’interroger les données systèmes importants au moyen d’un
navigateur web ;
→ La gestion de fichiers et l’accès aux fichiers via FTP : sur ce type de CP, on dispose de fonctions
additionnelles pour services FTP.

On peut utiliser les stations S7


aussi bien comme clients FTP
que comme serveurs FTP :
 Station S7 comme client FTP,
ça nous permet de transmettre
les blocs de données en
écriture et en lecture sur un
serveur de fichiers ;
 Station S7 comme serveur
FTP : une autre station, un
PC par exemple, transmet des
blocs de données en écriture
ou en lecture à la station S7
ou des fichiers dans le système
de fichiers du CP.

Figure n° 36 : Les différentes possibilités de communication avec « CP Profibus »

Le tableau n° 8 présente les possibilités de communication entre différents types de matériel résultant des
modes de communication précités. Et selon le type de modules, les CP S7 supportent les possibilités de
communication suivantes :

1)-Profinet IO-Device ; 2)-Profinet IO-Controller ; 3)-Profinet IO-Device ou Profinet IO-Controller ; 4)-Seulement serveur

Tableau n° 8 : Les modules de communication « CP 343 »

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 23
La figure suivante correspondant au schéma du processeur de communication « CP 343-1 Lean » qui est
utilisé sans problèmes sur les automates « S7-300 » et « C7-300 ». Ce type de module de communication
présente les caractéristiques suivantes :
 C’est un module compact (simple ou double largeur), facile à monter sur le profilé support du S7 ;
 Il est prévu pour équiper l’unité de base ou d’extension ;
 Les éléments de commande et d’affichage sont exclusivement en face avant ;
 Il fonctionne sans refroidissement par ventilateur ;
 La liaison directe des cartes au bus interne s’obtient par le connecteur joint ;
 Pour la forme large → connecteur femelle RJ - 45 à 8 points pour la connexion du CP à Ethernet Twisted
Pair ;
 Pour la forme étroite → 2 connecteurs femelles RJ - 45 à 8 points servant de switch à 2 ports pour la connexion
du CP Ethernet Twisted Pair ;
 La configuration du CP est réalisable via MPI ou réseau local/Industrial Ethernet. On doit disposer de Step 7
dans la version validée pour le type d’appareil en question.

Figure n° 37 : Schéma du module de communication « CP 343-1 Lean »

4.11 Les processeurs de communication « CP Profibus » sur automates SIMATIC S-7


Les « CP Profibus » sont des modules de
communication pour les automates SIMATIC S7.
Ils offrent toute une série de services de
communication pour l’exécution de diverses
tâches. Notons au passage que Profibus est un
réseau dédié aux niveaux cellule et terrain. Le
support physique de Profibus est soit un réseau
électrique constitué d’une paire torsadée, soit un
réseau optique réalisé à l’aide de fibres optiques
(FO). Le réseau PROFIBUS est conforme à la
norme européenne de bus de process et de terrain
PROFIBUS EN 50170 Vo. 2e.
Les possibilités de communication des automates
SIMATIC S7 équipés de « CP Profibus » sont Figure n° 38 : Les différents modes de communication
schématisées sur la figure à côté. supportés par CP Profibus

Le CP Profibus admet les modes de communication suivants :


 la communication PG/OP (idem que plus haut) ;
 la communication S7 (idem que plus haut) ;

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 24
 la communication compatible S5 avec interface SEND/RECEIVE (idem que plus haut) ;
 la communication standard (Interface FMS) : l’interface FMS assure la transmission programmée,
indépendante du matériel, de données structurées via une liaison configurée entre automates SIMATIC
S7 et des matériels supportant le protocole FMS ;

 la communication DP Profibus : la périphérie décentralisée (abrégée DP ci - après) permet de mettre en


œuvre un grand nombre de modules d’entrée/sortie de manière décentralisée et donc à proximité du
processus.

Selon le type de modules, les CP S7 supportent les possibilités de communication suivantes :

1)-Mode DP : au choix soit maître DP soit esclave DP

Tableau n° 9 : Les modules de communication « CP Profibus »

Le tableau ci-après présente les possibilités de communication entre les types de matériel résultant des
modes de communication précités :

Tableau n° 10 : Les différentes possibilités de communication avec « CP Profibus »

La figure ci-après illustre un exemple de communication via le réseau et les « CP Profibus ». La


communication S7 via Profibus permet de réaliser une communication programmée à l’aide de SFB/FB
de communication et de liaisons S7 configurées. Le volume de données utiles par contrat est de 64 Ko
max.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 25
Figure n° 39 : Exemple de stations qui communiquent au moyen de liaisons S7 via le réseau et « les CP Profibus »

Le « CP Profibus » est utilisé comme “relais de communication” qui transmet les fonctions de
communication via PROFIBUS. La communication S7 se déroule, du point de vue de l’utilisateur, de
manière identique via Pfofibus et Industrial Ethernet. On distingue, selon le type de matériel et la
configuration de l’installation, 2 cas :
 Fonction de client et de serveur bilatérale : les liaisons S7 peuvent être utilisées entre les stations
ci - après avec toutes les fonctionnalités de la communication S7 :
- entre stations « S7 – 300 » et « S7 – 400 » (et respectivement entre elle) ;
- entre stations S7 et stations PC/PG avec « CP Profibus ».

La figure suivante donne deux schémas correspondant respectivement aux processeurs de communication
« CP 342-5 » / « CP 343-5 » et au processeur « CP 342-5 F0 ». Ce type de modules de communication
présente les caractéristiques suivantes :
 c’est un odule compact (simple ou double largeur), facile à monter sur le profilé support du S7 ;
 les éléments de commande et d’affichage sont exclusivement en face avant ;
 la connexion directe des modules se trouve au fond de panier via connecteur de bus joint ; connecteur
Sub - D femelle à 9 points ou connecteurs femelles duplex pour la connexion du CP à Profibus ;
 le CP peut être configuré via « MPI » ou réseau local/PROFIBUS.

Figure n° 40 : Schéma des modules de communication « CP 342, CP 343-5 et CP 342-5 FO »

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 26
4.12 L’utilisation des différents processeurs de communication dans un projet
Dans la pratique, nous
pouvons rentrer des projets
avec différents processeurs de
communication.
Dans l’exemple ci-dessous,
nous avons deux types de
réseaux et de modules de
communication : technologie
Ethernet et technologie
Profibus. Figure n° 41 : Utilisation des réseaux et modules de communication appartenant à des familles différentes

4.13 Exemple de configuration pour un automate Siemens « S7 300 »


Sur l’exemple ci-dessous, nous avons la configuration suivante :
 (1) : est un bloc alimentation, symbolisé par « PS307 à 2 A » ;
 (2) : est un module processeur ou unité centrale 2, symbolisé
par « CPU 314 » ;
 (3) : est un module simulateur 16 entrées digitales, symbolisé
par « SM 374 » ;
 (4) : est un module 16 entrées digitales, symbolisé par
« SM321 » ;
 (5) : correspond à deux modules 16 sorties digitales,
Figure n° 42 : Exemple de configuration symbolisé par « SM 322 ».
pour un automate Siemens « S7-300 »

5° Les étapes de configuration & programmation des automates « S7-300 »


5.1 Choix de la configuration matérielle
Projet : Stations SIMATIC 300 :
Ce répertoire contient le matériel Ici sont enregistrées les
(Ex : une station SIMATIC 300) configurations matérielles
et les sous-réseaux (Ex : MPI et correspondantes (Matériel/SC*1)
PROFIBUS). et les données de la CPU.
Sources/SO*1 :
Ici sont listées les sources
(Exemple : source SCL), qui
peuvent être transformées lors
du déroulement du programme.
Blocs/AP-off*1 :
Ici sont listés les blocs du
programme (OB, FB, FC,
SFB, SFC, DB, …).

Mnémoniques/SY*1 :
Programme S7 : Ici est enregistrée la liste des
CPU: Ici sont gérés les programmes mnémoniques pour l’adressage
Ici sont représentés le utilisateur (Blocs/AP-off*1), mnémonique.
programme S7 ainsi que les tables de mnémoniques
les connexions en réseau (Mnémoniques/SY*1) et les
(Connexions/CO*1). sources (Sources/SO*1).
*1 désigne STEP 7 version 2.x

Figure n° 43 : Structure d’un projet automate Siemens S7-300

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 27
Par configuration, on entend dans ce qui suit la disposition de profilés support ou châssis (Racks), de
modules vus plus haut, d'appareils de la périphérie décentralisée, etc. Les profilés support ou châssis sont
représentés par une table de configuration, dans laquelle on peut mettre un nombre défini de modules,
tout comme dans les profilés support ou châssis ‘réels’. STEP 7 affecte automatiquement une adresse à
chaque module dans la table de configuration. A la mise en route de l'automate programmable, la CPU
compare la configuration prévue et créée avec STEP7 à la configuration sur site de l'installation. Aussi,
les erreurs éventuelles sont immédiatement détectées et signalées.
Nous supposons dans cette partie, que le logiciel automate est installé sur votre ordinateur :
MicroWin pour les API « S7-200 » ou SIMATIC Manager pour les API « S7-300 » et API « S7-400 ».
Dans ce qui suit, nous allons travailler sur un automate de la famille « S7-300 ».

5.2 Comment créer un nouveau projet sur un automate « S7-300 » ?


Dans STEP 7, chaque projet est créé selon une structure prédéfinie (voir ce qui suit) et les programmes
sont enregistrés dans des répertoires :
Lancer le logiciel en cliquant deux fois sur
l’item SIMATIC Manager si vous l’avez
sur le bureau :

Figure n° 44 : Lancement de SIMATIC Manager à partir du bureau

ou localiser l’item Programs du menu


Démarrer puis l’item Simatic du menu
Programs et enfin cliquez sur l’item
SIMATIC Manager du menu Simatic. La
figure à côté montre la structure de ces
menus (qui peut varier légèrement, selon la
configuration de l’ordinateur).

Figure n° 45 : Lancement de SIMATIC Manager à partir du menu Démarrer

Le logiciel « SIMATIC Manager » étant maintenant en marche, cliquez sur l’item Fichier pour ouvrir le
menu déroulant.

Figure n° 46 : Création d’un nouveau projet sur SIMATIC Manager

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 28
Ensuite, cliquez sur l’item Assistant de STEP7 pour lancer l’assistant aidant à la création d’un nouveau
projet. La figure suivante montre l’environnement du « SIMATIC Manager ». Notez au bas de la fenêtre
la ligne d’état qui vous indique la fonction de l’item choisi dans le menu déroulant. L’assistant étant
lancé, cette première fenêtre s’ouvre à l’écran. C’est la fenêtre d’introduction de l’assistant.

Figure n° 47 : Lancement de l’assistant sur SIMATIC Manager

Ensuite, cliquez sur Suivant. Cette seconde fenêtre prend la place de la fenêtre précédente. C’est la
première des trois fenêtres de configuration du projet. Vous devez choisir le modèle du CPU de
l’automate à programmer. Choisissons à titre d’exemple la CPU de la référence suivante : CPU314
(figure suivante). Veuillez donc la sélectionner parmi la liste du menu déroulant qui vous est présenté.

Figure n° 48 : Configuration de la CPU sur SIMATIC Manager

Le numéro de référence est simplement le numéro de catalogue de cette pièce (à utiliser si vous voulez
passer une commande chez Siemens). Le champ « nom de la CPU » peut être modifié pour identifier la
fonction ou l’emplacement de cette CPU dans l’usine (par exemple l’automate ayant cette CPU est en
charge de la « Station de pompage »), …
Enfin, l’adresse de communication « MPI » doit être fixée à 2 (donnée par le constructeur). Une fois ces
opérations faites, cliquez sur Suivant. La troisième fenêtre ci-dessous apparaît alors. Elle correspond à la
deuxième fenêtre de configuration du projet.
Il faut choisir les blocs d’organisationnels à utiliser. Pour ce premier projet, nous n’utiliserons que le bloc
« OB1 ». Ce bloc contient le programme qui sera continuellement exécuté par l’automate. L’automate
programmable exécute la séquence suivante de façon répétitive, tant qu’il est en mode d’exécution :
 lecture de l’état des entrées (pour savoir l’état logique des capteurs, des boutons, …) ;

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 29
 exécution complète du bloc « OB1 »;
 écriture de l’état des sorties obtenues suite à l’exécution du bloc « OB1 » (pour allumer des voyants,
démarrer des moteurs, déplacer des vérins, …).

Figure n° 49 : Choix de la CPU et du langage de programmation sur SIMATIC Manager

Il faut aussi choisir le langage de programmation. L’automate nous permet de le programmer selon les
trois langages suivants :
 LIST : en liste d’état (langage ayant l’apparence de l’assembleur);
 CONT : en langage à contacts (ou Ladder ou diagrammes échelle) ;
 LOG : en logigrammes ;
 en Grafcet aussi.
Choisissez, par exemple, le langage de programmation à contacts (CONT), puis cliquez sur Suivant.
Cette dernière fenêtre apparaît alors : il vous suffit alors de choisir un nom pour le projet, puis de cliquer
sur Créer.

Figure n° 50 : Choix d’un nom pour votre projet à introduire sur SIMATIC Manager

Il est important de noter que le nom du projet devra commencer par exemple par un code permanent de
votre choix, suivit du nom que vous désirez donner au projet.

Figure n° 51 : Choix d’un nom pour votre projet à introduire sur SIMATIC Manager (suite)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 30
Par exemple, saisir le code suivant : « GAUG », puis le nom du projet : « premier programme ». L’écran
du « Simatic Manager » devrait alors avoir l’apparence ci-dessus. Dans le « Simatic Manager », une
fenêtre s’ouvre. Le titre de cette fenêtre est le nom du projet, soit « GAUG_premier_programme ». On
indique en plus du nom du projet les informations ci-dessous.

5.3 Comment configurer le matériel sur un automate « S7-300 » ?

La structure du projet est montrée dans la partie gauche de la


fenêtre identifiée « GAUG_premier_programme ».
Le répertoire de base est identifié par le même nom que le
projet, soit « GAUG_premier_programme ». Ce répertoire
contient tous les sous-répertoires et fichiers configurant toutes
les composantes d’un projet, soit : automates, réseaux,
Figure n° 52 : Structuration d’un projet programmes.
En cliquant sur le répertoire « Premier
programme » vous voyez apparaître les
items « Station SIMATIC 300 » et
« MPI(1) ». Le premier item mène à la
définition du matériel utilisé dans ce
projet, le second sur la configuration du Figure n° 53 : Structuration d’un projet, (suite)
réseau utilisé dans ce projet.

En cliquant sur le répertoire « Station SIMATIC 300 » (ou sur l’item de droite « Station SIMATIC
300 »), vous voyez apparaître dans l’écran de droite les items « Matériel » et « CPU314(1) ».
Le premier item mène à la
définition du matériel utilisé
dans le projet, en particulier
des automates. Le second item
mène à la programmation de
l’unique automate du projet
(puisque l’on en a qu’un par Figure n° 54 : Structuration d’un projet, (suite)
table) nommé « CPU314(1) ».
En double cliquant sur « Matériel », vous lancez le logiciel de configuration de matériel et la fenêtre
suivante apparaît :

Figure n° 55 : Configuration matérielle de l’automate

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 31
Dans la fenêtre de configuration du matériel, on voit apparaître plusieurs régions (avec la localisation des
modules dans les rails de montage). En position 2, nous retrouvons la CPU de l’automate identifié par le
nom « CPU314(1) ». Dans la partie de droite de cette fenêtre, on retrouve une autre fenêtre qui contient la
liste du matériel de l’automate. Cette liste comprend les éléments suivants :
 PROFIBUS-DP : équipements pour le réseau;
 PROFIBUS-PA ;
 SIMATIC 300 : modules des automates de la série 300 ;
 PROFINET IO ;
 SIMATIC 400 : modules des automates de la série 400 ;
 SIMATIC PC Based Control 300/400 ;
 STATION PC SIMATIC.
Les règles de configuration pour les automates S7-300 sont (voir aussi les figures suivantes) :
 Emplacement 1 : uniquement alimentation (par exemple PS 307 2A, ….) ou vide ;
 Emplacement 2 : uniquement unité centrale (par exemple CPU314(1)) ;
 Emplacement 3 : réservé uniquement au module de couplage (Ex. MI 360) ou vide
 Emplacements 4 à 11 : modules de signaux ou modules fonctionnels, processeurs de
communication ou vide.
Configuration du module alimentation
L’automate que nous avons sous la main étant équipé d’une CPU de type 314, il fait partie de la série 300.
En cliquant sur le + qui précède l’item SIMATIC 300 sur la fenêtre de droite, on voit apparaître une série
de répertoires qui désignent toute une série de modules.
Ajoutons le module d’alimentation à la configuration, ce module se retrouve dans le répertoire PS-300. Il
est situé à gauche du module CPU. Pour cet exemple, le module d’alimentation à choisir pour est de 2A.
Il est identifié par le code suivant : PS 307 2A. Pour l’ajouter à la configuration, il suffit de cliquer sur cet
item et à le glisser vers la ligne « 1 » du rail de droite.

Figure n° 56 : Choix du module alimentation et sa configuration

Faîtes une sauvegarde en cliquant sur l’item Enregistrer du menu Fichier et fermer la fenêtre.
Configuration des modules de signaux « MS… »
En cliquant sur le + qui précède l’item SM 300 sur la fenêtre de droite, on voit apparaître une série de
répertoires qui désignent toute une série de modules de signaux (figure n° 57) :
 AI-300 (pour Analogic Input),
 AO-300 (pour Analogic Aoutput),
 AI/AO-300 (pour Analogic Input et Analogic Aoutput),
 DI-300 (pour Digital Input),

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 32
 DO-300 (pour Digital Aoutput), …

→ Pour sélectionner les modules d’entrées digitales, on clique sur DI-300 sur la fenêtre de droite et on
sélectionne le module qui correspond à notre application. Prenons par exemple, le SM 321
DI32xDC24V. Il sera placé dans l’un des emplacements de la zone colorée en verte en cliquant deux
fois sur la référence ou en le glissant comme pour le module alimentation (voir la figure suivante).

Figure n° 57 : Choix des modules d’entrées digitales et leur configuration

 De même, pour sélectionner les modules de sorties digitales, on clique sur DO-300 sur la fenêtre
de droite et on sélectionne le module qui correspond à notre application. Prenons par exemple, le
SM 322 DO16xDC24V/0.5A. Il sera placé dans l’un des emplacements de la zone colorée en verte
en cliquant deux fois sur la référence ou en le glissant comme indiqué plus haut (voir la figure
suivante).

Figure n° 58 : Choix des modules de sorties digitales et leur configuration

 Pour sélectionner les modules d’entrées analogiques, on clique sur AI-300 sur la fenêtre de droite
et on sélectionne le module qui correspond à notre application. Prenons par exemple, le SM 331
AI2x12bits, il s’agit d’un module permettant l’acquisition de 2 entrées analogiques (avec un
convertisseur analogique/numérique de précision de 12 bits). Ensuite, on le place dans l’un des
emplacements de la zone colorée en vert en cliquant deux fois sur la référence ou en le glissant
comme indiqué plus haut (voir la figure suivante).

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 33
Figure n° 59 : Choix des modules d’entrées analogiques et leur configuration

 Pour sélectionner les modules de sorties analogiques, on clique, de la même façon, sur AI-300 sur
la fenêtre de droite et on sélectionne le module qui correspond à notre application. Prenons par
exemple, le SM 332 A02x12bits, il s’agit d’un module permettant l’envoi de 2 sorties analogiques
avec un convertisseur numérique/analogique de précision de 12 bits). Ensuite, on le place dans
l’un des emplacements de la zone colorée en vert en cliquant deux fois sur la référence ou en le
glissant comme indiqué plus haut (voir la figure suivante).

Figure n° 60 : Choix des modules de sorties analogiques et leur configuration

Sauvegarder cette configuration en cliquant l’item Enregistrer du menu déroulant Fichier et fermer la
fenêtre.

5.4 Paramétrage des modules (HW Config)


Par paramétrage, on entend dans ce qui suit :
 Le réglage des paramètres des modules paramétrables pour la configuration centralisée et pour un
réseau, exemple : une CPU est un module paramétrable. La surveillance du temps de cycle est un
paramètre que vous pouvez définir ;

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 34
 La définition des paramètres de bus, des maîtres et d'esclaves pour un réseau maître (PROFIBUS) ou
d'autres définitions pour l'échange de données entre des composants.
Ces paramètres sont chargés dans la CPU qui, lors de son démarrage, les transmet aux modules
correspondants. Il est très facile de remplacer des modules, car les paramètres définis avec STEP-7 sont
automatiquement chargés dans le nouveau module à la mise en route.

5.4.1 Paramétrage de la CPU (HW Config)


En double cliquant sur le module CPU de cette liste, la fenêtre de configuration de la CPU s’ouvre (figure
suivante). La page de l’onglet « Général » contient des informations sur le module CPU. Une foule
d’autres onglets donnent accès à des fonctions avancées.

Figure n° 61 : Configuration de propriétés de la CPU

En cliquant sur l’onglet « Cycle/Mémento de cadence », la fenêtre suivante apparaît :

Figure n° 62 : Configuration de propriétés de la CPU (suite)

Le temps de surveillance de cycle est l’intervalle de temps maximal entre deux initialisations du « chien
de garde ». Le chien de garde est un dispositif qui surveille continuellement le processeur du module
CPU. Si le processeur fonctionne correctement, il initialise le chien de garde à intervalle régulier. Si le
processeur est défaillant, il n’initialisera plus le chien de garde. Dès que la dernière initialisation remonte

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 35
à un délai supérieur au temps de surveillance, le chien de garde bloque le fonctionnement du processeur.
Cette sécurité assure qu’un processeur défaillant ne risque pas de causer de graves incidents.
NB : Ne pas activer de mémento de cadence !

Fermez après la fenêtre ci-dessus et l’écran redevient comme celui montré ci-dessus.

5.4.2 Paramétrage de l’interface de programmation (PC Adapter)


Une liaison « MPI » signifie Multi Point Interface (interface multipoint). C’est une interface de
communication utilisée pour la programmation, le contrôle-commande avec HMI et l'échange de données
entre des CPU SIMATIC S7 jusqu'à 32 nœuds maximum. Elle est nécessaire pour programmer un
automate « S7-300 » depuis le « PC » ou la console de programmation « PG ». Chaque CPU de l’API
« S7-300 » est équipée d'une telle interface intégrée.

Figure n° 63 : L’utilisation de l’interface de programmation « PC Adapter »

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 (Ex : carte MPI-ISA) ;
- processeurs de communication PCI pour le PC (Ex : CP5611) ;
- processeurs de communication PCMCIA pour le portable (Ex : CP5511) ;
- adaptateur pour la communication via l'interface série du PC ou du portable (Ex : PC Adapter).

Les « PC adapter » servent à connecter un PC à une interface


MPI/DP d'un système S7/C7 de Siemens. Une 1ère génération
se connecte sur les ports série RS232 du PC. Une seconde
mouture utilise à présent une interface USB.
Figure n° 64 : Interface « PC Adapter »

Le paramétrage de l’interface « PC Adapter » pour le PC se fait comme suit :

1. Appelez le Paramétrage de l'interface PG/PC :


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

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 36
Figure n° 65 : Paramétrage de l’interface de programmation « PC Adapter »

2. Cliquez sur le bouton‚ Sélectionner pour installer l’interface MPI proposée :  Sélectionner

Cliquez sur
‘Sélectionner’

Figure n° 66 : Paramétrage de l’interface de programmation « PC Adapter », suite

3. Sélectionnez la carte voulue, par exemple « PC Adapter » et choisissez Installer

Cliquez sur
‘PC Adapter’ Cliquez sur
‘Installer’

Figure n° 67 : Paramétrage de l’interface de programmation « PC Adapter », suite

4. Validez avec Oui. Dans le cas d’un nouvel enregistrement d’interface de STEP 7 en tant qu’interface
standard, veuillez utiliser l’accès en ligne. Ensuite, fermez la boîte de dialogue pour le choix de
l’interface ( Oui  Fermer).

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 37
Cliquez
sur ‘Oui’

Cliquez sur
‘Fermer’

Figure n° 68 : Paramétrage de l’interface de programmation « PC Adapter », suite

5. Choisissez les 'Propriétés' du 'PC Adapter (MPI)’ (  PC Adapter (MPI)  Propriétés)

Cliquez sur
‘Propriétés’
Cliquez sur ‘Adapter
PC (MPI)'

Figure n° 69 : Paramétrage de l’interface de programmation « PC Adapter », suite

6. Sélectionnez des valeurs pour l’Adresse MPI, le Délai d’attente, la Vitesse de transmission et
l’Adresse la plus élevée.

Adresse MPI du
PC/PG
Délai d’attente

Taux de Baud
Adresse la plus
élevée

Figure n° 70 : Paramétrage de l’interface de programmation « PC Adapter », suite

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 38
NB : La vitesse de transmission doit être également réglée sur le « PC Adapter » ! 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.
Indications : Il est recommandé de laisser les valeurs par défaut !

7. Validez les paramètres :  OK  OK.

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


Manager en double-cliquant sur son icône :  SIMATIC Manager.
9. 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 ».

10. Cliquez ensuite sur le bouton ' – Partenaires accessibles. Si tous les paramètres sont corrects,
l’image suivante s’affiche avec le répertoire des partenaires MPI accessibles. Vous pouvez
également lire ici l’adresse « MPI » de la « CPU » connectée, qui est à l’adresse « 2 » par défaut. Si
plusieurs automates sont connectés ou si des « CP/FM » sont branchés sur l’automate, alors il
apparaîtra ici plusieurs adresses « MPI » : 

Figure n° 71 : Paramétrage de l’interface de programmation « PC Adapter », suite

5.5 Liste d’instructions


5.5.1 Types de données simples
Chaque type de données simple a une longueur définie (voir le tableau ci-après).
Type et description Taille en bits Options pour le format :
BOOL (bit) 1 Texte booléen
BYTE (octet) 8 Nombre hexadécimal
WORD (mot) 16 Nombres en binaire pur, nombres hexadécimaux, le code BCD et les
nombres décimaux non signés
DWORD (double mot) 32 Purs, nombres hexadécimaux et les nombres décimaux non signés
INT (entier) 16 Nombre décimal signé
DINT (nombre entier de 32 bits) 32 Nombre décimal signé
REAL (nombre à virgule flottante) 32 IEEE nombre à virgule flottante
S5TIME (durée SIMATIC) 16 Durée S7 en pas de 10 ms (valeur par défaut)
TIME (durée CEI) 32 Durée CEI en incréments de 1 ms, entier signé
DATE (date CEI) 16 Date CEI en incréments de 1 jour
TIME_OF_DAY (heure) 32 Heure en pas de 1 ms
CHAR (caractère) 8 Caractères ASCII

Tableau n ° 11 : Types de données simples

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 39
Exemple : Format du type de données INT (entiers de 16 bits)
Un nombre entier comporte un signe précisant s'il s'agit d'un entier positif ou négatif. L'espace occupé par
un nombre entier (16 bits) dans la mémoire est d'un mot. La figure suivante représente la plage d'un
nombre entier (16 bits) et le nombre entier +44 sous forme de nombre en binaire pur.

Format : Entier (16 bits)


Plage : -32 768 à +32 767

Figure n° 72 : Format du type de données INT (entiers de 16 bits)

5.5.2 Opérations LIST classées d'après les codes Anglais et Allemand


Code Anglais Code Allemand Catalogue des éléments de programme Description

) ) Combinaison sur bits Fermer la parenthèse d'une expression


*D *D Fonction sur nombres entiers Multiplier accumulateur 1 par accumulateur 2 (entiers de 32 bits)
*I *I Fonction sur nombres entiers Multiplier accumulateur 1 par accumulateur 2 (entiers de 16 bits)
*R *R Fonction sur nombres à virgule flottante Multiplier accumulateur 1 par accumulateur 2 (réels 32 bits)
/D /D Fonction sur nombres entiers Diviser accumulateur 2 par accumulateur 1 (entiers 32 bits)
/I /I Fonction sur nombres entiers Diviser accumulateur 2 par accumulateur 1 (entiers 16 bits)
/R /R Fonction sur nombres à virgule flottante Diviser accumulateur 2 par accumulateur 1 (réels 32 bits)
?D ?D Comparaison Comparer entiers de 32 bits, <>, >, <, >, <
?I ?I Comparaison Comparer entiers de 16 bits, <>, >, <, >, <
?R ?R Comparaison Comparer réels de 32 bits, <>, >, <, >, <
+ + Fonction sur nombres entiers Additionner constante entière (16, 32 bits)
+AR1 +AR1 Accumulateurs Additionner accumulateur 1 au registre d'adresse 1
+AR2 +AR2 Accumulateurs Additionner accumulateur 1 au registre d'adresse 2
+D +D Fonction sur nombres entiers Additionner accumulateurs 1 et 2 (entiers de 32 bits)
+I +I Fonction sur nombres entiers Additionner accumulateurs 1 et 2 (entiers de 16 bits)
+R +R Fonction sur nombres à virgule flottante Additionner accumulateurs 1 et 2 (réels VF IEEE, 32 bits)
A U Combinaison sur bits ET
A( U( Combinaison sur bits ET d'une expression
ABS ABS Fonction sur nombres à virgule flottante Valeur absolue d'un nombre à virgule flottante (32 bits)
ACOS ACOS Fonction sur nombres à virgule flottante Arc cosinus d'un nombre à virgule flottante (32 bits)
AD UD Combinaison sur mots ET double mot
AN UN Combinaison sur bits ET NON
AN( UN( Combinaison sur bits ET NON d'une expression
ASIN ASIN Fonction sur nombres à virgule flottante Arc sinus d'un nombre à virgule flottante (32 bits)
ATAN ATAN Fonction sur nombres à virgule flottante Arc tangente d'un nombre à virgule flottante (32 bits)
AW UW Combinaison sur mots ET mot (16 bits)
BE BE Gestion d'exécution de programme Fin de bloc
BEC BEB Gestion d'exécution de programme Fin de bloc conditionnelle
BEU BEA Gestion d'exécution de programme Fin de bloc inconditionnelle
BLD BLD Accumulateurs Opération de composition d'image (opération nulle)
BTD BTD Conversions Convertir DCB en entier de 32 bits
BTI BTI Conversions Convertir DCB en entier de 16 bits
CAD TAD Conversions Modifier l'ordre dans l'accumulateur 1 (32 bits)
CALL CALL Gestion d'exécution de programme Appel de bloc
CALL CALL Gestion d'exécution de programme Appel de multi-instance
CALL CALL Gestion d'exécution de programme Appel de bloc dans une bibliothèque
CAR TAR Chargement/Transfert Permuter registre d'adresse 1 avec registre d'adresse 2
CAW TAW Chargement/Transfert Modifier l'ordre dans l'accumulateur 1 (16 bits)
CC CC Gestion d'exécution de programme Appel de bloc conditionnel
CD ZR Compteurs Décrémenter
CDB TDB Blocs de données Permuter DB global et DB d'instance
CLR CLR Combinaison sur bits Mettre RLG à 0
COS COS Fonction sur nombres à virgule flottante Cosinus d'angles comme nombres à virgule flottante (32 bits)
CU ZV Compteurs Incrémenter
–D –D Fonction sur nombres entiers Soustraire accumulateur 1 de accumulateur 2 (entiers 32 bits)
DEC DEC Accumulateurs Décrémenter accumulateur 1-L-L
DTB DTB Conversions Convertir entier de 32 bits en DCB
DTR DTR Conversions Convertir entier de 32 bits en réel (VF IEEE 32 bits)
ENT ENT Chargement/Transfert Entrer dans pile accumulateur
EXP EXP Fonction sur nombres à virgule flottante Valeur exponentielle d'un nombre à virgule flottante (32 bits)
FN FN Combinaison sur bits Front descendant
FP FP Combinaison sur bits Front montant
FR FR Compteurs Valider compteur (validé, FR Z 0 à Z 255)
FR FR Temporisations Valider temporisation
–I –I Fonction sur nombres entiers Soustraire accumulateur 1 de accumulateur 2 (entiers 16 bits)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 40
INC INC Accumulateurs Incrémenter accumulateur 1-L-L
INVD INVD Conversions Complément à 1 d'entier de 32 bits
INVI INVI Conversions Complément à 1 d'entier de 16 bits
ITB ITB Conversions Convertir entier de 16 bits en DCB
ITD ITD Conversions Convertir entier de 16 bits en entier de 32 bits
JBI SPBI Sauts Saut si RB est 1
JC SPB Sauts Saut si RLG est 1
JCB SPBB Sauts Saut si RLG est 1 avec RB
JCN SPBN Sauts Saut si RLG est 0
JL SPL Sauts Saut vers liste
JM SPM Sauts Saut si moins
JMZ SPMZ Sauts Saut si inférieur ou égal à 0
JN SPN Sauts Saut si différent de 0
JNB SPBNB Sauts Saut si RLG est 0 avec RB
JNBI SPBIN Sauts Saut si RB est 0
JO SPO Sauts Saut si DEB est 1
JOS SPS Sauts Saut si DM est 1
JP SPP Sauts Saut si plus
JPZ SPPZ Sauts Saut si supérieur ou égal à 0
JU SPA Sauts Saut inconditionnel
JUO SPU Sauts Saut si illicite
JZ SPZ Sauts Saut si égal à 0
L L Accumulateurs Charger
L STW L STW Chargement/Transfert Charger mot d'état dans l'accumulateur 1
L L Temporisations Charger valeur de temps en cours comme nombre entier dans
l'accumulateur 1 (la valeur de temps en cours peut être un
nombre compris dans la plage de 0 à 255, exemple : L T 32)
L L Compteurs Charger valeur de comptage en cours comme entier dans
l'accumulateur 1 (la valeur de comptage en cours peut être un
nombre compris dans la plage de 0 à 255, exemple : L Z 15)
L DBLG L DBLG Blocs de données Charger longueur de DB global dans l'accumulateur 1
L DBNO L DBNO Blocs de données Charger numéro de DB global dans l'accumulateur 1
L DILG L DILG Blocs de données Charger longueur de DB d'instance dans l'accumulateur 1
L DINO L DINO Blocs de données Charger numéro de DB d'instance dans l'accumulateur 1
LAR1 LAR1 Chargement/Transfert Charger contenu de l'accumulateur 1 dans registre d'adresse 1
LAR1 LAR1 Chargement/Transfert Charger pointeur de 32 bits dans registre d'adresse 1
LAR1 LAR1 Chargement/Transfert Charger contenu du registre d'adr. 2 dans registre d'adr. 1
LAR2 LAR2 Chargement/Transfert Charger contenu de l'accumulateur 1 dans registre d'adresse 2
LAR2 LAR2 Chargement/Transfert Charger pointeur de 32 bits dans registre d'adresse 2
LC LC Compteurs Charger valeur de comptage en cours comme nombre DCB
dans l'accumulateur 1 (la valeur de comptage en cours peut
être un nombre compris dans la plage de 0 à 255, par exemple
: LC Z 15)
LC LC Temporisations Charger valeur de temps en cours comme nombre DCB dans
l'accumulateur 1 (la valeur de temps en cours peut être un
nombre compris dans la plage de 0 à 255, exemple : LC T 32)
LEAVE LEAVE Accumulateurs Quitter pile accumulateur
LN LN Fonction sur nombres à virgule flottante Logarithme naturel d'un nombre à virgule flottante (32 bits)
LOOP LOOP Sauts Boucle de programme
MCR( MCR( Gestion d'exécution de programme Sauvegarder RLG dans pile MCR, début de zone MCR
)MCR )MCR Gestion d'exécution de programme Fin de zone MCR
MCRA MCRA Gestion d'exécution de programme Activer la zone MCR
MCRD MCRD Gestion d'exécution de programme Désactiver la zone MCR
MOD MOD Fonction sur nombres entiers Reste de division entière (32 bits)
NEGD NEGD Conversions Complément à 2 d'entier de 32 bits
NEGI NEGI Conversions Complément à 2 d'entier de 16 bits
NEGR NEGR Conversions Inverser nombre à virgule flottante (VF IEEE 32 bits)
NOP 0 NOP 0 Accumulateurs Opération nulle
NOP 1 NOP 1 Accumulateurs Opération nulle
NOT NOT Combinaison sur bits Négation du RLG
O O Combinaison sur bits OU
O( O( Combinaison sur bits OU d'une expression
OD OD Combinaison sur mots OU double mot (32 bits)
ON ON Combinaison sur bits OU NON
ON( ON( Combinaison sur bits OU NON d'une expression
OPN AUF Blocs de données Ouvrir bloc de données
OW OW Combinaison sur mots OU mot (16 bits)
POP POP Accumulateurs POP CPU avec deux accumulateurs
POP POP Accumulateurs POP CPU avec quatre accumulateurs
PUSH PUSH Accumulateurs PUSH CPU avec deux accumulateurs
PUSH PUSH Accumulateurs PUSH CPU avec quatre accumulateurs
R R Combinaison sur bits Mettre à 0
R R Compteurs Remettre compteur à 0 (le compteur actuel peut être un
nombre compris dans la plage de 0 à 255, exemple : R Z 15)
R R Temporisations Remettre temporisation à 0 (la temporisation actuelle peut
être un nombre compris dans la plage de 0 à 255, exemple :
R T 32)
–R –R Fonction sur nombres à virgule flottante Soustraire accumulateur 1 de accumulateur 2 (réels 32 bits)
RLD RLD Décalage/Rotation Rotation vers la gauche d'un double mot (32 bits)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 41
RLDA RLDA Décalage/Rotation Rotation vers la gauche de l'accumulateur 1 via BI1(32 bits)
RND RND Conversions Arrondir à l'entier
RND– RND– Conversions Arrondir à l'entier inférieur
RND+ RND+ Conversions Arrondir à l'entier supérieur
RRD RRD Décalage/Rotation Rotation vers la droite d'un double mot (32 bits)
RRDA RRDA Décalage/Rotation Rotation vers la droite de l'accumulateur 1 via BI1 (32 bits)
S S Combinaison sur bits Mettre à 1
S S Compteurs Initialiser compteur (le compteur actuel peut être un nombre
compris dans la plage de 0 à 255, par exemple : S Z 15)
SAVE SAVE Combinaison sur bits Sauvegarder RLG dans le bit RB
SD SE Temporisations Temporisation sous forme de retard à la montée
SE SV Temporisations Temporisation sous forme d'impulsion prolongée
SET SET Combinaison sur bits Mettre à 1
SF SA Temporisations Temporisation sous forme de retard à la retombée
SIN SIN Fonction sur nombres à virgule flottante Sinus d'angles comme nombres à virgule flottante (32 bits)
SLD SLD Décalage/Rotation Décalage vers la gauche d'un double mot (32 bits)
SLW SLW Décalage/Rotation Décalage vers la gauche d'un mot (16 bits)
SP SI Temporisations Temporisation sous forme d'impulsion
SQR SQR Fonction sur nombres à virgule flottante Carré d'un nombre à virgule flottante (32 bits)
SQRT SQRT Fonction sur nombres à virgule flottante Racine carrée d'un nombre à virgule flottante (32 bits)
SRD SRD Décalage/Rotation Décalage vers la droite d'un double mot (32 bits)
SRW SRW Décalage/Rotation Décalage vers la droite d'un mot (16 bits)
SS SS Temporisations Temporisation sous forme de retard à la montée mémorisé
SSD SSD Décalage/Rotation Décalage vers la droite d'un entier avec signe (32 bits)
SSI SSI Décalage/Rotation Décalage vers la droite d'un entier avec signe (16 bits)
T T Chargement/Transfert Transférer
T STW T STW Chargement/Transfert Transférer accumulateur 1 dans mot d'état
TAK TAK Accumulateurs Permuter accumulateur 1 et accumulateur 2
TAN TAN Fonction sur nombres à virgule flottante Tangente d'angles comme Nbr à virgule flottante (32 bits)
TAR1 TAR1 Chargement/Transfert Transférer registre d'adresse 1 dans l'accumulateur 1
TAR1 TAR1 Chargement/Transfert Transférer registre d'adr. 1 à l'adresse de destination (32 bits)
TAR1 TAR1 Chargement/Transfert Transférer registre d'adresse 1 dans registre d'adresse 2
TAR2 TAR2 Chargement/Transfert Transférer registre d'adresse 2 dans l'accumulateur 1
TAR2 TAR2 Chargement/Transfert Transférer registre d'adr. 2 à l'adresse de destination (32 bits)
TRUNC TRUNC Conversions Arrondir par troncature
UC UC Gestion d'exécution de programme Appel de bloc inconditionnel
X X Combinaison sur bits OU exclusif
X( X( Combinaison sur bits OU exclusif d'une expression
XN XN Combinaison sur bits OU NON exclusif
XN( XN( Combinaison sur bits OU NON exclusif d'une expression
XOD XOD Combinaison sur mots OU exclusif double mot (32 bits)
XOW XOW Combinaison sur mots OU exclusif mot (16 bits)

5.5.3 Opérations pour le Ladder d'après les abréviations Anglaises et Allemandes


Abr. Anglaises Abr. Allemandes Catalogue des éléments de programme Description

---|/|--- ---|/|--- Combinaison sur bits Contact à ouverture


---| |--- ---| |--- Combinaison sur bits Contact à fermeture
---( ) ---( ) Combinaison sur bits Bobine de sortie
---(#)--- ---(#)--- Combinaison sur bits Connecteur
==0 ---| |--- ==0 ---| |--- Bits d'état Bit de résultat pour égal à 0
>0 ---| |--- >0 ---| |--- Bits d'état Bit de résultat pour supérieur à 0
>=0 ---| |--- >=0 ---| |--- Bits d'état Bit de résultat pour supérieur ou égal à 0
<=0 ---| |--- <=0 ---| |--- Bits d'état Bit de résultat pour inférieur ou égal à 0
<0 ---| |--- <0 ---| |--- Bits d'état Bit de résultat pour inférieur à 0
<>0 ---| |--- <>0 ---| |--- Bits d'état Bit de résultat pour différent de 0
ABS ABS Fonction sur nombres à virgule flottante Valeur absolue d’un nombre réel
ACOS ACOS Fonction sur nombres à virgule flottante Arc cosinus
ADD_DI ADD_DI Fonction sur nombres entiers Additionner entiers de 32 bits
ADD_I ADD_I Fonction sur nombres entiers Additionner entiers de 16 bits
ADD_R ADD_R Fonction sur nombres à virgule flottante Additionner réels
ASIN ASIN Fonction sur nombres à virgule flottante Arc sinus
ATAN ATAN Fonction sur nombres à virgule flottante Arc tangente
BCD_DI BCD_DI Conversion Convertir nombre DCB en entier de 32 bits
BCD_I BCD_I Conversion Convertir nombre DCB en entier de 16 bits
BR ---| |--- BIE ---| |--- Bits d'état Bit d'anomalie "registre RB"
----(CALL) ----(CALL) Gestion d'exécution de programmes Appeler FC/SFC sans paramètre
CALL_FB CALL_FB Gestion d'exécution de programmes Appeler FB (boîte)
CALL_FC CALL_FC Gestion d'exécution de programmes Appeler FC (boîte)
CALL_SFB CALL_SFB Gestion d'exécution de programmes Appeler SFB (boîte)
CALL_SFC CALL_SFC Gestion d'exécution de programmes Appeler SFC (boîte)
----(CD) ----(ZR) Compteurs Décrémenter
CEIL CEIL Conversion Convertir réel en entier supérieur le plus proche
CMP ? D CMP ? D Comparaison Comparer entiers de 32 bits
CMP ? I CMP ? I Comparaison Comparer entiers de 16 bits
CMP ? R CMP ? R Comparaison Comparer réels

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 42
COS COS Fonction sur nombres à virgule flottante Cosinus
----(CU) ---( ZV ) Compteurs Incrémenter
DI_BCD DI_BCD Conversion Convertir entier de 32 bits en nombre DCB
DI_R DI_R Conversion Convertir entier de 32 bits en réel
DIV_DI DIV_DI Fonction sur nombres entiers Diviser entiers de 32 bits
DIV_I DIV_I Fonction sur nombres entiers Diviser entiers de 16 bits
DIV_R DIV_R Fonction sur nombres à virgule flottante Diviser réels
EXP EXP Fonction sur nombres à virgule flottante Valeur exponentielle
FLOOR FLOOR Conversion Convertir réel en entier inférieur le plus proche
I_BCD I_BCD Conversion Convertir entier de 16 bits en nombre DCB
I_DI I_DI Conversion Convertir entier de 16 bits en entier de 32 bits
INV_I INV_I Conversion Complément à 1 d'entier de 16 bits
INV_DI INV_DI Conversion Complément à 1 d'entier de 32 bits
---(JMP) ---(JMP) Sauts Saut inconditionnel
---(JMP) ---(JMP) Sauts Saut à l'intérieur d'un bloc si 1 (conditionnel)
---(JMPN) ---(JMPN) Sauts Saut à l'intérieur d'un bloc si 0 (conditionnel)
LABEL LABEL Sauts Repère de saut
LN LN Fonction sur nombres à virgule flottante Logarithme naturel
---(MCR>) ---(MCR>) Gestion d'exécution de programmes Relais de masquage hors fonction
---(MCR<) ---(MCR<) Gestion d'exécution de programmes Relais de masquage en fonction
---(MCRA) ---(MCRA) Gestion d'exécution de programmes Activer relais de masquage
---(MCRD) ---(MCRD) Gestion d'exécution de programmes Désactiver relais de masquage
MOD_DI MOD_DI Fonction sur nombres entiers Reste de division (32 bits)
MOVE MOVE Transfert Affecter valeur
MUL_DI MUL_DI Fonction sur nombres entiers Multiplier entiers de 32 bits
MUL_I MUL_I Fonction sur nombres entiers Multiplier entiers de 16 bits
MUL_R MUL_R Fonction sur nombresà virgule flottante Multiplier réels
---( N )--- ---( N )--- Combinaison sur bits Détecter front descendant
NEG NEG Combinaison sur bits Détecter front descendant de signal
NEG_DI NEG_DI Conversion Complément à 2 d'entier de 32 bits
NEG_I NEG_I Conversion Complément à 2 d'entier de 16 bits
NEG_R NEG_R Conversion Inverser le signe d'un nombre réel
---| NOT |--- ---| NOT |--- Combinaison sur bits Inverser RLG
---( OPN ) ---( OPN ) Appel de DB Ouvrir bloc de données
OS ---| |--- OS ---| |--- Bits d'état Bit d'anomalie "débordement mémorisé"
OV ---| |--- OV ---| |--- Bits d'état Bit d'anomalie "débordement"
---( P )--- ---( P )--- Combinaison sur bits Détecter front montant
POS POS Combinaison sur bits Détecter front montant de signal
---( R ) ---( R ) Combinaison sur bits Mettre à 0
---(RET) ---(RET) Gestion d'exécution de programmes Retour
ROL_DW ROL_DW Décalage/rotation Rotation vers la gauche d'un double mot
ROR_DW ROR_DW Décalage/rotation Rotation vers la droite d'un double mot
ROUND ROUND Conversion Arrondir
RS RS Combinaison sur bits Bascule mise à 0, mise à 1
---( S ) ---( S ) Combinaison sur bits Mettre à 1
---( SAVE ) ---( SAVE ) Combinaison sur bits Sauvegarder RLG dans RB
---( SC ) ---( SZ ) Compteurs Initialiser compteur
----(S_CD) Z_RUECK Compteurs Paramétrage et compteur de décrémentation
S_CU Z_VORW Compteurs Paramétrage et compteur d'incrémentation
S_CUD ZAEHLER Compteurs Paramétrage et compteur d'incrémentation/décrémentation
---( SD ) ---( SE ) Temporisations Démarrer temporisation sous forme de retard à la montée
---( SE ) ---( SV ) Temporisations Démarrer temporisation sous forme d'impulsion prolongée
---( SF ) ---( SA ) Temporisations Démarrer temporisation sous forme de retard à la retombée
SHL_DW SHL_DW Décalage/rotation Décalage vers la gauche d'un double mot
SHL_W SHL_W Décalage/rotation Décalage vers la gauche d'un mot
SHR_DI SHR_DI Décalage/rotation Décalage vers la droite d'un entier de 32 bits
SHR_DW SHR_DW Décalage/rotation Décalage vers la droite d'un double mot
SHR_I SHR_I Décalage/rotation Décalage vers la droite d'un entier de 16 bits
SHR_W SHR_W Décalage/rotation Décalage vers la droite d'un mot
SIN SIN Fonction sur nombres à virgule flottante Sinus
S_ODT S_EVERZ Temporisations Paramétrer et démarrer Temporisation sous forme de retard à
la montée
S_ODTS S_SEVERZ Temporisations Paramétrer et démarrer temporisation sous forme de retard à
la montée mémorisé (SS)
S_OFFDT S_AVERZ Temporisations Paramétrer et démarrer temporisation sous forme de retard à
la retombée
---( SP ) ---( SI ) Temporisations Démarrer temporisation sous forme d'impulsion
S_PEXT S_VIMP Temporisations Paramétrer et démarrer temporisation sous forme d'impulsion
prolongée
S_PULSE S_IMPULS Temporisations Paramétrer et démarrer temporisation sous forme d'impulsion
SQR SQR Fonction sur nombres à virgule flottante Carré
SQRT SQRT Fonction sur nombres à virgule flottante Racine carrée
SR SR Combinaison sur bits Bascule mise à 1, mise à 0
---( SS ) ---( SS ) Temporisation Démarrer temporisation sous forme de retard à la montée
mémorisé
SUB_DI SUB_DI Fonction sur nombres entiers Soustraire entiers de 32 bits
SUB_I SUB_I Fonction sur nombres entiers Soustraire entiers de 16 bits
SUB_R SUB_R Fonction sur nombres virgule flottante Soustraire réels
TAN TAN Fonction sur nombres virgule flottante Tangente

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 43
TRUNC TRUNC Conversion Tronquer à la partie entière
UO ---| |--- UO ---| |--- Bits d'état Bit d'anomalie "illicite"
WAND_DW WAND_DW Combinaison sur mots ET double mot
WAND_W WAND_W Combinaison sur mots ET mot
WOR_DW WOR_DW Combinaison sur mots OU double mot
WOR_W WOR_W Combinaison sur mots OU mot
WXOR_DW WXOR_DW Combinaison sur mots OU exclusif double mot
WXOR_W WXOR_W Combinaison sur mots OU exclusif mot

5.5.4 Opérations pour le « LOG. » d'après les abréviations Anglaises et Allemandes


Abr. Anglaises Abr. Allemandes Catalogue des éléments de programme Description

& & Combinaison sur bits Porte ET


>=1 >=1 Combinaison sur bits Porte OU
= = Combinaison sur bits Affectation
# # Combinaison sur bits Connecteur
---| ---| Combinaison sur bits Insérer entrée binaire
---o| ---o| Combinaison sur bits Inverser entrée binaire
==0 ==0 Bits d'état Bits de résultat
>0 >0 Bits d'état Bits de résultat
>=0 >=0 Bits d'état Bits de résultat
<0 <0 Bits d'état Bits de résultat
<=0 <=0 Bits d'état Bits de résultat
<>0 <>0 Bits d'état Bits de résultat
ABS ABS Fonction sur nombres à virgule flottante Valeur absolue d'un nombre réel
ACOS ACOS Fonction sur nombres à virgule flottante Fonctions trigonométriques d'angles sous forme de Nbr réels
ADD_DI ADD_DI Fonction sur nombres entiers Additionner entier de 32 bits
ADD_I ADD_I Fonction sur nombres entiers Additionner entier de 16 bits
ADD_R ADD_R Fonction sur nombres à virgule flottante Additionner nombres réels
ASIN ASIN Fonction sur nombres à virgule flottante Fonctions trigonométriques d'angles sous forme de Nbr réels
ATAN ATAN Fonction sur nombres à virgule flottante Fonctions trigonométriques d'angles sous forme de Nbr réels
BCD_DI BCD_DI Conversion Convertir nombre DCB en entier de 32 bits
BCD_I BCD_I Conversion Convertir nombre DCB en entier de 16 bits
BR BIE Bits d'état Bit d'anomalie "Registre RB"
CALL CALL Gestion d'exécution de programmes Appeler FC/SFC sans paramètre
CALL_FB CALL_FB Gestion d'exécution de programmes CALL_FB : Appeler FB
CALL_FC CALL_FC Gestion d'exécution de programmes Appeler FC (CALL_FC)
CALL_SFB CALL_SFB Gestion d'exécution de programmes Appeler SFB (CALL_SFB)
CALL_SFC CALL_SFC Gestion d'exécution de programmes Appeler SFC (CALL_SFC)
CD ZR Compteurs Décrémenter
CEIL CEIL Conversion Convertir nombre réel en entier supérieur le plus proche
CMP >=D CMP >=D Comparaison Comparer entiers de 32 bits
CMP >=I CMP >=I Comparaison Comparer entiers de 16 bits
CMP >=R CMP >=R Comparaison Comparer nombres réels
COS COS Fonction sur nombres à virgule flottante Fonctions trigonométriques d'angles sous forme de Nbr réels
CU ZV Compteurs Incrémenter
DI_BCD DI_BCD Conversion Convertir entier de 32 bits en nombre DCB
DI_R DI_R Conversion Convertir entier de 32 bits en nombre réel
DIV_DI DIV_DI Fonction sur nombres entiers Diviser entiers de 32 bits
DIV_I DIV_I Fonction sur nombres entiers Diviser entiers de 16 bits
DIV_R DIV_R Fonction sur nombres à virgule flottante Diviser nombres réels
EXP EXP Fonction sur nombres à virgule flottante Valeur exponentielle d'un nombre réel
FLOOR FLOOR Conversion Convertir nombre réel en entier inférieur le plus proche
I_BCD I_BCD Conversion Convertir entier de 16 bits en nombre DCB
I_DI I_DI Conversion Convertir entier de 16 bits en entier de 32 bits
INV_I INV_I Conversion Complément à 1 d'entier de 16 bits
INV_DI INV_DI Conversion Complément à 1 d'entier de 32 bits
JMP JMP Sauts Saut inconditionnel
JMP JMP Sauts Saut si 1 (conditionnel)
JMPN JMPN Sauts Saut si 0 (conditionnel)
LABEL LABEL Sauts Repère de saut
LN LN Fonction sur nombres à virgule flottante Logarithme naturel d'un nombre réel
MCR> MCR> Gestion d'exécution de programmes Désactiver relais de masquage
MCR< MCR< Gestion d'exécution de programmes Activer relais de masquage
MCRA MCRA Gestion d'exécution de programmes Relais de masquage en fonction
MCRD MCRD Gestion d'exécution de programmes Relais de masquage en fonction
MOD_DI MOD_DI Fonction sur nombres entiers Reste de division (32 bits)
MOVE MOVE Transfert Affecter valeur
MUL_DI MUL_DI Fonction sur nombres entiers Multiplier entiers de 32 bits
MUL_I MUL_I Fonction sur nombres entiers Multiplier entiers de 16 bits
MUL_R MUL_R Fonction sur nombres à virgule flottante Multiplier nombres réels
N N Combinaison sur bits Détecter front descendant
NEG NEG Combinaison sur bits Détecter front montant
NEG_DI NEG_DI Conversion Complément à deux d'entier de 32 bits
NEG_I NEG_I Conversion Complément à deux d'entier de 16 bits
NEG_R NEG_R Conversion Inverser le signe d'un nombre réel

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 44
OPN OPN Appel de DB Ouvrir bloc de données
OS OS Bits d'état Bit d'anomalie "Débordement mémorisé"
OV OV Bits d'état Bit d'anomalie "Débordement
P P Combinaison sur bits Détecter front montant
POS POS Combinaison sur bits Détecter front montant de signal
R R Combinaison sur bits Mettre à 0
RET RET Gestion d'exécution de programmes Retour
ROL_DW ROL_DW Décalage/rotation Rotation vers la gauche d'un double mot
ROUND ROUND Conversion Arrondir à entier de 32 bits
ROR_DW ROR_DW Décalage/rotation Rotation vers la droite d'un double mot
RS RS Combinaison sur bits Bascule mise à 0, mise à 1
S S Combinaison sur bits Mettre à 1
SAVE SAVE Combinaison sur bits Sauvegarder RLG dans RB
SC SZ Compteurs Initialiser compteur
S_CD Z_RUECK Compteurs Paramétrage et compteur décrémental
S_CU Z_VORW Compteurs Paramétrage et compteur incrémental
S_CUD ZAEHLER Compteurs Paramétrage et compteur incrémental/décrémental
SD SE Temporisations Paramétrer et démarrer une temporisation sous forme de
retard à la montée
SE SV Temporisations Temporisation sous forme d'impulsion prolongée
SF SA Temporisations Paramétrer et démarrer une temporisation sous forme de
retard à la retombée
SHL_DW SHL_DW Décalage/rotation Décalage vers la gauche d'un double mot
SHL_W SHL_W Décalage/rotation Décalage vers la gauche d'un mot
SHR_DI SHR_DI Décalage/rotation Décalage vers la droite d'un entier de 32 bits
SHR_DW SHR_DW Décalage/rotation Décalage vers la droite d'un double mot
SHR_I SHR_I Décalage/rotation Décalage vers la droite d'un entier de 16 bits
SHR_W SHR_W Décalage/rotation Décalage vers la droite d'un mot
SIN SIN Fonction sur nombres à virgule flottante Fonctions trigonométriques d'angles sous forme de Nbr réels
S_ODT S_EVERZ Temporisations Paramétrer et démarrer une temporisation sous forme de
retard à la montée
S_ODTS S_SEVERZ Temporisations Paramétrer et démarrer une temporisation sous forme de
retard à la montée mémorisé
S_OFFDT S_AVERZ Temporisations Paramétrer et démarrer une temporisation sous forme de
retard à la retombée
SP SI Temporisations Temporisation sous forme d'impulsion
S_PEXT S_VIMP Temporisations Paramétrer et démarrer une temporisation sous forme
d'impulsion prolongée
S_PULSE S_IMPULS Temporisations Paramétrer et démarrer une temporisation sous forme
d'impulsion
SQR SQR Fonction sur nombres à virgule flottante Carré d'un nombre réel
SQRT SQRT Fonction sur nombres à virgule flottante Racine carrée d'un nombre réel
SR SR Combinaison sur bits Bascule mise à 1, mise à 0
SS SS Temporisations Temporisation sous forme de retard à la montée mémorisé
SUB_DI SUB_DI Fonction sur nombres entiers Soustraire entiers de 32 bits
SUB_I SUB_I Fonction sur nombres entiers Soustraire entiers de 16 bits
SUB_R SUB_R Fonction sur nombres à virgule flottante Soustraire nombres réels
TAN TAN Fonction sur nombres à virgule flottante Fonctions trigonométriques d'angles sous forme de Nbr réels
TRUNC TRUNC Conversion Tronquer à la partie entière (32 bits)
UO UO Bits d'état Bit d'anomalie "Opération illicite"
WAND_DW WAND_DW Combinaison sur mots ET double mot
WAND_W WAND_W Combinaison sur mots ET mot
WOR_DW WOR_DW Combinaison sur mots OU double mot
WOR_W WOR_W Combinaison sur mots OU mot
WXOR_DW WXOR_DW Combinaison sur mots OU exclusif double mot
WXOR_W WXOR_W Combinaison sur mots OU exclusif mot
XOR XOR Combinaison sur bits Combinaison OU exclusif

5.6 Adressage des variables et les mots sur les automates « S7 300 »
Une entrée logique « TOR » ayant une valeur égale à 0 ou à 1, un seul bit suffit à la représenter. Les
entrées logiques sont numérotées de la façon suivante : E (Octet).(x) [Allemand] ou I (Octet).(x) [Inter.]
L’octet peut prendre les valeurs suivantes : 0..3, … (voir le tableau 12) et « x » peut prendre les valeurs :
0, 1, 2, 3, 4, 5, 6, ou 7. La figure suivante montre la position de chacun des bits (correspondant à x) dans
l’octet. Soulignons que les automates S7-312C, S7-313C et S7-314C présentent quelques spécificités
(consultez la documentation du constructeur).

Figure n° 73 : Position de chacun des bits (correspondant à x) dans l’octet

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 45
De même, une sortie logique ayant une valeur égale à 0 ou à 1, un seul bit suffit à la représenter. Les
sorties logiques sont numérotées de la façon suivante :
A (Octet).(x) [Allemand] ou Q (Octet).(x) [Inter.]
Les entrées analogiques sont symbolisées de la façon suivante :

PEW [Allemand] ou PEW [Inter.] : il s’agit d’un mot de la périphérie entrée


Les sorties analogiques sont symbolisées aussi de la façon suivante :

PAW [Allemand] ou PQW [Inter.] : il s’agit d’un mot de la périphérie sortie


L’automate utilisé ici comporte quelques centaines d’octets de mémoire interne identifiée sous le nom
« mémento ». Un bit de mémento est identifié de la façon suivante :
M(Octet).(x)
Ultérieurement, nous utiliserons ces mémentos pour mémoriser l’état des grafcets programmés dans
l’automate. Notons aussi que les données sur automates sont symbolisées par :
 B (pour Byte, soit des mots sur 8 bits),
 W (pour Word, ou mots sur « n » bits),
 D (pour Double mots sur « 2 x n » bits).
NB : La référence est le Byte (8 bits). Mais si la taille des données est strictement supérieure à 8 bits, la
donnée sera constituée par l’association de plusieurs Bytes (schémas suivants) :
L’adressage des modules E/S sera effectué par la configuration de la station. STEP7 affecte
automatiquement une adresse à chaque module dans la table de configuration, il est possible de modifier
ces adresses si la CPU le permet. Dans l’exemple ci-dessous, est détaillée l’adresse des entrées/sorties
correspondantes aux cartes placées sur le rack des automates programmables. Chaque entrée et chaque
sortie possèdent par défaut une adresse absolue déterminée par la configuration matérielle. Chaque
emplacement occupe 32 bits (4 bytes), exemple pour les automates de la série « S7 300 » :

Tableau n ° 12 : Adressages pour les cartes placées sur le Rack

NB : Dans cette configuration, les modules de 16 entrées et de 16 sorties font perdre 2 Bytes d’adresse
par module.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 46
L’adresse absolue peut être remplacée par un nom symbolique pouvant être librement choisi. Vous
affectez dans la table des mnémoniques un nom symbolique à toutes les adresses absolues que vous
appelez dans le programme. Un exemple succinct d’une table des mnémoniques (contenant les
informations relatives à un projet/programme) est donné par le tableau suivant.

Mnémonique Code API (International) Code API (Allemand) Type de données Commentaire

Bp_Dcy I0.0 E0.0 Bool Bouton poussoir (Départ cycle)


Cm_Mt05 Q4.0 A4.0 Bool Commande du moteur n° 5
………… …… …… …… ……………………………
………… …… …… …… ……………………………
………… …… …… …… ……………………………

Tableau n ° 13 : Exemple succinct d’une table des mnémoniques

5.7 Programmation
5.7.1 Rappels
Un programme automate et constitué d’une suite d’instructions exécutées séquentiellement par la
« CPU ». Les automates actuels répondent à la norme « IEC 1131-3 ». Ils sont généralement
programmables dans les langages suivants :

 Le Ladder : est un langage graphique représentant un schéma électrique à contact. Ce langage est
facilement utilisable par du personnel électricien. Un exemple de programme en langage « Ladder »
est donné par la figure suivante, avec :
 Mi.j (« M » désigne un mot, « i » le numéro relatif au mot et « j » le numéro du bit du mot « i » ;
 NOT pour complémenter (le ET logique entre les bits M10.4 et M10.5) ;
 T4 est le symbole d’une temporisation de numéro 4 et de durée égale à 12 secondes.

Figure n ° 74 : Exemple de programme en langage « Ladder »

 Le List : est un langage proche de l’assembleur (langage de programmation des microprocesseurs)


appelé aussi langage machine. Le tableau suivant donne le programme en List correspondant à
l’exemple de la figure ci-dessus, avec les deux codes (International et Allemand).

Programme List (Code International) Programme List (Code Allemand) Commentaire

A M10.4 U M10.4 Combinaison sur bit (ET)


AN M10.5 UN M10.5 Combinaison sur bit (ET NON)
NOT NOT Négation
O O Combinaison sur bit (OU)
AN M10.6 UN M10.6 Combinaison sur bit (ET NON)
A M10.7 U M10.7 Combinaison sur bit (ET)
L S5T12S L S5T12S Charger valeur de comptage (12 s)
SD T4 SE T4 Temporisation n° 4 sous forme de retard à la
montée
NB : SD / SE (voir § II 5.5.2)

Figure n° 75 : Exemple de programme en langage « LIST »


FUNCTION_BLOCK FB 20 BEGIN

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 47
 Le littérale est un langage évolué textuel, dont la VAR_INPUT
VALFINALE INT;
ONTROL := FALSE;
OR INDEX := 1 TO VALFINALE DO
structure correspond pour l'essentiel à la norme END_VAR IQ1 := IQ1 * 2;
CEI 1131-3, voir l’exemple à côté. Grâce à ses VAR_IN_OUT
IQ1: REAL;
IF IQ1 > 10000 THEN
CONTROL = TRUE
instructions en langage évolué et contrairement ND_VAR END_IF;
au langage LIST, ce langage simplifie entre AR ND_FOR;
NDEX: INT; ND_FUNCTION_BLOCK
autres la programmation de boucles et de ND_VAR
branches conditionnelles (If … Then, Else ; For Figure n° 76 :
… To… ; Do, …). Il est de ce fait tout Exemple de programme en
particulièrement adapté au calcul de formules, langage « Littérale »

aux algorithmes d'optimisation complexes ou à la


gestion de grandes quantités de données.

 Le Grafcet : est un langage graphique séquentiel reprenant la norme Grafcet.

Figure n ° 77 : Structure de programme en langage « Grafcet »

 Le « LOG » ou Logigramme utilise les boîtes


fonctionnelles graphiques de l'algèbre booléenne
pour représenter des éléments logiques. Il permet
en outre de représenter des fonctions complexes,
telles que les fonctions mathématiques en les
mettant directement en liaison avec ces boîtes
logiques. Le langage de programmation « LOG »
fait partie du logiciel de base STEP7. Le schéma à
côté donne le programme en « LOG »
correspondant à l’exemple de la figure 74. Figure n ° 78 : Structure d’un programme « LOG » ou Logigramme

STEP-7 permet de répartir le programme utilisateur en différents blocs de programme. Le bloc


d’organisation « OB1 » est présent par défaut. Ce bloc constitue l’interface avec le système d’exploitation
de la CPU, il est automatiquement appelé par celui-ci et est exécuté de façon cyclique. Dans le cas de
grosses applications, le programme pourra être subdivisé en blocs de programme plus petits, formant ainsi
de petites parties autonomes et assurant, entre autres, une meilleure lisibilité.

Ces blocs seront appelés à partir du bloc d’organisation grâce aux commandes d’appel de bloc (Call xx /
UC xx / CC xx). La fin d’un bloc est signalisée par la commande BE, à la rencontre de celle-ci, le
programme utilisateur poursuit son exécution dans le bloc appelant juste après la commande d’appel de
bloc.

Le traitement des programmes par les automates programmables industriels se fait de la façon suivante :

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 48
M.I.E (Mémoire Image des Entrées) : C’est l’espace mémoire dans la RAM
de l’automate qui permet de stocker l’état des entrées. Elle est mise à jour au
début de cycle automate ;
M.I.S (Mémoire Image des Sorties) : C’est l’espace mémoire des dans la
RAM de l’automate ou le programme stocke l’état des sorties. Les sorties sont
mis à jour à la fin du cycle automate
Cycle automate : C’est le temps que mets l’automate pour exécuter l’ensemble
du programme.
Chien de garde : C’est le temps de surveillance du cycle automate. Si le temps
d’exécution du cycle automate est supérieur au chien de garde, le cycle est
arrêté et l’automate passe en défaut.

Figure n ° 79 : Traitement des programmes par automates programmables

STEP-7 propose différents types de blocs utilisateurs pour la programmation structurée :

Programmation LINEAIRE Programmation STRUCTUREE

Figure n° 80 : Blocs de la programmation

→ FB (bloc fonctionnel) : Il dispose d’un espace mémoire. Lors de l’appel d’un « FB », un bloc de
données « DB » peut lui être alloué, il aura alors accès aux données contenues dans ce « DB »
d’instance local. Plusieurs « DBs » peuvent être alloués à un même « FB ». D’autres « FBs » ou
« FCs » peuvent être appelés (grâce aux commandes Call / UC / CC) à l’intérieur d’un « FB ».
→ FC (fonction) : Elle ne dispose pas d’espace mémoire, les données locales sont perdues après
l’exécution de la fonction. D’autres « FBs » ou « FCs » peuvent être appelés (grâce aux commandes
Call / UC / CC) à l’intérieur d’une « FC ».

Un tel programme pourrait avoir la structure


donnée dans la figure à côté :

Figure n° 81 : Blocs de la programmation, (suite)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 49
5.7.2 Comment écrire un programme sur l’automate « S7 300 » ?
En cliquant sur le répertoire « Programme S7 » vous voyez apparaître les items « Sources », « Blocs » et
« Mnémoniques ». Le premier item mène à la liste de fichiers utilisant des logiciels spécialisés pour
programmer l’automate avec des langages avancés.

Figure n° 82 : Structure d’un programme sous « S7 300 »

Le second item vers la liste des blocs créés pour l’automate avec le logiciel « STEP 7 ». Le 3ième item
permet de lancer le logiciel de définition de mnémoniques (nous y reviendrons plus tard). Cliquez sur le
répertoire « Blocs » (ou sur l’item « Blocs »). La fenêtre de droite devient alors :

Figure n° 83 : Structure d’un programme sous « S7 300 », (suite)

L’item identifié « OB1 » est le bloc organisationnel résultant de la création du projet. Cliquez 2 fois sur
l’item « OB1 » pour lancer le logiciel « STEP 7 ». La fenêtre de l’éditeur apparaît alors (figure suivante).

Figure n° 84 : Programmation sur les automates « S7 300 »

Dans la fenêtre de droite, nous retrouvons la page de l’éditeur de programme. On y retrouve :


 un champ pour insérer le titre du bloc (optionnel) ;
 une zone de commentaire pour décrire la fonction du bloc (optionnel) ;
 un ensemble de réseaux (ou barreaux) ayant :
- un champ pour insérer le titre du réseau (optionnel) ;
- une zone de commentaire pour le réseau (optionnel) ;
- la zone de programmation du réseau.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 50
Dans la fenêtre de gauche, nous retrouvons l’ensemble des éléments de programme ou fonctions
disponibles pour cet automate. Maintenant, voyons comment programmer le réseau (ou barreau) de
langage à contacts ci-dessous. Ce réseau correspond à la commande de la sortie digitale « Q4.0 » via
l’entrée TOR « I1.0 », qu’on peut modéliser par l’équation suivante : Q4.0 = f (I1.0).

Figure n° 85 : Programmation sur les automates « S7 300 », (suite)

Positionner le curseur au début de la zone de programmation du réseau « 1 ». Puis cliquez ensuite sur
l’icône de contact normalement ouvert. Ensuite, inscrire le numéro du contact d’entrée I1.0 (figure
suivante).

Figure n° 86 : Programmation sur les automates « S7 300 », (suite)

Pour compléter le réseau, positionner le curseur à la fin de la zone du réseau « 1 », puis cliquez sur l’icône
de la bobine de sortie et inscrire le numéro de la bobine, soit Q4.0 (voir image ci-dessous).

Figure n° 87 : Programmation sur les automates « S7 300 », (suite)

Une fois le premier barreau programmé, programmons ensuite le barreau suivant :

Figure n° 88 : Programmation sur les automates « S7 300 », (suite)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 51
Il faut introduire un nouveau réseau pour programmer ce nouveau barreau. Pour ce faire, cliquez ensuite
sur l’icône de nouveau réseau. Le réseau 2 apparaît tel que montré ci-dessous :

Figure n° 89 : Programmation sur les automates « S7 300 », (suite)

Programmer la première ligne du barreau tel que montré à la figure suivante, puis inscrire les adresses.

Figure n° 90 : Programmation sur les automates « S7 300 », (suite)

Pour placer le contact Q4.7 en parallèle avec


le contact I1.2, il faut ouvrir une branche.
Pour ouvrir la branche, il faut placer le
curseur sur le contact I1.2 et appuyer sur la
touche F8. Figure n° 91 : Programmation sur les automates « S7 300 », (suite)

Ajouter alors le contact Q4.7 sur la nouvelle branche.

Figure n° 92 : Programmation sur les automates « S7 300 », (suite)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 52
Il faut maintenant fermer cette branche. On y arrive en appuyant sur la touche F9. Le réseau 2 aura donc
cette apparence.

Figure n° 93 : Programmation sur les automates « S7 300 », (suite)

Sauvegarder ce programme en cliquant sur l’option « Sauvegarde » du menu déroulant « Fichier ».

Figure n° 94 : Programmation sur les automates « S7 300 », (suite)

5.7.3 Utilisation d’étiquettes ou de mnémoniques dans les programmes automates


Les étiquettes (appelées aussi mnémoniques) permettent de donner aux variables d’entrées, de sorties ou
de mémoire interne un nom plus révélateur que I1.0 par exemple.
Sur votre ordinateur,
(1) Localiser l’item SIMATIC du menu Démarrer, puis l’item STEP 7 du menu SIMATIC ;
(2) Cliquez sur l’item SIMATIC Manager du menu STEP 7 ;
(3) Créer un nouveau projet utilisant un CPU 314 et ayant un bloc OB1 ;
(4) Nommer ce projet « GAUG_Secon_ programme » (remplacer GAUG par les quatre lettres de
votre code permanent) ;
(5) Choisir l’item « Programme S7 » du menu de gauche :

Figure n° 95 : Programmation sur les automates « S7 300 », (suite)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 53
(6) Dans le menu de droite, l’un des items est identifié par « Mnémoniques ». Double cliquez sur cet
item pour lancer l’éditeur de mnémoniques. La fenêtre suivante apparaît alors :

Figure n° 96 : Programmation sur les automates « S7 300 », (suite)

C’est l’éditeur de mnémonique. Par défaut seul le bloc « OB1 » possède un mnémonique qui est
« Cycle Execution » (ou exécution cyclique). Supposons que nous ayons 5 moteurs ayant chacun
une paire de boutons identifiés MARCHE et ARRÊT et un contacteur identifié MOTEUR. On peut
utiliser l’éditeur de mnémonique pour établir une correspondance entre le nom de ces boutons et
les entrées de l’automate.
(7) Associons le mnémonique MARCHE 1 avec l’entrée I1.0, le mnémonique ARRÊT 1 avec l’entrée
I1.1 et le mnémonique MOTEUR 1 avec la sortie Q4.0.Cela mène donc à cet écran une fois ces
informations entrées dans l’éditeur :

Figure n° 97 : Programmation sur les automates « S7 300 », (suite)

La première colonne du tableau donne la liste des mnémoniques, la seconde colonne l’opérande
correspondant, la troisième colonne le type de donnée (dans notre cas des variables booléennes)
et la dernière colonne contient les commentaires que l’on associe à la mnémonique.

(8) Poursuivre avec les autres moteurs.


Cela donnera le tableau à côté :

Figure n° 98 : Programmation sur les automates « S7 300 », (suite)


(9) Enregistrer cette table ;
(10) Fermer l’éditeur de mnémonique.

5.7.4 Les temporisations pour l’automate « S7 300 » ?


Dans l’automate, nous avons accès à certaines fonctions dont les compteurs et les temporisations. Ces
éléments sont fort utiles pour générer des délais d’attente ou pour compter des événements. Les

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 54
temporisateurs offerts dans l’automate que nous avons sous la main sont de cinq types (voir le tableau ci-
dessous). Les temporisations sont identifiées par T (nombre), la lettre T indiquant une variable de
temporisation et le nombre, le numéro de la temporisation (exemple : T12). La durée de la temporisation
est indiquée à l’entrée TV d’une temporisation de la façon suivante :
 Préfixe « S5T# » ;
 Durée avec unités de mesure.

Tableau n° 14 : Les différents types de temporisation

Ainsi, un temporisateur de 1 minute 45.33 secondes sera


programmée : S5T#1M45S33MS. Dans la plupart de nos
applications, nous utiliserons une temporisation de la forme
« retard à la montée ». Cette temporisation voit sa sortie passer
de 0 à 1 un certain temps préprogrammé après le passage de 0 à
1 de l’entrée :
(1) créer un nouveau projet et dans ce projet ;
(2) créer un bloc de fonction « FC1 » dans le bloc « FC1 » ;
(3) créer le programme suivant :

Figure n° 99 : Exemple de programmation des temporisations

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 55
Figure n° 100 : Exemple de programmation des temporisations, (suite)

Dans ce programme, les temporisations sont commandées par les interrupteurs et qui allumeront des
sorties selon l’état de la temporisation correspondante :
(4) sauvegarder le bloc « FC1 » ;
(5) ouvrir le bloc « OB1 » ;
(6) simplement insérer l’appel au bloc « FC1 » :

Figure n° 101 : Exemple de programmation des temporisations, (suite)

(7) sauvegarder le bloc « OB1 » ;


(8) transférer le tout (« OB1 » et « FC1 ») dans l’automate (le sélecteur de mode de l’automate devra
avoir été mis à STOP) ;

(9) vous pouvez visualiser le test en ouvrant « FC1 » et en activant la visualisation. Voici un exemple
de visualisation :

Figure n° 102 : Exemple de programmation des temporisations, (suite)

(10) mettre le sélecteur de mode de l’automate à RUN ;


(11) faire une courte impulsion (< 5 sec) sur l’entrée I1.0 ; Que se passe-t-il en sortie ?
(12) faire une longue impulsion (> 15 sec) sur l’entrée I1.0 ; Que se passe-t-il en sortie ?
(13) faire une courte impulsion (< 5 sec) sur l’entrée I1.1 ; Que se passe-t-il en sortie ?
(14) faire une longue impulsion (> 15 sec) sur l’entrée I1.1 ; Que se passe-t-il en sortie ?
(15) faire une courte impulsion (< 5 sec) sur l’entrée I1.2 ; Que se passe-t-il en sortie ?

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 56
(16) faire une longue impulsion (> 15 sec) sur l’entrée I1.2 ; Que se passe-t-il en sortie ?
(17) faire une courte impulsion (< 5 sec) sur l’entrée I1.3 ; Que se passe-t-il en sortie ?
(18) 10 secondes après l’impulsion en I1.3, faire une impulsion sur l’entrée I1.4 ; Que se passe-t-il en
sortie ?
(19) faire impulsion sur l’entrée I1.5 ; Que se passe-t-il en sortie ?

Il est important de noter que les états observés aux sorties sont les mêmes que ceux des variables T
correspondantes.

5.7.5 Les compteurs pour l’automate « S7 300 » ?

Les compteurs offerts dans l’automate « S7 300 » sont de trois types : « CU » pour compteur incrémental,
« CD » pour compteur décrémental et « CUD » pour compteur incrémental/décrémental. Ils sont
identifiés par C(nombre), la lettre « C » indiquant une variable de comptage, le numéro de la
temporisation (exemple : « C1 »). La valeur initiale d’un compteur est indiquée à l’entrée « PV » de la
façon suivante :
 Préfixe « C# » ;
 Nombre.
Ainsi, un compteur ayant une valeur initiale de 3 sera programmé : C#3. Dans la plupart de nos
applications, nous utiliserons un compteur décrémental. Pour ce compteur comme pour les autres, l’état
logique de la sortie est 0 si la valeur du compteur est 0, sinon l’état logique est 1. Dans le même projet de
précédemment,
(1) créer un bloc de fonction « FC2 », dans le bloc « FC2 » ;
(2) créer le programme suivant :

Figure n° 103 : Exemple de programmation des compteurs

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 57
(3) sauvegarder le bloc « FC2 » ;
(4) ouvrir le bloc « OB1 » ;
(5) remplacer l’appel au bloc « FC1 » par un appel au bloc « FC2 » :

Figure n° 104 : Exemple de programmation des compteurs, (suite)

(6) sauvegarder le bloc « OB1 » ;


(7) transférer le tout (« OB1 », « FC1 » et « FC2 ») dans l’automate (le sélecteur de mode de
l’automate devra avoir été mis à STOP) ;
(8) tester votre programme dans l’automate ; vous pouvez visualiser le test en ouvrant « FC2 » et en
activant la visualisation (voir l’exemple suivant) :

Figure n° 105 : Exemple de programmation des compteurs, (suite)


Compteur « CU » :

(9) faire une impulsion sur l’entrée « I1.1 » ; cela active l’entrée « S (set) » qui charge la valeur mise
à l’entrée « PV » dans le compteur ; que se passe-t-il en sortie ?
(10) faire une impulsion sur l’entrée d’incrémentation « I1.0 » ; que se passe-t-il en sortie ? Quelle
est la valeur du compteur ?
(11) faire une impulsion sur l’entrée « I1.2 » ; cela active l’entrée « R (reset) » qui remet le compteur
à « 0 » ; que se passe-t-il en sortie ?

Compteur « CD »

(12) faire une impulsion sur l’entrée « I1.4 » ; cela active l’entrée « S (set) » qui charge la valeur mise
à l’entrée « PV » dans le compteur ; que se passe-t-il en sortie ?
(13) faire quatre impulsions sur l’entrée de décrémentation « I1.3 » ; que se passe-t-il en sortie ?
Quelle est la valeur du compteur ?
(14) faire une impulsion sur l’entrée « I1.4 », puis faire une autre impulsion sur l’entrée « I1.5 ». Cela
active l’entrée « R (reset) » qui remet le compteur à « 0 » ; que se passe-t-il en sortie ?
Compteur « CUD »

(15) faire une impulsion sur l’entrée « I2.0 » ; cela active l’entrée « S (set) » qui charge la valeur mise
à l’entrée « PV » dans le compteur ; que se passe-t-il en sortie ?

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 58
(16) faire deux impulsions sur l’entrée d’incrémentation « I1.6 » ; que se passe-t-il en sortie ? Quelle
est la valeur du compteur ?
(17) faire quatre impulsions sur l’entrée de décrémentation « I1.7 » ; que se passe-t-il en sortie ?
Quelle est la valeur du compteur ?
(18) faire des impulsions sur l’entrée « I1.6 », puis faire une autre impulsion sur l’entrée « I2.1 ».
Cela active l’entrée « R (reset) » qui remet le compteur à « 0 », que se passe-t-il en sortie ?
NB : Il est important de noter que les états observés aux sorties sont les mêmes que ceux des
variables « C » correspondantes.
(19) fermer le projet après vos essais.

5.7.6 Les blocs fonctionnels « FB » pour l’automate « S7 300 » ?


Il peut être intéressant de programmer dans STEP-7 des blocs de type « black box » qui permettent de
réaliser une fonctionnalité précise de manière transparente et indépendamment du contexte ou du
programme appelant. Ce type de bloc ne peut naturellement pas contenir d’adressage absolu
d’entrées/sorties, de mémentos, timers ou compteurs, etc. L’utilisation de variables, de constantes et le
passage de paramètres prennent alors tout leur sens.

L’exemple suivant explicite la création d’un bloc fonctionnel assurant la commande d’un moteur en
fonction du type de fonctionnement choisi, il contiendra également un compteur de cycle. Le bouton
poussoir « S0 » permet de sélectionner le type de fonctionnement ‘manuel’ du moteur, tandis que le
bouton poussoir « S1 » le type de fonctionnement ‘automatique’.

En fonctionnement ‘manuel’, le moteur tourne tant que l’on reste appuyé sur le bouton poussoir « S2 » et
que le bouton poussoir « S3 » n’est pas actionné.
En fonctionnement ‘automatique’, le moteur est mis en route avec le bouton « S2 » et est arrêté avec le
bouton « S3 ». Les cycles d’exécution du programme sont comptabilisés dans un mémento de type double
« MD ». L’exemple utilise les adresses définies ci-dessous :
Entrées :
- Bouton de commande manuelle « S0 » = I1.0
- Bouton de commande automatique « S1 » = I1.1
- Bouton de mise en route « S2 » = I1.2
- Bouton d’arrêt S3 » = I1.3
Sorties : - Moteur = Q4.0
Mémentos : - Compteur de cycles = MD20

Pour la réalisation de cet exemple, veuillez suivre les étapes décrites ci-dessous :
1. ouvrir, SIMATIC Manager’ (double clique sur l’icône) ;
2. ouvrir un nouveau Projet (  Fichier  Nouveau) :

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 59
Figure n° 106 : Création d’un nouveau projet

3. ouvrir créer un nouveau projet, choisir le chemin et donner le nom du projet « Exemple_FB »
( Exemple_FB) :

Figure n° 107 : Création d’un nouveau projet, (suite)

4. insérer un nouveau « Programme S7 » (  Insertion  Programme  Programme S7) :

Figure n° 108 : Création d’un nouveau projet, (suite)

5. sélectionner le dossier « Blocs » ( Blocs) :

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 60
Figure n° 109 : Création d’un bloc fonctionnel

6. insérer un « Bloc fonctionnel » (  Insertion  Bloc S7  Bloc fonctionnel) :

Figure n° 110 : Création d’un bloc fonctionnel, (suite)

7. accepter le nom et les propriétés en cliquant sur « OK ». (  FB1  OK) :

Figure n° 111 : Création d’un bloc fonctionnel, (suite)


8. Double clique sur « FB1 » pour ouvrir le bloc fonctionnel ( FB1) :

Figure n° 112 : Création d’un bloc fonctionnel (suite)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 61
9. L’éditeur « CONST », « LIST », « LOG » vous permet de modifier votre bloc fonctionnel « FB ».
Des variables de type ‘IN’, ‘OUT’, ‘IN_OUT’ et ‘TEMP’ peuvent être définies, ceci se fait dans la
table de déclaration des variables située en haut du « FB1 » :
- Les paramètres d’entrée (IN) pour les FBs, FCs, SFBs et SFCs : grâce aux paramètres
d’entrées, des données peuvent être transmises au bloc de programme.
- Les paramètres de sortie (OUT) pour les FBs, FCs, SFBs et SFCs : les résultats du bloc appelé
sont transmis grâce aux paramètres de sortie.
- Les paramètres d’entrée/sortie (IN_OUT) pour les FBs, FCs, SFBs et SFCs : grâce aux
paramètres d’entrée/sortie, des données peuvent être transmises au bloc, où elles seront
utilisées. Cette même variable contiendra ensuite le résultat du bloc appelé.
- Les variables statiques (STAT) pour les FBs et SFBs : les variables statiques sont les variables
locales d’un bloc fonctionnel contenues dans le DB d’instance correspondant. Celles-ci restent
inchangées jusqu’au prochain appel du bloc fonctionnel.
- Les variables temporaires (TEMP) pour tous les blocs : les variables temporaires sont les
variables locales d’un bloc contenues dans la pile locale (L-Stack). Celles-ci sont détruites après
l’exécution du bloc.
Valeur initiale, du même type que Opérande d’arrêt et à exclure, Commentaire
la variable (optionnel) utile pour le diagnostic. (optionnel)

Nom mnémonique. Il pointe sur l’adresse absolue et Type des variables Les adresses absolues sont automatiquement
permet donc d’accéder à la variable correspondante. établies par STEP-7, leur format est : BYTE.BIT.

Figure n° 113 : Création d’un bloc fonctionnel, (suite)

5.7.7 Comment charger le programme dans l’automate « S7 300 » ?


Supposons que nous disposons d’un automate possédant un module de source d’alimentation PS307 de 2
Ampères et le module de CPU 314 de la série « S7-300 ». Sur le module d’alimentation (qui est toujours à
l’extrême gauche) se trouve l’interrupteur de mise sous tension de l’automate.
Lorsque l’automate est sous tension, le voyant 24 Vcc est au vert pour indiquer que tout est normal.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 62
Figure n° 114 : Signalisation existante sur le bloc alimentation PS 307

Mettre l’automate sous tension ; le module de CPU (montré ci-dessous) est l’unité dans lequel votre
programme sera stocké, il sera alimenté.

Figure n° 115 : Signalisation existante sur le boîtier de l’automate « S7 314 »

Sur le module, on retrouve un


commutateur de mode. Ce commutateur
permet de déterminer si l’automate doit
exécuter le programme ou non. Ce
commutateur est montré en gros plan : Figure n° 116 : Schéma du commutateur mode pour l’automate « S7 314 »

Ce commutateur est montré en gros plan :


 En mode STOP, l’automate n’exécute pas le programme. Dans ce mode, il est possible de transférer
un programme de l’ordinateur vers l’automate et de transférer un programme de l’automate vers
l’ordinateur. Il est aussi possible de modifier le programme dans l’automate.
 En mode RUN, l’automate exécute le programme. Dans ce mode, il est possible de transférer un
programme de l’automate vers l’ordinateur. Il est toutefois impossible de transférer un programme
de l’ordinateur vers l’automate. Il est aussi impossible de modifier un programme dans l’automate.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 63
 En mode RUN-P (RUN-PROGRAM), l’automate exécute le programme. Dans ce mode, il est
possible de transférer un programme de l’ordinateur vers l’automate et de transférer un programme
de l’automate vers l’ordinateur. Il est aussi possible de modifier le programme dans l’automate.
NB : Attention, ce mode n’est réservé qu’aux professionnels !!!

Mettre le commutateur en position


STOP. Au dessus du commutateur, on
retrouve des voyants indiquant l’état de
divers paramètres du module de CPU.
Ces voyants sont montrés en gros
plan (voir la figure à côté).
Figure n° 117 : Signalisations existantes sur le boîtier « CPU » de l’automate « S7 314 »

La CPU est équipée des LED suivantes :


SF Rouge Erreur matérielle ou logicielle. Ce voyant s’allume si on constate un des défauts suivants :
 Défaillance de la pile (notre automate n’a justement pas de piles, donc le voyant sera
allumé) ;
 Défaillance de la carte mémoire ;
 Défaillance des périphériques.
BF Rouge Erreur de bus (seulement la CPU 313C-2 DP et 314C-2 DP)
BATFF Rouge Le voyant BATF est un voyant rouge de défaut de la pile (notre automate n’a justement pas
de piles, donc le voyant sera allumé).
DC5V Vert C’est un voyant vert signalant le bon fonctionnement de la tension de 5 Volts.
FRCE Orange Commande forcée active
RUN Vert CPU en RUN ; la LED clignote au démarrage à 2Hz ; en HALT à 0,5Hz
STOP Orange CPU en STOP respectivement en HALT ou au démarrage ; la LED clignote sur demande de
formatage à 0,5Hz et pendant le formatage lui-même, elle clignote à 2Hz

Tableau n° 15 : Signification de la signalisation existante sur le boîtier « CPU » de l’automate S7 314

Le chargement du programme dans l’automate se fait de la façon suivante :


1) Retourner au SIMATIC manager et sélectionner l’item Blocs. La fenêtre du SIMATIC manager
devrait ressembler à :

Figure n° 118 : Chargement d’un programme sur l’automate « S7 314 »

2) Sélectionner alors l’item OB1 (Si il y avait eu plusieurs items, on peut utiliser le raccourci
[CTRL] A pour les sélectionner tous). Ensuite, en utilisant l’item charger du menu déroulant
Système cible, transférer le programme dans l’automate.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 64
Figure n° 119 : Chargement d’un programme sur l’automate « S7 314 », (suite)

La fenêtre suivante apparaît :

Figure n° 120 : Chargement d’un programme sur l’automate « S7 314 », (suite)

3) Cliquer alors sur « OUI » pour écraser l’ancien programme. Pour le tester, mettre le sélecteur de
mode en « RUN ». Votre programme est en exécution. Appuyez sur le bouton de l’entrée « I1.0 »
et vérifier le voyant de la sortie « Q4.0 ». De même appuyez sur les boutons des entrées « I1.1 » et
« I1.2 » et observez le voyant de la sortie « Q4.7 ».

5.7.8 Comment faire une simulation en virtuelle d’un programme pour l’automate « S7 300 » ?
La simulation en virtuelle permet de tester un programme, sans pour cela relier le PC avec un hardware
API, il suffit d’activer le simulateur « S7-PLCSIM ». Soulignons qu’avant de lancer la simulation, il faut
s’assurer que le programme à tester est crée dans l'environnement « STEP7 » et sauvegardé, sinon on doit
commencer par la création du programme en question et ce en se basant sur les étapes de configuration &
programmation des automates « S7 300 », vues ci-dessus en § II.5, et sauvegarder ledit programme.

Les phases à suivre pour la simulation en virtuelle sont décrites ci-dessous.


1) On lance le simulateur en utiliser l'une des méthodes suivantes pour démarrer S7-PLCSIM :
- dans le menu Démarrer, sélectionnez la commande Simatic > STEP 7 > S7- PLCSIM Simulation
de modules ou
- dans la barre d'outils du gestionnaire de projets SIMATIC, cliquez sur le bouton
d'activation/désactivation de la simulation ou choisissez la commande Outils > Simulation de
modules (voir la figure suivante) :

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 65
Figure n° 121 : Lancement de la simulation en virtuelle d’un programme sur l’automate « S7 314 »

Lorsque « S7-PLCSIM » démarre pour la première fois, on voit d'abord la boîte de dialogue ci-dessous
et on clique sur « Annuler ».

Figure n° 122 : La boîte de dialogue du simulateur « S7-PLCSIM »

2) Dans le menu « Fichier », on sélectionne « Nouvelle CU ».

Figure n° 123 : Choix de la nouvelle CPU dans la boîte de dialogue du simulateur

3) Dans le menu « Insertion », elles doivent être insérées toutes les « Entrées » et « Sorties » qui ont été
utilisées dans le programme à tester. « Mémento », « Temporisation » et « Compteur » peuvent
également être affichés (  Insertion  Entrée ) ; (Insertion  Sortie) ; …

Figure n° 124 : Insertion des entrées / sorties utilisées pour la simulation

 Si le voyant « SF » est allumé, c’est qu’il y a un problème au niveau du système (System Failure),
problème matériel ou software (voir le tableau n° 15) !

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 66
 Si le voyant « DP » est allumé, c’est qu’il existe un problème de communication dans le réseau !
 Si le voyant « DC » est allumé, c’est que l’alimentation est bonne, elle fournit 24VC à la CPU.

En plus, nous avons trois choix de fonctionnement de l’automate : « RUN-P », « RUN » et « STOP »,
(pour plus de détails consultez la partie correspondante en § II 5.7.7). Quant au bouton « MRES », il
permet la mise à « 0 » des images des entrées / sorties de tout le programme.

Figure n° 125 : Insertion des entrées / sorties utilisées pour la simulation, suite

NB : Les adresses souhaitées, ici « IB 0 » et « QB 4 », doivent être déclarées et le mode de


présentation, ici « Bits », précisé (IB 0  Bits ; QB 4  Bits).

4) Pour garder la fenêtre du simulateur en avant plan et ne pas la perdre de l’écran, dans l’écran ci-dessus,
on appuie sur la punaise : ;
5) On charge le programme dans le simulateur de la façon suivante : on ouvre le bloc à charger, dans
notre cas, nous avons un seul bloc qui est « OB1 ». On ouvre « OB1 » et après, on clique sur l’icone
charge : (voir la figure ci-dessus).

Figure n° 126 : Chargement du programme dans le simulateur

NB : On doit voir en bas le message suivant « Bloque chargé », sinon il y a problème !

6) On visualise l’état de fonctionnement du programme de la façon suivante :


 Dès que le programme est chargé dans l'automate, on passe en mode « RUN » ou « RUN-P » pour
les professionnels ;
 On double clique sur le bloc « OB1 ». L’éditeur est alors lancé et le contenu du programme est
affiché. Pour visualiser l’état des variables dans l’automate, on clique sur l’icône de la paire de
lunette : (voir la figure ci-dessous).

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 67
Figure n° 127 : Visualisation d’un programme sur l’automate « S7 314 »

Un élément actif est dessiné avec un trait vert gras. Un élément inactif est dessiné avec un trait bleu
pointillé. Appuyez sur les boutons et vérifiez les changements d’état à l’écran :
 Notez l’indication du mode de fonctionnement sur la ligne d’état au bas de l’écran ;
 Mettre l’automate en mode STOP et regarder le changement de mode sur la ligne d’état ;
 Remettre l’automate en mode RUN.
Une troisième façon de visualiser est
d’utiliser l’item « Visualiser/forces des
variables » du menu déroulant « Système
cible » du logiciel STEP7 :

Figure n° 128 : Visualisation d’un programme sur l’automate « S7 314 », (suite)

En cliquant sur cet item, une fenêtre s’ouvre alors :

Figure n° 129 : Visualisation d’un programme sur l’automate « S7 314 », (suite)

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 68
Il vous suffit alors de spécifier les variables dont il faut surveiller l’état. Inscrivez donc dans la colonne
« Opérande » le nom des variables à surveiller (les autres champs se remplissent automatiquement) :

Figure n° 130 : Visualisation d’un programme sur l’automate « S7 314 », (suite)

Pour voir apparaître la valeur actuelle des paramètres, cliquez sur l’icône de la paire de lunette. La
valeur logique apparaît sous le format 2#0 ou 2#1. Le préfixe 2# indique simplement que la valeur en
suffixe est une valeur binaire (en base 2). Fermer toutes les fenêtres et sortir du « SIMATIC
Manager ».

6° Présentation succincte de l’automate programmable « S7-400 »


Les automates « S7-400 » sont développés spécialement pour les
installations fiables et de taille importante. Ils sont conçus à la fois pour
l’industrie manufacturière et le génie des procédés. Ils trouvent leurs
applications dans tous les secteurs tels que les industries automobiles,
papetières, agro-alimentaires, chimiques et pétrolières, agro-alimentaires,
traitement des eaux et des déchets et bien d’autres encore. En outre, ils
conviennent bien pour des tâches gourmandes en données dans l'industrie
des ‘process’ et ils sont aussi gérés, comme les API « S7-300 », par le
logiciel de programmation SIMATIC Manager.
Parmi leurs caractéristiques, nous pouvons citer ce qui suit : Figure n° 131 : API « S7-400 »

 Les API « S7-400 » permettent d’augmenter la productivité des installations via des performances, au
niveau : des vitesses de traitement (qui sont élevées et les temps de réponse déterministes), du bus
interne (qui est parallèle et plus rapide), des ressources de communication (qui sont élevées), du
multitraitement (qui permet de fractionner les tâches et les processus), ... ;
 Ils permettent d’augmenter la flexibilité via une extensibilité modulaire centralisée et distribuée ; une
performance élevée de la communication et des interfaces intégrées ;
 Ils permettent aussi la modification de la configuration même en mode RUN (CiR), ce qui permet
d'effectuer des modifications matérielles sur ces automates même en cours de fonctionnement !
 Ils assurent des fonctions intégrées puissantes de diagnostic du système ainsi que des fonctions
configurables de diagnostic de processus, ...

7° Présentation succincte de l’automate programmable « S7-1200 »


L'automate SIMATIC S7-1200 est un mini-automate modulaire utilisé pour les petites et moyennes
performances. Il existe un éventail complet de modules pour une adaptation optimisée à la tâche
d'automatisation.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 69
Ce type d’automates est composé d’une alimentation électrique, d'une
CPU et de modules d’entrées/sorties pour les signaux numériques et
analogiques. Le cas échéant, des processeurs de communication et des
modules fonctionnels sont ajoutés pour des tâches spéciales comme la
commande de moteurs pas à pas.
L’API « S7-1200 » est géré aussi par le logiciel de programmation
SIMATIC Manager. Figure n° 132 : API « S7-1200 »

8° Présentation succincte de l’automate programmable « S7-1500 »


L’automate « S7-1500 » est conçu pour l'automatisation des
machines et des installations dans la gamme moyenne à forte
puissance. Il dispose d'une grande diversité de fonctions intégrées
(Motion Control, pour la commande de mouvement et
l'asservissement de position ; Security, pour une protection maximale
des installations et Safety, pour la réalisation simple d'applications
de sécurité). En outre, les performances de ce type d’automates sont
élevées, citons à titre d’exemple ce qui suit :
Figure n° 133 : API « S7-1500 »

 La rapidité de traitement des signaux garantit des temps de réaction extrêmement courts et une haute
qualité de régulation. Le temps de réaction de borne à borne est inférieur à 500µ et le temps de
traitement des instructions binaires peut descendre en dessous de 10 ns selon la CPU utilisée.
 Les CPU 1511 et 1513 sont dotées de deux interfaces « Profinet » et la CPU 1516, de trois : les deux
premières interfaces sont destinées à la communication avec le niveau terrain, la troisième, à
l'intégration au réseau d'entreprise. Profinet IO IRT autorise des temps de réaction définis et un
comportement haute précision de l'installation.
 Un serveur Web est en outre intégré pour permettre l'interrogation à distance des données système, du
processus ou du diagnostic.
 Le concept Security Integrated s'étend de la protection des blocs à la vérification de l'intégrité de la
communication. Il permet à l'utilisateur de sécuriser ses applications. Des mécanismes spéciaux
permettent enfin de détecter toute modification des données d'ingénierie afin de protéger, par exemple,
les données transmises à l'automate contre les manipulations non autorisées.
 La CPU Simatic S7-1500 peut être étendue jusqu'à 32 modules par châssis centralisé et l'utilisateur
peut composer librement sa configuration en fonction des besoins spécifiques de sa tâche
d'automatisation.

 Le diagnostic système intégré du Simatic S7-1500 offre un ensemble complet de fonctions de


diagnostic sans aucune programmation supplémentaire. Celle-ci est remplacée par une simple
configuration. Le concept d'affichage a été standardisé, les messages, comme ceux générés par les
entrainements ou l'apparition de défauts, apparaissent sur l'afficheur de la CPU en texte clair et sont
visualisés de manière identique sur tous les appareils dans l'outil d'ingénierie TIA Portal, pupitre
opérateur (IHM), serveur Web. Autre détail visuel très pratique, l'affectation, à l'échelle des bornes
aux repérages des LED qui permettent non seulement de gagner du temps lors de la mise en service,
des tests, du diagnostic ou en cours de fonctionnement mais aussi d'identifier rapidement et avec
précision la voie concernée en cas de défaut.

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 70
NB : En annexe, est donnée une documentation du groupe Siemens, relative aux automates
programmables.

III° Références Bibliographiques

 Diverses documentations du groupe « Siemens »

Support de cours sur les automates programmables « Siemens », Professeur M. TAHIRI, ENSMR (ex ENIM), Rabat - Maroc page : 71