Transcription of NOTICE DE PROGRAMMATION D’AUTOMATES …
1 NOTICE DE PROGRAMMATION . D'AUTOMATES SIEMENS. S7 300 S7 400. Ecrit par Alain Malvoisin AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 1/1. PROGRAMMATION . AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 2/2. SOMMAIRE. I. / LES VARIABLES DE L'AUTOMATE ..3. Types de variables ..3. Adressage des variables ..4. Plages d' II. / SAISIS DES MNEMONIQUES ..5. III. / INSTRUCTIONS SUR IV. / LES L' tat logique ..8. La premi re interrogation ..8. Le RLG R sultat LoGique ..9. Instructions sur R sultat Le OU ..9. Les bits de LES FLAGS BI1 et BI0 ..10. V. / ASSISTANT INSTRUCTIONS DE VI. / STRUCTURE D'UN PROGRAMME ..12. Ex cution cyclique d'un programme OB1 ..12. VII. / LES BLOCS DE VIII. / LES BLOCS D' IX. / CONSTITUTION D'UN BLOC DE PROGRAMME ..16. X. / INSTRUCTIONS SUR MOTS ..18. XI. / LES REGISTRES DU XII. / LES XIII. / LES COMPTEURS ..23. XIV. / INSTRUCTIONS COMPLEMENTAIRES ..25. Op rations arithm tiques sur Op rations de conversion sur D calages ..26. Les op rateurs de XV.
2 / REPRESENTATION DES NOMBRES ..28. Les types de donn Les formats de repr sentation ..28. XVI. / LES BLOCS DE Type de blocs de donn es :..30. Utilisation des blocs de donn es ..31. Utilisation de l' diteur de bloc de donn XVII. / LES BLOCS DE DONNEES D'INSTANCE ..33. Cr ation d'un DB ..33. XVIII. / ADRESSAGE INDIRECT ZONE MEMOIRE ..34. Pointeur 32 bits ..34. Pointeur 16 bits ..35. XIX. / ADRESSSAGE INDIRECT PAR REGISTRE ( AR1 et AR2)..36. XX. / PARAMETRES DE TYPE ANY ..37. AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 3/3. I. / LES VARIABLES DE L'AUTOMATE. Types de variables Zone E : M moire image des entr es sur bus locale ou bus de terrain tel que PROFIBUS. Zone A : M moire image des sorties sur bus locale ou bus de terrain tel que PROFIBUS. Zone M : M moire utilisateur Zone L : M moire locale, associ e un module de programme Zone P : Acc s la p riph rie Zone T : M moire des temporisations Zone Z : M moire des compteurs Zone DB : M moire utilisateur ou syst me structur dans des blocs de donn es Symbole D finition Symbole SIMATIC CEI.
3 E Bits d'entr e I. EB Octet d'entr e IB. EW Mot d'entr e IW. ED Double mot d'entr e ID. A Bits de sortie Q. AB Octet de sortie QB. AW Mot de sortie QW. AD Double mot de sortie QD. M M moires utilisateurs (variables auxiliaires) M. MB Octet m moire MB. MW Mot m moire MW. MD Double mot m moire MD. L Bit dans la m moire locale L. LB Octet dans la m moire locale LB. LW Mot dans la m moire locale LW. LD Double mot dans la m moire locale LD. PEB Octet de p riph rie d'entr e PAB Octet de p riph rie de sortie PEW Mot de p riph rie d'entr e PAW Mot de p riph rie de sortie PED Double mot de p riph rie d'entr e PAD Double mot de p riph rie de sortie T Temporisation T. Z Compteur C. DBX Bit dans un bloc de donn e DBB Octet dans un bloc de donn e DBW Mot dans un bloc de donn e DBD Double mot dans un bloc de donn e AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 4/4. Adressage des variables Les objets E, A, M, DB, PE et PA sont rang s dans des octets ( 8 bits ), on peut acc der un BIT.
4 Un OCTET, un MOT de 16 bits ou un DOUBLE MOT ( 32 bits ). Exemples : correspond au bit 3 de l'octet 4, on peut le tester en combinaison ET, OU. avec un autre bit, on peut lui affecter le r sultat d'une combinaison, on peut le mettre 1 ou 0 . MB4 correspond aux 8 bits de l'octet 4, on peut comparer sa valeur, on peut l'additionner, le soustraire, le multiplier, le diviser, on peut lui affecter le r sultat d'une op ration MW2 correspond au 16 bits constitu par les octets 2 (poids fort) et 3 (poids faible). MD1 correspond au 32 bits constitu des octets 1, 2, 3 et 4. 7 6 5 4 3 2 1 0. MB 0. MW 0. MB 1. MW 1 MD 1. MB 2. MW 2. MB 3. MW 3. MB 4.. MB 1024. Plages d'adressage Bit Octet 0 65535. Mot 0 65534. Double mot 0 65532. AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 5/5. II. / SAISIS DES MNEMONIQUES. Saisir les mn moniques est tr s utile, il vaut mieux saisir un programme enti rement en symbole qu'en adressage absolu, c'est beaucoup plus lisible et compr hensible.
5 Il suffit d'aller dans la table des Mn moniques et y entrer les diff rents l ments. Le nom du symbole, sont adresse r el, sont type et sont commentaire Voici un exemple On peut acc der la table des symboles depuis l' diteur CONT/LIST/LOG. AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 6/6. III. / INSTRUCTIONS SUR BITS. Tester des bits U Test un bit en combinaison ET. O Test un bit en combinaison OU. UN Test un bit en combinaison ET PAS. ON Test un bit en combinaison OU PAS. UN( Test un bit en combinaison ET PAS (. ON( Test un bit en combinaison OU PAS (. U( ET ouvrez la parenth se O( OU ouvrez la parenth se ) Fermez la parenth se X OU exclusif XN Identit . X( Test d'un combinaison en exclusif (. XN( Test d'une combinaison en identit (. FN Front descendant du RLG. FP Front montant du RLG. Ecrire des bits = Affecte le r sultat logique d'un test S Mise 1 (m moire). R Mise 0 (m moire). AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 7/7. Exemple : Repr sentation LISTe LOGigramme CONTact Fonction ET.)))))))))
6 U E E E E A = A ( ). UN E &. E = A Fonction OU avec mise en m moire :O M :ON E M S :S M E >=1. Fonction M moire ( bascule RS ). :U E M. E S :S M :U E E R. :R M :NOP 0 Cette instruction ne fait rien, elle permet la repr sentation graphique :BE Cette instruction indique la fin d'un module AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 8/8. IV. / LES FLAGS. Les flags sont des bits vrais ou faux positionn s par certaines instructions dont d pendent d'autres instructions. er ETAT, 1 ?, RLG, RB, OU, BI1, BI0, OV, OS. L' tat logique C'est l' tat de la variable binaire interrog e, la variable est 1 ou 0 . La premi re interrogation Ce flag indique le d but d'une op ration bool enne, lorsqu'on crit plusieurs quations bool ennes les unes derri res les autres, chaque quation doit d buter par une premi re interrogation, sinon on combinerait l' quation en cours avec le r sultat de l' quation pr c dente. Pour avoir une premi re interrogation, il faut limiter l' quation pr c dente par une instruction.
7 EXEMPLE : :U E :UN E :U M := A Cette instruction limite l' quation ( le RLG ). :U E C'est une premi re interrogation :U E :S M Cette instruction limite le RLG. Les instructions qui limitent le RLG sont: = Assignation S Mise 1 . R Mise 0 . SE, SV, SI, SA, SS D marrage d'une temporisation ZV,ZR Comptage ou d comptage d'un compteur Au d marrage de L'OB1 la premi re interrogation est 1 , On peut donc commencer une quation bool enne. AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 9/9. Le RLG R sultat LoGique Ce bit m morise le r sultat d'un test et permet de r aliser une combinaison avec l'instruction suivante. Exemples : er 1 ? ETAT RLG. :U E 1 1 1. :UN E 0 0 1 RLG = RLG pr c dant ET PAS ETAT. := A 0 1 1 A prend la valeur du RLG. er :O E 1 0 0 C'est une 1 interrogation donc on ne combine pas avec le RLG pr c dent :ON E 0 0 1 RLG = RLG pr c dent OU PAS ETAT. :SE T 5 0 1 1 D marre la tempo T5 si RLG = 1. ACCU 1 ACCU 2 RLG. :L MW 10 0030 ? 1 Les accus sont repr sent s en HEXA.
8 :L LF +50 0032 0030 1. :>F 0 L'ACCU2 n'est pas > l'ACCU1. := A 0 A prend la valeur du RLG. Instructions sur R sultat Logique SAVE Sauvegarde le R sultat logique dans le bit RB, pour tester le RB on utilise l'instruction : U BIE. SET Mise 1 inconditionnel du RLG. CLR Mise 0 inconditionnel du RLG. NOT Compl ment du RLG. Le OU. Ce flag permet de m moriser le r sultat de la combinaison pr c dente pour la combiner en OU avec la combinaison suivante. Exemple : 1er? ETAT RLG OU. :U E 1 1 1 0. :UN E 0 0 1 0. :O 0 - 1 1 On m morise le RLG. :UN E 0 1 1 1 Le RLG se combine avec le OU. :U E 0 0 1 1. := A 0 1 1 0 = ferme l' quation, le OU retombe . 0 . AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 10/10. Les bits de debordements OV : Overflow, ce bit passe 1 suite une op ration si le r sultat d borde ( sur 16 ou 32 bits), il peut tre test directement ( ex : U OV ) ou utilis pour un saut conditionnel ( SPO ), le bit OV passe 0 automatiquement au cycle suivant OS : Overflow m moris , ce bit reste m moris jusqu' la prochaine op ration.
9 LES FLAGS BI1 et BI0. Ces bits donnent des informations sur le r sultat des op rations BI1 BI0 Description 1 0 >0. 0 1 <0. 0 0 =0. 1 1 OU. On peut tester ces bits par les instructions U >0 R sultat positif U <0 R sultat n gatif U ==0 R sultat nul U <>0 R sultat non nul U >=0 R sultat positif ou nul U <=0 R sultat n gatif ou nul Ou par des instructions de saut SPMZ Saut si inf rieur ou gal 0. SPZ Saut si gal 0. SPPZ Saut si sup rieur ou gal 0. SPN Saut si diff rent de 0. AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 11/11. V. / ASSISTANT INSTRUCTIONS DE PROGRAMME. Menu Affichage puis Catalogue On utilise beaucoup l'assistant quand on programme en Contact ou en Logigramme, cela permet de savoir quel sont les instructions disponibles. AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 12/12. VI. / STRUCTURE D'UN PROGRAMME. Ex cution cyclique d'un programme OB1. Le programme est crit dans diff rents modules, chaque module traitera une fonction de l'automatisme Automate en RUN Exemple : FC 10 Gestion de la table tournante FC 15 D pileur de palettes Lecture des tats des cartes etc.
10 D'entr es, rangement dans la m moire image E FC 10. :U E Ex cution du programme de L 'OB1 : UN E appel des modules :S M : CALL FC10 :U E : CALL FC15 :R M : CALL FC10 FC 15. : CALL FC50 :0 M Par programme, on crit dans la : UN M m moire image A := M :U E : BE. := A Mise jour des cartes de sorties depuis la m moire image A. Il y a aussi des programmes qui ne sont pas cycliques et qui interrompent l'OB1, ce sont d'autres blocs d'organisations. Comme les OB d'horloge ou comme les OB de r action aux erreurs voir le chapitre VIII. AMS720090001. PROGRAMMATION des automates Siemens S7-300/400. Page 13/13. VII. / LES BLOCS DE CODE. Les OB Blocs d'organisation OB 1 OB 225. D terminent la structure du programme utilisateur. Les OB sont directement appel s par le syst me d'exploitation de la CPU en r action un v nement ( condition toutefois de les avoir programm . et ins r s dans l'automate). Ils contiennent en g n ral peut d'instructions, essentiellement des appels de blocs FC, FB. Les FB et FC Fonctions et Blocs fonctionnels Ce sont des fonctions crites en LIST, CONTACT ou LOGIGRAMME.