Professional 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 Fonctions sur nombres entiers Fonctions sur nombres virgule flottante 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
Annexes Prsentation de toutes les oprations CONT Exemples de programmation Index Edition 08/2000 A5E00068866-02
A B
! ! !
Danger
signifie que la non-application des mesures de scurit appropries conduit la mort, des lsions corporelles graves ou un dommage matriel important.
Attention
signifie que la non-application des mesures de scurit appropries peut conduire la mort, des lsions corporelles graves ou un dommage matriel important.
Avertissement
signifie que la non-application des mesures de scurit appropries peut conduire des lsions corporelles lgres ou un dommage matriel.
Nota
doit vous rendre tout particulirement attentif des informations importantes sur le produit, aux manipulations effectuer avec le produit ou la partie de la documentation correspondante.
Personnel qualifi
La mise en service et l'utilisation de la console ne doivent tre effectues que conformment au manuel. Seules des personnes qualifies sont autorises effectuer des interventions sur la console. Il s'agit de personnes qui ont l'autorisation de mettre en service, de mettre la terre et de reprer des appareils, systmes et circuits lectriques conformment aux rgles de scurit en vigueur.
Attention
Le produit ne doit tre utilis que pour les applications spcifies dans le catalogue ou dans la description technique, et exclusivement avec des priphriques et composants recommands par Siemens. Le transport, le stockage, le montage, la mise en service ainsi que l'utilisation et la maintenance adquats de la console sont les conditions indispensables pour garantir un fonctionnement correct et sr du produit.
Marque de fabrique
SIMATIC, SIMATIC NET et SIMATIC HMI sont des marques dposes par SIEMENS AG. Les autres dsignations figurant dans ce document peuvent tre des marques dont l'utilisation par des tiers leurs propres fins peut enfreindre les droits des propritaires desdites marques. Copyright Siemens AG 2000 Tous droits rservs
Toute communication ou reproduction de ce support dinformation, toute exploitation ou communication de son contenu sont interdites, sauf autorisation expresse. Tout manquement cette rgle est illicite et expose son auteur au versement de dommages et intrts. Tous nos droits sont rservs, notamment pour le cas de la dlivrance d'un brevet ou celui de l'enregistrement d'un modle d'utilit.
Exclusion de responsabilit
Nous avons vrifi la conformit du contenu du prsent manuel avec le matriel et le logiciel qui y sont dcrits. Des divergences n'tant pourtant pas exclues, nous ne pouvons pas nous porter garants de la conformit intgrale. Les informations donnes dans ce manuel font l'objet d'un contrle rgulier et les corrections ncessaires figureront dans les prochaines ditions. Veuillez nous faire part de vos suggestions.
Siemens AG Bereich Automatisierungs- und Antriebstechnik Geschaeftsgebiet Industrie-Automatisierungssysteme Postfach 4848, D-90327 Nuernberg
Siemens Aktiengesellschaft
A5E00068866
Avant-propos
Objet du manuel
Ce manuel vous aidera crire des programmes utilisateur en langage CONT. Il contient une partie de rfrence dcrivant la syntaxe et le fonctionnement des lments du langage de programmation CONT.
Norme
CONT correspond au langage Schma contacts 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 CONT. 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 V5.1 Getting Started Programmer avec STEP 7 V5.1 Configuration matrielle et communication dans STEP 7 V5.1 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 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-4CA05-8CR0
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-4CA05-8CA0
Aides en ligne
Aide de STEP 7
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
Numro de rfrence
Fait partie du logiciel STEP 7
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 CONT". En raison de la structure similaire entre le manuel et laide en ligne, le passage de lun lautre est ais.
Avant-propos
Singapur
SIMATIC Hotline
Worldwide (Nuremberg) Technical Support (contre rtribution, seulement avec la carte SIMATIC)
Heure locale : Tl. : Fax : GMT: lu-ve de 0:00 24:00 +49 (911) 895-7777 +49 (911) 895-7001 +01:00
En rgle gnrale, les langues disponibles la SIMATIC Hotline sont l'allemand et l'anglais. Cependant, les langues franaise, espagnole et italienne sont pratiques dans le service de la Hotline d'autorisation.
vi
Avant-propos
sur Internet sous http://www.ad.siemens.de/simatic-cs dans la bote aux lettres du support technique de SIMATIC (Bulletin Board System =BBS) Nuremberg sous le numro +49 (911) 895-7100.
Pour tablir la communication avec la bote aux lettres, utilisez un modem allant jusqu' V.34 (28,8kbauds) et paramtr de la manire suivante : 8, N, 1, ANSI. Vous pouvez aussi utiliser une connexion RNIS (x.75, 64 kbits). Vous trouverez votre interlocuteur Automation & Drives dans votre pays et votre rgion en consultant notre base de donnes Interlocuteurs :
-
vii
Avant-propos
viii
Sommaire
Oprations combinatoires sur bits 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
1-1
Vue d'ensemble des oprations combinatoires sur bits ........................................... 1-1 XOR Combinaison OU exclusif ............................................................................ 1-2 ---| |--- Contact fermeture ................................................................................ 1-3 ---| / |--- Contact ouverture................................................................................. 1-4 --|NOT|-- Inverser RLG ........................................................................................ 1-5 ---( ) Bobine de sortie ......................................................................................... 1-6 ---( # )--- Connecteur............................................................................................... 1-8 ---( R ) Mettre 0.................................................................................................. 1-10 ---( S ) Mettre 1 ............................................................................................... 1-12 RS Bascule mise 0, mise 1......................................................................... 1-14 SR Bascule mise 1, mise 0 .......................................................................... 1-16 ---( N )--- Dtecter front descendant ................................................................... 1-18 ---( P )--- Dtecter front montant............................................................................ 1-19 ---(SAVE) Sauvegarder RLG dans RB................................................................ 1-20 NEG Dtecter front descendant de signal .......................................................... 1-21 POS Dtecter front montant de signal ................................................................ 1-22 Lecture directe en priphrie ................................................................................ 1-23 Ecriture directe en priphrie ................................................................................ 1-24 2-1
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 rels.................................................................................... 2-4 3-1
Oprations de conversion 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 I_DI Convertir entier de 16 bits en entier de 32 bits .............................................. 3-4 BCD_DI Convertir nombre DCB 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 rel................................................................ 3-7 INV_I Complment 1 d'entier de 16 bits ............................................................ 3-8 INV_DI Complment 1 dentier de 32 bits.......................................................... 3-9 NEG_I Complment 2 dentier de 16 bits......................................................... 3-10 NEG_DI Complment 2 dentier de 32 bits ...................................................... 3-11 NEG_R Inverser le signe d'un nombre rel ........................................................ 3-12 ROUND Arrondir................................................................................................ 3-13 TRUNC Tronquer la partie entire................................................................... 3-14 CEIL Convertir rel en entier suprieur le plus proche........................................ 3-15 FLOOR Convertir rel en entier infrieur le plus proche ..................................... 3-16
ix
Sommaire
4-1
Vue d'ensemble des oprations de comptage ......................................................... 4-1 ZAEHLER Paramtrage et compteur d'incrmentation / dcrmentation .............. 4-3 Z_VORW Paramtrage et compteur d'incrmentation .......................................... 4-5 Z_RUECK Paramtrage et compteur de dcrmentation...................................... 4-7 ---( SZ ) Initialiser compteur.................................................................................. 4-9 ---( ZV ) Incrmenter .......................................................................................... 4-10 ---( ZR ) Dcrmenter ........................................................................................ 4-11 5-1
Vue d'ensemble des oprations de saut.................................................................. 6-1 ---(JMP)--- Saut inconditionnel ............................................................................. 6-2 ---(JMP)--- Saut l'intrieur d'un bloc si 1 (conditionnel)....................................... 6-3 ---( JMPN ) Saut l'intrieur d'un bloc si 0 (conditionnel)...................................... 6-4 LABEL Repre de saut ........................................................................................ 6-5 7-1
Fonctions sur nombres entiers 7.1 7.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11
Vue d'ensemble des oprations arithmtiques sur nombres entiers......................... 7-1 Evaluation des bits du mot d'tat dans 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 8-1
Fonctions sur nombres virgule flottante 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 8.4.6 8.4.7 8.4.8 8.4.9 8.4.10
Vue d'ensemble des oprations arithmtiques sur nombres virgule flottante......... 8-1 Evaluation des bits du mot d'tat dans les oprations sur nombres virgule flottante .................................................................................................... 8-2 Oprations de base ................................................................................................ 8-3 ADD_R Additionner rels ..................................................................................... 8-3 SUB_R Soustraire rels....................................................................................... 8-4 MUL_R Multiplier rels......................................................................................... 8-5 DIV_R Diviser rels.............................................................................................. 8-6 ABS Valeur absolue d'un nombre virgule flottante ............................................. 8-7 Oprations tendues............................................................................................... 8-8 SQR Carr........................................................................................................... 8-8 SQRT Racine carre............................................................................................ 8-9 EXP Valeur exponentielle .................................................................................. 8-10 LN Logarithme naturel ....................................................................................... 8-11 SIN Sinus .......................................................................................................... 8-12 COS Cosinus..................................................................................................... 8-13 TAN Tangente ................................................................................................... 8-14 ASIN Arc sinus .................................................................................................. 8-15 ACOS Arc cosinus ............................................................................................. 8-16 ATAN Arc tangente............................................................................................ 8-17 9-1
Sommaire
10
Oprations de gestion d'excution de programme 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 10.14
10-1
Oprations de gestion dexcution de programme ................................................ 10-1 ---(Call) Appeler FC/SFC sans paramtre.......................................................... 10-2 CALL_FB Appeler FB (bote) ............................................................................. 10-4 CALL_FC Appeler FC (bote) ............................................................................. 10-6 CALL_SFB Appeler SFB (bote)......................................................................... 10-8 CALL_SFC Appeler SFC (bote) ...................................................................... 10-10 Appeler multi-instance ........................................................................................ 10-12 Appeler un bloc dans une bibliothque................................................................ 10-12 Remarques importantes sur l'utilisation de la fonctionnalit MCR ........................ 10-13 ---(MCR<) Relais de masquage en fonction ..................................................... 10-14 ---(MCR>) Relais de masquage hors fonction................................................... 10-16 ---(MCRA) Activer relais de masquage ............................................................. 10-18 ---(MCRD) Dsactiver relais de masquage ....................................................... 10-19 ---(RET) Retour................................................................................................ 10-20 11-1
11
Oprations de dcalage et de rotation 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-3 SHL_W Dcalage vers la gauche d'un mot ........................................................ 11-4 SHR_W Dcalage vers la droite d'un mot........................................................... 11-5 SHL_DW Dcalage vers la gauche d'un double mot........................................... 11-6 SHR_DW Dcalage vers la droite d'un double mot............................................. 11-7 Oprations de rotation .......................................................................................... 11-9 Vue densemble des oprations de rotation........................................................... 11-9 ROL_DW Rotation vers la gauche d'un double mot............................................ 11-9 ROR_DW Rotation vers la droite d'un double mot ............................................ 11-11 12-1
12
Oprations sur bits d'tat 12.1 12.2 12.3 12.4 12.5 12.6 12.7 12.8 12.9 12.10 12.11
Vue densemble des oprations sur bits dtat ...................................................... 12-1 OV ---| |--- Bit d'anomalie "dbordement".......................................................... 12-2 OS ---| |--- Bit d'anomalie "dbordement mmoris" ......................................... 12-3 UO ---| |--- Bit d'anomalie "illicite" ..................................................................... 12-5 BIE ---| |--- Bit d'anomalie "registre RB" ............................................................ 12-6 ==0 ---| |--Bit de rsultat pour gal 0.......................................................... 12-7 <>0 ---| |--- Bit de rsultat pour diffrent de 0.................................................... 12-8 >0 ---| |--- Bit de rsultat pour suprieur 0..................................................... 12-9 <0 ---| |--Bit de rsultat pour infrieur 0.................................................... 12-10 >=0 ---| |--- Bit de rsultat pour suprieur ou gal 0 ..................................... 12-11 <=0 ---| |--- Bit de rsultat pour infrieur ou gal 0 ...................................... 12-12 13-1
13
Oprations de temporisation 13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8 13.9 13.10 13.11
Vue densemble des oprations de temporisation ................................................. 13-1 Adresse dune temporisation en mmoire et composants dune temporisation...... 13-1 S_IMPULS Paramtrer et dmarrer temporisation sous forme d'impulsion ........ 13-5 S_VIMP Paramtrer et dmarrer temporisation sous forme d'impulsion prolonge ........................................................................................... 13-7 S_EVERZ Paramtrer et dmarrer temporisation sous forme de retard la monte............................................................................................ 13-9 S_SEVERZ Paramtrer et dmarrer temporisation sous forme de retard la monte mmoris.......................................................................... 13-11 S_AVERZ Paramtrer et dmarrer temporisation sous forme de retard la retombe ..................................................................................................... 13-13 ---( SI ) Dmarrer temporisation sous forme d'impulsion ................................... 13-15 ---( SV ) Dmarrer temporisation sous forme d'impulsion prolonge ................. 13-16 ---( SE ) Dmarrer temporisation sous forme de retard la monte.................. 13-18 ---( SS ) Dmarrer temporisation sous forme de retard la monte mmoris..... 13-20
xi
Sommaire
13.12 14
---( SA )
Oprations combinatoires sur mots 14.1 14.2 14.3 14.4 14.5 14.6 14.7
Vue densemble 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 A-1
Oprations CONT classes daprs les abrviations allemandes (SIMATIC)........... A-1 Oprations CONT classes daprs les abrviations anglaises ............................... A-5 B-1
Vue d'ensemble des exemples de programmation .................................................. B-1 Exemples : Oprations combinatoires sur bits......................................................... B-2 Exemple : Oprations de temporisation................................................................... B-6 Exemple : Oprations de comptage et de comparaison........................................... B-9 Exemple : Oprations arithmtiques sur nombres entiers...................................... B-11 Exemple : Oprations combinatoires sur mots ...................................................... B-12 Index-1
Index
xii
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. Pour les contacts et les bobines, 1 signifie activ ou excit et 0 signifie dsactiv ou dsexcit. 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 : ---| |-----| / |--XOR ---( ) ---( # )--Contact fermeture Contact ouverture Combinaison OU exclusif Bobine de sortie Connecteur
Les oprations suivantes ragissent un RLG gal 1 : ---( S ) ---( R ) SR RS Mettre 1 Mettre 0 Bascule mise 1, mise 0 Bascule mise 0, mise 1
Dautres oprations excutent les fonctions suivantes en cas de front montant ou descendant : ---(N)-----(P)--NEG POS Dtecter front descendant Dtecter front montant Dtecter front descendant de signal Dtecter front montant de signal
1-1
1.2
XOR
Combinaison OU exclusif
Reprsentation
Cette fonction XOR exige un rseau de contacts ouverture et fermeture (comme reprsent ci-dessous).
<oprande1> <oprande12>
<oprande11> <oprande12>
Paramtre
<oprande1> <oprande2
Type de donnes
BOOL BOOL
Zone de mmoire
E, A, M, L, D, T, Z E, A, M, L, D, T, Z
Description
Bit interrog Bit interrog
Description de l'opration
XOR (Combinaison OU exclusif) Cette opration gnre un RLG gal 1 si l'tat de signal des deux bits prciss est diffrent.
Exemple
E 0.0 E 0.1 A 4.0
E 0.0
E 0.1
La sortie A 4.0 est mise 1 si (E 0.0 gale 0 ET E 0.1 gale 1) OU (E 0.0 gale 1 ET E0.1 gale 0).
1-2
1.3
---| |---
Contact fermeture
Reprsentation
<oprande> ---| |--Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, L, D, T, Z
Description
Bit interrog
Description de l'opration
---| |--- (Contact fermeture) Le contact est ferm si la valeur du bit interrog sauvegarde en <oprande> gale 1. Dans pareil cas, le courant traverse le contact et l'opration fournit un rsultat logique (RLG) gal 1. En revanche, si l'tat de signal en <oprande> est 0, le contact est ouvert : aucun courant ne le traverse et l'opration fournit un rsultat logique gal 0. S'il s'agit d'une connexion en srie, le contact ---| |--- est combin au RLG bit par bit selon la table de vrit ET. S'il s'agit d'une connexion en parallle, le contact est combin au RLG selon la table de vrit OU.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 E 0.1
E 0.2
Flux d'nergie si l'une des conditions suivantes est satisfaite : L'tat de signal est 1 aux entres E 0.0 ET E 0.1 OU l'tat de signal est 1 l'entre E 0.2.
1-3
1.4
---| / |---
Contact ouverture
Reprsentation
<oprande> ---| / |--Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, L, D, T, Z
Description
Bit interrog
Description de l'opration
---| / |--- (Contact ouverture) Le contact est ferm si la valeur du bit interrog sauvegarde en <oprande> gale 0. Dans ce cas, le courant traverse le contact et l'opration fournit un rsultat logique (RLG) gal 1. En revanche, si l'tat de signal en <oprande> est 1, le contact est ouvert : aucun courant ne le traverse et l'opration fournit un rsultat logique gal 0. S'il s'agit d'une connexion en srie, le contact ---| / |--- est combin au RLG bit par bit selon la table de vrit ET. S'il s'agit d'une connexion en parallle, le contact est combin au RLG selon la table de vrit OU.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 E 0.2 E 0.1
Flux d'nergie si l'une des conditions suivantes est satisfaite : 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.
1-4
1.5
--|NOT|--
Inverser RLG
Reprsentation
---|NOT|---
Description de l'opration
---|NOT|--- (Inverser RLG) Cette opration inverse le bit de rsultat logique (RLG).
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
1
RLG
x
/PI
-
Exemple
E 0.0
NOT
A 4.0
E 0.1
E 0.2
La sortie A 4.0 est 0 si l'une des conditions suivantes est satisfaite : L'tat de signal l'entre E 0.0 est 1 OU l'tat l'entre E 0.1. ET l'entre E 0.2 est 1.
1-5
1.6
---( )
Bobine de sortie
Reprsentation
<oprande> ---( )
Type de donnes
BOOL
Paramtre
<oprande>
Zone de mmoire
E, A, M, L, D
Description
Bit affect
Description de l'opration
---( ) (Bobine de sortie) Cette opration fonctionne comme une bobine dans un schma relais. Si l'nergie atteint la bobine (RLG = 1), le bit en <oprande> est mis 1. Si l'nergie n'atteint pas la bobine (RLG = 0), le bit en <oprande> est mis 0. Vous ne pouvez placer une sortie qu' l'extrmit droite d'un trajet de courant. Jusqu' 16 sorties multiples sont possibles (voir exemples). Vous pouvez crer une sortie inverse l'aide de l'opration ---|NOT|--- (Inverser RLG).
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
x
RLG
-
/PI
0
1-6
Exemple
E 0.0 E 0.1 A 4.0
E 0.2
E 0.3 A 4.1
La sortie A 4.0 est 1 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. La sortie A 4.1 est 1 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) ET l'tat de signal est 1 l'entre E 0.3.
Si le trajet de courant de lexemple est dans une zone MCR active : Si le relais MCR est en fonction, l'tat de signal des sorties A 4.0 et A 4.1 est fonction de l'tat de signal du flux d'nergie comme dcrit ci-dessus. Si le relais MCR est hors fonction, les sorties A 4.0 et A 4.1 sont mises 0, quel que soit l'tat de signal du flux d'nergie.
1-7
1.7
Reprsentation
<oprande> ---( # )--Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, *L, D
Description
Bit affect
* Un oprande dans la pile des donnes locales ne peut tre utilis que s'il figure dans la table de dclaration des variables dans la zone TEMP d'un bloc de code (FC, FB, OB).
Description de l'opration
---( # )--- (Connecteur) Un connecteur est un lment d'affectation intermdiaire qui mmorise le bit RLG (l'tat de signal du flux d'nergie) dans l'<oprande> prcis. Cet lment sauvegarde la combinaison binaire du dernier branchement ouvert avant lui. S'il s'agit d'une connexion en srie avec d'autres lments, l'opration ---( # )--- est insre comme un contact. Ne branchez jamais l'lment ---( # )--- la barre d'alimentation et ne le placez pas immdiatement aprs un branchement ou comme dernier lment d'une branche. Vous pouvez crer un connecteur invers ---( # )--- l'aide de l'opration ---|NOT|--- (Inverser RLG).
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
x
RLG
-
/PI
1
1-8
Exemple
E 1.0 E 1.1 M 0.0 E 2.2 E 1.3 M 1.1 NOT M 2.2 NOT A 4.0
(#)
(#)
(#)
( )
E 1.0 E 1.1
M 0.0 a le RLG de
E 1.0 E 1.1 E 2.2 E 1.3 NOT
1-9
1.8
---( R ) Mettre 0
Reprsentation
<oprande> ---( R )
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, L, D, T, Z
Description
Bit mis 0
Description de l'opration
---( R ) (Mettre 0) Cette opration ne s'excute que si le RLG des oprations prcdentes a la valeur 1 (flux d'nergie la bobine). Si l'nergie atteint la bobine (RLG gale 1), l'opration met l'<oprande> prcis de l'lment 0. Si le RLG gale 0 (pas de flux d'nergie la bobine), l'opration n'a pas d'effet : l'tat de signal de l'oprande indiqu de l'lment reste inchang. Un <oprande> peut galement tre une temporisation (T n) dont la valeur de temps est mise 0 ou un compteur (Z n) dont la valeur de comptage est mise 0.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
x
RLG
-
/PI
0
1-10
Exemple
Rseau 1 E 0.0 E 0.1 A 4.0 R
E 0.2
Rseau 2 E 0.3 T1 R
Rseau 3 E 0.4 Z1 R
La sortie A 4.0 est uniquement mise zro si l'une des conditions suivantes est satisfaite : (l'tat de signal est 1 l'entre E 0.0 ET l'entre E 0.1) OU l'tat de signal est 0 l'entre E 0.2. La temporisation T1 est uniquement mise zro si : l'tat de signal l'entre E 0.3 gale 1. Le compteur Z1 est uniquement mis zro si : l'tat de signal l'entre E 0.4 gale 1. Si le trajet de courant de lexemple est dans une zone MCR : Si le relais MCR est en fonction, la sortie A 4.0, la temporisation T1 et le compteur Z1 sont mis zro comme dcrit ci-dessus. Si le relais MCR est hors fonction, la sortie A 4.0, la temporisation T1 et le compteur Z1 restent inchangs, quel que soit l'tat de signal du RLG (du flux d'nergie).
1-11
1.9
---( S )
Mettre 1
Reprsentation
<oprande> ---( S )
Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, L, D
Description
Bit mis 1
Description de l'opration
---( S ) (Mettre 1) Cette opration ne s'excute que si le RLG des oprations prcdentes a la valeur 1 (flux d'nergie la bobine). Dans ce cas, l'<oprande> prcis de l'lment est mis 1. Si le RLG gale 0, l'tat de signal en cours de l'oprande prcis de l'lment reste inchang.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
x
RLG
-
/PI
0
1-12
Exemple
E 0.0 E 0.1 A 4.0 S E 0.2
La sortie A 4.0 est mise 1 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 est 0, l'tat de signal de la sortie A 4.0 reste inchang.
Si le trajet de courant de lexemple est dans une zone MCR : Si le relais MCR est en fonction, la sortie A 4.0 est mise 1 comme dcrit ci-dessus. Si le relais MCR est hors fonction, l'tat de signal de la sortie A 4.0 reste inchang, quel que soit l'tat de signal du RLG (du flux d'nergie).
1-13
1.10
RS
Reprsentation
<oprande>
RS S R Q
Paramtre
<oprande> S R Q
Type de donnes
BOOL BOOL BOOL BOOL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Bit mis 1 ou 0 Valider mise 1 Valider mise 0 Etat de signal de <oprande>
Description de l'opration
RS (Bascule mise 0, mise 1) Cette opration excute la mise 0 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, c'est l'ordre qui compte : la bascule RS excute d'abord la mise 0, puis la mise 1 de l'<oprande> indiqu. L'oprande reste donc 1 pour le reste du cycle du programme. Les oprations S (mise 1) et R (mise 0) s'excutent uniquement si le RLG gale 1. Si le RLG gale 0, ces oprations ne sont pas influences et l'oprande indiqu reste inchang.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
1-14
Exemple
E 0.0 E 0.1 S M 0.0 RS Q R A 4.0
Si l'tat de signal est 1 l'entre E 0.0 et 0 l'entre E 0.1, le bit de 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 bit de 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 les 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.
Si lexemple ci-dessus est dans une zone MCR active : Si le relais MCR est en fonction, la sortie A 4.0 est mise 1 ou 0 comme dcrit ci-dessus. Si le relais MCR est hors fonction, la sortie A 4.0 reste inchange, quel que soit l'tat de signal des entres.
1-15
1.11
SR
Reprsentation
<oprande>
SR S R Q
Paramtre
<oprande> S R Q
Type de donnes
BOOL BOOL BOOL BOOL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Bit mis 1 ou 0 Valider mise 1 Valider mise 0 Etat de signal de <oprande>
Description de l'opration
SR (Bascule mise 1, mise 0) Cette opration excute la 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, c'est l'ordre qui compte : la bascule SR excute d'abord la mise 1, puis la mise 0 de l'<oprande> indiqu. L'oprande reste donc 0 pour le reste du cycle du programme. Les oprations S (mise 1) et R (mise 0) s'excutent uniquement si le RLG gale 1. Si le RLG gale 0, ces oprations ne sont pas influences et l'oprande indiqu reste inchang.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
1-16
Exemple
E 0.0 E 0.1 R M 0.0 SR Q S A 4.0
Si l'tat de signal est 1 l'entre E 0.0 et 0 l'entre E 0.1, le bit de 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 bit de 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 les deux la valeur 1, la mise zro, excute en dernier, l'emporte : M 0.0 est mis 0 et la sortie A 4.0 est 0.
Si lexemple ci-dessus est dans une zone MCR active : Si le relais MCR est en fonction, la sortie A 4.0 est mise 1 ou 0 comme dcrit ci-dessus. Si le relais MCR est hors fonction, la sortie A 4.0 reste inchange, quel que soit l'tat de signal des entres.
1-17
1.12
---( N )---
Reprsentation
<oprande> ---( N )--Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, L, D
Description
Le mmento de front mmorise l'ancien tat de signal du RLG.
Description de l'opration
---( N )--- (Dtecter front descendant) Cette opration dtecte le passage de 1 0 de l'tat de signal de l'oprande et montre cette transition avec un RLG gal 1 aprs cette opration. L'tat de signal en cours du RLG est compar l'tat de signal de l'oprande (au mmento de front). Si l'tat de signal de l'oprande est 1 et le RLG avant l'opration est 0, le rsultat logique aprs l'opration est 0 (impulsion) ; dans tous les autres cas, le rsultat logique aprs l'opration est 1. Le RLG avant l'opration est mmoris dans l'oprande.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 E 0.1 M 0.0 N CAS1 JMP
E 0.2
Le mmento de front M 0.0 mmorise l'tat de signal du RLG de toute la combinaison binaire. En cas de passage de 1 0 du RLG, le programme effectue un saut au repre CAS1.
1-18
1.13
Reprsentation
<oprande> ---( P )--Paramtre
<oprande>
Type de donnes
BOOL
Zone de mmoire
E, A, M, L, D
Description
Le mmento de front mmorise l'ancien tat de signal du RLG.
Description de l'opration
---( P )--- (Dtecter front montant du RLG) Cette opration dtecte le passage de 0 1 de l'tat de signal de l'oprande et montre cette transition avec un RLG gal 1 aprs cette opration. L'tat de signal en cours du RLG est compar l'tat de signal de l'oprande (au mmento de front). Si l'tat de signal de l'oprande est 0 et le RLG avant l'opration est 1, le rsultat logique aprs l'opration est 1 (impulsion) ; dans tous les autres cas, le rsultat logique aprs l'opration est 0. Le RLG avant l'opration est mmoris dans l'oprande.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 E 0.2 E 0.1 M 0.0 CAS1 P JMP
Le mmento de front M 0.0 mmorise l'tat de signal du RLG de toute la combinaison binaire. En cas de passage de 0 1 du RLG, le programme effectue un saut au repre CAS1.
1-19
1.14
---(SAVE)
Reprsentation
---( SAVE )
Description de l'opration
---(SAVE) (Sauvegarder RLG dans RB) Cette opration sauvegarde le rsultat logique (RLG) dans le bit RB (rsultat binaire) du mot d'tat. Ce faisant, le bit de premire interrogation /PI n'est pas mis zro. Pour cette raison, l'tat du bit RB est pris en compte en cas de combinaison ET dans le rseau suivant. 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 0.0 E 0.2 E 0.1 SAVE
1-20
1.15
NEG
Reprsentation
<oprande1> NEG <oprande2> M_BIT Q
Paramtre
<oprande1> <oprande2> Q
Type de donnes
BOOL BOOL BOOL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Signal interrog Le mmento de front M_BIT mmorise l'tat de signal prcdent de <oprande1>. Dtection de changement d'tat de signal
Description de l'opration
NEG (Dtecter front descendant de signal) Cette opration compare l'tat de signal de <oprande1> celui provenant de l'interrogation d'tat de signal prcdent figurant dans <oprande2>. Si l'tat de signal en cours du RLG est 0 et si l'tat prcdent tait 1 (dtection d'un front descendant), la sortie Q est 1 aprs cette opration ; dans tous les autres cas, elle est 0.
Mot d'tat
RB
Ecriture x
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
1
RLG
x
/PI
1
Exemple
E 0.0 E 0.1 E 0.2 M 0.0 E 0.3 NEG M_BIT E 0.4 A 4.0 ( ) Q
La sortie A 4.0 est 1 si : (l'tat de signal est 1 aux entres E 0.0 ET E 0.1 ET E 0.2) ET il y a un front descendant l'entre E 0.3 ET l'tat de signal est 1 l'entre E 0.4.
1-21
1.16
POS
Reprsentation
<oprande1> POS <oprande2> M_BIT Q
Paramtre
<oprande1> <oprande2> Q
Type de donnes
BOOL BOOL BOOL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Signal interrog Le mmento de front M_BIT mmorise l'tat de signal prcdent de <oprande1>. Dtection de changement d'tat de signal
Description de l'opration
POS (Dtecter front montant de signal) Cette opration compare l'tat de signal de <oprande1> celui provenant de l'interrogation d'tat de signal prcdent figurant dans <oprande2>. Si l'tat de signal en cours du RLG est 1 et si l'tat prcdent tait 0 (dtection d'un front montant), la sortie Q est 1 aprs cette opration ; dans tous les autres cas, elle est 0.
Mot d'tat
RB
Ecriture x
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
1
RLG
x
/PI
1
Exemple
E 0.0 E 0.1 E 0.2 M 0.0 E 0.3 E 0.4 A 4.0 POS ( ) Q M_BIT
La sortie A 4.0 est 1 si : (l'tat de signal est 1 aux entres E 0.0 ET E 0.1 ET E 0.2) ET il y a un front montant l'entre E 0.3 ET l'tat de signal est 1 l'entre E 0.4.
1-22
1.17
Description de l'opration
La fonction de lecture directe en priphrie exige la cration d'un rseau (comme dcrit cidessous). Pour des applications o le temps joue un rle important, il se peut que l'tat de signal en cours d'une entre TOR doive tre lu plus frquemment que normalement (une fois par cycle). L'opration de lecture directe en priphrie est mise au mme tat de signal que l'entre TOR du module d'entres au moment o le trajet de courant concern est lu. Sinon, vous devez patienter jusqu'au prochain cycle de l'OB1 lorsque la zone de mmoire des entres est mise jour avec l'tat de la zone de mmoire de la priphrie. Si vous dsirez avoir accs direct en lecture l'entre (ou plusieurs entres) dans le module d'entres, utilisez la zone de mmoire de priphrie des entres (PE) et non la zone de mmoire des entres (E). La zone de mmoire de la priphrie peut tre lue sous forme d'octet, de mot ou de double mot ; une entre TOR individuelle ne peut donc pas tre lue via un contact (bit). Transmission conditionnelle de la tension en fonction de l'tat de signal d'une entre directe 1. Lecture par la CPU du mot de la zone de mmoire PE contenant les donnes significatives 2. Ensuite, combinaison par ET du mot de la zone de mmoire PE avec une constante acceptant un rsultat diffrent de 0 si le bit d'entre est 1. 3. Contrle de la condition "diffrent de 0"
Exemple
Rseau CONT avec l'opration de lecture directe en priphrie pour l'entre E 1.1
E 4.1 PEW1 16#0002 WAND_W ENO EN IN1 OUT IN2 <>0 E 4.5
MWx *
* Il faut indiquer MWx pour pouvoir sauvegarder le rseau. x correspond un numro autoris quelconque.
Description de l'opration WAND_W (ET mot) : PEW1 W#16#0002 Rsultat 0000000000101010 0000000000000010 0000000000000010
Dans cet exemple, l'entre directe E 1.1 est monte en srie avec les entres E 4.1 et E 4.5. Le mot PEW1 contient l'tat de signal direct de E 1.1. PEW1 est combin W#16#0002 selon ET. Le rsultat est diffrent de 0 si E 1.1 (deuxime bit) est vrai dans PB1 (1). Le contact U<>0 transfre la tension si le rsultat de l'opration WAND_W est diffrent de zro.
1-23
1.18
Description de l'opration
La fonction dcriture directe en priphrie exige la cration d'un rseau (voir l'exemple cidessous). Pour des applications o le temps joue un rle important, il se peut que l'tat de signal en cours d'une sortie TOR doive tre plus frquemment transfr un module de sortie que normalement (une fois la fin d'un cycle de l'OB1). L'opration d'criture directe en priphrie actualise l'tat de signal d'une sortie TOR dans le module de sortie au moment o le trajet de courant concern est crit. Sinon, vous devez patienter jusqu' la fin du cycle de l'OB1 lorsque la zone de mmoire de la priphrie est mise jour avec l'tat de signal de la zone de mmoire des sorties. Si vous dsirez actualiser directement la sortie (ou plusieurs sorties), utilisez la zone de mmoire de priphrie des sorties (PA) et non la zone de mmoire des sorties (A). La zone de mmoire de priphrie des sorties peut tre crite par octet, mot ou double mot ; une sortie TOR individuelle ne peut donc pas tre actualise via une bobine. Pour crire l'tat de signal d'une sortie TOR directement dans un module de sorties, un octet, un mot ou un double mot de la zone de mmoire des sorties A contenant le bit significatif est copi conditionnellement dans la mmoire PA correspondante (dans les oprandes du module de sorties direct).
Avertissement
Comme l'octet complet de la zone de mmoire A est crit dans le module de sorties, tous les bits de sortie dans l'octet qui est actualis sont galement modifis si l'opration s'excute. Si un bit de sortie prsente un tat intermdiaire (1/0) au cours de l'excution du programme qui ne doit pas tre transfr dans le module de sorties, l'opration d'criture directe en priphrie peut provoquer des tats dangereux (impulsions transitoires aux sorties). Dans un programme, un module de sorties externe ne doit tre adress qu'une fois comme bobine. En observant cette rgle, vous vitez la plupart des problmes qui risquent d'apparatre en liaison avec l'opration d'criture directe en priphrie.
1-24
Exemple
Rseau CONT avec l'opration d'criture directe en priphrie et le module de sorties TOR 5, voie 1 Les tats de signal des bits de l'octet de sortie (AB5) adress sont soit actualiss, soit ne sont pas modifis. L'tat de signal de E 0.1 est affect A 5.1 dans le rseau 1. AB5 est copi dans la zone de mmoire directe correspondante de la priphrie des sorties (PAB5).
Dans cet exemple, la sortie A 5.1 est le bit de sortie exig. L'octet PAB5 est mis au mme tat de signal que le bit de sortie A 5.1. Les autres bits dans PAB5 sont galement actualiss par la copie avec l'opration MOVE.
1-25
1-26
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, le rsultat logique (RLG) est 1. Ce rsultat est combin au RLG du trajet de courant entier selon ET si l'lment de comparaison est utilis en srie ou selon OU s'il est utilis en parallle. Vous disposez des oprations de comparaison suivantes : CMP ? I Comparer entiers de 16 bits (16 Bit)
2-1
Oprations de comparaison
2.2
CMP ? I
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
Type de donnes
Zone de mmoire
E, A, M, L, D E, A, M, L, D
Description
Rsultat de la combinaison prcdente Rsultat de la comparaison. Utilis uniquement lorsque le RLG l'entre de la bote est 1. Premier terme de la comparaison Second terme de la comparaison
IN1 IN2
INT INT
E, A, M, L, D ou constante E, A, M, L, D ou constante
Description de l'opration
CMP ? I (Comparer entiers de 16 bits) Cette opration que vous pouvez utiliser et placer comme un contact normal compare les entres IN1 et IN2 selon le type de comparaison que vous avez slectionn. Si la comparaison est vraie, le rsultat logique (RLG) est 1. Ce rsultat est combin au RLG du trajet de courant entier selon ET si l'lment de comparaison est utilis en srie ou selon OU s'il est utilis en parallle.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
0
DM
-
OU
0
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 E 0.1
CMP >= I
IN1 IN2
A 4.0
MW0 MW2
La sortie A 4.0 est mise 1 si l'tat de signal est 1 aux entres E 0.0 ET E 0.1 ET si MW0 >= MW.
2-2
Oprations de comparaison
2.3
CMP ? D
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
Type de donnes
Zone de mmoire
E, A, M, L, D E, A, M, L, D
Description
Rsultat de la combinaison prcdente Rsultat de la comparaison. Utilis uniquement lorsque le RLG l'entre de la bote est 1. Premier terme de la comparaison Second terme de la comparaison
IN1 IN2
DINT DINT
E, A, M, L, D ou constante E, A, M, L, D ou contante
Description de l'opration
CMP ? D (Comparer entiers de 32 bits) Cette opration que vous pouvez utiliser et placer comme un contact normal compare les entres IN1 et IN2 selon le type de comparaison que vous avez slectionn. Si la comparaison est vraie, son rsultat logique (RLG) est 1. Ce rsultat est combin au RLG du trajet de courant selon ET si l'lment de comparaison est utilis en srie ou selon OU s'il est utilis en parallle.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
0
DM
-
OU
0
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 E 0.1
CMP >= D
IN1 IN2
E 0.2 A 4.0
MD0 MD4
La sortie A 4.0 est mise 1 si l'tat de signal est 1 aux entres E 0.0 ET E 0.1 ET si MD0 >= MD4 ET si l'tat de signal est 1 l'entre E 0.2.
2-3
Oprations de comparaison
2.4
CMP ? R
Comparer rels
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
Type de donnes
Zone de mmoire
E, A, M, L, D E, A, M, L, D
Description
Rsultat de la combinaison prcdente Rsultat de la comparaison. Utilis uniquement lorsque le RLG l'entre de la bote est 1. Premier terme de la comparaison Second terme de la comparaison
IN1 IN2
REAL REAL
E, A, M, L, D ou constante E, A, M, L, D ou constante
Description de l'opration
CMP ? R (Comparer rels) Cette opration que vous pouvez utiliser et placer comme un contact normal compare les entres IN1 et IN2 selon le type de comparaison que vous avez slectionn. Si la comparaison est vraie, le rsultat logique (RLG) est 1. Ce rsultat est combin au RLG du trajet de courant entier selon ET si l'lment de comparaison est utilis en srie ou selon OU s'il est utilis en parallle.
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 E 0.1
CMP >= R
IN1 IN2
E 0.2 A 4.0
MD0 MD4
La sortie A 4.0 est mise 1 si l'tat de signal est 1 aux entres E 0.0 ET E 0.1 ET si MD0 >= MD4 ET si l'tat de signal est 1 l'entre E 0.2.
2-4
Oprations de conversion
3.1
Description
Les oprations de conversion lisent le contenu du paramtre dentre IN, le convertent ou en changent le signe (par exemple, valeur positive en valeur ngative). Le rsultat est rang dans le paramtre de sortie OUT. Vous disposez des oprations de conversion suivantes : BCD_I I_BCD BCD_DI I_DI DI_BCD DI_R INV_I INV_DI NEG_I NEG_DI NEG_R ROUND TRUNC CEIL FLOOR Convertir nombre DCB en entier de 16 bits Convertir entier de 16 bits en nombre DCB Convertir nombre DCB en entier de 32 bits Convertir entier de 16 bits en entier de 32 bits Convertir entier de 32 bits en nombre DCB Convertir entier de 32 bits en rel Complment 1 dentier de 16 bits Complment 1 dentier de 32 bits Complment 2 dentier de 16 bits Complment 2 dentier de 32 bits Inverser le signe dun nombre rel Arrondir Tronquer la partie entire Convertir rel en entier suprieur le plus proche Convertir rel en entier infrieur le plus proche
3-1
Oprations de conversion
3.2
BCD_I
Reprsentation
BCD_I EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL WORD INT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Nombre en format DCB Valeur entire de 16 bits du nombre DCB
Description de l'opration
BCD_I (Convertir nombre DCB en entier de 16 bits) Cette opration lit le contenu du paramtre dentre 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.
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 ENO IN OUT A 4.0 NOT MW12
Si ltat de signal est 1 lentre 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 le mot de mmento MW12. La sortie A 4.0 est mise 1 si la conversion nest pas excute (ENO = EN = 0).
3-2
Oprations de conversion
3.3
I_BCD
Reprsentation
I_BCD EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL INT WORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Nombre entier de 16 bits Valeur DCB du nombre entier de 16 bits
Description de l'opration
I_BCD (Convertir entier de 16 bits en nombre DCB) Cette opration lit le contenu du paramtre d'entre IN comme valeur entire 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 ENO IN OUT A 4.0 NOT MW12
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 le mot de mmento MW12. La sortie A 4.0 est mise 1 en cas de dbordement ou si la conversion n'est pas excute (E0.0 = 0).
3-3
Oprations de conversion
3.4
I_DI
Reprsentation
I_DI EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL INT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur entire de 16 bits convertir Rsultat : nombre entier de 32 bits
Description de l'opration
I_DI (Convertir entier de 16 bits en entier de 32 bits) Cette opration lit le contenu du paramtre dentre IN comme valeur entire 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 ENO IN OUT A 4.0 NOT MD12
Si ltat de signal est 1 lentre 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 le double mot de mmento MD12. La sortie A 4.0 est mise 1 si la conversion nest pas excute (ENO = EN = 0).
3-4
Oprations de conversion
3.5
BCD_DI
Reprsentation
BCD_DI EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL DWORD DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Nombre en format DCB Valeur entire de 32 bits du nombre DCB
Description de l'opration
BCD_DI (Convertir nombre DCB en entier de 32 bits) Cette opration lit le contenu du paramtre d'entre IN comme nombre dcimal cod binaire sept chiffres (DCB, +/- 9999999), 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 MD8 BCD_DI EN ENO IN OUT A 4.0 NOT MD12
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 le double mot de mmento MD12. La sortie A 4.0 est mise 1 si la conversion n'est pas excute (ENO = EN = 0).
3-5
Oprations de conversion
3.6
DI_BCD
Reprsentation
DI_BCD EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL DINT DWORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Nombre entier de 32 bits Valeur DCB du nombre entier de 32 bits
Description de l'opration
DI_BCD (Convertir entier de 32 bits en nombre DCB) Cette opration lit le contenu du paramtre d'entre IN comme valeur entire de 32 bits, le convertit en un nombre dcimal cod binaire sept chiffres (DCB, +/- 9999999) 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 ENO IN OUT A 4.0 NOT MD12
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 le double mot de mmento MD12. La sortie A 4.0 est mise 1 en cas de dbordement ou si la conversion n'est pas excute (E0.0 = 0).
3-6
Oprations de conversion
3.7
DI_R
Reprsentation
DI_R EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL DINT REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Nombre entier de 32 bits Nombre rel
Description de l'opration
DI_R (Convertir entier de 32 bits en rel) Cette opration lit le contenu du paramtre d'entre IN comme nombre entier de 32 bits et le convertit en nombre virgule flottante. 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 DI_R EN ENO IN OUT A 4.0 NOT MD12
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 virgule flottante. Le rsultat est rang dans le double mot de mmento MD12. La sortie A 4.0 est mise 1 si la conversion n'est pas excute (ENO = EN = 0).
3-7
Oprations de conversion
3.8
INV_I
Reprsentation
INV_I EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL INT INT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre entire de 16 bits Complment 1 de l'entier de 16 bits dans IN
Description de l'opration
INV_I (Complment 1 dentier de 16 bits) Cette opration lit le contenu du paramtre dentre IN et excute lopration de combinaison "OU exclusif" avec le masque hexadcimal W#16#FFFF afin dinverser la valeur de chaque bit. 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 ENO IN OUT A 4.0 NOT MW10
Si l'tat de signal est 1 l'entre E 0.0, l'tat de chaque bit du mot de mmento MW8 est invers. MW8 = 01000001 10000001 est converti en MW10 = 10111110 01111110. La sortie A 4.0 est mise 1 si la conversion nest pas excute (ENO = EN = 0).
3-8
Oprations de conversion
3.9
INV_DI
Reprsentation
INV_DI EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL DINT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre entire de 32 bits Complment 1 de l'entier de 32 bits dans IN
Description de l'opration
INV_DI (Complment 1 dentier de 32 bits) Cette opration lit le contenu du paramtre dentre IN et excute lopration de combinaison "OU exclusif" avec le masque hexadcimal W#16#FFFF FFFF afin dinverser la valeur de chaque bit. 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 ENO IN OUT A 4.0 NOT MD12
Si l'tat de signal est 1 l'entre E 0.0, l'tat de chaque bit du double mot de mmento MD8 est invers. MD8 = F0FF FFF0 est converti en MD12 = 0F00 000F. La sortie A 4.0 est mise 1 si la conversion nest pas excute (ENO = EN = 0).
3-9
Oprations de conversion
3.10
NEG_I
Reprsentation
NEG_I EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL INT INT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre entire de 16 bits Complment 2 de l'entier de 16 bits dans IN
Description de l'opration
NEG_I (Complment 2 dentier de 16 bits) Cette opration lit le contenu du paramtre dentre IN et en change le signe (par exemple, valeur positive en valeur ngative). ENO et EN ont toujours un tat de signal identique, l'exception suivante prs : si ltat de signal de EN est gal 1 et quil y a dbordement, alors ltat 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 ENO IN OUT A 4.0 NOT MW10
Si l'tat de signal est 1 l'entre E 0.0, le contenu du mot de mmento MW8 est transmis, avec le signe oppos, du paramtre OUT au mot de mmento MW10. MW8 = + 10 donne MW10 = - 10. La sortie A 4.0 est mise 1 si la conversion nest pas excute (ENO = EN = 0). Si ltat de signal de EN est gal 1 et quil y a dbordement, alors ltat de signal de ENO est gal 0.
3-10
Oprations de conversion
3.11
NEG_DI
Reprsentation
NEG_DI EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL DINT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre entire de 32 bits Complment 2 de l'entier de 32 bits dans IN
Description de l'opration
NEG_DI (Complment 2 dentier de 32 bits) Cette opration lit le contenu du paramtre dentre IN et en change le signe (par exemple, valeur positive en valeur ngative). ENO et EN ont toujours un tat de signal identique, l'exception suivante prs : si ltat de signal de EN est gal 1 et quil y a dbordement, alors ltat 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 ENO IN OUT A 4.0 NOT MD12
Si l'tat de signal est 1 l'entre E 0.0, le contenu du double mot de mmento MD8 est transmis, avec le signe oppos, du paramtre OUT au double mot de mmento MD12. MD8 = + 1000 donne MD12 = - 1000. La sortie A 4.0 est mise 1 si la conversion nest pas excute (ENO = EN = 0). Si ltat de signal de EN est gal 1 et quil y a dbordement, alors ltat de signal de ENO est gal 0.
3-11
Oprations de conversion
3.12
NEG_R
Reprsentation
NEG_R EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre rel Nombre rel du paramtre IN avec inversion de signe
Description de l'opration
NEG_R (Inverser le signe dun nombre rel) Cette opration lit le contenu du paramtre dentre IN et en change le signe (par exemple, valeur positive en valeur ngative). Elle correspond une opration de multiplication par (-1). ENO et EN ont toujours un tat de signal identique.
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 ENO IN OUT A 4.0 NOT MD12
Si l'tat de signal est 1 l'entre E 0.0, le contenu du double mot de mmento MD8 est transmis, avec le signe inverse, du paramtre OUT au double mot de mmento MD12. MD8 = + 6,234 donne MD12 = - 6,234. La sortie A 4.0 est mise 1 si la conversion nest pas excute (ENO = EN = 0).
3-12
Oprations de conversion
3.13
ROUND
Arrondir
Reprsentation
ROUND EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur arrondir IN arrondi au nombre entier le plus proche
Description de l'opration
ROUND (Arrondir par excs ou par dfaut) Cette opration lit le contenu du paramtre d'entre IN comme nombre virgule flottante 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 le nombre virgule flottante se situe exactement entre deux nombres entiers, le nombre pair est pris comme rsultat. 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 ROUND EN ENO IN OUT A 4.0 NOT MD12
Si l'tat de signal est 1 l'entre E 0.0, le contenu du double mot de mmento MD8 est lu comme nombre virgule flottante et converti en nombre entier de 32 bits. Le rsultat de cette fonction "Arrondir par excs ou par dfaut" est rang dans le double mot de mmento MD12. La sortie A 4.0 est mise 1 en cas de dbordement ou si la conversion n'est pas excute (E 0.0 = 0).
3-13
Oprations de conversion
3.14
TRUNC
Reprsentation
TRUNC EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Nombre virgule flottante tronquer Partie entire de la valeur de IN
Description de l'opration
TRUNC (Tronquer la partie entire) Cette opration lit le contenu du paramtre d'entre IN comme nombre rel et le convertit en nombre entier de 32 bits. Le rsultat, qui est la partie entire du nombre rel spcifi, est rang 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 TRUNC EN ENO IN OUT A 4.0 NOT MD12
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. Le rsultat, qui est la composante entire du nombre rel, est rang dans le double mot de mmento MD12. La sortie A 4.0 est mise 1 en cas de dbordement ou si la conversion n'est pas excute (E 0.0 = 0).
3-14
Oprations de conversion
3.15
CEIL
Reprsentation
CEIL EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Nombre rel convertir Nombre entier de 32 bits suprieur le plus proche du nombre rel
Description de l'opration
CEIL (Convertir rel en entier suprieur le plus proche) Cette opration lit le contenu du paramtre dentre IN comme nombre virgule flottante et le convertit en un nombre entier de 32 bits. Le rsultat est l'entier suprieur le plus proche du nombre rel indiqu (arrondi au nombre entier suprieur le plus proche). En cas de dbordement, ENO est mis 0.
Mot d'tat
RB
Ecriture* Ecriture** x 0
BI1
-
BI0
-
DEB
x -
DM
x -
OU
0 0
ETAT
x 0
RLG
x 0
/PI
1 1
Exemple
E 0.0 MD8 CEIL EN ENO IN OUT A 4.0 NOT MD12
Si ltat de signal est 1 lentre E 0.0, le contenu du double mot de mmento MD8 est lu comme nombre virgule flottante et converti en nombre entier de 32 bits selon le principe darrondi au nombre entier suprieur ou gal le plus proche. Le rsultat est rang dans le double mot de mmento MD12. La sortie A 4.0 est mise 1 en cas de dbordement ou si la conversion nest pas excute (E 0.0 = 0).
3-15
Oprations de conversion
3.16
FLOOR
Reprsentation
FLOOR EN IN ENO OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Nombre rel convertir Nombre entier de 32 bits infrieur le plus proche du nombre rel
Description de l'opration
FLOOR (Convertir rel en entier infrieur le plus proche) Cette opration lit le contenu du paramtre dentre IN comme nombre virgule flottante et le convertit en un nombre entier de 32 bits. Le rsultat est l'entier infrieur le plus proche du nombre rel indiqu (arrondi au nombre entier infrieur le plus proche). 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 FLOOR EN ENO IN OUT A 4.0 NOT MD12
Si ltat de signal est 1 lentre E 0.0, le contenu du double mot de mmento MD8 est lu comme nombre virgule flottante et converti en nombre entier de 32 bits selon le principe darrondi au nombre entier infrieur ou gal le plus proche. Le rsultat est rang dans le double mot de mmento MD12. La sortie A 4.0 est mise 1 en cas de dbordement ou si la conversion nest pas excute (E 0.0 = 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 CONT 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 : ZHLER Z_VORW Paramtrage et compteur d'incrmentation/dcrmentation Paramtrage et compteur d'incrmentation
Z_RUECK Paramtrage et compteur de dcrmentation ---( SZ ) ---( ZV ) ---( ZR ) Initialiser compteur Dcrmenter Incrmenter
4-1
Oprations de comptage
15 14 13 12 11 10 0 non significatifs 0
9 0
8 1
7 0
6 0
5 1
4 0
3 0
2 1
1 1
0 1
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 n S_CUD CU Q CV CV_BCD ZV ZR S ZW R DUAL DEZ
Allemande
Z n ZAEHLER Q
CD
S PV R
Paramtre Anglaise
C n CU CD S PV
Paramtre Allemande
Zn ZV ZR S ZW
o
Type de donnes
COUNTER BOOL BOOL BOOL WORD
Zone de mmoire
Z E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
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 entre sous forme C#<valeur> dans la plage comprise entre 0 et 999 Valeur d'initialisation du compteur Entre de remise zro Valeur de comptage en cours (format hexadcimal) Valeur de comptage en cours (format DCB) Etat du compteur
PV R CV CV_BCD Q
ZW R DUAL DEZ Q
4-3
Oprations de comptage
Description de l'opration
ZAEHLER (Paramtrage et compteur d'incrmentation/dcrmentation) Un front montant l'entre S de cette opration initialise le compteur la valeur figurant dans l'entre ZW. Un 1 l'entre R remet le compteur, et donc la valeur de comptage, zro. Le compteur est incrment d'une unit si l'tat de signal l'entre ZV passe de 0 1 - front montant et que la valeur du compteur est infrieure 999. Le compteur est dcrment d'une unit si l'tat de signal l'entre ZR passe de 0 1 - front montant et que la valeur du compteur est suprieure 0. En cas de front montant aux deux entres de comptage, les deux fonctions sont excutes 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. L'tat du signal la sortie Q est 1 lorsque la valeur de comptage est suprieure 0 ; il est 0 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
Nota Il est recommand dutiliser un compteur un seul emplacement dans le programme (risque derreurs de comptage).
Exemple
Z10 ZAEHLER
E 0.0
ZV Q
A 4.0
E 0.1
ZR
E 0.2
S DUAL DEZ
E 0.3 MW10
ZW R
Si l'tat de signal l'entre E 0.2 passe de 0 1, le compteur est initialis la valeur figurant dans le mot de mmento MW10. Si l'tat de signal en 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 en E 0.1 passe de 0 1, la valeur du compteur Z10 est dcrmente d'un moins qu'elle ne soit dj gale 0. L'tat de signal de la sortie A 4.0 est 1 si Z10 est diffrent de zro.
4-4
Oprations de comptage
4.3
Z_VORW
Reprsentation
Anglaise
C n S_CU CU Q CV CV_BCD ZV S ZW R DUAL DEZ
Allemande
Z n Z_VORW Q
S
PV R
Paramtre Anglaise
C n CU S PV
Paramtre Allemande
Zn ZV S ZW
o
Type de donnes
COUNTER BOOL BOOL WORD
Zone de mmoire
Z E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Numro d'identification du compteur. La plage dpend de la CPU. Entre d'incrmentation Entre d'initialisation du compteur Valeur de comptage entre sous forme C#<valeur> dans la plage comprise entre 0 et 999 Valeur d'initialisation du compteur Entre de remise zro Valeur de comptage en cours (format hexadcimal) Valeur de comptage en cours (format DCB) Etat du compteur
PV R CV CV_BCD Q
ZW R DUAL DEZ Q
Description de l'opration
Z_VORW (Paramtrage et compteur d'incrmentation) Un front montant l'entre S de cette opration initialise le compteur la valeur figurant dans l'entre ZW. Un 1 l'entre R remet le compteur, et donc la valeur de comptage, zro. Le compteur est incrment d'une unit si l'tat de signal l'entre ZV passe de 0 1 - front montant et que la valeur du compteur est infrieure 999. Si le compteur est mis 1 et si le RLG = 1 lentre ZV, le compteur compte de la mme manire dans le cycle suivant, mme si aucun changement de front na eu lieu. L'tat de signal de la sortie Q est 1 lorsque la valeur de comptage est suprieure 0 ; il est 0 lorsque la valeur de comptage est gale 0.
4-5
Oprations de comptage
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Nota Il est recommand dutiliser un compteur un seul emplacement dans le programme (risque derreurs de comptage).
Exemple
Z10 Z_VORW
E 0.0
ZV Q
A 4.0
E 0.2
S ZW R DUAL DEZ
E 0.3
MW10
Si l'tat de signal l'entre E 0.2 passe de 0 1, le compteur est initialis la valeur figurant dans le mot de mmento MW10. Si l'tat de signal en E 0.0 passe de 0 1, la valeur du compteur Z10 est incrmente d'un moins qu'elle ne soit dj gale 999. L'tat de signal de la sortie A 4.0 est 1 si Z10 est diffrent de zro.
4-6
Oprations de comptage
4.4
Z_RUECK
Reprsentation
Anglaise
C n S_CD CD Q CV CV_BCD R R ZR S ZW DUAL DEZ
Allemande
Z n Z_RUECK Q
S
PV
Paramtre Anglaise
C n CD S PV
Paramtre Allemande
Zn ZR S ZW
o
Type de donnes
COUNTER BOOL BOOL WORD
Zone de mmoire
Z E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Numro d'identification du compteur. La plage dpend de la CPU. Entre de dcrmentation Entre d'initialisation du compteur Valeur de comptage entre sous forme C#<valeur> dans la plage comprise entre 0 et 999 Valeur d'initialisation du compteur Entre de remise zro Valeur de comptage en cours (format hexadcimal) Valeur de comptage en cours (format DCB) Etat du compteur
PV R CV CV_BCD Q
ZW R DUAL DEZ Q
Description de l'opration
Z_RUECK (Paramtrage et compteur de dcrmentation) Un front montant l'entre S de cette opration initialise le compteur la valeur figurant dans l'entre ZW. Un front montant l'entre R remet le compteur, et donc la valeur de comptage, zro. Le compteur est dcrment d'une unit si l'tat de signal l'entre ZR passe de 0 1 et que la valeur du compteur est suprieure 0. Si le compteur est mis 1 et si le RLG = 1 lentre ZR, le compteur compte de la mme manire dans le cycle suivant, mme si aucun changement de front na eu lieu. L'tat de signal de la sortie Q est 1 lorsque la valeur de comptage est suprieure 0 ; il est 0 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
Nota Il est recommand dutiliser un compteur un seul emplacement dans le programme (risque derreurs de comptage).
Exemple
Z10 Z_RUECK
E 0.0
ZR Q
A 4.0
E 0.2
S ZW R DUAL DEZ
E 0.3
MW10
Si l'tat de signal l'entre E 0.2 passe de 0 1, le compteur est initialis la valeur figurant dans le mot de mmento MW10. Si l'tat de signal en E 0.0 passe de 0 1, la valeur du compteur Z10 est dcrmente d'un moins qu'elle ne soit dj gale 0. L'tat de signal de la sortie A 4.0 est 1 si Z10 est diffrent de zro.
4-8
Oprations de comptage
4.5
---( SZ )
Initialiser compteur
Reprsentation
Anglaise <C n > ---( SC ) <valeur initiale> Allemande <Z n > ---( SZ ) <valeur initiale>
Paramtre Anglaise
<C n > <valeur initiale>
Paramtre Allemande
<Z n > <valeur initiale>
Type de donnes
COUNTER WORD
Zone de mmoire
Z E, A, M, L, D
Description
Numro du compteur qui doit tre initialis La valeur d'initialisation (DCB) peut tre comprise entre 0 et 999.
Description de l'opration
---( SZ ) (Initialiser compteur) Cette opration ne s'excute que si le RLG prsente un front montant. La valeur prdfinie est alors transfre au compteur indiqu.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
x
RLG
-
/PI
0
Exemple
E 0.0 Z5 SZ C#100
Le compteur Z5 est initialis la valeur 100 si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG). En l'absence de front montant, la valeur de Z5 reste inchange.
4-9
Oprations de comptage
4.6
---( ZV )
Incrmenter
Reprsentation
Anglaise <C n > ---( CU ) <valeur initiale> Allemande <Z n > ---( ZV ) <valeur initiale>
Paramtre Anglaise
<C n >
Paramtre Allemande
<Z n >
Type de donnes
COUNTER
Zone de mmoire
Z
Description
Numro du compteur. La plage dpend de la CPU.
Description de l'opration
---( ZV ) (Incrmenter) Cette opration incrmente d'un la valeur du compteur prcis si le RLG prsente un front montant 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.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
-
RLG
-
/PI
0
Exemple
Rseau 1 E 0.0 Z10 SZ C#100 Rseau 2 E 0.1 Rseau 3 E 0.2 Z10 ZV Z10 R
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), le compteur Z10 est initialis avec la valeur 100. Si l'tat de signal en E 0.1 passe de 0 1 (front montant du RLG), la valeur de comptage du compteur Z10 est incrmente d'un, moins qu'elle ne soit dj 999. En l'absence de front montant au RLG, la valeur de Z10 reste inchange. Si l'tat de signal l'entre E 0.2 est gal 1, le compteur est mis zro.
4-10
Oprations de comptage
4.7
---( ZR )
Dcrmenter
Reprsentation
Anglaise <C n > ---( CD ) <valeur initiale> Allemande <Z n > ---( ZR ) <valeur initiale>
Paramtre Anglaise
<C n >
Paramtre Allemande
<Z n >
Type de donnes
COUNTER
Zone de mmoire
Z
Description
Numro du compteur. La plage dpend de la CPU.
Description de l'opration
---( ZR ) (Dcrmenter) Cette opration dcrmente d'un la valeur du compteur prcis si le RLG prsente un front montant 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.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
-
RLG
-
/PI
0
4-11
Oprations de comptage
Exemple
Rseau 1 E 0.0 Z10 SZ C#100 E 0.1 Z10 ZR
Rseau 2
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), le compteur Z10 est initialis avec la valeur 100. Si l'tat de signal en E 0.1 passe de 0 1 (front montant du RLG), la valeur de comptage du compteur Z10 est dcrmente d'un, moins qu'elle ne soit dj nulle. En l'absence de front montant au RLG, la valeur de Z10 reste inchange. Si la valeur de comptage est gale zro, la sortie A 4.0 est excite. Si l'tat de signal l'entre E 0.2 est gal 1, le compteur est mis zro.
4-12
5.1
---(OPN)
Reprsentation
<DB n> ou <DI n> ---(OPN)
Paramtre
<DB n> <DI n>
Type de donnes
BLOCK_DB
Zone de mmoire
DB, DI
Description
Numro du DB ou du DI ; La plage dpend de la CPU.
Description de l'opration
---(OPN) (Ouvrir bloc de donnes) Cette opration ouvre un bloc de donnes (DB) ou un bloc de donnes d'instance (DI). Il s'agit d'un appel inconditionnel d'un bloc de donnes. Le numro du bloc de donnes est transfr au registre DB ou DI. Les commandes suivantes relatives des DB et des DI accdent aux blocs correspondants selon le contenu des registres.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
-
RLG
-
/PI
-
Exemple
Rseau 1 DB10 OPN DBX0.0 A 4.0
Rseau 2
Le bloc de donnes 10 (DB10) est ouvert. L'adresse du contact (DBX0.0) se rfre au bit zro de l'octet de donnes zro de l'enregistrement en cours se trouvant dans le bloc de donnes DB10. L'tat de signal de ce bit est affect la sortie A 4.0.
5-1
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 )-----( JMP )--Saut inconditionnel Saut l'intrieur d'un bloc si 1 (conditionnel)
Rseau 2
A 4.0 E 0.1
. .
Rseau X
SEG3 A 4.1 E 0.4 R
6-1
Oprations de saut
6.2
---(JMP)---
Saut inconditionnel
Reprsentation
<repre de saut> ---( JMP )---
Description de l'opration
---( JMP )--- (Saut inconditionnel) Cette opration fonctionne comme un saut inconditionnel s'il n'y a aucun autre lment CONT entre la barre d'alimentation gauche et l'opration (voir exemple). Pour chaque opration ---( JMP )---, il doit exister un repre de saut (LABEL). Les oprations entre l'opration de saut et le repre de saut ne sont pas excutes.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
-
RLG
-
/PI
-
Exemple
Rseau 1 CAS1 JMP
: :
Rseau X CAS1 E 0.4 A 4.1 R
: :
Le saut est toujours excut. Aucune des oprations entre l'opration de saut et le repre de saut n'est traite.
6-2
Oprations de saut
6.3
---(JMP)---
Reprsentation
<repre de saut> ---( JMP )---
Description de l'opration
---( JMP )--- (Saut l'intrieur d'un bloc si 1) Cette opration fonctionne comme un saut conditionnel si le RLG de la combinaison prcdente est gal 1. Pour chaque opration ---( JMP )---, il doit exister un repre de saut (LABEL). Les oprations entre l'opration de saut et le repre de saut ne sont pas excutes. Lorsqu'un saut conditionnel n'est pas excut, le RLG passe 1 aprs l'opration de saut.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
0
Exemple
Rseau 1 E 0.0 CAS1 JMP E 0.3 A 4.0 R
Rseau 2
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
---( JMPN )
Reprsentation
<repre de saut> ---( JMPN )
Description de l'opration
---( JMPN ) (Saut l'intrieur d'un bloc si 0) Cette opration fonctionne comme un saut conditionnel si le RLG de la combinaison prcdente est gal 0. Pour chaque opration ---( JMPN ), il doit exister un repre de saut (LABEL). Les oprations entre l'opration de saut et le repre de saut ne sont pas excutes. Lorsqu'un saut conditionnel n'est pas excut, le RLG passe 1 aprs l'opration de saut.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
0
Exemple
Rseau 1 E 0.0 CAS1 JMPN E 0.3 A 4.0 R
Rseau 2
Le saut au repre CAS1 est excut si l'tat de signal est 0 l'entre E 0.0. En raison du saut, l'opration de mise 0 de la sortie A 4.0 n'est pas excute mme si l'tat de signal est 1 l'entre E 0.3.
6-4
Oprations de saut
6.5
LABEL
Repre de saut
Reprsentation
LABEL
Description
LABEL (repre de saut) Cette opration identifie la destination dune opration de saut. Le repre de saut consiste de 4 caractres alphanumriques, le premier devant tre une lettre, par exemple CAS1. Pour chaque opration ---( JMP ) ou ---( JMPN ), il doit exister un repre de saut.
Exemple
Rseau 1 E 0.0 CAS1 JMP E 0.3 A 4.0 R
Rseau 2 Rseau 3
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-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 SUB_I MUL_I DIV_I Additionner entiers de 16 bits Soustraire entiers de 16 bits Multiplier entiers de 16 bits 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
7-1
7.2
Evaluation des bits du mot d'tat dans les oprations sur nombres entiers
Description
Les oprations arithmtiques de base influent sur les bits suivants du mot d'tat : BI1 et BI0, DEB, DM.
Les tableaux ci-dessous montrent l'tat de signal des bits du mot d'tat pour les rsultats d'oprations sur nombres entiers (16 et 32 bits).
Plage autorise
0 (zro) 16 bits : 32 768 <= rsultat < 0 (nombre ngatif) 32 bits : 2 147 483 648 <= rsultat < 0 (nombre ngatif) 16 bits : 32 767 > =rsultat > 0 (nombre positif) 32 bits : 2 147 483 647 > = rsultat > 0 (nombre positif)
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
ADD_I
Reprsentation
ADD_I EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL INT INT INT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour l'addition Seconde valeur pour l'addition Rsultat de l'addition
Description de l'opration
ADD_I (Additionner entiers de 16 bits) Cette opration additionne les entres IN1 et IN2 si l'tat de signal est 1 l'entre de validation EN. Le rsultat est rang dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 16 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MW0 MW2
ADD_I
EN IN1 IN2
ENO OUT
NOT MW10
A 4.0 S
L'opration ADD_I est excute 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 le rsultat est hors de la plage autorise pour un nombre entier de 16 bits ou si l'tat de signal est 0 l'entre E 0.0, la sortie A 4.0 est mise 1.
7-3
7.4
SUB_I
Reprsentation
SUB_I EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL INT INT INT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur de la soustraction (de laquelle soustraire) Valeur soustraire Rsultat de la soustraction
Description de l'opration
SUB_I (Soustraire entiers de 16 bits) Cette opration soustrait l'entre IN2 de l'entre IN1 si l'tat de signal est 1 l'entre de validation EN. Le rsultat est rang dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 16 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MW0 MW2
SUB_I
EN IN1 IN2
ENO OUT
NOT MW10
A 4.0 S
L'opration SUB_I est excute 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 le rsultat est hors de la plage autorise pour un nombre entier de 16 bits ou si l'tat de signal est 0 l'entre E 0.0, la sortie A 4.0 est mise 1.
7-4
7.5
MUL_I
Reprsentation
MUL_I EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL INT INT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la multiplication Seconde valeur pour la multiplication Rsultat de la multiplication
Description de l'opration
MUL_I (Multiplier entiers de 16 bits) Cette opration multiplie les entres IN1 et IN2 si l'tat de signal est 1 l'entre de validation EN. Le rsultat est rang dans la sortie OUT. Si le rsultat est hors de la plage autorise pour un nombre entier de 16 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MW0 MW2
MUL_I
EN IN1 IN2
ENO OUT
NOT MW10
A 4.0 S
L'opration MUL_I est excute 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 le rsultat est hors de la plage autorise pour un nombre entier de 16 bits ou si l'tat de signal est 0 l'entre E 0.0, la sortie A 4.0 est mise 1.
7-5
7.6
DIV_I
Reprsentation
DIV_I EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL INT INT INT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Dividende Diviseur Rsultat de la division
Description de l'opration
DIV_I (Diviser entiers de 16 bits) Cette opration divise l'entre IN1 par l'entre IN2 si l'tat de signal est 1 l'entre de validation EN. Le rsultat est rang dans la sortie OUT. Si le rsultat est hors de la plage autorise pour un nombre entier de 16 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MW0 MW2
DIV_I
EN IN1 IN2
ENO OUT
NOT MW10
A 4.0 S
L'opration DIV_I est excute si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la division MW0 par MW2 est rang dans le mot de mmento MW10. Si le rsultat est hors de la plage autorise pour un nombre entier de 16 bits ou si l'tat de signal est 0 l'entre E 0.0, la sortie A 4.0 est mise 1.
7-6
7.7
ADD_DI
Reprsentation
ADD_DI EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL DINT DINT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour l'addition Seconde valeur pour l'addition Rsultat de l'addition
Description de l'opration
ADD_DI (Additionner entiers de 32 bits) Cette opration additionne IN1 et IN2 si l'tat de signal est 1 l'entre de validation EN. Le rsultat est rang dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 32 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4
ADD_DI
EN IN1 IN2
ENO OUT
NOT MD10
A 4.0 S
L'opration ADD_DI est excute 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 le rsultat est hors de la plage autorise pour un nombre entier de 32 bits ou si l'tat de signal est 0 l'entre E 0.0, la sortie A 4.0 est mise 1.
7-7
7.8
SUB_DI
Reprsentation
SUB_DI EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL DINT DINT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur de la soustraction Valeur soustraire Rsultat de la soustraction
Description de l'opration
SUB_DI (Soustraire entiers de 32 bits) Cette opration soustrait l'entre IN2 de l'entre IN1 si l'tat de signal est 1 l'entre de validation EN. Le rsultat est rang dans la sortie OUT. Si ce rsultat est hors de la plage autorise pour un nombre entier de 32 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4
SUB_DI
EN IN1 IN2
ENO OUT
NOT MD10
A 4.0 S
L'opration SUB_DI est excute 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 le rsultat est hors de la plage autorise pour un nombre entier de 32 bits ou si l'tat de signal est 0 l'entre E 0.0, la sortie A 4.0 est mise 1.
7-8
7.9
MUL_DI
Reprsentation
MUL_DI EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL DINT DINT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la multiplication Seconde valeur pour la multiplication Rsultat de la multiplication
Description de l'opration
MUL_DI (Multiplier entiers de 32 bits) Cette opration multiplie les entres IN1 et IN2 si l'tat de signal est 1 l'entre de validation EN. Le rsultat est rang dans la sortie OUT. Si le rsultat est hors de la plage autorise pour un nombre entier de 32 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4
MUL_DI
EN IN1 IN2
ENO OUT
NOT MD10
A 4.0 S
L'opration MUL_DI est excute 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 le rsultat est hors de la plage autorise pour un nombre entier de 32 bits ou si l'tat de signal est 0 l'entre E 0.0., la sortie A 4.0 est mise 1.
7-9
7.10
DIV_DI
Reprsentation
DIV_DI EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL DINT DINT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Dividende Diviseur Rsultat entier de la division
Description de l'opration
DIV_DI (Diviser entiers de 32 bits) Cette opration divise l'entre IN1 par l'entre IN2 si l'tat de signal est 1 l'entre de validation EN. Le rsultat (partie entire) est rang dans la sortie OUT. Cette opration ne fournit pas de reste. Si le quotient est hors de la plage autorise pour un nombre entier de 32 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4
DIV_DI
EN IN1 IN2
ENO OUT
NOT MD10
A 4.0 S
L'opration DIV_DI est excute si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la division MD0 par MD4 est rang dans le double mot de mmento MD10. Si le rsultat est hors de la plage autorise pour un nombre entier de 32 bits ou si l'tat de signal est 0 l'entre E 0.0, la sortie A 4.0 est mise 1.
7-10
7.11
MOD_DI
Reprsentation
MOD_DI EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL DINT DINT DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Dividende Diviseur Reste de la division
Description de l'opration
MOD_DI (Reste de division) Cette opration divise l'entre IN1 par l'entre IN2 si l'tat de signal est 1 l'entre de validation EN. Le reste de la division est rang dans la sortie OUT. Si ce reste est hors de la plage autorise pour un nombre entier de 32 bits, les bits DEB et DM du mot d'tat sont mis 1 et la sortie ENO est 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4
MOD_DI
EN IN1 IN2
ENO OUT
NOT MD10
A 4.0 S
L'opration MOD_DI est excute 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 est 0 l'entre E 0.0, la sortie A 4.0 est mise 1.
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 SUB_R MUL_R DIV_R Addition Soustraction Multiplication Division
Les oprations arithmtiques sur nombres virgule flottante permettent dexcuter les fonctions arithmtiques suivantes sur un nombre rels IEEE de 32 bits : Valeur absolue (ABS) dun nombre rel Carr (SQR) ou Racine carre (SQRT) dun nombre rel Logarithme naturel (LN) dun nombre rel Valeur exponentielle (EXP) sur la base e (= 2,71828) dun nombre rel Fonctions trigonomtriques dangles reprsents sous forme de nombres rels IEEE de 32 bits :
-
Sinus (SIN) et Arc sinus (ASIN) Cosinus (COS) et Arc cosinus (ACOS) Tangente (TAN) et Arc tangente (ATAN)
8-1
8.2
Evaluation des bits du mot d'tat dans les oprations sur nombres virgule flottante
Description
Les oprations arithmtiques de base influent sur les bits suivants du mot d'tat : BI1 et BI0, DEB, DM.
Les tableaux ci-dessous montrent l'tat de signal des bits du mot d'tat pour les rsultats d'oprations sur nombres virgule flottante (32 bits).
Plage autorise
+0, -0 (zro) -3.402823E+38 < rsultat < -1.175494E-38 (nombre ngatif) +1.175494E-38 < rsultat < 3.402824E+38 (nombre positif)
BI1
0 0 1
BI0
0 1 0
DEB
0 0 0
DM
* * *
BI1
0
BI0
0
DEB
1
DM
1
8-2
8.3
8.3.1
Oprations de base
ADD_R Additionner rels
Reprsentation
ADD_R EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL REAL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour l'addition Seconde valeur pour l'addition Rsultat de l'addition
Description de l'opration
ADD_R (Additionner rels) 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 virgule flottante (dbordement ou dpassement bas), les bits DEB et DM du mot d'tat sont mis 1 et ENO est mis 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4 ADD_R ENO EN IN1 OUT IN2 A 4.0 NOT MD10 S
L'opration ADD_R est excute 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 ce rsultat est hors de la plage autorise pour un nombre virgule flottante ou si cette addition n'est pas traite, la sortie A 4.0 est mise 1.
8-3
8.3.2
SUB_R
Soustraire rels
Reprsentation
SUB_R EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL REAL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur de soustraction (de laquelle soustraire) Valeur soustraire de la premire valeur Rsultat de la soustraction
Description de l'opration
SUB_R (Soustraire rels) 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 virgule flottante (dbordement ou dpassement bas), les bits DEB et DM du mot d'tat sont mis 1 et ENO est mis 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4 SUB_R ENO EN IN1 OUT IN2 A 4.0 NOT MD10 S
L'opration SUB_R est excute 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 virgule flottante ou si cette soustraction n'est pas traite, la sortie A 4.0 est mise 1.
8-4
8.3.3
MUL_R
Multiplier rels
Reprsentation
MUL_R EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL REAL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la multiplication Seconde valeur pour la multiplication Rsultat de la multiplication
Description de l'opration
MUL_R (Multiplier rels) 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 virgule flottante (dbordement ou dpassement bas), les bits DEB et DM du mot d'tat sont mis 1 et ENO est mis 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4 MUL_R ENO EN IN1 OUT IN2 A 4.0 NOT MD10 S
L'opration MUL_R est excute 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 le rsultat est hors de la plage autorise pour un nombre virgule flottante ou si cette multiplication n'est pas traite, la sortie A 4.0 est mise 1.
8-5
8.3.4
DIV_R
Diviser rels
Reprsentation
DIV_R EN ENO IN1 IN2 OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL REAL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Dividende Diviseur Rsultat de la division
Description de l'opration
DIV_R (Diviser rels) 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 ce rsultat est hors de la plage autorise pour un nombre virgule flottante (dbordement ou dpassement bas), les bits DEB et DM du mot d'tat sont mis 1 et ENO est mis 0. Ainsi, les oprations suivant cette opration arithmtique et qui y sont connectes par ENO (cascade) ne sont pas excutes.
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 MD0 MD4 DIV_R ENO EN IN1 OUT IN2 A 4.0 NOT MD10 S
L'opration DIV_R est excute si l'tat de signal est 1 l'entre E 0.0. Le rsultat de la division MD0 par MD4 est rang dans le double mot de mmento MD10. Si ce rsultat est hors de la plage autorise pour un nombre virgule flottante ou si cette division n'est pas traite, la sortie A 4.0 est mise 1.
8-6
8.3.5
ABS
Reprsentation
ABS EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : valeur absolue du nombre virgule flottante
Description de l'opration
ABS (Valeur absolue d'un nombre virgule flottante) Cette opration forme la valeur absolue d'un nombre virgule flottante.
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
Exemple
E 0.0 ABS EN ENO IN OUT A 4.0 NOT MD12
MD8
Si l'tat de signal est 1 l'entre E 0.0, MD8 transmet la valeur absolue MD12. De MD8 = -6,234 rsulte MD12 = +6,234. Si la conversion n'est pas excute, l'tat de signal est 1 la sortie A 4.0 (ENO = EN = 0).
8-7
8.4
8.4.1
Oprations tendues
SQR Carr
Reprsentation
SQR EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : carr du nombre virgule flottante
Description de l'opration
L'opration SQR (Carr d'un nombre virgule flottante) calcule le carr d'un nombre virgule flottante.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-8
8.4.2
SQRT
Racine carre
Reprsentation
SQRT EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : racine carre du nombre virgule flottante
Description de l'opration
L'opration SQRT (Racine carre d'un nombre virgule flottante) calcule la racine carre d'un nombre virgule flottante. Cette opration dlivre un rsultat positif si l'oprande est suprieur 0. Unique exception : la racine carre de -0 est -0.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-9
8.4.3
EXP
Valeur exponentielle
Reprsentation
EXP EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : valeur exponentielle du nombre virgule flottante
Description de l'opration
L'opration EXP (Valeur exponentielle d'un nombre virgule flottante) calcule la valeur exponentielle de base e (= 2,71828...) d'un nombre virgule flottante.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-10
8.4.4
LN
Logarithme naturel
Reprsentation
LN EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : logarithme naturel du nombre virgule flottante
Description de l'opration
L'opration LN (Logarithme naturel d'un nombre virgule flottante) calcule le logarithme naturel d'un nombre virgule flottante.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-11
8.4.5
SIN
Sinus
Reprsentation
SIN EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : sinus du nombre virgule flottante
Description de l'opration
L'opration SIN (Sinus d'un nombre virgule flottante) calcule le sinus d'un nombre virgule flottante qui reprsente un angle en radians.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-12
8.4.6
COS
Cosinus
Reprsentation
COS EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : cosinus du nombre virgule flottante
Description de l'opration
L'opration COS (Cosinus d'un nombre virgule flottante) calcule le cosinus d'un nombre virgule flottante qui reprsente un angle en radians.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-13
8.4.7
TAN
Tangente
Reprsentation
TAN EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : tangente du nombre virgule flottante
Description de l'opration
L'opration TAN (Tangente d'un nombre virgule flottante) calcule la tangente d'un nombre virgule flottante qui reprsente un angle en radians.
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-14
8.4.8
ASIN
Arc sinus
Reprsentation
ASIN EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : arc sinus d'un nombre virgule flottante
Description de l'opration
L'opration ASIN (Arc sinus d'un nombre virgule flottante) calcule l'arc sinus d'un nombre virgule flottante dont la valeur d'entre doit tre comprise entre : -1 <= valeur d'entre <= +1 Le rsultat est un angle indiqu en radians. Sa valeur est comprise dans la plage suivante : -/2 valeur de sortie +/2 avec = 3,1415....
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-15
8.4.9
ACOS
Arc cosinus
Reprsentation
ACOS EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : arc cosinus du nombre virgule flottante
Description de l'opration
L'opration ACOS (Arc cosinus d'un nombre virgule flottante) calcule l'arc cosinus d'un nombre virgule flottante dont la valeur d'entre doit tre comprise entre : -1 <= valeur d'entre <= +1 Le rsultat est un angle indiqu en radians. Sa valeur est comprise dans la plage suivante : 0 valeur de sortie + avec = 3,1415....
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-16
8.4.10
ATAN
Arc tangente
Reprsentation
ATAN EN ENO IN OUT
Paramtre
EN ENO IN OUT
Type de donnes
BOOL BOOL REAL REAL
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D ou constante E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur d'entre : nombre virgule flottante Valeur de sortie : arc tangente du nombre virgule flottante
Description de l'opration
L'opration ATAN (Arc tangente d'un nombre virgule flottante) calcule l'arc tangente d'un nombre virgule flottante. Le rsultat est un angle en radians dont la valeur est comprise dans la plage suivante : -/2 valeur de sortie +/2 avec = 3,1415....
Mot d'tat
RB
Ecriture x
BI1
x
BI0
x
DEB
x
DM
x
OU
0
ETAT
x
RLG
x
/PI
1
8-17
8-18
Oprations de transfert
9.1
MOVE
Affecter valeur
Reprsentation
MOVE
EN IN ENO OUT
Paramtre
EN ENO IN
Type de donnes
BOOL BOOL
Zone de mmoire
E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur source
Tous les types de donnes E, A, M, L, D simples d'une longueur de ou constante 8, de 16 ou de 32 bits Tous les types de donnes E, A, M, L, D lmentaires d'une longueur de 8, de 16 ou de 32 bits
OUT
Adresse de destination
Description de l'opration
MOVE (Affecter valeur) Cette opration est active par l'entre de validation EN. La valeur indique dans l'entre IN est copie l'adresse prcise dans la sortie OUT. L'tat de signal de ENO est identique celui de EN. L'opration MOVE ne permet de copier que des octets, des mots ou des doubles mots. Pour copier des types de donnes utilisateur tels que des tableaux ou des structures, vous devez faire appel la fonction systme "BLKMOV" (SFC 20).
9-1
Oprations de transfert
Mot d'tat
RB
Ecriture 1
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
1
/PI
1
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. Exemples :
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
Octet Affectation
un octet : un mot : un double mot : 0000 0000 0000 0000 0000 0000 0000 0000
Exemple
E 0.0
MOVE
EN ENO OUT
A 4.0
MW10
IN
DBW12
L'opration est excute si E 0.0 est 1. Le contenu de MW10 est alors copi dans le mot de donnes 12 du bloc de donnes en cours. La sortie A 4.0 est mise 1 si l'opration est excute.
Si le trajet de courant de l'exemple est l'intrieur d'une zone MCR active : Si le relais MCR est en fonction, les donnes sont copies comme dcrit ci-dessus de MW10 dans DBW12. Si le relais MCR est hors fonction, la valeur 0 est crite dans le DBW12.
9-2
10.1
Description
Vous disposez des oprations de gestion dexcution de programme suivantes : ---(Call) CALL_FB CALL_FC Appeler FC/SFC sans paramtre Appeler FB (bote) Appeler FC (bote)
CALL_SFB Appeler SFB (bote) CALL_SFC Appeler SFC (bote) Appeler multi-instance Appeler un bloc dans une bibliothque Remarques importantes sur lutilisation de la fonctionalit ---(MCR<) ---(MCR>) ---(MCRA) ---(MCRD) RET Relais de masquage en fonction Relais de masquage hors fonction Activer relais de masquage Dsactiver relais de masquage
Retour
10-1
10.2
---(Call)
Reprsentation
<FC/SFC n> ---( CALL )
Paramtre
<FC/SFC n>
Type de donnes
BLOCK_FC
Zone de mmoire
-
Description
Numro de la fonction ou de la fonction systme. La plage dpend de la CPU.
Description de l'opration
---(Call) (Appeler FC/SFC sans paramtre) Cette opration permet d'appeler une fonction (FC) ou une fonction systme (SFC) qui n'a pas de paramtre. L'appel est uniquement excut lorsque le RLG est 1 la bobine CALL. Si l'opration ---(CALL) 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 traitement du programme se poursuit dans la fonction ou dans la fonction systme appele.
Mot d'tat
RB
Appel conditionnel : Appel inconditionnel : Ecriture Ecriture -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT RLG
1 1 1 -
/PI
0 0
10-2
Exemple
. . . . . . . . .
DB10 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 de la FC10 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 du FB appelant 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 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 (DI) du FB utilisateur redeviennent les DB en cours. Le programme se poursuit avec l'opration suivante : l'affectation de l'tat de signal en E 0.0 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, la gestion du programme est transmise la FC11 comme dcrit pour la FC10 et revient de la FC11 aprs traitement.
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-3
10.3
CALL_FB
Appeler FB (bote)
Reprsentation
<DB n> FB n 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 n DB n
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
CALL_FB (Appeler FB) Cette opration est excute si EN est 1. Si l'opration CALL_FB a lieu, elle fonctionne comme suit : Elle sauvegarde l'adresse de retour au bloc appelant. Elle sauvegarde les slecteurs pour les deux blocs de donnes en cours (DB et DI). 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 traitement du programme se poursuit dans le bloc fonctionnel 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).
Mot d'tat
RB
Appel conditionnel : Appel inconditionnel : Ecriture x Ecriture -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT RLG
x x x x
/PI
x x
10-4
Exemple
. . . . . . . . . . . . DB11 FB11 EN ENO DB10 OPN
DB10 OPN
MCRA A 4.0
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 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 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. Le DB requis doit tre de nouveau ouvert.
10-5
10.4
CALL_FC
Appeler FC (bote)
Reprsentation
FC n
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 n
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 de l'opration
CALL_FC (Appeler FC) Cette opration permet d'appeler une fonction (FC). L'appel est activ par l'tat de signal 1 l'entre de validation EN. 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 la fonction appele. 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.
10-6
Mot d'tat
RB
Appel conditionnel : Appel inconditionnel : Ecriture x Ecriture -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT RLG
x x x x
/PI
x x
Exemple
. . . . . . . . .
DB10 OPN
. EN ENO EN ENO . .
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 de la FC10 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 FC10. Ensuite, le traitement du programme se poursuit dans la fonction 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 via 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 avec l'opration suivante dont l'excution est fonction de 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
CALL_SFB
Reprsentation
<DB n> SFB n
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 n DB n
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 et du DB. La plage dpend de la CPU.
Description de l'opration
CALL_SFB (Appeler SFB) Cette opration est excute si EN est 1. Si l'opration a lieu, elle fonctionne comme suit : Elle sauvegarde l'adresse de retour au bloc appelant. Elle sauvegarde les slecteurs pour les deux blocs de donnes en cours (DB et DI). 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
Appel conditionnel : Appel inconditionnel : Ecriture x Ecriture -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT RLG
x x x x
/PI
x x
10-8
Exemple
. . . . . . . . . EN M11.0 REQ ID R_ID DW12 DW14 DW16 SD_1 SD_2 SD_3 SD_4 DB10 OPN DB 8 SFB 8 ENO DONE ERROR STATUS READY M10.0 CODE
DB10 OPN
MCRA A 4.0
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
CALL_SFC
Reprsentation
SFC n
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 n
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
CALL_SFC (Appeler SFC) Cette opration permet d'appeler une fonction systme. L'appel est activ par l'tat de signal 1 l'entre de validation EN. 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 traitement du programme se poursuit dans la fonction systme appele. ENO est 1 si la fonction a t appele (EN est 1) et si aucune erreur n'est apparue.
Mot d'tat
RB
Appel conditionnel : Appel inconditionnel : Ecriture x Ecriture -
BI1
-
BI0
-
DEB
-
DM
0 0
OU
0 0
ETAT RLG
x x x x
/PI
x x
10-10
Exemple
. . . . . . . . . . .
EN
DB10 OPN
MCRA SFC20
ENO SRCBLK RET_VAL DSTBLK
. DBDW12 . . .
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 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-instance
Reprsentation
#Nomvariable
EN
ENO
Paramtre
EN ENO #Nom-variable
Type de donnes
BOOL BOOL FB, SFB
Zone de mmoire
E, A, M, L, D E, A, M, L, D -
Description
Entre de validation Sortie de validation Nom de la multi-instance
Description de l'opration
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 varie selon les paramtres existants et leur nombre. EN, ENO et le nom de variable sont toujours prsents.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
0
OU
0
ETAT
x
RLG
x
/PI
x
10.8
10-12
10.9
Danger : arrt de l'AP ou comportement indfini de la dure d'excution ! Pour les calculs d'adresses, le compilateur accde galement en criture aux donnes locales suivant les variables temporaires dfinies dans VAR_TEMP. De ce fait, les squences d'instructions suivantes mettent l'AP l'arrt ou conduisent des comportements indfinis de la dure d'excution : Accs des paramtres formels
Accs des composantes de paramtres FC complexes de type STRUCT, UDT, ARRAY, STRING Accs des composantes de paramtres FB complexes de type STRUCT, UDT, ARRAY, STRING de la zone IN_OUT dans un bloc de version 2. Accs aux paramtres d'un FB de version 2 lorsque leur adresse est suprieure 8180.0. L'accs un paramtre de type BLOCK_DB dans un FB de version 2 ouvre le DB 0. Les accs ultrieurs aux donnes mettent la CPU l'arrt. Pour TIMER, COUNTER, BLOCK_FC, BLOCK_FB se sont aussi toujours T 0, Z 0, FC 0 ou FB 0 qui sont utiliss.
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 :
1. 2. 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-13
10.10 ---(MCR<)
Reprsentation
---(MCR<)
Description de l'opration
---(MCR<) (Relais de masquage en fonction) Cette opration empile le rsultat logique RLG dans la pile MCR et ouvre une zone MCR. La pile MCR fonctionne selon le principe "dernier entr, premier sorti" (LIFO) et peut contenir jusqu' huit entres (8 niveaux). Si elle est pleine, l'opration ---(MCR<) provoque une erreur de pile MCR (MCRF). Les lments suivants dpendent du relais MCR et sont influencs par l'tat de signal du RLG qui est empil dans la pile MCR tant qu'une zone MCR est ouverte : --( # ) --( ) --( S ) --( R ) RS SR MOVE Connecteur Bobine de sortie Mettre 1 Mettre 0 Bascule mise 0, mise 1 Bascule mise 1, mise 0 Affecter valeur
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
-
/PI
0
10-14
Exemple
Rseau 1 MCRA Rseau 2 Rseau 3 Rseau 4 Rseau 5 MCR> Rseau 6 Rseau 7 MCR> Rseau 8 MCRD E 0.4 A 4.1 E 0.0 MCR< E 0.1 MCR< E 0.3 A 4.0 S
Zone MCR 2 Zone MCR 1
L'opration MCRA active la fonction MCR. Ensuite, vous pouvez crer jusqu' huit zones MCR imbriques. Dans notre exemple, il y en a deux. Les oprations sont excutes comme suit : Si l'entre E 0.0 est 1 (le relais MCR est en fonction dans la zone 1), l'tat de signal l'entre E 0.4 est affect la sortie A 4.1. Si l'entre E 0.0 est 0 (le MCR est hors fonction dans la zone 1), l'tat de signal de la sortie A 4.1 est 0, quel que soit l'tat de signal l'entre E 0.4. Si les entres E 0.0 et E 0.1 sont 1 (le relais MCR est en fonction dans la zone 2), la sortie A 4.0 est mise 1 si l'tat de signal l'entre E 0.3 est 1. Si les entres E 0.0 ET E 0.1 sont 0 (le relais MCR est hors fonction dans la zone 2), la sortie A 4.0 reste inchange, quel que soit l'tat de signal l'entre E 0.3.
10-15
10.11 ---(MCR>)
Reprsentation
---(MCR>)
Description de l'opration
---(MCR>) (Relais de masquage hors fonction) Cette opration retire de la pile MCR une entre RLG qui y avait t empile. La pile MCR fonctionne selon le principe "dernier entr, premier sorti" (LIFO) et peut enregistrer jusqu' huit entres (8 niveaux). Si la pile est vide, l'opration ---(MCR>) provoque une erreur de pile MCR (MCRF). Les lments suivants dpendent du relais MCR et sont influencs par l'tat de signal du RLG empil dans la pile MCR tant qu'une zone MCR est ouverte : --( # ) --( ) --( S ) --( R ) RS SR MOVE Connecteur Bobine de sortie Mettre 1 Mettre 0 Bascule mise 0, mise 1 Bascule mise 1, mise 0 Affecter valeur
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
1
RLG
-
/PI
0
10-16
Exemple
Rseau 1 MCRA Rseau 2 Rseau 3 Rseau 4 Rseau 5 MCR> Rseau 6 Rseau 7 MCR> Rseau 8 MCRD E 0.4 A 4.1 E 0.0 MCR< E 0.1 MCR< E 0.3 A 4.0 S
Zone MCR 2 Zone MCR 1
L'opration ---(MCRA) active la fonction MCR. Ensuite, vous pouvez crer jusqu' huit zones MCR. Dans notre exemple, il y en a deux. La premire opration ---(MCR>) (relais MCR hors fonction) va de pair avec la seconde opration ---(MCR<) (relais MCR en fonction). Toutes les fonctions entre ces deux oprations appartiennent la seconde zone MCR. Les fonctions sont excutes de la manire suivante : Si l'entre E 0.0 est 1, l'tat de signal l'entre E 0.4 est affect la sortie A 4.1. Si l'entre E 0.0 est 0, la sortie A 4.1 est mise 0, quel que soit l'tat de signal l'entre E 0.4. Si l'entre E 0.0 ET l'entre E 0.1 sont 1, la sortie A 4.0 est mise 1 si l'tat de signal est 1 l'entre E 0.3. Si l'entre E 0.0 ET l'entre E 0.1 sont 0, la sortie A 4.0 reste inchange, quel que soit l'tat de signal l'entre E 0.3.
10-17
10.12 ---(MCRA)
Reprsentation
---(MCRA)
Description de l'opration
---(MCRA) (Activer relais de masquage) Cette opration active la fonction de relais de masquage. (MCR : Master Control Relay). Vous pouvez, aprs cette commande, programmer des zones MCR en faisant appel aux oprations ---(MCR<) et ---(MCR>).
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
-
RLG
-
/PI
-
Exemple
Rseau 1 MCRA Rseau 2 Rseau 3 . . . E 0.0 MCR< E 0.3 A 4.0 S
E 0.4
A 4.1
L'opration MCRA active la fonction MCR. Les oprations entre MCR< et MCR> (sorties A 4.0, A 4.1) sont excutes comme suit : Si l'entre E 0.0 est 1 (MCR en fonction), la sortie A 4.0 est mise 1 si l'tat de signal est 1 l'entre E 0.3 ou reste inchange si l'tat de signal est 0 l'entre E 0.3 et l'tat de signal l'entre E 0.4 est affect la sortie A 4.1. Si l'entre E 0.0 est 0 (MCR hors fonction), la sortie A 4.0 reste inchange quel que soit l'tat de signal l'entre E 0.3, et la sortie A 4.1 est mise 0 quel que soit l'tat de signal l'entre E 0.4. L'opration ---(MCRD) dsactive le relais MCR dans le trajet de courant suivant. Cela signifie que vous ne pouvez plus programmer de zones MCR avec ---(MCR<) et ---(MCR>).
10-18
10.13 ---(MCRD)
Reprsentation
---( MCRD )
Description de l'opration
---(MCRD) (Dsactiver relais de masquage) Cette opration dsactive la fonction de relais de masquage. Aprs cette opration, vous ne pouvez plus programmer de zones MCR.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
-
ETAT
-
RLG
-
/PI
-
Exemple
Rseau 1 MCRA Rseau 2 Rseau 3 . . . E 0.0 MCR< E 0.3 A 4.0 S
E 0.4
A 4.1
L'opration MCRA active la fonction MCR. Les oprations entre MCR< et MCR> (sorties A 4.0, A 4.1) sont excutes comme suit : Si l'entre E 0.0 est 1 (MCR en fonction), la sortie A 4.0 est mise 1 si l'tat de signal est 1 l'entre E 0.3 ou reste inchange si l'tat de signal est 0 l'entre E 0.3 et l'tat de signal l'entre E 0.4 est affect la sortie A 4.1. Si l'entre E 0.0 est 0 (MCR hors fonction), la sortie A 4.0 reste inchange quel que soit l'tat de signal l'entre E 0.3, et la sortie A 4.1 est mise 0 quel que soit l'tat de signal l'entre E 0.4. L'opration ---(MCRD) dsactive le relais MCR dans le trajet de courant suivant. Cela signifie que vous ne pouvez plus programmer de zones MCR avec ---(MCR<) et ---(MCR>).
10-19
10.14 ---(RET)
Reprsentation
---( RET )
Retour
Description de l'opration
RET (Retour) Cette opration permet de quitter des blocs conditionnellement. Une combinaison amont est ncessaire pour cette sortie.
Mot d'tat
Retour conditionnel (si RLG gale 1)
RB
Ecriture *
BI1
-
BI0
-
DEB
-
DM
0
OU
0
ETAT
1
RLG
1
/PI
0
* L'opration RET tant mappe de manire interne sur la squence "SAVE; BEB;", le bit RB est influenc lui aussi.
Exemple
. . . E 0.0 . . . RET
10-20
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 lentre IN vers la gauche ou vers la droite. Le dcalage vers la gauche multiplie le contenu de lentre IN par des puissances de 2 ; le dcalage vers la droite le divise par des puissances de 2. Si, par exemple, vous dcalez de 3 bits vers la gauche lquivalent binaire de la valeur dcimale 3, vous obtenez lquivalent binaire de la valeur dcimale 24. Si vous dcalez de 2 bits vers la droite lquivalent binaire de la valeur dcimale 16, vous obtenez lquivalent binaire de la valeur dcimale 4. Le nombre de bits de dcalage est prcis dans le paramtre dentre N. Les positions binaires libres par lopration de dcalage sont soit remplies par des zros, soit par ltat de signal du bit de signe (0 signifie positif et 1 ngatif). Ltat de signal du bit dcal en dernier est charg dans le bit BI1 du mot dtat. Les bits BI0 et DEB du mot dtat sont remis 0. Vous pouvez valuer le bit BI1 laide doprations de saut. Vous disposez des oprations de dcalage suivantes : SHR_I SHR_DI SHL_W SHR_W SHL_DW Dcalage vers la droite d'un entier de 16 bits Dcalage vers la droite d'un entier de 32 bits Dcalage vers la gauche d'un mot Dcalage vers la droite d'un mot Dcalage vers la gauche d'un double mot
11-1
11.1.2
SHR_I
Reprsentation
SHR_I EN ENO OUT IN N
Paramtre
EN ENO IN N OUT
Type de donnes
BOOL BOOL INT WORD INT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage
Description de l'opration
SHR_I (Dcalage vers la droite d'un entier de 16 bits) Cette opration 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. Les bits 16 31 ne sont pas affects. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 16, tout se passe comme si N tait gal 16. Les positions binaires libres gauche prennent l'tat de signal du bit 15 (bit de signe du nombre entier). Elles prennent donc la valeur 0 s'il s'agit d'un nombre entier positif et la valeur 1 s'il s'agit d'un nombre entier ngatif. Le rsultat du dcalage est rang dans la sortie OUT. L'opration SHR_I met les bits BI0 et DEB 0 si N est diffrent de 0. ENO a 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
x
BI1
x
BI0
x
DEB
x
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 MW0 MW2
SHR_I
EN IN N
ENO OUT
A 4.0 S MW4
L'opration SHR_I est excute si l'tat de signal est 1 l'entre E 0.0. Le mot de mmento MW0 est charg et 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.1.3
SHR_DI
Reprsentation
SHR_DI EN ENO OUT IN N
Paramtre
EN ENO IN N OUT
Type de donnes
BOOL BOOL DINT WORD DINT
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage
Description de l'opration
SHR_DI (Dcalage vers la droite d'un entier de 32 bits) Cette opration 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, tout se passe comme si N tait gal 32. Les positions binaires libres gauche prennent l'tat de signal du bit 31 (bit de signe du nombre entier). Elles prennent donc la valeur 0 s'il s'agit d'un nombre entier positif et la valeur 1 s'il s'agit d'un nombre entier ngatif. Le rsultat du dcalage est rang dans la sortie OUT. L'opration SHR_DI met les bits BI0 et DEB 0 si N est diffrent de 0. ENO a le mme tat de signal que EN.
11-3
Mot d'tat
RB
x
BI1
x
BI0
x
DEB
x
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 MD0 MW4
SHR_DI
EN IN N
ENO OUT
A 4.0 S MD10
L'opration SHR_DI est excute si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 est charg et 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.1.4
SHL_W
Reprsentation
SHL_W EN ENO OUT IN N
Format
Paramtre
EN ENO IN N OUT
Type de donnes
BOOL BOOL WORD WORD WORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage (mot)
Description de l'opration
SHL_W (Dcalage vers la gauche d'un mot) Cette opration 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. Les bits 16 31 ne sont pas influencs. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 16, la valeur 0 est crite dans la sortie OUT et les bits BI0 et DEB du mot d'tat sont mis 0. Les N positions libres droite en raison du dcalage sont compltes par des zros. Le rsultat du dcalage est rang dans la sortie OUT. L'opration SHL_W met les bits BI0 et DEB 0 si N est diffrent de 0. ENO a le mme tat de signal que EN.
11-4
IN N
15... 0 0 0 0
...0 0 1 0 1
OUT
0 1 0 1
0 1 0 0
0 0 0 0
Mot d'tat
RB
x
BI1
x
BI0
x
DEB
x
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 MW0 MW2
SHL_W
EN IN N
ENO OUT
A 4.0 S MW4
L'opration SHL_W est excute si l'tat de signal est 1 l'entre E 0.0. Le mot de mmento MW0 est charg et dcal vers la gauche du nombre de bits prcis dans MW2. Le rsultat (mot) est rang dans MW4. La sortie A 4.0 est mise 1.
11.1.5
SHR_W
Reprsentation
SHR_W EN ENO OUT IN N
Paramtre
EN ENO IN N OUT
Type de donnes
BOOL BOOL WORD WORD WORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage (mot)
11-5
Description de l'opration
SHR_W (Dcalage vers la droite d'un mot) Cette opration 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. Les bits 16 31 ne sont pas affects. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 16, la valeur 0 est crite dans la sortie OUT et les bits BI0 et DEB du mot d'tat sont mis 0. Les N positions libres gauche en raison du dcalage sont compltes par des zros. Le rsultat du dcalage est rang dans la sortie OUT. L'opration SHR_W met les bits BI0 et DEB 0 si N est diffrent de 0. ENO a le mme tat de signal que EN.
Mot d'tat
RB
x
BI1
x
BI0
x
DEB
x
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 MW0 MW2
SHR_W
EN IN N
ENO OUT
A 4.0 S MW4
L'opration SHR_W est excute si l'tat de signal est 1 l'entre E 0.0. Le mot de mmento MW0 est charg et dcal vers la droite du nombre de bits prcis dans MW2. Le rsultat (mot) est rang dans MW4. La sortie A 4.0 est mise 1.
11.1.6
SHL_DW
Reprsentation
SHL_DW EN ENO OUT IN N
Paramtre
EN ENO IN N OUT
Type de donnes
BOOL BOOL DWORD WORD DWORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage (double mot)
11-6
Description de l'opration
SHL_DW (Dcalage vers la gauche d'un double mot) Cette opration est active si l'tat de signal est 1 l'entre de validation EN. Elle dcale les bits 0 31 de l'entre IN bit par bit vers la gauche. Le nombre de bits de dcalage est indiqu dans l'entre N. Si N est suprieur 32, la valeur 0 est crite dans la sortie OUT et les bits BI0 et DEB du mot d'tat sont mis 0. Les N positions libres droite en raison du dcalage sont compltes par des zros. Le rsultat du dcalage (double mot) est rang dans la sortie OUT. L'opration SHL_DW met les bits BI0 et DEB 0 si N est diffrent de 0. ENO a le mme tat de signal que EN.
Mot d'tat
RB
x
BI1
x
BI0
x
DEB
x
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 MD0 MW4
SHL_DW
EN IN N
ENO OUT
A 4.0 S MD10
L'opration SHL_DW est excute si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 est charg et dcal vers la gauche du nombre de bits prcis dans MW4. Le rsultat (double mot) est rang dans MD10. La sortie A 4.0 est mise 1.
11.1.7
SHR_DW
Reprsentation
SHR_DW EN ENO OUT IN N
Paramtre
EN ENO IN N OUT
Type de donnes
BOOL BOOL DWORD WORD DWORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur dcaler Nombre de bits de dcalage Rsultat du dcalage (double mot)
11-7
Description de l'opration
SHR_DW (Dcalage vers la droite d'un double mot) Cette opration 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 valeur 0 est crite dans la sortie OUT et les bits BI0 et DEB du mot d'tat sont mis 0. Les N positions libres gauche en raison du dcalage sont compltes par des zros. Le rsultat du dcalage (double mot) est rang dans la sortie OUT. L'opration SHR_DW met les bits BI0 et DEB 0 si N est diffrent de 0. ENO a 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
x
BI1
x
BI0
x
DEB
x
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 MD0 MW4
SHR_DW
EN IN N
ENO OUT
A 4.0 S MD10
L'opration SHR_DW est excute si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 est charg et dcal vers la droite du nombre de bits prcis dans MW4. Le rsultat (double mot) est rang dans MD10. La sortie A 4.0 est mise 1.
11-8
11.2
11.2.1
Oprations de rotation
Vue densemble des oprations de rotation
Description
Les oprations de rotation permettent deffectuer la rotation bit par bit vers la droite ou vers la gauche du contenu entier de lentre IN. Les positions binaires libres sont compltes par ltat de signal des bits qui ont t dcals hors de lentre IN. Le nombre de bits de rotation est prcis dans le paramtre dentre N. Selon lopration, la rotation seffectue via le bit BI1 du mot dtat. Le bit BI0 du mot dtat est remis 0. Vous disposez des oprations de rotation suivantes : ROL_DW ROR_DW Rotation vers la gauche d'un double mot Rotation vers la droite d'un double mot
11.2.2
ROL_DW
Reprsentation
ROL_DW EN ENO OUT IN N
Paramtre
EN ENO IN N OUT
Type de donnes
BOOL BOOL DWORD WORD DWORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur objet de la rotation Nombre de bits de rotation Rsultat de la rotation
11-9
Description de l'opration
ROL_DW (Rotation vers la gauche dun double mot) Cette opration 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 IN fait l'objet d'une rotation de ((N-1) modulo 32)+1 positions. Les positions binaires libres droite prennent l'tat de signal des bits qui ont fait l'objet de la rotation vers la gauche. Le rsultat de la rotation est rang dans la sortie OUT. L'opration ROL_DW met les bits BI0 et DEB 0 si N est diffrent de 0. ENO a le mme tat de signal que EN.
...0 31... ...16 15... 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
x
BI1
x
BI0
x
DEB
x
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 MD0 MW4
ROL_DW
EN IN N
ENO OUT
A 4.0 S MD10
L'opration ROL_DW est excute si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 est charg et fait l'objet d'une rotation vers la gauche du nombre de bits prcis dans MW4. Le rsultat (double mot) est rang dans MD10. La sortie A 4.0 est mise 1.
11-10
11.2.3
ROR_DW
Reprsentation
ROR_DW EN ENO OUT IN N
Paramtre
EN ENO IN N OUT
Type de donnes
BOOL BOOL DWORD WORD DWORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Valeur objet de la rotation Nombre de bits de rotation Rsultat de la rotation
Description de l'opration
ROR_DW (Rotation vers la droite dun double mot) Cette opration 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. Si N est suprieur 32, le double mot IN fait l'objet d'une rotation de ((N-1) modulo 32)+1 positions. Les positions binaires libres gauche prennent l'tat de signal des bits qui ont fait l'objet de la rotation vers la droite. Le rsultat de la rotation est rang dans la sortie OUT. L'opration ROR_DW met les bits BI0 et DEB 0 si N est diffrent de 0. ENO a 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
11-11
Mot d'tat
RB
x
BI1
x
BI0
x
DEB
x
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 MD0 MW4
ROR_DW
EN IN N
ENO OUT
A 4.0 S MD10
L'opration ROR_DW est excute si l'tat de signal est 1 l'entre E 0.0. Le double mot de mmento MD0 est charg et fait l'objet d'une rotation vers la droite du nombre de bits prcis dans MW4. Le rsultat (double mot) est rang dans MD10. La sortie A 4.0 est mise 1.
11-12
12.1
Description
Les oprations sur bits dtat sont des oprations combinatoires sur bits qui utilisent les bits du mot dtat. Chacune de ces oprations ragit lune des conditions suivantes indiques par un ou plusieurs bits du mot dtat : Le bit de rsultat binaire (BIE ---I I---) est 1 (son tat de signal est gal 1) Un dbordement (OV ---I I---) sest produit lors dune opration arithmtique ou un dbordement mmoris (OS ---I I---). Le rsultat dune opration arithmtique est illicite (UO ---I I---). Le rsultat dune opration arithmtique par rapport 0 est : == 0, <> 0, > 0, < 0, >= 0, <= 0
Dans une connexion en srie, les oprations sur bits dtat combinent le rsultat de leur interrogation dtat de signal avec le rsultat logique prcdent selon la table de vrit ET. Dans une connexion en parallle, elles combinent leur rsultat avec le RLG prcdent selon la table de vrit OU.
Mot dtat
Le mot dtat 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. Structure du mot dtat :
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
OV ---| |---
Reprsentation
OV ou forme inverse OV
Description de l'opration
OV ---| |--- (Bit d'anomalie "dbordement") et OV ---| / |--- (Bit d'anomalie "dbordement", forme inverse) Ces oprations permettent de dtecter un dbordement dans l'opration arithmtique traite en dernier (OV correspond DEB). Cela signifie que le rsultat de l'opration se situe hors de la plage positive ou ngative autorise. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
Rseau 1 E 0.0 EW0 EW2 Rseau 2 OV SUB_I ENO EN IN1 IN2 OUT
MW10
A 4.0 S
L'tat de signal 1 en E 0.0 active l'opration SUB_I. Si le rsultat de l'opration arithmtique EW0 - EW2 est hors de la plage autorise pour un nombre entier, le bit DEB est mis 1. Le rsultat d'une interrogation d'tat de signal en OV (DEB) gale 1.
Nota L'interrogation de DEB n'est ncessaire qu'en raison de la prsence de deux rseaux spars. Sinon, si le rsultat est hors de la plage autorise, il suffit de considrer la sortie de validation ENO de l'opration arithmtique qui est 0.
12-2
12.3
OS ---| |---
Reprsentation
OS ou forme inverse OS
Description de l'opration
OS ---| |--- (Bit d'anomalie "dbordement mmoris") et OS ---| / |--- (Bit d'anomalie "dbordement mmoris", forme inverse) Ces oprations permettent de dtecter et de mmoriser un dbordement dans une opration arithmtique. Si le rsultat de l'opration se situe hors de la plage positive ou ngative autorise, le bit DM (c'est--dire OS) du mot d'tat est mis 1. Contrairement au bit DEB qui est de nouveau crit en cas d'oprations arithmtiques suivantes, le bit DM mmorise un dbordement apparu. Le bit DM reste 1 jusqu' ce que le bloc soit quitt. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
12-3
Exemple
Rseau 1 E 0.0 EW0 EW2 Rseau 2 E 0.01 EW0 EW2 Rseau 3 OS ADD_I ENO EN IN1 IN2 OUT MW12 MUL_I ENO EN IN1 IN2 OUT
MW10
A 4.0 S
L'opration MUL_I est active par l'tat de signal 1 en E 0.0 et l'opration ADD_I par l'tat de signal 1 en E 0.1. Si le rsultat de l'une des oprations arithmtiques est hors de la plage autorise pour un nombre entier, le bit DM du mot d'tat est mis 1. La sortie A 4.0 est mise 1 si l'interrogation de dbordement mmoris gale 1.
Nota L'interrogation de DM n'est ncessaire qu'en raison de la prsence de rseaux spars. Sinon, il est possible de connecter la sortie ENO de la premire opration arithmtique l'entre EN de la deuxime opration arithmtique (cascade).
12-4
12.4
UO ---| |---
Reprsentation
UO ou forme inverse UO
Description de l'opration
UO ---| |--- (Bit danomalie "illicite") et UO ---| / |--- (Bit danomalie "illicite", forme inverse) Ces oprations permettent de dtecter une opration arithmtique illicite sur nombres virgule flottante, c'est--dire si l'une des valeurs dans l'opration arithmtique n'est pas un nombre virgule flottante correct. Si le rsultat dune opration arithmtique de nombres virgule flottante est illicite (UO), l'interrogation d'tat de signal gale 1. Si la combinaison dans BI1 et BI0 donne "non illicite", l'interrogation d'tat de signal gale 0. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 ED0 ED4 DIV_R ENO EN IN1 IN2 OUT A 4.0 S MD10
UO
A 4.1 S
L'tat de signal 1 en E 0.0 active l'opration DIV_R. Si la valeur de ED0 ou ED4 ne correspond pas un nombre virgule flottante correct, l'opration arithmtique est illicite. Si l'tat de signal en EN est 1 (activ) et qu'une erreur apparaisse pendant le traitement de la fonction DIV_R, l'tat de signal en ENO sera gal 0. La sortie A 4.0 est mise 1 si la fonction DIV_R est excute mais que l'une des valeurs n'est pas un nombre virgule flottante correct.
12-5
12.5
Reprsentation
BIE ou forme inverse BIE
Description de l'opration
BIE ---| |--- (Bit danomalie registre RB) et BIE ---| / |--- (Bit danomalie registre RB, forme inverse) Ces oprations contrlent l'tat de signal du bit RB (correspond BIE) dans le mot d'tat. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU. Le bit RB permet d'tablir le lien entre traitement sur mots et traitement sur bits.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 E 0.2 BIE A 4.0 S
La sortie A 4.0 est mise 1 si l'entre E 0.0 gale 1 ou si l'entre E 0.2 gale 0 et si, en plus de ce RLG, le bit RB gale 1.
12-6
12.6
Reprsentation
==0 ou forme inverse ==0
Description de l'opration
==0 ---| |--- (Bit de rsultat pour gal 0) et ==0 ---| / |--- (Bit de rsultat pour gal 0, forme inverse) Ces oprations dtectent si le rsultat dune opration arithmtique est gal 0. Elles interrogent les bits indicateurs BI1 et BI0 afin de dterminer cette relation par rapport 0. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemples
E 0.0 EW0 EW2 SUB_I ENO EN IN1 OUT IN2 ==0 A 4.0 S MW10
L'tat de signal 1 en E 0.0 active cette opration. Si la valeur de EW0 est gale la valeur de EW2, le rsultat de l'opration arithmtique EW0 - EW2 est gal 0. La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat est gal 0.
==0
A 4.0 S
MW10
La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat n'est pas gal 0.
12-7
12.7
Reprsentation
<>0 ou forme inverse <>0
Description de l'opration
<>0 ---| |--- (Bit de rsultat pour diffrent de 0) et <>0 ---| / |--- (Bit de rsultat pour diffrent de 0, forme inverse) Ces oprations permettent de dtecter si le rsultat dune opration arithmtique est diffrent de 0. Elles interrogent les bits indicateurs BI1 et BI0 afin de dterminer cette relation par rapport 0. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemples
E 0.0 EW0 EW2 SUB_I ENO EN IN1 OUT IN2 <>0 A 4.0 S MW10
L'tat de signal 1 en E 0.0 active cette opration. Si la valeur de EW0 est diffrente de la valeur de EW2, le rsultat de l'opration arithmtique EW0 - EW2 est diffrent de 0. La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat est diffrent de 0.
<>0
A 4.0 S
MW10
La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat est gal 0.
12-8
12.8
Reprsentation
>0 ou forme inverse >0
Description de l'opration
>0 ---| |--- (Bit de rsultat pour suprieur 0) et >0 ---| / |--- (Bit de rsultat pour suprieur 0, forme inverse) Ces oprations permettent de dtecter si le rsultat d'une opration arithmtique est suprieur 0. Elles interrogent les bits indicateurs BI1 et BI0 afin de dterminer cette relation par rapport 0. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemple
E 0.0 EW0 EW2 SUB_I ENO EN IN1 OUT IN2 >0 A 4.0 S MW10
L'tat de signal 1 en E 0.0 active cette opration. Si la valeur de EW0 est suprieure la valeur de EW2, le rsultat de l'opration arithmtique EW0 - EW2 est suprieur 0. La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat est suprieur 0.
>0
A 4.0 S
MW10
La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat n'est pas suprieur 0.
12-9
12.9
Reprsentation
<0 ou forme inverse <0
Description de l'opration
<0 ---| |--- (Bit de rsultat pour infrieur 0) et <0 ---| / |--- (Bit de rsultat pour infrieur 0, forme inverse) Ces oprations permettent de dtecter si le rsultat d'une opration arithmtique est infrieur 0. Elles interrogent les bits indicateurs BI1 et BI0 afin de dterminer cette relation par rapport 0. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemples
E 0.0 EW0 EW2 SUB_I ENO EN IN1 OUT IN2 <0 A 4.0 S MW10
L'tat de signal 1 en E 0.0 active cette opration. Si la valeur de EW0 est infrieure la valeur de EW2, le rsultat de l'opration arithmtique EW0 - EW2 est infrieur 0. La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat est infrieur 0.
<0
A 4.0 S
MW10
La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat n'est pas infrieur 0.
12-10
Description de l'opration
>=0 ---| |--- (Bit de rsultat pour suprieur ou gal 0) et >=0 ---| / |--- (Bit de rsultat pour suprieur ou gal 0, forme inverse) Ces oprations permettent de dtecter si le rsultat d'une opration arithmtique est suprieur ou gal 0. Elles interrogent les bits indicateurs BI1 et BI0 afin de dterminer cette relation par rapport 0. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemples
E 0.0 EW0 EW2 SUB_I ENO EN IN1 OUT IN2 >=0 A 4.0 S MW10
L'tat de signal 1 en E 0.0 active cette opration. Si la valeur de EW0 est suprieure ou gale la valeur de EW2, le rsultat de l'opration arithmtique EW0 - EW2 est suprieur ou gal 0. La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat est suprieur ou gal 0.
>=0
A 4.0 S
MW10
La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat n'est pas suprieur ou gal 0.
12-11
Description de l'opration
<=0 ---| |--- (Bit de rsultat pour infrieur ou gal 0) et <=0 ---| / |--- (Bit de rsultat pour infrieur ou gal 0, forme inverse) Ces oprations permettent de dtecter si le rsultat dune opration arithmtique est infrieur ou gal 0. Elles interrogent les bits indicateurs BI1 et BI0 afin de dterminer cette relation par rapport 0. En cas de connexions en srie, le rsultat de l'interrogation est combin au RLG par ET ; en cas de connexions en parallle, il est combin au RLG par OU.
Mot d'tat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
x
ETAT
x
RLG
x
/PI
1
Exemples
E 0.0 EW0 EW2 SUB_I ENO EN IN1 OUT IN2 <=0 A 4.0 S MW10
L'tat de signal 1 en E 0.0 active cette opration. Si la valeur de EW0 est infrieure ou gale la valeur de EW2, le rsultat de l'opration arithmtique EW0 - EW2 est infrieur ou gal 0. La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat est infrieur ou gal 0.
<=0
A 4.0 S
MW10
La sortie A 4.0 est mise 1 si l'opration s'excute sans erreur et si le rsultat n'est pas infrieur ou gal 0.
12-12
13 Oprations de temporisation
13.1
Description
Vous disposez des oprations de temporisations suivantes : S_IMPULS S_VIMP S_EVERZ Paramtrer et dmarrer temporisation sous forme d'impulsion Paramtrer et dmarrer temporisation sous forme d'impulsion prolonge Paramtrer et dmarrer temporisation sous forme de retard la monte
S_SEVERZ Paramtrer et dmarrer temporisation sous forme de retard la monte mmoris S_AVERZ ---( SI ) ---( SV ) ---( SE ) ---( SS ) ---( SA ) Paramtrer et dmarrer temporisation sous forme de retard la retombe Dmarrer temporisation sous forme d'impulsion Dmarrer temporisation sous forme d'impulsion prolonge Dmarrer temporisation sous forme de retard la monte Dmarrer temporisation sous forme de retard la monte mmoris Dmarrer temporisation sous forme de retard la retombe
13.2
Zone de mmoire
Une zone de mmoire est rserve aux temporisations dans votre CPU. Un mot de 16 bits y est rserv pour chaque oprande de temporisation. La programmation en CONT permet dutiliser jusqu 256 temporisations. Le nombre de mots de temporisation disponibles dans votre CPU figure dans les caractristiques de la CPU. Les fonctions suivantes ont accs la zone de mmoire rserve aux temporisations : oprations de temporisation, actualisation des mots de temporisation avec une horloge. Cette fonction dcrmente, ltat de marche (RUN) de la CPU, une valeur donne dune unit dans un intervalle dfini par la base de temps, et ce, jusqu ce que la valeur de temps soit gale zro.
13-1
Oprations de temporisation
Valeur de temps
La valeur de temps est contenue sous forme binaire dans les bits 0 9 du mot de temporisation. Elle dtermine un nombre dunits. Lactualisation de lheure dcrmente la valeur de temps dune unit dans un intervalle dfini par la base de temps. La dcrmentation se poursuit jusqu ce que la valeur de temps soit gale zro. Pour charger une valeur de temps, vous pouvez utiliser le format binaire, hexadcimal ou dcimal cod binaire (DCB). La plage de temps est comprise entre 0 et 9 990 secondes. Vous pouvez charger une valeur de temps prdfinie en utilisant lun des deux formats suivants : w#16#wxyz o
-
w = base de temps (cest--dire lintervalle de temps ou la rsolution) xyz = valeur de temps en format dcimal cod binaire (DCB)
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
Base de temps
La base de temps est contenue en code binaire dans les bits 12 et 13 du mot de temporisation. Elle dtermine quel intervalle la valeur de temps va tre dcrmente. La base de temps minimale est gale 10 ms ; la base de temps maximale 10 s.
Base
10 ms 100 ms 1s 10 s
Les valeurs ne doivent pas excder 2H_46M_30S. Les valeurs prsentant une plage trop importante ou une trop grande rsolution sont arrondies en fonction des valeurs limites de plages et de rsolutions. Le format gnral S5TIME a les valeurs limites suivantes pour la plage et la rsolution :
Rsolution
0,01 seconde 0,1 1 10 seconde seconde secondes
Plage
10MS 1S 10S 9S_990MS 16M_39S 2H_46M_30S 100MS 1M_39S_900MS
13-2
Oprations de temporisation
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
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-4
Oprations de temporisation
13.3
Reprsentation
Anglaise
T n S_PULSE S TV R Q BI BCD S TW R
Allemande
T n S_IMPULS Q DUAL DEZ
Paramtre Anglaise
T n
Paramtre Allemande
Tn
o
Type de donnes
TIMER
Zone de mmoire
T
Description
Numro d'identification de la temporisation. La plage dpend de la CPU. Entre de dmarrage Valeur de temps prdfinie Entre de remise zro Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description de l'opration
S_IMPULS (Paramtrer et dmarrer temporisation sous forme d'impulsion) Cette opration dmarre la temporisation prcise en cas de front montant 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 gal 1. Tant que la temporisation s'excute, l'tat de signal la sortie Q gale 1. 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'tat de signal la sortie Q est 0. Si l'tat de signal passe de 0 1 l'entre de remise zro R alors que la temporisation s'excute, cette dernire est remise zro. La valeur de temps en cours et la base de temps sont alors galement mises 0. 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. La valeur de temps en cours correspond la valeur initiale en TW moins la valeur de temps coule depuis le dmarrage de la temporisation.
13-5
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
E 0.0 S5TIME#2S T5 S_IMPULS Q S TW R DUAL DEZ A 4.0
E 0.1
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 (2 s) indiqu s'coule 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'excute, cette dernire est remise zro. L'tat de signal la sortie A 4.0 est 1 tant que la temporisation s'excute. Cet tat de signal est 0 si la temporisation a expir ou si elle a t remise zro.
13-6
Oprations de temporisation
13.4
Reprsentation
Anglaise
T n S_PEXT S TV R Q BI BCD S TW R
Allemande
T n S_VIMP Q DUAL DEZ
Paramtre Anglaise
T n
Paramtre Allemande
Tn
o
Type de donnes
TIMER
Zone de mmoire
T
Description
Numro d'identification de la temporisation. La plage dpend de la CPU. Entre de dmarrage Valeur de temps prdfinie Entre de remise zro Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description de l'opration
S_VIMP (Paramtrer et dmarrer temporisation sous forme d'impulsion prolonge) Cette opration dmarre la temporisation prcise en cas de front montant 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'excute, l'tat de signal la sortie Q gale 1. La temporisation est redmarre avec la valeur de temps prdfinie 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'excute, cette dernire est remise zro. La valeur de temps en cours et la base de temps sont alors galement mises 0. La valeur de temps en cours peut tre lue en format binaire la sortie DUAL et en format dcimal cod binaire la sortie DEZ. La valeur de temps en cours correspond la valeur initiale en TW moins la valeur de temps coule depuis le dmarrage de la temporisation.
13-7
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
E 0.0 S E 0.1 S5TIME#2S TW R T5 S_VIMP Q DUAL DEZ 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 (2 s) 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 que le temps n'ait expir, la temporisation est redmarre. Si l'tat de signal l'entre E 0.1 passe de 0 1 alors que la temporisation s'excute, cette dernire est remise zro. L'tat de signal la sortie A 4.0 est 1 tant que la temporisation s'excute.
13-8
Oprations de temporisation
13.5
Reprsentation
Anglaise
T n S_ODT S TV R Q BI BCD S TW R
Allemande
T n S_EVERZ Q DUAL DEZ
Paramtre Anglaise
T n
Paramtre Allemande
Tn
o
Type de donnes
TIMER
Zone de mmoire
T
Description
Numro d'identification de la temporisation. La plage dpend de la CPU. Entre de dmarrage Valeur de temps prdfinie Entre de remise zro Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description de l'opration
S_EVERZ (Paramtrer et dmarrer temporisation sous forme de retard la monte) Cette opration dmarre la temporisation prcise en cas de front montant 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'tat de signal la sortie Q gale 1 lorsque la temporisation s'est excute sans erreur et que l'tat de signal l'entre S est toujours 1. 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'tat de signal la sortie Q est 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 et la base de temps sont alors galement mises 0. L'tat de signal la sortie Q gale alors 0. La temporisation est galement remise zro si l'tat de signal gale 1 l'entre R alors que la temporisation ne s'excute pas et que le RLG l'entre S est gal 1. La valeur de temps en cours peut tre lue en format binaire la sortie DUAL et en format dcimal cod binaire la sortie DEZ. La valeur de temps en cours correspond la valeur initiale en TW moins la valeur de temps coule depuis le dmarrage de la temporisation.
13-9
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
E 0.0 S5TIME#2S T5 S_EVERZ Q S TW R DUAL DEZ A 4.0
E 0.1
La temporisation T5 est dmarre si l'tat de signal passe de 0 1 l'entre E 0.0 (front montant du RLG). Si le temps de deux secondes (2 s) indiqu expire et que l'tat de signal l'entre E 0.0 gale 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 est arrte et A 4.0 est 0. Si l'tat de signal l'entre E 0.1 passe de 0 1, la temporisation est remise zro qu'elle soit en cours d'excution ou non.
13-10
Oprations de temporisation
13.6
Reprsentation
Anglaise
T n S_ODTS S TV R Q BI BCD S TW R
Allemande
T n S_SEVERZ Q DUAL DEZ
Paramtre Anglaise
T n
Paramtre Allemande
Tn
o
Type de donnes
TIMER
Zone de mmoire
T
Description
Numro d'identification de la temporisation. La plage dpend de la CPU. Entre de dmarrage Valeur de temps prdfinie Entre de remise zro Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description de l'opration
S_SEVERZ (Paramtrer et dmarrer temporisation sous forme de retard la monte mmoris) Cette opration dmarre la temporisation prcise en cas de front montant 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'tat de signal la sortie Q gale 1 lorsque la temporisation a expir, quel que soit l'tat de signal l'entre S. Si l'tat de signal l'entre S passe de 0 1 alors 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. L'tat de signal la sortie Q est alors 0. La valeur de temps en cours peut tre lue en format binaire la sortie DUAL et en format dcimal cod binaire la sortie DEZ. La valeur de temps en cours correspond la valeur initiale en TW moins la valeur de temps coule depuis le dmarrage de la temporisation.
13-11
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
E 0.0 S5TIME#2S T5 S_SEVERZ Q S TV R DUAL DEZ A 4.0
E 0.1
La temporisation T5 est dmarre si l'tat de signal passe de 0 1 l'entre E 0.0 (front montant du RLG). La temporisation continue s'excuter mme si l'tat de signal en E 0.0 passe de 1 0. Si l'tat de signal en E 0.0 passe de 0 1 avant que la temporisation n'ait expir, la temporisation est redmarre. L'tat de signal la sortie A 4.0 est 1 lorsque la temporisation s'est coule. Si l'tat de signal l'entre E 0.1 passe de 0 1, la temporisation est remise zro quel que soit le RLG en S.
13-12
Oprations de temporisation
13.7
Reprsentation
Anglaise
T n S_OFFDT S TV R Q BI BCD S TW R
Allemande
T n S_AVERZ Q DUAL DEZ
Paramtre Anglaise
T n
Paramtre Allemande
Tn
o
Type de donnes
TIMER
Zone de mmoire
T
Description
Numro d'identification de la temporisation. La plage dpend de la CPU. Entre de dmarrage Valeur de temps prdfinie Entre de remise zro Valeur de temps restante (format binaire) Valeur de temps restante (format DCB) Etat de la temporisation
S TV R BI BCD Q
S TW R DUAL DEZ Q
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description de l'opration
S_AVERZ (Paramtrer et dmarrer temporisation sous forme de retard la retombe) Cette opration dmarre la temporisation prcise en cas de front descendant l'entre de dmarrage S. Un changement d'tat de signal est toujours ncessaire pour activer une temporisation. L'tat de signal la sortie Q gale 1 lorsque l'tat de signal l'entre S est 1 ou lorsque la temporisation s'excute. 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. La valeur de temps en cours correspond la valeur initiale en TW moins la valeur de temps coule depuis le dmarrage de la temporisation.
13-13
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
E 0.0 S5TIME#2S T5 S_AVERZ Q S TV R DUAL DEZ A 4.0
E 0.1
La temporisation 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'excute. Si l'tat de signal en E 0.1 passe de 0 1 pendant que la temporisation s'excute, cette dernire est remise zro.
13-14
Oprations de temporisation
13.8
---( SI )
Reprsentation
Anglaise <T n > ---( SP ) <valeur de temps> Allemande <T n > ---( SI ) <valeur de temps>
Paramtre
<T n > <valeur de temps>
Type de donnes
TIMER S5TIME
Zone de mmoire
T E, A, M, L, D
Description
Numro de la temporisation. La plage dpend de la CPU. Valeur de temps prdfinie
Description de l'opration
---( SI ) (Dmarrer temporisation sous forme d'impulsion) Cette opration dmarre la temporisation indique avec la <valeur de temps> donne si le RLG prsente un front montant. La valeur de temps prcise continue s'couler tant que le RLG est positif (tat de signal 1). L'interrogation 1 de l'tat de signal fournit un rsultat gal 1 tant que la temporisation s'excute. Si le RLG passe de 1 0 avant que le temps indiqu ne soit coul, la temporisation s'arrte. Dans ce cas, l'interrogation 1 de l'tat de signal fournit un rsultat gal 0.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
-
RLG
-
/PI
0
13-15
Oprations de temporisation
Exemple
Rseau 1 E 0.0 T5 SI S5T#2S Rseau 2 T5 A 4.0
Rseau 3 E 0.1 T5 R
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'excuter 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. Si l'tat de signal en E 0.1 passe de 0 1, la temporisation T5 est mise zro, c'est--dire qu'elle s'arrte et que la valeur de temps restante est mise 0.
13.9
Reprsentation
Anglaise <T n > ---( SE ) <valeur de temps> Allemande <T n > ---( SV ) <valeur de temps>
Paramtre
<T n > <valeur de temps>
Type de donnes
TIMER S5TIME
Zone de mmoire
T E, A, M, L, D
Description
Numro de la temporisation. La plage dpend de la CPU. Valeur de temps prdfinie
13-16
Oprations de temporisation
Description de l'opration
---( SV ) (Dmarrer temporisation sous forme d'impulsion prolonge) Cette opration dmarre la temporisation indique avec la <valeur de temps> donne si le RLG prsente un front montant. La temporisation continue s'excuter avec la valeur de temps prcise mme si le RLG passe 0 avant que ce temps n'ait expir. L'interrogation 1 de l'tat de signal fournit un rsultat gal 1 tant que la temporisation s'excute. La temporisation est redmarre avec la valeur de temps indique si le RLG passe de 0 1 alors que la temporisation s'excute.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
-
RLG
-
/PI
0
Exemple
Rseau 1 E 0.0 T5 SV S5T#2S Rseau 2 T5 A 4.0
Rseau 3 E 0.1 T5 R
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'excuter avec la valeur de temps prcise, mme en prsence d'un front descendant du RLG. Si l'tat de signal en E 0.0 passe 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. Si l'tat de signal en E 0.1 passe de 0 1, la temporisation T5 est mise zro, c'est--dire qu'elle s'arrte et que la valeur de temps restante est mise 0.
13-17
Oprations de temporisation
<valeur de temps>
Paramtre
<T n > <valeur de temps>
Type de donnes
TIMER S5TIME
Zone de mmoire
T E, A, M, L, D
Description
Numro de la temporisation. La plage dpend de la CPU. Valeur de temps prddinie
Description de l'opration
---( SE ) (Dmarrer temporisation sous forme de retard la monte) Cette opration dmarre la temporisation indique avec la <valeur de temps> donne si le RLG prsente un front montant. L'interrogation 1 de l'tat de signal fournit un rsultat gal 1 lorsque la valeur de temps s'est coule sans erreur et que le RLG est toujours gal 1. Si le RLG passe de 1 0 alors que la temporisation s'excute, la temporisation est remise zro. Dans ce cas, l'interrogation 1 de l'tat de signal fournit un rsultat gal 0.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
-
RLG
-
/PI
0
13-18
Oprations de temporisation
Exemple
Rseau 1 E 0.0 T5 SE S5T#2S Rseau 2 T5 A 4.0
Rseau 3 E 0.1 T5 R
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 1. Si l'tat de signal en E 0.0 passe de 1 0 alors que la temporisation s'excute, cette dernire est remise zro et A 4.0 est 0. Si l'tat de signal en E 0.1 passe de 0 1, la temporisation T5 est mise zro, c'est--dire qu'elle est arrte et que la valeur de temps restante est mise 0.
13-19
Oprations de temporisation
Paramtre
<T n > <valeur de temps>
Type de donnes
TIMER S5TIME
Zone de mmoire
T E, A, M, L, D
Description
Numro de la temporisation. La plage dpend de la CPU. Valeur de temps prdfinie
Description de l'opration
---( SS ) (Dmarrer temporisation sous forme de retard la monte mmoris) Cette opration dmarre la temporisation prcise si le RLG prsente un front montant. L'tat de signal de la temporisation est gal 1 lorsque le temps indiqu est coul. Un redmarrage de la temporisation n'est possible que si cette dernire a t explicitement mise zro, car c'est uniquement de cette manire que l'tat de signal de la temporisation peut tre mis 0. Si le RLG passe de 0 1 alors que la temporisation s'excute, la temporisation est redmarre avec le temps indiqu.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
-
RLG
-
/PI
0
13-20
Oprations de temporisation
Exemple
Rseau 1 E 0.0 T5 SS S5T#2S Rseau 2 T5 A 4.0
Rseau 3 E 0.1 T5 R
Si l'tat de signal en E 0.0 passe de 0 1 (front montant du RLG), la temporisation T5 est dmarre. 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. Si l'tat de signal en E 0.1 est 1, la temporisation T5 est mise zro, c'est--dire qu'elle est arrte et que la valeur de temps restante est mise 0.
13-21
Oprations de temporisation
Paramtre
<T n > <valeur de temps>
Type de donnes
TIMER S5TIME
Zone de mmoire
T E, A, M, L, D
Description
Numro de la temporisation. La plage dpend de la CPU. Valeur de temps prdfinie
Description de l'opration
---( SA ) (Dmarrer temporisation sous forme de retard la retombe) Cette opration dmarre la temporisation indique si le RLG prsente un front descendant. L'interrogation 1 de l'tat de signal fournit un rsultat gal 1 tant que le RLG gale 1 ou que la temporisation s'excute avec la <valeur de temps> prcise. La temporisation est remise zro si le RLG passe de 0 1 alors que la temporisation s'excute. La temporisation est toujours redmarre lorsque le RLG repasse de 1 0.
Mot dtat
RB
Ecriture -
BI1
-
BI0
-
DEB
-
DM
-
OU
0
ETAT
-
RLG
-
/PI
0
Exemple
Rseau 1 E 0.0 T5 SA S5T#2S Rseau 2 T5 A 4.0
Rseau 3 E 0.1 T5 R
Si l'tat de signal en E 0.0 passe de 1 0, la temporisation est dmarre. L'tat de signal la sortie A 4.0 est 1 si l'tat de signal est 1 l'entre E 0.0 ou si la temporisation s'excute. Si l'tat de signal en E 0.1 passe de 0 1, la temporisation T5 est mise zro, c'est--dire qu'elle est arrte et que la valeur de temps restante est mise 0.
13-22
14.1
Description
Les oprations combinatoires sur mots combinent deux mots (16 bits) ou deux doubles mots (32 bits), bit par bit, selon les combinaisons boolennes. Ces oprations sont actives si l'tat de signal est 1 l'entre de validation 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 est gale 0, le bit BI1 du mot d'tat est mis 0. Vous disposez des oprations combinatoires sur mots suivantes : WAND_W WOR_W WXOR_W WAND_DW WOR_DW WXOR_DW ET mot OU mot OU exclusif mot ET double mot OU double mot OU exclusif double mot
14-1
14.2
WAND_W
ET mot
Reprsentation
WAND_W EN IN1 IN2 ENO OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL WORD WORD WORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la combinaison Seconde valeur pour la combinaison Rsultat de la combinaison (mot)
Description de l'opration
WAND_W (ET mot) Cette opration est active si l'tat de signal est 1 l'entre de validation EN. Elle 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
E 0.0 MW0 2#0000000000001111
WAND_W
A 4.0 MW2
EN IN1 IN2
ENO OUT
Cette opration est excute si l'tat de signal est 1 l'entre E 0.0. Seuls les bits 0 3 de MW0 sont significatifs ; les autres bits sont masqus par le profil binaire donn dans l'entre IN2. MW0 IN2 = = 01010101 01010101 00000000 00001111 00000000 00000101
14-2
14.3
WOR_W
OU mot
Reprsentation
WOR_W EN IN1 IN2 ENO OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL WORD WORD WORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la combinaison Seconde valeur pour la combinaison Rsultat de la combinaison (mot)
Description de l'opration
WOR_W (OU mot) Cette opration est active si l'tat de signal est 1 l'entre de validation EN. Elle 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. 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
E 0.0 MW0 2#0000000000001111
WOR_W
A 4.0 MW2
EN IN1 IN2
ENO OUT
Cette opration est excute si l'tat de signal est 1 l'entre E 0.0. Les bits 0 3 sont mis 1, tous les autres bits de MW0 restent inchangs. MW0 IN2 MW0 OU IN2=MW2 = = = 01010101 01010101 00000000 00001111 01010101 01011111
14-3
14.4
WXOR_W
OU exclusif mot
Reprsentation
WXOR_W EN IN1 IN2 ENO OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL WORD WORD WORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la combinaison Seconde valeur pour la combinaison Rsultat de la combinaison (mot)
Description de l'opration
WXOR_W (OU exclusif mot) Cette opration est active si l'tat de signal est 1 l'entre de validation EN. Elle 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. 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
E 0.0 MW0 2#0000000000001111
WXOR_W
A 4.0 MW2
EN IN1 IN2
ENO OUT
Cette opration est excute si l'tat de signal est 1 l'entre E 0.0 : MW0 IN2 = = MW2 = 01010101 01010101 00000000 00001111 01010101 01011010
14-4
14.5
WAND_DW
ET double mot
Reprsentation
WAND_DW EN IN1 IN2 ENO OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL DWORD DWORD DWORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la combinaison Seconde valeur pour la combinaison Rsultat de la combinaison (double mot)
Description de l'opration
WAND_DW (ET double mot) Cette opration est active si l'tat de signal est 1 l'entre de validation EN. Elle 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. 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
E 0.0 MD0 DW#16#FFF
WAND_DW
A 4.0 MD4
EN IN1 IN2
ENO OUT
Cette opration est excute si l'tat de signal est 1 l'entre E 0.0. Seuls les bits 0 11 de MD0 sont significatifs ; les autres bits sont masqus par le profil binaire donn dans l'entre IN2. MD0 IN2 MD0 ET IN2 = MD4 = = = 01010101 01010101 01010101 01010101 00000000 00000000 00001111 11111111 00000000 00000000 00000101 01010101
14-5
14.6
WOR_DW
OU double mot
Reprsentation
WOR_DW EN IN1 IN2 ENO OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL DWORD DWORD DWORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la combinaison Seconde valeur pour la combinaison Rsultat de la combinaison (double mot)
Description de l'opration
WOR_DW (OU double mot) Cette opration est active si l'tat de signal est 1 l'entre de validation EN. Elle 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. 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
E 0.0 MD0 DW#16#FFF
WOR_DW
A 4.0 MD4
EN IN1 IN2
ENO OUT
Cette opration est excute si l'tat de signal est 1 l'entre E 0.0. Les bits 0 11 sont mis 1. Les bits restants de MD0 restent inchangs. MD0 IN2 MD0 OU IN2 = MD4 = = = 01010101 01010101 01010101 01010101 00000000 00000000 00001111 11111111 01010101 01010101 01011111 11111111
14-6
14.7
WXOR_DW
Reprsentation
WXOR_DW EN IN1 IN2 ENO OUT
Paramtre
EN ENO IN1 IN2 OUT
Type de donnes
BOOL BOOL DWORD DWORD DWORD
Zone de mmoire
E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D E, A, M, L, D
Description
Entre de validation Sortie de validation Premire valeur pour la combinaison Seconde valeur pour la combinaison Rsultat de la combinaison (double mot)
Description de l'opration
WXOR_DW (OU exclusif double mot) Cette opration est active si l'tat de signal est 1 l'entre de validation EN. Elle 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. 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
E 0.0 MD0 DW#16#FFF
WXOR_DW
A 4.0 MD4
EN IN1 IN2
ENO OUT
Cette opration est excute si l'tat de signal est 1 l'entre E 0.0 : MD0 IN2 MD0 OU exclusif IN2 = = = MD4 = 01010101 01010101 01010101 01010101 00000000 00000000 00001111 11111111 01010101 01010101 01011010 10101010
14-7
14-8
A.1
Combinaison sur bits Combinaison sur bits Combinaison sur bits Combinaison sur bits Bits d'tat Bits d'tat Bits d'tat Bits d'tat Bits d'tat Bits d'tat Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Appel de DB Conversion
Conversion Bits d'tat Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes Gestion d'excution de programmes
>0 ---| |-->=0 ---| |--<=0 ---| |--<0 ---| |--<>0 ---| |--ABS ACOS
ADD_DI ADD_I ADD_R
>0 ---| |-->=0 ---| |--<=0 ---| |--<0 ---| |--<>0 ---| |--ABS ACOS
ADD_DI ADD_I ADD_R
ASIN
ATAN ---( OPN )
ASIN
ATAN ---( OPN )
BCD_DI
BCD_I BIE ---| |------(CALL) CALL_FB CALL_FC CALL_SFB CALL_SFC
BCD_DI
BCD_I BR ---| |------(CALL) CALL_FB CALL_FC CALL_SFB CALL_SFC
A-1
Description
Convertir rel en entier suprieur le plus proche Comparer entiers de 32 bits Comparer entiers de 16 bits Comparer rels Cosinus Convertir entier de 32 bits en nombre DCB Convertir entier de 32 bits en rel Diviser entiers de 32 bits Diviser entiers de 16 bits Diviser rels Valeur exponentielle Convertir 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
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 Fonction sur nombres entiers Fonction sur nombres virgule flottante Combinaison sur bits Combinaison sur bits Conversion Conversion Conversion Combinaison sur bits Bits d'tat Bits d'tat Combinaison sur bits
Saut inconditionnel Saut l'intrieur d'un bloc si 1 (conditionnel) Saut l'intrieur d'un bloc si 0 (conditionnel) Repre de saut Logarithme naturel Relais de masquage hors fonction Relais de masquage en fonction Activer relais de masquage Dsactiver relais de masquage Reste de division (32 bits) Affecter valeur Multiplier entiers de 32 bits Multiplier entiers de 16 bits Multiplier rels Dtecter front descendant Dtecter front descendant de signal Complment 2 d'entier de 32 bits Complment 2 d'entier de 16 bits Inverser le signe d'un nombre rel Inverser RLG Bit d'anomalie "dbordement mmoris" Bit d'anomalie "dbordement" Dtecter front montant
MOD_DI
MOVE MUL_DI MUL_I MUL_R
MOD_DI
MOVE MUL_DI MUL_I MUL_R
---( N )--NEG NEG_DI NEG_I NEG_R ---| NOT |--OS ---| |---
---( N )--NEG NEG_DI NEG_I NEG_R ---| NOT |--OS ---| |---
A-2
Description Dtecter front montant de signal Mettre 0 Retour Rotation vers la gauche dun double mot Rotation vers la droite dun double mot Arrondir Bascule mise 0, mise 1 Mettre 1 Dmarrer temporisation sous forme de retard la retombe Sauvegarder RLG dans RB Paramtrer et dmarrer temporisation sous forme de retard la retombe Dmarrer temporisation sous forme de retard la monte Paramtrer et dmarrer 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 Dmarrer temporisation sous forme d'impulsion Paramtrer et dmarrer temporisation sous forme d'impulsion Sinus Carr Racine carre Bascule mise 1, mise 0 Dmarrer temporisation sous forme de retard la monte mmoris Paramtrer et dmarrer temporisation sous forme de retard la monte mmoris (SS) Soustraire entiers de 32 bits Soustraire entiers de 16 bits Soustraire rels Dmarrer temporisation sous forme d'impulsion prolonge Paramtrer et dmarrer temporisation sous forme d'impulsion prolonge Initialiser compteur Tangente
Combinaison sur bits Combinaison sur bits Gestion d'excution de programmes Dcalage/rotation Dcalage/rotation Conversion 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 Temporisations Temporisations Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante Temporisations Temporisations Compteurs Fonction sur nombres virgule flottante
---( S )
---( SA ) ---( SAVE ) S_AVERZ ---( SE ) S_EVERZ SHL_DW
---( S )
---( SF ) ---( SAVE ) S_OFFDT ---( SD ) S_ODT SHL_DW
SQRT SR
---( SS ) S_SEVERZ SUB_DI SUB_I SUB_R
SQRT SR
---( SS ) S_ODTS SUB_DI SUB_I SUB_R
---( SV )
S_VIMP ---( SZ ) TAN
---( SE )
S_PEXT ---( SC ) TAN
A-3
Description Tronquer la partie entire Bit danomalie "illicite" ET double mot ET mot OU double mot OU mot OU exclusif double mot OU exclusif mot Paramtrage et compteur d'incrmentation/ dcrmentation Dcrmenter Paramtrage et compteur de dcrmentation Incrmenter Paramtrage et compteur d'incrmentation
Conversion Bits d'tat Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots Compteurs Compteurs Compteurs Compteurs Compteurs
----(ZR)
Z_RUECK ---( ZV ) Z_VORW
----(CD)
----(S_CD) ----(CU) S_CU
A-4
A.2
Combinaison sur bits Combinaison sur bits Combinaison sur bits Combinaison sur bits Bits d'tat Bits d'tat Bits d'tat Bits d'tat Bits d'tat Bits d'tat Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Conversion Conversion
Bits d'tat Gestion d'excution de programmes 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
>0 ---| |-->=0 ---| |--<=0 ---| |--<0 ---| |--<>0 ---| |--ABS ACOS
ADD_DI ADD_I ADD_R
>0 ---| |-->=0 ---| |--<=0 ---| |--<0 ---| |--<>0 ---| |--ABS ACOS
ADD_DI ADD_I ADD_R
ASIN
ATAN BCD_DI BCD_I BR ---| |------(CALL) CALL_FB CALL_FC CALL_SFB CALL_SFC ----(CD) CEIL CMP ? D CMP ? I CMP ? R COS ----(CU) DI_BCD DI_R
ASIN
ATAN BCD_DI BCD_I BIE ---| |------(CALL) CALL_FB CALL_FC CALL_SFB CALL_SFC ----(ZR) CEIL CMP ? D CMP ? I CMP ? R COS ---( ZV ) DI_BCD DI_R
A-5
Description
Diviser entiers de 32 bits Diviser entiers de 16 bits Diviser rels Valeur exponentielle Convertir 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
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 Fonction sur nombres entiers Fonction sur nombres virgule flottante Combinaison sur bits Combinaison sur bits Conversion Conversion Conversion Combinaison sur bits 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 Dcalage/rotation
Complment 1 d'entier de 32 bits Saut inconditionnel Saut l'intrieur d'un bloc si 1 (conditionnel) Saut l'intrieur d'un bloc si 0 (conditionnel) Repre de saut Logarithme naturel Relais de masquage hors fonction Relais de masquage en fonction Activer relais de masquage Dsactiver relais de masquage Reste de division (32 bits) Affecter valeur Multiplier entiers de 32 bits Multiplier entiers de 16 bits Multiplier rels Dtecter front descendant Dtecter front descendant de signal Complment 2 d'entier de 32 bits Complment 2 d'entier de 16 bits Inverser le signe d'un nombre rel Inverser RLG 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 dun double mot Rotation vers la droite dun double mot
MOD_DI
MOVE MUL_DI MUL_I MUL_R
MOD_DI
MOVE MUL_DI MUL_I MUL_R
---( N )--NEG NEG_DI NEG_I NEG_R ---| NOT |-----( OPN ) OS ---| |---
---( N )--NEG NEG_DI NEG_I NEG_R ---| NOT |-----( OPN ) OS ---| |---
A-6
Description Arrondir Bascule mise 0, mise 1 Mettre 1 Sauvegarder RLG dans RB Initialiser compteur Paramtrage et compteur de dcrmentation Paramtrage et compteur d'incrmentation Paramtrage et compteur d'incrmentation/ dcrmentation Dmarrer temporisation sous forme de retard la monte Dmarrer temporisation sous forme d'impulsion prolonge Dmarrer 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 Sinus Paramtrer et dmarrer temporisation sous forme de retard la monte Paramtrer et dmarrer temporisation sous forme de retard la monte mmoris (SS) Paramtrer et dmarrer temporisation sous forme de retard la retombe Dmarrer temporisation sous forme d'impulsion Paramtrer et dmarrer temporisation sous forme d'impulsion prolonge Paramtrer et dmarrer temporisation sous forme d'impulsion Carr Racine carre Bascule mise 1, mise 0 Dmarrer temporisation sous forme de retard la monte mmoris Soustraire entiers de 32 bits Soustraire entiers de 16 bits Soustraire rels Tangente Tronquer la partie entire Bit danomalie "illicite"
Conversion Combinaison sur bits Combinaison sur bits Combinaison sur bits 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 Temporisation Fonction sur nombres entiers Fonction sur nombres entiers Fonction sur nombres virgule flottante Fonction sur nombres virgule flottante Conversion Bits d'tat
RS
---( S ) ---( SAVE ) ---( SC ) ----(S_CD) S_CU S_CUD ---( SD ) ---( SE ) ---( SF ) SHL_DW
RS
---( S ) ---( SAVE ) ---( SZ ) Z_RUECK Z_VORW ZAEHLER ---( SE ) ---( SV ) ---( SA ) SHL_DW
S_ODTS
S_OFFDT ---( SP ) S_PEXT S_PULSE SQR
S_SEVERZ
S_AVERZ ---( SI ) S_VIMP S_IMPULS SQR
SQRT SR
---( SS ) SUB_DI SUB_I SUB_R
SQRT SR
---( SS ) SUB_DI SUB_I SUB_R
TAN
TRUNC
TAN
TRUNC
UO ---| |---
UO ---| |---
A-7
Description ET double mot ET mot OU double mot OU mot OU exclusif double mot OU exclusif mot
Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots Combinaison sur mots
A-8
B
B.1
Exemples de programmation
Vue densemble des exemples de programmation
Applications pratiques
Chacune des oprations CONT 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 des oprations CONT: 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 | | | / | ( ) JMPN RET MOVE SV
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 Contact fermeture Contact ouverture Sortie Saut l'intrieur d'un bloc 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
Table de mnmoniques
E 1.1 E 1.2 E 1.3 E 1.4 E 1.5 A 4.0 S1 S2 S3 S4 S5 MOTEUR_MAR
B-2
Exemples de programmation
A 4.0 S
S3 E 1.3
Rseau 2 : Appuyer sur lun des deux boutons Arrt ou ouvrir le contact ouverture la fin du tapis arrte le moteur.
S2 E 1.2
A 4.0 R
S4 E 1.4
S5 E 1.5
B-3
Exemples de programmation
A 4.0
BPE2
BPE1
A 4.1
Table de mnmoniques
E 0.0 E 0.1 A 4.0 A 4.1 LS1 LS2 DROITE GAUCHE
B-4
Exemples de programmation
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.
BPE2 E 0.1 MP2 M 0.1 P BPE1 E 0.0 DROITE 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.
BPE1 E 0.0 BPE2 E 0.1 DROITE A 4.0 R
GAUCHE A 4.1 R
B-5
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 CONT suivant illustre lutilisation de fonctions de temporisation pour gnrer une priode dhorloge.
Schma contacts pour gnrer une priode dhorloge (rapport dimpulsion 1:1)
Rseau 1 : Si ltat de signal de la temporisation T1 est 0, charger la valeur de temps 250 ms dans T1 et dmarrer T1 sous forme dimpulsion prolonge.
M0.2 T1 SV S5T#250MS
Rseau 4 : Le mot de mmento MW100 est incrment de 1 chaque fois que la temporisation sest coule.
B-6
Exemples de programmation
Rseau 5 : Lopration MOVE vous permet de voir les diffrentes frquences dhorloge aux sorties A 12.0 A 13.7.
1 0 250 ms
La temporisation est redmarre une fois le temps coul. De ce fait, linterrogation de ltat de signal par lopration ---I / I--- M0.2 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-7
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 0 0 1 1 0 0 1 1 0
Bit 0
0 1 0 1 0 1 0 1 0 1 0 1 0
B-8
Exemples de programmation
B.4
Tableau daffichage
Paquets arrivants
E 12.0
E 12.1
Paquets sortants
B-9
Exemples de programmation
Schma contacts pour activer les lampes de signalisation sur un tableau daffichage
Rseau 1 : En prsence dun front montant lentre ZV, la valeur du compteur Z1 est augmente de 1 ; en prsence dun front descendant lentre ZR, elle est diminue de 1. En prsence dun front montant lentre S, la valeur du compteur est mise la valeur de ZW. En prsence dun front montant lentre R, la valeur du compteur est remise zro. La valeur actuelle du compteur Z1 est mmorise dans le mot de mmento MW200. La lampe de signalisation A 12.1 indique : Espace de stockage non vide.
E 12.0 E 12.1
Z1 ZAEHLER ZV ZR Q
A 12.1
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 <= 1 50 MW200 IN1 IN2
A 15.2
Rseau 4 : Si la valeur du compteur est suprieure ou gale 90, la lampe de signalisation Espace de stockage plein 90 % sallume.
CMP >= 1 MW200 90 IN1 IN2
A 15.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.
A 15.4
B.5
Schma contacts
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. Tant que tous les rsultats sont compris dans la plage autorise pour chaque opration, la sortie de validation ENO transmet un tat de signal gal 1 la bote suivante.
ADD_I EN EW0 DBW3 IN1 IN2 OUT ENO MW100 MW100 15 MUL_I EN IN1 IN2 OUT MW102 ENO MW102 MW0 DIV_I EN IN1 IN2 OUT MW4 ENO
B-11
Exemples de programmation
B.6
Four
4
Chaleur
4 ...0 0001
Bits EW0 Octets
A 4.0
7.... XXXX
...0 0001
7... 1001
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-12
Exemples de programmation
Schma contacts
Rseau 1 : Si la temporisation sexcute, dclencher le chauffage.
T1
A 4.0
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 EN EW0 W#16#FFF IN1 IN2 ENO OUT MW1 MW1 W#16#2000 WOR_W EN IN1 IN2 ENO OUT 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.
E 0.7
T1
SV MW2
B-13
Exemples de programmation
B-14
Index
---( ) ................................................................ 1-6 ---( # )---............................................................ 1-8 ---( CD ) .......................................................... 4-11 ---( CU ) .......................................................... 4-10 ---( N )--- ......................................................... 1-18 ---( P )--- ......................................................... 1-19 ---( R )............................................................. 1-10 ---( S )............................................................. 1-12 ---( SA ) .........................................................13-22 ---( SC ) ............................................................ 4-9 ---( SD ) .........................................................13-18 ---( SE ) .............................................. 13-16, 13-18 ---( SF )..........................................................13-22 ---( SI )...........................................................13-15 ---( SP ) .........................................................13-15 ---( SS ) .........................................................13-20 ---( SV ) .............................................. 13-16, 13-17 ---( SZ )............................................................. 4-9 ---( ZR ) .......................................................... 4-11 ---( ZV )........................................................... 4-10 ---(Call) ........................................................... 10-2 ---(JMP)---...................................................6-2, 6-3 ---(JMPN).......................................................... 6-4 ---(MCR<) ......................................................10-14 ---(MCR>) ........................................... 10-16, 10-17 ---(MCRA)......................................................10-18 ---(MCRD)......................................................10-19 ---(OPN) ........................................................... 5-1 ---(RET) .........................................................10-20 ---(SAVE)........................................................ 1-20 ---| |--- ............................................................ 1-3 ---| / |--- ............................................................. 1-4 --|NOT|-- ........................................................... 1-5 <=0 ---| |--- ..................................................12-12 <=0 ---| / |--- ...................................................12-12 <>0 ---| |--- ................................................... 12-8 <>0 ---| / |--- .................................................... 12-8 <0 ---| |--- ...................................................12-10 <0 ---| / |--- .....................................................12-10 ==0 ---| |--- .................................................... 12-7 ==0 ---| / |--- .................................................... 12-7 >=0 ---| |--- ..................................................12-11 >=0 ---| / |--- ..................................................12-11 >0 ---| |--- .................................................... 12-9 >0 ---| / |--- ...................................................... 12-9 ACOS............................................................. 8-16 ADD_DI ............................................................ 7-7 ADD_I............................................................... 7-3 ADD_R ............................................................. 8-3 Additionner entiers de 16 bits............................. 7-3 Additionner entiers de 32 bits............................. 7-7 Additionner rels ............................................... 8-3 Adresse dune temporisation en mmoire et composants dune temporisation.................. 13-1 Affecter valeur................................................... 9-1 Appeler FB (bote) ........................................... 10-4 Appeler FC (bote)........................................... 10-6 Appeler FC/SFC sans paramtre ..................... 10-2 Appeler multi-instance ................................... 10-12 Appeler SFB (bote)......................................... 10-8 Appeler SFC (bote)....................................... 10-10 Appeler un bloc dans une bibliothque........... 10-12 Arc cosinus ..................................................... 8-16 Arc sinus......................................................... 8-15 Arc tangente.................................................... 8-17 Arrondir........................................................... 3-13 ASIN............................................................... 8-15 ATAN.............................................................. 8-17 Bascule mise 0 - mise 1 ............................. 1-14 Bascule mise 1 - mise 0 ............................. 1-16 BCD_DI ............................................................ 3-5 BCD_I............................................................... 3-2 BIE ---| |--- .................................................... 12-6 BIE ---| / |--- ..................................................... 12-6 Bit d'anomalie.................................................. 12-1 Bit d'anomalie "dbordement mmoris" .......... 12-3 forme inverse............................................... 12-3 Bit d'anomalie "dbordement" .......................... 12-2 forme inverse............................................... 12-2 Bit d'anomalie "illicite"...................................... 12-5 forme inverse............................................... 12-5 Bit d'anomalie "registre RB" ............................. 12-6 forme inverse............................................... 12-6 Bit de rsultat .................................................. 12-1 Bit de rsultat pour diffrent de 0 ..................... 12-8 forme inverse............................................... 12-8 Bit de rsultat pour gal 0 ............................. 12-7 forme inverse............................................... 12-7 Bit de rsultat pour infrieur 0 ..................... 12-10 forme inverse............................................. 12-10 Bit de rsultat pour infrieur ou gal 0 ......... 12-12 forme inverse............................................. 12-12 Bit de rsultat pour suprieur 0 ..................... 12-9 forme inverse............................................... 12-9 Bit de rsultat pour suprieur ou gal 0 ....... 12-11 forme inverse............................................. 12-11
Index-1
Index
Bobine de sortie ................................................ 1-6 CALL_FB........................................................ 10-4 CALL_FC........................................................ 10-6 CALL_SFB...................................................... 10-8 CALL_SFC ....................................................10-10 Carr ................................................................ 8-8 CEIL ............................................................... 3-15 CMP ? D........................................................... 2-3 CMP ? I ............................................................ 2-2 CMP ? R........................................................... 2-4 Combinaison OU exclusif .................................. 1-2 Comparer entiers de 16 bits .............................. 2-2 Comparer entiers de 32 bits .............................. 2-3 Comparer rels ................................................. 2-4 Complment 1 d'entier de 16 bits.................... 3-8 Complment 1 dentier de 32 bits .................... 3-9 Complment 2 dentier de 16 bits .................. 3-10 Complment 2 dentier de 32 bits .................. 3-11 Compteur de dcrmentation ............................ 4-7 Compteur d'incrmentation................................ 4-5 Compteur d'incrmentation/dcrmentation ....... 4-3 Connecteur ....................................................... 1-8 Contact fermeture........................................... 1-3 Contact ouverture........................................... 1-4 Convertir entier de 16 bits en entier de 32 bits.... 3-4 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 rel ...................... 3-7 Convertir nombre DCB en entier de 16 bits ........ 3-2 Convertir nombre DCB en entier de 32 bits ........ 3-5 Convertir rel en entier infrieur le plus proche. 3-16 Convertir rel en entier suprieur le plus proche3-15 COS ............................................................... 8-13 Cosinus .......................................................... 8-13 Dcalage vers la droite d'un double mot........... 11-7 Dcalage vers la droite d'un entier de 16 bits ... 11-2 Dcalage vers la droite d'un entier de 32 bits ... 11-3 Dcalage vers la droite d'un mot...................... 11-5 Dcalage vers la gauche d'un double mot ........ 11-6 Dcalage vers la gauche d'un mot ................... 11-4 Dcrmenter ................................................... 4-11 Dmarrer temporisation sous forme de retard la monte ............. 13-9, 13-18, 13-20 Dmarrer temporisation sous forme de retard la monte mmoris.......................................13-11 Dmarrer temporisation sous forme de retard la retombe ........................................ 13-13, 13-22 Dmarrer temporisation sous forme d'impulsion ........................................13-5, 13-15 Dmarrer temporisation sous forme d'impulsion prolonge..........................................13-7, 13-16 Dtecter front descendant ............................... 1-18 Dtecter front descendant de signal................. 1-21 Dtecter front montant..................................... 1-19 Dtecter front montant de signal ...................... 1-22 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 Diviser rels ...................................................... 8-6 Ecriture directe en priphrie ........................... 1-24 ET double mot................................................. 14-5 ET mot............................................................ 14-2 Evaluation des bits du mot d'tat (oprations sur nombres virgule flottante) ...................... 8-2 Evaluation des bits du mot d'tat dans les prations sur nombres entiers ....................................... 7-2 EXP ................................................................ 8-10 FLOOR ........................................................... 3-16 I_BCD............................................................... 3-3 I_DI................................................................... 3-4 Incrmenter..................................................... 4-10 Initialiser compteur ............................................ 4-9 INV_D............................................................... 3-9 INV_I ................................................................ 3-8 Inverser le signe d'un nombre rel ................... 3-12 Inverser RLG..................................................... 1-5 LABEL Repre de saut .................................... 6-5 Lecture directe en priphrie............................ 1-23 LN................................................................... 8-11 Logarithme naturel .......................................... 8-11 Mettre 0 ....................................................... 1-10 Mettre 1 ....................................................... 1-12 MOD_DI.......................................................... 7-11 MOVE........................................................ 9-1, 9-2 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 rels................................................... 8-5 NEG ............................................................... 1-21 NEG_DI .......................................................... 3-11 NEG_I............................................................. 3-10 NEG_R ........................................................... 3-12 Opration de comparaison................................. 2-1 Opration de conversion.................................... 3-1 Opration de rotation....................................... 11-9 Oprations arithmtiques sur nombres flottantes ......................................... 8-1 Oprations combinatoire sur mots.................... 14-1 Oprations combinatoires sur bits ...................... 1-1 Oprations de comptage.................................... 4-1 Oprations de dcalage................................... 11-1 Oprations de gestion dexcution de programme............................................. 10-1 Oprations de nombre entiers............................ 7-1 Oprations de saut ..................................... 6-1, 6-5 Oprations de temporisation ............................ 13-1 Oprations sur bits dtat................................. 12-1 OS ---| |---..................................................... 12-3
Langage CONT pour SIMATIC S7-300/400 A5E00068866-02
Index-2
Index
OS ---| / |--- ..................................................... 12-3 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 OV ---| / |--- ..................................................... 12-2 POS ............................................................... 1-22 Racine carre ................................................... 8-9 Remarques importantes sur l'utilisation de la fonctionnalit MCR .....................................10-13 Repre de saut ................................................. 6-5 Reste de division (32 bits) ............................... 7-11 Retour ...........................................................10-20 ROL_DW .......................................................11-10 ROR_DW ........................................... 11-11, 11-12 Rotation vers la droite d'un double mot ...........11-11 Rotation vers la gauche d'un double mot.......... 11-9 ROUND .......................................................... 3-13 RS.................................................................. 1-14 S_AVERZ ......................................................13-13 S_CD................................................................ 4-7 S_CU................................................................ 4-5 S_CUD ............................................................. 4-3 S_EVERZ ....................................................... 13-9 S_IMPULS...................................................... 13-5 S_ODT ........................................................... 13-9 S_ODTS........................................................13-11 S_OFFDT ......................................................13-13 S_PEXT.......................................................... 13-7 S_PULSE ....................................................... 13-5 S_SEVERZ....................................................13-11 S_VIMP .......................................................... 13-7 Saut l'intrieur d'un bloc si 0 ........................... 6-4 Saut conditionnel .............................................. 6-3 Saut inconditionnel............................................ 6-2
Sauvegarder RLG dans RB ............................. 1-20 SHL_DW......................................................... 11-7 SHL_W .................................................. 11-4, 11-5 SHR_DI ................................................. 11-3, 11-4 SHR_DW ........................................................ 11-8 SHR_I.................................................... 11-2, 11-3 SHR_W .......................................................... 11-6 SIN ................................................................. 8-12 Sinus .............................................................. 8-12 Soustraire entiers de 16 bits .............................. 7-4 Soustraire entiers de 32 bits .............................. 7-8 Soustraire rels ................................................. 8-4 SQR ................................................................. 8-8 SQRT ............................................................... 8-9 SR .................................................................. 1-16 SUB_DI............................................................. 7-8 SUB_I ............................................................... 7-4 SUB_R.............................................................. 8-4 TAN ................................................................ 8-14 Tangente......................................................... 8-14 Tronquer la partie entire.............................. 3-14 TRUNC ........................................................... 3-14 UO ---| |--- .................................................... 12-5 UO ---| / |--- ..................................................... 12-5 Valeur absolue d'un nombre virgule flottante ... 8-7 Valeur exponentielle ........................................ 8-10 Vue d'ensemble................................................. 6-1 WAND_DW ..................................................... 14-5 WAND_W ....................................................... 14-2 WOR_DW ....................................................... 14-6 WOR_W ......................................................... 14-3 WXOR_DW..................................................... 14-7 WXOR_W ....................................................... 14-4 XOR ................................................................. 1-2 Z_RUECK ......................................................... 4-7 Z_VORW .......................................................... 4-5 ZAEHLER ......................................................... 4-3
Index-3
Index
Index-4
Expditeur : Vos Nom : ............................................................................................................................... Fonction : ......................................................................................................................... Entreprise : ................................................................................................................................ Rue :................................................................................................................................... Code postal : ...................................................................................................................... Ville : .................................................................................................................................. Pays : ................................................................................................................................. Tlphone : ........................................................................................................................
Indiquez votre secteur industriel : Industrie automobile Industrie chimique Industrie lectrique Industrie alimentaire Contrle/commande Construction mcanique Ptrochimie Industrie pharmaceutique Traitement des matires plastique Industrie du papier Industrie textile Transports Autres ..................................................
Remarques / suggestions
Remarques / suggestions Vos remarques et suggestions nous permettent d'amliorer la qualit gnrale de notre documentation. C'est pourquoi nous vous serions reconnaissants de complter et de renvoyer ces formulaires Siemens.
Rpondez aux questions suivantes en attribuant une note comprise entre 1 pour trs bien et 5 pour trs mauvais.
1. Le contenu du manuel rpond-il votre attente ? 2. Les informations requises peuvent-elles facilement tre trouves ? 3. Le texte est-il comprhensible ? 4. Le niveau des dtails techniques rpond-il votre attente ? 5. Quelle valuation attribuez-vous aux figures et tableaux ?
o o o o o
Vos remarques et suggestions : .............................................................................................................................................. .............................................................................................................................................. .............................................................................................................................................. .............................................................................................................................................. .............................................................................................................................................. .............................................................................................................................................. .............................................................................................................................................. .............................................................................................................................................. .............................................................................................................................................. .............................................................................................................................................. ..............................................................................................................................................