248
Avant-propos, Sommaire Opérations combinatoires sur bits 1 Opérations de comparaison 2 Opérations de conversion 3 Opérations de comptage 4 Opérations sur blocs de données 5 Opérations de saut 6 Fonctions sur nombres entiers 7 Fonctions sur nombres à virgule flottante 8 Opérations de chargement et de transfert 9 Opérations de gestion d'exécution de programme 10 Opérations de décalage et de rotation 11 Opérations de temporisation 12 Opérations combinatoires sur mots 13 Opérations sur les accumulateurs 14 Annexe Présentation de toutes les opérations LOG A Exemples de programmation B Transmission de paramètres C Index SIMATIC Langage LIST pour SIMATIC S7-300/400 Manuel de référence Ce manuel est livré avec la documentations référencée : 6ES7810-4CA07-8CW1 Edition 01/2004 A5E00261419-01

LangageLIST.pdf

Embed Size (px)

Citation preview

  • Avant-propos,SommaireOprations combinatoiressur bits 1

    Oprations de comparaison 2

    Oprations de conversion 3

    Oprations de comptage 4Oprations sur blocsde donnes 5

    Oprations de saut 6

    Fonctions sur nombres entiers 7Fonctions sur nombres virgule flottante 8Oprations de chargementet de transfert 9Oprations de gestiond'excution de programme 10Oprations de dcalageet de rotation 11

    Oprations de temporisation 12Oprations combinatoiressur mots 13Oprations sur lesaccumulateurs 14

    AnnexePrsentation de toutesles oprations LOG A

    Exemples de programmation B

    Transmission de paramtres CIndex

    SIMATIC

    Langage LIST pourSIMATIC S7-300/400

    Manuel de rfrence

    Ce manuel est livr avecla documentations rfrence :6ES7810-4CA07-8CW1

    Edition 01/2004A5E00261419-01

  • Copyright Siemens AG 2004 Tous droits rservs Exclusion de responsabilit

    Toute communication et reproduction de ce support dinformation,toute exploitation ou communication de son contenu sont interdites,sauf autorisation expresse. Tout manquement cette rgle est illiciteet expose son auteur au versement de dommages et intrts. Tousnos droits sont rservs, notamment pour le cas de la dlivrance d'unbrevet ou celui de l'enregistrement d'un modle d'utilit.

    Siemens AGBereich Automation and DrivesGeschaeftsgebiet Industrial Automation SystemsPostfach 4848, D-90327 Nuernberg

    Nous avons vrifi la conformit du contenu du prsent manuelavec le matriel et le logiciel qui y sont dcrits. Or desdivergences n'tant pas exclues, nous ne pouvons pas nousporter garants pour la conformit intgrale. Si l'usage de cemanuel devait rvler des erreurs, nous en tiendrons compte etapporterons les corrections ncessaires ds la prochainedition. Veuillez nous faire part de vos suggestions.

    Siemens AG 2004Sous rserve de modifications techniques

    Siemens Aktiengesellschaft A5E00261419-01

    Consignes de scuritCe manuel donne des consignes que vous devez respecter pour votre propre scurit ainsi que pourviter des dommages matriels. Elles sont mises en vidence par un triangle d'avertissement et sontprsentes, selon le risque encouru, de la faon suivante :

    ! Dangersignifie que la non-application des mesures de scurit appropries conduit la mort, des lsionscorporelles graves ou un dommage matriel important.

    ! Prcautionsignifie que la non-application des mesures de scurit appropries peut conduire la mort, deslsions corporelles graves ou un dommage matriel important.

    ! Avertissementsignifie que la non-application des mesures de scurit appropries peut conduire des lsionscorporelles lgres.

    Avertissementsignifie que la non-application des mesures de scurit appropries peut conduire un dommagematriel.

    Attentiondoit vous rendre tout particulirement attentif des informations importantes sur le produit, auxmanipulations effectuer avec le produit ou la partie de la documentation correspondante.

    Personnel qualifiLa mise en service et l'utilisation de l'appareil ne doivent tre effectues que conformment au manuel.Seules des personnes qualifies sont autorises effectuer des interventions sur l'appareil. Il s'agit depersonnes qui ont l'autorisation de mettre en service, de mettre la terre et de reprer des appareils,des systmes et circuits lectriques conformment aux rgles de scurit en vigueur.

    Utilisation conformeTenez compte des points suivants :

    ! AttentionL'appareil, le systme ou le composant ne doit tre utilis que pour les applications spcifies dans lecatalogue ou dans la description technique, et exclusivement avec des priphriques et composantsrecommands par Siemens.Le transport, le stockage, le montage, la mise en service ainsi que l'utilisation et la maintenanceadquats de l'appareil sont les conditions indispensables pour garantir son fonctionnement correct etsr.

    Marque de fabriqueSIMATIC, SIMATIC NET et SIMATIC HMI sont des marques dposes par SIEMENS AG.Les autres dsignations dans ce document peuvent tre des marques dont l'utilisation par des tiers leurs propres fins peut enfreindre les droits des propritaires desdites marques.

  • Langage LIST pour SIMATIC S7-300/400 A5E00261419-01 iii

    Avant-propos

    Objet du manuel Ce manuel vous aidera crire des programmes utilisateur en langage LIST. Il contient une partie de rfrence dcrivant la syntaxe et le fonctionnement des lments du langage de programmation LIST.

    Connaissances fondamentales requises Ce manuel s'adresse aux programmeurs souhaitant laborer des programmes S7 ainsi qu'au personnel charg de la mise en service et de la maintenance. La comprhension du manuel requiert des connaissances gnrales dans le domaine de la technique d'automatisation. Nous supposerons en outre des connaissances dans l'utilisation d'ordinateurs ou autres quipements (par exemple consoles de programmation) analogues au PC et des systmes d'exploitation MS Windows 2000 Professional ou MS Windows XP Professional.

    Domaine de validit du manuel Le prsent manuel est valable pour le logiciel STEP 7 V5.3.

    Norme LIST correspond au langage Liste dinstructions 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.

  • Avant-propos

    Langage LIST pour SIMATIC S7-300/400 iv A5E00261419-01

    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 LIST. 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 Objet Numro de rfrence STEP 7 Connaissances fondamentales avec STEP 7 V5.3

    Getting Started Programmer avec STEP 7 V5.3 Configuration matrielle et communication

    dans STEP 7 V5.3 STEP 7

    Pour une transition facile de S5 S7

    Connaissances fondamentales pour le personnel technique. Dcrit la marche suivre pour raliser des tches dautomatisation avec STEP 7 et S7-300/400.

    6ES7810-4CA07-8CW0

    STEP 7 Manuels de rfrence sur les 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-4CA07-8CW1

    Aides en ligne Objet Numro de rfrence Aide de STEP 7 Connaissances fondamentales pour

    la programmation ainsi que pour la configuration du matriel avec STEP 7, sous forme daide en ligne.

    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

    Aides en ligne contextuelles de rfrence

    Fait partie du logiciel STEP 7

  • Avant-propos

    Langage LIST pour SIMATIC S7-300/400 A5E00261419-01 v

    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 LIST". En raison de la structure similaire entre le manuel et laide en ligne, le passage de lun lautre est ais.

    Assistance supplmentaire Si des questions sont restes sans rponse dans ce manuel, veuillez vous adresser votre interlocuteur Siemens dans la filiale ou l'agence de votre rgion. Vous trouvez votre interloculeur sous :

    http://www.siemens.com/automation/partner

    Centre de formation SIMATIC Nous proposons des cours de formation pour vous faciliter l'apprentissage des automates programmables SIMATIC S7. Veuillez vous adresser votre centre de formation rgional ou au centre principal D 90327 Nuremberg. Tlphone : +49 (911) 895-3200. Internet: http://www.sitrain.com

  • Avant-propos

    Langage LIST pour SIMATIC S7-300/400 vi A5E00261419-01

    A&D Technical Support Accessible dans le monde entier toute heure :

    Beijing

    Nurenberg

    Johns on City

    Worldwide (Nuernberg) Technical Support

    Heure locale : 0h 24h / 365 jours Tl. : +49 (180) 5050-222 Fax: +49 (180) 5050-223 E-Mail: adsupport@ siemens.com GMT: +1:00

    Europe / Africa (Nuernberg) Authorization

    Heure locale : lu-ve. 8h 17h Tl. : +49 (180) 5050-222 Fax: +49 (180) 5050-223 E-Mail: adsupport@ siemens.com GMT: +1:00

    United States (Johnson City) Technical Support and Authorization Heure locale : lu-ve 8h 17h Tl. : +1 (423) 262 2522 Fax: +1 (423) 262 2289 E-Mail: simatic.hotline@ sea.siemens.com GMT: -5:00

    Asia / Australia (Beijing) Technical Support and Authorization Heure locale : lu-ve 8h 17h Tl. : +86 10 64 75 75 75 Fax: +86 10 64 74 74 74 E-Mail: adsupport.asia@ siemens.com GMT: +8:00

    Les langues parles au Technical Support et sur la Hotline des autorisations sont gnralement l'Allemand et l'Anglais.

  • Avant-propos

    Langage LIST pour SIMATIC S7-300/400 A5E00261419-01 vii

    Service & Support sur Internet En plus de la documentation offerte, vous trouvez la totalit de notre savoir-faire en ligne sur Internet l'adresse suivante : http://www.siemens.com/automation/service&support Vous y trouvez : le bulletin d'informations qui vous fournit constamment les dernires informations sur le

    produit, les documents dont vous avez besoin l'aide de la fonction de recherche du

    Service & Support, le forum o utilisateurs et spcialistes peuvent changer informations, votre interlocuteur Automation & Drives sur place, des informations sur le service aprs-vente, les rparations, les pices de rechange la

    rubrique "Service".

  • Avant-propos

    Langage LIST pour SIMATIC S7-300/400 viii A5E00261419-01

  • Langage LIST pour SIMATIC S7-300/400A5E00261419-01 ix

    Sommaire

    1 Oprations combinatoires sur bits ...................................................................................... 1-11.1 Vue d'ensemble des oprations combinatoires sur bits........................................... 1-11.2 U ET ..................................................................................................................... 1-31.3 UN ET NON........................................................................................................... 1-41.4 O OU ..................................................................................................................... 1-51.5 ON OU NON.......................................................................................................... 1-61.6 X OU exclusif......................................................................................................... 1-71.7 XN OU NON exclusif ............................................................................................. 1-81.8 O ET avant OU...................................................................................................... 1-91.9 U( ET d'une expression....................................................................................... 1-101.10 UN( ET NON d'une expression ........................................................................... 1-111.11 O( OU d'une expression...................................................................................... 1-121.12 ON( OU NON d'une expression .......................................................................... 1-121.13 X( OU exclusif d'une expression ......................................................................... 1-131.14 XN( OU NON exclusif d'une expression.............................................................. 1-131.15 ) Fermer la parenthse d'une expression............................................................ 1-141.16 = Affectation ........................................................................................................ 1-151.17 R Mettre 0......................................................................................................... 1-161.18 S Mettre 1 ......................................................................................................... 1-171.19 NOT Ngation du RLG........................................................................................ 1-181.20 SET Mettre RLG 1............................................................................................ 1-181.21 CLR Mettre RLG 0............................................................................................ 1-191.22 SAVE Sauvegarder RLG dans le bit RB ............................................................. 1-201.23 FN Front descendant........................................................................................... 1-211.24 FP Front montant ................................................................................................ 1-23

    2 Oprations de comparaison ................................................................................................. 2-12.1 Vue d'ensemble des oprations de comparaison .................................................... 2-12.2 ? I Comparer entiers de 16 bits ............................................................................. 2-22.3 ? D Comparer entiers de 32 bits ........................................................................... 2-32.4 ? R Comparer rels de 32 bits .............................................................................. 2-4

    3 Oprations de conversion .................................................................................................... 3-13.1 Vue d'ensemble des oprations de conversion ....................................................... 3-13.2 BTI Convertir DCB en entier de 16 bits................................................................. 3-23.3 ITB Convertir entier de 16 bits en DCB................................................................. 3-33.4 BTD Convertir DCB en entier de 32 bits ............................................................... 3-43.5 ITD Convertir entier de 16 bits en entier de 32 bits............................................... 3-53.6 DTB Convertir entier de 32 bits en DCB ............................................................... 3-63.7 DTR Convertir entier de 32 bits en rel (VF IEEE 32 bits).................................... 3-73.8 INVI Complment 1 d'entier de 16 bits............................................................... 3-83.9 INVD Complment 1 d'entier de 32 bits ............................................................. 3-9

  • Sommaire

    Langage LIST pour SIMATIC S7-300/400x A5E00261419-01

    3.10 NEGI Complment 2 d'entier de 16 bits........................................................... 3-103.11 NEGD Complment 2 d'entier de 32 bits ......................................................... 3-113.12 NEGR Inverser nombre virgule flottante (VF IEEE 32 bits) ............................. 3-123.13 TAW Modifier l'ordre dans l'accumulateur 1-L (16 bits) ...................................... 3-133.14 TAD Modifier l'ordre dans l'accumulateur 1 (32 bits) .......................................... 3-143.15 RND Arrondir l'entier ........................................................................................ 3-153.16 TRUNC Arrondir par troncature........................................................................... 3-163.17 RND+ Arrondir l'entier suprieur ...................................................................... 3-173.18 RND- Arrondir l'entier infrieur ......................................................................... 3-18

    4 Oprations de comptage....................................................................................................... 4-14.1 Vue d'ensemble des oprations de comptage ......................................................... 4-14.2 FR Valider compteur ............................................................................................. 4-24.3 L Charger valeur de comptage en cours comme entier dans l'accumulateur 1.... 4-34.4 LC Charger valeur de comptage en cours comme nombre DCB

    dans l'accumulateur 1............................................................................................... 4-44.5 R Remettre compteur zro ................................................................................. 4-54.6 S Initialiser compteur............................................................................................. 4-64.7 ZV Incrmenter...................................................................................................... 4-74.8 ZR Dcrmenter.................................................................................................... 4-8

    5 Oprations sur blocs de donnes........................................................................................ 5-15.1 Vue densemble des oprations sur blocs de donnes............................................ 5-15.2 AUF Ouvrir bloc de donnes .................................................................................. 5-25.3 TDB Permuter DB global et DB d'instance............................................................ 5-35.4 L DBLG Charger longueur de DB global dans l'accumulateur 1........................... 5-35.5 L DBNO Charger numro de DB global dans l'accumulateur 1 ............................. 5-45.6 L DILG Charger longueur de DB d'instance dans l'accumulateur 1...................... 5-45.7 L DINO Charger numro de DB d'instance dans l'accumulateur 1....................... 5-5

    6 Oprations de saut ................................................................................................................ 6-16.1 Vue d'ensemble des oprations de saut .................................................................. 6-16.2 SPA Saut inconditionnel........................................................................................ 6-36.3 SPL Saut vers liste ................................................................................................ 6-46.4 SPB Saut si RLG est 1 .......................................................................................... 6-56.5 SPBN Saut si RLG est 0 ....................................................................................... 6-66.6 SPBB Saut si RLG est 1 avec RB......................................................................... 6-76.7 SPBNB Saut si RLG est 0 avec RB ...................................................................... 6-86.8 SPBI Saut si RB est 1 ........................................................................................... 6-96.9 SPBIN Saut si RB est 0....................................................................................... 6-106.10 SPO Saut si DEB est 1........................................................................................ 6-116.11 SPS Saut si DM est 1.......................................................................................... 6-126.12 SPZ Saut si gal 0............................................................................................ 6-136.13 SPN Saut si diffrent de 0 ................................................................................... 6-146.14 SPP Saut si plus.................................................................................................. 6-156.15 SPM Saut si moins .............................................................................................. 6-166.16 SPPZ Saut si suprieur ou gal 0 .................................................................... 6-176.17 SPMZ Saut si infrieur ou gal 0 ..................................................................... 6-186.18 SPU Saut si illicite ............................................................................................... 6-196.19 LOOP Boucle de programme.............................................................................. 6-20

  • Sommaire

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 xi

    7 Fonctions sur nombres entiers ............................................................................................ 7-17.1 Vue d'ensemble des oprations arithmtiques sur nombre entiers ......................... 7-17.2 Evaluation des bits du mot d'tat dans les oprations sur nombres entiers ............ 7-27.3 +I Additionner accumulateurs 1 et 2 (entiers de 16 bits)....................................... 7-37.4 -I Soustraire accumulateur 1 de accumulateur 2 (entiers de 16 bits) .................. 7-47.5 *I Multiplier accumulateur 1 par accumulateur 2 (entiers de 16 bits) ................... 7-57.6 /I Diviser accumulateur 2 par accumulateur 1 (entiers de 16 bits)....................... 7-67.7 + Additionner constante entire (16, 32 bits) ........................................................ 7-77.8 +D Additionner accumulateurs 1 et 2 (entiers de 32 bits) ..................................... 7-97.9 -D Soustraire accumulateur 1 de accumulateur 2 (entiers de 32 bits)............... 7-107.10 *D Multiplier accumulateur 1 par accumulateur 2 (entiers de 32 bits) ............... 7-117.11 /D Diviser accumulateur 2 par accumulateur 1 (entiers de 32 bits) ................... 7-127.12 MOD Reste de division entire (32 bits) ............................................................. 7-13

    8 Fonctions sur nombres virgule flottante.......................................................................... 8-18.1 Vue d'ensemble des oprations arithmtiques sur nombres virgule flottante....... 8-18.2 Evaluation des bits du mot d'tat dans les oprations sur nombres

    virgule flottante ...................................................................................................... 8-28.3 Oprations de base .................................................................................................. 8-38.3.1 +R Additionner accumulateurs 1 et 2 (rels VF IEEE, 32 bits) ............................. 8-38.3.2 -R Soustraire accumulateur 1 d'accumulateur 2 (rels VF IEEE, 32 bits) ........... 8-48.3.3 *R Multiplier accumulateur 1 par accumulateur 2 (rels VF IEEE, 32 bits) ......... 8-58.3.4 /R Diviser accumulateur 2 par accumulateur 1 (rels VF IEEE, 32 bits) .............. 8-68.3.5 ABS Valeur absolue d'un nombre virgule flottante (VF IEEE, 32 bits).............. 8-78.4 Oprations tendues ................................................................................................ 8-88.4.1 SQR Carr d'un nombre virgule flottante (32 bits) ............................................. 8-88.4.2 SQRT Racine carre d'un nombre virgule flottante (32 bits) ............................. 8-98.4.3 EXP Valeur exponentielle d'un nombre virgule flottante (32 bits).................... 8-108.4.4 LN Logarithme naturel d'un nombre virgule flottante (32 bits) ......................... 8-118.4.5 SIN Sinus d'un angle comme nombres virgule flottante (32 bits) .................... 8-128.4.6 COS Cosinus d'un angle comme nombres virgule flottante (32 bits) .............. 8-138.4.7 TAN Tangente d'un angle comme nombres virgule flottante (32 bits)............. 8-148.4.8 ASIN Arc sinus d'un nombre virgule flottante (32 bits)..................................... 8-158.4.9 ACOS Arc cosinus d'un nombre virgule flottante (32 bits) ............................... 8-168.4.10 ATAN Arc tangente d'un nombre virgule flottante (32 bits).............................. 8-17

    9 Oprations de chargement et de transfert .......................................................................... 9-19.1 Vue densemble des oprations de chargement et de transfert .............................. 9-19.2 L Charger............................................................................................................... 9-29.3 L STW Charger mot d'tat dans l'accumulateur 1................................................. 9-39.4 LAR1 Charger contenu de l'accumulateur 1 dans registre d'adresse 1................ 9-49.5 LAR1 Charger pointeur de 32 bits dans registre d'adresse 1 ....................... 9-59.6 LAR1 AR2 Charger contenu du registre d'adresse 2 dans registre d'adresse 1 .. 9-69.7 LAR2 Charger contenu de l'accumulateur 1 dans registre d'adresse 2................ 9-69.8 LAR2 Charger pointeur de 32 bits dans registre d'adresse 2 ....................... 9-79.9 T Transfrer........................................................................................................... 9-89.10 T STW Transfrer accumulateur 1 dans mot d'tat .............................................. 9-99.11 TAR Permuter registre d'adresse 1 avec registre d'adresse 2 ........................... 9-109.12 TAR1 Transfrer registre d'adresse 1 dans l'accumulateur 1............................. 9-109.13 TAR1 Transfrer registre d'adresse 1 l'adresse de destination (32 bits) . 9-109.14 TAR1 AR2 Transfrer registre d'adresse 1 dans registre d'adresse 2 ............... 9-129.15 TAR2 Transfrer registre d'adresse 2 dans l'accumulateur 1............................. 9-129.16 TAR2 Transfrer registre d'adresse 2 l'adresse de destination (32 bits) . 9-13

  • Sommaire

    Langage LIST pour SIMATIC S7-300/400xii A5E00261419-01

    10 Oprations de gestion d'excution de programme.......................................................... 10-110.1 Vue d'ensemble des oprations de gestion d'excution de programme ............... 10-110.2 BE Fin de bloc ..................................................................................................... 10-210.3 BEB Fin de bloc conditionnelle............................................................................ 10-310.4 BEA Fin de bloc inconditionnelle......................................................................... 10-410.5 CALL Appel de bloc............................................................................................. 10-510.6 Appeler FB.............................................................................................................. 10-710.7 Appeler FC ............................................................................................................. 10-910.8 Appeler SFB ......................................................................................................... 10-1010.9 Appeler SFC......................................................................................................... 10-1210.10 Appeler multi-instance.......................................................................................... 10-1310.11 Appeler un bloc dans une bibliothque ................................................................ 10-1310.12 CC Appel de bloc conditionnel .......................................................................... 10-1410.13 UC Appel de bloc inconditionnel ....................................................................... 10-1510.14 Relais de masquage (Master Control Relay, MCR)............................................. 10-1610.15 Remarques importantes sur l'utilisation de la fonctionnalit MCR...................... 10-1810.16 MCR( Sauvegarder RLG dans pile MCR, dbut de zone MCR........................ 10-1910.17 )MCR Fin de zone MCR.................................................................................... 10-2110.18 MCRA Activer la zone MCR.............................................................................. 10-2210.19 MCRD Dsactiver la zone MCR........................................................................ 10-23

    11 Oprations de dcalage et de rotation .............................................................................. 11-111.1 Oprations de dcalage ......................................................................................... 11-111.1.1 Vue d'ensemble des oprations de dcalage ........................................................ 11-111.1.2 SSI Dcalage vers la droite d'un entier avec signe (16 bits)............................... 11-211.1.3 SSD Dcalage vers la droite d'un entier avec signe (32 bits) ............................. 11-311.1.4 SLW Dcalage vers la gauche d'un mot (16 bits) ............................................... 11-511.1.5 SRW Dcalage vers la droite d'un mot (16 bits) ................................................. 11-611.1.6 SLD Dcalage vers la gauche d'un double mot (32 bits) .................................... 11-711.1.7 SRD Dcalage vers la droite d'un double mot (32 bits) ...................................... 11-811.2 Oprations de rotation.......................................................................................... 11-1011.2.1 Vue d'ensemble des oprations de rotation......................................................... 11-1011.2.2 RLD Rotation vers la gauche d'un double mot (32 bits).................................... 11-1011.2.3 RRD Rotation vers la droite d'un double mot (32 bits)...................................... 11-1211.2.4 RLDA Rotation vers la gauche de l'accumulateur 1 via BI1 (32 bits) ............... 11-1311.2.5 RRDA Rotation vers la droite de l'accumulateur 1 via BI1 (32 bits).................. 11-14

    12 Oprations de temporisation.............................................................................................. 12-112.1 Vue d'ensemble des oprations de temporisation ................................................. 12-112.2 Adresse d'une temporisation en mmoire et composants d'une temporisation..... 12-212.3 FR Valider temporisation..................................................................................... 12-512.4 L Charger valeur de temps en cours comme nombre entier

    dans l'accumulateur 1............................................................................................. 12-712.5 LC Charger valeur de temps en cours comme nombre DCB

    dans l'accumulateur 1............................................................................................. 12-812.6 R Remettre temporisation 0 ............................................................................. 12-912.7 SI Temporisation sous forme d'impulsion ......................................................... 12-1012.8 SV Temporisation sous forme d'impulsion prolonge....................................... 12-1112.9 SE Temporisation sous forme de retard la monte ....................................... 12-1312.10 SS Temporisation sous forme de retard la monte mmoris....................... 12-1412.11 SA Temporisation sous forme de retard la retombe .................................... 12-15

  • Sommaire

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 xiii

    13 Oprations combinatoires sur mots.................................................................................. 13-113.1 Vue d'ensemble des oprations combinatoires sur mots....................................... 13-113.2 UW ET mot (16 bits)............................................................................................ 13-213.3 OW OU mot (16 bits)........................................................................................... 13-313.4 XOW OU exclusif mot (16 bits) ........................................................................... 13-413.5 UD ET double mot (32 bits)................................................................................. 13-613.6 OD OU double mot (32 bits)................................................................................ 13-713.7 XOD OU exclusif double mot (32 bits) ................................................................ 13-8

    14 Oprations sur les accumulateurs..................................................................................... 14-114.1 Vue d'ensemble des oprations sur les accumulateurs......................................... 14-114.2 TAK Permuter accumulateur 1 et accumulateur 2 .............................................. 14-214.3 PUSH CPU avec deux accumulateurs................................................................ 14-314.4 PUSH CPU avec quatre accumulateurs .............................................................. 14-414.5 POP CPU avec deux accumulateurs .................................................................. 14-514.6 POP CPU avec quatre accumulateurs................................................................ 14-614.7 ENT Entrer dans pile accumulateur .................................................................... 14-714.8 LEAVE Quitter pile accumulateur........................................................................ 14-714.9 INC Incrmenter accumulateur 1-L-L.................................................................. 14-814.10 DEC Dcrmenter accumulateur 1-L-L............................................................... 14-914.11 AR1 Additionner accumulateur 1 au registre d'adresse 1................................. 14-1014.12 AR2 Additionner accumulateur 1 au registre d'adresse 2................................. 14-1114.13 BLD Opration de composition d'image (opration nulle)................................. 14-1214.14 NOP 0 Opration nulle ...................................................................................... 14-1314.15 NOP 1 Opration nulle ...................................................................................... 14-13

    A Prsentation de toutes les oprations LIST........................................................................A-1A.1 Oprations LIST classes d'aprs les abrviations allemandes (SIMATIC)............A-1A.2 Oprations LIST classes d'aprs les abrviations anglaises (internationales) ......A-7

    B Exemples de programmation ...............................................................................................B-1B.1 Vue d'ensemble des exemples de programmation ..................................................B-1B.2 Exemples : Oprations combinatoires sur bits.........................................................B-2B.3 Exemple : Oprations de temporisation ...................................................................B-5B.4 Exemple : Oprations de comptage et de comparaison ..........................................B-8B.5 Exemple : Oprations arithmtiques sur nombres entiers .....................................B-10B.6 Exemple : Oprations combinatoires sur mots ......................................................B-11

    C Transmission de paramtres................................................................................................C-1

    Index

  • Sommaire

    Langage LIST pour SIMATIC S7-300/400xiv A5E00261419-01

  • Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-1

    1 Oprations combinatoires sur bits

    1.1 Vue d'ensemble des oprations combinatoires sur bits

    DescriptionLes 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 lescontacts 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 combinentselon la logique boolenne. Le rsultat de ces combinaisons est gal 1 ou 0. Il sagit dursultat logique (RLG).Vous disposez des oprations de base suivantes : U ET UN ET NON O OU ON OU NON X OU exclusif XN OU NON exclusif

    Les oprations suivantes permettent de combiner des parties de squence combinatoirefigurant entre parenthses : U( ET d'une expression UN( ET NON d'une expression O( OU d'une expression ON( OU NON d'une expression X( OU exclusif d'une expression XN( OU NON exclusif d'une expression ) Fermer la parenthse d'une expression

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-2 A5E00261419-01

    Les oprations suivantes mettent fin une squence combinatoire : = Affectation R Mettre 0 S Mettre 1

    Les oprations suivantes vous permettent de modifier le rsultat logique RLG : NOT Ngation du RLG SET Mettre RLG 1 CLR Mettre RLG 0 SAVE Sauvegarder RLG dans le bit RB

    Les oprations suivantes dtectent les transitions dans le rsultat logique RLG et yragissent : FN Front descendant FP Front montant

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-3

    1.2 U ET

    FormatU

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D, T, Z

    Description de l'oprationU (ET)Cette opration interroge le bit en accs afin de dterminer si son tat de signal est 1 etcombine le rsultat de l'interrogation au RLG selon la table de vrit ET.Interrogation de l'tat des bits du mot d'tat :L'opration ET vous permet d'interroger directement le mot d'tat. A cet effet, utilisez lesoprandes suivants : ==0, 0, >0, =0,

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-4 A5E00261419-01

    1.3 UN ET NON

    FormatUN

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D, T, Z

    Description de l'oprationUN (ET NON)Cette opration interroge le bit en accs afin de dterminer si son tat de signal est 0 etcombine le rsultat de l'interrogation au RLG selon la table de vrit ET.Interrogation de l'tat des bits du mot d'tat :L'opration ET NON vous permet d'interroger directement le mot d'tat. A cet effet, utilisezles oprandes suivants : ==0, 0, >0, =0,

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-5

    1.4 O OU

    FormatO

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D, T, Z

    Description de l'oprationO (OU)Cette opration interroge le bit en accs afin de dterminer si son tat de signal est 1 etcombine le rsultat de l'interrogation au RLG selon la table de vrit OU.Interrogation de l'tat des bits du mot d'tat :L'opration OU vous permet d'interroger directement le mot d'tat. A cet effet, utilisez lesoprandes suivants : ==0, 0, >0, =0,

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-6 A5E00261419-01

    1.5 ON OU NON

    FormatON

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D, T, Z

    Description de l'oprationON (OU NON)Cette opration interroge le bit en accs afin de dterminer si son tat de signal est 0 etcombine le rsultat de l'interrogation au RLG selon la table de vrit OU.Interrogation de l'tat des bits du mot d'tat :L'opration OU NON vous permet aussi d'interroger directement le mot d'tat. A cet effet,utilisez les oprandes suivants : ==0, 0, >0, =0,

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-7

    1.6 X OU exclusif

    FormatX

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D, T, Z

    Description de l'oprationX (OU exclusif)Cette opration interroge le bit en accs afin de dterminer si son tat de signal est 1, etcombine le rsultat de cette interrogation au RLG selon la table de vrit OU exclusif.Vous avez galement la possibilit d'appliquer plusieurs fois d'affile l'opration OU exclusif.Le RLG global sera alors gal "1", lorsqu'un nombre impair des oprandes interrogsfournit le rsultat "1".Interrogation de l'tat des bits du mot d'tat :L'opration OU exclusif vous permet aussi d'interroger directement le mot d'tat. A cet effet,utilisez les oprandes suivants : ==0, 0, >0, =0,

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-8 A5E00261419-01

    1.7 XN OU NON exclusif

    FormatXN

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D, T, Z

    Description de l'oprationXN (OU NON exclusif)Cette opration interroge le bit en accs afin de dterminer si son tat de signal est 0, etcombine le rsultat de cette interrogation au RLG selon la table de vrit OU exclusif.Interrogation de l'tat des bits du mot d'tat :L'opration OU NON exclusif vous permet aussi d'interroger directement le mot d'tat. A ceteffet, utilisez les oprandes suivants : ==0, 0, >0, =0,

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-9

    1.8 O ET avant OU

    FormatO

    Description de l'oprationOCette opration excute, selon le principe ET avant OU, la combinaison OU sur descombinaisons ET.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - x 1 - x

    Exemple

    Programme LIST Schma de circuit relais

    Barre dalimentation

    E 0.0

    A 4.0Bobine

    M 10.0

    M 10.1

    M 0.3

    E 0.2

    U E 0.0

    U M 10.0

    = A 4.0

    U E 0.2U M 0.3

    O M 10.1

    O

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-10 A5E00261419-01

    1.9 U( ET dune expression

    FormatU(

    Description de l'oprationU( (ET dune expression)Cette opration sauvegarde les bits RLG et OU ainsi qu'un code d'opration dans la pile desparenthses. La piles des parenthses peut contenir jusqu' 7 entres.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 1 - 0

    Exemple

    Programme LIST

    U(O E 0.0O M 10.0)

    = A 4.0

    Schma de circuit relais

    Barre dalimentation

    E 0.0

    A 4.0Bobine

    E 0.2

    U M 10.1 M 10.1

    M 10.0

    M 10.3

    U(O E 0.2O M 10.3)

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-11

    1.10 UN( ET NON dune expression

    FormatUN(

    Description de l'oprationUN( (ET NON dune expression)Cette opration sauvegarde les bits RLG et OU ainsi qu'un code d'opration dans la pile desparenthses. La pile des parenthses peut contenir jusqu' 7 entres.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 1 - 0

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-12 A5E00261419-01

    1.11 O( OU dune expression

    FormatO(

    Description de l'oprationO( (OU dune expression)Cette opration sauvegarde les bits RLG et OU ainsi qu'un code d'opration dans la pile desparenthses. La pile des parenthses peut contenir jusqu' 7 entres.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 1 - 0

    1.12 ON( OU NON dune expression

    FormatON(

    Description de l'oprationON( (OU NON dune expression)Cette opration sauvegarde les bits RLG et OU ainsi qu'un code d'opration dans la pile desparenthses. La pile des parenthses peut contenir jusqu' 7 entres.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 1 - 0

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-13

    1.13 X( OU exclusif dune expression

    FormatX(

    Description de l'oprationX( (OU exclusif dune expression)Cette opration sauvegarde les bits RLG et OU ainsi qu'un code d'opration dans la pile desparenthses. La pile des parenthses peut contenir jusqu' 7 entres.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 1 - 0

    1.14 XN( OU NON exclusif dune expression

    FormatXN(

    Description de l'oprationXN( (OU NON exclusif dune expression)Cette opration sauvegarde les bits RLG et OU ainsi qu'un code d'opration dans la pile desparenthses. La pile des parenthses peut contenir jusqu' 7 entres.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 1 - 0

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-14 A5E00261419-01

    1.15 ) Fermer la parenthse d'une expression

    Format)

    Description de l'opration) (Fermer la parenthse d'une expression)Cette opration efface une entre de la pile des parenthses, restaure le bit OU, combine lebit RLG contenu dans l'entre de la pile au RLG en cours conformment au code d'oprationet affecte le rsultat au RLG. S'il s'agit d'une opration ET ou ET NON, celle-ci tientgalement compte du bit OU.Oprations ouvrant une expression entre parenthses : U( ET d'une expression UN( ET NON d'une expression O( OU d'une expression ON( OU NON d'une expression X( OU exclusif d'une expression XN( OU NON exclusif d'une expression

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - x 1 x 1

    Exemple

    Programme LIST

    U(O E 0.0O M 10.0)

    = A 4.0

    Schma de circuit relais

    Barre dalimentation

    E 0.0

    A 4.0Bobine

    E 0.2

    U M 10.1 M 10.1

    M 10.0

    M 10.3

    U(O E 0.2O M 10.3)

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-15

    1.16 = Affectation

    Format=

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D

    Description de l'opration= Cette opration sauvegarde le RLG dans le bit en accs si le relais de masquage (MasterControl Relay) est en fonction (MCR = 1). Si le relais MCR gale 0, c'est la valeur 0 et non leRLG qui est crite dans le bit.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 x - 0

    Exemple

    Schma de circuit relaisProgramme LIST

    Schma des tats de signaux

    Barre dalimentation

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-16 A5E00261419-01

    1.17 R Mettre 0

    FormatR

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D

    Description de l'oprationR (Mettre 0)Cette opration crit la valeur 0 dans le bit en accs si le RLG gale 1 et si le relais demasquage (Master Control Relay) est en fonction (MCR = 1). Si le relais MCR gale 0, le bitindiqu n'est pas modifi.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 x - 0

    Exemple

    Schma de circuit relaisBarre dalimentation

    E 1.0Contact fermeture

    A 4.0Bobines

    A 4.0

    Programme LISTU E 1.0S A 4.0U E 1.1R A 4.0

    E 1.0

    E 1.1

    A 4.0

    01

    01

    01

    Schmas des tats de signaux

    E 1.1

    Contact ouverture

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-17

    1.18 S Mettre 1

    FormatS

    Oprande Type de donnes Zone de mmoire BOOL E, A, M, L, D

    Description de l'oprationS (Mettre 1)Cette opration crit la valeur 1 dans le bit en accs si le RLG gale 1 et si le relais demasquage (Master Control Relay) est en fonction (MCR = 1). Si le relais MCR gale 0, le bitindiqu n'est pas modifi.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture :

    Exemple

    Schma de circuit relaisBarre dalimentation

    E 1.0Contact fermeture

    A 4.0Bobines

    A 4.0

    Programme LISTU E 1.0S A 4.0U E 1.1R A 4.0

    E 1.0

    E 1.1

    A 4.0

    01

    01

    01

    Schmas des tats de signaux

    E 1.1

    Contact ouverture

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-18 A5E00261419-01

    1.19 NOT Ngation du RLG

    FormatNOT

    Description de l'oprationNOTCette opration inverse le RLG.

    Mot d'tat

    RB BI1 BI0 DEB DM OU ETAT RLG /PI

    Ecriture : - - - - - - 1 x -

    1.20 SET Mettre RLG 1

    FormatSET

    Description de l'oprationSET (Mettre RLG 1)Cette opration met le RLG l'tat de signal 1.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 1 1 0

    Exemple

    Programme LIST Etat de signal Rsultat logique (RLG)SET= M 10.0= M 15.1= M 16.0CLR

    = M 10.1= M 10.2

    1

    0

    111

    00

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-19

    1.21 CLR Mettre RLG 0

    FormatCLR

    Description de l'oprationCLR (Mettre RLG 0)Cette opration met le RLG l'tat de signal 0.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 0 0 0

    Exemple

    Programme LIST Etat de signal Rsultat logique (RLG)SET= M 10.0= M 15.1= M 16.0CLR

    = M 10.1= M 10.2

    1

    0

    111

    00

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-20 A5E00261419-01

    1.22 SAVE Sauvegarder RLG dans le bit RB

    FormatSAVE

    Description de l'oprationSAVE (Sauvegarder RLG dans le bit RB)Cette opration sauvegarde le RLG dans le bit RB, le bit de premire interrogation /PIntant pas remis 0.Pour cette raison, une combinaison ET dans le rseau suivant prend en compte ltat du bitRB.

    L'utilisation de l'opration SAVE suivie d'une interrogation du bit RB dans le mme bloc oudans un bloc subordonn n'est pas recommande, le bit RB pouvant tre modifi par ungrand nombre d'oprations intermdiaires. Il est par contre judicieux d'utiliser l'oprationSAVE avant de quitter un bloc, car ainsi la sortie ENO (= bit RB) prend la valeur du bit RLG,ce qui vous permet ensuite de poursuivre par un traitement des erreurs du bloc.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : x - - - - - - - -

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-21

    1.23 FN Front descendant

    FormatFN

    Oprande Type dedonnes

    Zone demmoire

    Description

    BOOL E, A, M, L, D Mmento de front, sauvegarde l'tat designal prcdent du RLG

    Description de l'oprationFN (Front descendant)Cette opration permet de dtecter un front descendant si le RLG passe de 1 0, et donne1 comme rsultat.Au cours de chaque cycle de programme, l'tat de signal du bit RLG est compar l'tat designal du bit RLG du cycle prcdent pour dterminer toute modification de l'tat. Pour quela comparaison s'excute, l'tat de signal du bit RLG prcdent doit tre sauvegard dansl'adresse du mmento de front (). Si l'tat de signal en cours diffre de l'tat de signalprcdent (1 ; dtection d'un front descendant), le bit RLG gale 1 aprs cette opration.

    NotaLorsque le bit contrler se trouve dans la mmoire image, cette opration n'est passignificative. En effet, les donnes locales d'un bloc ne sont valides que pendant la dured'excution de ce bloc.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 x x 1

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-22 A5E00261419-01

    Dfinition

    RLG

    0

    Front montant Front descendant

    Temps

    1

    ExempleLorsque l'automate programmable dtecte un front descendant au contact E 1.0, il active lasortie A 4.0 pour un cycle d'OB1.

    Schma des tats de signauxProgramme LIST

    1 2 3 4 5 6 7 8 9

    101010

    E 1.0

    M 1.0

    A 4.0

    U E 1.0

    FN M 1.0

    = A 4.0

    Cycle OB1 n :

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 1-23

    1.24 FP Front montant

    FormatFP

    Oprande Type dedonnes

    Zone demmoire

    Description

    BOOL E, A, M, L, D Mmento de front, sauvegarde l'tat designal prcdent du RLG

    Description de l'oprationFP (Front montant)Cette opration permet de dtecter un front montant si le RLG passe de 0 1, et donne 1comme rsultat.Au cours de chaque cycle de programme, l'tat de signal du bit RLG est compar l'tat designal du bit RLG du cycle prcdent pour dterminer toute modification de l'tat. Pour quela comparaison s'excute, l'tat de signal du bit RLG prcdent doit tre sauvegard dansl'adresse du mmento de front (). Si l'tat de signal en cours diffre de l'tat de signalprcdent (0 ; dtection d'un front montant), le bit RLG gale 1 aprs cette opration.

    NotaLorsque le bit contrler se trouve dans la mmoire image, cette opration n'est passignificative. En effet, les donnes locales d'un bloc ne sont valides que pendant la dured'excution de ce bloc.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 x x 1

  • Oprations combinatoires sur bits

    Langage LIST pour SIMATIC S7-300/4001-24 A5E00261419-01

    Dfinition

    RLG

    0

    Front montant Front descendant

    Temps

    1

    ExempleLorsque l'automate programmable dtecte un front montant au contact E 1.0, il active lasortie A 4.0 pour un cycle d'OB1.

    1 2 3 4 5 6 7 8 9

    101010

    E 1.0

    M 1.0

    A 4.0

    U E 1.0

    FP M 1.0

    = A 4.0

    Cycle OB1 n :

    Schma des tats de signauxProgramme LIST

  • Langage LIST pour SIMATIC S7-300/400A5E00261419-01 2-1

    2 Oprations de comparaison

    2.1 Vue d'ensemble des oprations de comparaison

    DescriptionLes oprations de comparaison comparent le contenu de l'accumulateur 2 celui del'accumulateur 1 selon les types de comparaison suivants :== ACCU 2 est gal ACCU 1 ACCU 2 est diffrent de ACCU 1> ACCU 2 est suprieur ACCU 1< ACCU 2 est infrieur ACCU 1>= ACCU 2 est suprieur ou gal ACCU 1

  • Oprations de comparaison

    Langage LIST pour SIMATIC S7-300/4002-2 A5E00261419-01

    2.2 ? I Comparer entiers de 16 bits

    Format==I, I, >I, =I, ACCU 1

    RLG siACCU 2 = ACCU 1

    RLG siACCU 2 < ACCU 1

    ==I 0 1 0I 1 0 1>I 1 0 0=I 1 1 0I //Comparer si accumulateur 2-L (MW10) suprieur (>) accumulateur 1-L

    (EW24).= M 2.0 //Le RLG gale 1 si MW10 > EW24.

  • Oprations de comparaison

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 2-3

    2.3 ? D Comparer entiers de 32 bits

    Format==D, D, >D, =D, ACCU 1

    RLG siACCU 2 = ACCU 1

    RLG siACCU 2 < ACCU 1

    ==D 0 1 0D 1 0 1>D 1 0 0=D 1 1 0D //Comparer si accumulateur 2 (MD10) suprieur (>) accumulateur 1 (ED24).= M 2.0 //Le RLG gale 1 si MD10 > ED24.

  • Oprations de comparaison

    Langage LIST pour SIMATIC S7-300/4002-4 A5E00261419-01

    2.4 ? R Comparer rels de 32 bits

    Format==R, R, >R, =R, ) l'accumulateur 1

    (1.359E+02).= M 2.0 //Le RLG gale 1 si MD10 > 1.359E+02.

  • Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-1

    3 Oprations de conversion

    3.1 Vue d'ensemble des oprations de conversion

    DescriptionLes oprations suivantes permettent de convertir des nombres dcimaux cods binaires etdes nombres entiers en dautres types de nombres : BTI Convertir DCB en entier de 16 bits ITB Convertir entier de 16 bits en DCB BTD Convertir DCB en entier de 32 bits ITD Convertir entier de 16 bits en entier de 32 bits DTB Convertir entier de 32 bits en DCB DTR Convertir entier de 32 bits en rel (VF IEEE 32 bits)

    Les oprations suivantes permettent de former le complment de nombres entiers ou deraliser linversion de nombres virgule flottante : INVI Complment 1 d'entier de 16 bits INVD Complment 1 d'entier de 32 bits NEGI Complment 2 d'entier de 16 bits NEGD Complment 2 d'entier de 32 bits NEGR Inverser nombre virgule flottante (VF IEEE 32 bits)

    Les oprations suivantes permettent de modifier lordre des octets dans le mot de poidsfaible de laccumulateur 1 ou dans laccumulateur 1 entier : TAW Modifier l'ordre dans l'accumulateur 1-L (16 bits) TAD Modifier l'ordre dans l'accumulateur 1 (32 bits)

    Les oprations suivantes permettent de convertir le nombre virgule flottante IEEE de32 bits figurant dans laccumulateur 1 en un nombre entier de 32 bits (entier double). Lesdiffrentes oprations se distinguent par leur faon darrondir : RND Arrondir l'entier TRUNC Arrondir par troncature RND+ Arrondir l'entier suprieur RND- Arrondir l'entier infrieur

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-2 A5E00261419-01

    3.2 BTI Convertir DCB en entier de 16 bits

    FormatBTI

    Description de l'oprationBTI (Conversion en nombre entier d'un nombre dcimal cod binaire trois chiffres)Cette opration value le contenu de l'accumulateur 1-L comme nombre dcimal codbinaire (nombre DCB) trois chiffres et le convertit en un nombre entier de 16 bits. Lersultat de la conversion est rang dans l'accumulateur 1-L. L'accumulateur 1-H etl'accumulateur 2 restent inchangs.Nombre DCB contenu dans laccumulateur 1-L : ce nombre DCB peut tre compris entre-999 et +999. Les bits 0 11 indiquent la valeur et le bit 15 le signe (0 = positif, 1 = ngatif)du nombre DCB. Les bits 12 14 ne sont pas utiliss pour la conversion. Si un chiffredcimal (une ttrade de 4 bits dans la reprsentation DCB) est compris dans la plageincorrecte de 10 15, une erreur BCDF est signale lors de la tentative de conversion. Engnral, l'automate programmable passe alors l'tat de fonctionnement "Arrt" (STOP).Cependant, l'OB121 vous permet de programmer une autre raction cette erreursynchrone.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL MW10 //Charger le nombre DCB dans laccumulateur 1-L.BTI //Convertir le nombre DCB en un nombre entier et ranger le rsultat dans

    l'accumulateur 1-L.T MW20 //Transfrer le rsultat (nombre entier de 16 bits) dans le mot de mmento

    MW20.

    1010100010010000

    1100100111000000

    BTI Convertir DCB en entier+915 DCB

    15... ...8 7... ...0

    " + " " 9 " " 1 " " 5 "

    MW10

    +915 nombre entierMW20

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-3

    3.3 ITB Convertir entier de 16 bits en DCB

    FormatITB

    Description de l'oprationITB (Convertir entier de 16 bits en DCB)Cette opration value le contenu de l'accumulateur 1-L comme nombre entier de 16 bits etle convertit en un nombre dcimal cod binaire (nombre DCB) trois chiffres. Le rsultat estrang dans l'accumulateur 1-L. Les bits 0 11 indiquent la valeur du nombre DCB. Les bits12 15 contiennent l'tat du signe du nombre DCB (0000 = positif, 1111 = ngatif).L'accumulateur 1-H et l'accumulateur 2 restent inchangs.Le nombre DCB peut tre compris entre -999 et +999. S'il se situe hors de la plage correcte,les bits d'tat DEB et DM sont mis 1.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - x x - - - -

    ExempleLIST ExplicationL MW10 //Charger lentier dans laccumulateur 1-L.ITB //Convertir l'entier de 16 bits en un nombre DCB et ranger le rsultat

    dans l'accumulateur 1-L.T MW20 //Transfrer le rsultat (nombre DCB) dans le mot de mmento MW20.

    1100011001111111

    1100100000101111

    ITB Convertir entier de 16 bits en DCB-413 nombre entier

    15... ...8 7... ...0MW10

    -413 DCBMW20

    " - " " 4 " " 1 " " 3 "

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-4 A5E00261419-01

    3.4 BTD Convertir DCB en entier de 32 bits

    FormatBTD

    Description de l'oprationBTD (Conversion en nombre entier d'un nombre dcimal cod binaire sept chiffres)Cette opration value le contenu de l'accumulateur 1 comme nombre dcimal cod binaire(nombre DCB) sept chiffres et le convertit en un nombre entier de 32 bits. Le rsultat de laconversion est rang dans l'accumulateur 1. L'accumulateur 2 reste inchang.Nombre DCB contenu dans laccumulateur 1 : ce nombre DCB peut tre compris entre -9999 999 et +9 999 999. Les bits 0 27 indiquent la valeur et le bit 31 le signe (0 = positif,1 = ngatif) du nombre DCB. Les bits 28 30 ne sont pas utiliss pour la conversion.Si un chiffre dcimal (une ttrade de 4 bits dans la reprsentation DCB) est compris dans laplage incorrecte de 10 15, une erreur BCDF est signale lors de la tentative de conversion.En gnral, l'automate programmable passe alors l'tat de fonctionnement "Arrt" (STOP).Cependant, l'OB121 vous permet de programmer une autre raction cette erreursynchrone.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL MD10 //Charger le nombre DCB dans laccumulateur 1.BTD //Convertir le nombre DCB en un nombre entier et ranger le rsultat dans

    l'accumulateur 1.T MD20 //Transfrer le rsultat (nombre entier de 32 bits) dans le double mot de

    mmento MD20.

    BTD Convertir DCB en entier "+157821"

    31... ...16 15... ...0

    " + " " 0 " " 1 " " 5 "

    MD10

    "+157821"

    MD20

    1010100000000000 1000010000011110

    " 7 " " 8 " " 2 " " 1 "

    0100000000000000 1011111000010110

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-5

    3.5 ITD Convertir entier de 16 bits en entier de 32 bits

    FormatITD

    Description de l'oprationITD (Convertir entier de 16 bits en entier de 32 bits)Cette opration value le contenu de l'accumulateur 1-L comme nombre entier de 16 bits etle convertit en un nombre entier de 32 bits. Le rsultat est rang dans l'accumulateur 1 ;l'accumulateur 2 reste inchang.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL MW12 //Charger lentier de 16 bits dans laccumulateur 1.ITD //Convertir lentier de 16 bits en un entier de 32 bits et ranger le

    rsultat dans l'accumulateur 1.T MD20 //Transfrer le rsultat (nombre entier de 32 bits) dans le double mot de

    mmento MD20.

    Exemple : MW12 = "-10" (nombre entier de 16 bits)

    Contenu ACCU1-H ACCU1-LBit 31 . . . . . . . . . . 16 15 . . . . . . . . . . 0avant excution de ITD XXXX XXXX XXXX XXXX 1111 1111 1111 0110aprs excution de ITD 1111 1111 1111 1111 1111 1111 1111 0110

    (X = 0 ou 1, bits non requis pour la conversion)

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-6 A5E00261419-01

    3.6 DTB Convertir entier de 32 bits en DCB

    FormatDTB

    Description de l'oprationDTB (Conversion dun nombre entier de 32 bits en nombre DCB)Cette opration value le contenu de l'accumulateur 1 comme nombre entier de 32 bits et leconvertit en un nombre dcimal cod binaire (nombre DCB) sept chiffres. Le rsultat estrang dans l'accumulateur 1. Les bits 0 27 indiquent la valeur du nombre DCB.Les bits 28 31 reprsentent l'tat du signe du nombre DCB (0000 = positif, 1111 = ngatif).L'accumulateur 2 reste inchang.Le nombre DCB peut tre compris entre -9 999 999 et +9 999 999. S'il se situe hors de laplage correcte, les bits d'tat DEB et DM sont mis 1.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - x x - - - -

    ExempleLIST ExplicationL MD10 //Charger lentier de 32 bits dans laccumulateur 1.DTB //Convertir lentier de 32 bits en un nombre DCB et ranger le rsultat

    dans l'accumulateur 1.T MD20 //Transfrer le rsultat (nombre DCB) dans le double mot de mmento MD20.

    DTB Convertir entier de 32 bits en DCB -701 nombre entier

    31... ...16 15... ...0MD10

    -701 DBC

    MD20

    1111111111111111 1100001010111111

    " - " " 0 " " 0 " " 0 " " 0 " " 7 " " 0 " " 1 "

    0000000000001111 1000000011100000

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-7

    3.7 DTR Convertir entier de 32 bits en rel (VF IEEE 32 bits)

    FormatDTR

    Description de l'oprationDTR (Conversion dun nombre entier de 32 bits en nombre virgule flottante IEEE de32 bits)Cette opration value le contenu de l'accumulateur 1 comme nombre entier de 32 bits et leconvertit en nombre virgule flottante IEEE de 32 bits. Si ncessaire, l'opration arrondit lersultat (un entier de 32 bits a une plus grande prcision qu'un nombre virgule flottanteIEEE de 32 bits). Le rsultat est rang dans l'accumulateur 1.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL MD10 //Charger lentier de 32 bits dans laccumulateur 1.DTR //Convertir lentier de 32 bits en un nombre virgule flottante IEEE de

    32 bits et ranger le rsultat dans l'accumulateur 1.T MD20 //Transfrer le rsultat (nombre DCB) dans le double mot de mmento MD20.

    DTRConvertir entier de 32 bits en nombre

    virgule flottante de de 32 bits+500 nombre entier

    31 ...0

    MD10

    +500 VF IEEE

    MD20

    0000000000000000 0010111110000000

    1 bitSigne de la mantisse

    Exposant de 8 bits

    0101111111000010 000000000000000030... 22...

    Mantisse de 23 bits

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-8 A5E00261419-01

    3.8 INVI Complment 1 d'entier de 16 bits

    FormatINVI

    Description de l'oprationINVI (Complment 1 d'entier de 16 bits)Cette opration forme le complment 1 de la valeur de 16 bits figurant dans l'accumulateur1- L. Lors de la formation du complment 1, les bits individuels sont inverss, c'est--direque les zros sont remplacs par des uns et les uns par des zros. Le rsultat est rangdans l'accumulateur 1-L.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL EW8 //Charger la valeur dans laccumulateur 1-L.INVI //Former le complment 1 (16 bits).T MW10 //Transfrer le rsultat dans le mot de mmento MW10.

    Contenu ACCU1-LBit 15 . . . . . . . . . . 0avant excution de INVI 0110 0011 1010 1110aprs excution de INVI 1001 1100 0101 0001

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-9

    3.9 INVD Complment 1 d'entier de 32 bits

    FormatINVD

    Description de l'oprationINVD (Complment 1 d'entier de 32 bits)Cette opration forme le complment 1 de la valeur de 32 bits figurant dansl'accumulateur 1. Lors de la formation du complment 1, les bits individuels sont inverss,c'est--dire que les zros sont remplacs par des uns et les uns par des zros. Le rsultatest rang dans l'accumulateur 1.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL ED8 //Charger la valeur dans laccumulateur 1.INVD //Former le complment 1 (32 bits).T MD10 //Transfrer le rsultat dans le double mot de mmento MD10.

    Contenu ACCU1-H ACCU1-LBit 31 . . . . . . . . . . 16 15 . . . . . . . . . . 0avant excution de INVD 0110 1111 1000 1100 0110 0011 1010 1110aprs excution de INVD 1001 0000 0111 0011 1001 1100 0101 0001

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-10 A5E00261419-01

    3.10 NEGI Complment 2 d'entier de 16 bits

    FormatNEGI

    Description de l'oprationNEGI (Complment 2 d'entier de 16 bits)Cette opration forme le complment 2 de la valeur de 16 bits figurant dans l'accumulateur1-L. Lors de la formation du complment 2, les bits individuels sont inverss, c'est--direque les zros sont remplacs par des uns et les uns par des zros, puis on ajoute la valeur1. Le rsultat est rang dans l'accumulateur 1-L. L'opration "Complment 2 d'entier" estquivalente une multiplication par -1. Les bits d'tat BI1, BI0, DM et DEB sont mis 1comme rsultat de l'opration.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - x x x x - - - -

    Formation des bits d'tat BI1 BI0 DEB DMrsultat = 0 0 0 0 --32768 = 1 1 0 0 -rsultat = 2768 0 1 1 1

    ExempleLIST ExplicationL EW8 //Charger la valeur dans laccumulateur 1-L.NEGI //Former le complment 2 (16 bits).T MW10 //Transfrer le rsultat dans le mot de mmento MW10.

    Contenu ACCU1-LBit 15 . . . . . . . . . . 0avant excution de NEGI 0101 1101 0011 1000aprs excution de NEGI 1010 0010 1100 1000

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-11

    3.11 NEGD Complment 2 d'entier de 32 bits

    FormatNEGD

    Description de l'oprationNEGD (Complment 2 d'entier de 32 bits)Cette opration forme le complment 2 de la valeur de 32 bits figurant dansl'accumulateur 1. Lors de la formation du complment 2, les bits individuels sont inverss,c'est--dire que les zros sont remplacs par des uns et les uns par des zros, puis onajoute la valeur 1. Le rsultat est rang dans l'accumulateur 1. L'opration "Complment 2 d'entier" est quivalente une multiplication par -1. Les bits d'tat BI1, BI0, DM et DEBsont mis 1 comme rsultat de l'opration.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - x x x x - - - -

    Formation des bits d'tat BI1 BI0 DEB DMrsultat = 0 0 0 0 --2 147 483 648 = 1 1 0 0 -rsultat = 2 147 483 648 0 1 1 1

    ExempleLIST ExplicationL ED8 //Charger la valeur dans laccumulateur 1.NEGD //Former le complment 2 (32 bits).T MD10 //Transfrer le rsultat dans le double mot de mmento MD10.

    Contenu ACCU1-H ACCU1-LBit 31 . . . . . . . . . . 16 15 . . . . . . . . . . 0avant excution de NEGD 0101 1111 0110 0100 0101 1101 0011 1000aprs excution de NEGD 1010 0000 1001 1011 1010 0010 1100 1000

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-12 A5E00261419-01

    3.12 NEGR Inverser nombre virgule flottante (VF IEEE 32 bits)

    FormatNEGR

    Description de l'oprationNEGR (Inverser nombre virgule flottante)Cette opration inverse le nombre virgule flottante IEEE de 32 bits figurant dansl'accumulateur 1. Elle inverse l'tat du bit 31 contenu dans l'accumulateur 1 (signe de lamantisse). Le rsultat est rang dans l'accumulateur 1.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL ED8 //Charger la valeur dans laccumulateur 1 (exemple : ED8 = 1.5E+02).NEGR //Inverser le nombre virgule flottante IEEE de 32 bits et ranger le

    rsultat dans l'accumulateur 1.T MD10 //Transfrer le rsultat dans le double mot de mmento MD10 (exemple :

    rsultat = -1.5E+02).

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-13

    3.13 TAW Modifier lordre dans laccumulateur 1-L (16 bits)

    FormatTAW

    Description de l'oprationTAW

    Cette opration permet d'inverser l'ordre des octets dans l'accumulateur 1-L. Le rsultat estrang dans l'accumulateur 1-L. L'accumulateur 1-H et l'accumulateur 2 restent inchangs.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL MW10 //Charger la valeur du mot de mmento MW10 dans l'accumulateur 1.TAW //Inverser l'ordre des octets dans l'accumulateur 1-L.T MW20 //Transfrer le rsultat dans le mot de mmento MW20.

    Contenu ACCU 1-H-H ACCU 1-H-L ACCU 1-L-H ACCU 1-L-Lavant excution de TAW valeur A valeur B valeur C valeur Daprs excution de TAW valeur A valeur B valeur D valeur C

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-14 A5E00261419-01

    3.14 TAD Modifier lordre dans laccumulateur 1 (32 bits)

    FormatTAD

    Description de l'oprationTAD

    Cette opration permet d'inverser l'ordre des octets dans l'accumulateur 1. Le rsultat estrang dans l'accumulateur 1 ; l'accumulateur 2 reste inchang.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL MD10 //Charger la valeur du double mot de mmento MD10 dans l'accumulateur 1.TAD //Inverser l'ordre des octets dans l'accumulateur 1.T MD20 //Transfrer le rsultat dans le double mot de mmento MD20.

    Contenu ACCU 1-H-H ACCU 1-H-L ACCU 1-L-H ACCU 1-L-Lavant excution de TAD valeur A valeur B valeur C valeur Daprs excution de TAD valeur D valeur C valeur B valeur A

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-15

    3.15 RND Arrondir l'entier

    FormatRND

    Description de l'oprationRND (Conversion d'un nombre virgule flottante IEEE de 32 bits en entier de 32 bits)Cette opration value le contenu de l'accumulateur 1 comme nombre virgule flottanteIEEE de 32 bits, le convertit en un nombre entier de 32 bits et arrondit le rsultat au nombreentier le plus proche. Si la partie fractionnaire du nombre converti se situe exactement entreun rsultat pair et un rsultat impair, l'opration choisit le rsultat pair. Si le nombre est horsde la plage correcte, les bits d'tat DEB et DM sont mis 1.Si le nombre n'est pas un nombre virgule flottante ou est un nombre virgule flottante quine peut pas tre reprsent comme entier de 32 bits, la conversion n'a pas lieu et undbordement est signal.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - x x - - - -

    ExempleLIST ExplicationL MD10 //Charger dans l'accumulateur 1 le nombre virgule flottante IEEE de

    32 bits.RND //Convertir le nombre virgule flottante IEEE de 32 bits en un nombre

    entier de 32 bits et arrondir au nombre entier le plus proche. Ranger lersultat dans l'accumulateur 1.

    T MD20 //Transfrer le rsultat (entier de 32 bits) dans le double mot de mmentoMD20.

    Valeur avant la conversion Valeur aprs la conversionMD10 = "100.5" => RND => MD20 = "+100"MD10 = "-100.5" => RND => MD20 = "-100"

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-16 A5E00261419-01

    3.16 TRUNC Arrondir par troncature

    FormatTRUNC

    Description de l'oprationTRUNC (Conversion d'un nombre virgule flottante IEEE de 32 bits en nombre entier de32 bits)Cette opration value le contenu de l'accumulateur 1 comme nombre virgule flottanteIEEE de 32 bits et le convertit en un nombre entier de 32 bits. Le rsultat correspond lapartie entire du nombre virgule flottante converti (mode d'arrondi IEEE "arrondi zro").Si le nombre est hors de la plage correcte, les bits d'tat DEB et DM sont mis 1. Le rsultatest rang dans l'accumulateur 1.Si le nombre n'est pas un nombre virgule flottante ou est un nombre virgule flottante quine peut pas tre reprsent comme entier de 32 bits, la conversion n'a pas lieu et undbordement est signal.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - x x - - - -

    ExempleLIST ExplicationL MD10 //Charger dans l'accumulateur 1 le nombre virgule flottante IEEE de

    32 bits.TRUNC //Convertir le nombre virgule flottante de 32 bits en un nombre entier

    de 32 bits et conserver la partie entire. Ranger le rsultat dansl'accumulateur 1.

    T MD20 //Transfrer le rsultat (entier de 32 bits) dans le double mot de mmentoMD20.

    Valeur avant la conversion Valeur aprs la conversion MD10 = "100.5" => TRUNC => MD20 = "+100"MD10 = "-100.5" => TRUNC => MD20 = "-100"

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 3-17

    3.17 RND+ Arrondir l'entier suprieur

    FormatRND+

    Description de l'oprationRND+ (Conversion d'un nombre virgule flottante IEEE de 32 bits en entier de 32 bits)Cette opration value le contenu de l'accumulateur 1 comme nombre virgule flottanteIEEE de 32 bits, le convertit en un nombre entier de 32 bits et arrondit le rsultat au pluspetit nombre entier suprieur ou gal au nombre virgule flottante converti (mode d'arrondiIEEE "arrondi +infini"). Si le nombre est hors de la plage correcte, les bits d'tat DEB etDM sont mis 1. Le rsultat est rang dans l'accumulateur 1.Si le nombre n'est pas un nombre virgule flottante ou est un nombre virgule flottante quine peut pas tre reprsent comme entier de 32 bits, la conversion n'a pas lieu et undbordement est signal.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - x x - - - -

    ExempleLIST ExplicationL MD10 //Charger dans l'accumulateur 1 le nombre virgule flottante IEEE de

    32 bits.RND+ //Convertir le nombre virgule flottante IEEE de 32 bits en un nombre

    entier de 32 bits et arrondir au plus petit nombre entier suprieur.Ranger le rsultat dans l'accumulateur 1.

    T MD20 //Transfrer le rsultat (entier de 32 bits) dans le double mot de mmentoMD20.

    Valeur avant la conversion Valeur aprs la conversionMD10 = "100.5" => RND+ => MD20 = "+101"MD10 = "-100.5" => RND+ => MD20 = "-100"

  • Oprations de conversion

    Langage LIST pour SIMATIC S7-300/4003-18 A5E00261419-01

    3.18 RND- Arrondir l'entier infrieur

    FormatRND-

    Description de l'oprationRND- (Conversion d'un nombre virgule flottante IEEE de 32 bits en entier de 32 bits)Cette opration value le contenu de l'accumulateur 1 comme nombre virgule flottanteIEEE de 32 bits, le convertit en un nombre entier de 32 bits et arrondit le rsultat au plusgrand nombre entier infrieur ou gal au nombre virgule flottante converti (mode d'arrondiIEEE "arrondi -infini"). Si le nombre est hors de la plage correcte, les bits d'tat DEB et DMsont mis 1. Le rsultat est rang dans l'accumulateur 1.Si le nombre n'est pas un nombre virgule flottante ou est un nombre virgule flottante quine peut pas tre reprsent comme entier de 32 bits, la conversion n'a pas lieu et undbordement est signal.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - x x - - - -

    ExempleLIST ExplicationL MD10 //Charger dans l'accumulateur 1 le nombre virgule flottante IEEE de

    32 bits.RND- //Convertir le nombre virgule flottante IEEE de 32 bits en un nombre

    entier de 32 bits et arrondir au plus grand nombre entier infrieur.Ranger le rsultat dans l'accumulateur 1.

    T MD20 //Transfrer le rsultat (entier de 32 bits) dans le double mot de mmentoMD20.

    Valeur avant la conversion Valeur aprs la conversionMD10 = "100.5" => RND- => MD20 = "+100"MD10 = "-100.5" => RND- => MD20 = "-101"

  • Langage LIST pour SIMATIC S7-300/400A5E00261419-01 4-1

    4 Oprations de comptage

    4.1 Vue d'ensemble des oprations de comptage

    DescriptionUn compteur est un lment fonctionnel du logiciel de programmation STEP 7. Une zone estrserve aux compteurs dans la mmoire de votre CPU. Cette zone de mmoire rserve unmot de 16 bits chaque compteur. La programmation avec LIST prend en charge 256compteurs. Le nombre de compteurs disponibles dans votre CPU figure dans lescaractristiques techniques. Les oprations de comptage sont les seules fonctions qui ontaccs la zone de mmoire rserve aux compteurs.Vous disposez des oprations de comptage suivantes : FR Valider compteur L Charger valeur de comptage en cours comme entier dans l'accumulateur 1 LC Charger valeur de comptage en cours comme nombre DCB dans l'accumulateur 1 R Remettre compteur zro S Initialiser compteur ZV Incrmenter ZR Dcrmenter

  • Oprations de comptage

    Langage LIST pour SIMATIC S7-300/4004-2 A5E00261419-01

    4.2 FR Valider compteur

    FormatFR

    Paramtre Type dedonnes

    Zone demmoire

    Description

    COUNTER Z Compteur ; la plage dpend de la CPU.

    Description de l'oprationFR efface le mmento de front qui active l'incrmentation ou la dcrmentationpour le compteur en accs si le rsultat logique RLG passe de 0 1. La validation ducompteur n'est pas requise pour initialiser un compteur ou excuter la fonction de comptagenormale. Cela signifie que, malgr un RLG constant de 1 aux instructions Initialisercompteur, Incrmenter ou Dcrmenter, ces oprations sont nouveau excutes aprs lavalidation.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 - - 0

    ExempleLIST ExplicationU E 2.0 //Interroger l'tat de signal l'entre E 2.0.FR Z3 //Valider le compteur Z3 si le RLG passe de 0 1.

  • Oprations de comptage

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 4-3

    4.3 L Charger valeur de comptage en cours comme entier danslaccumulateur 1

    FormatL

    Paramtre Type dedonnes

    Zone demmoire

    Description

    COUNTER Z Compteur ; la plage dpend de la CPU.

    Description de l'oprationL charge la valeur de comptage en cours du compteur en accs commenombre entier dans l'accumulateur 1-L aprs sauvegarde du contenu de l'accumulateur 1dans l'accumulateur 2.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationL Z3 //Charger la valeur de comptage du compteur Z3 en format binaire dans

    laccumulateur 1-L.

    Contenu delACCU 1-Laprs l'instructionL Z3

    Valeur de compteur (0 999) binaire

    L Z3

    Valeur de compteur (0 999) binaire

    Mot decompteurpour Z3 enmmoire

    Tous "0"

    20212223242526272829210211212213214215

    20212223242526272829210211212213214215

  • Oprations de comptage

    Langage LIST pour SIMATIC S7-300/4004-4 A5E00261419-01

    4.4 LC Charger valeur de comptage en cours comme nombreDCB dans laccumulateur 1

    FormatLC

    Paramtre Type dedonnes

    Zone demmoire

    Description

    COUNTER Z Compteur ; la plage dpend de la CPU.

    Description de l'oprationLC charge la valeur de comptage en cours du compteur en accs commenombre DCB dans l'accumulateur 1 aprs sauvegarde du contenu de l'accumulateur 1 dansl'accumulateur 2.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationLC Z3 //Charger la valeur de comptage du compteur Z3 en format DCB dans

    laccumulateur 1-L.

    Contenu delACCU1-Laprs l'instructionLC Z3

    Valeur de comptage (de 0 999) binaire

    LC Z3

    Valeur de comptage en format DCB

    Mot decomptagepour Z3 enmmoire

    20212223242526272829210211212213214215

    202122232425262728292102112122132142150000

    101 Dizaines 100 Units102 Centaines

  • Oprations de comptage

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 4-5

    4.5 R Remettre compteur zro

    FormatR

    Paramtre Type dedonnes

    Zone demmoire

    Description

    COUNTER Z Compteur ; la plage dpend de la CPU.

    Description de l'oprationR charge la valeur de comptage 0 dans le compteur en accs si le RLGgale 1.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 - - 0

    ExempleLIST ExplicationU E 2.3 //Interroger l'tat de signal l'entre E 2.3.R Z3 //Remettre le compteur Z3 0 si le RLG passe de 0 1.

  • Oprations de comptage

    Langage LIST pour SIMATIC S7-300/4004-6 A5E00261419-01

    4.6 S Initialiser compteur

    FormatS

    Paramtre Type dedonnes

    Zone demmoire

    Description

    COUNTER Z Compteur ; la plage dpend de la CPU.

    Description de l'oprationS charge la valeur de comptage figurant dans laccumulateur 1-L dans lecompteur concern si le RLG passe de 0 1. La valeur de comptage dans l'accumulateur 1doit tre un nombre DCB compris entre 0 et 999.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 - - 0

    ExempleLIST ExplicationU E 2.3 //Interroger l'tat de signal l'entre E 2.3.L C#3 //Charger la valeur de comptage 3 dans l'accumulateur 1-L.S Z1 //Initialiser le compteur Z1 la valeur de comptage si le RLG passe de 0

    1.

  • Oprations de comptage

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 4-7

    4.7 ZV Incrmenter

    FormatZV

    Paramtre Type dedonnes

    Zone demmoire

    Description

    COUNTER Z Compteur ; la plage dpend de la CPU.

    Description de l'oprationZV incrmente d'1 la valeur de comptage du compteur en accs si le rsultatlogique RLG passe de 0 1 et si la valeur de comptage est infrieure 999. Si la valeur decomptage atteint sa limite suprieure de 999, l'incrmentation s'arrte. Une modificationsuivante du RLG n'a aucun effet. Le bit de dbordement (DEB) n'est pas mis 1.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 - - 0

    ExempleLIST ExplicationU E 2.1 //Interroger l'tat de signal l'entre E 2.1.ZV Z3 //Incrmenter d'1 le compteur Z3 si le RLG passe de 0 1.

  • Oprations de comptage

    Langage LIST pour SIMATIC S7-300/4004-8 A5E00261419-01

    4.8 ZR Dcrmenter

    FormatZR

    Paramtre Type dedonnes

    Zone demmoire

    Description

    COUNTER Z Compteur ; la plage dpend de la CPU.

    Description de l'oprationZR dcrmente d'1 la valeur de comptage du compteur en accs si le rsultatlogique RLG passe de 0 1 et si la valeur de comptage est suprieure 0. Si le compteuratteint sa limite infrieure de 0, la dcrmentation s'arrte. Une modification suivante duRLG n'a aucun effet, car le compteur n'opre pas avec des valeurs ngatives.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - 0 - - 0

    ExempleLIST ExplicationL C#14 //Valeur prdfinie du compteurU E 0.1 //Compteur initialis aprs dtection du front montant l'entre E 0.1.S Z1 //Charger la valeur prdfinie dans le compteur Z1 si celui-ci est valid.U E 0.0 //Enlever 1 chaque front montant l'entre E 0.0.ZR Z1 //Dcrmenter d'1 le compteur Z1 si le RLG passe de 0 1 en fonction de

    l'entre E 0.0.UN Z1 //Dtection de 0 avec le bit Z1= A 0.0 //Si la valeur du compteur Z1 gale 0, la sortie A 0.0 donne 1.

  • Langage LIST pour SIMATIC S7-300/400A5E00261419-01 5-1

    5 Oprations sur blocs de donnes

    5.1 Vue d'ensemble des oprations sur blocs de donnes

    DescriptionLopration AUF (ouvrir bloc de donnes) permet douvrir un bloc de donnes global ou unbloc de donnes dinstance. Un bloc de donnes global et un bloc de donnes dinstancepeuvent tre ouverts simultanment dans le programme.Vous disposez des oprations sur bloc de donnes suivantes : AUF Ouvrir bloc de donnes TDB Permuter DB global et DB d'instance L DBLG Charger longueur de DB global dans l'accumulateur 1 L DBNO Charger numro de DB global dans l'accumulateur 1 L DILG Charger longueur de DB d'instance dans l'accumulateur 1 L DINO Charger numro de DB d'instance dans l'accumulateur 1

  • Oprations sur blocs de donnes

    Langage LIST pour SIMATIC S7-300/4005-2 A5E00261419-01

    5.2 AUF Ouvrir bloc de donnes

    FormatAUF

    Oprande Type de blocs de donnes Adresse source DB, DI 1 65535

    Description de l'oprationAUF Cette opration ouvre un bloc de donnes comme bloc de donnes global ou comme blocde donnes d'instance. C'est chaque fois un bloc de donnes global et un bloc de donnesd'instance qui peuvent tre ouverts simultanment.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationAUF DB10 //Ouvrir le bloc de donnes DB10 comme bloc de donnes global.L DBW35 //Charger dans l'accumulateur 1-L le mot de donnes DBW35 du bloc de

    donnes ouvertT MW22 //Transfrer le contenu de l'accumulateur 1-L dans le mot de mmentos

    MW22.AUF DI20 //Ouvrir le bloc de donnes DB20 comme bloc de donnes d'instance.L DIB12 //Charger dans l'accumulateur 1-L-L. l'octet de donnes DIB12 du bloc de

    donnes d'instance ouvertT DBB37 //Transfrer le contenu de l'accumulateur 1-L-L dans l'octet de donnes

    DBB37 du bloc de donnes global ouvert.

  • Oprations sur blocs de donnes

    Langage LIST pour SIMATIC S7-300/400A5E00261419-01 5-3

    5.3 TDB Permuter DB global et DB dinstance

    FormatTDB

    Description de l'oprationTDB permute les registres de bloc de donnes. Un bloc de donnes global devient ainsi blocde donnes d'instance et vice versa.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    5.4 L DBLG Charger longueur de DB global danslaccumulateur 1

    FormatL DBLG

    Description de l'oprationL DBLG (Charger longueur de DB global)Cette opration charge la longueur du bloc de donnes global dans l'accumulateur 1 une foisque l'ancien contenu de l'accumulateur 1 a t sauvegard dans l'accumulateur 2.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    ExempleLIST ExplicationAUF DB10 //Ouvrir le bloc de donnes DB10 comme bloc de donnes global.L DBLG //Charger la longueur du bloc de donnes global (longueur de DB10).L MD10 //Valeur de comparaison pour dterminer si le bloc de donnes est

    suffisamment long.

  • Oprations sur blocs de donnes

    Langage LIST pour SIMATIC S7-300/4005-4 A5E00261419-01

    5.5 L DBNO Charger numro de DB global dansl'accumulateur 1

    FormatL DBNO

    Description de l'oprationL DBNO (Charger le numro de DB global)Cette opration charge dans l'accumulateur 1 le numro du bloc de donnes global ouvertune fois que l'ancien contenu de l'accumulateur 1 a t sauvegard dans l'accumulateur 2.

    Mot d'tat RB BI1 BI0 DEB DM OU ETAT RLG /PIEcriture : - - - - - - - - -

    5.6 L DILG Charger longueur de DB dinstance danslaccumulateur 1

    FormatL DILG

    Description de l'oprationL DILG (Charger longueur de DB dinstance)Cette opration charge dans l'accumulateur 1 la longueur du b