Documents de formation T I A Page 1 sur 47 Annexe I
Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Document de formation pour une solution complte dautomatisation Totally Integrated Automation (T I A)
Annexe I Base de la programmation dAPI avec SIMATIC S7-300
Automation and drives - SCE
Documents de formation T I A Page 2 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Ce document a t dit par Siemens A&D SCE (Automatisierungs und Antriebstechnik, Siemens A&D Cooperates with Education) des fins de formation. Siemens ne se porte pas garant de son contenu.
La communication, la distribution et lutilisation de ce document sont autorises dans le cadre de formation publique. En dehors de ces conditions, une autorisation crite par Siemens A&D SCE est exige ( M. Knust: E- Mail: michael.knust@hvr.siemens.de). Tout non-respect de cette rgle entranera des dommages et intrts. Tous les droits, ceux de la traduction y compris, sont rservs, en particulier dans le cas de brevets ou de modles dposs.
Nous remercions lentreprise Michael Dziallas Engineering et les enseignants dcoles professionnelles ainsi que tous ceux qui ont particip llaboration de ce document.
Automation and drives - SCE
Documents de formation T I A Page 3 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2. Structure et fonction dun API ...................................................................... 6
2.1 Catgorie de signaux en technique de rgulation....................................... 6 2.1.1 Signaux binaires ............................................................................................. 6 2.1.2 Signaux analogiques ....................................................................................... 8
2.2 Format de nombre........................................................................................ 10 2.2.1 Systme dcimal ............................................................................................ 10 2.2.2 Systme dual ................................................................................................. 11 2.2.3 Code BCD (Code 8-4-2-1) ................................................................................ 11 2.2.4 Systme hexadcimal ..................................................................................... 12 2.2.5 Reprsentation des systmes de nombre.......................................................... 13 2.2.6 Rgles de conversion ...................................................................................... 14
2.3 Notions du monde de linformatique ............................................................ 16 2.3.1 Bit .......................................................................................................... 16 2.3.2 Octet .......................................................................................................... 16 2.3.3 Mot .......................................................................................................... 16 2.3.4 Mot double..................................................................................................... 17 2.3.5 Adresse de bit ................................................................................................ 17 2.3.6 Adresse doctet .............................................................................................. 17 2.3.7 Adresse de mot .............................................................................................. 18 2.3.8 Adresse de mot double.................................................................................... 18
2.4 Structure dun API ........................................................................................ 19
2.5 Fonctionnement de base dun API ............................................................... 21 2.5.1 Le module central CPU.................................................................................... 21 2.5.2 Le systme bus ........................................................................................... 22 2.5.3 Le module dalimentation en courant ................................................................. 23 2.5.4 Mmoire programme ....................................................................................... 23 2.5.5 RAM .......................................................................................................... 23 2.5.6 Memory Card (Flash- EPROM)......................................................................... 23 2.5.7 Micro Memory Card (MMC).............................................................................. 24 2.5.8 Retirer et enficher des cartes mmoire (Memory Card et MMC)........................... 24
3.5 Configurer et paramtrer.............................................................................. 39
3.6 Linstruction de commande.......................................................................... 40 3.6.1 Partie Opration.............................................................................................. 40 3.6.2 Partie Oprande.............................................................................................. 42
Documents de formation T I A Page 5 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
1. AVANT-PROPOS
Lannexe I est le pr-requis pour le traitement du module Fondements de la programmation STEP 7.
Objectif : Les automates mmoire programmable, ou API , se sont aujourdhui imposs comme la partie centrale de tout automate. Avec ces commandes, les tches dautomatisation peuvent tre excutes conomiquement suivant chaque problmatique.
S P S CAL CUL ER SERVI R ET VI SUALI SER SI GNALER ET PROTOCOLER REGUL ER COMMANDE R
On donnera dans ces documents un aperu sur le systme dautomatisation SIMATIC S7-300 et le logiciel de programmation correspondant STEP 7. Pr-requis : Aucun pr-requis particulier nest ncessaire pour ltude de cette annexe, car elle traite elle-mme des bases.
Systme de bus industriels 2- 3 jours Modules D Visualisation des processus 2- 3 jours Modules F Langages de programmation 2- 3 jours Modules C Communication IT avec SIMATIC S7 1- 2 jours Modules E Programmation sur STEP 7 Notions de base 2 - 3 jours Modules A Simulation de systmes avec SIMIT SCE 1- 2 jours Modules G Fonctions tendues de la programmation STEP 7 2- 3 jours Modules B Automation and drives - SCE
Documents de formation T I A Page 6 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Automation and drives - SCE
Documents de formation T I A Page 7 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2. STRUCTURE ET FONCTION DUN API La commande a pour tche de mener des oprations indivuelles dune machine ou dun dispositif daprs un droulement prdfini de fonctions dpendant de signaleurs.
2.1 CATEGORIE DE SIGNAUX EN TECHNIQUE DE REGULATION Les signaux lectriques se trouvant aux entres et sorties peuvent tre fondamentalement diviss en deux groupes distincts :
Signaux binaires Signaux analogiques
2.1.1 SIGNAUX BINAIRES Les signaux binaires peuvent seulement prendre deux tats de signal. Il sagit de :
Etat de signal 1 = Tension disponible = par ex. Interrupteur ferm Etat de signal 0 = Tension indisponible = par ex. Interrupteur ouvert
Automation and drives - SCE
Documents de formation T I A Page 8 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
En technique des commandes, on utilisera souvent une tension continue de 24V comme Tension de commande . Un niveau de tension de + 24V sur une borne dentre correspond ainsi ltat de signal 1 pour cette entre. De la mme manire, 0V correspond ltat du signal 0. En plus de ltat du signal, le classement logique des capteurs est aussi important. On doit savoir pour le capteur sil sagit dun contact ouverture ou dun contact fermeture. Un contact ouverture dlivre sil est actif, cest- -dire lorsquil est actionn, ltat de signal 0. On dsigne ce comportement commutateur par actif 0 ou actif bas (low). De la mme manire, un contact fermeture qui est actif 1 / actif haut (high) dlivre un signal 1 lorsquil est actionn. En gnral, les signaleurs sont des actifs 1. Une application typique pour un capteur actif 0 est celle du bouton darrt durgence. Un bouton darrt durgence est toujours conducteur en tat non actionn (bouton de secours non appuy), cest--dire quil dlivre lentre connecte le signal 1 (Fil rupture de scurit). Si laction du bouton darrt durgence doit entraner une raction dfinie (par exemple, celle de fermer tous les clapets), alors celle-ci doit tre dclenche par ltat de signal 0.
Cases binaires : Un signal binaire peut donc prendre seulement les deux valeurs (tats de signal) 0 ou 1. Un tel signal est aussi dsign sous le nom de binaire numrique et prend le nom de bit en langage technique. Plusieurs signaux binaires regroups engendrent un signal numrique suivant un ordre dfini. Alors quun signal binaire permet seulement la prise en compte dune grandeur deux valeurs (par ex. porte ouverte / porte ferme), on peut, par la reprsentation de cases binaires, construire par ex. un nombre ou un chiffre comme information numrique. Le regroupement de n cases binaires permet la reprsentation de 2n combinaisons diffrentes.
On peut ainsi par ex. avec 2 cases binaires soit 2x2 reprsenter 4 informations diffrentes :
0 0 Information1 (par ex. les deux interrupteurs sont ouverts) 0 1 Information2 (Commutateur 1 ouvert / Commutateur 2 ferm) 1 0 Information3 (Commutateur 1 ferm / Commutateur 2 ouvert) 1 1 Information4 ( les deux interrupteurs sont ferms)
Automation and drives - SCE
Documents de formation T I A Page 9 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.1.2 SIGNAUX ANALOGIQUES Contrairement un signal binaire, qui peut seulement prendre les deux tats de signal Tension disponible +24V et Tension indisponible 0V, les signaux analogiques peuvent prendre de nombreuses valeurs lintrieur dun domaine donn. Lexemple typique de capteur analogique est le potentiomtre. Selon la position du curseur sur le potentiomtre, on peut lui faire prendre une rsistance quelconque en-dessous de sa rsistance maximale.
Exemples de grandeurs analogiques en technique des rgulations :
n Temprature -50 ... +150C n Dbit 0 ... 200l/min n Nombre de tours 500 ... 1500 U/min n etc.
Ces caractristiques physiques sont converties en tensions lectriques, courants ou rsistances laide dun convertisseur de mesure. Si lon doit dterminer par exemple un nombre de tours, on peut convertir un domaine de nombre de tours de 500 1500 tours/min dans un domaine de tension de 0 +10V par un convertisseur de mesure. Si lon mesure un nombre de tours de 865 tours/min, le convertisseur de mesure nous donne ainsi une tension de + 3,65 V.
36 1000 10V 10tr : 1000 tr/min = 0,01 V/U/min 365 tr/min x 0,01 tr/U/min = 3,65 0 V +10 50 86 1500 Tr/min Automation and drives - SCE
Documents de formation T I A Page 10 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Automation and drives - SCE
Documents de formation T I A Page 11 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Si des donnes analogiques sont traites par un SPS, la valeur de tension/courant/impdance lue doit tre convertie en une information numrique. Cette conversion est connue sous le nom de conversion analogique/numrique (CAN (A/D)). Ceci signifie quune valeur de tension valant par exemple 3,65V doit tre traduite dans une srie de chiffres binaires comme information. Plus on utilise de chiffres binaires pour la reprsentation numrique, meilleure est la rsolution. Si on avait par exemple un seul bit disposition pour le domaine de tension 0 ... +10V, on pourrait seulement dire que la tension mesure se trouve dans le domaine 0 .. +5V ou dans +5V ... +10V. Avec 2 bits, on pourrait dj diviser le domaine en 4 sous domaines individuels, soit 0 ... 2,5 / 2,5 ... 5 / 5 ... 7,5 / 7,5 ... 10V. Les convertisseurs A/N (A/D) usuels convertissent avec 8 ou 11 bits en technique des rgulations. Les convertisseurs 8 bits ont 256 domaines lmentaires et les 11 bits une rsolution de 2048 domaines lmentaires.
11 10V: 2048 = On peut dtecter des diffrences de tension infrieures <5mV 0 204 0A/0V 20mA/10 Automation and drives - SCE
Documents de formation T I A Page 12 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.2 FORMAT DE NOMBRE Pour le traitement des adresses de cellules mmoires, dentres, de sorties, de dures, de mmoires internes etc, cest le systme dual qui est employ, et non pas le systme dcimal.
2.2.1 SYSTEME DECIMAL Pour comprendre le systme dual, il est dabord ncessaire dtudier le systme dcimal. On souhaite reprsenter ici le nombre 215. Le 2 y reprsente les centaines, le 1 les dizaines et le 5 les units. En fait, on doit crire 215 comme ceci : 200+10+5. Si lon crit lexpression 200+10+5, comme reprsent ci-dessous, laide de puissances de 10, alors on constate que chaque chiffre lintrieur dune case est attribu une puissance de 10.
Chaque chiffre du nombre dcimal est attribu une puissance de 10.
Automation and drives - SCE
Documents de formation T I A Page 13 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.2.2 SYSTEME DE NOMBRE DUAL Le systme de nombre dual ne connat que les chiffres 0 et 1, qui sont facilement reprsentables et valuables en traitement des donnes. Il sagit donc dun systme de nombre binaire. Les valeurs case dun nombre dual sont ordonnes suivant des puissances de 2, comme reprsentes ci-dessous.
Chaque chiffre lintrieur dun nombre dual est attibu une puissance de 2.
2.2.3 CODE BCD (CODE 8-4-2-1) Pour pouvoir reprsenter de grands nombres de faon claire, on utilise souvent le code BCD (Binaire Cod Dcimal). Le nombre dcimal est reprsent laide du systme de nombre dual. Le chiffre dcimal reprsentable le plus haut est le 9. On a besoin pour la reprsentation du nombre 9 en case de puissance de 2 jusqu 2 3 , soit 4 cases au total.
Comme la reprsentation du plus grand chiffre dcimal requiert 4 cases binaires, on utilise pour chaque chiffre dcimal une unit de 4 cases, que lon dnomme une ttrade. Le code BCD est donc un code 4 bits.
Automation and drives - SCE
Documents de formation T I A Page 14 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Chaque nombre dcimal est cod de manire lmentaire. Le nombre 285 par ex. se compose de 3 chiffres dcimaux. Chaque chiffre dcimal est reprsent dans le code BCD en unit de 4 cases (ttrade).
2 8 5 0010 1000 0101
Chaque chiffre dcimal est cod part et reprsent par une ttrade.
2.2.4 SYSTEME DE NOMBRE HEXADECIMAL Le systme de nombre hexadcimal appartient aux systmes des cases de valeurs. Chaque case emploie une puissance du nombre 16. Le systme hexadcimal est donc un systme en base 16. Chaque case lintrieur dun nombre hexadcimal est attribue une puissance de 16. On a besoin au total de 16 chiffres, 0 compris. Pour les chiffres de 0 9, on emploi le systme dcimal, pour les chiffres de 10 15, on emploie les lettres A, B, C, D, E et F.
Chaque case lintrieur dun nombre hexadcimal est attribue une puissance de 16.
Automation and drives - SCE
Documents de formation T I A Page 15 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Documents de formation T I A Page 16 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.2.6 REGLE DE CONVERSION La conversion entre les diffrents systmes de reprsentation est base sur des rgles simples. Celle- ci doit tre contrle par lutilisateur du SPS puisquelle va tre souvent employe dans le cadre de cette technique. Pour identifier le systme de nombre sur lequel est reprsent un nombre, on va employer un indice se situant droite du nombre. On utilise D pour dcimal, B pour binaire (dual) et H pour hexadcimal. Cette identification est souvent ncessaire car une suite de chiffres reprsente une valeur compltement diffrente suivant le systme de nombre considr. Ainsi, par exemple 111 en dcimal correspond la valeur 111 D (cent onze), en dual, 111 B correspond la valeur dcimale 7 (1x2 0 + 1x 2 1 + 1x2 2 ) et le nombre hexadcimal 111 H correspond la valeur dcimale 273 (1x16 0 + 1x16 1 + 1x 16 2 ).
Conversion Dcimal Dual
Les nombres dcimaux entiers seront diviss par la base 2 jusqu obtenir le rsultat zro. Les restes (0 ou 1) successivement obtenus lors des divisions donnent le nombre dual. Il faut faire attention lordre des restes. Le reste de la premire division est le premier bit en partant de la droite (bit de poids faible).
Par ex. : On doit convertir le nombre dcimal 123 en son nombre dual.
Reste Reste Reste Reste Reste Reste Reste Transposer dans le sens des aiguilles dune montre !
Documents de formation T I A Page 17 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Conversion Dcimal Hexadcimal
Cette conversion seffectue exactement comme la Dcimal Dual. La diffrence se situe au niveau de la base employe : ici la base 16 (au lieu de la base 2 dans lautre cas). On doit donc diviser par 16 au lieu de diviser par 2.
Par ex, le nombre dcimal 123 doit tre converti en sa reprsentation hexadcimale.
Reste Reste Transposer dans le sens des aiguilles dune montre !
Vrification : 7 B 7x16 1 + 11x16 0
112 + 11 = 123
Conversion Dual Hexadcimal
Pour la conversion dun nombre dual en un nombre hexadcimal, on pourrait tout dabord dterminer la valeur dcimale du nombre (Addition des valeurs). On pourrait ensuite sucessivement diviser ce nombre dcimal par 16 afin de le convertir en hexadcimal. Mais il y a aussi la possibilit de convertir directement un nombre dual en sa valeur hexadcimale correspondante. Pour cela, on va tout dabord rpartir le nombre dual en groupes de 4, en commenant par la droite. Chacun de ces groupes de 4 donne ensuite un nombre hexadcimal. Si ncessaire, on complte les bits manquants du groupe le plus gauche par des zros. On veut par ex. convertir le dual 1111011 directement en un nombre hexadcimal. 1 1 1 1 0 1 1B 1 0 1 1 0 1 1 1 0x2 3 + 1x2 2 + 1x2 1 + 1x2 0 1x2 3 + 0x2 2 + 1x2 1 + 1x2 0 7 B H
Automation and drives - SCE
Documents de formation T I A Page 18 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 2.3 NOTIONS INFORMATIQUES On emploiera souvent des termes issu du vocabulaire du traitement des informations et des donnes tels que BIT, OCTET et MOT dans le cadre du travail avec des automates mmoire programmable.
2.3.1 BIT Bit est labrviation de chiffre binaire. Le bit est la plus petite unit dinformation binaire (base 2), il peut prendre ltat de signal "1" ou "0".
2.3.2 OCTET On utilise la notion dOCTET pour une unit compose de 8 chiffres binaires. Un octet a donc une taille de 8 bits.
2.3.3 MOT Un mot est une suite de chiffres binaires qui entretiennent une relation dfinie et qui sont vus comme une unit. La longueur dun mot correspond 16 chiffres binaires. Avec des mots, on peut par exemple reprsenter des :
Duals, Caractres Instructions de commande pour un contrle
Un mot a donc la taille de 2 octets ou encore de 16 bits. S i g n a l z u s t a n d B Y T E 0 0 0 0 1 1 1 1 ETAT SIGNAL 0 Pas de tension
24
0 1 tension
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 M O T 1 Octet 1 Octet Etat de signal OCTET Automation and drives - SCE
Documents de formation T I A Page 19 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.3.4 DOUBLE MOT Un double mot a une longueur de mot de 32 chiffres binaires.
Un double mot a donc la taille de 2 mots, de 4 octets, ou encore de 32 bits.
Dautres units existent : Kilobit ou Kilooctet pour 2 10 , donc 1024 bits respt. 1024 octets et le Megabit ou Megaoctet pour 1024 Kilobit respt. 1024 Kilooctet.
2.3.5 ADRESSE DE BIT Afin quon puisse accder aux bits lmentaires, chaque bit dun octet est attribu un chiffre, ladresse de bit. On numrote ainsi ladresse du bit le plus droite 0. En incrmentant de 1 vers la gauche, on numrote les autres bits, pour arriver ladresse de bit 7 tout gauche.
2.3.6 ADRESSE DOCTET Mme les octets lmentaires reoivent des numros, les adresses doctet. De plus, loprande est aussi identifi, afin que par ex. EB 2 reprsente loctet dentre 2 ou que AB 4 reprsente loctet de sortie 4. Les bits lmentaires sont adresss de manire unique par la combinaison dadresse de bit et doctet. Ladresse de bit est spare de ladresse doctet par un point. A droite du point se trouve ladresse de bit, gauche de celui-ci ladresse de loctet.
7 6 5 4 3 2 1 0 B i t a d r e s s e Adresse de bit E 0 . 7 E 0 . 6 E 0 . 5 E 0 . 4 E 0 . 3 E 0 . 2 E 0 . 1 E 0 . 0 B y t e a d r e s s e 1
B y t e Adresse doctet 1 octet Automation and drives - SCE
Documents de formation T I A Page 20 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 2.3.7 ADRESSE DE MOT Le numrotage des mots donne ladresse de mot.
Indication : En employant des mots, par ex. des mots dentres (EW), des mots de sortie (AW), des mots de mmoire interne (MW) etc., ladresse du mot est toujours la plus petite adresse des 2 octets correspondants. Par ex, un mot se composant de EB2 et de EB3, a pour adresse EW2.
Indication : Lors du traitement de mot, il faut faire particulirement attention : par ex. le mot dentre 0 et le mot dentre 1 se recoupent dans un octet. En outre, on commence compter les bits en commenant par la droite. Par ex., le bit 0 de EW1 est E2.0. Le bit 1 de E2.1. ... Le bit 7 de E 2.7. Le bit 8 de E1.0. ... Le bit 15 de E1.7. Entre les bits 7 et 8, il y a ainsi un saut .
2.3.8 ADRESSE DE DOUBLE MOT Le numrotage des doubles mots donne ladresse des doubles mots.
Indication : En employant des mots doubles, par ex ED, AD, MD etc. ladresse de mot double est toujours ladresse de mot la plus petite des deux mots correspondants.
ED0 Adresse de double mot EW0 EW2 EB0 EB1 EB2 EB3 EW1 EW0 EW2 EB0 EB1 EB2 EB3 EW1 Adresse de mot Automation and drives - SCE
Documents de formation T I A Page 21 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.4 STRUCTURE DUN API Les automates commande programmable sont des appareils fabriqus en srie, qui sont conus de manire gnrique. Tout ce qui est ncessaire la technique des rgulations, les lments logiques, les fonctions mmoire, les temporisateurs, les compteurs etc est intgr lorigine dans lappareil par le constructeur. Ces lments, pour la programmation, feront partie de la commande fonctionnelle. Les appareils de commande sont proposs en diffrentes units de fonction. Elles se diffrencient notamment par le nombre possible de :
Entres et sorties, Espaces mmoire, Compteurs, Dures, Fonctions mmoire interne, Fonctions spcialises, par la vitesse de travail, et la catgorie de traitement du programme.
Les appareils de commande importants sont organiss en blocs individuels de faon modulaire. Avec ces systmes modulaires vous pouvez adapter vos applications pratiques partir des quipements de base, en assemblant des systmes SPS. Pour les petites tches dautomatisation, des appareils de commande conus de manire compacte sont proposs. Ils se prsentent sous la forme dunits fermes avec un nombre fixe prdfini dentres et de sorties.
Les lments suivants appartiennent un automate mmoire programmable :
SPS Appar ei l cont r l eur / l ampe d aver t i ssement Aut omat e Si gnal eur
Automation and drives - SCE
Documents de formation T I A Page 22 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 Lautomate se compose pour lessentiel de :
Modul e c e nt r a l e pr oc e s s e ur Modul es d ent r e/ sor t i e M mo i r e p r o g r a mme Sy s t me bus Modul e d al i ment at i on cour ant Aut o ma t e Aut o ma t e
Conception dune commande mmoire programmable :
Strom ver- s orgung s- baugruppe Zentralbaugruppe Pr o gra mmsp eich er P rozessor Eingab e- baugrupp e Ausgabe- baugruppe Signalg eber Stromversorgung fr Signalgeber S t r omvers orgun g fr S t ellgerte/ Leuchtmelder Stellgerte / Leuchtmelder
Alimentation courant pour signaleur Signaleur Alimentation courant pour appareil de contrle Lampe davertissement Appareil de contrle Lampe davertissement Module alim courant Module sortie Module entre Module central Mmoire programme
Automation and drives - SCE
Documents de formation T I A Page 23 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.5 FONCTIONNEMENT DE BASE DUN API
2.5.1 LE MODULE CENTRAL CPU La tension venant du signaleur est connecte sur la barrette de connexion du module dentre. Dans la CPU (Module central), le processeur traite le programme se trouvant dans la mmoire et interroge les entres de lappareil pour savoir si elles dlivrent de la tension ou pas. En fonction de cet tat des entres et du programme se trouvant en mmoire, le processeur ordonne au module de sortie de commuter sur le connecteur de la barrette de connexion correspondante. En fonction de ltat de tension sur les connecteurs des modules de sortie, les appareils positionner et les lampes indicatrices sont connects ou dconnects.
Unit centrale (CPU) de lAPI:
000 UE 1.0 001 UE 1.1 002 = A 0.0 003 OE 2.0 509 OE 3.2 510 =A 4.0 BE Steuerwerk Anweisungs- Register Merker Interne Zeiten Interne Zhler Prozeabbild fr digitale und analoge Ein- und Ausgnge +1 Peripheri ebus ( Busmodul ) Eingabe digital und anl og Ausgabe digit al und analog Zeit-, Zhl- und Grenzwert- baugruppen
Mmoire interne Tempos internes Compteurs internes Registre dinstructions Unit de contrle Bus de priphrie (module de bus) Image du processus pour les entres/sorties analogiques et numriques Entre num. et analogique Sortie num. et analogique Modules temps - compteur - limite
Automation and drives - SCE
Documents de formation T I A Page 24 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 Le compteur dadresses interroge les instructions du programme mmoire les unes aprs les autres (srie) et provoque la transmission dinformations dpendantes du programme depuis la mmoire programme au registre dinstructions. On appelle usuellement les mmoires dun processeur les registres. Le systme de commandes obtient ses instructions du registre dinstructions. Pendant que le systme de commande traite les instructions en cours, le compteur dadresse dcale la prochaine instruction dans le registre dinstruction. A la transmision du statut des entres dans limage des processus des entres (PAE) se succdent les oprations logiques, la mise en place des membres temporels, les compteurs, les accumulateurs et la transmission du rsultat de lopration logique (VKE) limage des processus des sorties (PAA). Si aprs lexcution du programme utilisateur, la fin du bloc (BE) est reconnue, alors la transmission de chaque statut a lieu depuis le PAA aux sorties. Le bus de priphrie excute lchange de donnes entre le module central et la priphrie. Les modules numriques dentre/sortie, les modules analogiques dentre/sortie et les modules de temporisation, de compteur et de frontire appartiennent la priphrie.
2.5.2 SYSTEME A BUS Le systme bus est un cble collecteur de signaux pour la transmission. Lchange de signaux dans les automates seffectue ainsi entre le processeur et les modules dentre et de sortie par un systme bus de processus. Le bus est compos de 3 cbles de signaux parallles :
Bus d a dr e s s e Bu s d e c o mma n d e Bu s d e d o n n e s S y s t me b u s
- Les modules lmentaires correspondent aux adresses par le bus dadresse.. - Avec le bus de donnes, les donnes sont transfres par exemple des modules dentre vers les modules de sortie. - Les signaux de commande et de surveillance du droulement des fonctions lintrieur de lappareil dautomatisation sont transmis par le bus de commande. Automation and drives - SCE
Documents de formation T I A Page 25 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.5.3 LE MODULE DALIMENTATION EN COURANT Le module dalimentation en courant produit, depuis la tension secteur, la tension pour les modules lectroniques de lappareil dautomatisation. La valeur de cette tension vaut 24 Volts. Les tensions pour les signaleurs, les appareils de contrle et les lampes davertissement, qui marchent sous du 24 Volt, ncessitent un appareil secteur et un transformateur de commande.
2.5.4 MEMOIRE PROGRAMME Les lments mmoire sont des lments de conception, dans lesquels des informations sous la forme de signaux binaires peuvent tre stockes (mmorises). La mmoire programme est le plus souvent ralise en mmoire semi-conducteur. Une mmoire se compose de cellules de mmoire au nombre de 512, 1024, 2048 etc. Il est courant dexprimer la capacit (cest--dire le nombre de cellules mmoire) de la mmoire programme en multiples de 1 K ( 1 K correspond ici 1024). Dans chaque cellule mmoire, on peut crire (programmer) une instruction de commande laide dun appareil programmable. Chaque lment binaire dune cellule mmoire peut prendre le signal dtat "1" ou "0".
2.5.5 RAM On dsigne par RAM une mmoire en criture et lecture, ralise par la technique des semi- conducteurs. Les diffrents emplacements mmoire sont identifis par des adresses, laide desquelles on peut accder ces espaces mmoire. Dans les cellules mmoires, on peut souvent crire des informations falcutatives. Les informations en sont extraites et ceci sans pour autant perdre le contenu de linformation. Les mmoires RAM sont pourtant volatiles, par exemple, les informations seront perdues en cas de coupure de la tension dalimentation. La mmoire RAM est efface lectriquement. Le programme interne et galement la mmoire de travail dun SIMATIC S7-300 sont prcisment de la mmoire RAM. La batterie de mmoire tampon, quil est possible de mettre en place dans le SPS, sert la scurisation de cette mmoire. Les nouvelles CPU compactes sont des exceptions ce systme. Dans celles-ci, les programmes ne sont plus stocks dans la RAM, mais dans des Micro Memory Card enfichables (MMC) (cf. chapitre 2.5.7). La mmoire de travail total y est mise en tampon. On na ainsi plus besoin de la batterie.
2.5.6 CARTE MEMOIRE (MEMORY CARD) (FLASH- EPROM) EPROM est labrviation pour mmoire morte EFFACABLE, PROGRAMMABLE. Le contenu de l EPROM est effaable dans sa totalit par la lumire ultra violet ou par une tension, et ensuite de nouveau programmable. Elle est ainsi bien adapte au transport de donnes sans perte. Dans le SIMATIC S7- 300, vous avez la possibilit de scuriser votre programme avec le PG sur une dnomme Memory Card (Flash-EPROM) et ainsi de remettre rapidement votre systme en fonctionnement aprs un manque de tension. Une tension de 5V est ncessaire pour effacer et crire sur cette Flash- EPROM. Cela peut donc se produire avec un PG ou avec STEP 7, si elle est branche la CPU. Automation and drives - SCE
Documents de formation T I A Page 26 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 2.5.7 CARTE MMOIRE MICRO (MICRO MEMORY CARD) (MMC) Dans les nouvelles CPU compactes, les programmes, qui taient avant stocks dans la mmoire RAM, sont dsormais enregistrs dans les Micro Memory Card (MMC) enfichables. La mmoire de chargement total se trouve sur cette Micro Memory Card (MMC). Les MMC existent avec des tailles de mmoire diffrentes. Ils servent la rception de blocs de code et de donnes ainsi que de donnes sytmes (Configuration, Liaisons, paramtre de modules, etc.). En outre, toutes les donnes de plannification dun projet peuvent tre stockes sur un MMC. La mmoire vive toute entire est ici galement mise en mmoire tampon. Par contre, ici, aucune batterie de mmoire tampon nest ncessaire. La MMC peut tre crite avec un PG ou, connecte dans la CPU, avec STEP 7.
Indication : Sil ny a pas de MMC branche sur la CPU, alors la CPU nest pas en mesure de marcher (il ny a pas de mmoire chargement disponible). Un fonctionnement nest possible quaprs le branchement dune MMC et un formatage.
2.5.8 RETIRER ET ENFICHER DES MEMORY CARD ET MICRO MEMORY CARD (MMC)
La CPU dtecte le fait de retirer et de brancher une carte mmoire (Memory Card) dans chaque tat de fonctionnement.
Droulement lors du dbranchement : 1. La CPU doit tre commute sur STOP. 2. Aucune fonction PG dcriture ne doit tre active (par ex. Le chargement de blocs) 3. Aprs le dbranchement de la carte mmoire, la CPU sollicite le formatage
Droulement lors du branchement : La connexion dune carte mmoire (Memory Card) avec le programme utilisateur correspondant se droule suivant les tapes suivantes : 1. Branchez la carte mmoire 2. La CPU sollicite le formatage 3. Confirmez le formattage 4. Dmarrez la CPU
Automation and drives - SCE
Documents de formation T I A Page 27 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.6 SYSTEME DAUTOMATISATION SIMATIC S7 SIMATIC S7 est une dsignation de produit de lentreprise SIEMENS et sapplique pour la srie actuelle des automates mmoire programmable. Cette famille de systmes SIMATIC S7 est un module de la solution complte dautomatisation pour les techniques de production et de processus : Totally Integrated Automation.
2.6.1 SIMATIC S7 - 300 Spectre modulaire : Les diffrentes catgories de modules suivantes forment, associes une CPU, la structure du SIMATIC S7-300 :
PS : IM : SM : FM : CP : Entre : - Envoyer DE/DA - Compteurs - Point point AC120/230V - Recevoir - DC 24V - Rgles - PROFIBUS DP/FMS Sortie: - Envoyer/Recevoir - AC 120/230V - Position DC 24V - Relais - Came - Etat - 2 A AE/AA - NC - 5 A - Tension - 10 A - Courant FM-ATB : - Rsistance - Technologie utilisateur
Thermolment (Plateforme MS-DOS/C)
Automation and drives - SCE
Documents de formation T I A Page 28 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 Une slection de CPU : On va maintenant lister des CPU adaptes des fins de formation. Il y a toutefois dautres CPU meilleur fonctionnement de qualit et il sort toujours de nouvelles CPU avec des puissances de calcul plus importantes. Celles-ci ne sont toutefois pas ncessaires pour traiter les programmes qui ne sont pas trop demandeurs en mmoire dans cette formation.
CPU 312 IFM CPU 313 CPU 314 IFM CPU 314 CPU 315 CPU315-2DP 2K Instructions 6Koctets Mmoire de travail 20Koctets mmoire charg. 4K Instructions 12 Koctets Mmoire de travail 20Koctets mmoire charg. 8K Instructions 24 Koctets Mmoire de travail 40Koctets mmoire charg. 8K Instructions 24 Koctets Mmoire de travail 40Koctets mmoire charg. 16K Instructions. 48 Koctets Mmoire travail 80Koctets mmoire charg. 16K Instructions. 48 Koctets Mmoire de travail 80K octets mmoire charg. 128 octets DE/DA 128 octets DE/DA 512 octets DE/DA 512 octets DE/DA 1024 octets DE/DA 1024 octets DE/DA 32 octets AE/AA 32 octets AE/AA 64 octets AE/AA 64 octets AE/AA 128 octets AE/AA 128 octets AE/AA 0,6 ms / 1K Commandes 0,6 ms / 1K Commandes 0,3 ms / 1 K Commandes 0,3 ms / 1K Commandes 0,3 ms / 1K Commandes 0,3 ms / 1K Commandes 1024 Bits mmoire interne 2048 Bits mmoire interne 2048 Bits mmoire interne 2048 Bits mmoire interne 2048 Bits mmoire interne 2048 Bits mmoire interne 32 Compteurs 64 Compteurs 64 Compteurs 64 Compteurs 64 Compteurs 64 Compteurs 64 Dures 128 Dures 128 Dures 128 Dures 128 Dures 128 Dures 10 DE/6DA embarqus, dont 4 DE pour des alarmes de processus ou des fonctions intgres Compteurs rapides EPROM 20Koctets intgr 20 DE/16DA embarqus, dont 4 DE pour des alarmes de processus ou des fonctions intgres Compteurs rapides 4 AI / 1AA embarqus Rsolution : 11Bits + signe EPROM 40Koctets intgr PROFIBUS DP integr Connexion (Matre / Esclave) Attribution des adresses paramtrables
Automation and drives - SCE
Documents de formation T I A Page 29 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 CPU compactes : Il y a galement un certain nombre de CPU compactes qui sont parfaitement adaptes la formation du fait de leurs conceptions plus compactes, leurs prix particulirement bon march et leurs interfaces de communication ventuelles intgres. Celles-ci sont comparables la fois dans leur fonctionnalit et dans leur maniement avec les CPU standards. Le tableau suivant prsente une slection de CPU compacts..
CPU 312C CPU 313C CPU 313C-2DP CPU 314C-2DP Dure de la commande (Binaire/flottant/rfrenc e) 0.2 / 4 / 40s 0.1 / 2 / 20s 0.1 / 2 / 20s 0.1 / 2 / 20s. Mmoire de travail 16 KB 32 KB 32 KB 48 KB Carte mmoire micro SIMATIC De 64 KB 4 MB De 64 KB 4 MB De 64 KB 4 MB De 64 KB 4 MB Priphrie embaque (On board) DE/DA AE/AA *PT100
Documents de formation T I A Page 30 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 Possibilit de conception dun SIMATIC S7 - 300
Emplacement Enfichage Local
Limage montre la structure maximale dune SIMATIC S7-300/CPU314. La conception permet la mise en place jusqu 32 modules (CPU 312IFM, CPU 312C et CPU 313 seulement 8 modules), pour chaque rack (Ligne) jusqu 8 modules.
En ce qui concerne les emplacements denfichage, on observera les rgles suivantes : Poste denfichage 1 : Alimentation courant PS (= Attribution fixe) Poste denfichage 2 : Module central CPU (= Attribution fixe) Poste denfichage 3 : Module coupl IM (= Attribution fixe) Poste denfichage 4-11 : Modules de signal SM, Modules de fonction FM et processeurs de communication CP (= Pas dattribution fixe)
Le bus est boucl entre les racks par les modules de connexion (IM 361). La connexion IMS reprsente lexpditeur, et lIMR le rcepteur. Les modules de connexion doivent tre mis en place aux emplacements denfichage donns. Dans les racks dextension, il faut aussi prvoir une alimentation courant supplmentaire. Comme variante bon march pour une conception biligne, on trouve le module de connexion IM 365 cbl de manire fixe avec lequel il ny a pas besoin dalimentation courant supplmentaire.
Les caractristiques suivantes de cbles entres les lignes sont disposition : - conception bi-ligne avec IM 365 1m max. - conception multiligne avec IM 361 de 10m max.
Les modules de fonction, par ex. SINUMERIK FM NC, peuvent tre attribus quelques priphries. De cette manire, un module FM a son propre domaine de priphrie et peut y accder rapidement. On appelle ce domaine de priphrie un segment local. Il existe un segment local par rack. Il nest donc plus possible daccder ces priphries par la CPU lorsque le systme est en marche. Automation and drives - SCE
Documents de formation T I A Page 31 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 Elments importants de lalimentation en tension et de la CPU :
Alimentation courant Carte mmoire ventuellement Modules de signaux Interface MPI Commutateur mode fonctionnement Connexion Rseau Commutateur MARCHE/ARRET Slection tension rseau LED de statut Batterie ventuellement
Indicateurs de statut et derreur de la CPU :
Indicateurs Signification Explication SF (rouge) Liste derreurs Les modules capables de diagnostiquer affichent ici une liste derreurs. BF (rouge) Erreur de bus (si disponible) Indique les perturbations du PROFIBUS DP BAF (rouge) Erreur de batterie Indique si la batterie mmoire tampon ne dlivre pas assez de tension ou carrment pas du tout DC5V (vert) Alimentation DC5V pour la CPU et le bus panneau arrire Indicateur pour lalimentation interne fonctionnelle 5V de la CPU FRCE (vert) Forages Indicateurs dtat de la CPU, dans les entres et les sorties par une fonction de test de forage de commande RUN (vert) Etat de fonctionnement RUN Clignote lors du dmarrage de la CPU Fixe lorsque la CPU est dans ltat Run STOP (orange) Etat de fonctionnement STOP Clignote lorsque le formatage est demand Fixe lorsque la CPU est ltat arrt Automation and drives - SCE
Documents de formation T I A Page 32 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 Concept de protection de la CPU: Chaque CPU possde un commutateur de mode de fonctionnement pour commuter entre les diffrentes catgories de fonctionnement. Celui-ci est la plupart du temps conu sous la forme dun commutateur cl, qui peut tre plac sur les modes de fonctionnement RUN et STOP. Les modes de fonctionnement suivants sont possibles :
Le programme est trait, toutes les fonctions PG sont autorises Le programme est trait, seules les fonctions PG en lectures sont autorises Le programme nest pas trait ; toutes les fonctions PG sont autorises Dans cette position, vous pouvez procder un formatage comme expliqu ci-dessous
Indication : Pour les CPU des sries CPU31xC, ce commutateur est conu sous forme dinterrupteur bascule. Le mode de fonctionnement Run protection de lecture manque dans ce cas. Ici aussi, les fonctions PG en criture sont autorises.
Le concept de protection pour la SIMATIC S7-300 vous permet de protger des parties dfinies du systme dautomatisation daccs non autoriss. Cela concerne : les CPU et tous les modules programmables tous les objets (comme par ex. les blocs)
Ces parties protger peuvent tre influences par les appareils PG ou B&B.
Le concept de protection de la CPU est rparti en trois niveaux de protection. Ce paramtrage de niveaux de protection dfinit ce qui est autoris pour un utilisateur : Etape 1 Position commutateur cl Run-P ou Stop : pas de protection, toutes les fonctions sont autorises. Etape 2 Position commutateur cl Run (Pas pour les CPU31xC !) : Les fonctions protges en criture, les fonctions en lecture sont autorises, par ex les fonctions de visualisation, les fonctions dinformations, le chargement depuis la CPU. Etape 3 Paramtrage par la configuration S7 (Protection par mot de passe). Seules sont autorises les fonctions de visualisation et dinformation si lutilisateur ne connat pas le mot de passe. Automation and drives - SCE
Documents de formation T I A Page 33 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Formatage de la CPU:
Avec le commutateur de mode de fonctionnement, on peut aussi procder au formatage de la CPU : Lindicateur STOP clignote pendant environ 3 secondes et sallume ensuite de nouveau : tout sest bien pass ; la CPU est formate Placez le commutateur de nouveau en position STOP et finalement remettez le sur la position MRES avant que 2 secondes ne se soient coules 3 Lindicateur STOP steint et aprs environ 3 secondes il sallume de nouveau. Dans les nouvelles CPU, attendre que lindicateur STOP sallume pour la deuxime fois. Important : Entre ltape 2 et ltape 3, il doit se passer 3 secondes max.. Placez le commutateur en mode MRES et maintenez le dans cette position (environ 3 secondes) jusqu ce que lindicateur STOP se rallume 2 Indicateur STOP sallume Placez le commutateur de mode de fonctionnement sur STOP. 1 Rsultat Excution Etape Automation and drives - SCE
Documents de formation T I A Page 34 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.7 TRAITEMENT DU PROGRAMME
2.7.1 MEMOIRE PROGRAMME Lors du traitement du programme, il y a deux possibilits diffrentes, dpendantes de lappareil de commande utilis et de la programmation. Le traitement de chaque instruction ncessite un certain temps (de lordre de la microseconde). On appelle dure de cycle, la dure dun (seul) traitement de toutes les instructions. Cest le temps dun cycle programme.
2.7.2 TRAITEMENT LINEAIRE DE PROGRAMME Lors de la programmation linaire, les instructions de lappareil de commande sont traites les unes aprs les autres, telles qucrites dans la mmoire programme. Si la fin du programme (BE) est atteinte, le traitement du programme recommence du dbut. On parle de traitement cyclique. La dure, ncessaire un appareil pour une itration de traitement, est appele dure de cycle. Le traitement linaire du programme est la plupart du temps utilis pour des commandes simples et pas trop volumineuses. Il peut tre ralis dans un seul OB.
, OB1 1. BE 2. 3. Automation and drives - SCE
Documents de formation T I A Page 35 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.7.3 TRAITEMENT STRUCTURE DU PROGRAMME On rpartit le programme dun ensemble volumineux de tches de commande en blocs de programmes petits, clairs, associs des fonctions. Cela prsente lavantage de pouvoir tester les blocs de manire individuelle et de les faire fonctionner ensemble par une fonction globale. Les blocs de programme doivent tre appels par des commandes dappel de blocs (Call xx / UC xx / CC xx). Si la fin du bloc est reconnue, le programme qui a appel le bloc est de nouveau trait.
Call FB1, DB10
UC FC2
OB = Bloc dorganisation FB = Bloc de fonctions FC = Fonction DB = Bloc de donnes Instance-DB Donnes locales seulement FB1
BE DB globale Pour tous les FB FC OB
BE Call FC21
BE OB 1 FC 2 DB 11 DB 10 FC 21 FB 1
Automation and drives - SCE
Documents de formation T I A Page 36 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
2.7.4 BLOCS UTILISATEUR STEP 7 offre pour la programmation structure les blocs utilisateur suivants :
OB (Bloc Organisation) : Un OB est appel cycliquement par le systme dexploitation et ralise ainsi linterface entre le programme utilisateur et le systme dexploitation. Le dispositif de commande est inform dans cet OB par des commandes dappel de blocs, de quels blocs de programme il doit traiter. FB (Bloc de fonction) : Le FB est disposition via un espace mmoire correspondant. Si un FB est appel, il lui est attribu un bloc de donnes (DB). On peut accder aux donnes de cette instance DB par des appels depuis le FB. Un FB peut tre attribu diffrents DB. Dautres FB et dautres FC peuvent tre appels dans un bloc de fonction par des commandes dappel de blocs. FC (Fonction) : Une FC ne possde pas un espace mmoire attribu. Les donnes locales dune fonction sont perdues aprs le traitement de la fonction. Dautres FB et FC peuvent tre appels dans une fonction par des commandes dappel de blocs. DB (Bloc de donnes) : Les DB sont employs afin de tenir disposition de lespace mmoire pour les variables de donnes. Il y a deux catgories de blocs de donnes. Les DB globaux o tous les OB, FB et FC peuvent lire des donnes enregistres et crire eux-mmes des donnes dans le DB. Les instances DB sont attribues un FB dfini.
2.7.5 BLOCS SYSTEME POUR LES FONCTIONS STANDARDS ET LES FONCTIONS SYSTEMES Dans les blocs systme, il sagit de fonctions dj prtes, enregistres dans la CPU. Ces blocs peuvent tre appels par lutilisateur et tre utiliss dans le programme.
STEP 7 offre les blocs systme suivants :
SFB (Bloc de fonctions systme) : Enregistr dans le systme dexploitation de la CPU et bloc de fonction appelable par lutilisateur. SFC (Fonction systme): Enregistre dans le systme dexploitation de la CPU et fonction appelable par lutilisateur. SDB (Donnes systme): Espace mmoire dans le programme qui est cr par plusieurs outils STEP 7 (par ex. : Configuration matrielle, NetPro ... ), afin denregistrer des donnes pour le systme dautomatisation.
Automation and drives - SCE
Documents de formation T I A Page 37 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3. LANGAGE DE PROGRAMMATION STEP 7
3.1 GENERALITES SUR LE LANGAGE DE PROGRAMMATION STEP 7
3.2 CONVERSION STEP 5 STEP 7 En STEP 7, vous avez la possibilit de convertir vos programmes STEP 5 vers STEP 7 par la fonction Convertir fichier S5.
A la suite du remplacement de SIMATIC S5 par SIMATIC S7 un nouveau logiciel de programmation (STEP7), bas sur la norme IEC 61131, a t dvelopp. STEP 7 marche sous WINDOWS 95, 98 ou NT et possde une interface utilisateur graphique. Vous trouverez de plus amples informations sur la conversion de STEP 5 dans les manuels de rfrence STEP 7 ou dans les instructions de conversion STEP 5 -> STEP 7 du Module B6 - Conversion STEP 5 -> STEP 7. Automation and drives - SCE
Documents de formation T I A Page 38 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300 3.3 LA NORME IEC 61131 POUR SPS
Jusque l, les nouveaux dveloppements de la technique SPS ont conduit une quantit de langages et dialectes spcifiques aux constructeurs. La langue commune de base sest peu peu perdue et, consquence de cette tendance, il arrivait mme des problmes de communication entre diffrents SPS.
Par la norme IEC 61131, la technique des SPS a t pour la premire fois tablie sur une unit de base mondiale. Sous la prsidence des Etats-Unis, la commission internationale de llectrotechnique (IEC) a adopt la normalisation SPS suivant les cinq thmes suivants :
Partie 1 : Dfinitions gnrales et caractristiques typiques des fonctions Partie 2 : Cahiers des charges lectriques, mcaniques et fonctionnels des appareils Partie 3 : Cinq langages de programmation Partie 4 : Lignes directrices des phases de projet Partie 5 : Communication entre SPS de diffrents constructeurs '(_ ^N +- -+ X I 0.0 X M 12.4 = Q 2.7 J Automation and drives - SCE
Documents de formation T I A Page 39 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.4 ARBORESCENCE La gestion des fichiers en STEP 7 seffectue avec SIMATIC Manager. Ici il est possible par ex. de copier les blocs de programme ou dappeler dautres traitements avec dautres outils en cliquant avec la souris. Lutilisation correspond aux standards habituels WINDOWS. (donc on a entre autres la possibilit de faire apparatre un menu contextuel sur chaque composant par un bouton droit de la souris).
En STEP 7, chaque projet est stock dans une structure fixe prdfinie. Dans les rpertoires Station SIMATIC 300 et CPU on met en place la conception matrielle du SPS. En consquence, on voit toujours un tel projet dun point de vue de son matriel.
Les programmes sont enregistrs dans les rpertoires suivants :
* 1 Dnominations de STEP 7 Version 2.x
Projet : Ce rpertoire contient le matriel (par ex. Stations SIMATIC 300) et les sous- rseaux (par ex. MPI et PROFIBUS). Stations SIMATIC 300 : Ici sont stockes les configurations matrielles (Hardware/SC* 1 ) et les donnes de la CPU. Sources/SO* 1 : Ici sont stockes les sources (par ex. les sources SCL), pouvant tre converties par linterprtation dans le programme courant. Blocs/AP-off* 1 : Ici sont stocks les blocs de donnes ( OB, FB, FC, SFB, SFC, DB etc. ). Mnmonique/SY* 1 : Ici sont stockes les listes de mnmoniques pour ladressage mnmonique. CPU : Ici sont insrs les programmes S7 et les partenaires de liaison en rseau (Liaisons/CO* 1 ). Programme S7 : Ici sont grs les programmes utilisateur (Blocs/AP-off* 1 ), les tableaux mnmoniques (Mnmonique/SY* 1 ) et les sources (Sources/SO* 1 ). Automation and drives - SCE
Documents de formation T I A Page 40 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Pour crer un projet indpendant de la configuration matrielle, il y a toutefois la possibilit de lamnager de telle sorte quil ne soit pas contenu dans ce rpertoire.
Il a ainsi la structure suivante :
* 1 Dnominations de STEP 7 Version 2.x
Projet: Ce rpertoire contient le matriel (par ex. Stations SIMATIC 300) et les sous- rseaux (par ex. MPI et PROFIBUS).. Sources/SO* 1 : Ici sont stockes les sources (par ex. les sources SCL), pouvant tre converties par linterprteur dans le programme courant. Blocs/AP-off* 1 : Ici sont stocks les blocs de donnes ( OB, FB, FC, SFB, SFC, DB etc. ). Mnmonique/SY* 1 : Ici sont stockes les listes de mnmoniques pour ladressage mnmonique. Programme S7 : Ici sont grs les programmes utilisateur (Blocs/AP-off* 1 ), les tableaux mnmoniques (Mnmonique/SY* 1 ) et les sources (Sources/SO* 1 ). Automation and drives - SCE
Documents de formation T I A Page 41 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.5 CONFIGURER ET PARAMETRER Pendant le montage, la CPU produit une configuration pratique et stocke celle-ci dans les donnes systme (SDB). Avec loutil Configuration HW il est possible de crer une configuration thorique drivant de cette dernire et ainsi de configurer une nouvelle conception. De plus, on peut aussi charger une configuration existante depuis une CPU. En plus des modules comme la CPU, dautres paramtres peuvent tre prdfinis (par ex. comportement de dmarrage et de cycle dune CPU).
Automation and drives - SCE
Documents de formation T I A Page 42 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.6 LINSTRUCTION DE COMMANDE Pour le traitement par une commande mmoire programmable, la tche de programmation est dcompose en instructions lmentaires de commande. Une instruction de commande est lunit autonome dun programme de commande. Elle reprsente une directive de travail pour le systme de contrle.
Les dnominations, les identificateurs et les symboles des instructions de commandes sont imposs par la norme DIN 19 239.
Une instruction de commande est structure de la manire suivante :
3.6.1 PARTIE OPERATION Lopration dcrit la fonction excuter. DIN 19 239 distingue :
Instruction de commande Partie opration Paramtres Partie oprande Identificateu
U E 0.0 Automation and drives - SCE
Documents de formation T I A Page 43 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Exemples doprations numriques :
L . . . . . Charger T . . . . . Transfrer >I . . . . . Plus grand que, pour des entiers ==R . . . . . Egalit, pour des rels etc
Exemples doprations binaires:
Extrait de DIN 19 239
FUP KOP AWL || () |/| N = U & >1 || O
LOG CONT LIST ET
NON
OU
ATTRIBUTION
etc
Exemples doprations dorganisation :
CC . . . . . Appel de bloc conditionnel UC . . . . . Appel de bloc inconditionnel AUF . . . . . Ouvrir bloc de donnes SPA . . . . . Saut inconditionnel SPB . . . . . Saut conditionnel BEA . . . . . Terminaison de bloc inconditionnelle BEB . . . . . Terminaison de bloc conditionnelle etc Automation and drives - SCE
Documents de formation T I A Page 44 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.6.2 PARTIE OPERANDE La partie oprande contient toutes les indications ncessaires pour lexcution doprations. Elle dtermine avec quoi le systme de contrle doit excuter une opration. Lidentificateur des oprandes comprend la catgorie de loprande.
Il y a par exemple :
Le paramtre de loprande donne ladresse des oprandes.
E pour Entre A pour Sortie M pour Mmoire Interne L pour donnes Locales (variables internes au bloc) T pour le Temps Z pour les Compteurs OB pour bloc dorganisation FB pour bloc de fonction FC pour Fonction DB pour bloc de donnes SFB pour bloc de fonctions systme SFC pour fonction systme L#.pour Constante 32 bits etc. Automation and drives - SCE
Documents de formation T I A Page 45 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.7 ADRESSAGE
3.7.1 ADRESSAGE MNEMONIQUE Ladressage mnmonique est souvent fort utile pour une meilleure comprhension. Il vous permet dassocier une adresse absolue dfinie un nom mnmonique. Par exemple, on peut attribuer lentre E 0.0 le nom END_STOP et au type de donnes BOOL. Chaque nom mnmonique ne doit tre utilis quune fois. Lattribution des associations seffectue avec loutil diteur de mnmoniques que vous dmarrez depuis SIMATIC Manager.
3.7.2 ADRESSAGE ABSOLU En STEP 7 il y a les catgories suivantes dadressage absolu :
adressage immdiat adressage direct adressage mmoire indirect
Adressage immdiat :
Lors de ladressage immdiat, loprande est directement cod dans lopration, cest--dire quil a directement la valeur avec laquelle lopration doit tre traite, soit que lopration fournisse implicitement loprande. Exemple :
Adressage direct :
Lors de ladressage direct, ladresse de loprande est code dans lopration, cest--dire que loprande donne ladresse de la valeur que lopration doit traiter. Loprande se compose dun identificateur doprande et dun paramtre. Il pointe directement sur ladresse de la valeur. Exemple :
SET Met le VKE (Rsultat logique) 1. +D Ajoute le contenu de ACCU1 au contenu de ACCU 2 et stocke le rsultat dans ACCU 1.
U E 0.0 Excute un ET logique du bit dentre E 0.0. L EB 0 Charge loctet dentre EB 0 dans l ACCU 1. = A 4.0 Attribue VKE le bit de sortie A 4.0.
Automation and drives - SCE
Documents de formation T I A Page 46 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
Adressage mmoire indirect :
Dans le cas de ladressage mmoire indirect, ladresse de loprande est prdfinie par un autre oprande qui contient ladresse du premier. Autrement dit, loprande donne ladresse de la valeur sur laquelle doit tre effectue lopration. Loprande se compose dun identificateur doprande et dun des pointeurs suivants :
un mot qui contient le numro dun temps (T), dun compteur (Z), dun bloc de donnes (DB), dune fonction (FC) ou dun bloc de fonctions (FB). un double mot qui contient ladresse exacte dune valeur lintrieur de lespace mmoire, la valeur donnant lidentificateur de loprande Ladresse de la valeur ou du numro est fournie indirectement via le pointeur. Le mot ou le double mot peuvent se trouver dans une mmoire interne (M), dans un bloc de donnes (DB), dans un bloc de donnes instance (DI) ou dans des donnes locales (L).
Exemple :
U E [MD 3] Excute une opration logique ET du bit dentre. Ladresse exacte se trouve dans la mmoire interne double mot MD 3. L EB [DID 4] Charge loctet dentre dans ACCU 1. Ladresse exacte se trouve dans linstance du mot double de donnes DID 4. AUF DB [MW 2] Ouvre le bloc de donnes. Le numro du bloc de donnes se trouve dans le mot de mmoire interne MW 2.
Automation and drives - SCE
Documents de formation T I A Page 47 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.8 REPRESENTATION DE PROGRAMME
En STEP 7, un programme dans loutil Programmer des blocs CONT/LIST/LOG peut tre programm et reprsent dans trois catgories diffrentes :
Schma contact CONT Plan logique LOG Liste dinstructions LIST
En option, il y a ancore les packs logiciel programmation de langage haut niveau (SCL), de programmation graph-7 (S7-GRAPH) et la programmation dtat graphique (S7-HiGraph).
3.8.1 SCHEMA A CONTACT CONT Le schma contact est la reprsentation image des tches de commandes avec des mnmoniques suivant DIN 19 239, qui est aussi courante aux Etats-Unis. Il a beaucoup de ressemblances avec le traditionnel schma de connexion, la diffrence notable que la reprsentation lcran utilise des traits horizontaux, et non pas verticaux, pour les branches de circuit.
3.8.2 PLAN LOGIQUE LOG ( EN STEP 7 A PARTIR DES VERSIONS 3.x ) Le plan logique est la reprsentation image des tches de commande avec des mnmoniques suivant DIN 40 700 et DIN 19 239. Les diffrentes fonctions sont reprsentes par un symbole qui les identifie. A gauche du symbole, on trouve les entres et droite, les sorties.
& E 0.0 E 0.1 A 0.0 E 0.2 E 0.3 A 0.1 >1 ET logique OU logique () | | | | E 0.0 E 0.1 A 0.0 ET logique | | | | () E 0.2 E 0.3 A 0.1 OU logique Automation and drives - SCE
Documents de formation T I A Page 48 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.8.3 LISTE DINSTRUCTIONS LIST En liste dinstructions, les tches de commande sont dcrites par des instructions de commande. Les instructions (Opration et oprande) de commande reprsentent les tches au moyen dabrviations (videntes) des dsignations de fonction. (suivant DIN 19 239)
Partie opration :
Partie oprande : Symbole Paramtre
U E 0.0 ET logique U E 0.1 = A 4.0 O E 0.2 OU logique O E 0.3 = A 4.1
Chaque reprsentation possde ses propres proprits et ses limites dfinies. Si lors de la programmation les rgles prcises sont suivies, alors ce nest pas un problme deffectuer une traduction du problme dans les trois modes de reprsentation. Si des programmes de commande ont t crits en CONT ou en LOG, ils peuvent systmatiquement tre traduits en LIST. Dans la mmoire programme de lappareil de commande, le programme est toujours stock en LIST ( en langage machine, en fait ).
Automation and drives - SCE
Documents de formation T I A Page 49 sur 47 Annexe I Edition : 05/2004 fr : 11/2004 Bases de la programmation des API avec SIMATIC S7-300
3.9 MEMOIRE INTERNE On mettra en place des mmoires internes sur des liaisons de commandes, pour lesquelles il ny a pas de transfert en dehors de la commande. Les mmoires internes sont des lments mmoire lectroniques (Bascule R-S), dans lesquels les deux tats de signaux "0" et "1" peuvent tre stocks. Chaque SPS dispose dun grand nombre de mmoires internes. Elles sont programmes comme les sorties. En cas de coupure de la tension systme, le contenu stock dans la mmoire interne est perdu.
3.9.1 MEMOIRE INTERNE REMANENTE Une partie de cette mmoire interne est pourtant rmanente (tension nulle scurise). A laide dune batterie tampon dans le SPS, la coupure de tension est ponte. Ces tats logiques sont ainsi conservs.
Conserve le dernier tat davant la coupure de la tension dalimentation Conserve le dernier tat avant le changement de rgime "RUN>STOP" Peut tre rinitialise par AG>FORMATER (en plus de la possibilit de le faire par le programme utilisateur) Mmoire interne rmanente
En employant la mmoire rmanente, on peut sauvegarder le dernier tat du dispositif ou des machines avant de quitter ltat de fonctionnement courant. En redmarrant, on a la possibilit de travailler avec le dispositif ou la machine dans ltat o il sest arrt. Lespace de rmanence est dfini dans les proprits de la CPU, au niveau de loutil Configuration matrielle sous Rmanence.
3.9.2 MEMOIRE INTERNE NON REMANENTE
Les mmoires internes sont rinitialises par commutation sur les modes de fonctionnement RUN>STOP et "RESEAU MARCHE".