Académique Documents
Professionnel Documents
Culture Documents
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Oprations de comparaison Oprations de conversion Oprations de comptage Oprations sur blocs de donnes Oprations de saut Oprations arithmtiques sur nombres entiers Oprations arithmtiques sur nombres rels Oprations de transfert Oprations de gestion d'excution de programme Oprations de dcalage et de rotation Oprations sur bits d'tat Oprations de temporisation Oprations combinatoires sur mots Annexe
Prsentation de toutes les oprations LOG Exemples de programmation Pour travailler en LOG Index
A B C
Edition 03/2006
A5E00706956-01
Consignes de scurit
Ce manuel donne des consignes que vous devez respecter pour votre propre scurit et pour viter des dommages matriels. Les avertissements servant votre scurit personnelle sont accompagns d'un triangle de danger, les avertissements concernant uniquement des dommages matriels sont dpourvus de ce triangle. Les avertissements sont reprsents ci-aprs par ordre dcroissant de niveau de risque.
! ! !
Danger
signifie que la non-application des mesures de scurit appropries entrane la mort ou des blessures graves.
Attention
signifie que la non-application des mesures de scurit appropries peut entraner la mort ou des blessures graves.
Prudence
signifie que la non-application des mesures de scurit appropries peut entraner des blessures lgres.
Prudence
signifie que la non-application des mesures de scurit appropries peut entraner un dommage matriel.
Important
signifie que le non-respect de l'avertissement correspondant peut entraner l'apparition d'un vnement ou d'un tat indsirable. En prsence de plusieurs niveaux de risque, c'est toujours l'avertissement correspondant au niveau le plus lev qui est reproduit. Si un avertissement avec triangle de danger prvient des risques de dommages corporels, le mme avertissement peut aussi contenir un avis de mise en garde contre des dommages matriels.
Personnel qualifi
L'installation et l'exploitation de l'appareil/du systme concern ne sont autorises qu'en liaison avec la prsente documentation. La mise en service et l'exploitation d'un appareil/systme ne doivent tre effectues que par des personnes qualifies. Au sens des consignes de scurit figurant dans cette documentation, les personnes qualifies sont des personnes qui sont habilites mettre en service, mettre la terre et identifier des appareils, systmes et circuits en conformit avec les normes de scurit.
Attention
L'appareil/le systme ne doit tre utilis que pour les applications spcifies dans le catalogue ou dans la description technique, et uniquement en liaison avec des appareils et composants recommands ou agrs par Siemens s'ils ne sont pas de Siemens. Le transport, le stockage, le montage, la mise en service ainsi que l'utilisation et la maintenance Le fonctionnement correct et sr du produit implique son transport, stockage, montage et mise en service selon les rgles de l'art ainsi qu'une utilisation et maintenance soigneuses.
Marque de fabrique
Toutes les dsignations repres par sont des marques dposes de Siemens AG. Les autres dsignations dans ce document peuvent tre des marques dont l'utilisation par des tiers leurs propres fins peut enfreindre les droits de leurs propritaires respectifs.
Exclusion de responsabilit
Nous avons vrifi la conformit du contenu du prsent document avec le matriel et le logiciel qui y sont dcrits. Ne pouvant toutefois exclure toute divergence, nous ne pouvons pas nous porter garants de la conformit intgrale. Si l'usage de ce manuel devait rvler des erreurs, nous en tiendrons compte et apporterons les corrections ncessaires ds la prochaine dition.
A5E00706956-01 03/2006
Avant-propos
Objet du manuel
Ce manuel vous aidera crire des programmes utilisateur en langage LOG. Il contient une partie de rfrence dcrivant la syntaxe et le fonctionnement des lments du langage de programmation LOG.
Norme
LOG correspond au langage Langage en blocs fonctionnels dfini dans la norme CEI 1131-3. Pour plus de renseignements ce sujet, consultez la table de correspondance la norme dans le fichier NORM_TBL.WRI (anglais) ou NORM_TAB.WRI (allemand) de STEP 7.
iii
Avant-propos
Connaissances requises
Vous trouverez dans l'aide en ligne de STEP 7 les connaissances thoriques sur les programmes S7 ncessaires la comprhension de ce manuel sur LOG. Les langages de programmation se basant sur le logiciel de base STEP 7, nous supposerons que vous savez utiliser ce logiciel et sa documentation. Ce manuel fait partie de la documentation "STEP 7 Connaissances fondamentales. Le tableau suivant prsente la documentation de STEP 7:
Manuel STEP 7 Connaissances fondamentales avec STEP 7 Getting Started Programmer avec STEP 7 Configuration matrielle et communication dans STEP 7 STEP 7 Pour une transition facile de S5 S7 Langages CONT/LOG/LIST pour SIMATIC S7-300/400 Logiciel systme pour SIMATIC S7-300/400 Fonctions standard et fonctions systme Volume 1 et Volume 2 Manuels de rfrence dcrivant les langages de programmation CONT, LOG et LIST de mme que les fonctions standard et les fonctions systme en complment des connaissances fondamentales de STEP 7. 6ES7810-4CA08-8CW1 Objet Connaissances fondamentales pour le personnel technique. Dcrit la marche suivre pour raliser des tches dautomatisation avec STEP 7 et S7-300/400. Numro de rfrence 6ES7810-4CA08-8CW0
Objet Connaissances fondamentales pour la programmation ainsi que pour la configuration du matriel avec STEP 7, sous forme daide en ligne. Aides en ligne contextuelles de rfrence
Aides de rfrence de LIST/CONT/LOG Aide de rfrence sur les SFB/SFC Aide de rfrence sur les blocs dorganisation
iv
Avant-propos
Aide en ligne
En complment au manuel, laide en ligne intgre au logiciel vous offre une assistance dtaille lors de lutilisation du logiciel. Ce systme daide est intgr au logiciel grce plusieurs interfaces : Laide contextuelle donne des informations sur le contexte actuel, par exemple sur une bote de dialogue ouverte ou sur une fentre active. Vous lappelez en cliquant sur le bouton Aide ou en appuyant sur la touche F1. Le menu daide ? propose plusieurs commandes : Rubrique daides ouvre le sommaire de laide de STEP 7. Vous obtenez le glossaire relatif toutes les applications de STEP 7 en cliquant sur "Glossaire". Ce manuel est extrait de l' "Aide pour LOG". En raison de la structure similaire entre le manuel et laide en ligne, le passage de lun lautre est ais.
Assistance supplmentaire
Si des questions sont restes sans rponse dans ce manuel, veuillez vous adresser votre interlocuteur Siemens dans la filiale ou l'agence de votre rgion. Vous trouvez votre interloculeur sous : http://www.siemens.com/automation/partner Vous trouvez un fil rouge pour la recherche de documentations techniques sur les produits et systmes SIMATIC ladresse suivante sur Internet : http://www.siemens.com/simatic-tech-doku-portal Le catalogue en ligne et le systme de commande en ligne se trouvent l'adresse : http://mall.automation.siemens.com/
Avant-propos
Technical Support
Vous pouvez joindre le support technique pour tous les produits A&D Via le formulaire Web de demande dassistance (Support Request) http://www.siemens.com/automation/support-request Tlphone : Tlcopie : + 49 180 5050 222 + 49 180 5050 223
Vous trouvez plus dinformations concernant notre Technical Support sur Internet ladresse suivante : http://www.siemens.com/automation/service
vi
Sommaire
1 Oprations combinatoires sur bits......................................................................................... 1-1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 2 Vue d'ensemble des oprations combinatoires sur bits ............................................. 1-1 >=1 : Porte OU............................................................................................................ 1-2 & : Porte ET ................................................................................................................ 1-3 Combinaisons ET avant OU et OU avant ET ............................................................. 1-4 XOR : Combinaison OU exclusif................................................................................. 1-6 Insrer entre binaire.................................................................................................. 1-7 Inverser l'entre binaire .............................................................................................. 1-8 = : Affectation .............................................................................................................. 1-9 # : Connecteur .......................................................................................................... 1-10 R : Mettre 0 ............................................................................................................ 1-12 S : Mettre 1 ............................................................................................................ 1-13 RS : Bascule mise 0, mise 1............................................................................... 1-14 SR : Bascule mise 1, mise 0............................................................................... 1-15 N : Dtecter front descendant................................................................................... 1-16 P : Dtecter front montant......................................................................................... 1-17 SAVE : Sauvegarder RLG dans RB ......................................................................... 1-18 NEG : Dtecter front descendant de signal .............................................................. 1-19 POS : Dtecter front montant de signal .................................................................... 1-20
Oprations de comparaison.................................................................................................... 2-1 2.1 2.2 2.3 2.4 Vue d'ensemble des oprations de comparaison....................................................... 2-1 CMP ? I : Comparer entiers de 16 bits ....................................................................... 2-2 CMP ? D : Comparer entiers de 32 bits...................................................................... 2-3 CMP ? R : Comparer nombres rels .......................................................................... 2-4
Oprations de conversion....................................................................................................... 3-1 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 Vue d'ensemble des oprations de conversion .......................................................... 3-1 BCD_I : Convertir nombre DCB en entier de 16 bits .................................................. 3-2 I_BCD : Convertir entier de 16 bits en nombre DCB .................................................. 3-3 BCD_DI : Convertir nombre DCB en entier de 32 bits ............................................... 3-4 I_DI : Convertir entier de 16 bits en entier de 32 bits ................................................. 3-5 DI_BCD : Convertir entier de 32 bits en nombre DCB ............................................... 3-6 DI_R : Convertir entier de 32 bits en nombre rel ...................................................... 3-7 INV_I : Complment 1 d'entier de 16 bits ................................................................ 3-8 INV_DI : Complment 1 d'entier de 32 bits ............................................................. 3-9 NEG_I : Complment 2 d'entier de 16 bits ............................................................ 3-10 NEG_DI : Complment 2 d'entier de 32 bits.......................................................... 3-11 NEG_R : Inverser le signe d'un nombre rel ............................................................ 3-12 ROUND : Arrondir entier de 32 bits ....................................................................... 3-13 TRUNC : Tronquer la partie entire (32 bits)......................................................... 3-14 CEIL : Convertir nombre rel en entier suprieur le plus proche ............................. 3-15 FLOOR : Convertir nombre rel en entier infrieur le plus proche........................... 3-16
vii
Sommaire
Oprations de comptage ......................................................................................................... 4-1 4.1 4.2 4.3 4.4 4.5 4.6 4.7 Vue d'ensemble des oprations de comptage............................................................ 4-1 ZAEHLER : Paramtrage et compteur incrmental/dcrmental............................... 4-3 Z_VORW : Paramtrage et compteur incrmental..................................................... 4-5 Z_RUECK : Paramtrage et compteur dcrmental .................................................. 4-7 SZ : Initialiser compteur .............................................................................................. 4-9 ZV : Incrmenter ....................................................................................................... 4-10 ZR : Dcrmenter ..................................................................................................... 4-11
Oprations sur blocs de donnes .......................................................................................... 5-1 5.1 OPN : Ouvrir bloc de donnes.................................................................................... 5-1
Oprations de saut................................................................................................................... 6-1 6.1 6.2 6.3 6.4 6.5 Vue d'ensemble des oprations de saut..................................................................... 6-1 JMP : Saut inconditionnel ........................................................................................... 6-2 JMP : Saut si 1 (conditionnel) ..................................................................................... 6-3 JMPN : Saut si 0 (conditionnel) .................................................................................. 6-4 LABEL : Repre de saut ............................................................................................. 6-5
Oprations arithmtiques sur nombres entiers.................................................................... 7-1 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 7.10 7.11 Vue d'ensemble des oprations arithmtiques sur nombre entiers............................ 7-1 Evaluation des bits du mot d'tat pour les oprations sur nombres entiers ............... 7-2 ADD_I : Additionner entiers de 16 bits........................................................................ 7-3 SUB_I : Soustraire entiers de 16 bits.......................................................................... 7-4 MUL_I : Multiplier entiers de 16 bits ........................................................................... 7-5 DIV_I : Diviser entiers de 16 bits ................................................................................ 7-6 ADD_DI : Additionner entiers de 32 bits ..................................................................... 7-7 SUB_DI : Soustraire entiers de 32 bits ....................................................................... 7-8 MUL_DI : Multiplier entiers de 32 bits......................................................................... 7-9 DIV_DI : Diviser entiers de 32 bits............................................................................ 7-10 MOD_DI : Reste de division (32 bits) ....................................................................... 7-11
Oprations arithmtiques sur nombres rels ....................................................................... 8-1 8.1 8.2 8.3 8.3.1 8.3.2 8.3.3 8.3.4 8.3.5 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 Vue d'ensemble des oprations arithmtiques sur nombres rels............................. 8-1 Evaluation des bits du mot d'tat pour les oprations sur nombres rels .................. 8-2 Oprations de base..................................................................................................... 8-3 ADD_R : Additionner nombres rels........................................................................... 8-3 SUB_R : Soustraire nombres rels............................................................................. 8-4 MUL_R : Multiplier nombres rels .............................................................................. 8-5 DIV_R : Diviser nombres rels ................................................................................... 8-6 ABS : Valeur absolue d'un nombre rel...................................................................... 8-7 Oprations tendues .................................................................................................. 8-8 SQR : Carr d'un nombre rel .................................................................................... 8-8 SQRT : Racine carre d'un nombre rel .................................................................... 8-9 EXP : Valeur exponentielle d'un nombre rel ........................................................... 8-10 LN : Logarithme naturel d'un nombre rel ................................................................ 8-11 Fonctions trigonomtriques d'angles sous forme de nombres rels ........................ 8-12
Oprations de transfert ........................................................................................................... 9-1 9.1 MOVE : Affecter valeur ............................................................................................... 9-1
viii
Sommaire
10
Oprations de gestion d'excution de programme ............................................................ 10-1 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 10.9 10.10 10.11 10.12 10.13 Vue d'ensemble des oprations de gestion dexcution de programme ................. 10-1 CALL : Appeler FC/SFC sans paramtre ................................................................. 10-2 CALL_FB : Appeler FB ............................................................................................. 10-4 CALL_FC : Appeler FC............................................................................................. 10-6 CALL_SFB : Appeler SFB ........................................................................................ 10-8 CALL_SFC : Appeler SFC ...................................................................................... 10-10 Appeler multi-instances .......................................................................................... 10-12 Appeler un bloc dans une bibliothque................................................................... 10-12 Fonctions du relais de masquage........................................................................... 10-13 Remarques importantes sur l'utilisation de la fonctionnalit MCR ......................... 10-14 MCR< / MCR> : Relais de masquage en fonction/hors fonction............................ 10-15 MCRA / MCRD : Activer/dsactiver relais de masquage ....................................... 10-18 RET : Retour ........................................................................................................... 10-21
11
Oprations de dcalage et de rotation................................................................................. 11-1 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.1.5 11.1.6 11.1.7 11.2 11.2.1 11.2.2 11.2.3 Oprations de dcalage............................................................................................ 11-1 Vue d'ensemble des oprations de dcalage........................................................... 11-1 SHR_I : Dcalage vers la droite d'un entier de 16 bits ............................................. 11-2 SHR_DI : Dcalage vers la droite d'un entier de 32 bits .......................................... 11-4 SHL_W : Dcalage vers la gauche d'un mot ............................................................ 11-5 SHR_W : Dcalage vers la droite d'un mot .............................................................. 11-7 SHL_DW : Dcalage vers la gauche d'un double mot ............................................. 11-8 SHR_DW : Dcalage vers la droite d'un double mot................................................ 11-9 Oprations de rotation ............................................................................................ 11-11 Vue d'ensemble des oprations de rotation ........................................................... 11-11 ROL_DW : Rotation vers la gauche d'un double mot............................................. 11-11 ROR_DW : Rotation vers la droite d'un double mot ............................................... 11-13
12
Oprations sur bits d'tat...................................................................................................... 12-1 12.1 12.2 12.3 12.4 12.5 12.6 Vue d'ensemble des oprations sur bits d'tat ......................................................... 12-1 OV : Bit d'anomalie "Dbordement".......................................................................... 12-2 OS : Bit d'anomalie "Dbordement mmoris"......................................................... 12-4 UO : Bit d'anomalie "Opration illicite"...................................................................... 12-6 BIE : Bit d'anomalie "Registre RB"............................................................................ 12-7 <> 0 : Bits de rsultat................................................................................................ 12-8
13
Oprations de temporisation ................................................................................................ 13-1 13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8 13.9 13.10 13.11 13.12 Vue d'ensemble des oprations de temporisation.................................................... 13-1 Adresse d'une temporisation en mmoire et composants d'une temporisation ....... 13-2 S_IMPULS : Paramtrer et dmarrer une temporisation sous forme d'impulsion.... 13-6 S_VIMP : Paramtrer et dmarrer une temporisation sous forme d'impulsion prolonge ............................................................................ 13-8 S_EVERZ : Paramtrer et dmarrer une temporisation sous forme de retard la monte.............................................................................................. 13-10 S_SEVERZ : Paramtrer et dmarrer une temporisation sous forme de retard la monte mmoris............................................................................. 13-12 S_AVERZ : Paramtrer et dmarrer une temporisation sous forme de retard la retombe .......................................................................................... 13-14 SI : Temporisation sous forme d'impulsion............................................................. 13-16 SV : Temporisation sous forme d'impulsion prolonge .......................................... 13-18 SE : Temporisation sous forme de retard la monte ........................................... 13-20 SS : Temporisation sous forme de retard la monte mmoris .......................... 13-22 SA : Temporisation sous forme de retard la retombe........................................ 13-24
ix
Sommaire
14
Oprations combinatoires sur mots .................................................................................... 14-1 14.1 14.2 14.3 14.4 14.5 14.6 14.7 Vue d'ensemble des oprations combinatoires sur mots ......................................... 14-1 WAND_W : ET mot ................................................................................................... 14-2 WOR_W : OU mot .................................................................................................... 14-3 WXOR_W : OU exclusif mot..................................................................................... 14-4 WAND_DW : ET double mot .................................................................................... 14-5 WOR_DW : OU double mot...................................................................................... 14-6 WXOR_DW : OU exclusif double mot ...................................................................... 14-7
Prsentation de toutes les oprations LOG ..........................................................................A-1 A.1 A.2 Oprations LOG classes d'aprs les abrviations allemandes (SIMATIC) ..............A-1 Oprations LOG classes d'aprs les abrviations anglaises (internationales) ........A-5
Exemples de programmation..................................................................................................B-1 B.1 B.2 B.3 B.4 B.5 B.6 Vue d'ensemble des exemples de programmation ....................................................B-1 Exemples : Oprations combinatoires sur bits ...........................................................B-2 Exemple : Oprations de temporisation......................................................................B-5 Exemple : Oprations de comptage et de comparaison.............................................B-9 Exemple : Oprations arithmtiques sur nombres entiers........................................B-12 Exemple : Oprations combinatoires sur mots.........................................................B-13
Pour travailler en LOG .............................................................................................................C-1 C.1 C.1.1 C.1.2 C.1.3 C.1.4 C.2 Mcanisme EN/ENO...................................................................................................C-1 Addition avec combinaison EN et avec combinaison ENO ........................................C-3 Addition avec combinaison EN et sans combinaison ENO ........................................C-4 Addition sans combinaison EN et avec combinaison ENO ........................................C-5 Addition sans combinaison EN et sans combinaison ENO ........................................C-6 Transmission de paramtres ......................................................................................C-7 Index-1
Index
1.1
Description
Les oprations combinatoires sur bits utilisent deux chiffres : 1 et 0. Ces deux chiffres sont la base du systme de numration binaire et sont appels chiffres binaires ou bits. Le 1 signifie OUI logique et le 0 NON logique en relation avec ET, OU, OU exclusif et des sorties Les oprations de combinaison sur bits valuent les tats de signal 1 et 0 et les combinent selon la logique boolenne. Le rsultat de ces combinaisons est gal 1 ou 0. Il sagit du rsultat logique (RLG). Il existe des oprations combinatoires sur bits pour effectuer les fonctions suivantes : ET, OU et Exclusiv-OU interrogent chacune ltat de signal et leur rsultat est soit copi dans le bit de rsultat logique RLG, soit combin au RLG. Combinaisons ET avant OU et OU avant ET Affectation et Connecteur assignent le RLG ou le mmorisent temporairement. Les oprations suivantes ragissent un RLG gal 1 : S : Mettre 1 R : Mettre 0 SR : Bascule mise 1, mise 0 RS : Bascule mise 0, mise 1 Dautres oprations excutent les fonctions suivantes en cas de front montant ou descendant : N : Dtecter front descendant P : Dtecter front montant NEG : Dtecter front descendant de signal POS : Dtecter front montant de signal Les oprations suivantes agissent directement sur le RLG de la manire suivante : Insrer entre binaire Inverser entre binaire SAVE : Sauvegarder RLG dans RB
1-1
1.2
>=1 : Porte OU
Reprsentation
<oprande> <oprande> >=1
Paramtre <oprande>
Zone de mmoire E, A, M, T, Z, D, L
Description
La porte OU vous permet d'interroger l'tat de signal de deux oprandes ou plus indiqus aux entres d'une bote OU. Si l'tat de signal d'un des oprandes est 1, la condition est ralise et l'opration fournit un rsultat gal 1. Si tous les oprandes ont l'tat de signal 0, la condition n'est pas satisfaite et l'opration fournit un rsultat gal 0. Lorsque la porte OU est la premire opration dans une squence combinatoire, elle range le rsultat de son interrogation d'tat de signal dans le bit de rsultat logique (RLG). Lorsqu'elle n'est pas la premire opration dans la squence combinatoire, elle combine le rsultat de son interrogation d'tat de signal la valeur figurant dans le bit RLG. Cette combinaison se fait selon la table de vrit OU.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU X ETAT X RLG X /PI 1
Exemple
>=1
E 0.0 E 0.1
A 4.0 =
La sortie A 4.0 est mise 1 si l'tat de signal est 1 l'entre E 0.0 ou l'entre E 0.1.
1-2
1.3
& : Porte ET
Reprsentation
<oprande> <oprande> &
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, T, Z, D, L
Description
L'oprande indique le bit dont l'tat de signal est interrog.
Description
La porte ET vous permet d'interroger l'tat de signal de deux oprandes ou plus indiqus aux entres d'une bote ET. Si l'tat de signal de tous les oprandes est 1, la condition est ralise et l'opration fournit un rsultat gal 1. En revanche, si un des oprandes a l'tat de signal 0, la condition n'est pas satisfaite et l'opration fournit un rsultat gal 0. Lorsque la porte ET est la premire opration dans une squence combinatoire, elle range le rsultat de son interrogation d'tat de signal dans le bit de rsultat logique (RLG). Lorsqu'elle n'est pas la premire opration dans la squence combinatoire, elle combine le rsultat de son interrogation d'tat de signal la valeur figurant dans le bit RLG. Cette combinaison se fait selon la table de vrit ET.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
Exemple
& A 4.0 =
E 0.0 E 0.1
La sortie A 4.0 est mise 1 si l'tat de signal est 1 aux entres E 0.0 et E 0.1.
1-3
1.4
Description
L'opration ET avant OU vous permet d'interroger le rsultat d'une interrogation d'tat de signal selon la table de vrit OU. Pour une combinaison ET avant OU, l'tat de signal est 1 lorsqu'une combinaison ET au moins est satisfaite.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
Exemple
E 1.0 E 1.1 E 1.2 E 1.3 & & >=1 A 3.1 =
L'tat de signal est 1 la sortie A 3.1 si une combinaison ET au moins est satisfaite. L'tat de signal est 0 la sortie A 3.1 si aucune combinaison ET n'est satisfaite.
Description
L'opration OU avant ET vous permet d'interroger le rsultat d'une interrogation d'tat de signal selon la table de vrit ET. Pour une combinaison OU avant ET, l'tat de signal est 1 lorsque toutes les combinaisons OU sont satisfaites.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
1-4
Exemple
E 1.0 E 1.1 E 1.2 E 1.3 >=1 >=1 & A 3.1 =
L'tat de signal est 1 la sortie A 3.1 si les deux combinaisons OU sont satisfaites. L'tat de signal est 0 la sortie A 3.1 si une combinaison OU au moins n'est pas satisfaite.
1-5
1.5
Reprsentation
<oprande> <oprande> XOR
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, T, Z, D, L
Description
L'oprande indique le bit dont l'tat de signal est interrog.
Description
L'opration OU exclusif vous permet d'interroger le rsultat d'une interrogation d'tat de signal selon la table de vrit OU exclusif. Pour une combinaison OU exclusif, l'tat de signal est 1 lorsque l'tat de signal de l'un des deux oprandes est 1. Si la fonction XOR comprend plus de 2 oprandes, la rgle est la suivante : Si un nombre impair doprandes interrogs fournit en rsultat 1, le rsultat logique de ces oprandes est "1".
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
Exemple
XOR
E 0.0 E 0.2
A 3.1 =
L'tat de signal est 1 la sortie A 3.1 lorsque soit l'tat de signal est 1 l'entre E 0.0 soit il est 1 l'entre E 0.2, et ce exclusivement.
1-6
1.6
Reprsentation
<oprande>
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, T, Z, D, L
Description
L'oprande indique le bit dont l'tat de signal est interrog.
Description
L'opration Insrer entre binaire insre une nouvelle entre binaire aprs l'entre slectionne d'une bote ET, OU ou OU exclusif.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
1
RLG
X
/PI
-
Exemple
E 1.0 E 1.1 E 1.2 & A 4.0 =
La sortie A 4.0 est 1 si l'tat de signal est 1 aux entres E 1.0 et E 1.1 et E 1.2.
1-7
1.7
Reprsentation
Description
L'opration Inverser entre binaire inverse le rsultat logique. Vous devez tenir compte de certaines rgles lors de la ngation du rsultat logique : Il n'y a pas de mise entre parenthses si le rsultat logique est invers au niveau de la premire entre d'une porte ET ou d'une porte OU. Si le rsultat logique n'est pas invers au niveau de la premire entre d'une porte OU, toute la combinaison binaire avant l'entre est incluse dans la combinaison OU. Si le rsultat logique n'est pas invers au niveau de la premire entre d'une porte ET, toute la combinaison binaire avant l'entre est incluse dans la combinaison ET.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
1
RLG
X
/PI
-
Exemple
E 1.0 E 1.1 E 1.2 E 1.3 E 1.4 & >=1 A 4.0 = & &
La sortie A 4.0 est 1 : si l'tat de signal n'est pas 1 aux entres E 1.0 et E 1.1 et que l'tat de signal n'est pas 1 aux entres E 1.2 et E 1.3 ou que l'tat de signal n'est pas 1 l'entre E 1.4.
1-8
1.8
= : Affectation
Reprsentation
<oprande> =
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, D, L
Description
L'oprande indique le bit auquel l'tat de signal de la squence combinatoire est affect.
Description
L'opration Affectation fournit le rsultat logique. La bote au bout de la combinaison dlivre le signal 1 ou 0 selon les critres suivants : La sortie prend le signal 1 lorsque les conditions de la combinaison avant la bote de sortie sont satisfaites. Elle prend le signal 0 lorsque les conditions de la combinaison avant la bote de sortie ne sont pas satisfaites. La combinaison LOG affecte l'tat de signal la sortie laquelle accde l'opration (il reviendrait au mme d'affecter l'tat de signal du bit RLG l'oprande). Si les conditions des combinaisons LOG sont satisfaites, l'tat de signal est 1 la bote de sortie ; sinon, il est gal 0. Le relais de masquage MCR influence l'opration Affectation. Vous ne pouvez placer la bote "Affectation" qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs. Vous pouvez crer une affectation inverse l'aide de l'opration Inverser entre binaire.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
X
RLG
-
/PI
0
Exemple
E 0.0 E 0.1 E 0.2 & >=1 A 4.0 =
L'tat de signal de la sortie A 4.0 est 1 : si l'tat de signal est 1 aux entres E 0.0 et E 0.1 ou si l'tat de signal est 0 l'entre E 0.2
Langage LOG pour SIMATIC S7-300/400 A5E00706956-01
1-9
1.9
# : Connecteur
Reprsentation
<oprande> #
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, D, *L
Description
L'oprande indique le bit auquel le rsultat logique est affect.
Dans lopration Connecteur, vous ne pouvez utiliser un oprande dans la zone de mmoire L que si vous le dclarez la table de dclaration de variables.
Description
L'opration Connecteur est un lment d'affectation intermdiaire qui mmorise le RLG. Cet lment sauvegarde la combinaison sur bits de la dernire branche ouverte avant l'lment d'affectation. Le relais de masquage MCR influence l'opration Connecteur. Vous pouvez crer un connecteur invers en inversant l'entre du connecteur.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
X
RLG
-
/PI
1
1-10
Exemple
M 0.0 E 1.0 E 1.1 E 1.2 E 1.3 E 1.4 & M 1.1 # M 2.2 # >=1 M 3.3 # A 4.0 = & # &
Les connecteurs mmorisent les rsultats de combinaison suivants : M 0.0 mmorise le RLG invers de
E 1.0 E 1.1 &
M 2.2 mmorise le RLG de E 1.4 et M 3.3 mmorise le RLG invers de la combinaison sur bits.
1-11
1.10
R : Mettre 0
Reprsentation
<oprande>
Paramtre
<oprande>
Type de donnes
BOOL TIMER COUNTER
Zone de mmoire
E, A, M, T, Z, D, L
Description
L'oprande indique le bit qui doit tre mis 0.
Description
L'opration Mettre 0 ne s'excute que si le RLG a la valeur 1. Dans ce cas, l'opration met son oprande 0. Si le RLG gale 0, l'opration n'a pas d'effet sur l'oprande prcis qui reste inchang. Le relais de masquage MCR influence l'opration Mettre 0.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
X
RLG
-
/PI
0
Exemple
E 0.0 E 0.1 E 0.2 & >=1 A 4.0 R
L'tat de signal de la sortie A 4.0 est mis 0 si : l'tat de signal est 1 aux entres E 0.0 et E 0.1 ou l'tat de signal est 0 l'entre E 0.2. Si le RLG de la branche est gal 0, l'tat de signal de la sortie A 4.0 reste inchang.
1-12
1.11
S : Mettre 1
Reprsentation
<oprande>
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, D, L
Description
L'oprande indique le bit qui doit tre mis 1.
Description
L'opration Mettre 1 ne s'excute que si le RLG a la valeur 1. Dans ce cas, l'opration met son oprande 1. Si le RLG gale 0, l'opration n'a pas d'effet sur l'oprande prcis qui reste inchang. Le relais de masquage MCR influence l'opration Mettre 1.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
X
RLG
-
/PI
0
Exemple
E 0.0 E 0.1 E 0.2 & >=1 A 4.0 S
L'tat de signal de la sortie A 4.0 est mis 1 : si l'tat de signal est 1 aux entres E 0.0 et E 0.1 ou si l'tat de signal est 0 l'entre E 0.2. Si le RLG de la branche est gal 0, l'tat de signal de la sortie A 4.0 reste inchang.
1-13
1.12
Reprsentation
<oprande> RS S R Q
Paramtre
<oprande> S R Q
Type de donnes
BOOL BOOL BOOL BOOL
Zone de mmoire
E, A, M, D, L E, A, M, D, L, T, Z E, A, M, D, L, T, Z E, A, M, D, L
Description
L'oprande indique le bit qui doit tre mis 1 ou 0. Mise 0 active Mise 1 active Etat de signal de l'<oprande>
Description
L'opration Bascule mise 0, mise 1 n'excute la mise 1 (S) et la mise 0 (R) que lorsque le RLG est gal 1. Lorsque le RLG est gal 0, l'oprande prcis dans l'opration reste inchang. Une Bascule mise 0, mise 1 est mise 1 si l'tat de signal est 1 l'entre R et 0 l'entre S. Si l'tat de signal est 0 l'entre R et 1 l'entre S, la bascule est mise 1. Si le RLG est gal 1 aux deux entres, la bascule est mise 1. Le relais de masquage MCR influence l'opration Bascule mise 0, mise 1.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
Exemple
M 0.0 E 0.0 E 0.1 E 0.0 E 0.1 & S & R Q A 4.0 = RS
Si l'tat de signal est 1 l'entre E 0.0 et 0 l'entre E 0.1, le mmento M 0.0 est mis 0 et la sortie A 4.0 est 0. Si l'tat de signal est 0 l'entre E 0.0 et 1 l'entre E 0.1, le mmento M 0.0 est mis 1 et la sortie A 4.0 est 1. Si les deux tats de signal ont la valeur 0, rien ne se passe. En revanche, s'ils ont tous deux la valeur 1, la mise 1, excute en dernier, l'emporte : M 0.0 est mis 1 et la sortie A 4.0 est 1.
Langage LOG pour SIMATIC S7-300/400 A5E00706956-01
1-14
1.13
Reprsentation
<oprande> SR S R Q
Paramtre
<oprande> S R Q
Type de donnes
BOOL BOOL BOOL BOOL
Zone de mmoire
E, A, M, D, L
Description
L'oprande indique le bit qui doit tre mis 1 ou 0.
Description
L'opration Bascule mise 1, mise 0 n'excute la mise 1 (S) et la mise 0 (R) que lorsque le RLG est gal 1. Lorsque le RLG est gal 0, l'oprande prcis dans l'opration reste inchang. Une Bascule mise 1, mise 0 est mise 1 si l'tat de signal est 1 l'entre S et 0 l'entre R. Si l'tat de signal est 0 l'entre S et 1 l'entre R, la bascule est mise 0. Si le RLG est gal 1 aux deux entres, la bascule est mise 0. Le relais de masquage MCR influence l'opration Bascule mise 1, mise 0.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
Exemple
M 0.0 E 0.0 E 0.1 E 0.0 E 0.1 & S & R Q A 4.0 = SR
Si l'tat de signal est 1 l'entre E 0.0 et 0 l'entre E 0.1, le mmento M 0.0 est mis 1 et la sortie A 4.0 est 1. Si l'tat de signal est 0 l'entre E 0.0 et 1 l'entre E 0.1, le mmento M 0.0 est mis 0 et la sortie A 4.0 est 0. Si les deux tats de signal ont la valeur 0, rien ne se passe. En revanche, s'ils ont tous deux la valeur 1, la mise 0, excute en dernier, l'emporte : M 0.0 est mis 0 et la sortie A 4.0 est 0.
1-15
1.14
Reprsentation
<oprande>
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, D, L
Description
L'oprande indique le mmento de front qui mmorise l'ancien RLG.
Description
L'opration Dtecter front descendant dtecte le passage de 1 0 dans l'oprande indiqu (front descendant) et montre cette transition avec un RLG gal 1 aprs cette opration. L'tat de signal en cours du RLG est compar celui de l'oprande (mmento de front). Si l'tat de signal de l'oprande est 1 et le RLG avant l'opration est 0, le RLG est 1 aprs l'opration (impulsion) ; dans tous les autres cas, le RLG est 0. Le RLG avant l'opration est sauvegard dans l'oprande.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 1.0 E 1.1 E 1.2 E 1.3 E 1.4 & & M 0.0 P
&
M 1.1 N M 2.2 P
&
1-16
1.15
Reprsentation
<oprande>
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, D, L
Description
L'oprande indique le mmento de front qui mmorise l'ancien RLG.
Description
L'opration Dtecter front montant dtecte le passage de 0 1 dans l'oprande indiqu (front montant) et montre cette transition avec un RLG gal 1 aprs cette opration. L'tat de signal en cours du RLG est compar celui de l'oprande (mmento de front). Si l'tat de signal de l'oprande est 0 et le RLG avant l'opration est 1, le RLG est 1 aprs l'opration (impulsion) ; dans tous les autres cas, le RLG est 0. Le RLG avant l'opration est sauvegard dans l'oprande.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 1.0 E 1.1 E 1.2 E 1.3 E 1.4 & & M 0.0 P
&
M 1.1 N M 2.2 P
&
1-17
1.16
Reprsentation
SAVE
Description
L'opration Sauvegarder RLG dans RB sauvegarde le rsultat logique dans le bit de rsultat binaire du mot d'tat. Elle ne remet toutefois pas 1 le bit de premire interrogation /PI, ce qui entrane, en cas de combinaison ET dans le rseau suivant, la prise en compte de l'tat du bit RB. Contrairement ce que vous trouvez spcifi dans le manuel, il convient d'utiliser l'opration "SAVE" (CONT, LOG, LIST) dans les cas suivants : L'utilisation de SAVE suivie d'une interrogation du bit RB dans le mme bloc ou dans des blocs subordonns n'est pas recommande car le bit RB risque d'tre modifi plusieurs fois durant les nombreuses oprations excutes entre. Utilisez plutt l'opration SAVE avant de quitter un bloc, car la sortie de validation ENO (= bit RB) est mise la valeur du bit RLG et que vous pouvez enchaner par le dpistage d'erreurs du bloc.
Mot d'tat
RB
Ecriture X
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
-
RLG
-
/PI
-
Exemple
E 1.2 E 1.3 & SAVE
Le rsultat logique est sauvegard dans le bit de rsultat binaire. RB Rsultat binaire (mot d'tat, bit 8)
1-18
1.17
Reprsentation
<oprande1> NEG M_BIT Q
Paramtre
<oprande1> M_BIT
Type de donnes
BOOL BOOL
Zone de mmoire
E, A, M, D, L A, M, D
Description
Signal interroger pour dtecter un front descendant L'oprande M_BIT indique le mmento de front qui mmorise l'tat de signal prcdent de NEG. N'utilisez la mmoire image des entres (E) pour M_BIT que si aucun module d'entres n'occupe dj cet oprande. Sortie monostable
BOOL
E, A, M, D, L
Description
L'opration Dtecter front descendant de signal compare l'tat de signal de <oprande1> celui provenant de l'interrogation prcdente figurant dans le paramtre M_BIT. En cas de passage de 1 0, la sortie Q est mise 1 ; dans tous les autres cas, elle est mise 0.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
X
/PI
1
Exemple
E 0.3 NEG M 0.0 M_BIT Q E 0.4 & A 4.0 =
La sortie A 4.0 est 1 si : il y a un front descendant l'entre E 0.3 et l'tat de signal est 1 l'entre E 0.4.
1-19
1.18
Reprsentation
<oprande1> POS M_BIT Q
Paramtre
<oprande1> M_BIT
Type de donnes
BOOL BOOL
Zone de mmoire
E, A, M, D, L A, M, D
Description
Signal interroger pour dtecter un front montant L'oprande M_BIT indique le mmento de front qui mmorise l'tat de signal prcdent de POS. N'utilisez la mmoire image des entres (E) pour M_BIT que si aucun module d'entres n'occupe dj cet oprande. Sortie monostable
BOOL
E, A, M, D, L
Description
L'opration Dtecter front montant de signal compare l'tat de signal de <oprande1> celui provenant de l'interrogation prcdente figurant dans le paramtre M_BIT. En cas de passage de 0 1, la sortie Q est mise 1 ; dans tous les autres cas, elle est mise 0.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
X
/PI
1
Exemple
E 0.3 POS M 0.0 M_BIT Q E 0.4 & A 4.0 =
La sortie A 4.0 est 1 si : il y a un front montant l'entre E 0.3 et l'tat de signal est 1 l'entre E 0.4.
1-20
Oprations de comparaison
2.1
Description
Les oprations de comparaison comparent les entres IN1 et IN2 selon les types de comparaison suivants : == <> > < >= <= IN1 IN1 IN1 IN1 IN1 IN1 gal IN2 diffrent de IN2 suprieur IN2 infrieur IN2 suprieur ou gal IN2 infrieur ou gal IN2
Si la comparaison est vraie, son rsultat logique (RLG) est 1 ; sinon, il est gal 0. Il ny a pas de ngation du rsultat de la comparaison, car cela peut tre obtenu laide de lopration de comparaison inverse. Vous disposez des oprations de comparaison suivantes : CMP ? I : Comparer entiers de 16 bits CMP ? D : Comparer entiers de 32 bits CMP ? R : Comparer nombres rels
2-1
Oprations de comparaison
2.2
Reprsentation
CMP == I
IN1 IN2
CMP >I
IN1 IN2
CMP >= I
IN1 IN2
CMP <> I
IN1 IN2
CMP <I
IN1 IN2
CMP <= I
IN1 IN2
Paramtre
IN1 IN2 Sortie bote
Type de donnes
INT INT BOOL
Zone de mmoire
E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L
Description
Premier terme de la comparaison Second terme de la comparaison Rsultat de la comparaison
Description
L'opration Comparer entiers de 16 bits compare les entres IN1 et IN2 - deux nombres entiers de 16 bits - selon le type de comparaison que vous avez slectionn.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
0
DM
-
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
CMP == I IN1 IN2
&
E 0.0 A 4.0 S
MW0 MW2
La sortie A 4.0 est mise 1 si : MW0 = MW2 et l'tat de signal est 1 l'entre E 0.0.
2-2
Oprations de comparaison
2.3
Reprsentation
CMP == D
IN1 IN2
CMP >D
IN1 IN2
CMP >= D
IN1 IN2
CMP <> D
IN1 IN2
CMP <D
IN1 IN2
CMP <= D
IN1 IN2
Paramtre
IN1 IN2 Sortie bote
Type de donnes
DINT DINT BOOL
Zone de mmoire
E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L
Description
Premier terme de la comparaison Second terme de la comparaison Rsultat de la comparaison
Description
L'opration Comparer entiers de 32 bits compare les entres IN1 et IN2 - deux nombres entiers de 32 bits - selon le type de comparaison que vous avez slectionn.
Mot d'tat
RB
Ecriture -
BI1
X
BI0
X
DEB
0
DM
-
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
CMP <> D IN1 IN2
&
E 0.0 A 4.0 S
MD0 MD4
La sortie A 4.0 est mise 1 si : MD0 est diffrent de MD4 et l'tat de signal est 1 l'entre E 0.0.
2-3
Oprations de comparaison
2.4
Reprsentation
CMP == R
IN1 IN2
CMP >R
IN1 IN2
CMP >= R
IN1 IN2
CMP <> R
IN1 IN2
CMP <R
IN1 IN2
CMP <= R
IN1 IN2
Paramtre
IN1 IN2 Sortie bote
Type de donnes
REAL REAL BOOL
Zone de mmoire
E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L
Description
Premier terme de la comparaison Second terme de la comparaison Rsultat de la comparaison
Description
L'opration Comparer nombres rels compare les entres IN1 et IN2 - deux nombres rels - selon le type de comparaison que vous avez slectionn.
Mot d'tat
RB
Ecriture -
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
CMP <R IN1 IN2
&
E 0.0 A 4.0 S
MD0 MD4
La sortie A 4.0 est mise 1 si : MD0 < MD4 et l'tat de signal est 1 l'entre E 0.0.
2-4
Oprations de conversion
3.1
Description
Les oprations suivantes permettent de convertir des nombres dcimaux cods binaires et des nombres entiers en dautres types de nombres : BCD_I : Convertir nombre DCB en entier de 16 bits I_BCD : Convertir entier de 16 bits en nombre DCB BCD_DI : Convertir nombre DCB en entier de 32 bits I_DI : Convertir entier de 16 bits en entier de 32 bits DI_BCD : Convertir entier de 32 bits en nombre DCB DI_R : Convertir entier de 32 bits en nombre rel
Les oprations suivantes permettent de former le complment de nombres entiers ou de raliser linversion de nombres virgule flottante : INV_I : Complment 1 d'entier de 16 bits INV_DI : Complment 1 d'entier de 32 bits NEG_I : Complment 2 d'entier de 16 bits NEG_DI : Complment 2 d'entier de 32 bits NEG_R : Inverser le signe d'un nombre rel
Les oprations suivantes permettent de convertir le nombre virgule flottante IEEE de 32 en un nombre entier de 32 bits (entier double). Les diffrentes oprations se distinguent par leur faon darrondir : ROUND : Arrondir entier de 32 bits TRUNC : Tronquer la partie entire (32 bits) CEIL : Convertir nombre rel en entier suprieur le plus proche FLOOR : Convertir nombre rel en entier infrieur le plus proche
3-1
Oprations de conversion
3.2
Reprsentation
BCD_I EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL WORD INT BOOL
Description
L'opration Convertir nombre DCB en entier de 16 bits lit le contenu du paramtre d'entre IN comme nombre dcimal cod binaire trois chiffres (DCB, + 999), le convertit en un nombre entier de 16 bits et range le rsultat dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique. Si l'un des chiffres du nombre DCB se trouve dans la plage non autorise entre 10 et 15, une erreur DCB se produit durant la conversion : La CPU passe l'tat de fonctionnement "Arrt" (STOP). La mmoire tampon de diagnostic indique une "Erreur de conversion DCB" dont le numro d'vnement est 2521. S'il a t programm, l'OB121 est appel.
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
Exemple
E 0.0 MW10 BCD_I EN OUT IN ENO MW12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du mot de mmento MW10 est lu comme nombre DCB trois chiffres et converti en nombre entier de 16 bits. Le rsultat est rang dans MW12. La sortie A 4.0 est mise 1 si la conversion est excute (ENO = EN).
3-2
Oprations de conversion
3.3
Reprsentation
I_BCD EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL INT WORD BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Nombre entier de 16 bits Valeur DCB du nombre entier de 16 bits Sortie de validation
Description
L'opration Convertir entier de 16 bits en nombre DCB lit le contenu du paramtre d'entre IN comme nombre entier de 16 bits, le convertit en un nombre dcimal cod binaire trois chiffres (DCB, + 999) et range le rsultat dans le paramtre de sortie OUT. En cas de dbordement, ENO est mis 0.
Mot d'tat
RB
Ecriture X
BI1
-
BI0
-
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 0.0 MW10 I_BCD EN OUT IN ENO MW12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du mot de mmento MW10 est lu comme nombre entier de 16 bits et converti en nombre DCB trois chiffres. Le rsultat est rang dans MW12. En cas de dbordement, la sortie A 4.0 est mise 0. Si l'tat de signal l'entre EN est gal 0 (la conversion n'est pas excute), l'tat de signal la sortie A 4.0 est galement 0.
3-3
Oprations de conversion
3.4
Reprsentation
BCD_DI EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL DWORD DINT BOOL
Description
L'opration Convertir nombre DCB en entier de 32 bits lit le contenu du paramtre d'entre IN comme nombre dcimal cod binaire sept chiffres (DCB, + 9 999 999), le convertit en un nombre entier de 32 bits et range le rsultat dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique. Si l'un des chiffres du nombre DCB se trouve dans la plage non autorise entre 10 et 15, une erreur DCB se produit durant la conversion : La CPU passe l'tat de fonctionnement "Arrt" (STOP). La mmoire tampon de diagnostic indique une "Erreur de conversion DCB" dont le numro d'vnement est 2521. S'il a t programm, l'OB121 est appel.
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
Exemple
E 0.0 MD8 BCD_DI EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est lu comme nombre DCB sept chiffres et converti en nombre entier de 32 bits. Le rsultat est rang dans MD12. La sortie A 4.0 est mise 1 si la conversion est excute (ENO = EN).
3-4
Oprations de conversion
3.5
Reprsentation
I_DI EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL INT DINT BOOL
Description
L'opration Convertir entier de 16 bits en entier de 32 bits lit le contenu du paramtre d'entre IN comme nombre entier de 16 bits, le convertit en un nombre entier de 32 bits et range le rsultat dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique.
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
Exemple
E 0.0 MW10 I_DI EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du mot de mmento MW10 est lu comme nombre entier de 16 bits et converti en nombre entier de 32 bits. Le rsultat est rang dans MD12. La sortie A 4.0 est mise 1 si la conversion est excute (ENO = EN).
3-5
Oprations de conversion
3.6
Reprsentation
DI_BCD EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL DINT DWORD BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Nombre entier de 32 bits Valeur DCB du nombre entier de 32 bits Sortie de validation
Description
L'opration Convertir entier de 32 bits en nombre DCB lit le contenu du paramtre d'entre IN comme nombre entier de 32 bits, le convertit en un nombre dcimal cod binaire sept chiffres (DCB, + 9 999 999) et range le rsultat dans le paramtre de sortie OUT. En cas de dbordement, ENO est mis 0.
Mot d'tat
RB
Ecriture X
BI1
-
BI0
-
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 0.0 MD8 DI_BCD EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est lu comme nombre entier de 32 bits et converti en nombre DCB sept chiffres. Le rsultat est rang dans MD12. En cas de dbordement, la sortie A 4.0 est mise 0. Si l'tat de signal l'entre EN est gal 0 (la conversion n'est pas excute), l'tat de signal la sortie A 4.0 est galement 0.
3-6
Oprations de conversion
3.7
Reprsentation
DI_R EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL DINT REAL BOOL
Description
L'opration Convertir entier de 32 bits en nombre rel lit le contenu du paramtre d'entre IN comme nombre entier de 32 bits, le convertit en un nombre rel et range le rsultat dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique.
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
Exemple
E 0.0 MD8 DI_R EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est lu comme nombre entier de 32 bits et converti en nombre rel. Le rsultat est rang dans MD12. La sortie A 4.0 est mise 0 si la conversion n'est pas excute (ENO = EN).
3-7
Oprations de conversion
3.8
Reprsentation
INV_I EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL INT INT BOOL
Description
L'opration Complment 1 d'entier de 16 bits lit le contenu du paramtre d'entre IN et excute l'opration de combinaison OU exclusif mot avec le masque hexadcimal FFFF afin d'inverser la valeur de chaque bit. Le rsultat est rang dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique.
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
Exemple
E 0.0 MW8 INV_I EN OUT IN ENO MW10
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Chaque bit de MW8 est invers : MW8 = 01000001 10000001 -> MW10 = 10111110 01111110 Si E 0.0 est gal 0, la conversion n'est pas excute et la sortie A 4.0 est mise 0 (ENO = EN).
3-8
Oprations de conversion
3.9
Reprsentation
INV_DI EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL DINT DINT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur d'entre Complment 1 du nombre entier de 32 bits Sortie de validation
Description
L'opration Complment 1 d'entier de 32 bits lit le contenu du paramtre d'entre IN et excute l'opration de combinaison OU exclusif double mot avec le masque hexadcimal FFFF FFFF afin d'inverser la valeur de chaque bit. Le rsultat est rang dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique.
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
Exemple
E 0.0 MD8 INV_DI EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Chaque bit du double mot de mmento MD8 est invers : MD8 = F0FF FFF0 -> MD12 = 0F00 000F Si E 0.0 est gal 0, la conversion n'est pas excute et la sortie A 4.0 est mise 0 (ENO = EN).
3-9
Oprations de conversion
3.10
Reprsentation
NEG_I EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL INT INT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur d'entre Complment 2 du nombre entier de 16 bits Sortie de validation
Description
L'opration Complment 2 d'entier de 16 bits lit le contenu du paramtre d'entre IN et en change le signe (par exemple, valeur positive en valeur ngative). Le rsultat est rang dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique. Exception : si l'tat de signal de EN est gal 1 et qu'il y ait dbordement, l'tat de signal de ENO est gal 0.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 0.0 MW8 NEG_I EN OUT IN ENO MW10
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du mot de mmento MW8 est rang dans le paramtre de sortie OUT - mot de mmento MW10 - avec le signe oppos. MW8 = +10 -> MW10 = - 10 Si l'tat de signal de EN est gal 1 et qu'il y ait dbordement, l'tat de signal de ENO ainsi que celui de la sortie A 4.0 sont gaux 0. La sortie A 4.0 est mise 0 si la conversion n'est pas excute (ENO = EN).
3-10
Oprations de conversion
3.11
Reprsentation
NEG_DI EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL DINT DINT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur d'entre Complment 2 du nombre entier de 32 bits Sortie de validation
Description
L'opration Complment 2 d'entier de 32 bits lit le contenu du paramtre d'entre IN et en change le signe (par exemple, valeur positive en valeur ngative). Le rsultat est rang dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique. Exception : si l'tat de signal de EN est gal 1 et qu'il y ait dbordement, l'tat de signal de ENO est gal 0.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 0.0 MD8 NEG_DI EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est rang dans le paramtre de sortie OUT - double mot de mmento MD12 - avec le signe oppos. MD8 = + 60.000 -> MD12 = - 60.000. Si l'tat de signal de EN est gal 1 et qu'il y ait dbordement, l'tat de signal de ENO ainsi que celui de la sortie A 4.0 sont gaux 0. La sortie A 4.0 est mise 0 si la conversion n'est pas excute (ENO = EN).
3-11
Oprations de conversion
3.12
Reprsentation
NEG_R EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur d'entre Le rsultat est la ngation de la valeur d'entre. Sortie de validation
Description
L'opration Inverser le signe d'un nombre rel lit le contenu du paramtre d'entre IN et en change le bit de signe (par exemple, de 0 pour une valeur positive en 1 pour une valeur ngative). Les bits de l'exposant et de la mantisse restent inchangs. Le rsultat est rang dans le paramtre de sortie OUT. ENO et EN ont toujours un tat de signal identique. Exception : si l'tat de signal de EN est gal 1 et qu'il y ait dbordement, l'tat de signal de ENO est gal 0.
Mot d'tat
RB
Ecriture X
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 0.0 MD8 NEG_R EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est rang dans le paramtre de sortie OUT - double mot de mmento MD12 - avec le signe oppos. MD8 = + 6,234 -> MD12 = - 6,234 La sortie A 4.0 est mise 0 si la conversion n'est pas excute (ENO = EN).
3-12
Oprations de conversion
3.13
Reprsentation
ROUND EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL DINT BOOL
Description
L'opration Arrondir entier de 32 bits lit le contenu du paramtre d'entre IN comme nombre rel et le convertit en nombre entier de 32 bits. Le rsultat, qui est le nombre entier le plus proche, est rang dans le paramtre de sortie OUT. Si la partie fractionnaire est gale "x,5", le rsultat fourni est le nombre pair (exemple : 2,5 -> 2 et 1,5 -> 2). En cas de dbordement, ENO est mis 0. Si l'entre n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) prennent la valeur 1 et ENO est gal 0.
Mot d'tat
RB
Ecriture X
BI1
-
BI0
-
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 0.0 MD8 ROUND EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est lu comme nombre rel et converti en nombre entier de 32 bits selon le principe "arrondi au plus proche". Le rsultat est rang dans MD12. En cas de dbordement, la sortie A 4.0 est mise 0. Si l'tat de signal de l'entre EN est gal 0 (conversion non excute), l'tat de signal de la sortie A 4.0 est galement 0.
3-13
Oprations de conversion
3.14
Reprsentation
TRUNC EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL DINT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur tronquer Partie entire de IN Sortie de validation
Description
L'opration Tronquer la partie entire (32 bits) lit le contenu du paramtre d'entre IN comme nombre rel et le convertit en nombre entier de 32 bits (exemple : 1,5 devient 1). Le rsultat, qui est la partie entire du nombre rel, est rang dans le paramtre de sortie OUT. En cas de dbordement, ENO est mis 0. Si l'entre n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) prennent la valeur 1 et ENO est gal 0.
Mot d'tat
RB Ecriture X BI1 BI0 DEB X DM X OU 0 ETAT X RLG X /PI 1
Exemple
E 0.0 MD8 TRUNC EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est lu comme nombre rel et converti en nombre entier de 32 bits selon le principe "arrondi zro". Le rsultat, qui est la partie entire du nombre rel, est rang dans MD12. En cas de dbordement, la sortie A 4.0 est mise 0. Si l'tat de signal de l'entre EN est gal 0 (conversion non excute), l'tat de signal de la sortie A 4.0 est galement 0.
3-14
Oprations de conversion
3.15
Reprsentation
CEIL EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL DINT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur convertir Rsultat Sortie de validation
Description
L'opration Convertir nombre rel en entier suprieur le plus proche lit le contenu du paramtre d'entre IN comme nombre rel et le convertit en un nombre entier de 32 bits (exemple : +1,2 -> +2 et -1,5 -> -1). Le rsultat, qui est le nombre entier suprieur le plus proche du nombre rel indiqu, est rang dans le paramtre de sortie OUT. En cas de dbordement, ENO est mis 0. Si l'entre n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) prennent la valeur 1 et ENO est gal 0.
Mot d'tat
RB
Ecriture X
BI1
-
BI0
-
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 0.0 MD8 CEIL EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est lu comme nombre rel et converti en nombre entier de 32 bits selon le principe "arrondi plus l'infini". Le rsultat est rang dans MD12. En cas de dbordement, la sortie A 4.0 est mise 0. Si l'tat de signal de l'entre EN est gal 0 (conversion non excute), l'tat de signal de la sortie A 4.0 est galement 0.
3-15
Oprations de conversion
3.16
Reprsentation
FLOOR EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL DINT BOOL
Description
L'opration Convertir nombre rel en entier infrieur le plus proche lit le contenu du paramtre d'entre IN comme nombre rel et le convertit en un nombre entier de 32 bits (exemple : +1,5 -> +1 et -1,5 -> -2). Le rsultat, qui est le nombre entier infrieur le plus proche du nombre rel indiqu, est rang dans le paramtre de sortie OUT. En cas de dbordement, ENO est mis 0. Si l'entre n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) prennent la valeur 1 et ENO est gal 0.
Mot d'tat
RB
Ecriture X
BI1
-
BI0
-
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
E 0.0 MD8 FLOOR EN OUT IN ENO MD12
A 4.0 =
La conversion est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu du double mot de mmento MD8 est lu comme nombre rel et converti en nombre entier de 32 bits selon le principe "arrondi moins l'infini". Le rsultat est rang dans MD12. En cas de dbordement, la sortie A 4.0 est mise 0. Si l'tat de signal de l'entre EN est gal 0 (conversion non excute), l'tat de signal de la sortie A 4.0 est galement 0.
3-16
Oprations de comptage
4.1
Zone de mmoire
Une zone de mmoire est rserve aux compteurs dans votre CPU. Un mot de 16 bits y est rserv pour chaque compteur. La programmation en LOG permet dutiliser jusqu 256 compteurs. Les oprations de comptage sont les seules fonctions avoir accs la zone de mmoire rserve aux compteurs.
Valeur de comptage
La valeur de comptage est contenue dans les bits 0 9 du mot de comptage. Lorsque le compteur est mis 1, la valeur que vous avez dfinie y est place par laccumulateur. La plage de la valeur de comptage est comprise entre 0 et 999. Vous pouvez modifier cette valeur en utilisant les oprations : ZAEHLER : Paramtrage et compteur incrmental/dcrmental Z_VORW : Paramtrage et compteur incrmental Z_RUECK : Paramtrage et compteur dcrmental SZ : Initialiser compteur ZV : Incrmenter ZR : Dcrmenter
4-1
Oprations de comptage
15 14 13 12 11 10 0 0
9 0
8 1
7 0
6 0
5 1
4 0
3 0
2 1
1 1
0 1
non significatifs
15 14 13 12 11 10
9 0
8 0
7 0
6 1
5 1
4 1
3 1
2 1
1 1
0 1
non significatifs
4-2
Oprations de comptage
4.2
Reprsentation
Anglaise
C no. S_CUD CU CD S PV R
Allemande
Z-Nr. ZAEHLER ZV ZR S DUAL ZW R DEZ Q
CV CV_BCD Q
Type de donnes
COUNTER BOOL BOOL BOOL WORD
Zone de mmoire
Z E, A, M, D, L, T, Z E, A, M, D, L E, A, M, D, L E, A, M, D, L ou constante
Description
Numro d'identification du compteur. La plage dpend de la CPU. Entre d'incrmentation Entre de dcrmentation Entre d'initialisation du compteur Valeur de comptage comprise entre 0 et 999 ou valeur de comptage saisie en format DCB sous la forme C#<valeur>
R CV CV_BCD Q
R DUAL DEZ Q
E, A, M, D, L,T, Entre de remise zro Z E, A, M, D, L E, A, M, D, L E, A, M, D, L Valeur de comptage en cours (format hexadcimal) Valeur de comptage en cours (format DCB) Etat du compteur
4-3
Oprations de comptage
Description
Un front montant (transition de 0 1) l'entre S de l'opration Paramtrage et compteur incrmental/dcrmental initialise le compteur la valeur figurant dans l'entre ZW. La valeur du compteur est incrmente d'une unit en cas de front montant l'entre ZV si la valeur de comptage est infrieure 999 ; elle est dcrmente d'une unit en cas de front montant l'entre ZR si la valeur de comptage est suprieure 0. En cas de front montant aux deux entres de comptage, les deux oprations sont traites et la valeur de comptage reste inchange. Si le compteur est mis 1 et si le RLG = 1 aux entres ZV/ZR, le compteur compte de la mme manire dans le cycle suivant, mme si aucun changement de front na eu lieu. La valeur 1 l'entre R remet le compteur zro ; la valeur de comptage prend la valeur nulle. L'interrogation 1 de l'tat de signal la sortie Q donne 1 comme rsultat lorsque la valeur de comptage est suprieure 0 ; cette interrogation donne 0 comme rsultat lorsque la valeur de comptage est gale 0.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
Exemple
Z10 E 0.0 E 0.1 E 0.2 C#55 E 0.3 ZAEHLER ZV ZR S ZW R DUAL DEZ Q A 4.0 =
Le compteur Z10 est initialis la valeur 55 si l'tat de signal passe de 0 1 l'entre E 0.2. Si l'tat de signal de E 0.0 passe de 0 1, la valeur du compteur Z10 est incrmente d'un moins qu'elle ne soit dj gale 999. Si l'tat de signal de E 0.1 passe de 0 1, la valeur du compteur Z10 est dcrmente d'un moins qu'elle ne soit dj gale 0. Si l'tat de signal de l'entre E 0.3 passe de 0 1, la valeur de comptage de Z10 est mise zro. La sortie A 4.0 est 1 tant que Z10 est diffrent de zro.
Nota Il est recommand d'utiliser un compteur un seul emplacement dans le programme (risque derreurs de comptage).
4-4
Oprations de comptage
4.3
Reprsentation
Anglaise C no. S_CU CU S PV R CV CV_BCD Q Allemande Z-Nr. Z_VORW ZV S ZW R DUAL DEZ Q
Paramtre Anglaise
C no. CU S PV
Paramtre Allemande
Z Nr. ZV S ZW
Type de donnes
COUNTER BOOL BOOL WORD
Zone de mmoire
Z E, A, M, D, L
Description
Numro d'identification du compteur. La plage dpend de la CPU. Entre d'incrmentation
E, A, M, D, L, Entre d'initialisation du compteur T, Z E, A, M, D, L ou constante Valeur de comptage comprise entre 0 et 999 ou valeur de comptage saisie en format DCB sous la forme C#<valeur>
R CV CV_BCD Q
R DUAL DEZ Q
E, A, M, D, L, Entre de remise zro T, Z E, A, M, D, L E, A, M, D, L E, A, M, D, L Valeur de comptage en cours (format hexadcimal) Valeur de comptage en cours (format DCB) Etat du compteur
4-5
Oprations de comptage
Description
Un front montant (transition de 0 1) l'entre S de l'opration Paramtrage et compteur incrmental initialise le compteur la valeur figurant dans l'entre ZW. La valeur du compteur est incrmente d'une unit en cas de front montant l'entre ZV si la valeur de comptage est infrieure 999. Si le compteur est mis 1 et si le RLG = 1 aux entres ZV/ZR, le compteur compte de la mme manire dans le cycle suivant, mme si aucun changement de front na eu lieu. La valeur 1 l'entre R remet le compteur zro ; la valeur de comptage prend la valeur nulle. L'interrogation 1 de l'tat de signal la sortie Q donne 1 comme rsultat lorsque la valeur de comptage est suprieure 0 ; cette interrogation donne 0 comme rsultat lorsque la valeur de comptage est gale 0.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
Exemple
Z10 Z_VORW E 0.0 E 0.2 C#901 E 0.3 ZV S ZW R DUAL DEZ Q A 4.0 =
Le compteur Z10 est initialis la valeur 901 si l'tat de signal passe de 0 1 l'entre E 0.2. Si l'tat de signal de E 0.0 passe de 0 1, la valeur du compteur Z10 est incrmente d'un moins qu'elle ne soit dj gale 999. Si l'tat de signal de l'entre E 0.3 passe de 0 1, la valeur de comptage de Z10 est mise zro. La sortie A 4.0 est 1 tant que Z10 est diffrent de zro.
Nota Il est recommand d'utiliser un compteur un seul emplacement dans le programme (risque derreurs de comptage).
4-6
Oprations de comptage
4.4
Reprsentation
Anglaise C no. S_CD CD S PV R CV CV_BCD Q Allemande Z-Nr. Z_RUECK ZR S ZW R DUAL DEZ Q
Paramtre Anglaise
C no. CD S PV
Paramtre Allemande
Z Nr. ZR S ZW
Type de donnes
COUNTER BOOL BOOL WORD
Zone de mmoire
Z E, A, M, D, L
Description
Numro d'identification du compteur. La plage dpend de la CPU. Entre de dcrmentation
E, A, M, D, L, Entre d'initialisation du compteur T, Z E, A, M, D, L ou constante Valeur de comptage comprise entre 0 et 999 ou valeur de comptage saisie en format DCB sous la forme C#<valeur>
R CV CV_BCD Q
R DUAL DEZ Q
E, A, M, D, L, Entre de remise zro T, Z E, A, M, D, L E, A, M, D, L E, A, M, D, L Valeur de comptage en cours (format hexadcimal) Valeur de comptage en cours (format DCB) Etat du compteur
Description
Un front montant (transition de 0 1) l'entre S de l'opration Paramtrage et compteur dcrmental initialise le compteur la valeur figurant dans l'entre ZW. La valeur du compteur est dcrmente d'une unit en cas de front montant l'entre ZR si la valeur de comptage est suprieure 0. Si le compteur est mis 1 et si le RLG = 1 aux entres ZV/ZR, le compteur compte de la mme manire dans le cycle suivant, mme si aucun changement de front na eu lieu. La valeur 1 l'entre R remet le compteur zro ; la valeur de comptage prend la valeur nulle. L'interrogation 1 de l'tat de signal la sortie Q donne 1 comme rsultat lorsque la valeur de comptage est suprieure 0 ; cette interrogation donne 0 comme rsultat lorsque la valeur de comptage est gale 0.
4-7
Oprations de comptage
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
X
ETAT
X
RLG
X
/PI
1
Exemple
Z10 Z_RUECK E 0.0 E 0.2 C#89 E 0.3 ZR S ZW R DUAL DEZ Q A 4.0 =
Le compteur Z10 est initialis la valeur 89 si l'tat de signal passe de 0 1 l'entre E 0.2. Si l'tat de signal de E 0.0 passe de 0 1, la valeur du compteur Z10 est dcrmente d'un moins qu'elle ne soit dj gale 0. Si l'tat de signal de l'entre E 0.3 passe de 0 1, la valeur de comptage de Z10 est mise zro.
Nota Il est recommand d'utiliser un compteur un seul emplacement dans le programme (risque derreurs de comptage).
4-8
Oprations de comptage
4.5
SZ : Initialiser compteur
Reprsentation
Anglaise <oprande1> SC <oprande2> CV <oprande2> Allemande <oprande1> SZ ZW
Description <oprande1> indique le numro du compteur qui doit tre initialis. La valeur d'initialisation (oprande2) peut tre comprise entre 0 et 999. Pour une constante, elle doit tre prcde de C# afin d'indiquer le format DCB, par exemple C#100.
Description
L'opration Initialiser compteur vous permet d'affecter une valeur initiale au compteur que vous avez dfini. Elle ne s'excute que si le RLG prsente un front montant (c'est--dire s'il passe de 0 1). Vous ne pouvez placer la bote Initialiser compteur qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU 0 ETAT RLG /PI 0
Exemple
Z5 SZ ZW
E 0.0 C#100
Si l'tat de signal l'entre E 0.0 passe de 0 1 (front montant du RLG), le compteur Z5 est initialis avec la valeur 100. C# indique que vous entrez une valeur en format DCB. En l'absence de front montant, la valeur de Z5 reste inchange.
4-9
Oprations de comptage
4.6
ZV : Incrmenter
Reprsentation
Anglaise
<oprande> CU
Allemande
<oprande> ZV
Zone de mmoire Z
Description
L'opration Incrmenter incrmente d'un la valeur du compteur prcis si le RLG prsente un front montant (c'est--dire s'il passe de 0 1) et si la valeur du compteur est infrieure 999. En l'absence de front montant au RLG ou si le compteur est dj gal 999, la valeur du compteur reste inchange. L'opration Initialiser compteur permet d'initialiser le compteur. Vous ne pouvez placer la bote Incrmenter qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU 0 ETAT RLG /PI 0
Exemple
Z10 E 0.0 ZV
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), la valeur du compteur Z10 est incrmente de 1, moins qu'elle ne soit dj gale 999. En l'absence de front montant, la valeur de Z10 reste inchange.
4-10
Oprations de comptage
4.7
ZR : Dcrmenter
Reprsentation
Anglaise
<oprande> CD
Allemande
<oprande> ZR
Paramtre
Numro de compteur
Type de donnes
COUNTER
Zone de mmoire
Z
Description
L'oprande indique le numro du compteur dcrmenter.
Description
L'opration Dcrmenter dcrmente d'un la valeur du compteur prcis si le RLG prsente un front montant (c'est--dire s'il passe de 0 1) et si la valeur du compteur est suprieure 0. En l'absence de front montant au RLG ou si le compteur est dj gal 0, la valeur du compteur reste inchange. L'opration Initialiser compteur permet d'initialiser le compteur (voir aussi la rubrique Initialiser compteur). Vous ne pouvez placer la bote Dcrmenter qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
-
RLG
-
/PI
0
Exemple
Z10 E 0.0 ZR
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), la valeur du compteur Z10 est dcrmente de 1, moins qu'elle ne soit dj gale 0. En l'absence de front montant, la valeur de Z10 reste inchange.
4-11
Oprations de comptage
4-12
5.1
Reprsentation
<DB numro> ou <DI numro> OPN
Paramtre
Numro du DB ou du DI
Type de donnes
-
Zone de mmoire
-
Description
Numro du DB ou du DI. La plage autorise dpend de votre CPU.
Description
L'opration Ouvrir bloc de donnes ouvre un bloc de donnes (DB) ou un bloc de donnes d'instance (DI). Le numro du bloc de donnes est transfr dans le registre DB ou DI. Les commandes DB et DI suivantes accdent aux blocs de donnes correspondant au contenu de ces registres.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
-
RLG
-
/PI
-
5-1
Exemple
Rseau 1 DB10 OPN
Le DB10 est le DB ouvert en cours. C'est pourquoi l'interrogation en DBX 0.0 se rfre au bit 0 de l'octet de donnes 0 du bloc de donnes DB10. L'tat de signal de ce bit est affect la sortie A 4.0.
5-2
Oprations de saut
6.1
Description
Vous pouvez utiliser cette opration dans tous les blocs de code, savoir les blocs dorganisation (OB), les blocs fonctionnels (FB) et les fonctions (FC). Vous disposez des oprations de saut suivantes : JMP : Saut inconditionnel JMPN : Saut si 0 (conditionnel) JMP : Saut si 1 (conditionnel)
. .
Rseau X SEG3 A 4.1 E 0.4 R
6-1
Oprations de saut
6.2
Reprsentation
<oprande> JMP
Paramtre
Type de donnes
Zone de mmoire
-
Description
L'oprande indique le repre vers lequel doit se faire le saut inconditionnel.
Description
L'opration Saut inconditionnel correspond une opration Aller un repre de saut. Aucune des oprations entre l'opration de saut et le repre de saut n'est excute. Vous pouvez utiliser cette opration dans tous les blocs de code, savoir les blocs d'organisation (OB), les blocs fonctionnels (FB) et les fonctions (FC). Il ne doit pas y avoir de combinaison en amont de la bote Saut inconditionnel.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
-
RLG
-
/PI
-
Exemple
Rseau 1 CAS1 ??.? JMP
. .
Rseau X CAS1 A 4.1 E 0.4 R
Le saut est excut chaque fois. Aucune des oprations entre l'opration de saut et le repre de saut n'est excute.
6-2
Oprations de saut
6.3
Reprsentation
<oprande> JMP
Paramtre
Type de donnes
Zone de mmoire
-
Description
L'oprande indique le repre vers lequel doit se faire le saut si le RLG est gal 1.
Description
L'opration Saut si 1 (conditionnel) correspond une opration Aller un repre de saut si le RLG est gal 1. Pour cette opration, utilisez l'lment LOG Saut inconditionnel, mais avec une combinaison en amont. Le saut conditionnel n'est excut que si le rsultat logique de cette combinaison est gal 1. Dans ce cas, aucune des oprations entre l'opration de saut et le repre de saut n'est excute. Vous pouvez utiliser cette opration dans tous les blocs de code, savoir les blocs d'organisation (OB), les blocs fonctionnels (FB) et les fonctions (FC).
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
0
Exemple
Rseau 1 CAS1 E 0.0 Rseau 2 A 4.0 E 0.3 Rseau 3 CAS1 A 4.1 E 0.4 R R JMP
Le saut au repre CAS1 est excut si l'tat de signal est 1 l'entre E 0.0. L'opration de mise zro de la sortie A 4.0 n'est pas excute mme si l'tat de signal est 1 l'entre E 0.3.
6-3
Oprations de saut
6.4
Reprsentation
<oprande> JMPN
Paramtre
Type de donnes
Zone de mmoire
-
Description
L'oprande indique le repre vers lequel doit se faire le saut si le RLG est gal 0.
Description
L'opration Saut si 0 (conditionnel) correspond une opration Aller un repre de saut si le RLG est gal 0. Vous pouvez utiliser cette opration dans tous les blocs de code, savoir les blocs d'organisation (OB), les blocs fonctionnels (FB) et les fonctions (FC).
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
0
Exemple
Rseau 1 CAS1 E 0.0 Rseau 2 A 4.0 E 0.3 Rseau 3 CAS1 A 4.1 E 0.4 R R JMPN
Le saut au repre CAS1 est excut si l'tat de signal est 0 l'entre E 0.0. L'opration de mise zro de la sortie A 4.0 n'est pas excute mme si l'tat de signal est 1 l'entre E 0.3. Aucune des oprations entre l'opration de saut et le repre de saut n'est excute.
Langage LOG pour SIMATIC S7-300/400 A5E00706956-01
6-4
Oprations de saut
6.5
Reprsentation
LABEL
Description
Le repre de saut identifie la destination d'une opration de saut. Le repre de saut consiste de 4 caractres alphanumriques, le premier devant tre une lettre, par exemple CAS1. Il doit exister un repre de saut (LABEL) pour chaque saut conditionnel (JMP ou JMPN).
Exemple
Rseau 1 CAS1 E 0.0 Rseau 2 A 4.0 E 0.3 Rseau 3 CAS1 A 4.1 E 0.4 R R JMP
Le saut au repre CAS1 est excut si l'tat de signal est 1 l'entre E 0.0. En raison du saut, l'opration de mise zro de la sortie A 4.0 n'est pas excute mme si l'tat de signal est 1 l'entre E 0.3.
6-5
Oprations de saut
6-6
7.1
Description
Les oprations arithmtiques sur nombres entiers permettent dexcuter les fonctions arithmtiques suivantes sur deux nombres entiers (16 et 32 bits) :
ADD_I : Additionner entiers de 16 bits SUB_I : Soustraire entiers de 16 bits MUL_I : Multiplier entiers de 16 bits DIV_I : Diviser entiers de 16 bits ADD_DI : Additionner entiers de 32 bits SUB_DI : Soustraire entiers de 32 bits MUL_DI : Multiplier entiers de 32 bits DIV_DI : Diviser entiers de 32 bits MOD_DI : Reste de division (32 bits)
7-1
7.2
Evaluation des bits du mot d'tat pour les oprations sur nombres entiers
Description
Les oprations arithmtiques sur nombres entiers affectent les bits suivants du mot d'tat :
BI1
0 0 1
BI0
0 1 0
DEB
0 0 0
DM
* * *
BI1
0
BI0
0
DEB
1
DM
1
Opration
+D : rsultat = -4 294 967 296 /D ou MOD : division par 0
BI1
0 1
BI0
0 1
DEB
1 1
DM
1 1
7-2
7.3
Reprsentation
ADD_I
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL INT INT INT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Premier terme de l'addition Second terme de l'addition Rsultat de l'addition Sortie de validation
Description
L'opration Additionner entiers de 16 bits est active si l'tat de signal est 1 l'entre de validation EN. Cette opration additionne les entres IN1 et IN2 et range le rsultat dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 16 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
ADD_I
E 0.0 MW0 MW2 EN IN1 IN2 OUT ENO MW10 A 4.0 =
La bote ADD_I est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de l'addition MW0 + MW2 est rang dans le mot de mmento MW10. Si ce rsultat est hors de la plage autorise pour un nombre entier de 16 bits ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0 et l'opration n'est pas excute.
7-3
7.4
Reprsentation
SUB_I
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL INT INT INT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur dont on soustrait Valeur soustraire Rsultat de la soustraction Sortie de validation
Description
L'opration Soustraire entiers de 16 bits est active si l'tat de signal est 1 l'entre de validation EN. Cette opration soustrait l'entre IN2 de l'entre IN1 et range le rsultat dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 16 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
SUB_I
E 0.0 MW0 MW2 EN IN1 IN2 OUT ENO MW10 A 4.0 =
La bote SUB_I est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la soustraction MW0 - MW2 est rang dans le mot de mmento MW10. Si ce rsultat est hors de la plage autorise pour un nombre entier de 16 bits ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
7-4
7.5
Reprsentation
MUL_I
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL INT INT INT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Premier terme de la multiplication Second terme de la multiplication Rsultat de la multiplication Sortie de validation
Description
L'opration Multiplier entiers de 16 bits est active si l'tat de signal est 1 l'entre de validation EN. Cette opration multiplie les entres IN1 et IN2 et range le rsultat dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 16 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
MUL_I
E 0.0 MW0 MW2 EN IN1 IN2 OUT ENO MW10 A 4.0 =
La bote MUL_I est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la multiplication MW0 x MW2 est rang dans le mot de mmento MW10. Si ce rsultat est hors de la plage autorise pour un nombre entier de 16 bits ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
7-5
7.6
Reprsentation
DIV_I
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL INT INT INT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Dividende Diviseur Rsultat de la division Sortie de validation
Description
L'opration Diviser entiers de 16 bits est active si l'tat de signal est 1 l'entre de validation EN. Cette opration divise l'entre IN1 par l'entre IN2 et range le quotient (partie entire) dans la sortie OUT. Elle ne fournit pas de reste. Si le quotient est hors de la plage autorise pour un nombre entier de 16 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
DIV_I
E 0.0 MW0 MW2 EN IN1 IN2 OUT ENO MW10 A 4.0 =
La bote DIV_I est active si l'tat de signal est 1 l'entre E 0.0. Le quotient de la division de MW0 par MW2 est rang dans le mot de mmento MW10. Si ce quotient est hors de la plage autorise pour un nombre entier de 16 bits ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
7-6
7.7
Reprsentation
ADD_DI
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL DINT DINT DINT BOOL
Description
L'opration Additionner entiers de 32 bits est active si l'tat de signal est 1 l'entre de validation EN. Cette opration additionne les entres IN1 et IN2 et range le rsultat dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 32 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
ADD_DI
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote ADD_DI est active si l'tat de signal est 1 l'entre de validation EN. Cette opration additionne les entres IN1 et IN2 et range le rsultat dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 32 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0.
7-7
7.8
Reprsentation
SUB_DI
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL DINT DINT DINT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur dont on soustrait Valeur soustraire Rsultat de la soustraction Sortie de validation
Description
L'opration Soustraire entiers de 32 bits est active si l'tat de signal est 1 l'entre de validation EN. Cette opration soustrait l'entre IN2 de l'entre IN1 et range le rsultat dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 32 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
SUB_DI
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote SUB_DI est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la soustraction MD0 - MD4 est rang dans le double mot de mmento MD10. Si ce rsultat est hors de la plage autorise pour un nombre entier de 32 bits ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0 et l'opration n'est pas excute.
7-8
7.9
Reprsentation
MUL_DI
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL DINT DINT DINT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Premier terme de la multiplication Second terme de la multiplication Rsultat de la multiplication Sortie de validation
Description
L'opration Multiplier entiers de 32 bits est active si l'tat de signal est 1 l'entre de validation EN. Cette opration multiplie les entres IN1 et IN2 et range le rsultat dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 32 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
MUL_DI
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote MUL_DI est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la multiplication MD0 x MD4 est rang dans le double mot de mmento MD10. Si ce rsultat est hors de la plage autorise pour un nombre entier de 32 bits ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
7-9
7.10
Reprsentation
DIV_DI
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL DINT DINT DINT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Dividende Diviseur Rsultat de la division Sortie de validation
Description
L'opration Diviser entiers de 32 bits est active si l'tat de signal est 1 l'entre de validation EN. Cette opration divise l'entre IN1 par l'entre IN2 et range le quotient (partie entire) dans la sortie OUT. Elle range le quotient sous forme de valeur de 32 bits en format DINT et ne fournit pas de reste. Si le quotient est hors de la plage autorise pour un nombre entier de 32 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
DIV_DI
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote DIV_DI est active si l'tat de signal est 1 l'entre E 0.0. Le quotient de la division de MD0 par MD4 est rang dans le double mot de mmento MD10. Si ce quotient est hors de la plage autorise pour un nombre entier de 32 bits ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
7-10
7.11
Reprsentation
MOD_DI
EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL DINT DINT DINT BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Dividende Diviseur Reste Sortie de validation
Description
L'opration Reste de division (32 bits) est active si l'tat de signal est 1 l'entre de validation EN. Cette opration divise l'entre IN1 par l'entre IN2 et range le reste dans la sortie OUT. Si ce reste est hors de la plage autorise pour un nombre entier de 32 bits, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Voir aussi Evaluation des bits du mot d'tat pour les oprations sur nombres entiers.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
MOD_DI
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote MOD_DI est active si l'tat de signal est 1 l'entre E 0.0. Le reste de la division de MD0 par MD4 est rang dans le double mot de mmento MD10. Si ce reste est hors de la plage autorise pour un nombre entier de 32 bits ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
7-11
7-12
8.1
Description
Les nombres virgule flottante IEEE de 32 bits ont le type de donnes REAL. Les oprations arithmtiques sur nombres virgule flottante permettent dexcuter les fonctions arithmtiques suivantes sur deux nombres rels IEEE de 32 bits :
ADD_R : Additionner nombres rels SUB_R : Soustraire nombres rels MUL_R : Multiplier nombres rels DIV_R : Diviser nombres rels
Les oprations arithmtiques sur nombres virgule flottante permettent dexcuter les fonctions arithmtiques suivantes sur un nombre rels IEEE de 32 bits :
valeur absolue (ABS) d'un nombre rel, carr (SQR) et racine carre (SQRT) d'un nombre rel, logarithme naturel (LN) d'un nombre rel, valeur exponentielle (EXP) de base e (= 2,71828...) d'un nombre rel, fonctions trigonomtriques d'angles reprsents sous forme de nombres virgule flottante IEEE de 32 bits : sinus d'un nombre rel (SIN) et arc sinus d'un nombre rel (ASIN), cosinus d'un nombre rel (COS) et arc cosinus d'un nombre rel (ACOS), tangente d'un nombre rel (TAN) et arc tangente d'un nombre rel (ATAN).
8-1
8.2
Evaluation des bits du mot d'tat pour les oprations sur nombres rels
Description
Les oprations arithmtiques sur nombres rels affectent les bits suivants du mot d'tat :
BI1
0 0 1
BI0
0 1 0
DEB
0 0 0
DM
* * *
BI1
0 0 0 1 1
BI0
0 0 1 0 1
DEB
1 1 1 1 1
DM
1 1 1 1 1
8-2
8.3
8.3.1
Oprations de base
ADD_R : Additionner nombres rels
Reprsentation
ADD_R EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL REAL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z
Description
Entre de validation
E, A, M, D, L ou constante Premier terme de l'addition E, A, M, D, L ou constante Second terme de l'addition E, A, M, D, L E, A, M, D, L Rsultat de l'addition Sortie de validation
Description
L'opration Additionner nombres rels est active si l'tat de signal est 1 l'entre de validation EN. Cette opration additionne les entres IN1 et IN2 et range le rsultat dans la sortie OUT. Si l'une des entres ou le rsultat n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Vous trouverez des informations sur l'valuation des bits du mot d'tat la rubrique Evaluation des bits du mot d'tat pour les oprations sur nombres rels.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
ADD_R
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote ADD_R est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de l'addition MD0 + MD4 est rang dans le double mot de mmento MD10. Si l'une des entres ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-3
8.3.2
Reprsentation
SUB_R EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL REAL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z
Description
Entre de validation
E, A, M, D, L ou constante Valeur dont on soustrait E, A, M, D, L ou constante Valeur soustraire E, A, M, D, L E, A, M, D, L Rsultat de la soustraction Sortie de validation
Description
L'opration Soustraire nombres rels est active si l'tat de signal est 1 l'entre de validation EN. Cette opration soustrait l'entre IN2 de l'entre IN1 et range le rsultat dans la sortie OUT. Si l'une des entres ou le rsultat n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Vous trouverez des informations sur l'valuation des bits du mot d'tat la rubrique Evaluation des bits du mot d'tat pour les oprations sur nombres rels.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
SUB_R
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote SUB_R est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la soustraction MD0 - MD4 est rang dans le double mot de mmento MD10. Si l'une des entres ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-4
8.3.3
Reprsentation
MUL_R EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL REAL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z
Description
Entre de validation
E, A, M, D, L ou constante Premier terme de la multiplication E, A, M, D, L ou constante Second terme de la multiplication E, A, M, D, L E, A, M, D, L Rsultat de la multiplication Sortie de validation
Description
L'opration Multiplier nombres rels est active si l'tat de signal est 1 l'entre de validation EN. Cette opration multiplie les entres IN1 et IN2 et range le rsultat dans la sortie OUT. Si l'une des entres ou le rsultat n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Vous trouverez des informations sur l'valuation des bits du mot d'tat la rubrique Evaluation des bits du mot d'tat pour les oprations sur nombres rels.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
MUL_R
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote MUL_R est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la multiplication MD0 x MD4 est rang dans le double mot de mmento MD10. Si l'une des entres ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-5
8.3.4
Reprsentation
DIV_R EN IN1 IN2 OUT ENO
Paramtre
EN IN1 IN2 OUT ENO
Type de donnes
BOOL REAL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z
Description
Entre de validation
Description
L'opration Diviser nombres rels est active si l'tat de signal est 1 l'entre de validation EN. Cette opration divise l'entre IN1 par l'entre IN2 et range le rsultat dans la sortie OUT. Si l'une des entres ou le rsultat n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0. Vous trouverez des informations sur l'valuation des bits du mot d'tat la rubrique Evaluation des bits du mot d'tat pour les oprations sur nombres rels.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
DIV_R
E 0.0 MD0 MD4 EN IN1 IN2 OUT ENO MD10 A 4.0 =
La bote DIV_R est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la division de MD0 par MD4 est rang dans le double mot de mmento MD10. Si l'une des entres ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-6
8.3.5
Reprsentation
ABS EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur de sortie : valeur absolue du nombre rel Sortie de validation
Description
L'opration Valeur absolue d'un nombre rel permet d'obtenir la valeur absolue d'un nombre rel.
Mot d'tat
RB
Ecriture X
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
ABS
E 0.0 MD8 EN OUT IN ENO MD10 A 4.0
Si E 0.0 est 1, la valeur absolue du nombre rel figurant dans MD8 est transmise dans MD12. MD8 = +6,234 donne MD12 = 6,234. La sortie A 4.0 est mise 0 si la conversion n'est pas excute (ENO = EN = 0).
8-7
8.4
8.4.1
Oprations tendues
SQR : Carr d'un nombre rel
Reprsentation
SQR EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L E, A, M, D, L
Description
Entre de validation Carr du nombre rel Sortie de validation
Description
L'opration Carr d'un nombre rel calcule le carr d'un nombre rel. Si l'entre ou le rsultat n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
SQR
E 0.0 MD0 EN OUT IN ENO MD10 A 4.0
La bote SQR est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la mise au carr de MD0 est rang dans le double mot de mmento MD10. Si MD0 est infrieur 0, si l'entre ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-8
8.4.2
Reprsentation
SQRT EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L E, A, M, D, L
Description
Entre de validation Racine carre du nombre rel Sortie de validation
Description
L'opration Racine carre d'un nombre rel calcule la racine carre d'un nombre rel. Cette opration dlivre un rsultat positif si l'oprande est suprieur zro. Si l'entre ou le rsultat n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
SQRT
E 0.0 MD0 EN OUT IN ENO MD10 A 4.0
La bote SQRT est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat de l'extraction de racine carre de MD0 est rang dans le double mot de mmento MD10. Si MD0 est infrieur 0, si l'entre ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-9
8.4.3
Reprsentation
EXP EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L E, A, M, D, L
Description
Entre de validation Valeur exponentielle du nombre rel Sortie de validation
Description
L'opration Valeur exponentielle d'un nombre rel calcule la valeur exponentielle de base e (= 2,71828...) d'un nombre rel. Si l'entre ou le rsultat n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
EXP
E 0.0 MD0 EN OUT IN ENO MD10 A 4.0
La bote EXP est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat du calcul de la valeur exponentielle de MD0 est rang dans le double mot de mmento MD10. Si l'entre ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-10
8.4.4
Reprsentation
LN EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L E, A, M, D, L
Description
Entre de validation Logarithme naturel du nombre rel Sortie de validation
Description
L'opration Logarithme naturel d'un nombre rel calcule le logarithme naturel d'un nombre rel. Si l'entre ou le rsultat n'est pas un nombre rel, les bits de dbordement et de dbordement mmoris (DEB et DM) sont mis 1 et la sortie ENO est mise 0.
Mot d'tat
RB
Ecriture X
BI1
X
BI0
X
DEB
X
DM
X
OU
0
ETAT
X
RLG
X
/PI
1
Exemple
LN
E 0.0 MD0 EN OUT IN ENO MD10 A 4.0
La bote LN est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat du calcul du logarithme naturel de MD0 est rang dans le double mot de mmento MD10. Si MD0 est infrieur 0, si l'entre ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-11
8.4.5
Description
Les oprations suivantes vous permettent d'effectuer des fonctions trigonomtriques d'angles reprsents sous forme de nombres virgule flottante IEEE de 32 bits :
Opration
SIN ASIN
Signification
Sinus d'un nombre rel d'un angle exprim en radians Arc sinus d'un nombre rel. Le rsultat de l'opration est un angle exprim en radians. La valeur de cet angle est comprise dans la plage suivante : -p / 2 <= arc sinus <= + p / 2, avec p = 3.14... Cosinus d'un nombre rel d'un angle exprim en radians Arc cosinus d'un nombre rel. Le rsultat de l'opration est un angle exprim en radians. La valeur de cet angle est comprise dans la plage suivante : 0 <= arc cosinus <= + p, avec p = 3.14... Tangente d'un nombre rel d'un angle exprim en radians Arc tangente d'un nombre rel. Le rsultat de l'opration est un angle exprim en radians. La valeur de cet angle est comprise dans la plage suivante : -p / 2 <= arc tangente <= + p / 2, avec p = 3.14...
COS ACOS
TAN ATAN
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
Exemple
SIN
E 0.0 MD0 EN OUT IN ENO MD10 A 4.0
La bote SIN est active si l'tat de signal est 1 l'entre E 0.0. Le rsultat du calcul du sinus de MD0 est rang dans le double mot de mmento MD10. Si l'entre ou le rsultat n'est pas un nombre rel ou si l'tat de signal de l'entre E 0.0 est gal 0, la sortie A 4.0 est mise 0.
8-12
Reprsentation
SIN EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Nombre rel Sinus du nombre rel Sortie de validation
Reprsentation
ASIN EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Nombre rel Arc sinus du nombre rel Sortie de validation
Reprsentation
COS EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Nombre rel Cosinus du nombre rel Sortie de validation
8-13
Reprsentation
ACOS EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Nombre rel Arc cosinus du nombre rel Sortie de validation
Reprsentation
TAN EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Nombre rel Tangente du nombre rel Sortie de validation
Reprsentation
ATAN EN OUT IN ENO
Paramtre
EN IN OUT ENO
Type de donnes
BOOL REAL REAL BOOL
Zone de mmoire
E, A, M, D, L, T, Z E, A, M, D, L ou constante E, A, M, D, L E, A, M, D, L
Description
Entre de validation Nombre rel Arc tangente du nombre rel Sortie de validation
8-14
Oprations de transfert
9.1
Reprsentation
MOVE
EN IN OUT ENO
Paramtre
EN IN
Type de donnes
BOOL Tous types de donnes simples de 8, 16 ou 32 bits Tous types de donnes lmentaires de 8, 16 ou 32 bits BOOL
Zone de mmoire
E, A, M, D, L, T, Z
Description
Entre de validation
OUT
E, A, M, D, L
Adresse de destination
ENO
E, A, M, D, L
Sortie de validation
Description
L'opration Affecter valeur permet d'initialiser des variables avec des valeurs prcises. La valeur indique l'entre IN est copie dans l'oprande prcis dans la sortie OUT. L'tat de signal de ENO est identique celui de EN. La bote MOVE permet de copier tous les types de donnes lmentaires de 8, 16 ou 32 bits. Pour copier des types de donnes utilisateur tels que des tableaux ou des structures, vous devez faire appel la fonction systme SFC20 "BLKMOV". Le relais de masquage MCR influence l'opration Affecter valeur.
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
9-1
Oprations de transfert
Nota
Lors de l'affectation d'une valeur un type de donnes de longueur diffrente, les octets de poids fort sont, le cas chant, tronqus ou complts par des zro.
Exemple : Double mot Affectation
un double mot : un octet : un mot : 1111 0000
0000 1111
0000 1111
1111 0000
1111 0000
0101 0101
0101 0101 0101 0101 0101 0101
Exemple
MOVE
E 0.0 MW10 EN IN OUT ENO DBW12 A 4.0 =
L'opration est excute si l'tat de signal est 1 l'entre E 0.0. Le contenu de MW10 est copi dans le mot de donnes 12 du bloc de donnes en cours. A 4.0 est mis 1 si l'opration est excute.
9-2
10
10.1
Description
Vous disposez des oprations de gestion dexcution de programme suivantes :
CALL : Appeler FC/SFC sans paramtre CALL_FB : Appeler FB CALL_FC : Appeler FC CALL_SFB : Appeler SFB CALL_SFC : Appeler SFC Appeler multi-instances Appeler un bloc dans une bibliothque Fonctions du relais de masquage Remarques importantes sur l'utilisation de la fonctionnalit MCR MCR< : Relais de masquage en fonction MCR> : Relais de masquage hors fonction MCRA : Activer relais de masquage MCRD : Dsactiver relais de masquage RET : Retour
10-1
10.2
Reprsentation
<FC/SFC numro>
CALL
Paramtre
Numro
Type de donnes
BLOCK_FC
Zone de mmoire
-
Description
Numro de la FC ou de la SFC (par exemple, FC10 ou SFC59). Les SFC disponibles dpendent de votre CPU. Un appel conditionnel avec un paramtre de type de donnes BLOCK_FC comme oprande n'est possible que dans un FB et pas dans une FC.
Description
L'opration Appeler FC/SFC sans paramtre permet d'appeler une fonction (FC) ou une fonction systme (SFC) qui n'a pas de paramtre. L'appel est inconditionnel ou conditionnel selon la combinaison prcdente (voir exemple). Dans la section d'instructions d'une fonction (FC), vous ne pouvez pas indiquer de paramtre de type de donnes BLOCK_FC comme oprande lors d'un appel conditionnel. En revanche, vous pouvez spcifier un paramtre de type BLOCK_FC comme oprande dans un bloc fonctionnel (FB). Un appel conditionnel n'est excut que si le rsultat logique est 1. Si un appel conditionnel n'est pas excut, le RLG est gal 0 aprs l'opration d'appel. Si l'opration a lieu, elle fonctionne comme suit :
Elle sauvegarde l'adresse de retour au bloc appelant. Elle sauvegarde les deux registres de bloc de donnes (bloc de donnes et bloc de donnes d'instance). Elle change la zone de donnes locales en cours en zone de donnes locales prcdente. Elle empile le bit MA (bit MCR actif) dans la pile des blocs. Elle cre la zone de donnes locales en cours pour la fonction ou la fonction systme appele.
Ensuite, le programme poursuit le traitement dans le bloc appel.
Mot d'tat
RB
Conditionnel Inconditionnel Ecriture Ecriture -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT
1 1
RLG
1 -
/PI
0 0
10-2
Exemple
DB 10 OPN MCRA FC 10 CALL A 4.0 E 0.0 = MCRD FC 11 E 0.1 CALL
Si l'appel inconditionnel de la FC10 est excut, l'opration CALL fonctionne comme suit :
Elle sauvegarde l'adresse de retour au FB en cours. Elle sauvegarde les slecteurs pour le DB10 et pour le bloc de donnes d'instance du FB. Elle empile le bit MA, mis 1 par l'opration MCRA, dans la pile des blocs et remet ce bit 0 pour la fonction FC10 appele.
Le traitement du programme se poursuit dans la FC10. Si vous voulez utiliser la fonction MCR dans la FC10, vous devez l'y ractiver. A la fin de la FC10, le traitement du programme revient au FB appelant. Le bit MA est restaur. Le DB10 et le bloc de donnes d'instance du FB utilisateur redeviennent les DB en cours, quels qu'aient t les DB utiliss par la FC10. Au retour de la FC10, l'tat de signal en E 0.0 est affect la sortie A 4.0. L'appel de la FC11 tant conditionnel, il n'est excut que si l'tat de signal en E 0.1 est 1. S'il est excut, il fonctionne comme l'appel de la FC10.
10-3
10.3
CALL_FB : Appeler FB
Reprsentation
<DB no.> FB no. EN ENO
La reprsentation dpend du bloc fonctionnel ( savoir si des paramtres sont prsents et combien). L'entre EN, la sortie ENO et le nom ou le numro du FB doivent tre prsents.
Paramtre
EN ENO FB no. DB no.
Type de donnes
BOOL BOOL BLOCK_FB BLOCK_DB
Zone de mmoire
E, A, M, L, D E, A, M, L, D -
Description
Entre de validation Sortie de validation Numros du FB et du DB. La plage dpend de la CPU.
Description de l'opration
L'opration Appeler FB (CALL_FB) permet d'appeler un bloc fonctionnel (FB). L'appel n'est excut que si EN = 1. Si l'opration a lieu, elle fonctionne comme suit :
Elle sauvegarde l'adresse de retour au bloc appelant. Elle sauvegarde les deux registres de bloc de donnes (bloc de donnes et bloc de donnes d'instance). Elle change la zone de donnes locales en cours en zone de donnes locales prcdente. Elle empile le bit MA (bit MCR actif) dans la pile des blocs. Elle cre la nouvelle zone de donnes locales pour le bloc fonctionnel appel.
Mot d'tat
RB
Conditionnel Inconditionnel Ecriture Ecriture X -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT
X X
RLG
X X
/PI
X X
10-4
Exemple
Rseau 1
DB 10 OPN
Rseau 2
MCRA
Rseau 3
DB 11 FB11
EN ENO
A 4.0
Rseau 4
DB 10 OPN
Les rseaux CONT reprsents ci-dessus sont des parties de programme d'un bloc fonctionnel utilisateur. Ce bloc fonctionnel ouvre le DB10 et active la fonction MCR. Si l'appel inconditionnel du FB11 est excut, voici ce qui se passe : L'adresse de retour au bloc fonctionnel appelant et les slecteurs pour le DB10 et pour le bloc de donnes d'instance de ce bloc fonctionnel sont sauvegards. Le bit MA qui a t mis 1 par l'opration MCRA est empil dans la pile des blocs, puis mis 0 pour le bloc FB11 appel. Ensuite, le traitement du programme se poursuit dans le bloc FB11. Si vous voulez utiliser la fonction MCR dans le FB11, vous devez l'y ractiver. Il faut sauvegarder l'tat du RLG dans le bit RB via l'opration [SAVE] afin de pouvoir procder une valuation des erreurs dans le FB appelant. A la fin du FB11, le traitement du programme revient au FB appelant. Le bit MA est restaur et le bloc de donnes d'instance du bloc fonctionnel utilisateur redevient le DB d'instance en cours. Si le FB11 est excut sans erreur, ENO et donc A 4.0 sont 1.
Nota Pour des appels de FB ou de SFB, le numro du bloc de donnes ouvert prcdemment est perdu. Il faut donc nouveau ouvrir le DB requis.
10-5
10.4
CALL_FC : Appeler FC
Reprsentation
FC no.
EN ENO
La reprsentation dpend de la fonction ( savoir si des paramtres sont prsents et combien). L'entre EN, la sortie ENO et le nom ou le numro de la FC doivent tre prsents.
Paramtre
EN ENO FC no.
Type de donnes
BOOL BOOL BLOCK_FC
Zone de mmoire
E, A, M, L, D E, A, M, L, D -
Description
Entre de validation Sortie de validation Numro de la FC. La plage dpend de la CPU
Description
L'opration Appeler FC (CALL_FC) permet d'appeler une fonction (FC). L'appel n'est excut que si EN = 1. Si l'opration a lieu, elle fonctionne comme suit :
Elle sauvegarde l'adresse de retour au bloc appelant. Elle change la zone de donnes locales en cours en zone de donnes locales prcdente. Elle empile le bit MA (bit MCR actif) dans la pile des blocs. Elle cre la zone de donnes locales en cours pour la fonction appele.
Ensuite, le programme poursuit le traitement dans le bloc appel. Pour dterminer la sortie de validation ENO, le bit RB est interrog ; l'tat de signal souhait (valuation d'erreurs) doit lui tre affect par l'utilisateur dans le bloc appel, l'aide de l'opration [SAVE]. Lorsque vous appelez une fonction (FC) et que la table de dclaration des variables du bloc appel comporte des dclarations du type IN, OUT et IN_OUT, ces variables s'affichent sous forme de liste de paramtres formels dans le programme du bloc appelant. Lors de l'appel des FC, vous devez imprativement affecter des paramtres effectifs aux paramtres formels l'endroit de l'appel. D'ventuelles valeurs initiales dans la dclaration de la FC sont insignifiantes.
Mot d'tat
RB
Conditionnel Inconditionnel Ecriture Ecriture X -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT
X X
RLG
X X
/PI
X X
10-6
Exemple
Rseau 1
DB 10 OPN
Rseau 2
MCRA
Rseau 3
FC 10
EN ENO
FC 11
EN ENO
A 4.0 =
Les rseaux CONT reprsents ci-dessus sont des parties de programme d'un bloc fonctionnel utilisateur. Ce bloc fonctionnel ouvre le DB10 et active la fonction MCR. Si l'appel inconditionnel de la FC10 est excut, voici ce qui se passe : L'opration sauvegarde l'adresse de retour au FB en cours et les slecteurs pour le DB10 et pour le bloc de donnes d'instance du FB. Elle empile le bit MA, mis 1 par l'opration MCRA, dans la pile des blocs et remet ce bit 0 pour la fonction FC10 appele. Le traitement du programme se poursuit dans la FC10. Si vous voulez utiliser la fonction MCR dans la FC10, vous devez l'y ractiver. Il faut sauvegarder l'tat du RLG dans le bit RB l'aide de l'opration [SAVE] afin de pouvoir procder une valuation des erreurs dans le FB appelant. A la fin de la FC10, le traitement du programme revient au FB appelant. Le bit MA est restaur. Le programme se poursuit dans le FB appelant selon l'tat de signal de la sortie de validation ENO : ENO = 1 ENO = 0 Traitement de la FC11 Le traitement commence dans le rseau suivant.
Si la FC11 est galement excute sans erreur, ENO et donc A 4.0 sont 1.
Nota Aprs retour au bloc appelant, il n'est pas toujours certain que le DB ouvert prcdemment soit de nouveau ouvert. Veuillez observer les informations dans le fichier LISEZMOI.
10-7
10.5
Reprsentation
<DB no.> SFB no.
EN ENO
La reprsentation dpend du bloc fonctionnel systme ( savoir si des paramtres sont prsents et combien). L'entre EN, la sortie ENO et le nom ou le numro du SFB doivent tre prsents.
Paramtre
EN ENO SFB no. DB no.
Type de donnes
BOOL BOOL BLOCK_SFB BLOCK_DB
Zone de mmoire
E, A, M, L, D E, A, M, L, D -
Description
Entre de validation Sortie de validation Numro du SFB/DB. La plage dpend de la CPU.
Description de l'opration
L'opration Appeler SFB (CALL_SFB) permet d'appeler un bloc fonctionnel systme (SFB). L'appel n'est excut que si EN = 1. Si l'opration a lieu, elle fonctionne comme suit :
Elle sauvegarde l'adresse de retour au bloc appelant. Elle sauvegarde les deux registres de bloc de donnes (bloc de donnes et bloc de donnes d'instance). Elle change la zone de donnes locales en cours en zone de donnes locales prcdente. Elle empile le bit MA (bit MCR actif) dans la pile des blocs. Elle cre la nouvelle zone de donnes locales pour le bloc fonctionnel systme appel.
Ensuite, le traitement du programme se poursuit dans le bloc fonctionnel systme appel. ENO est 1 si le SFB a t appel (EN = 1) et si aucune erreur n'est apparue.
Mot d'tat
RB
Conditionnel Inconditionnel Ecriture Ecriture X -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT
X X
RLG
X X
/PI
X X
10-8
Exemple
Rseau 1
DB 10 OPN
Rseau 2
MCRA
Rseau 3
DB 8 SFB 8 EN . . . . . . .
. . . ENO
A 4.0
Rseau 4
DB 10 OPN
Les oprations CONT reprsentes ci-dessus sont des parties de programme d'un bloc fonctionnel utilisateur. Ce bloc fonctionnel ouvre le DB10 et active la fonction MCR. Si l'appel inconditionnel du bloc SFB8 est excut, voici ce qui se passe : L'adresse de retour au bloc fonctionnel appelant et les slecteurs pour le DB10 et pour le bloc de donnes d'instance de ce bloc fonctionnel sont sauvegards. Le bit MA qui a t mis 1 par l'opration MCRA est empil dans la pile des blocs, puis mis 0 pour le bloc SFB8 appel. Ensuite, le traitement du programme se poursuit dans le bloc fonctionnel SFB8. A la fin du SFB8, le traitement du programme revient au FB appelant. Le bit MA est restaur et le bloc de donnes d'instance du bloc fonctionnel utilisateur redevient le DI en cours. Si le SFB8 est excut sans erreur, ENO et donc A 4.0 sont 1.
Nota Pour des appels de FB ou de SFB, le numro du bloc de donnes ouvert prcdemment est perdu. Le DB requis doit tre de nouveau ouvert.
10-9
10.6
Reprsentation
SFC no. EN ENO
La reprsentation dpend de la fonction systme ( savoir si des paramtres sont prsents et combien). L'entre EN, la sortie ENO et le nom ou le numro de la SFC doivent tre prsents.
Paramtre EN ENO SFC no. Type de donnes BOOL BOOL BLOCK_SFC Zone de mmoire E, A, M, L, D E, A, M, L, D Description Entre de validation Sortie de validation Numro de la SFC. La plage dpend de la CPU.
Description de l'opration
L'opration Appeler SFC (CALL_SFC) permet d'appeler une fonction systme (SFC). L'appel n'est excut que si EN = 1. Si l'opration a lieu, elle fonctionne comme suit :
Elle sauvegarde l'adresse de retour au bloc appelant. Elle change la zone de donnes locales en cours en zone de donnes locales prcdente. Elle empile le bit MA (bit MCR actif) dans la pile des blocs. Elle cre la nouvelle zone de donnes locales pour la fonction appele.
Ensuite, le programme poursuit le traitement dans le bloc appel. ENO est 1 si la fonction a t appele (EN est 1) et si aucune erreur n'est apparue.
Mot d'tat
RB Conditionnel Inconditionnel Ecriture Ecriture X BI1 BI0 DEB DM 0 0 OU 0 0 ETAT X X RLG X X /PI X X
10-10
Exemple
Rseau 1
DB 10 OPN
Rseau 2
MCRA
Rseau 3
SFC 20
EN DBDW12 SCRBLK RET_VAL DSTBLK MW10 MOTOR.SPEED A 4.0 ENO
Les rseaux CONT reprsents ci-dessus sont des parties de programme d'un bloc fonctionnel utilisateur. Ce bloc fonctionnel ouvre le DB10 et active la fonction MCR. Si l'appel inconditionnel de la SFC20 est excut, voici ce qui se passe : L'adresse de retour au bloc fonctionnel appelant et les slecteurs pour le DB10 et pour le bloc de donnes d'instance de ce bloc fonctionnel sont sauvegards. Le bit MA qui a t mis 1 par l'opration MCRA est empil dans la pile des blocs, puis mis 0 pour la fonction SFC20. Ensuite, le traitement du programme se poursuit dans la fonction SFC20. A la fin de la SFC20, le traitement du programme revient au FB appelant. Le bit MA est restaur. Le programme se poursuit dans le FB appelant selon l'tat de signal de la sortie de validation ENO : ENO = 1 ENO = 0 A 4.0 = 1 A 4.0 = 0
Nota Aprs retour au bloc appelant, il n'est pas toujours certain que le DB ouvert prcdemment soit de nouveau ouvert. Veuillez observer les informations dans le fichier LISEZMOI.
10-11
10.7
Appeler multi-instances
Reprsentation
#Variablenname
EN IN IN/OUT OUT ENO
Zone de mmoire E, A, M, D, L, T, Z E, A, M, D, L -
Description
Vous crez une multi-instance par la dclaration d'une variable statique de type de donnes "bloc fonctionnel". Seules les multi-instances dj dclares apparaissent dans le catalogue des lments de programme. La reprsentation d'une multi-instance dpend de l'existence de paramtres et de leur nombre. L'entre EN, la sortie ENO et le nom de la variable sont toujours prsents.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM 0 OU 0 ETAT X RLG X /PI X
10.8
qui sont intgrs dans le systme d'exploitation de votre CPU (bibliothque "Standard Library" pour les projets STEP 7 de la version 3 et bibliothque "stdlibs (V2)" pour les projets STEP 7 de la version 2) ; que vous avez rangs vous-mme dans des bibliothques parce que vous avez l'intention de les utiliser plusieurs fois.
10-12
10.9
# = S R SR RS
Connecteur Affectation Mettre 1 Mettre 0 Bascule mise 1, mise 0 Bascule mise 0, mise 1
1 (EN FONCTION)
10-13
10.10
Lorsque le relais de masquage (MCR) est hors fonction, la valeur 0 est crite par toutes les affectation (T, =) dans les sections de programme entre relais de masquage en fonction et relais de masquage hors fonction ! Le MCR se trouve prcisment hors fonction lorsque le RLG tait gal 0 avant une instruction relais de masquage en fonction.
CONT/LOG
Dans CONT ou LOG, les branches T et les connecteurs dbutent par RLG = 0.
Remde
Sparez les instructions concernes de la dpendance par rapport au relais de masquage :
Dsactivez le relais de masquage en utilisant l'instruction MCRD avant l'instruction ou le rseau concerns. Activez le relais de masquage en utilisant l'instruction MCRA aprs l'instruction ou le rseau concerns.
10-14
10.11
Reprsentation
MCR<
Reprsentation
MCR>
10-15
Pile MCR
Le relais de masquage est command par une pile MCR de 1 bit de large et pouvant contenir jusqu' huit entres. Le relais de masquage est activ aussi longtemps que les huit entres de la pile sont gales 1. L'opration MCR< copie le rsultat logique dans la pile MCR. L'opration MCR> extrait la dernire entre de la pile et met l'adresse de pile libre 1. En cas d'erreur - lorsque plus de huit oprations MCR> se suivent ou si vous tentez d'excuter l'opration MCR> alors que la pile MCR est vide, par exemple -, le programme affiche un message d'erreur MCRF. La surveillance de la pile MCR suit le pointeur de pile (MSP : 0 = vide, 1 = une entre, 2 = deux entres, ..., 8 = huit entres).
RLG
Bit dcal
MSP
1 2 3 4 5 6 7 8
MSP = Pointeur de pile MCR MA = Bit de commande pour la dpendance par rapport au MCR
Vous ne devez jamais utiliser l'opration MCR< sans l'opration MCR> dans votre programme. L'opration MCR< reprend l'tat de signal du RLG pour le copier dans le bit MCR. L'opration MCR> met le bit MCR 1 inconditionnellement. Pour cette raison, toute autre opration programme entre les oprations MCRA et MCRD fonctionne indpendamment du bit MCR.
10-16
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU 0 ETAT 1 RLG /PI 0
Exemple
MCRA E 0.0 E 0.1 MCR< MCR< A 4.0 E 0.3
S
MCR> A 4.1
E 0.4
=
MCR> MCRD
Lorsque l'opration MCRA active la fonction MCR, vous pouvez crer jusqu' huit zones MCR imbriques. Dans notre exemple, il y en a deux. La premire opration MCR> va de pair avec la seconde opration MCR<. Toutes les oprations entre le deuxime jeu MCR (MCR<MCR>) appartiennent la seconde zone MCR. Les oprations sont excutes comme suit :
Si E 0.0 = 1, l'tat de signal de E 0.4 est affect la sortie A 4.1. Si E 0.0 = 0, la sortie A 4.1 est mise 0 quel que soit l'tat de signal l'entre E 0.4. La sortie A 4.0 reste inchange quel que soit l'tat de signal l'entre E 0.3. Si E 0.0 et E 0.1 = 1, la sortie A 4.0 est mise 1 si l'tat de signal est 1 l'entre E 0.3 et l'tat de signal de E 0.4 est affect A 4.1. Si E 0.1 = 0, la sortie A 4.0 reste inchange quel que soit l'tat de signal aux entres E 0.3 et E 0.0.
10-17
10.12
Reprsentation
MCRA
Reprsentation
MCRD
10-18
Call FCy
MCRD BEA
BEA
Oprations indpendantes du bit MCR Oprations depndantes du bit MCR BEA : BEA est une opration LIST
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU ETAT RLG /PI -
10-19
Exemple
MCRA
E 0.0
MCR< A 4.0
E 0.3
S
A 4.1
E 0.4
MCR>
MCRD
L'opration MCRA active la fonction MCR jusqu'au prochain MCRD. Les oprations entre MCR< et MCR> sont traites en fonction du bit MA (E 0.0 ici) :
Si l'tat de signal de l'entre E 0.0 est 1 : la sortie A 4.0 est mise 1 si l'tat de signal est 1 l'entre E 0.3 ; la sortie A 4.0 reste inchange si l'tat de signal est 0 l'entre E 0.3 ; l'tat de signal l'entre E 0.4 est affect la sortie A 4.1.
Si l'tat de signal de l'entre E 0.0 est 0 : la sortie A 4.0 reste inchange quel que soit l'tat de signal l'entre E 0.3 ; la sortie A 4.1 est 0 quel que soit l'tat de signal l'entre E 0.4.
Vous devez programmer dans les blocs mmes la relation de dpendance au MCR des fonctions et des blocs fonctionnels. En effet, si vous appelez une fonction ou un bloc fonctionnel partir d'une squence MCRA-MCRD, toutes les instructions l'intrieur de cette squence ne dpendent pas automatiquement du bit MCR. Pour que les instructions contenues dans le bloc appel dpendent du MCR, il faut utiliser l'opration MCRA dans le bloc appel.
10-20
10.13
RET : Retour
Reprsentation
RET
Description
L'opration Retour permet de quitter des blocs conditionnellement.
Mot d'tat
RB Ecriture * BI1 BI0 DEB DM 0 OU 0 ETAT 1 RLG 1 /PI 0
L'opration tant mappe de manire interne sur la squence "SAVE; BEB;", le bit RB est influenc lui aussi.
Exemple
E 0.0 RET
10-21
10-22
11
11.1
11.1.1
Oprations de dcalage
Vue d'ensemble des oprations de dcalage
Description
Les oprations de dcalage permettent de dcaler bit par bit le contenu de l'entre IN vers la gauche ou vers la droite (voir Registres de la CPU). Un dcalage de n bits vers la gauche multiplie le contenu de l'entre IN par 2n ; un dcalage de n bits vers la droite le divise par 2n. Si, par exemple, vous dcalez de 3 bits vers la gauche l'quivalent binaire de la valeur dcimale 3, vous obtenez l'quivalent binaire de la valeur dcimale 24. Si vous dcalez de 2 bits vers la droite l'quivalent binaire de la valeur dcimale 16, vous obtenez l'quivalent binaire de la valeur dcimale 4. Le nombre de bits de dcalage est prcis dans le paramtre d'entre N. Les positions binaires libres par l'opration de dcalage sont soit compltes par des zros, soit par l'tat de signal du bit de signe (0 signifie positif et 1 ngatif). L'tat de signal du bit dcal en dernier est charg dans le bit BI1 du mot d'tat. Les bits BI0 et DEB du mot d'tat sont remis 0. Vous pouvez valuer le bit BI1 l'aide d'oprations de saut. Vous disposez des oprations de dcalage suivantes :
SHR_I : Dcalage vers la droite d'un entier de 16 bits SHR_DI : Dcalage vers la droite d'un entier de 32 bits SHL_W : Dcalage vers la gauche d'un mot SHR_W : Dcalage vers la droite d'un mot SHL_DW : Dcalage vers la gauche d'un double mot SHR_DW : Dcalage vers la droite d'un double mot
11-1
11.1.2
Reprsentation
SHR_I EN IN N OUT ENO
Zone de mmoire E, A, M, L, D, T, Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description Entre de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage Sortie de validation
Description
L'opration Dcalage vers la droite d'un entier de 16 bits est active si l'tat de signal est 1 l'entre de validation EN. Elle dcale bit par bit vers la droite les bits 0 15 de l'entre IN. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 16, la commande agit comme si N tait gal 16. Les positions binaires libres gauche sont compltes selon l'tat de signal du bit 15 (bit de signe du nombre entier de 16 bits) : par des zros si le nombre est positif et par des uns s'il est ngatif. Le rsultat du dcalage est rang dans la sortie OUT. Lorsque N est diffrent de zro, l'opration met les bits BI0 et DEB du mot d'tat 0. ENO possde le mme tat de signal que EN.
15... 1 0 1 0 Bit de signe 1 1 1 1 ...8 7... 1 1 1 1 0 0 0 0 4 positions ...0 1 0 1 0
IN N
OUT
1 0 1 0
1 0 0 0 0
Les positions libres sont compltes par ltat de signal du bit de signe.
11-2
Mot d'tat
RB Ecriture X BI1 X BI0 X DEB X DM OU X ETAT X RLG X /PI 1
Exemple
SHR_I E 0.0 MW0 MW2 EN IN N OUT ENO MW4 A 4.0 S
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Le mot de mmento MW0 est dcal vers la droite du nombre de bits prcis dans MW2. Le rsultat est rang dans MW4. La sortie A 4.0 est mise 1.
11-3
11.1.3
Reprsentation
SHR_DI EN IN N OUT ENO
Zone de mmoire E, A, M, L, D, T, Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description Entre de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage Sortie de validation
Description
L'opration Dcalage vers la droite d'un entier de 32 bits est active si l'tat de signal est 1 l'entre de validation EN. Elle dcale bit par bit vers la droite les bits 0 31 de l'entre IN. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 32, la commande agit comme si N tait gal 32. Les positions binaires libres gauche sont compltes selon l'tat de signal du bit 31 (bit de signe du nombre entier de 32 bits) : par des zros si le nombre est positif et par des uns s'il est ngatif. Le rsultat du dcalage est rang dans la sortie OUT. Lorsque N est diffrent de zro, l'opration met les bits BI0 et DEB du mot d'tat 0. ENO possde le mme tat de signal que EN.
Mot d'tat
RB Ecriture X BI1 X BI0 X DEB X DM OU X ETAT X RLG X /PI 1
Exemple
SHR_DI E 0.0 MD0 MW4 EN IN N OUT ENO MD10 A 4.0 S
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 est dcal vers la droite du nombre de bits prcis dans MW4. Le rsultat est rang dans MD10. La sortie A 4.0 est mise 1.
11-4
11.1.4
Reprsentation
SHL_W EN IN N OUT ENO
Zone de mmoire E, A, M, L, D, T, Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description Entre de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage Sortie de validation
Description
L'opration Dcalage vers la gauche d'un mot est active si l'tat de signal est 1 l'entre de validation EN. Elle dcale bit par bit vers la gauche les bits 0 15 de l'entre IN. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 16, la commande inscrit 0 dans la sortie OUT et met 0 les bits BI0 et DEB du mot d'tat. Les positions binaires libres droite sont compltes par des zros. Le rsultat du dcalage est rang dans la sortie OUT. Lorsque N est diffrent de zro, l'opration met les bits BI0 et DEB du mot d'tat 0. ENO possde le mme tat de signal que EN.
15... 0 0 0 0 ...8 7... 1 1 1 1 0 1 0 1 6 positions ...0 0 1 0 1
IN N
OUT
0 1 0 1
0 1 0 0
0 0 0 0
11-5
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
Exemple
SHL_W E 0.0 MW0 MW2 EN IN N OUT ENO MW4 A 4.0 S
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Le mot de mmento MW0 est dcal vers la gauche du nombre de bits prcis dans MW2. Le rsultat est rang dans MW4. La sortie A 4.0 est mise 1.
11-6
11.1.5
Reprsentation
SHR_W EN IN N OUT ENO
Paramtre
Type de donnes
Zone de mmoire
Description
EN IN N OUT ENO
E, A, M, L, D, T, Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D2
Entre de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage Sortie de validation
Description
L'opration Dcalage vers la droite d'un mot est active si l'tat de signal est 1 l'entre de validation EN. Elle dcale bit par bit vers la droite les bits 0 15 de l'entre IN. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 16, la commande inscrit 0 dans la sortie OUT et met 0 les bits BI0 et DEB du mot d'tat. Les positions binaires libres gauche sont compltes par des zros. Le rsultat du dcalage est rang dans la sortie OUT. Lorsque N est diffrent de zro, l'opration met toujours les bits BI0 et DEB du mot d'tat 0. ENO possde le mme tat de signal que EN.
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
Exemple
SHR_W E 0.0 MW0 MW2 EN IN N OUT ENO MW4 A 4.0 S
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Le mot de mmento MW0 est dcal vers la droite du nombre de bits prcis dans MW2. Le rsultat est rang dans MW4. La sortie A 4.0 est mise 1.
11-7
11.1.6
Reprsentation
SHL_DW EN IN N OUT ENO
Paramtre
Type de donnes
Zone de mmoire
Description
EN IN N OUT ENO
E, A, M, L, D, T, Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Entre de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage Sortie de validation
Description
L'opration Dcalage vers la gauche d'un double mot est active si l'tat de signal est 1 l'entre de validation EN. Elle dcale bit par bit vers la gauche les bits 0 31 de l'entre IN. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 32, la commande inscrit 0 dans la sortie OUT et met 0 les bits BI0 et DEB du mot d'tat. Les positions binaires libres droite sont compltes par des zros. Le rsultat du dcalage est rang dans la sortie OUT. Lorsque N est diffrent de zro, l'opration met les bits BI0 et DEB du mot d'tat 0. ENO possde le mme tat de signal que EN.
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
Exemple
SHL_DW E 0.0 MD0 MW4 EN IN N OUT ENO MD10 A 4.0 S
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 est dcal vers la gauche du nombre de bits prcis dans MW4. Le rsultat est rang dans MD10. La sortie A 4.0 est mise 1.
11-8
11.1.7
Reprsentation
SHR_DW EN IN N OUT ENO
Paramtre
Type de donnes
Zone de mmoire
Description
EN IN N OUT ENO
E, A, M, L, D, T, Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Entre de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage Sortie de validation
Description
L'opration Dcalage vers la droite d'un double mot est active si l'tat de signal est 1 l'entre de validation EN. Elle dcale bit par bit vers la droite les bits 0 31 de l'entre IN. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 32, la commande inscrit 0 dans la sortie OUT et met 0 les bits BI0 et DEB du mot d'tat. Les positions binaires libres gauche sont compltes par des zros. Le rsultat du dcalage est rang dans la sortie OUT. Lorsque N est diffrent de zro, l'opration met les bits BI0 et DEB du mot d'tat 0. ENO possde le mme tat de signal que EN.
31... ...16 15... ...0 1111 1111 0101 0101 1010 1010 1111 1111 3 positions
IN N
OUT
0001 1111 1110 1010 1011 0101 0101 1111 Les positions libres sont compltes par des zros.
111
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
11-9
Exemple
SHR_DW E 0.0 MD0 MW4 EN IN N OUT ENO MD10 A 4.0 S
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 est dcal vers la droite du nombre de bits prcis dans MW4. Le rsultat est rang dans MD10. La sortie A 4.0 est mise 1.
11-10
11.2
11.2.1
Oprations de rotation
Vue d'ensemble des oprations de rotation
Description
Les oprations de rotation permettent d'effectuer la rotation bit par bit vers la droite ou vers la gauche du contenu entier de l'entre IN. Les positions binaires libres sont compltes par l'tat de signal des bits qui ont t dcals hors de l'entre IN. Le nombre de bits de rotation est prcis dans le paramtre d'entre N. Selon l'opration choisie, la rotation s'effectue via le bit BI1 du mot d'tat. Le bit BI0 du mot d'tat est remis 0. Vous disposez des oprations de rotation suivantes :
ROL_DW : Rotation vers la gauche d'un double mot ROR_DW : Rotation vers la droite d'un double mot
11.2.2
Reprsentation
ROL_DW EN IN N OUT ENO
Paramtre
Type de donnes
Zone de mmoire
Description
EN IN N OUT ENO
E, A, M, L, D, T, Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Entre de validation Valeur objet de la rotation Nombre de bits de rotation Rsultat de la rotation Sortie de validation
11-11
Description
L'opration Rotation vers la gauche d'un double mot est active si l'tat de signal est 1 l'entre de validation EN. Elle dclenche la rotation bit par bit vers la gauche du contenu entier de l'entre IN. Le nombre de bits de rotation est indiqu dans l'entre N. Si N est suprieur 32, le double mot effectue une rotation de ((N-1) modulo 32) + 1 positions vers la gauche. Les positions binaires libres droite sont compltes par l'tat de signal des bits ayant effectu la rotation. Le rsultat de la rotation est rang dans la sortie OUT. Lorsque N est diffrent de zro, l'opration met les bits BI0 et DEB du mot d'tat 0. ENO possde le mme tat de signal que EN.
31... ...16 15... ...0 1111 0000 1010 1010 0000 1111 0000 1111 3 positions
IN N
OUT
111
1000 0101 0101 0000 0111 1000 0111 1111 Ces 3 bits sont perdus.
Ltat de signal des trois bits dcals est insr dans les positions vides.
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
Exemple
ROL_DW E 0.0 MD0 MW4 EN IN N OUT ENO MD10 A 4.0 S
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 fait l'objet d'une rotation vers la gauche du nombre de bits prcis dans MW4. Le rsultat est rang dans MD10. La sortie A 4.0 est mise 1.
11-12
11.2.3
Reprsentation
ROR_DW EN IN N OUT ENO
Paramtre
Type de donnes
Zone de mmoire
Description
EN IN N OUT ENO
E, A, M, L, D, T, Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Entre de validation Valeur objet de la rotation Nombre de bits de rotation Rsultat de la rotation Sortie de validation
Description
L'opration Rotation vers la droite d'un double mot est active si l'tat de signal est 1 l'entre de validation EN. Elle dclenche la rotation bit par bit vers la droite du contenu entier de l'entre IN. Le nombre de bits de rotation est indiqu dans l'entre N dont la valeur peut tre comprise entre 0 et 31. Si N est suprieur 32, le double mot effectue une rotation de ((N-1) modulo 32) + 1 positions vers la droite. Les positions binaires libres gauche sont compltes par l'tat de signal des bits ayant effectu la rotation. Le rsultat de la rotation est rang dans la sortie OUT. Lorsque N est diffrent de zro, l'opration met les bits BI0 et DEB du mot d'tat 0. ENO possde le mme tat de signal que EN.
31... ...16 15... ...0 1010 1010 0000 1111 0000 1111 0101 0101 3 positions
IN N
OUT
1011 0101 0100 0001 1110 0001 1110 1010 Ltat de signal des trois bits dcals est insr dans les positions vides.
101
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
11-13
Exemple
ROR_DW E 0.0 MD0 MW4 EN IN N OUT ENO MD10 A 4.0 S
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 fait l'objet d'une rotation vers la droite du nombre de bits prcis dans MW4. Le rsultat est rang dans MD10. La sortie A 4.0 est mise 1.
11-14
12
12.1
Description
Les oprations sur bits d'tat sont des oprations combinatoires sur bits qui utilisent les bits du mot d'tat. Ces oprations ragissent l'une des conditions suivantes indiques par un ou plusieurs bits du mot d'tat : Le bit de rsultat binaire RB est mis 1 (son tat de signal est gal 1). Le rsultat d'une opration arithmtique est : == 0, <> 0, > 0, < 0, >= 0, <= 0. Le rsultat d'une opration arithmtique est illicite (UO). Un dbordement (OV) s'est produit lors d'une opration arithmtique ou un dbordement mmoris (OS). Dans une opration ET, les oprations sur bits d'tat combinent le rsultat de leur interrogation d'tat de signal au rsultat logique prcdent selon la table de vrit ET ; dans une opration OU, elles le combinent selon la table de vrit OU.
Mot d'tat
Le mot d'tat est un registre dans la mmoire de votre CPU contenant des bits auxquels vous pouvez accder dans les oprandes de combinaisons sur bits et sur mots. La figure suivante prsente la structure du mot d'tat.
2 ...
15
...2
RB
BI1
BI0
DEB
DM
OU
ETAT RLG
/PI
Vous pouvez valuer les bits du mot dtat : dans les oprations sur nombres entiers, dans les oprations sur nombres virgule flottante.
12-1
12.2
Reprsentation
OV
Description
L'opration Bit d'anomalie Dbordement permet de dtecter un dbordement dans une opration arithmtique. Si, aprs une opration arithmtique, le rsultat se situe hors de la plage ngative ou positive autorise, le bit de dbordement (DEB) du mot d'tat est mis 1. L'opration Bit d'anomalie Dbordement interroge l'tat de signal de ce bit, qui est remis 0 par des oprations arithmtiques excutes sans erreur.
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
Exemple
Rseau 1
SUB_I
E 0.0 EW0 EW2 EN IN1 IN2 OUT ENO MW10
Rseau 2
E 0.1 E 0.2 E 0.3 & >=1 M 3.3
Rseau 3
OV A 4.0 S
12-2
La bote SUB_I est active si l'tat de signal est 1 l'entre E 0.0. Si le rsultat de l'opration arithmtique EW0 - EW2 est hors de la plage autorise pour un nombre entier de 16 bits, le bit DEB du mot d'tat est mis 1. Le rsultat d'une interrogation d'tat de signal pour DEB est gal 1. La sortie A 4.0 est mise 1 si l'interrogation de DEB donne 1 et que le RLG du deuxime rseau soit gal 1 (c'est--dire si le RLG avant la sortie A 4.0 est 1). Si l'tat de signal est 0 l'entre E 0.0 (dsactive), EN et ENO ont tous deux l'tat de signal 0. Si EN est 1 (activ) et que le rsultat de l'opration arithmtique se situe hors de la plage autorise, ENO est mis 0.
12-3
12.3
Reprsentation
OS
Description
L'opration Bit d'anomalie Dbordement mmoris permet de dtecter un dbordement mmoris (DM) dans une opration arithmtique. Si, aprs une opration arithmtique, le rsultat se situe hors de la plage ngative ou positive autorise, le bit DM du mot d'tat est mis 1. L'opration Bit d'anomalie Dbordement mmoris interroge l'tat de signal de ce bit. Contrairement ce qui se passe pour le bit DEB (dbordement), le bit DM reste 1 lorsque des oprations arithmtiques sont excutes sans erreur (voir la rubrique Bit d'anomalie "Dbordement" ).
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
Exemple
Rseau 1
MUL_I
E 0.0 EW0 EW2 EN IN1 IN2 OUT ENO MD8
Rseau 2
ADD_I
E 0.1 EW0 EW2 EN IN1 IN2 OUT ENO MW12
Rseau 3
OS A 4.0 S
12-4
La bote MUL_I est active si l'tat de signal est 1 l'entre E 0.0. La bote ADD_I est active si l'tat de signal est 1 l'entre E 0.1. Si le rsultat de l'une de ces oprations arithmtiques est hors de la plage autorise pour un nombre entier de 16 bits, le bit DM du mot d'tat est mis 1. Le rsultat d'une interrogation d'tat de signal pour DM est gal 1 et la sortie A 4.0 est mise 1. Rseau 1 : Si l'tat de signal est 0 l'entre E 0.0 (dsactive), EN et ENO ont tous deux l'tat de signal 0. Si EN est 1 (activ) et que le rsultat de l'opration arithmtique se situe hors de la plage autorise, ENO est mis 0. Rseau 2 : Si l'tat de signal est 0 l'entre E 0.1 (dsactive), EN et ENO ont tous deux l'tat de signal 0. Si EN est 1 (activ) et que le rsultat de l'opration arithmtique se situe hors de la plage autorise, ENO est mis 0.
12-5
12.4
Reprsentation
UO
Description
L'opration Bit d'anomalie Opration illicite permet de dterminer si le rsultat d'une opration arithmtique sur nombres rels est ou non illicite, c'est--dire si l'une des valeurs de l'opration arithmtique n'est pas un nombre virgule flottante autoris. Les bits indicateurs BI1 et BI0 du mot d'tat sont valus cet effet. Si le rsultat d'une opration arithmtique est illicite (UO), l'interrogation de l'tat de signal fournit un rsultat gal 1. Si la combinaison dans BI1 et BI0 ne signifie pas illicite, le rsultat de l'interrogation de l'tat de signal est 0.
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
Exemple
Rseau 1
DIV_R
E 0.0 ED0 ED4 EN IN1 IN2 OUT ENO MD10 A 4.1 S
Rseau 2
UO A 4.0 S
La bote DIV_R est active si l'tat de signal est 1 l'entre E 0.0. Si la valeur de ED0 ou de ED4 n'est pas un nombre virgule flottante correct, l'opration arithmtique est illicite. Si EN est 1 (activ) et qu'une erreur se produise lors de l'excution de la fonction DIV_R, ENO est mis 0. La sortie A 4.0 est mise 1 si l'opration DIV_R est excute mais que l'une des valeurs dans l'opration arithmtique n'est pas un nombre virgule flottante correct. Si l'tat de signal est 0 l'entre E 0.0 (dsactive), EN et ENO ont tous deux l'tat de signal 0.
12-6
12.5
Reprsentation
Anglaise Allemande
BR
BIE
Description
L'opration Bit d'anomalie Registre RB permet d'interroger l'tat du bit de rsultat binaire RB du mot d'tat (voir aussi Registres de la CPU).
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
Exemple
E 0.0 E 0.2 BIE >=1 & A 4.0 S
La sortie A 4.0 est mise 1 si l'tat de signal est 1 l'entre E 0.0 ou 0 l'entre E 0.2 et en plus de ce RLG - si l'tat de signal du bit RB est 1.
12-7
12.6
Reprsentation
== 0 <> 0 >0 <0 >= 0 <= 0 L'opration Bit de rsultat pour gal 0 dtermine si le rsultat d'une opration arithmtique est ou non gal 0. L'opration Bit de rsultat pour diffrent de 0 dtermine si le rsultat d'une opration arithmtique est ou non diffrent de 0. L'opration Bit de rsultat pour suprieur 0 dtermine si le rsultat d'une opration arithmtique est ou non suprieur 0. L'opration Bit de rsultat pour infrieur 0 dtermine si le rsultat d'une opration arithmtique est ou non infrieur 0. L'opration Bit de rsultat pour suprieur ou gal 0 dtermine si le rsultat d'une opration arithmtique est ou non suprieur ou gal 0. L'opration Bit de rsultat pour infrieur ou gal 0 dtermine si le rsultat d'une opration arithmtique est ou non infrieur ou gal 0.
Description
Les oprations Bits de rsultat permettent de dterminer la relation par rapport 0 (== 0, <> 0, > 0, < 0, >= 0, <= 0) du rsultat d'une opration arithmtique. Les bits indicateurs BI1 et BI0 du mot d'tat sont valus cet effet. Si la condition de comparaison prcise dans l'oprande est satisfaite, le rsultat de l'interrogation d'tat de signal est 1. Dans une opration ET, le rsultat de l'interrogation est combin au rsultat logique prcdent selon la table de vrit ET ; dans une opration OU, il est combin au rsultat logique prcdent selon la table de vrit OU.
Mot d'tat
RB BI1 BI0 DEB DM OU ETAT RLG /PI
Ecriture
12-8
Exemple
1) SUB_I
E 0.0 EW0 EW2 EN IN1 OUT IN2 ENO >0 MW10 & A 4.0 S
2) SUB_I
E 0.0 EW0 EW2 EN IN1 OUT IN2 ENO <=0 MW10 & A 4.0 S
La bote SUB_I est active si l'tat de signal est 1 l'entre E 0.0. Si la valeur de EW0 est suprieure celle de EW2, le rsultat de l'opration arithmtique EW0 - EW2 est suprieur 0. Si EN est 1 et qu'une erreur se produise lors de l'excution de la fonction SUB_I, ENO est mis 0. 1. La sortie A 4.0 est mise 1 si la fonction s'excute sans erreur et si le rsultat est suprieur 0. Si l'tat de signal est 0 l'entre E 0.0 (dsactive), EN et ENO ont tous deux l'tat de signal 0. 2. La sortie A 4.0 est mise 1 si la fonction s'excute sans erreur et si le rsultat est infrieur ou gal 0. Si l'tat de signal est 0 l'entre E 0.0 (dsactive), EN et ENO ont tous deux l'tat de signal 0.
12-9
12-10
13
Oprations de temporisation
13.1
Description
Vous trouverez des informations sur le rglage et la slection de la bonne temporisation sous "Adresse dune temporisation en mmoire et composants dune temporisation" . Vous disposez des oprations de temporisations suivantes :
S_IMPULS : Paramtrer et dmarrer une temporisation sous forme d'impulsion S_VIMP : Paramtrer et dmarrer une temporisation sous forme d'impulsion prolonge S_EVERZ : Paramtrer et dmarrer une temporisation sous forme de retard la monte S_SEVERZ : Paramtrer et dmarrer une temporisation sous forme de retard la monte mmoris S_AVERZ : Paramtrer et dmarrer une temporisation sous forme de retard la retombe SI : Temporisation sous forme d'impulsion SV : Temporisation sous forme d'impulsion prolonge SE : Temporisation sous forme de retard la monte SS : Temporisation sous forme de retard la monte mmoris SA : Temporisation sous forme de retard la retombe
13-1
Oprations de temporisation
13.2
Zone de mmoire
Les temporisations disposent d'une zone de mmoire rserve dans votre CPU, avec un mot de 16 bits pour chaque oprande de temporisation. La programmation en LOG permet d'utiliser jusqu' 256 temporisations. Le nombre de mots de temporisations disponibles dans votre CPU est mentionn dans les caractristiques techniques de cette dernire. Les fonctions suivantes accdent la zone de mmoire des temporisations :
oprations de temporisation, mise jour des mots de temporisation via un gnrateur d'impulsions. Cette fonction dcrmente, l'tat de fonctionnement "Marche" (RUN) de la CPU, une valeur donne d'une unit dans un intervalle dfini par la base de temps, et ce jusqu' ce que la valeur de temps gale zro.
Valeur de temps
La valeur de temps se trouve, en code binaire, dans les bits 0 9 du mot de temporisation ; elle indique un nombre d'units. L'actualisation de la temporisation dcrmente la valeur de temps d'une unit dans un intervalle dfini par la base de temps, et ce jusqu' ce que la valeur de temps gale zro. Vous pouvez charger une valeur de temps prdfinie en utilisant lun des deux formats suivants :
S5T#aH_bM_cS_dMS H (heures), M (minutes), S (secondes ) et MS (millisecondes) ; a, b, c, d sont definies par l'utilisateur la base de temps est choisie automatiquement et la valeur est arrondie au nombre infrieur le plus proche avec cette base de temps.
La valeur de temps maximale que vous pouvez indiquer est gale 9 990 secondes ou 2H_46M_30S. Exemples : S5TIME#4S = 4 secondes s5t#2h_15m = 2 heures et 15 minutes S5T#1H_12M_18S = 1 heure, 12 minutes et 18 secondes
13-2
Oprations de temporisation
Base de temps
Les bits 12 et 13 du mot de temporisation contiennent la base de temps en code binaire. La base de temps dtermine quel intervalle la valeur de temps sera dcrmente. La base de temps minimale est gale 10 ms ; la base de temps maximale 10 s.
Base de temps Code binaire de la base de temps
10 ms 100 ms 1s 10 s
00 01 10 11
Comme les valeurs de temps sont mmorises dans un seul intervalle de temps, celles qui ne sont pas un multiple exact de cet intervalle sont tronques. Les valeurs dont la rsolution est trop grande pour la plage considre sont arrondies de faon obtenir la plage voulue, mais pas avec la rsolution souhaite. Le tableau suivant prsente les rsolutions possibles avec les plages correspondantes.
Rsolution Plage
15... x x
0 0
0 1
...8 7... 1 0 0 2
0 0
1 7
...0 1
Ces bits ne sont pas significatifs, cest--dire quils ne sont pas pris en compte lorsque la temporisation est dmarre.
13-3
Oprations de temporisation
E 0.0
A 4.0 S_IMPULS t
A 4.0 S_VIMP t
A 4.0 S_EVERZ t
A 4.0 S_SEVERZ t
A 4.0 S_AVERZ t
13-4
Oprations de temporisation
Temporisations S_IMPULS temporisation sous forme dimpulsion S_VIMP temporisation sous forme dimpulsion prolonge S_EVERZ temporisation sous forme de retard la monte S_SEVERZ temporisation sous forme de retard la monte mmoris S_AVERZ temporisation sous forme de retard la retombe
Description
La dure maximale pendant laquelle le signal de sortie reste 1 est la mme que la valeur de temps t programme. Le signal de sortie reste 1 pour une dure plus courte si le signal dentre passe 0. Le signal de sortie reste 1 pendant la dure programme, quelle que soit la dure pendant laquelle le signal dentre reste 1. Le signal de sortie est gal 1 uniquement lorsque le temps programm sest coul et que le signal dentre est toujours 1. Le signal de sortie passe de 0 1 uniquement lorsque le temps programm sest coul, quelle que soit la dure pendant laquelle le signal dentre reste 1. Le signal de sortie est gal 1 lorsque le signal dentre est gal 1 ou lorsque la temporisation sexcute. La temporisation est dmarre lorsque le signal dentre passe de 1 0.
13-5
Oprations de temporisation
13.3
Reprsentation
Anglaise T no. S_PULSE S TV R BI BCD Q Allemande T-Nr. S_IMPULS S TW R DUAL DEZ Q
Zone de mmoire T
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, D, L, Entre de remise zro T, Z E, A, M, D, L E, A, M, D, L E, A, M, D, L Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
Description
L'opration Paramtrer et dmarrer une temporisation sous forme d'impulsion dmarre la temporisation prcise en cas de front montant (c'estdire lorsque l'tat de signal passe de 0 1) l'entre de dmarrage S. Un changement d'tat de signal est toujours ncessaire pour activer une temporisation. La valeur de temps indique l'entre TW s'coule pendant le temps programm, tant que l'tat de signal l'entre S est gal 1. Pendant que la temporisation s'excute, l'interrogation 1 de l'tat de signal la sortie Q donne 1 comme rsultat. En cas de passage de 1 0 l'entre S avant que le temps n'ait expir, la temporisation s'arrte. Dans ce cas, l'interrogation 1 de l'tat de signal la sortie Q donne 0 comme rsultat. En cas de passage de 0 1 l'entre de remise zro R pendant que la temporisation s'coule, cette dernire est remise zro. Cette transition remet aussi la valeur de temps et la base de temps zro. L'tat de signal 1 l'entre R de la temporisation n'a aucun effet si la temporisation ne s'excute pas. La valeur de temps en cours peut tre lue en format binaire la sortie DUAL et en format dcimal cod binaire la sortie DEZ. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
13-6
Oprations de temporisation
Chronogramme
Proprits de la temporisation sous forme d'impulsion
t RLG lentre S t t
RLG lentre R
t = Temps programm
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU X ETAT X RLG X /PI 1
Exemple
T5 S_IMPULS E 0.0 S5T#2s E 0.1 S TW R DUAL DEZ Q A 4.0 =
La temporisation T5 est dmarre si l'tat de signal passe de 0 1 l'entre E 0.0 (front montant du RLG). Elle s'coule avec la valeur indique, gale deux secondes (2s), tant que E 0.0 est 1. Si l'tat de signal en E 0.0 passe de 1 0 avant que le temps n'ait expir, la temporisation s'arrte. Si l'tat de signal l'entre E 0.1 passe de 0 1 alors que la temporisation s'coule, cette dernire est remise zro. L'tat de signal la sortie A 4.0 est 1 tant que la temporisation s'coule.
13-7
Oprations de temporisation
13.4
Reprsentation
Zone de mmoire T
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, D, L, Entre de remise zro T, Z E, A, M, D, L E, A, M, D, L E, A, M, D, L Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
Description
L'opration Paramtrer et dmarrer une temporisation sous forme d'impulsion prolonge dmarre la temporisation prcise en cas de front montant (c'estdire lorsque l'tat de signal passe de 0 1) l'entre de dmarrage S. Un changement d'tat de signal est toujours ncessaire pour activer une temporisation. La valeur de temps indique l'entre TW continue s'couler mme si l'tat de signal l'entre S passe 0 avant expiration du temps. Tant que la temporisation s'coule, l'interrogation 1 de l'tat de signal la sortie Q donne 1 comme rsultat. La temporisation est redmarre avec la valeur de temps indique si l'tat de signal l'entre S passe de 0 1 alors que la temporisation s'excute. En cas de passage de 0 1 l'entre de remise zro (R) pendant que la temporisation s'coule, cette dernire est remise zro. Cette transition remet aussi la valeur de temps et la base de temps zro. La valeur de temps en cours peut tre lue en format binaire la sortie DUAL et en format dcimal cod binaire la sortie DEZ. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
Langage LOG pour SIMATIC S7-300/400 A5E00706956-01
13-8
Oprations de temporisation
Chronogramme
Proprits de la temporisation sous forme d'impulsion prolonge
t RLG lentre S t t t
RLG lentre R
t = Temps programm
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU X ETAT X RLG X /PI 1
Exemple
T5 S_VIMP E 0.0 S5T#2s E 0.1 S TW R DUAL DEZ Q A 4.0 =
La temporisation T5 est dmarre si l'tat de signal passe de 0 1 l'entre E 0.0 (front montant du RLG). Le temps de deux secondes (2s) indiqu continue s'couler mme en cas de front descendant l'entre S. Si l'tat de signal en E 0.0 passe de 0 1 avant expiration de ces deux secondes, la temporisation est redmarre. Si l'tat de signal en E 0.1 passe de 0 1 alors que la temporisation s'coule, cette dernire est remise zro. L'tat de signal la sortie A 4.0 est 1 tant que la temporisation s'excute.
13-9
Oprations de temporisation
13.5
Reprsentation
Anglaise T no. S_ODT S TV R BI BCD Q Allemande T-Nr. S_EVERZ S TW R DUAL DEZ Q
Zone de mmoire T
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, D, L, Entre de remise zro T, Z E, A, M, D, L E, A, M, D, L E, A, M, D, L Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
Description
L'opration Paramtrer et dmarrer une temporisation sous forme de retard la monte dmarre la temporisation prcise en cas de front montant (c'estdire lorsque l'tat de signal passe de 0 1) l'entre de dmarrage S. Un changement d'tat de signal est toujours ncessaire pour activer une temporisation. La valeur de temps indique l'entre TW s'coule tant que l'tat de signal l'entre S est 1. L'interrogation 1 de l'tat de signal la sortie Q donne 1 comme rsultat lorsque le temps a expir, que l'tat de signal l'entre S est toujours 1 et que l'tat de signal l'entre R est toujours 0. La temporisation s'arrte si l'tat de signal l'entre S passe de 1 0 alors que la temporisation s'excute. Dans ce cas, l'interrogation 1 de l'tat de signal donne toujours 0 comme rsultat. En cas de passage de 0 1 l'entre de remise zro (R) pendant que la temporisation s'coule, cette dernire est remise zro. Cette transition remet aussi la valeur de temps et la base de temps zro. La temporisation est galement remise zro si l'tat de signal gale 1 l'entre R alors que la temporisation ne s'excute pas. La valeur de temps en cours peut tre lue en format binaire la sortie DUAL et en format dcimal cod binaire la sortie DEZ. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
13-10
Oprations de temporisation
Chronogramme
Proprits de la temporisation sous forme de retard la monte
t RLG lentre S t t
RLG lentre R
t = Temps programm
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU X ETAT X RLG X /PI 1
Exemple
T5 S_EVERZ E 0.0 S5T#2s E 0.1 S TW R DUAL DEZ Q A 4.0 =
La temporisation T5 est dmarre si l'tat de signal passe de 0 1 l'entre E 0.0 (front montant du RLG). Si, l'expiration du temps de deux secondes (2s) indiqu, l'tat de signal la sortie E 0.0 est toujours 1, l'tat de signal la sortie A 4.0 est 1. Si l'tat de signal en E 0.0 passe de 1 0, la temporisation s'arrte et A 4.0 est 0. Si l'tat de signal en E 0.0 passe de 0 1 alors que la temporisation s'excute, cette dernire est redmarre.
13-11
Oprations de temporisation
13.6
S_SEVERZ : Paramtrer et dmarrer une temporisation sous forme de retard la monte mmoris
Reprsentation
Anglaise T no. S_ODTS S TV R BI BCD Q Allemande T-Nr. S_SEVERZ S TW R DUAL DEZ Q
Zone de mmoire T
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, D, L, Entre de remise zro T, Z E, A, M, D, L E, A, M, D, L E, A, M, D, L Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
Description
L'opration Paramtrer et dmarrer une temporisation sous forme de retard la monte mmoris dmarre la temporisation prcise en cas de front montant (c'estdire lorsque l'tat de signal passe de 0 1) l'entre de dmarrage S. Un changement d'tat de signal est toujours ncessaire pour activer une temporisation. La valeur de temps indique l'entre TW continue s'couler mme si l'tat de signal l'entre S passe 0 avant que la temporisation n'ait expir. L'interrogation 1 de l'tat de signal la sortie Q donne 1 comme rsultat lorsque le temps a expir, quel que soit l'tat de signal l'entre S, et lorsque l'entre de remise zro (R) reste 0. Si l'tat de signal l'entre S passe de 0 1 pendant que la temporisation s'excute, cette dernire est redmarre avec la valeur de temps indique. En cas de passage de 0 1 l'entre de remise zro (R), la temporisation est remise zro quel que soit le RLG l'entre S. La valeur de temps en cours peut tre lue en format binaire la sortie DUAL et en format dcimal cod binaire la sortie BCD. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
13-12
Oprations de temporisation
Chronogramme
Proprits de la temporisation sous forme de retard la monte mmoris
t RLG lentre S t t t
RLG lentre R
t = Temps programm
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU X ETAT X RLG X /PI 1
Exemple
T5 S_SEVERZ E 0.0 S5T#2s E 0.1 S TW R DUAL DEZ Q A 4.0 =
La temporisation T5 est dmarre si l'tat de signal passe de 0 1 l'entre E 0.0 (front montant du RLG). Elle continue s'couler mme si l'tat de signal en E 0.0 passe de 1 0. Si l'tat de signal l'entre E 0.0 passe de 0 1 avant expiration de la valeur indique, la temporisation est redmarre. Si l'tat de signal en E 0.1 passe de 0 1 alors que la temporisation s'coule, cette dernire est remise zro. L'tat de signal la sortie A 4.0 est 1 si le temps a expir et que E 0.1 reste 0.
13-13
Oprations de temporisation
13.7
Reprsentation
Anglaise T no. S_OFFDT S TV R BI BCD Q Allemande T-Nr. S_AVERZ S TW R DUAL DEZ Q
Zone de mmoire T
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, D, L, Entre de remise zro T, Z E, A, M, D, L E, A, M, D, L E, A, M, D, L Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
Description
L'opration Paramtrer et dmarrer une temporisation sous forme de retard la retombe dmarre la temporisation prcise en cas de front descendant (c'est--dire lorsque l'tat de signal passe de 1 0) l'entre de dmarrage S. Un changement d'tat de signal est toujours ncessaire pour activer une temporisation. L'interrogation 1 de l'tat de signal la sortie Q donne 1 comme rsultat lorsque l'tat de signal l'entre S est 1 ou lorsque la temporisation s'coule. La temporisation est remise zro lorsque l'tat de signal l'entre S passe de 0 1 alors que la temporisation s'excute. La temporisation n'est redmarre que lorsque l'tat de signal l'entre S repasse de 1 0. En cas de passage de 0 1 l'entre de remise zro (R) pendant que la temporisation s'excute, cette dernire est remise zro. La valeur de temps en cours peut tre lue en format binaire la sortie DUAL et en format dcimal cod binaire la sortie DEZ. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
13-14
Oprations de temporisation
Chronogramme
Proprits de la temporisation sous forme de retard la retombe
t RLG lentre S t t t
RLG lentre R
t = Temps programm
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU X ETAT X RLG X /PI 1
Exemple
T5 S_AVERZ E 0.0 S5T#2s E 0.1 S TW R DUAL DEZ Q A 4.0 =
La temporisation T5 est dmarre si l'tat de signal passe de 1 0 l'entre E 0.0. L'tat de signal la sortie A 4.0 est 1 lorsque l'tat de signal en E 0.0 est 1 ou que la temporisation s'coule. Si l'tat de signal en E 0.1 passe de 0 1 alors que la temporisation s'excute, cette dernire est remise zro.
13-15
Oprations de temporisation
13.8
Reprsentation
Anglaise <oprande> SP <valeur de temps> TV <valeur de temps> TW Allemande <oprande> SI
Description L'oprande indique le numro de la temporisation dmarrer. Valeur de temps (format S5TIME)
Description
L'opration Temporisation sous forme d'impulsion dmarre la temporisation indique avec une valeur de temps donne si le RLG prsente un front montant (c'estdire si le RLG passe de 0 1). La temporisation s'coule tant que le RLG est positif. L'interrogation 1 de l'tat du signal fournit un rsultat gal 1 tant que la temporisation s'coule. Si le RLG passe de 1 0 avant que le temps indiqu n'ait expir, la temporisation s'arrte. Dans ce cas, l'interrogation 1 de l'tat de signal fournit un rsultat gal 0. Vous ne pouvez placer la bote Temporisation sous forme d'impulsion qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU 0 ETAT RLG /PI 0
13-16
Oprations de temporisation
Exemple
Rseau 1
T5 E 0.0 S5T#2s TW SI
Rseau 2
A 4.0 =
T5
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), la temporisation T5 est dmarre. La temporisation s'coule avec la valeur de temps prcise de 2 secondes tant que l'tat de signal en E 0.0 est gal 1. Si l'tat de signal en E 0.0 passe de 1 0 avant expiration du temps prcis, la temporisation s'arrte. L'tat de signal la sortie A 4.0 est 1 tant que la temporisation s'excute.
13-17
Oprations de temporisation
13.9
Reprsentation
Anglaise <oprande> SE <valeur de temps> TV <valeur de temps> Allemande <oprande> SV TW
Description L'oprande indique le numro de la temporisation dmarrer. Valeur de temps (format S5TIME)
Description
L'opration Temporisation sous forme d'impulsion prolonge dmarre la temporisation indique avec une valeur de temps donne si le RLG prsente un front montant (c'est dire si le RLG passe de 0 1). La temporisation continue s'couler mme si le RLG passe 0 avant que le temps prcis n'ait expir. L'interrogation 1 de l'tat du signal fournit un rsultat gal 1 tant que la temporisation s'coule. La temporisation est redmarre (redclenche) avec le temps indiqu si le RLG repasse de 0 1 alors que la temporisation s'coule encore. Vous ne pouvez placer la bote Temporisation sous forme d'impulsion prolonge qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU 0 ETAT RLG /PI 0
13-18
Oprations de temporisation
Exemple
Rseau 1
T5 E 0.0 S5T#2s SV TW
Rseau 2
A 4.0 =
T5
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), la temporisation T5 est dmarre. La temporisation continue s'couler mme en prsence d'un front descendant du RLG. Si l'tat de signal en E 0.0 repasse de 0 1 avant expiration du temps prcis, la temporisation est redclenche. L'tat de signal la sortie A 4.0 est 1 tant que la temporisation s'excute.
13-19
Oprations de temporisation
13.10
Reprsentation
Anglaise <oprande> SD <valeur de temps> TV <valeur de temps> Allemande <oprande> SE TW
Description L'oprande indique le numro de la temporisation dmarrer. Valeur de temps (format S5TIME)
Description
L'opration Temporisation sous forme de retard la monte dmarre la temporisation indique si le RLG prsente un front montant (c'estdire si le RLG passe de 0 1). L'interrogation 1 de l'tat du signal fournit un rsultat gal 1 lorsque le temps indiqu s'est coul sans erreur et que le RLG est toujours gal 1. Si le RLG passe de 1 0 alors que la temporisation s'coule, la temporisation est arrte. Dans ce cas, l'interrogation 1 de l'tat de signal fournit toujours un rsultat gal 0. Vous ne pouvez placer la bote Temporisation sous forme de retard la monte qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU 0 ETAT RLG /PI 0
13-20
Oprations de temporisation
Exemple
Rseau 1
T5 E 0.0 S5T#2s SE TW
Rseau 2
A 4.0 =
T5
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), la temporisation T5 est dmarre. Si le temps expire et que l'tat de signal en E 0.0 est toujours 1, la sortie A 4.0 est mise 1. Si l'tat de signal en E 0.0 passe de 1 0, la temporisation est arrte.
13-21
Oprations de temporisation
13.11
Reprsentation
Anglaise <oprande> SS <valeur de temps> TV <valeur de temps> Allemande <oprande> SS TW
Description L'oprande indique le numro de la temporisation dmarrer. Valeur de temps (format S5TIME)
Description
L'opration Temporisation sous forme de retard la monte mmoris dmarre la temporisation indique si le RLG prsente un front montant (c'estdire si le RLG passe de 0 1). La temporisation continue s'couler mme si le RLG passe 0 avant que le temps n'ait expir. L'interrogation 1 de l'tat du signal fournit un rsultat gal 1 lorsque le temps indiqu a expir, quel que soit le RLG. Si le RLG passe de 0 1 alors que la temporisation s'excute, la temporisation est redmarre (redclenche) avec le temps indiqu. Vous ne pouvez placer la bote Temporisation sous forme de retard la monte mmoris qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU 0 ETAT RLG /PI 0
13-22
Oprations de temporisation
Exemple
Rseau 1
T5 E 0.0 S5T#2s SS TW
Rseau 2
A 4.0 =
T5
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), la temporisation T5 est dmarre. La temporisation continue s'couler mme si l'tat de signal passe de 1 0 l'entre E 0.0. Si l'tat de signal en E 0.0 passe de 0 1 avant que le temps n'ait expir, la temporisation est redclenche. L'tat de signal de la sortie A 4.0 est 1 si le temps a expir.
13-23
Oprations de temporisation
13.12
Reprsentation
Anglaise <oprande> SF <valeur de temps> TV <valeur de temps> Allemande <oprande> SA TW
Description L'oprande indique le numro de la temporisation dmarrer. Valeur de temps (format S5TIME)
Description
L'opration Temporisation sous forme de retard la retombe dmarre la temporisation indique si le RLG prsente un front descendant (c'estdire si le RLG passe de 1 0). L'interrogation 1 de l'tat du signal fournit un rsultat gal 1 lorsque le RLG est gal 1 ou que la temporisation s'coule. La temporisation est mise 0 lorsque le RLG passe de 0 1 alors que la temporisation s'excute. La temporisation n'est redmarre que lorsque le RLG repasse de 1 0. Vous ne pouvez placer la bote Temporisation sous forme de retard la retombe qu' l'extrmit droite de la squence combinatoire. Il est toutefois possible d'en utiliser plusieurs. Voir aussi Adresse d'une temporisation en mmoire et composants d'une temporisation.
Mot d'tat
RB Ecriture BI1 BI0 DEB DM OU 0 ETAT RLG /PI 0
13-24
Oprations de temporisation
Exemple
Rseau 1
T5 E 0.0 S5T#2s SA TW
Rseau 2
A 4.0 =
T5
Si l'tat de signal en E 0.0 passe de 1 0, la temporisation T5 est dmarre. Si l'tat de signal en E 0.0 passe de 0 1, la temporisation T5 est mise 0. L'tat de signal de la sortie A 4.0 est 1 lorsque l'tat de signal est 1 l'entre E 0.0 ou que la temporisation s'excute.
13-25
Oprations de temporisation
13-26
14
14.1
Description
Les oprations combinatoires sur mots combinent deux mots (16 bits) ou deux doubles mots (32 bits) indiqus dans les entres IN1 et IN2, selon les combinaisons boolennes. Ces oprations sont actives si l'tat de signal est 1 l'entre de validation EN. Les valeurs sont interprtes comme profils binaires purs. Le rsultat est rang dans la sortie OUT. L'tat de signal de ENO est identique celui de EN. Si le rsultat la sortie OUT est diffrent de 0, le bit BI1 du mot d'tat est mis 1. Si le rsultat la sortie OUT gale 0, le bit BI1 du mot d'tat est mis 0. Vous disposez des oprations combinatoires sur mots suivantes :
WAND_W : ET mot WOR_W : OU mot WXOR_W : OU exclusif mot WAND_DW : ET double mot WOR_DW : OU double mot WXOR_DW : OU exclusif double mot
14-1
14.2
WAND_W : ET mot
Reprsentation
WAND_W EN IN1 IN2 OUT ENO
Description Entre de validation Premire valeur de la combinaison Seconde valeur de la combinaison Rsultat de la combinaison Sortie de validation
Description
L'opration ET mot est active si l'tat de signal est 1 l'entre de validation EN. Cette opration combine, bit par bit selon la table de vrit ET, les deux mots indiqus dans les entres IN1 et IN2. Ces valeurs sont interprtes comme profils binaires purs. Le rsultat est rang dans la sortie OUT. L'tat de signal de ENO est identique celui de EN.
Mot d'tat
RB Ecriture 1 BI1 X BI0 0 DEB 0 DM OU X ETAT 1 RLG 1 /PI 1
Exemple
WAND_W E 0.0 MW0 2#0000000000001111 EN IN1 IN2 OUT ENO MW2 A 4.0
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Seuls les bits 0 3 sont significatifs ; les autres bits de MW0 sont masqus : IN1 IN2 OUT = = = 0101010101010101 0000000000001111 0000000000000101
14-2
14.3
WOR_W : OU mot
Reprsentation
WOR_W EN IN1 IN2 OUT ENO
Description Entre de validation Premire valeur de la combinaison Seconde valeur de la combinaison Rsultat de la combinaison Sortie de validation
Description
Lopration OU mot est active si ltat de signal est 1 lentre de validation EN. Cette opration combine, bit par bit selon la table de vrit OU, les deux mots indiqus dans les entres IN1 et IN2. Ces valeurs sont interprtes comme profils binaires purs. Le rsultat est rang dans la sortie OUT. Ltat de signal de ENO est identique celui de EN.
Mot d'tat
RB Ecriture 1 BI1 X BI0 0 DEB 0 DM OU X ETAT 1 RLG 1 /PI 1
Exemple
WOR_W E 0.0 MW0 2#0000000000001111 EN IN1 IN2 OUT ENO MW2 A 4.0
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Les bits dans MW0 et ceux dans la constante sont combins selon OU. Les bits 0 3 sont mis 1 ; les autres bits de MW0 restent inchangs dans MW2. IN1 IN2 OUT = = = 0101010101010101 0000000000001111 0101010101011111
14-3
14.4
Reprsentation
WXOR_W EN IN1 IN2 OUT ENO
Description Entre de validation Premire valeur de la combinaison Seconde valeur de la combinaison Rsultat de la combinaison Sortie de validation
Description
Lopration OU exclusif mot est active si ltat de signal est 1 lentre de va-lidation EN. Cette opration combine, bit par bit selon la table de vrit OU exclusif, les deux mots indiqus dans les entres IN1 et IN2. Ces valeurs sont interprtes comme profils binaires purs. Le rsultat est rang dans la sortie OUT. Ltat de signal de ENO est identique celui de EN.
Mot d'tat
RB Ecriture 1 BI1 X BI0 0 DEB 0 DM OU X ETAT 1 RLG 1 /PI 1
Exemple
WXOR_W E 0.0 MW0 2#0000000000001111 EN IN1 IN2 OUT ENO MW2 A 4.0
L'opration est active si l'tat de signal est 1 l'entre E 0.0. IN1 IN2 OUT = = = 0101010101010101 0000000000001111 0101010101011010
14-4
14.5
Reprsentation
WAND_DW EN IN1 IN2 OUT ENO
Description Entre de validation Premire valeur de la combinaison Seconde valeur de la combinaison Rsultat de la combinaison Sortie de validation
Description
Lopration ET double mot est active si ltat de signal est 1 lentre de validation EN. Cette opration combine, bit par bit selon la table de vrit ET, les deux doubles mots indiqus dans les entres IN1 et IN2. Ces valeurs sont interprtes comme profils binaires purs. Le rsultat est rang dans la sortie OUT. Ltat de signal de ENO est identique celui de EN.
Mot d'tat
RB Ecriture 1 BI1 X BI0 0 DEB 0 DM OU X ETAT 1 RLG 1 /PI 1
Exemple
WAND_DW E 0.0 MD0 DW#16#FFF EN IN1 IN2 OUT ENO MD4 A 4.0
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Seuls les bits 0 11 sont significatifs ; les autres bits de MD0 sont masqus : IN1 IN2 OUT = = = 01010101010101010101010101010101 00000000000000000000111111111111 00000000000000000000010101010101
14-5
14.6
Reprsentation
WOR_DW EN IN1 IN2 OUT ENO
Description Entre de validation Premire valeur de la combinaison Seconde valeur de la combinaison Rsultat de la combinaison Sortie de validation
Description
Lopration OU double mot est active si ltat de signal est 1 lentre de validation EN. Cette opration combine, bit par bit selon la table de vrit OU, les deux doubles mots indiqus dans les entres IN1 et IN2. Ces valeurs sont interprtes comme profils binaires purs. Le rsultat est rang dans la sortie OUT. Ltat de signal de ENO est identique celui de EN.
Mot d'tat
RB Ecriture 1 BI1 X BI0 0 DEB 0 DM OU X ETAT 1 RLG 1 /PI 1
Exemple
WOR_DW E 0.0 MD0 DW#16#FFF EN IN1 IN2 OUT ENO MD4 A 4.0
L'opration est active si l'tat de signal est 1 l'entre E 0.0. Les bits dans MW0 et ceux dans la constante sont combins selon OU. Les bits 0 11 sont mis 1 ; les autres bits de MW0 restent inchangs dans MW2. IN1 IN2 OUT = = = 0101010101010101 0101010101010101 0000000000000000 0000111111111111 0101010101010101 0101111111111111
14-6
14.7
Reprsentation
WXOR_DW EN IN1 IN2 OUT ENO
Description Entre de validation Premire valeur de la combinaison Seconde valeur de la combinaison Rsultat de la combinaison Sortie de validation
Description
Lopration OU exclusif double mot est active si ltat de signal est 1 lentre de validation EN. Cette opration combine, bit par bit selon la table de vrit OU exclusif, les deux doubles mots indiqus dans les entres IN1 et IN2. Ces valeurs sont interprtes comme profils binaires purs. Le rsultat est rang dans la sortie OUT. Ltat de signal de ENO est identique celui de EN.
Mot d'tat
RB Ecriture 1 BI1 X BI0 0 DEB 0 DM OU X ETAT 1 RLG 1 /PI 1
Exemple
WXOR_DW E 0.0 MD0 DW#16#FFF EN IN1 IN2 OUT ENO MD4 A 4.0
L'opration est active si l'tat de signal est 1 l'entre E 0.0. IN1 IN2 OUT = = = 0101010101010101 0101010101010101 0000000000000000 0000111111111111 0101010101010101 0101101010101010
14-7
14-8
A.1
Porte ET Porte OU Affectation Connecteur Insrer entre binaire Inverser entre binaire Bits de rsultat Bits de rsultat Bits de rsultat Bits de rsultat Bits de rsultat Bits de rsultat Valeur absolue d'un nombre rel Fonctions trigonomtriques d'angles sous forme de nombres rels Additionner entier de 32 bits Additionner entier de 16 bits Additionner nombres rels Fonctions trigonomtriques d'angles sous forme de nombres rels Fonctions trigonomtriques d'angles sous forme de nombres rels Convertir nombre DCB en entier de 32 bits Convertir nombre DCB en entier de 16 bits Bit d'anomalie "Registre RB" Appeler FC/SFC sans paramtre CALL_FB : Appeler FB Appeler FC (CALL_FC)
A-1
Abrviations allemandes CALL_SFB CALL_SFC CEIL CMP >=D CMP >=I CMP >=R COS DI_BCD DI_R DIV_DI DIV_I DIV_R EXP FLOOR I_BCD I_DI INV_I INV_DI JMP JMP JMPN LABEL LN MCR> MCR< MCRA MCRD MOD_DI MOVE MUL_DI
Abrviations Catalogue anglaises des lments du programme CALL_SFB CALL_SFC CEIL CMP >=D CMP >=I CMP >=R COS DI_BCD DI_R DIV_DI DIV_I DIV_R EXP FLOOR I_BCD I_DI INV_I INV_DI JMP JMP JMPN LABEL LN MCR> MCR< MCRA MCRD MOD_DI MOVE MUL_DI Gestion d'excution de programmes Gestion d'excution de programmes Conversion Comparaison Comparaison Comparaison Fonction sur nombres virgule flottante Conversion Conversion Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Conversion Conversion Conversion Conversion Conversion Sauts Sauts Sauts Sauts Fonction sur nombres virgule flottante Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes Fonction sur nombres entiers Transfert Fonction sur nombres entiers
Description
Appeler SFB (CALL_SFB) Appeler SFC (CALL_SFC) Convertir nombre rel en entier suprieur le plus proche Comparer entiers de 32 bits Comparer entiers de 16 bits Comparer nombres rels Fonctions trigonomtriques d'angles sous forme de nombres rels Convertir entier de 32 bits en nombre DCB Convertir entier de 32 bits en nombre rel Diviser entiers de 32 bits Diviser entiers de 16 bits Diviser nombres rels Valeur exponentielle d'un nombre rel Convertir nombre rel en entier infrieur le plus proche Convertir entier de 16 bits en nombre DCB Convertir entier de 16 bits en entier de 32 bits Complment 1 d'entier de 16 bits Complment 1 d'entier de 32 bits Saut inconditionnel Saut si 1 (conditionnel) Saut si 0 (conditionnel) Repre de saut Logarithme naturel d'un nombre rel Dsactiver relais de masquage Activer relais de masquage Relais de masquage en fonction Relais de masquage en fonction Reste de division (32 bits) Affecter valeur Multiplier entiers de 32 bits
A-2
Abrviations allemandes MUL_I MUL_R N NEG NEG_DI NEG_I NEG_R OPN OS OV P POS R RET ROL_DW ROUND ROR_DW RS S SA SAVE S_AVERZ SE S_EVERZ SHL_DW SHL_W SHR_DI SHR_DW SHR_I SHR_W SI S_IMPULS SIN SQR SQRT SR
Abrviations Catalogue anglaises des lments du programme MUL_I MUL_R N NEG NEG_DI NEG_I NEG_R OPN OS OV P POS R RET ROL_DW ROUND ROR_DW RS S SF SAVE S_OFFDT SD S_ODT SHL_DW SHL_W SHR_DI SHR_DW SHR_I SHR_W SP S_PULSE SIN SQR SQRT SR Fonction sur nombres entiers Fonction sur nombres virgule flottante Combinaison sur bits Combinaison sur bits Conversion Conversion Conversion Appel de DB Bits d'tat Bits d'tat Combinaison sur bits Combinaison sur bits Combinaison sur bits Gestion d'excution de programmes Dcalage/rotation Conversion Dcalage/rotation Combinaison sur bits Combinaison sur bits Temporisations Combinaison sur bits Temporisations Temporisations Temporisations Dcalage/rotation Dcalage/rotation Dcalage/rotation Dcalage/rotation Dcalage/rotation Dcalage/rotation Temporisations Temporisations Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Combinaison sur bits
Description
Multiplier entiers de 16 bits Multiplier nombres rels Dtecter front descendant Dtecter front montant Complment deux d'entier de 32 bits Complment deux d'entier de 16 bits Inverser le signe d'un nombre rel Ouvrir bloc de donnes Bit d'anomalie "Dbordement mmoris" Bit d'anomalie "Dbordement Dtecter front montant Dtecter front montant de signal Mettre 0 Retour Rotation vers la gauche d'un double mot Arrondir entier de 32 bits Rotation vers la droite d'un double mot Bascule mise 0, mise 1 Mettre 1 Paramtrer et dmarrer une temporisation sous forme de retard la retombe Sauvegarder RLG dans RB Paramtrer et dmarrer une temporisation sous forme de retard la retombe Paramtrer et dmarrer une temporisation sous forme de retard la monte Paramtrer et dmarrer une temporisation sous forme de retard la monte Dcalage vers la gauche d'un double mot Dcalage vers la gauche d'un mot Dcalage vers la droite d'un entier de 32 bits Dcalage vers la droite d'un double mot Dcalage vers la droite d'un entier de 16 bits Dcalage vers la droite d'un mot Temporisation sous forme d'impulsion Paramtrer et dmarrer une temporisation sous forme d'impulsion Fonctions trigonomtriques d'angles sous forme de nombres rels Carr d'un nombre rel Racine carre d'un nombre rel Bascule mise 1, mise 0
A-3
Abrviations allemandes SS S_SEVERZ SUB_DI SUB_I SUB_R SV S_VIMP SZ TAN TRUNC UO WAND_DW WAND_W WOR_DW WOR_W WXOR_DW WXOR_W XOR ZAEHLER ZR Z_RUECK ZV Z_VORW
Abrviations Catalogue anglaises des lments du programme SS S_ODTS SUB_DI SUB_I SUB_R SE S_PEXT SC TAN TRUNC UO WAND_DW WAND_W WOR_DW WOR_W WXOR_DW WXOR_W XOR S_CUD CD S_CD CU S_CU Temporisations Temporisations Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante Temporisations Temporisations Compteurs Fonction sur nombres virgule flottante Conversion Bits d'tat
Description
Temporisation sous forme de retard la monte mmoris Paramtrer et dmarrer une temporisation sous forme de retard la monte mmoris Soustraire entiers de 32 bits Soustraire entiers de 16 bits Soustraire nombres rels Temporisation sous forme d'impulsion prolonge Paramtrer et dmarrer une temporisation sous forme d'impulsion prolonge Initialiser compteur Fonctions trigonomtriques d'angles sous forme de nombres rels Tronquer la partie entire (32 bits) Bit d'anomalie "Opration illicite"
Combinaison sur mots ET double mot Combinaison sur mots ET mot Combinaison sur mots OU double mot Combinaison sur mots OU mot Combinaison sur mots OU exclusif double mot Combinaison sur mots OU exclusif mot Combinaison sur bits Compteurs Compteurs Compteurs Compteurs Compteurs Combinaison OU exclusif Paramtrage et compteur incrmental/dcrmental Dcrmenter Paramtrage et compteur dcrmental Incrmenter Paramtrage et compteur incrmental
A-4
A.2
Porte ET Porte OU Affectation Connecteur Insrer entre binaire Inverser entre binaire Bits de rsultat Bits de rsultat Bits de rsultat Bits de rsultat Bits de rsultat Bits de rsultat Valeur absolue d'un nombre rel
ACOS
ACOS
Fonctions trigonomtriques d'angles sous forme de nombres rels Additionner entier de 32 bits Additionner entier de 16 bits Additionner nombres rels
ASIN
ASIN
Fonctions trigonomtriques d'angles sous forme de nombres rels Fonctions trigonomtriques d'angles sous forme de nombres rels Convertir nombre DCB en entier de 32 bits Convertir nombre DCB en entier de 16 bits Bit d'anomalie "Registre RB" Appeler FC/SFC sans paramtre
ATAN
ATAN
A-5
Abrviations Catalogue anglaises des lments du programme CALL_FB Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes Compteurs Conversion Comparaison Comparaison Comparaison Fonction sur nombres virgule flottante Compteurs Conversion Conversion Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Conversion Conversion Conversion Conversion Conversion Sauts Sauts Sauts Sauts Fonction sur nombres virgule flottante
Description
CALL_FB : Appeler FB
CALL_FC
CALL_FC
Appeler FC (CALL_FC)
CALL_SFB
CALL_SFB
CALL_SFC
CALL_SFC
Dcrmenter Convertir nombre rel en entier suprieur le plus proche Comparer entiers de 32 bits Comparer entiers de 16 bits Comparer nombres rels Fonctions trigonomtriques d'angles sous forme de nombres rels Incrmenter Convertir entier de 32 bits en nombre DCB Convertir entier de 32 bits en nombre rel Diviser entiers de 32 bits Diviser entiers de 16 bits Diviser nombres rels
EXP
EXP
Convertir nombre rel en entier infrieur le plus proche Convertir entier de 16 bits en nombre DCB Convertir entier de 16 bits en entier de 32 bits Complment 1 d'entier de 16 bits Complment 1 d'entier de 32 bits Saut inconditionnel Saut si 1 (conditionnel) Saut si 0 (conditionnel) Repre de saut Logarithme naturel d'un nombre rel
A-6
Abrviations Catalogue anglaises des lments du programme MCR> Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes Fonction sur nombres entiers Transfert Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante Combinaison sur bits Combinaison sur bits Conversion Conversion Conversion Appel de DB Bits d'tat Bits d'tat Combinaison sur bits Combinaison sur bits Combinaison sur bits Gestion d'excution de programmes Dcalage/rotation Conversion Dcalage/rotation Combinaison sur bits Combinaison sur bits Combinaison sur bits
Description
MCR<
MCR<
MCRA
MCRA
MCRD
MCRD
Reste de division (32 bits) Affecter valeur Multiplier entiers de 32 bits Multiplier entiers de 16 bits Multiplier nombres rels
Dtecter front descendant Dtecter front montant Complment deux d'entier de 32 bits Complment deux d'entier de 16 bits Inverser le signe d'un nombre rel Ouvrir bloc de donnes Bit d'anomalie "Dbordement mmoris" Bit d'anomalie "Dbordement Dtecter front montant Dtecter front montant de signal Mettre 0 Retour
Rotation vers la gauche d'un double mot Arrondir entier de 32 bits Rotation vers la droite d'un double mot Bascule mise 0, mise 1 Mettre 1 Sauvegarder RLG dans RB
A-7
Abrviations allemandes SC S_CD S_CU S_CUD SD SE SF SHL_DW SHL_W SHR_DI SHR_DW SHR_I SHR_W SIN
Abrviations Catalogue anglaises des lments du programme SZ Z_RUECK Z_VORW ZAEHLER SE SV SA SHL_DW SHL_W SHR_DI SHR_DW SHR_I SHR_W SIN Compteurs Compteurs Compteurs Compteurs Temporisations Temporisations Temporisations Dcalage/rotation Dcalage/rotation Dcalage/rotation Dcalage/rotation Dcalage/rotation Dcalage/rotation Fonction sur nombres virgule flottante Temporisations Temporisations Temporisations Temporisations Temporisations Temporisations Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Combinaison sur bits Temporisations Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante
Description
Initialiser compteur Paramtrage et compteur dcrmental Paramtrage et compteur incrmental Paramtrage et compteur incrmental/dcrmental Paramtrer et dmarrer une temporisation sous forme de retard la monte Temporisation sous forme d'impulsion prolonge Paramtrer et dmarrer une temporisation sous forme de retard la retombe Dcalage vers la gauche d'un double mot Dcalage vers la gauche d'un mot Dcalage vers la droite d'un entier de 32 bits Dcalage vers la droite d'un double mot Dcalage vers la droite d'un entier de 16 bits Dcalage vers la droite d'un mot Fonctions trigonomtriques d'angles sous forme de nombres rels Paramtrer et dmarrer une temporisation sous forme de retard la monte Paramtrer et dmarrer une temporisation sous forme de retard la monte mmoris Paramtrer et dmarrer une temporisation sous forme de retard la retombe Temporisation sous forme d'impulsion Paramtrer et dmarrer une temporisation sous forme d'impulsion prolonge Paramtrer et dmarrer une temporisation sous forme d'impulsion Carr d'un nombre rel
SQRT
SQRT
Bascule mise 1, mise 0 Temporisation sous forme de retard la monte mmoris Soustraire entiers de 32 bits Soustraire entiers de 16 bits Soustraire nombres rels
A-8
Abrviations Catalogue anglaises des lments du programme TAN Fonction sur nombres virgule flottante Conversion Bits d'tat Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur bits
Description
Fonctions trigonomtriques d'angles sous forme de nombres rels Tronquer la partie entire (32 bits) Bit d'anomalie "Opration illicite" ET double mot ET mot OU double mot OU mot OU exclusif double mot OU exclusif mot Combinaison OU exclusif
A-9
A-10
Exemples de programmation
B.1
Applications pratiques
Chacune des oprations LOG dclenche une fonction prcise. En combinant ces oprations dans un programme, vous pouvez excuter une grande varit de tches dautomatisation. Vous trouvez dans la suite quelques exemples dapplications pratiques : Commande d'un tapis roulant l'aide d'oprations de combinaison sur bits Dtection du sens de dplacement d'un tapis roulant l'aide d'oprations de combinaison sur bits Gnration d'une priode d'horloge l'aide d'oprations de temporisation Surveillance de l'espace de stockage l'aide l'aide d'oprations de comptage et de comparaison Calculs l'aide d'oprations arithmtiques sur nombres entiers Rglage de la dure de chauffage d'un four
Oprations utilises
Abrviation Allemande WAND_W WOR_W Z_RUECK Z_VORW R S P ADD_I DIV_I MUL_I CMP >=I CMP <=I & >=1 = JMPN RET MOVE SV Catalogue des lments de programme Combinaison sur mots Combinaison sur mots Compteurs Compteurs Combinaison sur bits Combinaison sur bits Combinaison sur bits Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres entiers Comparaison Comparaison Combinaison sur bits Combinaison sur bits Combinaison sur bits Sauts Gestion d'excution de programme Transfert Temporisations Description ET mot OU mot Dcrmenter Incrmenter Mettre 0 Mettre 1 Dtecter front montant du RLG Additionner entiers de 16 bits Diviser entiers de 16 bits Multiplier entiers de 16 bits Comparer entiers de 16 bits Comparer entiers de 16 bits Porte ET Porte OU Affectation Saut si 0 Retour Affecter valeur Temporisation sous forme dimpulsion prolonge
B-1
Exemples de programmation
B.2
Capteur S5
MOTEUR_MAR
S1 S2
O Marche O Arrt
S3 S4
O Marche O Arrt
MOTEUR_MAR A 4.0
B-2
Exemples de programmation
A 4.0 S
Rseau 2 : Appuyer sur lun des deux boutons Arrt ou ouvrir le contact ouverture la fin du tapis arrte le moteur.
E 1.2 E 1.4 E 1.5 >=1 A 4.0 R
B-3
Exemples de programmation
Adresse absolue
E 1.1 E 0.0 A 4.0 A 4.1 M 0.0 M 0.1
Mnmonique
BPE1 BPE2 DROITE GAUCHE MP1 MP2
Table de mnmoniques
E 0.0 E 0.1 A 4.0 A 4.1 BPE 1 BPE 2 DROITE GAUCHE
Rseau 2 : Si ltat de signal lentre E 0.1 passe de 0 1 (front montant) et si ltat de signal lentre E 0.0 est simultanment 0, le paquet sur le tapis se dplace vers la droite. Si lune des barrires photolectriques est interrompue, cela signifie quun paquet se trouve entre les deux barrires.
M 0.1 E 0.1 P E 0.0 & A 4.0 S
Rseau 3: Si une des barrires photolectriques est interrompue, un paquet se trouve entre les barrires. Lindicateur de sens se dsactive.
&
E 0.0 E 0.1
A 4.0 R A 4.1 R
B-4
Exemples de programmation
B.3
Gnrateur dhorloge
Vous pouvez utiliser, pour produire un signal qui se rpte priodiquement, un gnrateur dimpulsions dhorloge ou un relais clignotant. On trouve souvent des gnrateurs dhorloge dans les systmes de signalisation qui commandent le clignotement des lampes de signalisation. Dans lautomate S7-300, vous pouvez raliser la gnration dimpulsions dhorloge en utilisant le traitement command par horloge dans des blocs dorganisation spciaux. Toutefois, lexemple prsent dans le programme LOG suivant illustre lutilisation de fonctions de temporisation pour gnrer une priode dhorloge.
S5T#250MS
Rseau 4 : Le mot de mmento MW100 est incrment de 1 chaque fois que la temporisation sest coule.
ADD_I ??.? MW100 1 EN IN1 IN2 OUT ENO MW100
B-5
Exemples de programmation
Rseau 5 : Lopration MOVE vous permet de voir les diffrentes frquences dhorloge aux sorties A 12.0 A 13.7.
??.? MW100
AW12
1 0 250 ms
La temporisation est redmarre une fois le temps coul. De ce fait, linterrogation de ltat de signal ne dlivre ltat de signal 1 que brivement. La figure montre comment se prsente le bit RLG invers.
1 0 250 ms
Le bit RLG est gal 0 toutes les 250 ms. Le saut est ignor et le contenu du mot de mmento MW100 est incrment de 1.
B-6
Exemples de programmation
Frquence en hertz
2.0 1.0 0.5 0.25 0.125 0.0625 0.03125 0.015625 0.0078125 0.0039062 0.0019531 0.0009765 0.0004882 0.0002441 0.000122 0.000061
Dure
0.5 s 1s 2s 4s 8s 16 s 32 s 64 s 128 s 256 s 512 s 1024 s 2048 s 4096 s 8192 s (250 ms marche / 250 ms arrt) (0.5 s marche / 0.5 s arrt) (1 s marche / 1 s arrt) (2 s marche / 2 s arrt) (4 s marche / 4 s arrt) (8 s marche / 8 s arrt) (16 s marche / 16 s arrt) (32 s marche / 32 s arrt) (64 s marche / 64 s arrt) (128 s marche / 128 s arrt) (256 s marche / 256 s arrt) (512 s marche / 512 s arrt) (1024 s marche / 1024 s arrt) (2048 s marche / 2048 s arrt) (4096 s marche / 4096 s arrt)
Bit 7
0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 6
0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 5
0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 4
0 0 0 0 0 0 0 0 0 0 0 0 0
Bit 3
0 0 0 0 0 0 0 0 1 1 1 1 1
Bit 2
0 0 0 0 1 1 1 1 0 0 0 0 1
Bit 1 0 0
1 1
Bit 0
0 1 0 1 0 1 0 1 0 1 0 1 0
0 0
1 1
0 0
1 1
B-7
Exemples de programmation
B-8
Exemples de programmation
B.4
Tableau d'affichage
Paquets arrivants
E 12.0
E 12.1
Paquets sortants
B-9
Exemples de programmation
Rseau 3 : Si la valeur 50 est infrieure ou gale la valeur du compteur (cest--dire que la valeur de comptage est suprieure ou gale 50), la lampe de signalisation Espace de stockage plein 50 % sallume.
CMP <= I 50 MW200 IN1 IN2 A15.2 =
Rseau 4 : Si la valeur du compteur est suprieure ou gale 90, la lampe de signalisation Espace de stockage plein 90 % sallume.
CMP >= I MW200 90 IN1 IN2 A15.3 =
B-10
Exemples de programmation
Rseau 5 : Si la valeur du compteur est suprieure ou gale 100, la lampe de signalisation Espace de stockage plein sallume. Utilisez la sortie A 4.4 pour bloquer le tapis roulant 1.
CMP >= I MW200 100 IN1 IN2 A15.4 =
B-11
Exemples de programmation
B.5
Logigramme
Rseau 1 : Ouvrir bloc de donnes DB1.
DB1 OPN
Rseau 2 : Le mot dentre EW0 est additionn au mot de donnes global DBW3 (le bloc de donnes doit avoir t dfini et ouvert) et la somme est charge dans le mot de mmento MW100. MW100 est ensuite multipli par 15 et le rsultat mmoris dans le mot de mmento MW102. Puis, MW102 est divis par MW0 et le rsultat mmoris dans MW4.
ADD_I EN IN1 IN2 OUT ENO MW100 15 MW100 MUL_I EN IN1 IN2 OUT ENO MW102 MW0 MW102 DIV_I EN IN1 IN2 OUT ENO MW4
B-12
Exemples de programmation
B.6
Four
EB0
EB1
Composants du systme Bouton-poussoir Marche Molette de rglage des units Molette de rglage des dizaines Molette de rglage des centaines Dclenchement du chauffage
Adresse absolue E 0.7 E 1.0 E 1.3 E 1.4 E 1.7 E 0.0 E 0.3 A 4.0
B-13
Exemples de programmation
T1
&
RET
Rseau 3: Masquer les bits dentre E 0.4 E 0.7 (cest--dire les mettre 0). Ces bits dentre des molettes ne sont pas utiliss. Les 16 bits des entres correspondant aux molettes sont combins W#16#0FFF avec lopration ET mot. Le rsultat est charg dans le mot de mmento MW1. Afin de rgler la valeur de temps en secondes, la valeur prdfinie est combine W#16#2000 avec lopration OU mot. Le bit 13 est mis 1 et le bit 12 est mis 0.
WAND_W ??.? EW0 W#16#FFF EN IN1 IN2 OUT ENO MW1 W#16#2000 MW1 WOR_W EN IN1 IN2 OUT ENO MW2
Rseau 4 : Dmarrer la temporisation T1 sous forme dimpulsion prolonge si le boutonpoussoir Marche est enfonc, en chargeant le mot de mmento MW2 (rsultant de la combinaison prcdente) comme prslection.
T1 E 0.7 & MW2 T SV
B-14
C.1
Mcanisme EN/ENO
L'entre de validation (EN) et la sortie de validation (ENO) des reprsentations LOG/CONT sont ralises l'aide du bit RB. Lorsque EN et ENO sont combines, on a :
C-1
Assurez-vous que ce rseau sera parcouru dans tous les cas, ce qui signifie que vous ne devez ni utiliser de BEB dans le bloc, ni sauter ce rseau.
C-2
C.1.1
1 2 3 4 5 6 7 8 9 10 11
0.0
// Combinaison EN // Dcaler le RLG dans le RB et sauter si RLG == 0 // Paramtres de la reprsentation // Paramtres de la reprsentation // Addition effective
// Paramtres de la reprsentation // Dtection d'erreur // Enregistrer l'erreur dans le RB // Premire interrogation // Dcaler le RB dans le RLG
Aprs la premire ligne, le RLG contient le rsultat de la combinaison prcdente. L'instruction SPBNB copie le RLG dans le RB et met le bit de premire interrogation 1. Si le RLG est gal 0, le programme saute la ligne 10 et poursuit avec U RB. L'addition n'est pas effectue. Dans la ligne 10, le RB est nouveau copi dans le RLG et ainsi 0 est affect la sortie. Si le RLG est gal 1, le programme ne saute pas plus loin, ce qui signifie que l'addition est effectue. La ligne 7 permet de dterminer si une erreur s'est produite lors de l'addition, ce qui est enregistr dans le RB la ligne 8. La ligne 9 met le bit de premire interrogation 1. A la ligne 10, le bit RB est nouveau copi dans le RLG et ainsi la sortie prcise si l'addition a t correctement effectue. Le bit RB n'est plus modifi dans les lignes 10 et 11 et indique donc galement si l'addition s'est correctement droule.
C-3
C.1.2
1 2 3 4 5 6 7
0.0
// Combinaison EN // Dcaler le RLG dans le RB et sauter si RLG == 0 // Paramtres de la reprsentation // Paramtres de la reprsentation // Addition effective
// Paramtres de la reprsentation
Aprs la ligne 1, le RLG contient le rsultat de la combinaison prcdente. L'instruction SPBNB copie le RLG dans le RB et met le bit de premire interrogation 1. Si le RLG est gal 0, le programme saute la ligne 7, l'addition n'est pas ralise, le RLG et le RB valent 0. Si le RLG est gal 1, le programme ne saute pas plus loin, ce qui signifie que l'addition est effectue. L'ventuelle apparition d'une erreur lors de l'addition n'est pas dtecte. Le RLG et le RB valent 1.
C-4
C.1.3
1 2 3 4 5 6 7 8 9
L L +I T UN SAVE CLR U =
in1 in2
out OV
RB A
L'addition est ralise dans tous les cas. La ligne 5 dtermine si une erreur s'est produite lors de l'addition, ce qui est enregistr dans le RB la ligne 6. La ligne 7 met le bit de premire interrogation 1. A la ligne 8, le bit RB est nouveau copi dans le RLG et ainsi la sortie indique si l'addition s'est correctement droule. Le bit RB n'est plus modifi dans les lignes 8 et 9 et indique donc galement si l'addition s'est correctement droule.
C-5
C.1.4
1 2 3 4 5
L L +I T NOP 0
in1 in2
out
// Paramtres de la reprsentation
C-6
C.2
Transmission de paramtres
Les paramtres d'un bloc sont transmis sous forme de valeur. Pour les blocs fonctionnels, une copie de la valeur du paramtre effectif est utilise dans le DB d'instance au sein du bloc appel. Pour les fonctions, une copie de la valeur effective se trouve dans la pile des donnes locales. Les pointeurs ne sont pas copis. Avant l'appel, les valeurs INPUT sont copies dans le DB d'instance ou la pile L. Aprs l'appel, les valeurs OUTPUT sont recopies dans les variables. Seules des copies sont utilises au sein du bloc appel. Les instructions LIST requises se trouvent dans le bloc appelant et restent transparentes l'utilisateur.
Nota Si des mmentos, entres, sorties, priphries d'entre ou de sortie sont utiliss en tant qu'oprandes effectifs dans une fonction, ils sont traits de manire diffrente que les autres oprandes. Leur actualisation n'est effectue au moyen de la pile L, mais de manire directe. Exception : Si le paramtre formel correspondant est un paramtre d'entre de type de donnes BOOL, l'actualisation des paramtres effectifs est effectue via la pile L.
Important Lors de la programmation du bloc appel, veillez complter les paramtres dclars comme OUTPUT, sans quoi les valeurs fournies seront alatoires ! Pour les blocs fonctionnels, on obtiendrait la valeur du DB d'instance inscrite lors du dernier appel, pour les fonctions, la valeur alatoire se trouvant dans la pile L. Tenez compte des points suivants :
Si possible, initialisez tous les paramtres OUTPUT. Evitez l'utilisation d'instructions de mise 1 et de remise 0, car elles dpendent du RLG. Lorsque le RLG prend la valeur 0, c'est la valeur alatoire qui est conserve ! Lorsque vous effectuez un saut au sein du bloc, faites attention de ne pas sauter une ligne dans laquelle sont dcrits des paramtres OUTPUT. Tenez galement compte de BEB et de l'effet des instructions MCR.
C-7
C-8
Index
#
# .......................................................... 1-10 Appeler FB ............................................ 10-4 Appeler FC............................................ 10-6 Appeler FC/SFC sans paramtre ......... 10-2 Appeler multi-instances ...................... 10-12 Appeler SFB.......................................... 10-8 Appeler SFC ....................................... 10-10 Appeler un bloc dans une bibliothque .............................. 10-12 Applications pratiques............ B-1, B-2, B-5, ......................................... B-9, B-12, B-13 Arrondir entier de 32 bits ................... 3-13 ASIN...................................................... 8-12 ATAN .................................................... 8-12
&
& ............................................................ 1-3
<
<=0........................................................ 12-8 <>0........................................................ 12-8 <0.......................................................... 12-8
=
= ............................................................ 1-9 ==0........................................................ 12-8
B
Bascule mise 0 - mise 1.................. 1-14 Bascule mise 1 - mise 0.................. 1-15 BCD_DI................................................... 3-4 BCD_I ..................................................... 3-2 BIE ........................................................ 12-7 Bit d'anomalie "Dbordement mmoris" ......................................... 12-4 Bit d'anomalie "Dbordement" .............. 12-2 Bit d'anomalie "Opration illicite" .......... 12-6 Bit d'anomalie "Registre RB" ................ 12-7 Bits de rsultat ...................................... 12-8 BR ......................................................... 12-7
>
>=0........................................................ 12-8 >=1.......................................................... 1-2 >0.......................................................... 12-8
A
Abrviations allemandes (SIMATIC) ...... A-1 Abrviations anglaises (internationales). A-5 ABS......................................................... 8-7 ACOS.................................................... 8-12 Activer/dsactiver relais de masquage .................................. 10-18 ADD_DI................................................... 7-7 ADD_I ..................................................... 7-3 ADD_R :.................................................. 8-3 Addition avec combinaison EN et avec combinaison ENO ...............................C-3 Addition avec combinaison EN et sans combinaison ENO ...............................C-4 Addition sans combinaison EN et avec combinaison ENO ...............................C-5 Addition sans combinaison EN et sans combinaison ENO ...............................C-6 Additionner entiers de 16 bits ................. 7-3 Additionner entiers de 32 bits ................. 7-7 Additionner nombres rels...................... 8-3 Adresse d'une temporisation en mmoire et composants d'une temporisation .................................... 13-2 Affectation............................................... 1-9 Affecter valeur ........................................ 9-1
Langage LOG pour SIMATIC S7-300/400 A5E00706056-01
C
CALL ..................................................... 10-3 CALL_FB .............................................. 10-4 CALL_FC .............................................. 10-6 CALL_SFB ............................................ 10-8 CALL_SFC.......................................... 10-10 Carr d'un nombre rel ........................... 8-8 CD ......................................................... 4-11 CEIL : .................................................... 3-15 CMP<=D ................................................. 2-3 CMP<=I................................................... 2-2 CMP<=R ................................................. 2-4 CMP<>D ................................................. 2-3 CMP<>I................................................... 2-2 CMP<>R ................................................. 2-4 CMP<D ................................................... 2-3 CMP<I ..................................................... 2-2 CMP<R ................................................... 2-4 CMP==D ................................................. 2-3 CMP==I................................................... 2-2 CMP==R ................................................. 2-4 CMP>=D ................................................. 2-3
Index-1
Index
CMP>=I................................................... 2-2 CMP>=R ................................................. 2-4 CMP>D ................................................... 2-3 CMP>I..................................................... 2-2 CMP>R ................................................... 2-4 Combinaison OU exclusif ....................... 1-6 Combinaisons ET avant OU et OU avant ET ................................... 1-4 Comparer entiers de 16 bits ................... 2-2 Comparer entiers de 32 bits ................... 2-3 Comparer nombres rels........................ 2-4 Complment 1 d'entier de 16 bits........ 3-8 Complment 1 d'entier de 32 bits........ 3-9 Complment 2 d'entier de 16 bits...... 3-10 Complment 2 d'entier de 32 bits...... 3-11 Connecteur ........................................... 1-10 Convertir entier de 16 bits en entier de 32 bits ............................................ 3-5 Convertir entier de 16 bits en nombre DCB .................................. 3-3 Convertir entier de 32 bits en nombre DCB .................................. 3-6 Convertir entier de 32 bits en nombre rel.................................... 3-7 Convertir nombre DCB en entier de 16 bits ............................................ 3-2 Convertir nombre DCB en entier de 32 bits ............................................ 3-4 Convertir nombre rel en entier infrieur le plus proche ........... 3-16 Convertir nombre rel en entier suprieur le plus proche ......... 3-15 COS ...................................................... 8-12 CU......................................................... 4-10
E
ET double mot....................................... 14-5 ET mot .................................................. 14-2 Evaluation des bits du mot d'tat pour les oprations sur nombres entiers ..... 7-2 Evaluation des bits du mot d'tat pour les oprations sur nombres rels ........ 8-2 Exemple Oprations arithmtiques sur nombres entiers.......................B-12 Oprations combinatoires sur bits.......B-2 Oprations combinatoires sur mots ..B-13 Oprations de comptage et de comparaison ...........................B-9 Exemples de programmation..................B-1 EXP : ..................................................... 8-10
F
FLOOR :................................................ 3-16 Fonctions du relais de masquage....... 10-13 Fonctions trigonomtriques d'angles sous forme de nombres rels............ 8-12
I
--I ............................................................. 1-7 I_BCD ..................................................... 3-3 I_DI ......................................................... 3-5 Incrmenter........................................... 4-10 Initialiser compteur.................................. 4-9 Insrer entre binaire.............................. 1-7 INV_DI .................................................... 3-9 INV_I ....................................................... 3-8 Inverser le signe d'un nombre rel ....... 3-12 Inverser l'entre binaire .......................... 1-8
D
Dcalage vers la droite d'un double mot................................. 11-9 Dcalage vers la droite d'un entier de 16 bits .......................................... 11-2 Dcalage vers la droite d'un entier de 32 bits .......................................... 11-4 Dcalage vers la droite d'un mot .......... 11-7 Dcalage vers la gauche d'un double mot................................. 11-8 Dcalage vers la gauche d'un mot ....... 11-5 Dcrmenter ......................................... 4-11 Dtecter front descendant .................... 1-16 Dtecter front descendant de signal..... 1-19 Dtecter front montant.......................... 1-17 Dtecter front montant de signal .......... 1-20 DI_BCD................................................... 3-6 DI_R........................................................ 3-7 DIV_DI .................................................. 7-10 DIV_I....................................................... 7-6 DIV_R ..................................................... 8-6 Diviser entiers de 16 bits ........................ 7-6 Diviser entiers de 32 bits ...................... 7-10
J
JMP..................................................6-2, 6-3 JMPN ...................................................... 6-4
L
LABEL..................................................... 6-5 LN.......................................................... 8-11 Logarithme naturel d'un nombre rel.... 8-11
M
MCR< / MCR> .................................... 10-15 MCRA / MCRD.................................... 10-18 Mcanisme EN/ENO.......................C-1, C-2 Mettre 0.............................................. 1-12 Mettre 1.............................................. 1-13 MOD_DI : .............................................. 7-11 MOVE ..................................................... 9-1
Index-2
Index
MUL_DI................................................... 7-9 MUL_I ..................................................... 7-5 MUL_R.................................................... 8-5 Multiplier entiers de 16 bits..................... 7-5 Multiplier entiers de 32 bits..................... 7-9 Multiplier nombres rels ......................... 8-5
Paramtrer et dmarrer une temporisation sous forme d'impulsion prolonge .......................................... 13-8 Porte ET.................................................. 1-3 Porte OU ................................................. 1-2 POS ...................................................... 1-20
N
N .......................................................... 1-16 NEG ...................................................... 1-19 NEG_DI ................................................ 3-11 NEG_I ................................................... 3-10 NEG_R ................................................. 3-12
R
R ........................................................... 1-12 Racine carre d'un nombre rel ............. 8-9 Relais de masquage en fonction/hors fonction............................................ 10-15 Remarques importantes sur l'utilisation de la fonctionnalit MCR ................. 10-14 Repre de saut ................................6-1, 6-5 Reste de division (32 bits) .................... 7-11 RET ..................................................... 10-21 Retour ................................................. 10-21 ROL_DW............................................. 11-11 ROR_DW ............................................ 11-13 Rotation vers la droite d'un double mot....................................... 11-13 Rotation vers la gauche d'un double mot....................................... 11-11 ROUND :............................................... 3-13 RS ......................................................... 1-14
O
-oI............................................................ 1-8 Opration de conversion ........................ 3-1 Oprations arithmtiques sur nombres flottantes.............................................. 8-1 Oprations combinatoires sur bits.......... 1-1 Oprations de comparaison ................... 2-1 Oprations de comptage ........................ 4-1 Oprations de gestion dexcution de programme................................... 10-1 Oprations de nombre entiers ................ 7-1 Oprations de temporisation ................ 13-1 Oprations LOG classes d'aprs les abrviations allemandes................ A-1 Oprations LOG classes d'aprs les abrviations anglaises................... A-5 OPN ........................................................ 5-1 OS......................................................... 12-4 OU double mot ..................................... 14-6 OU exclusif double mot ........................ 14-7 OU exclusif mot .................................... 14-4 OU mot ................................................. 14-3 Ouvrir bloc de donnes .......................... 5-1 OV......................................................... 12-2
S
S ........................................................... 1-13 S_AVERZ............................................ 13-14 S_CD ...................................................... 4-7 S_CU ...................................................... 4-5 S_CUD.................................................... 4-3 S_EVERZ............................................ 13-10 S_IMPULS ............................................ 13-6 S_ODT ................................................ 13-10 S_ODTS.............................................. 13-12 S_OFFDT............................................ 13-14 S_PEXT ................................................ 13-8 S_PULSE.............................................. 13-6 S_SEVERZ ......................................... 13-12 S_VIMP................................................. 13-8 SA ....................................................... 13-24 Saut inconditionnel.................................. 6-2 Saut si 0 (conditionnel) ........................... 6-4 Saut si 1 (conditionnel) ........................... 6-3 Sauvegarder RLG dans RB .................. 1-18 SAVE .................................................... 1-18 SC ........................................................... 4-9 SD ....................................................... 13-20 SE ............................................13-18, 13-20 SF........................................................ 13-24 SHL_DW ............................................... 11-8 SHL_W.................................................. 11-5 SHR_DI................................................. 11-4
P
P .......................................................... 1-17 Paramtrage et compteur dcrmental.. 4-7 Paramtrage et compteur incrmental ... 4-5 Paramtrage et compteur incrmental/dcrmental..................... 4-3 Paramtrer et dmarrer une temporisation sous forme de retard la monte ..................................... 13-10 Paramtrer et dmarrer une temporisation sous forme de retard la monte mmoris .................... 13-12 Paramtrer et dmarrer une temporisation sous forme de retard la retombe .................................. 13-14 Paramtrer et dmarrer une temporisation sous forme d'impulsion ........................................ 13-6
Langage LOG pour SIMATIC S7-300/400 A5E00706056-01
Index-3
Index
SHR_DW .............................................. 11-9 SHR_I ................................................... 11-2 SHR_W................................................. 11-7 SI ............................................. 13-16, 13-17 SIN........................................................ 8-12 Soustraire entiers de 16 bits................... 7-4 Soustraire entiers de 32 bits................... 7-8 Soustraire nombres rels ....................... 8-4 SP ....................................................... 13-16 SQR ........................................................ 8-8 SQRT...................................................... 8-9 SR......................................................... 1-15 SS : ..................................................... 13-22 SUB_DI................................................... 7-8 SUB_I ..................................................... 7-4 SUB_R.................................................... 8-4 SV ....................................................... 13-18 SZ ........................................................... 4-9
U
UO......................................................... 12-6
V
Valeur absolue d'un nombre rel............ 8-7 Valeur exponentielle d'un nombre rel . 8-10 Vue d'ensemble ........ 1-1, 2-1, 3-1, 4-1, 7-1, ...................................8-1, 10-1, 13-1, B-1 Vue d'ensemble des oprations combinatoires sur mots ..................... 14-1 Vue d'ensemble des oprations de dcalage....................................... 11-1 Vue d'ensemble des oprations de rotation ....................................... 11-11 Vue d'ensemble des oprations de saut................................................. 6-1
T
TAN....................................................... 8-12 Temporisation sous forme de retard la monte ..................................... 13-20 Temporisation sous forme de retard la monte mmoris .................... 13-22 Temporisation sous forme de retard la retombe .................................. 13-24 Temporisation sous forme d'impulsion ...................................... 13-16 Temporisation sous forme d'impulsion prolonge ..................... 13-18 Transmission de paramtres ..................C-7 Tronquer la partie entire (32 bits) .... 3-14 TRUNC ................................................. 3-14
W
WAND_DW ........................................... 14-5 WAND_W.............................................. 14-2 WOR_DW ............................................. 14-6 WOR_W................................................ 14-3 WXOR_DW........................................... 14-7 WXOR_W : ........................................... 14-4
X
XOR ........................................................ 1-6
Z
Z_RUECK ............................................... 4-7 Z_VORW................................................. 4-5 ZAEHLER ............................................... 4-3 ZR ......................................................... 4-11 ZV.......................................................... 4-10
Index-4