538
AUTÓMATAS PROGRAMABLES INDUSTRIALES SYSMAC C200HALPHA

C200HALPHA Manual Programacion

Embed Size (px)

Citation preview

Page 1: C200HALPHA Manual Programacion

AUTÓMATASPROGRAMABLESINDUSTRIALES

SYSMAC C200HALPHA

Page 2: C200HALPHA Manual Programacion

Autómatas ProgramablesC200HX/C200HG/C200HE

Manual de Programación

Page 3: C200HALPHA Manual Programacion

iv

Page 4: C200HALPHA Manual Programacion

v

Notice:OMRON products are manufactured for use according to proper procedures by a qualified operatorand only for the purposes described in this manual.

The following conventions are used to indicate and classify precautions in this manual. Always heedthe information provided with them. Failure to head precautions can result in injury to people or dam-age to the product.

DANGER! Indicates information that, if not heeded, is likely to result in loss of life or seriousinjury.

WARNING Indicates information that, if not heeded, could possibly result in loss of life orserious injury.

Caution Indicates information that, if not heeded, could result in relative serious or minorinjury, damage to the product, or faulty operation.

OMRON Product ReferencesAll OMRON products are capitalized in this manual. The word “Unit” is also capitalized when it refersto an OMRON product, regardless of whether or not it appears in the proper name of the product.

The abbreviation “Ch,” which appears in some displays and on some OMRON products, often means“word” and is abbreviated “Wd” in documentation in this sense.

The abbreviation “PC” means Programmable Controller and is not used as an abbreviation for any-thing else.

Visual AidsThe following headings appear in the left column of the manual to help you locate different types ofinformation.

Note Indicates information of particular interest for efficient and convenient operationof the product.

1, 2, 3... 1. Indicates lists of one sort or another, such as procedures, checklists, etc.

! OMRON, 1994All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in anyform, or by any means, mechanical, electronic, photocopying, recording, or otherwise, without the prior written permis-sion of OMRON.

No patent liability is assumed with respect to the use of the information contained herein. Moreover, because OMRON isconstantly striving to improve its high-quality products, the information contained in this manual is subject to changewithout notice. Every precaution has been taken in the preparation of this manual. Nevertheless, OMRON assumes noresponsibility for errors or omissions. Neither is any liability assumed for damages resulting from the use of the informa-tion contained in this publication.

Page 5: C200HALPHA Manual Programacion

vi

Page 6: C200HALPHA Manual Programacion

vii

TABLA DE CONTENIDOSSECCIÓN 1Introducción 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-1 Generalidades 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-2 Los orígenes de la lógica de PLC 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-3 Terminología del PLC 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-4 Terminología de productos OMRON 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-5 Funcionamiento del PLC 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-6 Periféricos 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-7 Características del C200HALPHA 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIÓN 2Hardware 11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2-1 Componentes de la CPU 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2 Configuración del PLC 14. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-3 Características de la CPU 15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4 Cassettes de memoria 16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-5 Operación sin batería de respaldo 19. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-6 Interruptor DIP de la CPU 20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIÓN 3Áreas de memoria 21. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3-1 Introducción 23. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-2 Estructura del área de datos 24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-3 Área de IR (relés internos) 27. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4 Área de SR (relés especiales) 31. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5 Área de AR (relés auxiliares) 47. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6 Área de DM (Memoria de datos) 55. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-7 Área de HR (relés de retención) 67. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-8 Área de TC (Temporizador/Contador) 68. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-9 Área de LR (relés de enlace) 68. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-10 Área de UM 69. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-11 Área de TR (relés temporales) 70. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-12 Área de EM 70. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIÓN 4Programación en diagrama de relés 73. . . . . . . . . . . . . . . . .

4-1 Procedimiento básico 74. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-2 Terminología 74. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-3 Capacidad de programa 75. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4 Diagramas de relés básicos 75. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-5 La consola de programación 86. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6 Preparación para la operación 89. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7 Escritura, modificación y chequeo del programa 101. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-8 Control de estados de bit 116. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-9 Bits de trabajo (relés internos) 117. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-10 Precauciones de programación 119. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-11 Ejecución del programa 120. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-12 Programas de interfaz de unidad de E/S especial 120. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-13 Programación de unidad de temporizador analógico 124. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 7: C200HALPHA Manual Programacion

viii

SECCIÓN 5Juego de instrucciones 129. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-1 Notación 133. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-2 Formato de instrucciones 133. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-3 Áreas de datos, valores de definidor e indicadores 133. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-4 Instrucciones diferenciadas 134. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-5 Instrucciones de expansión 136. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-6 Codificación del resto de instrucciones 137. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-7 Tablas de instrucciones 139. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-8 Instrucciones de diagrama de relés 144. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-9 Instrucciones de control de bit 145. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-10 INTERLOCK e INTERLOCK CLEAR -- IL(02) e ILC(03) 150. . . . . . . . . . . . . . . . . . . . . . . .5-11 SALTO y FIN DE SALTO -- JMP(04) y JME(05) 152. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-12 END -- END(01) 153. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-13 NO OPERACIÓN -- NOP(00) 153. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-14 Instrucciones de temporizador y contador 153. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-15 Desplazamiento de datos 165. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16 Instrucciones de transferencia de datos 173. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17 Instrucciones de comparación 186. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18 Instrucciones de conversión 200. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-19 Instrucciones matemáticas de símbolos 223. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20 Instrucciones de cálculo BCD 242. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21 Instrucciones de cálculo binario 257. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-22 Instrucciones matemáticas especiales 271. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23 Instrucciones lógicas 286. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-24 Subrutinas y control de interrupción 289. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25 Instrucciones de paso 302. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-26 Instrucciones especiales 311. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-27 Instrucciones de red 332. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-28 Instrucciones de comunicaciones serie 339. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-29 Instrucciones avanzadas de E/S 345. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-30 Instrucciones de unidad de E/S especial 358. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIÓN 6Tiempos de ejecución del programa 361. . . . . . . . . . . . . . . . .

6-1 Tiempo de ciclo 362. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-2 Cálculo del tiempo de ciclo 367. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-3 Tiempos de ejecución de instrucción 369. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-4 Tiempo de respuesta de E/S 381. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIÓN 7Monitorización y ejecución del programa 393. . . . . . . . . . . . .

7-1 Monitorización y modificación de datos 394. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIÓN 8Comunicaciones serie 419. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8-1 Introducción 420. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-2 Comunicaciones Host Link 420. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-3 Comunicaciones RS--232C 428. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-4 Links uno--a--uno 432. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-5 NT Links 433. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-6 La función Macro de Protocolo 434. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 8: C200HALPHA Manual Programacion

ix

SECCIÓN 9Detección y corrección de errores 443. . . . . . . . . . . . . . . . . . .

9-1 Indicadores de alarma 444. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-2 Alarmas programadas y mensajes de error 444. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-3 Lectura y borrado de errores y mensajes 444. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-4 Mensajes de error 444. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-5 Indicadores de error 448. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-6 Errores de Host Link 450. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIÓN 10Comandos Host Link 453. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10-1 Sumario de comandos Host Link 454. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-2 Códigos de fin de Host Link 455. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3 Comandos Host Link 457. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Apéndices 499. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .A. Modelos disponibles 499. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .B. Instrucciones de programación 509. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .C. Indicadores de error y aritméticos 519. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .D. Plantillas de asignación de canal 523. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .E. Plantilla de codificación del programa 529. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .F. Tablas de conversión de datos 531. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .G. ASCII extendido 533. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Oficinas de venta OMRON 535. . . . . . . . . . . . . . . . . . . . . . . . .

Page 9: C200HALPHA Manual Programacion

1

SECCIÓN 1Introducción

Esta sección describe brevemente los autómatas programables y explica los términos más usados en programación de dia-grama de relés. También describe el proceso de programación y funcionamiento de un PLC y explica la terminología básicautilizada con los PLCs OMRON. Asímismo se describen los periféricos utilizados con el C200HALPHA y las nuevas carac-terísticas del C200HALPHA.

1-1 Generalidades 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-2 Los orígenes de la lógica de PLC 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-3 Terminología del PLC 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-4 Terminología de productos OMRON 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-5 Funcionamiento del PLC 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-6 Periféricos 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-7 Características del C200HALPHA 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-8-1 Nuevas características de C200ALPHA versión ZE 5. . . . . . . . . . . . . . . . . . . . . . .1-7-1 Comparativa C200HS y C200HALPHA 6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-7-2 Compatibilidad de programas 7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 10: C200HALPHA Manual Programacion

2

1-1 GeneralidadesUn PLC (Controlador programable) consiste básicamente en una CPU (Unidadde Proceso Central) con un programa y conectado a dispositivos de entrada ysalida (E/S). El programa controla el PLC de tal forma que cuando se activa unaentrada procedente de un dispositivo de entrada se genera una respuesta apro-piada. La respuesta normalmente implica la activación de una salida para algúndispositivo de salida. Los dispositivos de entrada pueden ser fotocélulas, pulsa-dores, finales de carrera, o cualquier otro dispositivo capaz de generar señalesque puedan ser procesadas por el PLC. Los dispositivos de salida pueden sersolenoides, lámparas de indicación, relés de control de motores, o cualquierotro dispositivo capaz de ser activados por las salidas procedentes del PLC.Por ejemplo, un sensor que detecta el paso de objetos, activa una entrada delPLC. Este responde poniendo a ON una salida que activa un expulsor para diri-gir el producto a otra cinta transportadora. Otro sensor, colocado a superior altu-ra que el primero, pone a ON otra entrada diferente para indicar que el productoes demasiado grande. El PLC pone a ON otra salida para activar un pulsador,posicionado delante del mencionado anteriormente, para dirigir el producto a uncontenedor de productos no válidos.A pesar de que este ejemplo sólo utiliza dos entradas y dos salidas, es típico delas operaciones de control que el PLC puede ejecutar. Realmente este ejemploes mucho más complejo de lo que puede parecer en un principio debido a latemporización necesaria, es decir, ¿cómo sabe el PLC cuando ha de activarcada expulsor? También son posibles sin embargo operaciones mucho máscomplicadas. El problema reside en obtener a partir de las señales de entradadisponibles las señales de control deseadas en el momento adecuado.Para conseguir el control preciso, el C200HALPHA utiliza la programación endiagrama de relés. En los siguientes apartados se explica este lenguaje de pro-gramación para programar y operar el C200HALPHA.

1-2 Los orígenes de la lógica del PLCLos PLCs surgieron como alternativa a los sistemas de control basados en ca-bleados de relés. Y aunque los circuitos integrados y la lógica interna del PLChan sustituido a los componentes discretos, relés, contadores, temporizadores,etc., el PLC opera como si estos componentes siguieran ahí, pero el control esmucho más flexible y fiable.Los símbolos y otros conceptos de control del PLC proceden de la simbologíade los cableados de relés, y forman la base del método de programación pordiagrama de relés. La mayoría de los términos utilizados para describir y rela-cionar estos símbolos están tomados de la terminología informática.

La terminología utilizada en este manual difiere algo de la terminología de relés,pero los conceptos son los mismos. La siguiente tabla muestra la relación entretérminos de relés y términos utilizados para los PLCs de OMRON.

Término relés Equivalente PLC

contacto entrada o condición

bobina salida o bit de trabajo

Relé NA condición de normalmente abierto

Relé NC condición de normalmentecerrado

1-3 Terminología del PLCLos términos explicados a continuación son muy importantes para comprenderel funcionamiento del PLC.

Dado que el C200HALPHA es un PLC configurable, no hay un componente con-creto que se pueda denominar PLC C200HALPHA. Por esto se habla de confi-guración de PLC dado que está compuesto de varias unidades.

Terminología relé vs. PLC

PLC

Sección 1--3Terminología del PLC

Page 11: C200HALPHA Manual Programacion

3

Para disponer de una configuración funcional, se necesita un bastidor de CPUcon al menos una unidad montada que proporcione puntos de E/S. Cuandodecimos PLC, nos referimos a la CPU y a todas las unidades controladas direc-tamente por ella a través del programa. No se incluyen los dispositivos de E/Sconectados a las entradas y salidas del PLC.

Un dispositivo conectado al PLC y al que envía una señal se denomina disposi-tivo de entrada; la señal que envía se denomina señal de entrada. La señalentra en el PLC a través de los terminales o pines del conector de una unidad.Se llama punto de entrada al lugar donde entra una señal. Este punto de entra-da se asigna a una dirección de memoria que refleja su estado, ON u OFF. Estadirección de memoria se denomina bit de entrada. La CPU en su ciclo de pro-cesamiento normal, comprueba los estados de todos los puntos de entrada ypone a ON o a OFF los bits de entrada correspondientes.Existen también en memoria bits de salida que están asignados a puntos desalida en las unidades a través de las cuales se envian las señales a los dispo-sitivos de salida, es decir, se pone a ON un bit de salida para enviar una señal aun dispositivo de salida a través de un punto de salida. La CPU, periódicamente,pone a ON o a OFF los puntos de salida de acuerdo con los estados de los bitscorrespondientes.Estos términos se utilizan cuando se describen diferentes aspectos del funcio-namiento del PLC. En programación, se trata la información contenida en la me-moria, y por lo tanto se refiere a bits de E/S. Si se habla de Unidades que conec-tan el PLC con el sistema controlado y los lugares físicos de entrada y salida delas señales, nos referimos a puntos de E/S. Cuando se cablean los puntos deE/S, nos referimos también a los terminales o pines del conector. Cuando sehabla de las señales procedentes o dirigidas del/al PLC nos referimos a las se-ñales de entrada y a las señales de salida, o simplemente entradas y salidas.También depende del aspecto del PLC del que se esté hablando.

El sistema de control incluye el PLC y todos los dispositivos de E/S utilizadospara controlar un sistema externo. Un sensor que suministra información paraconseguir el control es un dispositivo de entrada que forma parte claramente delsistema de control. El sistema controlado es el sistema externo cuyo funciona-miento es controlado por el PLC mediante los dispositivos de E/S. Estos, en de-terminados casos, se pueden considerar parte del sistema controlado, porejemplo el motor que mueve una cinta transportadora.

1-4 Terminología de OMRONLos productos OMRON se dividen en varios grupos funcionales que tienennombres genéricos. El Apéndice A Modelos disponibles lista los productos deacuerdo con estos grupos. El término Unidad se utiliza para referirse a todos losproductos de PLC OMRON. Aunque una unidad es cualquiera de los bloquesconstituyentes de un C200HALPHA, su significado está limitado generalmente,pero no siempre, en el contexto de unidades que se montan en un bastidor.El grupo más numeroso de productos OMRON es de Unidades de E/S. Esteincluye todas las unidades de montaje en bastidor que proporcionan puntos deentrada o salida de empleo general.Las unidades de E/S de alta densidad están diseñadas para proporcionar E/Sde alta densidad e incluyen las unidades de E/S de alta densidad grupo 2 y uni-dades de E/S de alta densidad especiales.Las unidades de E/S especiales con unidades dedicadas diseñadas para fun-ciones específicas. Incluyen algunas de las unidades de E/S de alta densidad,unidades de control de posición, unidades de contador de alta velocidad y uni-dades de E/S analógicas, etc.Las unidades de enlace se utilizan para conectar varios PLCs o PLCs y orde-nador; en definitiva para crear redes de comunicaciones. Algunas de estas uni-dades son las unidades de E/S remotas, unidades PC Link, unidades Host Link,Unidades SYSMAC NET Link, etc.Otro grupo de productos incluye Dispositivos de programación, Periféricosy productos para carril DIN.

Entradas y salidas

Sistema controlado ysistema de control

Terminología de OMRON Sección 1-4

Page 12: C200HALPHA Manual Programacion

4

1-5 Funcionamiento del PLCA continuación se indican los pasos básicos necesarios para programar y ope-rar el C200HALPHA. Suponemos que, habiendo adquirido uno o variosC200HALPHA, dispone de la información requerida para los pasos 1 y 2, descri-tos brevemente a continuación. El resto de los pasos se describen en posterio-res secciones en este manual.

1, 2, 3... 1. Determinar qué debe hacer el sistema controlado, en qué orden, y cuándo.2. Determinar el tamaño requerido por el sistema, es decir si será suficiente

con una CPU o será necesario un adaptador de enlace para conectar variasCPUs.

3. Asignar, sobre el papel, todos los dispositivos de entrada y de salida a lospuntos de E/S en la CPU y determinar qué bits de E/S serán asignados acada uno. (3--2 Estructura del área de datos)

4. Utilizando símbolos de diagrama de relés, escribir un programa que repre-sente la secuencia de operaciones necesarias y su relación. Verifique tam-bién la programación de todas las respuestas apropiadas a todas las posi-bles situaciones de emergencia. (Sección 4 Escritura del Programa, Sec-ción 5 Juego de instrucciones y Sección 6 Tiempo de ejecución del pro-grama)

5. Escribir en el PLC el programa y todos los datos necesarios. (Sección 4--7Escritura, modificación y chequeo del programa).

6. Depurar el programa, para eliminar primero los errores de sintaxis, y paralocalizar luego los errores de ejecución. (Sección 4-7 Escritura, Modifica-ción y chequeo del programa, Sección 7 Monitorización y Ejecución, y Sec-ción 9 Detección y corrección de errores)

7. Cablear el PLC al sistema controlado.8. Probar el programa en una situción real de control y realizar los ajustes

necesarios. (Sección 7 Monitorización y ejecución del programa y Sección9 Detección y corrección de errores)

9. Realizar dos copias del programa completo y guardarlas en diferentes luga-res seguros. (Sección 4-7 Escritura, Modificación y chequeo del programa)

Diseñar el sistema de control es el primer paso para automatizar cualquier pro-ceso. Sólo después de entender todo el sistema de control se puede programary operar el PLC. Para diseñar el sistema de control es necesario, antes de nada,un conocimiento exacto de los dispositivos que van a ser controlados. El primerpaso en el diseño de un sistema de control es por lo tanto determinar los requeri-mientos del sistema controlado.

Lo primero que se debe evaluar es el número de puntos de entrada y de salidaque necesitará el sistema controlado. Esto se lleva a cabo identificando cadadispositivo que envía una señal de entrada al PLC o cada uno que recibe unaseñal de salida del PLC.

A continuación, determinar la secuencia en la que han de producirse las opera-ciones de control y el diagrama de tiempos de las operaciones. Identificar lasrelaciones físicas entre los dispositivos de E/S así como los tipos de respuestasque deberían darse entre ellos.Por ejemplo, una fotocélula se puede enlazar funcionalmente a un motor pormedio de un contador del PLC. Cuando éste recibe una entrada del pulsador dearranque, podría poner en marcha el motor. El PLC pararía el motor cuando elcontador haya contado un número especificado de señales de entrada proce-dentes de la fotocélula.Se ha de seguir el mismo procedimiento para determinar cada una de las tareasrelativas, desde el principio de la operación de control hasta el final.

Las unidades reales que se montarán o conectarán a los bastidores del PLC sedeben determinar de acuerdo con las necesidades de los dispositivos de E/S.Se han de considerar las especificaciones de hardware, tales como niveles detensión y corriente, así como consideraciones funcionales, tales como las nece-sidades de unidades de E/S especiales, unidades de enlace etc.

Diseño del sistema decontrol

Requerimientos deentrada/salida

Secuencia, tiempos einterrelación

Unidades

Funcionamiento del PLC Sección 1-5

Page 13: C200HALPHA Manual Programacion

5

Una vez diseñado el sistema completo, se puede empezar con las operacionesde programación, depuración y operación de las restantes secciones de estemanual.

1-6 PeriféricosLos siguientes periféricos se utilizan en programación, para introducir/depurar/monitorizar el programa del PLC o para interfaz del PLC con dispositivos exter-nos.

La consola de programación es el dispositivo de programación más sencillopara los PLCs OMRON. Todas ellas se conectan directamente a la CPU sinnecesidad de una interfaz separada.

SYSWIN es un software de programación y gestión de PLCs en el entorno gráfi-co Windows totalmente en castellano.SYSWIN incorpora funciones para depuración y mantenimiento de programastales como funciones de seguimiento de datos y de diagramas de tiempo para lamonitorización en tiempo real de bits y canales; función de barra de datos en eleditor de monitorización Ladder para monitorizar el programa mientras se vi-sualizan simultáneamente algunos bits y canales que no aparecen en ese mo-mento; posibilidad de monitorizar varias ventanas de datos simultáneamente.SYSWIN es compatible con las versiones anteriores 2.0 y 2.1 y dispone de utili-dad de conversión de LSS.Como software para entorno Windows puede importar/exportar ficheros MetaFile, es decir tipo ASCII, que permite escribir el programa con un editor de textosestándar y después importarlo desde SYSWIN.

1-7 Características del C200HALPHALas CPUs C200HX/HG/HE incorporan nuevas características, pero en ellas sepueden utilizar los programas del C200H y del C200HS.

1-7-1 Nuevas funciones de C200HX/HG/HE versión ZELa siguiente tabla muestra las instrucciones que se han añadido a las CPUsC200HX/HG/HE versión ZE.

Instrucción

Instruccionesde control debit

TEST BIT: TST(350) y TSTN(351)

Instruccionesespeciales

TRANSFERIR BANCO DE EM: BXFR(125)

Instruccionesd

Igualdad: =(300), =L(301), =S(302), =SL(303)decomparación

Desigualdad: <>(305), <>L(306), <>S(307), <>SL(308)comparaciónde entrada Menor que: <(310), <L(311), <S(312), <SL(313)de entrada

Menor o Igual que: <=(315), <=L(316), <=S(317), <=SL(318)Mayor que: >(320), >L(321), >S(322), >SL(323)Mayor o Igual que: >=(325), >=L(326), >=S(327), >=SL(328)

Instruccionesá i

Suma binaria: +(400)/+L(401)/+C(402)/+CL(403)matemáticasde símbolos

Suma BCD: +B(404)/ +BL(405)/+BC(406)/+BCL(407)de símbolos

Resta binaria: --(410)/ --L(411)/--C(412)/--CL(413)Resta BCD: --B(414)/ --BL(415)/--BC(416)/--BCL(417)Multiplicación binaria: *(420)/ *L(421)/*U(422)/*UL(423)Multiplicación BCD: *B(424)/ *BL(425)División binaria: /(430)/ /L(431)//U(432)//UL(433)División BCD: /B(434)/ /BL(435)

También se han incluido las siguientes mejoras en las CPUs versión ZE.! Se han cambiado los códigos de función a tres dígitos, así la mayoría de las

instrucciones se pueden utilizar sin asignar códigos de función.

Consola de programación

SYSWIN

Instrucciones

Otras mejoras

Características del C200HALPHA Sección 1-7

Page 14: C200HALPHA Manual Programacion

6

! Las direcciones del área de EM se pueden direccionar directamente en los op-erandos de las instrucciones. Esto duplica la memoria a la que se puede ac-ceder directamente desde el programa (6,655 canales del área de DM más6,143 canales del área de EM).

! La capacidad máxima de memoria de usuario se ha duplicado de 32K pala-bras a 64K palabras.

1-7-2 Comparativa C200HS y C200HALPHA

La siguiente tabla es una comparativa de las características de los PLCsC200HALPHA y C200HS.

Función CapacidadC200HX/HG/HE C200HS

Memoria Memoria de usuario (UM) C200HE-CPU11-ZE: 3.2K palabrasC200HE-CPUj2-ZE: 7.2K palabrasC200HG-CPUj3-ZE: 15.2K palabrasC200HX-CPUj4-ZE: 31.2K palabrasC200HX-CPUj5-ZE: 63.2K words

15.2K palabras

DM normal 6.144 palabras (DM 0000 a DM 6143)

(La C200HE-CPU11-ZE no tiene de DM 4000a DM 5999.)

6.144 palabras(DM 0000 a DM 6143)

DM configuración 512 palabras (DM 6144 a DM 6655) 512 palabras(DM 6144 a DM 6655)

Expansión de DM 0 a 3.000 palabras (DM 7000 a DM 9999) 0 a 3.000 palabras(DM 7000 a DM 9999)

Memoria de datosextendida (EM)

6.144 palabras (EM 0000 a EM 6143)

C200HE: NoC200HG: 6.144 palabras " 1 bancoC200HX-CPUj4-ZE: 6.144 palabras " 3bancosC200HX-CPU65-ZE: 6.144 palabras " 8bancosC200HX-CPU85-ZE: 6.144 palabras " 16bancos

No

Asignación deE/S

Bastidores expansores 3 Bastidores

(2 Bastidores en el C200HE-CPUjj-ZE oC200HX/HG-CPU3j-E/4j-ZE)

2 Bastidores

Unidades de E/Smultipunto grupo 2

Números de unidad 0 a 9, A a F

(Incompatible con la C200HE-CPU11-ZE.)(Números de unidad 0 a 9 con laC200HE-CPUj2-ZE,C200HX/HG-CPU3j-ZE/4j-ZE.)

Números de unidad 0 a9

Unidades de E/Sespeciales

Números de unidad 0 a 9, A a F

(Números de unidad de 0 a 9 con laC200HE-CPUjj-ZE oC200HX/HG-CPU3j-ZE/4j-ZE.)

Números de unidad 0 a9

Tiempo deejecución

Instrucciones básicas(LD)

0.104 #s (C200HX)0.156 #s (C200HG)0.313 #s (C200HE)

0.375 #s

MOV(21) 0.417 #s (C200HX)0.625 #s (C200HG)1.250 #s (C200HE)

19.00 #s

ADD(30) 16.65 #s (C200HX/HG)31.45 #s (C200HE)

40.10 #s

Otras instrucciones C200HX/HG: 1/3 a 2/3 de tiempo de C200HSC200HE: 3/4 a 4/5 de tiempo de C200HS

---

Procesos comunes(proceso de END(01))

0.7 ms (C200HX/HG)2.1 ms (C200HE)

0.7 ms

Tiempo de refresco deE/S

Igual que C200HS, aunque parte de refrescode E/S especiales es de 1/2 a 2/3 del tiempodel C200HS.

---

Características del C200HALPHA Sección 1-7

Page 15: C200HALPHA Manual Programacion

7

Función CapacidadFunciónC200HSC200HX/HG/HE

Funciones de laCPU

Puerto RS-232C Disponible en laC200HX/HG/HE-CPU4j-ZE/6j-ZE/8j-ZE

Disponible en laC200HS-CPU2j-E/3j-E

Función de reloj Disponible en todas las CPUs exceptoC200HE-CPU11-ZE

Disponible en todos losmodelos

Funciones de SYSMACNET Link y SYSMACLINK

Se pueden instalar tarjetas decomunicaciones en todos los PLCs exceptoC200HE-CPU11-ZE.(referencias de tarjetas:C200HW-COM01/04-E)

Disponible en laC200HS-CPU3j-E

Tarjetas decomunicaciones

--- Las tarjetas de comunicaciones se puedeninstalar en todos los PLCs excepto enC200HE-CPU11-ZE. Estas tarjetas puedenproporcionar las siguientes funciones:

SYSMAC NET Link y SYSMAC LINK,Puertos de comunicaciones (Puertos 1 y 2), yFunciones Macro de Protocolo

---

Unidades deE/S especiales

--- Las instrucciones IORD(222) y IOWR(223)permite transferir datos a y de unidades deE/S especiales.

---

Interrupciones Unidades de entrada deinterrupción

2 Unidades (16 entradas) 1 Unidad (8 entradas)

Interrupciones de tarjetasde comunicaciones

Se puede seleccionar. ---

Características derespuesta

Igual que el C200HS, aunque es posible unarespuesta de 1-ms en la C200HW-SLKjj

Modo normal: 10 msModo alta velocidad: 1ms

(Siempre 10 ms cuandose utiliza una SYSMACNET Link o SYSMACLINK)

NTs --- NT Link (1:1) o NT Link (1:N)

(Hasta 8 NTs se pueden conectar desde elpuerto RS-232C a través de un adaptador deenlace RS-422/485. Cuando se utiliza laC200HE-CPUjj-ZE con una tarjeta decomunicaciones, sólo se pueden conectar 3NTs.)

NT Link (1:1)

SYSMAC LINK Tiempo de servicio 3.5 ms máx. (1 nivel de operación) 10.8 ms máx.(1 nivel de operación)

Programación remota Posible desde el puerto de periféricos odesde los puertos RS--232C (incluidastarjetas de comunicaciones).

Posible desde el puertode periféricos.

Efecto en tiempo derespuesta

No 10 ms en cualquiermodo

1-7-3 Compatibilidad de programasLos programas y cassettes de memoria para el C200HS Y C200HX/HG/HE sepueden utilizar en el C200HX/HG/HE(--ZE) y los programas desarrollados parael C200H se pueden transferir para utilizar en el C200HALPHA fácilmente.

En el manual de operación de SYSWIN se detallan los pasos individuales invo-lucrados en la transferencia de programas. También necesitará un cable deconexión CQM1-CIF02 para conectar el ordenador al C200HALPHA.

Precauciones Observar las siguientes precauciones cuando se transfieran programas deC200H al C200HALPHA.

! Si un programa de C200H que incluye la instrucción SET SYSTEM (SYS(49))se transfiere al C200HALPHA, los parámetros de operación seleccionadospor esta instrucción se transferirán al área de configuración del PLCC200HALPHA (DM 6600, DM 6601 y DM 6655) escribiéndose sobre las

Características del C200HALPHA Sección 1-7

Page 16: C200HALPHA Manual Programacion

8

selecciones actuales. Confirmar que las selecciones de estos canales soncorrectas antes de utilizar el C200HALPHA después de transferir el programa.

! Si el programa de C200H accede al almacenamiento de error del C200H enDM 0969 a DM 0999, las direcciones de los canales a los que se accede sedeben cambiar a DM 6000 a DM 6030, que es el área de almacenamiento deerror para el C200HALPHA.

! Cualquier programa que dependa del tiempo de ciclo de ejecución (es decir,del tiempo necesario para ejecutar todo el programa) se debe ajustar cuandose utilice en el C200HALPHA, que proporciona un tiempo de ciclo mucho másrápido.

Observar las siguientes precauciones cuando se utilice una CPU C200HX/HG/HE-CPUjj-ZE.! Se ha de tener cuidado cuando se conviertan instrucciones de expansión en

programas de C200HX/HG/HE al importarlos, copiarlos o pegarlos en progra-mas de C200HX/HG/HE versión ZE. Si se utilizan códigos de función por de-fecto de instrucción de expansión, serán convertidos automáticamente a códi-gos de función de 3 dígitos. Las instrucciones listadas en la columna de la iz-quierda de la siguiente tabla no serán convertidas correctamente y apareceráun mensaje indicando que no hay códigos de función para ellas. Se recomien-da utilizar las instrucciones de la columna de la derecha o corregir el programadespués de la conversión. (Incluso aunque las instrucciones que no se pue-den convertir se pueden utilizar asignándoles códigos de función comoinstrucciones de expansión).

Instrucciones que no seconvertirán automáticamente

Instrucciones recomendadas

ADBL +CL

DBS /

DBSL /L

MBS *

MBSL *LSBBL --CL

BXF2 BXFR (Especificar directamente DM deexpansión como un operando)

XFR2 XFER (Especificar directamente DM deexpansión como un operando)

IEMS Ninguna (Especificar directamente DM deexpansión como un operando si fuera posible)

Utilización de memoria internaEl siguiente procedimiento marca los pasos para transferir programas deC200H a la memoria de usuario del C200HALPHA.

1, 2, 3... 1. Transferir el programa y cualquier otro dato necesario al área de trabajo delSYSWIN. Estos datos se pueden transferir de una CPU C200H, de disqueteo desde una unidad de memoria de C200HALPHA.Para transferir de una CPU C200H, seleccionar en el SYSWIN el PLC aC200H, conectar el SYSWIN al C200H, pasar a online y transferir el pro-grama y el resto de datos necesarios al área de trabajo del SYSWIN. Proba-blemente deseará transferir datos de DM y la tabla de E/S.

o Para transferir desde disquete, seleccionar en el SYSWIN el PLC a C200Hen modo offline y cargar el programa y cualquier otro dato necesario en elárea de trabajo del SYSWIN. Probablemente deseará transferir datos deDM y la tabla de E/S.

2. Pasar a offline si el SYSWIN no lo estaba ya.3. Cambiar en el SYSWIN la selección de PLC a C200HALPHA.4. Si desea transferir comentarios de E/S junto con el programa al C200HAL-

PHA, asignar el área de UM para comentarios de E/S.5. Conectar el SYSWIN al C200HALPHA y pasar a online.

Precauciones conC200HX/HG/HE versión ZE

Características del C200HALPHA Sección 1-7

Page 17: C200HALPHA Manual Programacion

9

6. Verificar que el pin 1 en la CPU del C200HALPHA está en OFF para permitirescribir en el área de UM.

7. Transferir el programa y los datos necesarios al C200HALPHA. Probable-mente deseará transferir datos de DM y la tabla de E/S.

8. Desconectar y volver a conectar el C200HALPHA para resetearlo.9. Ejecutar un programa de prueba antes de la operación real.

Utilización de cassettes de memoriaEl siguiente procedimiento describe los pasos para transferir programas deC200H al C200HALPHA vía casettes de memoria EEPROM o EPROM. Estopermitirá leer el programa del cassette de memoria automáticamente cuandoarranque el C200HALPHA. Los cuatro primeros pasos de este procedimientoson los mismos que los utilizados para transferir directamente a la memoriainterna del C200HALPHA (área UM).

1, 2, 3... 1. Transferir el programa y cualquier otro dato necesario al área de trabajo delSYSWIN. Estos datos se pueden transferir de una CPU C200H, de disqueteo desde una unidad de memoria.Para transferir de una CPU C200H, seleccionar en el SYSWIN el PLC aC200H, conectar el SYSWIN al C200H, pasar a online y transferir el pro-grama y el resto de datos necesarios al área de trabajo del SYSWIN. Proba-blemente deseará transferir datos de DM y la tabla de E/S.

o Para transferir desde disquete, seleccionar en el SYSWIN el PLC a C200Hen modo offline y cargar el programa y cualquier otro dato necesario en elárea de trabajo del SYSWIN. Probablemente deseará transferir datos deDM y la tabla de E/S.

2. Pasar a offline si el SYSWIN no lo estaba ya.3. Cambiar en el SYSWIN la selección de PLC a C200HALPHA.4. Si desea transferir comentarios de E/S junto con el programa al C200HAL-

PHA, asignar el área de UM para comentarios de E/S.5. Asignar los canales de expansión de DM 7000 a DM 7999 en el área de UM

utilizando la operación de asignación de UM desde el SYSWIN.6. Copiar de DM 1000 a DM 1999 a DM 7000 a DM 7999.7. Escribir “0100” en DM 6602 para transferir automáticamente al arrancar los

contenidos de DM 7000 a DM 7999 a DM 1000 a DM 1999.8. Para transferir a un cassette de memoria EEPROM, utilizar el siguiente pro-

cedimiento.a) Conectar el SYSWIN al C200HALPHA y pasar a online.b) Verificar que el pin 1 en la CPU del C200HALPHA está en OFF para per-

mitir escribir en el área de UM.c) Transferir el programa y cualquier otro dato necesario al C200HALPHA.

Probablemente deseará transferir datos de DM y la tabla de E/S si fuecreada para el C200H. Verificar que especifica transferir área de expan-sión de DM, y si se desea área de comentario de E/S.

d) Poner a ON SR 27000 desde el SYSWIN para transferir datos de UM alcassette de memoria.

Características del C200HALPHA Sección 1-7

Page 18: C200HALPHA Manual Programacion

11

SECCIÓN 2Hardware

Esta sección contiene información de ciertos aspectos de hardware del C200HALPHA importantes para programar. Incluyecomponentes de la CPU, configuración básica del PLC, capacidades de la CPU y cassettes de memoria. Esta información estámás detallada en la Guía de Instalación C200HALPHA.

2-1 Componentes de la CPU 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1-1 Indicadores de la CPU 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1-2 Conexión de periféricos 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2-2 Configuración del PLC 14. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-3 Características de la CPU 15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4 Cassettes de memoria 16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2-4-1 Selecciones de Hardware y Software 16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4-2 Escritura/Lectura de datos de UM 17. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4-3 Escritura/Lectura de datos de IOM 18. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2-5 Operación sin batería de respaldo 19. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-6 Interruptor DIP de la CPU 20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 19: C200HALPHA Manual Programacion

12

2-1 Componentes de la CPULa siguiente figura muestra los principales componentes de la CPU.

Tarjeta decomunicaciones (LaC200HW-COM06-E estáinstalada en la CPU de lafigura.)

Indicadores

Cassette memoriaInterruptor DIP

Puerto deperiféricos

Puerto RS-232C

Cassette de memoria La CPU tiene un compartimento para conectar el cassette de memoria a la CPU.Este cassette funciona como una RAM junto con la RAM incorporadaen la CPU.

Puerto de periféricos Para conectar dispositivos periféricos.

Puerto RS-232C La CPU tiene un puerto RS-232C incorporado.

Tarjeta de comunicaciones La CPU tiene un compartimento para conectar la tarjeta de comunicaciones.

Interruptor DIP El PLC opera de acuerdo con las selecciones del interruptor DIP de la CPU. Elinterruptor DIP de la CPU C200HX/HG/HE tiene 6 pines. Consultar en la si-guiente tabla la función de cada pin. (El PLC se suministra con los pines a OFF).

12

34

56

ON

OFF!ON

Pin Sel. Función

1 ON No se pueden escribir datos en el área UM.

OFF Se pueden escribir datos en el área UM.

2 ON Lectura automática de los datos del cassette de memoria al arrancar.

OFF No leer automáticamente los datos del cassette de memoria alarrancar.

3 ON Mensajes de la consola de programación en inglés.

OFF Mensajes de la consola de programación en japonés.

4 ON Se pueden seleccionar las instrucciones de expansión.

OFF No se pueden seleccionar las instrucciones de expansión (selecciónpor defecto).

5 ON Fijar la siguiente configuración del puerto de comunicaciones (inclusocon un CQM1-CIF02 conectado a puerto de periféricos):

1 bit start, 7 bits datos, paridad par, 2 bit stop, 9.600 bps velocidad decomunicación.

OFF Cancela las selecciones anteriores.

6 ON Consola de programación en modo terminal de expansión (AR 0712en ON).

OFF Consola de programación en modo normal (AR 0712 en OFF).

Componentes de la CPU Sección 2-1

Page 20: C200HALPHA Manual Programacion

13

2-1-1 Indicadores de CPULos indicadores de la CPU proporcionan información visual del funcionamientogenérico del PLC. Aunque no sustituyen a los indicadores de las áreas de datosde memoria, sí confirman el funcionamiento adecuado o no del PLC.

Indicador Significado

RUN (verde) Encendido cuando el PLC funciona normalmente.

ERR (rojo) Parpadea si el PLC detecta un error no fatal en la operación. ElPLC seguirá operando.

Encendido si el PLC detecta un error fatal. El PLC parará laoperación. Una vez parada la operación, el indicador RUN sepondrá en OFF y todas las salidas se pondrán a OFF.

INH (naranja) Encendido cuando el indicador de carga en OFF (bit SR) está enON, en cuyo caso todas las señales de salida se pondrán a OFF.

COMM(naranja)

Parpadea cuando la CPU está comunicando con el dispositivoconectado al puerto de periféricos o al puerto RS--232C.

2-1-2 Conexión de periféricosPara programar y monitorizar los PLCs C200HALPHA se puede utilizar unaconsola de programación o un ordenador IBM PC/AT o compatible con elSYSWIN.

Consola de Programación Se puede conectar una consola de programación C200H-PR027-E oCQM1-PRO01-E como se muestra en el siguiente diagrama. La C200H-PR027-E se conecta vía cable C200H-CN222 o C200H-CN422, pedidos porseparado. Con la CQM1-PRO01-E se suministra un cable de conexión.

IBM PC/AT con SYSWIN

Componentes de la CPU Sección 2-1

Page 21: C200HALPHA Manual Programacion

14

Un ordenador IBM PC/AT o compatible con SYSWIN se puede conectar comose indica en el siguiente diagrama.

C200HX/HG/HEMontadadirecta-mente

PuertoRS-232C

Unidad Host Link

C200H-LK201-V1

Cables deconexión

Puerto deperiféricos

C200H-CN222/422(2 m/4 m)

Cable de conexión deconsola de programación

IBM PC/AT or Compatible SYSWIN

C500-ZL3AT1-E

C200H-PRO27-E CQM1-PRO01-EC200H-DAC01

SoftwarePeriféricos

Consola de programaciónpara C200H

Consola acceso de datospara C200H

Consola de programacón

XW2Z-200S/500S(Ver nota)

Cable de conexiónCable de conexión

CQM1-CIF02

Note El conector del cable de conexión XW2Z-200S/500S es un terminal hembra de25 pines. Es necesario un adaptador para el terminal D--sub hembra de 9 pinesen el lado del ordenador.

2-2 Configuración del PLCLa configuración básica del PLC consta de dos tipos de bastidor: un bastidor deCPU y bastidores expansores de E/S. Los bastidores expansores de E/S no es

Configuración del PLC Sección 2-2

Page 22: C200HALPHA Manual Programacion

15

un componente necesario en el sistema básico. Se utilizan para incrementar elnúmero de puntos de E/S. También se puede utilizar un tercer tipo de bastidor,denominado bastidor esclavo, cuando el sistema dispone de E/S remotas.

Un bastidor de CPU C200HX/HG/HE consta de tres componentes: (1) Elsoporte de CPU, en el cual se montan la CPU y otras unidades. (2) La CPU, queejecuta el programa y controla el PLC. (3) Otras unidades, tales como unidadesde E/S, unidades de E/S especiales y unidades de enlace, que proporcionan losterminales de E/S físicos correspondientes a puntos de E/S.

Un bastidor de CPU C200HX/HG/HE se puede utilizar solo o se puede conectara otros bastidores para disponer de más puntos de E/S. El bastidor de CPUtiene tres, cinco, ocho o diez huecos en los que se pueden montar estas otrasunidades dependiendo del soporte utilizado.

Un bastidor expansor de E/S se puede ver como una extensión del PLC dadoque dispone de huecos adicionales en los que se pueden montar otras uni-dades. Está compuesto de un soporte expansor de E/S en el que se montan unafuente de alimentación y hasta diez unidades o módulos.

Un bastidor expansor de E/S se conecta siempre a la CPU mediante los conec-tores de los bastidores, permitiendo la comunicación entre los dos bastidores.Al bastidor de CPU se pueden conectar hasta dos bastidores expansores deE/S en serie.

En los bastidores esclavos sólo se pueden montar unidades de E/S y unidadesde E/S especiales. Todas las unidades de E/S, unidades de E/S especiales, uni-dades de E/S de alta densidad grupo 2, unidades maestras de E/S remotas, uni-dades PC y Host Link se pueden montar en cualquier hueco de cualquier basti-dor. Las unidades de entrada de interrupción se deben montar en los soportesC200H-BCjj1-V2.

Consultar la Guía de instalación C200HX/HG/HE para más información sobrequé huecos se pueden utilizar para qué unidades y otros detalles sobre configu-ración del PLC. La forma de asignar en memoria los puntos de E/S de las uni-dades se describe en 3-3 Area de IR.

2-3 Características de la CPUEl siguiente es un cuadro comparativo de las características de las CPUsC200HE/HG/HX. La CPU4j-ZE, CPU6j-ZE y CPU8j-ZE incorporan puertoRS--232C.

Item C200HE- C200HG- C200HX-

CPU11-ZE CPU32-ZE/42-ZE

CPU33-ZE/43-E

CPU53-ZE/63-ZE

CPU34-ZE/44-ZE

CPU54-ZE/64-ZE

CPU65-ZE/85-ZE

Capacidad de programa 3.2Kpalabras

7.2Kpalabras

15.2K palabras 31.2K palabras 63.2Kpalabras

Capacidad de DM 4Kpalabras

6Kpalabras

6K palabras 6K palabras

Capacidad de EM Ninguna 6K palabras " 1 banco CPUj4-ZE: 6K palabras " 3 bancosCPU65-ZE: 6K palabras " 8 bancosCPU85-ZE: 6K palabras " 16 bancos

Tiempo de ejecución deinstrucción básica

0.3 #s mín. 0.15 #s mín. 0.1 #s mín. 0.1 #s mín.

No. máx. de bastidoresexpansores de E/S

2 2 3 2 3

No. máx. de unidades deE/S de alta densidadgrupo 2

Ninguna 10 10 16 10 16

No. máx. de unidades deE/S especiales

10 10 16 10 16

Función reloj No Sí Sí Sí

Hueco de tarjeta decomunicaciones

No Sí Sí Sí

Bastidores de CPU

Bastidores expansores deE/S

Posición de montaje de lasunidades

Características de la CPU Sección 2-3

Page 23: C200HALPHA Manual Programacion

16

2-4 Cassettes de memoriaEl C200HX/HG/HE incorpora una RAM para el programa de usuario, por lo quese puede crear un programa normal incluso sin instalar un cassette de memoria.Sin embargo se puede utilizar un cassette de memoria opcional para almacenarel programa, configuración del PLC, comentarios de E/S, área de DM y conteni-dos de otras áreas de memoria. Consultar instrucciones de instalación de cas-sette de memoria en Guía de Instalación C200HX/HG/HE.

El cassette de memoria se puede utilizar para almacenar y cargar datos deUM y de IOM; la UM almacenada en el cassette de memoria también sepuede comparar con la UM del PLC.

1, 2, 3... 1. Los contenidos de UM (memoria de usuario) se puede almacenar en el cas-sette de memoria para ser cargada posteriormente o verificada. Si el pin 2del interruptor DIP de la CPU está en ON, los contenidos del cassette dememoria se cargarán automáticamente cuando se conecte el PLC.El áre de UM contiene el programa de diagrama de relés, la DM fija (porejemplo el Setup del PLC), DM de expansión, comentarios de E/S, la tablade E/S y la información de asignación de memoria del área de UM.

2. Los contenidos de memoria de E/S del PLC (IOM) se puede almacenar enel cassette de memoria para ser recuperada más tarde.IOM incluye el área de IR, área de SR, área de LR, área de HR, área de AR,PVs de temporizadores y contadores, de DM 0000 a DM 6143 de EM 0000a EM 6143.

Los datos de UM y IOM son totalmente compatibles entre C200HX/HG/HE yotros PLCs C200HX/HG/HE, excepto que las nuevas instrucciones (matemáti-cas e instrucciones de comparación de entrada) que no eran soportadas por lasCPUs C200HX/HG/HE anteriores.

Hay disponibles dos tipos de cassettes de memoria: EEPROM y EPROM. Lasiguiente tabla muestra los cassettes de memoria que se pueden utilizar con losPLCs C200HX/HG/HE. Consultar las referencias y especificaciones en elApéndice A Modelos Disponibles.

Memoria Capacidad Comentarios

EEPROM 4K, 8K,16K, 32K,or 64Kwords

El cassette de memoria EEPROM se puede utilizar paraescribir y leer datos de UM y IOM a la CPU. No necesitaninguna alimentación de respaldo y retendrá los datosincluso aunque se desmonte de la CPU.

EPROM 16K or 32Kwords

Un cassette de memoria EPROM sólo se puede utilizarpara backup y lectura de datos de UM.

Utilizar un grabador de PROM normal para grabar el pro-grama en el cassette de memoria EPROM.

Nota 1. La vida útil de la EEPROM es de 50.000 grabaciones.2. Con el cassette de memoria no se incluye el chip EPROM.

2-4-1 Selecciones de Hardware y SoftwareA continuación se describen las selecciones de hardware y software relativas alas operaciones del cassette de memoria.

Selecciones del interruptor La selección inicial del interruptor 1 del cassette de memoria es a OFF. Che-quear la selección del interruptor 1 antes de la instalación.

Cassettememoria

Sel. in-ter. 1

Función

EEPROM ON Cassette de memoria protegido contra escritura.OFF Cassette de memoria no protegido contra escritura.

EPROM ON 27512-equivalente ROM-KD-B EPROM(32K palabras, 150 ns de tiempo de acceso)

OFF 27256-equivalente ROM-JD-B EPROM(16K palabras, 150 ns de tiempo de acceso)

Funciones del cassette dememoria

Cassettes de memoriacompatibles

Cassettes de memoria Sección 2-4

Page 24: C200HALPHA Manual Programacion

17

SR 269 a SR 273 contienen indicadores y bits de control relativos a los conten-idos y operación del cassette de memoria. Consultar 3-4 Area SR (Relés espe-ciales).

2-4-2 Escritura/Lectura de datos de UMUtilizar el siguiente procedimiento para transferir datos de UM a/de un cassettede memoria. (Se necesita un grabador de PROM para grabar datos en un cas-sette de memoria EPROM. Consultar el Manual de Operación del SYSWIN paramás información).

Note La UM contiene el programa de diagrama de relés, la DM fija (setup del PLC, DMde expansión, comentarios de E/S, tabla de E/S y la información de asignaciónde área de UM.

Utilizar el siguiente procedimiento para escribir datos de UM en un cassette dememoria EEPROM.

1, 2, 3... 1. Antes de conectar la alimentación del C200HX/HG/HE, verificar que el in-terruptor 1 del cassette de memoria está en OFF.

2. Conectar el C200HX/HG/HE y escribir el programa de diagrama de relés oleer uno existente del disco de datos.

3. Poner el C200HX/HG/HE en modo PROGRAM.4. Utilizar el ordenador con SYSWIN o una consola de programación para po-

ner a SR 27000 a ON (el bit de guardar UM en cassette). Los datos del PLCse escribirán en el cassette de memoria. SR 27000 se pondrá automática-mente en OFF una vez completada la transferencia de datos.

5. Si se desea proteger contra escritura los datos del cassette de memoria,desconectar el PLC y poner el interruptor 1 del cassette de memoria a ON.Si este interruptor está en ON, se mantendrán los datos en el cassette dememoria incluso aunque se pona a ON el bit SR 27000.

Hay dos formas de leer datos de UM de un cassette de memoria: transferenciaautomática al arrancar o transferencia utilizando un dispositivo periférico.(No existe la función de escritura automática de datos en cassette de memoria)Transferencia automática al arrancar:

1, 2, 3... 1. Poner a ON el pin 2 del interruptor DIP de la CPU.2. Instalar el cassette de memoria que contiene los datos en el C200HX/HG/

HE.3. Conectar la alimentación del C200HX/HG/HE. Los contenidos del cassette

de memoria se transferirán automáticamente a la CPU. Si los datos no sepueden transferir se producirá un error de memoria.

Transferencia mediante dispositivo periférico:

1, 2, 3... 1. Instalar el cassette de memoria que contiene los datos en el C200HX/HG/HE.

2. Conectar la alimentación del C200HX/HG/HE y ponerlo en modo PRO-GRAM.

3. Utilizar un ordenador con SYSWIN, o una consola de programación paraponer a ON SR 27001 (el bit de Cargar UM de cassette). Se cargarán losdatos del cassette de memoria al PLC. SR 27001 se pondrá automática-mente en OFF una vez completada la transferencia.

Utilizar el siguiente procedimiento para comparar los datos de UM de un cas-sette de memoria con los datos de UM del PLC.

1, 2, 3... 1. Cambiar el C200HX/HG/HE a modo PROGRAM.2. Utilizar un ordenador con SYSWIN, o una consola de programación para

poner a ON SR 27002 (el bit de Comparar UM con cassette). Secompararán los datos del PLC y los del cassette de memoria. SR 27002 sepondrá automáticamente en OFF una vez completada la comparación.

3. Utilizar un ordenador con SYSWIN, o una consola de programación paracomprobar el estado de SR 27003 (Indicador de resultado de compara-ción).

Indicadores y bits decontrol del área SR

Escribir datps de UM encassette de memoria

Leer datos de UM delcassette de memoria

Comparar datos de UM enun cassette de memoria

Cassettes de memoria Sección 2-4

Page 25: C200HALPHA Manual Programacion

18

Nota Si la verificación de datos se efectúa en un modo que no sea PROGRAM, seproducirá un error de operación (FAL90) y se pondrá en ON 27002 (1). Aunquetambién se pondrá en ON 27003, la comparación no se realizará. Si la compara-ción de datos se ejecuta sin el cassette de memoria montado, 27003 se pondráen ON (1).

2-4-3 Escritura/lectura de datos IOMUtilizar los siguientes procedimientos para transferir datos de IOM a o de cas-sette de memoria. (Es necesario un grabador PROM para escribir datos en uncassette de memoria EPROM).IOM incluye las áreas IR, SR, LR, HR, AR, PVs de temporizador y contador, deDM 0000 a DM 6143 y de EM 0000 a EM 6143.La capacidad del cassette de memoria debe concordar con la capacidad de me-moria de la CPU cuando se transfieren datos de IOM a o de un cassette de me-moria. Los requisitos de memoria son los siguientes:

Escribir IOM: capacidad de CPU $ capacidad de cassette de memoriaLeer IOM: capacidad de CPU = cantidad de datos IOM en cassette de me-moria

La siguiente tabla muestra la capacidad requerida del cassette de memoriapara almacenar 1 o más bancos de EM.

Capacidad cassette de me-moria

Número de bancos de EM

4K palabras Ninguno (Un cassette de memoria de 4K-palabrasno se puede utilizar para almacenar datos de iOM)

8K palabras Ninguno

16K palabras 1 banco (Sólo se puede almacenar banco 0 de EM)

32K palabras 3 bancos (Se pueden almacenar bancos 0 a 2 deEM)

Los bits 08 a 15 de SR 273 indican el número de banco de EM de los datos deIOM almacenados en el cassette de memoria.

Contenido deSR 27308 a SR 27315

Significado

00 No hay cassette de memoria instalado, no hay datos deIOM en el cassettte de memoria o no hay datos de EMen el cassette de memoria.

01 El cassette de memoria contiene datos de IOM que in-cluyen sólo banco 0 de EM. (Guardado con un C200HG-CPUjj-ZE.)

04 El cassette de memoria contiene datos de IOM que in-cluyen bancos 0 a 2 de EM. (Guardado con un C200HX-CPUjj-ZE.)

Utilizar el siguiente procedimiento para escribir datos de IOM en un cassette dememoria EEPROM.

1, 2, 3... 1. Antes de conectar la alimentación del C200HX/HG/HE, verificar que el in-terruptor 1 del cassette de memoria está en OFF.

2. Conectar el C200HX/HG/HE y ponerlo en modo PROGRAM.3. Utilizar un ordenador con el SYSWIN o una consola de programación para

poner a ON SR 27300 (bit de guardar IOM en cassette). Los datos se escri-birán desde el PLC al cassette de memoria. SR 27300 se pondrá automáti-camente en OFF una vez completada la transferencia.

4. Si desea protreger contra escritura los datos del cassette de memoria, des-conectar la alimentación del PLC, poner a ON el interruptor 1 del cassettede memoria. Si este interruptor está en ON, los datos del cassette de me-moria se mantendrán incluso si SR 27300 se pone en ON.

Utilizar el siguiente procedimiento para leer datos IOM de un cassette de memo-ria. Los contenidos de histórico de errores (DM 6000 a DM 6030) no se puedenleer del cassette de memoria.

Escribir datos de IOM en uncassette de memoria

Leer datos IOM del cassettede memoria

Cassettes de memoria Sección 2-4

Page 26: C200HALPHA Manual Programacion

19

Nota No hay función que lea automáticamente datos IOM del cassette de memoria.

1, 2, 3... 1. Instalar el cassette de memoria que contiene los datos en el C200HX/HG/HE.

2. Desconectar el C200HX/HG/HE y ponerlo en modo PROGRAM.3. Utilizar un ordenador con SYSWIN, o una consola de programación para

poner a ON SR 27301 (el bit de Cargar IOM de cassette). Se cargarán losdatos del cassette de memoria al PLC. SR 27301 se pondrá automática-mente en OFF una vez completada la transferencia.

2-5 Operación sin batería de respaldoLos PLCs C200HX/HG/HE versión ZE pueden funcionar sin una batería de re-spaldo siempre que se cumplan las siguientes condiciones.% El programa de usuario esté almacenado en un cassette de memoria

(EPROM o EEPROM).% No se utilice el reloj. (Para utilizar el reloj interno se ha de utilizar batería).% Se ha efectuado una selección la Configuración del PLC para no generar un

error de batería.% El sistema está diseñado para funcionar correctamente incluso aunque se

pierda el área de datos de DM.% El programa de usuario está escrito de tal forma que el bit SR 25215 (bit de

salida en OFF) no se pone en ON. (El estado de este bit será inestable si nohay batería).

% Se ha seleccionado en la configuración del PLC borrar el estado de SR 25215(bit de retener estado de E/S) y SR 25211 (bit de retener estado forzado). (Sino hay batería el estado de estos bits será inestable).

% El pin 1 del interruptor DIP de la CPU está en OFF y el pin 1 en ON.Utilizar el siguiente procedimiento.

1, 2, 3... 1. Asignar el área de UM con el SYSWIN. (Este paso es necesario cuando elárea de Expansión de DM va a ser utilizada por unidades de E/S especialeso cuando los comentarios de E/S van a ser almacenados en la CPU).

2. Crear el programa de usuario y transferirlo a la CPU. Añadir las siguientesinstrucciones en el programa de usuario para asegurar que el bit de salidaen OFF (SR 25215) no se pondrá a ON.

Note Aunque SR 25215 mantendrá su estado anterior siempre que sedesconecta la alimenatación cuando opera con una batería, su esta-do será inestable cuando funciona sin ella. Para garantizar que per-manecerá en OFF, hay que incluir la siguiente línea en el programa.

2521525314

3. Hacer las siguientes selecciones en la Configuración del PLC.a) Seleccionar DM 6601 a 0000 para que IOM y estados forzados se rese-

teen al arrancar.b) Seleccionar DM 6655 a 1x0x para que no se detecten los errores de bat-

ería. (”x” indica aquéllas selecciones que no afectan y cuyo estadopuede ser 1 ó 0).

c) Seleccionar DM 6600 y DM 6602 para DM 6654 según sea necesario.4. Seleccionar el área de DM fija, incluidas las selecciones para la tarjeta de

comunicaciones en DM 6144 a DM 6599.5. Seleccionar el área de expansión de DM si fuera necesario.6. Confirmar la operación.7. Montar el cassette de memoria en la CPU y pasar a modo PROGRAM.

Cassettes de memoria Sección 2-4

Page 27: C200HALPHA Manual Programacion

20

8. Poner a ON SR 27000 para grabar el programa, datos de DM fijos y configu-ración del PLC en el cassette de memoria.

Note Cuando se utilice una consola de programación, este bit se pondrá aOFF automáticamente cuando la escritura esté completada. (Si seutiliza el SYSWIN, el bit será forzado a set habiendo que borrar dichoestado antes de que el bit cambie a OFF).

9. Poner a ON el interruptor de protección contra escritura en el Cassette deMemoria.

2-6 Interruptor DIP de la CPULos 6 pines del interruptor DIP controlan 6 de los parámetros de operación de laCPU.

Pin Item Selec--ción

Función

1 Protección de memoria ON El área de UM1 no se puede sobreescribir desde un dispositivoperiférico.

OFF El área de UM1 se puede sobreescribir desde un dispositivoperiférico.

2 Transferencia automática decontenidos de cassette de

i

ON Al arrancar se transferirán automáticamente los contenidos delcassette de memoria a la RAM interna.

memoria OFF Los contenidos no se transferirán automáticamente3 Idioma de los mensajes ON Mensajes de la consola de programación en inglés.j

OFF Mensajes de la consola de programación en el idioma almacenadoen la ROM del sistema.

4 Selección de instrucción deexpansión

ON Instrucciones de expansión seleccionadas por el usuario.Normalmente en ON cuando se utilice un ordenador paraprogramación/monitorización.

OFF Selecciones por defecto de instrucciones de expansión.5 Parámetros de

comunicacionesON Parámetros de comunicaciones estándar para puertos de

comunicaciones (incluyendo puerto de periféricos cuando estáconectado un CQM1-CIF01):

Bits de Start: 1; longitud de datos: 7 bits; paridad: par; bits de stop: 2;velocidad de comunicación: 9.600 bps

OFF No selecciones estándar de comunicaciones.6 Selección de modo TERMINAL

de expansión cuando AR 0712tá ON

ON Modo TERMINAL de expansión (Consola de programación); AR0712 ON.p

está en ON OFF Modo normal (Consola de programación); AR 0712: OFF

Nota 1. El área de UM contiene el programa de diagrama de relés, DM fija (incluidaConfiguración del PLC), DM de expansión, Comentarios de E/S, Tabla deE/S y la asignación de área de UM.

2. El PLC se suministra con los pines seleccionados a OFF.

Interruptor DIP de la CPU Sección 2--5

Page 28: C200HALPHA Manual Programacion

21

SECCIÓN 3Áreas de memoria

Para facilitar la gestión de datos, el PLC dispone de varias áreas de memoria. Las áreas generalmente accesibles por el usuarioparaprogramación se clasifican como áreasde datos. La otra áreade memoria es el área deUM, donde se almacena realmenteel programa. Esta sección describe estas áreas individualmente y contiene información que será necesaria para utilizarlas.

3-1 Introducción 23. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-1-1 Áreas de datos 23. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-1-2 Área de IR/SR 24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3-2 Estructura del área de datos 24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-3 Área de IR (Relés internos) 27. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4 Área de SR (Relés especiales) 31. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3-4-1 Sistema SYSMAC NET/SYSMAC LINK 36. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-2 Sistemas de E/S remotas 37. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-3 Indicadores y bits de control del sistema de enlace 38. . . . . . . . . . . . . . . . . . . . . . . .3-4-4 Bit de retener estado forzado 40. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-5 Bit de retener estado de E/S 40. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-6 Bit de salida OFF 41. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-7 Área FAL (Alarma de fallo) 41. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-8 Indicador de batería baja 41. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-9 Indicador de error de tiempo de ciclo 41. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-10 Indicador de error de verificación de E/S 41. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-11 Indicador de primer ciclo 41. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-12 Bits de reloj 41. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-13 Indicador de paso 42. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-14 Indicador de error de unidad de E/S de alta densidad grupo 2 42. . . . . . . . . . . . . . .3-4-15 Indicadores de error de unidad especial 42. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-16 Indicador de error de ejecución de instrucción, ER 43. . . . . . . . . . . . . . . . . . . . . . . .3-4-17 Indicadores aritméticos 43. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-18 Áreas de subrutina de interrupción 43. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-19 Área de comunicaciones de puerto RS--232C 44. . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-20 Áreas de comunicaciones de puerto de periféricos 44. . . . . . . . . . . . . . . . . . . . . . . .3-4-21 Áreas de cassette de memoria 45. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-22 Bits de error de transferencia de datos 45. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-23 Áreas de memoria de datos 46. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-24 Indicadores de error de memoria 46. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-25 Indicador de salvar/cargar datos 46. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-26 Indicador de error de transferencia 47. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-27 Indicadores de error de configuración del PLC 47. . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-28 Reloj y mapeado del teclado 47. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-29 Indicadores de error de Grupo 2 47. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-4-30 Indicadores de error y bits de restablecer unidad de E/S especial 47. . . . . . . . . . . . .

3-5 Área AR (Relés auxiliares) 47. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-1 Rearrancar unidades de E/S especial 49. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-2 Indicadores de error de bastidor esclavo 50. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-3 Indicadores de error de unidad de E/S de alta densidad grupo 2 50. . . . . . . . . . . . . .3-5-4 Indicadores de error de unidad de E/S óptica 50. . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-5 Selecciones de data link de sistemas SYSMAC Link 50. . . . . . . . . . . . . . . . . . . . . .3-5-6 Bits de históricos de errores 51. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-7 Indicadores de nodo activo 51. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-8 Tiempo de servicio sistemas SYSMAC LINK/SYSMAC NET 51. . . . . . . . . . . . . .3-5-9 Área y bits de calendario/reloj 52. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-10 Bits de teclas de modo TERMINAL 53. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-11 Contador de desconexiones de alimentación 53. . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-12 Indicadores de dispositivos periféricos SYSMAC LINK 53. . . . . . . . . . . . . . . . . . .3-5-13 Indicador de tiempo de ciclo 54. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-14 Indicadores de unidad de enlace montada 54. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-15 Indicador de dispositivo montado en CPU 54. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-16 FPD 54. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-5-17 Indicadores de seguimiento de datos y bits de control 54. . . . . . . . . . . . . . . . . . . . .3-5-18 Indicadores de tiempo de ciclo 54. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3-6 Área de DM (Memoria de datos) 55. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6-1 Área de expansión de DM 55. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6-2 Datos de unidad de E/S especial 56. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 29: C200HALPHA Manual Programacion

22

3-6-3 Unidades de E/S especiales 57. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6-4 Área de histórico de errores 59. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6-5 Configuración del PLC 60. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6-6 Selección de tarjeta de comunicaciones 65. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-6-7 Selecciones de área de unidad de E/S especial 67. . . . . . . . . . . . . . . . . . . . . . . . . . .

3-7 Área de HR (Relés de retención) 67. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-8 Área de TC (Temporizador/Contador) 68. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-9 Área de LR (Relés de enlace) 68. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-10 Área de UM 69. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-11 Área de TR (Relés temporales) 70. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-12 Área EM (Memoria de datos extendida) 70. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3-12-1 Utilización del área EM 70. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-12-2 El banco de EM actual 71. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 30: C200HALPHA Manual Programacion

23

3-1 Introducción

3-1-1 Áreas de datosEn la siguiente tabla se relacionan el nombre, tamaño y rango de cada área. Losdatos y las áreas de memoria se citan normalmente por su acrónimo, p.e., elárea de IR, el área de SR, etc.

Área Tamaño Rango Comentarios

Área de relés internos 1 3,776 bits IR 000 a IR 235 Consultar 3-1-2 Área IR/SR y 3-3 Área IR (Relésinternos) para más información.

Área de relésespeciales 1

312 bits SR 236 a SR 255 Consultar 3-1-2 Área IR/SR y 3-4 Área SR(Relés especiales) para más información.

Área de relésespeciales 2

704 bits SR 256 a SR 299

( p ) p

Área de relés internos 2 3,392 bits IR 300 a IR 511 Consultar 3-1-2 Área IR/SR y 3-3 Área IR (Relésinternos) para más información.

Área de reléstemporales

8 bits TR 00 a TR 07 Utilizados para almacenar temporalmente y car-gar condiciones de ejecución cuando se progra-man ciertos tipos de bifurcaciones.

Área de relés deretención

1,600 bits HR 00 a HR 99 Utilizados para almacenar datos y retener losvalores cuando se desconecta la alimentación.

Área de relés auxiliares 448 bits AR 00 a AR 27 Contiene indicadores y bits para funciones espe-ciales. Retiene estados durante fallos de alimen-tación.

Área de relés de enlace 1,024 bits LR 00 a LR 63 Utilizados para enlaces de datos en sistemas PCLink. (Si no se utilizan en sistemas PC Link, sepueden utilizar como bits o canales de trabajo).

Área detemporizador/contador

512 contadores/temporizadores

TC 000 a TC 511 Utilizados para definir temporizadores ycontadores y acceder a indicadores definalización, PV y SV.

TIM 000 a TIM 015 se pueden refrescar víaproceso de interrupción como temporizadores dealta velocidad.

Área de memoria ded

6,144 palabras DM 0000 a DM 6143 Lectura/escrituradatos 1,000

palabrasDM 0000 a DM 0999 Normal DM.

2,600palabras

DM 1000 a DM 2599 Área de unidad de E/S especial

3,400palabras

DM 2600 a DM 5999 Normal DM.

31 palabras DM 6000 a DM 6030 Registro de error(44palabras)

DM 6100 a DM 6143 Área de prueba de enlace (reservado)

Área de DM fija 512 palabras DM 6144 a DM 6599 Área de DM fija (sólo lectura)j

56 palabras DM 6600 a DM 6655 Setup del PLCÁrea de memoria dedatos extendida

6,144 palabras EM 0000 a EM 6143 La cantidad de área de memoria de EM dependedel modelo de PLC que se esté utilizando. LosPLCs están disponibles sin EM, con un banco de6.144 palabras, o tres bancos de 6.144-palabras.

Al igual que DM, la memoria de EM es accesiblesólo en unidades de canal y sus datos se retie-nen cuando se desconecta la alimentación delPLC.

Los bits y canales de ciertas áreas de datos cuando no se utilicen para la funciónasignada, se pueden utilizar en programación para controlar otros bits. Loscanales y bits disponibles para utilizar de esta forma se denominan bits de tra-bajo y canales de trabajo. La mayoría, pero no todos, de los bits no utilizados sepueden utilizar como bits de trabajo. La aplicación real de los bits de trabajo y delos canales de trabajo se describen en Sección 4 Escritura del programa.

Algunas áreas de datos contienen indicadores y/o bits de control. Los indica-dores son bits que conmutan automáticamente a ON y a OFF para indicar esta-

Bits y canales de trabajo

Indicadores y bits decontrol

Introducción Sección 3-1

Page 31: C200HALPHA Manual Programacion

24

dos de operaciones concretas. La mayoría de los indicadores son de sólo lec-tura, aunque hay algunos que pueden ser conmutados ON/OFF por el usuario.El usuario utiliza los bits de control para controlar aspectos concretos de opera-ción.

3-1-2 Área de IR/SRA excepción de las áreas IR y AR, para designar canales o bits es necesarioindicarlo con su acrónimo. Dado que las direcciones del área de IR y de SR sonconsecutivas, las direcciones de canal o de bit son suficientes para diferenciarestas dos áreas.Las áreas IR y SR están divididas en dos secciones de 256 canales; el límiteentre estas dos secciones está situado en el área SR entre SR 255 y SR 256.Cuando el área SR se utiliza como un operando en una instrucción, el operandono puede cruzar este límite. También las instrucciones que acceden a bits en lasegunda sección (SR 25600 a IR 51115) tienen tiempos de ejecución algo máslargos.

Área Rango ComentariosÁrea IR 1 Área E/S 1 IR 000 a IR 029 Los canales de E/S se asignan al bastidor de

CPU y al expansor de E/S por la posición queocupan.

Área de unidad de E/S de altadensidad grupo 2 y de unidadinterfaz de B7A

IR 030 a IR 049 Asignada a las unidades de E/S de alta densidadgrupo 2 y a las unidades 0 a 9 de interfaz de B7AGrupo 2

Área SYSMAC BUS IR 050 a IR 099 Asignada a los bastidores esclavos de E/Sremotas 0 a 4.

Área de unidad de E/Sespecial 1

IR 100 a IR 199 Asignada a las unidades de E/S especiales 0 a 9.

Área de unidad de E/S ópticay de terminal de E/S

IR 200 a IR 231 Asignada a las unidades de E/S ópticas yterminales de E/S.

Área de trabajo IR 232 a IR 235 Para utilizar como bits de trabajo en el programa.Área SR 1 SR 23600 a SR 25507 Contiene el reloj del sistema, indicadores, bits de

control e información de estado.

Área SR 2 SR 256 a SR 299 Contiene indicadores, bits de control e informa-ción de estado. De SR 290 a SR 297 se utilizancomo canales de E/S por MCRO(99).

Área IR 2 Área E/S 2 IR 300 a IR 309 Estos canales de E/S se asignan al tercerbastidor expansor de E/S por posición.

Área de trabajo IR 310 a IR 329 Para utilizar como bits de trabajo en el programa.Área de unidad de E/S de altadensidad grupo 2

IR 330 a IR 341 Asignada a las unidades de E/S de alta densidadgrupo 2 de A a F.

Área de trabajo IR 342 a IR 349 Para utilizar como bits de trabajo en el programa.Área de unidad de E/S

i lIR 350 a IR 399 No asignada./

especial 2 IR 400 a IR 459 Asignada a unidades de E/S especiales A a F.Área de trabajo IR 460 a IR 511 Para utilizar como bits de trabajo en el programa.

Nota 1. Consultar 3-3 Área IR (Relés internos) para más información.Consultar 3-4 Área SR (Relés especiales) para más información.

2. Los bits en el área de IR 1 y en el área de IR 2 se pueden utilizar en progra-mación como bits de trabajo cuando no se utilicen para las funciones asig-nadas.

3-2 Estructura del área de datosA excepción de las áreas IR y AR, para designar canales o bits es necesarioindicarlo con su acrónimo. Dado que las direcciones del área de IR y de SR sonconsecutivas, las direcciones de canal o de bit son suficientes para diferenciarestas dos áreas.La ubicación real de datos, a excepción del área de TC, queda definida por sudirección. Las direcciones designan el bit o canal donde se encuentran losdatos deseados. El área de TC consta de números de TC, cada uno de los

Estructura del área de datos Sección 3-2

Page 32: C200HALPHA Manual Programacion

25

cuales se utiliza para un temporizador o contador definido en el programa. Con-sultar 3-8 Área de TC para más información sobre números de TC y 5-14Instrucciones de temporizador y contador para más información sobre sus apli-caciones.El resto de las áreas de datos (es decir, las áreas IR, SR, HR, DM, AR y LR)constan de canales, cada uno de los cuales consta de 16 bits numerados de 00a 15 de la derecha a la izquierda. Los canales IR 000 y 001 se muestran a conti-nuación con números de bit. El bit 00 se denomina el de la derecha o de menorpeso; el bit 15 es el de la izquierda o de mayor peso.

Número bit

IR canal 000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

IR canal 001 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

Al área de DM sólo se accede en unidades de canal. Se puede acceder a losdatos de las áreas IR, SR, HR, AR y LR por bits o por canales, dependiendode lainstrucción en la que se vayan a utilizar.Para designar una de estas áreas por canal, lo necesario es el acrónimo (encaso de que sea imprescindible) y la dirección de canal de dos, tres o cuatrodígitos. Para designar un área por bit, la dirección de canal se combina con elnúmero de bit como una única dirección de cuatro o cinco dígitos. La siguientetabla muestra algunos ejemplos. Los dos dígitos de la derecha de una designa-ción de bit deben indicar un bit entre 00 y 15.El mismo número de TC se puede utilizar para designar el valor presente (PV)del temporizador o contador, o un bit que funciona como indicador de finaliza-ción para el temporizador o contador. Todo esto se explica más ampliamente en3-8 Área de TC.

Área Designación de canal Designación de bit

IR 000 00015 (bit de la izquierda en canal 000)

SR 252 25200 (bit de la derecha en canal 252)

DM DM 1250 Imposible

TC TC 215 (designa el PV) TC 215 (designa indicador de finalización)

LR LR 12 LR 1200

Los datos de canal introducidos como valores decimales se almacenan enBCD; los datos introducidos en hexadecimal se almacenan en formato binario.Cada cuatro bits de un canal representan un dígito, hexadecimal o decimal,numéricamente equivalente al valor de los bits binarios. Por lo tanto un canal dedatos contiene cuatro dígitos, numerados de derecha a izquierda. A continua-ción se muestran estos números de dígito y los correspondientes números debit para un canal.

Número bit

Contenidos 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

Número dígito 3 2 1 0

Cuando se escribe en las áreas de datos, éstos se deben presentar en el for-mato adecuado para el objetivo deseado. Esto no es problema cuando sedesignan bits individuales (estado ON u OFF). Sin embargo, cuando se escri-ben datos de canal, es importante el formato, decimal o hexadecimal, depen-diendo de la instrucción que lo utilizará. Consultar Sección 5 Juego de instruc-ciones.

La conversión bidireccional binario--hexadecimal no presenta mayores proble-mas dado que cuatro bits binarios equivalen a un dígito hexadecimal. El binario0101111101011111 se convierte a hexadecimal tomando grupos de 4 bits desdela derecha. El binario 1111 es el hexadecimal F; binario 0101 es hexadecimal 5.

Estructura de datos

Conversión de diferentesformatos de datos

Estructura del área de datos Sección 3-2

Page 33: C200HALPHA Manual Programacion

26

El equivalente hexadecimal sería 5F5F, ó 24,415 en decimal (163 x 5 + 162 x 15+ 16 x 5 + 15).

La conversión bidireccional decimal--BCD es muy sencilla. Cada dígito BCD (esdecir cada grupo de cuatro bits BCD) equivale al correspondiente dígito deci-mal. El número BCD 0101011101010111 se convierte a decimal tomando gru-pos de 4 bits desde la derecha. El binario 0101 es el decimal 5; binario 0111 esdecimal 7. El decimal equivalente sería 5,757. Observar que éste no es elmismo valor numérico que el equivalente hexadecimal de 0101011101010111,que sería 5,757 hexadecimal, ó 22,359 en decimal (163 x 5 + 162 x 7 + 16 x 5 +7).

Dado que el numérico equivalente de cada cuatro dígitos binario BCD debe serun dígito decimal, cualquier combinación superior a 9 no se puede utilizar. Losbits binarios 1011 sí se pueden utilizar en hexadecimal ya que equivalen aldígito hexadecimal C.

Hay instrucciones para convertir datos entre BCD y hexadecimal, consultar5-18 Conversión de datos. En los apéndices se dan las tablas de equivalentesbinarios a dígitos hexadecimal y BCD.

El punto decimal se utiliza sólo en temporizadores. El dígito menos significativorepresenta décimas de segundo. Todas las operaciones aritméticas operansólo con enteros.

Datos binarios con y sin signoEsta sección explica los formatos de datos binarios con y sin signo. Muchasinstrucciones se pueden utilizar con datos con y sin signo pero unas pocas(CPS(114), CPSL(115), DBS(485), DBSL(483), MBS(484) y MBSL(482)) utili-zan sólo datos con signo.

El binario sin signo es el formato estándar utilizado en los PLCs de OMRON. Eneste manual los datos son sin signo a no ser que se diga lo contrario. Los valoresbinarios sin signo son siempre positivos en un rango de 0 ($0000) a 65,535($FFFF). El rango de valores de ocho dígitos va de 0 ($0000 0000) a4,294,967,295 ($FFFF FFFF).

Número bit

Contenidos 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

Valor de dígito 163 162 161 160

El signo de estos datos lo indica el bit 15 (en OFF número positivo, en ON nega-tivo). El rango para valores positivos es de 0 ($0000) a 32,767 ($7FFF), y el devalores negativos de --32,768 ($8000) a --1 ($FFFF).

Indicador de signo

Número bit

Contenidos 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

Valor dígito 163 162 161 160

El rango de valores positivos de ocho dígitos es de 0 ($0000 0000) a2,147,483,647 ($7FFF FFFF), y el de negativos de --2,147,483,648 ($80000000) a --1 ($FFFF FFFF).

Puntos decimales

Binario sin signo

Binario con signo

Estructura del área de datos Sección 3-2

Page 34: C200HALPHA Manual Programacion

27

La siguiente tabla muestra la correspondencia de valores decimal, hexadecimalde 16-bit y hexadecimal de 32-bit.

Decimal 16-bit Hex 32-bit Hex

21474836472147483646

.

.

.327683276732766

.

.

.210

--1--2

.

.

.--32767--32768--32769

.

.

.--2147483647--2147483648

------------

.

.

.------

7FFF7FFE

.

.

.000200010000FFFFFFFE

.

.

.80018000

------...

------------

7FFFFFFF7FFFFFFE

.

.

.0000800000007FFF00007FFE

.

.

.000000020000000100000000

FFFFFFFFFFFFFFFE

.

.

.FFFF8001FFFF8000FFFF7FFF

.

.

.8000000180000000

Los datos binarios positivos son idénticos a los datos binarios sin signo (hasta32,767) y se pueden convertir utilizando BIN(100). El siguiente procedimientoconvierte valores decimales negativos entre --32,768 y --1 a binario con signo.En este ejemplo --12345 se convierte a CFC7.

Número bit

Contenidos 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 1

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

1. Tomar el valor absoluto (12345) y convertirlo a binario sin signo:

Número bit

Contenidos 1 1 0 0 1 1 1 1 1 1 0 0 0 1 1 0

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

2. Calcular el complemento:

Número bit

Contenidos 1 1 0 0 1 1 1 1 1 1 0 0 0 1 1 1

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

3. Sumar uno:

Para convertir datos binarios con signo a decimal, invertir el proceso.

3-3 Área de IR (Relés internos)El área de IR se utiliza tanto para almacenar datos para controlar puntos de E/Scomo bits de trabajo para manipular y almacenar datos internamente. Se puedeacceder en bit o en canal. En el C200HX/HG/HE el área de IR comprende loscanales comprendidos entre 000 y 235 (área de IR 1) y entre 298 y 511 (área deIR 2). Las instrucciones básicas tienen tiempos de ejecución algo más largoscuando acceden al área de IR 2 que cuando lo hacen al área de IR 1.Los canales de IR utilizados para controlar puntos de E/S se denominancanales de E/S. Los bits en los canales de E/S se denominan bits de E/S. Los

Conversión de decimal abinario con signo

Área de IR Sección 3-3

Page 35: C200HALPHA Manual Programacion

28

bits en el área de IR no asignados como bits de E/S se pueden utilizar como bitsde trabajo. Los bits de trabajo del área de IR se resetean cuando se corta la ali-mentación o se para la operación del PLC.

Área RangoÁrea IR 1 Área de E/S 1 IR 000 a IR 029

Área 1 de unidad de E/S de alta densidadgrupo 2 y área de unidad de interfaz deB7A

IR 030 a IR 049

Área SYSMAC BUS IR 050 a IR 099Área 1 de unidad de E/S especial 1 IR 100 a IR 199Área de unidad de E/S óptica y terminal deE/S

IR 200 a IR 231

Área de trabajo IR 232 a IR 235Área IR 2 Área de E/S 2 IR 300 a IR 309

Área de trabajo IR 310 a IR 329Área 1 de unidad de E/S de alta densidadgrupo 2

IR 330 a IR 341

Área de trabajo IR 342 a IR 349Área de unidad de E/S especial 2 IR 350 a IR 459Área de trabajo IR 460 a IR 511

Si una unidad envía entradas al PLC, el bit asignado es un bit de entrada; si launidad recibe salidas del PLC, el bit asignado es de salida. Para poner a ON unasalida, se debe poner a ON el bit de salida asignado. Cuando una entrada sepone a ON, se pone a ON el bit de entrada asignado. Esto se puede utilizar en elprograma para acceder al estado de entrada y controlar el estado de salida através de estos bits de E/S.

Los bits de entrada se pueden utilizar para entrada de señales externas al PLC yse pueden utilizar en cualquier orden en el programa. Cada bit de entrada sepuede utilizar también en tantas instrucciones como sea necesario. No se pue-den utilizar en instrucciones que controlan estados de bit: OUTPUT, DIFFER-ENTIATION UP y KEEP.

Estos bits se utilizan para enviar a la salida los resultados de la ejecución delprograma y se pueden utilizar en cualquier orden en programación. Dado quelas salidas se refrescan sólo una vez en cada ciclo de scan (es decir una vez porcada ejecución del programa), cualquier bit de salida se puede utilizar sólo enuna instrucción que controla su estado, incluyendo OUT, KEEP(011),DIFU(013), DIFD(014) y SFT(010). Si un bit de salida se utiliza más de una vezen una de estas instrucciones, sólo el estado determinado por la última instruc-ción se enviará realmente a la salida del PLC.

Ver en 5-15-1 Registro de desplazamiento -- SFT(010) un ejemplo que utiliza unbit de salida en dos instrucciones de ”control de bit”.

Los canales de E/S se asignan al bastidor de CPU y a los expansores de E/S porposición de los huecos. A cada hueco se le asigna un canal de E/S, como se veen la siguiente tabla. Dado que a cada hueco se le asigna sólo un canal de E/S,un bastidor de 3 huecos utiliza sólo los 3 primeros canales, uno de 5 los 5 prime-ros canales, etc. Los canales asignados a huecos no utilizados o inexistentes sepueden utiizar como canales de trabajo.

Izquierda del bastidor Derecha de bastidor de 10 huecos !

Bastidor Hueco 1 Hueco 2 Hueco 3 Hueco 4 Hueco 5 Hueco 6 Hueco 7 Hueco 8 Hueco 9 Hueco10

CPU IR 000 IR 001 IR 002 IR 003 IR 004 IR 005 IR 006 IR 007 IR 008 IR 009

1er Expansor IR 010 IR 011 IR 012 IR 013 IR 014 IR 015 IR 016 IR 017 IR 018 IR 019

2do Expansor IR 020 IR 021 IR 022 IR 023 IR 024 IR 025 IR 026 IR 027 IR 028 IR 029

3er Expansor IR 300 IR 301 IR 302 IR 303 IR 304 IR 305 IR 306 IR 307 IR 308 IR 309

Canales de E/S

Utilización del bit deentrada

Utilización del bit de salida

Asignaciones de canal parabastidores

Área de IR Sección 3-3

Page 36: C200HALPHA Manual Programacion

29

Canales no utilizados Todos los canales asignados a una unidad que los utilice, sí pueden ser utiliza-dos en programación como canales y bits de trabajo. Las unidades que no utili-zan los canales asignados a sus huecos son las unidades Host Link, PC Link,E/S especiales, maestra de E/S remotas, E/S de alta densidad, unidades de in-terfaz de B7A Grupo 2 y unidades de fuente de alimentación auxiliares.

En casi todos los PLCs C200HX/HG/HE se pueden montar hasta dieciséis uni-dades de E/S especiales en cualquier hueco del bastidor de CPU o expansoresde E/S. (en bastidores esclavos también está limitado el número de unidades deE/S especiales que se pueden montar). A cada unidad de E/S especial se asig-nan diez canales basados en su número de unidad (de 0 a F).

Hasta 10 unidades de E/S especial se pueden montar en los PLCs C200HE--CPU##--ZE, C200HG/HX--CPU3#--ZE/CPU4#--ZE. A cada unidad de E/S es-pecial se asignan diez canales basados en su número de unidad (de 0 a 9).

No. deunidad

Canales de E/S Restricciones del PLC

0 IR 100 a IR 109 Ninguna

1 IR 110 a IR 119

g

2 IR 120 a IR 1293 IR 130 a IR 1394 IR 140 a IR 1495 IR 150 a IR 1596 IR 160 a IR 1697 IR 170 a IR 1798 IR 180 a IR 1899 IR 190 a IR 199A IR 400 a IR 409 No disponible en C200HE-CPUjj-ZE y

C200HG/HX CPU3j E/ j ZEB IR 410 a IR 419

p jj yC200HG/HX-CPU3j-E/4j-ZE.

C IR 420 a IR 429D IR 430 a IR 439E IR 440 a IR 449F IR 450 a IR 459

Nota Los canales de E/S no asignados a unidades de E/S especiales se pueden utii-zar como bits de trabajo.

Se pueden utilizar hasta cinco bastidores esclavos, se utilicen uno o dos mae-stros. Los canales del área de IR se asignan a los bastidores esclavos por elnúmero de unidad en la unidad, como se indica en la siguiente tabla.

No. de unidad Canales de E/S

0 IR 050 a IR 059

1 IR 060 a IR 069

2 IR 070 a IR 079

3 IR 080 a IR 089

4 IR 090 a IR 099

Se puede utilizar el bastidor esclavo con la unidad remotaC500-RT001/002-(P)V1 pero necesita 20 canales de E/S, en lugar de 10, y porlo tanto ocupa los canales de E/S asignados a 2 bastidores esclavos C200H.Cuando se utilice una CPU C200HALPHA, no seleccionar el número de unidaden un bastidor esclavo C500 a 4, dado que no existe el número de unidad 5. Loscanales de E/S se asignan sólo a las unidades instaladas, de izquierda a dere-cha, y no a los huecos como en el sistema C200HALPHA.

Los canales de E/S entre IR 200 e IR 231 se asignan a unidades de E/S ópticapor número de unidad. El canal de E/S asignado a cada unidad es IR 200+n,siendo n el número de unidad seleccionado.

Las unidades de E/S maestras remotas y las unidades host link no utilizancanales de E/S y las unidades PC Link utilizan el área de LR, por lo que los

Asignación para unidadesde E/S especiales ybastidores esclavos

Asignación para unidadesde E/S óptica

Asignación para unidadesmaestra de E/S remotas yde enlace

Área de IR Sección 3-3

Page 37: C200HALPHA Manual Programacion

30

canales asignados a los huecos en los que están montadas estas unidadesestán disponibles como canales de trabajo.

Una unidad de E/S puede necesitar de 8 a 16 bits, dependiendo del modelo.Con la mayoría de las unidades de E/S, los bits no utilizados para entrada osalida están disponibles como bits de trabajo. Las unidades de salida transistorC200H-OD213 y C200H-OD411, así como las unidades de salida triac C200H-OA221, utilizan el bit 08 para indicador de fusible fundido. La unidad de salidatransistor C200H-OD214 utiliza los bits 08 a 11 para el indicador de alarma. Losbits 08 a 15 de cualquier canal asignado a estas unidades no se puede utilizarcomo bits de trabajo.

La unidad de entrada de interrupción utiliza los 8 bits del canal de E/S asignadoa su hueco en el bastidor de CPU. (Una unidad de entrada de interrupción ope-rará como una unidad de entrada normal cuando se instale en un bastidorexpansor de E/S). Los otros 24 bits asignados a su hueco en el bastidor de CPUse pueden utilizar como bits de trabajo.

A las unidades de E/S de alta densidad grupo 2 y unidades de interfaz de B7Ase les asignan canales entre IR 030 y IR 049 de acuerdo con las seleccioneshechas de número de E/S y no utilizan los canales asignados a los huecos enlos que están montadas. Para unidades de 32 puntos, a cada unidad se asignandos canales; para unidades de 64 puntos cuatro canales. Los canales asigna-dos para cada número de E/S se dan en las siguientes tablas. Los canales opartes de canales que no se utilicen para E/S se pueden utilizar como bits ocanales de trabajo en programación.

Unidades de 32 puntos Unidades de 64 puntos

No. de E/S Canales No. de E/S Canales

0 IR 30 a IR 31 0 IR 30 a IR 33

1 IR 32 a IR 33 1 IR 32 a IR 35

2 IR 34 a IR 35 2 IR 34 a IR 37

3 IR 36 a IR 37 3 IR 36 a IR 39

4 IR 38 a IR 39 4 IR 38 a IR 41

5 IR 40 a IR 41 5 IR 40 a IR 43

6 IR 42 a IR 43 6 IR 42 a IR 45

7 IR 44 a IR 45 7 IR 44 a IR 47

8 IR 46 a IR 47 8 IR 46 a IR 49

9 IR 48 a IR 49 9 No puede utilizarse

Cuando se hagan las selecciones de números de E/S en las unidades de E/S dealta densidad verificar que las selecciones no harán que algún canal se asigne amás de una unidad. Por ejemplo, si el número de unidad 0 se asigna a una uni-dad de 64 puntos, el número 1 no se puede utilizar para ninguna unidad en elsistema.Las unidades de E/S de alta densidad grupo 2 y las unidades de interfaz de B7Ano se consideran unidades de E/S especiales y por lo tanto no cuentan en elnúmero de unidades de E/S especiales permitidas en el sistema.Los canales asignados a las unidades de E/S de alta densidad grupo 2 corres-ponden a los conectores de las unidades como se indica en la siguiente tabla.

Unidad Canal Conector/fila

Unidades de 32 puntos Primero Fila Ap

Segundo Fila B

Unidades de 64 puntos Primero CN1, fila Ap

Segundo CN1, fila B

Tercero CN2, fila A

Cuarto CN2, fila B

Asignación de bit paraunidades de E/S

Asignación de bit paraunidades de entrada deinterrupción

Asignación para unidadesde E/S de alta densidadgrupo 2 y unidades deinterfaz de B7A

Área de IR Sección 3-3

Page 38: C200HALPHA Manual Programacion

31

Nota Las unidades de E/S de alta densidad grupo 2 y las unidades de interfaz de B7Ano se pueden montar en bastidores esclavos.

Las unidades de E/S de alta densidad Grupo 2 no se pueden utilizar con la CPUC200HE--CPU11--(Z)E. Estos canales asignados normalmente a estas uni-dades se pueden utilizar como canales de trabajo.

3-4 Área SR (Relés especiales)El área SR contiene indicadores y bits de control para monitorizar la operacióndel PLC, acceder a los pulsos de reloj y señalizar errores. Las direcciones delcanal del área SR van de 236 a 299; las direcciones de bit, desde 23600 a29915.

Las áreas de SR están divididas en dos secciones. la primera sección finaliza enSR255 y la segunda comienza en SR256, Cuando se utiliza un canal del área deSR como operando en una instrucción, el operando no debe saltar el límite deuna a otra sección. Las instrucciones básicas que acceden a bits del área de SR2 tienen tiempos de ejecución más largos.

Área Rango

Área SR 1 SR 23600 a SR 25507

Área SR 2 SR 25600 a SR 29915

La siguiente tabla lista las funciones de los indicadores y bits de control del áreaSR. La mayoría de estos bits se describen más ampliamente a continuación dela tabla.

Si no se indica lo contrario, los indicadores están en OFF hasta que se dé la con-dición especificada, momento en que conmutan a ON. Los bits de reinicio estánhabitualmente en OFF, pero cuando el usuario los cambia a ON y luego a OFF,rearrancará la unidad de enlace especificada. El resto de bits de control estánen OFF hasta que el usuario los ponga a ON.

Observar que el usuario puede escribir en todos los bits y canales de SR. Verifi-car la función del bit o canal deseado antes de intentar utilizarlo en el programa.

Canal(es) Bit(s) Función

236 00 a 07 Área de salida de estado de nodo de lazo para nivel de operación 0 de sistema SYSMACNET Link

08 a 15 Área de salida de estado de nodo de lazo para nivel de operación 1 de sistema SYSMACNET Link

237 00 a 07 Área de salida de código de terminación de ejecución de SEND(090)/RECV(098) paranivel de operación 0 de sistema SYSMAC LINK/SYSMAC NET Link

08 a 15 Área de salida de código de terminación de ejecución de SEND(090)/RECV(098) paranivel de operación 1 de sistema SYSMAC LINK/SYSMAC NET Link

238 y 241 00 a 15 Área de salida de estado de Data link para nivel de operación 0 de sistema SYSMAC LINKo SYSMAC NET Link

242 y 245 00 a 15 Área de salida de estado de Data link para nivel de operación 1 de sistema SYSMAC LINKo SYSMAC NET Link

246 00 a 15 Reservado por el sistema

247 y 248 00 a 07 Indicadores de Run de unidad PC Link 16 a 31 o estado de data link para nivel deoperación 1

08 a 15 Indicadores de Error de unidad PC Link 16 a 31 o estado de data link para nivel deoperación 1

249 y 250 00 a 07 Indicadores de Run de unidad PC Link 00 a 15 o estado de data link para nivel deoperación 0

08 a 15 Indicadores de Error de unidad PC Link 00 a 15 o estado de data link para nivel deoperación 0

Área SR Sección 3-4

Page 39: C200HALPHA Manual Programacion

32

Canal(es) FunciónBit(s)

251 00 Bit de error de lectura de E/S remota

se puedeescribir

01 y 02 No utilizadoescribir

03 Indicador de error de E/S remota

04 a 06 Número de unidad de E/S remotas o unidad E/S óptica con error

07 No utilizado

08 a 15 Canal asignado a unidad de E/S remota o unidad E/S óptica con error

252 00 Indicador de error de SEND(090)/RECV(098) para nivel de operación 0 de sistemaSYSMAC LINK o SYSMAC NET Link

01 Indicador de error de SEND(090)/RECV(098) para nivel de operación 1 de sistemaSYSMAC LINK o SYSMAC NET Link

02 Indicador de operación de nivel de operación 0 de Data link

03 Indicador de error de SEND(090)/RECV(098) para nivel de operación 0 de sistemaSYSMAC LINK o SYSMAC NET Link

04 Indicador de error de SEND(090)/RECV(098) para nivel de operación 1 de sistemaSYSMAC LINK o SYSMAC NET Link

05 Indicador de operación de nivel de operación 1 de Data link

06 Indicador de error de comunicaciones nivel 1 de unidad host link montada en bastidor

07 Bit de rearranque de nivel 1 de unidad host link de montaje en bastidor

08 Bit de error de puerto RS--232C

09 Bit de rearranque de puerto RS--232C

10 Bit de borrar configuración del PLC

11 Bit de retener estado forzado

12 Bit de control de retención de datos

13 Bit de rearranque de nivel 0 de unidad host link de montaje en bastidor

14 No utilizado

15 Bit de salida OFF

253 00 a 07 Área de salida de números FAL

08 Indicador de batería baja

09 Indicador de error de tiempo de ciclo

10 Indicador de error de verificación de E/S

11 Indicador de error de comunicaciones de nivel 0 de unidad host link de montaje en carril

12 Indicador de error de E/S remotas

13 Indicador siempre en ON

14 Indicador siempre en OFF

15 Indicador de primer ciclo

254 00 Reloj de 1 minuto

01 Reloj de 0.02 segundos

02 Indicador de negativo (N)

03 Indicador de ejecución de MTR

Área SR Sección 3-4

Page 40: C200HALPHA Manual Programacion

33

Canal(es) FunciónBit(s)

04 Indicador fuera de rango por exceso (para operaciones binarias con signo)

05 Indicador de fuera de rango por defecto (para operaciones binarias con signo)

06 Indicador de fin de monitorización diferenciada

07 Indicador de paso

08 Indicador de ejecución HKY

09 Indicador de ejecución 7SEG

10 Indicador de ejecución DSW

11 Indicador de error de unidad de entrada de interrupción

12 Indicador de primer ciclo

13 Indicador de error de programación de interrupción

14 Indicador de error de unidad de E/S de alta densidad grupo 2

15 Indicador de error de unidad especial (E/S especial, PC Link, Host Link, maestra de E/Sremotas)

255 00 Reloj de 0.1 segundo

01 Reloj de 0.2 segundo

02 Reloj de 1 segundo

03 Indicador (ER) de error de ejecución de instrucción

04 Indicador de acarreo (CY)

05 Indicador de Mayor que (GR)

06 Indicador de Igual que (EQ)

07 Indicador de Menor que (LE)

08 a 15 Reservado por el sistema (utilizado para bits TR)

256 a 261 00 a 15 Reservado por el sistema

262 00 a 15 Tiempo de ejecución de subrutina de interrupción (acción) más larga (0.1 ms)

263 00 a 15 Número de subrutina de interrupción (acción) con tiempo de ejecución más largo.

(8000 a 8255)

Bit 15: Indicador de interrupción

264 00 a 03 Código de error de puerto RS-232C0: No error

1: Error de paridad

2: Error de trama

3: Error de overrun

E: Conectado Bus de consola deprogramación de NT Link 1:1.

04 Error de comunicaciones puerto RS-232C

05 Listo para enviar de puerto RS-232C

06 Recepción completa de puerto RS-232C

07 Indicador de overflow de recepción de RS-232C

08 a 11 Código de error de puerto de periféricos en todos los modos excepto modo periférico0: No error2: Error de trama1: Error de paridad

3: Error de overrun

12 Error de comunicaciones de puerto de periféricos en modo de E/S general

13 Indicador de listo para enviar de puerto de periféricos en modo de E/S general

14 Indicador de recepción completada de puerto de periféricos en modo de E/S general

15 Indicador de overflow de recepción de puerto de periféricos en modo de E/S general

265 00 a 15 Modo NT Link (1:N)

Bits 00 a 07: Comunicando con indicadores de PT para unidades 0 a 7Bits 08 a 15: Registro de indicadores de prioridad de PT para unidades 0 a 7

Modo RS--232C

Bits 00 a 15: Contador de recepción de puerto RS--232C

266 00 a 15 Contador de recepción de periféricos en modo RS--232C

Área SR Sección 3-4

Page 41: C200HALPHA Manual Programacion

34

Canal(es) FunciónBit(s)

267 00 a 04 Reservado por el sistema (no accesible para el usuario)

05 Indicador listo para enviar nivel 0 de Host Link

06 a 12 Reservado por el sistema (no accesible para el usuario)

13 Indicador listo para recibir nivel 0 de Host Link

14 y 15 Reservado por el sistema (no accesible para el usuario)

268 00 a 15 Información de error de tarjeta de comunicaciones

269 00 a 07 Contenido de cassette de memoria 00: Nada; 01: UM; 02: IOM (03: HIS)

08 a 10 Capacidad de cassette de memoria 0: 0 KW; 3: 16 KW (1: 4 KW; 2: 8 KW; 4: 32 KW)

11 a 13 Reservado por el sistema (no accesible para el usuario)

14 Indicador de cassette de memoria EEPROM protegida o cassette de memoria EPROMmontada

15 Indicador de cassette de memoria

270 00 Bit de salvar UM a Cassette Los datos se transfieren al cassette de memoria cuandoel bit está en ON en modo PROGRAM. El bit se pondrá

01 Bit de cargar UM de Cassetteel bit está en ON en modo PROGRAM. El bit se pondráautomáticamente a OFF. Se producirá un error si sepone en ON en cualquier otro modo.

02 Bit de comparar UM con Cassette

03 Resultados de la comparación0: Contenidos idénticos; 1: Contenidos diferentes o no fue posible comparar

04 a 11 Reservado por el sistema (no accesible para el usuario)

11 Indicador de error de transferir:Transferencia de tabla data linkde SYSMAC NET en UMdurante data link activo

Los datos no se transferirán de la UM al cassette dememoria si se produce un error (excepto para error deChecksum). Dado que la información no es necesaria,so enviará a SR 272 cuando se produzca un error deh k R ti l t i ió i SR 27015 tá12 Indicador de error de transferir:

No en modo PROGRAM

pchecksum. Repetir la transmisión si SR 27015 está enON.

13 Indicador de error de transferir:Sólo lectura

14 Indicador de error de transferir:Capacidad insuficiente o no hayUM

15 Indicador de error de transferir:Error de Checksum

271 00 a 07 Tamaño de UM almacenada en cassette de memoria

Fichero de diagrama de relés: 04: 4 KW; 08: 8 KW; 12: 12 KW; ... (32: 32 KW)

00: No hay programa de diagrama de relés

08 a 15 Tamaño de UM y tipo en CPU (Especificaciones iguales que para bits 00 a 07.)

272 00 a 10 Reservado por el sistema (no accesible para el usuario)

11 Indicador de error de memoria: Error de checksum de configuración del PLC

12 Indicador de error de memoria: Error de checksum de diagrama de relés

13 Indicador de error de memoria: Error de checksum de área de vector de cambio deinstrucción

14 Indicador de error de memoria: desconexión online de cassette de memoria

15 Indicador de error de memoria: Error de autoarranque

273 00 Bit de salvar IOM a cassette Los datos se transfieren al casette de memoria cuandoel bit se pone en ON en modo PROGRAM. El bit se

01 Bit de cargar IOM de cassetteel bit se pone en ON en modo PROGRAM. El bit sepondrá automáticamente a OFF. Se producirá un error sise pone en ON en cualquier otro modo.

02 Poner este bit a 0.

Área SR Sección 3-4

Page 42: C200HALPHA Manual Programacion

35

Canal(es) FunciónBit(s)

03 a 07 Reservado por el sistema (no accesible para el usuario)

08 a 11 Contiene el número de banco de EM cuando el cassette de memoria contiene datos IOM

12 Indicador de error detransferencia: No en modoPROGRAM

Los datos no se transferirán de IOM al cassette dememoria si se produce un error (excepto para error desólo lectura).

13 Indicador de error detransferencia: Sólo lectura

)

14 Indicador de error detransferencia: Capacidadinsuficiente o no IOM

15 Siempre 0

274 00 Indicador rearranque unidad deE/S especial #0

Estos indicadores se pondrán en ON durante el procesode rearranque.Estos i dicado es o se po d á e ON pa a idades01 Indicador rearranque unidad de

E/S especial #1

Estos indicadores no se pondrán en ON para unidadesen bastidores esclavos.

02 Indicador rearranque unidad deE/S especial #2

03 Indicador rearranque unidad deE/S especial #3

04 Indicador rearranque unidad deE/S especial #4

05 Indicador rearranque unidad deE/S especial #5

06 Indicador rearranque unidad deE/S especial #6

07 Indicador rearranque unidad deE/S especial #7

08 Indicador rearranque unidad deE/S especial #8

09 Indicador rearranque unidad deE/S especial #9

10 Indicador rearranque unidad deE/S especial #A

11 Indicador rearranque unidad deE/S especial #B

12 Indicador rearranque unidad deE/S especial #C

13 Indicador rearranque unidad deE/S especial #D

14 Indicador rearranque unidad deE/S especial #E

15 Indicador rearranque unidad deE/S especial #F

275 00 Error de arranque de configuración del PLC (DM 6600 a DM 6614)

01 Error de RUN de configuración del PLC (DM 6615 a DM 6644)

02 Error de selección/comunicaciones de configuración del PLC (DM 6645 a DM 6655)

03 No utilizado

04 Cambio de indicador de configuración de RS-232C

05 No utilizado

06 a 07 Reservado por el sistema (no accesible por el usuario)

08 a 15 No utilizado

276 00 a 07 Minutos (00 a 59) Utilizado para incrementos de tiempo.

08 a 15 Horas (00 a 23)

p p

Área SR Sección 3-4

Page 43: C200HALPHA Manual Programacion

36

Canal(es) FunciónBit(s)

277 a 279 00 a 15 Utilizado para mapeado del teclado.NO TAG

280 00 a 15 Indicadores de error de unidad de E/S de alta densidad Grupo 2 para unidades 0 a F(AR 0205 a AR 0214 también funcionan como indicadores de error para unidades 0 a 9)

281 00 a 15 Bits de rearranque de unidad de E/S especial para unidades 0 a F(las unidades 0 a 9 también se pueden rearrancar con los bits de rearranque de unidad deE/S especial AR 0100 a AR 0109.)

282 00 a 15 Indicadores de error de unidad de E/S especial para unidades 0 a F(AR 0000 a AR 0009 también funcionan como indicadores de error para unidades 0 a 9)

283 a 286 00 a 15 Área de monitorización de tarjeta de comunicaciones

287 a 288 00 a 15 Área de datos de interrupción de tarjeta de comunicaciones

289 00 a 07 Área de monitorización general de tarjeta de comunicaciones

08 Indicador de ejecución de instrucción de puerto A de tarjeta de comunicaciones

09 a 10 Utilizados por instrucciones de puerto A de tarjetas de comunicaciones

11 Bit de abortar instrucción de puerto A de tarjeta de comunicaciones

12 Indicador de ejecución de instrucción de puerto B de tarjeta de comunicaciones

13 a 14 Utilizados por instrucciones de puerto B de tarjeta de comunicaciones

15 Bit de abortar de instrucción de puerto B de tarjeta de comunicaciones

290 a 293 00 a 15 Entradas de área de macro

294 a 297 00 a 15 Salidas de área de macro

298 a 299 00 a 15 Reservado por el sistema (no accesible por el usuario)

3-4-1 Sistema SYSMAC NET/SYSMAC LINKEstado de lazo SR 236 proporciona el estado del lazo del nodo local para sistemas SYSMAC

NET, como se indica en la siguiente tabla.

------ Bit en SR 236

Nivel 0 07 06 05 04 03 02 01 00

Nivel 1 15 14 13 12 11 10 09 08

Estado/Significa--do

1 1 Fuente dealimentación central

0: Conectada1: No conectada

1 Estado de lazo

11: Lazo normal10: Retorno de lazo atrás01: Retorno de lazo adelante00: Error de lazo

Estado de recepción

0: Recepciónhabilitada1: Recepción inhibida

1

Códigos de finalización SR 23700 a SR23707 proporcionan el dódigo de finalización de SEND/RECVpara nivel de operación 0 y SR 23708 a SR 23215 indica el código de finaliza-ción de SEND/RECV para nivel de operación 1. Los códigos de finalización sedan en las siguientes tablas.

Área SR Sección 3-4

Page 44: C200HALPHA Manual Programacion

37

SYSMAC LINK

Cód. Item Significado

00 Fin normal Proceso finalizado normal.

01 Error de parámetro Parámetros para instrucción de comunicación de redfuera de los rangos aceptables.

02 Imposible enviar Reset de unidad durante proceso de comando onodo local no en red.

03 Destino no en red Nodo destino no en red.

04 Error de ocupado Nodo destino procesando datos y no puede recibir elcomando.

05 Timeout derespuesta

Excedido el tiempo de monitorización de respuesta.

06 Error de respuesta Error en la respuesta recibida del nodo destino.

07 Error controladorde comunicaciones

Error en el controlador de comunicaciones.

08 Error de selección Hay un error en las selecciones de dirección denodo.

09 Error de PLC Error producido en la CPU del nodo destino.

SYSMAC NET

Code Item Meaning

00 Fin normal Proceso finalizado con normalidad.

01 Error de parámetro Parámetros para instrucción de comunicación de redfuera de los rangos aceptables.

02 Error de ruta Error en las tablas de rutas para conexión a una redremota.

03 Error de ocupado Nodo destino procesando datos y no puede recibir elcomando.

04 Error de enviar(perdido token)

No recibido el token desde servidor de línea.

05 Error de lazo Error en el lazo de comunicaciones.

06 No respuesta No existe el nodo destino o se ha excedido el tiempode monitorización de respuesta.

07 Error de respuesta Hay un error en el formato de respuesta.

Indicadores de estado de data linkSR 238 a SR 245 contienen el estado de data link para sistemas SYSMAC LINK/SYSMAC NET. La estructura de los datos depende del sistema utilizado paracrear el data link.

SYSMAC LINK

Nivel deió

Nivel deió

Bitoperación 0 operación 1 12 a 15 11 08 04 07 00 03

SR 238 SR 242 Nodo 4 Nodo 3 Nodo 2 Nodo 1

SR 239 SR 243 Nodo 8 Nodo 7 Nodo 6 Nodo 5

SR 240 SR 244 Nodo 12 Nodo 11 Nodo 10 Nodo 9

SR 241 SR 245 Nodo 16 Nodo 15 Nodo 14 Nodo 13

Bit de la izqda. Bit de la drcha.

1: Operación Datalink

1:Error de comuni-caciones

1:Error de CPU dePLC

1: Estado RUN dePLC

Área SR Sección 3-4

Page 45: C200HALPHA Manual Programacion

38

SYSMAC NET

Nivel deió

Nivel deió

Bit (debajo los números de nodo)operación 0 operación 1 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00SR 238 SR 242 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1

SR 239 SR 243 16 15 14 13 12 11 10 9 16 15 14 13 12 11 10 9

SR 240 SR 244 24 23 22 21 20 19 18 17 24 23 22 21 20 19 18 17

SR 241 SR 245 32 31 30 29 28 27 26 25 32 31 30 29 28 27 26 25

1: Error de CPU de PLC 1: Estado RUN de PLC

3-4-2 Sistemas de E/S remotasSR 25312 se pone en ON para indicar que se ha producido un error en sistemasde E/S remotas. El indicador ALM/ERR parpadeará, pero la operación del PLCcontinuará. SR 251, así como AR 0014 y AR 0015, contienen información sobreel origen y el tipo de error. A continuación se describe la función de cada bit.Consultar para más información los manuales de sistemas de E/S remotas porcable y por fibra óptica.

Si hay errores en más de una unidad de E/S remota, el canal 251 contendráinformación de error sólo de la primera unidad. Los datos para las restantes uni-dades se almacenarán en memoria y se puede acceder a ella poniendo a ON y aOFF el bit de chequeo de error. Verificar que se graban los datos del primererror, que se borrará cuando se visualicen los datos para el siguiente.

No utilizado.

Indicador de error de E/S remota: el bit 03 se pone en ON cuando se produce unerror en una unidad de E/S remota.

El contenido de los bits 04 a 06 es un número binario de 3 dígitos (04: 20, 05: 21,06: 22) y el contenido de los bits 08 a 15 es un número hexadecimal de 2 dígitos(08 a 11: 160, 12 a 15: 161).

Si el contenido de los bits 12 a 15 es B, ha producido un error en una unidadmaestra o esclava de E/S remotas y el contenido de los bits 08 a 11 indicará elnúmero de unidad, 0 ó 1, de la maestra involucrada. En este caso, los bits 04 a06 contienen el número de unidad del bastidor esclavo involucrado.

Si el contenido de los bits 12 a 15 es un número de 0 a 31, se ha producido unerror en una unidad de E/S óptica. El número es el número de la unidad de E/Sóptica involucrada y el bit 04 se pondrá en ON si la unidad está asignada a losbits de la izquierda (08 a 15), y en OFF si está asignada a los de la derecha (00 a07).

3-4-3 Indicadores y bits de control del sistema de enlaceLa utilización de los siguientes bits SR depende de la configuración del sistemade enlace al que pertenece el PLC. Estos indicadores y bits de control se utilizancuando hay montadas en la CPU o en los bastidores del PLC unidades deenlace tales como unidades PC Link, unidades de E/S remotas o unidades HostLink.

Los siguientes bits se pueden utilizar como bits de trabajo cuando el PLC nopertenece al sistema de enlace asociado.

Sistemas Host LinkPara los sistemas Host Link están disponibles los indicadores de error y los bitsde rearranque. Los indicadores de error se ponen en ON para indicar errores enunidades Host Link. Los bits de rearranque se ponen en ON y luego a OFF pararearrancar una unidad Host Link. Los bits SR utilizados con sistemas Host Linkse listan en la siguiente tabla. Los bits de rearranque de unidad Host Link demontaje en bastidor no son efectivos para las unidades Host Link multini-vel de montaje en bastidor.

Bit 00 -- Bit de chequeo deerror

Bits 01 y 02

Bit 03

Bits 04 a 15

Área SR Sección 3-4

Page 46: C200HALPHA Manual Programacion

39

Bit Indicador

25206 Indicador de error de nivel 1 de unidad host link montaje en bastidor

25207 Bit de rearranque de nivel 1 de unidad host link montaje en bastidor

25213 Bit de rearranque de nivel 0 de unidad host link montaje en bastidor

25311 Indicador de error de nivel 0 de unidad host link montaje en bastidor

Sistemas PC LinkCuando el PLC pertenece a un sistema PC Link, los canales 247 a 250 se utili-zan para monitorizar el estado de operación de todas las unidades PC Linkconectadas al sistema PC Link. Esto incluye un máximo de 32 unidades PCLink. Si el PLC está en un sistema PC Link Multinivel, la mitad de las unidadesPC Link estarán en un subsistema PC Link en nivel de operación 0; la otra mitad,en un subsistema en nivel de operación 1. La asignación real de bit depende desi el PLC está en un sistema PC Link mononivel o multinivel. A continuación sedescriben las asignaciones de bit indicador de error y de run.Los bits 00 a 07 de cada canal son los indicadores de Run, que están en ONcuando la unidad PC Link está en modo RUN. Los bits 08 a 15 son los indica-dores de error, los cuales están en ON cuando se produce un error en la unidadPC Link. La siguiente tabla muestra las asignaciones de bit para sistemas PCLink mononivel y multinivel.

Sistemas PC Link mononivel

Ind. Bit no. SR 247 SR 248 SR 249 SR 250

Indicadores 00 Unidad #24 Unidad #16 Unidad #8 Unidad #0

de Run 01 Unidad #25 Unidad #17 Unidad #9 Unidad #1

02 Unidad #26 Unidad #18 Unidad #10 Unidad #2

03 Unidad #27 Unidad #19 Unidad #11 Unidad #3

04 Unidad #28 Unidad #20 Unidad #12 Unidad #4

05 Unidad #29 Unidad #21 Unidad #13 Unidad #5

06 Unidad #30 Unidad #22 Unidad #14 Unidad #6

07 Unidad #31 Unidad #23 Unidad #15 Unidad #7

Indicadores 08 Unidad #24 Unidad #16 Unidad #8 Unidad #0

de Error 09 Unidad #25 Unidad #17 Unidad #9 Unidad #1

10 Unidad #26 Unidad #18 Unidad #10 Unidad #2

11 Unidad #27 Unidad #19 Unidad #11 Unidad #3

12 Unidad #28 Unidad #20 Unidad #12 Unidad #4

13 Unidad #29 Unidad #21 Unidad #13 Unidad #5

14 Unidad #30 Unidad #22 Unidad #14 Unidad #6

15 Unidad #31 Unidad #23 Unidad #15 Unidad #7

Indicadores de Run y Errorde unidad PC Link

Área SR Sección 3-4

Page 47: C200HALPHA Manual Programacion

40

Sistemas de PC Link Multinivel

Ind. Bit no. SR 247 SR 248 SR 249 SR 250

Indicadorde Run

00 Unidad #8,nivel 1

Unidad #0,nivel 1

Unidad #8,nivel 0

Unidad #0,nivel 0

01 Unidad #9,nivel 1

Unidad #1,nivel 1

Unidad #9,nivel 0

Unidad #1,nivel 0

02 Unidad #10,nivel 1

Unidad #2,nivel 1

Unidad #10,nivel 0

Unidad #2,nivel 0

03 Unidad #11,nivel 1

Unidad #3,nivel 1

Unidad #11,nivel 0

Unidad #3,nivel 0

04 Unidad #12,nivel 1

Unidad #4,nivel 1

Unidad #12,nivel 0

Unidad #4,nivel 0

05 Unidad #13,nivel 1

Unidad #5,nivel 1

Unidad #13,nivel 0

Unidad #5,nivel 0

06 Unidad #14,nivel 1

Unidad #6,nivel 1

Unidad #14,nivel 0

Unidad #6,nivel 0

07 Unidad #15,nivel 1

Unidad #7,nivel 1

Unidad #15,nivel 0

Unidad #7,nivel 0

Indicadorde error

08 Unidad #8,nivel 1

Unidad #0,nivel 1

Unidad #8,nivel 0

Unidad #0,nivel 0

09 Unidad #9,nivel 1

Unidad #1,nivel 1

Unidad #9,nivel 0

Unidad #1,nivel 0

10 Unidad #10,nivel 1

Unidad #2,nivel 1

Unidad #10,nivel 0

Unidad #2,nivel 0

11 Unidad #11,nivel 1

Unidad #3,nivel 1

Unidad #11,nivel 0

Unidad #3,nivel 0

12 Unidad #12,nivel 1

Unidad #4,nivel 1

Unidad #12,nivel 0

Unidad #4,nivel 0

13 Unidad #13,nivel 1

Unidad #5,nivel 1

Unidad #13,nivel 0

Unidad #5,nivel 0

14 Unidad #14,nivel 1

Unidad #6,nivel 1

Unidad #14,nivel 0

Unidad #6,nivel 0

15 Unidad #15,nivel 1

Unidad #7,nivel 1

Unidad #15,nivel 0

Unidad #7,nivel 0

Si el PLC está en un sistema PC Link multinivel y el contenido del canal 248 es02FF, las unidades PC Link #0 a #7 del subsistema PC Link asignado a nivel deoperación 1 estaría en modo RUN, y la unidad PC Link #1 del mismo subsistematendría un error. Los dígitos hexadecimales y los correspondientes bits delcanal 248 serían como se indica a continuación.

Bit no. 15 00. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Binario 0 0 0 0 0 0 1 0 1 1 1 1 1 1 1 1

Hex 0 2 F F

3-4-4 Bit de retener estado forzadoSR 25211 determina si se mantiene o no el estado de los bits que han sido forza-dos a set o a reset cuando se cambia entre modo PROGRAM y MONITOR paraarrancar o parar la operación. Si SR 25211 está en ON, el estado de bit se man-tendrá; si SR 25211 está en OFF, todos los bits volverán a su estado por defectocuando se arranque o se pare la operación. El bit de retener estado forzado sóloes efectivo cuando se habilita en la configuración del PLC.El estado de SR 25211 no se ve afectado por cortes de alimentación a no serque esté registrada la tabla de E/S; en tal caso, SR 25211 se pondrá en OFF.SR 25211 no es efectivo cuando se conmuta a modo RUN.SR 25211 se debe manipular desde un periférico, p.e., consola de programa-ción o SYSWIN.

Ejemplo de aplicación

Área SR Sección 3-4

Page 48: C200HALPHA Manual Programacion

41

El estado de SR 25211 y por lo tanto el estado de bits forzados a set o a reset sepuede mantener cuando se conecta o desconecta la alimentación habilitando elbit de retener estado forzado en la configuración del PLC. Si se habilita el bit deretener estado forzado, el estado de SR 25211 se preservará cuando seconecte o desconecte la alimentación. Si realiza esto y SR 25211 está en ON, elestado de bits forzados a set o a reset también se preservará, como se indica enla siguiente tabla.

Estado antes de desconectar Estado en el siguiente arranque

SR 25211 SR 25211 Bits forzados aset/reset

ON ON Estado mantenido

OFF OFF Reset

Nota Consultar 3-6-5 Configuración del PLC para más información sobre bit de reten-ción de estado forzado.

3-4-5 Bit de retener estado de E/SSR 25212 determina si se mantiene o no el estado de los bits del área IR y LRcuando se arranca o para la operación, cuando se inicia la operación cam-biando de modo PROGRAM a MONITOR o RUN. Si SR 25212 está en ON, semantendrá el estado bit; si SR 25212 está en OFF, todos los bits del área IR y LRse resetearán. El bit de retener estado de E/S es efectivo sólo si se habilita en laconfiguración del PLC.El estado de SR 25212 no se ve afectado por cortes de alimentación a no serque esté registrada la tabla de E/S; en tal caso, SR 25212 se pondrá en OFF.SR 25212 se debería manipular desde un periférico, p.e. consola de programa-ción o SYSWIN.

El estado de SR 25212 y por lo tanto el estado de los bits del área IR y LR sepuede mantener cuando la alimentación se conmuta de OFF a ON habilitandoel bit de retener estado de E/S en la configuración del PLC. Si se habilita el bit deretener estado de E/S, se preservará el estado de SR 25212 cuando la alimen-tación se conmute de OFF a ON. Si se realiza esto y SR 25212 está en ON, elestado de los bits del área IR y LR también se preservará, como se muestra enla siguiente tabla.

Estado antes de parar Estado en el siguiente arranque

SR 25212 SR 25212 Bits IR y LR

ON ON Estado mantenido

OFF OFF Reset

Nota Consultar 3-6-5 Configuración del PLC para más información sobre habilitar elbit de retención de estado de E/S.

3-4-6 Bit de salida OFFEl bit SR 25215 se pone a ON para poner a OFF todas las salidas del PLC. Elindicador OUT INHIBIT en el panel frontal de la CPU se encenderá. Cuando elbit de salida OFF está en OFF, se refrescarán todos los bits de salida de la formahabitual.El estado del bit de salida OFF se mantiene durante cortes de alimentación ocuando se para la operación del PLC, a no ser que se haya registrado la tabla deE/S, y que se haya habilitado el bit de retener estado forzado o el bit de retenerestado de E/S en la configuración del PLC.

3-4-7 Área FAL (Alarma de fallo)Cuando se ejecuta la instrucción FAL o FALS se envía un código FAL de 2 dígi-tos BCD a los bits 25300 a 25307. Estos códigos los define el usuario paradiagnóstico de errores, aunque el PLC también envía códigos FAL a estos bits,tales como el causado por caída de tensión de la batería.

Mantener estado durante elarranque

Retener estado durantearranque

Área SR Sección 3-4

Page 49: C200HALPHA Manual Programacion

42

Esta área se puede resetear ejecutando la instrucción FAL con un operando de00 o realizando una operación de lectura de fallo desde la consola de programa-ción.

3-4-8 Indicador de batería bajaEl bit SR 25308 se pone en ON si desciende la tensión de la batería de respaldo.El indicador ALM/ERR en el panel frontal de la CPU destellará.Este bit se puede programar para activar un indicador externo que avise de latensión baja de la batería.La operación de la alarma de la batería se puede inhibir si se desea en la confi-guración del PLC. Consultar 3-6-5 Configuración del PLC.

3-4-9 Indicador de error de tiempo de cicloEl bit SR 25309 se pone en ON si el tiempo de ciclo excede de 100 ms. El indica-dor ALM/ERR en el frontal de la CPU también destellará. Sin embargo, la ejecu-ción del programa no parará a no ser que se exceda el límite de tiempo máximoseleccionado para el temporizador de guarda. Si el tiempo de ciclo excede de100 ms, la temporización puede ser inexacta.

3-4-10 Indicador de error de verificación de E/SEl bit SR 25310 se pone en ON cuando las unidades montadas en el sistema noconcuerdan con la tabla de E/S registrada en la CPU. El indicador del panel fron-tal de la CPU destellará, pero la operación continuará.Para garantizar la operación correcta, cuando este indicador se ponga en ON,se debe parar la operación del PLC, chequear las unidades y la tabla de E/S.

3-4-11 Indicador de primer cicloEl bit SR 25315 se pone en ON cuando se inicia la operación del PLC y luego sepone a OFF después de un ciclo del programa. El indicador de primer ciclo esútil para inicializar valores de contador y otras operaciones. Se da un ejemplo en5-14 Instrucciones de temporizador y contador.

3-4-12 Bit de impulsos de relojPara controlar la temporización del programa se dispone de cinco impulsos dereloj. El tiempo de ON de los impulsos de reloj es la mitad de su periodo.

Área SR Sección 3-4

Page 50: C200HALPHA Manual Programacion

43

Los bits de impulsos de reloj se utilizan frecuentemente con instrucciones decontador para crear temporizadores. Ver ejemplos en 5-14 Instrucciones deTemporizador y Contador.

Duración delimpulso

1 min 0.02 s 0.1 s 0.2 s 1.0 s

Bit 25400 25401 25500 25501 25502

Bit 25400Reloj de 1 minuto

Bit 25401Reloj de 0.02-seg.

Bit 25500Reloj de 0.1-seg.

Bit 25501Reloj de 0.2-seg.

Bit 25502Reloj de 1.0-seg. Atención:

Si el tiempo de ejecución es dema-siado largo, es posible que la CPUno sea capaz de leer con precisiónlos impulsos de reloj de 0.1-seg. yde 0.02-seg.con tiempos de ON de50 y 10 ms, respectivamente.

0.1 s

.05 s .05 s

1.0 s

0.5 s 0.5 s

0.2 s

0.1 s 0.1 s

1 min.

30 s 30 s

.02 s

.01 s .01 s

3-4-13 Indicador de pasoEl bit SR 25407 se pone en ON durante un ciclo cuando se inicia la ejecución depaso con la instrucción STEP(008).

3-4-14 Indicador de error de unidad de E/S de alta densidad grupo 2El bit SR 25414 se pone en ON para cualquiera de los siguientes errores de uni-dades de E/S de alta densidad grupo 2: número de E/S repetido, asignación decanales repetida, errores de refresco. Si se produce uno de estos errores, la uni-dad parará la operación y destellará el indicador ALARM, pero el PLC conti-nuará la operación.Cuando el indicador de error de unidad de E/S de alta densidad grupo 2 está enON, en AR 0205 a AR 0214 se indicará el número de la unidad con error. Si launidad no se puede arrancar correctamente incluso aunque el número de E/Sestá seleccionado correctamente y la unidad está instalada correctamente,puede que se haya quemado un fusible o que la unidad tenga algún fallo dehardware. En tal caso, sustituir la unidad e intentar arrancar de nuevo el sis-tema.Hay también un indicador de error para unidades de E/S de alta densidad en elárea AR, el AR 0215.

3-4-15 Indicador de error de unidad especialEl bit de SR 25415 se pone en ON para indicar errores en las siguientes uni-dades: E/S especial, PC Link, Host Link y unidades maestras de E/S remotas.SR 25415 se pondrá en ON para cualquiera de los siguientes errores." Cuando se ha seleccionado el mismo número de unidad a más de una unidad

de E/S especial." Cuando se produce un erroir en el refresco de datos entre una unidad de E/S

especial y la CPU del PLC." Cuando se produce un error entre una unidad Host Link y la CPU del PLC.

Área SR Sección 3-4

Page 51: C200HALPHA Manual Programacion

44

" Cuando se produce un error en una unidad maestra de E/S remotas.Aunque el PLC seguirá operando si SR 25415 se pone en ON, las unidades quehan provocado el error pararán su operación y parpadeará el indicador ALM.Chequear el estado de AR 0000 a AR 0015 para obtener los números de lasunidades que provocan el error e investigar la causa del error.Se puede restablecer la operación de la unidad utilizando los Bits de Rearran-que (AR 0100 a AR 0115, SR 25207 y SR 25213), pero no será efectivo si se haseleccionado el mismo número de unidad para más de una unidad de E/S espe-cial. Desconectar la fuente de alimentación, corregir las selecciones de númerode unidad y conectar de nuevo la fuente de alimentación para arrancar de nue-vo.SR 25415 no se pondrá a OFF incluso si de AR 0100 a AR 0115 (Bits de Rear-ranque) están en ON. Se puede poner a OFF leyendo los errores desde un dis-positivo de programación o ejecutando FAL(006) 00 desde el programa de dia-grama de relés.

3-4-16 Indicador de error de ejecución de instrucción, EREl bit SR 25503 se pone en ON si se intenta ejecutar una instrucción con datosde operando incorrectos. Las causas comunes de un error de instrucción sonque el dato de operando no está en BCD debiendo serlo, o que no existe el canalde DM direccionado indirectamente. Si el indicador ER no está en ON, lainstrucción no se ejecutará.

3-4-17 Indicadores aritméticosLos siguientes indicadores se utilizan en desplazamiento de datos, operacionesaritméticas e instrucciones de comparación. Normalmente se referencian porsus abreviaturas de dos letras.

AtenciónEstos indicadores se resetean cuando se ejecuta la instrucción END(001) y porlo tanto no se pueden monitorizar desde un dispositivo de programación.

Consultar más información en 5-15 Desplazamiento de datos, 5-17 Compara-ción de datos, 5-20 Cálculos BCD, y 5-21 Cálculos binarios.

El bit SR 25404 se pone en ON cuando el resultado de una suma o resta binariaexcede de 7FFF o 7FFFFFFF.

El bit SR 25405 se pone en ON cuando el resultado de una suma o resta binariaexcede de 8000 ó 80000000.

El bit SR 25504 se pone en ON cuando hay un acarreo en el resultado de unaoperación aritmética o cuando una instrucción de desplazamiento a derecha oizquierda pone un “1” en CY. El contenido de CY también se utiliza en algunasoperaciones aritméricas, p.e. se suma o resta junto con otros operandos. Esteindicador se puede poner a 1 o a 0 desde el programa mediante las instruc-ciones Set Carry y Clear Carry.

El bit SR 25505 se pone en ON cuando el resultado de una comparación es queel primero de dos operandos es mayor que el segundo.

El bit SR 25506 se pone en ON cuando el resultado de una comparación es quelos dos operandos son iguales.

El bit SR 25507 se pone en ON cuando el resultado de una comparación es queel primero de dos operandos es menor que el segundo.

Nota Los cuatro indicadores aritméticos se ponen a OFF cuando se ejecutaEND(001).

3-4-18 Áreas de subrutina de interrupciónEn el proceso de subrutina de interrupción se utilizan las siguientes áreas.

Los bits SR 26200 a 26215 se utilizan para seleccionar el tiempo de procesomáximo de la subrutina de interrupción. Los tiempos de proceso se determinanen incrementos de 0,1 mseg.

Indicador fuera de rangopor exceso, OF

Indicador fuera de rangopor defecto, UF

Indicador de acarreo, CY

Indicador de Mayor que, GR

Indicador de Igual que, EQ

Indicador de Menor que, LE

Área de tiempo máximo deproceso de subrutina deinterrupción

Área SR Sección 3-4

Page 52: C200HALPHA Manual Programacion

45

Los bits SR 26300 a 26315 contienen el número de subrutina de interrupción detiempo de proceso máximo. El bit 15 se pondrá en ON si hay una interrupción.

3-4-19 Áreas de comunicaciones de puerto RS-232CCódigo error puerto RS-232C Los bits SR 26400 a 26403 indican un error del puerto RS--232C como se indica

en la siguiente tabla.

Selección Tipo de error

0 No hay error

1 Error de paridad

2 Error de trama

3 Error de overrrun

4 Error de FCS

5 Error de Timeout

6 Error de Checksum

7 Error de comando

SR 26404 se pone en ON cuando hay un error de comunicación de puertoRS--232C.

El bit SR 26405 se pone en ON cuando el PLC está preparado para transmitirdatos.

El bit SR 26406 se pone en ON cuando el PLC ha completado la lectura de datosde un dispositivo RS-232C.

El bit SR 26407 se pone en ON cuando se produce un overflow a continuaciónde la recepción de datos.

Los bits SR 26500 a SR 26515 contienen el número de recepciones del puertoRS--232C en modo de E/S general.

El bit SR 26705 se pone en ON cuando el PLC está preparado para transmitir ala unidad Host Link.

El bit SR 26713 se pone en ON cuando el PLC está preparado para transmitir ala unidad Host Link.

3-4-20 Áreas de comunicaciones de puerto de periféricos

Los bits SR 26408 a 26411 se ponen a ON cuando hay un error de puerto deperiféricos en cualquier modo excepto modo de periférico.

Selección Tipo de error

0 No hay error

1 Error de paridad

2 Error de trama

3 Error de overrrun

4 Error de FCS

5 Error de Timeout

6 Error de Checksum

7 Error de comando

El bit SR 26412 se pone en ON cuando hay un error de comunicación de puertode periféricos (efectivo en todos los modos excepto modo de periférico).

El bit SR 26413 se pone en ON cuando el C200HALPHA está preparado paratransmitir datos en todos los modos excepto modo periférico.

Área de número desubrutina de tiempo deproceso máximo

Bit de error de comunica--ción puerto RS--232C

Indicador de preparadopara enviar RS-232C

Indicador de recepcióncompletada de RS-232C

Indicador de overflow derecepción RS-232C

Contador de recepción deRS-232C

Indicador preparado paraenviar de Host Link Nivel 0

Indicador preparado paraenviar de Host Link Nivel 1

Código de error de puertode periféricos

Bit error de comunicaciónde puerto de periféricos

Indicador listo para enviarpuerto de periféricos

Área SR Sección 3-4

Page 53: C200HALPHA Manual Programacion

46

El bit SR 26414 se pone en ON cuando el C200HALPHA ha completado la lec-tura de datos desde un dispositivo periférico. Efectivo en todos los modosexcepto modo de periférico.

El bit SR 26415 se pone en ON se produce un desborde de datos después derecibirlos. Efectivo en todos los modos excepto modo de periférico.

El área SR 26600 a 26615 contiene el número de recepciones del puerto deperiféricos en modo de E/S general (BCD).

El bit SR 26705 se pone en ON cuando el C200HALPHA está listo para transmi-tir a la unidad Host Link.

El bit SR 26713 se pone en ON cuando el C200HALPHA está listo para recibirdatos del Host Link.

3-4-21 Áreas de cassette de memoriaLas áreas SR 26900 a 26907 indican el tipo de memoria contenida en el cas-sette de memoria.

Tipo de memoria Código

Nada 00

UM 01

IOM 02

Las áreas SR 26908 a 26910 indican la capacidad de memoria del cassette dememoria.

Capacidad Código

0 KW (no hay placa montada) 0

16 KW 3

El bit SR 26914 se pone en ON cuando el cassette de memoria EEPROM estáprotegido cuando el cassette de memoria EPROM está montado.

El bit SR 26915 se pone en ON cuando está montado el cassette de memoria.

El bit SR 27000 se pone en ON cuando se pasan los datos UM a cassette dememoria en modo Program. El bit se pondrá automáticamente a OFF. Se produ-cirá un error si se pone a ON en cualquier otro modo.

El bit SR 27001 se pone en ON cuando se cargan datos en la UM desde el cas-sette de memoria en modo Program. El bit se pondrá a OFF automáticamente.Se producirá un error si se pone en ON en cualquier otro modo.

El bit SR 27002 se pone en ON cuando se verifican los datos entre DM y cas-sette de memoria. El bit SR 27003 se pone en OFF cuando los contenidos coin-ciden y en ON si no coinciden.

3-4-22 Bits de error de transferencia de datosLos datos no se transferirán de UM a cassette de memoria si se produce un error(excepto para error de checksum). No se enviará información detallada de loserrores de checksum en el cassette de memoria a SR 272 dado que tal informa-ción no es necesaria. Repetir la transmisión si SR 27015 está en ON.

El bit SR 27011 se pone en ON cuando se intenta transferir la UM utilizada parala tabla data link de SYSMAC NET mientras la data link está activa.

Indicador recepción com--pleta puerto de periféricos

Indicador overflow derecepción puerto deperiféricos

Contador de recepción depuerto de periféricos

Indicador listo para enviarde Host Link nivel 0

Indicador listo para enviarde Host Link nivel 1

Contenidos de cassette dememoria

Capacidad de cassette dememoria

Indicador de cassette dememoria EEPROM/EPROMmontada

Indicador de cassette dememoria

Indicador de salvar UM aCassette

Indicador de cargar UMdesde cassette

Comparación (Entre DM ycassette de memoria)

Indicador de error detransferencia:Data Link activa

Área SR Sección 3-4

Page 54: C200HALPHA Manual Programacion

47

El bit SR 27012 se pone en ON cuando el C200HALPHA no está en modo Pro-gram y se intenta una transferencia.

El bit SR 27013 se pone en ON cuando el C200HALPHA está en modo sólo lec-tura y se intenta la transferencia.

El bit SR 27014 se pone en ON cuando se intenta la transferencia y la UM dis-ponible es insuficiente.

El bit SR 27015 se pone en ON cuando se intenta la transferencia y se produceun error de checksum de tarjeta.

3-4-23 Áreas de memoria de datosLas áreas SR 27100 a 27107 indican la cantidad de programa de diagrama derelés almacenada en un cassette de memoria.

Fichero diagrama de relés: 04: 4 KW; 08: 8 KW; 12: 12 KW; ... (32: 32 KW)00: No diagrama de relés o no ficheroDato actualizado en transferencia de datos de la CPU al arrancar. El ficherodebe empezar en segmento 0.

Las áreas SR 27108 a 27115 indican el tipo y capacidad de programa de dia-grama de relés de la CPU. Las especificaciones son las mismas que para bits 00a 07.

3-4-24 Indicadores de error de memoria

El bit SR 27211 se pone en ON cuando se produce un error de checksum deconfiguración del PLC.

El bit SR 27212 se pone en ON cuando se produce un error de checksum dediagrama de relés.

El bit SR 27213 se pone en ON cuando se produce un error de área de vector decambio de instrucción.

El bit SR 27214 se pone en ON cuando se conecta o desconecta un cassette dememoria durante la operación.

El bit SR 27215 se pone en ON cuando se produce un error de autoarranque.

3-4-25 Indicadores de salvar/cargar datosDatos transferidos a cassette de memoria cuando el bit se pone a ON en modoPROGRAM. El bit se pondrá automáticamente a OFF. Se producirá un error sise pone en ON en cualquier otro modo.

El bit SR 27300 se pone en ON para salvar IOM en un cassette de memoria.

El bit SR 27301 se pone en ON para cargar IOM desde un cassette de memoria.

Indicador error detransferencia: No en modoPROGRAM

Indicador error detransferencia: sólo lectura

Indicador de error detransferencia: capacidadinsuficiente o no hay UM

Indicador de error detransferencia: error dechecksum de tarjeta

Área de tamaño de UM decassette de memoria

Tipo y capacidad de UM deCPU

Indicador de error dememoria: Error deconfiguración del PLC

Indicador de error dememoria: error dechecksum de diagrama derelés

Indicador de error dememoria: Error de cambiode instrucción

Indicador de error dememoria: error de cassettede memoria desconectado

Indicador de error dememoria: Error deautoarranque

Salvar IOM a Cassette

Cargar IOM de cassette

Área SR Sección 3-4

Page 55: C200HALPHA Manual Programacion

48

3-4-26 Indicadores de error de transferenciaSi se produce un error no se transferirán los datos de IOM al cassette de memo-ria (excepto para error de sólo lectura).

El bit SR 27312 se pone en ON cuando se intenta transferir datos en un mododistinto de PROGRAM.

El bit SR 27313 se pone en ON cuando se intenta transferir datos en modo desólo lectura.

El bit SR 27314 se pone en ON cuando se intenta transferir datos y la capacidadde IOM es insuficiente.

3-4-27 Indicadores de error de configuración del PLC

El bit SR 27500 se pone en ON cuando se produce un error de arranque de con-figuración del PLC (DM6600 a DM6614).

El bit SR 27501 se pone en ON cuando se produce un error de Run de configura-ción del PLC (DM6615 a DM6644).

El bit SR 27501 se pone en ON cuando se produce un error de comunicaciones,error de selección o error de setup (DM6645 a DM6655).

Los bits SR 27600 a 27607 seleccionan el reloj del PLC: minutos (00 a 59).

Los bits SR 27608 a 27615 seleccionan el reloj del PLC: horas (0 a 23).

Utilizado para configurar el teclado.

3-4-28 Reloj y mapeado del tecladoLos bits SR 27600 a 27607 seleccionan el reloj del PLC: minutos (00 a 59).

Los bits SR 27608 a 27615 seleccionan el reloj del PLC: horas (0 a 23).

De SR 277 a SR 279 se utilizan para configurar el teclado.

3-4-29 Indicadores de error de grupo 2Los bits SR 28000 a SR 28015 se utilizan como indicadores de error para lasunidades de E/S de alta densidad Grupo 2 con números de unidad 0 a F. Cuan-do se produce un error en una unidad se pone a ON el indicador de error corres-pondiente. También se utilizan como indicadores de error para unidades 0 a 9diez bits del área AR (AR 0205 a AR 0214).

3-4-30 Indicadores de error y bits de restablecer unidad de E/S especialLos bits SR 28100 a SR 28115 se utilizan como bits de restablecer para uni-dades de E/S especial con números de unidad 0 a F. Poner el correspondientebit a ON y a OFF para restablecer una unidad de E/S especial. También se utili-zan como bits de restart para unidades de 0 a 9, diez bits del área AR (AR 0100 aAR 0109).Los bits SR 28200 a SR 28215 se utilizan como indicadores de error para lasunidades de E/S especiales con números de unidad de 0 a F. Cuando se produ-ce un error en una unidad, se pone a ON el correspondiente indicador de error.También se utilizan como indicadores de error para unidades 0 a 9 diez bits delárea AR (AR 0000 a AR 0009).

3-5 Área AR (Relés auxiliares)Las direcciones de canal AR van de AR 00 a AR 27; las direcciones de bit de ARvan de AR 0000 a AR 2715. La mayoría de los canales y bits AR están dedica-

Indicador de error detransferencia: No en modoPROGRAM

Indicador de error detransferencia

Indicador de error detransferencia

Error de arranque deconfiguración del PLC

Error de RUN deconfiguración del PLC

Configuración del PLCError de comunicacionesError de selección

Minutos (00 a 59)

Horas (00 a 23)

Teclado

Minutos (00 a 59)

Horas (00 a 23)

Teclado

Área AR Sección 3-5

Page 56: C200HALPHA Manual Programacion

49

dos a usos específicos, tales como contadores de transmisión, indicadores ybits de control, y los canales AR 00 a AR 07 y AR 23 a AR 27 no se pueden utili-zar para otros cometidos. Se pueden utilizar como canales y bits de trabajo losAR 08 a AR 17 si no se utilizan para las funciones asignadas.

Canal Utilización

AR 08 a 15 Unidades SYSMAC LINK

AR 16, AR 17 Unidades SYSMAC LINK y SYSMAC NET Link

El área AR retiene el estado durante cortes de alimentación, cuando se cambiade modo MONITOR o RUN a modo PROGRAM, o cuando se para la operacióndel PLC. Las asignaciones de bit se muestran en la siguiente tabla y se descri-ben en las páginas siguientes por orden de número de bit.

Indicadores de área de AR y bits de control

Canal(es) Bit(s) Función

00 00 a 09 Indicadores de error para unidades de E/S especiales 0 a 9 (también funciona comoindicadores de error para unidades PC Link)

10 Indicador de error para nivel de operación 1 de SYSMAC LINK o SYSMAC NET Link

11 Indicador de error para nivel de operación 0 de SYSMAC LINK o SYSMAC NET Link

12 Indicador de error de nivel 1 de unidad host link de montaje en bastidor

13 Indicador de error de nivel 0 de unidad host link de montaje en bastidor

14 Indicador de error de unidad maestra de E/S remotas 1

15 Indicador de error de unidad maestra de E/S remotas 0

01 00 a 09 Bits de rearranque para unidades de E/S especiales 0 a 9 (también funciona como bits derearranque para unidades PC Link)

10 Bit de reinicio para nivel de operación 1 de SYSMAC LINK o SYSMAC NET Link

11 Bit de reinicio para nivel de operación 0 de SYSMAC LINK o SYSMAC NET Link

12, 13 No utilizado.

14 Indicador de rearranque de unidad maestra de E/S remotas 1

15 Indicador de rearranque de unidad maestra de E/S remotas 0

02 00 a 04 Indicadores de error de bastidor esclavo (#0 a #4)

05 a 14 Indicadores de error de unidad de E/S de alta densidad grupo 2

15 Indicador de error de unidad de E/S de alta densidad grupo 2

03 00 a 15 Indicadores de error para unidades 0 a 7 de E/S ópticas

04 00 a 15 Indicadores de error para unidades 8 a 15 de E/S ópticas

05 00 a 15 Indicadores de error para unidades 16 a 23 de E/S ópticas

06 00 a 15 Indicadores de error para unidades 24 a 31 de E/S ópticas

07 00 a 03 Selección de Data Link para nivel de operación 0 de SYSMAC LINK

04 a 07 Selección de Data Link para nivel de operación 1 de SYSMAC LINK

08 Bit cancelar entrada de modo TERMINAL Expansión/Modo terminal normal

09 Indicador de cambio de modo TERMINAL de Expansión

10 y 11 Reservado por el sistema

12 Indicador de modo TerminalON: Expansión; OFF: Normal (Igual que el estado del pin 6 en el DIP de la CPU)

13 Bit de sobreescribir históricos de error

14 Bit de reset de histórico de error

15 Bit de habilitar histórico de error

08 a 11 00 a 15 Indicadores de nodo activo para nodos de SYSMAC LINK de nivel de operación 0

12 a 15 00 a 15 Indicadores de nodo activo para nodos de SYSMAC LINK de nivel de operación 1

16 00 a 15 Tiempo de servico por ciclo de nivel de operación 0 de sistemas SYSMAC LINK/SYSMAC NETLink

Área AR Sección 3-5

Page 57: C200HALPHA Manual Programacion

50

Canal(es) FunciónBit(s)

17 00 a 15 Tiempo de servico por ciclo de nivel de operación 1 de sistemas SYSMAC LINK/SYSMACNET Link

18 00 a 07 Segundos: 00 a 99

Grabable 08 a 15 Minutos: 00 a 59

19 00 a 07 Horas: 00 a 23 (sistema de 24 horas)

Grabable 08 a 15 Día del Mes: 01 a 31 (ajustado para años bisiestos)

20 00 a 07 Mes: 1 a 12

Grabable 08 a 15 Año: 00 a 99 (los dos últimos dígitos del año)

21

Grabable

00 a 07 Día de la semana: 00 a 06 (00: Domingo; 01: Lunes; 02: Martes; 03: Miércoles; 04: Jueves;05: Viernes; 06: Sábado)Grabable

08 a 12 No utilizado.

13 Bit de compensación de 30 segundos

14 Bit de stop de reloj

15 Bit de selección de reloj

22 00 a 15 Mapeado del teclado

23 00 a 15 Contador de alimentación OFF (BCD)

24 00 Indicador de dispositivo periférico SYSMAC LINK -- RS--232C

01 Indicador de dispositivo periférico SYSMAC LINK -- Puerto A

02 Indicador de dispositivo periférico SYSMAC LINK -- Puerto B

03 Bit de inicialización de dispositivo periférico SYSMAC LINK

04 No utilizado

05 Indicador de tiempo de ciclo

06 Indicador de parámetro de red de sistema SYSMAC LINK para nivel de operación 1

07 Indicador de parámetro de red de sistema SYSMAC LINK para nivel de operación 0

08 Indicador de unidad SYSMAC LINK/SYSMAC NET Link nivel 1 montada

09 Indicador de unidad SYSMAC LINK/SYSMAC NET Link nivel 0 montada

10 a 12 No utilizado

13 Indicador de unidad Host link nivel 1 montada en bastidor

14 Indicador de unidad Host Link nivel 0 montada en bastidor

15 Indicador de dispositivo montado en CPU

25 00 a 07 Password para acceder al bit de inhibir edición online(El bit inhibir edición online es válido cuando este byte contiene 5A).

08 Bit de disparo de FPD(269)

09 Bit de inhibir edición online

10 Indicador de standby de edición online

11 No utilizado

12 Indicador de fin de seguimiento

13 Indicador de seguimiento

14 Bit de disparo de seguimiento (se puede escribir)

15 Bit de inicio de seguimiento (se puede escribir)

26 00 a 15 Tiempo de ciclo máximo (0.1 ms)

27 00 a 15 Tiempo de ciclo actual (0.1 ms)

3-5-1 Rearrancar unidades de E/S especialLos bits AR 0100 a AR 0109 corresponden a los números de unidad de las uni-dades de E/S especial 0 a 9. Para restablecer unidades de E/S especial (inclui-das unidades PC Link) poner a ON y OFF el bit correspondiente (o poner la ali-mentación a ON y OFF). No acceder a los datos refrescados para las unidades

Área AR Sección 3-5

Page 58: C200HALPHA Manual Programacion

51

de E/S especiales durante el proceso de rearranque o restablecimiento (ver SR27400 a SR 27409 en página 35).

Nota Los bits SR 28100 a SR 28115 también actúan como bits de restart para uni-dades de E/S especiales 0 a F.

3-5-2 Indicadores de error de bastidor esclavoLos bits AR 0200 a AR 0204 corresponden a los números de unidad de uni-dades esclavas de E/S remotas #0 a #4. Estos indicadores se pondrán a ON siel mismo número de unidad se asigna a más de un esclavo o si se produce unerror de transmisión cuando se arranca el sistema. Consultar SR 251 sobreerrores que se pueden producir después de que el sistema haya arrancado cor-rectamente.

3-5-3 Indicadores de error de unidad de E/S de alta densidad grupo 2Los bits AR 0205 a AR 0215 corresponden a las unidades 0 a 9 de E/S de altadensidad grupo 2 y se pondrán a ON cuando el mismo número se seleccionapara más de una unidad, cuando el mismo canal se ha asignado a más de unaunidad, cuando se ha seleccionado el número de E/S 9 para una unidad de 64puntos, o cuando se rompe el fusible en una unidad de E/S de alta densidad detransistor. El bit AR 0215 se pondrá en ON cuando una unidad no se reconocecomo una unidad de E/S de alta densidad grupo 2.

Note Los bits SR 28000 a SR 28015 también funcionan como Indicadores de Errorpara las Unidades de E/S de alta densidad Grupo 2 con números de unidad de 0a F.

3-5-4 Indicadores de error de unidad de E/S ópticaDe AR 03 a AR 06 contienen los indicadores de error para unidades de E/Sópticas. Un error indica número de unidad duplicado. Hasta 64 unidades de E/Sópticas se pueden conectar al PLC. Las unidades se distinguen por un númerode unidad, 0 a 31, y una letra, L o H. Los bits se asignan como se indica en lasiguiente tabla.

Bits Asigna-ción AR03

Asigna-ción AR04

Asigna-ción AR05

Asigna-ción AR06

00 0 L 8 L 16 L 24 L

01 0 H 8 H 16 H 24 H

02 1 L 9 L 17 L 25 L

03 1 H 9 H 17 H 25 H

04 2 L 10 L 18 L 26 L

05 2 H 10 H 18 H 26 H

06 3 L 11 L 19 L 27 L

07 3 H 11 H 19 H 27 H

08 4 L 12 L 20 L 28 L

09 4 H 12 H 20 H 28 H

10 5 L 13 L 21 L 29 L

11 5 H 13 H 21 H 29 H

12 6 L 14 L 22 L 30 L

13 6 H 14 H 22 H 30 H

14 7 L 15 L 23 L 31 L

15 7 H 15 H 23 H 31 H

3-5-5 Selecciones de Data link de sistema SYSMAC LINKDe AR 0700 a AR 0703 y de AR 0704 a AR 0707 se utilizan para designar asig-naciones de canal para niveles de operación 0 y 1 del sistema SYSMAC LINK.

Área AR Sección 3-5

Page 59: C200HALPHA Manual Programacion

52

La asignación puede hacerse desde una FIT o automáticamente en las áreasLR y/o DM. Si la asignación es automática, también se designa el número decanales a asignar a cada modo. Estas selecciones son las siguientes.

Nivel de operación 0 Nivel de operación 1 Selección

AR 0700 AR 0701 AR 0704 AR 0705

0 0 0 0 Canales sel. externamente (FIT)

1 0 1 0 Asignación Sólo área LR

0 1 0 1 automática Sólo área DM

1 1 1 1 Áreas LR y DM

Canales por nodo La siguiente selección es necesaria si se selecciona asignación automática.

Nivel de operación 0 Nivel de operación 1 Canales por nodo No. máx.

AR 0702 AR 0703 AR 0706 AR 0707 Área LR Área DM de nodos

0 0 0 0 4 8 161 0 1 0 8 16 8

0 1 0 1 16 32 4

1 1 1 1 32 64 2

Durante el funcionamiento del sistema SYSMAC LINK, las selecciones ante-riores se leen cada ciclo de scan.

3-5-6 Bits de históricos de erroresAR 0713 (bit de sobreescribir histórico de error) es puesto a ON u OFF por elusuario para controlar la escritura sobre los registros en el área de histórico deerrores en el área de DM. Poner a ON AR 0713 para sobreescribir el registro deerror más antiguo cada vez que se produce un error después de haber grabado10. Poner a OFF AR 0713 para almacenar sólo los primeros 10 registros que seproduzcan después de haber borrado el área de históricos.AR 0714 (Bit de reset de histórico de errores) es puesto a ON y luego a OFF porel usuario para resetear el puntero de registro de error (DM 0969) y por lo tantoempezar a grabar los registros de error al principio del área de históricos.AR 0715 (bit de habilitar histórico de error) es puesto a ON por el usuario parahabilitar el almacenamiento de histórico de error y a OFF para inhibirlo.Consultar más información en 3-6 Área de DM.Los bits de histórico de error se refrescan cada ciclo.

3-5-7 Indicadores de nodo activoDe AR 08 a AR 11 y de AR 12 a AR 15 se utilizan para indicar qué nodos estánactivos en el sistema SYSMAC LINK en el momento actual. Estos indicadoresse refrescan cada ciclo durante el funcionamiento del sistema SYSMAC LINK.En la siguiente tabla se indica el número de nodo asignado a cada bit. Si el bitestá en ON, el nodo está actualmente activo.

Nivel 0 Nivel 1 Bit (números de nodo)

00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15

AR 08 AR 12 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

AR 09 AR 13 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

AR 10 AR 14 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

AR 11 AR 15 49 50 51 52 53 54 55 56 57 58 59 60 61 62 * **

*Indicador de error de controlador de comunicación**Indicador de error de EEPROM

3-5-8 Tiempo de servicio de sistema SYSMAC LINK/SYSMAC NET LinkAR 16 proporciona el tiempo asignado a servicio de nivel de operación 0 de sis-tema SYSMAC LINK y/o SYSMAC NET Link durante cada ciclo cuando estámontada en un bastidor una unidad SYSMAC LINK y/o una unidad SYSMACNET Link.

Área AR Sección 3-5

Page 60: C200HALPHA Manual Programacion

53

AR 17 proporciona el tiempo asignado a servicio de nivel de operación 1 de sis-tema SYSMAC LINK y/o SYSMAC NET Link durante cada ciclo cuando estámontada en un bastidor una unidad SYSMAC LINK y/o una unidad SYSMACNET Link.Estos tiempos se graban como 4 dígitos BCD en décimas de milisegundo(000.0 ms a 999.9 ms) y se refrescan cada ciclo de scan.

Bits

15 a 12 11 a 08 07 a 04 03 a 00

102 101 100 10--1

3-5-9 Área y bits de calendario/relojÁrea de calendario/reloj Las CPUs C200HALPHA incorporan un reloj. Si AR 2114 (bit de stop de reloj)

está en OFF, en los canales AR 18 a AR 20 estará disponible en BCD la fecha,día y hora. Esta área también se puede controlar con AR 2113 (bit de compen-sación de 30 segundos) y AR 2115 (Bit de selección de reloj).

Bits Contenidos Valores posibles

AR 1800 a AR 1807 Segundos 00 a 59

AR 1808 a AR 1815 Minutos 00 a 59

AR 1900 a AR 1907 Horas 00 a 23 (sistema 24 horas)

AR 1908 a AR 1915 Día del mes 01 a 31 (ajustado para bisiestos)

AR 2000 a AR 2007 Mes 1 a 12

AR 2008 a AR 2015 Año 00 a 99 (Los dos últimos dígitos del año)

AR 2100 a AR 2107 Día de lasemana

00 a 06 (00: Domingo; 01: Lunes; 02: Martes; 03: Miércoles; 04: Jueves; 05:Viernes; 06: Sábado)

Bit de compensación de 30 segundosAR 2113 se pone en ON para redondear a cero los segundos del área de calen-dario/reloj, es decir, si los segundos es 29 o menor, se redondea a 00; si lossegundos son 30 ó más, se aumentan los minutos en 1 y los segundos se selec-cionan a 00.

Bit de stop del reloj AR 2114 se pone a OFF para habilitar la operación del área de calendario/reloj ya ON para parar la operación.

Bit de selección de reloj AR 2115 se utiliza para seleccionar el área de calendario/reloj como se describea continuación. Estos datos deben estar en BCD y entre los límites dados.

1, 2, 3... 1. Poner a ON AR 2114 (Bit de stop).2. Seleccionar la fecha, día y hora deseado, teniendo cuidado para no poner a

OFF el bit AR 2114 (bit de stop de reloj) cuando se selecciona el día de lasemana (están en el mismo canal). (En la consola de programación, paraseleccionar estos datos, el método más sencillo son las operaciones moni-torizar bit/dígito y forzar set/reset).

3. Poner a ON AR 2115 (bit de selección del reloj). El calendario/reloj iniciaráautomáticamente la operación con las selecciones designadas y AR 2114 yAR 2115 se pondrán ambos a OFF.

El área y los bits de calendario/reloj se refrescan cada ciclo mientras está enoperación.

Precisión del reloj Como se muestra en la siguiente tabla la precisión del reloj se ve afectada por latemperatura ambiente como se indica en la siguiente tabla.

Temperaturaambiente

Precisión(desviación por

mes)

55oC --3 a 0 minutos

25oC #1 minuto

0oC --2 a 0 minutos

Área AR Sección 3-5

Page 61: C200HALPHA Manual Programacion

54

3-5-10 Bits de teclas modo TERMINALSi la consola de programación se monta en el PLC y está en modo TERMINAL,todas las entradas de las teclas 0 a 9 (incluyendo caracteres A a F, es decir,teclas 0 a 5 con SHIFT) pondrán a ON un bit correspondiente en AR 22. El modoTERMINAL se activa mediante una operación de consola de programación.La correspondencia de los bits de AR 22 con las entradas de la consola de pro-gramación son las siguientes:

Bit Entrada de consola deprogramación

AR 2200 0

AR 2201 1

AR 2202 2

AR 2203 3

AR 2204 4

AR 2205 5

AR 2206 6

AR 2207 7

AR 2208 8

AR 2209 9

AR 2210 A

AR 2211 B

AR 2212 C

AR 2213 D

AR 2214 E

AR 2215 F

Para más información sobre modo TERMINAL consultar Sección 7 Ejecución ymonitorización del programa.

3-5-11 Contador de desconexiones de alimentaciónAR 23 contiene en 4 dígitos BCD el número de veces que se ha desconectado laalimentación. Este contador se puede resetear si es necesario utilizando laoperación cambio de PV 1 de la consola de programación. (Consultar 7-1-4Modificación de datos hexadecimal/BCD). El contador de desconexión de ali-mentación se refresca cada vez que se conecta la alimentación.

3-5-12 Indicadores de dispositivos periféricos SYSMAC LINKUn dispositivo periférico sólo se puede utilizar en sistema SYSMAC LINK desdeun puerto a la vez. Cuando se cambia el puerto desde el que se está utilizando eldispositivo periférico, poner a ON el bit de inicialización de dispositivo periféricoSYSMAC LINK (AR 2403).

Bit Función

AR 2400 SYSMAC LINK -- RS-232C Indicador de dispositivo periférico(Este indicador se pone en ON cuando el periférico se está utilizando através de un sistema SYSMAC LINK desde el puerto RS-232C.)

AR 2401 SYSMAC LINK -- Puerto A Indicador de dispositivo periférico(Este indicador se pone en ON cuando el periférico se está utilizando através de un sistema SYSMAC LINK desde el puerto A de la tarjeta decomunicaciones).

AR 2402 SYSMAC LINK -- Puerto B Indicador de dispositivo periférico(Este indicador se pone en ON cuando el periférico se está utilizando através de un sistema SYSMAC LINK desde el puerto B de la tarjeta decomunicaciones).

AR 2403 SYSMAC LINK -- Bit de inicialización de dispositivo periférico(Este bit se pone en ON para inicializar la utilización del periférico através del sistema SYSMAC LINK).

Área AR Sección 3-5

Page 62: C200HALPHA Manual Programacion

55

3-5-13 Indicador de tiempo de cicloAR 2405 se pone en ON cuando el tiempo seleccionado con SCAN(018) esmenor que el tiempo de ciclo real.

AR 2405 se refresca cada ciclo mientras el PLC está en modo RUN o MONI-TOR.

3-5-14 Indicadores de unidad de enlace montadaLos siguientes indicadores señalan si las unidades de enlace especificadasestán montadas en los bastidores. (Consultar 3-5-15 Indicador de dispositivomontado en CPU para unidades Host Link de montaje en CPU). Estos indica-dores se refrescan cada ciclo.

Nombre Bit Unidad de enlace

Indicador de unidad SYSMAC LINK/SYSMAC NET Link nivel 1 montada

AR 2408 Unidad SYSMAC LINK/SYSMAC NET Link en nivel de ope-ración 1

Indicador de unidad SYSMAC LINK/SYSMAC NET Link nivel 0 montada

AR 2409 Unidad SYSMAC LINK/SYSMAC NET Link en nivel de ope-ración 0

Unidad Host Link montaje en bastidornivel 1

AR 2413 Unidad Host Link de montaje en bastidor en nivel de opera-ción 1

Unidad Host Link montaje en bastidornivel 0

AR 2414 Unidad Host Link de montaje en bastidor en nivel de opera-ción 0

3-5-15 Indicador de dispositivo montado en CPUAR 2415 se pone en ON cuando hay un dispositivo montado directamente en laCPU. Esto incluye unidades host link, consolas de programación y unidadesinterfaz. Este indicador se refresca cada ciclo.

3-5-16 Bit de disparo FPDAR 2508 se utiliza para ajustar el tiempo de monitorización de FPD(269)automáticamente. Consultar 5-26-12 DETECCION DE FALLO -- FPD(269) paramás información.

3-5-17 Indicadores de seguimiento de datos y bits de controlLos siguientes indicadores y bits de control se utilizan durante seguimiento dedatos con TRSM(045). El indicador de seguimiento se pondrá en ON durantelas operaciones de seguimiento. El indicador de seguimiento completado sepondrá en ON cuando se ha llenado la memoria correspondiente.

Bit Nombre

AR 2512 Indicador de seguimiento completado

AR 2513 Indicador de seguimiento

AR 2514 Bit de disparo seguimiento (se puede escribir)

AR 2515 Bit de inicio de muestreo (se puede escribir)

Nota Consultar 5-26-3 MUESTREO DE MEMORIA TRACE -- TRSM(045).

3-5-18 Indicadores de tiempo de cicloAR 26 contiene el tiempo de ciclo máximo producido desde que comenzó la eje-cución del programa. AR 27 contiene el tiempo de ciclo actual.

Ambos tiempos se dan en décimas de milisegundo en 4 dígitos BCD (000.0 msa 999.9 ms), y se refrescan cada ciclo de scan.

Área AR Sección 3-5

Page 63: C200HALPHA Manual Programacion

56

3-6 Área de DM (Memoria de datos)El área de DM está dividida en varias partes como se describe en la siguientetabla. Una parte de UM (hasta 3.000 canales en incrementos de 1.000 canales)se puede asignar como DM de expansión.

Direcciones Lectura/Escritura

Utilización

DM 0000 a DM 0999 Leer/escribir DM normal.

DM 1000 a DM 1999 Área de unidad de E/S especial1

DM 2000 a DM 5999 DM normal.

DM 6000 a DM 6030 Históricos

DM 6100 a DM 6143 Área de prueba de enlace (reservado)

DM 6144 a DM 6599 Sólo leer Selecciones del sistema

DM 6600 a DM 6655 Configuración del PLC

DM 7000 a DM 9999 Expansion DM2

Nota 1. En la configuración del PLC se puede seleccionar la utilización de DM 7000a DM 7999 como área de E/S especial en lugar de DM 1000 a DM 1999.Consultar 3-6-5 Configuración del PLC.

2. La operación de la consola de programación ASIGNAR UM se puede utili-zar para asignar hasta 3000 canales de UM como DM de expansión.

Aunque los canales están compuestos de 16 bits como los de otras áreas dedatos, los datos en el área de DM no se pueden definir por bit para utilizar eninstrucciones con operandos de bit. De DM 0000 a DM 6143 se pueden escribirsólo por programa, pero de DM 6144 a DM 6655 se pueden sobreescribir sólodesde periféricos, tales como consola de programación u ordenador conSYSWIN V3.0.El área de DM retiene los estados durante cortes de alimentación.

Direccionamiento indirecto Normalmente, cuando se utiliza un canal del área de datos para una instrucción,la instrucción se efectúa directamente sobre el contenido de ese canal. Porejemplo, suponiendo que se ejecuta MOV(21) con DM 0100 como primer ope-rando y LR 20 como segundo, el contenido de DM 0100 se mueve a LR 20.

Nota DM de expansión no se puede utilizar para direccionamiento indirecto.

Sin embargo, es posible utilizar direccionamiento indirecto como operandospara varias instrucciones. Para indicar una dirección indirecta de DM, con ladirección del operando se escribe *DM. Con una dirección indirecta, el conte-nido de este operando no es el dato real a utilizar; el contenido es la dirección deotro canal de DM cuyo contenido sí es el realmente utilizado en la instrucción. Sien el ejemplo anterior utilizamos *DM 0100 y el contenido de DM 0100 es 0324,entonces *DM 0100 realmente significa que el contenido de DM 0324 se ha deutilizar como operando en la instrucción, y el contenido de DM 0324 se moverá aLR 20.

MOV(21)

*DM 0100

LR 00

Canal ContenidoDM 0099 4C59DM 0100 0324DM 0101 F35A

DM 0324 5555DM 0325 2506DM 0326 D541

5555 semuevea LR 00.

IndicaDM 0324

Direc-ciona-mientoindirecto

3-6-1 Área de expansión de DMEl área de expansión de DM está diseñada para suministrar espacio de memo-ria para almacenar parámetros de operación y otros datos de operación para

Área de DM Sección 3-6

Page 64: C200HALPHA Manual Programacion

57

unidades de enlace y unidades de E/S especiales. Hasta 3,000 canales de UMse pueden asignar como expansión de DM (en incrementos de 1000 canales)utilizando la operación EXPANSION DE MEMORIA en la consola de programa-ción o SYSWIN. Las direcciones del área de expansión de DM van desde DM7000 a DM 9999.Los datos en el área de expansión de DM se pueden transferir al área pordefecto de unidad de E/S especial (DM 1000 a DM 1999) cuando arranca el PLCo vía instrucción de programación para cambiar más fácilmente los parámetrosde operación, permitiendo la rápida conmutación entre procesos de control. Elárea de expansión de DM también se puede utilizar para almacenar parámetrospara otros dispositivos conectados en el sistema de PLC, por ejemplo, cadenasde caracteres o tablas numéricas de terminales programables NTs.El área de expansión de DM se utiliza para almacenar parámetros de operacióny no se puede utilizar en programación como área normal de DM. En la expan-sión de DM sólo se puede escribir desde un periférico, retiene el estado durantecortes de alimentación y no se puede utilizar para direccionamiento indirecto.El área de UM se puede asignar como área de expansión de DM en unidades de1000 canales. Una vez creada un área de expansión de DM, se salva y se trans-fiere como parte del programa, es decir, no se requieren procedimientos espe-ciales cuando se salva o transfiere el programa.

Operación ASIGNACION DE UMEl procedimiento para la operación ASIGNAR UM de la consola de programa-ción se describe a continuación. Consultar 4--6--3 Borrar Memoria para másinformación sobre las instrucciones BORRAR DATOS y ASIGNAR UM.

1, 2, 3... 1. Borrar memoria.

CLR RESETSET NOT EXT MONTR

Nota No es posible asignar UM si no se borra previamente la memoria.

2. El área de DM de expansión se puede seleccionar a 0, 1, 2, ó 3 K canales.La siguiente secuencia de teclas crea un área de DM de expansión de 2-KW(DM 7000 a DM 8999).

WRITECLR FUN VER CHG 2 SET 9 7 1 3

Pulsar la tecla 0 para eliminar el área de DM de expansión (0 KW).o Pulsar la tecla 1 para asignar de DM 7000 a DM 7999 (1 KW).o Pulsar la tecla 2 para asignar de DM 7000 a DM 8999 (2 KW).o Pulsar la tecla 3 para asignar de DM 7000 a DM 9999 (3 KW).

3-6-2 Datos de unidad de E/S especialLas unidades de E/S especial están asignadas a los 1600 canales en el área deDM mostrados en la siguiente tabla. El valor seleccionado en la configuración

Área de DM Sección 3-6

Page 65: C200HALPHA Manual Programacion

58

del PLC (DM 6602 bits 08 a 15) determina si se utilizarán de DM 1000 a DM 2599o de DM 7000 a 8599. Consultar 3-6-5 Configuración del PLC.

Unidad Direcciones

0 DM 1000 a DM 1099 o DM 7000 a DM 7099

1 DM 1100 a DM 1199 o DM 7100 a DM 7199

2 DM 1200 a DM 1299 o DM 7200 a DM 7299

3 DM 1300 a DM 1399 o DM 7300 a DM 7399

4 DM 1400 a DM 1499 o DM 7400 a DM 7499

5 DM 1500 a DM 1599 o DM 7500 a DM 7599

6 DM 1600 a DM 1699 o DM 7600 a DM 7699

7 DM 1700 a DM 1799 o DM 7700 a DM 7799

8 DM 1800 a DM 1899 o DM 7800 a DM 7899

9 DM 1900 a DM 1999 o DM 7900 a DM 7999

A DM 2000 a DM 2099 o DM 8000 a DM 8099

B DM 2100 a DM 2199 o DM 8100 a DM 8199

C DM 2200 a DM 2299 o DM 8200 a DM 8299

D DM 2300 a DM 2399 o DM 8300 a DM 8399

E DM 2400 a DM 2499 o DM 8400 a DM 8499

F DM 2500 a DM 2599 o DM 8500 a DM 8599

Nota Estos canales de DM se pueden utilizar para otros propósitos cuando no seasignan a unidades de E/S especiales.

3-6-3 Unidades especiales de E/S

La siguiente tabla muestra las unidades de E/S especiales que se pueden utili-zar y los números de unidad que se pueden utilizar para cada una.

Nombre Referencia Rango de númerode unidad

Unidades deE/S d l

Unidades de entradad

C200H-ID501 0 a 9E/S de altadensidad

de c.c. C200H-ID215densidad(ver nota) Unidades de salida

iC200H-OD215(ver nota)

transistor C200H-OD501Unidad de entrada

/ lid iC200H-MD215

c.c. / salida transistor C200H-MD501C200H-MD115

Unidades deE/S

Unidades de entradaló i

C200H-AD001 0 a 9E/Sanalógicas

analógica C200H-AD002 0 a F (Ver nota 1)analógicas

C200H-AD003 0 a F (Ver nota 2)Unidades de salida

ló iC200H-DA001 0 a 9

analógica C200H-DA002 0 a F (Ver nota 1)C200H-DA003 0 a F (Ver nota 2)C200H-DA004 0 a F (Ver nota 2)

Unidad mixta de E/Sanalógica

C200H-MAD01 0 a F (Ver nota 2)

Área de DM Sección 3-6

Page 66: C200HALPHA Manual Programacion

59

Nombre Rango de númerode unidad

Referencia

Unidades de controlPID

C200H-PID01 0 a 9PID C200H-PID02

C200H-PID03Unidades de sensor de temperatura C200H-TS001p

C200H-TS002C200H-TS101C200H-TS102

Unidades de control de C200H-TC001temperatura C200H-TC002

C200H-TC003C200H-TC101C200H-TC102C200H-TC103

Unidades de control del /f í

C200H-TV001temperatura calor/frío C200H-TV002

C200H-TV003C200H-TV101C200H-TV102C200H-TV103

Unidades de contador de altal id d

C200H-CT001-V1 0 a 9velocidad C200H-CT002

C200H-CT021 0 a F (Ver nota 4)Unidades de control de posición C200H-NC111 0 a 9p

C200H-NC112C200H-NC211 0 a 8, A a E (Ver

nota 3)

Unidad Motion Control C200H-MC221 0 a 8, A a EUnidad posicionadora delevas

C200H-CP114 0 a 9

Consola de cambio de datos C200H-DSC01Unidad ASCII C200H-ASC02

Unidad de lógica Fuzzy C200H-FZ001Módulo de voz C200H-OV001Unidades de sensor ID C200H-IDS01-V1

C200H-IDS21

Note 1. Los números de unidad A a F se pueden seleccionar sólo para C200HX-CPU54/CPU64-ZE o C200HG-CPU53/63-ZE. Para el resto de CPus sólose pueden seleccionar números de unidad de 0 a 9.

2. Los números de unidad A a F se pueden seleccionar sólo para C200HX-CPU5j/CPU6j-ZE o C200HG-CPU5j/6j-ZE. Para el resto de CPussólo se pueden seleccionar números de unidad de 0 a 9.

3. Los números de unidad A a E se pueden seleccionar sólo para C200HX-CPU54/CPU64-ZE or C200HG-CPU53/63-ZE. Para el resto de CPus sólose pueden seleccionar números de unidad de 0 a 9.

4. Los números de unidad 0 a F se pueden seleccionar para C200HX/HG/HE.

5. Los números de unidad también se deben seleccionar para unidades PCLink que cuentan como unidades especiales de E/S, pero no se les asignancanales.

6. A las unidades de contador de alta velocidad, unidad de control de posicióny unidades analógicas de E/S se asignan canales en el área de DM. A nin-guna otra unidad se asignan canales en el área de DM.

Área de DM Sección 3-6

Page 67: C200HALPHA Manual Programacion

60

7. A las unidades C200H-NC221 y C200H-MC221 se asignan los canalespara dos unidades de E/S especiales (es decir, para dos números de uni-dad).

3-6-4 Área de histórico de erroresDe DM 6000 a DM 6030 se utilizan para almacenar hasta 10 registros que indi-can la causa, hora y fecha de los errores ocurridos en el PLC.Esta área almacenará los códigos de error generados por el sistema o genera-dos por FAL(006)/FALS(007) siempre que AR 0715 (bit de habilitar histórico deerrores) esté en ON. Consultar Sección 9 Detección y corrección de errores.

Estructura del área Los registros de error ocupan tres canales almacenados entre DM 6001 y DM6030. El último registro almacenado se puede obtener vía contenido de DM6000 (puntero de registro de error). El número de registro, canales de DM yvalor de puntero para cada uno de los diez registros es como sigue:

Registro Direcciones Valor de puntero

Ninguno N.A. 0000

1 DM 6001 a DM 6003 0001

2 DM 6004 a DM 6006 0002

3 DM 6007 a DM 6009 0003

4 DM 6010 a DM 6012 0004

5 DM 6013 a DM 6015 0005

6 DM 6016 a DM 6018 0006

7 DM 6019 a DM 6021 0007

8 DM 6022 a DM 6024 0008

9 DM 6025 a DM 6027 0009

10 DM 6028 a DM 6030 000A

Aunque cada uno de ellos contiene un registro diferente, la estructura de cadaregistro es el mismo: el primer canal contiene el código de error; el segundo ytercer canales, el día y la hora. El código de error será generado por el sistema opor FAL(006)/FALS(007); la hora y la fecha se tomará de AR 18 y AR 19 (Calen-dario/reloj). En el registro de cada error se almacena también si el error es fatal(08) o no fatal (00). Esta estructura es la siguiente.

Canal Bit Contenido

Primero 00 a 07 Código de error

08 a 15 00 (no fatal) ó 80 (fatal)

Segundo 00 a 07 Segundos

08 a 15 Minutos

Tercero 00 a 07 Horas

08 a 15 Día del mes

La siguiente tabla lista los códigos de error posibles y los errores correspon-dientes.

Tipo de error Código deerror

Error

Errores fatales 00 Corte de alimentación

01 a 99 Error de sistema (FALS)

9F Error de tiempo de ciclo

C0 a C2 Error de bus de E/S

E0 Error de tabla de E/S

E1 Demasiadas unidades

F0 Falta instrucción END(01)

F1 Error de memoria

Área de DM Sección 3-6

Page 68: C200HALPHA Manual Programacion

61

Tipo de error ErrorCódigo deerror

Errores no fatales 01 a 99 Error del sistema (FAL)

8A Error de entrada de interrupción

8B Error de programa de interrupción

9A Error de E/S de alta densidad grupo 2

9B Error de configuración del PLC

9D Error de transferencia de cassette dememoria de UM

B0 a B1 Error de E/S remota

D0 Error de E/S especial

E7 Error de verificación de tabla de E/S

F7 Error de batería

F8 Overrun de tiempo de ciclo

Operación Cuando se genera el primer código de error con AR 0715 (bit de habilitarhistórico de error) en ON, los datos relativos se colocarán en el registro de errorsiguiente al indicado por el puntero de registro de error (inicialmente será elregistro 1) y el puntero aumentará en uno. Los códigos de error generados post-eriormente se colocarán en registros consecutivos hasta el último utilizado. Elproceso de más registros de error está basado en el estado de AR 0713 (bit desobreescribir historia de error).

Si AR 0713 está en ON y el puntero contiene 000A, el siguiente error se grabaráen el registro 10, los contenidos del registro 10 se moverán al registro 9, y asísucesivamente hasta que los contenidos del registro 1 se pierdan, es decir elárea funciona como un registro de desplazamiento. El puntero de registro per-manecerá seleccionado a 000A.

Si AR 0713 está en OFF y el puntero toma el valor 000A, los contenidos del errorde historia de error permanecerá tal cual y cualquier error generado a partir deaquí no se grabará hasta que AR 0713 se ponga a ON o hasta que el área dehistoria de error se resetee.

El área de historia de error se puede resetear poniendo AR 0714 (bit de reset dehistoria de error) a ON y luego a OFF. Una vez hecho esto, el puntero de registrode error se reseteará a 0000, el área de historia de error se reseteará (es decirse borrará) y los siguientes códigos de error se grabarán desde el principio delárea de historia de error. AR 0715 (bit de habilitar historia de error) debe estaren ON para resetear el área de historia de error.

3-6-5 Configuración del PLCLa configuración del PLC contiene las selecciones que determinan la operacióndel mismo. Los datos de la configuración del PLC se pueden cambiar con unaconsola de programación o SYSWIN si la UM no está protegida contra escrituramediante el pin 1 del interruptor DIP de la CPU.

Los datos en DM 6600 a DM 6634 se pueden seleccionar o cambiar sólo con elPLC en modo PROGRAM. Los datos en DM 6635 a DM 6655 se pueden selec-cionar o cambiar en modo PROGRAM o MONITOR. Los siguientes canales sepueden cambiar desde el software de programación. (El PLC debe estar enmodo PROGRAM).

1, 2, 3... 1. Modo de arranque (DM 6600)

2. Designación de modo de arranque (DM 6601)

3. Tiempo de monitorización de ciclo (DM 6618)

4. Selección de tiempo de ciclo (DM 6619)

5. Selecciones de puerto RS-232C (DM 6645 a DM 6649)

6. Selecciones de puerto de periféricos (DM 6650 a DM 6654)

Área de DM Sección 3-6

Page 69: C200HALPHA Manual Programacion

62

El PLC puede funcionar con la configuración por defecto, siendo necesariocambiarla sólo cuando se haya de adecuar a las condiciones de la aplicación.En la siguiente tabla se describen los parámetros de configuración del PLC.Los parámetros de configuración del PLC se describen en la siguiente tabla.

Canal(es) Bit(s) Función Selección pordefecto

Proceso al arrancar (DM 6600 a DM 6612)

Las siguientes selecciones son efectivas después de transferirlas al PLC y rearrancarlo.

DM 6600 00 a 07 Modo de arranque (efectivo cuando los bits 08 a 15 se fijan a 02).00: PROGRAM; 01: MONITOR 02: RUN

PROGRAM

08 a 15 Designación de modo de arranque00: Interruptor de consola de programación01: Continuar en el modo anterior02: Selección en 00 a 07

Interruptor de laconsola de pro-gramación

DM 6601 00 a 07 Reservado ---08 a 11 Estado de bit de retención de IOM (SR 25212)

0: Reset; 1: MantenerReset

12 a 15 Estado de bit de retención de estado forzado (SR 25211)0: Reset; 1: Mantener

DM 6602 00 a 07 No utilizado. ---08 a 15 Área de unidad de E/S especial (Más información en 3-4-8 Selecciones de

área de unidad de E/S especial)

00: Modo RAM compatible C200H (Valor por defecto)Utiliza de DM 1000 a DM 2599 para el área de unidad de E/S especial.

01: Modo ROM 1 compatible C200HTransfiere los contenidos de DM 7000 a DM 7999 a DM 1000 a DM1999 al arrancar y utiliza DM 1000 a DM 1999.

02: DM Modo lineal 1Utiliza de DM 7000 a DM 7999 para el área de unidad de E/S especial.

11: Modo ROM 2 compatible C200HTransfiere los contenidos de DM 7000 a DM 8599 a DM 1000 a DM2599 al arrancar y utiliza DM 1000 a DM 2599.

12: DM Modo lineal 2Utiliza DM 7000 a DM 8599 para el área de unidad de E/S especial.

DM 1000 aDM 2599

DM 6603 aDM 6604

00 a 15 No utilizado. ---

DM 6605 00 a 07 Tiempo de interrupción momentánea de alimentación (0 a 10 ms)Selecciona el tiempo de interrupción momentánea de alimentación de 00 a10 en BCD.

0 ms

08 a 15 No utilizado. ---DM 6606 aDM 6612

00 a 15 No utilizado. ---

Selecciones de tiempo de ciclo y comunicaciones (DM 6613 a DM 6619)

Las siguientes selecciones son efectivas después de transferirlas al PLC y rearrancarlo.

DM 6613 00 a 07 Tiempo de servicio para puerto B de tarjeta de comunicaciones(efectivo cuando los bits 08 a 15 se seleccionan a 01)00 a 99 (BCD): Porcentaje del tiempo de ciclo utilizado para puerto B.

Mínimo: 0.228 ms; máximo: 58.254 ms

Sin selección(0000)

08 a 15 Habilitar selección de servicio de puerto B de tarjeta de comunicaciones00: No seleccionar tiempo de servicio (Fijo a 5%, 0.228 ms mín.)01: Utilizar tiempo en 00 a 07.

El tiempo de servicio es 10 ms cuando la operación está parada, indepen-dientemente de esta selección.

Área de DM Sección 3-6

Page 70: C200HALPHA Manual Programacion

63

Canal(es) Selección pordefecto

FunciónBit(s)

DM 6614 00 a 07 Tiempo de servicio para puerto A de tarjeta de comunicaciones(efectivo cuando los bits 08 a 15 se seleccionan a 01)00 a 99 (BCD): Porcentaje del tiempo de ciclo utilizado para puerto A.

Mínimo: 0.228 ms; máximo: 58.254 ms

Sin selección(0000)

08 a 15 Habilitar selección de servicio de puerto A de tarjeta de comunicaciones00: No seleccionar tiempo de servicio (Fijo a 5%, 0.228 ms mín.)01: Utilizar tiempo en 00 a 07.

El tiempo de servicio es 10 ms cuando la operación está parada, indepen-dientemente de esta selección.

DM 6615 00 a 15 Reservado ---DM 6616 00 a 07 Tiempo de servicio para puerto RS--232C

(efectivo cuando los bits 08 a 15 se seleccionan a 01)00 a 99 (BCD): Porcentaje del tiempo de ciclo utilizado para puertoRS--232C.

Mínimo: 0.228 ms; máximo: 58.254 ms

Sin selección(0000)

08 a 15 Habilitar selección de servicio de puerto RS--232C00: No seleccionar tiempo de servicio (Fijo a 5%, 0.228 ms mín.)01: Utilizar tiempo en 00 a 07.

El tiempo de servicio es 10 ms cuando la operación está parada, indepen-dientemente de esta selección.

DM 6617 00 a 07 Tiempo de servicio para puerto de periféricos(efectivo cuando los bits 08 a 15 se seleccionan a 01)00 a 99 (BCD): Porcentaje del tiempo de ciclo utilizado para servicio de peri-féricos.

Mínimo: 0.228 ms; máximo: 58.254 ms

Sin selección(0000)

08 a 15 Habilitar selección de servicio de puerto de periféricos00: No seleccionar tiempo de servicio (Fijo a 5%, 0.228 ms mín.)01: Utilizar tiempo en 00 a 07.

El tiempo de servicio es 10 ms cuando la operación está parada, indepen-dientemente de esta selección.

DM 6618 00 a 07 Tiempo de monitorización de ciclo (efectivo cuando la selección de los bits08 a 15 es 01, 02 ó 03)00 a 99 (BCD) $ unidad de selección (ver 08 a 15)

00

08 a 15 Habilitar monitorización de ciclo (Selección en 00 a 07 $ unidad de selec-ción; 99 s máx.)00: 120 ms (inhibida la selección en bits 00 a 07)01: Unidad de selección: 10 ms02: Unidad de selección: 100 ms03: Unidad de selección: 1 s

00: 120 ms

DM 6619 00 a 15 Tiempo de ciclo0000: Variable (no mínimo)0001 a 9999 (BCD): Tiempo mínimo en ms

Variable

Área de DM Sección 3-6

Page 71: C200HALPHA Manual Programacion

64

Canal(es) Selección pordefecto

FunciónBit(s)

Proceso de interrupción/refresco (DM 6620 a DM 6623)

Las siguientes selecciones son efectivas después de transferirlas al PLC y rearrancarlo.

DM 6620 00 a 09 Refresco de unidad de E/S especial (El número de bit corresponde alnúmero de unidad, incluidas unidades PC Link)0: Habilitar refresco de ciclo y REFRESCO DE E/S (IORF(97)) desde pro-grama principal1: Inhibir (refresco sólo para REFRESCO DE E/S desde programas de inter-rupción)

Una selección de 01 (inhibir) es válida sólo cuando la respuesta de interrup-ción está seleccionada a alta velocidad. No es válida para respuesta de in-terrupción normal o para unidades de E/S especiales montadas en basti-dores esclavos.

Habilitar

10 a 11 Reservado ---12 a 15 Respuesta de interrupción

0: Normal (C200H compatible)No se pueden recibir interrupciones cuando se está efectuando serviciode Host Link, ejecución de una instrucción simple, proceso de E/S re-mota o proceso de E/S especial. La subrutina de interrupción se ejecu-tará después de completarse el proceso.

1: Respuesta de alta velocidad (C200HS o C200HX/HG/HE)Se recibirán las interrupciones cuando se está efectuando servicio deHost Link, ejecución de una instrucción simple, proceso de E/S remotao proceso de E/S especial. Si hay una entrada de interrupción, se inter-rumpirá el proceso actual y se ejecutará la subrutina de interrupción.

Normal

DM 6621 00 a 07 Reservado ---08 a 15 Refresco de unidad de E/S especial (incluidas unidades PC Link)

00: Habilitar refresco para todas las unidades de E/S especiales01: Inhibir refresco para todas las unidades de E/S especiales (no válidopara bastidores esclavos)

Una selección de 1 (Inhibir) no es válida para unidades de E/S especialesmontadas en bastidores esclavos.

Habilitar

DM 6622 00 a 07 Unidad de tiempo de interrupción programada00: 10 ms01: 1 ms

10 ms(0000)

08 a 15 Habilitar unidad de tiempo de interrupción programada00: Inhibir (10 ms)01: Habilitar selección en 00 a 07

DM 6623 00 a 15 Refresco cíclico de unidad de E/S especial (incluidas unidades PC Link)(Los bits 00 a 15 corresponden a los números de unidad 0 a F).0: Habilitar refresco cíclico y REFRESCO DE E/S (IORF(97)) desde progra-ma principal1: Inhibir (refresco sólo para REFRESCO DE E/S desde programas de inter-rupción)

Una selección de 01 (inhibir) es válida cuando la respuesta de interrupciónestá seleccionada a alta velocidad. No es válida para respuesta de interrup-ción normal o para unidades de E/S especiales montadas en bastidoresesclavos.

Habilitar

DM 6624 aDM 6644

00 a 15 Reservado ---

Área de DM Sección 3-6

Page 72: C200HALPHA Manual Programacion

65

Canal(es) Selección pordefecto

FunciónBit(s)

Selecciones de puerto RS-232C (DM 6645 a DM 6649)

Cuando el PLC está en ON se accede continuamente a las siguientes selecciones.

DM 6645 00 a 03 Selecciones de puerto0: Estándar (1 bit de start, 7-bits de datos, paridad par, 2 bits de stop, 9.600bps)1: Selecciones en DM 6646

Estándar

04 a 07 Selección de control CTS0: Inhibir control CTS1: Habilitar control CTS

Inhibir

08 a 11 Canales para 1:1 link0: LR 00 a LR 63; 1: LR 00 a LR 31; 2: LR 00 a LR 15

Número de nodo de PT máximo para NT Link 1:N1 a 7 BCD (1 a 3 con PLC C200HE-CPUjj-ZE)

LR 00 a LR 63

12 a 15 Modo de comunicaciones0: Host link; 1: RS-232C; 2: esclavo enlace 1-a-1; 3: maestro enlace 1-a-1;4: NT link (1:1); 5: NT link (1:N)

Host Link

DM 6646 00 a 07 Velocidad de comunicaciones00: 1.2K, 01: 2.4K, 02: 4.8K, 03: 9.6K, 04: 19.2K

1.2 K

08 a 15 Formato de tramaStart Datos Stop Paridad

00: 1 bit 7 bits 1 bit Par01: 1 bit 7 bits 1 bit Impar02: 1 bit 7 bits 1 bit Ninguna03: 1 bit 7 bits 2 bit Par04: 1 bit 7 bits 2 bit Impar05: 1 bit 7 bits 2 bit Ninguna06: 1 bit 8 bits 1 bit Par07: 1 bit 8 bits 1 bit Impar08: 1 bit 8 bits 1 bit Ninguna09: 1 bit 8 bits 2 bit Par10: 1 bit 8 bits 2 bit Impar11: 1 bit 8 bits 2 bit Ninguna

1 bit start, 7-bitsdatos, 1 bitstop, paridadpar

DM 6647 00 a 15 Retardo de transmisión0000 a 9999: BCD en unidades de 10-ms.

0 ms

DM 6648 00 a 07 Número de nodo (Host link)00 a 31 (BCD)

0

08 a 11 Habilitar código de start (RS-232C)0: Inhibir; 1: Seleccionar

Inhibido

12 a 15 Habilitar código de fin (RS-232C)0: Inhibir (número de bytes recibidos)1: Seleccionar (código de fin especificado)2: CR, LF

Inhibido

DM 6649 00 a 07 Código de start (RS-232C)00 a FF (binario)

No utilizado(0000)

08 a 15 12 a 15 de DM 6648 seleccionado a 0:Número de bytes recibidos00: Selección por defecto (256 bytes)01 a FF: 1 a 255 bytes

12 a 15 de DM 6648 seleccionado a 1:Código de fin (RS-232C)00 a FF (binario)

( )

Selecciones de puerto de periféricos (DM 6650 a DM 6654)

Cuando el PLC está en ON se accede continuamente a las siguientes selecciones.

DM 6650 00 a 03 Selecciones de puerto0: Estándar (1 bit de start, 7-bits de datos, paridad par, 2 bits de stop, 9.600bps)1: Selecciones en DM 6651

Estándar

04 a 11 Reservado ---12 a 15 Modo de comunicaciones

0: Host link; 1: RS-232CHost Link

Área de DM Sección 3-6

Page 73: C200HALPHA Manual Programacion

66

Canal(es) Selección pordefecto

FunciónBit(s)

DM 6651 00 a 07 Velocidad de comunicación00: 1.2K, 01: 2.4K, 02: 4.8K, 03: 9.6K, 04: 19.2K

1.2 K

08 a 15 Formato de tramaStart Datos Stop Paridad

00: 1 bit 7 bits 1 bit Par01: 1 bit 7 bits 1 bit Impar02: 1 bit 7 bits 1 bit Ninguna03: 1 bit 7 bits 2 bit Par04: 1 bit 7 bits 2 bit Impar05: 1 bit 7 bits 2 bit Ninguna06: 1 bit 8 bits 1 bit Par07: 1 bit 8 bits 1 bit Impar08: 1 bit 8 bits 1 bit Ninguna09: 1 bit 8 bits 2 bit Par10: 1 bit 8 bits 2 bit Impar11: 1 bit 8 bits 2 bit Ninguna

1 bit de start7-bits de datos1 bit de stop,paridad par

DM 6652 00 a 15 Retardo de transmisión (Host Link)0000 a 9999: en unidades de 10-ms.

0 ms

DM 6653 00 a 07 Número de nodo (Host link)00 a 31 (BCD)

0

08 a 11 Habilitar código de start (RS-232C)0: Inhibir; 1: Seleccionar

Inhibir

12 a 15 Habilitar código de fin (RS-232C)0: Inhibir (número de bytes recibidos)1: Seleccionar (código de fin especificado)2: CR, LF

Inhibir

DM 6654 00 a 07 Código de start (RS-232C)00 a FF (binario)

0000

08 a 15 12 a 15 de DM 6653 seleccionados a 0:Número de bytes recibidos00: Selección por defecto (256 bytes)01 a FF: 1 a 255 bytes

12 a 15 de DM 6653 seleccionados a 1:Código de fin (RS-232C)00 a FF (binario)

Selecciones de error (DM 6655)

Cuando el PLC está en ON se accede continuamente a las siguientes selecciones.

DM 6655 00 a 03 Habilitar error de programación de interrupción0: Detectar errores de programación de interrupción1: No detectar errores

Detectar

04 a 07 Reservado ---08 a 11 Habilitar monitorización de tiempo de ciclo

0: Detectar ciclos largos como errores no fatales1: No detectar ciclos largos

Detectar

12 a 15 Habilitar error de batería baja0: Detectar tensión baja de batería como error no fatal1: No detectar tensión baja de batería

Detectar

Área de DM Sección 3-6

Page 74: C200HALPHA Manual Programacion

67

3-6-6 Selecciones de tarjeta de comunicaciones

Las selecciones para el puerto B de la tarjeta de comunicaciones están conteni-

das en DM 6550 a DM 6554 y las del puerto A de la tarjeta de comunicaciones en

DM 6555 a DM 6559.

Canal(es) Bit(s) Función Selección pordefecto

Selecciones de puerto B de tarjeta de comunicaciones (DM 6550 a DM 6554)

Cuando el PLC está en ON se accede continuamente a las siguientes selecciones.

DM 6550 00 a 03 Selecciones de puerto0: Estándar (1 bit de start, 7-bits de datos, paridad par, 2 bits de stop, 9.600bps)1: Selecciones en DM 6551

Estándar

04 a 07 Selección de control de CTS0: Inhibir control de CTS1: Habilitar control de CTS

Inhibir

08 a 11 Canales para enlace 1:1 (No se puede cambiar una vez seleccionado en elmaestro de 1:1 link).0: LR 00 a LR 63; 1: LR 00 a LR 31; 2: LR 00 a LR 15

Número de nodo de PT máximo para NT Link 1:N1 a 7 BCD (1 a 3 con C200HE-CPUjj-ZE)

LR 00 a LR 63

12 a 15 Modo de comunicaciones0: Host link; 1: RS-232C; 2: esclavo de enlace 1-a-1 3: maestro de enlace1-a-1; 4: NT link (1:1); 5: NT link (1:N); 6: Macro de Protocolo

Host Link

DM 6551 00 a 07 Velocidad de comunicación00: 1.2K, 01: 2.4K, 02: 4.8K, 03: 9.6K, 04: 19.2K

1.2 K

08 a 15 Formato de tramaStart Datos Stop Paridad

00: 1 bit 7 bits 1 bit Par01: 1 bit 7 bits 1 bit Impar02: 1 bit 7 bits 1 bit Ninguna03: 1 bit 7 bits 2 bit Par04: 1 bit 7 bits 2 bit Impar05: 1 bit 7 bits 2 bit Ninguna06: 1 bit 8 bits 1 bit Par07: 1 bit 8 bits 1 bit Impar08: 1 bit 8 bits 1 bit Ninguna09: 1 bit 8 bits 2 bit Par10: 1 bit 8 bits 2 bit Impar11: 1 bit 8 bits 2 bit Ninguna

1 bit de start,7-bits de datos,1 bit de stop,paridad par

DM 6552 00 a 15 Retardo de transmisión0000 a 9999: BCD en unidades de 10-ms.

0 ms

DM 6553 00 a 07 Número de nodo (Host link)00 a 31 (BCD)

0

08 a 11 Habilitar código de start (RS-232C)0: Inhibir; 1: Seleccionar

Inhibido

12 a 15 Habilitar código de fin (RS-232C)0: Inhibir (número de bytes recibidos)1: Seleccionar (código de fin especificado)2: CR, LF

Inhibido

DM 6554 00 a 07 Código de start (RS-232C)00 a FF (binario)

0000

08 a 15 12 a 15 de DM 6553 seleccionados a 0:Número de bytes recibidos00: Selección por defecto (256 bytes)01 a FF: 1 a 255 bytes

12 a 15 de DM 6553 seleccionados a 1:Código de fin (RS-232C)00 a FF (binario)

Área de DM Sección 3-6

Page 75: C200HALPHA Manual Programacion

68

Canal(es) Selección pordefecto

FunciónBit(s)

Selecciones de puerto A de tarjeta de comunicaciones (DM 6555 a DM 6559)

Cuando el PLC está en ON se accede continuamente a las siguientes selecciones.

DM 6555 00 a 03 Selecciones de puerto0: Estándar (1 bit de start, 7-bits de datos, paridad par, 2 bits de stop, 9.600bps)1: Selecciones en DM 6556

Estándar

04 a 07 Selección de control de CTS0: Inhibir control de CTS1: Habilitar control de CTS

Inhibir

08 a 11 Canales para enlace 1:1 (No se puede cambiar una vez seleccionado en elmaestro de 1:1 link).0: LR 00 a LR 63; 1: LR 00 a LR 31; 2: LR 00 a LR 15

Número de nodo de PT máximo para NT Link 1:N1 a 7 BCD (1 a 3 con C200HE-CPUjj-ZE)

LR 00 a LR 63

12 a 15 Modo de comunicaciones0: Host link; 1: RS-232C; 2: esclavo de enlace 1-a-1; 3: maestro de enlace1-a-1; 4: NT link (1:1); 5: NT link (1:N); 6: Macro de Protocolo

Host Link

DM 6556 00 a 07 Velocidad de comunicación00: 1.2K, 01: 2.4K, 02: 4.8K, 03: 9.6K, 04: 19.2K

1.2 K

08 a 15 Formato de tramaStart Datos Stop Paridad

00: 1 bit 7 bits 1 bit Par01: 1 bit 7 bits 1 bit Impar02: 1 bit 7 bits 1 bit Ninguna03: 1 bit 7 bits 2 bit Par04: 1 bit 7 bits 2 bit Impar05: 1 bit 7 bits 2 bit Ninguna06: 1 bit 8 bits 1 bit Par07: 1 bit 8 bits 1 bit Impar08: 1 bit 8 bits 1 bit Ninguna09: 1 bit 8 bits 2 bit Par10: 1 bit 8 bits 2 bit Impar11: 1 bit 8 bits 2 bit Ninguna

1 bit de start,7-bits de datos,1 bit de stop,paridad par

DM 6557 00 a 15 Retardo de transmisión0000 a 9999: BCD en unidades de 10-ms.

0 ms

DM 6558 00 a 07 Número de nodo (Host link)00 a 31 (BCD)

0

08 a 11 Habilitar código de start (RS-232C)0: Inhibir; 1: Seleccionar

Inhibido

12 a 15 Habilitar código de fin (RS-232C)0: Inhibir (número de bytes recibidos)1: Seleccionar (código de fin especificado)2: CR, LF

Inhibido

DM 6559 00 a 07 Código de start (RS-232C)00 a FF (binario)

0000

08 a 15 12 a 15 de DM 6553 seleccionados a 0:Número de bytes recibidos00: Selección por defecto (256 bytes)01 a FF: 1 a 255 bytes

12 a 15 de DM 6553 seleccionados a 1:Código de fin (RS-232C)00 a FF (binario)

Área de DM Sección 3-6

Page 76: C200HALPHA Manual Programacion

69

3-6-7 Selecciones de área de unidad de E/S especialLas selección en bits 08 a 15 de DM 6602 determina el tamaño y la ubicación delárea de unidad de E/S especial, como se indica en la siguiente tabla.

Selec-ción

Modo Función

00 Modo RAMC200H-compatible

De DM 1000 a DM 2599 se utilizan para área de unidad de E/S especial.

" Se pueden sobreescribir los datos en el área de unidad de E/S especial.

" Los datos no se pueden convertir a ROM.

01 Modo ROM 1C200H-compatible

Los contenidos de DM 7000 a DM 7999 se transfieren a DM 1000 a DM 1999 al arrancary de DM 1000 a DM 1999 se utilizan para el área de unidad de E/S especial." La asignación de área de UM se debe efectuar antes.

" En el C200H, este modo es compatible con aplicaciones EEPROM y EPROM.

" Los datos se pueden convertir a ROM indirectamente convirtiendo de DM 7000 a DM7999.

02 Modo 1 DM lineal De DM 7000 a DM 7999 se utilizan para el área de unidad de E/S especial." DM 1000 a DM 1999 se pueden utilizar como DM regular.

" DM 7000 a DM 7999 se puede convertir a ROM.

11 Modo ROM 2C200H-compatible

Los contenidos de DM 7000 a DM 8599 se transfieren a DM 1000 a DM 2599 al arrancary de DM 1000 a DM 2599 se utilizan para el área de unidad de E/S especial." La asignación de área de UM se debe efectuar antes.

" Los datos se pueden convertir a ROM indirectamente convirtiendo de DM 7000 a DM8599.

12 Modo 2 DM lineal De DM 7000 a DM 8599 se utilizan para el área de unidad de E/S especial.

" DM 1000 a DM 2599 se pueden utilizar como DM regular.

" DM 7000 a DM 8599 se puede convertir a ROM.

Directamente desde el programa no se puede leer o escribir en DM 7000 a DM9999. Para leer estos datos desde el programa, se deben copiar en otra área dedatos o DM regular utilizando la instrucción LEER EXPANSION DM --XDMR(280).Cuando se selecciona modo ROM compatible C200H o modo Lineal DM, laasignación de área de UM se debe efectuar previamente para asignar parte delárea de programa de diagrama de relés para utilizar como expansión de DM. Seproducirá un error de sistema (FAL 9B) si la memoria no está como DM de ex-pansión. Consultar 7-1-15 UM Asignación de área de UM para más informaciónsobre la operación de asignación de área de UM.Cuando se selecciona el modo Lineal de DM, el área de datos de la unidad deE/S especial comenzará en DM 7000 en lugar de DM 1000 por lo tanto añadir6000 a las direcciones de DM que aparezcan en el manual de operación de launidad de E/S especial.Cuando la selección del área de unidad de E/S especial es 01, 02, 11 ó 12 y nose ha asignado la DM de expansión a partir de 8000, se producirá un error deunidad de E/S especial para una unidad con número de A a F cuando la unidadacceda a su área asignada.

3-7 Área HR (Relé de retención)El área HR se utiliza para almacenar/tratar varios tipos de datos y es accesiblepor canal o por bit. El rango de direcciones de canal es de HR 00 a HR 99; lasdirecciones de bit de HR 0000 a HR 9915. Los bits HR se pueden utilizar en cual-quier orden y tantas veces como sea necesario.El área HR retiene el estado cuando se cambia del modo de operación del sis-tema, cuando se corta la alimentación o cuando se para la operación del PLC.Los bits y canales del área HR se pueden utilizar para preservar datos cuandose para la operación del PLC. Los bits HR también tienen varias aplicacionesespeciales tales como crear relés de enclavamiento con la instrucción Keep yconformar salidas de autorretención. Todas estas funciones se describen enSección 4 Escritura del programa y Sección 5 Juego de Instrucciones.

Área de HR Sección 3-7

Page 77: C200HALPHA Manual Programacion

70

3-8 Área TC (Temporizador/Contador)El área TC se utiliza para crear y programar temporizadores y contadores yretener indicadores de finalización, valores seleccionados (SV) y valores pre-sentes (PV) para todos los temporizadores y contadores. A todo esto se accedea través de números de TC desde TC 000 hasta TC 511. Cada número de TC sedefine como temporizador o contador utilizando una de las siguientes instruc-ciones: TIM, TIMH, CNT, CNTR(012) y TTIM(087). No es necesario prefijocuando se utiliza un número de TC en una instrucción temporizador o contador.Una vez definido un número de TC mediante una de estas instrucciones, no sepuede volver a definir en ningún otro punto del programa con la misma o distintainstrucción. Si se define el mismo número de TC en más de una de estas instruc-ciones o en la misma instrucción dos veces, se generará un error durante el che-queo del programa. No hay restricciones en cuanto a orden en que se utilicenlos números de TC.Una vez definido, un número de TC se puede utilizar como operando en una ovarias instrucciones distintas de las listadas anteriormente. Cuando se definecomo un temporizador, un número de TC designado como operando toma unprefijo TIM. El prefijo TIM se utiliza independientemente de la instrucción detemporizador que se utilizó para definir el temporizador. Una vez definido comoun contador, el número de TC designado como un operando toma un prefijoCNT. El prefijo CNT se utiliza independientemente de la instrucción de contadorque se utilizó para definir el contador.Los números de TC se pueden designar para operandos que requieran dato debit o para operandos que requieran datos de canal. Cuando se designa como unoperando que requiere datos de bit, el número de TC accede al indicador definalización del temporizador o contador. Cuando se designa como un operandoque necesita dato de canal, el número de TC accede a la dirección de memoriaque contiene el PV del temporizador o contador.Los números de TC también se utilizan para acceder al SV de temporizadores ycontadores desde un periférico de programación. Los procedimientos parahacerlo con la consola de programación se describen en 7-1 Monitorización dela operación y modificación de datos.El área de TC retiene los SVs de temporizadores y contadores durante cortesde alimentación. Los PVs de temporizadores se resetean cuando se inicia laoperación del PLC y cuando se resetean en secciones enclavadas del pro-grama. Consultar 5-10 INTERLOCK y INTERLOCK CLEAR -- IL(002) yILC(003) para más información sobre la operación de temporizador y contadoren secciones enclavadas del programa. Los PVs de contadores no se reseteanen estas situaciones.Observar que en programación “TIM 000” se utiliza para designar tres cosas: lainstrucción temporizador definida con número de TC 000, el indicador de finali-zación para este temporizador y el PV de este temporizador. El significado eneste contexto debería ser claro, es decir, primero siempre una instrucción,segundo siempre un bit y tercero siempre un canal. Los mismo es válido para elresto de números de TC con el prefijo TIM o CNT.

3-9 Área LR (Área de enlace)El área LR se utiliza como un área de datos común para transferir informaciónentre PLCs. Esta transferencia de datos se obtiene a través de un sistema PCLink.Ciertos canales serán asignados como canales de escritura de cada PLC.Estos canales son escritos por el PLC y automáticamente transferidos a los mis-mos canales LR de los otros PLCs del sistema. Los canales de escritura de losotros PLCs se transfieren como canales de lectura por lo que cada PLC puedeacceder a los datos escritos por los otros PLCs en el sistema PC Link. Sólo loscanales de escritura asignados al PLC concreto estarán disponibles para escri-tura, el resto sólo los podrá leer.El área LR es accessible por bit o por canal. El rango de direcciones de canal delárea LR va de LR 00 a LR 63; las direcciones de bit del área LR, desde LR 0000 a

Área LR Sección 3-9

Page 78: C200HALPHA Manual Programacion

71

LR 6315. Cualquier parte del área LR que no se utilice por el sistema PC Link sepuede utilizar como canales o bits de trabajo.Los datos del área LR no se retienen cuando se corta la alimentación, cuando elPLC se cambia a modo PROGRAM o cuando se resetea en una sección encla-vada del programa. Consultar 5-10 INTERLOCK y INTERLOCK CLEAR --IL(002) y ILC(003).

3-10 Área UMCon el C200HX/HG/HE, el área de UM contiene el programa de diagrama derelés. Parte del área de UM se puede asignar como DM de expansión o área decomentario de E/S. El tamaño utilizable del área de UM es de 3.2 KW en laC200HE-CPU11-ZE a 63.2 KW en la C200HX-CPU65-ZE y C200HX-CPU85-ZE.

DM 0000 DM 6144 DM 6600 DM 6655 DM 7000 DM 9999

Setupdel PLC

ReservadoÁrea expan-sión de DM(0 a 3 KW)

Área comenta-rio de E/S

Programa de dia--grama de relés

Tamaño variable

Área UM (32 KW máx.)Área DM fija

Área convertible ROMÁrea DM normal

Área por defecto de unidadde E/S especial

DM 1000 a DM 1999

Nota Consultar 7-1-15 Asignación de área de UM para más información sobre utiliza-ción de la consola de programación para asignar UM para expansión de DM.

Área FunciónDM normal Esta área se puede utilizar libremente para operaciones e

instrucciones de programación. Al área de DM se accede sólo enunidades de canal.

De DM 1000 a DM 2599 está asignada a unidades de E/Sespeciales cuando se utilizan éstas, pero se pueden utilizar comoDM normal cuando en la configuración del PLC se seleccionacomo área de unidades de E/S especiales de DM 7000 a DM8599 (DM 6602).

Setup del PLC El setup del PLC contiene varias selecciones que controlan laoperación del PLC.

Reservado Área reservada para el sistema. No accesible para el usuario.DM deexpansión

Esta área contiene datos de inicialización tales como datos deunidad de E/S especial, tablas de cadenas de caracteres onuméricas para PTs y datos de cálculos. Los datos no se puedenleer directamente desde el área de expansión de DM comopuede hacerse con DM normal.

El área de expansión de DM se puede sobreescribir efectuandola operación de modificación de datos Hexadecimal/BCD desdeuna consola de programación o transfiriendo los datos de DMeditados desde el software de programación (SYSWIN o LSS).

Comentario deE/S

Esta área se utiliza para almacenar comentarios de E/S, loscuales se pueden guardar junto con el programa. Loscomentarios de E/S se pueden monitorizar sin necesidad deefectuar la operación Carga de comentario de E/S.

Programa dediagrama derelés

Esta área se utiliza para almacenar el programa de diagrama derelés creado por el usuario. Los canales del área UM asignados aexpansión de DM y/o comentarios de E/S se toman del área deprograma de diagrama de relés.

Nota 1. La asignación de área de UM para área de expansión de DM y/o de comen-tario de E/S reducirá la capacidad para programa de diagrama de relés.Chequear la capacidad del programa antes de asignar el área de UM.

2. La selección por defecto para el área de UM no tiene ninguna memoria asig-nada para expansión de DM o para área de comentario de E/S. Esta memo-ria debe ser asignada por el usuario de acuerdo con sus necesidades.

Área UM Sección 3--10

Page 79: C200HALPHA Manual Programacion

72

3-11 Área TR (Relé temporal)El área de TR proporciona ocho bits que se utilizan sólo con instrucciones LD yOUT para habilitar ciertos tipos de bifurcaciones en la programación en dia-grama de relés. La utilización de los bits de TR se describe en Sección 4 Escri-tura del programa.El rango de direcciones de TR va de TR 0 a TR 7. Cada uno de estos bits sepuede utilizar tantas veces como se necesite y en cualquier orden siempre queel mismo bit LR no se utilice dos veces en el mismo bloque de instrucción.

3-12 Área EM (Memoria de datos extendida)Además del área de DM, los PLCs C200HG y C200HX disponen de un área deEM que puede almacenar hasta 18K palabras de datos. El área de EM está divi-dida en bancos que contienen 6.144 palabras cada uno (de EM 0000 a EM6143).Los PLCs C200HG tienen un banco (banco 0), los C200HX-CPUj4-ZE tresbancos (0, 1 y 2), la C200HX-CPU65-ZE tiene ocho bancos (0 a 7), y laC200HX-CPU85-ZE tiene dieciséis bancos (0 a F). Al banco efectivo se deno-mina banco actual.

3-12-1 Utilización del área EMAunque las direcciones en el banco actual del área de EM se pueden utilizarcomo operandos en instrucciones de programación, a los otros bancos del áreade EM no se puede acceder directamente. Para acceder a los datos de los otrosbancos, los PLCs disponen de las instrucciones EMBC(281), XFR2(----),BXF2(----) y IEMS(----).

Instrucción FunciónEMBC(281) Cambia el banco actual al número de banco especificado.XFR2(----) Transfiere datos entre el banco EM actual o entre el banco EM

actual y una de las áreas regulares de datos.

BXF2(----) Transfiere datos entre el banco EM especificado y otro banco EMo un área de datos regular.

IEMS(----) Conmuta el destino de direccionamiento indirecto (*DM) al bancoEM especificado. También puede volver el destino a DM.

Ejemplo 1 El siguiente ejemplo utiliza EMBC(281) para seleccionar el banco actual a ban-co 1 y XFR2(----) para transferir los contenidos de EM 2000 a EM 2999 aDM 0000 a DM 0999. Después de la ejecución de una sección de programa, loscontenidos de DM 0000 a DM 0999 se transfieren de nuevo a EM 2000 aEM 2999.

Proceso de datos efectuado con da-tos en DM 0000 a DM 0999.

XFR2

#1000

#2000

D0000

EMBC

#0001

XFR2

#1000

D0000

%&'''

Nota Si se utilizara BXF2(----) para realizar las transferencias de datos, podría espe-cificarse cualquier banco EM y no sería necesaria EMBC(281) para seleccionarbanco 1 de EM.

Área EM Sección 3-12

Page 80: C200HALPHA Manual Programacion

73

Ejemplo 2 El siguiente ejemplo utiliza IEMS(----) para cambiar el destino para direcciona-miento indirecto (£DM) a banco 1 de EM. Después de ejecutar esta instrucción,los operandos de £DM acceden a canales en banco 1 de EM y no al área de DM.En este caso, el segundo operando en la instrucción MOV(21) transfiere #1234a un canal en el banco de EM. (Por ejemplo, #1234 se moverá a EM 0100 si DM0000 contiene 0100.)Después en el programa, el destino para direccionamiento indirecto (£DM) seconmuta de nuevo al área de DM ejecutando IEMS(----) con un operando de000.

MOV

#1234

(D0000

IEMS

#E0B1

IEMS

000

Nota 1. Verificar que se vuelve al destino de direccionamiento indirecto a sus valo-res por defecto (el área de DM) cuando sea necesario. El destino se volveráal área de DM automáticamente al principio del siguiente ciclo.

2. El destino para direccionamiento indirecto revierte al área de DM al inicio delas subrutinas de interrupción, pero se puede cambiar dentro de una subru-tina. El destino se devuelve a su selección original cuando el control se de-vuelve al programa principal.

3-12-2 El banco de EM actualEl banco de EM actual se selecciona a 0 cuando el PLC se pone en ON y el ban-co de EM actual se cambia mediante EMBC(281) o IEMS(----). A diferencia dedestino para direccionamiento indirecto, el número de banco actual no se inicia-liza al inicio de un ciclo o del arranque de una subrutina de interrupción.Después de conectar el PLC, se retomará el estado del banco conmutado des-pués de cambiar el modo del PLC o de que se haya completado la ejecución deuna subrutina de interrupción.

Área EM Sección 3-12

Page 81: C200HALPHA Manual Programacion

75

SECCIÓN 4Programación en diagrama de relés

Esta sección explica los pasos y conceptos básicos para escribir un programa sencillo de diagrama de relés y describe lasinstrucciones básicas y el control de ejecución. En la Sección 5 Juego de Instrucciones se describe todas y cada una de lasinstrucciones del C200HALPHA.

4-1 Procedimiento básico 74. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-2 Terminología 74. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-3 Capacidad de programa 75. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4 Diagrama de relés básico 75. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-4-1 Términos básicos 75. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4-2 Código nemónico 76. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4-3 Instrucciones de diagrama de relés 77. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4-4 OUTPUT y OUTPUT NOT 79. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4-5 La instrucción END 79. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4-6 Instrucciones de bloque lógico 80. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-4-7 Codificación de múltiples instrucciones de salida 86. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-5 La consola de programación 86. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-5-1 El teclado 87. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-5-2 Modos del PLC 88. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-5-3 El interruptor de mensajes del display 89. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-6 Preparación para la operación 89. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-1 Escribir la password 90. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-2 Buzzer 90. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-3 Borrar memoria 90. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-4 Registrar la tabla de E/S 93. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-5 Borrar mensajes de error 94. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-6 Verificar la tabla de E/S 94. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-7 Leer la tabla de E/S 95. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-8 Borrar la tabla de E/S 98. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-6-9 Transferir tabla SYSMAC NET Link 99. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-7 Escritura, modificación y chequeo del programa 101. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7-1 Selección y lectura de direcciones de memoria de programa 101. . . . . . . . . . . . . . . . . . . . . .4-7-2 Escritura y edición de programas 102. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7-3 Chequeo del programa 105. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7-4 Visualización del tiempo de ciclo 107. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7-5 Búsqueda en el programa 107. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7-6 Insertar y borrar instrucciones 109. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7-7 Bifurcaciones de línea de instrucción 111. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-7-8 Saltos 114. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-8 Control de estados de bit 116. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-8-1 DIFFERENTIATE UP y DIFFERENTIATE DOWN 116. . . . . . . . . . . . . . . . . . . . . . . . . . . .4-8-2 KEEP 116. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-8-3 Bits de autorretención 117. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-9 Bits de trabajo (relés internos) 117. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-10 Precauciones de programación 119. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-11 Ejecución del programa 120. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-12 Programas de interfaz de unidad de E/S especial 120. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-12-1 Rearranque de unidades de E/S especiales 121. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-12-2 Programa de proceso de error de unidad de E/S especial 121. . . . . . . . . . . . . . . . . . . . . . . . . .4-12-3 Cambiar selecciones de unidad de E/S especial 121. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-12-4 Intervalo de refresco de E/S de unidad de E/S especial 123. . . . . . . . . . . . . . . . . . . . . . . . . . .4-12-5 Reducir tiempo de ciclo 123. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-13 Programación de unidad de temporizador analógico 124. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-13-1 Operación 125. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-13-2 Asignación de bit y selección de interruptor DIP 125. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-13-3 Programa ejemplo 126. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 82: C200HALPHA Manual Programacion

76

4-1 Procedimiento básico

Existen varios pasos básicos en la escritura de un programa. En el Apéndice FModelo para asignación de E/S y en el Apéndice G Modelo para codificación delprograma, se encuentran hojas modelo que pueden ayudar a la programación.

1, 2, 3.. 1. Obtener un listado de todos los dispositivos de E/S y de los puntos de E/Sasignados, y preparar una tabla que indique la asignación de cada bit deE/S a cada dispositivo de E/S.

2. Si el PLC tiene varias unidades con canales asignados en otras áreas dis-tintas de IR en las que la función de cada bit es especificada por la unidad,preparar tablas similares para mostrar qué canales se utilizan para quéunidades y la función de cada uno. Estas unidades incluyen unidades deE/S especiales y unidades de enlace.

3. Determinar qué canales están disponibles como bits de trabajo y prepararuna tabla en la que se los pueda situar tal y como se van a utilizar.

4. Preparar también tablas similares de temporizadores/contadores y saltos.Recordar que la función de un TIM/CNT sólo se puede definir una vez porprograma; los números de salto 00 a 99 sólo se pueden utilizar una vezcada uno de ellos. (Los números de TC se describen en 5--14 Instruccio-nes Temporizador y Contador, los números de salto se describen poste-riormente en esta sección).

5. Dibujar el diagrama de relés.6. Escribir el programa en la CPU. Si se hace mediante la consola de progra-

mación implica convertir el programa a nemónico.7. Chequear el programa para localizar los errores de sintaxis, y corregirlos.8. Ejecutar el programa para detectar los posibles errores, y corregirlos.9. Una vez instalado el sistema de control y preparado para utilizar, ejecutar

el programa y realizar los ajustes finos necesarios.10. Hacer una copia de seguridad del programa.

Los conceptos de programación en diagrama de relés y conversión a códigonemónico se describe en 4-4 Diagrama de relés básico. La escritura del pro-grama mediante la consola de programación se describe en 4-5 Consola deprogramación y 4-7 Escritura, modificación y chequeo del programa. El resto dela sección 4, abarca programación de instrucciones más avanzadas, precau-ciones de programación y ejecución del programa.

4-2 TerminologíaExisten básicamente dos tipos de instrucciones utilizadas en programación dediagrama de relés: instrucciones de relés que corresponden a las condicionesdel diagrama de relés y las de la parte derecha del diagrama de relés, controla-das por las anteriores. Las primeras se utilizan en forma de instrucción sólocuando se convierten a código nemónico.

La mayoría de las instrucciones tienen uno o varios operandos asociados. Losoperandos indican o suministran los datos sobre los que se ejecutará la instruc-ción. En ciertas ocasiones éstos se especifican como valores numéricos, perolo normal es que sean direcciones de canales o bits que contienen los datos autilizar. Por ejemplo, una instrucción MOVE que tiene asignado como primeroperando el canal 00, moverá el contenido de dicho canal a otro lugar. Este otrolugar se designará como un operando. Un bit cuya dirección se asigna a un ope-rando se denomina bit operando; un canal cuya dirección se asigna a un ope-rando se denomina canal operando. Cuando se asigna una constante comooperando, se ha de escribir delante el caracter # para indicar que no es unadirección.

Otros términos utilizados en la descripción de instrucciones se dan en Sección 5Juego de instrucciones.

Terminología Sección 4-2

Page 83: C200HALPHA Manual Programacion

77

4-3 Capacidad de programaEl tamaño máximo del programa de usuario depende de la cantidad de UM asig-nada al área de expansión de DM y al área de comentario de E/S. Asignando3KW a memoria de expansión de DM y 2 KW a comentarios de E/S, la memoriadisponible para programa de diagrama de relés es de 10.1 KW aproximada-mente. Consultar 3-10 Area de UM para más información de asignación de UM.

DM6144

Conf.delPLC

Reserv.Area deexpansiónde DM

Area decomentariode E/S

Diagrama de relés

Variable

Area de programa de relés (15.1 KW)Area de DM fija

DM6600

DM6655

DM7000

DM9999

4-4 Diagrama de relés básicoUn diagrama de relés o de contactos consiste en una línea vertical a la izquierdallamada barra de bus y de líneas paralelas que parten de aquélla, denominadaslíneas de instrucción. Junto a las líneas de instrucción se colocan condiciones,siendo las combinaciones lógicas de estas condiciones las que determinancuándo y cómo se ejecutan las instrucciones de la derecha. La siguiente figuramuestra un diagrama de relés sencillo.

00000 06315

Instrucción

Instrucción

00403

00001

HR 0109 LR 250325208 24400

00501 00502 00503 00504

24401

00100 00002

00010

00011

00003 HR 0050 00007 TIM 001 LR 0515

21001 21002

00405

21005 21007

Como se muestra en el diagrama, las líneas de instrucción se pueden unir o se-parar. Los conjuntos de dos líneas paralelas se denominan condiciones. Lascondiciones sin una línea diagonal, se llaman condiciones normalmente abier-tas y corresponden a instrucciones LOAD, AND, o OR, mientras que aquéllascruzadas por una línea diagonal, se denominan condiciones normalmente ce-rradas y corresponden a instrucciones LOAD NOT, AND NOT, OR NOT. El nú-mero situado sobre la condición se denomina bit de operando para la condición.Es el estado del bit asociado a cada instrucción, el que determina la condiciónde ejecución para las siguientes instrucciones.

Nota Cuando se visualizan diagramas de relés con el SYSWIN, aparece una segun-da barra de bus en la parte derecha del diagrama de relés a la que se conecta-rán todas las instrucciones de la derecha. Consultar para más información elManual de operación del SYSWIN.

4-4-1 Términos básicosToda condición de un diagrama de relés es ON u OFF dependiendo del estadodel bit operando asignado. Una condición normalmente abierta está en ON si elbit asignado está en ON, y en OFF si el bit está en OFF. Una condición normal-mente cerrada está en ON si el bit asignado está en OFF, y en OFF si el bit estáen ON. Generalizando, se utiliza una condición normalmente abierta si deseahacer algo cuando un bit esté en ON, y se utiliza una condición normalmentecerrada si se ha de ejecutar una acción cuando un bit esté en OFF.

Condiciones normalmenteabiertas y normalmentecerradas

Diagramas de relés básicos Sección 4-4

Page 84: C200HALPHA Manual Programacion

78

Instrucción

Instrucción

0000

0000 La instrucción se ejecutacuando el bit 0000 está en ON.Condición

normalmente abierta

Condiciónnormalmente cerrada

La instrucción se ejecutacuando el bit 0000 está enOFF.

En diagrama de relés, la condición final bajo la cual se ejecutará una instruc-ción, se determina mediante la combinación de las condiciones ON u OFF quela preceden. Esta condición final, ON u OFF, se denomina condición de ejecu-ción para la instrucción. Todas las instrucciones a excepción de las instruccio-nes LOAD, tienen condiciones de ejecución.

Los operandos para cualquiera de las instrucciones pueden ser bits de lasáreas IR, SR, HR, AR, LR o TC. Esto significa que las condiciones en un diagra-ma de relés, pueden ser determinadas por los estados de E/S, estado de indica-dores, estados contenidos en bits de trabajo, estados de temporizadores/conta-dores, etc. Las instrucciones LOAD y OUTPUT también pueden utilizar bits deárea TR, pero sólo se hace en aplicaciones especiales. Consultar más detallesen 4-7-7 Bifurcación de líneas de instrucción.

La correspondencia entre condiciones e instrucciones, se determina por la rela-ción entre las condiciones contenidas en las líneas de instrucción que las co-nectan. Todo grupo de instrucciones unidas para crear un resultado lógico, sedenomina bloque lógico. Aunque se pueden escribir diagramas de relés sinanalizar realmente bloques individuales, la comprensión de éstos es necesariapara programar eficazmente y es esencial cuando los programas se escribenen código nemónico.

4-4-2 Código nemónico

El diagrama de relés no se puede escribir directamente en el PLC mediante laconsola de programación; se necesita el SYSWIN. Para escribirlo desde unaconsola de programación, antes es preciso convertirlo a código nemónico. Enrealidad se puede programar directamente en nemónico, pero no es recomen-dable para personal inexperto o para programas complejos. El programa se al-macena en memoria en código nemónico.

Dada la importancia de la consola de programación como dispositivo periféricoy del código nemónico, lo vamos a describir junto con el diagrama de relés.

El programa se graba en direcciones de la memoria de programa. Las direccio-nes en esta memoria, difieren de las de otras áreas de la memoria, dado que notodas las direcciones contienen necesariamente la misma cantidad de datos.Es más, cada dirección contiene una instrucción junto con todos los datos y ope-randos que requiere. Dado que algunas instrucciones no necesitan operandos,mientras que otras necesitan hasta 3 operandos, las direcciones de la memoriade programa pueden tener una longitud desde 1 hasta 4 palabras.

La dirección inicial de memoria de programa es la 00000 y la última aquélla queagote la capacidad de la memoria. La primera palabra de cada dirección definela instrucción. La primera palabra también puede contener alguno de los datosutilizados por algunas instrucciones. Si una instrucción necesita un operandode un solo bit, se programa en la misma palabra que la instrucción. El resto depalabras ocupadas por una instrucción contiene los operandos que especificanqué datos se han de utilizar. Cuando se convierte a código nemónico, casi todaslas instrucciones del diagrama de relés se escriben de la misma forma, una lí-

Condiciones de ejecución

Bits operando

Bloques lógicos

Estructura de la memoriade programa

Diagramas de relés básicos Sección 4-4

Page 85: C200HALPHA Manual Programacion

79

nea en cada palabra, igual como aparecen en los símbolos de diagramas derelés. A continuación se muestra un ejemplo de código nemónico.

Dirección Instrucción Operandos

00000 LD HR 000100001 AND 0000100002 OR 0000200003 LD NOT 0010000004 AND 0010100005 AND LD 0010200006 MOV(021)

000DM 0000

00007 CMP(020)DM 0000HR 00

00008 LD 2550500009 OUT 0050100010 MOV(021)

DM 0000DM 0500

00011 DIFU(013) 0050200012 AND 0000500013 OUT 00503

Las columnas de dirección e instrucción sólo se rellenan para el código nemóni-co de la instrucción. Para el resto de las líneas estas columnas se dejan en blan-co. Si la instrucción no necesita definidor o bit operando, en la primera línea sedeja en blanco la columna de operando. Es muy útil tachar todos los espacios enblanco de la columna de operando (para todas las instrucciones que no necesi-tan bit operando) pues se puede chequear rápidamente si falta por escribir algu-na dirección.En programación, las direcciones aparecen automáticamente, no siendo nece-sario escribirlas, a no ser que se desee otra ubicación para la instrucción. Cuan-do se pase a código nemónico, es preferible comenzar en la dirección de me-moria 00000, a no ser que exista una razón específica para comenzar en cual-quier otra.

4-4-3 Instrucciones de diagrama de relésEstas instrucciones son las correspondientes a las condiciones del diagrama derelés. Estas instrucciones, individuales o combinadas con bloques lógicos, des-critas a continuación, integran las condiciones de ejecución sobre las cuales sebasa la ejecución del resto de instrucciones.

La primera condición para comenzar una línea lógica en un diagrama de reléscorresponde a la instrucción LOAD o LOAD NOT. Cada una de estas instruccio-nes necesita una línea de código nemónico. En los siguientes ejemplos, se utili-za “Instrucción” como comodín que sustituye a cualquier instrucción de la partederecha del diagrama y descritas más adelante en este manual.

00000

00000

Una instrucción LOAD

Una instrucción LOAD NOT

Dirección Instrucción Operandos

00000 LD 0000000001 Instrucción00002 LD NOT 0000000003 Instrucción

Si esta es la única condición de la línea lógica, para la instrucción LOAD (condi-ción normalmente abierta), la condición de ejecución sería ON cuando el bit00000 esté en ON; para la instrucción LOAD NOT (condición normalmente ce-rrada), sería ON cuando el bit 00000 esté en OFF.

Cuando la misma línea de instrucción contiene dos o más condiciones, la prime-ra corresponde a una LOAD o LOAD NOT, y el resto a instrucciones AND o AND

LOAD y LOAD NOT

AND y AND NOT

Diagramas de relés básicos Sección 4-4

Page 86: C200HALPHA Manual Programacion

80

NOT. El siguiente ejemplo muestra tres condiciones correspondientes a las si-guientes instrucciones: LOAD, AND NOT y AND. De nuevo, cada una de estasinstrucciones necesita una línea de código nemónico.

00000 00100 LR 0000Instrucción

Dirección Instrucción Operandos

00000 LD 0000000001 AND NOT 0010000002 AND LR 000000003 Instruction

La instrucción tendrá una condición de ejecución en ON, sólo cuando las trescondiciones anteriores sean ON, es decir bit 0000 a ON, bit 0100 a OFF yLR0000 a ON.

Las instrucciones AND en serie se pueden considerar individualmente, con ca-da una de ellas realizando la operación lógica AND de la condición de ejecución(es decir el total de las condiciones hasta este punto) y el estado del bit operan-do de la instrucción AND. Si ambos están en ON, se producirá una condición deejecución ON para la siguiente instrucción. Si alguno de ellos es OFF, el resulta-do también será OFF. La condición de ejecución para la primera instrucciónAND es la primera condición de la línea de instrucción.

Cada instrucción AND NOT en serie, realizará la operación lógica AND entre sucondición de ejecución y la condición negada de su bit operando.

Cuando dos o más condiciones en líneas separadas se juntan, la primera condi-ción corresponde a una instrucción LOAD o LOAD NOT; el resto de las condi-ciones corresponden a instrucciones OR u OR NOT. El siguiente ejemplo,muestra tres condiciones correspondientes a las siguientes instrucciones:LOAD NOT, OR NOT, y OR. Cada una de estas instrucciones necesita una líneade código nemónico.

Instrucción

00100

LR 0000

00000

Dirección Instrucción Operandos

00000 LD NOT 0000000001 OR NOT 0010000002 OR LR 000000003 Instrucción

La instrucción tendrá una condición de ejecución ON cuando por lo menos unade las condiciones anteriores sea ON, es decir cuando el bit IR 00000 esté enOFF, el bit IR 00100 en OFF, o el LR 0000 esté en ON.

Las instrucciones OR y OR NOT se pueden considerar individualmente, con ca-da una de ellas realizando la operación lógica OR entre su condición de ejecu-ción y el estado de su bit operando.

Cuando en programas más complicados nos encontramos con varias instruc-ciones AND y OR, algunas veces se pueden considerar individualmente, es de-cir cada instrucción realiza una operación lógica con su condición de ejecucióny su bit operando.

OR y OR NOT

Combinación deinstrucciones AND y OR

Diagramas de relés básicos Sección 4-4

Page 87: C200HALPHA Manual Programacion

81

Instrucción00002 0000300000 00001

00200

Dirección Instrucción Operandos

00000 LD 0000000001 AND 0000100002 OR 0020000003 AND 0000200004 AND NOT 0000300005 Instrucción

En este ejemplo, se ejecuta una AND entre el estado del bit IR 00000 y el del bitIR 00001, para determinar la condición de ejecución para la OR con el bit IR00200. El resultado de esta operación será la condición de ejecución para laAND con el estado del bit IR 00002, que a su vez será la condición de ejecuciónpara la AND con el estado negado (AND NOT) del bit IR 00003.

Sin embargo en diagramas más complicados es necesario considerar bloqueslógicos para determinar la condición de ejecución final, para lo que se utilizanlas instrucciones AND LOAD y OR LOAD. Pero antes veamos las instruccionesnecesarias para completar un sencillo programa de ”entrada--salida”.

4-4-4 OUTPUT y OUTPUT NOTLa forma más sencilla de presentar en una salida el resultado de la combinaciónde condiciones de ejecución es programarla directamente con las instruccionesOUTPUT y OUTPUT NOT. Estas instrucciones controlan el estado del bit ope-rando designado de acuerdo con la condición de ejecución. Con la instrucciónOUTPUT, el bit se pondrá a ON mientras la condición de ejecución esté en ON ylo mismo con OFF. Con la instrucción OUTPUT NOT, el operando se pondrá enON mientras la condición de ejecución esté en OFF y se pondrá a OFF mientrasla condición sea ON.

00000

10001

10000

00001

Dirección Instrucción Operandos

00000 LD 0000000001 OUT 10000

Dirección Instrucción Operandos

00000 LD 0000100001 OUT NOT 10001

En los ejemplos anteriores, el bit IR 10000 estará en ON mientras el bit IR 00000esté en ON, y el bit IR 10001 estará en OFF mientras el bit IR 00001 esté en ON.En este caso, los bits IR 00000 y IR 00001 son bits de entradas y los IR 10000 yIR 10001 son bits de salidas, es decir las entradas 0 y 1 controlan el estado delas salidas 0 y 1 respectivamente.

La duración del estado ON u OFF de un bit se puede controlar combinando lainstrucción OUTPUT o OUTPUT NOT con la instrucción TIM. Consultar Ejem-plos en 5--15--1 Temporizadores -- TIM.

4-4-5 La instrucción ENDLa última instrucción necesaria para completar un programa es la instrucciónEND. La CPU ejecuta el programa cíclicamente, comienza por la primera ins-trucción y ejecuta secuencialmente las siguientes, hasta encontrar la instruc-ción END, momento en que vuelve a ejecutar la primera instrucción y repite elciclo. Las instrucciones de un programa situadas a continuación de la instruc-ción END no se ejecutan. Para depurar el programa se suelen insertar instruc-ciones END, en diversos lugares del programa, para chequear bloques deaquél, pero una vez depurado se han de borrar para que la CPU ejecute el pro-

Diagramas de relés básicos Sección 4-4

Page 88: C200HALPHA Manual Programacion

82

grama completo. El número que sigue a la instrucción END es su código de fun-ción, que se suele utilizar para escribir la mayoría de las instrucciones en elPLC. Esta instrucción no necesita operando, y no debe haber ninguna condi-ción en su línea de instrucción.

Instrucción00000 00001

END(001) Aquí termina la eje-cución del programa.

Dirección Instrucción Operandos

00500 LD 0000000501 AND NOT 0000100502 Instrucción00503 END(001) ---

El programa no se ejecutará si no existe instrucción END.

4-4-6 Instrucciones de bloque lógicoLas instrucciones de bloque no corresponden a condiciones específicas en eldiagrama de relés; más bien describen la interrelación de bloques lógicos. Lainstrucción AND LOAD realiza la operación lógica AND de las condiciones pro-ducidas por dos bloques lógicos. La OR LOAD ejecuta la operación lógica ORde dos bloques.

El siguiente diagrama de relés, a pesar de su aparente sencillez, necesita deuna instrucción AND LOAD.

Instrucción00002

00003

00000

00001

Dirección Instrucción Operandos

00000 LD 0000000001 OR 0000100002 LD 0000200003 OR NOT 0000300004 AND LD ---

Los dos bloques lógicos son los marcados por las líneas discontínuas. En esteejemplo se producirá una condición de ejecución ON cuando: cualquiera de lascondiciones del bloque de la izquierda sea ON (bit IR 00000 o bit IR 00001 enON) y cuando cualquiera de las condiciones de la derecha sea ON (bit IR 00002en ON o bit IR 00003 en OFF).

El diagrama anterior no se puede convertir a nemónico utilizando sólo instruc-ciones AND y OR. Lo que se necesita es realizar las OR (NOT)s independiente-mente y luego combinar los resultados.

Para hacer esto, se puede utilizar una instrucción LOAD o LOAD NOT en mediode una línea de instrucción. Cuando se ejecuta la instrucción LOAD o LOADNOT, la condición de ejecución presente se salva en buffers especiales comen-zando el proceso lógico. Para combinar los resultados de la condición de ejecu-ción presente, con la de la condición anterior ”no utilizada”, se utiliza una instruc-ción AND LOAD o OR LOAD. Se produce una condición de ejecución no utiliza-da, cuando se usa la instrucción LOAD o LOAD NOT en una línea de instruc-ción, para cualquier condición que no sea la primera.

Analizando el diagrama de relés anterior en función de instrucciones nemóni-cas, la condición para el bit 00000 es una instrucción LOAD y la condición infe-rior es una instrucción OR entre el estado del bit 00000 y el del bit 00001. La

AND LOAD

Diagramas de relés básicos Sección 4-4

Page 89: C200HALPHA Manual Programacion

83

condición en el bit 00002 es otra instrucción LOAD y la condición inferior es unainstrucción OR NOT, es decir una OR entre el estado del bit 00002 y el estadoinverso del bit 00003. Para obtener la condición de ejecución para la instrucciónde la derecha, se ha de ejecutar la AND lógica de los dos bloques anteriores. Lainstrucción AND LOAD hace esto. El código nemónico se muestra en la tablaanterior. La instrucción AND LOAD no necesitaoperandos propios, dado que opera sobre las condiciones previamente obten-idas.

El siguiente diagrama necesita una OR LOAD entre el bloque lógico superior yel inferior. Se producirá una condición de ejecución ON para la instrucción de laderecha, cuando el bit 00000 esté en ON y el bit 00001 en OFF o cuando el bit00002 y el bit 00003 estén en ON. La operativa de la instrucción OR LOAD essimilar a la de la instrucción AND LOAD, excepto que la operación que se ejecu-ta es la OR lógica.

Instrucción00000 00001

00002 00003

Dirección Instrucción Operandos

00000 LD 0000000001 AND NOT 0000100002 LD 0000200003 AND 0000300004 OR LD ---

Naturalmente, algunos diagramas necesitarán ambas instruciones ANDLOAD y OR LOAD.

Para codificar diagramas con instrucciones de bloque lógico en serie, aquéllosse han de dividir en bloques lógicos. Cada bloque se codifica utilizando una ins-trucción LOAD para codificar la primera condición y luego se utilizan AND LOADy OR LOAD para combinar lógicamente los bloques. Primero escribir los dosprimeros bloques lógicos y luego utilizar la instrucción de bloque lógico paracombinar los resultados. Luego escribir el siguiente bloque junto con la instruc-ción de bloque necesaria, para combinarlo con el resultado anterior. A continua-ción presentamos algunos ejemplos.El siguiente diagrama necesita de AND LOAD para convertirlo a código nemóni-co, ya que hay tres bloques paralelos conectados en serie. También se mues-tran dos medios de codificar los programas.

00000 00002 00004

00001 00003 00005

10000

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 OR NOT 0000100002 LD NOT 0000200003 OR 0000300004 AND LD —00005 LD 0000400006 OR 0000500007 AND LD —00008 OUT 10000

00000 LD 0000000001 OR NOT 0000100002 LD NOT 0000200003 OR 0000300004 LD 0000400005 OR 0000500006 AND LD —00007 AND LD —00008 OUT 10000

Con el método de la derecha, se pueden combinar un máximo de ocho bloques.No hay límite en cuanto a número de bloques que se pueden combinar con elmétodo de la izquierda.

OR LOAD

Instrucciones de bloquelógico en serie

Diagramas de relés básicos Sección 4-4

Page 90: C200HALPHA Manual Programacion

84

El siguiente diagrama necesita instrucciones OR LOAD para convertir a códigonemónico, dado que existen tres bloques serie conectados en paralelo.

00000 00001

00002 00003

00040 00005

00501

El primer par de contactos en serie, se convierte a LOAD con el bit operandoasignado y luego se ejecuta la AND con la otra condición. Los dos primeros blo-ques se codifican en primer lugar, seguido por OR LOAD, el último bloque, y otraOR LOAD. Se da la codificación en nemónico por ambos métodos.

00000 LD 0000000001 AND NOT 0000100002 LD NOT 0000200003 AND NOT 0000300004 OR LD —00005 LD 0000400006 AND 0000500007 OR LD —00008 OUT 10001

00000 LD 0000000001 AND NOT 0000100002 LD NOT 0000200003 AND NOT 0000300004 LD 0000400005 AND 0000500006 OR LD —00007 OR LD —00008 OUT 10001

Dirección Instrucción Operandos Dirección Instrucción Operandos

Con el método de la derecha, se pueden combinar un máximo de ocho bloques.No hay límite en cuanto a número de bloques que se pueden combinar con elmétodo de la izquierda.

El siguiente diagrama contiene sólo dos bloques lógicos. No es necesario sepa-rar en más bloques el bloque b, dado que se puede codificar utilizando instruc-ciones AND y OR.

00000 00001 00002 00003

00201

10001

00004

Bloquea

Bloqueb

Dirección Instrucción Operandos

00000 LD 0000000001 AND NOT 0000100002 LD 0000200003 AND 0000300004 OR 0020100005 OR 0000400006 AND LD —00007 OUT 10001

Aunque el siguiente diagrama es muy similar al enterior, el bloque b no se puedecodificar sin separarlo en dos combinados con una OR LOAD. En este ejemplose codifican primero los tres bloques, seguidos por las dos instrucciones de blo-que lógico necesarios para combinarlos. Estas se deben codificar en orden in-verso, es decir, se codifica primero la instrucción para combinar los dos últimosbloques, y este resultado se codifica con el del primer bloque.

Combinación de AND LOADy OR LOAD

Diagramas de relés básicos Sección 4-4

Page 91: C200HALPHA Manual Programacion

85

00000 00001 00002 0000310002

00004 00202

Bloquea

Bloqueb

Bloqueb2

Bloqueb1

Dirección Instrucción Operandos

00000 LD NOT 0000000001 AND 0000100002 LD 0000200003 AND NOT 0000300004 LD NOT 0000400005 AND 0020200006 OR LD —00007 AND LD —00008 OUT 10002

Para programar diagramas complicados, el mejor método pasa por dividir eldiagrama en bloques simples, en los que no sea necesario utilizar instruccionesOR LOAD y AND LOAD, programarlos por separado y luego combinarlos.En el siguiente ejemplo, el diagrama se divide en cuatro bloques, que progra-mamos de arriba abajo y de izquierda a derecha y que luego combinamos.Como se muestra a continuación los bloques a y b necesitan una AND LOAD.Antes de poder utilizar la AND LOAD, se debe utilizar OR LOAD para combinarlos bloques superior e inferior en ambos lados, es decir para combinar a1 y a2;b1 y b2.

00000 00001 00004 0000510003

Bloquea

Bloqueb

00006 00007

Bloqueb2

Bloqueb1

00002 00003

Bloquea2

Bloquea1

Bloques a1 y a2

Bloques b1 y b2

Bloques a y b

Dirección Instrucción Operandos

00000 LD 0000000001 AND NOT 0000100002 LD NOT 0000200003 AND 0000300004 OR LD —00005 LD 0000400006 AND 0000500007 LD 0000600008 AND 0000700009 OR LD —00010 AND LD —00011 OUT 10003

El siguiente diagrama se puede codificar fácilmente siguiendo un orden paracodificar cada bloque: primero de arriba a abajo y luego de izquierda a derecha.Los bloques a y b se combinan utilizando una AND LOAD y luego se codifica elbloque c y se utiliza una segunda AND LOAD para combinarlo con la condiciónde ejecución de la primera AND LOAD. A continuación se codifica el bloque d y

Diagramas complicados

Diagramas de relés básicos Sección 4-4

Page 92: C200HALPHA Manual Programacion

86

se combina con la condición de ejecución de la segunda AND LOAD, con unatercera AND LOAD, y así sucesivamente.

Bloque a Bloque b

10000

Bloque nBloque c

El siguiente diagrama necesita una OR LOAD seguida de una AND LOAD paracodificar el bloque superior de los tres, y luego dos OR LOAD para completar elcódigo nemónico.

00002 00003

LR 000000000 00001

00004 00005

00006 00007

Dirección Instrucción Operandos

00000 LD 0000000001 LD 0000100002 LD 0000200003 AND NOT 0000300004 OR LD --00005 AND LD --00006 LD NOT 0000400007 AND 0000500008 OR LD --00009 LD NOT 0000600010 AND 0000700011 OR LD --00012 OUT LR 0000

Aunque el programa se ejecuta tal y como se escribe, este diagrama se pue-de dibujar como sigue para eliminar la primera OR LOAD y AND LOAD, sim-plificando el programa y ahorrando espacio en memoria.

00002 00003LR 0000

00001

00000

00004 00005

00006 00007

Dirección Instrucción Operandos

00000 LD 0000200001 AND NOT 0000300002 OR 0000100003 AND 0000000004 LD NOT 0000400005 AND 0000500006 OR LD --00007 LD NOT 0000600008 AND 0000700009 OR LD --00010 OUT LR 0000

El siguiente diagrama necesita cinco bloques, programados en orden, antes deutilizar OR LOAD y AND LOAD para combinarlos de atrás adelante. La ORLOAD en la dirección de programa 008 combina los bloques d y e, la siguiente

Diagramas de relés básicos Sección 4-4

Page 93: C200HALPHA Manual Programacion

87

AND LOAD combina la condición de ejecución resultante con la del bloque c,etc.

LR 000000000

00003 00004

00006 00007

00001 00002

00005

Bloque

e

Bloque

d

Bloque

c

Bloque

bBloque a

Dirección Instrucción Operandos

Bloques d y e

Bloque c con resultado anterior

Bloque b con resultado anterior

Bloque a con resultado anterior

00000 LD 0000000001 LD 0000100002 AND 0000200003 LD 0000300004 AND 0000400005 LD 0000500006 LD 0000600007 AND 0000700008 OR LD --00009 AND LD --00010 OR LD --00011 AND LD --00012 OUT LR 0000

El programa anterior se puede simplificar resultando el siguiente:

00006 00007LR 0000

00005

00001 00002

00003 00004 00000

Dirección Instrucción Operandos

00000 LD 0000600001 AND 0000700002 OR 0000500003 AND 0000300004 AND 0000400005 LD 0000100006 AND 0000200007 OR LD --00008 AND 0000000009 OUT LR 0000

El siguiente ejemplo puede parecer un diagrama complicado, pero se puede co-dificar utilizando sólo dos instrucciones de bloque lógico. El diagrama es el si-guiente:

00000 0000110000

00002 00003

01000 01001

00004 00005

10000

00006

Bloque cBloque b

Bloque a

La primera instrucción de bloque combina los bloques a y b y la segunda el blo-que c y la condición de ejecución resultante de la condición normalmente cerra-da asignada al bit 00003. El resto del diagrama se puede codificar con instruc-ciones OR, AND, y AND NOT.

Diagramas de relés básicos Sección 4-4

Page 94: C200HALPHA Manual Programacion

88

00000 00001

10000

00002 00003

01000 01001

00004 0000510000

00006

Bloque c

Bloque bBloque a

OR LD

LD 00000AND 00001

OR 10000

AND 00002AND NOT 00003

LD 01000AND 01001

OR 00006

LD 00004AND 00005

AND LD

Dirección Instrucción Operandos

00000 LD 0000000001 AND 0000100002 LD 0100000003 AND 0100100004 OR LD --00005 OR 1000000006 AND 0000200007 AND NOT 0000300008 LD 0000400009 AND 0000500010 OR 0000600011 AND LD --00012 OUT 10000

4-4-7 Codificación de múltiples instrucciones de salidaSi existe más de una instrucción a la derecha ejecutadas con la misma condi-ción, se codifican consecutivamente a continuación de la condición de la líneade instrucción. En este ejemplo, la última línea de instrucción contiene una con-dición más que corresponde a una AND con el bit 00004.

00000 00003

00001

0000400002

HR 0000

HR 0001

10000

10006

Dirección Instrucción Operandos

00000 LD 0000000001 OR 0000100002 OR 0000200003 OR HR 000000004 AND 0000300005 OUT HR 000100006 OUT 1000000007 AND 0000400008 OUT 10006

4-5 La consola de programaciónEsta y la siguiente sección describen la consola de programación y las opera-ciones necesarias para preparar la escritura del programa. 4-7 Escritura, modi-ficación y chequeo del programa describe procedimientos reales para escribir elprograma en la memoria.

La consola de programación Sección 4-5

Page 95: C200HALPHA Manual Programacion

89

Aunque la consola de programación se puede utilizar para escribir programasde diagramas de relés, principalmente se utiliza como soporte de operacionesde SYSWIN y es muy útil para la edición y mantenimiento a pie de máquina. Acontinuación se listan las principales funciones de la consola de programación.

1, 2, 3... 1. Visualización de mensajes de operación y los resultados de chequeos dediagnóstico.

2. Escribir y leer programas de diagramas de relés, insertar y borrar instruccio-nes, buscar datos o instrucciones y monitorizar estados de bits.

3. Monitorizar estados de E/S, forzar bits a ON/OFF.4. La consola de programación se puede conectar o desconectar del PLC con

éste alimentado.5. La consola de programación se puede utilizar con PLCs de la serie C.6. Soporta modo TERMINAL, que permite visualizar mensajes de 32 carac-

teres, así como operación de la función de mapeado del teclado. Consultar5-26-6 MODO TERMINAL -- TERM(048).

Nota La consola de programación no soporta todas las operaciones del SYSWIN,sólo aquéllas necesarias para edición y mantenimiento a pie de máquina.

4-5-1 El tecladoEl teclado de la consola de programación está funcionalmente dividido por elcolor de las teclas en las cuatro áreas siguientes:

Las diez teclas blancas se utilizan para escribir datos numéricos tales comodirecciones de programa, direcciones de área de datos y valores de operandos.Las teclas numéricas también se utilizan en combinación con las teclas de fun-ción (FUN) para escribir instrucciones con código de función.

La tecla CLR borra el display y cancela las operaciones presentes de la consolade programación. También se utiliza cuando desea escribir la password al iniciode las operaciones de programación. Cualquier operación de la consola de pro-gramación se puede cancelar pulsando la tecla CLR, aunque puede que hayaque pulsarla dos o tres veces para cancelar la operación y borrar el display.

Las teclas amarillas se utilizan para escribir y corregir programas. Más adelanteen esta sección se describen detalladamente sus funciones.

Excepto para la tecla SHIFT en la parte superior derecha, las teclas grises seutilizan para escribir instrucciones y designar prefijos de área de datos cuandose escribe o se cambia un programa. La tecla SHIFT es similar a la de mayúscu-las de una máquina de escribir y se utiliza para cambiar la función de la siguientetecla pulsada. (No es necesario mantener la tecla pulsada; simplemente pul-sarla una vez y luego pulsar la tecla a utilizar con ella).

Blanco: Teclas numéricas

Rojo: Tecla CLR

Amarillo: Teclas deoperación

Gris: Teclas de instruccióny de área de datos

La consola de programación Sección 4-5

Page 96: C200HALPHA Manual Programacion

90

El resto de teclas grises tienen su nombre nemónico de la instrucción o la abre-viatura del área de datos donde escribir. A continuación se describen las fun-ciones de estas teclas.

Se pulsa antes del código de función cuando se escribe unainstrucción vía su código de función.

Se pulsa para escribir SFT (la instrucción de registro de des-plazamiento).

Escribir después de un código de función para designar laforma diferenciada de una instrucción o bien después de unainstrucción de diagrama de relés para designar una condicióninversa.

Pulsar para escribir una instrucción AND o con NOT para unainstrucción AND NOT.

Pulsar para escribir una instrucción OR o con NOT para unainstrucción OR NOT.

Pulsar para escribir una instrucción contador (CNT) o paradesignar un número de TC definido ya como un contador.

Pulsar para escribir una instrucción LD o con NOT para unaLD NOT. También se pulsa para indicar un bit de entrada.

Pulsar para escribir una instrucción OUT o con NOT para unaOUT NOT. También se pulsa para indicar un bit de entrada.

Pulsar para escribir una instrucción temporizador (TIM) o paradesignar un número de TC definido ya como temporizador.

Pulsar antes de designar una dirección en el área TR.

Pulsar antes de designar una dirección en el área LR.

Pulsar antes de designar una dirección en el área HR.

Pulsar antes de designar una dirección en el área AR.

Pulsar antes de designar una dirección en el área DM.

Pulsar antes de designar una dirección indirecta en el áreaDM.

Pulsar antes de designar una dirección de canal.

Pulsar antes de designar un operando como una constante.

Pulsar antes de designar una dirección de bit.

Pulsar antes de códigos de función para instrucciones de pro-gramación de bloque.

4-5-2 Modos del PLCLa consola de programación dispone de un interruptor para controlar el mododel PLC. Para seleccionar uno de los tres modos de operación—RUN, MONI-TOR o PROGRAM—utilizar el interruptor de modo. El modo seleccionadodeterminará el funcionamiento del PLC así como los procedimientos quepodrán ejecutarse desde la consola de prgoramación.El modo RUN es el modo utilizado para la ejecución normal del programa.Cuando el interruptor se pone a RUN y la entrada START de la fuente de alimen-tación de la CPU está en ON, la CPU empezará a ejecutar el programa escrito

La consola de programación Sección 4-5

Page 97: C200HALPHA Manual Programacion

91

en la memoria de programa. Aunque en modo RUN se puede monitorizar laoperación del PLC desde la consola de programación, no se pueden escribir nicambiar datos en las áreas de memoria.El modo MONITOR permite monitorizar visualmente la ejecución del programamientras se controla estados de E/S, se cambian PV (valores presentes) o SV(valores seleccionados), etc. En modo MONITOR, el proceso de E/S se ges-tiona de la misma forma que en modo RUN. El modo MONITOR se utiliza gene-ralmente para realizar la operación de prueba del sistema y los ajustes finalesdel programa.En modo PROGRAM, el PLC no ejecuta el programa. El modo PROGRAM espara crear y cambiar programas, borrar áreas de memoria y registrar y cambiarla tabla de E/S. En modo PROGRAM hay disponible una operación de depura-ción especial que permite chequear un programa para controlar la ejecucióncorrecta antes de la operación de prueba del sistema.

PELIGRO No dejar conectada la consola de programación al PLC mediante un cable alar-gador en modo RUN. El ruido inducido en dicho cable puede pasar al PLC, afec-tando al programa y por lo tanto al sistema controlado.

4-5-3 El interruptor de visualización de mensajesEl pin 3 del interruptor DIP de la CPU determina si los mensajes se visualizaránen Inglés o en Japonés. La selección inicial es a ON (idioma inglés).

4-6 Preparación para la operaciónEsta sección describe los procedimientos necesarios para iniciar la operaciónde la consola de programación. Esto incluye entrada de password, borrado dememoria, borrado de mensaje de error y operaciones de tabla de E/S. Las ope-raciones de tabla de E/S también son necesarias en otras situaciones, como porejemplo cuando se han de efectuar cambios en unidades utilizadas en la confi-guración del PLC.

PELIGRO Confirmar siempre que la consola de programación está en modo PROGRAMcuando se alimenta el PLC con una consola de programación conectada, a noser que se desee otro modo por razones concretas. Si la consola de programa-ción está en modo RUN cuando se alimenta el PLC, se ejecutará el programaalmacenado en la memoria de programa del PLC pudiendo poner en marcha elsistema controlado.

La siguiente secuencia de operaciones se debe realizar antes de la entradainicial del programa.

1, 2, 3... 1. Insertar la llave de modo en la consola de programación.2. Seleccionar la llave de modo a PROGRAM. (La llave de modo no se puede

quitar estando en modo PROGRAM).3. Alimentar el PLC.

Nota Alimentar también las unidades de E/S instaladas. La consola deprogramación no operará si no se alimentan estas unidades.

4. Confirmar que el LED POWER de la CPU está encendido y que aparece elsiguiente display en la consola de programación. (Si el LED ALM/ERR estáencendido o parpadeando o se visualiza un mensaje de error, borrar el errorproducido).

<PROGRAM>PASSWORD!

Escribir la password. Ver 4-6-1 Escribir Password.

Preparación para la operación Sección 4-6

Page 98: C200HALPHA Manual Programacion

92

Borrar la memoria. Ignorar este paso si no es necesario borrar el programa. Vermás detalles en 4-6-3 Borrar memoria.

4-6-1 Escribir la PasswordPara acceder a las funciones de programación del PLC, primero hay que escri-bir la password. Esto es una medida para evitar el acceso al programa a per-sonal no autorizado.El PLC pide la password cuando se alimenta el PLC o si ya lo está, una vezconectada la consola de programación al PLC. Para acceder al sistema,cuando aparezca el mensaje “Password!”, pulsar CLR y luego MONTR. Luegopulsar CLR para borrar la pantalla.Si la consola de programación está conectada al PLC con éste ya alimentado, elprimer display indicará el modo de operación en el que estaba antes de conec-tar la alimentación. Verificar que el PLC está en modo PROGRAM antes deescribir la password. Cuando se escribe la password, el PLC pasará al modoseleccionado mediante el interruptor de la consola. Después de escribir la pass-word, el modo se puede cambiar a RUN o MONITOR mediante el interruptor demodo.

Indica el modo seleccionado por el interruptor de modo.

<PROGRAM>PASSWORD!

<PROGRAM> BZ

4-6-2 BuzzerImmediatamente después de escribir la password, o de cambiar el modo, sepuede activar o desactivar el buzzer que sonará o no al pulsar cualquier tecla dela consola de programación, pulsando SHIFT y luego la tecla 1. Si se visualizaBZ en la esquina superior derecha, el buzzer está activado. Si no se visualiza, elbuzzer está desactivado.El buzzer también sonará si se produce un error durante el funcionamiento delPLC. La selección anterior no afecta al funcionamiento del buzzer ante fallos.

4-6-3 Borrar memoriaUtilizando la operación borrar memoria, se puede borrar todo o parte del áreaUM (RAM o EEPROM) y las áreas IR, HR, AR, DM, EM y TC. A no ser que seespecifique lo contrario, esta operación borrará todos los datos de las áreas dememoria anteriores. El área de UM no se borrará si el interruptor de proteccióncontra escritura (pin 1 del interruptor DIP de la CPU) está en ON.Antes de iniciar la primera programación o cuando se instale un nuevo pro-grama, normalmente deberían borrarse todas las áreas. Antes de borrar lamemoria, comprobar si existe algún programa que sea de utilidad. Si necesita elprograma, borre sólo las áreas de memoria que no necesite y chequee el pro-grama existente con la secuencia de teclas de chequeo antes de utilizarlo. Enesta misma sección se describe la secuencia de chequeo. En la Sección 7 Moni-torización y ejecución de programas se describen más métodos para depurarprogramas. Para borrar todas las áreas de memoria pulsar CLR hasta que sevisualicen todo ceros y luego pulsar las teclas en la línea superior de la siguientesecuencia de teclas. Las líneas de bifurcación mostradas en la secuencia seutilizan sólo cuando se realiza un borrado parcial de memoria, que se describe acontinuación.La memoria sólo se puede borrar en modo PROGRAM. La siguiente tablamuestra las áreas de memoria que se borrarán en las tres operaciones deborrado (borrado total, borrado parcial, borrar memoria).

Preparación para la operación Sección 4-6

Page 99: C200HALPHA Manual Programacion

93

Area de memoria Borrado total Borrado par-cial

Borrar memo-ria

Canales de E/S Borrados Borrados Borrados

Canales de trabajo Borrados --- Borrados

HR, AR, TC, DM, DM fijos Borrados Borrados Borrados

Expansión de DM Borrados --- Borrados

EM Borrados Borrados Borrados

Comentarios de E/S Borrados --- ---

Programa de relés Borrados Borrados Borrados

Información de asignaciónde UM

Borrados --- ---

Nota 1. El área de históricos de error (DM 6000 a DM 6030) no se borrará cuando seborre el área de DM.

2. Cuando se borra el área de configuración del PLC (DM 6600 a DM 6655 enDM fija), las selecciones volverán a las selecciones iniciales cuando sesuministra el equipo.

3. Cuando se ejecuta la operación de borrado total, el área de diagrama derelés se asignará completamente al programa de diagrama de relés. (Lasáreas de expansión de DM y de comentario de E/S se seleccionará a 0 KW.)

La secuencia para borrar todo es la siguiente.

Para borrar completamente la memoria se utiliza el siguiente procedimiento.

Continuar pulsandola tecla CLR una vezpara cada mensajede error hasta que sevisualice “00000”

Borrado total

MEMORY ERR

I/O VER ERR

00000

00000MEMORY CLR?HR CNT DM EM

00000MEM ALLCLR?

00000

00000MEM ALLCLREND

Es posible retener los datos de áreas específicas o parte del programa de dia-grama de relés. Para retener los datos en las áreas HR y AR, TC, DM y/o EM,pulsar la tecla apropiada después de REC/RESET. HR se pulsa para designarambas áreas HR y AR. Es decir si se indica que se debe retener el área HRimplica retener también AR. CNT se utiliza para el área completa de TC. Paraespecificar el área de EM pulsar Shift + DM. El display mostrará las áreas que seborrarán.Se pueden retener algunos bancos EM y borrar otros. Ver la explicación titulada“Borrar bancos de EM seleccionados” en página 94.

Borrado total

Borrado parcial

Preparación para la operación Sección 4-6

Page 100: C200HALPHA Manual Programacion

94

También es posible retener una parte del programa de diagrama de relés desdeel principio hasta una dirección específica. Después de designar las áreas dedatos a retener, especificar la primera dirección del programa a borrar. Porejemplo, para dejar sin tocar las direcciones 00000 a 00122, y borrar las direc-ciones desde 00123 hasta el final de la memoria de programa, escribir 00123.

La secuencia de teclas para un borrado parcial de la memoria es la siguiente:

Areas de AR y HR

Area EM

Area TC

Area DM

Se borra la memoria deprograma desde ladirección indicada.

Pulsar para retener

Secuencia para no borrar el área de TC ni las direcciones de memoria desde00000 hasta 00122:

00000

00000

00000

00000MEMORY CLR?HR CNT DM EM

00000MEMORY CLR?HR DM EM

00123MEMORY CLR?HR DM EM

00000MEMORY CLREND HR DM EM

Borrar bancos de EM seleccionados

Cuando se realiza una operación de borrado parcial de memoria, mejor que se-leccionar el área completa de EM se pueden seleccionar bancos específicos.En el siguiente ejemplo, se seleccionan para borrar los bancos 0 y 2 de EM.

Preparación para la operación Sección 4-6

Page 101: C200HALPHA Manual Programacion

95

La consola de programación visualizará las siguientes pantallas:

00000

00000

00000

00000MEMORY CLR?

HR CNT DM EM

00000 EM CLR ?

012

00000 EM CLR ?

0 2

00000 EM CLR END

0 2

Esta operación borra todas las áreas de memoria excepto comentarios de E/S einformación de asignación de UM.La secuencia de teclas para un borrado parcial es la siguiente.

La consola de programación mostrará las siguientes pantallas:

00000

00000

00000

00000MEMORY CLR?HR CNT DM EM

00000MEMORY CLREND HR CNT DM

Nota Cuando el interruptor de protección de teclado (pin 1 del interruptor DIP de laCPU) está en ON, no se borrará el área de DM (desde DM 6144 hasta el pro-grama de diagrama de relés). Otras áreas de datos, tales como HR, AR, CNT yDM desde DM 0000 a DM 6143 sí se borrarán.

4-6-4 Registrar la tabla de E/SLa operación registrar tabla de E/S graba los tipos de unidades de E/S controla-dos por el PLC y las ubicaciones en el bastidor. Borra también todos los bits deE/S.No es absolutamente necesario registrar la tabla de E/S con el C200HX/HG/HE.Cuando la tabla de E/S no se ha registrado, el PLC funcionará de acuerdo conlas unidades de E/S montadas cuando se aplica la alimentación. No se produ-cirá error de verificación/selección de E/S.

Borrar memoria

Preparación para la operación Sección 4-6

Page 102: C200HALPHA Manual Programacion

96

Si se cambian unidades de E/S, es necesario registrar la tabla de E/S, pues encaso contrario al iniciar las operaciones de programación aparecerá un men-saje de error de verificación de E/S, “I/O VER ERR” o “I/O SET ERROR”.El registro de la tabla de E/S sólo se puede hacer en modo PROGRAM con elinterruptor de protección contra escritura (pin 1 del interruptor DIP de la CPU)puesto a OFF (OFF=“WRITE”).Las unidades de E/S multipunto grupo 2 no se visualizarán en la tabla de E/Sutilizando un ordenador. En su lugar aparecerán cuatro asteriscos (!!!!), queindican que no hay unidad.

Secuencia de teclas

Registro de tabla de E/S inicial

Registro de tabla de E/S

00000

00000FUN (??)

00000IOTBL ??-?U=

00000IOTBL WRIT????

00000IOTBL WRIT9713

00000IOTBL WRITOK

4-6-5 Borrar mensajes de errorDespués de registrar la tabla de E/S, se han de borrar todos los mensajes deerror grabados en memoria. Se supone que se han eliminado las causas queprovocaron tales mensajes de error. Si al intentar borrar un mensaje de errorsuena el zumbador, eliminar la causa del error y luego borrar el mensaje (con-sultar Sección 9 Detección y corrección de errores).Para visualizar mensajes de error grabados, pulsar CLR, FUN y luego MONTR.Aparecerá el primer mensaje. Pulsando MONTR de nuevo borrará el mensajeactual y visualizará el siguiente mensaje de error. Seguir pulsando MONTRhasta borrar todos los mensajes.Los mensajes de error sólo se pueden borrar en modo PROGRAM.

Secuencia de teclas

4-6-6 Verificar tabla de E/SLa operación de verificar tabla de E/S se utiliza para comprobar si la tabla de E/Sregistrada en memoria coincide con la secuencia de unidades de E/S monta-das. Como se muestra a continuación se visualizará la primera discordanciadescubierta.

Nota Esta operación sólo se puede ejecutar una vez registrada la tabla de E/S.

Secuencia de teclas

Preparación para la operación Sección 4-6

Page 103: C200HALPHA Manual Programacion

97

Ejemplo

(No hay errores)

(Se ha producido un error)

Canales de E/S reales

Canales tabla E/S registrada

Número de hueco de E/S

Número de bastidor

00000

00000FUN (??)

00000IOTBL ??-?U=

00000IOTBL CHKOK

00000IOTBL CHK0 - 1U = O*** I***

Significado del display El siguiente display indica que un C500, C1000H, o C2000H y C200H, C200HSo C200HX/HG/HE tiene el mismo número de unidad en un bastidor esclavo deE/S remotas.

00000I/OTBL CHK*-*U=----

El siguiente display indica que hay números duplicados de unidad de E/S óptica.

Indica duplicado

00000I/OTBL CHK2 * * H U = R * -- I R * - W

4-6-7 Lectura de tabla de E/SLa operación de lectura de tabla de E/S se utiliza para acceder a la tabla de E/Sque está actualmente registrada en la memoria de CPU. Esta operación sepuede realizar en cualquier modo del PLC.

Preparación para la operación Sección 4-6

Page 104: C200HALPHA Manual Programacion

98

Secuencia de teclas

[0 a 2] [0 a 9]

Númerodebastidor

Númerodeunidad

Pulsar la tecla EXT para seleccionarbastidores esclavos de E/S remotaso unidades de E/S ópticas.

00000

00000FUN (??)

00000IOTBL ??-?U=

(Unidad de PLC)

00000IOTBL ?0-?U=

00000IOTBL ?0-5U=

00000IOTBL READ0-5U=i*** 005

00000IOTBL READ0-4U=o*** 004

00000IOTBL READ0-5U=i*** 005

00000IOTBL ?R??-?U=

00000IOTBL ?2??LU=

(Unidades de bastidor esclavo)

(Unidad de E/S óptica)

00000IOTBL ??-?U=

(Unidad de PLC)

Ejemplo

Preparación para la operación Sección 4-6

Page 105: C200HALPHA Manual Programacion

99

Significados de los displaysDesignaciones de unidad de E/S para displays(ver Unidades de E/S montadas en bastidores esclavos remotos)

No. de puntos

16

32

64

Unidad de entrada Unidad de salida

Unidades de E/S C500, 1000H/C2000H

No. de puntos

8

16

Unidad de entrada Unidad de salida

0 0 0 0

0 0 * *

0 * * *I * * *I I * *

I I I I

i(*)* *i i * * o o * *

o * * *

Unidades de E/S de C200H

Nota: (!) es i para errores no fatales o F_

Número de canal de E/S

Tipo E/S: i: (entrada), o: (salida)

Número de unidad (0 a 9)

Número de bastidor (0 a 2)

00000IOTBL READ* - * U = **** ***

00000IOTBL READ* - * U = ****

INT0: Montada en bastidor de CPU.IN**: Montada en expansor de E/S.(Tratada como una unidad de entradade 8 puntos.)

Número de unidad (0 a 9)

Indica unidad de E/S especial

00000IOTBL READ*-*U = $ * * *

Nada: Unidad 1 exclusivamenteW: Unidad 2 exclusivamente

Tipo unidadE/S especial:

C: Cont. alta veloc.N: Unidad Host LinkA: Otra

No. de maestra deE/S remota.(0 ó 1)

00000IOTBL READ* - * U = RMT*

Unidades de E/S

Unidades de entrada deinterrupción

Unidades de E/S especiales

Unidades maestras de E/Sremotas

Preparación para la operación Sección 4-6

Page 106: C200HALPHA Manual Programacion

100

Número de canal de E/S

Tipo de E/S: E, Si, o (ver tablas anteriores)

Número de unidad (0 a 9)

No. de unidad esclava E/S remotas (0 a 4)

No. unidad maestra E/S remotas (0 ó 1)

Indica un bastidor de E/S remotas

00000IOTBL READR * * - * U = **** ***

Número de unidad (0 a 9)

Indica unidad de E/S de alta densidad grupo 2

00000IOTBL READ* - * U = # * * *

2: 2 canales (32 pts)4: 4 canales (64 pts)

I: Unidad de entradaO: Unidad de salida

Nota Las unidades de E/S de alta densidad grupo 2 no se visualizarán en la tabla deE/S utilizando el SYSWIN (ordenador). Se visualizarán en su lugar cuatro aste-riscos (!!!!), indicando que no hay unidad.

Número de canal de E/S (200 a 231)

Tipo de E/S: I (entrada), O (salida), oW (entrada/salida)

Número de unidad maestra de E/S remotas (0 a 1)

Canal (H: 8 bits de la izquierda; L: 8 bits de la derecha)

00000IOTBL READ2 * * HU = R * - *

4-6-8 Borrar la tabla de E/S

Con esta operación se borran los contenidos de la tabla de E/S registrada en lamemoria de la CPU. Cuando se ejecuta esta operación el PLC funcionará deacuerdo con las unidades de E/S montadas.

La operación borrar tabla de E/S reseteará todas las unidades de E/S espe-ciales y las unidades de enlace montadas en ese momento. No efectuar estaoperación cuando está en funcionamiento una unidad PC o Host link, maestrade E/S remotas, contador de alta velocidad, control de posición u otra unidad deE/S especial.

Nota Esta operación se puede efectuar sólo en modo PROGRAM con el interruptorde protección contra escritura (pin 1 del interruptor DIP de la CPU) seleccionadoa OFF (OFF=“WRITE”).

Bastidores esclavos de E/Sremotas

Unidades de E/S de altadensidad grupo 2

Unidades de E/S ópticas yterminales remotas

Preparación para la operación Sección 4-6

Page 107: C200HALPHA Manual Programacion

101

Secuencia de teclas

00000

00000FUN (??)

00000IOTBL?-?U=

00000IOTBL CANC????

00000IOTBL CANC9713

00000IOTBL CANCOK

00000IOTBL WRIT????

4-6-9 Transferir tabla SYSMAC NET Link (Todas las CPU’s exceptoC200HE--CPU11E)

La operación transferir tabla SYSMAC NET Link transfiere una copia de la tablaData link de SYSMAC NET a la memoria de programa RAM o EEPROM. Estoposibilita grabar juntos en EPROM el programa de usuario y la tabla SYSMACNET Link. Esta operación es aplicable a todas las CPU’s excepto C200HE--CPU11E.

Nota Cuando se conecta la alimentación al PLC que tiene una copia de una tablaSYSMAC NET Link almacenada en su memoria de programa, la tabla SYSMACNET Link de la CPU se sobreescribirá. Los cambios hechos en la tabla SYS-MAC NET Link no afectan a la copia en la memoria de programa. Transferirtabla SYSMAC NET Link se debe repetir para cambiar la copia en memoria deprograma.

La operación transferir tabla SYSMAC NET Link no funcionará si:

" La unidad de memoria no es RAM o EEPROM, o el interruptor de proteccióncontra escritura no está seleccionado a escribir.

" No hay una instrucción END(001).

" Los contenidos de memoria de programa no dejan el espacio de memoria sufi-ciente para almacenar la tabla SYSMAC NET (aprox. 0,5K palabras). (Paraobtener el tamaño de los contenidos de la memoria de programa, ejecutar unainstrucción búsqueda de END(001)).

Transferir tabla SYSMAC NET Link sólo se puede efectuar en modo PRO-GRAM.

Ejemplo

Preparación para la operación Sección 4-6

Page 108: C200HALPHA Manual Programacion

102

Secuencia de teclas

00000LINK TBL~UM(SYSMAC-NET)????

00000LINK TBL~UMOK

00000LINK TBL~UM(SYSMAC-NET)9713

00000LINK TBL~UMDISABLED

Lo siguiente indica que la tablade E/S no se puede transferir.

00000

00000FUN(??)

Ejemplo

Preparación para la operación Sección 4-6

Page 109: C200HALPHA Manual Programacion

103

4-7 Escritura, Modificación y chequeo del programaUna vez escrito el programa en código nemónico, se puede introducir directa-mente en el PLC a través de la consola de programación. El chequeo del pro-grama implica un chequeo de sintaxis para ver si el programa está escrito con-forme a las reglas sintácticas. Una vez corregidos los errores de sintaxis sepuede efectuar una ejecución de prueba y finalmente se puede corregir en con-diciones de operación reales.Las operaciones necesarias para escribir un programa se explican a continua-ción. En esta sección también se describen las operaciones para modificar pro-gramas que ya existen en memoria, así como el procedimiento para obtener eltiempo de ciclo actual.Antes de empezar a escribir un programa, chequear si ya hay un programa car-gado. Si hay un programa que no necesita, borrarlo utilizando la secuencia deteclas para borrar memoria, y luego escribir el nuevo. Si necesita el programaprevio, chequearlo y corregirlo. Se describen más métodos de depuración deprogramas en Sección 7 Monitorización y Ejecución de Programas.

4-7-1 Selección y lectura de direcciones de memoria de programaCuando se escribe un programa por primera vez, generalmente se empieza aescribir desde la dirección 00000. Esta dirección no es necesario especificarladado que aparece cuando se borra el display.Cuando se escribe un programa empezando por una dirección distinta a la00000 o para leer o modificar un programa que ya existe en memoria, se debedesignar la dirección deseada. Para ello, pulsar CLR y luego escribir la direc-ción deseada. Los ceros de la izquierda no es necesario escribirlos, es decir,para especificar la dirección 00053 sólo necesita escribir 53. Los contenidos dela dirección especificada no se visualizarán hasta que se pulse la tecla de flechaabajo.A continuación se pueden utilizar las teclas de dirección arriba y abajo pararecorrer la memoria de programa (cada vez que se pulsa una de estas teclas sevisualiza la palabra de memoria anterior o posterior).También se visualizará el estado ON/OFF si se lee la memoria de programa enmodo RUN o MONITOR.

Secuencia de teclas

[Dirección]

Escritura, Modificación y chequeo del programa Sección 4-7

Page 110: C200HALPHA Manual Programacion

104

Si se ha escrito en la memoria de programa el siguiente código nemónico, alpulsar las teclas de la izquierda aparecen los displays mostrados.

00000

00200

00200READ OFFLD 00000

00201READ ONAND 00001

00202READ OFFTIM 000

00202TIM #0123

00203READ ONLD 00100

Dirección Instrucción Operandos

00200 LD 0000000201 AND 0000100202 TIM 000

# 012300203 LD 00100

4-7-2 Escritura y edición de programasLos programas sólo se pueden escribir y editar en modo PROGRAM con elinterruptor de protección de teclado (pin 1 del interruptor DIP de la CPU) en OFF(OFF=“WRITE”).El mismo procedimiento se utiliza para escribir por primera vez un programacomo para editar un programa que ya existe. En ambos casos se escribe sobrelos contenidos actuales de la memoria de programa, es decir, si no hay pro-grama anterior, se escribirá encima de la instrucción NOP(000), escrita en todaslas direcciones.Para introducir un programa, escribir el código nemónico producido a partir deldiagrama de relés verificando las direcciones correctas antes de empezar. Unavez visualizada la dirección correcta, escribir la primera palabra de instrucción ypulsar WRITE. A continuación escribir los operandos necesarios, pulsandoWRITE después de cada uno de ellos, es decir se pulsa WRITE al final de cadalínea del código nemónico. Cuando se pulsa WRITE, se graba la instrucción uoperando designado y aparece el siguiente display. Si la instrucción necesitados o más palabras, el siguiente display indicará el siguiente operando necesa-rio y proporcionará un valor por defecto para él. Si la instrucción necesita sólouna palabra, se visualizará la siguiente dirección. Escribir las siguientes líneasde código nemónico hasta el final del programa.En los valores numéricos para operandos no es necesario escribir los ceros dela izquierda. Estos ceros sólo son necesarios cuando se escriben códigos defunción. Para designar operandos, verificar que se indica el área de datos,excepto IR y SR, pulsando la correspondiente tecla de área de datos e indicarcada constante pulsando CONT/#. Para SVs de temporizadores o contadoresno es necesario CONT/#. El área de AR se designa pulsando SHIFT y luego HR.Los números de TC como operandos de bit (es decir, indicadores de finaliza-ción) se designan pulsando TIM o CNT delante de la dirección, dependiendo siel número de TC se ha utilizado para definir un temporizador o un contador. Paradesignar una dirección indirecta de DM, pulsar CH/! antes de la dirección.

El SV (valor seleccionado o valor consigna) para un temporizador o contador seescribe generalmente como una constante, aunque también se puede indicarun canal que contiene el SV. Cuando se escribe un SV como una constante, noes necesario CONT/#; simplemente escribir el valor numérico y pulsar WRITE.Para designar un canal, pulsar CLR y luego la dirección de canal como se des-cribió anteriormente.

Ejemplo

Escritura de SV paratemporizadores ycontadores

Escritura, Modificación y chequeo del programa Sección 4-7

Page 111: C200HALPHA Manual Programacion

105

Las instrucciones más básicas se escriben utilizando las correspondientesteclas de la consola de programación. El resto de instrucciones se escriben utili-zando códigos de función. Estos códigos de función se dan a continuación delnemónico de la instrucción. Si no se da código de función, debe existir para ellosuna tecla en la consola de programación.Para designar la forma diferenciada de una instrucción, pulsar NOT despuésdel código de función.Para escribir una instrucción mediante su código de función, seleccionar ladirección, pulsar FUN, escribir el código de función incluyendo ceros de laizquierda, pulsar NOT si se desea la forma diferenciada de la instrucción, escri-bir los operandos o definidores necesarios y pulsar WRITE.

AtenciónEscribir con cuidado los códigos de función y verificar que se pulsa la teclaSHIFT cuando sea necesario.

Secuencia de teclas

[Dirección visualizada] [Canal instrucción] [Operando]

Designación deinstrucciones

Escritura, Modificación y chequeo del programa Sección 4-7

Page 112: C200HALPHA Manual Programacion

106

El siguiente programa se puede escribir utilizando las teclas mostradas a conti-nuación. Aparecerán los displays que se indican.

00000

00200

00200LD 00002

00201READNOP (000)

00201TIM 000

00201 TIM DATA#0000

00201 TIM#0123

00202READNOP (00)

00202FUN (??)

00202TIMH (15) 001

00202 TIMH DATA#0000

00202 TIMH#0500

00203READNOP (00)

Dirección Instrucción Operandos

00200 LD 0000200201 TIM 000

# 012300202 TIMH(015) 001

# 0500

Cuando se escribe un programa pueden aparecer los siguientes mensajes deerror. Corregirlos como se indica a continuación. Los asteriscos en los displaysdeberán ser sustituidos con datos numéricos, normalmente direcciones, en eldisplay real.

Mensaje Causa y corrección

****REPL ROM Intento de escribir en RAM o EEPROM protegida. Verificar que el interruptor deprotección contra escritura está en OFF.

****PROG OVER La instrucción de la última dirección de memoria no es NOP(000). Borrar todas lasinstrucciones innecesarias en el final del programa.

****ADDR OVER Se ha seleccionado una dirección superior a la dirección más alta de memoria en elárea UM. Escribir una dirección más baja.

****SETDATA ERR Datos expresados en formato erróneo o fuera de los límites definidos. Escribir denuevo los datos. Este error generará un error FALS 00.

****I/O NO. ERR Se ha designado una dirección de área de datos que excede el límite del área dedatos. Confirmar los requerimientos para la instrucción y volver a escribir la dirección.

Ejemplo

Mensajes de error

Escritura, Modificación y chequeo del programa Sección 4-7

Page 113: C200HALPHA Manual Programacion

107

4-7-3 Chequeo del programaUna vez escrito el programa, se debe chequear el programa para verificar quese han respetado las reglas de sintaxis. Este chequeo se debe realizar si el pro-grama se cambia de alguna forma que pueda crear algún error de sintaxis.Para chequear el programa, escribir la secuencia de teclas descrita a continua-ción. Los números indican el nivel de chequeo necesario. Una vez definido elnivel, empezará el chequeo de programa. Si se descubre un error, el chequeose detendrá y aparacerá un display indicándolo. Pulsar SRCH para continuar elchequeo. Si no se encuentra ningún error, el programa se chequeará hasta laprimera END(001), con un display que indica cuándo se han chequeado 64instrucciones (display #1 del ejemplo después de la siguiente tabla).CLR se puede pulsar para cancelar el chequeo después de haberlo iniciado, yaparecerá un display similar al #2, en el ejemplo. Una vez alcanzada la primeraEND, aparecerá un display similar al #3.El chequeo de sintaxis sólo se puede efectuar en modo PROGRAM.

Secuencia de teclas

Para chequearhastaEND(001)

Para abortar

(Niveles de chequeo 0, 1, 2)

Hay tres niveles de chequeo. Se debe definir el nivel deseado para indicar lostipos de errores que se han de detectar. La siguiente tabla lista los tipos deerrores, displays y explicaciones de todos los errores de sintaxis. El nivel 0 che-quea los errores tipo A, B y C; en nivel 1, tipos A y B y el nivel 2, errores tipo A.También se visualiza la dirección donde se generó el error.

Niveles de chequeo ymensajes de error

Escritura, Modificación y chequeo del programa Sección 4-7

Page 114: C200HALPHA Manual Programacion

108

Muchos de los siguientes errores son de instrucciones todavía no descritas.Consultar 4-8 Control de estado de bit o Sección 5 Juego de instrucciones paramás información.

Tipo Mensaje Significado y respuesta adecuada

Tipo A ????? Se ha perdido el programa. Escribir de nuevo el programa.

NO END INSTR No hay END(001) en el programa. Escribir END(001) en la última dirección delprograma.

CIRCUIT ERR El número de bloques lógicos y las instrucciones de bloque lógico no concuerdan,es decir, se ha utilizado LD o LD NOT para iniciar un bloque lógico cuya condiciónde ejecución no ha sido utilizada por otra instrucción, o se ha utilizado unainstrucción de bloque lógico que no tiene el número necesario de bloques lógicos.Chequear el programa.

LOCN ERR Una instrucción está en un lugar erróneo en el programa. Chequear lasnecesidades de la instrucción y corregir el programa.

DUPL Se ha utilizado dos veces el mismo número de salto o de subrutina. Corregir elprograma de tal forma que el mismo número sólo se utilice una vez. (El númerode salto 00 se puede utilizar tantas veces como sea necesario).

SBN UNDEFD SBS(091) se ha programado para un número de subrutina que no existe. Corregirel número de subrutina o programar la subrutina deseada.

JME UNDEFD Falta una JME(004) para una JMP(005). Corregir el número de salto o insertar laJME(004) adecuada.

OPERAND ERR Se ha escrito una constante fuera de los valores definidos. Cambiar la constantede tal forma que esté dentro del rango.

STEP ERR Se han utilizado incorrectamente STEP(008) con un número de sección ySTEP(008) sin un número de sección. Comprobar las especificaciones deprogramación de STEP(008) y corregir el programa.

Tipo B IL--ILC ERR IL(002) e ILC(003) no se utilizan por pares. Corregir el programa para que cadaIL(002) tenga una única ILC(003). Aunque este mensaje de error aparecerá si seutiliza más de una IL(002) con la misma ILC(003), el programa se ejecutará tal ycomo se escribió.

JMP--JME ERR JMP(004) 00 y JME(005) 00 no se utilizan por pares. Aunque este mensaje deerror aparecerá si se utiliza más de una JMP(004) 00 con la misma JME(005) 00,el programa se ejecutará tal y como se escribió.

SBN--RET ERR Si la dirección visualizada es la de SBN(092), se han definido dos subrutinasdiferentes con el mismo número de subrutina. Cambiar o borrar una de ellas. Sila dirección visualizada es la de RET(093), RET(093) no se ha utilizadocorrectamente. Comprobar los requerimientos de RET(093) y corregir elprograma.

Tipo C JMP UNDEFD JME(005) se ha utilizado sin JMP(004) con el mismo número de salto. Añadir unaJMP(004) con el mismo número o borrar la JME(005) que no se está utilizando.

SBS UNDEFD Hay una subrutina que no es llamada por SBS(091). Programar una llamada asubrutina en el lugar adecuado, o borrar la subrutina si no es necesaria.

COIL DUPL El mismo bit está siendo controlado (estado ON/OFF) por más de una instrucción(por ejemplo, OUT, OUT NOT, DIFU(013), DIFD(014), KEEP(011), SFT(010)).Aunque para ciertas instrucciones es correcto, chequear las necesidades de lainstrucción para confirmar que el programa es correcto o escribir de nuevo elprograma de tal forma que sólo sea controlado por una instrucción.

Escritura, Modificación y chequeo del programa Sección 4-7

Page 115: C200HALPHA Manual Programacion

109

El siguiente ejemplo muestra algunas de las pantallas que pueden aparecercomo resultado de un chequeo de programa.

Display #2

Display #3

Para chequeo de programa

Continúa el chequeo hasta END(001)

Cuando se encuentran errores

Display #1

00699CHK ABORTD

02000PROG CHKEND (001)(02.7KW)

00178CIRCUIT ERROUT 00200

00200IL-ILC ERRILC (003)

02000NO END INSTEND

00000

00000PROG CHKCHKLVL (0-2)?

00064PROG CHK

4-7-4 Visualización del tiempo de cicloUna vez corregidos los errores de sintaxis del programa, se debe comprobar eltiempo de ciclo. Esto sólo se puede efectuar en modo RUN o MONITOR mien-tras se está ejecutando el programa. Ver Sección 6 Temporización de ejecucióndel programa para más información sobre el tiempo de ciclo.Para visualizar el tiempo de ciclo medio, pulsar CLR y luego MONTR. El tiempovisualizado por esta operación es el tiempo de ciclo típico. Las diferencias en losvalores visualizados depende de las condiciones de ejecución que existancuando se pulse MONTR.

Ejemplo

00000

00000SCAN TIME054.1MS

00000SCAN TIME053.9MS

4-7-5 BúsquedaEn el programa se pueden buscar ocurrencias de cualquier instrucción o direc-ción de área de datos utilizada en una instrucción. La búsqueda se puede efec-tuar desde la dirección visualizada o desde cualquier otra.Para designar un bit, pulsar SHIFT, CONT/#, luego escribir la dirección,incluyendo cualquier designación de área de datos necesaria y pulsar SRCH.

Ejemplo

Escritura, Modificación y chequeo del programa Sección 4-7

Page 116: C200HALPHA Manual Programacion

110

Para designar una instrucción, escribirla igual que cuando se escribe el pro-grama y pulsar SRCH. Una vez encontrada una ocurrencia de una instrucción ode una dirección de bit, cualquier otra ocurrencia se puede buscar pulsando denuevo la tecla SRCH. Mientras se está efectuando una búsqueda, se visualizaSRCH’G.

Cuando se visualiza el primer canal de una instrucción multicanal para unaoperación de búsqueda, el resto de canales de la instrucción se pueden visuali-zar pulsando la tecla de dirección abajo antes de efectuar otra búsqueda.

Si la memoria de programa se lee en modo RUN o MONITOR, también se visua-lizará el estado ON/OFF del bit.

Secuencia de teclas

[Instrucción]

[Dirección]

00000

00000LD 00000

00200SRCHLD 00000

00202LD 00000

02000SRCHEND (001)(02.7KW)

00000

00100

00100TIM 001

00203SRCHTIM 001

00203 TIM DATA#0123

Ejemplo:Buscar instrucción

Escritura, Modificación y chequeo del programa Sección 4-7

Page 117: C200HALPHA Manual Programacion

111

00000

00000CONT SRCHCONT 00005

00200CONT SRCHLD 00005

00203CONT SRCHAND 00005

02000END (001)(02.7K)

4-7-6 Insertar y borrar instruccionesEn modo PROGRAM, se puede borrar cualquier instrucción que se esté visuali-zando o cualquier otra se puede insertar delante de ella. Estas operaciones sóloson posibles en modo PROGRAM con el interruptor de protección contra escri-tura (pin 1 del interruptor DIP de la CPU) seleccionado a OFF (OFF=“WRITE”).Para insertar una instrucción, visualizar aquélla delante de la cual desea inser-tarla, escribirla de la misma forma que cuando se introduce un programa y pul-sar la tecla INS y la tecla de flecha abajo. Si se necesitan otros canales para lainstrucción, escribirlos de la misma forma que cuando se escribe inicialmente elprograma.Para borrar una instrucción, visualizar el canal de la instrucción a borrar y pulsarDEL y la tecla de flecha arriba. Se borrarán todos los canales para la instruccióndesignada.

AtenciónRealizar esta operación con cuidado para no borrar instrucciones indebidas; lasinstrucciones borradas no se pueden recuperar sin escribirlas totalmente denuevo.

Secuencias de teclas

Situarse en laposición delprograma yluego escribir

[Instrucción]

Instrucciónvisualizada

Cuando se inserta o se borra una instrucción, se ajustan automáticamentetodas las direcciones siguientes en la memoria de programa de tal forma que noquedan direcciones en blanco o instrucciones no direccionadas.

Ejemplo:Buscar bit

Escritura, Modificación y chequeo del programa Sección 4-7

Page 118: C200HALPHA Manual Programacion

112

El siguiente código nemónico muestra los cambios obtenidos en un programamediante las secuencias de teclas y pantallas siguientes.

Programa original

Dirección Instrucción Operandos

00000 LD 0010000001 AND 0010100002 LD 0020100003 AND NOT 0010200004 OR LD ----00005 AND 0010300006 AND NOT 0010400007 OUT 0020100008 END(001) ----

0010500100 00103 0010400101

00201

END(001)

00102

00201

Borrar

0010400100 00103

00105

00101

00201

END(001)

00102

00201

Antes de insertar: Después de insertar:

Ejemplo

Escritura, Modificación y chequeo del programa Sección 4-7

Page 119: C200HALPHA Manual Programacion

113

Las siguientes secuencias de teclas y pantallas muestran el procedimiento paraobtener los cambios anteriores en el programa.

Encontrar la direc-ción antes delpunto de inserción

Insertar lainstrucción

Programa después de inserción

Insertar una instrucción

00000

00000OUT 00000

00000OUT 00201

00207SRCHOUT 00201

00206READAND NOT 00104

00206AND 00000

00206AND 00105

00206INSERT?AND 00105

00207INSERT ENDAND NOT 00104

00206READAND 00105

Dirección Instrucción Operandos

00000 LD 0010000001 AND 0010100002 LD 0020100003 AND NOT 0010200004 OR LD ----00005 AND 0010300006 AND 0010500007 AND NOT 0010400008 OUT 0020100009 END(001) ----

Encontrar la instrucciónque se quiere borrar.

Confirmar que ésta es lainstrucción que se deseaborrar.

Programa después de borrar

Borrar una instrucción

00000

00000OUT 00000

00000OUT 00201

00208SRCHOUT 00201

00207READAND NOT 00104

00207 DELETE?AND NOT 00104

00207DELETE ENDOUT 00201

00206READAND 00105

Dirección Instrucción Operandos

00000 LD 0010000001 AND NOT 0010100002 LD 0020100003 AND NOT 0010200004 OR LD ----00005 AND 0010300006 AND 0010500007 AND NOT 0010400008 OUT 00201

4-7-7 Bifurcaciones de líneas de instrucciónCuando una línea de instrucción se divide en dos o más líneas, en ciertas oca-siones será necesario utilizar enclavamientos o bits TR para retener la condi-

Escritura, Modificación y chequeo del programa Sección 4-7

Page 120: C200HALPHA Manual Programacion

114

ción de ejecución existente en el punto de bifurcación. Los siguientes diagra-mas ilustran este concepto. En ambos diagramas, la instrucción 1 se ejecutaantes de volver al punto de bifurcación y seguir por la otra rama.

Instrucción 1

00002

00000

Instrucción 2

Punto debifurcación

Instrucción 1

00002

00000

Instrucción 2

Diagrama B: Operación Incorrecta

Diagrama A: Operación correcta

00001

Dirección Instrucción Operandos

00000 LD 0000000001 Instrucción 100002 AND 0000200003 Instrucción 2

Dirección Instrucción Operandos

00000 LD 0000000001 AND 0000100002 Instrucción 100003 AND 0000200004 Instrucción 2

Punto debifurcación

Si, como se muestra en el diagrama A, la condición de ejecución en el punto debifurcación no puede cambiar antes de volver a la rama inferior (las instruccio-nes de la derecha no cambian la condición de ejecución), entonces la rama infe-rior se ejecutará correctamente y no son necesarias medidas de programaciónespeciales.

Si, como sucede en el diagrama B, hay una condición entre el punto de bifurca-ción y la última instrucción en la línea superior, la condición de ejecución en di-cho punto puede ser diferente cuando se complete la línea superior, siendo im-posible asegurar la ejecución correcta de la rama inferior.

Hay dos formas de programar bifurcaciones para preservar la condición de eje-cución. Una es utilizar bits TR y la otra utilizar enclavamientos (IL(002)/IL(03)).

El área de TR dispone de ocho bits, de TR 0 a TR 7 que se pueden utilizar parapreservar temporalmente las condiciones de ejecución. Si se coloca un bit TRen un punto de ramificación, la condición de ejecución actual se almacenará endicho bit. Cuando se vuelve al punto de ramificación, el bit TR restaura el estadode ejecución.

Para garantizar la ejecución correcta del diagrama B, éste se puede escribircomo se indica a continuación. En código nemónico, la condición de ejecuciónse almacena en el punto de bifurcación utilizando el bit TR como operando de lainstrucción OUT. Esta condición de ejecución se restaura, después de ejecutarla instrucción de la derecha, utilizando el mismo bit TR como operando de unainstrucción LOAD.

Instrucción 1

00002

00000

Instrucción 2

Diagrama B: Corregido utilizando un bit TR

00001TR 0 Dirección Instrucción Operandos

00000 LD 0000000001 OUT TR 000002 AND 0000100003 Instrucción 100004 LD TR 000005 AND 0000200006 Instrucción 2

En términos de instrucciones reales el diagrama anterior sería como sigue: secarga el estado de IR 00000 (una instrucción LOAD) para establecer la condi-ción inicial de ejecución. Esta condición de ejecución se envía mediante unainstrucción OUTPUT a TR 0 donde se almacena en el punto de bifurcación. Sehace luego una operación AND de la condición de ejecución y el estado de IR00001 y a continuación se ejecuta la instrucción 1. La condición de ejecuciónque estaba almacenada en el punto de bifurcación se vuelve a cargar de nuevo(una instrucción LOAD con TR 0 como operando), se hace la operación ANDcon el estado de IR 00002 y se ejecuta la instrucción 2.

Bits TR

Escritura, Modificación y chequeo del programa Sección 4-7

Page 121: C200HALPHA Manual Programacion

115

El siguiente ejemplo muestra una aplicación utilizando dos bits TR.

Dirección Instrucción Operandos

00000 LD 0000000001 OUT TR 000002 AND 0000100003 OUT TR 100004 AND 0000200005 Instrucción 100006 LD TR 100007 AND 0000300008 Instrucción 200009 LD TR 000010 AND 0000400011 Instrucción 300012 LD TR 000013 AND NOT 0000500014 Instrucción 4

Instrucción1

00003

00000 00002TR 1

00005

TR 000001

00004

Instrucción 2

Instrucción 3

Instrucción 4

En este ejemplo se utilizan TR 0 y TR 1 para almacenar las condiciones de eje-cución en los puntos de bifurcación.

Nota Aunque siempre se debe procurar simplificar los programas, algunas veces esimportante el orden de ejecución de las instrucciones. Por ejemplo, puede sernecesaria una instrucción MOVE antes de la ejecución de una instrucciónBINARY MOVE para colocar los datos adecuados en el canal de operandorequerido. Verificar el orden de ejecución antes de reorganizar un programapara simplificarlo.

Instrucción 100000

Instrucción 2

00001TR 0

Instrucción 200000

Instrucción 100001

Instrucción 1

00000

Instrucción 2

00003

TR 000001

00004

00002

00001 00003

00000

00004

00002

00001

Instrucción 1

Instrucción 2

Nota El usuario debe escribir los bits TR sólo cuando se programa en código nemóni-co. No es necesario cuando se programa directamente en diagrama de relésdado que se procesan automáticamente.

El problema de almacenar condiciones de ejecución en puntos de bifurcacio-nes, también se puede resolver utilizando las instrucciones INTERLOCK(IL(002)) e INTERLOCK CLEAR (ILC(003)) que eliminan los puntos de bifurca-ción completamente, permitiendo que una condición de ejecución controle ungrupo de instrucciones. Las instrucciones INTERLOCK e INTERLOCK CLEARsiempre se utilizan juntas.

Cuando se coloca una instrucción INTERLOCK delante de una sección de unprograma de relés, la condición de ejecución para la instrucción INTERLOCK,controlará la ejecución de todas las instrucciones hasta la siguiente instrucción

Enclavamientos

Escritura, Modificación y chequeo del programa Sección 4-7

Page 122: C200HALPHA Manual Programacion

116

INTERLOCK CLEAR. Para más información, consultar INTERLOCK e INTER-LOCK CLEAR -- IL(002) e ILC(003) en sección 5.

El diagrama B también se puede corregir con un enclavamiento. Aquí las condi-ciones de ejecución previas al punto de bifurcación, se colocan en una línea deinstrucción para la instrucción INTERLOCK, todas las líneas que parte del pun-to de bifurcación se escriben como líneas de instrucción separadas y se añadeotra línea de instrucción para INTERLOCK CLEAR. En la línea de INTERLOCKCLEAR no se pueden insertar condiciones. Observar que ninguna de las dosinstrucciones necesitan operando.

Instrucción 1

00002

00000

Instrucción 2

00001

ILC(003)

IL(002) Dirección Instrucción Operandos

00000 LD 0000000001 IL(002) ---00002 LD 0000100003 Instrucción 100004 LD 0000200005 Instrucción 200006 ILC(003) ---

Si IR 00000 está en ON en la versión revisada del diagrama B anterior, el estadode IR 00001 y el de IR 00002 determinaría las condiciones de ejecución para lasinstrucciones 1 y 2, respectivamente. Dado que IR 00000 está en ON, esto pro-duciría los mismos resultados que la operación AND de cada uno de estos bits.Si IR 00000 está en OFF, la instrucción INTERLOCK produciría una condiciónde ejecución OFF para las instrucciones 1 y 2 y luego la ejecución continuaríacon la línea de instrucción siguiente a la instrucción INTERLOCK CLEAR.

Como se muestra en el siguiente diagrama, dentro de un bloque de instrucciónse pueden utilizar más de una instrucción INTERLOCK; cada una es efectiva através de la siguiente instrucción INTERLOCK CLEAR.

Instrucción 1

00000

Instrucción 2

00001

ILC(003)

IL(002)

00004

Instrucción 3

Instrucción 400006

00005

00003

00002

IL(002)

Dirección Instrucción Operandos

00000 LD 0000000001 IL(002) ---00002 LD 0000100003 Instrucción 100004 LD 0000200005 IL(002) ---00006 LD 0000300007 AND NOT 0000400008 Instrucción 200009 LD 0000500010 Instrucción 300011 LD 0000600012 Instrucción 400013 ILC(003) ---

4-7-8 SaltosUna sección específica de un programa se puede saltar de acuerdo con unacondición de ejecución dada. Aunque esto es parecido a lo que sucede cuandola condición de ejecución para una instrucción INTERLOCK es OFF, con saltos,los operandos para todas las instrucciones mantienen los estados. Por lo tantolos saltos se pueden utilizar para controlar dispositivos de control que necesitanuna salida mantenida, neumáticos e hidráulicos, mientras que los enclavamien-tos se pueden utilizar para controlar dispositivos que no necesitan una salidamantenida, dispositivos electrónicos.

Los saltos se crean utilizando las instrucciones JUMP (JMP(004)) y JUMP END(JME(005)). Si la condición de ejecución para una instrucción JUMP es ON, elprograma se ejecuta como si el salto no existiera. Si la condición es OFF, la eje-

Escritura, Modificación y chequeo del programa Sección 4-7

Page 123: C200HALPHA Manual Programacion

117

cución del programa se mueve inmediatamente a una instrucción JUMP ENDsin cambiar ningún estado entre JUMP y JUMP END.

A todas las instrucciones JUMP y JUMP END se asignan números de salto en-tre 00 y 99. Hay dos tipos de saltos. El número de salto se utiliza para determinarel tipo de salto.

Cada uno de estos números sólo se puede utilizar una vez en el programa, conuna instrucción JUMP y con una instrucción JUMP END. Cuando se ejecuta unainstrucción JUMP con un determinado número asignado, la ejecución salta di-rectamente a la instrucción JUMP END con el mismo número asignado, igno-rando las instrucciones comprendidas entre ambas. El diagrama B del ejemplocon TR y enclavamiento, también se puede dibujar como se indica a continua-ción utilizando un salto. JUMP y JUMP END no necesitan otro operando y JUMPEND nunca tiene condiciones en la línea de instrucción.

Instrucción 1

00002

00000

Instrucción 2

Diagrama B: Corregido con Salto

00001

JME(005) 01

JMP(004) 01 Dirección Instrucción Operandos

00000 LD 0000000001 JMP(004) 0100002 LD 0000100003 Instrucción 100004 LD 0000200005 Instrucción 200006 JME(005) 01

Esta versión del diagrama B, tendría un tiempo de ejecución más corto cuandoIR 00000 esté en OFF que cualquiera de las otras versiones.

El otro tipo de salto se crea con un número de salto 00. Tantos saltos como sedesee pueden crearse utilizando número de salto 00 y las instrucciones utilizan-do 00 se pueden usar consecutivamente sin una JUMP END con 00 entre ellas.Es decir una sola instrucción JUMP END sirve para todas las anteriores JUMP00. Cuando se utiliza 00 como número de salto para una instrucción JUMP, laejecución del programa se mueve a la instrucción siguiente a JUMP END connúmero 00. Aunque, como en todos los saltos, no se cambia el estado y no seejecutan instrucciones entre JUMP 00 y JUMP END 00, el programa debe bus-car la siguiente JUMP END 00 produciendo un tiempo de ejecución ligeramentemás largo.

La ejecución de programas con mútiples instrucciones JUMP 00 para una ins-trucción JUMP END 00, es similar a las secciones enclavadas. El siguiente dia-grama es el mismo que el utilizado para el ejemplo anterior de enclavamiento,pero redibujado con saltos. La ejecución de este diagrama sería diferente de ladel diagrama descrito antes (en el diagrama anterior los enclavamientospodrían resetear ciertas partes de la sección enclavada, sin embargo, los saltosno afectan al estado de ningún bit entre las instrucciones JUMP y JUMP END).

Instrucción 1

00000

Instrucción 2

00001

JME(005) 00

JMP(004) 00

00004

Instrucción 3

Instrucción 400006

00005

00003

00002

JMP(004) 00

Dirección Instrucción Operandos

00000 LD 0000000001 JMP(004) 0000002 LD 0000100003 Instrucción 100004 LD 0000200005 JMP(004) 0000006 LD 0000300007 AND NOT 0000400008 Instrucción 200009 LD 0000500010 Instrucción 300011 LD 0000600012 Instrucción 400013 JME(005) 00

Escritura, Modificación y chequeo del programa Sección 4-7

Page 124: C200HALPHA Manual Programacion

118

4-8 Control de estado de bitHay siete intrucciones básicas que generalmente se pueden utilizar para con-trolar estados de bits individuales. Estas instrucciones son OUTPUT, OUTPUTNOT, SET, RESET, DIFFERENTIATE UP, DIFFERENTIATE DOWN y KEEP.Todas ellas aparecen como última instrucción de la línea y el operando es un bit.Debido a la importancia de estas instrucciones en la mayoría de los programas yaunque se describen con todo detalle en 5-9 Instrucciones de control de bit, enesta sección también se van tratar (excepto OUTPUT y OUTPUT NOT ya vis-tas). Aunque estas instrucciones se utilizan para poner a ON y OFF bits desalida en el área IR (es decir para enviar o cortar señales a dispositivos exter-nos), también se pueden utilizar para controlar estados de otros bits en el áreade IR o en otras áreas de datos.

4-8-1 DIFFERENTIATE UP y DIFFERENTIATE DOWNLas instrucciones DIFFERENTIATE UP y DIFFERENTIATE DOWN se utilizanpara poner a ON el bit operando durante un scan. La instrucción DIFFEREN-TIATE UP pone a ON el bit durante 1 scan después de que la condición de ejecu-ción pase de OFF a ON; La instrucción DIFFERENTIATE DOWN pone a ON elbit durante 1 scan después de que la condición de ejecución pase de ON a OFF.

00000

00001

DIFU(013) 01000

DIFD(014) 01001

Dirección Instrucción Operandos

00000 LD 0000000001 DIFU(013) 01000

Dirección Instrucción Operandos

00000 LD 0000100001 DIFD(014) 01001

Aquí, IR 01000 será puesto a ON durante un scan después de que IR 00000 seponga a ON. La siguiente vez que se ejecute DIFU(013) 01000, IR 01000 sepondrá a OFF, independientemente del estado de IR 00000. Con la instrucciónDIFFERENTIATE DOWN, IR 01001 será puesto a ON durante un ciclo de scandespués de que IR 00001 se ponga a OFF (IR 01001 se mantendrá en OFF has-ta entonces) y se pondrá a OFF la siguiente vez que se ejecute DIFD(014)01001.

4-8-2 KEEPLa instrucción KEEP se utiliza para mantener el estado del bit operando basadoen dos condiciones de ejecución. Para esto, la instrucción KEEP se conecta ados líneas de instrucción. Cuando la condición de ejecución al final de la primeralínea es ON, el bit operando de la instrucción KEEP se pone en ON. Cuando lacondición de ejecución al final de la segunda línea es ON, el bit operando de lainstrucción KEEP se pone en OFF. El bit operando para la instrucción KEEPmantendrá su estado ON u OFF aunque esté dentro de una sección enclavadadel diagrama.

En el ejemplo siguiente, HR 0000 se pondrá en ON cuando IR 00002 esté enON y IR 00003 esté en OFF. HR 0000 permanecerá en ON hasta que IR00004 o IR 00005 se ponga en ON. Con KEEP, al igual que todas las instruc-ciones que necesitan más de una línea de instrucción, las líneas de instruc-ción se codifican antes de la instrucción que controlan.

00002

00004

00003

00005R: entrada de reset

S: entrada de set KEEP(011)

HR 0000

Dirección Instrucción Operandos

00000 LD 0000200001 AND NOT 0000300002 LD 0000400003 OR 0000500004 KEEP(011) HR 0000

Control de estado de bit Sección 4-8

Page 125: C200HALPHA Manual Programacion

119

4-8-3 Bits de autorretenciónAunque la instrucción KEEP se puede utilizar para crear bits de autorretención,algunas veces es necesario crearlos de otra forma de tal manera que se puedanponer a OFF en secciones enclavadas de un programa.Para crear un bit de autorretención, el bit operando de una instrucción OUTPUTse utiliza como una condición para la misma instrucción OUTPUT en una OR detal forma que el bit operando de la instrucción OUTPUT permanecerá en ON uOFF hasta que se produzcan cambios en otros bits. Por lo menos se utiliza otracondición delante de la instrucción OUTPUT para funcionar como un reset. Sineste reset, no sería posible controlar el bit operando de la instrucción OUTPUT.El diagrama anterior para la instrucción KEEP se puede reescribir como seindica a continuación. La única diferencia en estos diagramas sería su opera-ción en una sección del programa enclavada cuando la condición de ejecuciónpara la instrucción INTERLOCK esté en ON. Aquí, exactamente igual que en eldiagrama utilizando la instrucción KEEP, se utilizan dos bits de reset, es decir,HR 0000 se puede poner a OFF poniendo a ON IR 00004 o IR 00005.

00002 00003

HR 0000

HR 0000

00004

00005

Dirección Instrucción Operandos

00000 LD 0000200001 AND NOT 0000300002 OR HR 000000003 AND NOT 0000400004 OR NOT 0000500005 OUT HR 0000

4-9 Bits de trabajo (Relés internos)En programación, es a menudo muy difícil combinar condiciones para producircondiciones de ejecución directamente. Esta dificultad se resuelve utilizandociertos bits para controlar indirectamente otras instrucciones, es decir utilizandobits de trabajo. En ciertas ocasiones es necesario utilizar canales enteros (ca-nales de trabajo) de estos bits.

Los bits de trabajo no son transferidos a/o del PLC. Son bits seleccionados porel programador para facilitar su tarea. Los bits de E/S y otros dedicados no sepueden utilizar como bits de trabajo. Todos los bits en el área de IR que no esténasignados como bits de E/S y ciertos bits no utilizados del área AR se puedenutilizar como bits de trabajo. Registrar exactamente cómo y dónde utiliza los bitsde trabajo. Esto le ayudará en la planificación y escritura del programa y tam-bién en las operaciones de depuración de programas.

Aplicaciones de bit de trabajoMás adelante en esta sección se indican dos de las formas más comunes deutilizar estos bits de trabajo. Es simplemente una muestra de las formas casiilimitadas de utilizar estos bits de trabajo. Siempre que se encuentren dificulta-des para programar una acción de control, se debe considerar la utilización deestos bits para simplificar la programación.

Los bits de trabajo se utilizan frecuentemente con las instrucciones OUTPUT,OUTPUT NOT, DIFFERENTIATE UP, DIFFERENTIATE DOWN y KEEP. El bitde trabajo se utiliza primero como el operando de una de estas instrucciones detal forma que luego se pueda utilizar como una condición que determinará cómose ejecutarán otras instrucciones. Los bits de trabajo también se pueden utilizarcon otras instrucciones: instrucción REGISTRO DE DESPLAZAMIENTO(SFT(010)). En Sección 5 REGISTRO DE DESPLAZAMIENTO -- SFT(010) seda un ejemplo de utilización de los bits de trabajo con la instrucción SFT(010).

Aunque no se mencionan especialmente, muchos de los bits utilizados en losejemplos de la Sección 5 Juego de Instrucciones son bits de trabajo. Para unaprogramación efectiva es fundamental comprender el uso de estos bits.

Bits de trabajo Sección 4-9

Page 126: C200HALPHA Manual Programacion

120

Los bits de trabajo se pueden utilizar para simplificar la programación cuandociertas condiciones se utilizan repetidamente en combinación con otras. En elsiguiente ejemplo, IR 00000, IR 00001, IR 00002 e IR 00003 se combinan en unbloque lógico que almacena la condición de ejecución resultante en IR 24600.IR 24600 se combina luego con otras condiciones para determinar las condicio-nes de salida para IR 10000, IR 10001 e IR 10002, es decir, para poner a ON o aOFF las salidas asignadas a estos bits.

00000

00003

00001

00004

00002

00005

00004

00007

00006

0000524600

24600

24600

24600

10000

10001

10002

Dirección Instrucción Operandos

00000 LD 0000000001 AND NOT 0000100002 OR 0000200003 OR NOT 0000300004 OUT 2460000005 LD 2460000006 AND 0000400007 AND NOT 0000500008 OUT 1000000009 LD 2460000010 OR NOT 0000400011 AND 0000500012 OUT 1000100013 LD NOT 2460000014 OR 0000600015 OR 0000700016 OUT 10002

Condiciones diferenciadas Los bits de trabajo también se pueden utilizar si es necesario el tratamiento dife-renciado de algunas, pero no todas, condiciones necesarias para la ejecuciónde una instrucción. En este ejemplo, IR 10000 debe estar continuamente en ONmientras que IR 001001 esté en ON y tanto IR 00002 como IR 00003 estén enOFF o mientras IR 00004 esté en ON e IR 00005 esté en OFF. Debe ponerse aON durante sólo un ciclo de scan cada vez que IR 00000 se ponga a ON (a noser que una de las condiciones precedentes esté continuamente en ON).

Esta acción se programa fácilmente utilizando IR 22500 como un bit de trabajocomo operando de la instrucción DIFFERENTIATE UP (DIFU(013)). Cuando IR00000 se pone a ON, IR 22500 se pondrá a ON durante un scan y luego en elsiguiente scan será puesta a OFF por DIFU(013). Suponiendo que las otrascondiciones de control de IR 10000 no permanecen en ON, el bit de trabajo IR22500 pondrá a ON IR 10000 durante sólo un scan.

Reducir condicionescomplejas

Bits de trabajo Sección 4-9

Page 127: C200HALPHA Manual Programacion

121

22500

DIFU(013) 22500

00000

00001 00002 00003

00004 00005

10000

Dirección Instrucción Operandos

00000 LD 0000000001 DIFU(013) 2250000002 LD 2250000003 LD 0000100004 AND NOT 0000200005 AND NOT 0000300006 OR LD ---00007 LD 0000400008 AND NOT 0000500009 OR LD ---00010 OUT 10000

4-10 Precauciones en programación

El número de condiciones que se pueden utilizar en serie o en paralelo es ilimi-tado siempre que no se supere la capacidad de memoria del PLC. Por lo tanto,utilizar tantas condiciones como sea necesario para dibujar un diagrama claro.Aunque se pueden dibujar con líneas de instrucción diagramas muy complica-dos, en líneas verticales entre dos líneas de instrucción no debe haber ningunacondición. El diagrama A de la siguiente figura no se puede programar, es impo-sible codificarlo

Instrucción 2

Instrucción 1

00002

00003

00000

00001

00004

Diagrama A: No se puede programar

Instrucción 1

00004

00003

00000

00001

Diagrama B: Versión correcta

00002

Instrucción 2

0000400000

00001

Dirección Instrucción Operandos

00000 LD 0000100001 AND 0000400002 OR 0000000003 AND 0000200004 Instrucción 100005 LD 0000000006 AND 0000400007 OR 0000100008 AND NOT 0000300009 Instrucción 2

El número de veces que se puede utilizar un bit concreto es ilimitado, por lo tantoutilícelo tantas veces como sea necesario para simplificar el programa. A menu-do, los programas complicados son el resultado de intentar reducir el número deveces que se utiliza un bit.

Excepto para las instrucciones que no permiten condiciones ( INTERLOCKCLEAR y JUMP END, ver a continuación), toda línea de instrucción debe conte-ner al menos una condición para determinar la condición de ejecución de la ins-trucción de la derecha. De nuevo, el diagrama A se debe dibujar como el diagra-ma B.Si una instrucción se debe ejecutar continuamente (es decir, si una salidadebe permanecer siempre en ON durante la ejecución del programa), se puedeutilizar el Indicador de siempre en ON (SR 25313) en el área de SR.

Precauciones en programación Sección 4-10

Page 128: C200HALPHA Manual Programacion

122

Instrucción25313

Instrucción

Diagrama A: No Programable para la mayoría de instrucciones

Diagrama B: Versión correcta

Dirección Instrucción Operandos

00000 LD 2531300001 Instrucción

Hay unas pocas excepciones a esta regla, incluyendo las instrucciones INTER-LOCK CLEAR, JUMP END y de STEP. Cada una de estas instrucciones se utili-za como la segunda parte de parejas de instrucciones y es controlada por lacondición de ejecución de la primera parte. No se deben colocar condiciones enlas líneas de estas instrucciones. Consultar Sección 5 Juego de instruccionespara información más detallada.

Cuando se dibujan diagramas de relés, es importante tener en cuenta el núme-ro de instrucciones que serán necesarias para introducirlo. En el diagrama A, senecesitará una instrucción OR LOAD para combinar las líneas de arriba y deabajo. Esto se puede evitar dibujando el diagrama B de tal forma que no se ne-cesite ninguna instrucción AND LOAD o OR LOAD. Consultar Sección 5 ANDLOAD y OR LOAD para información más detallada.

00000

00001 10007

10007

00001

00000

1000710007

Diagrama A

Diagrama B

Dirección Instrucción Operandos

00000 LD 0000000001 LD 0000100002 AND 1000700003 OR LD ---00004 OUT 10007

Dirección Instrucción Operandos

00000 LD 0000100001 AND 1000700002 OR 0000000003 OUT 10007

4-11 Ejecución del programaCuando se arranca la ejecución del programa, la CPU hace un scan del progra-ma de arriba a abajo, chequeando todas las condiciones y ejecutando todas lasinstrucciones según se mueve hacia abajo por la barra de bus. Es importanteubicar las instrucciones en el orden adecuado para, por ejemplo, mover el datodeseado a un canal antes de que dicho canal se utilice como operando de unainstrucción.

La ejecución del programa es sólo una de las tareas llevadas a cabo por la CPUcomo parte del tiempo de scan. Consultar Sección 6 Proceso de la CPU parainformación más detallada.

4-12 Programas de interfaz de unidad de E/S especialEste apartado contiene métodos de programación y precauciones para la ope-ración de unidad de E/S especial.

Programas de interfaz de unidad de E/S especial Sección 4-12

Page 129: C200HALPHA Manual Programacion

123

4-12-1 Rearranque de unidades de E/S especialesCuando se rearranca una unidad de E/S especial, la ejecución de IORF(097)está inhibida hasta que se complete la inicialización de unidad de E/S especial.

SR 28100(Bit de rearranque deunidad #0)

SR 27400(Indicador de rearranquede unidad #0)

ON

OFF

ON

OFF

Inicializaciónde unidad deE/S especial

Ejecución de IORF(097)para unidad #0 Habilitada Inhibida Habilitada

Mientras el indicador de Restart (SR 27400) esté en ON, se realiza el refrescoEND normal y se inicializa la unidad de E/S especial. Este proceso es indepen-diente de las selecciones en DM 6620 y DM 6621 que son relativas al refrescode unidad de E/S especial. Las instrucciones IORF(097) en el programa noserán ejecutadas para la unidad hasta que se complete la inicialización.Los datos de la unidad de E/S especial que fueron refrescados pueden perder-se durante la inicialización. Cuando se escribe un programa para rearrancarunidades de E/S especiales, inhibir la programación que depende de los datosde la inicialización de unidad de E/S especial tales como datos utilizados en cál-culos, mientras su indicador restart (SR 27400 a SR 27415) está en ON. Lasoperaciones normales del programa pueden continuar para unidades que noestén inicializando.El indicador de rearranque no se pondrá en ON para unidades de E/S espe-ciales montadas en bastidores esclavos.El tiempo de rearranque de unidad de E/S especial estándar es (20 x el tiempode ciclo).

4-12-2 Programa de proceso de error de unidad de E/S especialUtilizar un programa como el indicado a continuación para rearrancar una uni-dad de E/S especial en la que se ha producido un error. Este ejemplo de progra-ma arranca la unidad 1.

Inhibir cál-culos du-rante inicia-lización.

DIFU(013) AR0101

JMP(004) 00

JME(005) 00

AR 0001(Indicador de error de unidad #0)

SR 27401(Indicador de error de unidad #1)

Restart

Cálculos utilizando datos de la unidad E/S especial 1

27401

AR0001

4-12-3 Cambiar las selecciones de unidad de E/S especialEn el C200HX/HG/HE, las instrucciones de diagramas de relés se pueden utili-zar para escribir datos en las áreas de unidad de E/S especial (DM 1000 aDM 2599) y cambiar las selecciones de unidad de E/S especial. Cambiar las se-

Programas de interfaz de unidad de E/S especial Sección 4-12

Page 130: C200HALPHA Manual Programacion

124

lecciones es útil cuando son necesarias diferentes selecciones para diferentesprocesos de producción.En este ejemplo hay dos procesos de producción que requieren diferentes se-lecciones de unidad de E/S especial. Las selecciones para el primer proceso sealmacenan en DM 7000 a DM 7999 y las selecciones para el segundo procesoen DM 8000 a DM 8999.

Los pasos 1 a 5 en el siguiente procedimiento no son necesarios cuando se utili-za XFER(070) para sobreescribir DM 1000 a DM 1999 directamente desde elprograma con los contenidos de DM fija (DM 6144 a DM 6599). En este caso,rearrancar la unidad desde el programa después de escribir en DM 1000 a DM1999.

1, 2, 3... 1. Borrar la memoria (borrado completo).

La operación de asignación de área de UM no se puede efectuar a no serque se haya borrado la memoria.

2. Realizar la operación de asignación de área de UM para asignar 2K pala-bras al área de expansión de DM (DM 7000 a DM 8999).

FUN CHG

9 7B

1D

3 WRITE

VER

PLAY

SET

CLR

3. Efectuar la operación de modificación de datos Hexadecimal/BCD para se-leccionar el modo de la unidad de E/S especial a “modo ROM 1 compatibleC200H” seleccionando DM 6602 a #0100. Este modo transfiere los conte-nidos en DM 7000 a DM 7999 hasta DM 1000 a DM 1999 al arrancar elPLC. Esta nueva selección de configuración del PLC no será efectiva hastaque se vuelva a arrancar el PLC desconectando y volviendo a conectar denuevo la alimentación.

4. Colocar el pin 4 del interruptor DIP de la CPU a ON. Esta selección permiteal usuario asignar códigos de función de instrucción de expansión.

5. Efectuar la operación de asignación de código de función de instrucción deexpansión para asignar un código de función a XDMR(----).

6. Escribir el programa.

Operaciones de la consolade programación

Programas de interfaz de unidad de E/S especial Sección 4-12

Page 131: C200HALPHA Manual Programacion

125

El siguiente programa cambia las selecciones de área de unidad de E/S espe-cial para la unidad 2, rearranca la unidad e inhibe cálculos utilizando datos de launidad 2 mientras la unidad está inicializándose.

@XDMR

#0100

#8200

DM1200

DIFU(013) AR0102

JMP(004) 00

JME(005) 00

Indicador de restart unidad #2Inhibe cál-culos du-rante inicia-lización.Cálculos utilizando datos de unidad de E/S especial 2

Transfiere loscontenidos deDM 8200 aDM 8299hastaDM 1200 aDM 129

Fin de proceso 1.

Rearran-ca uni-dad 2.

40000

27402

4-12-4 Intervalo de refresco de E/S de unidad de E/S especialCuando el intervalo entre refrescos de E/S es demasiado corto, el proceso en launidad de E/S especial se puede retrasar debido a errores de la unidad de E/Sespecial o interfiriendo con la operación correcta de la unidad. En este caso, uti-lizar los siguientes métodos para restablecer la operación normal.

Existen los dos métodos siguientes para ampliar el intervalo entre refrescos deE/S.

1, 2, 3... 1. Inhibir el refresco cíclico de unidad de E/S especial en la configuración delPLC (DM 6621) y utilizar IORF(097) para refrescar las E/S de la unidad deE/S especial sólo cuando sea necesario.Para inhibir el refresco cíclico para todas las unidades de E/S especialesmontadas en el bastidor de CPU o en los bastidores expansores de E/S,seleccionar DM 6621 a #0100.

2. Aumentar el tiempo de ciclo del PLC seleccionando un tiempo de ciclo míni-mo en la configuración del PLC (DM 6619) o ejecutando SCAN(018) en elprograma. (SCAN(018) es una instrucción de expansión con código de fun-ción por defecto 18).

Cambiar el programa para utilizar refresco IORF(097) o refresco END. Tambiénes posible aumentar el tiempo de ciclo del PLC seleccionando un tiempo de ci-clo mínimo en la configuración del PLC (DM 6619) o ejecutando SCAN(018) enel programa.

Cambiar el programa para aumentar el espacio entre instrucciones IORF(097)o utilizar solamente una instrucción IORF(097).

4-12-5 Reducir el tiempo de cicloCuando una unidad de E/S especial está montada en un PLC C200HX/HG/HE,el refresco de END se efectúa automáticamente cada ciclo sin necesidad de se-lecciones especiales. Cuando se utilizan varias unidades de E/S especiales, eltiempo de ciclo puede ser demasiado largo debido al tiempo necesario paraeste refresco automático de E/S.Para reducir el tiempo dedicado a refresco de E/S, inhibir el refresco cíclico deunidad de E/S especial en la configuración del PLC (DM 6621) y utilizar en sulugar IORF(097) para refrescar las unidades de E/S especiales. El refresco deE/S para todas las unidades de E/S especiales montadas en el bastidor de CPUo en bastidores expansores de E/S se puede inhibir en la configuración del PLCseleccionando DM 6621 a #0100.

Programa ejemplo(Unidad de E/S especial 2)

Intervalo corto entrerefrescos de END

Intervalo corto entreIORF(097) y refresco deEND

Intervalo corto entreinstrucciones IORF(097)

Programas de interfaz de unidad de E/S especial Sección 4-12

Page 132: C200HALPHA Manual Programacion

126

El siguiente programa ejemplo reduce el tiempo de refresco de unidad de E/Sespecial para un PLC con cuatro unidades de E/S especiales refrescando sola-mente una unidad en cada ciclo. Las unidades se refrescan en el siguiente or-den: Unidad 0, Unidad 1, Unidad 2, Unidad 3, Unidad 0 y así sucesivamente.

Uni

dad

0

Uni

dad

1

Uni

dad

2

Uni

dad

3

C200HX/HG/HE

El siguiente ejemplo de programa es sólo para unidades de E/S especialesmontadas en el bastidor de CPU o bastidores expansores de E/S, dado que elrefresco de END se realiza siempre sobre unidades de E/S especiales monta-das en bastidores esclavos independientemente de las selecciones de configu-ración del PLC.

30000

30001

30002

30003

30000

30001

30000 30001 30002 30003

30000 30001 30002 30003

30000 30001 30002 30003

30000 30001 30002 30003

30002 30003

IORF(097)

100

100

30000

1 ciclo

Refresca unidad 3.

Refresca unidad 2.

Refresca unidad 1.

Refresca unidad 0.

IORF(097)

110

110

30001

IORF(097)

120

120

30002

IORF(097)

130

130

30003

Nota IR 30000 se utiliza como una instrucción OUT dos veces en este programa.Aunque es aceptable en el ejemplo anterior, este tipo de duplicación no estápermitido habitualmente a no ser que exista una razón específica y que ademásse garantice una operación correcta.

4-13 Programación de unidad de temporizador analógicoEl tiempo seleccionado (SV) de una unidad de temporizador analógico sepuede cambiar fácilmente sin consola de programación. La unidad dispone deun conector para potenciómetro externo de tal forma que dicho potenciómetropueda instalarse en el panel de control conectado a la unidad de temporizador

Programación de unidad de temporizador analógico Sección 4-13

Page 133: C200HALPHA Manual Programacion

127

analógico para seleccionar o ajustar el tiempo seleccionado (SV) manual-mente.

4-13-1 OperaciónCuando se pone a ON la entrada de arranque del temporizador, se ponen a ONlos Bits de Set de temporizador asignados a la unidad de temporizador analógi-ca (bits 00 a 03 de n), el temporizador analógico inicia la operación y se encen-derá el indicador de temporizador (SET) en la unidad.

Una vez transcurrido el tiempo seleccionado interna o externamente (SV), losindicadores de finalización de la unidad (bits 08 a 11 de n) y la salida de tiempoalcanzado se pondrán a ON. Asímismo se encenderá el indicador de tiempo al-canzado de la unidad (TIME UP).

Para más información sobre conmutar entre selecciones de tiempo interna o ex-ternamente, conexión de potenciómetro externo y selecciones del interruptor,consultar el manual de operación de esta unidad.

Bits 08 a 11 de n

Entrada iniciar temporizador

Indicadores definalización

Bits deSet detemp.(Bits 00 a03 de n)

Salida detiempotranscurri-do

Entrada inicio tem-porización

Salida tiempotranscurrido

Intervalo de temporización

4-13-2 Asignación de bit y selecciones de interruptor DIPLa siguiente tabla muestra la utilización del canal (n) asignado a la unidad detemporizador analógico. Esta dirección de canal depende del hueco en el queesté montada la unidad.

Bit Clase E/S Función Comentarios00 Salida Bit de set tempor. 0 En ON cuando el temporizador

á l i d01 Bit de set tempor. 1p

está seleccionado.

02 Bit de set tempor. 203 Bit de set tempor. 304 Bit de stop tempor. 0 OFF: Habilitada operación de

i ió05 Bit de stop tempor. 1p

temporizaciónON: Parar operación de

06 Bit de stop tempor. 2ON: Parar operación detemporización

07 Bit de stop tempor. 3temporización

08 Entrada Ind. finalización temp. 0 En ON cuando ha transcurrido eli l i d09 Ind. finalización temp. 1 tiempo seleccionado.

10 Ind. finalización temp. 211 Ind. finalización temp. 312 a 15 --- No utilizado. ---

Selección de rango de temporizadorSeleccionar el rango de temporización con el interruptor DIP de la parte superiordel frontal de la unidad. Se pueden seleccionar independientemente los rangospara cada temporizador.

Programación de unidad de temporizador analógico Sección 4-13

Page 134: C200HALPHA Manual Programacion

128

Rango Tempo. 0 Tempo. 1 Tempo. 2 Tempo. 3gPin 8 Pin 7 Pin 6 Pin 5 Pin 4 Pin 3 Pin 2 Pin 1

0.1 a 1 s OFF OFF OFF OFF OFF OFF OFF OFF1 a 10 s ON OFF ON OFF ON OFF ON OFF10 a 60 s OFF ON OFF ON OFF ON OFF ON1 a 10 minutos ON ON ON ON ON ON ON ON

Utilizar el interruptor DIP de la parte inferior del frontal de la unidad para fijar laselección del valor de temporizador (SV) interna o externamente.

Selección Temporizador0 (pin 4)

Temporizador1 (pin 3)

Temporizador2 (pin 2)

Temporizador3 (pin 1)

Interna ON ON ON ONExterna OFF OFF OFF OFF

4-13-3 Programa ejemploLa siguiente tabla muestra las asignaciones de canal para las unidades en esteejemplo.

Item CanalCanal IR asignado para la unidad detemporizador analógico

IR 002

Canal IR asignado para la unidad de entrada IR 000Canal IR asignado para la unidad de salida IR 005

Las selecciones de unidad de temporizador analógico y las conexiones de con-trol de potenciómetro externo son las siguientes.

Tempo--rizador

Valorseleccionado

Rango Selección depotenciómetro

Control depotenciómetro

0 0.6 s 0.1 a 1 s 60% a derecha Interno1 3 s 1 a 10 s 30% a derecha Interno2 20 s 10 a 60 s 20% a derecha Externo3 8 minutos 1 a 10 minutos 80% a derecha Externo

Selección interna/externade tiempo SV

Configuración de unidad

Programación de unidad de temporizador analógico Sección 4-13

Page 135: C200HALPHA Manual Programacion

129

La siguiente figura muestra las selecciones del interruptor y las conexiones ne-cesarias para la configuración anterior de la unidad.

Las selecciones para estos dos potenciómetros son válidasdado que los temporizadores 0 y 1 están fijados para selec-ciones de SV internas.Utilizar el destornillador suministrado con la unidad para se-leccionar el potenciómetro.Las selecciones para estos dos potenciómetros no son váli-das dado que los temporizadores 2 y 3 están seleccionadospara selecciones de SV externas.

No conectar nada a estos conectores. Los temporizadores 0y 1 están seleccionadas para selecciones de SV interno, porlo que los controles del potenciómetro en la parte superior dela unidad se utilizan para seleccionar sus SVs.

Selecciones de SV externo (0 a 20 K")

Conectar el potenciómetro para temporizadores 2 y 3 a estosconectores. Consultar el manual de operación de la unidadde temporizador analógico para más información sobre estasselecciones.

Pin 8

OFF

Pin 7

OFF

Temp. 0:

0.1 a 1 seg

Pin 6

ON

Pin 5

OFF

Temp. 1:

1 a 10 seg

Pin 4

OFF

Pin 3

ON

Temp. 2:

10 a 60 seg

Pin 2

ON

Pin 1

ON

Temp. 3:

1 a 10 minutos

ExternoExterno

Temp. 2

OFF

Pin 2

Temp. 3

OFF

Pin 1

Temp. 1

ON

Interno

Pin 3

Temp. 0

ON

Interno

Pin 4

Las selecciones de rango de temporiza-dor son las siguientes:

Las selecciones de SV interno/externo son las siguientes:

Selecciones y cableado dela unidad

Programación de unidad de temporizador analógico Sección 4-13

Page 136: C200HALPHA Manual Programacion

130

El siguiente esquema muestra el diagrama de relés ejemplo.

1, 2, 3... 1. La salida IR 00500 se pondrá en ON aprox. 0.6 s (T0) después de que laentrada IR 00002 se ponga en ON.

2. La salida IR 00501 se pondrá en ON aprox. 3 s (T1) después de que la entra-da IR 00003 se ponga en ON.

3. La salida IR 00502 se pondrá en ON aprox. 20 s (T2) después de que laentrada IR 00004 se ponga en ON e IR 00503 se pondrá en ON aprox. 8minutos (T3) después de que la entrada IR 00004 se ponga en ON.

4. Los temporizadores 2 y 3 se paran mediante la entrada IR 00005.

Una vez transcurrido el tiempo fijado en elcontrol de potenciómetro interno, se pone enON el indicador de finalización (00209) y seenciende el indicador TIME UP de la unidad.Al mismo tiempo se pone en ON la salida IR00501.

Una vez transcurrido el tiempo seleccionadoen el control de potenciómetro externo, sepone en ON el indicador de finalización(00210) y se enciende el indicador TIME UP.Al mismo tiempo se pone en ON la salida IR00502.Una vez transcurrido el tiempo seleccionadoen el control de potenciómetro externo, sepone en ON el indicador de finalización(00211) y se enciende el indicador TIME UP.Al mismo tiempo se pone en ON la salida IR00503.

00206

00207

00200

00202

00203

00501

00500

00201

00502

00503

00005

00002

00004

00209

00208

00003

00210

00211

Los temporizadores 2 y 3 paran la opera-ción cuando se pone en ON la entrada deparada de emergencia.

Una vez transcurrido el tiempo seleccionadoen el control de potenciómetro interno, sepone en ON el indicador de finalización(00208) y se enciende el indicador TIME UP.Al mismo tiempo se pone en ON la salida IR00500.

Cuando IR 00002 se pone en ON se en-ciende el indicador SET de la unidad y empie-za la operación el temporizador 0 (00200).

Cuando IR 00003 se pone en ON, el tempori-zador 1 (00201) inicia la operación y se en-ciende el indicador SET de la unidad.

Cuando IR 00004 se pone en ON, inician laoperación el temporizador 2 (00202) y eltemporizador 3 (00203) y se enciende el in-dicador SET de la unidad.

Bit parar temporizador

Bit de set tempo. 0

Bit de set tempo. 1

Bit de set tempo. 2

T2

T3

T0

T1

T2

T3

Indicador de finalización de temporizador 0

Indicador de finalización temporizador 1

Indicador de finalización temporizador 2

Indicador de finalización temporizador 3

Indicador de finalización temporizador 0

Programa de diagrama derelés

Programación de unidad de temporizador analógico Sección 4-13

Page 137: C200HALPHA Manual Programacion

131

SECCIÓN 5Juego de instrucciones

Los C200HX/HG/HE tienen un extenso repertorio de instrucciones de programación que permite programar fácilmente com-plejos procesos de control. Esta sección explica individualmente cada instrucción y contiene el símbolo de diagrama de relés,áreas de datos e indicadores utilizados por cada una.Las diversas instrucciones que incorpora el C200H ALPHA están organizadas en las siguientes subsecciones por grupo deinstrucción. Estos grupos incluyen instrucciones de diagrama de relés, instrucciones de control de bit, instrucciones de tempo-rizador y contador, instrucciones de desplazamiento de datos, instrucciones de transferencia de datos, instrucciones de com-paración de datos, instrucciones de conversión de datos, instrucciones de cálculo BCD, instrucciones de cálculo binario, ins-trucciones matemáticas de símbolos, instrucciones de operaciones lógicas, subrutinas, instrucciones especiales, instruccio-nes de red, instrucciones de comunicaciones serie, instrucciones de E/S avanzadas e instrucciones de unidad de E/S especial.Algunas instrucciones, como por ejemplo instrucciones de Temporizador y Contador, se utilizan para controlar la ejecuciónde otras instrucciones, por ejemplo, un indicador de TIM completada se puede utilizar para poner a ON un bit cuando hayatranscurrido el tiempo especificado. Aunque estas otras instrucciones se utilizan frecuentemente para controlar bits de salida através de la instrucción de Salida, también se pueden utilizar para controlar la ejecución de otras instrucciones. Las instruccio-nes de salida utilizadas en los ejemplos de este manual se pueden sustituir generalmente por otras instrucciones paramodificarel programa para aplicaciones específicas distintas del control directo de bits de salida.

5-1 Notación 133. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-2 Formato de instrucciones 133. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-3 Areas de datos, valores de definidor e indicadores 133. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-4 Instrucciones diferenciadas 134. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-5 Instrucciones de expansión 136. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-6 Codificación del resto de instrucciones 137. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-7 Tablas de instrucciones 139. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-7-1 Códigos de función 139. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-7-2 Lista alfabética por nemónico 140. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-8 Instrucciones de diagrama de relés 144. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-8-1 LOAD, LOAD NOT, AND, AND NOT, OR y OR NOT 144. . . . . . . . . . . . . . . . . . . . . . . . .5-8-2 AND LOAD y OR LOAD 144. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-9 Instrucciones de control de bit 145. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-9-1 OUTPUT y OUTPUT NOT -- OUT y OUT NOT 145. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-9-2 Detección de flancos -- DIFU(013) y DIFD(014) 145. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-9-3 SET y RESET -- SET y RSET 147. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-9-4 BIESTABLE -- KEEP(011) 148. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-9-5 BIT TEST: TST(350) y TSTN(351) 149. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-10 INTERLOCK e INTERLOCK CLEAR -- IL(002) e ILC(003) 150. . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-11 SALTO y FIN DE SALTO -- JMP(004) y JME(005) 152. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-12 END -- END(001) 153. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-13 NO OPERACIÓN -- NOP(000) 153. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-14 Instrucciones de temporizador y contador 153. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-14-1 TEMPORIZADOR -- TIM 154. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-14-2 TEMPORIZADOR DE ALTA VELOCIDAD -- TIMH(015) 158. . . . . . . . . . . . . . . . . . . . . .5-14-3 TEMPORIZADOR TOTALIZADOR -- TTIM(087) 159. . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-14-4 CONTADOR -- CNT 160. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-14-5 CONTADOR REVERSIBLE -- CNTR(012) 163. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-15 Desplazamiento de datos 165. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-15-1 REGISTRO DE DESPLAZAMIENTO -- SFT(010) 165. . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-15-2 REGISTRO DE DESPLAZAMIENTO REVERSIBLE -- SFTR(084) 167. . . . . . . . . . . . . . .5-15-3 DESPLAZAMIENTO ARITMÉTICO DE BITS A IZQUIERDA -- ASL(025) 168. . . . . . . .5-15-4 DESPLAZAMIENTO ARITMÉTICO DE BITS A DERECHA -- ASR(026) 169. . . . . . . . . .5-15-5 ROTAR A IZQUIERDA -- ROL(027) 169. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-15-6 ROTAR A DERECHA -- ROR(028) 170. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-15-7 DESPLAZAMIENTO DE DÍGITO A LA IZQUIERDA -- SLD(074) 170. . . . . . . . . . . . . . .5-15-8 DESPLAZAMIENTO DE DÍGITO A LA DERECHA -- SRD(075) 171. . . . . . . . . . . . . . . . .5-15-9 DESPLAZAMIENTO DE CANAL -- WSFT(016) 171. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-15-10 REGISTRO DE DESPLAZAMIENTO ASÍNCRONO -- ASFT(017) 172. . . . . . . . . . . . . . . .

5-16 Instrucciones de transferencia de datos 173. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-1 MOVER -- MOV(021) 173. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-2 MOVER NEGADO -- MVN(022) 174. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-3 RELLENAR BLOQUE -- BSET(071) 174. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 138: C200HALPHA Manual Programacion

132

5-16-4 TRANSFERENCIA DE BLOQUE -- XFER(070) 175. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-5 INTERCAMBIO DE DATOS -- XCHG(073) 176. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-6 DISTRIBUCIÓN DE DATOS -- DIST(080) 176. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-7 RECOGIDA DE DATOS -- COLL(081) 178. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-8 MOVER BIT -- MOVB(082) 180. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-9 MOVER DÍGITO -- MOVD(083) 181. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-10 TRANSFERIR BITS -- XFRB(062)) 182. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-11 TRANSFERIR BLOQUE EM -- XFR2(----) 183. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-12 TRANSFERIR BANCO EM -- BXF2(----) 184. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-16-13 TRANSFERIR BANCO DE EM -- BXFR(125) 185. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-17 Instrucciones de comparación 186. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17-1 COMPARACIÓN DE BLOQUE -- MCMP(019) 186. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17-2 COMPARAR -- CMP(020) 187. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17-3 COMPARAR DOS A DOS -- CMPL(060) 189. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17-4 COMPARACIÓN DE DATO CON TABLA DE RANGOS -- BCMP(068) 191. . . . . . . . . . .5-17-5 COMPARAR TABLA -- TCMP(085) 192. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17-6 COMPARAR RANGO DE ÁREA -- ZCP(088) 193. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-17-7 COMPARACIÓN DE RANGO DOS A DOS -- ZCPL(116) 194. . . . . . . . . . . . . . . . . . . . . . .5-17-8 COMPARACIÓN BINARIA CON SIGNO -- CPS(114) 195. . . . . . . . . . . . . . . . . . . . . . . . . .5-17-9 COMPARACIÓN BINARIA DOS A DOS CON SIGNO -- CPSL(115) 196. . . . . . . . . . . . . .5-17-10 Instrucciones de compación de entrada (300 a 328) 296. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-18 Instrucciones de conversión 200. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-1 BCD a BINARIO -- BIN(023) 200. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-2 CONVERSIÓN DE BCD A BINARIO DE DOS CANALES -- BINL(058) 200. . . . . . . . . . .5-18-3 BINARIO A BCD -- BCD(024) 201. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-4 CONVERSIÓN DE BINARIO A BCD DE DOS CANALES -- BCDL(059) 201. . . . . . . . . .5-18-5 HORAS A SEGUNDOS -- SEC(065) 202. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-6 SEGUNDOS A HORAS -- HMS(066) 203. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-7 DECODIFICADOR 4 A 16/8 A 256 -- MLPX(076) 204. . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-8 CODIFICADOR 16 A 4/256 A 8 -- DMPX(077) 207. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-9 DECODIFICADOR DE 7 SEGMENTOS -- SDEC(078) 210. . . . . . . . . . . . . . . . . . . . . . . . .5-18-10 CONVERSIÓN A ASCII -- ASC(086) 213. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-11 CONVERSIÓN DE ASCII A HEXADECIMAL -- HEX(162) 214. . . . . . . . . . . . . . . . . . . . .5-18-12 FUNCIÓN ESCALA -- SCL(194) 217. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-13 COLUMNA A LÍNEA -- LINE(063) 218. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-14 LÍNEA A COLUMNA -- COLM(064) 219. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-15 COMPLEMENTO A 2 -- NEG(160) 220. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-18-16 COMPLEMENTO A 2 DE DOS CANALES -- NEGL(161) 221. . . . . . . . . . . . . . . . . . . . . . .

5-19 Instrucciones matemáticas de símbolos 223. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-19-1 Suma binaria: +(400)/+L(401)/+C(402)/+CL(403) 223. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-19-2 Suma BCD: +B(404)/ +BL(405)/+BC(406)/+BCL(407) 225. . . . . . . . . . . . . . . . . . . . . . . . . .5-19-3 Resta binaria: --(410)/ --L(411)/--C(412)/--CL(413) 227. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-19-4 Resta BCD: --B(414)/ --BL(415)/--BC(416)/--BCL(417) 231. . . . . . . . . . . . . . . . . . . . . . . . . .5-19-5 Multiplicación binaria: *(420)/ *L(421)/*U(422)/*UL(423) 235. . . . . . . . . . . . . . . . . . . . . . .5-19-6 Multiplicación BCD: *B(424)/ *BL(425) 237. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-19-7 División binaria: /(430)/ /L(431)//U(432)//UL(433) 239. . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-19-8 División BCD: /B(434)/ /BL(435) 241. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-20 Instrucciones de cálculo BCD 242. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-1 INCREMENTO -- INC(038) 242. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-2 DECREMENTAR -- DEC(039) 243. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-3 ACARREO A ON -- STC(040) 243. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-4 ACARREO A OFF -- CLC(041) 243. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-5 SUMA BCD -- ADD(030) 244. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-6 SUMA BCD DOBLE -- ADDL(054) 245. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-7 RESTA BCD -- SUB(031) 246. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-8 RESTA BCD DOBLE -- SUBL(055) 247. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-9 MULTIPLICACIÓN BCD -- MUL(032) 249. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-10 MULTIPLICACIÓN BCD DOBLE -- MULL(056) 250. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-11 DIVISIÓN BCD -- DIV(033) 251. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-12 DIVISIÓN BCD DOBLE -- DIVL(057) 252. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-13 DIVISIÓN EN COMA FLOTANTE -- FDIV(079) 253. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-14 RAÍZ CUADRADA -- ROOT(072) 255. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 139: C200HALPHA Manual Programacion

133

5-20 Instrucciones de cálculo binario 257. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-1 SUMA BINARIA -- ADB(050) 257. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-2 RESTA BINARIA -- SBB(051) 259. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-3 MULTIPLICACIÓN BINARIA -- MLB(052) 261. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-4 DIVISIÓN BINARIA -- DVB(053) 262. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-5 DOBLE SUMA BINARIA -- ADBL(480) 263. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-6 DOBLE RESTA BINARIA -- SBBL(481) 265. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-7 MULTIPLICACIÓN BINARIA CON SIGNO -- MBS(484) 267. . . . . . . . . . . . . . . . . . . . . . .5-20-8 DOBLE MULTIPLICACIÓN BINARIA CON SIGNO -- MBSL(482) 268. . . . . . . . . . . . . . .5-20-9 DIVISIÓN BINARIA CON SIGNO -- DBS(485) 269. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-20-10 DOBLE DIVISIÓN BINARIA CON SIGNO -- DBSL(483) 270. . . . . . . . . . . . . . . . . . . . . . .

5-21 Instrucciones matemáticas especiales 271. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21-1 BUSCAR MÁXIMO -- MAX(182) 271. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21-2 BUSCAR MÍNIMO -- MIN(183) 272. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21-3 VALOR MEDIO -- AVG(195) 273. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21-4 SUMA -- SUM(184) 274. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21-5 PROCESOS ARITMÉTICOS -- APR(069) 276. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-21-6 CONTROL PID -- PID(190) 279. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-22 Instrucciones lógicas 286. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-22-1 COMPLEMENTO -- COM(029) 286. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-22-2 PRODUCTO LÓGICO -- ANDW(034) 287. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-22-3 SUMA LÓGICA -- ORW(035) 287. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-22-4 SUMA LÓGICA EXCLUSIVA -- XORW(036) 288. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-22-5 SUMA LÓGICA EXCLUSIVA NEGADA -- XNRW(037) 289. . . . . . . . . . . . . . . . . . . . . . . .

5-23 Subrutinas y control de interrupción 289. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23-1 Subrutinas 289. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23-2 Interrupciones 290. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23-3 LLAMADA A SUBRUTINA -- SBS(091) 294. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23-4 PRINCIPIO Y FINAL DE SUBRUTINA -- SBN(092)/RET(093) 295. . . . . . . . . . . . . . . . . .5-23-5 MACRO -- MCRO(099) 296. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-23-6 CONTROL DE INTERRUPCIÓN -- INT(089) 298. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-24 Instrucciones de paso 302. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-24-1 DEFINICIÓN DE PASO y COMIENZO DE PASO -- STEP(008)/SNXT(009) 302. . . . . . . .

5-25 Instrucciones especiales 311. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-1 ALARMA DE ERROR, RESET -- FAL(006)

ALARMA DE ERROR FATAL -- FALS(007) 311. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-2 TIEMPO DE CICLO -- SCAN(018) 312. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-3 SEGUIMIENTO DE DATOS -- TRSM(045) 312. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-4 VISUALIZACIÓN DE MENSAJE -- MSG(046) 314. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-5 VISUALIZAR MENSAJE DE 32 CARACTERES -- LMSG(047) 315. . . . . . . . . . . . . . . . . .5-25-6 MODO TERMINAL -- TERM(048) 316. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-7 REFRESCO DE TEMPORIZADOR DE GUARDA -- WDT(094) 316. . . . . . . . . . . . . . . . . .5-25-8 REFRESCO DE E/S -- IORF(097) 317. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-9 REFRESCO DE E/S DE ALTA DENSIDAD GRUPO 2 -- MPRF(061) 318. . . . . . . . . . . . . .5-25-10 CONTADOR DE BITS -- BCNT(067) 318. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-11 CÁLCULO DE CHECKSUM -- FCS(180) 319. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-12 DETECCIÓN DE FALLOS -- FPD(269) 320. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-13 BÚSQUEDA DE DATOS -- SRCH(181) 324. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-14 LECTURA DE EXPANSIÓN DE DM -- XDMR(280) 325. . . . . . . . . . . . . . . . . . . . . . . . . . .5-25-15 DIRECCIONAMIENTO INDIRECTO DE EM -- IEMS(----) 326. . . . . . . . . . . . . . . . . . . . . .5-25-16 SELECCIONAR BANCO DE EM -- EMBC(281) 327. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-26-17 MACRO DE TARJETA PCMCIA -- CMCR(261) 328. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-26 Instrucciones de red 332. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-26-1 ENVIAR A RED -- SEND(090) 332. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-26-2 RECIBIR DE RED -- RECV(098) 334. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-26-3 Sobre comunicaciones de red 336. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-27 Instrucciones de comunicaciones serie 339. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-27-1 RECIBIR DATOS -- RXD(235) 339. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-27-2 TRANSMITIR DATOS -- TXD(236) 341. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-27-3 CAMBIAR SETUP DE RS--232C -- STUP(237) 343. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-27-4 MACRO DE PROTOCOLO -- PMCR(260) 344. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 140: C200HALPHA Manual Programacion

134

5-28 Instrucciones avanzadas de E/S 345. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-28-1 SALIDA PARA DISPLAY DE 7-SEGMENTOS -- 7SEG(214) 345. . . . . . . . . . . . . . . . . . . .5-28-2 ENTRADA DE DÉCADAS DE SELECCIÓN -- DSW(210) 348. . . . . . . . . . . . . . . . . . . . . .5-28-3 ENTRADA DE TECLADO HEXADECIMAL -- HKY(212) 351. . . . . . . . . . . . . . . . . . . . . .5-28-4 ENTRADA DE TECLADO DECIMAL -- TKY(211) 354. . . . . . . . . . . . . . . . . . . . . . . . . . . .5-28-5 ENTRADA DE MATRIZ -- MTR(213) 356. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-29 Instrucciones de unidad de E/S especial 358. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5-29-1 LECTURA DE UNIDAD DE E/S ESPECIAL -- IORD(222) 358. . . . . . . . . . . . . . . . . . . . . .5-29-2 ESCRITURA DE UNIDAD DE E/S ESPECIAL -- IORW(223) 359. . . . . . . . . . . . . . . . . . . .

Page 141: C200HALPHA Manual Programacion

135

5-1 NotaciónEn el resto de este manual, todas las instrucciones serán referenciadas por susnemónicos. Por ejemplo, la instrucción OUTPUT se denominará OUT; la ANDLOAD, AND LD. Consultar Apéndice B Instrucciones de Programación.Si una instrucción tiene asignado un código de función, se dará entre paréntesisdespués del nemónico. Estos códigos de función, números decimales de 2 dígi-tos, se utilizan para introducir la mayoría de las instrucciones en la CPU. En elApéndice B se da una tabla de instrucciones ordenadas por código de función.Una @ delante del nemónico indica la versión diferenciada de esa instrucción.Las instrucciones diferencidas se explican en Sección 5-4.

5-2 Formato de instrucciónLa mayoría de instrucciones tienen asociados uno o más operandos. Los ope-randos indican o suministran los datos sobre los que se ha de ejecutar una ins-trucción. Algunas veces éstos se escriben como valores numéricos reales(constantes), pero normalmente se utilizan las direcciones de canales o bits quelos contienen. Un bit cuya dirección se designa como operando se denomina bitoperando; de forma similar sucede con los canales operando. En algunas ins-trucciones, la dirección del canal designado en una instrucción, indica el pri-mero de varios canales que contienen los datos deseados.Toda instrucción necesita uno o más canales en la Memoria de Programa. Elprimer canal es el canal de instrucción, que especifica la instrucción y contienecualquier definidor (descrito a continuación) o bit operando necesario para lainstrucción. Otros operandos requeridos por la instrucción están contenidos encanales siguientes, un operando por canal. Algunas instrucciones requieren dehasta cuatro canales.Un definidor es un operando asociado con una instrucción y contenido en elmismo canal que la instrucción. Estos operandos definen la instrucción más queexpresar qué datos debe utilizar. Ejemplos de definidores son los números deTC, que se utilizan en las instrucciones de temporizador o contador, así comonúmeros de salto (que definen qué instrucción de salto está emparejada conqué instrucción de Fin de Salto). Los operandos de bit también están contenidosen el mismo canal que la instrucción, aunque no se consideran definidores.

5-3 Areas de datos, valores de definidor e indicadoresEn esta sección, la descripción de cada instrucción incluye su símbolo de dia-grama de relés, las áreas de datos que se pueden utilizar para sus operandos ylos valores que se pueden utilizar como definidores. Los detalles para las áreasde datos también se especifican por nombre de operando y el tipo de datosnecesarios para cada operando (es decir, canal o bit y para canales, hexadeci-mal o BCD).No necesariamente todas las direcciones en las áreas especificadas son permi-tidas para un operando, es decir, si un operando necesita dos canales, el últimocanal en un área de datos no se puede designar como el primer canal del ope-rando, dado que todos los canales para un operando deben estar dentro de lamisma área de datos. En una subsección Limitaciones se dan otras limitacionesespecíficas. Consultar Sección 3 Areas de Memoria sobre convenciones dedireccionamiento y las direcciones de indicadores y bits de control.

AtenciónLas áreas IR y SR se consideran como áreas de datos separadas. Que un ope--rando tenga acceso a un área no significa que el mismo operando tenga nece-sariamente acceso a la otra área. La frontera entre las áreas IR y SR se puedecruzar para un operando, es decir, el último bit en el área de IR se puede especi--ficar para un operando que necesite más de un canal siempre que el área de SResté también permitida para ese operando.

La subsección Indicadores lista indicadores que son afectados por la ejecuciónde una instrucción. Estos indicadores incluyen los siguientes indicadores delárea de SR.

Areas de datos, valores de definidor e indicadores Sección 5-3

Page 142: C200HALPHA Manual Programacion

136

Abreviación Nombre Bit

ER Indicador de error de ejecución de instrucción 25503

CY Indicador de acarreo 25504

GR Indicador de Mayor que 25505

EQ Indicador de Igual 25506

LE Indicador de Menor que 25507

N Indicador de Negativo 25402

OF Indicador de Overflow (rebose por exceso) 25404

UF Indicador de Underflow (rebose por defecto) 25405

ER es el indicador más utilizado habitualmente para monitorizar una ejecuciónde instrucción. Cuando ER se pone a ON, indica que se ha producido un error alintentar ejecutar la instrucción actual. La subsección Indicadores de cadainstrucción lista posibles razones para que el indicador ER se ponga a ON. ERse pondrá en ON si los operandos no se introducen correctamente. Las instruc-ciones no se ejecutan cuando ER está en ON. En Apéndice C Operación de indi-cadores de error y aritméticos se da una tabla de instrucciones e indicadoresasociados.

Cuando para un operando se especifica el área de DM, se puede utilizar unadirección indirecta. Para diferenciar el direccionamiento de DM indirecto secoloca un asterisco delante de DM: *DM.Cuando se especifica una dirección indirecta de DM, el canal DM designadocontendrá la dirección del canal DM que contiene el dato que se utilizará comooperando de la instrucción. Si, por ejemplo, se designa *DM 0001 como primeroperando y LR 00 como segundo operando de MOV(021), los contenidos deDM 0001 son 1111 y DM 1111 contiene 5555, el valor 5555 será movido a LR 00.

MOV(021)

!DM 0001

LR 00

Canal ContenidoDM 0000 4C59DM 0001 1111DM 0002 F35A

DM 1111 5555DM 1113 2506DM 1114 D541

5555 movidoa LR 00.

IndicaDM 1111.

Direcciónindirecta

Cuando se utilice direccionamiento indirecto, la dirección del canal deseadodebe estar en BCD y debe especificar un canal comprendido en el área de DM.En el ejemplo anterior, el contenido de *DM 0000 tendría que estar en BCDentre 0000 y 6655.La instrucción IEMS(----) se puede utilizar para cambiar el destino de *DM desdeel área de DM a uno de los bancos del área de EM. Consultar 5-26-15 DIREC-CIONAMIENTO INDIRECTO DE EM -- IEMS(----) para más información.

Aunque la mayoría de las veces se utilizan como operandos las direcciones delárea de datos, muchos operandos y todos los definidores se introducen comoconstantes. El rango de valor disponible para un definidor u operando concretodepende de la instrucción particular que lo utilice. Las constantes deben escri-birse en la forma requerida por la instrucción, en BCD o en hexadecimal.

5-4 Instrucciones diferenciadasLa mayoría de las instrucciones están disponibles en forma diferenciada y enforma no diferenciada. Las instrucciones diferenciadas se distinguen por una @delante del nemónico de la instrucción.Una instrucción no diferenciada se ejecuta cada vez que es escaneada siempreque su condición de ejecución sea ON. Una instrucción diferenciada se ejecuta

Direccionamiento indirecto

Designación de constantes

Instrucciones diferenciadas Sección 5-4

Page 143: C200HALPHA Manual Programacion

137

sólo una vez después de que su condición de ejecución pase de OFF a ON. Si lacondición de ejecución no ha cambiado o ha cambiado de ON a OFF desde laúltima vez que fue escaneada la instrucción, ésta no se ejecutará. Los dos ejem-plos siguientes muestran cómo funciona con MOV(021) y @MOV(021), las cua-les se utilizan para mover los datos de la dirección indicada por el primer ope-rando a la dirección designada por el segundo.

00000

MOV(021)

HR 10

DM 0000Diagrama A

00000

@MOV(021)

HR 10

DM 0000Diagrama B

Dirección Instrucción Operandos

Dirección Instrucción Operandos

00000 LD 0000000001 MOV(021)

HR 10DM 0000

00000 LD 0000000001 @MOV(021)

HR 10DM 0000

En el diagrama A, la MOV(021) no diferenciada moverá el contenido de HR 10 aDM 0000 siempre que se escanee con 00000. Si el tiempo de scan es 80 ms y00000 permanece en ON durante 2.0 segundos, esta operación de mover serealizará 25 veces y sólo se conservará en DM 0000 el último valor movido.En el diagrama B, la instrucción diferenciada @MOV(021) moverá el contenidode HR 10 a DM 0000 sólo una vez después de que 00000 se ponga en ON. Aun-que 00000 permanezca en ON durante 2.0 segundos con el mismo tiempo descan de 80 ms, la operación mover sólo se ejecutará una vez durante el primerscan en el que 00000 cambie de OFF a ON. Dado que el contenido de HR 10podría muy bien cambiar durante los 2 segundos mientras 00000 está en ON, elcontenido final de DM 0000 después de 2 segundos podría ser diferente depen-diendo si se utiliza MOV(021) o @MOV(021).Todos los operandos, símbolos de diagramas de relés y otras especificacionespara instrucciones son las mismas independientemente de si se utiliza la formadiferenciada o no diferenciada de una instrucción. Para escribirlas, se utilizanlos mismos códigos de función, pero se introduce NOT después del código defunción para designar la forma diferenciada de una instrucción. La mayoría,pero no todas, de las instrucciones tiene formas diferenciada.Consultar INTERLOCK e INTERLOCK CLEAR -- IL(002) e ILC(003) sobre efec-tos de enclavamientos en instrucciones diferenciadas.El C200HX/HG/HE también dispone de instrucciones diferenciadas: DIFU(013)y DIFD(014). DIFU(013) opera igual que una instrucción diferenciada, pero seutiliza para poner a ON un bit durante un scan. DIFD(014) también pone a ON unbit durante un scan, pero cuando la condición de ejecución ha cambiado de ONa OFF. Consultar DIFFERENTIATE UP y DOWN - DIFU(013) y DIFD(014) parainformación más detallada.

Nota No utilizar SR 25313 y SR 25315 para instrucciones diferenciadas. Estos bits nocambian nunca de estado y no lanzarán instrucciones diferenciadas.

Instrucciones diferenciadas Sección 5-4

Page 144: C200HALPHA Manual Programacion

138

5-5 Instrucciones de expansiónLas instrucciones de expansión son un grupo de instrucciones que no tienencódigos de función fijos. Los códigos de función seleccionados aparte para lasinstrucciones de expansión se pueden reasignar si se desea a cualquiera de lasinstrucciones de expansión. En la siguiente tabla se indican los códigos de fun-ción asignados por defecto a las instrucciones de expansión.A una instrucción de expansión se puede asignar uno de los códigos de funcióndisponibles utilizando la operación de asignaciones de código de función deinstrucción de expansión de la Consola de Programación. Estos códigos de fun-ción son: 017, 018, 019, 047, 048, 060 a 069, 087, 088, 089, 114, 115, 116, 160,161, 162, 180 a 184, 190, 194, 195, 210 a 214, 222, 223, 235, 236, 237, 260,261, 269, 280, y 281. Consultar 7-1-14 Asignación de código de función deinstrucción de expansión.

Código Nemónico Nombre Pág.

017 (@)ASFT REGISTRO DE DESPLAZAMIENTOASÍNCRONO

174

018 (@)SCAN TIEMPO DE CICLO 314

019 (@)MCMP COMPARACIÓN DE BLOQUE 188

047 (@)LMSG MENSAJE DE 32 CARACTERES 317048 (@)TERM MODO TERMINAL 318

060 CMPL COMPARAR DOS A DOS 191

061 (@)MPRF REFRESCO DE E/S DE ALTA DENSIDADGRUPO 2

320

062 (@)XFRB TRANSFERIR BITS 184

063 (@)LINE COLUMNA A LÍNEA 220

064 (@)COLM LÍNEA A COLUMNA 221

065 (@)SEC HORAS A SEGUNDOS 204

066 (@)HMS SEGUNDOS A HORAS 205

067 (@)BCNT CONTADOR DE BITS 320

068 (@)BCMP COMPARAR BLOQUE 193

069 (@)APR PROCESOS ARITMÉTICOS 278

087 TTIM TEMPORIZADOR TOTALIZADOR 161088 ZCP COMPARAR RANGO DE ÁREA 195

089 (@)INT CONTROL DE INTERRUPCIÓN 300

114 CPS COMPARACIÓN BINARIA CON SIGNO 197

115 CPSL COMPARACIÓN BINARIA CON SIGNO DOSA DOS

198

116 ZCPL COMPARACIÓN DE RANGO DOS A DOS 196

160 (@)NEG COMPLEMENTO A 2 222

161 (@)NEGL COMPLEMENTO A 2 DE DOS CANALES 223

162 (@)HEX CONVERSIÓN ASCII-A-HEXADECIMAL 216

180 (@)FCS CÁLCULO DE FCS 321

181 (@)SRCH BÚSQUEDA DE DATOS 326

182 (@)MAX BUSCAR MÁXIMO 273

183 (@)MIN BUSCAR MÍNIMO 274

184 (@)SUM CALCULAR SUM 276

190 PID CONTROL PID 281

194 (@)SCL ESCALA 219

195 AVG VALOR MEDIO 275210 DSW ENTRADA DE DÉCADAS DE SELECCIÓN 350

211 (@)TKY ENTRADA DE TECLADO DECIMAL 356

212 HKY ENTRADA DE TECLADO HEXADECIMAL 353

213 MTR ENTRADA DE MATRIZ 358

214 7SEG SALIDA PARA DISPLAY DE 7 SEGMENTOS 347

222 (@)IORD LEER UNIDAD DE E/S ESPECIAL 360

Instrucciones de expansión Sección 5-5

Page 145: C200HALPHA Manual Programacion

139

Código Pág.NombreNemónico

223 (@)IOWR ESCRIBIR UNIDAD DE E/S ESPECIAL 361

235 (@)RXD RECIBIR 341

236 (@)TXD TRANSMITIR 343

237 (@)STUP CAMBIAR CONFIGURACIÓN DE RS--232C 345

260 (@)PMCR MACRO DE PROTOCOLO 346

269 FPD DETECCIÓN DE FALLOS 322

280 (@)XDMR LEER DM DE EXPANSIÓN 327

281 (@)EMBC SELECCIONAR BANCO EM 329

También se pueden utilizar las siguientes instrucciones de expansión si se asig-nan a cualquiera de los códigos de función anteriores para sustituir a las instruc-ciones que vienen por defecto.

Nemónico Nombre Pág.

(@)ADBL DOBLE SUMA BINARIA 265

(@)SBBL DOBLE RESTA BINARIA 267(@)MBSL DOBLE MULTIPLICACIÓN BINARIA CON

SIGNO270

(@)DBSL DOBLE DIVISIÓN BINARIA CON SIGNO 272

(@)MBS MULTIPLICACIÓN BINARIA CON SIGNO 269

(@)DBS DIVISIÓN BINARIA CON SIGNO 271

(@)BXF2 TRANSFERIR BANCO EM 186

(@)IEMS DIRECCIONAMIENTO INDIRECTO DE EM 328

(@)XFR2 TRANSFERIR BLOQUE DE EM 185

5-6 Codificación del resto de instruccionesEn la Sección 4 Programación en Diagrama de Relés se describe la escritura decódigo nemónico para instrucciones de diagramas de relés. Convertir la infor-mación en símbolo de diagrama de relés para el resto de instrucciones sigue elmismo modelo, como se describe a continuación y no se especifica para cadainstrucción individualmente.El primer canal de cualquier instrucción define la instrucción y proporciona losdefinidores. Si la instrucción necesita sólo un operando de bit sin definidor, el bitoperando se coloca también en la misma línea como el nemónico. El resto deoperandos se colocan en líneas después de la línea de instrucción, un ope-rando por línea y en el mismo orden en que aparecen en el símbolo de diagramade relés para la instrucción.Las columnas de dirección e instrucción de la tabla de código nemónico se lle-nan sólo para el nombre de la instrucción. Para todas las otras líneas, las doscolumnas de la izquierda se dejan en blanco. Si la instrucción no necesita defini-dor o operando de bit, la columna de datos se deja en blanco para la primeralínea. Es muy útil cruzar con una línea, las columnas o casillas que no hay querellenar, para comprobar de un vistazo si se ha omitido alguna dirección.Si se utiliza una dirección de IR o SR en la columna de datos, la parte izquierdade la columna se deja en blanco. Si se utiliza cualquier otra área de datos, laabreviatura del área se coloca en la parte izquierda y la dirección en la derecha.Si se introduce una constante, el símbolo de número (#) se coloca en la parteizquierda de la columna de datos y el número a introducir en la parte derecha.Los números introducidos como definidores en el canal de instrucción no nece-sitan el símbolo de número en la parte derecha. Los bits TC, una vez definidoscomo un contador o temporizador, toma un prefijo TIM (temporizador) o CNT(contador).Cuando se codifica una instrucción que tiene un código de función, verificar quese escribe el código de función, el cual será necesario cuando se introduzca lainstrucción vía consola de programación. Verificar también que se designa lainstrucción diferenciada con el símbolo @.El siguiente diagrama y código nemónico correspondiente ilustra los puntosanteriormente descritos.

Instrucciones de diagrama de relés Sección 5--8

Page 146: C200HALPHA Manual Programacion

140

Direc. Instrucción Dato

00000 LD 00000

00001 AND 00001

00002 OR 00002

00003 DIFU(013) 21600

00004 LD 00100

00005 AND NOT 00200

00006 LD 01001

00007 AND NOT 01002

00008 AND NOT LR 6300

00009 OR LD ----

00010 AND 21600

00011 BCNT(067) ----

# 0001

004

HR 00

00012 LD 00005

00013 TIM 000

# 0150

00014 LD TIM 000

00015 MOV(021) ----

HR 00

LR 00

00016 LD HR 0015

00017 OUT NOT 00500

00100 00200

DIFU(013) 21600

00500

BCNT(067)

#0001

004

HR 00

MOV(021)

HR 00

LR 00

01001 01002 LR 6300

TIM 000

21600

00002

00005

HR 0015

00000 00001

TIM 000

#0150

Si una instrucción de la parte derecha necesita varias líneas de instrucción (porejemplo KEEP(011)), todas las líneas de la instrucción se escriben antes de lainstrucción de la derecha. Cada una de las líneas para la instrucción codificada,comenzando con LD o LD NOT, para formar ”bloques lógicos” que son combina-dos por la instrucción de la derecha. Se muestra a continuación un ejemplo conla instrucción SFT(010).

I

P

R

SFT(010)

HR 00

HR 00

Address Instruction Data

00000 LD 00000

00001 AND 00001

00002 LD 00002

00003 LD 00100

00004 AND NOT 00200

00005 LD 01001

00006 AND NOT 01002

00007 AND NOT LR 6300

00008 OR LD ----

00009 AND 22500

00010 SFT(010) ----

HR 00

HR 00

00011 LD HR 0015

00012 OUT NOT 00500

00100 00200

00500

01001 01002 LR 6300

22500

00002

HR 0015

00000 00001

Cuando haya terminado de codificar el programa, verificar que se coloca en laúltima dirección la instrucción END(001).

Líneas de instrucciónmúltiple

END(001)

Instrucciones de diagrama de relés Sección 5--8

Page 147: C200HALPHA Manual Programacion

Tablas de instrucciones Sección 5-7

141

5-7 Tablas de instruccionesEsta sección contiene las tablas de las instrucciones disponibles en el C200HX/HG/HE. La primera tabla se puede utilizar para encontrar las instrucciones porcódigo de función. La segunda tabla para encontrarlas por el nemónico. Enambas, el símbolo @ indica instrucciones con formas diferenciadas.

5-7-1 Códigos de funciónLa siguiente tabla lista las instrucciones que tienen códigos de función fijos y lasinstrucciones que tienen código de función por defecto. Cada instrucción selista por nemónico y por nombre de instrucción. Utilizar los números en lacolumna de la izquierda como dígitos de la izquierda y el número en la fila decabecera como el dígito de la derecha del código de función.

Dígit.i

Dígito derechagizq. 0 1 2 3 4 5 6 7 8 9

00 NOPNOOPERACIÓN

ENDEND

ILINTERLOCK

ILCINTERLOCKCLEAR

JMPSALTO

JMEFIN DESALTO

(@) FAALARMA YRESET DEFALLO

FALSALARMA DEERRORFATAL

STEPDEFINICIÓNDE PASO

SNXTINICIO DEPASO

01 SFTREGISTRODE DESPLA-ZAMIENTO

KEEPBIESTABLE

CNTRCONTADORREVERSI-BLE

DIFUDETECTARFLANCO DESUBIDA

DIFDDETECTARFLANCO DEBAJADA

TIMHTEMPORIZA-DOR DEALTA VEL.

(@) WSFTDESPLAZA-MIENTO DECANAL

(@) ASFTREGISTRODESPL.ASÍNCRONO

(@) SCANTIEMPO DECICLO

(@) MCMPCOMPARA-CIÓN MÚLTI-PLE

02 CMPCOMPARAR

(@) MOVMOVER

(@) MVNMOVERNEGADO

(@) BINBCD A BINA-RIO

(@) BCDBINARIO ABCD

(@) ASLDESPLAZA-MIENTO AIZQUIERDA

(@) ASRDESPLAZA-MIENTO ADERECHA

(@) ROLROTAR AIZQUIERDA

(@) RORROTAR ADERECHA

(@) COMCOMPLE-MENTO

03 (@) ADDSUMA BCD

(@) SUBRESTA BCD

(@) MULMULTIPL.BCD

(@) DIVDIVISIÓN ENBCD

(@) ANDWPRODUCTOLÓGICO

(@) ORWSUMA LÓGI-CA

(@) XORWSUMAEXCLUSIVA

(@) XNRWSUMAEXCLUSIVANEGADA

(@) INCINCRE-MENTO

(@) DECDECRE-MENTO

04 (@) STCACARREO AON

(@) CLCACARREO AOFF

--- --- --- TRSMSEGUI-MIENTO DEDATOS

(@) MSGVISUALIZARMENSAJE

(@) LMSGMENSAJELARGO

(@) TERMMODO TER-MINAL

---

05 (@) ADBSUMA BINA-RIA

(@) SBBRESTA BINA-RIA

(@) MLBMULTIPLIC.BINARIA

(@) DVBDIVISIÓNBINARIA

(@) ADDLSUMADOBLE BCD

(@) SUBLRESTA BCDDOBLE

(@) MULLMULTIPLICA-CIÓN BCDDOBLE

(@) DIVLDIVISIÓNBCD DOBLE

(@) BINLCONVER-SIÓN BCD ABINARIO DEDOSCANALES

(@) BCDLCONVER-SIÓN BINA-RIO A BCDDE DOSCANALES

06 CMPLCOMPARA-CIÓN DOBLE

(@) MPRFREFRESCOE/S ALTADENSIDADGRUPO 2

(@) XFRBTRANSFE--RIR BITS

(@) LINECOLUMNA ALÍNEA

(@) COLMLÍNEA A CO-LUMNA

(@) SECHORAS ASEGUNDOS

(@) HMSSEGUNDOSA HORAS

(@) BCNTCONTADORDE BIT

(@) BCMPCOMPARARBLOQUE

(@) APRPROCESOSARITMÉTI-COS

07 (@) XFERTRANS-FERIR BLO-QUE

(@) BSETRELLENARBLOQUE

(@) ROOTRAÍZ CUA-DRADA

(@) XCHGINTERCAM-BIO DEDATOS

(@) SLDDESPLAZ.UN DÍGITO ALAIZQUIERDA

(@) SRDDESPLAZ.UN DÍGITO ALA DERE-CHA

(@) MLPXDECODIFI-CADOR 4 A16

(@) DMPXCODIFICA-DOR 16 A 4

(@) SDECDECODIFI-CADOR DE 7SEGMEN-TOS

(@) FDIVDIVISIÓNCOMA FLO-TANTE

08 (@) DISTDISTRIBU-CIÓN DEDATOS

(@) COLLRECOGIDADE DATOS

(@) MOVBMOVER BIT

(@) MOVDMOVERDÍGITO

(@) SFTRREGISTRODE DESPLA-ZAM.REVERSI-BLE

(@) TCMPCOMPARARTABLA

(@) ASCCONVERTIRA ASCII

TTIMCONTADORTOTALIZA-DOR

ZCPCOMPARARRANGO

(@) INTCONTROLDE INTER-RUPCIÓN

09 (@) SENDENVIAR ARED

(@) SBSLLAMADA ASUBRUTINA

SBNPRINCIPIODE SUBRU-TINA

RETFIN DE SUB-RUTINA

(@) WDTREFRESCOTEMPORIZA-DOR DEGUARDA

--- --- (@) IORFREFRESCODE E/S

(@) RECVRECIBIR DERED

(@) MCROMACRO

11 --- --- --- --- (@) CPSCOMPARA-CIÓN BINA-RIA CONSIGNO

(@) CPSLDOBLECOMPARA-CIÓN BINA-RIA CONSIGNO

(@) ZCPLCOMPARA-CIÓN DERANGO DOSA DOS

--- --- ---

16 (@) NEGCOMPLE-MENTO A 2

(@) NEGLDOBLECOMPLE-MENTO A 2

(@) HEXASCII-A-HEXADECI-MAL

--- --- --- --- --- --- ---

18 (@) FCSCONTROLDE TRAMA

(@) SRCHBUSCARDATO

(@) MAXBUSCARMÁXIMO

(@) MINBUSCARMÍNIMO

(@) SUMSUMA

--- --- --- --- ---

19 (@) PIDCONTROLPID

--- --- --- (@) SCLESCALA

(@) AVGVALOR ME-DIO

--- --- --- ---

21 DSWENTRADADE DÉCA-DAS DE SE-LECCIÓN

TKYENTRADADE TECLA-DO DECIMAL

HKYENTRADATECLADOHEXADECI-MAL

MTRENTRADADE MATRIZ

7SEGSALIDA DIS-PLAY DE 7SEGMEN-TOS

--- --- --- --- ---

22 --- --- (@) IORDLEER UNI-DAD E/S ES-PECIAL

(@) IOWRESCRIBIRUNIDAD E/SESPECIAL

--- --- --- --- --- ---

Page 148: C200HALPHA Manual Programacion

Tablas de instrucciones Sección 5-7

142

Dígit.izq.

Dígito derechaDígit.izq. 9876543210

23 --- --- --- --- --- (@) RXDRECIBIR

(@) TXDTRANSMITIR

(@) STUPCAMBIARSETUP DERS-232C

--- ---

26 (@) PMCRMACRO DEPROTOCO-LO

(@) CMCRMACRO DETARJETAPCMCIA

--- --- --- --- --- --- --- FPDDETECCIÓNDE FALLOS

28 (@) XDMRLEER DM DEEXPANSIÓN

(@) EMBCSELECCCIO-NAR BANCOEM

--- --- --- --- --- --- --- ---

30 INSTRUCCIONES DE COMPARACIÓN DE ENTRADA

31

32

35 TSTBIT TEST

TSTNBIT TEST

--- --- --- --- --- --- --- ---

40 (@) +SUMA BINA-RIA CONSIGNO

(@) +LDOBLESUMA BINA-RIA CONSIGNO

(@) +CSUMA BINA-RIA CONSIGNO C/ACARREO

(@) +CLDOBLESUMA BINA-RIA CONSIGNO C/ACARREO

(@) +BSUMA BCD

(@) +BLDOBLESUMA BCD

(@) +BCSUMA BCDC/ACARREO

(@) +BCLDOBLESUMA BCDC/ACARREO

--- ---

41 (@) --RESTA BINA-RIA CONSIGNO

(@) --LDOBLE RES-TA BINARIACON SIGNO

(@) --CRESTA BINA-RIA CONSIGNO C/ACARREO

(@) --CLDOBLE RES-TA BINARIACON SIGNOC/ACARREO

(@) --BRESTA BCD

(@) --BLDOBLE RES-TA BCD

(@) --BCRESTA BCDC/ACARREO

(@) --BCLDOBLE RES-TA BCD C/ACARREO

--- ---

42 (@) *MULTIPLICA-CIÓN BINA-RIA CONSIGNO

(@) *LDOBLE MUL-TIPLICA-CIÓN BINA-RIA CONSIGNO

(@) *UMULTIPLICA-CIÓN BINA-RIA SIN SIG-NO

(@) *ULDOBLE MUL-TIPLICA-CIÓN BINA-RIA SIN SIG-NO

(@) *BMULTIPLICA-CIÓN BCD

(@) *BLDOBLE MUL-TIPLICA-CIÓN BCD

--- --- --- ---

43 (@) /DIVISIÓN BI-NARIA CONSIGNO

(@) /LDOBLE DIVI-SIÓN BINA-RIA CONSIGNO

(@) /UDIVISIÓN BI-NARIA SINSIGNO

(@) /ULDOBLE DIVI-SIÓN BINA-RIA SIN SIG-NO

(@) /BDIVISIÓNBCD

(@) /BLDOBLE DIVI-SIÓN BCD

--- --- --- ---

48 (@) ADBLDOBLE SU-MA BINARIA

(@) SBBLDOBLE RES-TA BINARIA

(@) MBSLDOBLE MUL-TIPLICA-CIÓN BINA-RIA CONSIGNO

(@) DBSLDOBLE DIVI-SIÓN BINA-RIA CONSIGNO

(@) MBSMULTIPLICA-CIÓN BINA-RIA CONSIGNO

(@) DBSDIVISIÓN BI-NARIA CONSIGNO

--- --- --- ---

5-7-2 Lista alfabética por nemónicoLa siguiente tabla contiene las instrucciones del C200HX/HG/HE por orden al-fabético. Entre paréntesis se dan los códigos de función asignados por defectopara las instrucciones de expansión. (Aquellas instrucciones de expansión sincódigo de función asignado por defecto se indica con (------)).

Nemónico Código Canales Nombre Pág.

7SEG (214) 4 SALIDA PARA DISPLAY 7 SEGMENTOS 308

ADB (@) 050 4 SUMA BINARIA 259

ADBL (@) (----) 4 DOBLE SUMA BINARIA 265

ADD (@) 030 4 SUMA BCD 246

ADDL (@) 054 4 DOBLE SUMA BCD 247

AND Ninguno 1 AND 146

AND LD Ninguno 1 AND LOAD 146

AND NOT Ninguno 1 AND NOT 146

ANDW (@) 034 4 PRODUCTO LÓGICO 289

APR (@) (069) 4 PROCESOS ARITMÉTICOS 278

ASC (@) 086 4 CONVERSIÓN A ASCII 215

ASFT(@) (017) 4 REGISTRO DE DESPLAZAMIENTO ASÍNCRONO 174

ASL (@) 025 2 DESPLAZAMIENTO ARITMÉTICO A IZQUIERDA 170

ASR (@) 026 2 DESPLAZAMIENTO ARITMÉTICO A DERECHA 171

AVG (@) (195) 4 VALOR MEDIO 275

BCD (@) 024 3 BINARIO A BCD 203

Page 149: C200HALPHA Manual Programacion

Tablas de instrucciones Sección 5-7

143

Nemónico Pág.NombreCanalesCódigo

BCDL (@) 059 3 BINARIO A BCD DE DOS CANALES 203

BCMP (@) (068) 4 COMPARAR BLOQUE 193

BCNT (@) (067) 4 CONTADOR DE BITS 320

BIN (@) 023 3 BCD A BINARIO 202

BINL (@) 058 3 BCD A BINARIO DE DOS CANALES 202

BSET (@) 071 4 RELLENAR BLOQUE 176

BXF2 (@) (----) 4 TRANSFERIR BLOQUE DE EM 185

CLC (@) 041 1 ACARREO A OFF 245

CMCR (@) 261 5 MACRO DE TARJETA PCMCIA 330

CMP 020 3 COMPARAR 189

CMPL (060) 4 COMPARAR DOS A DOS 191

CNT Ninguno 2 CONTADOR 162

CNTR 012 3 CONTADOR REVERSIBLE 165

COLL (@) 081 4 RECOGIDA DE DATOS 180

COLM(@) (064) 4 LÍNEA A COLUMNA 221

COM (@) 029 2 COMPLEMENTO 288

CPS (114) 4 COMPARACIÓN BINARIA CON SIGNO 197

CPSL (115) 4 COMPARACIÓN BINARIA CON SIGNO 2 A 2 198

DBS (@) (----) 4 DIVISIÓN BINARIA CON SIGNO 271

DBSL (@) (----) 4 DOBLE DIVISIÓN BINARIA CON SIGNO 272

DEC (@) 039 2 DECREMENTAR EN BCD 245

DIFD 014 2 DETECCIÓN DE FLANCO DE BAJADA 147

DIFU 013 2 DETECCIÓN DE FLANCO DE SUBIDA 147

DIST (@) 080 4 DISTRIBUCIÓN DE DATOS 178

DIV (@) 033 4 DIVISIÓN BCD 253

DIVL (@) 057 4 DIVISIÓN BCD DOBLE 254

DMPX (@) 077 4 CODIFICADOR 16 A 4/256 A 8 209

DSW (----) 4 ENTRADA DE DÉCADAS DE SELECCIÓN 350

DVB (@) 053 4 DIVISIÓN BINARIA 264

EMBC (@) 281 2 SELECCIONAR BANCO DE EM 329

END 001 1 END 155

FAL (@) 006 2 ALARMA Y RESET DE ERROR 313

FALS 007 2 ALARMA DE ERROR FATAL 313

FCS (@) (180) 4 CÁLCULO DE FCS 321

FDIV (@) 079 4 DIVISIÓN EN COMA FLOTANTE 255

FPD (269) 4 DETECCIÓN DE FALLOS 322

HEX (@) (162) 4 CONVERSIÓN ASCII-A-HEXADECIMAL 216

HKY (212) 4 ENTRADA DE TECLADO HEXADECIMAL 353

HMS (@) 066 4 SEGUNDOS A HORAS 205

IEMS (@) (----) 2 DIRECCIONAMIENTO INDIRECTO DE EM 328

IL 002 1 INTERLOCK 152

ILC 003 1 INTERLOCK CLEAR 152

INC (@) 038 2 INCREMENTAR EN BCD 244

INT (@) (089) 4 CONTROL DE INTERRUPCIÓN 300

IORD (@) 222 4 LEER UNIDAD DE E/S ESPECIAL 360

IORF (@) 097 3 REFRESCO DE E/S 319

Page 150: C200HALPHA Manual Programacion

Tablas de instrucciones Sección 5-7

144

Nemónico Pág.NombreCanalesCódigo

IOWR (@) 223 4 ESCRIBIR UNIDAD DE E/S ESPECIAL 361

JME 005 2 FIN DE SALTO 154

JMP 004 2 SALTO 154

KEEP 011 2 BIESTABLE 150

LD Ninguno 1 LOAD 146

LD NOT Ninguno 1 LOAD NOT 146

LINE (@) (063) 4 COLUMNA A LÍNEA 220

LMSG (@) (047) 4 MENSAJE DE 32 CARACTERES 317

MAX (@) (182) 4 BUSCAR MÁXIMO 273

MBS (@) (----) 4 MULTIPLICACIÓN BINARIA CON SIGNO 269

MBSL (@) (----) 4 DOBLE MULTIPLICACIÓN BINARIA CON SIGNO 270

MCMP (@) (019) 4 COMPARACIÓN DE BLOQUE 188

MCRO (@) 099 4 MACRO 298

MIN (@) (183) 4 BUSCAR MÍNIMO 274

MLB (@) 052 4 MULTIPLICACIÓN BINARIA 263

MLPX (@) 076 4 DECODIFICADOR 4 A 16 206

MOV (@) 021 3 MOVER 175

MOVB (@) 082 4 MOVER BIT 182

MOVD (@) 083 4 MOVER DÍGITO 183

MPRF (@) (061) 4 REFRESCO DE E/S DE ALTA DENSIDAD GRUPO 2 320

MSG (@) 046 2 MENSAJE 316

MTR (213) 4 ENTRADA DE MATRIZ 358

MUL (@) 032 4 MULTIPLICACIÓN BCD 251

MULL (@) 056 4 MULTIPLICACIÓN BCD DOBLE 252

MVN (@) 022 3 MOVER NEGADO 176

NEG (@) (160) 4 COMPLEMENTO A 2 222

NEGL (@) (161) 4 COMPLEMENTO A 2 DE DOS CANALES 223

NOP 000 1 NO OPERACIÓN 155

OR Ninguno 1 OR 146

OR LD Ninguno 1 OR LOAD 146

OR NOT Ninguno 1 OR NOT 146

ORW (@) 035 4 SUMA LÓGICA 289

OUT Ninguno 2 OUTPUT 147

OUT NOT Ninguno 2 OUTPUT NOT 147

PID (@) (190) 4 CONTROL PID 281

PMCR (@) (260) 4 MACRO DE PROTOCOLO 346

RECV (@) 098 4 RECIBIR DE RED 336

RET 093 1 FINAL DE SUBRUTINA 297

ROL (@) 027 2 ROTAR A IZQUIERDA 171

ROOT (@) 072 3 RAÍZ CUADRADA 257

ROR (@) 028 2 ROTAR A DERECHA 172

RSET Ninguno 2 RESET 149

RXD(@) (235) 4 RECIBIR 341

SBB (@) 051 4 RESTA BINARIA 261

SBBL (@) (----) 4 DOBLE RESTA BINARIA 267

SBN 092 2 DEFINIR SUBRUTINA 297

Page 151: C200HALPHA Manual Programacion

145

Nemónico Pág.NombreCanalesCódigo

SBS (@) 091 2 LLAMADA A SUBRUTINA 296

SCAN (018) 4 TIEMPO DE CICLO 314

SCL (@) (194) 4 FUNCIÓN DE ESCALA 219

SDEC (@) 078 4 DECODIFICADOR DE 7 SEGMENTOS 212

SEC (@) (065) 4 HORAS A SEGUNDOS 204

SEND (@) 090 4 ENVIAR A RED 334

SET Ninguno 2 SET 149

SFT 010 3 REGISTRO DE DESPLAZAMIENTO 167

SFTR (@) 084 4 REGISTRO DE DESPLAZAMIENTO REVERSIBLE 169

SLD (@) 074 3 DESPLAZAMIENTO DE DÍGITO A IZQUIERDA 172

SNXT 009 2 COMIENZO DE PASO 304

SRCH (@) (181) 4 BÚSQUEDA DE DATOS 326

SRD (@) 075 3 DESPLAZAMIENTO UN DÍGITO A DERECHA 173

STC (@) 040 1 ACARREO A ON 245

STEP 008 2 DEFINIR PASO 304

STUP (@) 237 2 CAMBIAR SETUP DE RS-232C 345

SUB (@) 031 4 RESTA BCD 248

SUBL (@) 055 4 RESTA BCD DOBLE 249

SUM (@) (184) 4 CÁLCULO DE SUM 276

TCMP (@) 085 4 COMPARAR TABLA 194

TERM (@) (048) 4 MODO TERMINAL 318

TIM Ninguno 2 TEMPORIZADOR 156

TIMH 015 3 TEMPORIZADOR DE ALTA VELOCIDAD 160

TKY (@) (211) 4 ENTRADA DE TECLADO DECIMAL 356

TRSM 045 1 SEGUIMIENTO DE DATOS 314

TST 350 5 BIT TEST 151

TSTN 351 5 BIT TEST NOT 151

TTIM 087 4 TEMPORIZADOR TOTALIZADOR 161

TXD (@) (236) 4 TRANSMITIR 343

WDT (@) 094 2 REFRESCO DE TEMPORIZADOR DE GUARDA 318

WSFT (@) 016 3 DESPLAZAMIENTO DE CANAL 173

XCHG (@) 073 3 INTERCAMBIO DE DATOS 178

XDMR (@) (280) 4 LECTURA DE DM DE EXPANSIÓN 327

XFER (@) 070 4 TRANSFERIR BLOQUE 177

XFR2 (@) (----) 4 TRANSFERIR BLOQUE DE EM 185

XFRB (@) (062) 4 TRANSFERIR BITS 184

XNRW (@) 037 4 OR EXCLUSIVA NEGADA 291

XORW (@) 036 4 OR EXCLUSIVA 290

ZCP (086) 4 COMPARAR RANGO DE ÁREA 195

ZCPL (116) 4 COMPARACIÓN DE RANGO DOS A DOS 196

5-8 Instrucciones de diagrama de relésLas instrucciones de diagrama de relés incluye instrucciones de relés e instruc-ciones de bloque lógico y corresponden a las condiciones en diagrama de relés.Las instrucciones de bloque lógico se utilizan para relacionar partes más com-plejas.

Instrucciones de diagrama de relés Sección 5--8

Page 152: C200HALPHA Manual Programacion

146

5-8-1 LOAD, LOAD NOT, AND, AND NOT, OR y OR NOT

B: Bit

IR, SR, AR, HR, TC, LR, TR

Símbolos de relés Áreas de datos de operando

LOAD -- LDB

B: Bit

IR, SR, AR, HR, TC, LRLOAD NOT -- LD NOT B

B: Bit

IR, SR, AR, HR, TC, LRAND -- AND

B

B: Bit

IR, SR, AR, HR, TC, LRAND NOT -- AND NOT

B

B: Bit

IR, SR, AR, HR, TC, LROR -- OR B

B: Bit

IR, SR, AR, HR, TC, LROR NOT -- OR NOT B

No existe un número limitado para estas instrucciones o restricciones en elorden en que se deben utilizar, mientras no se exceda la capacidad de memoriadel PLC.

Estas seis instrucciones básicas corresponden a las condiciones en un dia-grama de relés. Como se describe en Sección 4 Programación de diagrama derelés, el estado de los bits asignados a cada instrucción determina las condi-ciones de ejecución para el resto de instrucciones. Cada una de estas instruc-ciones y cada dirección de bit se puede utilizar tantas veces como sea necesa-rio.El estado del operando de bit (B) asignado a LD o LD NOT determina la primeracondición de ejecución. AND realiza el producto lógico de la condición de ejecu-ción y del estado de su bit operando; AND NOT, la operación lógica AND entre lacondición de ejecución y el estado invertido de su bit operando. De forma similarfuncionan OR y OR NOT.

Indicadores No hay indicadores afectados por estas instrucciones.

5-8-2 AND LOAD y OR LOAD

Símbolo de relés

AND LOAD -- AND LD00002

00003

00000

00001

Símbolo de relés

OR LOAD -- OR LD00000 00001

00002 00003

Cuando se combinan instrucciones en bloques que no se pueden combinarlógicamente utilizando operaciones OR y AND, se utilizan AND LD y OR LD.

Limitaciones

Descripción

Descripción

Instrucciones de diagrama de relés Sección 5--8

Page 153: C200HALPHA Manual Programacion

147

Mientras que AND y OR combinan un estado de bit y una condición de ejecu-ción, AND LD y OR LD combinan lógicamente dos condiciones de ejecución, laactual y la última no utilizada.Para dibujar diagramas de relés, no es necesario utilizar instrucciones AND LDy OR LD, ni hay que escribirlas cuando se introduce directamente diagramas derelés, como es viable desde el SYSWIN. Sin embargo sí son necesarias paraconvertir el programa y escribirlo en nemónico.Para reducir el número de instrucciones de programación necesarias, hay quetener un conocimiento básico de instrucciones de bloque lógico. Consultar paraello, 4-4-6 Instrucciones de bloque lógico.

Indicadores No hay indicadores afectados por estas instrucciones.

5-9 Instrucciones de control de bitHay cinco instrucciones que se pueden utilizar generalmente para controlarestados individuales de bits. Son OUT, OUT NOT, DIFU(013), DIFD(014), yKEEP(011). Estas instrucciones se utilizan para poner los bits a ON y OFF dediferentes formas.

5-9-1 OUTPUT y OUTPUT NOT -- OUT y OUT NOT

B: Bit

IR, SR, AR, HR, LR, TR

Símbolo de relés Áreas de datosOUTPUT -- OUT

B

B: Bit

IR, SR, AR, HR, LR

Símbolo de relés Áreas de datosOUTPUT NOT -- OUT NOT

B

Generalmente cualquier bit se puede utilizar en una sola instrucción que con-trole su estado.Consultar 3-3 Area de IR para más información.

OUT y OUT NOT se utilizan para controlar el estado del bit designado deacuerdo con la condición de ejecución.OUT pone a ON el bit designado para una condición de ejecución ON y lo pone aOFF para una condición de ejecución OFF. Con un bit TR, OUT aparece en unpunto de bifurcación más que al final de una línea de instrucción. Consultar4-7-7 Bifurcación de líneas de instrucción.OUT NOT pone a ON el bit designado para una condición de ejecución OFF y lopone a OFF para una condición de ejecución ON.OUT y OUT NOT se pueden utilizar para controlar la ejecución, poniendo a ON ya OFF los bits que están asignados a condiciones en el diagrama de relés,determinando así las condiciones de ejecución de otras instrucciones. Esto esparticularmente útil y permite utilizar un conjunto complejo de instruccionespara controlar un único bit de trabajo y luego ese bit de trabajo se puede utilizarpara controlar otras instrucciones.Los tiempos en ON y en OFF de un bit se puede controlar combinando OUT oOUT NOT con TIM. Ver ejemplos en 5-14-1 TEMPORIZADOR -- TIM.

Indicadores No hay indicadores afectados por estas instrucciones.

5-9-2 DETECCIÓN DE FLANCOS -- DIFU(013) y DIFD(014)

B: Bit

IR, AR, HR, LR

Símbolo de relés Áreas de datos de operando

DIFU(013) B

Limitaciones

Descripción

Instrucciones de control de bit Sección 5-9

Page 154: C200HALPHA Manual Programacion

148

B: Bit

IR, AR, HR, LRDIFD(014) B

Cualquier bit de salida se puede utilizar generalmente en sólo una instrucciónque controla su estado. Consultar 3-3 Area de IR.

DIFU(013) y DIFD(014) se utilizan para poner a ON el bit designado durantesólo un ciclo de scan.

Cuando se ejecuta, DIFU(013) compara su ejecución actual con la condición deejecución previa. Si ésta era OFF y la actual es ON, DIFU(013) pondrá a ON elbit designado. Si la condición de ejecución previa era ON y cualquiera que sea laactual, DIFU(013) pondrá el bit designado a OFF o lo dejará en OFF (si yaestaba en OFF). Por lo tanto, el bit designado nunca estará en ON durante másde un ciclo de scan, suponiendo que se ejecuta en cada scan (ver Precau-ciones, más adelante).

Cuando se ejecuta, DIFD(014) compara su ejecución actual con la condición deejecución previa. Si ésta era ON y la actual OFF, DIFD(014) pondrá a ON el bitdesignado. Si la condición de ejecución previa era OFF y cualquiera que sea laactual, DIFD(014) pondrá a OFF el bit designado o lo dejará en OFF. Por lotanto, el bit designado nunca estará en ON durante más de un ciclo de scan,suponiendo que se ejecuta en cada scan (ver Precauciones, más adelante).

Estas instrucciones se utilizan cuando no hay disponibles instrucciones diferen-ciadas (aquéllas con el prefijo @) y se desea la ejecución sólo en un scan de unainstrucción en particular. También se pueden utilizar con formas normales deintrucciones que tienen formas diferenciadas cuando su uso simplifique la pro-gramación. A continuación se muestran ejemplos.

Indicadores No hay indicadores afectados por estas instrucciones.

La operación de DIFU(013) y DIFD(014) puede ser incierta cuando se progra-man entre IL y ILC, entre JMP y JME o en subrutinas. Consultar 5-10 INTER-LOCK y INTERLOCK CLEAR -- IL(002) y ILC(003), 5-11 JUMP y JUMP END --JMP(004) y JME(005) y 5-24 Subrutinas y control de interrupción.

En el diagrama A, siempre que se ejecute CMP(020) con una condición de eje-cución ON, comparará los contenidos de dos canales operando (HR 10 y DM0000) y según el resultado selecciona los indicadores aritméticos (GR, EQ yLE). Si la condición de ejecución permanece en ON, el estado del indicadorpuede cambiar cada ciclo si cambia el contenido de uno o ambos operandos.Sin embargo el diagrama B es un ejemplo de como se puede utilizar DIFU(013)para asegurar que CMP(020) se ejecute sólo una vez cada vez que la condiciónde ejecución se ponga en ON.

00000

CMP(020)

HR 10

DM 0000Diagrama A

22500

CMP(020)

HR 10

DM 0000Diagrama B

DIFU(013) 22500

00000

Dirección Instrucción Operandos

00000 LD 0000000001 CMP(020)

HR 10DM 0000

Dirección Instrucción Operandos

00000 LD 0000000001 DIFU(013) 2250000002 LD 2250000003 CMP(020)

HR 10DM 0000

Aunque existe la forma diferenciada de MOV(021), el siguiente diagrama seríamuy complicado de dibujar dado que sólo una de las condiciones que determi-

Limitaciones

Descripción

Precauciones

Ejemplo 1:Sin instruccionesdiferenciadas

Ejemplo 2:Simplificación delprograma

Instrucciones de control de bit Sección 5-9

Page 155: C200HALPHA Manual Programacion

149

nan la condición de ejecución para MOV(021) requiere un tratamiento diferen-ciado.

22500

MOV(021)

HR 10

DM 0000

DIFU(013)22500

00000

00001 00002 00003

00004 00005

Dirección Instrucción Operandos

00000 LD 0000000001 DIFU(013) 2250000002 LD 2250000003 LD 0000100004 AND NOT 0000200005 AND NOT 0000300006 OR LD ---00007 LD 0000400008 AND NOT 0000500009 OR LD ---00010 MOV(021)

HR 10DM 0000

5-9-3 SET y RESET -- SET y RSET

B: Bit

IR, SR, AR, HR, LR

Símbolo de relés Áreas de datos de operando

SET B

B: Bit

IR, SR, AR, HR, LRRSET B

SET pone el bit operando a ON cuando la condición de ejecución es ON y noafecta al estado del operando cuando la condición es OFF. RSET pone a OFF elbit operando cuando la condición de ejecución es ON y no afecta al estado delbit operando cuando la condición de ejecución es OFF.

Precauciones Los estados de los bits de operando para SET y RSET programadas entreIL(002) e ILC(003) o JMP(004) y JME(005) no cambiará cuando se cumpla lacondición del enclavamiento o salto (es decir cuando IL(002) o JMP(004) seejecute con una condición de ejecución OFF).

Indicadores No hay indicadores afectados por estas instrucciones.

Ejemplos Los siguientes ejemplos muestran la diferencia entre OUT y SET/RSET. En elprimer ejemplo (Diagrama A), IR 10000 se pondrá a ON o a OFF siempre que IR00000 se ponga en ON u OFF.

En el segundo ejemplo (Diagrama B), IR 10000 se pondrá a ON cuando IR00001 se ponga en ON y permanecerá en ON (incluso si IR 00001 se pone enOFF) hasta que IR 00002 se ponga en ON.

00000

Diagrama A

00002

RSET 10000

Diagrama B

SET 10000

00001

Dirección Instrucción Operandos

00000 LD 0000000001 OUT 10000

Dirección Instrucción Operandos

00000 LD 0000100001 SET 1000000002 LD 0000200003 RSET 10000

10000

Descripción

Instrucciones de control de bit Sección 5-9

Page 156: C200HALPHA Manual Programacion

150

5-9-4 BIESTABLE -- KEEP(011)

B: Bit

IR, AR, HR, LR

Símbolo de relés Áreas de datos de operandoS

R

KEEP(011)

B

Cualquier bit de salida se puede utilizar generalmente en sólo una instrucciónque controla su estado.

KEEP(011) se utiliza para mantener el estado del bit designado basado en doscondiciones de ejecución. Estas condiciones de ejecución se denominan S y R.S es la entrada de set; R, la entrada de reset. KEEP(011) opera de forma similara un relé de enclavamiento que se pone a 1 con S y a 0 con R.

Cuando S se pone en ON, el bit designado se pondrá en ON permaneciendo enON hasta el reset, independientemente de si S está en ON o pasa a OFF. Larelación entre condiciones de ejecución y estado de bit de KEEP(011) se mues-tra a continuación.

Condición ejecución S

Condición ejecución R

Estado de B

KEEP(011) opera como el bit de autorretención descrito en 4-8-3 Bits de autor-retención. Los dos diagramas siguientes funcionarían igual, aunque el que uti-liza KEEP(011) necesita una instrucción menos y retendría el estado incluso enuna sección enclavada del programa.

00002 00003

00500

00002

00003

00500

S

R

KEEP(011)

B

Dirección Instrucción Operandos

Dirección Instrucción Operandos

00000 LD 0000200001 OR 0050000002 AND NOT 0000300003 OUT 00500

00000 LD 0000200001 LD 0000300002 KEEP(011) 00500

Indicadores No hay indicadores afectados por esta instrucción.

Tener cuidado cuando se utilice una línea de reset controlada por un dispositivoexterno normalmente cerrado. No utilizar nunca un bit de entrada en una condi-ción invertida en el reset (R) para KEEP(011) cuando el dispositivo de entradautiliza una fuente de alimentación de c.a. El retardo en la desconexión de lafuente c.c. del PLC (relativa a la fuente de c.a. del dispositivo de entrada) puedeprovocar el reset del bit designado por KEEP(011). Esta situación se muestra enla siguiente figura.

Limitaciones

Descripción

Precauciones

Instrucciones de control de bit Sección 5-9

Page 157: C200HALPHA Manual Programacion

151

A

Unidad de entrada

A

NUNCA

S

R

KEEP(011)

B

Los bits utilizados en KEEP no se resetean en enclavamientos. Consultar 5-10INTERLOCK -- e INTERLOCK CLEAR IL(002) e ILC(003).

Si se utiliza un bit HR o AR, el estado del bit se retendrá incluso durante un cortede alimentación. KEEP(011) se puede utilizar por lo tanto para prorgamar bitsque mantendrán estados después de rearrancar el PLC después de un corte dealimentación. A continuación se muestra un ejemplo que se puede utilizar paragenerar un aviso seguido de una parada del sistema para una situación deemergencia. Los bits 00002, 00003 y 00004 serían puestos a ON para indicarcualquier tipo de error. El bit 00005 se pondría a ON para resetear el aviso. HR0000, que se pondrá a ON cuando cualquiera de los tres bits indique una situa-ción de emergencia, se utiliza para poner a ON el indicador de aviso a través de00500.

HR 000000500

00002

00003

00004

00005Entrada de reset

Indica situa-ción de emer-gencia

Activaaviso

S

R

KEEP(011)

B

Dirección Instrucción Operandos

00000 LD 0000200001 OR 0000300002 OR 0000400003 LD 0000500004 KEEP(011) HR 000000005 LD HR 000000006 OUT 00500

KEEP(011) se puede también combinar con TIM para producir retardos en laconmutación a ON o a OFF de los bits. Consultar 5-14-1 TEMPORIZADOR --TIM para más información.

5-9-5 BIT TEST: TST(350) y TSTN(351)

Símbolo de relés Áreas de datos de operandos

S: Canal fuente

IR, SR, AR, DM, EM, HR, LR

N: Número de bit

IR, SR, AR, DM, EM, HR, TC, LR, #

TST(350)

S

N

---

TSTN(351)

S

N

---

Limitaciones Todo bit de salida generalmente sólo se puede utilizar en una instrucción quecontrole su estado. Consultar 3-3 Area de IR para más información.

Descripción TST(350) pone a ON la condición de ejecución cuando el bit especificado en elcanal especificado está en ON y la pone a OFF cuando la condición de ejecu-ción del bit es OFF.TSTN(351) pone a OFF la condición de ejecución cuando el bit especificado enel canal especificado está en ON y la pone a ON cuando la condición de ejecu-ción del bit es OFF.

Ejemplo

Instrucciones de control de bit Sección 5-9

Page 158: C200HALPHA Manual Programacion

0000005000TST(350)

DM 0010

#0000

0000105001TSTN(351)

DM 0020

#0005

152

La posición del bit se indica en N entre 0000 y 0015 en BCD.

Precauciones TST(350) y TSTN(351) no se pueden utilizar como instrucciones de final delínea, es decir, debe aparecer otra instrucción entre ellas y la barra de bus dere-cha.N debe ser BCD entre 0000 y 0015.

Indicadores ER: N no está en BCD de 0000 a 0015.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal de *DM/EM no está en BCD o se ha excedido el área de EM/DM/EM.)

Ejemplo En la primera línea de instrucción, cuando IR 00000 se pone en ON, TST(350)comprueba si el bit designado (bit 00 en DM 0010) está en ON u OFF. En estecaso, dado que está en ON, IR 05000 se pone en ON.En la segunda línea de instrucción, cuando IR 00001 se pone en ON, TST(350)comprueba si el bit designado (bit 05 en DM 0020) está en ON u OFF. En estecaso, dado que está en OFF, IR 05001 se pone en ON.

Dirección Instrucción Operandos

00000 LD 00000

00001 TST(350)

DM 0010

#0000

00002 OUT 05000

00003 LD 00001

00004 TSTN(351)

DM 0020

#0005

00005 OUT 05001

5-10 INTERLOCK e INTERLOCK CLEAR -- IL(002) e ILC(003)

Símbolo de relés IL(002)

Símbolo de relés ILC(003)

IL(002) se utiliza siempre junto con ILC(003) para crear enclavamientos. Estasinstrucciones se utilizan para realizar bifurcaciones similares a las obtenidascon bits TR, pero el tratamiento de las instrucciones entre IL(002) y ILC(003)difiere del tratamiento con bits TR cuando la condición de ejecución paraIL(002) es OFF. Si la condición de ejecución de IL(002) es ON, el programa seejecutará como está escrito, con una condición de ejecución ON utilizada parainiciar cada línea de instrucción desde el punto en que se encuentra IL(002)hasta la siguiente ILC(003). Consultar, 4-7-7 Instrucciones de bifurcación, lasdescripciones de ambos métodos.Si la condición de ejecución para IL(002) es OFF, la sección enclavada entreIL(002) y ILC(003) se tratará como se indica en la siguiente tabla:

Instrucción Tratamiento

OUT y OUT NOT Bit designado puesto a OFF.

SET y RSET Se mantiene el estado del bit.

TIM y TIMH(015) Reset.

TTIM(087) Se mantiene el PV.

CNT, CNTR(012) Se mantiene el PV.

KEEP(011) Se mantiene el estado de bit.

Descripción

INTERLOCK y INTERLOCK CLEAR -- IL(002) y ILC(003) Sección 5-10

Page 159: C200HALPHA Manual Programacion

153

Instrucción Tratamiento

DIFU(013) y DIFD(014) No ejecutada (ver más adelante).

Resto de instrucciones No ejecutada.

IL(002) y ILC(003) no han de usarse exactamente por parejas. IL(002) se puedeutilizar varias veces en una columna, con cada IL(002) creando una secciónenclavada hasta la siguiente ILC(003). ILC(003) no se puede utilizar a no serque haya al menos una IL(002) entre ella y cualquier ILC(003) anterior.

Cuando DIFU(013) o DIFD(014) están dentro de una sección enclavada y lacondición de ejecución para IL(002) es OFF, los cambios en la condición de eje-cución para DIFU y DIFD no se graban. Cuando DIFU(013) o DIFD(014) se eje-cuta en una sección enclavada inmediatamente después de que la condición deejecución para la IL(002) se ponga en ON, la condición de ejecución para laDIFU(013) o DIFD(014) se comparará con la condición de ejecución que existíaantes de ser efectivo el enclavamiento (es decir antes de que la condición deenclavamiento para IL(002) se pusiera en OFF). En este caso el diagrama derelés y estado de bit cambia como se muestra a continuación. El enclavamientoes efectivo mientras 00000 está en OFF. Observar que 01000 no se pone a ONen el punto indicado A aunque 00001 se haya puesto a OFF y luego de nuevo aON.

00000

IL(002)

DIFU(013)01000

ILC(003)

00001

00000

00001

ON

OFF

ON

OFF

01000ON

OFF

A

Dirección Instrucción Operandos

00000 LD 0000000001 IL(002)00002 LD 0000100003 DIFU(013) 0100000004 ILC(003)

Siguiendo a una o más IL(002) debe seguir una ILC(003).Aunque con una ILC(003) se pueden utilizar tantas IL(002) como sean necesa-rias, las instrucciones ILC(003) no se pueden utilizar consecutivamente sin almenos una IL(002) entre ellas. Siempre que se ejecute una ILC(003), todos losenclavamientos entre la ILC(003) activa y la ILC(003) anterior se borrarán.Cuando se utiliza más de una IL(002) con una única ILC(003), aparecerá unmensaje de error cuando se chequee el programa, pero el programa se ejecu-tará con normalidad.

Indicadores No hay indicadores afectados por esta instrucción.

Influencia de IL e ILC sobreDIFU(013) y DIFD(014)

Precauciones

INTERLOCK y INTERLOCK CLEAR -- IL(002) y ILC(003) Sección 5-10

Page 160: C200HALPHA Manual Programacion

154

El siguiente diagrama muestra dos IL(002) utilizadas con una ILC(003).

Dirección Instrucción Operandos

00000 LD 0000000001 IL(002)00002 LD 0000100003 TIM 511

# 001500004 LD 0000200005 IL(002)00006 LD 0000300007 AND NOT 0000400008 LD 0010000009 LD 0010000010 CNT 001

01000011 LD 0000500012 OUT 0050200013 ILC(003)

00000

00001

ILC(003)

IL(002)

00004

00005

00003

00002

IL(002)

00502

TIM 511

CP

R

CNT001

IR 01000100

001.5 s

TIM 511

#0015

Cuando la condición de ejecución para la primera IL(002) es OFF, TIM 511 sereseteará a 1.5 s, CNT 001 no cambiará y 00502 se pondrá en OFF. Cuando lacondición de ejecución para la primera IL(002) sea ON y la condición de ejecu-ción para la segunda IL(002) sea OFF, TIM 511 se ejecutará de acuerdo con elestado de 00001, CNT 001 no cambiará y 00502 se pondrá en OFF. Cuando lascondiciones de ejecución para ambas IL(002) sea ON, el programa se ejecutarásegún está escrito.

5-11 JUMP y JUMP END -- JMP(004) y JME(005)

N: Número de salto

# (00 to 99)

Símbolo de relés Definidores

JMP(004) N

N: Número de salto

# (00 to 99)JME(005) N

Los números de salto 01 a 99 se pueden utilizar sólo una vez en JMP(004) y unavez en JME(005), es decir, cada uno se puede utilizar para definir sólo un salto.El número de salto 00 se puede utilizar tantas veces como se desee.

JMP(004) se utiliza siempre junto con JME(005) para crear saltos, es decir parasaltar de un punto a otro del diagrama de relés. JMP(004) define el punto desdeel que se salta; JME(005) define el punto destino del salto. Cuando la condiciónde ejecución para JMP(004) es OFF, no se ejecuta ningún salto. Cuando la con-dición de ejecución para JMP(004) es ON, se realiza un salto a la JME(005) conel mismo número de salto, no ejecutándose las instrucciones entre ambas JMPy JME y se ejecuta la instrucción que sigue a JME(005).No cambiará el estado de temporizadores, contadores, bits utilizados en OUT,bits utilizados en OUT NOT y del resto de bits controlados por las instruccionescomprendidas entre JMP(004) y JME(005). Cada uno de estos números desalto se pueden utilizar para definir sólo un salto. Dado que todas las instruc-ciones entre JMP(004) y JME(005) se saltan, los números de salto de 01 a 99 sepueden utilizar para reducir el tiempo de scan.Si el número de salto para JMP(004) es 00, la CPU buscará la siguienteJME(005) con un número de salto de 00. Para ello, debe buscar en el programa,provocando un tiempo de scan más largo (cuando la condición de ejecución esOFF) que para otros saltos. No cambiará el estado de temporizadores, conta-

Ejemplo

Limitaciones

Descripción

JUMP y JUMP END -- JMP(004) y JME(005) Sección 5-11

Page 161: C200HALPHA Manual Programacion

155

dores, bits utilizados en OUT, bits utilizados en OUT NOT y del resto de bits con-trolados por las instrucciones comprendidas entre JMP(004) 00 y JMP(05) 00.El número de salto 00 se puede utilizar tantas veces como se desee. Un salto deJMP(004) 00 irá siempre a la siguiente JME(005) 00 en el programa. Por lo tantoes posible utilizar JMP(004) 00 consecutivamente y concluir todas ellas en lamisma JME(005) 00.

Aunque DIFU(013) y DIFD(014) ponen a ON el bit designado durante un scan,puede que no sea así necesariamente cuando se escriben entre JMP(004) yJMP (05). Una vez que DIFU(013) o DIFD(014) haya puesto un bit a ON, per-manecerá en ON hasta la siguiente vez que se ejecute DIFU(013) o DIFD(014).En programación normal, esto significa el siguiente scan. En un salto, esto sig-nifica la siguiente vez que el salto de JMP(004) a JME(005) no se haga. Es decirque un bit puesto a ON por DIFU(013) o DIFD(014) puede permanecer en ONmás de un ciclo de scan dependiendo si se ejecuta o no el salto.

Cuando JMP(004) y JME(005) no se utilizan por parejas, aparecerá un mensajede error cuando se ejecute el chequeo de programa. Aunque este mensaje tam-bién aparece si JMP(004) 00 y JME(005) 00 no se utilizan en parejas, el pro-grama se ejecutará correctamente tal y como se escribió.

Indicadores No hay indicadores afectados por estas instrucciones.

Ejemplos En la sección 4--3--9 Saltos encontrará ejemplos de estas instrucciones.

5-12 END -- END(001)

Símbolo de relés END(001)

END(001) debe programarse como última instrucción de todo programa. Si haysubrutinas, END(001) se coloca después de la última subrutina. No se ejecutaráninguna instrucción colocada detrás de END(001). END(001) se puede colocaren cualquier parte del programa para ejecutar todas las instrucciones hasta ella,como suele hacerse para depurar el programa, pero se deben quitar para ejecu-tar el resto del programa.Si no hay END(001) en el programa, no se ejecutarán las instrucciones y apare-cerá el mensaje “NO END INST”.

Indicadores END(001) pone a OFF los indicadores ER, CY, GR, EQ y LE.

5-13 NO OPERACIÓN -- NOP(000)NOP(000) generalmente no es necesaria en programación y no tiene símbolode diagrama de relés. Cuando se encuentra NOP(000) en un programa, no seejecuta nada y la ejecución del programa pasa a la siguiente instrucción.Cuando se borra la memoria antes de programar, todas las direcciones contie-nen NOP(000). NOP(000) se puede introducir mediante el código de función 00.

Indicadores No hay indicadores afectados por NOP(000).

5-14 Instrucciones de temporizador y contadorTIM y TIMH son instrucciones de temporizador descendente de retardo a ONque necesitan un número de TC y un valor consigna (SV).CNT es una instrucción de contador descendente y CNTR es una instrucción decontador reversible. Ambos necesitan un número de TC y un SV. Ambos seconectan también a varias líneas de instrucción que sirven como señal(es) deentrada y de reset.Todos los números de TC sólo se pueden utilizar una vez para definir un tempo-rizador o un contador. Una vez definidos, los números de TC se pueden utilizar

DIFU(013) y DIFD(014) ensaltos

Precauciones

Descripción

Descripción

Instrucciones de temporizador y contador Sección 5-14

Page 162: C200HALPHA Manual Programacion

156

tantas veces como sea necesario como operandos de otras instrucciones dis-tintas de temporizador o contador.Los números de TC van de 000 a 511. No es necesario prefijo cuando se utilizaun número de TC en una instrucción de temporizador o contador. Una vez defi-nido como temporizador, un número de TC puede ir precedido con TIM para uti-lizar como operandos de ciertas instrucciones. El prefijo TIM se utiliza indepen-dientemente de la instrucción temporizador que se utilizó para definir el tempori-zador. Una vez definido como contador, un número de TC puede ir precedidocon CNT para utilizar como operandos de ciertas instrucciones. El prefijo CNTse utiliza también independientemente de la instrucción contador que se utilizópara definir el contador.Los números de TC se pueden designar como operandos que requieren biendato de bit o de canal. Cuando se designa como un operando que requiere datode bit, el número de TC entra un bit que funciona como un ‘Indicador de finaliza-ción” que indica cuándo ha expirado el tiempo/contaje, es decir, el bit normal-mente OFF, se pondrá a ON cuando se alcance el SV. Cuando se designa comoun operando que requiere un dato de canal, el número de TC entra una direc-ción de memoria que contiene el valor presente (PV) del temporizador o conta-dor. El PV de un temporizador o contador se puede utilizar por lo tanto como unoperando en CMP(020), o en cualquier otra instrucción para la que esté permi-tida el área de TC.Observar que “TIM 000” se utiliza para designar la instrucción TIMER definidacon número de TC 000, para designar el indicador de finalización para este tem-porizador y designar el PV de este temporizador. El significado del término encontexto debe ser claro, es decir, el primero es siempre una instrucción, elsegundo es siempre un operando de bit y el tercero es siempre un operando decanal. Esto mismo se aplica para todos los demás números de TC precedidoscon TIM o CNT.Un SV se puede introducir como una constante o como una dirección de canalen un área de datos. Si un canal de IR asignado a una unidad de entrada sedesigna como dirección de canal, la unidad de entrada se puede cablear de talforma que el SV se pueda fijar externamente mediante décadas de selecciónpor ejemplo. Los temporizadores y contadores cableados de esta forma sólo sepueden seleccionar externamente durante el modo RUN o MONITOR. Todoslos SVs, incluyendo los seleccionados externamente, deben estar en BCD.

5-14-1 TEMPORIZADOR -- TIM

N: Número de TC

# (000 a 511)Símbolo de relés

Valores de definidor

SV: Valor selec. (canal, BCD)

IR, AR, DM, HR, LR, #

Áreas de datos de operando

TIM N

SV

El rango de SV es de 000.0 a 999.9. No se escribe el punto decimal.Cada número de TC se puede utilizar como definidor en sólo una instrucción deTIM o CNT.Si se va a utilizar TIMH(015), de TC 000 a TC 015 no deberían utilizarse paraTIM. Consultar 5-14-2 TEMPORIZADOR DE ALTA VELOCIDAD -- TIMH(015).

Un temporizador se activa cuando su condición de ejecución se pone en ON yse resetea (a SV) cuando la condición de ejecución se pone en OFF. Una vezactivado, TIM mide en unidades de 0.1 segundo desde el SV.Si la condición de ejecución permanece en ON lo suficiente para que transcurrael tiempo fijado en TIM, se pondrá a ON el indicador de finalización del número

Limitaciones

Descripción

Instrucciones de temporizador y contador Sección 5-14

Page 163: C200HALPHA Manual Programacion

157

de TC utilizado y permanecerá en dicho estado hasta que se resetee TIM (esdecir, hasta que su condición de ejecución se ponga en OFF).

La siguiente figura ilustra la relación entre la condición de ejecución para TIM yel indicador de finalización asignado.

Condición ejecución

Indicador definalización

ON

OFF

ON

OFF

SV SV

Los temporizadores en secciones de programa enclavadas se resetean cuandola condición de ejecución para IL(002) es OFF. Los cortes de alimentación tam-bién resetean los temporizadores. Si se desea un temporizador que no se rese-tee bajo estas condiciones, se pueden contar los impulsos de reloj de los bits dereloj del área SR para generar un temporizador utilizando un contador. Consul-tar 5-14-4 CONTADOR -- CNT.

La ejecución del programa continuará incluso aunque no se utilice un SV enBCD, pero la temporización no será exacta.

Indicadores ER: SV no está en BCD.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal de *EM/DM no está en BCD o se ha excedido el área de EM/DM.)

Todos los ejemplos siguientes utilizan OUT en diagramas que generalmenteserán utilizados para controlar bits de salida en el área IR. Sin embargo no hayningún motivo por el que estos diagramas no pueden modificarse para controlarla ejecución de otras instrucciones.

El siguiente ejemplo muestra dos temporizadores, uno seleccionado con unaconstante y otro seleccionado mediante el canal 005. Aquí, 00200 se pondrá enON después de que 00000 se ponga en ON y permanecerá en dicho estadodurante al menos 15 segundos. Cuando 00000 se pone en OFF, el temporiza-dor se reseteará y 00200 se pondrá en OFF. Cuando 00001 se pone en ON, TIM001 inicia la operación desde el SV indicado en IR canal 005. El bit 00201 sepone también en ON cuando 00001 se pone en ON. Cuando se alcanza el SV de005, 00201 se pone en OFF. Este bit también se pondrá a OFF cuando se rese-tee TIM 001, independientemente de si ha transcurrido o no el SV.

00000

TIM 000

00001

TIM 001

00200

00201

015.0 s

TIM 000

#0150

TIM 001

IR 005 IR 005

Dirección Instrucción Operandos

00000 LD 0000000001 TIM 000

# 015000002 LD TIM 00000003 OUT 0020000004 LD 0000100005 TIM 001

00500006 AND NOT TIM 00100007 OUT 00200

Hay dos formas de obtener temporizadores con capacidad superior a 999.9segundos. Un método es programar temporizadores consecutivos, utilizando elindicador de finalización de cada temporizador para activar el siguiente tempori-

Precauciones

Ejemplos

Ejemplo 1:Aplicación básica

Ejemplo 2:Temporizadores ampliados

Instrucciones de temporizador y contador Sección 5-14

Page 164: C200HALPHA Manual Programacion

158

zador. El siguiente es un ejemplo para crear un temporizador de 30 minutos condos temporizadores de 900.0 segundos (15 minutos).

00000

TIM 001

TIM 00200200

900.0 s

900.0 s

TIM 001

#9000

TIM 002

#9000

Dirección Instrucción Operandos

00000 LD 0000000001 TIM 001

# 900000002 LD TIM 00100003 TIM 002

# 900000004 LD TIM 00200005 OUT 00200

En este ejemplo, 00200 se pondrá en ON 30 minutos después de ponerse a ON00000.

TIM también se puede combinar con CNT o CNT se puede utilizar para contarbits de reloj del área SR para generar temporizadores de rango más amplio. Enla 5-14-4 COUNTER -- CNT se proporciona un ejemplo.

TIM se puede combinar con KEEP(011) para retardar la puesta a ON y OFF deun bit en referencia a la condición de ejecución deseada. KEEP(011) sedescribe en 5-9-4 BIESTABLE -- KEEP(011).

Para crear retardos, se utilizan los indicadores de finalización de dos TIM paradeterminar las condiciones de ejecución de set y reset del bit designado porKEEP(011). El bit que se desea retardar se utiliza en KEEP(011). La conmuta-ción a ON y OFF del bit designado para KEEP(011) es retardado por lo tanto porel SV de los dos TIM. Evidentemente si se desea los dos SV pueden ser iguales.

En el siguiente ejemplo, 00500 se pondría a ON 5.0 segundos después de que00000 pase a ON y luego se pone a OFF 3.0 segundos después de que 00000pase a OFF. Es necesario utilizar 00500 y 00000 para determinar la condiciónde ejecución de TIM 002; 00000 es necesario en una condición negada pararesetear TIM 002 cuando 00000 pasa a ON y 00500 es necesario para activarTIM 002 (cuando 00000 está en OFF).

00000

00500 00000

TIM 001

TIM 002

005.0 s

003.0 s

00000

00500

5.0 s 3.0 s

TIM 001

#0050

S

R

KEEP(011)

00500

TIM 002

#0030

Dirección Instrucción Operandos

00000 LD 0000000001 TIM 001

# 005000002 LD 0050000003 AND NOT 0000000004 TIM 002

# 003000005 LD TIM 00100006 LD TIM 00200007 KEEP(011) 00500

El tiempo que un bit permanece en ON o en OFF se puede controlar combi-nando TIM con OUT o OUT NOT. El siguiente diagrama indica como hacerlo. Eneste ejemplo, 00204 permanecería en ON durante 1.5 segundos después deque 00000 pase a ON independientemente del tiempo que 00000 esté en ON.Esto se obtiene utilizando 01000 como un bit de autorretención activado por00000 y que pone a ON 00204. Cuando TIM 001 se pone en ON (es decir

Ejemplo 3:Retardos a ON/OFF

Ejemplo 4:Bits de un impulso

Instrucciones de temporizador y contador Sección 5-14

Page 165: C200HALPHA Manual Programacion

159

cuando ha transcurrido el SV de TIM 001), 00204 se pondrá a OFF por medio deTIM 001.

01000 TIM 001

00000

01000

01000 TIM 001

01000

00204

001.5 s

00000

00204

1.5 s 1.5 s

TIM 001

#0015

Dirección Instrucción Operandos

00000 LD 0100000001 AND NOT TIM 00100002 OR 0000000003 OUT 0100000004 LD 0100000005 TIM 001

# 001500006 LD 0100000007 AND NOT TIM 00100008 OUT 00204

Para ahorrar memoria se puede utilizar el siguiente temporizador de unimpulso.

00000

TIM 00100100

00100

001.5 s

TIM 001

#0015

Dirección Instrucción Operandos

00000 LD 0000000001 OR 0010000002 TIM 001

# 001500003 AND NOT TIM 00100004 OUT 00100

Se pueden programar bits para que conmuten a ON y OFF a intervalos regu-lares mientras está en ON una condición de ejecución designada, utilizando dosTIM. Un TIM pone a ON y OFF el bit indicado y el otro controla la operación delprimero. Es decir, cuando el indicador de finalización del primer TIM se pone enON, el segundo TIM inicia la operación y cuando el indicador de finalización delsegundo TIM se pone a ON, inicia la operación el primer TIM.

00000 TIM 002

TIM 001

TIM 00100205

00000

00205

1.5 s

1.0 s

1.5 s

1.0 s 1.5 s1.0 s

TIM 001

#0010

TIM 002

#0015

Dirección Instrucción Operandos

00000 LD 0000000001 AND TIM 00200002 TIM 001

# 001000003 LD TIM 00100004 TIM 002

# 001500005 LD TIM 00100006 OUT 00205

Un método más simple pero menos flexible de crear un bit intermitente es reali-zar la operación AND entre bits de reloj del área SR con la condición de ejecu-ción que tiene que estar en ON cuando opere el bit intermitente. Aunque estemétodo no utiliza TIM, se incluye aquí para poder comparar. Este método estámás limitado dado que el número de veces en ON y en OFF debe ser igual ydepende de los bits de reloj disponibles en el área de SR.

Ejemplo 5:Bits intermitentes

Instrucciones de temporizador y contador Sección 5-14

Page 166: C200HALPHA Manual Programacion

160

En el siguiente ejemplo se utiliza el reloj de 1 segundo (25502) de tal forma que00206 conmutaría ON -- OFF cada segundo, es decir estaría 0,5 segundos enON y 0,5 segundos en OFF. La precisión de temporización y el estado inicial de00206 dependería del estado del impulso de reloj cuando 00000 se ponga enON.

00000 2550200206

Dirección Instrucción Operandos

00000 LD 0000000001 LD 2550200002 OUT 00206

5-14-2 TEMPORIZADOR DE ALTA VELOCIDAD -- TIMH(015)

SV: Valor seleccionado (canal, BCD)

IR, AR, DM, HR, LR, #

N: Número de TC

# (preferible de 000 a 015)Símbolo de relés

Valores de definidor

Áreas de datos de operando

TIMH(015) N

SV

El SV se selecciona entre 00.00 y 99.99. (Aunque se puede seleccionar 00.00 y00.01, 00.00 inhibirá el temporizador, es decir, pondrá inmediatamente a ON elindicador de finalización y 00.01 no tendrá fiabilidad). No se escribe el puntodecimal.

Cada número de TC sólo se puede utilizar como definidor en una instrucciónTIM o CNT.

No se deben utilizar los números de TC 016 a TC 511 si el tiempo de scan essuperior a 10 ms.

TIMH(015) opera de la misma forma que TIM excepto que la unidad de medidaes 0.01 segundo.

El tiempo de ciclo influye en la precisión de TIMH(015) si se utilizan números deTC 016 a TC 511. Si el tiempo de ciclo es superior a 10 ms, utilizar números deTC 000 a TC 015.

Consultar los detalles de operación en 5-14-1 TEMPORIZADOR -- TIM.Excepto lo anterior, el resto de aspectos de operación son iguales.

Los temporizadores en secciones de programa enclavadas se resetean cuandola condición de ejecución para IL(002) es OFF. Los cortes de alimentación tam-bién resetean los temporizadores. Si se precisa un temporizador que no seresetee en tales condiciones, se pueden contar los impulsos de los bits de relojdel área SR para obtener temporizadores utilizando CNT. Ver 5--14--4 CONTA-DOR -- CNT.

La ejecución del programa continuará incluso aunque no se utilice SV en BCD,pero la temporización no será exacta.

Indicadores ER: SV no está en BCD.

Canal DM/EM direccionado indirectamente no existe. (Contenido decanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

Limitaciones

Descripción

Precauciones

Instrucciones de temporizador y contador Sección 5-14

Page 167: C200HALPHA Manual Programacion

161

5-14-3 TEMPORIZADOR TOTALIZADOR -- TTIM(087)

SV: Valor selec. (canal, BCD)

IR, AR, DM, HR, LR

RB: Bit de reset

IR, SR, AR, HR, LR

Símbolo de relés

Áreas de datos de operandoTTIM(087)

N

SV

RB

N: Número de TC

# (000 a 511)

Valores de definidor

Limitaciones El rango de SV es de 0000 a 9999 (000.0 y 999.9 s) y se debe escribir en BCD.No se escribe el punto decimal.Cada número de TC se puede utilizar como definidor en sólo una instrucción deTIM o CNT.

Descripción TTIM(087) se utiliza para crear un temporizador que incrementa el PV cada 0.1s entre 0.1 y 999.9 s. TTIM(087) incrementa en unidades de 0.1 segundosdesde cero. La precisión de TTIM(087) es +0.0/--0.1 segundo. Un temporizadorTTIM(087) temporizará mientras su condición de ejecución sea ON hastaalcanzar el SV o hasta que RB se ponga en ON para resetearlo. Los temporiza-dores TIMM(87) temporizarán sólo mientras se ejecuten cada ciclo, es decir, notemporizan pero retienen su PV, en secciones de programa enclavadas ocuando están incluidos en saltos en el programa.Los indicadores de finalización y los PVs de los temporizadores 000 a 015 serefrescan cada 10 ms, pero los PVs de los temporizadores 016 a 511 se refres-can cada vez que se ejecuta TTIM(087) en el programa.

Precauciones Los PVs de temporizadores totalizadores en secciones de programa enclava-das se mantienen cuando la condición de ejecución para IL(002) es OFF. A dif-erencia de los temporizadores y temporizadores de alta velocidad, los tempori-zadores totalizadores en secciones de programa saltadas no continúan la tem-porización pero mantienen el PV.Los cortes de alimentación resetearán los temporizadores.Los temporizadores totalizadores no rearrancarán después de transcurrido eltiempo a no ser que se cambie el PV a un valor inferior al SV o se ponga a ON laentrada de reset.Algunas veces es necesario un retardo de un ciclo para que se ponga a ON elindicador de finalización después de haber transcurrido el tiempo.

Indicadores ER: SV no está en BCD.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal de *EM/DM no está en BCD o se ha excedido el área de EM/DM.)

Ejemplo La siguiente figura ilustra la relación entre las condiciones de ejecución para untemporizador totalizador con un valor seleccionado de 2 s, su PV y el indicadorde finalización.

Dirección Instrucción Operandos

00000 LD 0000000001 TTIM(087)

TIM 000# 0020LR 2100

00000TTIM(087)

TIM 000

#0020

LR 2100

Instrucciones de temporizador y contador Sección 5-14

Page 168: C200HALPHA Manual Programacion

162

Entrada de tempori-zación(I: IR 00000)Bit de reset(RB: LR 2100)

Indicador de finalización(TIM 000)

Valor presente: 0020

0000

5-14-4 CONTADOR -- CNT

SV:Valor seleccionado (canal, BCD)

IR, AR, DM, HR, LR, #

N: Número de TC

# (000 a 511)Símbolo de relés

Valores de definidor

Áreas de datos de operando

CP

R

CNT N

SV

Todo número de TC sólo se puede utilizar como definidor en una instrucción TIMo CNT.

CNT se utiliza para descontar a partir del SV cuando la condición de ejecuciónen el impulso de contaje, CP, pase de OFF a ON, es decir, el valor presente (PV)será reducido en uno siempre que CNT se ejecute con una condición de ejecu-ción ON para CP y la condición de ejecución fuera OFF para la última ejecución.Si la condición de ejecución no cambió o cambió de ON a OFF, el PV de CNT nocambiará. El indicador de finalización para un contador se pone a ON cuando elPV alcanza cero y permanecerá en ON hasta que el contador se resetee.CNT se resetea con una entrada de reset, R. Cuando R pasa de OFF a ON, elPV se resetea a SV. El contador no descuenta mientras la entrada R está en ON.El PV para CNT no se resetea en secciones de programa enclavadas o porcortes de alimentación.Los cambios en las condiciones de ejecución, el indicador de finalización y el PVse muestran en la siguiente figura.

Entrada de contajede impulsos (CP)

Entrada de reset (R)

ON

OFF

ON

OFF

Indicador definalización

ON

OFF

PVSV

SV -- 1

SV -- 2

0002

0001

0000

SV

La ejecución del programa continuará incluso si se utiliza un SV no BCD, pero elSV no será correcto.

Indicadores ER: SV no está en BCD.

Limitaciones

Descripción

Precauciones

Instrucciones de temporizador y contador Sección 5-14

Page 169: C200HALPHA Manual Programacion

163

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM no está en BCD o se ha excedido el área de EM/DM).

En el siguiente ejemplo, el PV disminuye siempre que 00000 y 00001 estén enON suponiendo que 00002 esté en OFF y que 00000 ó 00001 estuvieran enOFF la última vez que se ejecutó CNT 004. Una vez descontados 150 pulsos (esdecir, cuando el PV es cero), 00205 se pondrá en ON.

00000CP

R

CNT 004

#015000002

00001

00205

CNT 004

Dirección Instrucción Operandos

00000 LD 0000000001 AND 0000100002 LD 0000200003 CNT 0004

# 015000004 LD CNT 00400005 OUT 00205

Aquí, 00000 se puede utilizar para controlar cuando está operativo CNT y00001 se puede utilizar como el bit cuyas conmutaciones de OFF a ON ha decontarse.

El anterior CNT se puede modificar para rearrancar desde el SV cada vez quese conecta la alimentación al PLC. Esto se realiza utilizando el indicador deprimer ciclo en el área SR (25315) para restaurar el contador como se indica acontinuación.

00000CP

R

CNT 004

#015000002

00001

00205

CNT 004

25315

Dirección Instrucción Operandos

00000 LD 0000000001 AND 0000100002 LD 0000200003 OR 2531500004 CNT 004

# 015000005 LD CNT 00400006 OUT 00205

Se pueden programar contadores con capacidad superior a 9.999 utilizando uncontador para contar el número de veces que otro contador ha contado hastacero desde el SV.

En el siguiente ejemplo, 00000 se utiliza para controlar cuándo opera CNT 001.CNT 001, cuando 00000 está en ON, descuenta el número de conmutacionesde OFF a ON de 00001. CNT 001 se resetea mediante su indicador de finaliza-ción, es decir empieza a contar de nuevo tan pronto como su PV es cero. CNT002 cuenta el número de veces que el indicador de finalización de CNT 001 sepone en ON. El bit 00002 sirve como reset para todo el contador ampliado, rese-teando tanto CNT 001 como CNT 002 cuando está en OFF. El indicador de fina-lización para CNT 002 también se utiliza para resetear CNT 001 para inhibir suoperación una vez que el SV de CNT 002 se ha alcanzado, hasta que se reseteael contador ampliado completo mediante 00002.

Dado que en este ejemplo el SV para CNT 001 es 100 y el SV para CNT 002 es200, el indicador de finalización para CNT 002 se pone en ON cuando se han

Ejemplo 1:Aplicación básica

Ejemplo 2:Contador ampliado

Instrucciones de temporizador y contador Sección 5-14

Page 170: C200HALPHA Manual Programacion

164

contado 20.000 (100 x 200) conmutaciones de OFF a ON en 00001. Estopondrá a ON el bit 00203.

00203

CP

R

CNT 001

#0100

CP

R

CNT 002

#0200

CNT 001

00002

CNT 002

00000 00001

00002

CNT 001

CNT 002

Dirección Instrucción Operandos

00000 LD 0000000001 AND 0000100002 LD NOT 0000200003 OR CNT 00100004 OR CNT 00200005 CNT 001

# 010000006 LD CNT 00100007 LD NOT 0000200008 CNT 002

# 020000009 LD CNT 00200010 OUT 00203

CNT se puede utilizar secuencialmente tantas veces como sea necesario paraproducir contadores capaces de contar cualquier valor que se desee.

CNT se puede utilizar para crear temporizadores ampliados de dos formas:combinando TIM con CNT y contando los bits de reloj del área SR.

En el siguiente ejemplo, CNT 002 cuenta el número de veces que TIM 001alcanza cero desde su SV. El indicador de finalización para TIM 001 se utilizapara resetear TIM 001 de tal forma que corra continuamente y CNT 002 cuenteel número de veces que el indicador de finalización para TIM 001 se pone en ON(CNT 002 se ejecutará una vez por cada vez que el indicador de finalización deTIM 001 se ponga en ON y TIM 001 se resetee por su indicador de finalización).TIM 001 también se resetea mediante el indicador de finalización de CNT 002de tal forma que el temporizador ampliado no arrancará de nuevo hasta queCNT 002 se resetee mediante 00001, que sirve como reset para el temporiza-dor ampliado completo.

Dado que en este ejemplo el SV para TIM 001 es 5.0 segundos y el SV para CNT002 es 100, el indicador de finalización de CNT 002 se pone en ON una veztranscurridos 8 minutos y 20 segundos (5 segundos x 100 veces). Esto pondrá aON el bit 00201.

00000 TIM 001 CNT 002

TIM 001

00001

CNT 00200201

CP

R

005.0 s

CNT002

#0100

TIM 001

#0050

Dirección Instrucción Operandos

00000 LD 0000000001 AND NOT TIM 00100002 AND NOT CNT 00200003 TIM 001

# 005000004 LD TIM 00100005 LD 0000100006 CNT 002

# 010000007 LD CNT 00200008 OUT 00201

En el siguiente ejemplo, CNT 001 cuenta el número de veces que el bit de relojde 1 segundo (25502) conmuta de OFF a ON. Aquí de nuevo, 00000 se utilizapara controlar las veces que opera el contador.

Ejemplo 3:Temporizadores ampliados

Instrucciones de temporizador y contador Sección 5-14

Page 171: C200HALPHA Manual Programacion

165

Dado que en este ejemplo el SV para CNT 001 es 700, el indicador de finaliza-ción para CNT 002 se pondrá en ON cuando hayan transcurrido 11 minutos y 40segundos (1 segundo x 700 veces). Esto pondrá a ON el bit 00202.

CP

R

CNT001

#0700

00000 25502

00001

CNT 0010202

Dirección Instrucción Operandos

00000 LD 0000000001 AND 2550200002 LD NOT 0000100003 CNT 001

# 070000004 LD CNT 00100005 OUT 00202

AtenciónImpulsos de reloj de menor duración no implican temporizadores más precisosdado que en ciclos más largos, pueden ser difíciles de leer los tiempos de ONmás cortos. En particular, los impulsos de reloj de 0.02-segundos y 0.1-segundono deberían utilizarse para crear temporizadores con instrucciones CNT.

5-14-5 CONTADOR REVERSIBLE -- CNTR(012)

SV: Valor seleccionado (canal, BCD)

IR, AR, DM, HR, LR, #

N: Número de TC

# (000 a 511)Símbolo de relés

Valores de definidor

Áreas de datos de operando

II

DICNTR(012)

N

SVR

Cada número de TC se puede utilizar como el definidor en sólo una instrucciónTIM o CNT.

CNTR(012) es un contador reversible, es decir se utiliza para contar entre cero ySV de acuerdo con los cambios en dos condiciones de ejecución, la entrada decontaje adelante (II) y la entrada de contaje atrás (DI).

El valor presente (PV) aumentará en uno cuando se ejecute CNTR(012) conuna condición de ejecución ON para II y la última condición de ejecución para IIsea OFF. El valor presente (PV) disminuirá en uno siempre que se ejecuteCNTR(012) con una condición de ejecución ON para DI y la última condición deejecución para DI sea OFF. Si la transición de OFF a ON se produce en ambasentradas II y DI, el PV no cambiará.

Si las condiciones de ejecución no han cambiado o lo han hecho de ON a OFFpara ambas II y DI, el PV de CNT no cambiará.

El contador reversible realiza la operación de contador cíclico: en contaje des-cendente, de 0000 pasa al SV y se pone a ON el indicador de finalización hastaque el PV se descuente de nuevo. En contaje ascendente, del SV se pasa a unPV 0000 y el indicador de finalización se pone a ON hasta que se incremente denuevo el PV.

CNTR(012) se resetea con la entrada de reset, R. Cuando R pasa de OFF a ON,el PV se resetea a cero. No se realiza ningún contaje mientras la entrada dereset está en ON. El PV de CNTR(012) no se reseteará en secciones de pro-grama enclavado o por cortes de alimentación.

Limitaciones

Descripción

Instrucciones de temporizador y contador Sección 5-14

Page 172: C200HALPHA Manual Programacion

166

Los cambios en las condiciones de ejecución de II y DI, el indicador de finaliza-ción y el PV se muestran en la siguiente figura.

Entrada de contajeadelante (II)

Entrada de contajeatrás (DI)

ON

OFF

ON

OFF

Indicador definalización

ON

OFF

PVSV

SV -- 1

SV -- 20001

0000 0000

SV

SV -- 1

SV -- 2

La ejecución del programa continuará incluso aunque el SV utilizado no esté enBCD, pero el contaje puede no ser exacto.

Indicadores ER: SV no está en BCD.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal de *EM/DM no está en BCD o se ha excedido el área de EM/DM).

Precauciones

Instrucciones de temporizador y contador Sección 5-14

Page 173: C200HALPHA Manual Programacion

167

5-15 Desplazamiento de datosTodas las instrucciones descritas en esta sección se utilizan para desplazardatos, pero en diferentes cantidades y direcciones. La primera instrucción dedesplazamiento, SFT(010), desplaza una condición de ejecución en un registrode desplazamiento; el resto de instrucciones desplazan datos que ya están enmemoria.

5-15-1 REGISTRO DE DESPLAZAMIENTO -- SFT(010)

St: Canal inicial

IR, SR, AR, HR, LR

E: Canal final

IR, SR, AR, HR, LR

Áreas de datos de operandoSímbolo de relés

I

P

SFT(010)

St

ER

St debe ser menor o igual que E y ambos deben estar en la misma área dedatos.

Si un bit de los canales utilizados en el registro de desplazamiento, se utilizatambién en una instrucción que controla su estado de bit individual (OUT,KEEP(011)), al chequear la sintaxis del programa con la consola de programa-ción u otro dispositivo se generará un error (“COIL/OUT DUPL”). Sin embargo,el programa se ejecutará. Ver Ejemplo 2: Control de bits en registros de despla-zamiento sobre un caso concreto de programación.

SFT(010) se controla mediante tres condiciones de ejecución I, P y R. SiSFT(010) se ejecuta y 1) condición de ejecución P en ON y 2) R en OFF, la con-dición de ejecución I se desplaza al bit menos significativo de un registro de des-plazamiento definido entre St y E, es decir, si I está en ON, se desplaza 1 en elregistro; si I es OFF, se desplaza un 0. Al desplazar el estado I en el registro,todos los bits del registro se desplazan una posición a la izquierda, perdiéndoseel bit de la izquierda.

Condición de ejecución IDato perdido

E St+1, St+2, ... St

La condición de ejecución en P funciona como una instrucción diferenciada, esdecir I se desplazará en el registro sólo cuando P esté en ON y la vez anteriorque se ejecutó SFT(010) estaba en OFF. Si no cambia la condición de ejecuciónP o lo hace de ON a OFF, el registro de desplazamiento no sufre variación.

St designa el canal de la derecha del registro de desplazamiento; E designa elde la izquierda. El registro de desplazamiento incluye los dos canales anterioresy todos los comprendidos entre ambos. El mismo canal puede designarse paraSt y E para crear un registro de desplazamiento de 16 bits (es decir, un canal).

Cuando la condición de ejecución R se pone en ON, todos los bits en el registrode desplazamiento se pondrán a OFF y el registro no operará hasta que R seponga en OFF de nuevo.

Indicadores No hay indicadores afectados por SFT(010).

Limitaciones

Descripción

Instrucciones de desplazamiento Sección 5-15

Page 174: C200HALPHA Manual Programacion

168

El siguiente ejemplo utiliza un bit de reloj de 1 segundo (25502) de tal forma quela condición de ejecución producida por 00005 se desplace a un registro de trescanales entre IR 010 y IR 012 cada segundo.

I

P

SFT(010)

010

012R

00005

25502

00006

Dirección Instrucción Operandos

00000 LD 0000500001 LD 2550200002 LD 0000600003 SFT(010)

010012

El siguiente programa se utiliza para controlar el estado del bit 17 de un registrode desplazamiento entre AR 00 y AR 01. Cuando el bit 17 se pone a set, 00004se pone a ON. Esto hace que no se efectúe el salto especificado por JMP(004)00 en ese ciclo y AR 0100 (el bit 17) se pondrá a ON. Cuando 12800 está en OFF(es decir todos los ciclos excepto durante el primer ciclo después de que 00004haya cambiado de OFF a ON), se ejecuta el salto y no cambiará el estado de AR0100.

I

P

R

SFT(010)

AR 00

AR 01

JME(005) 00

JMP(004) 00

00200

AR 0100

DIFU(013) 12800

00201

00202

00203

00004

12800

12800

Dirección Instrucción Operandos

00000 LD 0020000001 AND 0020100002 LD 0020200003 LD 0020300004 SFT(010)

AR 00AR 01

00005 LD 0000400006 DIFU(013) 1280000007 LD 1280000008 JMP(004) 0000009 LD 1280000010 OUT AR 010000011 JME(005) 00

Cuando en OUT se utiliza un bit que es parte de un registro de desplazamiento(o cualquier otra instrucción que controla estado de bit), se generará un error desintaxis durante el chequeo del programa, pero éste se ejecutará adecuada-mente (es decir tal como se escribió).

El siguiente programa controla la cinta transportadora de la figura de tal formaque los productos defectuosos detectados por el sensor son expulsados. Parahacer esto, la condición de ejecución determinada por las entradas del primersensor (00001) se guardan en un registro de desplazamiento: ON para pro-ducto correcto; OFF para producto defectuoso. La velocidad de la cinta se haajustado para que HR 0003 del registro de desplazamiento se pueda utilizarpara activar un mecanismo de expulsión (00500) cuando llega un productodefectuoso, es decir, cuando HR 0003 se pone en ON, 00500 se pone en ONpara activar el mecanismo.

El programa se ha ajustado para que un encoder rotativo (00000) controle laejecución de SFT(010) a través de DIFU(013), el encoder rotativo se ha selec-cionado para conmutar a ON y OFF cada vez que un producto pasa el primersensor. Se utiliza otro sensor (00002) para detectar productos defectuosos en la

Ejemplo 1:Aplicación básica

Ejemplo 2:Control de Bits en registrosde desplazamiento

Ejemplo 3:Acción de control

Instrucciones de desplazamiento Sección 5-15

Page 175: C200HALPHA Manual Programacion

169

expulsión de tal forma que se pueda resetear según sea necesario HR 0003 delregistro de desplazamiento.

Rampa

(00500)

Sensor(00001)

Encoder rotativo(00000)

Expulsor

Sensor(00002)

I

P

SFT(010)

HR 00

HR 01R

00001

00000

00003

00500HR 0003

00500

HR 0003

00002

Dirección Instrucción Operandos

00000 LD 0000100001 LD 0000000002 LD 0000300003 SFT(010)

HR 00HR 01

00004 LD HR 000300005 OUT 0050000006 LD 0000200007 OUT NOT 0050000008 OUT NOT HR 0003

5-15-2 REGISTRO DE DESPLAZAMIENTO REVERSIBLE -- SFTR(084)

C: Canal de control

IR, AR, DM, HR, LR

St: Canal inicial

IR, SR, AR, DM, HR, LR

Símbolos de relés

Áreas de datos de operando

E: Canal final

IR, SR, AR, DM, HR LR

SFTR(084)

C

St

E

@SFTR(084)

C

St

E

St y E deben estar en la misma área de datos y St debe ser menor o igual que E.

SFTR(084) se utiliza para crear un registro de desplazamiento de uno o varioscanales que puede desplazar datos a derecha o izquierda. Para crear un regis-tro de un canal, designar el mismo canal para St y E. El canal de control indica ladirección de desplazamiento, el estado a escribir en el registro, el impulso de

Limitaciones

Descripción

Instrucciones de desplazamiento Sección 5-15

Page 176: C200HALPHA Manual Programacion

170

desplazamiento y la entrada de reset. El canal de control se desglosa comosigue:

15 14 13 12 No utilizado.

Dirección de desplazamiento1 (ON): Izquierda (LSB a MSB)0 (OFF): Derecha (MSB a LSB)

Estado a escribir en el registro

Bit de impulso de desplazamiento

Reset

Los datos en el registro de desplazamiento serán desplazados un bit en la direc-ción indicada por el bit 12, desplazando un bit a CY y el estado del bit 13 en elotro extremo siempre que SFTR(084) se ejecute con una condición de ejecu-ción ON, el bit de reset esté en OFF y el bit 14 en ON. No se ejecuta nada si lacondición de ejecución es OFF o si el bit 14 está en OFF. Si SFTR(084) se eje-cuta con la condición de ejecución ON y el bit de reset (bit 15) en ON, el registrode desplazamiento completo incluido CY se pone a cero.

Indicadores ER: St y E no están en la misma área de datos o St es mayor que E.No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: Recibe el estado del bit 00 de St o del bit 15 de E, dependiendo de ladirección de desplazamiento.

En el siguiente ejemplo, IR 00000, IR 00001, IR 00002 y IR 00003 se utilizanpara controlar los bits de C utilizados en @SFTR(084). El registro de desplaza-miento está en DM 0010 y es controlado por IR 00004.

00000 LD 0000000001 OUT 0351200002 LD 0000100003 OUT 0351300004 LD 0000200005 OUT 0051400006 LD 0000300007 OUT 0351500008 LD 0000400009 @SFT(010)

035DM 0010DM 0010

0351200000

03513

03514

03515

00001

00002

00003

00004

Dirección

Estado aintroducir

Impulso dedesplaza-miento

Reset

@SFTR(084)

035

DM 0010

DM 0010

Dirección Instrucción Operandos

5-15-3 DESPLAZAMIENTO ARITMÉTICO DE BITS A IZQUIERDA --ASL(025)

Wd: Canal a desplazar

IR, SR, AR, DM, HR, LR

Símbolos de relés Áreas de datos de operandos

ASL(025)

Wd

@ASL(025)

Wd

Ejemplo

Instrucciones de desplazamiento Sección 5-15

Page 177: C200HALPHA Manual Programacion

171

Cuando la condición de ejecución es OFF, ASL(025) no se ejecuta. Cuando lacondición de ejecución es ON, ASL(025) desplaza una posición a la izquierdalos bits de Wd, coloca un cero en el bit 00 y el estado del bit 15 lo coloca en CY.

1 0 0 1 1 1 0 0 0 1 0 1 0 0 1 1CY

Bit00

Bit15

0

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: Recibe el estado del bit 15.

EQ: En ON cuando el contenido de Wd es cero; en caso contrario en OFF.

EQ: En ON cuando el contenido de Wd es cero; en caso contrario en OFF.

N: En ON cuando se desplaza un 1 al bit 15 de Wd.

5-15-4 DESPLAZAMIENTO ARITMÉTICO DE BITS A DERECHA --ASR(026)

Wd: Canal a desplazar

IR, SR, AR, DM, HR, LR

Símbolos de relés Áreas de datos de operando

ASR(026)

Wd

@ASR(026)

Wd

Cuando la condición de ejecución es OFF, ASR(026) no se ejecuta. Cuando lacondición de ejecución es ON, ASR(026) desplaza una posición a la derecha losbits de Wd, coloca un cero en el bit 15 y el estado del bit 00 lo coloca en CY.

1 0 0 1 0 1 1 0 0 1 1 0 0 1 01

Bit00

Bit15 CY

0

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: Recibe el estado del bit 00.

EQ: En ON cuando el contenido de Wd es cero; en caso contrario en OFF.

5-15-5 ROTAR A IZQUIERDA -- ROL(027)

Wd: Canal a rotar

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

ROL(027)

Wd

@ROL(027)

Wd

Cuando la condición de ejecución es OFF, ROL(027) no se ejecuta. Cuando lacondición de ejecución es ON, ROL(027) rota todos los bits de Wd a laizquierda, colocando CY en el bit 00 y el bit 15 de Wd en CY.

1 0 1 1 0 0 1 1 1 0 0 0 1 1 0 10

CYBit00

Bit15

Descripción

Descripción

Descripción

Instrucciones de desplazamiento Sección 5-15

Page 178: C200HALPHA Manual Programacion

172

Utilizar STC(041) para seleccionar el estado de CY o CLC(041) para borrar elestado de CY antes de hacer la rotación para garantizar que CY contiene elestado apropiado antes de ejecutar ROL(027).

El estado de CY se borra al final de cada ciclo (cuando se ejecuta END(01)).

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: Recibe el estado del bit 15.

EQ: En ON cuando el contenido de Wd es cero; en caso contrario en OFF.

N: En ON cuando se desplaza un 1 al bit 15 de Wd.

5-15-6 ROTAR A DERECHA -- ROR(028)

Wd: Canal a rotar

IR, SR, AR, DM, HR, LR

Símbolos de relés Áreas de datos de operando

ROR(028)

Wd

@ROR(028)

Wd

Cuando la condición de ejecución es OFF, ROR(028) no se ejecuta. Cuando lacondición de ejecución es ON, ROR(028) rota todos los bits de Wd a la derecha,colocando CY en el bit 15 y el bit 00 de Wd en CY.

0 1 0 1 0 1 0 0 0 1 1 1 0 0 0 10

Bit15CY

Bit00

Utilizar STC(041) para seleccionar el estado de CY o CLC(041) para borrar elestado de CY antes de hacer la rotación para garantizar que CY contiene elestado apropiado antes de ejecutar ROR(028).

El estado de CY se borra al final de cada ciclo (cuando se ejecuta END(01)).

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: Recibe el estado del bit 00.

EQ: En ON cuando el contenido de Wd es cero; en caso contrario en OFF.

N: En ON cuando se desplaza un 1 al bit 15 de Wd.

5-15-7 DESPLAZAMIENTO DE DÍGITO A LA IZQUIERDA -- SLD(074)

Símbolos de relés Áreas de datos de operando

SLD(074)

St

E

@SLD(074)

St

E

St: Canal inicial

IR, SR, AR, DM, HR, LR

E: Canal final

IR, SR, AR, DM, HR, LR

Limitaciones St y E deben estar en la misma área de datos y St debe ser menor o igual que E.

Cuando la condición de ejecución es OFF, SLD(074) no se ejecuta. Cuando lacondición de ejecución es ON, SLD(074) desplaza a la izquierda datos entre St

Precauciones

Descripción

Precauciones

Descripción

Instrucciones de desplazamiento Sección 5-15

Page 179: C200HALPHA Manual Programacion

173

y E (inclusive) en unidades de dígito (4 bits). Se escribe 0 en el dígito de la dere-cha del St y el contenido del dígito de la izquierda de E se pierde.

5

E

8 1

St

F C 97D

Dato perdido 0

...

Si se produce un corte de alimentación durante la operación de desplazamientoentre más de 50 canales, la operación puede que no se complete.

Indicadores ER: Los canales St y E están en diferentes áreas o St es mayor que E.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

5-15-8 DESPLAZAMIENTO DE DÍGITO A DERECHA -- SRD(075)

Símbolos de relés Áreas de datos de operando

SRD(075)

E

St

@SRD(075)

E

St

E: Canal final

IR, SR, AR, DM, HR, LR

St: Canal inicial

IR, SR, AR, DM, HR, LR

Limitaciones St y E deben estar en la misma área de datos y St debe ser menor o igual que E.

Cuando la condición de ejecución es OFF, SRD(075) no se ejecuta. Cuando lacondición de ejecución es ON, SRD(075) desplaza a la derecha datos entre St yE (inclusive) en unidades de dígito (4 bits). Se escribe 0 en el dígito de laizquierda de St y el contenido del dígito de la derecha de E se pierde.

2

St

3 1

E

4 5 C8F

Dato perdido0

...

La operación puede no completarse si se produce un fallo de alimentacióndurante un desplazamiento de más de 50 canales.

Indicadores ER: Los canales St y E están en diferentes áreas o St es mayor que E.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

5-15-9 DESPLAZAMIENTO DE CANAL -- WSFT(016)

Símbolos de relés Áreas de datos de operando

WSFT(016)

St

E

@WSFT(016)

St

E

St: Canal inicial

IR, SR, AR, DM, HR, LR

E: Canal final

IR, SR, AR, DM, HR, LR

Precauciones

Descripción

Precauciones

Instrucciones de desplazamiento Sección 5-15

Page 180: C200HALPHA Manual Programacion

174

St y E deben estar en la misma área de datos y St debe ser menor o igual que E.

Cuando la condición de ejecución es OFF, WSFT(016) no se ejecuta. Cuando lacondición de ejecución es ON, WSFT(016) desplaza datos entre St y E en uni-dades de canal (16 bits). Se escriben ceros en St y se pierde el contenido de E.

F 0 C 2 3 4 5 2 1 0 2 9

E St + 1 St

3 4 5 2 1 0 2 9 0 0 0 0

E St + 1 St

Se pierde

0000

Indicadores ER: Los canales St y E están en diferentes canales o St es mayor que E.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

5-15-10 REGISTRO DE DESPLAZAMIENTO ASÍNCRONO -- ASFT(017)

ASFT(017)

C

St

E

Símbolos de relés

ASFT(017)

C

St

E

C: Canal de control

IR, SR, AR, DM, HR, LR

St: Canal inicial

IR, SR, AR, DM, HR, LR

E: Canal final

IR, SR, AR, DM, HR, LR

Áreas de datos de operando

St y E deben estar en la misma área de datos y St debe ser menor o igual que E.

Cuando la condición de ejecución es OFF, no se ejecuta nada. Cuando la condi-ción de ejecución es ON, ASFT(017) se utiliza para crear un registro de despla-zamiento de canal asíncrono y reversible entre St y E. Este registro sólo des-plaza canales cuando el siguiente canal es cero. Además, sólo se desplaza uncanal por cada canal del registro que contenga ceros. Cuando los contenidos deun canal se desplazan al siguiente, los contenidos del canal original se fijan aceros. En definitiva, cuando se desplaza el registro, cada canal de ceros en elregistro cambia la posición con el siguiente. (Ver Ejemplo.)La dirección de rotación se define en C. También se utiliza C para resetear elregistro. Todo o parte del registro se puede resetear designando la partedeseada con St y E.

Nota Esta instrucción es la misma que DESPLAZAMIENTO DE CANALREVERSIBLE -- RWS(17) en los PLCs C200H.

Los bits 00 a 12 de C no se utilizan. El bit 13 indica la dirección de desplaza-miento: poner el bit 13 a ON para desplazar hacia abajo (hacia los canales dedirecciones más bajas) y OFF para desplazar arriba (hacia los canales de direc-ciones más altas). El bit 14 es el bit de habilitar desplazamiento: poner el bit 14 aON para habilitar la operación del registro de desplazamiento de acuerdo con elbit 13 y a OFF para inhibir el registro. El bit 15 es el bit de reset: el registro sereseteará entre St y E cuando ASFT(017) se ejecute con el bit 15 en ON. Ponerel bit 15 a OFF para operación normal.

Indicadores ER: St y E no están en la misma área de datos o St es mayor que E.

Limitaciones

Descripción

Limitaciones

Descripción

Canal de control

Instrucciones de desplazamiento Sección 5-15

Page 181: C200HALPHA Manual Programacion

175

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

En el siguiente ejemplo ASFT(017) se utiliza para desplazar canales en unregistro de desplazamiento de 11 canales creado entre DM 0100 y DM 0110suponiendo que HR 1215 (el bit de Reset en el canal de control) está en ON, elregistro entero debería ponerse a 0000. También se muestran los cambios dedatos que se producirían para el registro dado y contenidos del canal de control.

1234000000002345345600004567567867890000789A

12340000

00002345

34560000

45675678

67890000

789A

Antes deejecución

Después deejecución

DM 0100DM 0101DM 0102DM 0103DM 0104DM 0105DM 0106DM 0107DM 0108DM 0109DM 0110

HR 1213: OFF (Despl. arriba)HR 1214: ON (Despl. habilitado)HR 1215: OFF (Reset OFF)

5-16 Instrucciones de transferencia de datosEsta sección describe las instrucciones utilizadas para mover datos entre dife-rentes direcciones en las áreas de datos. Estos movimientos se pueden progra-mar para que estén en la misma o diferentes áreas de datos. Estas funcionesson ideales para utilizar todas las áreas de datos del PLC. En sistemas decomunicaciones también son necesarias estas funciones. Todas estas instruc-ciones sólo cambian el contenido de los canales a los que se transfieren losdatos, es decir, el contenido de los canales fuente no sufren modificaciones.

5-16-1 MOVER -- MOV(021)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR, #

D: Canal destino

IR, SR, AR, DM, HR, LR

Símbolos de relés Áreas de datos de operando

MOV(021)

S

D

@MOV(021)

S

D

Cuando la condición de ejecución es OFF no se ejecuta MOV(021). Cuando lacondición de ejecución es ON, MOV(021) copia el contenido de S a D.

Canal fuente Canal destino

No cambianestados de bit.

Los números de TC no se pueden designar como D para cambiar el PV de tem-porizador o contador. Se puede, sin embargo, cambiar fácilmente el PV de untemporizador o contador utilizando BSET(071).

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando se transfiere sólo ceros a D.

N: En ON cuando bit 15 de D es 1.

Ejemplo

Descripción

Precauciones

Instrucciones de transferencia de datos Sección 5-16

Page 182: C200HALPHA Manual Programacion

176

5-16-2 MOVER NEGADO -- MVN(022)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR, #

D: Canal destino

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

MVN(022)

S

D

@MVN(022)

S

D

Cuando la condición de ejecución es OFF, MVN(022) no se ejecuta. Cuando lacondición de ejecución es ON, MVN(022) transfiere el contenido invertido de S(canal especificado o constante hexadecimal de 4 dígitos) a D.

Canal fuente Canal destino

Estado de bitinvertido.

Los números de TC no se pueden designar como D para cambiar el PV de tem-porizador o contador. Se puede sin embargo, cambiar fácilmente el PV de untemporizador o contador utilizando BSET(071).

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando se transfiere sólo ceros a D.

N: En ON cuando bit 15 de D es 1.

5-16-3 RELLENAR BLOQUE -- BSET(071)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR, #

St: Canal inicial

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

Áreas de datos de operando

E: Canal final

IR, SR, AR, DM, HR, TC, LR

BSET(071)

S

St

E

@BSET(071)

S

St

E

St debe ser menor que o igual que E y St y E deben estar en la misma área derelés.

Cuando la condición de ejecución es OFF, BSET(071) no se ejecuta. Cuando lacondición de ejecución es ON, BSET(071) copia el contenido de S a todos loscanales desde St a E.

2

S

3 4 5 2

St

3 4 5

2

St+1

3 4 5

2

St+2

3 4 5

2

E

3 4 5

Descripción

Precauciones

Limitaciones

Descripción

Instrucciones de transferencia de datos Sección 5-16

Page 183: C200HALPHA Manual Programacion

177

BSET(071) se puede utilizar para cambiar el PV de temporizador/contador.(Esto no se puede hacer con MOV(021) o MVN(022).) BSET(071) también sepuede utilizar para borrar secciones de un área de datos, es decir área de DM,para preparar la ejecución de otras instrucciones.

Indicadores ER: St y E no están en la misma área de datos o St es mayor que E.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

En el siguiente ejemplo se utiliza BSET(071) para cambiar el PV de un tempori-zador dependiendo del estado de IR 00003 y IR 00004. Cuando IR 00003 estáen ON, TIM 010 operará como un temporizador de 50 segundos; cuando IR00004 está en ON, TIM 010 operará como un temporizador de 30 segundos.

TIM 010

#9999

@BSET(071)

#0500

TIM 010

TIM 010

@BSET(071)

#0300

TIM 010

TIM 010

00004

00003

00003

00004

00004

00003

Dirección Instrucción Operandos

00000 LD 0000300001 AND NOT 0000400002 @BSET(071)

# 0500TIM 010TIM 010

00003 LD 0000400004 AND NOT 0000300005 @BSET(071)

# 0300TIM 010TIM 010

00006 LD 0000300007 OR 0000400008 TIM 010

# 9999

5-16-4 TRANSFERENCIA DE BLOQUE -- XFER(070)

N: Número de canales (BCD)

IR, SR, AR, DM, HR, TC, LR, #

S: Canal fuente inicial

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

Áreas de datos de operando

D: Canal inicial destino

IR, SR, AR, DM, HR, TC, LR

XFER(070)

N

S

D

@XFER(070)

N

S

D

S y D pueden estar en la misma área de datos, pero no deben solaparse lasrespectivas áreas de bloque. S y S+N deben estar en la misma área de datos asícomo D y D+N.

N debe estar en BCD entre 0000 y 6144.

Ejemplo

Limitaciones

Instrucciones de transferencia de datos Sección 5-16

Page 184: C200HALPHA Manual Programacion

178

Cuando la condición de ejecución es OFF, XFER(070) no se ejecuta. Cuando lacondición de ejecución es ON, XFER(070) copia los contenidos de S, S+1, ...,S+N a D, D+1, ..., D+N.

2

D

3 4 5

1

D+1

3 4 5

2

D+2

3 4 2

2

D+N

6 4 5

2

S

3 4 5

1

S+1

3 4 5

2

S+2

3 4 2

2

S+N

6 4 5

Indicadores ER: N no está en BCD entre 0000 y 2000.S y S+N o D y D+N no están en la misma área de datos.No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

5-16-5 INTERCAMBIO DE DATOS -- XCHG(073)

E1: Canal de cambio 1

IR, SR, AR, DM, HR, TC, LR

E2: Canal de cambio 2

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés Áreas de datos de operando

XCHG(073)

E1

E2

@XCHG(073)

E1

E2

Cuando la condición de ejecución es OFF, XCHG(073) no se ejecuta. Cuando lacondición de ejecución es ON, XCHG(073) intercambia el contenido de E1 y E2.

E2E1

Si desea intercambiar el contenido de bloques mayores de 1 canal, utilizarcanales de trabajo como buffer intermedio para retener uno de los bloques utili-zando XFER(070) tres veces.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

5-16-6 DISTRIBUCIÓN DE DATOS -- DIST(080)

S: Dato fuente

IR, SR, AR, DM, HR, TC, LR, #

DBs: Canal base de destino

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

Áreas de datos de operando

C: Canal de control (BCD)

IR, SR, AR, DM, HR, TC, LR, #

DIST(080)

S

DBs

C

@DIST(080)

S

DBs

C

C debe estar en BCD. Si C!6655, DBs debe estar en la misma área de datosque DBs+C. Si C"9000, DBs debe estar en la misma área de datos queDBs+C--9000.

Descripción

Descripción

Limitaciones

Instrucciones de transferencia de datos Sección 5-16

Page 185: C200HALPHA Manual Programacion

179

DIST(080) se puede utilizar para distribución de un canal o para una operaciónde varios canales dependiendo del contenido del canal de control C. Si C estáentre 0000 y 6655, DIST(080) operará como una instrucción de distribución decanal y copiará el contenido de S a DBs+C. Si el dígito de la izquierda de C es 9,DIST(080) creará una pila con el número de canales especificado en los 3 dígi-tos de la derecha de C.

La operación de bloque no será fiable si la longitud de pila especificada es dife-rente de la longitud especificada en la última ejecución de DIST(080) oCOLL(081).

Cuando la condición de ejecución es OFF, DIST(080) no se ejecuta. Cuando lacondición de ejecución es ON, DIST(080) copia el contenido de S a DBs+C, esdecir, C se suma a DBs para determinar el canal destino.

2

DBs + C

3 4 52

S

3 4 5

Cuando la condición de ejecución es OFF, DIST(080) no se ejecuta. Cuando lacondición de ejecución es ON, DIST(080) copia el contenido de S aDBs+C--9000. Es decir, DBs es el puntero de bloque, por lo que S se copia alcanal indicado por DBs y DBs se incrementa en 1.

Especifica la longitud de bloque (000 a 999).

Un valor de 9 indica operación de bloque.

Dígitos de C: 3 2 1 0

Se pueden añadir datos hasta que se llene el bloque. DIST(080) se utiliza nor-malmente junto con COLL(081), que se puede seleccionar para leer de la pilaen método FIFO o LIFO. Consultar 5-16-7 RECOGER DATOS -- COLL(081)para más información.

Ejemplo de operación de bloqueEn el siguiente ejemplo, el contenido de C (LR 10) es 9010 y DIST(080) se utilizapara escribir el dato numérico #00FF en el bloque de 10 canales que va de HR20 a HR 29. Durante el primer ciclo cuando IR 00001 está en ON, el dato seescribe en DBs+1 (HR 21) y automáticamente se incrementa en 1 el puntero. Enel segundo ciclo los datos se escriben en DBs+2 (HR 22) y se incrementa el pun-tero de bloque y así sucesivamente.

1

HR 20

0 0 0

F

HR 21

0 0 F

HR 22

HR 29

Puntero debloque incre-mentado

2

HR 20

0 0 0

F

HR 21

0 0 F

F

HR 22

0 0 F

HR 29

Después deuna ejecución

Después dedos ejecuciones

DIST(080)

# 00FF

HR 20

LR 10

00001Dirección Instrucción Operandos

00000 LD 0000100001 DIST(080)

# 00FFHR 20LR 10

Puntero de bloque

Area de bloque

Descripción

Precauciones

Operación de distribuciónde datos (C=0000 a 6655)

Operación de bloque(C=9000 a 9999)

Instrucciones de transferencia de datos Sección 5-16

Page 186: C200HALPHA Manual Programacion

180

Indicadores ER: El contenido de C no está en BCD ó 6655<C<9000.

Cuando C!6655, DBs y DBs+C no están en la misma área de datos.

Cuando C"9000, DBs y DBs+C--9000 no están en la misma área dedatos.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el contenido de S es cero; en caso contrario en OFF.

5-16-7 RECOGIDA DE DATOS -- COLL(081)

SBs: Canal base fuente

IR, SR, AR, DM, HR, TC, LR

C: Offset (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

D: Canal destino

IR, SR, AR, DM, HR, TC, LR

COLL(081)

SBs

C

D

@COLL(081)

SBs

C

D

C debe estar en BCD. Si C!6655, SBs debe estar en la misma área de datos queSBs+C. Si el dígito de la izquierda de C es 8 ó 9, DBs debe estar en la mismaárea de datos que SBs+N (N=los tres dígitos de la derecha de C).

Dependiendo del valor de C, COLL(081) operará como una instrucción de reco-gida de datos, instrucción de pila FIFO o instrucción de pila LIFO. Si C está entre0000 y 6655, COLL(081) operará como una instrucción de recogida de datos ycopiará el contenido de SBs+C a D.

Si el dígito de la izquierda de C es 9 , COLL(081) operará como una instrucciónde pila FIFO. Si el dígito de la izquierda de C es 8, COLL(081) operará como unainstrucción de pila LIFO. Ambas operaciones de pila utilizan un inicio de pila enSBs con una longitud especificada en los tres dígitos de la izquierda de C.

La operación de pila no será fiable si la longitud de pila especificada es diferentede la longitud especificada en la última ejecución de DIST(080) o COLL(081).

Cuando la condición de ejecución es OFF, COLL(081) no se ejecuta. Cuando lacondición de ejecución es ON, COLL(081) copia el contenido de SBs + C a D, esdecir, C se suma a SBs para determinar el canal fuente.

2

D

3 4 52

SBs + C

3 4 5

Cuando la condición de ejecución es OFF, COLL(081) no se ejecuta. Cuando lacondición de ejecución es ON, COLL(081) desplaza los contenidos de cadacanal una dirección abajo dentro de la pila, desplazando finalmente el dato deSBs+1 (el primer valor escrito en la pila) al canal destino (D). El contenido delpuntero de pila (SBs) es por consiguiente disminuido en uno.

Especifica longitud de pila (000 a 999).

Un valor de 9 indica operación de pila FIFO

Dígitos de C: 3 2 1 0

COLL(081) se puede utilizar junto con DIST(080). Consultar 5-16-6 DISTRIBU-CION DE DATOS -- DIST(080) para más información.

Nota FIFO son las siglas de First-In-First-Out (Primero en entrar primero en salir).

Limitaciones

Descripción

Precauciones

Operación de recogida dedatos (C=0000 a 6655)

Operación de pila FIFO(C=9000 a 9999)

Instrucciones de transferencia de datos Sección 5-16

Page 187: C200HALPHA Manual Programacion

181

Ejemplo En el siguiente ejemplo, el contenido de C (HR 00) es 9010 y COLL(081) se uti-liza para copiar las entradas más antiguas de una pila de 10 canales (IR 001 a IR010) a LR 20.

Tras unaejecución

Tras dosejecuciones

DIST(080)

001

HR 00

LR 20

00001Dirección Instrucción Operandos

00000 LD 0000100001 COLL(081)

001HR 00LR 20

IR 001

Antes deejecución

1 2 3 4

0 0 0 2

A B C D

A B C D

0 0 0 1 0 0 0 0

IR 002

IR 003

IR 010

IR 001

IR 002

IR 003

IR 010

IR 001

IR 002

IR 003

IR 010

Salida

1 2 3 4

LR 20

Salida

A B C D

LR 20

Puntero de piladecrementado

Puntero depila

Area de pila

Puntero de piladecrementado

Cuando la condición de ejecución es OFF, COLL(081) no se ejecuta. Cuando lacondición de ejecución es ON, COLL(081) copia en D el último dato guardadoen la pila. El puntero de pila, SBs, se reduce luego en 1.

Especifica la longitud de pila (000 a 999).

Un valor de 8 indica operación de pila LIFO.

Dígitos de C: 3 2 1 0

Se pueden añadir datos a la pila hasta que se llene. La operación de pila deDIST(080) se puede utilizar junto con la operación de lectura de pila deCOLL(081). COLL(081) se puede seleccionar para lectura FIFO o LIFO. Con-sultar 5-16-6 DISTRIBUCION DE DATOS (080) para más información.

Nota LIFO son las siglas de Last-In-First-Out (Ultimo en entrar primero en salir).

Operación de pila LIFO(C=8000 a 8999)

Instrucciones de transferencia de datos Sección 5-16

Page 188: C200HALPHA Manual Programacion

182

Ejemplo En el siguiente ejemplo, el contenido de C (HR 00) es 8010 y COLL(081) se uti-liza para copiar las entradas más recientes de una pila de 10 canales (IR 001 aIR 010) a LR 20.

Tras unaejecución

Tras dosejecuciones

COLL(081)

001

HR 00

LR 20

00001Dirección Instrucción Operandos

00000 LD 0000100001 COLL(081)

001HR 00LR 20

IR 001

Antes deejecución

1 2 3 4

0 0 0 2

A B C D

1 2 3 4

0 0 0 1 0 0 0 0

IR 002

IR 003

IR 010

IR 001

IR 002

IR 003

IR 010

IR 001

IR 002

IR 003

IR 010

Salida

A B C D

LR 20

Salida

1 2 3 4

LR 20

Puntero de piladecrementado

Puntero depila

Area de pila

Puntero de piladecrementado

Indicadores ER: El contenido de C no está en BCD o 6655<C<8000.

Cuando C!6655, DBs y DBs+C no están en la misma área de datos.

Cuando C"8000, el principio y final de la pila no están en la misma áreade datos o el valor del puntero de pila excede la longitud de la pila.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el contenido de S es cero; en otros casos en OFF.

5-16-8 MOVER BIT -- MOVB(082)

S: Canal fuente

IR, SR, AR, DM, HR, LR, #

Bi: Designador de bit (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés

Áreas de datos de operando

D: Canal destino

IR, SR, AR, DM, HR, LR

MOVB(082)

S

Bi

D

@MOVB(082)

S

Bi

D

Limitaciones Los dos dígitos de menor peso y los dos de mayor peso de Bi deben estar entre00 y 15.

Cuando la condición de ejecución es OFF, MOVB(082) no se ejecuta. Cuando lacondición de ejecución es ON, MOVB(082) copia el bit especificado de S al bit

Descripción

Instrucciones de transferencia de datos Sección 5-16

Page 189: C200HALPHA Manual Programacion

183

especificado de D. Los bits en S y D se especifican por Bi. Los dos dígitos de laderecha de Bi designan el bit fuente; los de la izquierda designan el bit destino.

1

Bi

1 2 0

Bit fuente (00 a 15)

Bit destino (00 a 15)

0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1

Bit15

Bit00

0 1 0 1 0 1 0 0 0 1 1 1 0 0 0 1

0 1 0 0 0 1 0 0 0 1 1 1 0 0 0 1

S

D

Bi

1 2 0 1Bit15

Bit15

Bit00

Bit00

LSBMSB

Indicadores ER: Bi no está en BCD, o se está especificando uno inexistente (entre 00 y15).

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

N: En ON cuando el bit de mayor peso del contenido del canal D es 1, en-caso contrario en OFF.

5-16-9 MOVER DÍGITO -- MOVD(083)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR, #

Di: Designador de dígito (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés

Áreas de datos de operando

D: Canal destino

IR, SR, AR, DM, HR, TC, LR

MOVD(083)

S

Di

D

@MOVD(083)

S

Di

D

Limitaciones Los tres dígitos de la derecha de Di deben estar comprendidos, cada uno deellos, entre 0 y 3.

Cuando la condición de ejecución es OFF, MOVD(083) no se ejecuta. Cuandola condición de ejecución es ON, MOVD(083) copia el contenido del dígito(s)especificado(s) en S al dígito(s) especificado(s) de D. De una vez se puedentransferir hasta 4 dígitos. El primer dígito a copiar, el número de dígitos a copiar yel primer dígito en el que se ha de copiar se designan en Di como se indica en lafigura. Los dígitos de S se copiarán a dígitos consecutivos de D comenzandopor el primer dígito designado y continuando por el número de dígitos desig-nado. Si se alcanza el último dígito de S o D, los demás dígitos se utilizan vol-viendo a empezar en dígito 0.

Primer dígito en S (0 a 3)

Número de dígitos (0 a 3)0: 1 dígito1: 2 dígitos2: 3 dígitos3: 4 dígitos

Primer dígito en D (0 a 3)

No (puesto a cero)

Número dígito: 3 2 1 0

Descripción

Instrucciones de transferencia de datos Sección 5-16

Page 190: C200HALPHA Manual Programacion

184

Ejemplos de mover datos para varios valores de Di.

0

1

2

3

0

1

2

3

0

1

2

3

0

1

2

3

S

Di: 0031 Di: 0023

Di: 0030Di: 0010

S

SS

0

1

2

3

D

0

1

2

3

D

0

1

2

3

D

0

1

2

3

D

Indicadores ER: Por lo menos uno de los tres dígitos de menor peso de Di no está entre 0y 3.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

5-16-10 TRANSFERIR BITS -- XFRB(062)

C: Canal de control

IR, SR, AR, DM, TC, HR, LR, #

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

D: Primer canal destino

IR, SR, AR, DM, HR, LR

XFRB(062)

C

S

D

@XFRB(062)

C

S

D

Limitaciones Los bits fuente especificados deben estar en la misma área de datos.

Los bits destino especificados deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, XFRB(062) no se ejecuta. Cuando lacondición de ejecución es ON, XFRB(062) copia los bits fuente especificadosen los bits destino indicados. Los dos dígitos de la derecha de C especifican losbits iniciales de S y D y los dos de la izquierda el número de bits a copiar.

Primer bit de S (0 a F)

Primer bit de D (0 a F)

Número de bits (01 a FF)

LSBMSB

C

Nota Se pueden copiar hasta 255 (FF) bits en una operación.

Designador de dígito

Descripción

Instrucciones de transferencia de datos Sección 5-16

Page 191: C200HALPHA Manual Programacion

185

Ejemplo En el siguiente ejemplo, XFRB(062) se utiliza para transferir 5 bits de IR 020 aLR 21 cuando IR 00001 está en ON. El bit inicial en IR 020 es 0 y el bit inicial enLR 21 es 4, por lo que de IR 02000 a IR 02004 se copian en LR 2104 a LR 2108.

XFRB(062)

#0540

IR 020

LR 21

00001Dirección Instrucción Operandos

00000 LD 0000100001 XFRB(062)

# 0540020

LR 21

0 1 0 1 0 1 0 0 0 0 0 1

0 1 0 0 0 1 0 0 0 0 1

S (IR 020)

D (LR 21)

Bit15

Bit15

Bit00

Bit00

0 1 1 1

1 0 1 1 1

Indicadores ER: Los bits fuente especificados no están todos en la misma área de datos.Los bits destino especificados no están todos en la misma área.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

5-16-11 TRANSFERIR BLOQUE DE EM -- XFR2(----)

N: Número de canales (BCD)

IR, SR, AR, DM, HR, TC, LR, #

S: Canal fuente inicial

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

D: Canal destino inicial

IR, SR, AR, DM, HR, TC, LR, #

XFR2(----)

N

S

D

@XFR2(----)

N

S

D

Limitaciones S y S+N deben estar en la misma área de datos así como D y D+N.N debe estar en BCD.

Descripción Cuando la condición de ejecución es OFF, XFR2(----) no se ejecuta. Cuando lacondición de ejecución es ON, XFR2(----) copia los contenidos de S, S+1, ...,S+N a D, D+1, ..., D+N. Si se utiliza una constante para S o D, la constante es-pecifica una dirección en el banco de EM actual.

Indicadores ER: N no está en BCD.S y S+N o D y D+N no están en la misma área de datos.No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM) .

Ejemplo El siguiente ejemplo copia los contenidos de los 300 canales desde DM 0000 aDM 0299 en EM 2000 a EM 2299 en el banco actual.

XFR2(----)

#0300

DM 0000

#2000

00000 Dirección Instrucción Operandos

00200 LD 0000000201 XFR2(----)

# 0300DM 0000# 2000

Instrucciones de transferencia de datos Sección 5-16

Page 192: C200HALPHA Manual Programacion

186

5-16-12 TRANSFERIR BANCO DE EM -- BXF2(----)

C: Primer canal de control

IR, SR, AR, DM, HR, TC, LR, #

S: Canal fuente inicial

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

D: Canal destino inicial

IR, SR, AR, DM, HR, TC, LR, #

BXF2(----)

C

S

D

@BXF2(----)

C

S

D

Limitaciones El valor en C+1 debe estar en BCD entre 1 y 6144.S y S+N deben estar en la misma área de datos así como D y D+N.

Descripción Cuando la condición de ejecución es OFF, BXF2(----) no se ejecuta. Cuando lacondición de ejecución es ON, BXF2(----) copia los contenidos de S, S+1, ...,S+N a D, D+1, ..., D+N. Si se utiliza una constante para S o D, la constante espe-cifica una dirección en el banco de EM fuente o destino especificada en C.

Canales de control C contiene los números de banco fuente y destino si los datos son transferidos ao de EM. Los números de banco se ignoran a no ser que se utilice una constantepara S o D.C+1 contiene el número de canales para transferir y debe estar en BCD (1 a6144).

Canal decontrol

Bits Función

C 0 a 7 Especifica el número de banco fuente (00 a 02).8 a 15 Especifica el número de banco destino (00 a 02).

C+1 0 a 15 Especifica el número de canales a transferir (1 a6144).

Flags ER: N no está en BCD.

S y S+N o D y D+N no están en la misma área de datos.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM) .

El banco indicado por C no existe cuando se utiliza una dirección deárea de EM.

Ejemplo El siguiente ejemplo copia los contenidos de los 300 canales desde DM 0000 aDM 0299 en EM 2000 a EM 2299 en el banco 01 de EM.(El banco 00 de EM no se puede utilizar como fuente dado que S no es unaconstante).

BXF2(----)

DM 1000

DM 0000

#2000

00000 Dirección Instrucción Operandos

00200 LD 0000000201 BXF2(----)

DM 1000DM 0000# 2000

0

C: DM 1000

0 1 0

Número de banco fuente (00)

Número de banco destino (01)

0

C+1: DM 1001

3 0

Número de canales (300)

0

Instrucciones de transferencia de datos Sección 5-16

Page 193: C200HALPHA Manual Programacion

187

5-16-13 TRANSFERIR BANCO DE EM -- BXFR(125)

C: Primer canal de control

IR, SR, AR, DM, EM, HR, TC, LR

S: Canal fuente inicial

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de diagrama de relés

Áreas de datos de operando

D: Canal destino inicial

IR, SR, AR, DM, EM, HR, TC, LR

BXFR(125)

C

S

D

@BXFR(125)

C

S

D

Limitaciones El valor en C+1 debe ser BCD de 1 a 6144.

S y S+N deben estar en la misma área de datos, así como D y D+N.

Descripción Cuando la condición de ejecución es OFF, BXFR(125) no se ejecuta. Cuando lacondición de ejecución es ON, BXFR(125) copia los contenidos de S, S+1, ...,S+N a D, D+1, ..., D+N. El banco puede ser especificado (en C) si se utiliza paraS o D una dirección de área de EM.

Canales de control C contiene los números de banco fuente y destino si los datos se van a transferira o de EM. Los números de banco se ignoran a no ser que se utilice una direc-ción de área de EM o una constante para S o D.

C+1 contiene el número de canales a transferir y debe estar en BCD (1 a 6144).

Canal decontrol

Bits Función

C 0 a 7 Especifica el número de banco fuente (00 a 0F).8 a 15 Especifica el número de banco destino (00 a 0F).

C+1 0 a 15 Especifica el número de canales a transferir (1 a6144).

Indicadores ER: N no está en BCD.

S y S+N o D y D+N no están en la misma área de datos.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM) .

No existe el banco indicador por C cuando se utiliza una dirección debanco de EM.

Ejemplo El siguiente ejemplo copia los contenidos de los 300 canales desde DM 0000 aDM 0299 a los canales desde EM 2000 a EM 2299 en el banco de EM 01. (Elnúmero de banco fuente se ignora dado que no se ha utilizado para ello una di-rección de área de EM).

BXFR(125)

DM 1000

DM 0000

EM2000

00000 Dirección Instrucción Operandos

00200 LD 0000000201 BXFR(125)

DM 1000DM 0000EM 2000

Instrucciones de transferencia de datos Sección 5-16

Page 194: C200HALPHA Manual Programacion

188

5-17 Instrucciones de comparación

5-17-1 COMPARACIÓN DE BLOQUE -- MCMP(019)

TB1: Primer canal de tabla 1

IR, SR, AR, DM, HR, TC, LR

TB2: Primer canal de tabla 2

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

Áreas de datos de operando

R: Canal de resultado

IR, AR, DM, HR, TC, LR

MCMP(019)

TB1

TB2

R

@MCMP(019)

TB1

TB2

R

Limitaciones TB1 y TB1+15 deben estar en la misma área de datos, así como TB2 y TB2+15.

Cuando la condición de ejecución es OFF, MCMP(019) no se ejecuta. Cuandola condición de ejecución es ON, MCMP(019) compara el contenido de TB1 aTB2, TB1+1 a TB2+1, TB1+2 a TB2+2, ...y TB1+15 a TB2+15. Si el primer pares igual, el primer bit de R se pondrá en OFF, etc., es decir, si el contenido deTB1 es igual al contenido de TB2, el bit 00 se pone a OFF, si el contenido deTB1+1 es igual al contenido de TB2+1, el bit 01 se pone a OFF, etc. El resto delos bits de R se pondrán a ON.

Indicadores ER: Una de las tablas (de TB1 a TB1+15, o de TB2 a TB2+15) excede elárea de datos.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

El siguiente ejemplo muestra las comparaciones hechas y los resultados obte-nidos para MCMP(019). Aquí las comparaciones se realizan cada scan cuando00000 está en ON.

IR 100 0100 DM 0200 0100 DM 030000 0IR 101 0200 DM 0201 0200 DM 030001 0IR 102 0210 DM 0202 0210 DM 030002 0IR 103 ABCD DM 0203 0400 DM 030003 1IR 104 ABCD DM 0204 0500 DM 030004 1IR 105 ABCD DM 0205 0600 DM 030005 1IR 106 ABCD DM 0206 0210 DM 030006 1IR 107 0800 DM 0207 0800 DM 030007 0IR 108 0900 DM 0208 0900 DM 030008 0IR 109 1000 DM 0209 1000 DM 030009 0IR 110 ABCD DM 0210 0210 DM 030010 1IR 111 ABCD DM 0211 1200 DM 030011 1IR 112 ABCD DM 0212 1300 DM 030012 1IR 113 1400 DM 0213 1400 DM 030013 0IR 114 0210 DM 0214 0210 DM 030014 0IR 115 1212 DM 0215 1600 DM 030015 1

MCMP(019)

100

DM 0200

DM 0300

00000

TB1: IR 100 TB2: DM 0200 R: DM 0300

Dirección Instrucción Operandos

00000 LD 0000000001 MCMP(019)

100DM 0200DM 0300

Descripción

Ejemplo

Instrucciones de comparación Sección 5-17

Page 195: C200HALPHA Manual Programacion

189

5-17-2 COMPARAR -- CMP(020)

Cp1: Primer canal a comparar

IR, SR, AR, DM, HR, TC, LR, #

Cp2: Segundo canal a comparar

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

CMP(020)

Cp1

Cp2

Para comparar un valor con el PV de un temporizador o contador, el valor debeestar en BCD.

Cuando la condición de ejecución es OFF, CMP(020) no se ejecuta. Cuando lacondición de ejecución es ON, CMP(020) compara Cp1 y Cp2 y envía el resul-tado a los indicadores GR, EQ y LE en el área SR.

Prestar atención si se colocan otras instrucciones entre CMP(020) y la opera-ción que acceda a los indicadores EQ, LE y GR ya que puede cambiar el estadode dichos indicadores.CMP(020) no se puede utilizar para comparar datos binarios con signo. Utilizaren este caso CPS(114). Consultar 5-17-8 COMPARACION BINARIA CONSIGNO -- CPS(114) más información.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: ON si Cp1 es igual que Cp2.

LE: ON si Cp1 es menor que Cp2.

GR: ON si Cp1 es mayor que Cp2.

Indicador Dirección C1 < C2 C1 = C2 C1 > C2

GR 25505 OFF OFF ON

EQ 25506 OFF ON OFF

LE 25507 ON OFF OFF

El siguiente ejemplo muestra cómo salvar inmediatamente el resultado de lacomparación. Si el contenido de HR 09 es mayor que 010, 00200 se pone enON; si los contenidos son iguales, 00201 se pone en ON; si el contenido de HR09 es menor que 010, 00202 se pone en ON. En algunas aplicaciones, sólo seránecesaria una de las salidas, siendo innecesario el uso de TR 0. Con este tipo

Limitaciones

Descripción

Precauciones

Ejemplo 1:Salvar resultados deCMP(020)

Instrucciones de comparación Sección 5-17

Page 196: C200HALPHA Manual Programacion

190

de programación, 00200, 00201 y 00202 sólo serán cambiados cuando se eje-cute CMP(020).

CMP(020)

010

HR 09

00000

2550500200

2550700202

TR0

25506

00201

Mayor que

Igual

Menor que

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 OUT TR 000002 CMP(020)

010HR 09

00003 LD TR 000004 AND 25505

00005 OUT 0020000006 LD TR 000007 AND 2550600008 OUT 0020100009 LD TR 000010 AND 2550700011 OUT 00202

El siguiente ejemplo utiliza TIM, CMP(020) y el indicador LE (25507) para pro-ducir salidas en momentos concretos. El temporizador arranca poniendo a ON00000. Cuando 00000 está en OFF, TIM 010 se resetea y las dos segundasCMP(020) no se ejecutan. La salida 00200 se activa después de 100 segundos;la salida 00201, después de 200 segundos; la salida 00202, después de 300segundos; y la salida 00204, después de 500 segundos.La estructura bifurcada de este diagrama es importante para asegurar elcorrecto control de 00200, 00201 y 00202 según la temporización. Dado que

Ejemplo 2:Obtener indicacionesdurante operación detemporizador

Instrucciones de comparación Sección 5-17

Page 197: C200HALPHA Manual Programacion

191

todas estas comparaciones utilizan como referencia el PV del temporizador, elotro operando de cada CMP(020) debe ser BCD de 4 dígitos.

#2000

CMP(020)

TIM 010

#3000

CMP(020)

TIM 010

CMP(020)

TIM 010

#4000

00201

00204

00202

00000

00200

25507

00200

25507

00201

25507

TIM 010

500.0 s

Salida alos 100 s.

Salida alos 200 s.

Salida alos 300 s.

Salida alos 500 s.

TIM 010

#5000

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 TIM 010

# 500000002 CMP(020)

TIM 010# 4000

00003 AND 2550700004 OUT 0020000005 LD 0020000006 CMP(020)

TIM 010# 3000

00007 AND 2550700008 OUT 0020100009 LD 0020100010 CMP(020)

TIM 010# 2000

00011 AND 2550700012 OUT 0020200013 LD TIM 01000014 OUT 00204

5-17-3 COMPARAR DOS A DOS -- CMPL(060)

Cp2: Primer canal del segundo par de canalesa comparar

IR, SR, AR, DM, HR, TC, LR

Cp1: Primer canal del primer par de canales

IR, SR, AR, DM, HR, TC, TR

Símbolo de relés Áreas de datos de operando

CMPL(060)

Cp1

Cp2

___

Limitaciones Cp1 y Cp1+1 deben estar en la misma área de datos así como Cp2 y Cp2+1.

Cuando la condición de ejecución es OFF, CMPL(060) no se ejecuta. Cuando lacondición de ejecución es ON, CMPL(060) añade el contenido hexadecimal de4 dígitos de Cp1+1 con el de Cp1 y el de Cp2+1 con el de Cp2 para crear dosnúmeros hexadecimales de 8 dígitos, Cp+1,Cp1 y Cp2+1,Cp2. Luego se

Descripción

Instrucciones de comparación Sección 5-17

Page 198: C200HALPHA Manual Programacion

192

comparan los dos números de 8 dígitos y el resultado se envía a los indicadoresGR, EQ y LE en el área de SR.

Si se escriben otras instrucciones entre CMPL(060) y la operación que accede alos indicadores EQ, LE y GR, puede cambiar el estado de estos indicadores.Verificar que se accede a ellos antes de que cambie el estado deseado.CMPL(060) no se puede utilizar para comparar datos binarios con signo. Utilizaren su lugar CPSL(115). Consultar 5-17-9 DOBLE COMPARACION BINARIACON SIGNO -- CPSL(115) para más información.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

GR: ON si Cp1+1,Cp1 es mayor que Cp2+1,Cp2.

EQ: ON si Cp1+1,Cp1 es igual que Cp2+1,Cp2.

LE: ON si Cp1+1,Cp1 es menor que Cp2+1,Cp2.

El siguiente ejemplo muestra cómo salvar inmediatamente el resultado de lacomparación. Si el contenido de HR 10, HR 09 es mayor que el de 011, 010, sepone a ON 00200; si los dos contenidos son iguales, 00201 se pone en ON; si elcontenido de HR 10, HR 09 es menor que el de 011, 010, se pone a ON 00202.En algunas aplicaciones, sólo será necesario una de las tres salidas, siendoinnecesario el uso de TR 0. Con este tipo de programación, 00200, 00201 y00202 se cambian sólo cuando se ejecuta CMPL(060).

CMPL(060)

010

HR 09

00000

2550500200

2550700202

TR0

25506

00201

Mayor que

Igual

Menor que

------

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 OUT TR 000002 CMPL(060)

HR 09010

00003 AND 25505

00004 OUT 0020000005 LD TR 000006 AND 2550600007 OUT 0020100008 LD TR 000009 AND 2550700010 OUT 00202

Precauciones

Ejemplo:Salvar resultados deCMPL(060)

Instrucciones de comparación Sección 5-17

Page 199: C200HALPHA Manual Programacion

193

5-17-4 COMPARACIÓN DE DATO CON TABLA DE RANGOS --BCMP(068)

R: Canal de resultado

IR, SR, AR, DM, HR, TC, LR

CD: Dato a comparar

IR, SR, AR, DM, HR, TC, LR, #

CB: Primer canal bloque comparación

IR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

BCMP(068)

CD

CB

R

@BCMP(068)

CD

CB

R

Cada canal de límite inferior en el bloque de comparación debe ser menor oigual que el límite superior.

Cuando la condición de ejecución es OFF, BCMP(068) no se ejecuta. Cuando lacondición de ejecución es ON, BCMP(068) compara CD con los rangos defini-dos por un bloque que consta de CB, CB+1, CB+2, ..., CB+31. Cada rango sedefine con dos canales, el primero fija el límite inferior y el segundo el límitesuperior. Si CD está dentro de cualquiera de esos rangos (incluidos amboslímites), se pone a 1 el correspondiente bit de R. A continuación se muestra lascomparaciones hechas y el bit correspondiente de R que se pone a ON paracada comparación verdadera. El resto de bits de R se pondrán en OFF.

CB ! CD ! CB+1 Bit 00CB+2 ! CD ! CB+3 Bit 01CB+4 ! CD ! CB+5 Bit 02CB+6 ! CD ! CB+7 Bit 03CB+8 ! CD ! CB+9 Bit 04CB+10 ! CD ! CB+11 Bit 05CB+12 ! CD ! CB+13 Bit 06CB+14 ! CD ! CB+15 Bit 07CB+16 ! CD ! CB+17 Bit 08CB+18 ! CD ! CB+19 Bit 09CB+20 ! CD ! CB+21 Bit 10CB+22 ! CD ! CB+23 Bit 12CB+24 ! CD ! CB+25 Bit 13CB+26 ! CD ! CB+27 Bit 14CB+28 ! CD ! CB+29 Bit 15CB+30 ! CD ! CB+31 Bit 16

Normalmente el primer canal del rango es menor que el segundo, pero si elprimer canal del rango es mayor que el segundo, se pondrá en OFF el corres-pondiente bit en R cuando CD esté fuera del rango definido por los dos canales,como se muestra en la siguiente figura.

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������CB CB + 1

0000 9999

CB+1 CB

0000 9999

�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

Indicadores ER: El bloque de comparación (de CB a CB+31) excede el área de datos.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

Limitaciones

Descripción

Instrucciones de comparación Sección 5-17

Page 200: C200HALPHA Manual Programacion

194

El siguiente ejemplo muestra las comparaciones hechas y los resultados pro-porcionados por BCMP(068). Aquí, la comparación se realiza cada ciclocuando 00000 está en ON.

CD 001 Límites inferiores Límites superiores R: HR 05

001 0210 HR 10 0000 HR 11 0100 HR 0500 0HR 12 0101 HR 13 0200 HR 0501 0HR 14 0201 HR 15 0300 HR 0502 1HR 16 0301 HR 17 0400 HR 0503 0HR 18 0401 HR 19 0500 HR 0504 0HR 20 0501 HR 21 0600 HR 0505 0HR 22 0601 HR 23 0700 HR 0506 0HR 24 0701 HR 25 0800 HR 0507 0HR 26 0801 HR 27 0900 HR 0508 0HR 28 0901 HR 29 1000 HR 0509 0HR 30 1001 HR 31 1100 HR 0510 0HR 32 1101 HR 33 1200 HR 0511 0HR 34 1201 HR 35 1300 HR 0512 0HR 36 1301 HR 37 1400 HR 0513 0HR 38 1401 HR 39 1500 HR 0514 0HR 40 1501 HR 41 1600 HR 0515 0

BCMP(068)

001

HR 10

HR 05

00000

Comparar datos en IR001 (que contiene 0210)con los rangos dados

Dirección Instrucción Operandos

00000 LD 0000000001 BCMP(068)

001HR 10HR 05

5-17-5 COMPARAR TABLA -- TCMP(085)

CD: Dato a comparar

IR, SR, AR, DM, HR, TC, LR, #

TB: Primer canal tabla comparación

IR, AR, DM, HR, TC, LR

Símbolos de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, TC, LR

TCMP(085)

CD

TB

R

@TCMP(085)

CD

TB

R

TB y TB+15 deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, TCMP(085) no se ejecuta. Cuando lacondición de ejecución es ON, TCMP(085) compara CD con el contenido de TB,TB+1, TB+2, ..., y TB+15. Si CD es igual al contenido de cualquiera de esoscanales, el bit correspondiente en R se pone en ON.

Indicadores ER: La tabla de comparación (es decir de TB a TB+15) excede el área dedatos.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

Ejemplo

Limitaciones

Descripción

Instrucciones de comparación Sección 5-17

Page 201: C200HALPHA Manual Programacion

195

El siguiente ejemplo muestra las comparaciones y el resultado suministrado porel TCMP(085). Aquí, la comparación se ejecuta cada ciclo de scan cuando IR00000 está en ON.

CD: 001 Límites superiores R: HR 05

001 0210 HR 10 0100 HR 0500 0HR 11 0200 HR 0501 0HR 12 0210 HR 0502 1HR 13 0400 HR 0503 0HR 14 0500 HR 0504 0HR 15 0600 HR 0505 0HR 16 0210 HR 0506 1HR 17 0800 HR 0507 0HR 18 0900 HR 0508 0HR 19 1000 HR 0509 0HR 20 0210 HR 0510 1HR 21 1200 HR 0511 0HR 22 1300 HR 0512 0HR 23 1400 HR 0513 0HR 24 0210 HR 0514 1HR 25 1600 HR 0515 0

TCMP(085)

001

HR 10

HR 05

00000

Compara los datos en IR001 con los rangos dados.

Dirección Instrucción Operandos

00000 LD 0000000001 TCMP(085)

001HR 10HR 05

5-17-6 COMPARAR RANGO DE ÁREA -- ZCP(088)

CD: Datos a comparar

IR, SR, AR, DM, HR, TC, LR, #

LL: Límite inferior del rango

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés

Áreas de datos de operando

UL: Límite superior del rango

IR, SR, AR, DM, HR, TC, LR, #

ZCP(088)

CD

LL

UL

@ZCP(088)

CD

LL

UL

LL debe ser menor o igual que UL.

Cuando la condición de ejecución es OFF, ZCP(088) no se ejecuta. Cuando lacondición de ejecución es ON, ZCP(088) compara CD con el rango definido porel límite superior UL e inferior LL y envía el resultado a los indicadores GR, EQ yLE en el área de SR. El estado de los indicadores es el mostrado en la siguientetabla.

Resultado de comparación Estado de los indicadoresp

GR (SR 25505) EQ (SR 25506) LE (SR 25507)

CD < LL 0 0 1

LL ! CD ! UL 0 1 0

UL < CD 1 0 0

Colocando otras instrucciones entre ZCP(088) y la operación que accede a losindicadores EQ, LE y GR, puede cambiar el estado de estos indicadores. Verifi-car que se accede a ellos antes de que cambie el estado deseado.

Ejemplo

Limitaciones

Descripción

Precauciones

Instrucciones de comparación Sección 5-17

Page 202: C200HALPHA Manual Programacion

196

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

LL es mayor que UL.

EQ: ON si LL ! CD ! UL

LE: ON si CD < LL.

GR: ON si CD > UL.

El siguiente ejemplo indica cómo salvar inmediatamente el resultado de lacomparación. Si IR 100 > AB1F, IR 00200 se pone en ON; si#0010 ! IR 100 ! AB1F, IR 00201 se pone en ON; si IR 100 < 0010, IR 00202 sepone en ON.

ZCP(088)

#0010

IR 100

00000

2550500200

2550700202

TR0

25506

00201

Mayor que(por encima del

rango)

Igual(dentro del

rango)

Menor que(por debajo del

rango)

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 OUT TR 000002 ZCP(088)

IR 100# 0010

00003 LD # AB1F00004 AND 25505

00005 OUT 0020000006 LD TR 000007 AND 2550600008 OUT 0020100009 LD TR 000010 AND 2550700011 OUT 00202

#AB1F

5-17-7 COMPARACIÓN DE RANGO DOS A DOS -- ZCPL(116)

CD: Dato a comparar

IR, SR, AR, DM, HR, LR

LL: Límite inferior de rango

IR, SR, AR, DM, HR, LR

Símbolo de relés

Áreas de datos de operando

UL: Límite superior de rango

IR, SR, AR, DM, HR, LR

ZCPL(116)

CD

LL

UL

El valor de 8 dígitos en LL+1,LL debe ser menor que o igual que el de UL+1,UL.

CD y CD+1 deben estar en la misma área de datos así como LL y LL+1, y UL yUL+1.

Cuando la condición de ejecución es OFF, ZCPL(116) no se ejecuta. Cuando lacondición de ejecución es ON, ZCPL(116) compara el valor de 8 dígitos en CD,CD+1 con el rango definido por el límite inferior LL+1,LL y el superior UL+1,UL yenvía el resultado a los indicadores GR, EQ y LE en el área de SR. Los estadosresultantes de los indicadores se muestra en la siguiente tabla.

Ejemplo:Salvar resultados deZCP(088)

Limitaciones

Descripción

Instrucciones de comparación Sección 5-17

Page 203: C200HALPHA Manual Programacion

197

Resultado de comparación Estado de los indicadoresp

GR(SR 25505)

EQ(SR 25506)

LE(SR 25507)

CD , CD+1< LL+1,LL 0 0 1

LL+1,LL ! CD, CD+1 ! UL+1,UL 0 1 0

UL+1,UL < CD, CD+1 1 0 0

Colocando otras instrucciones entre ZCPL(116) y la operación que accede a losindicadores EQ, LE y GR, puede cambiar el estado de estos indicadores. Verifi-car que se accede a ellos antes de que cambie el estado deseado.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

LL+1,LL es mayor que UL+1,UL.

EQ: ON si LL+1,LL ! CD, CD+1 ! UL+1,UL

LE: ON si CD, CD+1 < LL+1,LL.

GR: ON si CD, CD+1 > UL+1,UL.

Ejemplo Ver un ejemplo en 5-17-6 COMPARAR RANGO DE AREA -- ZCP(088). La únicadiferencia entre ZCP(088) y ZCPL(116) es el número de dígitos en el dato decomparación.

5-17-8 COMPARACIÓN BINARIA CON SIGNO -- CPS(114)

Cp1: Primer canal a comparar

IR, SR, AR, DM, HR, TC, LR, #

Cp2: Segundo canal a comparar

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

CPS(114)

Cp1

Cp2

Cuando la condición de ejecución es OFF, CPS(114) no se ejecuta. Cuando lacondición de ejecución es ON, CPS(114) compara los contenidos binarios consigno de 16-bit (4-dígitos) en Cp1 y Cp2 y envía el resultado a los indicadoresGR, EQ y LE en el área de SR.

Nota 1. Consultar más detalles sobre datos binarios con signo de 16 bits en página27.

2. Consultar más detalles sobre salvar resultados de comparación en 5-17-2Comparar -- CMP(020).

Colocando otras instrucciones entre CPS(114) y la operación que accede a losindicadores EQ, LE y GR, puede cambiar el estado de estos indicadores. Verifi-car que se accede a ellos antes de que cambie el estado deseado.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: ON si Cp1 es igual que Cp2.

LE: ON si Cp1 es menor que Cp2.

GR: ON si Cp1 es mayor que Cp2.

Resultado de comparación Estado de los indicadoresp

GR (SR 25505) EQ (SR 25506) LE (SR 25507)

Cp1 < Cp2 0 0 1

Cp1 = Cp2 0 1 0

Cp1 > Cp2 1 0 0

Precauciones

Descripción

Precauciones

Instrucciones de comparación Sección 5-17

Page 204: C200HALPHA Manual Programacion

198

5-17-9 COMPARACIÓN BINARIA DOS A DOS CON SIGNO -- CPSL(115)

Cp1: Primer canal a comparar

IR, SR, AR, DM, HR, TC, LR

Cp2: Segundo canal a comparar

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés Áreas de datos de operando

CPSL(115)

Cp1

Cp2

Limitaciones Cp1 y Cp1+1 deben estar en la misma área de datos, así como Cp2 y Cp2+1.

Cuando la condición de ejecución es OFF, CPSL(115) no se ejecuta. Cuando lacondición de ejecución es ON, CPSL(115) compara los contenidos binarios consigno de 32 bits ( 8 dígitos) en Cp1+1, Cp1 y Cp2+1, Cp2 y envía el resultado alos indicadores GR, EQ y LE en el área SR.

Nota 1. Consultar más detalles sobre datos binarios con signo de 16 bits en página27.

2. Consultar más detalles sobre salvar resultados de comparación en 5-17-2Comparar -- CMP(020).

Colocando otras instrucciones entre CPSL(115) y la operación que accede a losindicadores EQ, LE y GR, puede cambiar el estado de estos indicadores. Verifi-car que se accede a ellos antes de que cambie el estado deseado.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: ON si Cp1+1, Cp1 es igual que Cp2+1, Cp2.

LE: ON si Cp1+1, Cp1 es menor que Cp2+1, Cp2.

GR: ON si Cp1+1, Cp1 es mayor que Cp2+1, Cp2.

Resultado de comparación Estado de indicadoresp

GR (SR 25505) EQ (SR 25506) LE (SR 25507)

Cp1+1, Cp1 < Cp2+1, Cp2 0 0 1

Cp1+1, Cp1 = Cp2+1, Cp2 0 1 0

Cp1+1, Cp1 > Cp2+1, Cp2 1 0 0

5-17-10 Instrucciones de comparación de entrada (300 a 328)

S2: Dato de comparación 2

IR, SR, AR, DM, EM, HR, TC, LR, #

S1: Dato de comparación 1

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

Mnem(Cód.)

S1

S2

---

Nota “Mnem” en el símbolo de diagrama de relés anterior se ha de sustituir con elnemónico de la instrucción especificada; “cód.” se ha de sustituir por el códigode función de la instrucción especificada.

Descripción

Precauciones

Instrucciones de comparación Sección 5-17

Page 205: C200HALPHA Manual Programacion

199

Cuando la condición de ejecución es OFF, las instrucciones de comparación deentrada no se ejecutan, continuando la ejecución con el resto de la línea deinstrucción. Cuando la condición de ejecución es ON, las instrucciones decomparación de entrada comparan constantes y/o contenidos de canales espe-cificados para datos con o sin signo y crearán una condición de ejecución ONcuando se cumpla la condición de comparación. Si no se cumple la condición decomparación, se saltará el resto de la línea de instrucción, saltando la ejecucióna la siguiente línea de instrucción.Hay disponibles 24 instrucciones de comparación de entrada. Se pueden escri-bir utilizando varias combinaciones de símbolos y opciones. Si no se especifi-can opciones, la comparación será para datos sin signo de un canal.

Símbolo Opción (formato dedatos)

Opción (longitud dedatos)

= (Igual)

< > (No igual)

< (Menor que)

<= (Menor o igual que)

> (Mayor que)

>= (Mayor o igual que)

S (dato con signo) L (doble longitud)

Las instrucciones de comparación de entrada sin signo (instrucciones sin la op-ción S) pueden comparar datos binarios o BCD sin signo. Las instrucciones decomparación de entrada con signo (instrucciones con la opción S) puedencomparar datos binarios con signo.Cuando se utilicen instrucciones de comparación de entrada, cada una de estasinstrucciones debe ir seguida de otra instrucción en la misma línea de instruc-ción.

Descripción

Instrucciones de comparación Sección 5-17

Page 206: C200HALPHA Manual Programacion

200

La siguiente tabla muestra los códigos de función, nemónicos, nombres y fun-ciones de las instrucciones de comparación de entrada.

Cód. Nemónico Nombre Función

300 = IGUAL QUE VERDADERO SIS S301 =L IGUAL QUE DOS A DOS S1 = S2

302 =S IGUAL QUE CON SIGNO303 =SL IGUAL QUE CON SIGNO DOS A DOS

305 <> DISTINTO QUE VERDADERO SIS S306 <>L DISTINTO QUE DOS A DOS S1 # S2

307 <>S DISTINTO QUE CON SIGNO308 <>SL DISTINTO QUE CON SIGNO DOS A

DOS

310 < MENOR QUE VERDADERO SIS S311 <L MENOR QUE DOS A DOS S1 < S2

312 <S MENOR QUE CON SIGNO313 <SL MENOR QUE CON SIGNO DOS A

DOS

315 <= MENOR O IGUAL QUE VERDADERO SIS ± S316 <=L MENOR O IGUAL QUE DOS A DOS S1 ± S2

317 <=S MENOR O IGUAL QUE CON SIGNO318 <=SL MENOR O IGUAL QUE CON SIGNO

DOS A DOS

320 > MAYOR QUE VERDADERO SIS S321 >L MAYOR QUE DOS A DOS S1 > S2

322 >S MAYOR QUE CON SIGNO323 >SL MAYOR QUE CON SIGNO DOS A DOS

325 >= MAYOR O IGUAL QUE VERDADERO SIS ² S326 >=L MAYOR O IGUAL QUE DOS A DOS S1 ² S2

327 >=S MAYOR O IGUAL QUE CON SIGNO328 >=SL MAYOR O IGUAL QUE CON SIGNO

DOS A DOS

Las instrucciones de comparación no se pueden utilizar como instrucciones dela derecha, es decir se debe utilizar otra instrucción para conectar con la barrade bus de la derecha.

Ejemplo < (310)Si IR 00000 está en ON en el siguiente ejemplo, se comparan como datos bina-rios los contenidos de DM 0100 y DM 0200. Si el contenido de DM 0100 es me-nor que el de DM 0200, IR 05000 se pone en ON y la ejecución continúa con lasiguiente línea. Si el contenido de DM 0100 no es menor que el de DM 0200, sesalta el resto de la línea de instrucción y la ejecución pasa a la siguiente línea.

Si IR 00000 está en OFF, IR 05000 se pondrá en OFF.

<S(312)Si IR 00001 está en ON en el siguiente ejemplo, se comparan como datos bina-rios los contenidos de DM 0110 y DM 0210. Si el contenido de DM 0110 es me-nor que el de DM 0210, IR 05001 se pone en ON y la ejecución continúa con lasiguiente línea. Si el contenido de DM 0110 no es menor que el de DM 0210, sesalta el resto de la línea de instrucción y la ejecución pasa a la siguiente línea deinstrucción.

Precauciones

Instrucciones de comparación Sección 5-17

Page 207: C200HALPHA Manual Programacion

201

Si IR 00001 está en OFF, IR 05001 se pone en OFF.

Dirección Instrucción Operandos

00000 LD 00000

00001 <(310)

DM 0100

DM 0200

OUT 05000

00002 LD 00001

00003 <S(312)

DM 0110

DM 0210

OUT 05001

8714

S1: DM 0100

Decimal: 34580

3A1C

S2: DM 0200

Decimal: 14876

34580 > 14876(No procederá con la siguiente línea)

Comparaciónsin signo (<)

Comparacióncon signo (<S)

8714

S1: DM 0110

Decimal: -30956

3A1C

S2: DM 0210

Decimal: 14876

-30956 < 14876(Procederá con la siguiente línea)

Instrucciones de comparación Sección 5-17

0000005000<(310)

DM 0100

DM 020000001

05001<S(312)

DM 0110

DM 0210

Page 208: C200HALPHA Manual Programacion

202

5-18 Instrucciones de conversión

5-18-1 BCD a BINARIO -- BIN(023)

S: Canal fuente (BCD)

IR, SR, AR, DM, HR, TC, LR

R: Canal de resultado

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

BIN(023)

S

R

@BIN(023)

S

R

Cuando la condición de ejecución es OFF, BIN(023) no se ejecuta. Cuando lacondición de ejecución es ON, BIN(023) convierte el contenido BCD de S a suequivalente en binario y lo envía a R. Sólo cambia el contenido de R; el conte-nido de S permanece inalterable.

S

R

BCD

Binario

BIN(023) se puede utilizar para convertir de BCD a binario a fin de visualizar enla consola de programación u otro dispositivo de programación en hexadecimalen vez de decimal. También se puede utilizar para convertir a binario aquellosoperandos necesarios para operaciones aritméticas en binario.

Indicadores ER: El contenido de S no está en BCD.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el resultado es cero.

N: 25402 siempre en OFF.

5-18-2 CONVERSIÓN DE BCD A BINARIO DE DOS CANALES --BINL(058)

S: Primer canal fuente (BCD)

IR, SR, AR, DM, HR, TC, LR

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

BINL(058)

S

R

@BINL(058)

S

R

Cuando la condición de ejecución es OFF, BINL(058) no se ejecuta. Cuando lacondición de ejecución es ON, BINL(058) convierte un número de 8 dígitos en Sy S+1 en dato binario de 32 bits y envía el resultado a R y R+1.

S + 1 S

R + 1 R

BCD

Binario

Indicadores ER: Los contenidos de S y/o S+1 no están en BCD.

Descripción

Descripción

Conversión de datos Sección 5-18

Page 209: C200HALPHA Manual Programacion

203

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el resultado es cero.N: 25402 siempre en OFF.

5-18-3 BINARIO A BCD -- BCD(024)

S: Canal fuente (binario)

IR, SR, AR, DM, HR, LR

R: Canal de resultado

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

BCD(024)

S

R

@BCD(024)

S

R

BCD(024) convierte el contenido binario (hexadecimal) de S a su equivalenteen BCD y lo envía a R. Sólo cambia el contenido de R; el contenido de S perma-nece inalterable.

S

RBCD

Binario

BCD(024) se puede utilizar para convertir de binario a BCD a fin de visualizar enla consola de programación u otro dispositivo de programación en decimal envez de hexadecimal. También se puede utilizar para convertir a BCD aquellosoperandos necesarios para operaciones aritméticas en BCD.

Nota Si el contenido de S excede de 270F, el resultado convertido excedería de 9999y no se ejecutará BCD(024). Cuando no se ejecuta la instrucción, el contenidode R permanece sin cambios.

Datos binarios con signo BCD(024) no se puede utilizar para convertir directamente datos binarios consigno a BCD. Para convertir datos binarios negativos, primero determinar si eldato es positivo o negativo. Si es positivo, BCD(024) se puede utilizar para con-vertir el dato a BCD. Si es negativo, utilizar la instrucción COMPLEMENTO A 2 --NEG(160) para convertir el dato a binario sin signo antes de ejecutar BCD(024).Consultar más detalles en la página 25.

Indicadores ER: S es mayor que 270F.No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el resultado es cero.

5-18-4 CONVERSIÓN DE BINARIO A BCD DE DOS CANALES --BCDL(059)

S: Primer canal fuente (binario)

IR, SR, AR, DM, HR, LR

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

BCDL(059)

S

R

@BCDL(059)

S

R

Descripción

Conversión de datos Sección 5-18

Page 210: C200HALPHA Manual Programacion

204

Si el contenido de S excede de 05F5E0FF, el resultado convertido excedería de99999999 y no se ejecutará BCDL(059). Cuando no se ejecuta la instrucción, elcontenido de R y R+1 permanece inalterable.S y S+1 deben estar en la misma área de datos así como R y R+1.

BCDL(059) convierte el contenido binario de 32 bits de S y S+1 a un dato BCDde ocho dígitos y envía el resultado a R y R+1.

S + 1 S

R + 1 RBCD

Binario

Datos binarios con signo BCDL(059) no se puede utilizar para convertir directamente datos binarios consigno a BCD. Para convertir datos binarios negativos, primero determinar si eldato es positivo o negativo. Si es positivo, BCDL(059) se puede utilizar paraconvertir el dato a BCD. Si es negativo, utilizar la instrucción COMPLEMENTOA 2 DE DOS CANALES-- NEGL(161) para convertir el dato a binario sin signoantes de ejecutar BCDL(059). Consultar más detalles en la página 25.

Indicadores ER: El contenido de R y R+1 excede de 99999999.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el resultado es cero.

5-18-5 HORAS A SEGUNDOS -- SEC(065)

S: Canal fuente inicial (BCD)

IR, SR, AR, DM, HR, TC, LR

R: Canal de resultado inicial (BCD)

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

---: No utilizado.

SEC(065)

S

R

---

@SEC(065)

S

R

---

Limitaciones S y S+1 deben estar dentro de la misma área de datos. R y R+1 deben estardentro de la misma área de datos. S y S+1 deben estar en BCD y en el formatoadecuado de horas/minutos/segundos.

Descripción SEC(065) se utiliza para convertir el tiempo expresado en horas/minutos/segundos al equivalente en segundos.Para el dato fuente, los segundos se designan en bits 00 a 07 y los minutos sedesignan en bits 08 a 15 de S. Las horas se designan en S+1. El máximo es porlo tanto 9.999 horas, 59 minutos y 59 segundos.El resultado se envía a R y R+1. El valor máximo es 35.999.999 segundos.

Nota Esta instrucción se denomina HORAS A SEGUNDOS -- HTS(65) en los PLCsC200H.

Indicadores ER: S y S+1 o R y R+1 no están en la misma área de datos.

S y/o S+1 no contienen datos en BCD.

Número de segundos y/o minutos excede de 59.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

Limitaciones

Descripción

Conversión de datos Sección 5-18

Page 211: C200HALPHA Manual Programacion

205

EQ: En ON cuando el resultado es cero.

Ejemplo Cuando 00000 está en OFF (es decir cuando la condición de ejecución es ON),la siguiente instrucción convertirá las horas, minutos y segundos dados en HR12 y HR 13 a segundos y almacenará el resultado en DM 0100 y DM 0101.

SEC(065)

HR 12

DM 0100

000

00000

HR 12 3 2 0 7

HR 13 2 8 1 5

DM 0100 5 9 2 7

DM 0101 1 0 1 3

2,815 hrs, 32 min, 07 s

10,135,927 s

Dirección Instrucción Operandos

00000 LD NOT 0000000001 SEC(065)

HR 12DM 0100

000

5-18-6 SEGUNDOS A HORAS -- HMS(066)

S: Primer canal fuente (BCD)

IR, SR, AR, DM, HR, TC, LR

R: Primer canal de resultado (BCD)

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

---: No utilizado.

HMS(066)

S

R

---

@HMS(066)

S

R

---

Limitaciones S y S+1 deben estar dentro de la misma área de datos. R y R+1 deben estardentro de la misma área de datos. S y S+1 deben estar en BCD y comprendidosentre 0 y 35.999.999 segundos.

Descripción HMS(066) se utiliza para convertir el tiempo expresado en segundos a su equi-valente expresado en horas/minutos/segundos.

El número de segundos designado en S y S+1 se convierte a horas/minutos/segundos y se envía a R y R+1.

Para los resultados, los segundos se colocan en 00 a 07 y los minutos en bits 08a 15 de R. Las horas se envían a R+1. El valor máximo es 9.999 horas, 59 minu-tos y 59 segundos.

Nota Esta instrucción de denomina SEGUNDOS A HORAS -- STH(66) en los PLCsC200H.

Indicadores ER: S y S+1 o R y R+1 no están en la misma área de datos.

S y/o S+1 no contiene dato en BCD o excede de 36.000.000 segundos.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el resultado es cero.

Ejemplo Cuando 00000 está en OFF (es decir, cuando la condición de ejecución es ON),la siguiente instrucción convertiría los segundos dados en HR 12 y HR 13 a

Conversión de datos Sección 5-18

Page 212: C200HALPHA Manual Programacion

206

horas, minutos y segundos y almacena el resultado en DM 0100 y DM 0101como se indica.

HMS(066)

HR 12

DM 0100

000

00000

HR 12 5 9 2 7

HR 13 1 0 1 3

DM 0100 3 2 0 7

DM 0101 2 8 1 5

10,135,927 s

2,815 hrs, 32 min, 07 s

Dirección Instrucción Operandos

00000 LD NOT 0000000001 HMS(066)

HR 12DM 0100

000

5-18-7 DECODIFICADOR 4 A 16/8 A 256 -- MLPX(076)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR

C: Canal de control

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

MLPX(076)

S

C

R

@MLPX(076)

S

C

R

Cuando el dígito de mayor peso de C es 0, el valor de los dos dígitos de la dere-cha de C deben ser de 0 a 3.

Cuando el dígito de mayor peso de C es 1, el valor de los dos dígitos de la dere-cha de C deben ser 0 ó 1.

Todos los canales de resultado deben estar en la misma área de datos.

Dependiendo del valor de C, MLPX(076) opera como un decodificador de 4-bit a16-bit o como un decodificador de 8-bit a 256-bit.

Decodificador de 4-bit a 16-bitCuando el dígito de mayor peso de C es 0, MLPX(076) opera como un decodifi-cador de 4-bit a 16-bit. El valor hexadecimal de los dígitos de S se utilizan paraespecificar bits en hasta 4 canales de resultado. El bit especificado en cadacanal de resultado se pone en ON y los otros 15 bits en cada canal se ponen enOFF.

Cuando la condición de ejecución es OFF, MLPX(076) no se ejecuta. Cuando lacondición de ejecución es ON, MLPX(076) convierte hasta cuatro dígitos hexa-decimales de cuatro bits de S en valores decimales de 0 a 15, cada uno de loscuales indican una posición de bit. El bit cuyo número corresponde con el valorconvertido se pone a ON en el canal de resultado. Si se especifica más de undígito, se pondrá a ON un bit en cada uno de los canales consecutivos comen-zando con R. (Ver ejemplos a continuación).

Limitaciones

Descripción

Conversión de datos Sección 5-18

Page 213: C200HALPHA Manual Programacion

207

Los dígitos de C se seleccionan como se indica a continuación. Seleccionar eldígito de la izquierda de C a 0 para especificar decodificación de 4 bit a 16 bit.

Especifica el primer dígito a convertir (0 a 3)

Número de dígitos a convertir (0 a 3)0: 1 dígito1: 2 dígitos2: 3 dígitos3: 4 dígitos

No utilizado. Seleccionar a 0.

Un valor de 0 especifica decodificación de4-bit a 16-bit.

No. dígito: 3 2 1 0

A continuación se muestran algunos ejemplos de valores de C y de conver-siones de dígito a canal producidas.

0

1

2

3

R

R + 1

R

R + 1

R + 2

0

1

2

3

0

1

2

3

0

1

2

3

R

R + 1

R + 2

R + 3

R

R + 1

R + 2

R + 3

S

C: 0031 C: 0023

C: 0030C: 0010

S

SS

El siguiente ejemplo decodifica el dígito número 1 de S, es decir aquí C sería0001.

Canal fuente

Primer canal de resultado

C

0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0

Bit C (bit número 12) puesto a ON.

El primer dígito y el número de dígitos a convertir se indican en C. Si se designanmás dígitos de los que quedan en S (contando desde el primer dígito desig-nado), los dígitos restantes se tomarán desde el principio de S. El canal finalnecesario para almacenar el resultado convertido (R más el número de dígitos aconvertir) deben estar en la misma área de datos que R, es decir, si se convier-ten dos dígitos, la última dirección de canal en un área de datos no se puededesignar; si se convierten tres dígitos, los dos últimos canales en una área dedatos no se pueden designar.

Decodificador de 8-bit a 256-bitMLPX(076) opera como un decodificador de 8-bit a 256-bit cuando el dígito dela izquierda de C está seleccionado a 1. El valor hexadecimal de los dos bytesen S se utilizan para especificar un bit en uno o dos grupos de 16 canales conse-cutivos (256 bits). El bit especificado en cada grupo se pone en ON y los otros255 bits del grupo se ponen en OFF.

Canal de control

Conversión de datos Sección 5-18

Page 214: C200HALPHA Manual Programacion

208

Los dígitos de C se seleccionan como se indica a continuación. Seleccionar eldígito de la izquierda de C a 1 para especificar decodificación de 8-bit a 256-bit.

Especifica el primer byte a convertir (0 ó 1).0: Byte de la derecha1: Byte de la izquierda

Número de bytes a convertir (0 ó 1).0: 1 byte1: 2 bytes

No utilizado. Seleccionado a 0.

Un valor de 1 especifica decodificación de 8-bit a256-bit.

No. de dígito: 3 2 1 0

A continuación se muestran las conversiones producidas por los 4 valoresposibles de C. (En S, 0 indica el byte de la izquierda y 1 indica el byte de laizquierda).

0

1

R to R+15

R+16 to R+31

SC: 1000

0

1

R to R+15

R+16 to R+31

SC: 1010

0

1

R to R+15

R+16 to R+31

SC: 1011

0

1

R to R+15

R+16 to R+31

SC: 1001

El siguiente es un ejemplo de una operación de decodificación de un byte desdeel byte de la derecha de S (en este caso el valor de C sería 1000).

. . .

R

Bit15

Bit00

0 0 00 0 0. . .

R+1

Bit15

Bit00

0 0 00 0 0

R+2

Bit15

Bit00

0 0 00 0 00 0 01 0 00 0 0 0. . .. . .

R+15

Bit15

Bit00

0 0 00 0 0

Canal fuente

2 Bit 2C (es decir el bit número12 en el tercer canal) se poneen ON.

C

Indicadores ER: Canal de control indefinido.

Los canales de resultado no están todos en la misma área de datos.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

Canal de control

Conversión de datos Sección 5-18

Page 215: C200HALPHA Manual Programacion

209

El siguiente programa convierte tres dígitos de datos de LR 20 a las posicionesde bit y pone a ON los bits correspondientes en tres canales consecutivoscomenzando por HR 10.

00000MLPX(076)

DM 0020

#0021

HR 10

Dirección Instrucción Operandos

00000 LD 0000000001 MLPX(076)

LR 20# 0021HR 10

S: LR 20 R: HR 10 R+1: HR 11 R+2: HR 12

DM 00 20 HR 1000 0 HR 1100 0 HR 1200 1DM 01 21 HR 1001 0 HR 1101 0 HR 1201 0DM 02 22 HR 1002 0 HR 1102 0 HR 1202 0DM 03 23 HR 1003 0 HR 1103 0 HR 1203 0DM 04 1 20 HR 1004 0 HR 1104 0 HR 1204 0DM 05 1 21 1 HR 1005 0 HR 1105 0 HR 1205 0DM 06 1 22 HR 1006 0 HR 1106 1 HR 1206 0DM 07 1 23 HR 1007 0 HR 1107 0 HR 1207 0DM 08 0 20 HR 1008 0 HR 1108 0 HR 1208 0DM 09 1 21 2 HR 1009 0 HR 1109 0 HR 1209 0DM 10 1 22 HR 1010 0 HR 1110 0 HR 1210 0DM 11 0 23 HR 1011 0 HR 1111 0 HR 1211 0DM 12 0 20 HR 1012 0 HR 1112 0 HR 1212 0DM 13 0 21 3 HR 1013 0 HR 1113 0 HR 1213 0DM 14 0 22 HR 1014 0 HR 1114 0 HR 1214 0DM 15 0 23 HR 1015 1 HR 1115 0 HR 1215 0

15

6

0

NoConvertido

5-18-8 CODIFICADOR 16 A 4/256 A 8 -- DMPX(077)

S: Canal fuente inicial

IR, SR, AR, DM, HR, TC, LR

R: Canal de resultado

IR, SR, AR, DM, HR, LR

Símbolo de relés

Áreas de datos de operando

C: Canal de control

IR, SR, AR, DM, HR, TC, LR, #

DMPX(077)

S

R

C

@DMPX(077)

S

R

C

Cuando el dígito de la izquierda de C es 0, los dos dígitos de la derecha de Cdeben ser cada uno de ellos entre 0 y 3.Cuando el dígito de mayor peso de C es 1, el valor de los dos dígitos de la dere-cha de C deben ser 0 ó 1.Todos los canales fuente deben estar en la misma área de datos.

Dependiendo del valor de C, MLPX(076) opera como un codificador de 16-bit a4-bit o un codificador de 256-bit a 8-bit.

Codificador de 16-bit a 4-bit DMPX(077) opera como un codificador de 16-bit a 4-bit cuando el dígito de laizquierda de C es 0.Cuando la condición de ejecución es OFF, DMPX(077) no se ejecuta. Cuando lacondición de ejecución es ON, DMPX(077) determina la posición del bit demayor peso en ON de S, codifica dicho número de bit en un valor hexadecimalde un dígito y luego transfiere el valor hexadecimal al dígito especificado en R.Los dígitos para recibir los resultados se especifican en C así como el númerode dígitos a codificar.

Ejemplo:decodificación de 4-bit a16-bit

Limitaciones

Descripción

Conversión de datos Sección 5-18

Page 216: C200HALPHA Manual Programacion

210

A continuación se muestran los dígitos de C. Seleccionar el dígito de laizquierda de C a 0 para especificar codificación de 16-bit a 4-bit.

Especifica el primer dígito de R para recibir los datos conver-tidos (0 a 3).

Número de canales a convertir (0 a 3).0: 1 canal1: 2 canales2: 3 canales3: 4 canales

No utilizado. Seleccionar a 0.

Un valor de 0 especifica codificación de 16-bit a 4-bit.

No. de dígito: 3 2 1 0

A continuación se muestran algunos ejemplos de valores de C y las conver-siones de canal--a--dígito que producen.

0

1

2

3

R

C: 0011

S

S + 10

1

2

3

S

S + 1

S + 2

S + 3

C: 0030

R

S

S + 1

S + 2

S + 3

0

1

2

3

C: 0032R

C: 0013

0

1

2

3

S

S + 1

R

El siguiente es un ejemplo de codificación de un dígito al número de dígito 1 deR, es decir, en este caso C sería 0001.

Canal de resultado

Primer canal fuente

C

0 0 0 1 0 0 0 1 0 0 0 1 0 1 1 0

C transferido para indicar bit número 12como bit de mayor peso en ON.

Se pueden codificar hasta cuatro dígitos de cuatro canales fuente consecutivoscomenzando con S; los dígitos se escriben en R en orden desde el primer dígitodesignado. Si se designan más dígitos de los que quedan en R (contando desdeel primer dígito designado), los dígitos restantes se colocarán en dígitos comen-zando por el principio de R.El canal final a convertir (S más el número de dígitos a convertir) deben estar enla misma área de datos que SB.

Codificador 256-bit a 8-bit DMPX(077) opera como un decodificador de 256-bit a 8-bit cuando el dígito dela izquierda de C está seleccionado a 1.

Cuando la condición de ejecución es OFF, DMPX(077) no se ejecuta. Cuando lacondición de ejecución es ON, DMPX(077) determina la posición del bit demayor peso en ON en el grupo de 16 canales fuente desde S a S+15 ó de S+16 aS+31, lo codifica en un valor hexadecimal de dos dígitos correspondiente a laposición del bit entre los 256 bits del grupo, luego transfiere el valor hexadecimalal byte especificado en R. El byte a recibir el resultado se especifica en C, asícomo el número de bytes a codificar.

Canal de control

Conversión de datos Sección 5-18

Page 217: C200HALPHA Manual Programacion

211

Los dígitos de C se seleccionan como se indica a continuación. Seleccionar eldígito de mayor peso de C a 1 para especificar codificación de 256-bit a 8-bit.

Especifica el primer byte en R para recibir datos convertidos(0 ó 1).

0: Byte de la derecha1: Byte de la izquierda

Número de bytes a codificar (0 ó 1).0: 1 byte1: 2 bytes

No utilizado. Seleccionado a 0.

Un valor de 1 especifica codificación de 256-bit a 8-bit.

Di: 3 2 1 0

A continuación se muestran tres posibles valores de C y las conversiones queproducen. (En R, 0 indica el byte de la derecha o menor peso y 1 indica el byte dela izquierda).

0

1

RC: 1000 C: 1010 C: 1011

S a S+15

S+16 a S+310

1

R

S a S+15

S+16 a S+310

1

R

S a S+15

S+16 a S+31

El siguiente es un ejemplo de una operación de codificación de un byte en elbyte de menor peso de R (en este caso C debería ser 1000).

. . .

S+14

Bit15

Bit00

0 1 00 1 1

S+15

Bit15

Bit00

0 01 1 01 1 10 1 10 0 0

Canal de resultado

F B

1. . . . . .

S

Bit15

Bit00

0 0 01 11 1

El bit FB (bit 251 de 0 a 255) es el bit de mayor peso enON del grupo de 16 canales, por lo que FB se graba enel bit de mayor peso de R.

Indicadores ER: Canal de control no definido.

Los canales fuente no están todos en la misma área de datos.

El contenido de los canales fuente es cero. (No hay ningún bit en ON enlos canales fuente).

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

Canal de control

Conversión de datos Sección 5-18

Page 218: C200HALPHA Manual Programacion

212

Cuando 00000 es ON, el siguiente diagrama codifica los canales IR010 y 011 enlos dos primeros dígitos de HR 20 y luego codifica LR 10 y 11 en los dos últimosdígitos de HR 20. Aunque no se muestra el estado de cada bit del canal fuente,se asume que el bit con estado 1 (ON) mostrado es el bit de mayor peso en ONdel canal.

00000DMPX(077)

010

HR 20

#0010

LR 10

HR 20

#0012

IR 010

01000

:

01011 1

01012 0

: : :

01015 0

LR 10

LR 1000

LR 1001 1

LR 1002 0

: : :

: : :

LR 1015 0

Dígito 0

IR 011

01100

:

01109 1

01110 0

: : :

01115 0

Dígito 1

Dígito 2

Dígito 3

B

9

1

8LR 11

LR 1100

:

LR 1108 1

LR 1109 0

: : :

LR 1115 0

HR 20

DMPX(077)

Dirección Instrucción Operandos

00000 LD 0000000001 DMPX(077)

010HR 20# 0010

00002 DMPX(077)LR 10HR 20# 0012

5-18-9 DECODIFICADOR DE 7 SEGMENTOS -- SDEC(078)

S: Canal fuente (binario)

IR, SR, AR, DM, HR, TC, LR

Di: Designador de dígito

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

D: Primer canal destino

IR, SR, AR, DM, HR, LR

SDEC(078)

S

Di

D

@SDEC(078)

S

Di

D

Di debe estar dentro de los valores dados más adelante.Todos los canales destino deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, SDEC(078) no se ejecuta. Cuando lacondición de ejecución es ON, SDEC(078) convierte el dígito(s) designado deS, en el equivalente de 8 bits para display de 7 segmentos y coloca el resultadoen el canal(es) destino comenzando con D.Cualquiera o todos los dígitos en S se pueden convertir en secuencia desde elprimer dígito designado. El primer dígito designado, el número de dígitos a con-vertir y la mitad de D para recibir el primer código de display de 7 segmentos (los8 bits de la derecha o los de la izquierda) se designan en Di. Si se designanvarios dígitos, se colocarán en orden empezando por la mitad designada de D,cada uno necesitando dos dígitos. Si se designan más dígitos de los que que-

Ejemplo:codificación de 16-bit a4-bit

Limitaciones

Descripción

Conversión de datos Sección 5-18

Page 219: C200HALPHA Manual Programacion

213

dan en S (contando desde el primer dígito designado), se utilizarán más dígitoscomenzando de nuevo por el principio de S.

Los dígitos de Di se seleccionan como se indica a continuación.

Especifica el primer dígito de S a convertir (0 a 3).

Número de dígitos a convertir (0 a 3)0: 1 dígito1: 2 dígitos2: 3 dígitos3: 4 dígitos

Primera mitad de D a utilizar.0: 8 bits de la derecha1: 8 bits de la izquierda

No utilizado; seleccionar a 0.

No. dígito: 3 2 1 0

A continuación se muestran algunos ejemplos de valores de Di y las conver-siones de 4 bits a código de display de 7 segmentos producidas.

0

1

2

3

S dígitos

Di: 0011

D

0

1

2

3

Di: 0030

S dígitos

0

1

2

3

Di: 0130S dígitos

Di: 0112

0

1

2

3

S dígitos

1 mitad

2 mitad

D

1 mitad

2 mitad

D+1

1 mitad

2 mitad

D

1 mitad

2 mitad

D+1

1 mitad

2 mitad

D

1 mitad

2 mitad

D+1

1 mitad

2 mitad

D+2

1 mitad

2 mitad

Designador de dígito

Conversión de datos Sección 5-18

Page 220: C200HALPHA Manual Programacion

214

El siguiente ejemplo muestra los datos para visualizar un ocho. Las letrasminúsculas indican qué bits corresponden a qué segmentos del display de 7segmentos. La tabla que sigue al ejemplo muestra los datos originales y códi-gos convertidos para todos los dígitos hexacedimales.

20

21

22

23

20

21

22

23

20

21

22

23

20

21

22

23

0

1

0

0

0

0

0

1

0

1

1

1

1

0

1

1

0

1

2

3

1

1

1

1

1

1

1

0

DM 0010

gf b

c

d

e

aIR 100

0

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

x100

x101

x102

x103

0: Un dígito

0 ó 1:0 Bits 00 a 071 Bits 08 a 15.

No utilizado.

a

b

c

d

e

f

g

Bit 07

8

1: Segundo dígito

LR 07

Bit 00

Datos originales Código convertido (segmentos) Display

Dígito Bits -- g f e d c b a

0 0 0 0 0 0 0 1 1 0 0 0 0

1 0 0 0 1 0 0 1 1 0 0 0 0

2 0 0 1 0 0 0 1 1 0 0 1 1

3 0 0 1 1 0 0 1 1 0 0 1 1

4 0 1 0 0 0 0 1 1 0 1 0 0

5 0 1 0 1 0 0 1 1 0 1 0 1

6 0 1 1 0 0 0 1 1 0 1 0 1

7 0 1 1 1 0 0 1 1 0 1 1 1

8 1 0 0 0 0 0 1 1 1 0 0 0

9 1 0 0 1 0 0 1 1 1 0 0 1

A 1 0 1 0 0 1 0 0 0 0 0 1

B 1 0 1 1 0 1 0 0 0 0 1 0

C 1 1 0 0 0 1 0 0 0 0 1 1

D 1 1 0 1 0 1 0 0 0 1 0 0

E 1 1 1 0 0 1 0 0 0 1 0 1

F 1 1 1 1 0 1 0 0 0 1 1 0

Indicadores ER: Designador de dígito incorrecto, o excedida área de datos para destino.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

Ejemplo

Conversión de datos Sección 5-18

Page 221: C200HALPHA Manual Programacion

215

5-18-10 CONVERSIÓN A ASCII -- ASC(086)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR

Di: Designador de dígito

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

D: Primer canal de destino

IR, SR, AR, DM, HR, LR

ASC(086)

S

Di

D

@ASC(086)

S

Di

D

Di debe estar dentro de los valores dados más adelante.Todos los canales destino deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, ASC(086) no se ejecuta. Cuando lacondición de ejecución es ON, ASC(086) convierte el dígito(s) designado de Sen el código ASCII de 8 bits equivalente y lo envía al canal(es) de resultado com-enzando con D.Cualquiera o todos los dígitos en S se pueden convertir en orden desde elprimer dígito designado. El primer dígito, el número de dígitos a convertir y lamitad de D que recibe el primer código ASCII se designa en Di. Si se designanvarios dígitos, se colocarán en orden comenzando por la mitad designada de D,cada uno necesita dos dígitos. Si se especifican más dígitos que los que quedanen S (contando desde el primer dígito designado), se utilizarán más dígitoscomenzado de nuevo desde el principio de S.Consultar la tabla de caracteres ASCII en Apéndice I.

Los dígitos de Di se seleccionan como se indica a continuación.

Especifica el primer dígito a convertir (0 a 3).

Número de dígitos a convertir (0 a 3)0: 1 dígito1: 2 dígitos2: 3 dígitos3: 4 dígitos

Primera mitad de D a utilizar.0: 8 bits de la derecha (1 mitad)1: 8 bits de la izquierda (2 mitad)

Paridad 0: ninguna1: par2: impar

No. dígito: 3 2 1 0

Limitaciones

Descripción

Designador de dígito

Conversión de datos Sección 5-18

Page 222: C200HALPHA Manual Programacion

216

A continuación se muestran algunos ejemplos de valores de Di y las conver-siones producidas de 4 bits binario a 8 bits ASCII.

0

1

2

3

S

Di: 0011

D

0

1

2

3

Di: 0030

S

0

1

2

3

Di: 0130S

Di: 0112

0

1

2

3

S

1 mitad

2 mitad

D

1 mitad

2 mitad

D+1

1 mitad

2 mitad

D

1 mitad

2 mitad

D+1

1 mitad

2 mitad

D

1 mitad

2 mitad

D+1

1 mitad

2 mitad

D+2

1 mitad

2 mitad

El bit de la izquierda de cada caracter ASCII (2 dígitos) se puede ajustarautomáticamente para paridad par o impar. Si no se designa paridad, el bit de laizquierda será siempre cero.Cuando se designa paridad par, el bit de la izquierda se ajustará de tal forma queel número total de bits en ON sea par. El estado del bit de paridad no afecta alsignificado del código ASCII.Cuando se designa paridad impar, el bit de la izquierda de cada caracter ASCIIse ajustará para que el número total de bits en ON sea impar.

Indicadores ER: Designador de dígito incorrecto o excedida el área de datos para des-tino.No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

5-18-11 CONVERSIÓN DE ASCII A HEXADECIMAL -- HEX(162)

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR

Di: Designador de dígito

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

D: Canal destino

IR, SR, AR, DM, HR, LR

HEX(162)

S

Di

D

@HEX(162)

S

Di

D

Di debe estar dentro de los valores dados más adelante.Todos los canales fuente deben estar dentro de la misma área de datos.Los bytes en los canales fuente deben contener el código ASCII equivalente devalores hexadecimales, es decir de 30 a 39 (0 a 9), 41 a 46 (A a F) ó 61 a 66 (a af).

Cuando la condición de ejecución es OFF, HEX(162) no se ejecuta. Cuando lacondición de ejecución es ON, HEX(162) convierte el byte(s) designado de

Paridad

Limitaciones

Descripción

Conversión de datos Sección 5-18

Page 223: C200HALPHA Manual Programacion

217

código ASCII del canal fuente en el equivalente hexadecimal enviando el resul-tado a D.

Hasta 4 códigos ASCII se pueden convertir comenzando con el primer bytedesignado de S. Los valores hexadecimales convertidos se envían a D en ordendesde el dígito designado. El primer byte (8 bits de la derecha o de la izquierda),el número de bytes a convertir y el dígito de D para recibir el primer valorhexadecimal se designa en Di. Si se designan varios bytes, se convertirán enorden comenzando desde la primera mitad designada de S y continuando porS+1 y S+2 si es necesario.

Si se designan más dígitos de los que quedan en D (contando desde el primerdígito designado), se utilizarán más dígitos comenzando de nuevo desde elprincipio de D. Los dígitos en D que no reciban datos convertidos no cambiarán.

Los dígitos de Di se seleccionan como sigue.

Especifica el primer dígito de D a utilizar (0 a 3).

Número de bytes a convertir (0 a 3)0: 1 byte (2-dígitos código ASCII)1: 2 bytes2: 3 bytes3: 4 bytes

Primer byte de S a utilizar.0: 8 bits de la derecha (1er byte)1: 8 bits de la izquierda (2do byte)

Paridad 0: ninguna1: par2: impar

No. dígito: 3 2 1 0

A continuación se muestran algunos ejemplos de valores de Di y las conver-siones de 8-bit ASCII a 4-bit hexadecimal resultantes.

0

1

2

3

D

Di: 0011

S

Di: 0030

Di: 0133Di: 0023

1er byte

2do byte

S

1er byte

2do byte

S+1

1er byte

2do byte

0

1

2

3

D

S

1er byte

2do byte

S+1

1er byte

2do byte

0

1

2

3

D S

1er byte

2do byte

S+1

1er byte

2do byte

0

1

2

3

D

S+2

1er byte

2do byte

Designador de dígito

Conversión de datos Sección 5-18

Page 224: C200HALPHA Manual Programacion

218

Tabla de código ASCII La siguiente tabla muestra los códigos ASCII antes de la conversión y los valo-res hexadecimal después de la conversión. Consultar la tabla de caracteresASCII en Apéndice K.

Dato original Dato convertido

CódigoASCII

Estados de bit (Ver nota) Dígito Bits

30 * 0 1 1 0 0 0 0 0 0 0 0 0

31 * 0 1 1 0 0 0 1 1 0 0 0 1

32 * 0 1 1 0 0 1 0 2 0 0 1 0

33 * 0 1 1 0 0 1 1 3 0 0 1 1

34 * 0 1 1 0 1 0 0 4 0 1 0 0

35 * 0 1 1 0 1 0 1 5 0 1 0 1

36 * 0 1 1 0 1 1 0 6 0 1 1 0

37 * 0 1 1 0 1 1 1 7 0 1 1 1

38 * 0 1 1 1 0 0 0 8 1 0 0 0

39 * 0 1 1 1 0 0 1 9 1 0 0 1

41 * 1 0 1 0 0 0 1 A 1 0 1 0

42 * 1 0 1 0 0 1 0 B 1 0 1 1

43 * 1 0 1 0 0 1 1 C 1 1 0 0

44 * 1 0 1 0 1 0 0 D 1 1 0 1

45 * 1 0 1 0 1 0 1 E 1 1 1 0

46 * 1 0 1 0 1 1 0 F 1 1 1 1

Nota El bit de la izquierda de cada código ASCII se ajusta para paridad.

El bit de la izquierda de cada caracter ASCII (2 dígitos) se puede ajustarautomáticamente para paridad par o impar.

Si no se designa paridad, el bit de la izquierda será siempre cero. Cuando sedesigna paridad par o impar, el bit de la izquierda se ajustará de tal forma que elnúmero total de bits en ON sea par o impar respectivamente.

Si la paridad del código ASCII en S no coincide con la paridad especificada enDi, se pone a ON el indicador ER (SR 25503) y no se ejecutará la instrucción.

Indicadores ER: Designador de dígito incorrecto o excedida el área de datos para des-tino.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

Ejemplo En el siguiente ejemplo, el 2do byte de LR 10 y el 1er byte de LR 11 se conviertena valores hexadecimales y esos valores se escriben en el primero y segundobytes de IR 010.

@HEX(162)

HR 10

LR 10

00000

010

Dirección Instrucción Operandos

00000 LD 0000000001 @HEX(162)

LR 10HR 10

010

3 1 3 0LR 104 2 3 2

Conversión ahexadecimal

LR 11

0 0 2 1010

3 5 3 4LR 12

0 1 1 0HR 10

Paridad

Conversión de datos Sección 5-18

Page 225: C200HALPHA Manual Programacion

219

5-18-12 FUNCIÓN ESCALA -- SCL(194)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés Áreas de datos de operando

@SCL(194)

S

P1

RR: Canal de resultado

IR, SR, AR, DM, HR, LR

P1: Primer canal de parámetro

IR, SR, AR, DM, HR, TC, LR

SCL(194)

S

P1

R

Limitaciones P1 y P1+2 deben estar en BCD.P1 a P1+3 deben estar en la misma área de datos.P1+1 y P1+3 no deben seleccionarse al mismo valor.

Descripción SCL(194) se utiliza para convertir linealmente un valor hexadecimal de 4-dígi-tos a un valor BCD de 4 dígitos. A diferencia de BCD(024), que convierte unvalor hexadecimal de 4 dígitos a su equivalente BCD de 4 dígitos (Shex !SBCD), SCL(194) puede convertir el valor hexadecimal de acuerdo con una rela-ción lineal especificada. La línea de conversión se define por dos puntos especi-ficados en los canales de parámetro P1 a P1+3.Cuando la condición de ejecución es OFF, SCL(194) no se ejecuta. Cuando lacondición de ejecución es ON, SCL(194) convierte el valor hexadecimal de 4dígitos en S al valor BCD de 4 dígitos en la línea definida por los puntos (P1,P1+1) y (P1+2, P1+3) y envía el resultado a R. Los resultados se redondean alentero más próximo. Si el resultado es menor de 0000, se escribe 0000 en R y siel resultado es mayor de 9999, entonces se escribe en R, 9999.La siguiente tabla muestra las funciones y rangos de los canales de parámetros:

Parámetro Función Rango Comentarios

P1 BCD punto #1 (AY) 0000 a 9999 ---

P1+1 Hex. punto #1 (AX) 0000 a FFFF No fijar P1+1=P1+3.

P1+2 BCD punto #2 (BY) 0000 a 9999 ---

P1+3 Hex. punto #2 (BX) 0000 a FFFF No fijar P1+3=P1+1.

El siguiente diagrama muestra el canal fuente, S, convertido a D de acuerdo conla línea definida por los puntos (AY, AX) y (BY, BX).

AX S BX

Valor después deconversión (BCD)

BY

R

Valor antes de conversión(Hexadecimal)

AY

Los resultados se pueden calcular convirtiendo primero todos los valores a BCDy luego utilizando la siguiente fórmula.

Resultados = BY -- [(BY -- AY)/(BX -- AX) X (BX -- S)]

Indicadores ER: El valor en P1+1 igual que en P1+3.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

Conversión de datos Sección 5-18

Page 226: C200HALPHA Manual Programacion

220

P1 y P1+3 no están en la misma área de datos, u otro error de selección.

EQ: En ON cuando el resultado, R, es 0000.

Ejemplo Cuando 00000 se pone en ON en el siguiente ejemplo, el dato fuente BCD enDM 0100 (#0100) se convierte a hexadecimal de acuerdo con los parámetros enDM 0150 a DM 0153. El resultado (#0512) se escribe luego en DM 0200.

@SCL(194)

DM 0150

DM 0100

00000

DM 0200

Dirección Instrucción Operandos

00000 LD 0000000001 @SCL(194)

DM 0100DM 0150DM 0200

DM 0150 0010DM 0151 0005DM 0152 0050DM 0153 0019

DM 0100 0100

DM 0200 0512

5-18-13 COLUMNA A LÍNEA -- LINE(063)

S: Primer canal del grupo de 16

IR, SR, AR, DM, HR, TC, LR

C: Designador bit columna (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

D: Canal destino

IR, SR, AR, DM, HR, TC, LR

LINE(063)

S

C

D

@LINE(063)

S

C

D

Limitaciones S y S+15 deben estar en la misma área de datos.C debe estar en BCD entre #0000 y #0015.

Cuando la condición de ejecución es OFF, LINE(063) no se ejecuta. Cuando lacondición de ejecución es ON, LINE(063) copia la columna de bits C del grupode 16 canales (S a S+15) a los 16 bits del canal D (00 a 15).

0

0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1

Bit15

Bit00

S

C

1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1S+10 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1S+2

.

.

.

.

.

.

. . .

.

.

.

0 1 1 1 0 0 0 1 1 0 0 0 1 0 1 0S+15

1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1S+3

0 1 1D 1

Bit15

Bit00

.

.

.

Nota Esta instrucción es la instrucción COLUMNA-A-CANAL -- CTW(63) en los PLCsC200H.

Indicadores ER: El designador de bit de columna C no está en BCD, o especifica uncanal inexistente (la especificación de bit debe estar entre 00 y 15).

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

Descripción

Conversión de datos Sección 5-18

Page 227: C200HALPHA Manual Programacion

221

EQ: En ON cuando el contenido de D es cero; en otros casos en OFF.

El siguiente ejemplo muestra cómo utilizar LINE(063) para mover la columna debit 07 del grupo (IR 100 a IR 115) a DM 0100.

LINE(063)

100

#0007

DM 0100

00000Dirección Instrucción Operandos

00000 LD 0000000001 LINE(063)

100# 0007DM 0100

5-18-14 LÍNEA A COLUMNA -- COLM(064)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR

C: Designador bit columna (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

D: Primer canal del grupo destino

IR, AR, DM, HR, TC, LR

COLM(064)

S

D

C

@COLM(064)

S

D

C

Limitaciones D y D+15 deben estar en la misma área de datos.C debe estar en BCD entre #0000 y #0015.

Descripción Cuando la condición de ejecución es OFF, COLM(064) no se ejecuta. Cuando lacondición de ejecución es ON, COLM(064) copia los 16 bits del canal S (00 a 15)a la columna de bits, C, del grupo de 16 canales (D a D+15).

0

0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1

Bit15

Bit00

D

C

1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1D+10 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1D+2

.

.

.

.

.

.

.

.

.

.

0 1 1 1 0 0 0 1 1 0 0 0 1 0 1 0D+15

1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1D+3

0 1 1S 1

Bit15

Bit00

......

.

.

.

Nota Esta instrucción es la instrucción CANAL-A-COLUMNA -- WTC(64) en los PLCsC200H.

Ejemplo

Conversión de datos Sección 5-18

Page 228: C200HALPHA Manual Programacion

222

Indicadores ER: El designador de bit C no está en BCD, o especifica un bit inexistente(es decir, el bit especificado debe ser entre 00 y 15).

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el contenido de S es cero; en caso contrario en OFF.

El siguiente ejemplo muestra como utilizar COLM(064) para mover los conteni-dos de DM 0100 (00 a 15) a la columna de bit 15 del grupo de canales (DM 0200a DM 0215).

COLM(064)

DM 0100

DM 0200

#0015

00000Dirección Instrucción Operandos

00000 LD 0000000001 COLM(064)

DM 0100DM 0200# 0015

5-18-15 COMPLEMENTO A 2 -- NEG(160)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relésÁreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

NEG(160)

S

R

---

@NEG(160)

S

R

---

Convierte el contenido hexadecimal de 4 dígitos del canal fuente (S) a su com-plemento a 2 y envía el resultado al canal de resultado (R). El efecto de estaoperación es el mismo que restar S de 0000 y enviar el resultado a R.

Si el contenido de S es 0000, el contenido de R será también 0000 después de laejecución y EQ (SR 25506) se pondrá en ON.

Si el contenido de S es 8000, el contenido de R será también 8000 después de laejecución y UF (SR 25405) se pondrá en ON.

Nota Ver información sobre datos binarios con signo de 16 bits en la página 25.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: ON cuando el contenido de R es cero después de la ejecución; en otroscasos OFF.

UF: ON cuando el contenido de S es 8000; en otros casos OFF.

N: ON cuando el bit 15 de R se pone a 1; en caso contrario en OFF.

Ejemplo

Descripción

Conversión de datos Sección 5-18

Page 229: C200HALPHA Manual Programacion

223

El siguiente ejemplo muestra cómo utilizar NEG(160) para hallar el comple-mento a 2 del valor hexadecimal 001F y envía el resultado a DM 0020.

NEG(160)

#001F

DM 0020

---

00000Dirección Instrucción Operandos

00000 LD 0000000001 NEG(160)

# 001FDM 0020

#0000

#001F

#FFE1

--Salida a DM 0020.

5-18-16 COMPLEMENTO A 2 DE DOS CANALES -- NEGL(161)

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR

Símbolo de relésÁreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

NEGL(161)

S

R

---

@NEGL(161)

S

R

---

Limitaciones S y S+1 deben estar en la misma área de datos, así como R y R+1.

Convierte el contenido hexadecimal de ocho dígitos de los canales fuente (S yS+1) a su complemento a 2 y envía el resultado a los canales de resultado (R yR+1). El efecto de esta instrucción es el mismo que restar el contenido de 8 dígi-tos de S y S+1 de $0000 0000 y envíar el resultado a R y R+1.

Si el contenido de S es 0000 0000, el contenido de R será también 0000 0000después de la ejecución y EQ (SR 25506) se pondrá a ON.

Si el contenido de S es 8000 0000, el contenido de R también será 8000 0000después de la ejecución y UF (SR 25405) se pondrá en ON.

Nota Ver información sobre datos binarios con signo de 16 bits en la página 25.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: ON cuando el contenido de R+1, R es cero después de la ejecución; enlos otros casos en OFF.

UF: ON cuando el contenido de S+1, S es 8000 0000; en otros casos enOFF.

N: ON cuando el bit 15 de R+1 es 1; si no en OFF.

Ejemplo

Descripción

Conversión de datos Sección 5-18

Page 230: C200HALPHA Manual Programacion

224

El siguiente ejemplo muestra cómo utilizar NEGL(161) para hallar el comple-mento a 2 del valor hexadecimal en LR 21, LR 20 (001F FFFF) y enviar el resul-tado a DM 0021, DM 0020.

NEG(160)

LR20

DM 0020

---

00000Dirección Instrucción Operandos

00000 LD 0000000001 NEGL(161)

LR 20DM 0020

0000

001F

FFE0

--

0000

FFFF

0001

S+1: LR 21 S: LR 20

R+1: DM 0021 R: DM 0020

Ejemplo

Conversión de datos Sección 5-18

Page 231: C200HALPHA Manual Programacion

225

5-19 Instrucciones matemáticas de símboloEstas instrucciones efectúan operaciones aritméticas con datos BCD, binarioso coma flotante.

5-19-1 Suma binaria: +(400)/+L(401)/+C(402)/+CL(403)SUMA BINARIA CON SIGNO SIN ACARREO: +(400)

Au: Canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR, #

Ad: Canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, EM, HR, LR

+(400)

Au

Ad

R

@+(400)

Au

Ad

R

DOBLE SUMA BINARIA CON SIGNO SIN ACARREO: +L(401)

Au: 1er canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR

Ad: 1er canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

+L(401)

Au

Ad

R

@+L(401)

Au

Ad

R

SUMA BINARIA CON SIGNO CON ACARREO: +C(402)

Au: Canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR, #

Ad: Canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, EM, HR, LR

+C(402)

Au

Ad

R

@+C(402)

Au

Ad

R

DOBLE SUMA BINARIA CON SIGNO CON ACARREO: +CL(403)

Au: 1er canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR

Ad: 1er canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

+CL(403)

Au

Ad

R

@+CL(403)

Au

Ad

R

Descripción SUMA BINARIA CON SIGNO SIN ACARREOCuando la condición de ejecución es OFF, +(400) no se ejecuta. Cuando la con-

Instrucciones matemáticas de símbolo Sección 5-19

Page 232: C200HALPHA Manual Programacion

226

dición de ejecución es ON, +(400) suma los contenidos de Au y Ad y coloca elresultado en R. CY se pondrá a ON si el resultado es mayor que FFFF.

Au

Ad

RCY

+

DOBLE SUMA BINARIA CON SIGNO SIN ACARREOCuando la condición de ejecución es OFF, +L(401) no se ejecuta. Cuando lacondición de ejecución es ON, +L(401) suma los contenidos de 8 dígitos deAu+1 y Au y los contenidos de 8 dígitos de Ad+1 y Ad, y coloca el resultado en Ry R + 1. CY se pondrá en ON si el resultado es mayor que FFFF FFFF.

Au +1

Ad + 1

R + 1CY

+

Au

Ad

R

SUMA BINARIA CON SIGNO CON ACARREOCuando la condición de ejecución es OFF, +C(402) no se ejecuta. Cuando lacondición de ejecución es ON, +C(402) suma los contenidos de Au, Ad, y CY ycoloca el resultado en R. CY se pondrá en ON si el resultado es mayor queFFFF.

CY+

Au

Ad

RCY

DOBLE SUMA BINARIA CON SIGNO CON ACARREOCuando la condición de ejecución es OFF, +CL(403) no se ejecuta. Cuando lacondición de ejecución es ON, +CL(403) suma los contenidos de Au+1, Au, conlos contenidos de Ad+1 y Ad, y CY, y coloca el resultado en R y R + 1. CY sepondrá en ON si el resultado es mayor que FFFF FFFF.

Au +1

Ad + 1

R + 1

CY+

Au

Ad

RCY

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: El resultado es mayor que FFFF o FFFF FFFF.

EQ: El resultado es 0.

OF: Au (Au +1) y Ad (Ad +1) son números positivos y el resultado es negati-vo.

UF: Au (Au +1) y Ad (Ad +1) son negativos y el resultado es positivo.

N: Muestra el estado del bit 15 de R ó R+1.

Utilización de las instrucciones de suma binaria con signoEl rango para datos con signo es de --32,768 a 32,767 en decimal(--2,147,483,648 a 2,147,483,647 para instrucciones “doble”), y de 8000 a FFFF

Instrucciones matemáticas de símbolo Sección 5-19

Page 233: C200HALPHA Manual Programacion

227

y de 0000 a 7FFF en hexadecimal (8000 0000 a FFFF FFFF y 0000 0000 a 7FFFFFFF para instrucciones “doble”).

Los números negativos se expresan en complemento a 2. Si el resultado de lasuma está dentro del rango de 8000 a FFFF, representa un número negativo yse pone a ON el indicador de Negativo (SR 25402).

Si Au y Ad son números positivos y el resultado de la suma es negativo, se ponea ON el indicador de Overflow (SR 25404). Si Au y Ad son números negativos yel resultado de la suma es positivo, se pone a ON el indicador de Underflow (SR25405). Si el resultado de la suma genera un acarreo, se pone a ON el indicadorde Acarreo.

El rango para datos binarios sin signo es de 0000 a FFFF (0000 0000 a FFFFFFFF para instrucciones “doble”), por lo que el rango decimal sería de 0 a65,535 (0 a 4,294,967,295).

5-19-2 Suma BCD: +B(404)/ +BL(405)/+BC(406)/+BCL(407)

SUMA BCD SIN ACARREO: +B(404)

Au: Canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR, #

Ad: Canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, EM, HR, LR

+B(404)

Au

Ad

R

@+B(404)

Au

Ad

R

DOBLE SUMA BCD SIN ACARREO: +BL(405)

Au: 1er canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR

Ad: 1er canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

+BL(405)

Au

Ad

R

@+BL(405)

Au

Ad

R

SUMA BCD CON ACARREO: +BC(406)

Au: Canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR, #

Ad: Canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, EM, HR, LR

+BC(406)

Au

Ad

R

@+BC(406)

Au

Ad

R

Instrucciones matemáticas de símbolo Sección 5-19

Page 234: C200HALPHA Manual Programacion

228

DOBLE SUMA BCD CON ACARREO: +BCL(407)

Au: 1er canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR

Ad: 1er canal de sumando

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

+BCL(407)

Au

Ad

R

@+BCL(407)

Au

Ad

R

Descripciónn SUMA BCD SIN ACARREOCuando la condición de ejecución es OFF, +B(404) no se ejecuta. Cuando lacondición de ejecución es ON, +B(404) suma los contenidos de Au y Ad y colocael resultado en R. CY se pondrá en ON si el resultado es mayor que 9999.

Au

Ad

RCY

+

DOBLE SUMA BCD SIN ACARREOCuando la condición de ejecución es OFF, +BL(405) no se ejecuta. Cuando lacondición de ejecución es ON, +BL(405) suma los contenidos de 8 dígitos deAu+1 y Au y los contenidos de 8 dígitos de Ad+1 y Ad, y coloca el resultado en Ry R + 1. CY se pondrá en ON si el resultado es mayor que 9999 9999.

Au +1

Ad + 1

R + 1CY

+

Au

Ad

R

SUMA BCD CON ACARREOCuando la condición de ejecución es OFF, +BC(406) no se ejecuta. Cuando lacondición de ejecución es ON, +BC(406) suma los contenidos de Au, Ad, y CY ycoloca el resultado en R. CY se pondrá en ON si el resultado es mayor que 9999.

CY+

Au

Ad

RCY

DOBLE SUMA BCD CON ACARREOCuando la condición de ejecución es OFF, +BCL(407) no se ejecuta. Cuando lacondición de ejecución es ON, +BCL(407) suma los contenidos de 8 dígitos deAu+1, Au, los contenidos de 8 dígitos de Ad+1 y Ad, y CY, y escribe el resultadoen R y R + 1. CY se pondrá en ON si el resultado es mayor que 9999 9999.

Au +1

Ad + 1

R + 1

CY+

Au

Ad

RCY

Precauciones Au y Ad (o Au, Au+1, Ad, y Ad+1) deben estar en BCD. Si no están en BCD, sepondrá a ON el indicador de error (SR 25503) y la instrucción no se ejecutará.

Instrucciones matemáticas de símbolo Sección 5-19

Page 235: C200HALPHA Manual Programacion

00000+BL(405)

DM 0100

DM 0110

DM 0120

00001+BCL(407)

DM 0200

DM 0210

DM 0220

229

Indicadores ER: Au y Ad (o Au, Au+1, Ad, y Ad+1) no están en BCD.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: El resultado excede el número de dígitos.

EQ: El resultado después de la suma es todo ceros.

Ejemplo Operación +BLCuando IR 00000 está en ON en el siguiente ejemplo, los contenidos de DM0101 y DM 0100 se suman a los contenidos de DM 0111 y DM 0110, y el resulta-do se envía como 8 dígitos BCD a DM 0121 y DM 0120.

Operación +BCLCuando IR 00001 está en ON en el siguiente ejemplo, los contenidos de DM0201 y DM 0200 se suman a los contenidos de DM 0211 y DM 0210, y el resulta-do incluyendo el acarreo se envía en ocho dígitos BCD a DM 0221 y DM 0220.

Dirección Instrucción Operandos

00000 LD 00000

00001 +BL(405)

DM 0100

DM 0110

DM 0120

00002 LD 00001

00003 +BCL(407)

DM 0200

DM 0210

DM 0220

5-19-3 Resta binaria: --(410)/ --L(411)/--C(412)/--CL(413)

RESTA BINARIA CON SIGNO SIN ACARREO: --(410)

Mi: Canal de minuendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Su: Canal de sustraendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, EM, HR, LR

--(410)

Mi

Su

R

@--(410)

Mi

Su

R

DOBLE RESTA BINARIA CON SIGNO SIN ACARREO: --L(411)

Mi: 1er canal de minuendo

IR, SR, AR, DM, EM, HR, TC, LR

Su: 1er canal de sustraendo

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

--L(411)

Mi

Su

R

@--L(411)

Mi

Su

R

Instrucciones matemáticas de símbolo Sección 5-19

Page 236: C200HALPHA Manual Programacion

230

RESTA BINARIA CON SIGNO CON ACARREO: --C(412)

Mi: Canal de minuendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Su: Canal de sustraendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, EM, HR, LR

--C(412)

Mi

Su

R

@--C(412)

Mi

Su

R

DOBLE RESTA BINARIA CON SIGNO Y CON ACARREO: --CL(413)

Mi: 1er canal de minuendo

IR, SR, AR, DM, EM, HR, TC, LR

Su: 1er canal de sustraendo

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

--CL(413)

Mi

Su

R

@--CL(413)

Mi

Su

R

RESTA BINARIA CON SIGNO SIN ACARREOCuando la condición de ejecución es OFF, --(410) no se ejecuta. Cuando la con-dición de ejecución es ON, --(410) resta los contenidos de Su de Mi y envía elresultado a R. Si el resultado de la resta es negativo se pone a ON CY. Paraobtener el resultado correcto cuando éste es negativo, se debe restar de 0000 elcomplemento a 2 contenido en R.

Mi -- Su CY R

DOBLE RESTA BINARIA CON SIGNO SIN ACARREOCuando la condición de ejecución es OFF, --L(411) no se ejecuta. Cuando lacondición de ejecución es ON, --L(411) resta al valor de 8 dígitos de Mi y Mi+1 elvalor de 8 dígitos de Su y Su+1, y almacena el resultado en R y R+1. Si el resul-tado de la resta es negativo, se pone a ON CY.

Mi + 1 Mi

Su + 1 Su

R + 1 R

--

CY

RESTA BINARIA CON SIGNO CON ACARREOCuando la condición de ejecución es OFF, --C(412) no se ejecuta. Cuando lacondición de ejecución es ON, --C(412) resta de los contenidos de Mi los con-tenidos de Su y CY y coloca el resultado en R. Si el resultado de la resta es nega-tivo, se pone a ON CY.

Mi -- Su -- CY CY R

DOBLE RESTA BINARIA CON SIGNO CON ACARREOCuando la condición de ejecución es OFF, --CL(413) no se ejecuta. Cuando lacondición de ejecución es ON, --CL(413) resta al valor de 8 dígitos de Mi yMi+1, CY y el valor de 8 dígitos de Su y Su+1, y coloca el resultado en R y R+1. Siel resultado de la resta es negativo, CY se pone a ON.

Descripción

Instrucciones matemáticas de símbolo Sección 5-19

Page 237: C200HALPHA Manual Programacion

231

Mi + 1 Mi

Su + 1 Su

R + 1 R

-- CY

CY

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: El resultado de la resta provocó un acarreo.EQ: Los contenidos del canal R (o canal R y R+1 para instrucciones “doble”)

después de la resta son todo ceros.OF: Mi es un número positivo, Su es negativo y el resultado de la resta es

negativo.UF: Mi es un número negativo, Su es positivo y el resultado de la resta es

positivo.N: El bit más significativo del canal R (del canal R+1 para instrucciones

“dobles”) después de la resta es “1.”

Utilización de instrucciones RESTA BINARIA CON SIGNOEl rango para datos con signo es de --32,768 a 32,767 en decimal(--2,147,483,648 a 2,147,483,647 para instrucciones “dobles”), y de 8000 aFFFF y de 0000 a 7FFF en hexadecimal (8000 0000 a FFFF FFFF y 0000 0000 a7FFF FFFF para instrucciones “doble”).Los números negativos se expresan como complemento a 2. Si el resultado dela resta está en el rango de 8000 a FFFF, representa un número negativo consigno y se pone a ON el indicador de Negativo (SR 25402).Si Mi es un número positivo, Su es negativo y el resultado de la resta es negati-vo, se pone a ON el indicador de Overflow (SR 25404). Si Mi es un número ne-gativo, Su es positivo y el resultado de la resta es positivo, se pone a ON el indi-cador de Underflow (SR 25405). Si el resultado de una resta es negativo, el indi-cador de Acarreo se pone en ON.El rango para datos binarios sin signo es de 0000 a FFFF (0000 0000 a FFFFFFFF para instrucciones “doble”), por lo que el rango decimal sería de 0 a65,535 (0 a 4,294,967,295). Con datos sin signo, el indicador de Acarreo en ONindica que el resultado de la resta es negativo. El resultado se expresa comocomplemento a 2, por lo que para obtener el resultado verdadero, se debe res-tar a 0 el complemento a 2.

Ejemplo 1

FFFFH0001H--)

FFFEH

--1+1--)

--2 (Nota 1)

655351--)

65534 (Nota 2)

Indicador Negativo ONIndicador Acarreo OFF

Datos con signo datos sin signo

Ejemplo 2

FFFDHFFFFH--)

FFFEH

--3--1--)

--2 (Nota 1)

65533--)

--2 (Nota 3)

Indicador Negativo ONIndicador Acarreo ON

Datos con signo Datos sin signo

65535

Instrucciones matemáticas de símbolo Sección 5-19

Page 238: C200HALPHA Manual Programacion

00000--L(411)

DM 0100

DM 0110

DM 0120

00001--CL(413)

DM 0200

DM 0210

DM 0220

--L 200 120 DM 0100

TR000002

04 (CY)SR 255

02100

(411)

04 (CY)SR 255

1

--L DM 0000 DM 0100 DM 0100

(411)

2

02100

“--” display

232

Notas1. Dado que el indicador de Negativo está en ON, el resultado (FFFE) es unnúmero negativo (complemento a 2) y se expresa como --2.

2. El indicador de Acarreo está en OFF y el resultado (FFFE) es un númeropositivo sin signo (65,534).

3. El indicador de Acarreo está en ON por lo que el resultado (FFFE) es unnúmero negativo sin signo (complemento a 2) y será --2 cuando se convier-ta.

Ejemplo de programación 1 Operación --LCuando IR 00000 está en ON en el siguiente ejemplo, se resta el contenido deDM 0111 y DM 0110 del contenido de DM 0101 y DM 0100, y el resultado en 8dígitos binario se envía a DM 0121 y DM 0120. Si el resultado de la resta es ne-gativo se pone a ON CY.

Operación --CLCuando IR 00001 está en ON en el siguiente ejemplo, se resta el contenido deDM 0211 y DM 0210 del contenido de DM 0201 y DM 0200, y el resultado en 8dígitos binario se envía a DM 0221 y DM 0220. CY se pone a ON si el resultadode la resta es negativo.

Dirección Instrucción Operandos

00000 LD 00000

00001 --L(411)

DM 0100

DM 0110

DM 0120

00002 LD 00001

00003 --CL(413)

DM 0200

DM 0210

DM 0220

Ejemplo de programa 2 Ejemplo (dato sin signo): 20F55A10 -- B8A360E3 = --97AE06D3.En este ejemplo, el valor binario de ocho dígitos en IR 121 y IR 120 se resta delvalor en IR 201 y IR 200, y el resultado en 8 dígitos binario se envía a DM 0101 yDM 0100. Si el resultado es negativo, se ejecutará la instrucción en (2) y el resul-tado real se enviará luego a DM 0101 y DM 0100.

Se pondrá a ON el indicador de Acarreo (SR 25504), por lo que el número reales --97AE06D3. Dado que el contenido de DM 0101 y DM 0100 es negativo, CYse utiliza para poner a ON un bit de autoretención que pone a ON un bit indican-do un valor negativo.

Dirección Instrucción Operandos

00000 LD 00002

00001 OUT TR0

00002 --L(411)

200

120

DM 0100

00003 LD TR0

00004 AND SR 25504

00005 --L(411)

DM 0000

DM 0100

DM 0100

00006 LD TR0

00007 AND SR 25504

00008 OR 02100

00009 OUT 02100

Instrucciones matemáticas de símbolo Sección 5-19

Page 239: C200HALPHA Manual Programacion

233

1

Mi+1: IR 201 Mi: IR 200

R+1: DM 0101

Su+1: IR 121 Su: IR 120

--

2 0 F 5 5 A 0

3E063A8B

6 5 1 F 9 2 D1

CY R+1: DM 0100

Resta en 1

8

El indicador de Acarreo (SR 25504) está en ON, por lo que el resultado se restade 0000 0000 (los contenidos de DM 0000 y DM 0001) para obtener el resultadoreal.

R+1: DM 0101

Su+1: DM 0101 Su: DM 0100

--

0 0

3D60EA79

6 5 1 F 9 2 D

1

CY R+1: DM 0100

Resta en 2

0000 0 0

8

Mi+1: DM 0001 Mi: DM 0000

R+1: DM 0101

Su+1: DM 0101 Su: DM 0100

--

3D60EA79

6 5 1 F 9 2 D

1

CY R+1: DM 0100

Resultado final de la resta

1

Mi+1: IR 201 Mi: IR 200

2 0 F 5 5 A 0

8

5-19-4 Resta BCD: --B(414)/ --BL(415)/--BC(416)/--BCL(417)

RESTA BCD SIN ACARREO: --B(414)

Mi: Canal de minuendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Su: Canal de sustraendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, EM, HR, LR

--B(414)

Mi

Su

R

@--B(414)

Mi

Su

R

Instrucciones matemáticas de símbolo Sección 5-19

Page 240: C200HALPHA Manual Programacion

234

DOBLE RESTA BCD SIN ACARREO: --BL(415)

Mi: 1er canal de minuendo

IR, SR, AR, DM, EM, HR, TC, LR

Su: 1er canal de sustraendo

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

--BL(415)

Mi

Su

R

@--BL(415)

Mi

Su

R

RESTA BCD CON ACARREO: --BC(416)

Mi: Canal de minuendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Su: Canal de sustraendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, EM, HR, LR

--BC(416)

Mi

Su

R

@--BC(416)

Mi

Su

R

DOBLE RESTA BCD CON ACARREO: --BCL(417)

Mi: 1er canal de minuendo

IR, SR, AR, DM, EM, HR, TC, LR

Su: 1er canal de sustraendo

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

--BCL(417)

Mi

Su

R

@--BCL(417)

Mi

Su

R

RESTA BCD SIN ACARREOCuando la condición de ejecución es OFF, --B(414) no se ejecuta. Cuando lacondición de ejecución es ON, --B(414) resta los contenidos BCD de Su a Mi ycoloca el resultado en R. Si el resultado es negativo, se pone a ON CY y se colo-ca en R el complemento a 10 del resultado real. Para convertir el complemento a10 al resultado verdadero, restar a 0000 el contenido de R.

Mi -- Su CY R

DOBLE RESTA BCD SIN ACARREOCuando la condición de ejecución es OFF, --BL(415) no se ejecuta. Cuando lacondición de ejecución es ON, --BL(415) resta el contenido BCD de 8 dígitos deSu y Su+1 del contenido BCD de 8 dígitos de Mi y Mi+1, y coloca el resultado enR y R+1. Si el resultado es negativo, CY se pone a ON y coloca en R el comple-mento a 10 del resultado real. Para convertir el complemento a 10 al resultadoverdadero, restar a 0000 el contenido de R.

Mi + 1 Mi

Su + 1 Su

R + 1 R

--

CY

Descripción

Instrucciones matemáticas de símbolo Sección 5-19

Page 241: C200HALPHA Manual Programacion

00000--BL(415)

DM 0100

DM 0110

DM 0120

00001--BCL(417)

DM 0200

DM 0210

DM 0220

235

RESTA BCD CON ACARREOCuando la condición de ejecución es OFF, --BC(416) no se ejecuta. Cuando lacondición de ejecución es ON, --BC(416) resta los contenidos BCD de SU y CYa Mi, y coloca el resultado en R. Si el resultado es negativo, CY se pone a ON yse coloca en R el complemento a 10 del resultado real. Para convertir el comple-mento a 10 al resultado real, restar a 0000 el contenido de R.

Mi -- Su -- CY CY R

DOBLE RESTA BCD CON ACARREOCuando la condición de ejecución es OFF, --BCL(417) no se ejecuta. Cuando lacondición de ejecución es ON, --BCL(417) resta CY y el contenido BCD de 8dígitos de Su y Su+1 al contenido BCD de 8 dígitos en Mi y Mi+1, y coloca elresultado en R y R+1. Si el resultado es negativo, CY se pone a ON y se colocaen R el complemento a 10 del resultado real. Para convertir el complemento a10 al resultado verdadero, restar a 0000 0000 el contenido de R.

Mi + 1 Mi

Su + 1 Su

R + 1 R

-- CY

CY

Precauciones Mi y Su (o Mi, Mi+1, Su, y Su+1) deben estar en BCD. Si se utiliza otro tipo dedato, se pondrá a ON el indicador de Error (SR 25503) y la instrucción no seejecutará.

Indicadores ER: Mi y Su (o Mi, Mi+1, Su, y Su+1) no están en BCD.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: El resultado excede el número de dígitos.

EQ: El resultado después de la resta es todo ceros.

Ejemplo Operación --BLCuando IR 00000 está en ON en el siguiente ejemplo, el contenido de DM 0111 yDM 0110 se resta del contenido de DM 0101 y DM 0100, y el resultado se envíaen 8 dígitos BCD a DM 0121 y DM 0120. CY se pone a ON si el resultado esnegativo.Operación --BCLCuando IR 00001 está en ON en el siguiente ejemplo, el contenido de DM 0211y DM 0210 se resta del contenido de DM 0201 y DM 0200, y el resultado incluidoel acarreo se envía en 8 dígitos BCD a DM 0221 y DM 0220. CY se pone en ONsi el resultado es negativo.

Dirección Instrucción Operandos

00000 LD 00000

00001 --BL(415)

DM 0100

DM 0110

DM 0120

00002 LD 00001

00003 --BCL(417)

DM 0200

DM 0210

DM 0220

Instrucciones matemáticas de símbolo Sección 5-19

Page 242: C200HALPHA Manual Programacion

--BL 200 120 DM 0100

TR000002

04 (CY)SR 255

02100

(415)

04 (CY)SR 255

1

--BL DM 0000 DM 0100 DM 0100

(415)

2

02100

“--” display

236

Programa ejemplo Ejemplo: 9,583,960 -- 17,072,641 = --7,488,681.En este ejemplo, el contenido de 8 dígitos BCD de IR 121 y IR 120 se resta alcontenido de IR 201 y IR 200, y el resultado se envía en 8 dígitos BCD a DM0101 y DM 0100. El resultado es negativo, por lo que se ejecutará instrucción en(2), y el resultado verdadero se enviará luego a DM 0101 y DM 0100.

El indicador de Acarreo (SR 25504) se pondrá en ON, por lo que el número reales --7,488,681. Dado que el contenido de DM 0101 y DM 0100 es negativo, CYse utiliza para poner a ON un bit de autoretención que pone a ON un bit queindica un valor negativo.

Dirección Instrucción Operandos

00000 LD 00002

00001 OUT TR0

00002 --BL(415)

200

120

DM 0100

00003 LD TR0

00004 AND SR 25504

00005 --BL(415)

DM 0000

DM 0100

DM 0100

00006 LD TR0

00007 AND SR 25504

00008 OR 02100

00009 OUT 02100

6

Mi+1: IR 201 Mi: IR 200

R+1: DM 0101

Su+1: IR 121 Su: IR 120

--

0 9 5 8 3 9 0

14627071

9 22 5 1 1 3 1 91

CY R+1: DM 0100

Resta en 1

09583960 + (100000000 -- 17072641)

El indicador de Acarreo (SR 25504) está en ON, por lo que el resultado se restade 0000 0000.

Su+1: DM 0101 Su: DM 0100

--

0 0

9 22 5 1 1 3 1 9

Resta en 2

0000 0 0

R+1: DM 0101

0 4 8 8 6 8 11

CY R+1: DM 0100

00000000 + (100000000 -- 92511319)

7

Mi+1: DM 0001 Mi: DM 0000

Instrucciones matemáticas de símbolo Sección 5-19

Page 243: C200HALPHA Manual Programacion

237

R+1: DM 0101

Su+1: DM 0101 Su: DM 0100

--

18688470

6 5 1 F 9 2 D

1

CY R+1: DM 0100

Resultado final de la resta

1

Mi+1: IR 201 Mi: IR 200

2 0 F 5 5 A 0

8

5-19-5 Multiplicación binaria: *(420)/ *L(421)/*U(422)/*UL(423)

MULTIPLICACIÓN BINARIA CON SIGNO: *(420)

Md: Canal multiplicando

IR, SR, AR, DM, EM, HR, TC, LR, #

Mr: Canal multiplicador

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

*(420)

Md

Mr

R

@*(420)

Md

Mr

R

DOBLE MULTIPLICACIÓN BINARIA CON SIGNO: *L(421)

Md: 1er canal multiplicando

IR, SR, AR, DM, EM, HR, TC, LR, #

Mr: 1er canal multiplicador

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

*L(421)

Md

Mr

R

@*L(421)

Md

Mr

R

MULTIPLICACIÓN BINARIA SIN SIGNO: *U(422)

Md: Canal multiplicando

IR, SR, AR, DM, EM, HR, TC, LR, #

Mr: Canal multiplicador

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

*U(422)

Md

Mr

R

@*U(422)

Md

Mr

R

Instrucciones matemáticas de símbolo Sección 5-19

Page 244: C200HALPHA Manual Programacion

238

DOBLE MULTIPLICACIÓN BINARIA SIN SIGNO: *UL(423)

Md: 1er canal multiplicando

IR, SR, AR, DM, EM, HR, TC, LR

Mr: 1er canal multiplicador

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

*UL(423)

Md

Mr

R

@*UL(423)

Md

Mr

R

MULTIPLICACIÓN BINARIA CON SIGNOCuando la condición de ejecución es OFF, *(420) no se ejecuta. Cuando la con-dición de ejecución es ON, *(420) multiplica el contenido con signo de Md por elcontenido con signo de Mr, coloca los cuatro dígitos de la derecha del resultadoen R, y los cuatro de la izquierda en R+1.

Md

Mr

R +1 R

X

DOBLE MULTIPLICACIÓN BINARIA CON SIGNOCuando la condición de ejecución es OFF, *L(421) no se ejecuta. Cuando lacondición de ejecución es ON, *L(421) multiplica el contenido de 8 dígitos consigno de Md y Md+1 por el contenido con signo de Mr y Mr+1, y coloca el resulta-do en R a R+3.

Md + 1 Md

Mr + 1 Mr

R + 1 RR + 3 R + 2

x

MULTIPLICACIÓN BINARIA SIN SIGNOCuando la condición de ejecución es OFF, *U(422) no se ejecuta. Cuando lacondición de ejecución es ON, *U(422) multiplica el contenido sin signo de Mdpor el contenido sin signo de Mr, coloca los cuatro dígitos de la derecha del re-sultado en R y los cuatro de la izquierda en R+1.

Md

Mr

R +1 R

X

DOBLE MULTIPLICACIÓN BINARIA SIN SIGNOCuando la condición de ejecución es OFF, *UL(423) no se ejecuta. Cuando lacondición de ejecución es ON, *UL(423) multiplica el contenido de 8 dígitos sin

Descripción

Instrucciones matemáticas de símbolo Sección 5-19

Page 245: C200HALPHA Manual Programacion

00000"L(421)

DM 0100

DM 0110

DM 0120

00001"UL(423)

DM 0200

DM 0210

DM 0220

239

signo de Md y Md+1 por el contenido sin signo de Mr y Mr+1, y coloca el resulta-do en R a R+3.

Md + 1 Md

Mr + 1 Mr

R + 1 RR + 3 R + 2

x

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: El resultado de la multiplicación es cero.

N: El bit de mayor peso del canal R+1 (o canal R+3 para instrucciones“doble”) después de la multiplicación es “1.”

Ejemplo Operación *LCuando IR 00000 está en ON en el siguiente ejemplo, el contenido de DM 0101y DM 0100 se multiplica por el contenido de DM 0111 y DM 0110, en ocho dígitosbinario con signo, y el resultado se envía a los canales DM 0123 a DM 0120.

Operación *ULCuando IR 00001 está en ON en el siguiente ejemplo, el contenido de DM 0201y DM 0200 se multiplica por el contenido de DM 0211 y DM 0210, en ocho dígitosbinario sin signo, y el resultado se envía a los canales DM 0223 a DM 0220.

Dirección Instrucción Operandos

00000 LD 00000

00001 *L(421)

DM 0100

DM 0110

DM 0120

00002 LD 00001

00003 *UL(423)

DM 0200

DM 0210

DM 0220

5-19-6 Multiplicación BCD: *B(424)/ *BL(425)

MULTIPLICACIÓN BCD: *B(424)

Md: Canal multiplicando

IR, SR, AR, DM, EM, HR, TC, LR, #

Mr: Canal multiplicador

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

*B(424)

Md

Mr

R

@*B(424)

Md

Mr

R

Instrucciones matemáticas de símbolo Sección 5-19

Page 246: C200HALPHA Manual Programacion

00000"BL(425)

DM 0100

DM 0110

DM 0120

240

DOBLE MULTIPLICACIÓN BCD: *BL(425)

Md: 1er canal de multiplicando

IR, SR, AR, DM, EM, HR, TC, LR

Mr: 1er canal de multiplicador

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

*BL(425)

Md

Mr

R

@*BL(425)

Md

Mr

R

MULTIPLICACIÓN BCDCuando la condición de ejecución es OFF, *B(424) no se ejecuta. Cuando lacondición de ejecución es ON, *B(424) multiplica el contenido BCD de Md por elcontenido BCD de Mr, y coloca el resultado en R y R+1.

Md

Mr

R +1 R

X

DOBLE MULTIPLICACIÓN BCDCuando la condición de ejecución es OFF, *BL(425) no se ejecuta. Cuando lacondición de ejecución es ON, *BL(425) multiplica el contenido BCD de 8 dígi-tos de Md y Md+1 por el contenido BCD de Mr y Mr+1, y coloca el resultado en Ra R+3.

Md + 1 Md

Mr + 1 Mr

R + 1 RR + 3 R + 2

x

Md (Md+1) y Mr (Mr+1) deben estar en BCD. Si se utiliza otro tipo de datos, sepondrá en ON el indicador de Error (SR 25503) y la instrucción no se ejecutará.

Indicadores ER: Contenido de Md (Md+1) o Mr (Mr+1) no está en BCD.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: El resultado de la multiplicación es cero.

Ejemplo Operación *BLCuando IR 00000 está en ON en el siguiente ejemplo, el contenido de DM 0101y DM 0100 se multiplica por el contenido de DM 0111 y DM 0110, en ocho dígitosBCD, y el resultado se envía a los canales DM 0123 a DM 0120.

Dirección Instrucción Operandos

00000 LD 00000

00001 *BL(425)

DM 0100

DM 0110

DM 0120

Descripción

Precauciones

Instrucciones matemáticas de símbolo Sección 5-19

Page 247: C200HALPHA Manual Programacion

241

5-19-7 División binaria: /(430)/ /L(431)//U(432)//UL(433)

DIVISIÓN BINARIA CON SIGNO: /(430)

Dd: Canal de dividendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Dr: Canal de divisor

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

/(430)

Dd

Dr

R

@/(430)

Dd

Dr

R

DOBLE DIVISIÓN BINARIA CON SIGNO: /L(431)

Dd: 1er canal de dividendo

IR, SR, AR, DM, EM, HR, TC, LR

Dr: 1er canal de divisor

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

/L(431)

Dd

Dr

R

@/L(431)

Dd

Dr

R

DIVISIÓN BINARIA SIN SIGNO: /U(432)

Dd: Canal de dividendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Dr: Canal de divisor

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

/U(432)

Dd

Dr

R

@/U(432)

Dd

Dr

R

DOBLE DIVISIÓN BINARIA SIN SIGNO: /UL(433)

Dd: 1er canal de dividendo

IR, SR, AR, DM, EM, HR, TC, LR

Dr: 1er canal de divisor

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

/UL(433)

Dd

Dr

R

@/UL(433)

Dd

Dr

R

DIVISIÓN BINARIA CON SIGNOCuando la condición de ejecución es OFF, /(430) no se ejecuta. Cuando la con-dición de ejecución es ON, /(430) divide el contenido binario con signo de Dd por

Descripción

Instrucciones matemáticas de símbolo Sección 5-19

Page 248: C200HALPHA Manual Programacion

242

el contenido de Dr y el resultado lo coloca en R y R+1: el cociente en R y el restoen R+1.

DdDr

R R + 1

Cociente Resto

DOBLE DIVISIÓN BINARIA CON SIGNOCuando la condición de ejecución es OFF, /L(431) no se ejecuta. Cuando la con-dición de ejecución es ON, /L(431) divide el contenido de 8 dígitos con signo deDd y Dd+1 entre el contenido con signo de Dr y Dr+1 y el resultado lo coloca enlos canales R a R+3: el cociente en R y R+1, y el resto en R+2 y R+3.

R+1 R

CocienteResto

Dd+1 DdDr+1 Dr

R+3 R+2

DIVISIÓN BINARIA SIN SIGNOCuando la condición de ejecución es OFF, /U(432) no se ejecuta. Cuando lacondición de ejecución es ON, /U(432) divide el contenido sin signo de Dd entreel contenido sin signo de Dr y coloca el resultado en R y R+1: el cociente en R, yel resto en R+1.

DdDr

R R + 1

Cociente Resto

DOBLE DIVISIÓN BINARIA SIN SIGNOCuando la condición de ejecución es OFF, /UL(433) no se ejecuta. Cuando lacondición de ejecución es ON, /UL(433) divide el contenido de 8 dígitos sin sig-no de Dd y Dd+1 entre el contenido sin signo de Dr y Dr+1 y el resultado lo colocaen los canales R a R+3: el cociente en R y R+1, y el resto en R+2 y R+3.

R+1 R

CocienteResto

Dd+1 DdDr+1 Dr

R+3 R+2

Precauciones Dr (o Dr y Dr+1) no pueden ser cero. Las instrucciones no se ejecutarán cuandoER (indicador de Error) esté en ON.

Indicadores ER: Dr (o Dr y Dr+1) son cero.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: El resultado de la división es cero en el cociente.

N: El bit más significativo del canal R (o del canal R+1 para instrucciones“dobles”) después de la división es “1.”

Ejemplo Operación /LCuando IR 00000 está en ON en el siguiente ejemplo, el contenido con signo de

Instrucciones matemáticas de símbolo Sección 5-19

Page 249: C200HALPHA Manual Programacion

00000/L(431)

DM 0100

DM 0110

DM 0120

00001/UL(433)

DM 0200

DM 0210

DM 0220

243

DM 0101 y DM 0100 se divide entre el contenido con signo de DM 0111 y DM0110, en ocho dígitos binario. Una vez obtenido el resultado, el cociente seenvía a los canales DM 0121 y DM 0120, y el resto a los canales DM 0123 y DM0122.

Operación /ULCuando IR 00001 está en ON en el siguiente ejemplo, el contenido sin signo deDM 0201 y DM 0200 se divide entre el contenido sin signo de DM 0211 y DM0210, en ocho dígitos binario. Una vez obtenido el resultado, el cociente seenvía a los canales DM 0221 y DM 0220, y el resto a los canales DM 0223 y DM0222.

Dirección Instrucción Operandos

00000 LD 00000

00001 /L(431)

DM 0100

DM 0110

DM 0120

00002 LD 00001

00003 /UL(433)

DM 0200

DM 0210

DM 0220

5-19-8 BCD Division: /B(434)/ /BL(435)

DIVISIÓN BCD: /B(434)

Dd: Canal de dividendo

IR, SR, AR, DM, EM, HR, TC, LR, #

Dr: Canal de divisor

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

/B(434)

Dd

Dr

R

@/B(434)

Dd

Dr

R

DOBLE DIVISIÓN BCD: /BL(435)

Dd: 1er canal de dividendo

IR, SR, AR, DM, EM, HR, TC, LR

Dr: 1er canal de divisor

IR, SR, AR, DM, EM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

R: 1er canal de resultado

IR, SR, AR, DM, EM, HR, LR

/BL(435)

Dd

Dr

R

@/BL(435)

Dd

Dr

R

DIVISIÓN BCDCuando la condición de ejecución es OFF, /B(434) no se ejecuta y el programapasa a la siguiente instrucción. Cuando la condición de ejecución es ON, el con-

Descripción

Instrucciones matemáticas de símbolo Sección 5-19

Page 250: C200HALPHA Manual Programacion

00000/BL(435)

DM 0200

DM 0210

DM 0220

244

tenido BCD de Dd se divide entre el contenido BCD de Dr y el resultado se colo-ca en R y R + 1: el cociente en R y el resto en R + 1.

R+1 R

DdDr

CocienteResto

DOBLE DIVISIÓN BCDCuando la condición de ejecución es OFF, /BL(435) no se ejecuta. Cuando lacondición de ejecución es ON, el contenido de 8 dígitos BCD de Dd y Dd+1 sedivide entre el contenido BCD de Dr y Dr+1 y el resultado se coloca en los ca-nales R a R+3: el cociente en R y R+1, y el resto en R+2 y R+3.

R+1 R

CocienteResto

Dd+1 DdDr+1 Dr

R+3 R+2

Precauciones Dd y Dr (o Dd, Dd+1, Dr, y Dr+1) deben estar en BCD. Si se utiliza otro tipo dedatos, se pondrá en ON el indicador de Error (SR 25503) y la instrucción no seejecutará.

Indicadores ER: Dd y Dr (o Dd, Dd+1, Dr, y Dr+1) no están en BCD.

No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: El resultado de la división es cero.

Ejemplo Operación /BLCuando IR 00001 está en ON en el siguiente ejemplo, el contenido de DM 0201y DM 0200 se divide entre el contenido de DM 0211 y DM 0210, en ocho dígitosBCD. Una vez obtenido el resultado, el cociente se envía a DM 0221 y DM 0220,y el resto a DM 0223 y DM 0222.

Dirección Instrucción Operandos

00000 LD 00000

00001 /BL(435)

DM 0200

DM 0210

DM 0220

5-20 Instrucciones de cálculo BCD

5-20-1 INCREMENTO -- INC(038)

Wd: Canal a incrementar (BCD)

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

INC(038)

Wd

@INC(038)

Wd

Cuando la condición de ejecución es OFF, INC(038) no se ejecuta. Cuando lacondición de ejecución es ON, INC(038) incrementa Wd, sin afectar al indicadorde Acarreo (CY).

Descripción

Instrucciones de cálculo BCD Sección 5-20

Page 251: C200HALPHA Manual Programacion

245

Indicadores ER: Wd no está en BCD.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: ON cuando el resultado es 0.

5-20-2 DECREMENTAR -- DEC(039)

Wd: Canal a decrementar (BCD)

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

DEC(039)

Wd

@DEC(039)

Wd

Cuando la condición de ejecución es OFF, DEC(039) no se ejecuta. Cuando lacondición es ON, DEC(039) decrementa Wd, sin afectar a CY. DEC(039) fun-ciona de la misma forma que INC(038) excepto que incrementa el valor en vezde reducirlo.

Indicadores ER: Wd no está en BCD.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: ON cuando el resultado es 0.

5-20-3 ACARREO A ON -- STC(040)

Símbolo de relés

STC(040) @STC(040)

Cuando la condición de ejecución es OFF, STC(040) no se ejecuta. Cuando lacondición de ejecución es ON, STC(040) pone a ON CY (SR 25504).

Nota Consultar en Apéndice C Operación de indicador aritmético y de error, la tablade instrucciones relacionadas con CY.

5-20-4 ACARREO A OFF -- CLC(041)

Símbolo de relés

CLC(041) @CLC(041)

Cuando la condición de ejecución es OFF, CLC(041) no se ejecuta. Cuando lacondición de ejecución es ON, CLC(041) pone a OFF CY (SR 25504).

CLEAR CARRY se utiliza para resetear a ”0” (poner a OFF) CY (SR 25504).

CY se resetea automáticamente a “0” cuando se ejecuta END(001) al final decada ciclo.

Nota Consultar en Apéndice C Operación de indicador aritmético y de error, la tablade instrucciones relacionadas con CY.

Descripción

Instrucciones de cálculo BCD Sección 5-20

Page 252: C200HALPHA Manual Programacion

246

5-20-5 BCD ADD -- ADD(030)

Au: Canal de sumando (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Ad: Canal de sumando (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

ADD(030)

Au

Ad

R

@ADD(030)

Au

Ad

R

Cuando la condición de ejecución es OFF, ADD(030) no se ejecuta. Cuando lacondición de ejecución es ON, ADD(030) suma los contenidos de Au, Ad y CY, yenvía el resultado a R. CY se pondrá en ON si el resultado es superior a 9999.

Au + Ad + CY CY R

Indicadores ER: Au y/o Ad no está en BCD.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: En ON cuando se genera acarreo en el resultado.

EQ: En ON cuando el resultado es 0.

Si 00002 está en ON, el programa representado por el siguiente diagrama ponea 0 CY con CLC(041), suma el contenido de IR 030 a una constante (6103),envía el resultado a DM 0100 y pone ceros ó 0001 en DM 0101 dependiendo delestado de CY (25504). Esto garantiza que cualquier acarreo del último dígito sepreserva en R+1 de forma que se pueda utilizar posteriormente el resultadocompleto como dato de ocho dígitos.

TR 0

MOV(021)

#0001

DM 0101

00002CLC(041)

ADD(030)

IR 030

#6103

DM 0100

MOV(021)

#0000

DM 0101

25504

25504

Dirección Instrucción Operandos

00000 LR 0000200001 OUT TR 000002 CLC(041)00003 ADD(030)

030# 6103DM 0100

00004 AND 2550400005 MOV(021)

# 0001DM 0101

00006 LD TR 000007 AND NOT 2550400008 MOV(021)

# 0000DM 0101

Aunque se pueden utilizar dos ADD(030) juntas para realizar suma BCD deocho dígitos, ADDL(054) está diseñada especialmente para este propósito.

Descripción

Ejemplo

Instrucciones de cálculo BCD Sección 5-20

Page 253: C200HALPHA Manual Programacion

247

5-20-6 SUMA BCD DOBLE -- ADDL(054)

Au: Primer canal sumando (BCD)

IR, SR, AR, DM, HR, TC, LR

Ad: Primer canal sumando (BCD)

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

ADDL(054)

Au

Ad

R

@ADDL(054)

Au

Ad

R

Limitaciones Cada uno de los siguientes pares deben estar en la misma área de datos: Au yAu+1, Ad y Ad+1 y R y R+1.

Cuando la condición de ejecución es OFF, ADDL(054) no se ejecuta. Cuando lacondición de ejecución es ON, ADDL(054) suma los contenidos de CY al valorde 8 dígitos en Au y Au+1 más el valor de 8 dígitos en Ad y Ad+1 y coloca elresultado en R y R+1. CY se pondrá a 1 cuando el resultado sea superior a99999999.

Au + 1 Au

Ad + 1 Ad

R + 1 R

+ CY

CY

Indicadores ER: Au y/o Ad no está en BCD.No existe el canal DM direccionado indirectamente. (Contenido del ca-nal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: En ON cuando hay un acarreo en el resultado.EQ: En ON cuando el resultado es 0.

Cuando 00000 está en ON, el siguiente programa suma dos números de 12dígitos, el primero contenido en LR 20 a LR 22 y el segundo en DM 0012. Elresultado se coloca en HR 10 a HR 13. En la segunda suma (utilizandoADD(030)), se incluye el acarreo de la primera suma. El acarreo de la segundasuma se coloca en HR 13 utilizando @ADB(050) (ver 5-21-1 SUMA BINARIA --ADB(050)) con dos constantes cero para colocar indirectamente el contenidode CY en HR 13.

@ADDL(054)

LR 20

DM 0010

HR 10

CLC(041)

00000

@ADD(030)

LR 22

DM 0012

HR 12

@ADB(050)

#0000

#0000

HR 13

Dirección Instrucción Operandos

00000 LD 0000000001 CLC(041)00002 @ADDL(054)

LR 20DM 0010HR 10

00003 @ADD(030)LR 22DM 0012HR 12

00004 @ADB(050)# 0000# 0000HR 13

Descripción

Ejemplo

Instrucciones de cálculo BCD Sección 5-20

Page 254: C200HALPHA Manual Programacion

248

5-20-7 RESTA BCD -- SUB(031)

Mi: Canal de minuendo (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Su: Canal de sustraendo (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

SUB(031)

Mi

Su

R

@SUB(031)

Mi

Su

R

Cuando la condición de ejecución es OFF, SUB(031) no se ejecuta. Cuando lacondición de ejecución es ON, SUB(031) resta los contenidos de Su y CY de Miy coloca el resultado en R. Si el resultado es negativo, CY se pone a ON y secoloca en R el complemento a 10 del resultado real. Para convertir el comple-mento a 10 al resultado verdadero, restar el contenido de R de cero (ver elsiguiente ejemplo).

Mi -- Su -- CY CY R

Nota La instrucción COMPLEMENTO A 2 -- NEG(160) se puede utilizar para conver-tir sólo datos binarios, no se puede utilizar para convertir datos BCD.

Indicadores ER: Mi y/o Su no está en BCD.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: En ON cuando el resultado es negativo, es decir, cuando Mi es menorque Su más CY.

EQ: En ON cuando el resultado es 0.

AtenciónVerificar que se pone a cero el indicador de acarreo mediante CLC(041), antesde ejecutar SUB(031), si no se necesita el estado anterior y chequear el estadode CY después de efectuar una substracción con SUB(031). Si CY está en ONcomo resultado de ejecutar SUB(031) (es decir, si el resultado es negativo), elresultado se envía como complemento a 10 del verdadero resultado. Para con-vertir el resultado de salida al valor verdadero, restar a 0 el valor de R.

Cuando 00002 está en ON, el siguiente programa pone a cero CY, resta los con-tenidos de DM 0100 y CY del contenido de 010 y envía el resultado a HR 20.

Si CY se pone a uno ejecutando SUB(031), el resultado en HR 20 se resta decero (obervar que CLC(041) es necesaria de nuevo para obtener un resultadoexacto), el resultado se coloca en HR 20 y HR 2100 se pone en ON para indicarun resultado negativo.

Si CY no se pone a 1 mediante SUB(031), el resultado es positivo, no se efectúala segunda resta y HR 2100 no se pone a ON. HR 2100 se programa como un bitde autorretención de tal forma que un cambio en el estado de CY no lo pondráen OFF cuando se escanee de nuevo el programa.

En este ejemplo, se utiliza la forma diferenciada de SUB(031) de tal forma que laoperación de resta se realiza sólo una vez cuando 00002 se pone en ON.Cuando haya de realizar otra operación de resta, habrá que poner a OFF 00002

Descripción

Ejemplo

Instrucciones de cálculo BCD Sección 5-20

Page 255: C200HALPHA Manual Programacion

249

durante al menos un scan (reseteando HR 2100) y luego habrá que ponerlo aON de nuevo.

CLC(041)

@SUB(031)

010

DM 0100

HR 20

CLC(041)

@SUB(031)

#0000

HR 20

HR 21

TR 0

25504HR 2100

00002

25504

HR 2100

Primera resta

Segundaresta

Puesto a ON para indicarresultado negativo.

00000 LD 0000200001 OUT TR 000002 CLC(041)00003 @SUB(031)

010DM 0100HR 20

00004 AND 2550400005 CLC(041)00006 @SUB(031)

# 0000HR 20HR 20

00007 LD TR 000008 AND 2550400009 OR HR 210000010 OUT HR 2100

Dirección Instrucción Operandos

Se muestran la primera y segunda resta de este programa tomando como datos010 y DM 0100.

Nota La operación real de SUB(031) implica restar de 10.000 más Mi, Su y CY. Pararesultados positivos se cambia el dígito de la izquierda. Para resultados negati-vos se obtiene el complemento a 10. A continuación se detalla el procedimientopara obtener la respuesta correcta.

Primera restaIR 010 1029DM 0100 -- 3452CY -- 0HR 20 7577 (1029 + (10000 -- 3452))CY 1 (resultado negativo)Segunda resta

0000HR 20 --7577CY --0HR 20 2423 (0000 + (10000 -- 7577))CY 1 (resultado negativo)

En el caso anterior, el programa podría poner a ON HR 2100 para indicar que elvalor retenido en HR 20 es negativo.

5-20-8 RESTA BCD DOBLE -- SUBL(055)

Mi: Primer canal minuendo (BCD)

IR, SR, AR, DM, HR, TC, LR

Su: Primer canal sustraendo (BCD)

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

SUBL(055)

Mi

Su

R

@SUBL(055)

Mi

Su

R

Limitaciones Cada uno de los siguientes pares deben estar en la misma área de datos: Mi yMi+1, Su y Su+1, y R y R+1.

Instrucciones de cálculo BCD Sección 5-20

Page 256: C200HALPHA Manual Programacion

250

Cuando la condición de ejecución es OFF, SUBL(055) no se ejecuta. Cuando lacondición de ejecución es ON, SUBL(055) resta CY y los contenidos de 8 dígitosen Su y Su+1 del valor de 8 dígitos en Mi y Mi+1 y coloca el resultado en R y R+1.Si el resultado es negativo, CY se pone a 1 y se coloca en R el complemento a 10del resultado real. Para convertir el complemento a 10 al resultado real, restar elcontenido de R de cero. Dado que no se puede escribir directamente unaconstante de 8 dígitos, utilizar la instrucción BSET(071) (ver 5-16-3 BLOCKSET -- BSET(071)) para crear una constante de 8 dígitos.

Mi + 1 Mi

Su + 1 Su

R + 1 R

-- CY

CY

Nota La instrucción COMPLEMENTO A 2 DE DOS CANALES-- NEGL(161) sepuede utilizar para convertir sólo datos binarios, no se puede utilizar para con-vertir datos BCD.

Indicadores ER: Mi, M+1,Su o Su+1 no está en BCD.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: En ON cuando el resultado es negativo, es decir, cuando Mi es menorque Su.

EQ: En ON cuando el resultado es 0.

Descripción

Instrucciones de cálculo BCD Sección 5-20

Page 257: C200HALPHA Manual Programacion

251

En este ejemplo, BSET(071) es necesario para borrar el contenido de DM 0000y DM 0001 de tal forma que el resultado negativo se pueda restar de 0 (no esposible introducir una constante de 8 dígitos).

CLC(041)

@SUBL(055)

HR 20

120

DM 0100

CLC(041)

@SUBL(055)

DM 0000

DM 0100

DM 0100

TR 0

25504HR 2100

00003

25504

HR 2100

Primeraresta

Segundaresta

En ON para indicarresultado negativo

@BSET(071)

#0000

DM 0000

DM 0001

00000 LD 0000300001 OUT TR 000002 CLC(041)00003 @SUBL(055)

HR 20120

DM 010000004 AND 2550400005 @BSET(071)

# 0000DM 0000DM 0001

00006 CLC(041)00007 @SUBL(055)

DM 0000DM 0100DM 0100

00008 LD TR 000009 AND 2550400010 OR HR 210000011 OUT HR 2100

Dirección Instrucción Operandos Dirección Instrucción Operandos

5-20-9 MULTIPLICACIÓN BCD -- MUL(032)

Md: Multiplicando (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Mr: Multiplicador (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operandos

R: Primer canal de resultado

IR, SR, AR, DM, HR LR

MUL(032)

Md

Mr

R

@MUL(032)

Md

Mr

R

Limitaciones R y R+1 deben estar en la misma área de datos.

Ejemplo

Instrucciones de cálculo BCD Sección 5-20

Page 258: C200HALPHA Manual Programacion

252

Cuando la condición de ejecución es OFF, MUL(032) no se ejecuta. Cuando lacondición de ejecución es ON, MUL(032) multiplica Md por el contenido de Mr yenvía el resultado a R y R+1.

Md

Mr

R +1 R

X

Cuando IR 00000 está en ON con el siguiente programa, se multiplican los con-tenidos de IR 013 y DM 0005 y el resultado se coloca en HR 07 y HR 08. A conti-nuación del programa se muestra un ejemplo.

MUL(032)

013

DM 0005

HR 07

00000

R+1: HR 08 R: HR 070 0 0 8 3 9 0 0

Md: IR 0133 3 5 6

Mr: DM 00050 0 2 5X

Dirección Instrucción Operandos

00000 LD 0000000001 MUL(032)

013DM 00005HR 07

Indicadores ER: Md y/o Mr no está en BCD.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

CY: En ON cuando hay acarreo en el resultado.

EQ: En ON cuando el resultado es 0.

5-20-10 MULTIPLICACIÓN BCD DOBLE -- MULL(056)

R: Primer canal de resultado

IR, SR, AR, DM, HR LR

Mr: Primer canal multiplicador (BCD)

IR, SR, AR, DM, HR, TC, LR

Md: Primer canal multiplicando (BCD)

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

MULL(056)

Md

Mr

R

@MULL(056)

Md

Mr

R

Limitaciones Md y Md+1 deben estar en la misma área de datos, así como Mr y Mr+1.

R a R+3 deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, MULL(056) no se ejecuta. Cuando lacondición de ejecución es ON, MULL(056) multiplica el contenido de ocho dígi-

Descripción

Ejemplo

Descripción

Instrucciones de cálculo BCD Sección 5-20

Page 259: C200HALPHA Manual Programacion

253

tos de Md y Md+1 por el contenido de Mr y Mr+1 y coloca el resultado en R aR+3.

Md + 1 Md

Mr + 1 Mr

R + 1 RR + 3 R + 2

x

Indicadores ER: Md, Md+1,Mr o Mr+1 no está en BCD.

No existe el canal DM direccionado indirectamente. (Contenido del ca-nal *DM no está en BCD o se ha excedido el área de DM).

CY: En ON cuando hay un acarreo en el resultado.

EQ: En ON cuando el resultado es 0.

5-20-11 DIVISIÓN BCD -- DIV(033)

Dd: Canal de dividendo (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Dr: Canal de divisor (BCD)

IR, SR, AR, DM, HR, TC, LR, #

Áreas de datos de operando

DIV(033)

Dd

Dr

R

R: Primer canal de resultado (BCD)

IR, SR, AR, DM, HR, LR

Limitaciones R y R+1 deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, DIV(033) no se ejecuta y el programapasa a la siguiente instrucción. Cuando la condición de ejecución es ON, Dd sedivide entre Dr y el resultado se envía a R y R + 1: el cociente en R y el resto enR + 1.

R+1 R

DdDr

CocienteResto

Indicadores ER: Dd o Dr no está en BCD o Dr es #0000.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el resultado es 0.

Descripción

Instrucciones de cálculo BCD Sección 5-20

Page 260: C200HALPHA Manual Programacion

254

Cuando IR 00000 está en ON con el siguiente programa, el contenido de IR 020se divide entre el contenido de HR 09 y el resultado se coloca en DM 0017 y DM0018. A continuación del programa se muestra un ejemplo de datos y cálculo.

DIV(033)

020

HR 09

DM 0017

00000

R: DM 0017 R + 1: DM 00181 1 5 0 0 0 0 2

Dd: IR 0203 4 5 2

Cociente Resto

Dd: HR 090 0 0 3

Dirección Instrucción Operandos

00000 LD 0000000001 DIV(033)

020HR 09DM 0017

5-20-12 DIVISIÓN BCD DOBLE -- DIVL(057)

Dd: Primer canal dividendo (BCD)

IR, SR, AR, DM, HR, TC, LR

Dr: Primer canal divisor (BCD)

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

DIVL(057)

Dd

Dr

R

@DIVL(057)

Dd

Dr

R

Limitaciones Dd y Dd+1 deben estar en la misma área de datos, así como Dr y Dr+1.

R a R+3 deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, DIVL(057) no se ejecuta. Cuando lacondición de ejecución es ON, DIVL(057) divide el contenido de ocho dígitos deDd y Dd+1 entre el contenido de Dr y Dr+1 y el resultado lo coloca en R a R+3: elcociente en R y R+1, el resto en R+2 y R+3.

R+1 R

CocienteResto

Dd+1 DdDr+1 Dr

R+3 R+2

Indicadores ER: Dr y Dr+1 contienen 0.

Dd, Dd+1, Dr o Dr+1 no está en BCD.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el resultado es 0.

Ejemplo

Descripción

Instrucciones de cálculo BCD Sección 5-20

Page 261: C200HALPHA Manual Programacion

255

5-20-13 DIVISIÓN EN COMA FLOTANTE -- FDIV(079)

Dd: Primer canal dividendo (BCD)

IR, SR, AR, DM, HR, TC, LR

Dr: Primer canal divisor (BCD)

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

FDIV(079)

Dd

Dr

R

@FDIV(079)

Dd

Dr

R

Limitaciones Dr y Dr+1 no pueden contener cero. Dr y Dr+1 deben estar en la misma área dedatos, así como Dd y Dd+1; R y R+1.El dividendo y el divisor deben ser entre 0.0000001 x 10--7 y 0.9999999 x 107.Los resultados deben ser entre 0.1 x 10--7 y 0.9999999 x 107.

Cuando la condición de ejecución es OFF, FDIV(079) no se ejecuta. Cuando lacondición de ejecución es ON, FDIV(079) divide el valor en coma flotante en Ddy Dd+1 entre el de Dr y Dr+1 y coloca el resultado en R y R+1.

R+1 R

Cociente

Dd+1 DdDr+1 Dr

Para representar los valores de coma flotante, los siete dígitos de la derecha seutilizan para la mantisa y el de la izquierda se utiliza para el exponente, como seindica a continuación. La mantisa se expresa como un valor menor que uno, esdecir siete cifras decimales.

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00Primer canal

exponente (0 a 7)signo de exponente 0: +

1: --

1 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1

mantisa (3 dígitos de la izquierda)

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00Segundo canal

mantisa (4 dígitos de la izquierda)

0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1

= 0.1111111 x 10--2

Flags ER: Dr y Dr+1 contienen 0. Dd, Dd+1, Dr, o Dr+1 no está en BCD.

El resultado no está entre 0.1 x 10--7 y 0.999999 x 107.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: ON cuando el resultado es 0.

El siguiente ejemplo muestra cómo dividir dos números enteros (números sindecimales) de cuatro dígitos de tal forma que se puede obtener un valor encoma flotante. Primero hay que expresar los números en coma flotante. Dadoque los números originalmente no tienen puntos decimales, el exponente será 4(es decir, 3452 sería igual a 0.3452 x 104). Todos los movimientos han de colo-car los datos adecuados en canales consecutivos para la división final,incluyendo el exponente y ceros. Los movimientos de datos para Dd y Dd + 1 semuestran abajo a la derecha y los de Dr y Dr+1 son básicamente iguales. Los

Descripción

Ejemplo

Instrucciones de cálculo BCD Sección 5-20

Page 262: C200HALPHA Manual Programacion

256

valores originales a dividir están en DM 0000 y DM 0001. También se muestra ladivisión final.

DM 00003 4 5 2

@MOV(021)

#0000

HR 00

00000

@MOV(021)

#0000

HR 02

@MOV(021)

#4000

HR 01

@MOV(021)

#4000

HR 03

@MOVD(083)

DM 0000

#0021

HR 01

@MOVD(083)

DM 0000

#0300

HR 00

@MOVD(083)

DM 0001

#0021

HR 03

@MOVD(083)

DM 0001

#0300

HR 02

@FDIV(079)

HR 00

HR 02

DM 0002

HR 01 HR 000 0 0 0

0000

HR 01 HR 004 0 0 0 0 0 0 0

4000

HR 01 HR 004 3 4 5 0 0 0 0

DM 00003 4 5 2

HR 01 HR 004 3 4 5 2 0 0 0

HR 01 HR 004 3 4 5 2 0 0 0

HR 03 HR 024 0 0 7 9 0 0 0

DM 0003 DM 00022 4 3 6 9 6 2 0

#

0.4369620 x 102

00000 LD 0000000001 @MOV(021)

# 0000HR 00

00002 @MOV(021)# 0000HR 02

00003 @MOV(021)# 4000HR 01

00004 @MOV(021)# 4000HR 03

00005 @MOVD(083)DM 0000# 0021HR 01

00006 @MOVD(083)DM 0000# 0300HR 00

00007 @MOVD(083)DM 0001# 0021HR 03

00008 @MOVD(083)DM 0001# 0300HR 02

00009 @FDIV(079)HR 00HR 02DM 0002

Dirección Instrucción Operandos Dirección Instrucción Operandos

Instrucciones de cálculo BCD Sección 5-20

Page 263: C200HALPHA Manual Programacion

257

5-20-14 RAÍZ CUADRADA -- ROOT(072)

Sq: Primer canal fuente (BCD)

IR, SR, AR, DM, HR, TC, LR

R: Canal de resultado

IR, SR, AR, DM, HR, LR,

Símbolo de relés Áreas de datos de operando

ROOT(072)

Sq

R

@ROOT(072)

Sq

R

Limitaciones Sq y Sq+1 deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, ROOT(072) no se ejecuta. Cuando lacondición de ejecución es ON, ROOT(072) calcula la raíz cuadrada del conten-ido de ocho dígitos de Sq y Sq+1 y coloca el resultado en R. Se ignora la partedecimal.

R

Sq+1 Sq

Indicadores ER: Sq o Sq+1 no está en BCD.

No existe el canal DM direccionado indirectamente. (Contenido del ca-nal *DM/EM no está en BCD o se ha excedido el área de EM/DM).

EQ: En ON cuando el resultado es 0.

El siguiente ejemplo muestra cómo calcular la raíz cuadrada de un número decuatro dígitos y luego redondear el resultado.Primero se ponen a cero los canales a utilizar y luego se transfiere a Sq+1 elvalor cuya raíz cuadrada hay que calcular. El resultado, que tiene el doblenúmero de dígitos necesarios para el resultado (dado que el número de dígitosen el valor original se dobló), se coloca en DM 0102 y los dígitos se dividen endos canales diferentes, los dos de la izquierda a IR 011 para el resultado y losdos dígitos de la derecha a DM 0103 de tal forma que la respuesta en IR 011 sepuede redondear si fuera necesario. El último paso es comparar el valor en DM0103 de tal forma que IR 011 se pueda incrementar utilizando el indicador MayorQue.

Descripción

Ejemplo

Instrucciones de cálculo BCD Sección 5-20

Page 264: C200HALPHA Manual Programacion

258

En este ejemplo, $6017 = 77.56, y 77.56 se redondea a 78.

0106 0 1 7

00000

@MOV(021)

010

DM 0101

@ROOT(072)

DM 0100

DM 0102

@MOV(021)

#0000

011

@MOVD(083)

DM 0102

#0012

011

@MOVD(083)

DM 0102

#0210

DM 0103

@CMP(020)

DM 0103

#4900

@INC(038)

011

DM 0101 DM 01000 0 0 0 0 0 0 0

0000

DM 0101 DM 01006 0 1 7 0 0 0 0

DM 01027 7 5 6

IR 011 DM 01030 0 7 7 5 6 0 0

@BSET(071)

#0000

DM 0100

DM 0101

@MOV(021)

#0000

DM 0103

0000

60170000= 77.56932

DM 0103 IR 0110 0 0 0 0 0 0 0

00000000

25505

5600 > 4900

IR 0110 0 7 8

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 @BSET(071)

# 0000DM 0100DM 0101

00002 @MOV(021)010

DM 010100003 @ROOT(072)

DM 0100DM 0102

00004 @MOV(021)# 0000

01100005 @MOV(021)

# 0000DM 0103

00006 @MOVD(083)DM 0102# 0012

01100007 @MOVD(083)

DM 0102# 0210DM 0103

00008 @CMP(020)DM 0103# 4900

00009 LD 2550500010 @INC(038)

011

Instrucciones de cálculo BCD Sección 5-20

Page 265: C200HALPHA Manual Programacion

259

5-21 Instrucciones de cálculo binarioLas instrucciones de cálculo binario — ADB(050), SBB(051), MLB(052),DVB(053), ADBL(480), SBBL(481), MBS(484), MBSL(482), DBS(485) yDBSL(483) — efectúan operaciones aritméticas con datos hexadecimales.

Cuatro de ellas (ADB(050), SBB(051), ADBL(480) y SBBL(481)) pueden tratardatos normales y datos con signo, dos (MLB(052) y DVB(053)) sólo con datosnormales y cuatro (MBS(484), MBSL(482), DBS(485) y DBSL(483)) sólo condatos binarios con signo.

Las instrucciones suma y resta incluyen CY en el cálculo así como en el resul-tado. Cuando no se necesite el estado previo de CY verifique que se pone a ceroy comprobar que, si es necesario, se utiliza antes de que otra instrucción lomodifique. STC(40) y CLC(041) se pueden utilizar para controlar CY. Consultar5-20 Instrucciones de cálculo BCD.

Las instrucciones suma y resta binaria con signo utilizan los indicadores defuera de rango (UF y OF) para indicar si el resultado excede el margen paradatos binarios con signo de 16 o de 32 bits. Consultar más detalles sobre datosbinarios con signo en página 27.

5-21-1 SUMA BINARIA -- ADB(050)

Au: Canal de sumando (binario)

IR, SR, AR, DM, HR, TC, LR, #

Ad: Canal de sumando (binario)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

ADB(050)

Au

Ad

R

@ADB(050)

Au

Ad

R

Cuando la condición de ejecución es OFF, ADB(050) no se ejecuta. Cuando lacondición de ejecución es ON, ADB(050) suma los contenidos de Au, Ad y CY, ycoloca el resultado en R. CY se pondrá a 1 si el resultado es mayor de FFFF.

Au + Ad + CY CY R

ADB(050) se puede utilizar también para sumar datos binarios con signo. Losindicadores de fuera de rango por arriba y por abajo (SR 25404 y SR 25405)indican si el resultado ha superado los límites del rango de datos binarios de 16bits con signo.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: En ON cuando el resultado es mayor de FFFF.

EQ: En ON cuando el resultado es 0.

OF: ON cuando el resultado excede de +32,767 (7FFF).

UF: ON cuando el resultado es menor de --32,768 (8000).

N: ON cuando el bit 15 del resultado es 1.

Descripción

Instrucciones de cálculo binario Sección 5-21

Page 266: C200HALPHA Manual Programacion

260

Ejemplo El siguiente ejemplo muestra una suma de cuatro dígitos con CY utilizado paracolocar #0000 ó #0001 en R+1 y preservar así cualquier acarreo.

CLC(041)

00000

ADB(050)

010

DM 0100

HR 10

MOV(021)

#0000

HR 11

MOV(021)

#0001

HR 11

TR 0

25504

25504

= R

= R+1

= R+1

Dirección Instrucción Operandos

00000 LD 0000000001 OUT TR 000002 CLC(041)00003 ADB(050)

010DM 0100HR 10

00004 AND NOT 2550400005 MOV(021)

# 0000HR 11

00006 LD TR 000007 AND 2550400008 MOV(021)

# 00001HR 11

En el siguiente caso, A6E2 + 80C5 = 127A7. El resultado es un número de 5dígitos, por lo que CY (SR 25504) = 1 y el contenido de R + 1 es #0001.

R+1: HR 11 R: HR 100 0 0 1 2 7 A 7

Au: IR 010A 6 E 2

Ad: DM 01008 0 C 5+

Nota Para cálculos binarios con signo, el estado de UF y OF indica si el resultado haexcedido el rango de datos binarios con signo (--32,768 (8000) a +32,767(7FFF)).

En el siguiente ejemplo, ADB(050) se utiliza para sumar dos valores binarioscon signo de 16 bits. (El complemento a 2 se utiliza para expresar valores nega-tivos).

El rango efectivo para valores binarios con signo de 16 bits es de --32,768(8000) a +32,767 (7FFF). El indicador de fuera de rango por exceso (OF: SR25404) se pone en ON si el resultado excede de +32,767 (7FFF) y el indicadorde fuera de rango por defecto (UF: SR 25405) se pone en ON si el resultado esinferior de --32,768 (8000).

CLC(041)

00000

ADB(050)

LR 20

DM 0010

DM 0020

Dirección Instrucción Operandos

00000 LD 0000000001 CLC(041)00002 ADB(050)

LR 20DM 0010DM 0020

Ejemplo 2:Suma de datos binarios consigno

Instrucciones de cálculo binario Sección 5-21

Page 267: C200HALPHA Manual Programacion

261

En este ejemplo, 25,321 +(--13,253) = 12,068 (62E9 + CC3B = 2F24). Ni OF niUF se ponen a ON.

Au: LR 206 2 E 9

Ad: DM 0010C C 3 B+

Ad: DM 00102 F 2 4

Nota El estado del indicador CY se puede ignorar cuando se suman datos binarioscon signo dado que sólo es relevante en la suma de valores hexadecimales nor-males.

5-21-2 RESTA BINARIA -- SBB(051)

Mi: Canal minuendo (binario)

IR, SR, AR, DM, HR, TC, LR, #

Su: Canal sustraendo (binario)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR LR

SBB(52)

Mi

Su

R

@SBB(52)

Mi

Su

R

Cuando la condición de ejecución es OFF, SBB(051) no se ejecuta. Cuando lacondición de ejecución es ON, SBB(051) resta de Mi los contenidos de Su y CYy coloca el resultado en R. Si el resultado es negativo, CY se pone a 1 y secoloca en R el complemento a 2 del resultado real.

Mi -- Su -- CY CY R

SBB(051) también se puede utilizar para restar datos binarios con signo.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: En ON cuando el resultado es negativo, es decir cuando Mi es menorque Su más CY.

EQ: En ON cuando el resultado es 0.

OF: ON cuando el resultado excede +32,767 (7FFF).

UF: ON cuando el resultado es inferior a --32,768 (8000).

N: ON cuando el bit 15 del resultado es 1.

Ejemplo El siguiente ejemplo muestra una resta de cuatro dígitos. Cuando IR 00001 estáen ON, el contenido de LR 20 y CY se resta del contenido de IR 002 y el resul-tado se escribe en HR 21.

Descripción

Instrucciones de cálculo binario Sección 5-21

Page 268: C200HALPHA Manual Programacion

262

CY se pone a ON si el resultado es negativo. Si se utilizan datos normales, unresultado negativo se debe convertir a dato normal utilizando NEG(160). Con-sultar 5-18-15 COMPLEMENTO A 2 -- NEG(160) para más información.

CLC(041)

00001

SBB(051)

002

LR20

HR 21

Dirección Instrucción Operandos

00000 LD 0000100001 OUT TR 100002 CLC(041)00003 SBB(051)

002LR 20HR 21

En el siguiente caso, el contenido de LR 20 (#7A03) y CY se resta de IR 002(#F8C5). Dado que el resultado es positivo, CY es 0.

Si el resultado hubiera sido negativo, CY se habría puesto a 1. Para datos nor-males, el resultado se habría convertido a su complemento a 2.

Mi: IR 002F 8 C 5

Su: LR 207 A 0 3--

0 0 0 0--

CY = 0(de CLC(041))

R: HR 217 E C 2

Nota Para cálculos binarios con signo, el signo de UF y OF indica si el resultado haexcedido el rango de dato binario con signo (--32,768 (8000) a +32,767 (7FFF)).

En el siguiente ejemplo, SBB(051) se utiliza para restar un valor binario consigno de 16 bits de otro. (Para expresar valores negativos se utiliza el comple-mento a 2).

El rango efectivo para valores binarios con signo de 16 bits es de --32,768(8000) a +32,767 (7FFF). El indicador de fuera de rango por exceso (OF: SR25404) se pone en ON si el resultado excede de +32,767 (7FFF) y el indicadorde fuera de rango por defecto (UF: SR 25405) se pone en ON si el resultado esinferior a --32,768 (8000).

CLC(041)

00000

SBB(051)

LR 20

DM 0010

DM 0020

Dirección Instrucción Operandos

00000 LD 0000000001 CLC(041)00002 SBB(051)

LR 20DM 0010DM 0020

En este caso, 30,020 -- (--15,238) = 45,258 (7544 -- C47A = 60CA). El indicadorOF se pondría en ON para indicar que este resultado excede el límite superiordel rango de datos binarios con signo de 16 bits. (Es decir, el resultado es un

Ejemplo 2:Datos binarios con signo

Instrucciones de cálculo binario Sección 5-21

Page 269: C200HALPHA Manual Programacion

263

valor positivo que excede de 32,767 (7FFF), no un número negativo expresadocomo dato binario con signo).

Mi: LR 207 5 4 4

Su: DM 0010C 4 7 A--

R: DM 0020B 0 C A

En el siguiente caso, --30,000 -- 3,000 = --33,000 (8AD0 -- 0BB8 = 7F18). El indi-cador UF se pondría en ON para indicar que este resultado es menor que ellímite inferior del rango de datos binarios con signo de 16 bits. (Es decir, el resul-tado es un número negativo inferior a --32,768 (8000), no un número positivoexpresado como dato binario con signo).

Mi: LR 208 A D 0

Su: DM 00100 B B 8--

R: DM 00207 F 1 8

El valor absoluto del resultado verdadero (80E8=33,000) se puede obtenertomando el complemento a 2 de 7F18 utilizando NEG(160).

Nota El estado del indicador CY se puede ignorar cuando se suman datos binarioscon signo dado que sólo es relevante en la suma de valores normales hexadeci-males.

5-21-3 MULTIPLICACIÓN BINARIA -- MLB(052)

Md: Canal multiplicando (binario)

IR, SR, AR, DM, HR, TC, LR, #

Mr: Canal multiplicador (binario)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR LR

MLB(052)

Md

Mr

R

@MLB(052)

Md

Mr

R

Limitaciones R y R+1 deben estar en la misma área de datos.

Cuando la condición de ejecución es OFF, MLB(052) no se ejecuta. Cuando lacondición de ejecución es ON, MLB(052) multiplica el contenido de Md por elcontenido de Mr, coloca los cuatro dígitos de menor peso del resultado en R ylos cuatro de mayor peso en R+1.

Md

Mr

R +1 R

X

Precauciones MLB(052) no se puede utilizar para multiplicar datos binarios con signo. Utilizaren su lugar MBS(484). Consultar 5-21-7 MULTIPLICACION BINARIA CONSIGNO -- MBS(484).

Descripción

Instrucciones de cálculo binario Sección 5-21

Page 270: C200HALPHA Manual Programacion

264

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el resultado es 0.

N: En ON cuando el bit 15 de R+1 se selecciona a 1.

5-21-4 DIVISIÓN BINARIA -- DVB(053)

Dd: Canal de dividendo (binario)

IR, SR, AR, DM, HR, TC, LR, #

Dr: Canal de divisor (binario)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR LR

DVB(053)

Dd

Dr

R

@DVB(053)

Dd

Dr

R

Cuando la condición de ejecución es OFF, DVB(053) no se ejecuta. Cuando lacondición de ejecución es ON, DVB(053) divide el contenido de Dd por el conte-nido de Dr y el resultado lo envía a R y R+1: el cociente en R, el resto en R+1.

DdDr

R R + 1

Cociente Resto

Precauciones DVB(053) no se puede utilizar para dividir datos binarios con signo. UtilizarDBS(485) en su lugar. Consultar 5--21--9 DIVISION BINARIA CON SIGNO --DBS(485) para más información.

Indicadores ER: Dr contiene 0.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el resultado es 0.

N: En ON cuando el bit 15 de R+1 se selecciona a 1.

Ejemplo

DVB(053)

001

LR 20

HR 05

Dirección Instrucción Operandos

00000 LD 0000000001 DVB(053)

001LR 0020HR 05

00000

Dd: IR 0011 0 F 7

Dr: LR 00200 0 0 3

R: HR 05F E B 0

R+1: HR 06F F F 9

(4,443)

(3)

(1447 y 2/3)

­

Resto (2) Cociente (1447)

Descripción

Instrucciones de cálculo binario Sección 5-21

Page 271: C200HALPHA Manual Programacion

265

5-21-5 DOBLE SUMA BINARIA -- ADBL(480)

Ad: Primer canal sumando (binario)

IR, SR, AR, DM, HR, TC, LR, #

Au:Primer canal sumando (binario)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos operando

R: Primer canal de resultado

IR, SR, AR, DM, HR, LR

ADBL(480)

Au

Ad

R

@ADBL(480)

Au

Ad

R

Au y Au+1 deben estar en la misma área de datos, así como Ad y Ad+1, y R yR+1.

Cuando la condición de ejecución es OFF, ADBL(480) no se ejecuta. Cuando lacondición de ejecución es ON, ADBL(480)) suma los contenidos de 8 dígitos deAu+1 y Au, los contenidos de 8 dígitos de Ad+1 y Ad, y CY y pone el resultado enR+1. Si el resultado es mayor de FFFF FFFF, CY se pone a ON.

Au + 1 Au

Ad + 1 Ad

R + 1 R

+ CY

CY

ADBL(480) también se puede utilizar para sumar datos binarios con signo. Losindicadores SR 25404 y SR 25405 indican si el resultado está fuera de loslímites superior e inferior del rango de datos binarios con signo de 32 bits.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: ON cuando el resultado es mayor de FFFF FFFF.

EQ: ON cuando el resultado es 0.

OF: ON cuando el resultado es superior a +2,147,483,647 (7FFF FFFF).

UF: ON cuando el resultado es inferior a --2,147,483,648 (8000 0000).

N: ON cuando el bit 15 de R es 1.

Ejemplo 1: Datos normales El siguiente ejemplo muestra una suma de ocho dígitos con CY (SR 25504) utili-zados para representar el estado del noveno dígito.

CLC(041)

00000

ADBL(480)

000

DM 0020

LR 21

Dirección Instrucción Operandos

00000 LD 0000000001 CLC(041)00002 ADBL(480)

000DM 0020LR 21

Limitaciones

Descripción

Instrucciones de cálculo binario Sección 5-21

Page 272: C200HALPHA Manual Programacion

266

14020187 + 00A3F8C5 = 14A5FA4C

Au + 1 : 001 Au : 000

Ad + 1 : DM 0021 Ad : DM 0020

1 4 0 2 0 1 8 7

0 0 A 3 F 8 C 5

0+

R + 1 : LR 22 R : LR 21F A 4 C1 4 A 5

0

CY (Borrado con CLC(041))

CY (No acarreo)

Nota El estado de los indicadores UF y OF se pueden ignorar dado que son rele-vantes sólo en la suma de datos binarios con signo.

En el siguiente ejemplo, ADBL(480) se utiliza para sumar dos valores binarioscon signo de 32 bits y enviar el resultado de bits con signo a R y R+1. (El comple-mento a 2 se utiliza para expresar valores negativos).

El rango efectivo para valores binarios es de --2,147,483,648 (8000 0000) a+2,147,483,647 (7FFF FFFF). El indicador de fuera de rango por exceso (OF:SR 25404) se pone a ON si el resultado excede de +2,147,483,647 (7FFFFFFF) y el indicador de fuera de rango por defecto (UF: SR 25405) se pone a ONsi el resultado es inferior a --2,147,483,648 (8000 0000).

CLC(041)

00000

ADBL(480)

LR 20

DM 0010

DM 0020

Dirección Instrucción Operandos

00000 LD 0000000001 CLC(041)00002 ADBL(480)

LR 20DM 0010DM 0020

En este caso, 1,799,100,099 + (--282,751,929) = 1,516,348,100 (6B3C167D +EF258C47 = 5A61A2C4). Ni OF ni UF se ponen en ON.

Au + 1 : LR 21 Au : LR 20

Ad + 1 : DM 0011 Ad : DM 0010

6 B 3 C 1 6 7 D

E F 2 5 8 C 4 7

0+R + 1 : DM 0021 R : DM 0020

A 2 C 45 A 6 1

0

CY (Borrado con CLC(041))

UF (SR 25405)

0 OF (SR 25404)

Nota El estado del indicador CY se puede ignorar en suma de datos binarios consigno dado que sólo es relevante en la suma de valores hexadecimales.

Ejemplo 2:Datos binarios con signo

Instrucciones de cálculo binario Sección 5-21

Page 273: C200HALPHA Manual Programacion

267

5-21-6 DOBLE RESTA BINARIA -- SBBL(481)

Mi: Canal minuendo (binario)

IR, SR, AR, DM, HR, TC, LR, #

Su: Canal sustraendo (binario)

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

SBBL(481)

Mi

Su

R

@SBBL(481)

Mi

Su

R

Mi y Mi+1 deben estar en la misma área de datos, así como Su y Su+1 y R y R+1.

Cuando la condición de ejecución es OFF, SBBL(481) no se ejecuta. Cuando lacondición de ejecución es ON, SBBL(481) resta CY y el valor de 8 dígitos en Suy Su+1 del valor de 8 dígitos en Mi y Mi+1 y pone el resultado en R y R+1. Si elresultado es negativo, CY se pone a 1 y el complemento a 2 del resultado real sepone en R+1 y R. Utilizar NEGL(161) para convertir el complemento a 2 al resul-tado verdadero.

Mi + 1 Mi

Su + 1 Su

R + 1 R

-- CY

CY

SBBL(481) también se puede utilizar para restar datos binarios con signo. SR25404 y SR 25405 indican si el resultado está fuera de los límites del rango dedatos binarios de 32 bits con signo.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

CY: ON cuando el resultado es negativo, es decir cuando Mi es menor queSu más CY.

EQ: ON cuando el resultado es 0.

OF: ON cuando el resultado excede de +2,147,483,647 (7FFF FFFF).

UF: ON cuando el resultado es inferior a --2,147,483,648 (8000 0000).

N: ON cuando el bit 15 de R+1 es 1.

Ejemplo 1: Datos normales En este ejemplo, al número de ocho dígitos en IR 002 y IR 001 se le resta elnúmero de ocho dígitos de DM 0021 y DM 0020 y el resultado se envía a LR 22 yLR 21. Si el resultado es negativo, CY (SR 25504) se pone en ON.

CLC(041)

00000

SBBL(481)

001

DM 0020

LR 21

Dirección Instrucción Operandos

00000 LD 0000000001 CLC(041)00002 SBBL(481)

001DM 0020LR 21

Limitaciones

Descripción

Instrucciones de cálculo binario Sección 5-21

Page 274: C200HALPHA Manual Programacion

268

14020187 + 00A3F8C5 = 14A5FA4C

Au + 1 : 002 Au : 001

Ad + 1 : DM 0021 Ad : DM 0020

1 4 0 2 0 1 8 7

0 0 A 3 F 8 C 5

0

R + 1 : LR 22 R : LR 210 8 C 21 3 5 E

0

CY (Borrado con CLC(041))

CY (No acarreo)

--

Nota El estado de los indicadores UF y OF se pueden ignorar dado que son rele-vantes sólo en la resta de datos binarios con signo.

En el siguiente ejemplo, SBBL(481) se utiliza para restar un valor binario consigno de 32 bits de otro y enviar el resultado binario con signo de 32 bits a R yR+1.

El rango efectivo para valores binarios con signo de 32 bits es de--2,147,483,648 (8000 0000) a +2,147,483,647 (7FFF FFFF). El indicador defuera de rango por exceso (OF: SR 25404) se pone en ON si el resultado excedede +2,147,483,647 (7FFF FFFF) y el indicador de fuera de rango por defecto(UF: SR 25405) se pone en ON si el resultado es inferior a --2,147,483,648(8000 0000).

CLC(041)

00000

SBBL(481)

001

DM 0020

LR 21

Dirección Instrucción Operandos

00000 LD 0000000001 CLC(041)00002 SBBL(481)

001DM 0020LR 21

En este caso, 1,799,100,099 -- (--282,751,929) = 2,081,851,958 (6B3C 167D --{EF25 8C47 -- 1 0000 0000} = 7C16 8A36). Ni OF ni UF se ponen en ON.

Au + 1 : 001 Au : 000

Ad + 1 : DM 0021 Ad : DM 0020

6 B 3 C 1 6 7 D

E F 2 5 8 C 4 7

0--R + 1 : LR 22 R : LR 21

8 A 3 67 C 1 6

0

CY (Borrado con CLC(041))

UF (SR 25405)

0 OF (SR 25404)

--

Nota El estado del indicador CY se puede ignorar cuando se suman datos binarioscon signo dado que sólo es relevante en la suma de valores hexadecimales nor-males.

Ejemplo 2:Datos binarios con signo

Instrucciones de cálculo binario Sección 5-21

Page 275: C200HALPHA Manual Programacion

269

5-21-7 MULTIPLICACIÓN BINARIA CON SIGNO -- MBS(484)

Md: Canal de multiplicando

IR, SR, AR, DM, HR, TC, LR, #

Mr: Canal de multiplicador

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR LR

MBS(484)

Md

Mr

R

@MBS(484)

Md

Mr

R

Limitaciones R y R+1 deben estar en la misma área de datos.

MBS(484) multiplica el contenido binario con signo de dos canales y envía elresultado binario con signo de 8 dígitos a R+1 y R. Los cuatro dígitos de menorpeso del resultado se ponen en R y los cuatro de mayor peso en R+1.

Md

Mr

R +1 R

X

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: ON cuando el resultado es 0000 0000.

N: ON cuando el bit 15 de R+1 es 1.

En el siguiente ejemplo, MBS(484) se utiliza para multiplicar los contenidosbinarios con signo de DM 0010 con los contenidos binarios con signo de DM0012 y envía el resultado a DM 0100 y DM 0101.

MBS(484)

DM 0010

DM 0012

DM 0100

Dirección Instrucción Operandos

00000 LD 0010000001 MBS(484)

DM 0010DM 0012DM 0100

00100

Md: DM 00101 5 B 1

Mr: DM 0012F C 1 3

R: DM 0100D 8 2 3

XR+1: DM 0101

F F A A

(5,553)

(--1,005)

(--5,580,765)

Descripción

Ejemplo

Instrucciones de cálculo binario Sección 5-21

Page 276: C200HALPHA Manual Programacion

270

5-21-8 DOBLE MULTIPLICACIÓN BINARIA CON SIGNO -- MBSL(482)

Md: Primer canal multiplicando

IR, SR, AR, DM, HR, TC, LR, #

Mr: Primer canal multiplicador

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR LR

MBSL(482)

Md

Mr

R

@MBSL(482)

Md

Mr

R

Limitaciones Md y Md+1 deben estar en la misma área de datos, así como Mr y Mr+1, y R aR+3.

MBSL(482) multiplica el dato binario con signo de 8 dígitos (32 bits) en Md+1 yMd con el dato binario con signo de 8 dígitos (32 bits) en Mr+1 y Mr y envía elresultado binario con signo de 16 dígitos a R+3 a R.

Md + 1 Md

Mr + 1 Mr

R + 1 RR + 3 R + 2

x

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: ON cuando el resultado es cero (contenido de R+3 a R todo ceros).

N: ON cuando el bit 15 de R+3 es 1.

En el siguiente ejemplo, MBSL(482) se utiliza para multiplicar los contenidosbinarios con signo de IR 101 y IR 100 con los contenidos de DM 0021 y DM 0020y enviar el resultado a LR 24 a LR 21.

MBSL(482)

100

DM 0020

LR 21

Dirección Instrucción Operandos

00000 LD 0000000001 MBSL(482)

100DM 0020LR 21

00000

Md: IR 1007 9 3 8

Mr: DM 0020A 8 1 2

R: LR 214 5 F 0

R+1: LR 22F C A 5

(555,320)

(--1,005,550)

(--55,840,206,000)

Md+1: IR 1010 0 0 8

Mr+1: DM 0021F F F 0X

R+2: LR 23F F 7 D

R+3: LR 24F F F F

Descripción

Ejemplo

Instrucciones de cálculo binario Sección 5-21

Page 277: C200HALPHA Manual Programacion

271

5-21-9 DIVISIÓN BINARIA CON SIGNO -- DBS(485)

Dd: Canal de dividendo

IR, SR, AR, DM, HR, TC, LR, #

Dr: Canal de divisor

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR LR

DBS(485)

Dd

Dr

R

@DBS(485)

Dd

Dr

R

Limitaciones R y R+1 deben estar en la misma área de datos.

DBS(485) divide el contenido binario con signo de Dd por el contenido binariocon signo de Dr y envía el resultado binario con signo de 8 dígitos a R+1 y R. Elcociente se coloca en R y el resto en R+1.

DdDr

R R + 1

Cociente Resto

Indicadores ER: Dr contiene 0.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el contenido de R (el cociente) es 0000.

N: ON cuando el bit 15 de R es 1.

Ejemplo En el siguiente ejemplo, DBS(485) se utiliza para dividir los contenidos binarioscon signo de DM 0010 con los contenidos binarios de DM 0020 y envía el resul-tado a LR 21 y LR 22.

DBS(485)

DM 0010

DM 0020

LR 21

Dirección Instrucción Operandos

00000 LD 0000000001 DBS(485)

DM 0010DM 0020LR 21

00000

Dd: DM 0010D D D A

Dr: DM 00200 0 1 A

R: LR 21F E B 0

!

R+1: LR 22F F F A

(--8,742)

(26)

(--336 y --6)

Resto (--6) Cociente (--336)

Descripción

Instrucciones de cálculo binario Sección 5-21

Page 278: C200HALPHA Manual Programacion

272

5-21-10 DOBLE DIVISIÓN BINARIA CON SIGNO -- DBSL(483)

Dd: Canal de dividendo (binario)

IR, SR, AR, DM, HR, TC, LR, #

Dr: Canal de divisor (binario)

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés

Áreas de datos de operando

R: Primer canal de resultado

IR, SR, AR, DM, HR LR

DBSL(483)

Dd

Dr

R

@DBSL(483)

Dd

Dr

R

Limitaciones Dd y Dd+1 deben estar en la misma área de datos, así como Dr y Dr+1, y R aR+3.

DBS(485) divide el dato binario con signo de 8 dígitos (32 bits) en Dd+1 y Dd porel dato binario con signo de 32 bits en Dr+1 y Dr y envía el resultado binario consigno de 16 dígitos a R+3 a R. El cociente se coloca en R+1 y R y el resto en R+3y R+2.

R+1 R

CocienteResto

Dd+1 DdDr+1 Dr

R+3 R+2

Indicadores ER: Dr+1 y Dr contiene 0.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: ON cuando el contenido de R+1 y R (el cociente) es 0.

N: ON cuando el bit 15 de R+1 es 1.

Ejemplo En el siguiente ejemplo, DBSL(483) se utiliza para dividir los contenidos bina-rios con signo de IR 101 y IR 100 con los contenidos binarios con signo de DM0021 y DM 0020 y envía el resultado a LR 24 a LR 21.

DBSL(483)

100

DM 0020

LR 21

Dirección Instrucción Operandos

00000 LD 0000000001 DBSL(483)

100DM 0020LR 21

00000

Dd: IR 100B 1 5 C

Dr: DM 00200 0 1 A

R: LR 21D F 7 0

R+1: LR 22F F F A

(--8,736,420)

(26)

(--336,016 y --4/26)

Dd+1: IR 101F F 7 A

Dr+1: DM 00210 0 0 0

R+2: LR 23F F F C

R+3: LR 24F F F F

Resto (--4) Cociente (--336)

!

Descripción

Instrucciones de cálculo binario Sección 5-21

Page 279: C200HALPHA Manual Programacion

273

5-22 Instrucciones matemáticas especiales

5-22-1 BUSCAR MÁXIMO -- MAX(182)

R1: Primer canal en el rango

IR, SR, AR, DM, HR, TC, LR

C: Datos de control

IR, SR, AR, DM, HR, LR, #

Símbolo de relés Áreas de datos de operando

@MAX(182)

C

R1

DD: Canal destino

IR, SR, AR, DM, HR, LR

MAX(182)

C

R1

D

Limitaciones N en C debe estar en BCD entre 001 y 999.R1 y R1+N--1 deben estar en la misma área de datos.

Descripción Cuando la condición de ejecución es OFF, MAX(182) no se ejecuta. Cuando lacondición de ejecución es ON, MAX(182) busca las direcciones que contienenel valor máximo en el rango de memoria de R1 a R1+N--1 y envía el valor máximoal canal destino (D).Si el bit 14 de C es ON, MAX(182) identifica la dirección del canal que contiene elvalor máximo en D+1. La dirección se identifica de diferente forma para el áreade DM:

1, 2, 3... 1. Para una dirección en el área de DM, la dirección de canal se escribe enC+1. Por ejemplo, si la dirección que contiene el valor máximo es DM 0114,se escribe #0114 en D+1.

2. Para una dirección en otra área de datos, el número de direcciones desde elprincipio de la búsqueda se escribe en D+1. Por ejemplo, si la dirección quecontiene el valor máximo es IR 114 y el primer canal en el rango debúsqueda es IR 014, se escribe #0100 en D+1.

Si el bit 15 de C está en ON y hay más de una dirección que contiene el mismovalor máximo, la posición de la dirección más baja se enviará a D+1.

El número de canales dentro del rango (N) se expresa en los 3 dígitos de menorpeso de C, los cuales deben estar en BCD entre 001 y 999.

Cuando el bit 15 de C está en OFF, los datos dentro del rango se tratan comobinarios sin signo y cuando está en ON como binarios con signo.

15 14 13 12 11 00

Tipo de datos1 (ON): Binario con signo0 (OFF): Binario sin signo

Número de canalesen rango (N)

No utilizado -- puesto a cero.

Dirección de salida a D+1?1 (ON): Sí.0 (OFF): No.

C:

AtenciónSi el bit 14 de C está en ON, los valores superiores a #8000 se tratan comonúmeros negativos, por lo que los resultados diferirán dependiendo del tipo dedato especificado. Verificar que se especifica el tipo de dato correcto.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

R1 y R1+N--1 no están en la misma área de datos.

Instrucciones matemáticas especiales Sección 5-22

Page 280: C200HALPHA Manual Programacion

274

EQ: En ON cuando el valor máximo es #0000.

N: ON cuando el bit 15 de D es 1.

5-22-2 BUSCAR MÍNIMO -- MIN(183)

R1: Primer canal del rango

IR, SR, AR, DM, HR, TC, LR

C: Datos de control

IR, SR, AR, DM, HR, LR, #

Símbolos de relés Áreas de datos de operando

@MIN(183)

C

R1

DD: Canal destino

IR, SR, AR, DM, HR, LR

MIN(183)

C

R1

D

Limitaciones N en C debe estar en BCD entre 001 y 999.R1 y R1+N--1 deben estar en la misma área de datos.

Descripción Cuando la condición de ejecución es OFF, MIN(183) no se ejecuta. Cuando lacondición de ejecución es ON, MIN(183) busca las direcciones que contienen elvalor mínimo en el rango de memoria de R1 a R1+N--1 y envía el valor mínimo alcanal de destino (D).Si el bit 14 de C está en ON, MIN(183) identifica la dirección del canal que con-tiene el valor mínimo en D+1. La dirección se identifica de forma diferente parael área de DM:

1, 2, 3... 1. Para una dirección en el área de DM, la dirección de canal se escribe enC+1. Por ejemplo, si la dirección que contiene el valor mínimo es DM 0114,se escribe #0114 en D+1.

2. Para una dirección en otra área de datos, el número de direcciones desde elprincipio de la búsqueda se escribe en D+1. Por ejemplo, si la dirección quecontiene el valor mínimo es IR 114 y el primer canal en el rango debúsqueda es IR 014, se escribe #0100 en D+1.

Si el bit 14 de C está en ON y hay más de una dirección que contiene el mismovalor mínimo, la posición de la dirección más baja se enviará a D+1.

El número de canales dentro del rango (N) está contenido en los 3 dígitos demenor peso de C, los cuales deben estar en BCD entre 001 y 999.

Cuando el bit 15 de C está en OFF, los datos dentro del rango se tratan comobinarios sin signo y cuando está en ON como binarios con signo.

15 14 13 12 11 00

Tipo de datos1 (ON): Binario con signo0 (OFF): Binario sin signo

Número de canalesen rango (N)

No utilizado -- puesto a cero.

Dirección de salida a D+1?1 (ON): Sí.0 (OFF): No.

C:

AtenciónSi el bit 14 de C está en ON, los valores superiores a #8000 se tratan comonúmeros negativos, por lo que los resultados diferirán dependiendo del tipo dedato especificado. Verificar que se especifica el tipo de dato correcto.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

El número de canales especificado en C no está en BCD (000 a 999).

Instrucciones matemáticas especiales Sección 5-22

Page 281: C200HALPHA Manual Programacion

275

R1 y R1+N--1 no están en la misma área de datos.

EQ: En ON cuando el valor mínimo es #0000.N: ON cuando el bit 15 de D es 1.

5-22-3 VALOR MEDIO -- AVG(195)

S: Canal fuente

IR, SR, AR, DM, HR, TC, LR

N: Número de ciclos

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

D: Primer canal destino

IR, SR, AR, DM, HR, LR

AVG(195)

S

N

D

@AVG(195)

S

N

D

Limitaciones S debe ser hexadecimal.N debe ser BCD de #0001 a #0064.D y D+N+1 deben estar en la misma área de datos.

Descripción AVG(195) se utiliza para calcular el valor medio de S en N ciclos.Cuando la condición de ejecución es OFF, AVG(195) no se ejecuta.Los primeros N--1 ciclos cuando la condición de ejecución es ON, AVG(195)escribe el valor de S en D. Cada vez que se ejecuta AVG(195), el valor previo deS está almacenado en los canales D+2 a D+N+1. Los dos primeros dígitos deD+1 se incrementan con cada ejecución y funcionan como un puntero para indi-car dónde está almacenado el valor anterior. Bit 15 de D+1 permanece en OFFdurante los primeros N--1 ciclos.En el enésimo ciclo, el valor previo de S se escribe en el último canal en el rangode D+2 a D+N+1. Se calcula el valor medio de los valores previos almacenadosen D+2 a D+N+1 y se escribe en D, el bit 15 de D+1 se pone en ON y el punterode valor previo (los dos primeros dígitos de D+1) se resetean a cero. Cada vezque se ejecuta AVG(195), el valor previo de S sobreescribe el contenido delcanal indicado por el puntero y se calcula el nuevo valor medio y se escribe en D.El puntero se reseteará de nuevo después de alcanzar N--1.El siguiente diagrama muestra la función de los canales D a D+N+1.

D Valor medio (después de N o más ejecuciones)D+1 Utilizado por el sistema.D+2 Contenido de S desde la 1ra ejecución de AVG(195)D+3 Contenido de S desde la 2da ejecución de AVG(195)

D+N+1 Contenido de S desde la enésima ejecución AVG(195)

La función de los bits de D+1 se indican en la siguiente figura y se explican acontinuación más detalladamente.

15 14 08 07 00

Puntero de valor anterior(2-dígitos hexadecimales de 0 aN--1.)

D+1:

No utilizado. Seleccio-nar a cero.

Indicador de ciclo0 (OFF): ciclos desde ejecución de AVG(195) < N.1 (ON): ciclos desde ejecución de AVG(195) " N.

Puntero de valor anterior El puntero de valor anterior indica dónde se ha almacenado el valor másreciente de S con relación a D+2, es decir, un valor de puntero de 0 indica D+2,un valor de 1 indica D+3, etc.

Instrucciones matemáticas especiales Sección 5-22

Page 282: C200HALPHA Manual Programacion

276

Indicador de ciclo El indicador de ciclo se pone en ON después de haber ejecutado AVG(195) Nveces. En este punto, D contendrá el valor medio de los contenidos de loscanales D+2 a D+N+1. El valor medio es un hexadecimal de 4 dígitos con redon-deo al entero más próximo.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

Se ha seleccionado incorrectamente uno o más operandos.

Ejemplo En el siguiente ejemplo, el contenido de IR 040 se fija a #0000 y luego seaumenta en 1 cada scan. Para los primeros dos scans, AVG(195) mueve el con-tenido de IR 040 a DM 1002 y DM 1003. Los contenidos de DM 1001 también secambiarán (lo que se puede utilizar para confirmar que los resultados deAVG(195) han cambiado). En el tercer y posteriores scans, AVG(195) calcula elvalor medio de los contenidos de DM 1002 a DM 1004 y graba ese valor medioen DM 1000.

@MOV(021)

040

#0000

00001

Dirección Instrucción Operandos

00000 LD 0000100001 @MOV(021)

# 0000040

00002 AVG(195)040

# 0003DM 1000

00003 CLC(041)00004 ADB(050)

040# 0001

040

AVG(195)

#0003

040

DM 1000

CLC(041)

ADB(050)

#0001

040

040

1er scan 2do scan 3er scan 4to scanDM 1000 0000 0001 0001 0002 Valor medioDM 1001 Utilizado por el sistemaDM 1002 0000 0000 0000 0003 ValoresDM 1003 --- 0001 0001 0001 previos deDM 1004 --- --- 0002 0002 IR 40

1er scan 2do scan 3er scan 4to scanIR 040 0000 0001 0002 0003

5-22-4 SUMA -- SUM(184)

C: Datos de control

IR, SR, AR, DM, HR, LR, #

R1: Primer canal en el rango

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

D: Primer canal destino

IR, SR, AR, DM, HR, LR

SUM(184)

C

R1

D

@SUM(184)

C

R1

D

Limitaciones Los 3 dígitos de menor peso de C deben ser BCD entre 001 y 999.

Instrucciones matemáticas especiales Sección 5-22

Page 283: C200HALPHA Manual Programacion

277

Si el bit 14 de C es OFF (selección para dato BCD), todos los datos dentro delrango R1 a R1+N--1 deben ser BCD.

Descripción Cuando la condición de ejecución es OFF, SUM(184) no se ejecuta. Cuando lacondición de ejecución es ON, SUM(184) suma los contenidos de los canalesR1 a R1+N--1 o los bytes en los canales R1 a R1+N/2--1 y envía el resultado a loscanales destino (D y D+1). Los datos se pueden sumar y enviar en binario oBCD y los datos binarios pueden ser con o sin signo.La función de los bits en C se muestra en el siguiente esquema y se detallan acontinuación.

15 14 13 12 11 00

Número de items en rango (N, BCD)Número de canales o bytes001 a 999

Primer byte (cuando bit 13 está ON)1 (ON): Menor peso0 (OFF): Mayor peso

Unidades de suma1 (ON): Bytes0 (OFF): Canales

C:

Tipo de datos1 (ON): Binario0 (OFF): BCD

Tipo de datos1 (ON): Binario con signo0 (OFF): Binario sin signo

Número de canales en el rangoEl número de canales dentro del rango (N) está contenido en los 3 dígitos demenor peso de C, que deben ser BCD entre 001 y 999. Este número indicará elnúmero de canales o bytes dependiendo de las unidades de suma.

Unidades de suma Se sumarán canales si el bit 13 está en OFF y bytes si está en ON.Si se especifica bytes, el rango puede comenzar con el byte de mayor o demenor peso de R1. El byte de mayor peso de R1 no se sumará si el bit 12 está enON.

MSB LSBR1 1 2R1+1 3 4R1+2 5 6R1+3 7 8

Los bytes se sumarán en este orden cuando el byte 12 esté en OFF: 1+2+3+4....Los bytes se sumarán en este orden cuando el byte 12 esté en ON: 2+3+4....

Tipo de datos Los datos dentro del rango se tratan como binario sin signo cuando el bit 14 de Cestá en ON y el bit 15 en OFF y se trata como binario con signo cuando ambosbits 14 y 15 están en ON.Los datos dentro del rango se tratan como BCD cuando el bit 14 de C está enOFF, independientemente del estado del bit 15.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

R1 y R1+N--1 no están en la misma área de datos.

El número de items en C no está en BCD entre 001 y 999.

Los datos que se están sumando no están en BCD habiendo designadoBCD.

EQ: En ON cuando el resultado es cero.

N: ON cuando el bit 15 de D es 1.

Instrucciones matemáticas especiales Sección 5-22

Page 284: C200HALPHA Manual Programacion

278

Ejemplo En el siguiente ejemplo, los contenidos BCD de los 8 canales desde DM 0000 aDM 0007 se suman cuando IR 00001 está en ON y el resultado se escribe enDM 0010 y DM 0011.

@SUM(184)

DM 0000

#0008

00001

DM 0010

Dirección Instrucción Operandos

00000 LD 0000100001 @SUM(184)

# 0008DM 0000DM 0010

DM 0000 0001DM 0001 0002DM 0002 0003DM 0003 0004DM 0004 0005DM 0005 0006DM 0006 0007DM 0007 0008

DM 0010 0036DM 0011 0000

5-22-5 PROCESOS ARITMÉTICOS -- APR(069)

C: Canal de control

IR, SR, AR, DM, HR, TC, LR, #

S: Canal fuente datos de entrada

IR, SR, AR, DM, HR, TC, LR

Áreas de datos de operando

D: Canal destino de resultado

IR, SR, AR, DM, HR,TC, LR

Símbolo de relés

APR(069)

C

S

D

@APR(069)

C

S

D

Limitaciones Para funciones trigonométricas, S debe ser BCD de 0000 a 0900 (0#$ θ $ 90#).

De DM 6144 a DM 6655 no se pueden utilizar para D.

Descripción Cuando la condición de ejecución es OFF, APR(069) no se ejecuta. Cuando lacondición de ejecución es ON, la operación de APR(069) depende del canal decontrol C.

Si C es #0000 ó #0001, APR(069) calcula el sen(θ) o el cos(θ)*. El valor BCD deS especifica θ en décimas de grado.

Si C es una dirección, APR(069) calcula f(x) de la función introducida comen-zando en el canal C. La función es una serie de segmentos de línea (que se pue-den aproximar a una curva) determinada por el operador. El valor BCD o hexa-decimal de S especifica x.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

Para funciones trigonométricas, x > 0900. (x es el contenido de S.)

Se designó una constante distinta de #0000 ó #0001 para C.

No se pueden leer los datos de aproximación lineal.

EQ: El resultado es 0000.

N: ON cuando el bit 15 de D es 1.

Instrucciones matemáticas especiales Sección 5-22

Page 285: C200HALPHA Manual Programacion

279

EjemplosFunción seno El siguiente ejemplo muestra la utilización de APR(069) función seno para cal-

cular el seno de 30#. La función seno se especifica cuando C es #0000.

Dato entrada, x Dato resultado

S: DM 0000 D: DM 01000 101 100 10--1 10--1 10--2 10--3 10--4

0 3 0 0 5 0 0 0

APR(069)

#0000

DM 0000

DM 0100

00000

El dato de entrada no debeexceder de #0900 en BCD.

El resultado tiene cuatro dígitossignificativos, el quinto ysiguientes se ignoran. Elresultado para sen(90) será0.9999, y no 1.

Dirección Instrucción Operandos

00000 LD 0000000001 APR(069)

# 0000DM 0000DM 0100

Función coseno El siguiente ejemplo muestra la utilización de APR(069) función coseno paracalcular el coseno de 30#. La función coseno se especifica cuando C es #0001.

Dato entrada, x Dato resultado

S: DM 0010 D: DM 01100 101 100 10--1 10--1 10--2 10--3 10--4

0 3 0 0 8 6 6 0

APR(069)

#0001

DM 0010

DM 0110

00000 Dirección Instrucción Operandos

00000 LD 0000000001 APR(069)

# 0001DM 0010DM 0110

El dato de entrada no debeexceder de #0900 en BCD.

El resultado tiene cuatro dígitossignificativos, el quinto ysiguientes se ignoran. Elresultado para cos(0) será0.9999, y no 1.

Aproximación lineal Se especifica APR(069) aproximación lineal cuando C es una dirección dememoria. El canal C es el primer canal de bloque de memoria continuo que con-tiene los datos de aproximación lineal.El contenido del canal C especifica el número de segmentos de línea en la apro-ximación y si la entrada y salida está en forma BCD o BIN. Los bits 00 a 07 con-tienen el número de segmentos de línea menos 1, m--1, como dato binario. Losbits 14 y 15 determinan, respectivamente, los formatos de la entrada y salida: 0especifica BCD y 1 especifica BIN.

15 14 No utilizado. 07 06 05 04 03 02 01 00

Formato de salida

Formato de entrada

Número de coordenadasmenos uno (m--1)

C:

Escribir las coordenadasde los puntos finales m+1, que define los m segmentosde línea, como se muestra en la siguiente tabla. Escribir todas las coordenadasen formato BIN. Escribir siempre las coordenadas desde el valor más bajo de X(X1) al más alto (Xm). X0 es 0000, y no se ha de introducir.

Instrucciones matemáticas especiales Sección 5-22

Page 286: C200HALPHA Manual Programacion

Y0

X0 X1 X2 X3 X4 Xm

X

Y

Ym

Y4

Y3

Y1

Y2

280

Canal Coordenada

C+1 Xm (valor máx. X)

C+2 Y0

C+3 X1

C+4 Y1

C+5 X2

C+6 Y2

% %

C+(2m+1) Xm

C+(2m+2) Ym

Si el bit 13 de C se fija a 1, se reflejará de izquierda a derecha, como se muestraen el siguiente diagrama.

X0 XmX

Y

Xm X0X

Y

El siguiente ejemplo demuestra la construcción de una aproximación lineal con12 segmentos. El bloque de datos es continuo, desde DM 0000 a DM 0026 (C aC + (2&12 + 2)). Los datos de entrada se toman de IR 010 y el resultado se envíaa IR 011.

DM 0000 $C00BDM 0001 $05F0 X12

DM 0002 $0000 Y0

DM 0003 $0005 X1

DM 0004 $0F00 Y1

DM 0005 $001A X2

DM 0006 $0402 Y2

% % %DM 0025 $05F0 X12

DM 0026 $1F20 Y12

APR(069)

DM 0000

010

011

00000

1 1 0 0 0 0 0 0 0 0 0 0 1 0 1 1

Bit15

Bit00

(Salida yentrada en BIN)

(m--1 = 11: 12segmentos delínea)

Contenido Coordenada

Dirección Instrucción Operandos

00000 LD 0000000001 APR(069)

DM 0000010011

Instrucciones matemáticas especiales Sección 5-22

Page 287: C200HALPHA Manual Programacion

281

En este caso, el canal de datos de entrada, IR 010, contiene #0014, y f(0014) =#0726 se envía a R, IR 011.

X

Y

$1F20

$0F00

$0726

$0402

(0,0)$0005 $0014 $001A $05F0

(x,y)

5-22-6 CONTROL PID -- PID(190)

S: Canal de entrada

IR, SR, AR, DM, HR, LR,

C: Primer canal de parámetro

IR, SR, DM, HR, LR

Áreas de datos de operando

D: Canal de salida

IR, SR, AR, DM, HR, LR

Símbolo de relés

PID(190)

S

C

D

Limitaciones C y C+32 deben estar en la misma área de datos.

Nota Para evitar resultados inesperados, no programar PID(190) en las siguientessituaciones: en programas de interrupción, en subrutinas, entre IL(002) yILC(003), entre JMP(004) y JME(005) y en programación de paso (cuando seutiliza STEP(008) y SNXT(009)).

PID(190) efectúa un control PID de acuerdo con los parámetros designados.Toma el rango de entrada especificada de datos binarios del canal de entrada Sy realiza la operación PID de acuerdo con los parámetros seleccionados. Losresultados se almacenan como cantidad de salida en el canal de salida D.Los canales de parámetros PID comprenden de C a C+32. Los parámetros PIDse configuran como se indica a continuación.

Canal 15 a 12 11 a 8 7 a 4 3 a 0

C Valor seleccionado o punto de consigna (SV)

C+1 Banda proporcional (P)

C+2 Tik = Tiempo de integral T1/periodo de muestreo ' (Ver nota 1.)

C+3 Tdk = Tiempo de derivada Td/periodo de muestreo ' (Ver nota 1.)

C+4 Periodo de muestreo '

C+5 Parámetro de 2-PID (() (Ver nota 2.) PID directa/inversa

C+6 0 Rango deentrada

Unidad detiempo

Rango de salida

C+7 a C+32 Area de trabajo (No se puede acceder directamente por programa)

Notas1. Los valores reales de integral y de derivada se calculan utilizando los valo-res seleccionados en C+2 y C+3 y la unidad de tiempo seleccionada enC+6.

2. Seleccionado el parámetro de 2-PID (() a 000 se tiene 0.65, el valor normal.

Descripción

Instrucciones matemáticas especiales Sección 5-22

Page 288: C200HALPHA Manual Programacion

282

Selecciones de parámetros

Item Contenidos Rango de selección

Valor seleccionado opunto de consigna(SV)

Es el valor de consigna para el procesoa controlar.

Dato binario (del mismo númerode bits que el especificado para elrango de entrada)

Banda proporcional Este parámetro especifica la relaciónde rango de control proporcional/rangode control total.

De 0001 a 9999 (4 dígitos BCD);(0.1% a 999.9%, en unidades de0.1%)

Tik Esta constante es inversamenteproporcional a la intensidad de laoperación integral.

El parámetro unidad de tiempodetermina el método de selección.

De 0001 a 8191 (4 dígitos BCD);(9999 = operación integral noejecutada)

1& a 8191& cuando unidad detiempo = 0 ó 10.1 a 819.1 s cuando unidad detiempo = 80.1 a 81.9 s cuando unidad detiempo = 9

Tdk Esta es una constante que expresa laintensidad de la operación derivada.Según aumenta este valor, aumenta laintensidad de derivada.

El parámetro unidad de tiempodetermina el método de selección.

0001 a 8191 (4 dígitos BCD);(0000 = Operación derivada noejecutada)

1& a 8191& cuando unidad detiempo = 0 ó 10.1 a 819.1 s cuando unidad detiempo = 80.1 a 81.9 s cuando unidad detiempo = 9

Periodo de muestreo Selecciona el periodo para ejecutar laoperación PID.

De 0001 a 1023 (4 dígitos BCD);(0.1 a 102.3 s, en unidades de0.1 s)

PID operacióndirecta/inversa

Selecciona operación normal o inversa. 0: Operación normal1: Operación inversa

Parámetro 2-PID (() Coeficiente del filtro de entrada.Normalmente utiliza 0.65 (es decir unaselección de 000). La eficacia del filtrodisminuye conforme el coeficiente seaproxima a 0.

000: ( = 0.65Selección de 100 a 199 significaque el valor de los dos dígitos dela derecha se selecciona de (=0.00 a (= 0.99.

Unidad de tiempo Especifica el método para seleccionarlos parámetros de integral/derivada.

0, 1, 8 ó 9 (1 dígito BCD)

0 ó 1: Especificación de tiempo8: Especificación de tiempo(unidades de 100-ms)9: Cte. de tiempo (unidades de10-ms)

Rango de entrada Número de bits de dato de entrada. 0: 8 bits1 9 bit

5: 13 bits6 14 bitRango de salida Número de bits de dato de salida. {El

número de bits de salida esautomáticamente el mismo que el debits de entrada).

1: 9 bits2: 10 bits3: 11 bits4: 12 bits

6: 14 bits7: 15 bits8: 16 bits(1 dígito BCD)

Condición de ejecución OFFSe retienen todos los datos seleccionados. Cuando la condición de ejecuciónes OFF, los datos de salida deseados se pueden escribir en el canal de salida(D) para control manual.

Flanco de subida de la condición de ejecuciónInicializa el área de trabajo basándose en los parámetros PID seleccionados ycomienza la operación de control PID. Hay una función incorporada para cam-biar continuamente el dato de salida, debido a que en el arranque los cambiosbruscos en el dato de salida puede afectar negativamente al sistema contro-lado.

Los cambios hechos en los parámetros no serán efectivos hasta que la condi-ción de ejecución para PID(190) pase de OFF a ON.

Operación de control PID

Instrucciones matemáticas especiales Sección 5-22

Page 289: C200HALPHA Manual Programacion

283

Condición de ejecución ONSe ejecuta la operación PID en intervalos marcados por el periodo de muestreoy según los parámetros PID seleccionados.Periodo de muestreo y tiempos de ejecución de PIDEl periodo de muestreo es el intervalo para cargar los datos de medida paraefectuar la operación PID. PID(190), sin embargo, se ejecuta de acuerdo con elciclo de la CPU, por lo que puede haber casos en los que se exceda el periodode muestreo. En tales casos, se reduce el intervalo de tiempo hasta el siguientemuestreo.

El C200HALPHA realiza control PID anticipativo (con dos grados de libertad).Con control PID convencional, la prevención de sobrepasos hace que la estabi-lización de perturbaciones sea lenta (1).Si se acelera la estabilización de pertur-baciones, se producen sobrepasos ralentizando la respuesta al punto de con-signa (2). Con control PID anticipativo, no hay sobrepasos y se puede acelerartanto la respuesta al punto de consigna como la estabilización de perturba-ciones (3).

Control PID convencional Control PID anticipativo

Según se ralentiza la respuesta a la consigna,empeora la respuesta a perturbaciones.

Sobrepaso

Respuesta aconsigna

Respuesta aperturbaciones

(1)

(2)

Según se ralentiza la respuesta a la consigna,empeora la respuesta a perturbaciones.

Control proporcional (P)El control proporcional es una operación en la que se establece una banda pro-porcional con respecto al punto de consigna (SV), y dentro de dicha banda lacantidad de control (cantidad de salida de control) se hace proporcional a ladesviación. Si el valor presente (PV) es menor que la banda proporcional, lacantidad de control es del 100%. Si está dentro de la banda proporcional, la can-tidad de control se hace proporcional a la desviación y disminuye gradualmentehasta que el SV coinicide con el PV, momento en que la cantidad de control es el50%.La banda proporcional se expresa en porcentaje con respecto al rango deentrada total. Con el control proporcional se produce un offset (desviación resi-dual), que se reduce estrechando la banda proporcional. Sin embargo si labanda es demasiado estrecha, se producirán oscilaciones (hunting).

Control Proporcional Ajuste de la banda proporcional

Cantidadde control

SV

Banda proporcional

SV

Banda proporcional demasiado estrecha(se producen oscilaciones)

Banda proporcional adecuada

Banda proporcional demasiado ancha (offset elevado)

Offset100%

50%

0%

Control Integral (I)Combinando control integral y proporcional se reduce el offset. La cantidad decontrol integral se determina mediante el tiempo de integral que es el tiemponecesario para igualar cantidad de control integral con control proporcional con

Método de control PID

Operaciones de control

Instrucciones matemáticas especiales Sección 5-22

Page 290: C200HALPHA Manual Programacion

284

respecto a la desviación de paso, como se indica en la siguiente figura. A menortiempo de integral, mayor corrección o influencia del control integral. Si eltiempo de integral es demasiado corto, se producirán oscilaciones.

Control integral

Operación Pi y tiempo de Integral

Desviación

Cantidadde control

Respuesta de paso

Control Pi

Control P

Ti:Tiempo de integral

0

0

0

0

Desviación

Cantidadde control

Respuesta de paso

Control derivada (D)Tanto el control proporcional como el integral efectúan correcciones conrespecto a los resultados de control, por lo que es inevitable un retardo derespuesta. La operación derivada compensa este retardo. A perturbacionesbruscas responde con una importante cantidad de control que rápidamentedevuelve el proceso a su estado original. La corrección se ejecuta proporcional-mente a la inclinación (derivada) de la desviación.

La intensidad de la acción derivada está marcada por el tiempo de derivada,que es el tiempo necesario para que la cantidad de operación derivada alcanceel mismo nivel que la operación proporcional con respecto a la desviación depaso, como se indica en la siguiente figura. A mayor tiempo de derivada, mayorcorrección de la operación derivada.

Operación derivada

Operación Pd y tiempo de derivada

Respuesta de paso

Control PdControl P

Td: Tiempo de derivada

Control D

0

0

0

0

Respuesta de pasoDesviación

Cantidadde control

Desviación

Cantidadde control

Control PIDLa operación PID combina la operación proporcional (P), operación integral (I),y operación derivada (D). Produce resultados de control superiores incluso paraobjetos de control con tiempo muerto. Emplea la acción proporcional para con-trolar suavemente sin sobrepasos, la acción integral para corregir automática-

Instrucciones matemáticas especiales Sección 5-22

Page 291: C200HALPHA Manual Programacion

285

mente el offset y la acción derivada para incrementar la velocidad de respuestaa perturbaciones.

Salida de control PID a respuesta de paso

Salida de control PID a respuesta de lámpara

Control PIDControl IControl PControl D

Respuesta de paso0

0

Desviación

Cantidadde control

Control PIDControl IControl P

Control D

Respuesta de rampa0

0

Desviación

Cantidadde control

Cuando se utilice el control PID seleccionar una de las dos direccionessiguientes. En cualquiera, la cantidad de control aumenta conforme aumenta ladiferencia entre el SV y el PV.) Operación directa: La cantidad de control aumenta cuando el PV es mayor

que el SV.) Operación inversa: La cantidad de control aumenta cuando el PV es menor

que el SV.

La relación entre los parámetros de control PID y el control se muestra a conti-nuación.) Cuando el tiempo necesario para estabilizar el sistema no presenta ningún

problema, siendo muy importante no provocar sobrepasos, aumentar labanda proporcional.

SV

Control para PID medidas

Cuando se aumenta P

) Cuando los sobrepasos no representan un problema, y se desea estabilizarrápidamente el sistema, estrechar o reducir la banda proporcional. Si la bandaproporcional se estrecha demasiado, se pueden generar oscilaciones.

Cuando se estrecha P

Control para PID medidasSV

) Cuando se producen oscilaciones, éstas probablemente estén causadas por-que la acción integral es demasiado intensa. Las oscilaciones se reducirán sise aumenta el tiempo de integral o se amplia la banda proporcional.

Control para PID medidas(cuando se producen oscilaciones)

Aumentar I o P.

SV

Dirección del control

Ajuste de parámetros PID

Instrucciones matemáticas especiales Sección 5-22

Page 292: C200HALPHA Manual Programacion

286

) Si el periodo es corto y se producen oscilaciones, puede que la respuesta delsistema de control sea rápida y que la acción derivada sea demasiadointensa. En tal caso, seleccionar una acción derivada menor.

Control para PID medidas(oscilaciones de periodo corto)

Reducir D.

SV

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).La selección de un parámetro PID está fuera de rango.Se ha ejecutado la operación PID pero el tiempo de ciclo era dos vecesel periodo de muestreo. PID(190) se ejecutará con este error sóloincluso cuando ER (SR25503) esté en ON.

CY: Se está ejecutando el control PID.

Este ejemplo muestra un programa de control PID utilizando PID(190).

Amplificador (Ver nota.)

Ventilador (Canal de salida IR 111)

Calentador (Canal de salida IR110)

Sensor de temperatura(Canal de salida IR 100)

Amplificador (Ver nota.)

#0 #1

AD001 DA001CPU

Nota Los motores y calentadores no se pueden conectar directamente a una unidadde salida analógica. Se necesita un amplificador.

Proceder como se indica a continuación.

1, 2, 3... 1. Seleccionar el punto de consigna (binario 0000 a 0FFF) en DM 0000.2. Introducir el PV del sensor de temperatura (binario 000 a 0FFF) en los bits 0

a 11 del canal 101.3. Enviar la salida de control del calentador a los bits 0 a 11 del canal 110 por

medio de la primera instrucción PID(190) en el siguiente programa.4. Enviar la salida de control de ventilador a los bits 0 a 11 del canal 111 por

medio de la segunda instrucción PID(190) en el siguiente programa.5. Convertir el PV del sensor de temperatura (binario 000 a FFF) a tempera-

tura (0000#C a 0200#C) por medio de SCL(194), y enviarlo a DM 0200.

Ejemplo

Creación del programa

Instrucciones matemáticas especiales Sección 5-22

Page 293: C200HALPHA Manual Programacion

287

Programa

Valor de consigna

Canal de parámetro para la primerainstrucción PID(190)

Canal de parámetro para la segundainstrucción PID(190)

PV del sensor de temperatura

Salida operación del calentador

Salida operación del ventilador

PV del sensor de temperatura (binario)

Primer canal del parámetro convertido

Temperatura actual del sensor de tempera-tura (#C)

@MOV(021)

DM0000

#0F00

00000

PID(190)

HR00

101

110

END

PID(190)

HR40

101

111

SCL

DM0100

101

DM0200

@MOV(021)

HR00

DM0000

@MOV(021)

HR40

DM0000

25315

Instrucciones matemáticas especiales Sección 5-22

Page 294: C200HALPHA Manual Programacion

288

Nota Cuando se utilice PID(190) o SCL(194), seleccionar los datos previamente conun periférico como por ejemplo la consola de programación o SYSWIN.

Punto de consigna HR

Banda proporcional

Tiempo de Integral/periodo de muestreo

Tiempo de derivada/periodo de muestreo

Periodo de muestreo

Designación directa/inversa/parámetros PIDRango de E/S y selecciones de unidad de tiempo

Calentador

(DM0000)

0080

0200

0100

0001

0000

0404

HR 00

HR 01

HR 02

HR 03

HR 04

HR 05

HR 06

Ventilador

(DM0000)

0060

0150

0100

0001

0001

0404

HR 40

HR 41

HR 42

HR 43

HR 44

HR 45

HR 46

Parámetros SCL

DM 0100

DM 0101

DM 0102

DM 0103

0000

0000

0200

0FFF

5-23 Instrucciones lógicasLas instrucciones lógicas -- COM(029), ANDW(034), ORW(035), XORW(036) yXNRW(037) -- realizan operaciones lógicas en datos de canal.

5-23-1 COMPLEMENTO -- COM(029)

Wd: Canal de complemento

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

COM(029)

Wd

@COM(029)

Wd

Cuando la condición de ejecución es OFF, COM(029) no se ejecuta. Cuando lacondición de ejecución es ON, COM(029) pone a OFF todos los bits en ON y aON todos los bits que estén en OFF.

El complemento de Wd se calculará cada ciclo de scan si se utiliza la forma nodiferenciada de COM(029). Utilizar la forma diferenciada (@COM(029)) cuan-do sea necesario.

1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1

0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0

15 00

15 00

Original

Complemento

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

Descripción

Precauciones

Ejemplo

Instrucciones lógicas Sección 5-23

Page 295: C200HALPHA Manual Programacion

289

EQ: En ON cuando el resultado es 0.

N: En ON cuando el bit 15 de Wd es 1.

5-23-2 PRODUCTO LÓGICO -- ANDW(034)

I1: Entrada1

IR, SR, AR, DM, HR, TC, LR, #

I2: Entrada 2

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

ANDW(034)

I1

I2

R

@ANDW(034)

I1

I2

R

De DM 6144 a DM 6655 no se pueden utilizar para R.

Cuando la condición de ejecución es OFF, ANDW(034) no se ejecuta. Cuandola condición de ejecución es ON, ANDW(034) realiza la operación lógica ANDde los contenidos de I1 y I2 bit-a-bit y envía el resultado a R.

1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1

15 00

0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1

15 00

15 00

I1

I2

R

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el resultado es 0.

N: En ON cuando el bit 15 de R es 1.

5-23-3 SUMA LÓGICA -- ORW(035)

I1: Entrada 1

IR, SR, AR, DM, HR, TC, LR, #

I2: Entrada 2

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

ORW(035)

I1

I2

R

@ORW(035)

I1

I2

R

Limitaciones

Descripción

Ejemplo

Instrucciones lógicas Sección 5-23

Page 296: C200HALPHA Manual Programacion

290

Cuando la condición de ejecución es OFF, ORW(035) no se ejecuta. Cuando lacondición de ejecución es ON, ORW(035) realiza la operación lógica OR de loscontenidos de I1 y I2 bit-a-bit y envía el resultado a R.

1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1

15 00

0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1

15 00

15 00

I1

I2

R

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el resultado es 0.

N: En ON cuando el bit 15 de R es 1.

5-23-4 SUMA LÓGICA EXCLUSIVA -- XORW(036)

I1: Entrada 1

IR, SR, AR, DM, HR, TC, LR, #

I2: Entrada 2

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

XORW(036)

I1

I2

R

@XORW(036)

I1

I2

R

Cuando la condición de ejecución es OFF, XORW(036) no se ejecuta. Cuandola condición de ejecución es ON, XORW(036) realiza la operación lógica ORexclusiva de los contenidos de I1 y I2 bit-a-bit y envía el resultado a R.

1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1

15 00

0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0

15 00

15 00

I1

I2

R

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el resultado es 0.

N: En ON cuando el bit 15 de R es 1.

Descripción

Ejemplo

Descripción

Ejemplo

Instrucciones lógicas Sección 5-23

Page 297: C200HALPHA Manual Programacion

291

5-23-5 SUMA LÓGICA EXCLUSIVA NEGADA -- XNRW(037)

I1: Entrada 1

IR, SR, AR, DM, HR, TC, LR, #

I2: Entrada 2

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés

Áreas de datos de operando

R: Canal de resultado

IR, SR, AR, DM, HR, LR

XNRW(037)

I1

I2

R

@XNRW(037)

I1

I2

R

Cuando la condición de ejecución es OFF, XNRW(037) no se ejecuta. Cuandola condición de ejecución es ON, XNRW(037) realiza la operación lógica ORexclusiva negada de los contenidos de I1 y I2 bit-a-bit y envía el resultado a R.

1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1

15 00

0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

15 00

15 00

I1

I2

R

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM).

EQ: En ON cuando el resultado es 0.N: En ON cuando el bit 15 de R es 1.

5-24 Subrutinas y control de interrupción

5-24-1 SubrutinasLas subrutinas dividen algunas tareas de control complejas o largas en otrasmás pequeñas que permiten reutilizar un conjunto de instrucciones. Cuando elprograma principal llama a una subrutina, el control se transfiere a la subrutina yse ejecutan sus instrucciones. Las instrucciones dentro de una subrutina seescriben de la misma forma que en el programa principal. Una vez ejecutadastodas las instrucciones de subrutina, el control vuelve al programa principal alpunto justamente después del punto del salto (a no ser que se especifique otroen la subrutina).Las subrutinas también se pueden activar mediante interrupciones o mediantela instrucción MCRO(099).

Interrupciones Al igual que las llamadas a subrutina, las interrupciones cortan el flujo de ejecu-ción del programa principal de tal forma que el flujo se puede retomar en esepunto una vez completada la subrutina. Una interrupción está provocada poruna fuente externa, como por ejemplo una señal de entrada de una unidad deentrada de interrupción, o por una interrupción programada. En caso de inter-rupción programada, la señal de interrupción se repite a intervalos regulares.Mientras las llamadas de subrutina se controlan desde el programa principal,las subrutinas activadas por interrupciones se activan cuando se recibe la señalde interrupción.En el caso de interrupción programada, el intervalo de tiempo entre interrupcio-nes es seleccionado por el usuario y es independiente del ciclo del PLC. Esta

Descripción

Subrutinas y control de interrupción Sección 5-24

Page 298: C200HALPHA Manual Programacion

292

capacidad es útil para supervisiones periódicas o ejecución de determinadosprogramas.INT(089) se utiliza para controlar las señales de interrupción recibidas de la uni-dad de entrada de interrupción y también para controlar el programa de lasinterrupciones programadas. INT(089) dispone tales funciones como enmas-carado de interrupciones (es decir se graban pero se ignoran) y borrado de inte--rrupciones.Consultar 5-24-2 Interrupciones para más información.

MCRO(099) La instrucción MACRO permite que una única subrutina sustituya varias subru-tinas que tienen idéntica estructura pero diferentes operandos. La reducción depasos del programa puede ser, por lo tanto, considerable. Consultar 5-24-5MACRO -- MCRO(099) para más información.

5-24-2 InterrupcionesLos PLCs C200HX/HG/HE soportan tanto interrupciones de entrada como in-terrupciones programadas. Las interrupciones detienen la ejecución del pro-grama para ejecutar una subrutina que debe ser ejecutada inmediatamente (in-terrupciones de entrada procedentes de una unidad de entrada de interrupción)o subrutinas que se deben ejecutar periódicamente (interrupciones programa-das).Hay dos modos de interrupción. En modo normal la CPU espera hasta comple-tarse el proceso actual para parar el programa principal. En modo alta veloci-dad, la CPU interrumpe el proceso actual. El modo normal es el modo por defec-to.

La siguiente selección se utiliza para modo de interrupción normal.

DM 6620 0 0 0 0

En modo de interrupción normal, el siguiente proceso se completará una veziniciado incluso aunque se produzca una interrupción. La interrupción se proce-sará tan pronto como se complete el proceso actual.) Servicio de Host Link) Servicio de E/S remotas) Servicio de unidad de E/S especial) Ejecución de instrucción individualUtilizar este modo siempre que se utilicen las subrutinas de interrupción deC200H sin modificación o siempre que sea posible considerar el tiempo derespuesta requerido para interrupciones.

Nota La selección por defecto del C200HX/HG/HE es modo de interrupción normal.

La siguiente selección se utiliza para modo de interrupción de alta velocidad.

DM 6620 1 -- -- --

Modo de interrupción(1 = alta velocidad)

En modo de interrupción de alta velocidad, el siguiente proceso será interrum-pido y será procesada la subrutina de interrupción tan pronto como se genereuna interrupción.) Servicio de Host Link) Servicio de E/S remotas) Servicio de unidad de E/S especiales) Ejecución de instrucción individualUtilizar este modo siempre que el tiempo de respuesta de interrupción debatener una precisión de 1.0 ms.

Nota Si se utiliza el modo de interrupción de alta velocidad no serán necesariamenteconcurrentes los datos dado que, cuando se arranca, no será necesario com-

Modo de interrupciónnormal

Modo de interrupción dealta velocidad

Subrutinas y control de interrupción Sección 5-24

Page 299: C200HALPHA Manual Programacion

293

pletar el servicio de Host Link, servicio de E/S remotas, servicio de unidad deE/S especiales y ejecución de instrucción individual. Si la aplicación lo requiere,el programa se deberá diseñar para que pueda permitir esto. (Ver la sección decoincidencia de datos para más información).

Interrupciones de entrada Cuando se recibe una entrada externa vía unidad de entrada de interrupción, seejecutan las interrupciones de entrada. Hasta dos unidades de entrada de inter-rupción se pueden montar en el bastidor de CPU y cada unidad de entrada deinterrupción dispone de 8 entradas numeradas de IN 0 a IN7.

Las entradas IN0 a IN7 de la primera unidad generan interrupciones #00 a #07 ylas entradas IN0 a IN7 de la segunda unidad generan interrupciones #08 a #15.Genéricamente, las subrutinas #00 a #15 se ejecutan cuando se generan lasinterrupciones #00 a #15.

Interrupciones programadas Las interrupciones programadas se pueden ejecutar a intervalos seleccionadosen unidades de 10 ms o de 1 ms. Se utiliza la interrupción #99 y se ejecuta lasubrutina #99.En la configuración del PLC en DM 6622 se selecciona la unidad utilizada parafijar el intervalo de la interrupción programada.

15 00DM6622

Bit

Habilitar selección de intervalo de interrupción programada00: Selección inhibida (intervalo fijo a 10 ms)01: Habilitada la selección en bits 00 a 07

Selección de intervalo de interrupción programada00: 10 ms01: 1 ms

Prioridad de Interrupción La subrutina especificada será ejecutada cuando se genere una interrupción. Sidurante la ejecución de una subrutina de interrupción se generan más interrup-ciones, éstas no serán procesadas hasta que se complete la ejecución de lasubrutina de interrupción actual. Si se genera más de una interrupción, las sub-rutinas correspondientes se ejecutarán de acuerdo con el siguiente orden deprioridad.Interrupción de entrada 1 > interrupción de entrada 2 > ... > interrupción deentrada 7 > interrupción programada

Las E/S de las unidades de E/S especiales se pueden refrescar desde subruti-nas de interrupción utilizando la instrucción REFRESCO DE E/S (IORF). Si seutiliza el modo de interrupción de alta velocidad, se debe inhibir el refresco en elciclo normal (END refresco y IORF refresco en el programa principal) para launidad de E/S especial que se ha de refrescar en la subrutina de interrupción.Se producirá un error de programación de interrupción (error de sistema FAL8B) si la misma E/S especial se refresca tanto en un programa de interrupcióncomo en un ciclo normal y la E/S no se refrescará dentro de la subrutina de inter-rupción.

E/S especiales ensubrutinas de interrupción

Subrutinas y control de interrupción Sección 5-24

Page 300: C200HALPHA Manual Programacion

294

La configuración del PLC contiene las selecciones en DM 6620 que inhiben elrefresco en el ciclo normal para las unidades de E/S especiales especificadas.Estas selecciones son las siguientes.

Modo de interrupción(1 = alta velocidad)

Bit 15 00

1 0 0 * * * * * * * * * *

Unid. #0

Unid. #1

.

.

.

Unid. #9

DM662012

Nota Sólo en modo de alta velocidad es necesario inhibir el refresco de E/S especialen el ciclo normal para refrescar la E/S especial en una subrutina de interrup-ción. Se ignorará la inhibición de refresco de ciclo normal de E/S especialdurante el modo de interrupción normal y la E/S especial se refrescará tanto enel ciclo normal como en la subrutina de interrupción.

El tiempo de ejecución de subrutinas de interrupción se debe mantener amenos de 10 ms si se utiliza el modo de interrupción de alta velocidad y se pro-graman unidades de E/S especiales, unidades Host Link o unidades de E/Sremotas. Se producirá un error de programación de interrupción (FAL 8B) si eltiempo de ejecución es 10 ms o mayor.

El tiempo de ejecución de subrutina de interrupción con el tiempo de ejecuciónmás largo se envía a SR 262 y el número de dicha subrutina a SR 263.

SR 262

SR 263

0 1 2 3

8 0 * *

Tiempo máx. de ejecución de subrutina de interrupción(en 0.1 ms)

No. de subrutina de interrupción con tiempo máx.de ejecución

Ejemplo: 12.3 ms para subrutina #80

Nota El límite de 10-ms anterior no se aplica cuando se utiliza el modo de interrupciónnormal o cuando no están montadas las unidades anteriores.

Coincidencia de datos Aunque la coincidencia de datos no es un problema para ejecutar instruccionesaritméticas normales o instrucciones de comparación, puede ser un problemacuando se ejecutan instrucciones más largas que gestionan múltiples canales,tales como instrucciones de transferencia de bloque, cuando se utiliza el modode interrupción de alta velocidad y los mismos datos se gestionan tanto en elprograma principal como en la subrutina de interrupción.

Los datos no pueden coincidir en dos situaciones diferentes: 1) si se interrumpeuna operación de escritura de datos en el programa principal y el mismo dato selee en una subrutina de interrupción y 2) si se interrumpe una operación de lec-tura de datos en el programa principal y el mismo dato se escribe en una subru-tina de interrupción.

Si debe tratar datos tanto en el programa principal como en una subrutina deinterrupción, utilizar una programación similar a la mostrada a continuaciónpara verificar la preservación de coincidencia de datos, es decir, enmascarar

Subrutinas y control de interrupción Sección 5-24

Page 301: C200HALPHA Manual Programacion

295

interrupciones mientras se lean/escriban datos que también son tratados enuna subrutina de interrupción.

(@)INT

100

000

000

(@)INT

200

000

000

Canales de datos comunesde lectura y escritura

Enmascarar todaslas interrupciones.

Desenmascarar todaslas interrupciones.

La coincidencia de datos también puede ser un problema si las interrupcionesocurren durante transferencias de datos en servicio para unidades de E/S espe-ciales, E/S remotas o sistemas host link. Para estos, los datos pueden no serconcurrentes en unidades de byte.Utilizar uno de los siguientes métodos para preservar coincidencia de datos enlas situaciones anteriores. El segundo método se aplica sólo para unidades deE/S especiales.) Enmascarar interrupciones en el programa principal mientras se mueven

datos transferidos a/de unidades a diferentes canales y utilizar canales alter-nativos en la subrutina de interrupción.

) Utilizar la instrucción REFRESCO DE E/S en subrutinas de interrupción pararefrescar E/S de unidades de E/S especiales y enmascarar interrupciones enel programa principal mientras se leen/escriben canales de unidad de E/Sespecial.

Subrutinas y control de interrupción Sección 5-24

Page 302: C200HALPHA Manual Programacion

296

5-24-3 LLAMADA A SUBRUTINA -- SBS(091)

N: Número de subrutina

00 a 255

Símbolo de relés Áreas de datos de definidor

SBS(091) N

Limitaciones Los números de subrutina de 00 a 15 se utilizan con interrupciones de entrada yla número 99 para interrupción programada.

Descripción Una subrutina se puede ejecutar colocando SBS(091) en el programa principalen el punto deseado. El número de subrutina utilizado en SBS(091) indica lasubrutina deseada. Cuando se ejecuta SBS(091) (es decir, cuando su condi-ción de ejecución es ON), las instrucciones comprendidas entre la SBN(092)con el mismo número de subrutina y la primera RET(093) después de ella, seejecutan antes de que la ejecución vuelva a la instrucción siguiente a SBS(091)que hizo la llamada.

SBS(091) 00

SBN(092) 00

RET(093)END(001)

Programa principal

Subrutina

Programa principal

SBS(091) se puede utilizar tantas veces como se desee en el programa, esdecir la misma subrutina se puede llamar desde diferentes lugares del pro-grama.

SBS(091) también se puede incluir en un programa para desplazar la ejecucióndel programa de una subrutina a otra, es decir se pueden anidar subrutinas.Una vez completada la segunda subrutina (se ha alcanzado RET(093)), la eje-cución del programa vuelve a la subrutina original, la cual una vez completada,devuelve la ejecución al programa principal. No hay limitación en cuanto a ni-veles de anidado. Una subrutina no se puede llamar a sí misma (es decir,SBS(091) 00 no se puede programar dentro de la subrutina definida conSBN(092) 00). El siguiente diagrama ilustra dos niveles de subrutinas anidadas.

SBN(092) 10 SBN(092) 11 SBN(092) 12

SBS(091) 11

RET(093)

SBS(091) 10 SBS(091) 12

RET(093) RET(093)

Subrutinas y control de interrupción Sección 5-24

Page 303: C200HALPHA Manual Programacion

297

En la siguiente figura se muestra el diagrama de ejecución de dos SBS(091).

SBS(091) 00

SBS(091) 01

SBN(092) 00

RET(093)SBN(092) 01

RET(093)END(001)

Programaprincipal

Subrutinas

A

B

C

D

E

A

A

A

A

B

B

B

B

C

C

C

C

D

D

E

E

Condiciones de ejecuciónOFF para subrutinas 00 y 01

Condición de ejecución ONsólo para subrutina 00

Condición de ejecución ONsólo para subrutina 01

Condición de ejecución ONpara ambas subrutinas 00 y 01

Nota Se generará un error no fatal (error código 8B) si el tiempo de ejecución de unasubrutina excede de 10 ms.

Indicadores ER: El número de subrutina especifica una subrutina inexistente.Una subrutina se llama a sí misma.Se ha llamado una subrutina activa.

AtenciónCuando ER está en ON no se ejecutará SBS(091) y no se llamará a la subrutina.

5-24-4 PRINCIPIO Y FINAL DE SUBRUTINA -- SBN(092)/RET(093)

N: Número de subrutina

000 a 255

Símbolo de relés Áreas de datos de definidor

SBN(092) N

RET(093)

Cada número de subrutina se puede utilizar sólo una vez en SBN(092).

SBN(092) se utiliza para marcar el comienzo de un programa de subrutina;RET(093) se utiliza para marcar el final. Cada subrutina se identifica con unnúmero de subrutina, N, que se programa como un definidor para SBN(092).Este mismo número de subrutina se utiliza en cualquier SBS(091) que llame a lasubrutina (ver 5-24-3 LLAMADA A SUBRUTINA -- SBS(091)). Con RET(093) noes necesario el número de subrutina.Todas las subrutinas se deben programar al final del programa principal.Cuando se han programado una o más subrutinas, el programa principal se eje-cutará hasta la primera SBN(092) antes de volver a la dirección 00000 para elsiguiente scan. Las subrutinas no se ejecutarán a no ser que se llamen conSBS(091).Al final del último programa de subrutina se debe programarEND(001), es decir,después de la última RET(093). END no es necesaria en ningún otro punto delprograma.

Limitaciones

Descripción

Subrutinas y control de interrupción Sección 5-24

Page 304: C200HALPHA Manual Programacion

298

Precauciones Si SBN(092) se coloca por error en el programa principal, inhibirá la ejecucióndel programa pasado ese punto, es decir, la ejecución del programa volverá alprincipio cuando se encuentre SBN(092).Si dentro de una subrutina se ha colocado DIFU(013) o DIFD(014), el bit oper-ando no se pondrá en OFF hasta la siguiente vez que se ejecute la subrutina, esdecir, el bit de operando puede permanecer en ON durante más de un scan.

Indicadores No hay indicadores afectados directamente por estas instrucciones.

5-24-5 MACRO -- MCRO(099)

I1: Primer canal de entrada

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

Áreas de datos de operando

O1: Primer canal de salida

IR, SR, AR, DM, HR, LR

MCRO(099)

N

I1

O1

@MCRO(099)

N

I1

O1

N: Número de subrutina

00 a 255

Limitaciones I1 a I1+3 deben estar en la misma área de datos, así como O1 y O1+3.

La instrucción MACRO permite que una sola subrutina sustituya a varias subru-tinas que tienen idéntica estructura pero diferentes operandos. Hay 4 canalesde entrada, de SR 290 a SR293 y 4 canales de salida, de SR 294 a SR 297,asignados a MCRO(099). Estos 8 canales se utilizan en la subrutina y tomansus contenidos de I1 a I1+3 y de O1 a O1+3 cuando se ejecuta la subrutina.Cuando la condición de ejecución es OFF, MCRO(099) no se ejecuta. Cuandola condición de ejecución es ON, MCRO(099) copia los contenidos de I1 a I1+3a SR 290 a SR 297, copia los contenidos de O1 a O1+3 a SR 294 a SR 297, yluego llama y ejecuta la subrutina especificada en N. Cuando la subrutina estácompleta, los contenidos de SR 294 a SR 297 se transfieren luego de nuevo aO1 a O1+3 antes de que se complete MCRO(099).En este ejemplo, los contenidos de DM 0010 a DM 0013 se copian en SR 290 aSR 293, los contenidos de DM 0020 a DM 0023 se copian en SR 294 a SR 297 yse llama y ejecuta la subrutina 10. Cuando la subrutina está completa, los conte-nidos de SR 294 a SR 297 se copian otra vez en DM 0020 a DM 0023.

MCRO(099) 10DM 0010DM 0020

SBN(092) 10

RET(093)END(001)

Programa principal

Subrutina

Programa principal

Nota 1. Las subrutinas para macros se programan igual que las otras subrutinas,excepto que los contenidos de SR 290 a SR 297 se transfieren desde loscanales de entrada y salida designados.

Descripción

Subrutinas y control de interrupción Sección 5-24

Page 305: C200HALPHA Manual Programacion

299

2. No sólo los canales de E/S externos, sino los canales de E/S internos sepueden utilizar para I1 y O1.

3. De SR 290 a SR 297 se pueden utilizar como bits de trabajo cuando no seutilizan para programas de macro.

4. Las instrucciones MCRO(099) se pueden anidar pero verificar que se pre-servan los datos dado que las instrucciones utilizan los mismos 8 canalesde E/S (SR 290 a SR 297).

Precauciones MCRO(099) sólo se puede utilizar para secciones de programa que se puedenescribir utilizando cuatro o menos canales de entrada consecutivos y/o cuatro omenos canales de salida consecutivos. Es por lo tanto generalmente necesarioconsiderar el diseño del programa y del sistema en conjunto para obtener todaslas ventajas de programación de macros.

Prestar atención para que los canales de entrada y de salida correspondancorrectamente con los canales de entrada y de salida de macro.

Indicadores ER: No existe una subrutina para el número de subrutina especificado.

Un operando ha excedido el área de datos.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

Se ha llamado una subrutina a sí misma.

Se ha llamado una subrutina activa.

Ejemplo Los siguientes ejemplos muestran la utilización de cuatro instruccionesMCRO(099) que acceden a la misma subrutina. La sección de programa de laparte izquierda muestra el mismo programa sin utilizar MCRO(099).

1000000000 10001

10000

1000100001 00002

1050000200 10501

10500

1050100201 00202

1200000500 12001

12000

1200100501 00502

1500001000 15001

15000

1500101001 01002

2940029000 29401

29400

2940129001 29002

RET(093)

MCRO(099)

090

000

100

25313

MCRO(099)

090

002

105

MCRO(099)

090

005

120

MCRO(099)

090

010

150

Indicador de siempre en ON

SBN(092) 090

Subrutinas y control de interrupción Sección 5-24

Page 306: C200HALPHA Manual Programacion

300

5-24-6 CONTROL DE INTERRUPCIÓN -- INT(089)

C: Código de control

# (000, 001, 002, 100, or 200)

N: Tipo de interrupción

# (000, 001 ó 004)

Símbolo de relés

Áreas de datos de operando

D: Datos de control

IR, AR, DM, HR, TC, LR, #

INT(089)

C

N

D

@INT(089)

C

N

D

Limitaciones D debe estar entre #0000 y #00FF cuando N=000 y C=000 ó 001.D debe ser BCD entre #0001 y #9999 cuando N=004 y C=000 ó 001.

INT(089) se utiliza para controlar interrupciones y realizar una de 11 funcionesdependiendo de los valores de C y N. Como se indica en las siguientes tablas,seis de las funciones actúan sobre interrupciones de entrada, tres sobre inter-rupción programada y las otras dos enmascaran o desenmascaran todas lasinterrupciones.

Interrup--ción

Valor de C Función INT (----) Comentarios

Interrup-ciones dee t ada de

000 Enmascarar/desenmascararinterrupciones de entrada

Bits 00 a 07 de D indi-can entradas 00 a 07.

entrada deunidad 0(N=000)

001 Borrar interrupciones deentrada(N=000)

002 Leer estado de máscaraactual

Escribe estado en D.

Interrup-ciones deentrada de

000 Enmascarar/desenmascararinterrupciones de entrada

Bits 00 a 07 de D indi-can entradas 00 a 07.

entrada deunidad 1(N=001)

001 Borrar interrupciones deentrada(N=001)

002 Leer estado de máscaraactual

Escribe estado en D.

Programada

(N=004)000 Seleccionar intervalo de inter-

rupción( 00 )

001 Selección de tiempo para laprimera interrupción

002 Leer intervalo de interrupción

Las 2 funciones siguientes dependen sólo del valor de C.

Valor de C Función INT (089)

100 Enmascara todas las interrup-ciones

200 Desenmascara todas lasinterrupciones

Esta función se utiliza para enmascarar y desenmascarar interrupciones deentrada 00 a 07 de la unidad de entrada de interrupción 0 (N=000) o 2 (N=001).Las entradas enmascaradas se graban, pero se ignoran. Cuando se enmas-cara una entrada, el programa de interrupción para ella se ejecutará tan prontocomo el bit se desenmascare (a no ser que se borre antes ejecutando INT(089)con C=001 y N=000).Seleccionar el bit correspondiente en D a 0 para desenmascarar o a 1 paraenmascarar una entrada de interrupción de E/S. Los bits 00 a 07 corresponden00 a 07.

Esta función se utiliza para borrar entradas de interrupción de E/S de 00 a 07 dela unidad de entrada de interrupción 0 (N=000) o 2 (N=001). Dado que las entra-

Descripción

Enmascarar/desenmascararinterrupciones de entrada(N=000 ó 001, C=000)

Borrar interrupciones deentrada (N=000 ó 001,C=001)

Subrutinas y control de interrupción Sección 5-24

Page 307: C200HALPHA Manual Programacion

301

das de interrupción están grabadas, las interrupciones enmascaradas seránservidas después de quitar la máscara, a no ser que se borren primero.

Seleccionar el bit correspondiente de D a 1 para borrar una entrada de interrup-ción. Los bits 00 a 07 son los correspondientes a 00 a 07.

Esta función se utiliza para escribir el estado de máscara actual para interrup-ciones de entrada 00 a 07 de la unidad de entrada de interrupción 0 (N=000) o 2(N=001) en el canal D. El bit correspondiente se pondrá en ON si la entrada estáenmascarada. (Los bits 00 a 07 son los correspondientes a 00 a 07.)

Esta función se utiliza para seleccionar el intervalo entre interrupciones progra-madas. El contenido de D (BCD: 0001 a 9999) se multiplica por la unidad detiempo de interrupción programada (1 ms ó 10 ms) para obtener el intervalo deinterrupción programada.

La unidad de tiempo de interrupción programada se selecciona en la configura-ción del PLC en DM 6622. Consultar 3-6-5 Configuración del PLC para másinformación sobre selecciones de esta unidad de tiempo.

Esta función se utiliza para seleccionar el tiempo de la primera interrupción pro-gramada. El contenido de D (BCD: 0000 a 9999) se multiplica por la unidad detiempo programada (1 ms o 10 ms) para obtener el tiempo de la primera inter-rupción programada. La unidad de tiempo de interrupción programada se selec-ciona en DM 6622 de la configuración del PLC. Consultar 3-6-5 Configuracióndel PLC para más información sobre selecciones de esta unidad de tiempo.

Verificar que se selecciona el tiempo para la primera interrupción. Si esta selec-ción no se hace, el intervalo para la primera interrupción (seleccionado conN=004, C=000) será indeterminado.

Utilizar el indicador de primer ciclo (SR 25315) para la condición de ejecuciónpara INT(089) cuando se selecciona el tiempo para la primera interrupción(C=001). La interrupción programada puede no darse nunca si se seleccionacontinuamente C=001.

Esta función se utiliza para escribir la selección actual para el intervalo de inter-rupción programada en el canal D.

Esta función se utiliza para enmascarar o desenmascarar todos los procesos deinterrupción. Las entradas enmascaradas se graban, pero se ignoran. Lasentradas enmascaradas serán servidas tan pronto como se desenmascaren.Esta función enmascara o desenmascara todas las interrupciones al mismotiempo y es independiente de las máscaras creadas con otras funciones.

El dato de control, D, y el tipo de interrupción, N, no se utiliza para esta función.Seleccionarlos a #0000.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

C, y/o N no están dentro de los valores especificados.

Todas las interrupciones dentro de la subrutina se enmascaran o de-senmascaran.

Ejemplo 1: Interrupción de entradaEste ejemplo muestra cómo desenmascarar una entrada de interrupción con-creta. Las subrutinas de interrupción de entrada serán ejecutadas cuando laCPU reciba la entrada de interrupción correspondiente, independientementedel punto en el ciclo de la CPU. Estas interrupciones son útiles cuando se utili-zan secciones del programa de longitud indeterminada, tales como programasde evento.

Todas las entradas de interrupción se enmascaran al inicio de la operación y laentrada de interrupción deseada se desenmascara utilizando INT(089) conN=000 y C=000. Como se muestra en el siguiente diagrama, la subrutina debe-ría ejecutarse si hubo una entrada de interrupción de entrada 00 de unidad de

Lectura de estado demáscara actual (N=000 ó001, C=002)

Seleccionar intervalo deinterrupción(N=004, C=000)

Selección de tiempo para laprimera interrupción(N=004, C=001)

Leer intervalo deinterrupción (N=004,C=002)Enmascarar/desenmascarartodas las interrupciones(C=100/200)

Subrutinas y control de interrupción Sección 5-24

Page 308: C200HALPHA Manual Programacion

302

entrada de interrupción 0 cuando dicha entrada de interrupción estaba desen-mascarada.

LD 25315INT(089) 000

000#00FE

SBN(092) 00

RET(093)END(001)

Programa principal

Subrutina

Programa principal

Interrupción deentrada de interrup-ción 00

Sólo entrada deinterrupción 00enmascarada.

Indicador deprimer ciclo

Nota Dependiendo de la selección de DM 6621 en la Configuración del PLC, el servi-cio de Host Link, servicio de E/S remotas, servicio de unidad de E/S especial yejecución de instrucción individual se completará antes de ejecutar la subrutina.Consultar más detalles en página 292.

Subrutinas y control de interrupción Sección 5-24

Page 309: C200HALPHA Manual Programacion

303

Este ejemplo muestra cómo seleccionar el intervalo entre interrupciones pro-gramadas. Las subrutinas de interrupción programada se ejecutarán a interva-los fijos, independientemente del punto en el ciclo de la CPU. Esta interrupciónse utiliza para secciones de programa tales como programas de monitorizaciónregular.La interrupción programada se inhibe al arrancar la operación (el intervalo deinterrupción programada es 0), por lo que se debe seleccionar el tiempo para laprimera interrupción y el intervalo de interrupción programada utilizandoINT(089) con N=004 y C=001/000. En el siguiente diagrama, la subrutina deb-ería ejecutarse cada 20 ms si la unidad de tiempo de interrupción programadase selecciona a 10 ms en DM 6622 de la configuración del PLC.

LD 25315INT(089) 001

004#0002

INT(089) 000004#0002

SBN(092) 9900

RET(093)END(001)

Programa principal

Subrutina

Programa principal

Selecciona a 20 ms eltiempo para la pri-mera interrupción.

Selecciona a 20 ms elintervalo de interrupción

programada.

Vuelve a la direccióndel programa antesde la interrupción

Interrupción progra-mada cada 120 ms.

Indicador de primerciclo

Nota Dependiendo de la selección de DM 6621 en la Configuración del PLC, el servi-cio de Host Link, servicio de E/S remotas, servicio de unidad de E/S especial yejecución de instrucción individual se completará antes de ejecutar la subrutina.Consultar más detalles en página 292.

Ejemplo 2: Interrupciónprogramada

Subrutinas y control de interrupción Sección 5-24

Page 310: C200HALPHA Manual Programacion

304

5-25 Instrucciones de paso

Las instrucciones de paso STEP(008) y SNXT(009) se utilizan juntas paraseleccionar puntos de rotura entre secciones en un programa largo, de tal formaque las secciones se pueden ejecutar como unidades y resetear al finalizar.Normalmente se definirá una sección del programa correspondiente a un pro-ceso real de la aplicación. (Ver los ejemplos de aplicación más adelante en estasección). Un paso es como un programa normal, excepto que no se puedenincorporar ciertas instrucciones (por ejemplo IL(002)/ILC(003), JMP(004)/JME(005)).

5-25-1 DEFINICIÓN DE PASO Y COMIENZO DEPASO--STEP(008)/SNXT(009)

B: Bit de control

IR, SR, AR, HR, LR

Símbolo de relés Áreas de datos de definidor

STEP(008) B STEP(008)

B: Bit de control

IR, SR, AR, HR, LR

SNXT(009) B

Limitaciones Todos los bits de control deben ser del mismo canal y además consecutivos.

De IR 29800 a IR 29915 no se pueden utilizar para B.

STEP(008) utiliza un bit de control en las áreas IR o HR para definir el inicio deuna sección del programa llamado paso. STEP(008) no necesita condición deejecución, es decir el propio bit de control sustituye a la condición de ejecución.Para iniciar la ejecución del paso, SNXT(009) se utiliza con el mismo bit de con-trol utilizado para STEP(008). Si SNXT(009) se ejecuta con una condición deejecución ON, se ejecuta el paso con el mismo bit de control. Si la condición deejecución es OFF, el paso no se ejecuta. La instrucción SNXT(009) debe escri-birse en el programa de tal forma que se ejecute antes de que el programaalcance el paso que lo arranca. También se puede utilizar en diferentes lugaresantes del paso, para controlar el paso de acuerdo con dos condiciones de ejecu-ción diferentes (ver el ejemplo 2). Todo paso del programa que no se arranquecon SNXT(009) no será ejecutado.

Una vez que se utiliza SNXT(009) en el programa, la ejecución del paso conti-nuará hasta que STEP(008) se ejecute sin un bit de control. STEP(008) sin unbit de control debe estar precedido de SNXT(009) con un bit de control vacío.Este puede ser cualquier IR o HR no utilizado. No puede ser un bit de controlutilizado en STEP(008).

La ejecución de un paso se completa por la ejecución del siguiente SNXT(009) oponiendo a OFF el bit de control para el paso (ver ejemplo 3). Cuando se com-pleta el paso, todos los bits IR y HR en el paso se ponen a OFF y los bits utiliza-

Descripción

Instrucciones de paso Sección 5-25

Page 311: C200HALPHA Manual Programacion

305

dos en KEEP(011) mantienen el estado. A continuación se muestran dos pasossimples.

SNXT(009) LR 2000

STEP(008) LR 2000

00000

Paso controlado por LR 2000

SNXT(009) LR

2001

STEP(008) LR

2001

00001

Paso controlado por LR 2001

SNXT(009) LR

2002

STEP(008)

00002

Inicio ejecución de paso

Fin ejecución de paso

Paso 1

Paso 2

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 SNXT(009) LR 200000002 STEP(008) LR 2000

Paso controlado por LR 2000.

00100 LD 0000100101 SNXT(009) LR 2001

00102 STEP(008) LR 2001

Paso controlado por LR2001.

00200 LD 0000200201 SNXT(009) LR 200200202 STEP(008) ---

Los pasos se pueden programar consecutivamente. Cada paso debe comenzarcon STEP(008) y generalmente finaliza con SNXT(009) (ver una excepción enel ejemplo 3). Cuando los pasos se programan en serie, son posibles tres tiposde ejecución: secuencial, bifurcado o paralelo. Las condiciones de ejecución, yel posicionamiento de SNXT(009), determinan cómo serán ejecutados lospasos. Los tres ejemplos siguientes demuestran estos tres tipos de ejecuciónde paso.

Enclavamientos, saltos, SBN(092) y END(001) no se pueden utilizar dentro deprogramas de paso.

Los bits utilizados como bits de control, no se deben utilizar en ninguna parte delprograma, a no ser que se utilicen para controlar la operación del paso (verejemplo 3). Todos los bits de control deben ser del mismo canal y consecutivos.

Si se utilizan como bits de control bits IR o LR, su estado se perderá durantecortes de alimentación. Si es necesario mantener el estado para reiniciar la eje-cución en el mismo paso, se deben utilizar bits de HR.

Precauciones

Instrucciones de paso Sección 5-25

Page 312: C200HALPHA Manual Programacion

306

Indicadores 25407: Indicador de inicio de paso; se pone en ON durante un scan cuando seejecuta STEP(008) y se puede utilizar para resetear contadores enpasos si fuera necesario como se muestra a continuación.

SNXT(009) 01000

CP

R

CNT 01

#0003

00000

00100

25407

STEP(008) 01000

1 Scan

25407

01000

Inicio

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 SNXT(009) 0100000002 STEP(008) 0100000003 LD 00100

00004 LD 2540700005 CNT 01

# 0003

EjemplosLos tres ejemplos siguientes muestran los tres tipos posibles de control de eje-cución. El ejemplo 1 muestra una ejecución secuencial; ejemplo 2, ejecuciónbifurcada; y ejemplo 3, ejecución paralelo.

El siguiente sistema requiere tres procesos, carga, ensamblaje e inspección/descarga. Estos procesos se deben ejecutar secuencialmente reseteandocada proceso antes de pasar al siguiente. Los diversos sensores (SW1, SW2,SW3 y SW4) indican cuando han de empezar y finalizar cada proceso.

SW 1

SW 2SW 3

SW 4

Carga Ensamblaje Inspección/Descarga

Ejemplo 1:Ejecución secuencial

Instrucciones de paso Sección 5-25

Page 313: C200HALPHA Manual Programacion

307

El siguiente es un diagrama de flujo del proceso y los interruptores que se utili-zan para controlar la ejecución.

Proceso A

Proceso B

Proceso C

Carga

Ensamblaje

Inspección/Descarga

SW1

SW2

SW3

SW4

Instrucciones de paso Sección 5-25

Page 314: C200HALPHA Manual Programacion

308

El programa para este proceso utiliza el tipo más básico de programación depaso: cada paso se completa con una sola SNXT(009) que inicia la ejecucióndel siguiente paso. Cada paso arranca cuando el interruptor que indica que elpaso anterior se ha completado, se pone en ON.

SNXT(009) 12800

00001 (SW1)

STEP(008) 12800

SNXT(009) 12801

STEP(008) 12801

SNXT(009) 12802

STEP(008) 12802

SNXT(009) 12803

STEP(008)

Proceso A

Proceso B

Proceso C

00002 (SW2)

00003 (SW3)

00004 (SW4)

Proceso Aarrancado.

Reset proceso A.Proceso B arrancado.

Reset proceso B.Proceso C arrancado.

Reset proceso C.

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000100001 SNXT(009) 1280000002 STEP(008) 12800

Proceso A

00100 LD 0000200101 SNXT(009) 1280100102 STEP(008) 12801

Proceso B

00100 LD 0000300101 SNXT(009) 1280200102 STEP(008) 12802

Proceso C

00200 LD 0000400201 SNXT(009) 1280300202 STEP(008) ---

El siguiente proceso necesita que se procese un producto de una de dos for-mas, dependiendo de su peso, antes de imprimirlo. El proceso de impresión es

Ejemplo 2:Ejecución bifurcada

Instrucciones de paso Sección 5-25

Page 315: C200HALPHA Manual Programacion

309

el mismo independientemente del primer proceso utilizado. Varios sensoresindican el principio y final de cada proceso.

SW A1 SW A2

SW B1 SW B2

Proceso CPesaje

Proceso B

Proceso A

ImpresoraSW D

El siguiente es el diagrama de flujo del proceso y los interruptores utilizadospara control de ejecución. Aquí se utiliza el proceso A o el proceso B depen-diendo del estado de SW A1 y SW B1.

Proceso A

Proceso C

Fin

SW A1 SW B1

SW A2 SW B2

SW D

Proceso B

Instrucciones de paso Sección 5-25

Page 316: C200HALPHA Manual Programacion

310

El programa para este proceso, comienza con dos instrucciones SNXT(009)que arrancan los procesos A y B. Dado que se han programado el proceso00001 (SW A1) y el 00002 (SB B1), sólo uno de ellos se ejecutará para arrancarel proceso A o B. Ambos pasos para estos procesos finalizan con unaSNXT(009) que arranca el paso para el proceso C.

SNXT(009) HR 0001

00002 (SW B2)

STEP(008) HR 0000

SNXT(009) HR 0002

STEP(008) HR 0001

SNXT(009) HR 0002

STEP(008) HR 0002

SNXT(009) HR 0003

STEP(008)

Proceso A

Proceso B

Proceso C

00003 (SW A2)

00004 (SW B2)

00005 (SW D)

Proceso Aarrancado.

Reset proceso A.Proceso C arrancado.

Proceso B reset.Proceso C arrancado.

Proceso C reset.

00001 (SW A1)

SNXT(009) HR 0000

00002 (SW B2)

00001 (SW A1)

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000100001 AND NOT 0000200002 SNXT(009) HR 000000003 LD NOT 0000100004 AND 0000200005 SNXT(009) HR 000100006 STEP(008) HR 0000

Proceso A

00100 LD 0000300101 SNXT(009) HR 000200102 STEP(008) HR 0001

Proceso B

00100 LD 0000400101 SNXT(009) HR 000200102 STEP(008) HR 0002

Proceso C

00200 LD 0000500201 SNXT(009) HR 000300202 STEP(008) ---

Instrucciones de paso Sección 5-25

Page 317: C200HALPHA Manual Programacion

311

En el siguiente ejemplo, es necesario que dos partes de un producto pasencada uno de ellos dos procesos antes de juntarse en un quinto proceso. Variossensores indican el principio y final de cada proceso.

Proceso C

SW1

SW2

Proceso A SW3

SW4

Proceso D

Proceso B

Proceso E

SW6

SW5 SW7

El siguiente es el diagrama de flujo del proceso y los interruptores utilizadospara controlar la ejecución. El proceso A y el proceso C arrancan a la vez.Cuando acaba el proceso A, empieza el proceso B; cuando finaliza el procesoC, arranca el proceso D. Una vez finalizados los procesos B y D, arranca el pro-ceso E.

Proceso A

Proceso E

Fin

Proceso C

SW7

Proceso B Proceso D

SW3 SW4

SW 1 y SW2 en ON

SW5 y SW6 en ON

El programa para este ejemplo, empieza con dos instrucciones SNXT(009) quearrancan los procesos A y C. Estas instrucciones parten de la misma línea deinstrucción y se ejecutan siempre a la vez, arrancando los pasos para A y C. Unavez finalizados los pasos para A y C, se arrancan inmediatamente los pasospara los procesos B y D.

Una vez finalizados el proceso A y el proceso D (es decir cuando el estado deambos procesos sea ON--, pero SW5 y SW6 se ponen en ON), los procesos B yD se resetean a la vez mediante SNXT(009) al final de la programación paraproceso B. Aunque no hay SNXT(009) al final del proceso D, su bit de control sepone a OFF ejecutando SNXT(009) LR 0004. Es decir LR 0003 se pone a OFFcuando se ejecuta SNXT(009) LR 0004, el proceso B se resetea directamente yel proceso D se resetea indirectamente antes de ejecutar el paso para el pro-ceso E.

Ejemplo 3:Ejecución paralelo

Instrucciones de paso Sección 5-25

Page 318: C200HALPHA Manual Programacion

312

STEP(008) LR 0000

SNXT(009) LR 0001

STEP(008) LR 0001

STEP(008) LR 0004

SNXT(009) LR 0005

STEP(008)

Proceso A

Proceso B

Proceso C

00002 (SW3)

00005 (SW7)

Proceso A arrancado.

Proceso A reset.Proceso B arrancado.

Proceso E reset.

00001 (SW1 y SW2))

SNXT(009) LR 0000

SNXT(009) LR 0002

Proceso C arrancado.

01101

SNXT(009) LR 0004

00004 (SW5 y SW6)

LR 0003

STEP(008) LR 0002

Proceso E arrancado.

Utilizado paraponer a OFFel proceso D.

00003 (SW4)

SNXT(009) LR 0003

STEP(008) LR 0003

Proceso C reset.Proceso D arrancado.

Proceso D

Proceso E

Instrucciones de paso Sección 5-25

Page 319: C200HALPHA Manual Programacion

313

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000100001 SNXT(009) LR 000000002 SNXT(009) LR 000200003 STEP(008) LR 0000

Proceso A

00100 LD 0000200101 SNXT(009) LR 000100102 STEP(008) LR 0001

Proceso B

00100 LD 0110100101 OUT LR

000300101 AND 0000400101 SNXT(009) LR 0004

00102 STEP(008) LR 0002

Proceso C

00200 LD 0000300201 SNXT(009) LR 000300202 STEP(008) LR 0003

Proceso D

00300 STEP(008) LR 0004

Proceso E

00400 LD 0000500401 SNXT(009) LR 000500402 STEP(008) ---

5-26 Instrucciones especialesLas instrucciones de esta sección se utilizan para diversas operaciones comomensajes y códigos de error, contaje de bits en ON, selección de temporizadorde guarda y refresco de E/S durante la ejecución del programa.

5-26-1 ALARMA DE ERROR, RESET -- FAL(006) yALARMA DE ERROR FATAL -- FALS(007)

N: Número FAL

# (00 a 99)

Símbolo de relés Áreas de datos de definidor

@FAL(006) NFAL(006) N

N: Número FAL

# (01 a 99)FALS(007) N

Limitaciones FAL(006) y FALS(007) comparten los mismos números FAL. Verificar que seutiliza un número para FAL(006) o para FALS(007), pero no para ambos.

El objeto de FAL(006) y FALS(007) es que el programador pueda obtenernúmeros de error para utilizar en operación, mantenimiento y depuración.Cuando se ejecuta con una condición de ejecución ON, cualquiera de estasinstrucciones mandará un número FAL a los bits 00 a 07 de SR 253. El númeroFAL que se envía puede ser de 01 a 99 y se introduce como el definidor paraFAL(006) o FALS(007). FAL(006) con un definidor de 00 se utiliza para resetearesta área (ver más adelante).

25307 25300

X101 X100

Area FAL

FAL(006) produce un error no fatal y FALS(007) produce un error fatal. Cuandose ejecuta FAL(006) con una condición de ejecución ON, el indicador ALARM/ERROR del frontal de la CPU parpadeará, pero la operación del PLC conti-nuará. Cuando se ejecuta FALS(007) con una condición de ejecución ON, elindicador ALARM/ERROR se encenderá y se parará la operación del PLC.

Descripción

Instrucciones especiales Sección 5-26

Page 320: C200HALPHA Manual Programacion

314

El sistema también genera códigos de error para el área FAL.

En memoria se retendrán hasta 3 códigos de error FAL, aunque sólo uno deellos esté disponible en el área FAL. Para acceder a los otros códigos de FAL,resetear el área de FAL ejecutando FAL(006) 00. Cada vez que se ejecutaFAL(006) 00, se moverá otro error FAL al área FAL borrando el que ya estabaallí.

FAL(006) 00 también se utiliza para borrar mensajes programados con lainstrucción MSG(046).Si no se puede borrar el área FAL, como sucede generalmente cuando se eje-cuta FALS(007), primero eliminar la causa del error y luego borrar el área FALmediante la consola de programación o SYSWIN.

5-26-2 TIEMPO DE CICLO -- SCAN(018)

Mi: Multiplicador (BCD)

IR, SR, AR, DM, HR, TC, LR, #

000: No utilizado.

Símbolo de relés

Áreas de datos de operando

000: No utilizado.

SCAN(018)

Mi

000

000

@SCAN(018)

Mi

000

000

Limitaciones Mi debe estar en BCD. Sólo se utilizan los tres dígitos de la derecha de Mi.

Descripción SCAN(018) se utiliza para seleccionar un tiempo de ciclo mínimo. Mi es eltiempo de ciclo mínimo que se seleccionará en décimas de milisegundo, esdecir, si Mi es 1200, el tiempo de ciclo mínimo será 120.0 ms. El rango de selec-ción es de 000.0 a 999.0 segundos.Si el tiempo de ciclo real es menor que el tiempo de ciclo seleccionado conSCAN(018), la CPU esperará hasta que transcurra el tiempo fijado antes dearrancar el siguiente ciclo. Si el tiempo de ciclo real es superior al seleccionado,éste se ignorará y el programa se ejecutará hasta el final.

Indicadores ER: No existe el canal de DM/EM direccionado indirectamente. (Contenidodel canal de *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

Mi no está en BCD.

5-26-3 SEGUIMIENTO DE DATOS -- TRSM(045)El seguimiento de datos se puede utilizar para facilitar la depuración de progra-mas. Para seleccionar y utilizar esta función se ha de disponer de un ordenadorcon el SYSWIN; con la consola de programación no se puede efectuar segui-miento de datos. En el manual de operación del SYSWIN se describe detallada-mente esta función. Aquí se indica el símbolo de relés y se muestra un programaejemplo.

Símbolo de relés

TRSM(045)

TRSM(045) se utiliza en el programa para señalar donde se deben almacenaren la memoria de rastreo los datos especificados. Se pueden designar hasta 12bits y hasta 3 canales para rastreo (ver el manual de operación SYSWIN).

TRSM(045) no está controlada por una condición de ejecución, sino por dos bitsdel área AR: AR 2515 y AR 2514. AR 2515 es el bit de inicio de muestreo. Este

Borrado de errores

Borrar mensajes

Descripción

Instrucciones especiales Sección 5-26

Page 321: C200HALPHA Manual Programacion

315

bit se pone a ON para iniciar el proceso de muestreo para el seguimiento. Estebit no se debe poner a ON por programa, sino mediante un periférico. AR 2514es el bit de inicio de seguimiento. Cuando está en ON, los datos especificadosse graban en la memoria trace. Este bit se puede poner a ON por programa omediante la consola de programación. También se puede fijar un retardo o ade-lanto para alterar el punto real de comienzo de seguimiento.

Los datos se pueden grabar de cualquiera de las tres formas siguientes:TRSM(045) se puede colocar en uno o varios puntos en el programa para indi-car donde se han de seguir los datos especificados. Si no se utiliza TRSM(045),los datos especificados serán seguidos cuando se ejecute END(001). El tercermétodo implica la selección de un temporizador de intervalo desde un periféricode tal forma que los datos especificados serán seguidos a intervalos regularesindependientes del tiempo de scan (consultar Manual de Operación SYSWIN).

TRSM(045) se puede incorporar en cualquier lugar en un programa, cualquiernúmero de veces. Los datos almacenados en la memoria de rastreo se puedenvisualizar mediante la consola de programación, ordenador, etc.

Bits de control AR e IndicadoresLos siguientes bits de control e indicadores se utilizan durante el seguimiento dedatos. El indicador de seguimiento estará en ON durante operaciones de segui-miento. El indicador de seguimiento completado se pondrá en ON cuando se hallenado la memoria de rastreo.

Indicador Función

AR 2515 Bit iniciar muestreo

AR 2514 Bit iniciar seguimiento

AR 2513 Indicador de seguimiento

AR 2512 Indicador de seguimiento completo

Si TRSM(045) ocurre dentro de un bloque de JMP(008) -- JME(009), TRSM nose ejecutará cuando la condición de salto es OFF.

Ejemplo El siguiente ejemplo muestra el programa y operación básica para seguimientode datos. Forzar a set el bit iniciar muestreo (AR 2515) para comenzar el mues-treo. Este bit no se debe poner a ON por programa. Los datos se leen y se alma-cenan en la memoria de rastreo.Cuando IR 00000 está en ON, el bit de iniciar seguimiento (AR 2514) también sepone a ON y la CPU mira el retardo y marca consecuentemente la memoria derastreo. Esto puede significar que algunas de las muestras ya hechas serángrabadas en la memoria (retardo negativo) o que se harán más muestras antesde grabarlas (retardo positivo).Los datos muestreados se graban en la memoria de rastreo, saltando al princi-pio de la memoria una vez alcanzado el final y continuando hasta el marcador deinicio. Esto puede suponer que los datos grabados previamente (es decir datosde esta muestra que cae antes del marcador de inicio) se sobreescriban (estoes especialmente cierto si el retardo es positivo). El retardo negativo no puedeser tal que el dato requerido se ejecutara antes de iniciarse el muestreo.

Precauciones

Instrucciones especiales Sección 5-26

Page 322: C200HALPHA Manual Programacion

316

TRSM(045)

00000AR

2514

AR 2513 en ON con seguimiento00200

00201AR 2512 en ON cuando operación completa

Inicio seguimiento de datos

Designa el puntopara seguimiento

Indica que el seguimientose ha completado

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 000000001 OUT AR 251400002 TRSM(045)00003 LD AR 2513

00004 OUT 0020000005 LD AR 251200006 OUT 00201

Indica que el seguimientoestá en progreso

5-26-4 VISUALIZACIÓN DE MENSAJE -- MSG(046)

FM: Primer canal de mensaje

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

MSG(046)

FM

@MSG(046)

FM

Limitaciones FM y FM+7 deben estar en la misma área de datos.

Cuando la condición de ejecución es ON, MSG(046) lee ocho canales de códigoASCII extendido desde FM a FM+7 y visualiza el mensaje en la consola de pro-gramación. El mensaje visualizado puede ser de hasta 16 caracteres de largo,es decir, cada caracter ASCII necesita ocho bits (dos dígitos). Consultar Apén-dice K, códigos ASCII.Si el mensaje no necesita de los ocho canales, se puede cortar en cualquierpunto introduciendo“0D.” Cuando se encuentra en un mensaje 0D, no se leeránmás canales, pudiéndose utilizar el resto para otros propósitos.

En memoria pueden estar contenidos hasta tres mensajes. Una vez en el buffer,se pueden visualizar en una secuencia primero entrar, primero en salir. Dadoque en un solo scan se pueden producir más de tres mensajes, hay un esquemade prioridades basado en el área donde están almacenados los mensajes, paraseleccionar aquéllos que se guardarán en el buffer.

La prioridad de las áreas de datos es la siguiente:

LR > IR > HR > AR > TC > DM > SRDentro de la misma área, tienen prioridad los valores de dirección másbaja.

En mensajes direccionados indirectamente (es decir *DM), tienen prio-ridad las direcciones más bajas finales de DM.

Para borrar un mensaje, ejecutar FAL(006) 00 o borrarlo mediante la consola deprogramación o SYSWIN.Si los datos del mensaje cambian mientras se está visualizando, el display tam-bién cambiará.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

Descripción

Almacenamiento yprioridad de mensajes

Borrar mensajes

Instrucciones especiales Sección 5-26

Page 323: C200HALPHA Manual Programacion

MSGABCDEFGHIJKLMNOP

317

El siguiente ejemplo muestra el display que se producirá para la instrucción ydatos dados cuando 00000 esté en ON. Si 00001 se pone en ON, se borra elmensaje.

MSG(046)

DM 0010

FAL(006) 00

00000

00001

Dirección Instrucción Operandos

00000 LD 0000000001 MSG(046)

DM 001000002 LD 0000100003 FAL(006) 00

Contenidos de DM EquivalenteASCII

DM 0010 4 1 4 2 A B

DM 0011 4 3 4 4 C D

DM 0012 4 5 4 6 E F

DM 0013 4 7 4 8 G H

DM 0014 4 9 4 A I J

DM 0015 4 B 4 C K L

DM 0016 4 D 4 E M N

DM 0017 4 F 5 0 O P

5-26-5 VISUALIZAR MENSAJE DE 32 CARACTERES -- LMSG(047)

S: Primer canal fuente (ASCII)

IR, SR, AR, DM, HR, TC, LR

---: No utilizado.

Seleccionado a 000

Símbolo de relés

Áreas de datos de operando

---: No utilizado.

Seleccionado a 000

LMSG(047)

S

---

---

@LMSG(047)

S

---

---

Limitaciones S a S+15 deben estar en ASCII y en la misma área de datos. El mensaje se cor-tará si entre S y S + 15 se encuentra un caracter nulo (00).IR 298 e IR 299 no se pueden utilizar para S.

Descripción LMSG(047) se utiliza para enviar un mensaje de 32 caracteres a la consola deprogramación. El mensaje a enviar debe estar en ASCII comenzando en elcanal S y finalizando en el S + 15, a no ser que se desee un mensaje más corto.Se puede obtener un mensaje más corto colocando un carácter nulo (0D) en lacadena; los caracteres que siguen al carácter nulo no se enviarán.Para enviar a la consola de programación, debe estar seleccionado en modoTERMINAL. Consultar el siguiente punto 5-26-6 MODO TERMINAL --TERM(048) para más información sobre el modo TERMINAL.Cuando el pin 6 del interruptor DIP de la CPU está en OFF, la consola de progra-mación se puede conmutar a modo TERMINAL pulsando la tecla CHG o ejecu-tando TERM(048) en el programa. Cuando dicho pin está en ON, la consola deprogramación se puede conmutar a modo TERMINAL poniendo a ON el bitAR 0709.

Indicadores ER: S y S+15 no están en la misma área de datos.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

Ejemplo

Instrucciones especiales Sección 5-26

Page 324: C200HALPHA Manual Programacion

318

5-26-6 MODO TERMINAL -- TERM(048)

Símbolo de relés

TERM(048)

000

000

000

@TERM(048)

000

000

000

Cuando condición de ejecución es ON, TERM(048) conmuta la consola de pro-gramación a modo TERMINAL. (Las instrucciones MSG(046), LMSG(047) y lafunción de mapeado del teclado se ejecutan en modo TERMINAL).La consola de programación volverá a modo CONSOLA cuando se pulse denuevo la tecla CHG. No hay ninguna instrucción que ponga la consola de pro-gramación en modo CONSOLA por programa.La consola también se puede conmutar a modo TERMINAL pulsando la teclaCHG de la consola de programación siempre que el pin 6 del interruptor DIP dela CPU esté en OFF. La consola volverá a modo CONSOLA cuando se pulse denuevo la tecla CHG.Cuando el pin 6 del interruptor DIP de la CPU está en ON, la consola se puedeconmutar a TERMINAL poniendo a ON el bit AR 0709.

En el siguiente ejemplo, TERM(048) se utiliza para conmutar la consola de pro-gramación a modo TERMINAL cuando 00000 está en ON. Verificar que el pin 6del interruptor DIP de la CPU está en OFF.

TERM(----)

000

000

000

00000 Dirección Instrucción Operandos

00000 LD 0000000001 TERM(048)

000000000

5-26-7 REFRESCO DE TEMPORIZADOR DE GUARDA-- WDT(094)

T: Valor de temporizador de guarda

# (00 a 63)

Símbolo de relés Áreas de datos de definidor

@WDT(094) TWDT(094) T

Cuando la condición de ejecución es OFF, WDT(094) no se ejecuta. Cuando lacondición de ejecución es ON, WDT(094) amplia la selección del tiempo de mo-nitorización de ciclo (temporizador de guarda) seleccionado en DM6618 de laconfiguración del PLC. La selección por defecto es 120 ms.

Ampliación del temporizador = 100 ms x T.

Precauciones El tiempo de monitorización de ciclo (selección de temporizador de guarda) sepuede seleccionar desde 10 a 640 ms con el Setup del PLC. La instrucciónWDT(094) también se puede utilizar para ampliar el tiempo de monitorizaciónde ciclo a un valor máximo de 640 ms, pero se amplía la parte del ciclo utilizadapor ejecución de instrucción.WDT(094) se puede ejecutar más de una vez en un ciclo, pero el tiempo de ciclono se puede ampliar más de 640 ms en total.Los temporizadores pueden funcionar incorrectamente si el tiempo de cicloexcede de 100 ms. Cuando se utiliza WDT(094), el mismo temporizador debe-

Descripción

Ejemplo

Descripción

Instrucciones especiales Sección 5-26

Page 325: C200HALPHA Manual Programacion

319

ría repetirse en el programa a intervalos menores de 100 ms. TIMH(015) sólodebería utilizarse en una subrutina de interrupción programada a intervalos de10 ms o menor.

Indicadores No hay indicadores afectados por esta instrucción.

5-26-8 REFRESCO DE E/S -- IORF(097)

St: Canal inicial

IR 000 a IR 049, IR 100 a IR 199,SR 400 a SR 450

Símbolo de relés

E: Canal final

IR 000 a IR 049, IR 100 a IR 199,SR 400 a SR 450

Áreas de datos de operando

IORF(097)

St

E

IORF(097) se puede utilizar para refrescar canales de E/S asignados a uni-dades de E/S , unidades de E/S especiales y unidades de entrada de interrup-ción montadas en los bastidores de CPU o expansores de E/S. No se puedenutilizar para otros canales de E/S, tales como unidades de E/S en bastidoresesclavos o unidades de E/S de alta densidad grupo 2.

St debe ser inferior o igual que E.

Para refrescar canales de E/S asignados a unidades de E/S montadas en basti-dor de CPU o expansor de E/S (IR 000 a IR 029 ó IR 300 a IR 309), indicar elprimer canal (St) y el último (E) a refrescar. Cuando la condición de ejecuciónpara IORF(097) es ON, todos los canales entre St y E serán refrescados. Esterefresco es adicional al refresco normal de E/S efectuado durante el ciclo de laCPU.

Para refrescar canales de E/S asignados a unidades de E/S especiales (IR 100a IR 199), indicar los números de las unidades designando de IR 040 a IR 049.De IR 040 a IR 049 corresponden a unidades de E/S especiales 0 a 9. Por ejem-plo, seleccionar St a IR 043 y E a IR 045 para refrescar los canales de E/S asig-nados a las unidades de E/S especiales 3, 4 y 5. Los canales de E/S asignados aestas unidades (IR 130 a IR 159) serán refrescados cuando se ejecuteIORF(097). Este refresco es adicional al refresco normal de E/S efectuadodurante el ciclo de la CPU.

Para especificar un área de E/S especial de 10 canales (IR 100 a IR 190 oIR 400 a IR 450), escribir el primer canal del área de 10 canales. (El último dígitodel canal IR debe ser 0).

Consultar 5-26-9 REFRESCO DE E/S DE ALTA DENSIDAD GRUPO 2 --MPRF(061) para más información sobre refresco de canales asignados a talesunidades.

Indicadores ER: St y/o E no están dentro de los rangos de selección apropiados.(000 a 029, 040 a 040, 100 a 190, 300 309, ó 400 a 450).

St y E no están dentro del mismo rango de selección.

St es mayor que E.

Limitaciones

Descripción

Instrucciones especiales Sección 5-26

Page 326: C200HALPHA Manual Programacion

320

5-26-9 REFRESCO DE E/S DE ALTA DENSIDAD GRUPO 2 -- MPRF(061)

St: Unidad inicial

#0000 a #000F

E: Unidad final

#0000 a #000F

Símbolo de relés Áreas de datos de operando

000: Seleccionado a 000.

---

MPRF(061)

St

E

000

@MPRF(061)

St

E

000

MPRF(061) se puede utilizar sólo para refrescar canales de E/S asignados aunidades de E/S de alta densidad grupo 2 (IR 030 a IR 049).St y E deben estar comprendidos entre #0000 y #000F. St debe ser menor oigual que E.

Cuando la condición de ejecución es OFF, MPRF(061) no se ejecuta. Cuando lacondición de ejecución es ON, se refrescarán los canales de E/S asignados alas unidades de E/S de alta densidad grupo 2 entre St y E. Este refresco es adi-cional al refresco normal de E/S efectuado durante el ciclo de la CPU.Los canales de E/S no se pueden expresar por direcciones, sino sólo pornúmero de unidad.

El tiempo de ejecución para MPRF(061) se calcula como sigue:

TMPRF = Tiempo de ejecución instr. + tiempo de proceso inicial+ !(tiempos de refresco de E/S de alta densidad grupo 2)

El tiempo de ejecución de instrucción es 0.4 ms y el tiempo de procesoinicial es 0.36 ms. Consultar 6-1 Tiempo de ciclo más información sobreestos conceptos.

Indicadores ER: St o E no está en BCD entre #0000 y #000F.

St es mayor que E.

5-26-10 CONTADOR DE BITS -- BCNT(067)

N: Número de canales (BCD)

IR, SR, AR, DM, HR, TC, LR, #

SB: Canal fuente inicial

IR, SR, AR, DM, HR, TC, LR

Áreas de datos de operando

D: Canal destino

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés

BCNT(067)

N

SB

D

@BCNT(067)

N

SB

D

Limitaciones N debe estar en BCD entre 0000 y 6656.

Cuando la condición de ejecución es OFF, BCNT(067) no se ejecuta. Cuando lacondición de ejecución es ON, BCNT(067) cuenta el número total de bits queestén en ON en los canales comprendidos entre SB y SB+(N--1) y escribe elresultado BCD en D.

Indicadores ER: N no está en BCD, o N es 0; SB y SB+(N--1) no están en la misma áreade datos.

El valor de contaje resultante excede de 9999.

Limitaciones

Descripción

Tiempo de ejecución

Descripción

Instrucciones especiales Sección 5-26

Page 327: C200HALPHA Manual Programacion

321

No existe el canal DM direccionado indirectamente. (Contenido delcanal *DM no está en BCD o se ha excedido el área de DM.)

En ON cuando el contaje (N) excede el área de datos.

EQ: En ON cuando el resultado es 0.

5-26-11 CÁLCULO DE CHECKSUM -- FCS(180)

C: Dato de control

IR, SR, AR, DM, HR, LR, #

R1: Primer canal en el rango

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

D: Primer canal destino

IR, SR, AR, DM, HR, LR

FCS(180)

C

R1

D

@FCS(180)

C

R1

D

Descripción FCS(180) se puede utilizar para chequear errores cuando se transfieren datos através del puerto de comunicaciones.Cuando la condición de ejecución es OFF, FCS(180) no se ejecuta. Cuando lacondición de ejecución es ON, FCS(180) calcula el checksum de la trama delrango especificado, efectuando la operación lógica OR exclusiva bien entre loscontenidos de los canales R1 a R1+N--1 o bien de los bytes en los canales R1 aR1+N--1. El valor resultante (hexadecimal) se convierte a ASCII y se envía a loscanales destino (D y D+1).La función de los bits de C se muestran en el siguiente diagrama y se explicanen más detalle a continuación.

15 14 13 12 11 00

Número items en el rango (N, BCD)canales de 001 a 999 o bytes

Primer byte (con bit 13 en ON)1 (ON): Menor peso0 (OFF): Mayor peso

Unidades de cálculo1 (ON): Bytes0 (OFF): Canales

C:

No utilizado. Poner acero.

Número de items en el rango El número de items dentro del rango (N) está contenido en los 3 dígitos demenor peso de C, que debe estar en BCD entre 001 y 999.

Unidades de cálculo Se utilizarán canales si el bit 13 está en OFF y se utilizarán bytes si el bit 13 estáen ON.Si se especifican bytes, el rango puede comenzar con el byte de mayor o con elde menor peso de R1. El byte de mayor peso de R1 no se incluirá si el bit 12 estáen ON.

MSB LSBR1 1 2R1+1 3 4R1+2 5 6R1+3 7 8

Cuando el bit 12 está en OFF se hará la operación OR de los bytes en esteorden: 1, 2, 3, 4, ....Cuando el bit 12 está en ON se hará la operación OR de los bytes en este orden:2, 3, 4, 5, ....

Instrucciones especiales Sección 5-26

Page 328: C200HALPHA Manual Programacion

322

Conversión a ASCII El cálculo de checksum de trama de byte produce un valor hexadecimal de 2dígitos que se convierte a su equivalente ASCII de 4 dígitos. El cálculo de check-sum de trama de canal produce un valor hexadecimal de 4 dígitos que se con-vierte a su equivalente ASCII de 8 dígitos, como se muestra a continuación.

3 4 4 1

Valor de checksum de tramade byte

D

4A

4 6 3 1

Valor de checksum de tramade canal

D

F10B

3 0 4 2D+1

Indicadores ER: No existe el canal DM direccionado indirectamente. (Contenido delcanal *DM no está en BCD o se ha excedido el área de DM.)

El número de items no está entre 001 y 999 en BCD.

El rango de cálculo excede el área de datos.

Ejemplo Cuando IR 00000 está en ON en el siguiente ejemplo, se calcula el checksum detrama (0008) para los 8 canales desde DM 0000 a DM 0007 y se escribe el equi-valente ASCII (30 30 30 38) en DM 0010 y DM 0011.

@FCS(180)

DM 0000

#0008

00000

DM 0010

Dirección Instrucción Operandos

00000 LD 0000000001 @FCS(180)

# 0008DM 0000DM 0010

DM 0000 0001DM 0001 0002DM 0002 0003DM 0003 0004DM 0004 0005DM 0005 0006DM 0006 0007DM 0007 0008

0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0

0 800

Cálculo deFCS

3 0 3 8DM 00113 0 3 0DM 0010

Conversiónde códigoASCII

5-26-12 DETECCIÓN DE FALLOS -- FPD(269)

T: Tiempo de monitorización (BCD)

IR, SR, AR, DM, HR, TC. LR, #

C: Dato de control

#

Símbolo de relés Áreas de datos de operando

FPD(269)

C

T

DD: Primer canal de registro

IR, AR, DM, HR, LR

Limitaciones D y D+8 deben estar en la misma área de datos cuando el bit 15 de C está enON.C se introduce como una constante.

Descripción FPD(269) se puede utilizar tantas veces como sea necesario en el programa,pero cada una debe utilizar un D diferente. Se utiliza para monitorizar el tiempoentre la ejecución de FPD(269) y la ejecución de una salida de diagnóstico. Si eltiempo excede de T, se generará un error no fatal FAL(006) con el número deFAL especificado en C.

Instrucciones especiales Sección 5-26

Page 329: C200HALPHA Manual Programacion

323

Las secciones del programa marcadas por líneas de puntos del siguiente dia-grama, se pueden escribir de acuerdo con las necesidades de la aplicación con-creta. El proceso de la sección del programa lanzada por CY es opcional y sepuede utilizar cualquier instrucción a excepción de LD y LD NOT. Las instruc-ciones de diagnóstico lógico y la condición de ejecución puede constar de cual-quier combinación de condiciones NC o NA.

SR 25504(Indicador CY)

FPD(269)(50)

T

C

D

Proceso trasdetección de error

Condiciónejecución

Bifurcación

Instruccionesde diagnóstico

lógico

Salida dediagnóstico

Cuando la condición de ejecución es OFF, FPD(269) no se ejecuta. Cuando lacondición de ejecución es ON, FPD(269) monitoriza el tiempo hasta que la con-dición de diagnóstico lógico se pone en ON, poniendo a ON la salida dediagnóstico. Si este tiempo excede de T, ocurrirá lo siguiente:

1, 2, 3... 1. Se genera un error FAL(006) con el número FAL especificado en los dosprimeros dígitos de C. Si se especifica 00, no se generará un error.

2. Las instrucciones de diagnóstico lógico se buscan para la primera condi-ción de entrada OFF y la dirección de bit de esta condición se envía a loscanales destino comenzando en D.

3. El indicador de CY (SR 25504) se pone en ON. Se puede ejecutar una sec-ción de programa de proceso de error utilizando el indicador de CY.

4. Si el bit 15 de C está en ON, se visualizará en el dispositivo periférico, unmensaje de hasta 8 caracteres ASCII, junto con la dirección de bit mencio-nada en el paso 2.

Dato de control La función de los bits de dato de control en C se muestran en el siguiente dia-grama.

15 14 08 07 00

Número FAL(2-dígitos BCD, 00 a 99)

C:

No utilizado. Seleccio-nado a cero.

Salida de diagnósticos0 (OFF): Salida de dirección de Bit (binario)1 (ON): Salida de dirección de bit y mensaje (ASCII)

Instrucciones de diagnóstico lógicoSi el tiempo hasta que la condición de diagnósticos lógicos se ponga en ONexcede de T, las instrucciones de diagnóstico lógico se buscan para la condiciónde entrada OFF. Si hay más de una condición de entrada OFF, se selecciona lacondición de entrada en la línea de instrucción más alta y más próxima a la barrade bus izquierda.

00000 00002

00001 00003

Salida dediagnóstico

Cuando de IR 00000 a IR 00003 se pone en ON, IR 00002 de condición normal-mente cerrada se encontrará como la causa de que la salida de diagnóstico nose ponga en ON.

Instrucciones especiales Sección 5-26

Page 330: C200HALPHA Manual Programacion

324

Salida de diagnósticos Hay dos formas de enviar la dirección de bit de la condición de OFF detectadaen la condición de diagnósticos lógicos.

1, 2, 3... 1. Enviar dirección de bit (utilizado cuando el bit 15 de C está en OFF).

El bit 15 de D indica si la información de dirección de bit se almacena o no enD+1. El bit 14 de D indica si la condición de entrada es normalmente abiertao normalmente cerrada.

15 14 13 00D:

No utilizado.Condición de entrada

0 (OFF): Normalmente abierto1 (ON): Normalmente cerrado

Información de dirección de bit0 (OFF): No grabado en D+1.1 (ON): Grabado en D+1.

D+1 contiene el código de dirección de bit de la condición de entrada, comose muestra a continuación. Las direcciones de canal, números de bit ynúmeros de TC son en binario.

Area dedatos

Estado de bit D+1datos

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

IR, SR(ver

1 0 0 0 Dirección de canal Número de bit(vernota c) 1 0 1 0 Dirección de canal Número de bit

HR 1 0 0 1 1 Dirección de canal Número de bit

LR 1 0 0 1 0 0 Dirección de canal Número de bit

TC* 1 0 0 1 0 1 * Número de temporizador o contador

Nota a. *Para el área de TC, el bit 09 de D+1 indica si el número es untemporizador o un contador. Un 0 indica un temporizador y un 1un contador.

b. Está reservado el bit de mayor peso del número de bit (bit 03).

c. Aunque se utilizan las mismas designaciones de dirección de ca-nal para ambos rangos, el bit 13 se pone en OFF para indicar IR00000 a SR 25515 y se pone en ON para indicar de SR 25600 a IR51115

Ejemplo: Si D + 1 contiene 1000 0110 0100 1000, IR 10000 se indicaríacomo sigue:

1000 0110 0100 1000

IR $64 = 100 Bit 00 (que invierte el estado del bit 03)

2. Salida de dirección de bit y mensaje (seleccionado cuando bit 15 de C estáen ON).

El bit 15 de D indica si hay o no información de dirección de bit almacenadaen D+1 a D+3. Si la hay, el bit 14 de D indica si la condición de entrada esnormalmente abierta o normalmente cerrada. Ver la siguiente tabla.

Los canales de D+5 a D+8 contienen información en ASCII que se visualizaen el dispositivo periférico junto con la dirección de bit cuando se ejecutaFPD(269). Los canales D+5 a D+8 contienen el mensaje preseleccionadopor el usuario como se muestra en la siguiente tabla.

Instrucciones especiales Sección 5-26

Page 331: C200HALPHA Manual Programacion

325

Canal Bits 15 a 08 Bits 07 a 00

D+1 20 = espacio Primer carácter ASCII

D+2 Segundo carácter ASCII Tercer carácter ASCII

D+3 Cuarto carácter ASCII Quinto caracter ASCII

D+4 2D = “--” “0”=normalmente abierto, “1”=normalmentecerrado

D+5 Primer carácter ASCII Segundo carácter ASCII

D+6 Tercer carácter ASCII Cuarto carácter ASCII

D+7 Quinto carácter ASCII Sexto carácter ASCII

D+8 Séptimo carácter ASCII Octavo carácter ASCII

Nota Si no son necesarios 8 caracteres en el mensaje, introducir “0D” des-pués del último carácter.

Determinar el tiempo de monitorizaciónEl siguiente procedimiento se puede utilizar para seleccionar automáticamenteel tiempo de monitorización, T, bajo las condiciones reales de operación cuandose especifica un operando de canal para T. Esta operación no se puede utilizarsi se selecciona una constante para T.

1, 2, 3... 1. Conmutar el PLC a modo MONITOR.2. Conectar un periférico, por ejemplo la consola de programación.3. Utilizar el periférico para poner a ON el bit de control AR 2508.4. Ejecutar el programa con AR 2508 puesto a ON. Si el tiempo de monitoriza-

ción actual supera T, se almacenará en T, 1,5 veces el tiempo de monitoriza-ción real. No se producirán errores FAL(006) mientras AR 2508 esté en ON.

5. Poner a OFF AR 2508 cuando se haya almacenado en T un valor acepta-ble.

Ejemplo En el siguiente ejemplo, FPD(269) se selecciona para visualizar la dirección debit y el mensaje (“ABC”) cuando se excede un tiempo de monitorización de123,4.

MOV(021)

HR 15

#4142

SR 25315

Dirección Instrucción Operandos

00000 LD 2531500001 MOV(021)

# 4142HR 15

00002 LD 2531500003 MOV(021)

# 430DHR 16

00004 LD LR 000000005 FPD(269)

# 0010# 1234HR 10

00006 AND 2550400007 INC(038)

DM 010000008 LD 1000000009 OR 1000100010 LD NOT 1000200011 OR NOT 1000300012 AND LD00013 OUT LR 0015

FPD(269)

#1234

#8010

HR 10

MOV(021)

HR 16

#430D

SR 25504(CY Flag)

SR 25315

LR 0000

INC(038)

DM 0100

10000 10002

10001 10003

LR 0015

Cuando LR 0000 se pone en ON, se ejecuta FPD(269) y comienza la monitori-zación. Si LR 0015 no se pone a ON en 123.4 s y de IR 10000 a IR 10003 están

Instrucciones especiales Sección 5-26

Page 332: C200HALPHA Manual Programacion

326

en ON, IR 10002 se seleccionará como la causa del error, se generará un errorFAL(006) con un número FAL de 10 y la dirección de bit y el mensaje preselec-cionado (“10002--1ABC”) se visualizará en el dispositivo periférico.

HR 10 0000HR 11 0000HR 12 0000HR 13 0000HR 14 0000HR 15 4142HR 16 430DHR 17 0000HR 18 0000

HR 10 C000 Indica información, condición normalmente cerradaHR 11 2031 “1”HR 12 3030 “00”HR 13 3032 “02”HR 14 2D31 “--1”HR 15 4142 “AB”HR 16 430D “C”, y código de CRHR 17 0000 Se ignoran los dos últimos canales.HR 18 0000 (Visualizado como espacios.)

Indicadores ER: T no está en BCD.

C no es una constante o no está en BCD de 00 a 99.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

CY: En ON cuando el tiempo entre la ejecución de FPD(269) y la ejecuciónde una salida de diagnóstico excede de T.

5-26-13 BÚSQUEDA DE DATOS -- SRCH(181)

R1: Primer canal en el rango

IR, SR, AR, DM, HR, TC, LR

N: Número de canales

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

@SRCH(181)

N

R1

CC: Dato de comparación, canal de resultado

IR, SR, AR, DM, HR, LR

SRCH(181)

N

R1

C

Limitaciones N debe estar en BCD entre 0001 y 6656.R1 y R1+N--1 deben estar en la misma área de datos.

Descripción Cuando la condición de ejecución es OFF, SRCH(181) no se ejecuta. Cuando lacondición de ejecución es ON, SRCH(181) busca en el rango de memoria de R1a R1+N--1 las direcciones que contienen los datos de comparación en C. Si unao más direcciones contienen los datos de comparación, el indicador EQ (SR25506) se pone a ON y la dirección más baja que contiene el dato de compara-ción se identifica en C+1. Las direcciones se identifican de diferente forma parael área de DM:

1, 2, 3... 1. Para una dirección en el área de DM, la dirección de canal se escribe enC+1. Por ejemplo, si la dirección más baja que contiene los datos decomparación es DM 0114, entonces se escribirá en C + 1, #0114.

2. Para una dirección en otra área de memoria, el número de direccionesdesde el principio de la búsqueda se escribe en C+1. Por ejemplo, si ladirección más baja que contiene el dato de comparación es IR 114 y elprimer canal en el rango de búsqueda es IR 014, entonces se escribirá enC+1, #0100.

Si ninguna de las direcciones en el rango contiene los datos de comparación, elindicador EQ (SR 25506) se pone a OFF y se deja sin cambios C+1.

Indicadores ER: No existe el canal DM direccionado indirectamente. (Contenido delcanal *DM no está en BCD o se ha excedido el área de DM.)

N no está en BCD entre 0001 y 9999.

Instrucciones especiales Sección 5-26

Page 333: C200HALPHA Manual Programacion

327

EQ: En ON cuando los datos de comparación han coincidido en el rango debúsqueda.

Ejemplo En el siguiente ejemplo, se busca en el rango de canales DM 0010 a DM 0019direcciones que contengan el mismo dato que DM 0000 (#FFFF). Dado que DM0012 contiene el mismo dato, el indicador EQ (SR 25506) se pone en ON y#0012 se escribe en DM 0001.

@SRCH(181)

DM 0010

#0010

00001

DM 0000

Dirección Instrucción Operandos

00000 LD 0000100001 @SRCH(181)

# 0010DM 0010DM 0000

DM 0010 0000DM 0011 9898DM 0012 FFFFDM 0013 9797DM 0014 AAAADM 0015 9595DM 0016 1414DM 0017 0000DM 0018 0000DM 0019 FFFF

DM 0000 FFFFDM 0001 0012

5-26-14 LECTURA DE EXPANSIÓN DE DM -- XDMR(280)

S: Primer canal de expansión de DM

IR, SR, AR, DM, HR, TC, LR, #

N: Número de canales

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

@XDMR(280)

N

S

DD: Primer canal destino

IR, SR, AR, DM, HR, LR

XDMR(280)

N

S

D

Limitaciones N debe estar en BCD entre 0001 y 3000.S debe estar en BCD entre 7000 y 9999.S y S+N--1 deben estar en la misma área de datos, así como D y D+N--1.

Descripción Cuando la condición de ejecución es OFF, XDMR(280) no se ejecuta. Cuando lacondición de ejecución es ON, XDMR(280) copia los contenidos de los canalesS a S + N -- 1 a los canales destino D a D+N--1.

Precauciones El área de expansión de DM se debe seleccionar en la configuración del PLCantes de poderse utilizar en programación. No exceder el rango seleccionadode área de expansión de DM.La ejecución de XDMR(280) tiene prioridad siempre que se produzca una inter-rupción de alimentación.

Indicadores ER: Los canales de expansión de DM no existen. Comprobar que loscanales especificados han sido asignados a la expansión de DM. Con-sultar 7-1-15 Asignación de área de UM.

No existe el canal DM direccionado indirectamente. (Contenido delcanal *DM no está en BCD o se ha excedido el área de DM.)

N no está en BCD entre 0001 y 3000.

Instrucciones especiales Sección 5-26

Page 334: C200HALPHA Manual Programacion

328

S no está en BCD entre 7000 y 9999.

Ejemplo En el siguiente ejemplo, los 100 canales del rango DM 7000 a DM 7099 secopian a DM 0010 a DM 0109 cuando IR 00001 está en ON.

@XDMR(280)

#7000

#0100

00001

DM 0010

Dirección Instrucción Operandos

00000 LD 0000100001 @XDMR(280)

# 0100# 7000DM 0010

DM 7000 DM 9999DM 7000 a DM 7099

DM 0000 DM 6143

DM 0010 a DM 0109

5-26-15 DIRECCIONAMIENTO INDIRECTO DE EM -- IEMS(----)

@IEMS(----)

C

C: Canal de control

000, #E000, ó #E0B1 a #E0B3

Símbolo de relés Áreas de datos de operandos

IEMS(----)

C

Limitaciones C debe ser 000, #E000, #E0B0, #E0B1, o #E0B2.

Descripción Cuando la condición de ejecución es ON, IEMS(----) cambia el destino de direc-cionamiento indirecto de DM (£DM) a DM o al banco especificado de EM. Elnúmero de banco actual de EM también se puede cambiar cuando el direccio-namiento indirecto se cambia a EM.El destino para £DM se conmuta al área de DM al inicio de una subrutina deinterrupción. También se puede volver al área de DM al principio de cada scan.La siguiente tabla muestra los valores permitidos para C y sus funciones:

C Operación de IEMS(----)000 Cambia el destino de £DM al área de DM actual.#E000 Cambia el destino de £DM al banco actual en el área de EM.#E0B0 Cambia el destino de £DM al banco 0 en el área de EM.#E0B1 Cambia el destino de £DM al banco 1 en el área de EM.#E0B2 Cambia el destino de £DM al banco 2 en el área de EM.

El contenido de DM 6031 indica el destino actual de £DM y el número de bancoactual de EM como se muestra en la siguiente tabla.

Canal Bits 00 a 07 Bits 08 a 15DM 6031 Número de banco actual de EM (00

a 02)Destino de £DM (00: DM; 01:EM)

Nota Introducir 000 para el segundo y tercer operandos cuando se utilicen instruc-ciones de sustitución.

Instrucciones especiales Sección 5-26

Page 335: C200HALPHA Manual Programacion

329

Indicadores ER: C no es uno de los valores permitidos.

Ejemplo En el siguiente ejemplo, IEMS(----) cambia el destino para £DM al banco 1 deEM y utiliza direccionamiento indirecto para mover #1234 a EM 0001 en banco 1de EM.

MOV

#1234

:D0000

IEMS3

#EOBI

00000

12340001DM0000 EM0000

0001

5-26-16 SELECCIONAR BANCO DE EM -- EMBC(281)

@EMBC(281)

N

N: Número de banco

IR, SR, AR, DM, HR, LR, #

Símbolo de relés Áreas de datos de operandos

EMBC(281)

N

Limitaciones N debe ser 0000, 0001 ó 0002 y el número de banco especificado por N debeexistir en la CPU.

Descripción Cuando se ejecuta con una condición de ejecución ON, EMBC(281) cambia elbanco actual de EM al número de banco especificado. La CPU puede accedersólo al banco actual, lo que se indica en bits 00 a 07 de DM 6031.

Se producirá un error y no se ejecutará EMBC(281) si no existe en la CPU elnúmero de banco especificado.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

El número de banco especificado, N, no existe en la CPU.

Ejemplo En el siguiente ejemplo, EMBC(281) cambia el banco actual al banco número 2cuando IR 00000 está en ON.

EMBC

#0002

@EMBC

#1005

00000

00001

Instrucciones especiales Sección 5-26

Page 336: C200HALPHA Manual Programacion

330

5-26-17 MACRO DE TARJETA PCMCIA -- CMCR(261)

C: Primer canal de control

IR, SR, AR, DM, EM, HR, TC, LR, #

S:Primer canal de comando

IR, SR, AR, DM, EM, HR, TC, LR, #

Símbolo de diagrama de relés Áreas de datos de operandos

D: Canal de respuesta

IR, SR, AR, DM, EM, HR, TC, LR

CMCR(261)

C

S

D

@CMCR(261)

C

S

D

Limitaciones De DM 6144 a DM 6655 no se pueden utilizar para D.

Descripción Cuando la condición de ejecución es OFF, CMCR(261) no se ejecuta. Cuandola condición de ejecución es ON, CMCR(261) ejecuta un proceso macro queescribe, lee, compara o busca en la memoria de la tarjeta en la unidad interfazde tarjeta PCMCIA.

Cuando CMCR(261) escribe datos en un archivo separado por comas, ese ar-chivo se puede escribir totalmente en una línea. Los archivos separados porcoma creados en un ordenador personal se asumen en uno de los siguientesformatos. (No importa si la coma está en un byte separado).

4 bytes, coma, 4 bytes, coma, 4 bytes, coma ......

8 bytes, coma, 8 bytes, coma, 8 bytes, coma ......

Se puede añadir un archivo sólo si hay espacio libre en la tarjeta y los datos sólose pueden sobreescribir si se ha especificado un offset aceptable.

Los campos en el archivo separado por coma no se deben encerrar entre defini-dores como por ejemplo entre comillas.

Canales de control Escribir los datos de control en el primer canal de control utilizando el formatoindicado en el siguiente diagrama.

Canal

Nivel de operación (OFF=nivel 0, ON=nivel 1)

0/1 Puerto Número de proceso

Fijar a 1 para transmitir los códigos de control en C+1 a C+7 a la unidad detarjeta de PC.

La función del número de puerto depende del proceso especificado.Sel. de número de proceso (1 a 4, ver abajo).

Cód. de control

Cód. de control

Cód. de control

Cód. de control

Cód. de control

Cód. de control

Escribir la unidad y el nombre del archivo (en ASCII) del archi-vo a escribir, leer, comparar o buscar. Verificar que se especifi-can los tres caracteres de la extensión. Se pueden especificardirectorios si ya han sido creados.Hueco 1 es unidad “G:” y hueco 2 is unidad “H:”.

Cód. de control

Instrucciones especiales Sección 5-26

Page 337: C200HALPHA Manual Programacion

331

Número de proceso El número de proceso (1 a 4) determina qué función CMCR(261) se realizará.

Númeroproceso

Nombre pro-ceso

Función

1 Escribir archi-vo

Escribe datos de la memoria del PLC al archivo espe-cificado en la tarjeta de la unidad de tarjeta de PC.

2 Leer archivo Lee datos del archivo especificado en la tarjeta de launidad de tarjeta de PC a la memoria del PLC.

3 Comparar ar-chivo con me-moria

Compara el archivo especificado en la tarjeta de la uni-dad de tarjeta de PC con los datos en la memoria delPLC.

4 Buscar archi-vo

Busca el archivo especificado en la tarjeta de la unidadde tarjeta del PLC.

Selecciones de puerto Las selecciones de puerto (bits 8, 9 y 10) especifican detalles sobre opera-ciones de CMCR(261) y el formato de los archivos de tarjeta de PC.

Número Selecciones de puertoproceso Bit 8 Bit 9 Bit 101 OFF:Escribir encima de achivo

existente.ON: Crear nuevo archivo.

OFF:Crear un archivo separadocon comas.

ON: Crear un archivo binario.

OFF:Coma delimitador de 1 ca-nal.

ON: Coma delimitador de 2 ca-nal.

2 OFF:Leer archivo especificado.ON: Leer el número de elemen-

tos en el archivo especifica-do.

OFF:Leer un archivo separadocon comas.

ON: Leer un archivo binario.

OFF:Coma delimitador de 1 ca-nal.

ON: Coma delimitador de 2 ca-nal.

3 --- OFF:Comparar un archivo sepa-rado con comas.

ON: Comparar un archivo binario.

OFF:Coma delimitador de 1 ca-nal.

ON: Coma delimitador de 2 ca-nal.

4 --- OFF:Buscar un archivo separadocon comas..

ON: Buscar un archivo binario.

OFF:Coma delimitador de 1 ca-nal.

ON: Coma delimitador de 2 ca-nal.

Canales de comando Los canales de comando están compuestos de la longitud de datos, offset y da-tos de comando. Para la longitud de datos, especificar la longitud de los los da-tos de comando +1. La lognitud máxima de los datos de comando es 1.000 ca-nales.

Longitud datos Offset Datos de comando

Datos de comando

Datos de comando

Datos de comando

Instrucciones especiales Sección 5-26

Page 338: C200HALPHA Manual Programacion

332

Las selecciones de longitud de datos, offset y datos de comando dependen delnúmero de proceso especificado, como se indica en la siguiente tabla.

Númeroproceso

Longitud de datos Offset Datos de comando

1 Número de canales dedatos(BCD: 1 a 1001)

Número de elementos de escribirdatos(0 a FFFF)

Especifica número de canales paradelimitador coma de un canal ybinario.Especifica número de elementos paradelimitador coma de dos canales.

Datos a escribir en el archivo

999 canales máx. para delimitadorcoma de un canal y binario.998 canales máx. (449 elementos)para delimitador coma de dos canales.

2 Siempre a 0003. Número de elementos de leer datos(0 a FFFF)

Especifica número de canales paradelimitador coma de un canal ybinario.Especifica número de elementos paradelimitador coma de dos canales.

Especifica el número de canales a leer(en hexadecimal, 1 a 3E7).

999 ($3E7) canales máx. paradelimitador coma de un canal ybinario.449 ($1F3) elementos máx. paradelimitador coma de dos canales.

3 Número de canales dedatos(BCD: 1 a 1001)

Número de elementos de comparardatos(0 a FFFF)

Especifica número de canales paradelimitador coma de un canal ybinario.Especifica número de elementos paradelimitador coma de dos canales.

Datos a comparar.

999 canales máx. para delimitadorcoma de un canal y binario.998 canales máx. (449 elementos)para delimitador coma de dos canales.

4 Especificar 3 para comadelimitador de un canal ybinario.Especificar 4 para comadelimitador de doscanales.

Número de elementos de buscar datos(0 a FFFF)

Especifica número de canales paradelimitador coma de un canal ybinario.Especifica número de elementos paradelimitador coma de dos canales.

Buscar datos

Especifica un canal de buscar datospara delimitador coma de un canal ybinario.Especifica dos canales de buscardatos para delimitador coma de doscanales.

Nota 1. Cuando se especifica un offset de 0 para número de proceso 1 y ya existeun archivo con el mismo nombre, el archivo existente será borrado y secreará un nuevo archivo. Si la longitud de datos se ha fijado a 1 (no escribirdatos), la instrucción solamente borra el archivo existente. Si el offset se haseleccionado a 1, los datos se añadirán al final del archivo existente.

2. Un archivo delimitado por comas es un archivo en el cual se inserta un ca-racter de 1 byte, como por ejemplo una coma, después de cada 4 bytes u 8bytes de datos. Se producirá un error (código de terminación 2) si hay algúndelimitador de 2 bytes como por ejemplo CR+LF. Sustituir previamente es-tos delimitadores de 2 bytes con delimitadores de 1 byte.

Datos de respuesta Los datos de respuesta depende del número de proceso que se especificó,como se indica en la siguiente tabla.

Númeroproceso

Datos de respuesta

1 Ninguno

2 Contiene los datos leídos del archivo especificado. Cuando se lee elnúmero de elementos, éstos están contenidos en 2 canales enhexadecimal.

3 Ninguno (El resultado de la comparación se devuelve en el código determinación)

4 Si el dato buscado se encuentra en el archivo, su localización sedevuelve como el número de canales o de elementos de datos (0 aFFFF) a partir de la localización de offset.

Principio del archivo: 0000Segundo canal (elemento): 0001Tercer canal (elemento): 0002

El código de terminación de instrucción se envía a SR 237 después de ejecu-tarse CMCR(261). También SR 252 contiene indicadores del estado de finaliza-

Bits SR y código determinación

Instrucciones especiales Sección 5-26

Page 339: C200HALPHA Manual Programacion

333

ción de instrucción (normal/error) y estado de ejecución para niveles de opera-ción 0 y 1. La siguiente tabla muestra la función de estos bits.

Canal Bit(s) FunciónSR 237 00 a 07 Área de salida de código de terminación para nivel de

operación 0 después de la ejecución de CMCR(261).

08 a 15 Área de salida de código de terminación para nivel deoperación 1 después de la ejecución de CMCR(261).

SR 252 00 Indicador de error para nivel de operación 0 después de laejecución de CMCR(261)

01 ON si CMCR(261) se puede ejecutar para nivel de operación 003 Indicador de error para nivel de operación 1 después de la

ejecución de CMCR(261)

04 ON si CMCR(261) se puede ejecutar para nivel de operación 1

La siguiente tabla muestra el significado de los códigos de terminación.

Código Significado

00 Finalización normal

01 Error de parámetro tales como offset, tamaño de archivo o número decanales a leer

02 Error disco lleno, error de E/S de archivo o tipo de archivo

03 No existe el archivo especificado

04 Fallo de comparación o búsqueda

05 a FE Indefinido

FF Error de número de proceso

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

Se ha utilizado para C de DM 6144 a DM 6655.

El indicador de ejecución habilitada para el nivel de operación especifi-cado (SR 25201 o SR 25204) estaba en OFF.

No se especificó un nivel de operación 0 ó 1.

Ejemplo Conmutando IR 00000 en la secuencia OFF " ON " OFF, se escribirán 100canales de datos de DM comenzando desde DM 0100 en el archivoG:\DMSAVE.DAT (tarjeta de memoria, hueco 1). Las selecciones del área deDM se muestran después del diagrama de relés.

SR 25201: Indicador de ejecución ha-bilitada para nivel de ope-ración 0.

Nivel de operación 0Escribir archivo (Crear nuevo archivo)(archivo con delimitador coma de uncanal)

Ejecuta instrucción con número deproceso 1. (Escribir archivo)

IR 00300: Salida si se produce un er-ror en la ejecución deCMCR(261).

IR 00101: Finaliza ejecución deCMCR(261).

00100

00000KEEP00100

00101

25201

00100

00300

25200

00100DFU(013)00101

25200

@MOV(021)

#0901

DM 0000

@CMCR(261)

DM 0000

DM0098

000

S

R

Instrucciones especiales Sección 5-26

Page 340: C200HALPHA Manual Programacion

334

DM 0000 a DM 0007 contienen los datos de control y DM 0098 a DM 0199 con-tienen los datos de comando, como se indica a continuación.

Canal Contenido FunciónDM 0000 --- Datos de control

DM 0001 47 3A ASCII: “G :”

DM 0002 5C 44 ASCII: “\ D”

DM 0003 4D 53 ASCII: “M S”

DM 0004 41 56 ASCII: “A V”

DM 0005 45 2E ASCII: “E .”

DM 0006 44 41 ASCII: “D A”

DM 0007 54 ASCII: “T”

Canal Contenido Función

DM 0098 0102 Longitud de datos de escritura: 102 (hexadecimal)

DM 0099 0000 Offset: 0

DM 0100 --- Datos a escribir

::

::

::

DM 0199 --- Datos a escribir

5-27 Instrucciones de redLas instrucciones de SYSMAC NET Link/SYSMAC LINK se utilizan para comu-nicar con otros PLCs conectados al sistema SYSMAC NET Link o SYSMACLINK. Estas instrucciones son aplicables al C200HALPHA excepto C200HE--CPU11--E.

5-27-1 ENVIAR A RED -- SEND(090)

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR

D: Primer canal destino

IR, SR, AR, DM, HR, TC, LR

Áreas de datos de operando

C: Primer canal de dato de control

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

SEND(090)

S

D

C

@SEND(090)

S

D

C

Limitaciones De C a C+2 deben estar en la misma área de datos y dentro de los valores espe-cificados más adelante. Para poder utilizar SEND(090), el sistema debe tenermontada una unidad SYSMAC NET Link, SYSMAC LINK o unidad de Tarjeta dePC.

Descripción Cuando la condición de ejecución es OFF, SEND(090) no se ejecuta. Cuando lacondición de ejecución es ON, SEND(090) transfiere datos comenzando en elcanal S, a las direcciones especificadas por D en el nodo destino del sistemaSYSMAC NET Link/SYSMAC LINK/Ethernet. Los canales de control, comen-zando con C, especifican el número de canales a enviar, el nodo destino y otrosparámetros. Los contenidos del dato de control dependen de si se envía unatransmisión a un sistema SYSMAC NET Link o a un sistema SYSMAC LINK o aun sistema Ethernet.

El estado del bit 15 de C+1 determina si la instrucción es para un sistema SYS-MAC NET Link o SYSMAC LINK/Ethernet.

Instrucciones de red Sección 5-27

Page 341: C200HALPHA Manual Programacion

335

Datos de control

Sistemas Ethernet Seleccionar el número de nodo destino a 0 para enviar los datos a todos los no-dos. Consultar para más información el Manual de Operación de Unidad de tar-jeta de PC.

Canal Bits 00 a 07 Bits 08 a 15

C Número de canales (0 a 1000 en 4-dígitos hexadecimal, i.e., 0000hex a03E8hex)

C+1 Límite de tiempo de respuesta (0.1y 25.5 segundos en incrementosde 0.1 s en 2-dígitos hexadecimalsin punto decimal, i.e., 01hex aFFhex)

El valor por defecto es 00hex (2.2segundos)

Bits 08 a 11:No. de reintentos (0 a 15en hexadecimal,i.e., 0hex a Fhex)

Bit 12: ON: Direcc. indirectoOFF: Direcc. directo

Bit 13 ON: Respuesta no devuelta.OFF: Respuesta devuelta.

Bit 14 ON: Nivel de operación 0OFF: Nivel de operación 1

Bit 15: Seleccionado a 1.C+2 Nodo destino (0 a 127 en 2-dígitos

hexadecimal, i.e., 00hex a 7Ehex)*Bits 08 a 12:

Dirección de unidad denodo destino.Seleccionado a 00hex.

Bits 13 a 15: Seleccionado a 0.

Sistemas SYSMAC NET Link El número de puerto destino se selecciona siempre a 0. Seleccionar el númerode nodo destino a 0 para enviar los datos a todos los nodos. Seleccionar elnúmero de red a 0 para enviar los datos a un nodo en el mismo subsistema (red).

Canal Bits 00 a 07 Bits 08 a 15

C Número de canales (0 a 1000 en 4-dígitos hexadecimal, es decir, de0000hex a 03E8hex)

C+1 Número de red (0 a 127 en 2-dígitoshexadecimal, es decir, de 00hex a7Fhex)

Bit 14 ON: Nivel de operación 0OFF: Nivel de operación 1

Bits 08 a 13 y 15: Seleccionados 0.

C+2 Nodo destino (0 a 126 en 2-dígitoshexadecimal, es decir, de 00hex a7Ehex)*

Puerto destinoNSB: 00NSU: 01/02

* Se puede seleccionar el número de nodo del PLC que ejecuta el envío.

Sistemas SYSMAC LINK Seleccionar el número de nodo destino a 0 para enviar los datos a todos losnodos.

Canal Bits 00 a 07 Bits 08 a 15

C Número de canales (0 a 1000 en 4-dígitos hexadecimal, es decir, de0000hex a 03E8heX)

C+1 Límite de tiempo de respuesta (0.1y 25.4 segundos en 2-dígitoshexadecimales sin punto decimal,es decir, 00hex a FFhex)

Nota: El tiempo de respuestaserá 2 segundos si el límite seselecciona a 0hex. No habrá límitede tiempo si se selecciona aFFhex.

Bits 08 a 11:No. de reintentos (0 a 15en hexadecimal,es decir, 0hex a Fhex)

Bit 12: Seleccionado a 0.Bit 13 ON: No devuelta respuesta.

OFF: Respuesta devueltaBit 14 ON: Nivel de operación 0

OFF: Nivel de operación 1Bit 15: Seleccionado a 1.

C+2 Nodo destino (0 a 62 en 2-dígitoshexadecimales, es decir, de 00hexa 3Ehex)*

Seleccionado a 0.

* Se puede seleccionar el número de nodo del PLC que ejecuta el envío.

Instrucciones de red Sección 5-27

Page 342: C200HALPHA Manual Programacion

336

Ejemplos Este ejemplo es para un sistema SYSMAC NET Link. Cuando 00000 está enON, el siguiente programa transfiere el contenido desde IR 001 a IR 005 a LR 20a LR 24 en el nodo 10.

0 0 0 5

0 0 0 0

0 0 0 A

IR 001

IR 002

IR 003

IR 004

IR 005

LR 20

LR 21

LR 22

LR 23

LR 24

DM 0010

DM 0011

DM 0012

15 0

SEND(090)

001

LR 20

DM 0010

00000

Nodo 10

Dirección Instrucción Operandos

00000 LD 0000000001 SEND(090)

001LR 20DM 0010

Indicadores ER: El número de nodo especificado es mayor que 126 en un sistema SYS-MAC NET Link, mayor que 62 en un sistema SYSMAC LINK o mayorque 127 en un sistema Ethernet.

Los datos enviados exceden el área de datos.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

No hay unidad SYSMAC NET Link/SYSMAC LINK/Tarjeta de PC.

5-27-2 RECIBIR DE RED -- RECV(098)

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR

D: Primer canal destino

IR, SR, AR, DM, HR, TC, LR

Áreas de datos de operando

C: Primer canal de datos de control

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

RECV(098)

S

D

C

@RECV(098)

S

D

C

Limitaciones De C a C+2 deben estar en la misma área de datos y dentro de los valores espe-cificados más adelante. Para poder utilizar RECV(098), el sistema debe tenermontada una unidad SYSMAC NET Link, SYSMAC LINK o tarjeta de PC.

Cuando la condición de ejecución es OFF, RECV(098) no se ejecuta. Cuando lacondición de ejecución es ON, RECV(098) transfiere datos comenzando en Sdesde un nodo en el sistema SYSMAC NET Link/SYSMAC LINK/Ethernet a loscanales comenzando en D. Los canales de control, empezando con C, propor-cionan el número de canales a recibir, el nodo fuente y otros parámetros detransferencia.

El estado del bit 15 de C+1 determina si la instrucción es para un sistemaSYSMAC NET Link, para un sistema SYSMAC LINK o para un sistema Ether-net.

Datos de controlSistemas Ethernet Para más información consultar el Manual de Operación de unidad de tarjeta de

PC.

Descripción

Instrucciones de red Sección 5-27

Page 343: C200HALPHA Manual Programacion

337

Canal Bits 00 a 07 Bits 08 a 15C Número de canales (0 a 1000 en 4-dígitos hexadecimal, i.e., 0000hex a

03E8hex)

C+1 Límite de tiempo de respuesta (0.1y 25.5 segundos en incrementosde 0.1 s en 2-dígitos hexadecimalsin punto decimal, i.e., 01hex aFFhex)

El valor por defecto es 00hex (2.2segundos)

Bits 08 a 11:No. de reintentos (0 a 15en hexadecimal,i.e., 0hex a Fhex)

Bit 12: ON: Direcc. indirectoOFF: Direcc. directo

Bit 13 ON: Respuesta no devuelta.OFF: Respuesta devuelta.

Bit 14 ON: Nivel de operación 0OFF: Nivel de operación 1

Bit 15: Seleccionado a 1.C+2 Nodo fuente (0 a 127 en 2-dígitos

hexadecimal, i.e., 00hex a 7Ehex)*Bits 08 a 12:

Dirección de unidad denodo fuente.Seleccionado a 00hex.

Bits 13 a 15: Seleccionado a 0.

Sistemas SYSMAC NET Link El número de puerto fuente está seleccionado siempre a 0. Seleccionar elnúmero de red a 0 para recibir datos en un nodo en el mismo subsistema (esdecir, red).

Canal Bits 00 a 07 Bits 08 a 15C Número de canales (0 a 1000 en 4-dígitos hexadecimales, es decir, de

0000hex a 03E8hex)

C+1 Número de red (0 a 127 en2-dígitos hexadecimales, es decir,de 00hex a 7Fhex)

Bit 14 ON: Nivel de operación 0OFF: Nivel de operación 1

Bits 08 a 13 y 15:Seleccionados a 0.

C+2 Nodo fuente (1 a 126 en 2-dígitoshexadecimales, es decir, de 01hex a7Ehex)

Puerto fuenteNSB: 00NSU: 01/02

Sistemas SYSMAC LINK

Canal Bits 00 a 07 Bits 08 a 15C Número de canales (0 a 256 en 4-dígitos hexadecimales, es decir, de

0000hex a 0100hex)

C+1 Límite de tiempo de respuesta (0.1y 25.4 segundos en 2-dígitoshexadecimales sin punto decimal,es decir, de 00hex a FFhex)

Nota: El tiempo de respuestaserá 2 segundos si el límite seselecciona a 0hex. No habrá límitede tiempo si se selecciona aFFhex.

Bits 08 a 11:No. de reintentos(0 a 15 en hexadecimal,es decir, de 0hex a Fhex)

Bit 12: Seleccionado a 0.Bit 13: Seleccionado a 0.Bit 14 ON: Nivel de operación 0

OFF: Nivel de operación 1Bit 15: Seleccionado a 1.

C+2 Nodo fuente (0 a 62 en 2-dígitoshexadecimales, es decir, de 00hexa 3Ehex)

Seleccionado a 0.

Instrucciones de red Sección 5-27

Page 344: C200HALPHA Manual Programacion

338

Ejemplos Este ejemplo es para un sistema SYSMAC NET Link. Cuando 00000 está enON, el siguiente programa transfiere el contenido en IR 001 a IR 005 a LR 20 aLR 24 en nodo 10.

0 0 0 5

0 0 0 0

0 0 0 A

IR 001

IR 002

IR 003

IR 004

IR 005

LR 20

LR 21

LR 22

LR 23

LR 24

DM 0010

DM 0011

DM 0012

15 0

RECV(098)

001

LR 20

DM 0010

00000

Node 10

Dirección Instrucción Operandos

00000 LD 0000000001 RECV(098)

001LR 20DM 0010

Indicadores ER: El número de nodo especificado es mayor que 126 en un sistema SYS-MAC NET Link, mayor que 62 en un sistema SYSMAC LINK o mayorque 127 en un sistema Ethernet.

Los datos recibidos exceden los límites del área de datos.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

No hay unidad SYSMAC NET Link/SYSMAC LINK/Tarjeta de PC.

5-27-3 Sobre comunicaciones de red

SEND(090) y RECV(098) están basadas en un proceso de mandato/respuesta.Es decir, la transmisión no se completa hasta que el nodo que envía, reciba yreconozca una respuesta del nodo destino. Observar que el indicador de habili-tar SEND(090)/RECV(098) no se pone en ON hasta la primera END(001) des-pués de completada la transmisión.

Si se utilizan múltiples operaciones SEND(090)/RECV(098), se deben utilizarlos siguientes indicadores para garantizar que se completa cualquier operaciónprevia antes de intentar más operaciones enviar/recibirSEND(090)/RECV(098).

Indicador SR FuncionesIndicadores de habilitarSEND(090)/RECV(098)(SR 25201, SR 25204)

En OFF durante la ejecución de SEND(090)/RECV(098)(incluyendo proceso de respuesta de comando). Noiniciar una operación SEND(090)/RECV(098) a no serque este indicador esté en ON.

Indicadores de error deSEND(090)/RECV(098)(SR 25200, SR 25203)

En OFF después de una finalización normal deSEND/RECV (es decir después de la recepción de laseñal de respuesta)

En ON después de intentar SEND(090)/RECV(098) sinéxito. El estado de error se mantiene hasta la siguienteoperación de SEND(090)/RECV(098).

Tipos de error:Error de fuera de tiempo (tiempo de comando/respuestamayor de 1 segundo)Errores de datos de transmisión

Instrucciones de red Sección 5-27

Page 345: C200HALPHA Manual Programacion

339

Diagrama de tiempos

Instrucciónrecibida

Transmisióncompletadanormal

Instrucciónrecibida

Error detransmisión

Instrucciónrecibida

Ejecucióncon éxito deenviar/recibir

Error deenviar/recibir

Cuando se ejecuta SEND(090)/RECV(098) se transmiten los datos paraSEND(090) y RECV(098) para todos los PLCs. El proceso final para transmisio-nes/recepciones se efectúa durante el servicio de periféricos y unidades deenlace.

Para garantizar la ejecución de las operaciones SEND(090)/RECV(098), el pro-grama debe utilizar los indicadores de habilitar SEND(090)/RECV(098) y losindicadores de error de SEND(090)/RECV(098)para confirmar que la ejecuciónes posible. El siguiente programa muestra un ejemplo práctico para un sistemaSYSMAC NET Link.

Proceso de datos paraSEND(090)/RECV(098)

Ejemplo de programación:MúltiplesSEND(090)/RECV(098)

Instrucciones de red Sección 5-27

Page 346: C200HALPHA Manual Programacion

340

S

R

KEEP(011)

12802

DIFU(013) 12801

@MOV(021)

#000A

DM 0000

12800

00000 25204 12802

12801

@MOV(021)

#0000

DM 0001

@MOV(021)

#0003

DM 0002

XFER(070)

#0010

000

DM 0010

@SEND(090)

DM 0010

DM 0020

DM 0000

00200

XFER(070)

#0016

000

DM 0030

00001 25204 12800

12803

@MOV(021)

#0010

DM 0003

12802

@MOV(021)

#0000

DM 0004

@MOV(021)

#007E

DM 0005

@RECV(098)

HR 10

LR 10

DM 0003

12802 25204 25203

12800 25203

12800 previene la ejecución de SEND(090)hasta que se haya completado RECV(098)(abajo). IR 00000 se pone en ON parainiciar la transmisión.

Los datos se colocan en los canales dedatos de control para especificar los 10canales a transmitir al nodo 3 en nivel deoperación 1 de red 00 (NSB).

Se pone en ON para indicar error detransmisión.

Los datos transmitidos se mueven a loscanales comenzando en DM 0030 para sualmacenaje.

El relé 12802 previene la ejecución deRECV(098) cuando SEND(090) anterior nose ha completado. IR 00001 se pone en ONpara iniciar la transmisión.

Los datos se mueven a los canales dedatos de control para especificar los 16canales a transmitir desde el nodo 126 ennivel de operación 1 de la red 00 (NSB).

Indicador de habilitar SEND(090)/RECV(098)

Indicador de error deSEND(090)/RECV(098)

12800 25204

Reset de relé 12800.

DIFU(013) 12803

12802 25204

Reset de relé 12802.

0020112802 25203 Se pone a ON para indicar error de

recepción.

Indicador de error deSEND(090)/RECV(098)

S

R

KEEP(011)

12800

Instrucciones de red Sección 5-27

Page 347: C200HALPHA Manual Programacion

341

Dirección Instrucción Operandos Dirección Instrucción Operandos

00000 LD 0000000001 AND 2520400002 AND NOT 1280200003 LD 1280100004 KEEP(011) 1280000005 LD 1280000006 @MOV(021)

# 000ADM 0000

00007 @MOV(021)# 0000DM 0001

00008 @MOV(021)# 0003DM 00002

00009 @XFER(070)# 0010

000DM 0002

00010 @SEND(090)DM 0010DM 0020DM 0000

00011 LD 1280000012 AND 2520300013 OUT 0020000014 LD 1280000015 AND 2520400016 DIFU(013) 1280100017 LD 0000100018 AND 25204

00019 AND NOT 1280000020 LD 1280300021 KEEP(011) 1280200022 LD 1280200023 AND 2520400024 AND NOT 2520300025 XFER(070)

# 0016000

DM 003000026 LD 1280200027 @MOV(021)

# 0010DM 0003

00028 @MOV(021)# 0000DM 0004

00029 @MOV(021)# 007EDM 0005

00030 @RECV(098)HR 10LR 10DM 0003

00031 LD 1280200032 AND 2520300033 OUT 0020100034 LD 1280200035 AND 2520400036 DIFU(013) 12803

5-28 Instrucciones de comunicaciones serie

5-28-1 RECIBIR DATOS -- RXD(235)

D: Primer canal destino

IR, SR, AR, DM, HR, TC, LR

C: Canal de control

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés Áreas de datos de operando

N: Número de bytes

IR, SR, AR, DM, HR, TC, LR, #

RXD(235)

D

C

N

@RXD(235)

D

C

N

Limitaciones D y D+(N#2)--1 deben estar en la misma área de datos.N debe estar en BCD de #0000 a #0256. (de #0000 a #0061 en modo host link)

Descripción Cuando la condición de ejecución es OFF, RXD(235) no se ejecuta. Cuando lacondición de ejecución es ON, RXD(235) lee N bytes de datos recibidos en elpuerto y luego los escribe en los canales D a D+(N#2)--1. Hasta 256 bytes dedatos se pueden leer de una vez.Se leerán los datos recibidos si se reciben menos de N bytes.

Nota RXD(235) sólo es necesario para recibir datos vía puerto de periféricos o puertoRS--232C. Las transmisiones enviadas por el ordenador a una unidad Host Linkse procesan automáticamente y no necesitan programación.

Instrucciones de comunicaciones serie Sección 5-28

Page 348: C200HALPHA Manual Programacion

342

AtenciónEl PLC sólo será capaz de recibir una vez 256 bytes si los datos recibidos no seleen utilizando RXD(235). Leer los datos tan pronto como sea posible una vezque el indicador de recepción completa se ponga en ON (SR 26414 para puertode periféricos, SR26406 para el puerto RS--232C).

Canal de control El valor del canal de control determina el puerto del que se han de leer los datosy el orden en que los datos serán escritos en memoria.

Orden byte 0: Primero bytes de mayor peso1: Primero bytes de menor peso

Monitorización de señales CTS y DSR0: No monitorizar señales CTS y DSR.1: Monitorizar la señal CTS. (Salida a bit 15 de D.)2: Monitorizar la señal DSR. (Salida a bit 15 de D.)3: Monitorizar las señales CTS y DSR. (Salida a bits 15 y 14 de D.)

Puerto de recepción auxiliar0: Puerto RS-232C interno1: Puerto A de comunicaciones2: Puerto B de comunicaciones

Puerto 0: Puerto RS-232C1: Puerto de periféricos

Número dígito: 3 2 1 0

El orden de escritura de los datos en memoria depende del valor del dígito 0 deC. Ocho bytes de datos 12345678... serán escritos de la siguiente manera:

MSB LSBD 1 2D+1 3 4D+2 5 6D+3 7 8

Dígito 0 = 0

MSB LSBD 2 1D+1 4 3D+2 6 5D+3 8 7

Dígito 0 = 1

Indicadores ER: La CPU no incorpora puerto RS-232C.

No está conectado otro dispositivo al puerto especificado.

Hay un error en las selecciones de comunicaciones (configuración delPLC) o en las selecciones de operando.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

Los canales destino (D a D+(N#2)--1) exceden el área de datos.

Puerto de periféricos26414: SR 26414 se pondrá en ON cuando se han recibido correctamente los

datos en el puerto de periféricos y se reseteará cuando se ejecuteRXD(235).

256: SR 256 contiene el número de bytes recibidos en el puerto de periféri-cos y se resetea a 0000 cuando se ejecuta RXD(235).

Puerto RS-232C26406: SR 26406 se pondrá en ON cuando se han recibido correctamente los

datos en el puerto RS--232C y se reseteará cuando se ejecuteRXD(235).

265: SR 265 contiene el número de bytes recibidos en el puerto RS--232C yse resetea a 0000 cuando se ejecuta RXD(235).

Nota Los contadores e indicadores de comunicaciones se pueden borrar bien espe-cificando 0000 para N o bien utilizando los bits de reset de puerto (SR 25208para puerto de periféricos y SR 25209 para puerto RS--232C).

Instrucciones de comunicaciones serie Sección 5-28

Page 349: C200HALPHA Manual Programacion

343

5-28-2 TRANSMITIR DATOS -- TXD(236)

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR

C: Canal de control

IR, SR, AR, DM, HR, TC, LR, #

Símbolo de relés Áreas de datos de operando

N: Número de bytes

IR, SR, AR, DM, HR, TC, LR, #

TXD(236)

S

C

N

@TXD(236)

S

C

N

Limitaciones S y S+(N#2)--1 deben estar en la misma área de datos.N debe ser BCD desde #0000 a #0256. (de #0000 a #0061 en modo host link)

Descripción Cuando la condición de ejecución es OFF, TXD(236) no se ejecuta. Cuando lacondición de ejecución es ON, TXD(236) lee N bytes de datos de los canales S aS+(N#2)--1, los convierte a ASCII y los envía por el puerto especificado.TXD(236) opera de diferente forma en modo host link y en modo RS-232C, porlo que ambos modos se describen por separado.

Nota Los siguientes indicadores se pondrán en ON para indicar que son posibles lascomunicaciones a través de los diversos puertos.

SR 26405: Puerto RS--232CSR 26413: Puerto de periféricosSR 26705: Unidad Host Link #0SR 26713: Unidad Host Link #1

Modo Host Link N debe ser BCD de #0000 a #0061 (es decir, hasta 122 bytes de ASCII). El valordel canal de control determina el puerto desde el que se enviarán los datos,como se muestra a continuación.

Orden byte 0: Primero bytes de mayor peso1: Primero bytes de menor peso

Monitorización de señales CTS y DSR0: No monitorizar señales CTS y DSR.1: Monitorizar la señal CTS. (Salida a bit 15 de D.)2: Monitorizar la señal DSR. (Salida a bit 15 de D.)3: Monitorizar las señales CTS y DSR. (Salida a bits 15 y 14 de D.)

Puerto de recepción auxiliar0: Puerto RS-232C interno1: Puerto A de comunicaciones2: Puerto B de comunicaciones

Puerto 0: Puerto RS-232C1: Puerto de periféricos

Número dígito: 3 2 1 0

El número especificado de bytes será leÍdo de S a S+(N/2)--1, se convertirá aASCII y será transmitido a través del puerto especificado. Los bytes de datofuente mostrados a continuación serán transmitidos en este orden: 12345678...

MSB LSBS 1 2S+1 3 4S+2 5 6S+3 7 8

El siguiente diagrama muestra el formato para el comando de host link (TXD)enviado desde el PLC. Dependiendo de las selecciones, el C200HX/HG/HE

Instrucciones de comunicaciones serie Sección 5-28

Page 350: C200HALPHA Manual Programacion

344

automáticamente coloca los prefijos y sufijos, tales como número de nodo, ca-becera y FCS.

@ X X X X X X ......... X X X $ CR

Códigocabecera

Datos (122 caracteres ASCII máx.) FCSNo. denodo

Terminación

Modo RS-232C N debe ser BCD de #0000 a #00256. El valor del canal de control determina elpuerto por el que se enviarán los datos y el orden en que se escribirán en memo-ria.

Canal de control El valor del canal de control determina el puerto del que se leerán los datos y elorden en que se escribirán en memoria.

Orden byte 0: Primero bytes de mayor peso1: Primero bytes de menor peso

Monitorización de señales CTS y DSR0: No monitorizar señales CTS y DSR.1: Monitorizar la señal CTS. (Salida a bit 15 de D.)2: Monitorizar la señal DSR. (Salida a bit 15 de D.)3: Monitorizar las señales CTS y DSR. (Salida a bits 15 y 14 de D.)

Puerto de recepción auxiliar0: Puerto RS-232C interno1: Puerto de comunicaciones A2: Puerto de comunicaciones B

Puerto 0: Puerto RS-232C1: Puerto de periféricos

Número dígito: 3 2 1 0

El número especificado de bytes será leido de S a S+(NP2)--1 y transmitido porel puerto especificado.

MSB LSBS 1 2S+1 3 4S+2 5 6S+3 7 8

Cuando el dígito 3 de C es 0, los bytes de datos fuente mostrados anteriormenteserán transmitidos en este orden: 12345678...Cuando el dígito 3 de C es 1, los bytes de datos fuente mostrados anteriormenteserán transmitidos en este orden: 21436587...

Nota Cuando se especifican los códigos de inicio y de fin la longitud total de los datosdebería ser 256 bytes máx., incluyendo los códigos de inicio y fin.

Indicadores ER: No está conectado otro dispositivo al puerto especificado.

Hay un error en las selecciones de comunicaciones (configuración delPLC) o en las selecciones de operando.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

Los canales destino (S a S+(N#2)--1) exceden el área de datos.

26405: Indicador de comunicaciones habilitadas por puerto RS--232C

26413: Indicador de comunicaciones habilitadas por puerto de periféricos

26705: Indicador de habilitadas comunicaciones de unidad Host Link #0

26713: Indicador de habilitadas comunicaciones de unidad Host Link #1

Instrucciones de comunicaciones serie Sección 5-28

Page 351: C200HALPHA Manual Programacion

345

5-28-3 CAMBIAR SETUP DE RS-232C -- STUP(237)

N: Especificador puerto RS-232C

IR 000, IR 001, o IR 002

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés Áreas de datos de operando

STUP(237)

N

S

@STUP(237)

N

S

Limitaciones N debe ser IR 000, IR 001, o IR 002.

S y S+4 deben estar en la misma área de datos.(S se puede seleccionar a #0000 para cambiar las selecciones de RS-232C asus valores por defecto).

STUP(237) no se puede ejecutar para el puerto RS-232C interno si el pin 2 delinterruptor DIP está en ON.

STUP(237) no se puede ejecutar dentro de una subrutina de interrupción.

Descripción Cuando la condición de ejecución es OFF, STUP(237) no se ejecuta. Cuando lacondición de ejecución es ON, STUP(237) cambia las selecciones de Setup delPLC para el puerto especificado por N.

N determina qué parámetros del setup de RS--232C se cambia.

N Puerto especificado

IR 000 Puerto RS-232C incorporado (Setup del PLC: DM 6645 a DM 6649)

IR 001 Puerto A de tarjeta de comunicaciones (Setup del PLC: DM 6555 a DM6559)

IR 002 Puerto B de tarjeta de comunicaciones (Setup del PLC: DM 6550 a DM6554)

Si S es una dirección de canal, los contenidos de S a S+4 se copian a los 5 ca-nales en el setup del PLC que contiene las selecciones para el puerto especifi-cado.

Si S se introduce como la constante #0000, las selecciones para el puerto espe-cificado se devuelven a sus valores por defecto.

S Función

Direcciónde canal

Los contenidos de S a S+4 se copian a la parte del setup del PLC quecontiene las selecciones para el puerto especificado por N.

Cte.(#0000)

Las selecciones para el puerto especificado por N se devuelven a susvalores por defecto.

Ejemplo de aplicación Este ejemplo muestra un programa que transfiere los contenidos de DM 0100 aDM 0104 al área de setup del PLC para puerto A de tarjeta de comunicaciones(DM 6555 a DM 6569).

@STUP(237)

001

DM 0100

00000 Dirección Instrucción Operandos

00000 LD 0000000001 @STUP(237)

001DM 0100

Instrucciones de comunicaciones serie Sección 5-28

Page 352: C200HALPHA Manual Programacion

346

Las selecciones se transfieren como se indica a continuación. El indicador decambio de setup de RS-232C (SR 27504) se pondrá en OFF cuando se ha com-pletado la transferencia.

DM 0100

DM 0101

DM 0102

DM 0103

DM 0104

1001DM 6555

0803DM 6556

0000DM 6557

2000DM 6558

0000DM 6559

1001

0803

0000

2000

0000

1001

0803

0000

2000

0000

1001

0803

0000

2000

0000

1001

0803

0000

2000

0000

1001

0803

0000

2000

0000

1001

0803

0000

2000

0000

1001

0803

0000

2000

0000

La siguiente tabla muestra la función de los datos de setup transferidos.

Canal Contenido Función

DM 0100 1001 Habilita las selecciones de comunicaciones en DM 0101y fija el modo de comunicaciones a RS-232C.

DM 0101 0803 Fija las siguientes selecciones de comunicaciones:9,600 bps, 1 bit de start, 8-bits de datos, 1 bit de stop,sin paridad

DM 0102 0000 Sin retardo de transmisión (0 ms)

DM 0103 2000 Habilita el código de fin CR, LF.

DM 0104 0000 ---

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal £DM/EM no está en BCD o se ha excedido el área de DM/EM).

El especificador de puerto (N) no es IR 000, IR 001 ó IR 002.

Especificado puerto A, pero el pin 2 del interruptor DIP está en ON.

El setup del PLC está protegido contra escritura. (El pin 1 del interruptorDIP está en ON).

Los canales fuente especificados exceden el área de datos.

Se ejecutó la instrucción desde un programa de interrupción.

5-28-4 MACRO DE PROTOCOLO -- PMCR(260)

C: Canal de control

IR, SR, AR, DM, HR, TC, LR, #

S: Primer canal de salida

IR, SR, AR, DM, HR, TC, LR, #

Símbolos de relés Áreas de datos de operandos

D: Primer canal de entrada

IR, SR, AR, DM, HR, TC, LR

PMCR(260)

C

S

D

@PMCR(260)

C

S

D

Limitaciones C debe estar en BCD entre #1000 y #2999.De DM 6144 a DM 6655 no se pueden utilizar para D.

Descripción Cuando la condición de ejecución es OFF, PMCR(260) no se ejecuta. Cuando lacondición de ejecución es ON, PMCR(260) llama y ejecuta la secuencia de co-municaciones especificada (datos de protocolo) registrada en la tarjeta de co-municaciones instalada en el PLC.El mensaje a enviar/recibir para la secuencia de comunicaciones registrada enla tarjeta de comunicaciones se debe seleccionar para leer o escribir datos decanal cuando no se especifica DM para S y D. Utilizar una constante cuando noes necesario seleccionar un canal para el primer canal de salida.Cuando la secuencia de comunicaciones no requieren un canal de entrada, es-pecificar una dirección de canal en cualquier caso. Los datos no se almace-

Instrucciones de comunicaciones serie Sección 5-28

Page 353: C200HALPHA Manual Programacion

347

narán en el canal especificado y se retendrán los contenidos del canal. Cuandola secuencia de comunicaciones no requiera de canales de entrada, especificarcanales que no se utilicen para cualquier otro cometido en el programa.Los canales de entrada y salida (S y D) también se pueden seleccionar en lasecuencia de comunicaciones registrada en la tarjeta de comunicaciones.

Nota Consultar el Manual de operación de tarjeta de comunicaciones para más infor-mación sobre las tarjetas de comunicaciones y el Manual de operación de Soft-ware de Protocolo para más información sobre secuencias de comunicaciones.

Canal de control El primer dígito del canal de control (1 ó 2) especifica el puerto de tarjeta de co-municaciones y los tres últimos dígitos especifican la secuencia de comunica-ciones (000 a 999), como se indica en el siguiente esquema.

C:

Dígitos 2 a 4: Número de secuencia de comunica-ciones (000 a 999)

Dígito 1: Especificador de puerto1: Puerto A de comunicaciones2: Puerto B de comunicaciones

Indicadores ER: No existe el canal DM direccionado indirectamente. (Contenido del ca-nal £DM no está en BCD o se ha excedido el área de DM).

D no está en BCD o de DM 6144 a DM 6655 se ha utilizado para D.

Cuando se ejecutó la instrucción estaba procesándose otra instrucciónPMCR(260).

El especificador de puerto no era ni 1 ni 2.

Ejemplo Cuando IR 00000 está en ON y SR 28908 (el indicador de ejecución de instruc-ción de puerto A de la tarjeta de comunicaciones) está en OFF, se llama la se-cuencia de comunicaciones 100 de la tarjeta de comunicaciones y los datos setransfieren a través del puerto A de la tarjeta de comunicaciones.Los datos a enviar se leen desde el rango de canales comenzando en DM 0000(el primer canal de salida) y los datos recibidos se almacenan en el rango decanales comenzando en DM 0010 (el primer canal de entrada).

00200 LD 0000000201 AND NOT 2890800202 PMCR(260)

# 1100DM 0000DM 0010

Dirección Instrucción Operandos

PMCR

#1100

DM0000

DM0010

00000 28908

5-29 Instrucciones avanzadas de E/S

5-29-1 SALIDA PARA DISPLAY DE 7 SEGMENTOS -- 7SEG(214)

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR

Símbolo de relés Áreas de datos de operando

7SEG(214)

S

O

CC: Datos de control

000 a 007

O: Canal de salida

IR, SR, AR, DM, HR, LR

Instrucciones avanzadas de E/S Sección 5-29

Page 354: C200HALPHA Manual Programacion

348

Limitaciones S y S+1 deben estar en la misma área de datos.

De DM 0000 a DM6143 se pueden utilizar para O.

C debe estar comprendido entre 000 y 007.

Descripción Cuando la condición de ejecución es OFF, 7SEG(214) no se ejecuta. Cuando lacondición de ejecución es ON, 7SEG(214) lee los datos fuente (4 u 8 dígitos),los convierte en datos para display de 7 segmentos y los envía al display de 7segmentos conectado a la salida indicada por O.

El valor de C indica el número de dígitos de datos fuente y la lógica para las uni-dades de entrada y salida, como se muestra en la siguiente tabla.

Dato fuente Lógica de entrada dedatos de display

Lógica de entrada de latchde display

C

4 dígitos (S) Igual que unidad delid

Igual que unidad de salida 0000g ( ) g qsalida

Diferente de unidad de salida 0001

Diferente de unidad delid

Igual que unidad de salida 0002salida

Diferente de unidad de salida 0003

8 dígitos(S S 1)

Igual que unidad delid

Igual que unidad de salida 0004g(S, S+1)

g qsalida

Diferente de unidad de salida 0005

Diferente de unidad delid

Igual que unidad de salida 0006salida

Diferente de unidad de salida 0007

Si hay 8 dígitos de datos fuente, se encuentran en S y S+1, con los dígitos mássignificativos en S+1. Si se trata de 4 dígitos, están en S.

7SEG(214) visualiza los datos de 4 u 8 dígitos en 12 scans y luego continúavisualizando los datos.

El display de 7 segmentos debe disponer de cuatro líneas de datos y una líneade señal latch para cada dígito.

Nota 1. Cuando se diseñe el sistema se ha de considerar el tiempo de ciclo y lascaracterísticas del display de 7 segmentos.

2. Los bits de salida no utilizados aquí, sí se pueden utilizar como bit de salidanormales.

Precauciones El resfresco de E/S se debe realizar para todos los puntos de E/S utilizados por7SEG(214) cada vez que se ejecute para garantizar la efectividad de la opera-ción. La instrucción REFRESCO DE E/S se debe utilizar con 7SEG(214)siempre que 7SEG(214) se utilice en una subrutina para asegurar que los pun-tos de E/S se refresquen cada ejecución.

7SEG(214) se ejecutará desde el primer ciclo siempre que se arranque la ejecu-ción del programa, incluyendo rearranques después de interrupciones de ali-mentación.

No utilizar 7SEG(214) más de dos veces en el programa.

7SEG(214) no se puede utilizar para unidades de E/S montadas en bastidoresesclavos.

Hardware Esta instrucción envía datos de canal al display de 7 segmentos. Utiliza 8 bits desalida para 4 dígitos o 12 bits de salida para 8 dígitos. Como se muestra en elsiguiente diagrama, el display de 7 segmentos está conectado a una unidad desalida. Para display de 4 dígitos, las salidas de datos (D0 a D3) están conecta-das a los puntos de salida 0 a 3 y las salidas latch (CS0 a CS3) están conectadasa los puntos de salida 4 a 7. La salida 12 (para display de 8 dígitos) o la salida 8

Instrucciones avanzadas de E/S Sección 5-29

Page 355: C200HALPHA Manual Programacion

349

(para display de 4 dígitos) se pondrán a ON cuando se visualice un juego dedatos, pero no es necesario conectarla a no ser que se los exiga la aplicación.

1

3

5

7

9

11

13

15

COM

0

2

4

6

8

10

12

14

DC

OD212

D0D1D2D3

VDD(+)VSS(0)

LE3 LE2 LE1 LE0

D0D1D2D3

VDD(+)VSS(0)

LE3 LE2 LE1 LE0

Las salidas se deben conectar de una unidad de salida con 8 o más puntos paracuatro dígitos o 16 o más para ocho dígitos.

Nota 1.Las salidas de la unidad de salida emplean normalmente lógica negativa.(Sólo el modelo de salida PNP utiliza lógica positiva).

2.Dependiendo del modelo, el display de 7 segmentos podrá necesitar lógicapositiva o negativa.

Cómo utilizar la instrucción Si el canal S es el primer canal que contiene los datos a visualizar, y el canal desalida es O, y el SV tomado de la siguiente tabla se especifica en C, la operaciónserá la que se explica a continuación cuando se ejecute el programa. Si sólo sevisualizan cuatro dígitos, sólo se utilizará el canal S.Formato de almacenamiento de datos

4 dígitos mayor peso 4 dígitos menor peso

S+1 S

Temporización En la siguiente tabla se indica la temporización de salida de datos.

Función Bit(s) en O Estado de salida (La lógica de datos y de latch depende de C)

(4 dígitos,1 bloque)

(4 dígitos,2 bloques)

( g y p )

Salida Latch 2

Salida Latch 3

Indicador deuna vuelta

Salida Latch 1

Salida Latch 0

Salida de datos

06

07

08

05

04

00 a 03

10

11

12

09

08

00 a 0304 a 07

100 101 102 103

1 2 3 4 5 6 7 8 9 10 11 12 1

Nota 0 a 3: salida de datospara canal S4 a 7: Salida de datospara canal S+1

Para completar una vuelta se requieren 12 ciclos

Instrucciones avanzadas de E/S Sección 5-29

Page 356: C200HALPHA Manual Programacion

350

Ejemplo de aplicación Este ejemplo muestra un programa para visualizar números BCD de 8 dígitosen un display de 7 segmentos. El display está conectado al canal de salida IR100. La unidad de salida utiliza lógica negativa y la lógica del display de 7 seg-mentos también es negativa para señales de datos y para señales latch.

7SEG(214)

DM0120

100

004

25313 (Siempre ON)

Los datos BCD de 8 dígitos en DM 0120 (4 dígitos de menor peso) y DM 0121 (4dígitos de mayor peso) se visualizan siempre por medio de 7SEG(214). Cuandocambian los contenidos de DM 0120 y DM 0121, el display también cambia.

Indicadores ER: S y S+1 no están en la misma área de datos. (Para visualizar datos de 8dígitos).

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

Hay un error en las selecciones de operando.

25409: SR 25409 estará en ON mientras se ejecuta 7SEG(214).

5-29-2 ENTRADA DE DÉCADAS DE SELECCIÓN -- DSW(210)

IW: Canal de entrada

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

DSW(210)

IW

OW

RR: Primer canal de resultado

IR, SR, AR, DM, HR, LR

OW: Canal de salida

IR, SR, AR, DM, HR, LR

Descripción DSW(210) se utiliza para leer el valor seleccionado en una década digital con-ectada a unidades de E/S. Cuando la condición de ejecución es OFF, DSW(210)no se ejecuta. Cuando la condición de ejecución es ON, DSW(210) lee el valor(4 u 8 dígitos) seleccionado en la década de selección de IW y coloca el resul-tado en R.Si el valor es un número de 8 dígitos, se coloca en R y R+1, con los dígitos mássignificativos colocados en R+1.DSW(210) lee los datos de 4 u 8 dígitos en 12 scans y luego continúa leyendolos datos.

Precauciones El refresco de E/S se debe realizar para todos los puntos de E/S utilizados porDSW(210) cada vez que se ejecute para garantizar la efectividad de la opera-ción. La instrucción REFRESCO DE E/S se debe utilizar con DSW(210)siempre que DSW(210) se utilice en una subrutina para asegurar que los puntosde E/S se refresquen cada ejecución.DSW(210) se ejecutará desde el primer ciclo siempre que se arranque la ejecu-ción del programa, incluyendo rearranques después de interrupciones de ali-mentación.No utilizar DSW(210) más de dos veces en el programa.DSW(210) no se puede utilizar para unidades de E/S montadas en bastidoresesclavos.

Nota Los bits de entrada y salida no utilizados aquí, sí se pueden utilizar como bits deentrada y salida normales.

Instrucciones avanzadas de E/S Sección 5-29

Page 357: C200HALPHA Manual Programacion

351

Hardware Esta instrucción lee los valores seleccionados BCD de 8 dígitos de una décadade selección. DSW(210) utiliza 5 bits de salida y 8 bits de entrada. Conectar ladécada y las unidades de entrada y de salida como se indica en el diagrama. Lasalida 5 se pondrá a ON cuando se lea un grupo de datos pero no es necesarioconectarla a no ser que se los exiga la aplicación.

1

3

5

7

9

11

13

15

COM

0

2

4

6

8

10

12

14

COM

ID212

1

3

5

7

9

11

13

15

COM

0

2

4

6

8

10

12

14

COM

OD212

D0D1D2D3D0D1D2D3CS0CS1CS2CS3RD

D0D1D2D3D0D1D2D3CS0CS1CS2CS3RD

Interfaz

A selección de chip A7E

A terminal RD de A7E

Mayor peso

A7E

Menor peso

Dígitos de mayor peso de la línea de datos de A7E

Unidad de entrada

Unidad de salida

Nota Para conectar una década A7E se necesita unainterfaz para convertir señales de 5 V a 24 V.

Dígitos de menorpeso de la línea dedatos de A7E

Instrucciones avanzadas de E/S Sección 5-29

Page 358: C200HALPHA Manual Programacion

352

El siguiente ejemplo ilustra las conexiones para una década de selección A7B.

1

3

5

7

9

11

13

15

COM

0

2

4

6

8

10

12

14

COM

ID212 Unidad de entrada

Int. no. 81

3

5

7

9

11

13

15

COM

0

2

4

6

8

10

12

14

DC

OD212

1248

7 6 5 4 3 2 1 C

Unidad de salida

Década deselección

A7B

Nota En este ejemplo no es necesaria la señal de lectura de datos.

Las entradas se deben conectar a una unidad de entrada de c.c. con 8 o máspuntos de entrada y las salidas se deben conectar de una unidad de salida tran-sistor con 8 o más puntos.

Utilización de la instrucción Si el canal de entrada especificado para conectar la década es IW y el canal desalida OW, la operación será la indicada en la figura cuando se ejecute el pro-grama.

00

01

02

03

04

05

Wd 0

100 101 102 103

D+1 D

Cuatro dígitos: 00 a 03

Ocho dígitos: 00 a 03, 04 a 07

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

IW

Para leer 4 dígitos sólo seutiliza el canal D.

4 dígitos demayor peso

16 ciclos para completar una vuelta de ejecución

Datos de entrada

Señal CS

Indicador de 1 vuelta

Señal RD (lectura)

4 dígitos demenor peso

Instrucciones avanzadas de E/S Sección 5-29

Page 359: C200HALPHA Manual Programacion

353

Ejemplo de aplicación Este ejemplo muestra un programa para leer 8 dígitos BCD de una década deselección. La década está conectada a IR 000 (entrada) e IR 100 (salida).

@MOV(021)

HR51

DM0000

DSW

000

100

HR51

05000

00015 10005

05000

05000

10005

Cuando IR 00015 se pone en ON, IR 05000 se mantendrá en ON hasta que elindicador de una vuelta (IR 10005) se ponga en ON tras completar una vuelta delectura mediante DSW(210).Los datos seleccionados por la década mediante DSW(210) se almacenan enHR 51.Cuando el indicador de una vuelta (10005) se pone en ON después de comple-tar la lectura, el número almacenado en HR 51 se transfiere a DM 0000.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)R y R+1 no están en la misma área de datos.

25410: En ON mientras se ejecuta DSW(210).

5-29-3 ENTRADA DE TECLADO HEXADECIMAL -- HKY(212)

OW: Canal de salida de señal de control

IR, SR, AR, DM, HR, LR

IW: Canal de entrada

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

HKY(212)

IW

OW

DD: Primer canal de registro

IR, SR, AR, DM, HR, LR

Limitaciones D y D+2 deben estar en la misma área de datos.

Descripción Cuando la condición de ejecución es OFF, HKY(212) no se ejecuta. Cuando lacondición de ejecución es ON, HKY(212) introduce los datos de un teclado hex-adecimal conectado a la entrada indicada por IW. El dato se introduce de dosformas:

1, 2, 3... 1. Se crea un registro de desplazamiento de 8 dígitos en D y D+1. Cuando sepulsa una tecla, el dígito hexadecimal correspondiente se desplaza al dígitomenos significativo de D. Los otros dígitos de D, D+1 se desplazan a laizquierda y se pierde el dígito más significativo de D+1.

2. Los bits de D+2 y el bit 4 de OW indican entrada de teclado. Cuando sepulsa una de las teclas (0 a F), el bit correspondiente en D+2 (00 a 15) y el bit4 de OW se ponen en ON.

Nota 1. Cuando se está pulsando una tecla, se inhibe la entrada del resto de teclas.2. Los bits de entrada y salida no utilizados aquí, sí se pueden utilizar como

bits de entrada y salida normales.

Instrucciones avanzadas de E/S Sección 5-29

Page 360: C200HALPHA Manual Programacion

354

Con esta instrucción, la entrada de una tecla se lee en un periodo de 4 a 13ciclos, debido a que las teclas en ON sólo se pueden determinar según seponen a ON las salidas para testearlas.

El dispositivo de entrada de teclado hexadecimal se debe poder conectar enuna matriz 4 x 4.

Precauciones El resfresco de E/S se debe realizar para todos los puntos de E/S utilizados porHKY(212) cada vez que se ejecute para garantizar la efectividad de la opera-ción. La instrucción REFRESCO DE E/S se debe utilizar con HKY(212) siempreque HKY(212) se utilice en una subrutina para asegurar que los puntos de E/Sse refresquen cada ejecución.

HKY(212) se ejecutará desde el primer ciclo siempre que se arranque la ejecu-ción del programa, incluyendo rearranques después de interrupciones de ali-mentación.

No utilizar HKY(212) más de dos veces en el programa.

HKY(212) no se puede utilizar para unidades de E/S montadas en bastidoresesclavos.

Hardware Esta instrucción toma 8 dígitos hexadecimales de un teclado hexadecimal. Uti-liza 5 bits de salida y 4 de entrada. Preparar el teclado hexadecimal y conectarlas teclas numéricas 0 a F, como se muestra a continuación, a los puntos deentrada 0 a 3. El punto de salida 4 se pondrá en ON mientras se pulsa cualquiertecla, pero no hay necesidad de conectarlo a no ser que lo exija la aplicación.

1

3

5

7

9

11

13

15

COM

0

2

4

6

8

10

12

14

COM

ID212

1

3

5

7

9

11

13

15

COM

0

2

4

6

8

10

12

14

COM

OD212C

8

4

0

D

9

5

1

E

A

6

2

F

B

3

7

Unidad de entrada

Unidad desalida

Las entradas conectadas a los terminales de entrada deben ser en una unidadde entrada de c.c. con 8 ó más puntos y las salidas conectadas a los terminalesde salida se deben tomar de una unidad de salida transistor con 8 puntos o más.

Instrucciones avanzadas de E/S Sección 5-29

Page 361: C200HALPHA Manual Programacion

355

Utilización de la instrucción Si el canal de entrada para conectar el teclado hexadecimal se especifica en IW,y el canal de salida se especifica en OW, la operación será la indicada en elsiguiente programa. (Suponiendo que ya se han introducido varios números).

230F

1 2 3 4 5 6 7 8

0A01

D+1 D

A012

D+1

30FF

D

9101112

0123

D+1

0FF9

D

IW

16-key0to9to

D+200to09to15

OW04

F

00010203

Una vez por 12 ciclos

Señales de con-trol de selecciónde 16 teclas

Estado de 16teclas

Indicadores corres-pondientes a teclasde entrada (Los indi-cadores permane-cen en ON hasta lasiguiente entrada).

En ON si sepulsa unatecla.

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

D y D+2 no están en la misma área de datos.

SR 25408: En ON mientras se ejecuta HKY(212).

Ejemplo Este ejemplo muestra un programa para introducir números de un teclado hexa-decimal. El teclado está conectado a IR 000 (entrada) e IR 100 (salida).

HKY(212)

000

100

DM1000

@XFER(070)

#0002

DM1000

DM0000

00015

25313 (Siempre ON)

La información procedente del teclado hexadecimal se escribe en IR 000mediante HKY(212) se convierte a hexadecimal y se almacena en los canalesDM1000 y DM1001.

IR 00015 se utiliza como una “tecla ENTER,” y cuando IR 00015 se pone en ON,los números almacenados en DM 1000 y DM 1001 se transfieren a DM 0000 yDM 0001.

Instrucciones avanzadas de E/S Sección 5-29

Page 362: C200HALPHA Manual Programacion

356

5-29-4 ENTRADA DE TECLADO DECIMAL -- TKY(211)

D1: Primer canal de registro

IR, SR, AR, DM, HR, LR

IW: Canal de entrada

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

TKY(211)

IW

D1

D2 D2: Canal de entrada de tecla

IR, SR, AR, DM, HR, LR

Limitaciones D1 y D1+1 deben estar en la misma área de datos.

Descripción Cuando la condición de ejecución es OFF, TKY(211) no se ejecuta. Cuando lacondición de ejecución es ON, TKY(211) introduce datos de un teclado decimalconectado a la entrada indicada por IW. Los datos se introducen de dos formas:

TKY(211) se puede utilizar en varios lugares del programa cambiando el canalde entrada, IW.

1, 2, 3... 1. Se crea un registro de desplazamiento de 8 dígitos en D1 y D1+1. Cuandose pulsa una tecla, el dígito BCD correspondiente se desplaza al dígitomenos significativo de D1. Los otros dígitos de D1, D1+1 se desplazan a laizquierda y se pierde el dígito más significativo de D1+1.

2. Los primeros diez bits de D2 indican entrada de tecla. Cuando una de lasdiez teclas (0 a 9) se pulsa, el bit correspondiente de D2 (00 a 09) se pone enON.

Nota 1. Cuando se está pulsando una tecla, se inhibe la entrada del resto de teclas.

2. Si se introducen más de ocho dígitos, los de la izquierda se borrarán.

3. Los bits de entrada no utilizados aquí, sí se pueden utilizar como bits deentrada normales.

Hardware Esta instrucción escribe 8 dígitos en BCD de un teclado decimal y utiliza 10 pun-tos de entrada. Preparar un teclado decimal y conectarlo de tal forma que lasteclas numéricas 0 a 9 se escriban en los puntos 0 a 9 como se indica en el dia-grama. Se pueden utilizar las entradas en una unidad de entrada de c.c. con 16o más puntos.

1

3

5

7

9

11

13

15

COM

0

2

4

6

8

10

12

14

COM

ID212

0 V

0

9

Unidad de entrada c.c.

10 teclas

Instrucciones avanzadas de E/S Sección 5-29

Page 363: C200HALPHA Manual Programacion

357

Utilización de la instrucción Si el canal de entrada para conectar el teclado decimal es IW, la operación serácomo se indica cuando se ejecute el programa. (Suponiendo que ya se hanintroducido varios números).

3 5 0 1 2 4 3 8

5 0 1 2 4 3 8 1

0 1 2 4 3 8 1 0

1 2 4 3 8 1 0 2

2 4 3 8 1 0 2 9

D1+1 D1

(1)

(2)

(3)

(4)

(1) (2) (3) (4)

00

01

02

09

00

01

02

09

10

to

IW

to

Entrada de tecladodecimal

Indicadores corres-pondientes a entra-das de teclado deci-mal (Los indicadorespermanecen en ONhasta la siguienteentrada)

En ON si se pulsa unatecla.

D2

Antes deejecución

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

D1 y D1+1 no están en la misma área de datos.

Ejemplo En este ejemplo, se muestra un programa para introducir números desde unteclado decimal. Suponiendo que el teclado está conectado a IR 000.

TKY(211)

000

DM1000

DM1002

25313 (Siempre ON)

@XFER(070)

#0002

DM1000

DM 0000

00015

La información enviada a IR 000 utilizando TKY(211) se convierte a BCD y sealmacena en DM 1000 y DM 1001. La información de la tecla se almacena enDM 1002.

IR 00015 se utiliza como una “tecla ENTER,” y cuando IR 00015 se pone en ON,los datos almacenados en DM 1000 y DM 1001 se transferirán a DM 0000 y DM0001.

Instrucciones avanzadas de E/S Sección 5-29

Page 364: C200HALPHA Manual Programacion

358

5-29-5 ENTRADA DE MATRIZ -- MTR(213)

OW: Canal de salida

IR, SR, AR, DM, HR, LR

IW: Canal de entrada

IR, SR, AR, DM, HR, LR

Símbolo de relés Áreas de datos de operando

MTR(213)

IW

OW

DD: Primer canal destino

IR, SR, AR, DM, HR, LR

Limitaciones D y D+3 deben estar en la misma área de datos.

Descripción Cuando la condición de ejecución es OFF, MTR(213) no se ejecuta. Cuando lacondición de ejecución es ON, MTR(213) introduce datos de una matriz 8 % 8 ygraba esos datos en D a D+3. Los datos para los 64 puntos de la matriz serángrabados incluso aunque haya menos de 64 teclas conectadas.

0 1 2 3 4 5 6 7

8 9 10 11 12 13 14 15

16 17 18 19 20 21 22 23

24 25 26 27 28 29 30 31

32 33 34 35 36 37 38 39

40 41 42 43 44 45 46 47

48 49 50 51 52 53 54 55

56 57 58 59 60 61 62 63

00 01 02 03 04 05 06 07

00

01

02

03

04

05

06

07

08

OW bits 00 a 07(para salidas 00 a 07 dela unidad de salida)

IW bits 00 a 07(para puntos 00 a 07 de la uni-dad de entrada)

Bit 08 se pone en ONpara indicar que se haleído la matriz entera. El dato de entrada se

escribe en D a D+3 (verla siguiente tabla).

Una señal de selección se envía a los bits 00 a 07 de OW consecutivamentedurante 3 ciclos. Sólo un bit de salida se pondrá a ON al mismo tiempo. El bit 08de OW se pone en ON durante 3 ciclos después de 07 para indicar cuándo se hacompletado una vuelta de lectura de la matriz.Cuando se pulsa una de las 64 teclas, se recibirá una entrada en uno de los bitsde entrada. La tecla pulsada se identifica comparando el bit de salida al que seenvió la señal y el bit de entrada que la recibió.Cuando se detecta una entrada de tecla, se pone a ON el correspondiente bit enD a D+3. La siguiente tabla muestra la correspondenciaentre teclas y bits en D aD+3.

Canal Bits Teclas correspondientes

D 00 a 15 0 a 15

D+1 00 a 15 16 a 31

D+2 00 a 15 32 a 47

D+3 00 a 15 48 a 63

Hardware Esta instrucción introduce hasta 64 señales de una matriz 8 x 8 utilizando 8 pun-tos de entrada y 8 puntos de salida. Se puede utilizar cualquier matriz 8 x 8. Lasentradas se deben conectar a una unidad de entrada de c.c. con 8 o más puntos

Instrucciones avanzadas de E/S Sección 5-29

Page 365: C200HALPHA Manual Programacion

359

y las salidas a una unidad de salida transistor con 8 o más puntos. El cableadobásico y los diagramas de tiempo para MTR(213) se muestran a continuación.

Cableado

Columna no. 8

Unidad de E/S ID 211

B0B1B2B3B4B5B6B7B8B9

A0A1A2A3A4A5A6A7A8A9

A0A1A2A3A4A5A6A7A8

Columna no. 1

Columna no. 7

Diagrama de tiempos

Señal de selección de matriz

Estado de matriz

Bits indicadores de estado de entrada

Indicador de unavuelta (bit 08 delcanal de salida)Cada vuelta se completa en 24 ejecuciones

000102030405060700326400326406

Precauciones Las 64 teclas se pueden dividir en 8 columnas (incluyendo una columna para bit08 de OW) que se leen consecutivamente. Dado que cada columna se leedurante 3 ciclos, se puede producir un retardo de hasta 25 ciclos hasta que selea una columna de teclas dada.

El resfresco de E/S se debe realizar para todos los puntos de E/S utilizados porMTR(213) cada vez que se ejecute para garantizar la efectividad de la opera-ción. La instrucción REFRESCO DE E/S se debe utilizar con MTR(213) siempreque MTR(213) se utilice en una subrutina para asegurar que los puntos de E/Sse refresquen cada ejecución.

MTR(213) se ejecutará desde el primer ciclo siempre que se arranque la ejecu-ción del programa, incluyendo rearranques después de interrupciones de ali-mentación.

SR 25403, que se pone en ON mientras se ejecuta MTR(213), se resetea enuna sección de programa enclavada y MTR(213) no se ejecuta en una secciónde programa enclavada.

No utilizar MTR(213) más de dos veces en el programa.

MTR(213) no se puede utilizar para unidades de E/S montadas en bastidoresesclavos.

Ejemplo Los siguientes ejemplos muestran la programación de MTR(213) en una subru-tina programada, donde se programa IORF(097) para garantizar que los

Instrucciones avanzadas de E/S Sección 5-29

Page 366: C200HALPHA Manual Programacion

360

canales de E/S utilizados por MTR(213) se refrescan cada vez que se ejecutaMTR(213).

INT(089)

001

004

# 0002

INT(089)

000

004

# 0002

SBN(092) 99

MTR(213)

S

D1

D2

IORF(097)

D1

D2

RET(093)

END(001)

Indicadores ER: No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

25403: SR 25403 está en ON mientras se está ejecutando MTR(213).

5-30 Instrucciones de unidad de E/S especialLas instrucciones de unidad de E/S especial se utilizan para transferir datos a yde la memoria de la unidad de E/S especial especificada.

5-30-1 LECTURA UNIDAD DE E/S ESPECIAL -- IORD(222)

C: Código de control

IR, SR, AR, DM, HR, TC, LR, #

S: Información de fuente

IR, SR, AR, DM, HR, TC, LR, #

Áreas de datos de operando

D: Primer canal destino

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

IORD(222)

C

S

D

@IORD(222)

C

S

D

Limitaciones Sólo se pueden especificar las unidades de E/S especiales montadas en el bas-tidor de CPU o en bastidores expansores de E/S del PLC.

Los últimos tres dígitos de S deben estar en BCD (de 001 a 128).

Cuando la condición de ejecución es OFF, IORD(222) no se ejecuta. Cuando lacondición de ejecución es ON, IORD(222) transfiere datos desde la memoria dela unidad de E/S especial especificada a los canales comenzando en D. La in-

Descripción

Instrucciones de unidad de E/S especial Sección 5-30

Page 367: C200HALPHA Manual Programacion

361

formación de fuente proporciona el número de nodo de la unidad de E/S espe-cial y el número de canales a leer, como se muestra en el siguiente diagrama.

S:

Dígitos 2 a 4: Número de canales a leer (001 a 128)

Dígito 1: Número de nodo de la unidad de E/S especial (0 a F)

El código de control (C) depende de la unidad de E/S especial que se esté espe-cificando.

Ejemplo Cuando IR 00000 conmuta de OFF a ON, la siguiente instrucción transfiere 100canales del área de memoria de la unidad de E/S especial número 3 a los ca-nales entre DM 0100 y DM 0199.

IORD(222)

C

#3100

DM 0100

00000 Dirección Instrucción Operandos

00200 LD 0000000201 @IORD(222)

C#3100

DM 0100

Indicadores ER: Los tres últimos dígitos de S (especificador de número de canales) noestán en BCD o no están dentro del rango de 001 a 128.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

El número de unidad de la unidad fuente no está entre 0 y F o está mon-tada en un bastidor esclavo.

Los datos recibidos desbordan el área de datos.

Se ha especificado una unidad de E/S especial que no es compatiblecon IORD(222).

la instrucción no se completó correctamente.

Se ha producido un error en la unidad especificada o hay un error deverificación con la unidad especificada.

Se ha producido un error de handshake.

EQ: En ON cuando la lectura de los datos ha sido correcta; en caso contrarioen OFF.

5-30-2 ESCRITURA DE UNIDAD DE E/S ESPECIAL -- IOWR(223)

C: Código de control

IR, SR, AR, DM, HR, TC, LR, #

D: Información de destino

IR, SR, AR, DM, HR, TC, LR, #

Áreas de datos de operando

S: Primer canal fuente

IR, SR, AR, DM, HR, TC, LR

Símbolos de relés

IOWR(223)

C

S

D

@IOWR(223)

C

S

D

Limitaciones Sólo se pueden especificar las unidades de E/S especiales montadas en el bas-tidor de CPU o en bastidores expansores de E/S del PLC.Los tres últimos dígitos de D deben estar en BCD (de 001 a 128).

Cuando la condición de ejecución es OFF, IOWR(223) no se ejecuta. Cuando lacondición de ejecución es ON, IOWR(223) transfiere datos de los canales co-menzando en D a la memoria de la unidad de E/S especial especificada. La in-

Descripción

Instrucciones de unidad de E/S especial Sección 5-30

Page 368: C200HALPHA Manual Programacion

362

formación de destino proporciona el número de nodo de la unidad de E/S espe-cial y el número de canales a escribir, como se indica en el siguiente diagrama.

D:

Dígitos 2 a 4: Número de canales a escribir (001 a 128)

Dígito 1: Número de nodo de la unidad de E/S especial (0 a F)

El código de control (C) depende de la unidad de E/S especial que se especifi-que.

Ejemplo Cuando IR 00000 conmuta de OFF a ON, la siguiente instrucción escribe loscontenidos de los 10 canales desde DM 0100 a DM 0109 en el área de memoriade la unidad de E/S especial número 2.

IOWR(223)

C

DM 0100

#2010

00000 Dirección Instrucción Operandos

00200 LD 0000000201 @IOWR(223)

CDM 0100

#2010

Indicadores ER: Los tres últimos dígitos de S (especificador de número de canales) noestán en BCD o no están dentro del rango de 001 a 128.

No existe el canal DM/EM direccionado indirectamente. (Contenido delcanal *DM/EM no está en BCD o se ha excedido el área de DM/EM.)

El número de unidad de la unidad destino no está entre 0 y F o estámontada en un bastidor esclavo.

La instrucción no se ha completado correctamente.

Se ha especificado una unidad de E/S especial que no es compatiblecon IOWR(223).

Se ha producido un error en la unidad especificada o hay un error deverificación con la unidad especificada.

Se ha producido un error de handshake.

Se ha excedido el rango de canales en la unidad destino.

EQ: En ON cuando la escritura de los datos ha sido correcta; en caso con-trario en OFF.

Instrucciones de unidad de E/S especial Sección 5-30

Page 369: C200HALPHA Manual Programacion

363

SECCIÓN 6Tiempos de ejecución del programa

Durante el proceso de escritura y depuración de un programa, se debe tener en cuenta el tiempo de ejecución de las diversasoperaciones. Es importante, para obtener la acción de control deseada en el momento justo, el tiempo necesario para ejecutarel programa y realizar otras operaciones de la CPU, dado que es el tiempo de cada señal de entrada y de salida del PLC. Estasección explica el ciclo y cómo calcular el tiempo de ciclo y tiempo de respuesta de E/S.

6-1 Tiempo de ciclo 362. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-2 Cálculo del tiempo de ciclo 367. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6-2-1 PLCs con sólo unidades de E/S 368. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-2-2 PLCs con unidades Host Link y maestras de E/S remotas 368. . . . . . . . . . . . . . . . . .

6-3 Tiempos de ejecución de instrucción 369. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-4 Tiempo de respuesta de E/S 381. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6-4-1 Sistemas básicos 381. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-4-2 Sistemas de E/S remotas 382. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-4-3 Sistemas Host Link 384. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-4-4 Sistemas PC Link 384. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-4-5 Tiempo de respuesta de E/S de enlaces 1:1 387. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6-4-6 Tiempos de respuesta de interrupción 389. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 370: C200HALPHA Manual Programacion

364

6-1 Tiempo de cicloPara ayudar en el funcionamiento del PLC, se pueden visualizar en la consolade programación u otro dispositivo de programación los tiempos de ciclo medio,máximo y mínimo, almacenándose en AR 26 y AR 27 los valores de tiempo deciclo máximo y de tiempo de ciclo actual. Para una programación y funciona-miento efectivos del PLC es imprescindible comprender las operaciones que seproducen durante el ciclo y los elementos que afectan al tiempo de ciclo.Los factores más importantes para determinar la temporización del programason el tiempo de ciclo y el tiempo de respuesta de E/S. Por ciclo se entiende unciclo de operación de CPU; el tiempo necesario para un ciclo se llama el tiempode ciclo. El tiempo necesario para producir una señal de salida de controlsiguiendo a la recepción de una señal de entrada se denomina tiempo derespuesta de E/S.En el siguiente diagrama se muestra el diagrama de operación de la CPU.

Tiempo de ciclo Sección 6-1

Page 371: C200HALPHA Manual Programacion

365

Diagrama de operación de la CPU

SI

NO

NO

Alimentación ON

Borra área IR y reseteatodos los temporizadores

Chequeo conexiones de uni-dades de E/S

Reset de temporizadorde guarda

Chequeo de hardware ymemoria de programa

Chequeo OK?

Servicio unidades Host Link

ALARM/ERROR Ejecutar programa

Reset temporizador guarda

Refresco bits de entraday señales de salida

ALARM(destella)ERROR

(Encendido)

Servicio periféricos

Reset temporizador de guarda ycontador de direcciones

Fin de programa?

SI

Tiempo deciclo mín.? NO

SIReset temporizador de guarda y espera atranscurrir el tiempo de ciclo seleccionado

Cálculo tiempo de ciclo

Servicio unidades SYSMACLINK y SYSMAC NET

Inicialización alconectar laalimentación

Procesos desupervisión

Ejecución delprograma

Cálculo detiempo de ciclo

Refresco deE/S

Servicio unidadHost Link

Servicio deperiféricos

Servicio deunidad SYS--MAC LINK ySYSMAC NET

Tiempode ciclodelPLC

Selecciona indicadores deerror y activa indicadores.

Servicio puerto RS--232C

Servicio tarjeta comunicac.

Servicio puertoRS--232C

Servicio tarjetacomunicaciones

Nota Se puede seleccio-nar un tiempo mín.de ciclo seleccio-nándolo en DM6619 o ejecutandoSCAN(018).

Las tres primeras operaciones inmediatamente después de aplicar la alimenta-ción se efectúan una vez cada vez que se conecta la alimentación. El resto deoperaciones se realizan en forma cíclica. El tiempo de ciclo es el tiempo quenecesita la CPU para completar uno de estos ciclos. Este ciclo incluye básica-mente nueve tipos de operaciones.

Tiempo de ciclo Sección 6-1

Page 372: C200HALPHA Manual Programacion

366

1, 2, 3... 1. Supervisión2. Ejecución del programa3. Cálculo de tiempo de ciclo4. Refresco de E/S5. Servicio de unidad Host Link6. Servicio de puerto RS--232C7. Servicio de periférico8. Servicio de tarjeta de comunicaciones9. Servicio de SYSMACNET/SYSMAC LINK

El tiempo de ciclo es el tiempo total que el PLC necesita para realizar todas lasoperaciones anteriores. El tiempo necesario para la operación 3, cálculo detiempo de ciclo, es despreciable y se puede ignorar en cálculos reales.

Tiempo de ciclo Sección 6-1

Page 373: C200HALPHA Manual Programacion

367

Operación Tiempo necesario Función

1. Supervisión 0.7 ms máx.(2,1 ms en la C200HE--CPU11--ZE)

Reset de temporizador de guarda. Che-queo de bus de E/S, memoria de pro-grama. Refresco de reloj.

2. Ejecución de programa El tiempo de ejecución total para todas lasinstrucciones varía con el tamaño del pro-grama, las instrucciones utilizadas y las con-diciones de ejecución. Consultar 6-3 Tiem-pos de ejecución de instrucción para másinformación.

Programa ejecutado.

3. Cálculo de tiempo deciclo

Insignificante Cálculo de tiempo de ciclo. Cuando se eje-cuta la instrucción TIEMPO DE CICLO seejecuta la instrucción (SCAN(018)), esperahasta que transcurre el tiempo seleccio-nado y luego resetea el temporizador deguarda.

4. Refresco de E/S El total de los siguientes tiempos:

20 !s por byte de entrada (8 puntos). 20 !spor byte de salida (8 puntos). (Unidades desalida de 12 puntos calculadas para 16 pun-tos)

Tiempo de refresco de E/S de unidad PCLink.

Tiempo de refresco de unidad E/S especial.

1.1 ms por unidad maestra de E/S remotas+0.17 ms por canal de E/S utilizado en basti-dores esclavos.

Tiempo de refresco de unidad de E/S de gru-po 2 (alta densidad).

Consultar las siguientes tablas para másinformación sobre tiempos de refresco deunidad de E/S especial, unidad PC Link yunidad de E/S de alta densidad grupo 2.

Bits de entrada seleccionados de acuerdocon estado de señales de entrada.Señales de salida enviadas de acuerdocon el estado de bits de salida en memo-ria.Refrescadas entradas y salidas en siste-mas de E/S remotas.Servidas unidades de E/S especiales.Servidas unidades de E/S de alta densidadgrupo 2.

5. Servicio de unidad HostLink

6 ms por Unidad máx. Procesados los comandos del ordenadorconectado a través de unidades Host Linkde montaje en bastidor.

6. Servicio de puertoRS-232C

0 ms cuando no hay dispositivo conectado.

0.26 ms mínimo o T " 0.05, donde T es eltiempo de ciclo calculado en operación 3.

Procesadas las comunicaciones con dis-positivos conectados al puerto RS-232C.

6. Servicio de periféricos 0 ms cuando no hay dispositivo conectado.

0.26 ms mínimo o T " 0.05, donde T es eltiempo de ciclo calculado en operación 3.

Se procesan los comandos de periféricosy unidades interfaces.

8. Servicio de tarjeta decomunicaciones

0.5 ms + tiempo de proceso por puerto.

El tiempo de proceso por puerto es comosigue:0.26 ms mínimo o T " 0.05, donde T el eltiempo de ciclo calculado en operación 3.

Se procesan los comandos de tarjeta decomunicaciones (RS-232C, RS-422, oRS-485)

9. Servicio SYSMAC NETLink/ SYSMAC LINK

0 ms cuando no hay montada unidad decomunicaciones.

Para C200HS-SLKjj o C200HS-SNTjj:0.8 ms + 15 ms máx. por unidad.

Para C200HW-SLKjj:3.5 ms máx. por unidad.

Para C200HW-PCU01/PCS01:6 ms máx. por unidad.

Se procesan los comandos de ordena-dores y de otros dispositivos periféricosconectados a las unidades SYSMAC NETLink/SYSMAC LINK.

Tiempo de ciclo Sección 6-1

Page 374: C200HALPHA Manual Programacion

368

Refresco de unidad PC Link

Puntos de E/S arefrescar

Tiempo necesario(ms)

512 7.4

256 4.1

128 2.7

64 1.7

Refresco de unidad de E/S especial

Unit Time required per Unit

C200H-ID501/215 0.6 ms

C200H-OD501/215 0.0.6 ms cada una cuando se selecciona para 32E/S

C200H-MD501/215 1.6 ms cada una cuando se selecciona para E/Sdinámicas

C200H-CT001-V1/CT002dinámicas

2.0 ms

C200H-NC111/NC112 2.1 ms

C200H-NC211 5.0 ms

C200H-AD001 1.1 ms

C200H-DA001 0.9 ms

C200H-TS001/TS101 1.2 ms

C200H-ASC02 1.9 ms cada una normal, 5.0 ms para formato @

C200H-IDS01-V1/IDS21 2.0 ms cada una normal, 5.5 ms para transferir co-mando

C200H-OV001 3.3 ms

C200H-FZ001 2.0 ms

C200H-TCjjj 2.7 ms

C200H-CP114 2.0 ms

C200H-AD002 1.4 ms

C200H-LS101 2.3 ms

C200H-PIDjjj 2.7 ms

C200H-DA002 1.0 ms

C200HW-SRM21 0.44 ms cuando el número máx. de esclavos está se-leccionado a 16.0.88 ms cuando el número máx. de esclavos está se-leccionado a 32.

C200HW-DRM21 1.72 ms + 0.022 " el número de canales

C200H-CT021 0.7 ms

C200H-MC221 2 ms (Normal)3 ms (Cuando se están refrescando los datos)

Refresco de unidad de E/S de alta densidad grupo 2

Unidad Tiempo necesario

C200H-ID216 0.18 ms

C200H-OD218 0.14 ms

C200H-ID217 0.31 ms

C200H-OD219 0.23 ms

NT Links Si el PLC está conectado a un Terminal Programable (PT) vía unidad de interfazC200HX/HG/HE, serán necesarios los tiempos mostrados en la siguiente tablapara refresco de E/S para el PT.

Special I/O Unit Refresh

Tiempo de ciclo Sección 6-1

Page 375: C200HALPHA Manual Programacion

369

Número de entradas de la tabla parael PT

Tiempo de refresco de E/S

Selección mínima:Tabla cadena de caracteres: 0Tabla numérica: 0

2.5 ms

Selección máxima:Tabla cadena de caracteres: 32Tabla numérica: 128

5.4 ms

A las unidades maestras de E/S remotas se da servicio una vez cada ciclo. Si lasunidades de E/S especiales se montan en bastidores esclavos de E/S remotas,el tiempo de transmisión de E/S remota puede exceder el tiempo de ciclo.Puede haber ciclos en los que no haya refresco de E/S entre la maestra y elPLC. Pueden enviarse señales imprecisas, especialmente cuando las instruc-ciones diferenciadas se pongan a ON y a OFF.

Dentro del PLC, el temporizador de guarda mide el tiempo de ciclo y lo comparacon el valor seleccionado. Si el tiempo de ciclo excede el valor seleccionado deltemporizador de guarda, se generará un error FALS 9F y la CPU parará.WDT(094) se puede utilizar para ampliar el valor seleccionado para el tempori-zador de guarda.Incluso aunque el tiempo de ciclo no exceda el valor seleccionado del tempori-zador de guarda, un tiempo de ciclo largo puede afectar negativamente la preci-sión de operaciones del sistema como se muestra en la siguiente tabla.

Tiempo de ciclo(ms)

Posibles efectos negativos

10 o mayor TIMH(015) no es preciso cuando se utiliza de TC 016 a TC 511.

20 o mayor El impulso de reloj de 0.02-segundos no se leerá con precisión.

100 o mayor El impulso de reloj de 0.1-segundo no se leerá con precisión yse pondrá a ON el indicador de error de tiempo de ciclo(25309).

200 o mayor El impulso de reloj de 0.2-segundos no se leerá con precisión.

6.500 o mayor Independientemente de la selección de temporizador de guardase genera código FALS 9F y para el sistema.

Edición Online Durante la edición online desde un dispositivo de programación, la operación seinterrumpirá durante un máximo de 80 ms (160 ms máximo para CPUs C200H--CPU65/--CPU85) y se enmascararán las interrupciones para reescribir el pro-grama de usuario. Durante este intervalo no se avisará de tiempos de ciclo lar-gos. Comprobar los efectos sobre tiempo de respuesta de E/S antes de editar elprograma online.Cuando los bits 00 a 07 de AR 25 contienen el código de password “5A,” seinhibirá la edición online y la CPU estará en estado de standby mientras esté enON el bit de inhibir edición online (AR 2509). El indicador de standby de ediciónonline (AR 2510) se pondrá en ON mientras la CPU esté en standby. Se ejecu-tará el proceso cuando AR 2509 esté en OFF. (AR 2510 se pondrá también enOFF).

Atención La edición online del programa puede provocar retardos en las respuestas deE/S sin avisos por parte del sistema para tiempos de ciclo largos provocados poredición online. Antes de editar online, verificar que los retardos en las respues-tas de E/S no creen situaciones peligrosas en el sistema controlado.

6-2 Cálculo del tiempo de cicloA la hora de calcular el tiempo de ciclo, se debe tener en cuenta la configuracióndel PLC, el programa y las condiciones de ejecución del programa. Esto signi-fica tener en cuenta el número de puntos de E/S, las instrucciones de programa-ción utilizadas y si se utilizan o no periféricos. Esta sección describe algunosejemplos básicos de cálculo de ciclo. Para simplificar los ejemplos, se supone

Unidades de E/S especialesen bastidores esclavos deE/S remotas

Temporizador de guarda ytiempos de ciclo largos

Cálculo del tiempo de ciclo Sección 6-2

Page 376: C200HALPHA Manual Programacion

370

que las instrucciones utilizadas en el programa son del tipo LD o OUT. El tiempode ejecución medio para las instrucciones es por lo tanto 0.156!s. (Los tiemposde operación se describen en la tabla 6-3 Tiempos de ejecución de instrucción).

6-2-1 PLC sólo con unidades de E/SAquí se va a calcular el tiempo de ciclo para un PLC C200HS. La CPU controlasólo unidades de E/S, ocho en el bastidor de CPU y cinco en un bastidor expan-sor de E/S de 5 huecos. La configuración sería la de la figura. Se supone que elprograma contiene 5,000 instrucciones que necesitan una media de 0.156 !spara ejecutar cada una de ellas.

Bastidorde CPU

Bastidor expansor de E/S

Unidades de salida de 12 pts

Unidad de salida de 8 pts

Unidades de entradade 16 pts

Unidades de entrada de 8 pts Unidades de salida de 8 pts

La ecuación para calcular el tiempo de ciclo anterior es la siguiente:

Tiempo de ciclo = tiempo de supervisión + tiempo de ejecución del pro-grama + tiempo de refresco de E/S + tiempo de servicio de periféricos

Proceso Cálculo Con periférico Sin periférico

Supervisión Fijo 0.7 ms 0.7 ms

Ejecución delprograma

0.156!s/instrucción "5.000 instrucciones

0.78 ms 0.78 ms

Refresco de E/S Ver abajo. 0.34 ms 0.34 ms

Servicio deperiféricos

Tiempo mínimo 0.26 ms 0.0 ms

Tiempo de ciclo Total 2.08 ms 1.82 ms

El tiempo de refresco de E/S sería como sigue para dos unidades de entrada de16 puntos, para cuatro unidades de entrada de 8 puntos, dos unidades de salidade 12 puntos (las unidades de 12 puntos se tratan como unidades de 16 puntos)y cinco unidades de salida de 8 puntos controladas por el PLC:

8 pts

(16 pts " 2) + (8 pts " 4)" 20 !s = 0.34 ms" 20 !s +

8 pts

(16 pts " 2) + (8 pts " 5)

6-2-2 PLC con unidades Host Link y unidades maestras de E/S remotasEn este caso el tiempo de ciclo se calcula para un PLC con una unidad Host Linky una unidad maestra de E/S remotas instaladas. La CPU controla tres uni-dades de entrada de 8 puntos, tres unidades de salida de 8 puntos, una unidadHost Link y una unidad maestra de E/S remotas conectada a un bastidoresclavo de E/S remotas que contiene cuatro unidades de entrada de 16 puntosy cuatro unidades de salida de 12 puntos. La configuración del PLC podría ser lasiguiente. Se supone que el programa contiene 5,000 instrucciones que necesi-tan una media de 0.156 !s para ejecutarse cada una de ellas, que no hay nada

Cálculos

Cálculo del tiempo de ciclo Sección 6-2

Page 377: C200HALPHA Manual Programacion

371

conectado al puerto RS--232C y que no hay montada unidad SYSMAC NET/SYSMAC LINK.

Ordenador

Bastidoresclavo

Unidad Host Link

UnidadmaestraE/Sremotas

Bastidorde CPU

Unidades deentrada de 8 pts

Unidad de salidade 8 pts

Unidades de salidade 12 puntos

Unidades de entradade 16 puntos

La ecuación para calcular el tiempo de ciclo es la siguiente:Tiempo de ciclo = tiempo de supervisión + tiempo ejecución del programa

+tiempo de refresco de E/S + tiempo servicio unidad Host Link+ tiempo servicio de periféricos

Proceso Cálculo Con periférico Sin periférico

Supervisión Fijo 0.7 ms 0.7 ms

Ejecución delprograma

0.156!s/instrucción "5,000 instrucciones

0.78 ms 0.78 ms

Refresco de E/S Ver abajo. 2.58 ms 2.58 ms

Servicio de HostLink

Fijo 6.0 ms 6.0 ms

Servicio deperiféricos

0.7 + 0.78 + 2.58 +6 = 10.06

10.06 " 0.05 = 0.50

0.50 ms 0.0 ms

Tiempo de ciclo Total 10.56 ms 10.06 ms

El tiempo de refresco de E/S sería como sigue para las tres unidades de entradade 8 puntos y para las tres unidades de salida de 8 puntos montadas en el basti-dor de CPU, y para las ocho unidades montadas en un bastidor esclavo.

+ 1.1 ms + 8 Units " 0.17 ms = 2.58 ms8 pts

(8 pts " 3) + (8 pts " 3)" 20 !s

6-3 Tiempos de ejecución de instrucciónLa siguiente tabla lista los tiempos de ejecución de instrucciones de C200HX/HG/HE. Los tiempos de ejecución máximo y mínimo y las condiciones que losprovocan se dan donde son relevantes. Cuando se indica “canal” en la columnade Condiciones, implica el contenido de cualquier canal excepto para canalesde DM direccionados indirectamente. Los canales de DM direccionados indi-rectamente, que crean cuando se utilizan tiempos de ejecución más largos, seindican como “*DM.”Los tiempos de ejecución para la mayoría de instrucciones dependen de si seejecutan con una condición de ejecución ON u OFF. Las excepciones son lasinstrucciones de diagrama de relés OUT y OUT NOT, que necesitan el mismo

Cálculos

Tiempos de ejecución de instrucción Sección 6-3

Page 378: C200HALPHA Manual Programacion

372

tiempo independientemente de la condición de ejecución. El tiempo de ejecu-ción de OFF para una instrucción se puede variar también dependiendo de lascircunstancias, es decir, si está en una sección enclavada del programa y lacondición para IL es OFF, si está entre JMP(004) y JME(005) y la condición deejecución para JMP(004) es OFF, o si está reseteada por una condición de eje-cución OFF. “RSET”, “IL” y “JMP” se utilizan para indicar estas tres circunstan-cias.

Los tiempos de ejecución se dan en microsegundos si no se indica lo contrario.

Instrucción Condiciones Tiempo de ejecución ON (!s) Tiempo ejecución OFF (!s)C200HX C200HG C200HE C200HX C200HG C200HE

LD Para IR y SR 23600 a SR 25515 0.104 0.156 0.312 0.104 0.156 0.313

Para SR 25600 a SR 51115 0.208 0.313 0.626 0.104 0.156 0.313

LD NOT Para IR y SR 23600 a SR 25515 0.104 0.156 0.313 0.104 0.156 0.313

Para SR 25600 a SR 51115 0.208 0.313 0.626 0.104 0.156 0.313

AND Para IR y SR 23600 a SR 25515 0.104 0.156 0.312 0.104 0.156 0.313

Para SR 25600 a SR 51115 0.208 0.313 0.626 0.104 0.156 0.313

AND NOT Para IR y SR 23600 a SR 25515 0.104 0.156 0.313 0.104 0.156 0.313

Para SR 25600 a SR 51115 0.208 0.313 0.626 0.104 0.156 0.313

OR Para IR y SR 23600 a SR 25515 0.104 0.156 0.313 0.104 0.156 0.313

Para SR 25600 a SR 51115 0.208 0.313 0.626 0.104 0.156 0.313

OR NOT Para IR y SR 23600 a SR 25515 0.104 0.156 0.313 0.104 0.156 0.313

Para SR 25600 a SR 51115 0.208 0.313 0.626 0.104 0.156 0.313

AND LD --- 0.104 0.156 0.313 0.104 0.156 0.313

OR LD --- 0.104 0.156 0.313 0.104 0.156 0.313

OUT Para IR y SR 23600 a SR 25515 0.208 0.313 0.626 0.208 0.313 0.626

Para SR 25600 a SR 51115 0.313 0.468 0.936 0.208 0.313 0.626

OUT NOT Para IR y SR 23600 a SR 25515 0.208 0.313 0.626 0.208 0.313 0.626

Para SR 25600 a SR 51115 0.313 0.468 0.936 0.208 0.313 0.626

TIM Constante para SV 0.417 0.625 1.25 0.417 0.625 1.25£DM for SV 22.45 22.45 37.15Para canales designados 256 a 511 0.417 0.625 1.25

CNT Constante para SV 0.417 0.625 1.25 0.417 0.625 1.25£DM for SV 0.417 0.625 1.25 22.55 22.55 37.25Para canales designados 256 a 511 0.417 0.625 1.25 0.417 0.625 1.25

SET Para IR y SR 23600 a SR 25515 0.208 0.313 0.626 0.208 0.313 0.626

Para SR 25600 a SR 51115 0.313 0.468 0.936 0.208 0.313 0.626

RSET Para IR y SR 23600 a SR 25515 0.208 0.313 0.626 0.208 0.313 0.626

Para SR 25600 a SR 51115 0.313 0.468 0.936 0.208 0.313 0.626

NOP(000) --- 0.104 0.156 0.312 0.313 0.469 0.938

END(001) --- 24.75 39.45 0.313 0.469 0.938

IL(002) --- 7.55 22.25 0.313 0.469 0.938

ILC(003) --- 9.25 23.95 0.313 0.469 0.938

JMP(004) --- 7.65 22.35 0.313 0.469 0.938

JME(005) --- 7.95 22.65 0.313 0.469 0.938

FAL(006) Números FAL 01 a 99 88.6 88.6 0.313 0.469 0.938( )

Número FAL 00 86.6 86.6 0.313 0.469 0.938

FALS(007) --- --- (nota 1) (nota 2) 0.313 0.469 0.938

STEP(008) --- 33.1 47.8 0.313 0.469 0.938

15.3 30

SNXT(009) --- 9.25 23.95 0.313 0.469 0.938

Tiempos de ejecución de instrucción Sección 6-3

Page 379: C200HALPHA Manual Programacion

373

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

SFT(010) Con registro de desplazamiento de 1canal

21.05 35.75 R: 8.05 IL: 8.05 JMP:8.05

Con registro de desplazamiento de 100canales

117.8 132.5 R: 8.05 IL: 8.05 JMP:8.05

Con registro de desplazamiento de 250canales

262.5 277.2 R: 8.05 IL: 8.05 JMP:8.05

KEEP(011) Para IR y SR 23600 a SR 25515 0.208 0.313 0.625 0.208 0.319 0.625

Para SR 25600 a SR 51115 0.318 0.469 0.938

CNTR(012) Constante para SV 19.15 33.85 R: 16.95 IL: 11.65 JMP:11.65

£DM para SV 31.45 46.15 R: 16.95 IL: 11.65 JMP:11.65

DIFU(013) --- 13.75 28.45 Normal:13.75

IL:13.65

JMP:11.95

DIFD(014) --- 13.65 28.35 Normal:13.65

IL:13.55

JMP:11.85

TIMH(015) Constante de interrupción para SV 18.35 33.05 R: 25.05 IL:24.05

JMP:14.45

Ciclo normal 16.55 31.25 R: 21.95 IL:21.05 JMP:11.25

Interrupción £DM para SV 18.35 33.05 R: 37.1 IL: 36.5 JMP:14.45

Ciclo normal 16.55 31.25 R: 34.1 IL: 33.3 JMP:11.25

WSFT(016) Cuando se desplaza 1 canal 16.45 31.15 0.313 0.469 0.938

Cuando se desplaza 6,144 canales utili-zando £DM

6.45 ms (nota 2)

ASFT(017) Cuando se resetea 1 canal 24.95 39.65 0.313 0.469 0.938( )

Cuando se desplaza 1 canal utilizando£DM

29.05 43.75

Cuando se desplazan 10 canales utili-zando £DM

39.9 54.6

SCAN(018) Constante para SV 18.65 33.35 0.313 0.469 0.938

£DM para SV 30.45 45.15

MCMP(019) Comparar 2 canales, resultado a canal 60.3 75 0.313 0.469 0.938

Comparar 2 £DM, resultado £DM 93 107.7

CMP(020) Cuando se comparan una constante yun canal

0.417 0.625 1.25 0.313 0.469 0.938

Cuando se comparan dos canales 0.521 0.781 1.56

Cuando se comparan dos £DM 35.2 49.9

MOV(021) Cuando se transfiere una constante aun canal

0.417 0.625 1.25 0.313 0.469 0.938

Cuando se comparan dos canales 0.625 0.937 1.87

Cuando se transfiere £DM a £DM 33.7 48.4

MVN(022) Cuando se transfiere una constante aun canal

0.417 0.625 1.25 0.313 0.469 0.938

Cuando se comparan dos canales 0.625 0.937 1.87

Cuando se transfiere £DM a £DM 34.3 49

BIN(203) Cuando se convierte un canal a un ca-nal

19.65 34.35 0.313 0.469 0.938

Cuando se convierte £DM a £DM 40.5 55.2

BCD(024) Cuando se convierte un canal a un ca-nal

18.25 32.95 0.313 0.469 0.938

Cuando se convierte £DM a £DM 39.1 53.8

ASL(025) Cuando se desplaza un canal 12.25 26.95 0.313 0.469 0.938

Cuando se desplaza £DM 23.35 38.05

Tiempos de ejecución de instrucción Sección 6-3

Page 380: C200HALPHA Manual Programacion

374

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

ASR(026) Cuando se desplaza un canal 11.95 26.65 0.313 0.469 0.938

Cuando se desplaza £DM 22.95 37.65

ROL(027) Cuando se rota un canal 13.15 27.85 0.313 0.469 0.938

Cuando se rota £DM 24.25 38.95

ROR(028) Cuando se rota un canal 13.15 27.85 0.313 0.469 0.938

Cuando se rota £DM 24.25 38.95

COM(029) Cuando se invierte un canal 11.45 26.15 0.313 0.469 0.938

Cuando se invierte £DM 22.65 37.35

ADD(030) Constante + canal # canal 16.65 31.35 0.313 0.469 0.938

Canal + canal# canal 18.45 33.15

£DM + £DM # £DM 50.1 64.8

SUB(031) Constante -- canal # canal 16.65 31.35 0.313 0.469 0.938

Canal -- canal# canal 18.45 33.15

£DM -- £DM # £DM 50.1 64.8

MUL(032) Constante " canal # canal 31.15 45.85 0.313 0.469 0.938

Canal " canal# canal 32.95 47.65

£DM " £DM # £DM 64.7 79.4

DIV(033) Canal $ constante # canal 30.15 44.85 0.313 0.469 0.938

Canal $ canal# canal 32.35 47.05

£DM $ £DM # £DM 64.1 78.8

ANDW(034) Constante AND canal # canal 14.35 29.05 0.313 0.469 0.938

Canal AND canal# canal 15.25 29.95

£DM AND £DM # £DM 46.7 61.4

ORW(035) Constante OR canal # canal 14.35 29.05 0.313 0.469 0.938

Canal OR canal# canal 15.25 29.95

£DM OR £DM # £DM 46.7 61.4

XORW(036) Constante XOR canal # canal 14.35 29.05 0.313 0.469 0.938

Canal XOR canal# canal 15.25 29.95

£DM XOR £DM # £DM 46.7 61.4

XNRW(037) Constante XNOR canal # canal 14.55 29.25 0.313 0.469 0.938

Canal XNOR canal# canal 15.45 30.15

£DM XNOR £DM # £DM 46.9 61.6

INC(038) Cuando se incrementa un canal 11.55 26.25 0.313 0.469 0.938

Cuando se incrementa £DM 22.45 37.15

DEC(039) Cuando se decrementa un canal 11.45 26.15 0.313 0.469 0.938

Cuando se decrementa £DM 22.35 37.05

STC(040) --- 7.22 21.92 0.313 0.469 0.938

CLC(041) --- 7.22 21.92 0.313 0.469 0.938

TRSM(045) --- 18.65 33.35 0.313 0.469 0.938

MSG(046) Designado como DM 12.05 26.75 0.313 0.469 0.938

Designado como £DM 21.95 36.65

LMSG(047) Canal para SV 17.95 32.65 0.313 0.469 0.938

£DM para SV 27.65 42.35

TERM(048) --- 8.55 23.25 0.313 0.469 0.938

ADB(050) Constante + canal # canal 19.15 33.85 0.313 0.469 0.938

Canal + canal # canal 20.05 34.75

£DM + £DM # £DM 51.7 66.4

SBB(051) Constante -- canal # canal 18.95 33.65 0.313 0.469 0.938

Canal -- canal # canal 19.85 34.55

£DM -- £DM # £DM 51.7 66.4

Tiempos de ejecución de instrucción Sección 6-3

Page 381: C200HALPHA Manual Programacion

375

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

MLB(052) Constante " canal # canal 16.95 31.65 0.313 0.469 0.938

Canal " canal # canal 17.85 32.55

£DM " £DM # £DM 49.3 64

DVB(053) Canal $ constante # canal 17.15 31.85 0.313 0.469 0.938

Canal $ canal # canal 18.05 32.75

£DM $ £DM # £DM 49.7 64.4

ADDL(054) Canal + canal # canal 22.45 37.15 0.313 0.469 0.938

£DM + £DM # £DM 53.9 68.6

SUBL(055) Canal -- canal # canal 22.45 37.15 0.313 0.469 0.938

£DM -- £DM # £DM 53.9 68.6

MULL(056) Canal " canal # canal 110.6 125.3 0.313 0.469 0.938

£DM " £DM # £DM 142.6 157.3

DIVL(057) Canal $ canal # canal 105.8 120.5 0.313 0.469 0.938

£DM $ £DM # £DM 135.8 150.5

BINL(058) Cuando se convierte canales a canales 35.15 49.85 0.313 0.469 0.938( )

Cuando se convierte £DM a £DM 55.9 70.6BCDL(059) Cuando se convierte canales a canales 25.75 40.45 0.313 0.469 0.938( )

Cuando se convierte £DM a £DM 46.5 61.2CMPL(060) Cuando se comparan canales con ca-

nales16.55 31.25 0.313 0.469 0.938

Cuando se comparan £DM con £DM 38.5 53.2

MPRF(061) 1 Unidad 2.00 16.7 0.313 0.469 0.938

10 Unidades 13.00 27.7

XFRB(062) Enviar 1 bit de canal a canal 22.45 37.15 0.313 0.469 0.938

Enviar FF bits de £DM a £DM 142.6 157.3LINE(063) Cuando se transfieren de canales a una

constante59.7 74.4 0.313 0.469 0.938

Cuando se transfiere de canales a uncanal

62.1 76.8

Cuando se transfiere de £DM a £DM 182.5 197.2COLM(064) Cuando se transfiere de una constante

a canales72.7 87.4 0.313 0.469 0.938

Cuando se transfiere de un canal a ca-nales

74.9 89.6

Cuando se transfiere de £DM a £DM 190.5 205.2SEC(065) DM a DM 35.35 50.05 0.313 0.469 0.938

£DM a £DM 56.3 71HMS(066) DM a DM 36.5 51.2 0.313 0.469 0.938( )

£DM a £DM 57.7 72.4BCNT(067) Constante para SV 39.1 53.8 0.313 0.469 0.938( )

£DM para SV 26.5 ms (Vernota 2)

BCMP(068) Comparar constante con tabla de ca-nales designada

62.1 76.8 0.313 0.469 0.938

A canal después de comparar con canal 63.1 77.8Comparar £DM # £DM-tabla designa-da £DM-

98.2 112.9

APR(069) Designación de SIN 24.25 38.95 0.313 0.469 0.938( )

£DM para SV 473 487.7XFER(070) Cuando se transfiere 1 canal 45.3 44.2 0.313 0.469 0.938

Cuando se transfieren 1,024 canalesutilizando £DM

655 653.9

Cuando se transfiere 6,143 canales utili-zando £DM

3.66 ms (nota 3)

Tiempos de ejecución de instrucción Sección 6-3

Page 382: C200HALPHA Manual Programacion

376

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

BSET(071) Cuando se selecciona una constante a1 canal

19.75 34.45 0.313 0.469 0.938

Cuando se selecciona £DM ms a 1,024canales utilizando £DM

40.9 55.6

Cuando se selecciona £DM ms a 6,144canales utilizando £DM

52.3 67

ROOT(072) Cuando se calcula la raíz cuadrada deun canal y se coloca en un canal

41.7 56.4 0.313 0.469 0.938

Cuando se calcula la raíz cuadrada de99,999,999 en £DM y se coloca en £DM

85.5 100.2

XCHG(073) Entre canales 14.45 29.15 0.313 0.469 0.938

Entre £DM 36.45 51.15

SLD(074) Cuando se desplaza 1 canal 15.65 30.35 0.313 0.469 0.938

Cuando se desplaza 1,024 DM canalesutilizando £DM

2.72 ms (nota 2)

Cuando se desplaza 6,144 DM canalesutilizando £DM

16.2 ms (nota 2)

SRD(075) Cuando se desplaza 1 canal 15.65 30.35 0.313 0.469 0.938

Cuando se desplaza 1,024 DM canalesutilizando £DM

2.72 ms (nota 2)

Cuando se desplaza 6,144 DM canalesutilizando £DM

16.2 ms (nota 2)

MLPX(076) Cuando se decodifica canal a canal 47.3 62 0.313 0.469 0.938

Cuando se decodifica £DM a £DM 103.8 118.5

DMPX(077) Cuando se codifica canal a canal 28.45 43.15 0.313 0.469 0.938

Cuando se codifica £DM a £DM 111.8 126.5

SDEC(078) Cuando se decodifica un canal a un ca-nal

26.95 41.65 0.313 0.469 0.938

Cuando se decodifican 2 dígitos £DM a£DM

63.3 78

Cuando se decodifican 4 dígitos £DM a£DM

71.7 86.4

FDIV(079) Canal $ canal # canal (igual 0) 62.3 77 0.313 0.469 0.938

Canal $ canal # canal (distinto de 0) 499 513.7

£DM $ £DM # £DM 843 857.7

DIST(080) Constante # (canal + (canal)) 27.65 42.35 0.313 0.469 0.938

£DM # (£DM + (£DM)) 61.5 76.2

COLL(081) (Canal + (canal)) # canal 28.75 43.45 0.313 0.469 0.938

(£DM + (£DM)) # £DM 64.3 79

MOVB(082)

Cuando se transfiere una constante aun canal

17.35 32.05 0.313 0.469 0.938( )

Cuando se transfiere canal a un canal 19.45 34.15Cuando se transfiere £DM a £DM 52.9 67.6

MOVD(083) Cuando se transfiere una constante aun canal

16.95 31.65 0.313 0.469 0.938

Cuando se transfiere canal a un canal 18.25 32.95Cuando se transfiere £DM a £DM 54.3 69

SFTR(084) Cuando se desplaza 1 canal 20.05 34.75 0.313 0.469 0.938( )

Cuando se desplazan 1,024 £DM utili-zando £DM

1.1 ms (nota 2)

Cuando se desplazan 6,144 £DM utili-zando £DM

6.37 ms (nota 2)

Tiempos de ejecución de instrucción Sección 6-3

Page 383: C200HALPHA Manual Programacion

377

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

TCMP(085) Comparación de canales en una tabladesignada

37.25 51.95 0.313 0.469 0.938

Comparación de canales en una tabla de-signada

38.1 52.8

Comparación de £DM # tabla de£DMdesignada

69.1 83.8

ASC(086) Entre canales 30.1 44.8 0.313 0.469 0.938

Entre £DM 78.3 93

TTIM(087) Selección a una constante 27.55 42.25 EntradaConstan--te OFF:23.15

R: 24.15

IL:20.55

JPM:19.55

Selección a £DM 35.5 50.2 EntradaConstan--te OFF:35.30

R: 36.3

IL: 32.7

JPM:31.9

ZCP(088) Comparar constante con canal 16.75 31.45 0.313 0.469 0.938( )

Comparar canal con canal 17.65 32.35Comparar £DM con £DM 49.7 64.4

INT(089) Canal para SV 19.90 a 198.50 (Vernota 3)

0.313 0.469 0.938

£DM para SV 19.90 a 213.5 (Vernota 3)

SEND(090) Transmitir 1 canal 60.9 75.6 0.313 0.469 0.938

Transmitir 1.000 canales 99.2 113.9

SBS(091) --- 22.1 36.8 0.313 0.469 0.938

SBN(092) --- --- --- 0.313 0.469 0.938

RET(093) --- 20.9 35.6 0.313 0.469 0.938

WDT(094) --- 10.55 25.25 0.313 0.469 0.938

IORF(097) Refrescar 1 canal 110 (IN), 170(OUT)

110 (IN),170(OUT)

0.313 0.469 0.938

Refrescar 30 canal 2002 2000.9

RECV(098) Refrescar 1 canal 67.1 67.1 0.313 0.469 0.938

Refrescar 1000 canal 105.8 105.8

MCRO(099) Designar un parámetro de canal 38.5 53.2 0.313 0.469 0.938

Designar un parámetro de £DM 58.2 72.9

CPS(114) Comparación de dos constantes 13.95 28.65 0.313 0.469 0.938( )

Comparar DM con DM 15.65 30.35Comparar DM con £DM 36.9 51.6

CPSL(115) Comparar dos DM 18.65 33.35 0.313 0.469 0.938( )

Comparar dos £DM 40.7 55.4

ZCPL(116) Comparar dos canales 19.95 34.65 0.313 0.469 0.938( )

Comparar dos £DM 53.3 68

BXFR(125) Designación de canal (1 canal) 73.6 70.7 0.313 0.469 0.938( )

Designación de £DM (1,024 canales) 1.50 ms 682Designación de £DM (6,144 canales) 8.64 ms 3.76 ms

NEG(160) Convertir una constante a un canal 15.05 29.75 0.313 0.469 0.938( )

Convertir un canal a un canal 16.85 31.55Convertir £DM a £DM 37.1 51.8

NEGL(161) Convertir un canal a un canal 18.15 32.85 0.313 0.469 0.938( )

Convertir £DM a £DM 39.7 54.4

HEX(162) Conversión de DM 36.95 51.65 0.313 0.469 0.938( )

Conversión de £DM 102.6 117.3

Tiempos de ejecución de instrucción Sección 6-3

Page 384: C200HALPHA Manual Programacion

378

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

FCS(180) Sumar canal # canal 26.75 41.45 0.313 0.469 0.938( )

Sumar 999 canales # £DM 1.05 ms (Vernota 2)

SRCH(181) Constante para SV 39.7 54.4 0.313 0.469 0.938

£DM para SV 1.35 ms (Vernota 2)

£DM para SV 7.73 ms (Vernota 2)

MAX(182) Buscar DM 31.75 46.45 0.313 0.469 0.938

Buscar £DM 1.31 ms (Vernota 2)

MIN(183) Buscar DM 31.75 46.45 0.313 0.469 0.938

Buscar £DM 1.31 ms (Vernota 2)

SUM(184) Sumar DM 26.55 41.25 0.313 0.469 0.938( )

Sumar £DM 1.30 ms (Vernota 2)

PID(190) Cuando se designa un canal 48.1 62.8 0.313 0.469 0.938

Cuando se designa £DM 89.4 104.1

SCL(194) Canal para SV 58.3 73 0.313 0.469 0.938( )

£DM para SV 89.4 104.1

AVG(195) Valor medio de una operación 33.05 47.75 0.313 0.469 0.938

Valor medio de 64 operación 133.8 148.5

DSW(210) Salida de CS DM 35 49.7 0.313 0.469 0.938( )

Salida de RD DM 35 49.7Salida de RD DM 45 59.7Salida de CS £DM 44 58.7Salida de RD £DM 44 58.7Salida de RD £DM 53 67.7

TKY(211) Entrada a DM 25.65 40.35 0.313 0.469 0.938

Entrada a £DM 46.7 61.4

HKY(212) Cuando se designa un canal 23.55 38.25 0.313 0.469 0.938( )

Cuando se designa £DM 44.3 59

MTR(213) Entrada a DM 29 a 34 (Vernota 2)

0.313 0.469 0.938

Entrada a £DM 45 a 51 (Vernota 2)

7SEG(214) 4 dígitos de canal designado 19 a 22 (Vernota 2)

0.313 0.469 0.938

4 dígitos de £DM designado 30 a 34 (Vernota 2)

8 dígitos de canal designado 19 a 22 (Vernota 2)

8 dígitos de £DM designado 30 a 34 (Vernota 2)

IORD(222) --- --- (Vernota 1)

(Vernota 2)

0.313 0.469 0.938

IOWR(223) --- --- (Vernota 1)

(Vernota 2)

0.313 0.469 0.938

RXD(235) Cuando se designa un canal 31.5 30.4 0.313 0.469 0.938

Cuando se designa £DM 73.5 72.4

TXD(236) Cuando se designa un canal 56.1 70.8 0.313 0.469 0.938

Cuando se designa £DM 99.4 114.1

Tiempos de ejecución de instrucción Sección 6-3

Page 385: C200HALPHA Manual Programacion

379

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

STUP(237) Designación RS-232C por defecto 30.9 29.8 0.313 0.469 0.938( )

Puerto A de tarjeta de comunicacionesDesignación de £DM

61 59.9

PMCR(260) Constante para puerto & número de se-cuencia,DM para canales de entrada y salida

41 39.9 0.313 0.469 0.938

Constante para puerto & número de se-cuencia,£DM para canales de entrada y salida

56 54.9

£DM para puerto & número de secuen-cia,£DM para canales de entrada y salida

74.2 73.1

CMCR(261) (Ver nota 4) (Ver nota 1) (Vernota 2)

0.313 0.469 0.938

FPD(269) Designación de canal, salida de código 74.60 a 89.40 (Vernota 2)

0.313 0.469 0.938

Designación de £DM, salida de mensaje 105.0 a 142.2 (Vernota 2)

CMT(277) Designación de constante 6.72 21.5 0.313 0.469 0.938

XDMR(280) Constante para SV 39.9 54.6 0.313 0.469 0.938

Canal para SV 1.44 ms (Vernota 2)

£DM para SV 4.19 ms (Vernota 2)

EMBC(281) Designación de constante 18.45 33.15 0.313 0.469 0.938( )

Designación de canal 19.95 34.65Designación de £DM 33.45 48.15

=(300) Cuando se compara una constante conun canal

18.3 33.0 0.313 0.469 0.938

Cuando se compara £DM a £DM 39.8 54.4

=L(301) Cuando se compara una constante conun canal

21.3 36.2 0.313 0.469 0.938

Cuando se compara £DM a £DM 42.0 36.6

=S(302) Cuando se compara una constante conun canal

18.8 33.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 40.1 54.8

=LS(303) Cuando se compara una constante conun canal

21.7 36.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 42.3 57.0<>(305) Cuando se compara una constante con

un canal18.4 33.2 0.313 0.469 0.938

Cuando se compara £DM a £DM 39.6 54.4<>L(306) Cuando se compara una constante con

un canal21.1 36.0 0.313 0.469 0.938

Cuando se compara £DM a £DM 41.8 56.4

<>S(307) Cuando se compara una constante conun canal

18.8 33.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 40.0 54.8

<>SL(308) Cuando se compara una constante conun canal

21.6 36.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 42.1 56.8

<(310) Cuando se compara una constante conun canal

18.3 33.0 0.313 0.469 0.938

Cuando se compara £DM a £DM 39.6 54.4<L(311) Cuando se compara una constante con

un canal21.2 36.0 0.313 0.469 0.938

Cuando se compara £DM a £DM 41.8 56.4

Tiempos de ejecución de instrucción Sección 6-3

Page 386: C200HALPHA Manual Programacion

380

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

<S(312) Cuando se compara una constante conun canal

18.6 33.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 40.0 54.8<SL(313) Cuando se compara una constante con

un canal21.6 36.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 42.1 56.8<=(315) Cuando se compara una constante con

un canal18.3 33.0 0.313 0.469 0.938

Cuando se compara £DM a £DM 39.8 54.4<=L(316) Cuando se compara una constante con

un canal21.4 36.2 0.313 0.469 0.938

Cuando se compara £DM a £DM 41.9 56.6<=S(317) Cuando se compara una constante con

un canal18.6 33.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 40.1 54.8<=SL(318) Cuando se compara una constante con

un canal21.8 36.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 42.3 57.0>(320) Cuando se compara una constante con

un canal18.4 33.2 0.313 0.469 0.938

Cuando se compara £DM a £DM 39.6 54.4>L(321) Cuando se compara una constante con

un canal21.3 36.0 0.313 0.469 0.938

Cuando se compara £DM a £DM 41.8 56.4>S(322) Cuando se compara una constante con

un canal18.8 33.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 40.0 54.8>SL(323) Cuando se compara una constante con

un canal21.6 36.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 42.1 56.8>=(325) Cuando se compara una constante con

un canal18.4 33.2 0.313 0.469 0.938

Cuando se compara £DM a £DM 39.8 54.4>=L(326) Cuando se compara una constante con

un canal21.4 36.2 0.313 0.469 0.938

Cuando se compara £DM a £DM 41.9 56.6>=S(327) Cuando se compara una constante con

un canal18.8 33.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 40.1 54.8>=SL(328) Cuando se compara una constante con

un canal21.8 36.4 0.313 0.469 0.938

Cuando se compara £DM a £DM 42.3 57.0TST(350) Sel. de 1 bit de un canal a una

constante20.6 35.4 0.313 0.469 0.938

Sel. de 1 bit £DM a £DM 42.9 57.6TSTN(351) Sel. de 1 bit de un canal a una constan-

te20.8 35.4 0.313 0.469 0.938

Sel. de 1 bit £DM a £DM 43.0 57.8+(400) Constante + canal # canal 17.0 31.9 0.313 0.469 0.938( )

£DM + £DM # £DM 49.1 64.0+L(401) Constante + canal # canal 19.6 34.6 0.313 0.469 0.938( )

£DM + £DM # £DM 50.5 65.6+C(402) Constante + canal # canal 19.2 34.0 0.313 0.469 0.938( )

£DM + £DM # £DM 51.3 66.4+CL(403) Constante + canal # canal 26.1 41.2 0.313 0.469 0.938( )

£DM + £DM # £DM 58.5 73.6

Tiempos de ejecución de instrucción Sección 6-3

Page 387: C200HALPHA Manual Programacion

381

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

+B(404) Constante + canal # canal 15.6 30.4 0.313 0.469 0.938( )

£DM + £DM # £DM 48.5 63.6

+BL(405) Constante + canal # canal 21.6 36.6 0.313 0.469 0.938( )

£DM + £DM # £DM 52.3 67.4

+BC(406) Constante + canal # canal 16.7 31.6 0.313 0.469 0.938( )

£DM + £DM # £DM 49.5 64.6

+BCL(407) Constante + canal # canal 22.8 37.8 0.313 0.469 0.938( )

£DM + £DM # £DM 53.5 68.6

--(410) Constante -- canal # canal 16.9 31.8 0.313 0.469 0.938( )

£DM -- £DM # £DM 49.1 64.0

--L(411) Constante -- canal # canal 19.5 34.4 0.313 0.469 0.938( )

£DM -- £DM # £DM 50.3 65.4

--C(412) Constante -- canal # canal 19.1 33.8 0.313 0.469 0.938( )

£DM -- £DM # £DM 51.1 66.2

--CL(413) Constante -- canal # canal 25.7 40.8 0.313 0.469 0.938( )

£DM -- £DM # £DM 58.1 73.2

--B(414) Constante -- canal # canal 15.6 30.4 0.313 0.469 0.938( )

£DM -- £DM # £DM 48.5 63.6

--BL(415) Constante -- canal # canal 21.6 36.6 0.313 0.469 0.938( )

£DM -- £DM # £DM 52.3 67.4

--BC(416) Constante -- canal # canal 16.5 31.6 0.313 0.469 0.938( )

£DM -- £DM # £DM 49.5 64.6

--BCL(417) Constante -- canal # canal 22.8 37.8 0.313 0.469 0.938( )

£DM -- £DM # £DM 53.5 68.6

£(420) Constante " canal # canal 19.7 34.8 0.313 0.469 0.938( )

£DM " £DM # £DM 51.9 67.0

£L(421) Constante " canal # canal 42.7 58.0 0.313 0.469 0.938( )

£DM " £DM # £DM 76.7 92.0

£U(422) Constante " canal # canal 17.3 32.2 0.313 0.469 0.938( )

£DM " £DM # £DM 48.9 64.0

£UL(423) Constante " canal # canal 32.1 47.4 0.313 0.469 0.938( )

£DM " £DM # £DM 63.3 78.8

£B(424) Constante " canal # canal 30.9 46.0 0.313 0.469 0.938( )

£DM " £DM # £DM 63.9 78.8

£BL(425) Constante " canal # canal 108.9 110.0 0.313 0.469 0.938( )

£DM " £DM # £DM 140.9 140.8

/(430) Constante $ canal # canal 13.4 13.9 0.313 0.469 0.938( )

£DM $ £DM # £DM 46.1 46.3

/L(431) Constante $ canal # canal 21.9 22.0 0.313 0.469 0.938( )

£DM $ £DM # £DM 55.9 56.0

/U(432) Constante $ canal # canal 12.5 12.5 0.313 0.469 0.938( )

£DM $ £DM # £DM 44.3 44.3

/UL(433) Constante $ canal # canal 12.8 12.8 0.313 0.469 0.938( )

£DM $ £DM # £DM 33.5 33.5

/B(434) Constante $ canal # canal 13.5 13.5 0.313 0.469 0.938( )

£DM $ £DM # £DM 46.3 46.4

/BL(435) Constante $ canal # canal 17.9 18.1 0.313 0.469 0.938( )

£DM $ £DM # £DM 48.9 49.0

ADBL(480) DM + DM # DM 27.35 42.05 0.313 0.469 0.938

£DM + £DM # £DM 60.1 74.8

Tiempos de ejecución de instrucción Sección 6-3

Page 388: C200HALPHA Manual Programacion

382

Instrucción Tiempo ejecución OFF (!s)Tiempo de ejecución ON (!s)CondicionesInstrucciónC200HEC200HGC200HXC200HEC200HGC200HX

Condiciones

SBBL(481) DM -- DM # DM 26.95 41.65 0.313 0.469 0.938

£DM -- £DM # £DM 59.7 74.4

MBSL(482) DM " DM # DM 45.3 60 0.313 0.469 0.938

£DM " £DM # £DM 77.1 91.8DBSL(483) DM $ DM # DM 86.6 101.3 0.313 0.469 0.938( )

£DM $ £DM # £DM 118.6 133.3MBS(484) Constante " canal # canal 20.85 35.55 0.313 0.469 0.938

DM " DM # DM 21.65 36.35

£DM " £DM # £DM 53.5 68.2

DBS(485) Constante $ canal # canal 21.55 36.25 0.313 0.469 0.938

DM $ DM # DM 22.45 37.15£DM $ £DM # £DM 54.9 69.6

BXF2(----) Designación de canal (1 canal ) 72.8 71.7 0.313 0.469 0.938( )

Designación de £DM (1,024 canales) 3.68 ms (Vernota 3)

Designación de £DM (6,144 canales) 8.75 ms (Vernota 3)

IEMS(----) Designación de constante (Switch aDM.)

19.25 18.15 0.313 0.469 0.938

Designación de canal (Switch a bancoEM)

24.95 23.85

XFR2(----) Designación de canal (1 canal ) 46.4 45.3 0.313 0.469 0.938( )

Designación de £DM (1,024 canales) 656.2 655.1Designación de £DM (6,144 canales) 3.66 ms (Ver

nota 3)

Notas1. Igual que tiempo de ejecución de instrucción de C200HX.2. Sumar 14.7 !s al tiempo de ejecución de instrucción de C200HX.3. Sumar 1.1 !s al tiempo de ejecución de instrucción de C200HX.

Tiempos de ejecución de instrucción Sección 6-3

Page 389: C200HALPHA Manual Programacion

383

6-4 Tiempo de respuesta de E/SEl tiempo de respuesta de E/S es el tiempo transcurrido desde que se recibeuna señal de entrada (es decir, después de que un bit de entrada se ha puesto aON) hasta que se presenta en salida una señal de control (es decir, hasta entre-gar a un bit de salida el resultado del proceso). El tiempo de respuesta de E/Svaría de acuerdo con la temporización y condiciones de proceso. A continua-ción se describen los tiempos de respuesta de E/S para sistemas de PLC noSysmac Link.

Los cálculos de tiempo de respuesta mínimo y máximo descritos a continuaciónson para 00000 como bit de entrada que recibe la señal y 00200 como bit desalida correspondiente al punto de salida deseado.

00000

00200

6-4-1 Sistemas básicos

El PLC responde más rápidamente cuando recibe una señal de entrada justoantes de la fase de refresco de entrada del scan. Una vez activado el bit deentrada correspondiente a la señal, el programa se tendrá que ejecutar una vezpara poner a ON el bit de salida para la señal de salida deseada y luego se repe-tirá la operación de refresco de E/S para refrescar el bit de salida. El tiempo derespuesta de E/S en este caso se calcula sumando al tiempo de retardo de ON,el tiempo de ciclo y el tiempo de retardo a ON de salida. A continuación se ilustraesta situación.

Tiempo de ciclo

Señal deentrada

Señal desalida

Ciclo

Tiempo de ciclo

Refresco E/S

Tiempo de respuesta de E/S

Retardo a ON de salida

Retardoa ON deentrada

Ejecución deinstrucción

CPU lee señalde entrada

Ejecución deinstrucción

Ejecución deinstrucción

Tiempo de respuesta de E/S mínimo = retardo a ON de entrada + tiempo de ciclo+ retardo a ON de salida

El PLC tomará más tiempo para responder si recibe la señal de entrada inme-diatamente después de la fase de refresco de entrada del scan. En tal caso, laCPU no reconocerá la señal de entrada hasta el final del siguiente ciclo. Eltiempo de respuesta máximo es por lo tanto un ciclo más largo que el tiempo de

Tiempo de respuesta de E/Smínimo

Tiempo de respuesta de E/Smáximo

Tiempo de respuesta de E/S Sección 6-4

Page 390: C200HALPHA Manual Programacion

384

respuesta de E/S mínimo, excepto que el tiempo de refresco de E/S no habríaque añadirlo dado que la entrada se produce justamente después.

Tiempo de ciclo

Señal deentrada

Señal desalida

Ciclo

Tiempo de ciclo

Refresco de E/S

Tiempo de respuesta de E/S

Retardo aON deentrada

Ejecución deinstrucción

CPU lee señal deentrada

Retardo aON de salida

Tiempo de ciclo

Ejecución deinstrucción

Ejecución deinstrucción

Tiempo de respuesta de E/S máximo = retardo a ON de entrada + (tiempo deciclo x 2) + retardo a ON de salida

Los datos de la siguiente tabla producirán los tiempo de ciclo máximo y mínimocalculados a continuación.

Retardo a ON deentrada

1.5 ms

Retardo a ON de salida 15 ms

Tiempo de ciclo 20 ms

Tiempo de respuesta de E/S mínimo = 1.5 + 20 + 15 = 36.5 msTiempo de respuesta de E/S máximo = 1.5 + (20 x 2) +15 = 56.5 ms

Nota En este ejemplo el tiempo de refresco de E/S es despreciable y no se ha incluidoen el tiempo mínimo de respuesta de E/S.

6-4-2 Sistemas de E/S remotasCon sistemas de E/S remotas, a la hora de calcular los tiempos de respuesta deE/S sólo hay que considerar el tiempo de ciclo del PLC dado que en compara-ción con él es despreciable el tiempo de transmisión. Sin embargo, el tiempo deciclo aumenta debido al sistema de E/S remotas.Este apartado contiene el proceso para determinar y los métodos para calcularlos tiempos de respuesta máximo y mínimo desde la entrada hasta la salida. Enlos cálculos se supone que tanto la entrada como la salida están ubicadas enbastidores esclavos en un sistema de E/S remotas, pero los cálculos son losmismos para puntos de E/S en unidades de E/S ópticas, unidades I/O link, ter-minales de E/S, etc.

X

Entrada en basti-dor esclavo

Salida en basti-dor esclavo

Las ecuaciones utilizadas en los siguientes cálculos no consideran fraccionesde un scan, aunque son posibles ecuaciones más exactas si es necesario.Con respecto a los siguientes diagramas de tiempos, es importante recordar lasecuencia en la que se procesa durante el scan del PLC, en concreto qué entra-das no producirán acciones programadas hasta que se haya ejecutado el pro-grama.Cuando se calculen los tiempos de respuesta que contemplan entradas y sali-das de otra CPU conectada por medio de una unidad I/O Link, se deben con-

Ejemplo de cálculo

Tiempo de respuesta de E/S Sección 6-4

Page 391: C200HALPHA Manual Programacion

385

siderar el tiempo de ciclo de la CPU de control y el tiempo de ciclo del PLC en elque está montada la undiad I/O Link.

Atención El ruido puede aumentar los retardos de E/S.

El tiempo de transmisión de E/S remotas se calcula como sigue:

TRM = Tiempo total de transmisión de esclavo a maestro

= !TRT + !TTT

TRT = Tiempo de transmisión para cada esclavo

= 1.4 ms + (0.2 ms " n)

Donde n = número de canales de E/S en el bastidor esclavo

TTT = Tiempo de transmisión de Unidad de E/S óptica/Terminales de E/S

= 2 ms " m

Donde m = número de unidades de E/S ópticas/Terminales de E/S

El tiempo mínimo se obtiene cuando todas las señales se procesan tan prontocomo se reciben. Aquí, son necesarios tres scans para ejecutar el programa,como se muestra en el siguiente diagrama.

Tiempo = Retardo a ON de entrada + tiempo de ciclo " 3 + retardo a ONde salida

Tiempo de ciclo > Tiempos de transmisión de E/S remotas

Tiempo de cicloCPU

Maestro

Esclavo

Entrada

Salida

Ejecución programa

Transferir a CPU

Transferir a Maestro

Refresco de E/S de esclavo

El tiempo máximo de respuesta se produce cuando se recibe la entrada justodespués de la parte de ejecución de programa del ciclo de scan, lo que significaque para ser procesada debe esperar hasta la siguiente transmisión y luego elsiguiente scan (es decir el cuarto).

Tiempo= retardo a ON entrada + tiempo ciclo " 4 + retardo a ON salida

Tiempo de ciclo > Tiempos de transmisión de E/S remotas

Nota Utilizar el tiempo de ciclo máximo enviado a AR 26 en el cálculo de tiempo derespuesta de E/S máximo.

Tiempo de cicloCPU

Maestro

Esclavo

Entrada

Salida

Ejecución programa

Transferir a CPU

Transferir a MaestroRefresco de E/S de esclavo

Ejemplo de cálculos A continuación se muestran los cálculos para un retardo a ON de entrada de1.5 ms, un retardo a ON de salida de 15 ms y un tiempo de ciclo de 20 ms.

Tiempos de transmisión deE/S remotas

Tiempo mínimo derespuesta

Tiempo máximo derespuesta de E/S

Tiempo de respuesta de E/S Sección 6-4

Page 392: C200HALPHA Manual Programacion

386

Tiempo de respuesta de E/S mínimo

Tiempo= 1.5 ms + (20 ms " 3) + 15 ms = 76.5 ms

Tiempo de respuesta de E/S máximo

Tiempo= 1.5 ms + (20 ms " 4) + 15 ms = 96.5 ms

Nota 1. El tiempo de ciclo puede ser menor o igual al tiempo de transmisión de E/Sremotas cuando hay unidades de E/S especiales en bastidores esclavos.En estos casos puede haber ciclos en los que no se refresquen las E/Sentre el Maestro y la CPU C200HX/HG/HE.

2. Los maestros se refrescan una sola vez por ciclo y luego sólo después deconfirmar la finalización del ciclo remoto.

3. La corta duración de estado ON/OFF producidos por instrucciones diferen-ciadas puede provocar señales imprecisas en sistemas de E/S remotas ano ser que se programen los pasos apropiados.

6-4-3 Sistemas Host LinkEl siguiente diagrama muestra el proceso seguido cuando una entrada en unPLC se transfiere a través de un sistema Host Link para poner a ON una salidaen otro PLC.

XEntrada en #0 Salida en #31

Tiempo de ciclo

Señal deentrada

Señal desalida

Refresco de E/S

Refresco de E/S

Tiempo de respuesta de E/S

CPU lee señalde entrada

CPU escribeseñal de salida

Retardo a ON de salidaRetardo a ON de entrada

Servicio de Host link

Buffer paraunidad HostLink # 0

Tiempo de ciclo

Buffer para unidadHost Link # 31

PLC para unidadHost Link # 31

PLC para unidadHost Link # 0

Ordenador

Tiempo de proce-so de ordenador

Comando ComandoRespuesta Respuesta

Comando/Respuesta para unidad # 0 Comando/Respuesta para unidad # 31

Servicio de Host link

A continuación se dan las ecuaciones utilizadas para calcular los tiempos deciclo máximo y mínimo. El número de ciclos necesarios para cada PLC dependede la cantidad de datos a leer/escribir.

Tiempo mín. de respuesta = Retardo a ON de entrada + Tiemp de transmisión de comando + (Tiempo de ciclo del PLC para unidad #0" 3) + Tiempo de transmisión de respuesta + Tiempo de proceso de ordenador + Tiempo de transmisiónde comando + (Tiempo de ciclo del PLC para unidad #31 " 3) + Retardo a ON de salida

Tiempo máx. de respuesta = Retardo a ON de entrada + Tiempo de transmisión de comando + (Tiempo de ciclo del PLC para unidad#0 " 10) + Tiempo de transmisión de respuesta + Tiempo de proceso de ordenador + Tiempo de transmi-sión de comando + (Tiempo de ciclo del PLC para unidad #31 " 10) + Retardo a ON de salida

6-4-4 Sistemas PC LinkEn este apartado se explican el proceso para determinar y los métodos paracalcular los tiempos máximo y mínimo de respuesta desde la entrada a la salida.

Tiempo de respuesta de E/S Sección 6-4

Page 393: C200HALPHA Manual Programacion

387

En todos los ejemplos que se dan a continuación se utilizan el siguiente sistemay los siguientes pasos de programa de E/S. Este sistema contiene ocho uni-dades PC Link.En cuanto a los diagramas de tiempo, es importante recordar la secuencia pro-ducida durante el scan del PLC, en concreto qué entradas no producirán accio-nes hasta que se haya ejecutado el programa.

X

Unidad PC Link

PLC

Unidad PC Link

PLC

X

X

Unidad 0 Unidad 7

Entrada enPLC unidad 0

LRbit

Entrada LR XXXX

Salida enPLC unidad 7

LR XXXX

Entrada Salida

Salida

Nota El ruido puede aumentar los retardos de E/S.

Condiciones de PC Link El sistema PC Link utilizado en este ejemplo consta de lo siguiente:# No. de PLCs conectados: 8# No. de puntos de LR enlazados: 128 por PLC# PLC máximo: 8# Puntos de LR utilizados: 1,024

La siguiente figura ilustra el flujo de datos que producirá el tiempo de respuestamínimo, es decir, el tiempo resultante cuando todas las señales y transmisionesde datos se procesan tan pronto como se presentan.

PLC conunidad 0

Buffer en unidad 0

Transmisiones deunidad PC Link

Buffer en unidad 7

Entrada

Salida

Tiempo mínimo de transmisión

Programaejecutado.

Tiempo de ciclo

Tiempo de ciclo Refresco de E/SPrograma ejecutado.

PLC conunidad 7

Refresco E/S

La ecuación para el tiempo de respuesta mínimo es por lo tanto la siguiente:Tiempo respuesta= Retardo a ON de entrada + Tiempo de ciclo de PLC de uni-

dad 0 + Tiempo de transmisión mínimo + (Tiempo de ciclo dePLC de unidad 7 x 2) + Retardo a ON de salida

Sustituyendo los siguientes valores en la ecuación se obtiene un tiempo de res-puesta de E/S mínimo de 149.3 ms.Retardo a ON de entrada: 1.5 msRetardo a ON de salida: 15 ms

Tiempo de respuestamínimo

Tiempo de respuesta de E/S Sección 6-4

Page 394: C200HALPHA Manual Programacion

388

Tiempo de ciclo para PLC de unidad 0: 20 msTiempo de ciclo para PLC de unidad 7: 50 msTiempo de transmisión mínimo: 2.8 ms+10 ms=12.8 ms

El siguiente diagrama ilustra el flujo de datos que producirá el tiempo de res-puesta máximo. Los retardos se producen dado que las señales o los datos sereciben inmediatamente después de cuando deberían haberse procesado oporque los datos se envían durante el procesamiento. En cualquier caso, el pro-ceso debe esperar al siguiente ciclo de scan.La primera salida al buffer de la unidad explorada se retarda por la selección delnúmero de bits de LR a refrescar en cada scan. Se presenta un retardo similarcuando los datos de LR llegan a la unidad 7. El retardo de exploración es el re-sultado de actualizar los datos en su PLC inmediatamente después de enviarlos anteriores al buffer en la unidad PC Link, causando un retardo hasta el si-guiente ciclo de exploración. Luego es necesario un ciclo más de exploraciónantes de que los datos alcancen el buffer en la unidad PC Link 7.

PLC conunidad 0

Buffer en uni-dad 0

Transmisionesde unidad PCLink

Buffer en uni-dad 7

PLC conunidad 7

Entrada

Salida

Tiempo de ex-plor. PC Link

Tiempo de ciclo

Tiempo de cicloRefresco de E/S

Tiempo de procesode secuencia de in-ducción

Tiempo detransmisiónmáximo

Retardo de ex-ploración

La ecuación para el tiempo de respuesta de E/S máximo es la siguiente:Tiempo respuesta = Retardo a ON de entrada + [Tiempo de ciclo de PLC de uni-

dad 0 " (Número de bits transferir LR $ bits de refresco deE/S)] + % + (Tiempo de exploración de PC Link + tiempo deproceso de secuencia de inducción) + {Tiempo de ciclo dePLC de unidad 7 " [(Número de bits de transferir LR $ bits derefresco de E/S) " 2 + 1]} + & + Retardo a ON de salida

Si tiempo de ciclo de PLC de unidad 0 > tiempo de explor. de PC Link,% = tiempode ciclo de PLC de unidad 0. Si tiempo de ciclo de PLC de unidad 0 < tiempo deexplor. de PC Link, % = tiempo de explor. de PC Link.Si tiempo de ciclo de PLC de unidad 7 > tiempo de explor. de PC Link,% = tiempode ciclo de PLC de unidad 7. Si tiempo de ciclo de PLC de unidad 7 < tiempo deexplor. de PC Link, % = tiempo de explor. de PC Link.Insertar los siguientes valores en esta ecuación proporciona un tiempo de res-puesta de E/S máximo de 661.3 ms.Retardo a ON de entrada: 1.5 msRetardo a ON de salida: 15 msTiempo de ciclo para PLC de unidad 0: 20 msTiempo de ciclo para PLC de unidad 7: 50 msTiempo de explor. de PC Link: 2.8 ms " 8 PLCs + 10 ms = 32.4 msProceso de secuencia de inducción: 15 ms " (8 PLCs -- 8 PLCs) = 0 msBits de refresco de E/S para unidad 0 256

Tiempo máximo derespuesta

Tiempo de respuesta de E/S Sección 6-4

Page 395: C200HALPHA Manual Programacion

389

Bits de refresco de E/S para unidad 7 256

Reducción de tiempo de respuestaIORF(097) se puede utilizar en programación para reducir el tiempo de res-puesta de E/S más de lo que se puede hacer aumentando el número de bits derefresco. (Recordar que aumentando el número de bits de refresco en el LEDdel panel posterior reduce el tiempo de respuesta, pero aumenta el tiempo deciclo del PLC).

Los siguientes cálculos para el tiempo de ciclo máximo utilizan la misma confi-guración que en 5--2 Tiempos de respuesta. En la programación de los PLCspara unidades PC Link #0 y #7, IORF(097) se ejecuta cada scan de PLC paralas unidades PC Link. La ecuación básica para el tiempo de respuesta de E/Smáximo es la siguiente:Tiempo respuesta = Retardo a ON de entrada + [Tiempo de ciclo de PLC de uni-

dad 0 " (Número de bits de transferir LR $ Número de bits derefresco de E/S $ 2)] + % + Tiempo de explor. de PC Link +Tiempo de proceso de secuencia de inducción + {Tiempo deciclo de PLC de unidad 7 " [(Número de bits de transferir deLR $ Número de bits de refresco de E/S $ 2) " 2 + 1]} + & +Retardo a ON de salida

Si tiempo de ciclo de PLC de unidad 0 > Tiempo de explor. de PC Link,% = tiem-po de ciclo de PLC de unidad 0. Si tiempo de ciclo de PLC de unidad 0 < tiempode explor. de PC Link, % = tiempo de explor. de PC Link.

Si tiempo de ciclo de PLC de unidad 7 > Tiempo de explor. de PC Link,% = tiem-po de ciclo de PLC de unidad 7. Si tiempo de ciclo de PLC de unidad 7 < tiempode explor. de PC Link, % = tiempo de explor. de PC Link.

Los datos necesarios de la configuración ejemplo son los siguientes:

Retardo a ON de entrada 1.5 ms

Retardo a ON de salida 15 ms

Tiempo de ciclo de PLC de unidad 0 20 ms + 5.7 ms = 25.7(5.7 ms necesarios para ejecución de IORF)

Tiempo de ciclo de PLC de unidad 7 50 ms + 5.7 ms = 25.7(5.7 ms necesarios para ejecución de IORF)

Número de unidades PC Link 8

Número de bits LR 1,024

Número de bits de refresco para unidad 0 256

Número de bits de refresco para unidad 7 256

Tiempo de explor. de PC Link 2.8 ms " 8 PLCs + 10 ms = 32.4 ms

Tiempo de proceso de secuencia inducción 15 ms " (8 PLCs -- 8 PLCs) = 0 ms

Colocando estos valores en la ecuación se obtiene un tiempo de proceso máxi-mo de 466.9 ms, proximadamente 200 ms menor que sin utilizar IORF.

6-4-5 Tiempo de respuesta de E/S de enlaces 1:1Cuando dos C200HX/HG/HE se conectan uno--a--uno, el tiempo de respuestade E/S es el tiempo necesario para que una entrada ejecutada en uno de losC200HX/HG/HE se presente en el otro C200HX/HG/HE por medio de comuni-caciones uno--a--uno.

Las comunicaciones uno--a--uno se efectúan recíprocamente entre el maestro yel esclavo. Los tiempos de transmisión respectivos son los mostrados a conti-nuación, dependiendo del número de canales LR utilizados.

Número de canales utilizados Tiempo de transmisión

64 canales (LR 00 a LR 63) 39 ms

32 canales (LR 00 a LR 31) 20 ms

16 canales (LR 00 a LR 15) 10 ms

Tiempo de respuesta de E/S Sección 6-4

Page 396: C200HALPHA Manual Programacion

390

Aquí se muestran los tiempos de respuesta de E/S máximo y mínimo, utilizandoun ejemplo en el que se ejecutan las siguientes instrucciones en el maestro y enel esclavo. En este ejemplo las comunicaciones son del maestro al esclavo.

EntradaSalida (LR) Entrada

(LR)Salida

Se toman las siguientes condiciones para calcular los tiempos de respuesta deE/S.

Retardo a ON de entrada: 8 msTiempo de ciclo del maestro: 10 msTiempo de ciclo del esclavo: 14 msRetardo a ON de salida: 10 msNúmero de canales LR: 64 canales

Tiempo de respuesta de E/S mínimoEl C200HX/HG/HE responde más rápidamente en las siguientes circunstan-cias:

1, 2, 3... 1. El C200HX/HG/HE recibe una señal de entrada inmediatamente antes de lafase de refresco de entrada del ciclo.

2. La transmisión del maestro al esclavo se inicia inmediatamente.

3. El esclavo ejecuta el servicio de comunicaciones inmediatamente despuésde completar las comunicaciones.

Maestro

Puntoentrada

Bit en-trada

Procesode CPU

Refresco de E/SSupervisión, comunica-ciones, etc.

Tiempo de ciclo

Retardo a ON de entrada

Comunicaciones deenlace uno--a--uno

Maestro aesclavo

Procesode CPU

Esclavo

Ejecucióninstrucción

Ejecucióninstrucción

Ejecucióninstrucción

Ejecucióninstrucción

Punto de salida

Retardo a ONde salida

El tiempo de respuesta de E/S mínimo es como sigue:

Retardo a ON de entrada: 8 msTiempo de ciclo de maestro: 10 msTiempo de transmisión: 39 msTiempo de ciclo de esclavo: 15 ms

+ Retardo a ON de salida: 10 msTiempo de respuesta de E/S mínimo: 82 ms

Tiempo de respuesta de E/S mínimoEl C200HX/HG/HE tardará lo máximo en responder bajo las siguientes circuns-tancias:

1, 2, 3... 1. El C200HX/HG/HE recibe una señal de entrada inmediatamente despuésde la fase de refresco de entrada del ciclo.

2. La transmisión del maestro al esclavo no comienza inmediatamente.

Tiempo de respuesta de E/S Sección 6-4

Page 397: C200HALPHA Manual Programacion

391

3. Las comunicaciones se completan inmediatamente después de que el es-clavo ejecuta el servicio de comunicaciones.

Refresco de E/S

Supervisión, comunica-ciones, etc.

Retardo a ON de entrada

Maestro

Puntoentrada

Bitsalida

Procesode CPU

Tiempo de ciclo

Ejecucióninstrucción

Ejecucióninstrucción

Esclavo

Maestro aesclavo

Maestro aesclavo

Maestro aesclavo

Procesode CPU

Punto de salida

Retardo a ONde salida

Ejecucióninstrucción

Comunicacionesuno--a--uno

Ejecucióninstrucción

Ejecucióninstrucción

Ejecucióninstrucción

El tiempo de respuesta de E/S máximo es como sigue:Retardo a ON de entrada: 8 msTiempo de ciclo de maestro: 10 ms " 2Tiempo de transmisión: 39 ms " 3Tiempo de ciclo de scan: 15 ms " 2

+ Retardo a ON de salida: 10 msTiempo de respuesta de E/S máximo: 185 ms

6-4-6 Tiempos de respuesta de interrupciónA continuación se describe el tiempo desde que se recibe una entrada de inter-rupción hasta que se ha completado la ejecución de la subrutina de interrup-ción.

Interrupciones de entrada

Señal de entrada de interrupción externa

Señal de interrupción interna

Ejecución de subrutina de interrupción

t1

t2

t1 = Retardo a ON de unidad de entrada de interrupciónt2 = Tiempo de respuesta de interrupción por software

Tiempo total de respuesta de interrupción = t1 + t2El retardo a ON de la unidad de entrada de interrupción es 0.2 ms o menor.El tiempo de respuesta de interrupción por software depende de la selección delparámetro respuesta de interrupción en DM 6620 del Setup del PLC. Si DM6620 se selecciona para modo compatible C200H (0000), el tiempo de respues-ta de interrupción por software es menor de 10 ms. Si DM 6620 se seleccionapara modo C200HX/HG/HE (1xxx), el tiempo de respuesta de interrupción porsoftware es menor de 1 ms. El tiempo total de respuesta de interrupción es por lotanto como se indica en la siguiente tabla.

Selección de respuesta deinterrupción

Tiempo total de respuesta de interrupción

Modo compatible C200H(Respuesta normal)

0.2 ms + (Total de lo siguiente: tiempo deproceso de E/S especial, tiempo de proceso deE/S remotas, tiempo de servicio de Host Link,ejecución de instrucción)

Modo C200HX/HG/HE(Respuesta de alta velocidad)

1.2 ms o menor

Tiempo de respuesta de E/S Sección 6-4

Page 398: C200HALPHA Manual Programacion

392

Interrupciones programadas

Reloj hardware

Ejecución subrutina de in-terrupción programada t3

Intervalo de interrup-ción programada

t3 t3t3

t3 = Tiempo de respuesta de interrupción por softwareTiempo total de respuesta de interrupción = t3 (tiempo de respuesta de interrup-ción por software)El tiempo de respuesta de interrupción por software depende de la selección delparámetro respuesta de interrupción en DM 6620 del Setup del PLC. Si DM6620 se selecciona para modo compatible C200H (0000), el tiempo de respues-ta de interrupción por software es menor de 10 ms. Si DM 6620 se seleccionapara modo C200HX/HG/HE (1xxx), el tiempo de respuesta de interrupción porsoftware es menor de 1 ms. El tiempo total de respuesta de interrupción es porlo tanto el mostrado en la siguiente tabla.

Selección de respuesta deinterrupción

Tiempo total de respuesta de interrupción

Modo compatible C200H(Respuesta normal)

Total de lo siguiente: tiempo de proceso de E/Sespecial, tiempo de proceso de E/S remotas,tiempo de servicio de Host Link, ejecución deinstrucción

Modo C200HX/HG/HE(Respuesta de alta velocidad)

1.0 ms o menor

Notas 1.Si hay en el programa alguna instrucción que necesite más de 10 ms paraser ejecutada cuando se utiliza el modo compatible C200H, el tiempo totalde respuesta de interrupción será igual al tiempo de ejecución de la instruc-ción que requiera más de 10 ms.

2.Para los cálculos anteriores se supone que sólo es necesario ejecutar unainstrucción a la vez. Si se generan varias interrupciones al mismo tiempo, laejecución de todas ellas a excepción de la primera interrupción permanece-rá en espera, aumentando los tiempos de respuesta anteriores.

3.Si se produce una interrupción mientras se da servicio a una C200H--SLKjj o C200HS-SNTjj, la interrupción no se procesará hasta que sehaya completado el servicio de la unidad SYSMAC NET/SYSMAC LINK. Eneste caso los tiempos de respuesta serán los indicados en la siguiente tablay no se verán afectados por la selección de respuesta de interrupción.

Interrupción Tiempo total de respuesta deinterrupción

Interrupción de entrada 10.2 ms máx.

Interrupción programada 10 ms máx.

Esta restricción no se aplica cuando se utiliza una C200HW-SLKjj conun PLC C200HX/HG/HE.

Tiempo de proceso de interrupciónA continuación se describe el tiempo de proceso de interrupción desde que serecibe una entrada de interrupción, se ejecuta el programa y hasta que sevuelve el control al programa original.El límite de frecuencia de contaje resultante de utilizar el periodo de interrupciónprogramada o interrupciones de entrada como la entrada de contaje está deter-minada por el tiempo de proceso de interrupción.Tiempo de proceso de interrupción =

Tiempo total de respuesta de interrupción + Tiempo de ejecución deprograma de interrupción + Tiempo de vuelta de interrupción

El tiempo de ejecución de programa de interrupción está determinado por elcontenido de la subrutina de interrupción. Este tiempo es despreciable si sólo seejecuta SBN(92) y RET(93).

Tiempo de respuesta de E/S Sección 6-4

Page 399: C200HALPHA Manual Programacion

393

El tiempo de vuelta de interrupción es de 0.04 ms.

Notas 1.Si hay varios elementos que pueden provocar interrupciones o si el periodode interrupción es más corto que el tiempo medio de proceso de interrup-ción, se ejecutará la subrutina de interrupción y no se ejecutará el programaprincipal. Esto hará que se exceda el tiempo de monitorización de ciclo y segenerará un error FALS 9F, parando la operación del PLC.

2.El tiempo máximo de ejecución de programa de interrupción está contenidoen SR 262 y SR 263.

Duración del pulso de entrada de interrupciónLa duración del pulso aplicado a las unidades de entrada de interrupción debeseleccionarse de acuerdo con las condiciones expresadas en el siguiente dia-grama.

0.5 ms mín.

0.2 ms mín.

Tiempo de ON: 0.2 ms mín.Tiempo de OFF: 0.5 ms mín.

Tiempo de respuesta de E/S Sección 6-4

Page 400: C200HALPHA Manual Programacion

395

SECCIÓN 7Monitorización y ejecución del programa

Esta sección contiene los procedimientos para monitorizar y controlar el PLC mediante la consola de programación. Consul-tar el Manual de Operación del SYSWIN si se utiliza un ordenador con SYSWIN.

7-1 Monitorización y modificación de datos 394. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-1 Monitorización de bit/canal 394. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-2 Forzar a Set/Reset 397. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-3 Cancelar forzar a Set/Reset 399. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-4 Modificación de datos Hexadecimal/BCD 400. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-5 Cambio de display Hex/ASCII 401. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-6 Cambio de display de 4-dígitos Hex/Decimal 402. . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-7 Cambio de display de 8-dígitos Hex/Decimal 402. . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-8 Monitorización de cambio de estado 404. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-9 Monitorización de 3 canales 405. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-10 Modificación de datos de 3 canales 405. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-11 Monitorización binaria 406. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-12 Modificación de datos binarios 408. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-13 Cambio de SV de temporizador/contador 409. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-14 Asignaciones de código de función de instrucción de expansión 412. . . . . . . . . . . . .7-1-15 Asignación de área de UM 412. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-16 Lectura y selección del reloj 413. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-17 Mapeado del teclado de expansión 414. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7-1-18 Mapeado del teclado 415. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 401: C200HALPHA Manual Programacion

396

7-1 Monitorización de la operación y modificación de datos

La forma más sencilla de monitorizar la operación es visualizar las direccionescuyos estados de bit de operando se ha de monitorizar utilizando Lectura dePrograma o una de las operaciones de búsqueda. Mientras la operación se rea-lice en modo RUN o MONITOR, se indicará el estado de cualquier bit visuali-zado.

Esta sección contiene otros procedimientos para monitorizar datos así comopara modificar datos existentes en un área de datos. Los datos que se puedenmodificar incluyen el PV (valor presente) y el SV (valor seleccionado) para cual-quier temporizador o contador.

Todas las operaciones de monitorización de esta sección se pueden realizar enmodo RUN, MONITOR o PROGRAM y se pueden cancelar pulsando la teclaCLR.

Todas las operaciones de modificación de datos excepto para cambios de SVde temporizador/contador deben ir precedidas de una de las operaciones demonitorización. Los datos se pueden modificar en modo MONITOR o PRO-GRAM, pero no en modo RUN.

7-1-1 Monitorización de Bit/Canal

Mediante esta operación se puede monitorizar el estado de cualquier bit o canalde cualquier área. Aunque la operación es posible en cualquier modo, sólo sevisualiza el estado ON/OFF de los bits en modo MONITOR o RUN.

Esta operación se puede ejecutar partiendo del display vacío indicando elprimer bit o canal a monitorizar o bien escribiendo desde cualquier dirección delprograma visualizando la dirección de bit o de canal cuyo estado se ha de moni-torizar y pulsar MONTR.

Cuando se monitoriza un bit, se visualizará su estado ON/OFF (en modo MONI-TOR o RUN); cuando se designa una dirección de canal distinta de un tempori-zador o contador, se visualizarán los contenidos de dígito del canal; y cuando sedesigna un número de temporizador o contador, se visualizará el PV del tempo-rizador o contador y si el indicador de tiempo o contaje alcanzado está en ON sevisualizará también un pequeño recuadro. Cuando se monitorizan varioscanales, aparecerá un espacio entre las diferentes direcciones designadas. Elestado de bits TR e indicadores SR (es decir indicadores aritméticos), se borracuando se ejecuta END(001) por lo que no se pueden monitorizar.

Se pueden monitorizar a la vez hasta seis direcciones de memoria, bits, canaleso una combinación de ambos, aunque sólo tres de ellos se visualizarán a la vez.Para monitorizar más de una dirección a la vez, volver al principio y seguir indi-cando direcciones. La monitorización de todos los canales designados se man-tendrá a no ser que se designen más de seis direcciones. En este caso, se can-celará la dirección de la izquierda de las que se están monitorizando.

Para visualizar direcciones que se están monitorizando pero que no se encuen-tran en el display de la consola de programación, pulsar MONTR sin designarotra dirección. Según se pulsa MONTR, las direcciones monitorizadas conti-nuarán desplazándose a la derecha hasta llegar a la última dirección.

Durante la operación de monitorización se pueden utilizar las teclas de flechaarriba y abajo para aumentar y disminuir la dirección que aparece en laizquierda del display y CLR para cancelar la monitorización de dicha dirección.Si se cancela la última dirección, se cancela la operación de monitorizacióncompleta. Esta también se puede cancelar pulsando las teclas SHIFT y luegoCLR.

LD y OUT se pueden utilizar sólo para designar la primera dirección a visualizar;no se pueden utilizar cuando ya se está monitorizando una dirección.

Monitorización de la operación y modificación de datos Sección 7-1

Page 402: C200HALPHA Manual Programacion

397

Secuencia de teclas

Cancelamonitorización

Borra direcciónde la izquierda

(Área de EM)

(Bancos 0, 1 ó 2 de EM)

[Dirección]

Los siguientes ejemplos muestran varias aplicaciones de esta operación demonitorización.

Leer programa y luego monitorizar

Señala que el indicador de finalización está en ON

Operación demonitorizacióncancelada

00100

00100READ

TIM 000

T000

1234

T001

o0000

00100

TIM 001

Ejemplos

Monitorización de la operación y modificación de datos Sección 7-1

Page 403: C200HALPHA Manual Programacion

398

Monitorizar bit

00000

00000

LD 00001

00001

^ ON

00000

CONT 00001

Nota No se pueden monitorizar el estado de los indicadores aritméticos, bits TR eindicadores SR 25503 a 25507, dado que se borran cuando se ejecutaEND(001).

Monitorizar canal

00000

00000

CHANNEL 000

00000

CHANNEL LR 01

cL01

FFFF

cL00

0000

Monitorizar canal de área de EM

00000

00000

CHANNEL e0�0000

00000

CHANNEL e1�0100

e0100

10000

Especifica el banco ydirección de EM amonitorizar.

Se visualiza el canal EMespecificado y suscontenidos.

Monitorización de la operación y modificación de datos Sección 7-1

Page 404: C200HALPHA Manual Programacion

399

Monitorización múltiple

00000

00000

TIM 000

T000

0100

00000 T000

0100

00001 T000

0100

00001 T000

OFF 0100

D000000001 T000

^OFF 0100

D000000001 T000

10FF^ OFF 0100

T000D000000001

0100 10FF^ OFF

D000000001

10FF^ OFF

00001

^ OFF

00000

CONT 00001

00000

CHANNEL DM 0000

0000000001

S ONR OFF

Indica Forzar a Reseten operación.

Indica Forzar a Seten operación.

Cancela lamonitorización dela dirección de laizquierda

Monitorizacióncancelada

7-1-2 Forzar a Set/ResetDurante la operación de monitorización de Bit/Dígito y con una dirección de bit,temporizador o contador en la parte izquierda del display, se puede pulsarPLAY/SET para poner a ON el bit, arrancar el temporizador o incrementar elcontador y se puede pulsar REC/RESET para poner a OFF el bit o resetear eltemporizador o contador. Los temporizadores no operarán en modo PRO-GRAM. Los bits SR no se pueden forzar con esta operación.

El estado del bit permanecerá en ON o en OFF sólo mientras esté pulsada latecla; volverá al estado original tan pronto como deje de estar pulsada la tecla.Si hay un temporizador operando, su indicador de finalización se pondrá en ONcuando se alcance el SV.

Monitorización de la operación y modificación de datos Sección 7-1

Page 405: C200HALPHA Manual Programacion

400

SHIFT y PLAY/SET o SHIFT y REC/RESET se pueden pulsar para mantener elestado del bit después de soltar la tecla. El bit no volverá a su estado originalhasta que se pulse la tecla NOT, o se cumpla una de las siguientes condiciones.

1, 2, 3... 1. Se efectúe la operación de borrar estado forzado.

2. Se cambie el modo del PLC. (Ver nota.)

3. Se pare la operación debido a un error fatal o a un corte de alimentación.

4. Se ejecute Registrar Tabla de E/S.

Esta operación se puede utilizar en modo MONITOR para chequear el cableadode las salidas desde el PLC antes de ejecutar realmente el programa. Esta ope-ración no se puede ejecutar en modo RUN.

Nota El estado del bit forzado a set/reset se mantendrá cuando se conmute de modoPROGRAM a MONITOR si el bit de retención de estado forzado está en ON yDM 6601 de la Configuración del PLC se ha seleccionado para mantener elestado de bit. Consultar 3-6-5 Configuración del PLC.

Secuencia de teclas

Bit o temporizador/Contadormonitorizado en la izquierdadel display

El siguiente ejemplo muestra cómo se pueden controlar bits o temporizadorescon la operación Forzar a Set/Reset. El display mostrado a continuación es parala siguiente sección del programa.

Dirección Instrucción Datos

00200 LD 00100

00201 TIM 000

# 0123

00202 LD TIM 000

00203 OUT 00500

00100

TIM 00000500

012.3 sTIM 000

#0123

El siguiente display muestra lo que sucede cuando TIM 000 se selecciona con00100 OFF (es decir, 00500 se pone a ON) y lo que sucede cuando TIM 000 seresetea con 00100 ON (es decir, el temporizador comienza la operación,

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 406: C200HALPHA Manual Programacion

401

poniendo a OFF 00500, que a su vez se pone a ON cuando el temporizadoralcanza el tiempo seleccionado SV).

0010000500

= OFF^ OFF

T0000010000500

^ OFF^ OFF

T0000010000500

0123^ OFF^ OFF

T0000010000500

=0000^ OFF^ ON

T0000010000500

0123^ OFF^ OFF

T0000010000500

o0000^ ON^ ON

T0000010000500

=0123^ ON^ OFF

T0000010000500

0122^ ON^ OFF

T0000010000500

o0000^ ON^ ON

0010000500

^ OFF^ OFF

0010000500

= ON^ OFF

(Este ejemplo se realiza en modo MONITOR)

Indica que se está forzando a set/reset.

Indica que se ha alcanzado el tiempo.

Monitorización de TIM 000.

Forzar TIM 000 pone aON 00500.

TIM 000 vuelve a su estado originalcuando se libera PLAY/SET.

Display con 0100 originalmente aON.

El temporizador comienzala operación, poniendo00500 a OFF.*

Una vez alcanzado eltiempo, 00500 se pone denuevo a ON.

*La temporización no se efectúa en modo PROGRAM.

Monitorizar 00100 y 00500.

Forzar a set.

Reset del bit forzado a set.

7-1-3 Cancelar Set/Reset forzado

Esta operación restaura el estado de todos los bits en las áreas de E/S, IR, TIM,CNT, HR, AR, o LR que se hubieran forzado a set o a reset. Se puede ejecutaren modo PROGRAM o MONITOR.

Secuencia de teclas

Cuando se pulsan las teclas PLAY/SET y REC/RESET suena un pitido. Si pulsauna tecla equivocada, pulse CLR y vuelva a comenzar desde el principio.

Monitorización de la operación y modificación de datos Sección 7-1

Page 407: C200HALPHA Manual Programacion

402

El siguiente ejemplo muestra los displays que aparecen cuando se ejecuta connormalidad cancelar estados forzados.

00000

00000

00000FORCE RELE?

00000FORCE RELE

END

7-1-4 Modificación de datos Hexadecimal/BCDCuando se está ejecutando la operación de monitorización de Bit/Dígito y sevisualiza en la izquierda del display un valor BCD o hexadecimal, se puede pul-sar CHG para cambiar el valor. Los canales SR no se pueden cambiar.Si es un temporizador o contador el que se encuentra en la parte izquierda deldisplay, se visualizará y se podrá cambiar el valor presente (PV). Este valor sepuede cambiar en modo MONITOR sólo cuando el temporizador o contadorestá operando.Para cambiar los contenidos de la dirección de canal de la izquierda, pulsarCHG, escribir el valor deseado y pulsar WRITE

Secuencia de teclas

Canalmonitorizadoen la izquierdadel display

[ Dato ]

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 408: C200HALPHA Manual Programacion

403

El siguiente ejemplo muestra los efectos de cambiar el PV de un temporizador.

00000

00000

TIM 000

T000

0122

PRES VAL?

T000 0119 ????

PRES VAL?

T000 0100 0200

T000

0199

Este ejemplo es en modo MONITOR

Temporización

Temporización

Disminución del PV

Temporización

Temporización

Monitorización del PV deltemporizador que se va acambiar.

PV cambiado. Los PVs de tempori-zador/contador se pueden cambiarincluso cuando el temporizador/contador está operando.

7-1-5 Cambio de display Hex/ASCIIEsta operación convierte displays de datos de DM de formato 4 dígitos hexade-cimal a ASCII y viceversa.

Secuencia de teclas

Canal visualizadoactualmente.

00000

00000

CH DM 0000

D0000

4142

D0000

"AB"

D0000

4142

Pulsar TR para cambiar eldisplay a código ASCII.

Pulsar TR de nuevo paravisualizar hexadecimal.

Monitorización del canal DMdeseado.

Ejemplo

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 409: C200HALPHA Manual Programacion

404

7-1-6 Cambio de display 4-dígitos Hex/DecimalEsta operación convierte displays de datos hexadecimales de 4 dígitos con osin signo a decimal y viceversa.

Son válidos los valores decimales desde 0 a 65,535 para datos hexadecimalesde 4 dígitos sin signo y de --32,768 a +32,767 para hexadecimales de 4 dígitoscon signo.

Secuencia de teclas

Monitorización de uncanal o de 3 canales TR

(NOT conmuta entre datossin signo y con signo)

[Nuevo dato]

Borra nuevo dato deentrada.

Especifica dato designo positivo.

Especifica dato designo negativo.

TR

cL01D000000001

CFC7 1234R OFF

cL01

�12345

cL01

53191

cL01

�12345

PRES VAL?

cL01�12345

TR

PRES VAL?

cL01+12345

PRES VAL?

cL01+32767

cL01

+32767

cL01D000000001

7FFF 1234R OFFTR

Monitorizar el canal deseado.(Canal de la izquierda en monitorizaciónde 3 canales.)

Pulsar SHIFT y TR para cambiar eldisplay a decimal con signo.

Pulsar NOT para conmutar entre datoscon y sin signo.

Pulsar SHIFT y TR para volver a displayhexadecimal.

Pulsar CHG para cambiar el contenidodel canal visualizado.

Pulsar PLAY/SET para especificar datosde signo positivo.

Escribir el nuevo valor.

Pulsar WRITE para grabar en memoriael nuevo dato.

7-1-7 Cambiar display de 8-dígitos Hex/DecimalEsta operación convierte displays de datos sin signo a con signo, datos hexade-cimales de 4 u 8 dígitos a decimal y viceversa.

Los valores decimales de 0 a 4,294,967,295 son válidos cuando se escribendatos hexadecimales de 8 dígitos sin signo y valores decimales de

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 410: C200HALPHA Manual Programacion

405

--2,147,483,648 a +2,147,483,647 son válidos cuando se escriben valoreshexadecimales de 8 dígitos con signo.

Secuencia de teclas

Monitorización de 3canales.

TR

(NOT conmuta entre datossin signo y con signo)

[Nuevo dato]

Borrar nuevo dato deentrada.

Especifica dato designo positivo.

Especifica dato designo negativo.

TR

cL01D000000001

8000 1234R OFF

cL01

�32768

cL02 cL01

4294868992

cL02 cL01

�0000098304

PRES VAL?

cL02�0000098304

TR

PRES VAL?

cL02+0000098304

PRES VAL?

cL02+1234567890

cL02 cL01

+1234567890

cL01D000000001

02D2 1234R OFFTR

cL02 cL01

�0000098304

[Nuevo dato]

Monitoriza el primero de los canalesdeseados. (Canal de la izquierda enmonitorización de 3 canales)

Pulsar SHIFT y TR para cambiar eldisplay a decimal con signo.

Pulsar NOT para cambiar entre datoscon y sin signo.

Pulsar SHIFT y TR para volver a displayhexadecimal.

Pulsar CHG para cambiar loscontenidos de los canales visualizados.

Pulsar PLAY/SET para especificar datoscon signo positivo.

Escribir el nuevo valor.(en este caso 1234567890)

Pulsar WRITE para grabar en memoriael nuevo dato.

Pulsar EXT para cambiar el display adecimal de 8 dígitos con signo.(En este caso, LR 02 contiene FFFE.)

Cuatro dígitos de la derecha

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 411: C200HALPHA Manual Programacion

406

7-1-8 Monitorización de cambio de estadoEsta operación se puede utilizar para monitorizar el cambio de estado de los bitsde las áreas IR, SR, AR, LR, HR y TC. Para monitorizar el cambio de estado,visualizar en la izquierda del display el bit deseado y pulsar la tecla SHIFT y latecla de flecha Arriba o Abajo.La tecla CLR cambia de operación de monitorización de cambio de estado de bita display de monitorización de bit normal.

Secuencia de teclas

Monitorización de bit

L000000108H2315

OFF OFF ON

L000000108H2315

U@OFF OFF ON

L000000108H2315

OFF OFF ON

D0002

0123

El bit que se quiere monitorizardebe estar en la parte izquierda dela pantalla.

Para cambio de estado de OFF aON pulsar SHIFT y la tecla de flechaArriba (U@).

(Para cambio de estado de ON aOFF pulsar SHIFT y la tecla deflecha Abajo (D@).

El buzzer sonará cuando se detecteel cambio de estado especificado(U@) o (D@).

Una vez completada lamonitorización de cambio de estadovolverá al display original.

Pulsar CLR para finalizar lamonitorización diferenciada y volveral display de monitorización normal.

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 412: C200HALPHA Manual Programacion

407

7-1-9 Monitorización de 3 canalesPara monitorizar tres canales consecutivos, indicar el canal de número másbajo, pulsar MONTR y luego EXT para visualizar los contenidos de datos delcanal especificado y de los dos canales siguientes.

Pulsar la tecla CLR para finalizar la monitorización de 3 canales y volver al dis-play de monitorización normal.

Secuencia de teclas

Monitorización de un canal

00000

00000

CHANNEL DM 0000

D0000

89AB

D0002D0001D0000

0123 4567 89AB

D0003D0002D0001

ABCD 0123 4567

D0004D0003D0002

EF00 ABCD 0123

D0005D0004D0003

1111 EF00 ABCD

D0004D0003D0002

EF00 ABCD 0123

D0002

0123

Especificar el primero de los 3canales a monitorizar.

Pulsar las teclas de flecha Arribay Abajo para cambiar direccionesde canal.

7-1-10 Modificación de datos de 3 canalesEsta operación se utiliza para cambiar los contenidos de uno o más de los trescanales consecutivos visualizados mediante la operación monitorizar 3canales. El cursor, un cuadrado intermitente, indica donde se pueden cambiarlos datos. Una vez escrito el nuevo dato, pulsar WRITE para grabarlo en lamemoria de datos. Si se pulsa la tecla CLR antes de la tecla WRITE, se cance-lará la operación y se volverá al display de monitorización de 3 canales sinningún cambio en la memoria de datos.

Esta operación no se puede utilizar para cambiar de SR 253 a SR 255. Sólo sepueden cambiar los canales visualizados en monitorización de 3 canales.

Secuencia de teclas

3 canalesvisualizadosactualmente

[ Dato ]

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 413: C200HALPHA Manual Programacion

408

Ejemplo

D0002D0001D0000

0123 4567 89AB

D0002 3CH CHG?

=0123 4567 89AB

D0002 3CH CHG?

0001 4567 89AB

D0002 3CH CHG?

0001=4567 89AB

D0002 3CH CHG?

0001=2345 89AB

D0002D0001D0000

0001 2345 89AB

D0002D0001D0000

0123 4567 89AB

Monitorizaciónde 3 canales.

Detiene lamonitorización.

Reanuda lamonitorización.

Escribir el nuevodato.

7-1-11 Monitorización binariaEsta operación se utiliza para monitorizar el estado ON/OFF de los 16 bits de uncanal. Pulsar la tecla SHIFT y luego MONTR para comenzar la monitorizaciónbinaria. El estado ON/OFF de los 16 bits del canal deseado se mostrará en laparte inferior del display. Se pueden monitorizar sucesivamente otros canalespulsando las teclas de flecha Arriba y Abajo para aumentar y reducir la direcciónde canal visualizado. Pulsar la tecla CLR para finalizar la monitorización binaria.

Secuencia de tecla

[Canal]

Finalizarmonitorización binaria

Finalizar todas lasmonitorizaciones

(Área de EM)

(Banco 0, 1 ó 2 de EM)

Monitorización de la operación y modificación de datos Sección 7-1

Page 414: C200HALPHA Manual Programacion

409

00000

00000

CHANNEL 000

c000 MONTR

0000000000001111

c001 MONTR

0000010101010100

00000

CHANNEL 001

00000

00000

CHANNEL DM 0000

D0000

FFFF

D0000 MONTR

1111111111111111

D0000

FFFF

00000

CHANNEL DM 0000

0000S0100R0110SR

Indica forzar a resetoperativo

Indica forzar a setoperativo

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 415: C200HALPHA Manual Programacion

410

7-1-12 Modificación de datos binariosEsta operación se utiliza para cambiar el estado de los bits del canal que se estámonitorizando mediante el procedimiento descrito en el apartado anterior.La posición del cursor indica el bit que se puede cambiar. El cursor se puededesplazar a derecha o izquierda mediante las teclas de flecha Arriba y Abajorespectivamente. Utilizar las teclas 1 ó 0 para cambiar el estado del bit a ON o aOFF. También se puede forzar a Set o a Reset pulsando la tecla SHIFT y luegoPLAY/SET o REC/RESET. En la posición del bit aparecerá una S o una R. Pul-sando la tecla NOT se cancela el estado forzado, S lo cambiará a 1 y R a 0. Unavez cambiado el valor de un bit, el cursor se desplaza a la derecha del bit cam-biado.

Secuencia de teclas

Canal visualizadoen binario.

(Cancelar estado forzado)

Monitorización de la operación y modificación de datos Sección 7-1

Page 416: C200HALPHA Manual Programacion

411

IR bit 00115 IR bit 00100

00000

00000

CHANNEL 000

00000

CHANNEL 001

c001 MONTR

0000010101010101

c001 CHG?

=000010101010101

c001 CHG?

1=00010101010101

c001 CHG?

10=0010101010101

c001 CHG?

100=010101010101

c001 CHG?

100S=10101010101

c001 CHG?

100=010101010101

c001 CHG?

10=S010101010101

c001 MONTR

10RS010101010101

c001 CHG?

1=RS010101010101

7-1-13 Cambiar SV de temporizador/contador

Para cambiar el SV de un temporizador o contador se pueden utilizar dos méto-dos: escribiendo un nuevo valor o aumentando o disminuyendo el SV actual.Ambos sólo se pueden utilizar en modo MONITOR o PROGRAM. En modoMONITOR, el SV se puede cambiar mientras se está ejecutando el programa.Aumentar o disminuir el SV sólo se puede hacer cuando se ha definido comouna constante.

En ambos métodos, primero hay que visualizar la dirección del temporizador ocontador cuyo SV se desea cambiar, pulsar la tecla de dirección Abajo y luego latecla CHG. El nuevo valor se puede introducir numéricamente y pulsandoWRITE o se puede pulsar EXT seguido de las teclas de dirección Arriba y Abajopara aumentar y reducir el SV actual. Pulsar CLR una vez para validar el cambioy permanecer en el display que había cuando se pulsó EXT o pulsar dos vecesCLR para volver al display original con el nuevo SV.

Esta operación se puede utilizar para cambiar un SV designado como unaconstante a una dirección de canal y viceversa.

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 417: C200HALPHA Manual Programacion

412

Secuencia de teclas

Temporizador/contadorvisualizado actual-mente

[Nuevo SV]

Los siguientes ejemplos muestran la escritura de una nueva constante, cambiode una constante a una dirección e incrementar a una nueva constante.

00000

00000

TIM 000

00201SRCH

TIM 000

00201 TIM DATA

#0123

00201 TIM DATA

T000 #0123 #????

00201 TIM DATA

T000 #0123 #0124

00201 TIM DATA

#0124

00201 DATA?

T000 #0123 c???

00201 DATA?

T000 #0123 c010

00201 TIM DATA

010

Escritura denuevo SV

Cambio a desig-nación de canal

Ejemplo

Escritura de un nuevo SV ycambio a designación decanal

Monitorización de la operación y modificación de datos Sección 7-1

Page 418: C200HALPHA Manual Programacion

413

00000

00000

TIM 000

00201SRCH

TIM 000

00201 TIM DATA

#0123

00201 TIM DATA

T000 #0123 #????

00201DATA ? U/D

T000 #0123 #0123

00201DATA ?

T000 #0123 #0122

00201DATA ?

T000 #0123 #0123

00201DATA ?

T000 #0123 #0124

00201DATA ?

T000 #0124 #????

00201 TIM DATA

#0124

Vuelve al display originalcon nuevo SV

SV actual (duranteoperación de cambio)

SV antes de cambiar

Incremento y disminución

Monitorización de la operación y modificación de datos Sección 7-1

Page 419: C200HALPHA Manual Programacion

414

7-1-14 Asignación de código de función a instrucciones de expansiónEsta operación se utiliza para leer o cambiar los códigos de función asignados ainstrucciones de expansión. Hay 49 códigos de función que se pueden asignara instrucciones de expansión: 017, 018, 019, 047, 048, 060 a 069, 087 a 089,114 a 116, 180 a 184, 190, 194, 195, 210 a 214, 235, 236, 269, 280, 480 a 487, y494. A una instrucción de expansión se puede asignar más de un código de fun-ción.

Nota Las asignaciones de código de función se pueden leer en cualquier modo, sólose pueden cambiar en modo PROGRAM.

Sólo es posible asignar códigos de función cuando el pin 1 del interruptor DIPestá en OFF y el pin 4 en ON.

Secuencia de teclas

00000

INST TBL READ

FUN17:ASFT

INST TBL READ

FUN18:SCAN

00000

INST TBL READ

FUN17:ASFT

INST TBL CHG?

FUN18:SCAN!????

INST TBL READ

FUN18:SCAN

INST TBL CHG?

FUN18:SCAN!MCMP

INST TBL CHG?

FUN18:SCAN!PID

INST TBL READ

FUN18:PID

Pulsar EXT para iniciar la visualizaciónde asignaciones de código de función.

Pulsar CLR para ir al display inicial.

Pulsar las teclas de flecha Arriba yAbajo para recorrer las asignacionesde código de función.

La tecla Arriba visualiza los códigos defunción en orden ascendente:17, 18, ... , 89, 17, 18, ...

La tecla Menos visualiza los códigos defunción en orden descendente:17, 89, 88, ... 17, 89, ...

Pulsar CLR para volver al displayinicial.

Pulsar CHG para cambiar la asignaciónde código de función visualizado.

Pulsar WRITE para grabar en memoriael cambio.

Pulsar las teclas de flecha Arriba yAbajo para recorrer las instrucciones.

7-1-15 Asignación de área de UMEsta operación se utiliza para asignar parte del área de UM como expansión deDM. Sólo se puede ejecutar en modo PROGRAM. La memoria asignada aexpansión de DM se deduce del área de programa de diagrama de relés.

La cantidad de memoria disponible para programa de diagrama de relésdepende de la cantidad de RAM de la CPU. Con RAM de 16--KW hay disponible

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 420: C200HALPHA Manual Programacion

415

aproximadamente 15.2 KW, con la de 32--KW se dispone de 31.2 KW y con la de64--KW se dispone de 63.2--KW aproximadamente.Esta operación no se puede utilizar para asignar UM al área de comentario deE/S.

Secuencia de teclas

Borrar memoriacuando se cambia laasignación

CLRFUN CHG 9 7B

1D

3 WRITEVER [Nuevo dato]PLAY

SET

00000

DM CM LAD

00 00 15.2

UMAREA CHG?

INI DM SIZ:00KW

UMAREA SET: CHG

????

UMAREA SET: CHG

9713

DM CM LAD

02 00 13.2

UMAREA CHG?

INI DM SIZ:02KW

VER

00000

Borrado total de la memoria si se va a cambiar laasignación de área de UM.

Se visualizará la asignación actual de área deUM. Se visualizará “??” si se ha perdido lainformación.

Pulsar CHG para cambiar la asignación de áreade UM.

DM de expansión se puede seleccionar a 00, 01,02, ó 03 KW.

Introducir la clave pulsando PLAY/SET y 9713.

Se visualizará la nueva asignación de área deUM. La UM asignada a DM de expansión sededuce del programa de diagrama de relés.

Pulsar CLR para volver al display inicial.

7-1-16 Lectura y selección del RelojEsta operación se utiliza para leer o seleccionar el reloj de la CPU. El reloj sepuede leer en cualquier modo, pero sólo se puede seleccionar en modo MONI-TOR o PROGRAM.La CPU rechazará los datos fuera de rango,es decir fuera de 01 a 12 para elmes, de 01 a 31 para el día del mes, 00 a 06 para el día de la semana, o de 00 a

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 421: C200HALPHA Manual Programacion

416

60 para los segundos, pero no reconocerá fechas inexistentes, como por ejem-plo 2/31.

Se visualizará la fecha y hora actual.

0:TIM

TIM CHG?94�04�10

14:25:50 FRI(5)

TIM CHG?94�04�10

14:25:58 FRI(5)

TIM CHG?94�04�10

14:25:58 FRI(5)

TIM CHG?94�04�10

14:25:58 FRI(5)

TIM 94�04�10

14:25:58 FRI(5)

00000Pulsar la tecla CLR para volver al display inicial.

Pulsar CHG para cambiar la fecha y/o hora.

FUN0:TIM

00000

El “9” de “94” parpadeará, indicando que se puedecambiar.

Pulsar las teclas de flecha Arriba y Abajo paramover el cursor por las selecciones de fecha yhora. Escribir los valores de las nuevas seleccionessi es necesario.

Pulsar CLR para volver al display inicial.

En este caso, para sustituir el ”8” se introduce ”0”.

7-1-17 Mapeado de teclado de expansión

Esta operación se utiliza para controlar el estado ON/OFF de los bits SR 27700a SR 27909 pulsando las teclas del teclado de la consola de programación. ElC200HX/HG/HE también soporta la operación de mapeado de teclado, quecontrola el estado de bits en AR 22. Estas operaciones se pueden realizar encualquier modo del PLC, pero la consola de programación debe estar en modoTERMINAL o en modo TERMINAL de expansión.

Para poder mapear el teclado de expansión, el pin 6 del interruptor DIP de laCPU y AR 0709 debe estar en ON y AR 0708 debe estar en OFF.

Los bits puestos a ON con esta operación se pueden poner a OFF conmutandoAR 0708. Poner AR 0709 a OFF para parar el mapeado de teclado de expan-sión y cambiar la consola de programación de modo TERMINAL de expansión amodo CONSOLE.

Ejemplo

Monitorización de la operación y modificación de datos Sección 7-1

Page 422: C200HALPHA Manual Programacion

417

Modo TERMINAL La consola de programación se puede poner en modo TERMINAL pulsandoCHG o ejecutando TERM(048) en el programa. El pin 6 del interruptor de la CPUdebe estar en OFF.

PROGRAM BZ

<MESSAGE>

NO MESSAGE

PROGRAM BZ

Cambiar la consola a modo TERMINAL pulsandoCHG o ejecutando TERM(048).

Modo CONSOLE

Pulsar CHG de nuevo para volver a modoCONSOLE.

Modo TERMINAL de expansiónLa consola de programación se puede colocar en modo TERMINAL de expan-sión poniendo a ON AR 0709. El pin 6 del interruptor DIP de la CPU debe estaren ON.

PROGRAM BZ

<MESSAGE>

NO MESSAGE

PROGRAM BZ

Cambiar la consola a modo TERMINAL poniendo aON AR 0709.

Modo CONSOLE

Poner AR 0709 a OFF para volver a modoCONSOLE.

7-1-18 Mapeado de tecladoEl C200HX/HG/HE soporta el mapeado de teclado de expansión así como elmapeado de teclado normal. EL mapeado de teclado de expansión controla elestado de los 41 bits desde SR 27700 hasta SR 27909, mientras que elmapeado de teclado normal controla sólo los 16 bits en AR 22. El estado deestos bits se puede controlar pulsando las correspondientes teclas de la con-sola de programación cuando la consola está en modo TERMINAL o en modoTERMINAL de expansión.El siguiente diagrama muestra cómo conmutar la consola de programaciónentre modo CONSOLE (modo de operación normal) y modo TERMINAL omodo TERMINAL de expansión.

Modo CONSOLEModo TERMINAL(Pin 6 de int. DIP OFF)

Pulsar CHG.

Pulsar CHG o ejecutarTERM(048).

Poner a OFF AR 0709o el pin 6 del int. DIP.

Poner a ON AR 0709.

Modo TERMINAL de expan-sión (pin 6 int. DIP en ON)

Modo TERMINAL La consola de programación se puede colocar en modo TERMINAL pulsandoCHG o ejecutando TERM(048) en el programa. El pin 6 del interruptor DIP de laCPU debe estar en OFF.Pulsar la tecla CHG para volver a modo CONSOLE.Cuando la consola de programación está en modo TERMINAL puede efectuarmapeado de teclado normal y visualizar mensajes enviados por MSG(046) oLMSG(047). Con mapeado de teclado, los bits 00 a 15 de AR 22 se pondrán aON cuando se pulsen las teclas 0 a F en el teclado de la consola de programa-ción. Un bit permanecerá en ON después de que se haya soltado la tecla de laconsola de programación.

Monitorización de la operación y modificación de datos Sección 7-1

Page 423: C200HALPHA Manual Programacion

418

Todos los bits de AR 22 se pondrán en OFF cuando AR 0708 se ponga en ON.Las entradas del mapeado del teclado se inhiben cuando AR 0708 está en ON.Además de la función de mapeado de teclado, el modo TERMINAL permitevisualizar en la consola de programación mensajes enviados por MSG(046) yLMSG(047). Estos mensajes serán borrados si la consola de programación seconmuta a modo CONSOLE.

Modo TERMINAL de expansiónLa consola de programación se puede colocar en modo TERMINAL de expan-sión poniendo a ON AR 0709. El pin 6 del interruptor DIP de la CPU debe estaren ON.Poner a OFF AR 0709 o el pin 6 del interruptor DIP de la CPU para volver a modoCONSOLE.Cuando la consola de programación está en modo TERMINAL puede efectuarmapeado de teclado de expansión y visualizar mensajes enviados porMSG(046) o LMSG(047). Con mapeado de teclado de expansión, los bits SR27700 a SR 27909 se pondrán a ON cuando se pulse la tecla correspondientede la consola de programación. Un bit permanecerá en ON después de habersoltado la tecla de la consola de programación.Todos los bits de SR 27700 a SR 27909 se pondrán a OFF cuando AR 0708 seponga en ON. Las entradas de mapeado de teclado de expansión se inhibencuando AR 0708 está en ON.Además de la función de mapeado de teclado de expansión, el modo TERMI-NAL de expansión permite visualizar en la consola de programación mensajesenviados por MSG(046) y LMSG(047). Estos mensajes serán borrados si laconsola de programación se conmuta a modo CONSOLE.El siguiente diagrama muestra la correspondencia 1 a 1, entre la posición de lasteclas de la consola de programación y los bits del área AR. No se reconocen lasentradas con SHIFT. Las teclas 0 a 15 corresponden a los bits AR 27700 a AR27715, las teclas 16 a 31 corresponden a los bits AR 27800 a AR 27815, y lasteclas 32 a 41 corresponden a los bits AR 27900 a AR 27909.

0 1 2 3 4 5

6 7 8 9 10 11

12 13 14 15 16 17

18 19 20 21 22 23

24 25 26 27 28 29

30 31 32 33 34 35

36 37 38 39 40 41

Tecla FUN

La siguiente tabla muestra la correspondencia entre las teclas reales de la con-sola de programación y los bits SR 27700 a SR 27909.

Monitorización de la operación y modificación de datos Sección 7-1

Page 424: C200HALPHA Manual Programacion

419

Canal SR Bit Tecla(s) correspondiente(s)

277 00FUN

01

02

03 *1

277 04 *2

05

06

07

08

09

10

11

12

13

14

15

278 00

01

02

03

04

05

06

07

08

Monitorización de la operación y modificación de datos Sección 7-1

Page 425: C200HALPHA Manual Programacion

420

Canal SR Tecla(s) correspondiente(s)Bit

09

10

278 11

12

13

14

15

279 00

01

02

03

04

05 *3

06

07VER

08

09

Monitorización de la operación y modificación de datos Sección 7-1

Page 426: C200HALPHA Manual Programacion

421

SECCIÓN 8Comunicaciones serie

Esta sección contiene una descripción de las comunicaciones serie (Host Link, RS-232C, uno--a--uno, NT links y macros deprotocolo) a través de los puertos RS-232C, RS-422/485 y de Periféricos.

8-1 Introducción 420. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-2 Comunicaciones Host Link 420. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8-2-1 Sumario de comandos Host Link 420. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-2-2 Comunicaciones Host Link 424. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-2-3 Ejemplos de programas 426. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8-3 Comunicaciones RS-232C 428. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-3-1 Estructura de la trama de comunicaciones 429. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-3-2 Procedimiento de comunicaciones 429. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-3-3 Ejemplo de aplicación 431. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8-4 Links uno--a--uno 432. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-5 NT Links 433. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-6 La función macro de protocolo 434. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8-6-1 Introducción 434. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-6-2 Selecciones de tarjeta de comunicaciones 436. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-6-3 Procedimiento de comunicaciones 437. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8-6-4 Ejemplo de aplicación 441. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 427: C200HALPHA Manual Programacion

422

8-1 IntroducciónEl puerto RS-232C y el puerto de periféricos incorporado en la CPU de los PLCsC200HX/HG/HE soportan las siguientes funciones de comunicaciones:! Comunicaciones con dispositivos de programación (Consola de Programa-

ción, SYSWIN).! Comunicaciones Host Link con ordenadores personales y otros dispositivos

externos.! Comunicaciones RS-232C (sin protocolo) con ordenadores personales y

otros dispositivos externos.! Comunicaciones uno--a--uno con otro PLC.! Comunicaciones NT link (uno--a--uno o uno--a--N) con Terminales Programa-

bles (PTs) equipados con una interfaz NT link.Además de estas funciones de comunicaciones, las tarjetas de comunica-ciones que soportan Macros de Protocolo se pueden instalar en la mayoría delos PLCs C200HX/HG/HE.La siguiente tabla sumariza las funciones de comunicaciones.

Función Dispositivo conecta-do

Conexión Sumario Instrucciones rela-cionadas

Host Link Ordenador o PT Uno--a--unoo Uno--a--N

Proporciona comunicaciones entre unordenador y un PLC.

El estado de operación del PLC y loscontenidos de las áreas de datos sepueden monitorizar desde el ordena-dor.

TXD(236) se puede utilizar paratransmitir datos desde las áreas dedatos del PLC al ordenador.

Comandos Host Link,TXD(236)

RS-232C(sin protocolo)

Ordenador o dispositi-vo RS-232C

Uno--a--uno TXD(236) y RXD(235) se pueden utili-zar para gestionar secuencias sim-ples de transferencias de datos talescomo entradas de lectores de códigosde barras o salidas a impresoras.

Las señales de control RS, CS, ER yDR se pueden controlar por lasinstrucciones.

TXD(236), RXD(235)

Link uno--a--uno PLC Uno--a--uno Realiza una conexión uno--a--unoentre dos PLCs utilizando las áreasLR de los PLCs.

---

NT Link PT Uno--a--unoo Uno--a--N

Proporciona transferencias de datosentre el PLC y uno o más PTs.

---

Macro de proto-colo

Otro dispositivo serie Uno--a--unoo Uno--a--N

La función Macro de Protocolo per-mite al usuario definir secuencias se-paradas de transferencia de datos ytransferir mensajes.

Se pueden registrar hasta 1.000 se-cuencias de comunicaciones.

Se suministra un software que simpli-fica la creación de secuencias de co-municaciones.

PMCR(260)

8-2 Comunicaciones Host Link8-2-1 Sumario de comandos Host Link

Las comunicaciones Host Link se utilizan para transferir datos entre el PLC y unordenador (un ordenador personal o PT). Es posible monitorizar el estado deoperación del PLC y los contenidos de las áreas de datos del PLC desde el orde-nador utilizando comandos Host Link. También es posible transferir datosdesde las áreas de datos IOM del PLC (área IR, área SR, área LR, área HR,área AR, PVs de temporizador y contador, DM 0000 a DM 6143 y EM 0000 a EM5143) al ordenador utilizando la instrucción TXD(236) en el programa de diagra-ma de relés.

Comunicaciones Host Link Sección 8-2

Page 428: C200HALPHA Manual Programacion

423

Conexiones RS-232C (1-a-1) Cuando el Host Link se efectúa con conexiones RS--232C, sólo se puede co-nectar un PLC con el ordenador (conexión uno--a--uno).

Host Link

Host LinkOrdena--dor

Hostlink

Ordenador personal

Cuando el Host Link se efectúa con conexiones RS--422/485 se pueden conec-tar hasta 32 PLCs con el ordenador (conexión uno--a--N).

Host link

32 PLCs máx.

Ordenador personal

Vernota

Nota: Adaptador RS-232C " RS-422/485

Vernota

Vernota

Vernota

Cableado de los puertos Utilizar el siguiente diagrama de cableado como guía para cablear el puerto conel dispositivo externo. Para más información consultar el manual de dicho dis-positivo.

Conexiones RS-422/485(1-a-N)

Comunicaciones Host Link Sección 8-2

Page 429: C200HALPHA Manual Programacion

424

El siguiente ejemplo muestra las conexiones entre el C200HX/HG/HE y un or-denador personal.

1

2

3

4

5

6

FG

SD

RD

RS

CS

--

--

--

SG

7

8

9

1

2

3

4

5

6

7

8

9

SD

RD

RS

CS

DSR

SG

--9

DTR

C200HX/HG/HE Ordenador personal

SeñalPinNo.

Señal PinNo.

Cable apantallado

--

Conectores aplicablesLos siguientes conectores son aplicables. Se incluye uno con cada CPU.XM2D-0901 (OMRON) o equivalenteXM2S-0911 (OMRON) o equivalente

Nota Conectar los terminales FG del PLC y del ordenador a tierra de resistencia infe-rior a 100 # .

Parámetros Host Link Antes de habilitar las comunicaciones Host Link, seleccionar los siguientesparámetros en el Setup del PLC.

Modo de comunicacionesSeleccionar modo Host Link. (Esta es la selección por defecto).

Puerto RS-232C: Poner a 0 los bits 12 a 15 de DM 6645.Puerto de periféricos: Poner a 0 los bits 12 a 15 de DM 6650.

Selección de número de nodoCon conexiones 1:N, seleccionar un número de nodo único entre 00 y 31. Cuan-do se utiliza la conexión 1:1, seleccionar el número de nodo del PLC a 00.

Puerto RS-232C: Seleccionar los bits 00 a 07 de DM 6648 (00 a 31).Puerto de periféricos: Seleccionar los bits 00 a 07 de DM 6653 (00 a 31).

Selecciones de puerto estándarPara los puertos RS--232C y de periféricos se pueden utilizar seleccionesestándar o selecciones del usuario. Las selecciones estándar se utilizan cuan-do los siguientes bits se fijan a 0.(Las selecciones del usuario se explican a continuación)

Puerto RS-232C: Bits 00 a 03 de DM 6645 (0: estándar; 1: usuario).Puerto de periféricos: Bits 00 a 03 de DM 6650 (0: estándar; 1: usuario).

Las selecciones estándar son las de la siguiente tabla.

Item Selección

Bits de start 1

Longitud de datos 7

Bits de stop 2

Paridad Par

Velocidad transmisión 9.600 bps

Selecciones del puerto por el usuarioLas selecciones del usuario se utilizan cuando los siguientes bits se fijan a 1.

Puerto RS-232C: Bits 00 a 03 de DM 6645 (0: estándar; 1: usuario).Puerto de periféricos: Bits 00 a 03 de DM 6650 (0: estándar; 1: usuario).

Las selecciones del usuario para el puerto RS-232C se definen en DM 6646 ylas selecciones del usuario para el puerto de periféricos se definen en DM 6651.

Comunicaciones Host Link Sección 8-2

Page 430: C200HALPHA Manual Programacion

425

Las siguientes selecciones son válidas sólo cuando el pin 5 del interruptor DIPde la CPU está en OFF. Verificar que las selecciones de los parámetros de co-municaciones son las mismas en ambos lados de las comunicaciones.

Formato trama de transmisión (Ver siguiente tabla)

Velocidad de transmisión (Ver siguiente tabla)

15 0BitDM 6646: Puerto RS-232CDM 6651: Puerto de periféricos

Parámetro Selec-ción

Bits destart

Longitud dedatos

Bits destop

Paridad

Formato de trama dei ió

00 1 7 1 Partransmisión 01 1 7 1 Impar

02 1 7 1 Ninguna03 1 7 2 Par04 1 7 2 Impar05 1 7 2 Ninguna06 1 8 1 Par07 1 8 1 Impar08 1 8 1 Ninguna09 1 8 2 Par10 1 8 2 Impar11 1 8 2 Ninguna

Parámetro Selec-ción

Velocidad de transmisión

Velocidad de trans-i ió

00 1,200 bpsmisión 01 2,400 bps

02 4,800 bps03 9,600 bps04 19,200 bps

Tiempo de retardo de transmisiónDependiendo de los dispositivos conectados al puerto RS-232C, puede quesea necesario habilitar un tiempo para la transmisión. En este caso, seleccionarel retardo de transmisión para regular dicho tiempo. El tiempo de retardo detransmisión se selecciona en unidades de 10 ms.

Puerto RS-232C: Seleccionar DM 6647 a un valor entre 0000 y 9999(retardo de 0 a 99.99 s).

Puerto periféricos: Seleccionar DM 6652 a un valor entre 0000 y 9999(retardo de 0 a 99.99 s).

Nota Si el pin 5 del interruptor DIP de la CPU está en ON, se utilizarán las seleccionesde comunicaciones estándar independientemente de las selecciones en el Se-tup del PLC. Las selecciones estándar son las siguientes:

Item SelecciónNúmero de nodo 00

Bits de start 1

Longitud de datos 7Bits de stop 2

Paridad Par

Velocidad decomunicación

9,600 bps

Tiempo de retardo detransmisión

Ninguno

Comunicaciones Host Link Sección 8-2

Page 431: C200HALPHA Manual Programacion

426

8-2-2 Comunicaciones Host LinkLas comunicaciones Host Link se ejecutan por medio de un intercambio decomandos y respuestas entre el ordenador y el PLC. Los datos del comando orespuesta que se transfieren en un intercambio se denomina trama y una tramapuede contener hasta 131 caracteres de datos.Los formatos de trama para comandos Host Link transmitidos desde el ordena-dor y las respuestas devueltas desde el PLC se describen a continuación. ElPLC automáticamente devuelve una respuesta de código ASCII cuando recibeun comando código ASCII desde el ordenador. El ordenador debe tener un pro-grama que controle la transmisión y recepción de los comandos y respuestas.

Formato de trama de comandoCuando se transmite un comando desde el ordenador, preparar los datos decomando en el siguiente formato.

x 101@

FCS

x 100 £ $

No. nodo Cabecera Texto Termina-ción

El código de cabecera y el texto depende del comando de Host Link que setransmita. Cuando se transmite un comando compuesto, habrá un segundocódigo de subcabecera.El código de FCS (Secuencia de chequeo de trama) se calcula en el ordenador yse selecciona en la trama de comando. El cálculo de FCS se describe más ade-lante en esta sección.La trama de comando puede ser de hasta 131 caracteres de largo. Un comandode 132 caracteres o más se puede dividir en más de una trama. Para dividir elcomando, utilizar un delimitador retorno de carro ($, CHR$(13)) en lugar de unaterminación. Al final de la última trama se debe utilizar una terminación.Cuando se dividan comandos tales como WR, WL, WC o WD que ejecutan ope-raciones de escritura, tener cuidado para no dividir en tramas separadas datosque se han de escribir en un solo canal. Verificar que se dividen las tramas de talforma que coincidan con las divisiones entre canales.

Item Función

@ Al principio de cada comando se debe colocar un símbolo “@”.

No. nodo Identifica el PLC por el número de nodo seleccionado en DM 6648del Setup del PLC.

Cabecera Seleccionar el código de comando de 2 caracteres.

Texto Seleccionar los parámetros de comando.FCS Seleccionar un código de secuencia de chequeo de trama de 2

caracteres.Terminación Seleccionar dos caracteres, “£” y el retorno de carro (CHR$(13))

para indicar el fin del comando.

Formato de trama de respuestaLa respuesta desde el PLC se devuelve en el formato indicado a continuación.Preparar un programa para que los datos de respuesta se puedan interpretar ovalorar.

@ x 101 x 100 x 161 x 160

FCS

£ $

No. nodo Cabecera Cód. defin

Texto Termina-ción

El código de cabecera y el texto depende del comando Host Link recibido. Elcódigo de fin indica el estado de finalización del comando (si se ha producido ono un error).Cuando la respuesta es más larga de 131 caracteres, se dividirá en más de unatrama. Automáticamente se fijará un delimitador de retorno de carro ($,

Comunicaciones Host Link Sección 8-2

Page 432: C200HALPHA Manual Programacion

427

CHR$(13)) en lugar de una terminación al final de la trama. Al final de la últimatrama se fijará una terminación.

Item Función

@ Al principio de cada respuesta se coloca el símbolo “@”.

No. nodo Identifica el PLC por el número de nodo seleccionado en DM 6648del Setup del PLC.

Cabecera Se devuelve el código de comando de 2 caracteres.

Texto Se devuelven los resultados del comando.

FCS Se devuelve el código de secuencia de chequeo de trama de 2caracteres.

Terminación El final de la respuesta se indica con dos caracteres, “£” y retornode carro (CHR$(13)).

FCS (Secuencia de chequeo de trama)Cuando se transmite una trama, inmediatamente antes del delimitador o de laterminación se coloca un FCS para chequear si se ha producido o no un error enla transmisión. El FCS es un dato de 8 bits convertido en dos caracteres ASCII.El dato de 8 bits es el resultado de efectuar una OR EXCLUSIVA de los datosdesde el principio de la trama hasta el final del texto en esa trama (es decir inme-diatamente antes del FCS). Calculando el FCS cada vez que se recibe una tra-ma y comparándolo con el FCS incluido en la trama es posible comprobar siexisten errores de datos en ella.

FCS

* $01 R R 0@ 0 0 1 4 2

TextoNo. nodo Cabecera

Rango de cálculo de FCS

Termina-ción

@ 40 0100 0000EOR

1 31 0011 0001EOR

0 30 0011 0000EOR

R 52 0101 0010

1 31 0011 00010100 0010% % Convertido a hexadecimal.4 2 Tratado como caracteres ASCII.

Código ASCII

Resultadodel cálculo

Secuencia de comunicacionesEl derecho a enviar un bloque se denomina ”derecho de transmisión”. La unidadque tiene el derecho de transmisión es la que puede enviar un bloque en unmomento dado. El derecho de transmisión se pasa entre el ordenador y el PLCcada vez que se transmite una trama. A continuación se describe un ejemplo desecuencia de comunicaciones entre el ordenador y el PLC.! El ordenador selecciona un delimitador al final de la primera trama de coman-

do y transmite la trama.! Cuando el PLC recibe el delimitador, devuelve el mismo delimitador al ordena-

dor.! Después de recibir el delimitador desde el PLC, el ordenador transmite la si-

guiente trama.! El PLC selecciona un delimitador al final de la primera trama de respuesta y

transmite la trama.! Cuando el ordenador recibe el delimitador, devuelve el mismo delimitador al

PLC.! Después de recibir el delimitador desde el ordenador, el PLC transmite la si-

guiente trama.

Comunicaciones Host Link Sección 8-2

Page 433: C200HALPHA Manual Programacion

428

! Las transmisiones largas se gestionan intercambiando delimitadores de estaforma. La última trama finaliza con una terminación.

Delimitador

Texto

@ No. unidadCabecera

FCSDelimitador

Trama 1 (comando)

Texto

FCSDelimitador

TerminaciónFCS

Texto

Código de finCabecera

@ No. unidad

Trama 2 (comando)

Trama (respuesta)

Delimitador

Texto

FCSDelimitador

Trama 3 (comando)

Ordenador

PLC

Utilización de la instrucción TXD(236)La instrucción TXD(236) se puede utilizar para transmitir datos desde el área dedatos del PLC al ordenador. No hay respuesta desde el ordenador. La instruc-ción TXD(236) se ejecutará después de que se haya transmitido la respuesta siTXD(236) se ejecuta mientras se está devolviendo al ordenador una respuestaa un comando Host Link.

No respuesta

Texto

No. unidadCabecera

FCSTerminación

Ordenador

PLC

8-2-3 Programas ejemploTransmisión de comando El siguiente tipo de programa se debe preparar en el ordenador para recibir los

datos. Este programa permite al ordenador leer y visualizar los datos recibidos

Comunicaciones Host Link Sección 8-2

Page 434: C200HALPHA Manual Programacion

429

desde el PLC mientras se ejecuta un comando de lectura de host link para leerdatos desde el PLC.

10 ’C200HX/HG/HE SAMPLE PROGRAM FOR EXCEPTION20 CLOSE30 CLS40 OPEN ”COM:E73” AS #150 £KEYIN60 INPUT ”DATA --------”,S$70 IF S$=” ” THEN GOTO 19080 PRINT ”SEND DATA = ”;S$90 ST$=S$100 INPUT ”SEND OK? Y or N?=”,B$110 IF B$=”Y” THEN GOTO 130 ELSE GOTO £KEYIN120 S$=ST$130 PRINT #1,S$ ’Envía comando al PLC140 INPUT #1,R$ ’Recibe respuesta del PLC150 PRINT ”RECV DATA = ”;R$160 IF MID$(R$,4,2)=”EX” THEN GOTO 210 ’Identifica comando del PLC170 IF RIGHT$(R$,1)<>”£” THEN S$=” ”:GOTO 130180 GOTO £KEYIN190 CLOSE 1200 END210 PRINT ”EXCEPTION!! DATA”220 GOTO 140

Programa ejemplo para FCS Este ejemplo muestra una subrutina en BASIC para ejecutar un chequeo deFCS en una trama recibida por el ordenador.

400 *FCSCHECK410 L=LEN(RESPONSE$) ’ Dato transmitido y recibido...........420 Q=0:FCSCK$=” ”430 A$=RIGHT$(RESPONSE$,1)440 PRINT RESPONSE$,AS,L450 IF A$=”*” THEN LENGS=LEN(RESPONSE$)-3

ELSE LENGS=LEN(RESPONSE$)-2460 FCSP$=MID$(RESPONSE$,LENGS+1,2) ’ dato FCS recibido....470 FOR I=1 TO LENGS ’ Número caracteres en FCS...........480 Q=ASC(MID$(RESPONSE$,I,1)) XOR Q490 NEXT I500 FCSD$=HEX$(Q)510 IF LEN(FCSD$)=1 THEN FCSD$=”0”+FCSD$ ’Resultado FCS520 IF FCSD$<>FCSP$ THEN FCSCK$=”ERR”530 PRINT”FCSD$=”;FCSD$,”FCSP$=”;FCSP$,”FCSCK$=”;FCSCK$540 RETURN

Nota 1. La recepción normal de datos incluye el FCS, delimitador o terminación, yasí sucesivamente. Cuando se produce un error en la transmisión, puedeque no se incluya el FCS o cualquier otro dato. Comprobar que se programael sistema para cubrir esta posibilidad.

2. En este programa ejemplo, el código CR (CHR$(13)) no se introduce paraRESPONSE$. Cuando se incluya el código CR, hacer los cambios en laslíneas 430 y 450.

TXD(236) Ejemplo de aplicaciónEste ejemplo muestra un programa para utilizar el puerto RS-232C en modoHost Link para transmitir 10 bytes de datos (DM 0000 a DM 0004) a un ordena-dor. Desde DM 0000 a DM 0004, “1234” se almacena en cada canal.

Comunicaciones Host Link Sección 8-2

Page 435: C200HALPHA Manual Programacion

430

Los valores por defecto se asumen para todo el Setup del PLC (es decir, el puer-to RS--232C se utiliza en modo Host Link, el número de nodo es 00 y se utilizanlos parámetros de comunicaciones estándar).

@TXD

DM 0000

#0000

#0010

00100 SR 26405

Si SR 26405 (el indicador de listo para trans-mitir) está en ON cuando IR 00100 se poneen ON, se transmitirán los diez bytes de da-tos (DM 0000 a DM 0004).

8-3 Comunicaciones RS-232CEste apartado explica las comunicaciones RS-232C. Las instruccionesTXD(236) y RXD(235) se pueden utilizar con comunicaciones RS-232C paraenviar datos a una impresora, introducir datos desde un lector de códigos debarras o transmitir comandos Host Link a otros dispositivos periféricos equipa-dos con un puerto RS--232C.

Conexión de RS-232C El siguiente diagrama muestra la conexión RS--232C cuando se utiliza el puertoRS--232C en modo RS--232C (sin protocolo).

Modo RS-232C

Dispositivoequipado conpuertoRS-232C

Parámetros de Setup del PLC Los siguientes parámetros en el Setup del PLC se deben seleccionar previa-mente para habilitar comunicaciones modo RS--232C a través de los puertosRS--232C o de periféricos.

Modo de comunicacionesSeleccionar el modo de comunicaciones a modo RS-232C.

Puerto RS-232C: Seleccionar los bits 12 a 15 de DM 6645 a 1.Puerto de periféricos: Seleccionar los bits 12 a 15 de DM 6650 a 1.

Selecciones de puerto estándarPara los puertos RS-232C y de periféricos se pueden utilizar las seleccionesestándar o las selecciones del usuario. Consultar la página 424 para más infor-mación sobre las selecciones de comunicaciones estándar.

Selecciones de puerto por el usuarioPara los puertos RS-232C y de periféricos se pueden utilizar las seleccionesestándar o las selecciones del usuario. Consultar la página 424 para más infor-mación sobre las selecciones de comunicaciones estándar.Habilitar códigos de inicio y de fin

Utilización de código de fin0: No seleccionado (cantidad especificada de datos)1: Seleccionado (Código de fin especificado)2: CR/LF

Utilización de código de inicio0: No seleccionado1: Seleccionado (Código de inicio especificado)

Valores por defecto: Sin código de inicio; recepción completade datos a 256 bytes.

15 0Bit

0 0DM 6648: Puerto RS-232CDM 6653: Puerto de periféricos

Comunicaciones RS-232C Sección 8-3

Page 436: C200HALPHA Manual Programacion

431

Especificar si se ha de seleccionar o no código de inicio al principio de los datosy si se selecciona o no un código de fin al final. En lugar de seleccionar código defin, es posible especificar el número de bytes a recibir antes de completarse laoperación de recepción. Ambos códigos y el número de bytes de datos a recibirse seleccionan en DM 6649 o DM 6654.Selección de código de inicio, código de fin y cantidad de datos a recibir

15 0Bit

Código de bit o número de bytes a recibirPara código de fin: (00 a FF)Para cantidad de datos a recibir: 2 dígitos hexadecimal,00 a FF (00: 256 bytes)

Código de inicio 00 a FF

Valores por defecto: Sin código de inicio; recepción de datos com-pleta a 256 bytes.

DM 6649: Puerto RS-232CDM 6654: Puerto de periféricos

8-3-1 Estructura de la trama de comunicacionesHasta 259 bytes de datos (incluidos los códigos de inicio y de fin) se puedentransferir con la ejecución de una instrucción TXD(236) o RXD(235). Cuandohay dos o más códigos de inicio, se utilizará el primero. De la misma forma cuan-do hay dos o más códigos de fin, se utilizará el primero.

Evitar la utilización de caracteres muy corrientes para el código de fin. UtilizarCR y LF para el código de fin si las transmisiones de datos se cortan debido aque los códigos de fin se dan dentro del cuerpo de los datos de transmisión.! Sin código de inicio ni código de fin

Datos (número especificado de bytes)

! Sólo código de inicio

ST Datos (número especificado de bytes)

! Sólo código de fin

Datos (256 bytes o menos) ED

! Código de inicio y código de fin

ST Datos (257 bytes o menos) ED

! CR, LF especificado para código de fin

Datos (258 bytes o menos) CR LF

! Código de inicio (00 a FF) y código de fin (CR, LF)

ST Datos (259 bytes o menos) CR LF

8-3-2 Procedimiento de comunicacionesA continuación se describen brevemente las instrucciones TXD(236) yRXD(235).

Transmisión (TXD(236)) Consultar 5-28-2 TRANSMITIR -- TXD(236) para más información. Incluirsiempre el indicador de preparado para transmitir del puerto especificado comocondición de ejecución para TXD(236) para garantizar que este indicador estéen ON antes de ejecutar la transmisión.

1, 2, 3... 1. Comprobar que esté en ON SR 26405 (indicador de preparado para trans-mitir del puerto RS-232C), SR 26413 (indicador de preparado para transmi-tir del puerto de periféricos), SR 28305 (indicador de preparado para trans-mitir del puerto A de la tarjeta de comunicaciones), o SR 28313 (indicadorde preparado para transmitir del puerto B de la tarjeta de comunicaciones).

Comunicaciones RS-232C Sección 8-3

Page 437: C200HALPHA Manual Programacion

432

2. Utilizar la instrucción TXD(236) para transmitir datos. (Los bits 08 a 11 sonválidos sólo cuando los bits 12 a 15 están seleccionados a 0).

(@)TXD

S

C

N

S: Dirección primer canal de datos a transmitir

C: Datos de controlBits 00 a 03

0: Primero bytes de mayor peso1: Primero bytes de menor peso

Bits 04 a 070: Operación transmisión datos normal1: El estado del bit 15 para canal de mayorpeso de los datos a transmitir se refleja enla señal RTS del puerto correspondiente.2: El estado del bit 15 para canal de mayorpeso de los datos a transmitir se refleja enla señal DTR del puerto correspondiente.3: Los estados de los bits 14 y 15 del canalde mayor peso de los datos a transmitir sereflejan en las señales RTS y DTR delpuerto correspondiente.

Bits 08 a 110: Puerto RS-232C incorporado1: Puerto A de tarjeta de comunicaciones2: Puerto B de tarjeta de comunicaciones

Bits 12 a 150: Puerto RS-232C1: Puerto de periféricos2: Unidad Host Link #13: Unidad Host Link #2

N: Número de bytes a transmitir (4 dígitos BCD), 0000 a 0256(bits de inicio y de fin)

3. Desde el momento en que se ejecuta esta instrucción hasta que se comple-ta la transmisión de datos, permanecerá en OFF el indicador de preparadopara transmitir (SR 26405, SR 26413, SR 28305 ó SR 28313). Se pondráde nuevo en ON una vez completada la transmisión de datos.

Recepción (RXD(235)) Consultar 5-28-1 RECIBIR -- RXD(235) para más información.

1, 2, 3... 1. Comprobar que está en ON SR 26406 (indicador de recepción completadade puerto RS-232C) o SR 26414 (indicador de recepción completada depuerto de periféricos).

2. Utilizar la instrucción RXD(235) para recibir los datos. (Los bits 08 a 11 sonválidos sólo cuando los bits 12 a 15 se seleccionan a 0).

(@)RXD

D

C

N

D: Dirección primer canal para almacenar recepción de datos

C: Datos de controlBits 00 a 03

0: Primero bytes de mayor peso1: Primero bytes de menor peso

Bits 04 a 070: Operación recepción de datos normal1: Lee el estado de CTS del puertocorrespondiente en el bit 15 del canal demayor peso para recepción de datos.2: Lee el estado de DSR del puertocorrespondiente en el bit 15 del canal demayor peso para recepción de datos.3: Lee los estados de CTS y DSR delpuerto correspondiente en los bits 14 y 15del canal de mayor peso para recepciónde datos.

Bits 08 a 110: Puerto RS-232C incorporado1: Puerto A de tarjeta de comunicaciones2: Puerto B de tarjeta de comunicaciones

Bits 12 a 150: Puerto RS-232C1: Puerto de periféricos

N: Número de bytes almacenados (4 dígitos BCD), 0000 a 0256(bits de inicio y de fin)

3. Cuando se ejecuta RXD(235), los datos recibidos se transfieren a los ca-nales especificados (sin códigos de inicio y de fin) y el indicador de recep-ción completada se pone en OFF. El inicio y fin de recepción es como sigue:

Comunicaciones RS-232C Sección 8-3

Page 438: C200HALPHA Manual Programacion

433

Inicio: Estado de recepción continua si no habilita el código de inicio.Inicia recepción cuando se recibe el código de inicio si estáhabilitado.

Fin: Finaliza recepción cuando se recibe el código de fin o se hanrecibido 259 bytes de datos.

4. El estado resultante de la lectura de los datos recibidos se almacenarán enel área SR. Comprobar que la operación se ha completado satisfactoria-mente. Los contenidos de estos bits se resetearán cada vez que se ejecuteRXD(235).

RS-232C Periférico Error

SR 26400 aSR 26403

SR 26408 aSR 26411

Código de error de puerto de comunicaciones (1dígito BCD)0: Finalización normal1: Error de paridad2: Error de trama3: Error de Overrun

SR 26404 SR 26412 Indicador de error de comunicaciones

SR 26407 SR 26415 Indicador de overrun de recepción (después decompletada la recepción, los siguientes datosse recibieron antes de que los datos se leyeranpor medio de la instrucción RXD)

SR 265 SR 266 Número de bytes recibidos (sin incluir bits deinicio y de fin)

Nota Para resetear el puerto RS-232C (es decir restablecer su estado inicial), poner aON SR 25209. Para resetear el puerto A de la tarjeta de comunicaciones, ponera ON SR 28900. Para resetear el puerto B de la tarjeta de comunicaciones, po-ner a ON SR 28901. Después del reset estos bits se pondrán automáticamentea OFF.

8-3-3 Ejemplo de aplicaciónEste ejemplo muestra un programa para utilizar el puerto RS--232C en modoRS--232C para transmitir 10 bytes de datos (DM 0100 a DM 0104) al ordenadory para almacenar los datos recibidos del ordenador en el área de DM comen-zando en DM 0200. Antes de ejecutar el programa, se deben efectuar las si-guientes selecciones en el Setup del PLC.

DM 6645: 1000 (puerto RS-232C en modo RS-232C; seleccionesestándar)

DM 6648: 2000 (Sin código de inicio; código de fin CR/LF)Para todas las selecciones del Setup del PLC se asumen los valores por defec-to. El ordenador debe tener las mismas selecciones de comunicaciones y unprograma para recibir los datos transmitidos desde el PLC.El dato 3454 se almacena en cada uno de los canales desde DM 0100 a DM0104.

@TXD

DM 0100

#0000

#0010

00101 SR 26405

@RXD

DM 0200

#0000

265

SR 26406

DIFU(13) 00101

00100

Si SR 26405 (el indicador de preparado paratransmitir) se pone en ON cuando IR 00100 sepone en ON, se transmitirán los diez bytes dedatos (DM 0100 a DM 0104), empezando porlos bytes de mayor peso.

Cuando se pone a ON SR 26406 (indicador de re-cepción completada), el número de bytes de da-tos especificado en SR 265 se leerán desde elbuffer de recepción del PLC y se almacenarán enmemoria a partir de DM 0200, primero los bytesde mayor peso.

Los datos serán como sigue:“34543454345434543454CR LF”

Comunicaciones RS-232C Sección 8-3

Page 439: C200HALPHA Manual Programacion

434

8-4 Conexiones uno--a--unoSi se conectan dos PLCs uno--a--uno a través de sus puertos RS--232C, puedencompartir áreas de LR comunes. Cuando dos PLCs se conectan uno--a--uno,uno de ellos actuará como maestro y el otro como esclavo.

Como se muestra en la siguiente figura, cuando se escriban datos en un canaldel área LR de uno de los PLCs conectados, se escribirán automática e idénti-camente en el mismo canal del otro PLC. Cada PLC tiene canales específicosen los que puede escribir y canales específicos que son escritos por el otro PLC.Cada PLC puede leer, pero no escribir, los canales escritos por el otro PLC.

1

11

Maestro Esclavo

Área de maestro

Área de esclavo

Escritura automática

Escribe “1” Área de maestro

Área de esclavoEscribe

Cableado Efectuar el cableado como se indica en la siguiente figura utilizando los conec-tores listados.

Conectores aplicablesSon aplicables los siguientes conectores. Se incluye uno con cada CPU.

XM2A-0901 (OMRON) o equivalenteXM2S-0911 (OMRON) o equivalente

1

2

3

4

5

6

FG

SD

RD

RS

CS

--

--

--

SG

7

8

9

1

2

3

4

5

6

7

8

9

FG

SD

RD

RS

CS

--

--

SG9

C200HX/HG/HE C200HX/HG/HE, C200HS o CQM1

SeñalPinNo.

Señal PinNo.

--

Nota Conectar el terminal FG del PLC a tierra de resistencia 100 # máx..

Setup del PLC Para utilizar una conexión 1:1, las únicas selecciones necesarias son el modode comunicaciones y los canales de enlace.

Seleccionar el modo de comunicaciones para uno de los PLCs a maestro deenlace 1:1 y el otro a esclavo de enlace 1:1 y luego seleccionar los canales deenlace en el PLC designado como el maestro. Bits 08 a 11 son válidos sólo parael maestro del enlace 1:1.

Modo de comunicaciones2: Esclavo de enlace 1:13: Maestro de enlace 1:1

Selecciones de puerto00: Parámetros de comunicación estándar

15 0BitDM 6645: Puerto RS-232C

Canales para conexión 1:10: LR 00 a LR 631: LR 00 a LR 312: LR 00 a LR 15

Conexiones uno--a--uno Sección 8-4

Page 440: C200HALPHA Manual Programacion

435

El canal utilizado por cada PLC será como se indica en la siguiente tabla, deacuerdo con las selecciones del maestro, esclavo y canales de enlace.

Selección DM 6645 LR 00 a LR 63 LR 00 a LR 31 LR 00 a LR 15

Canales maestro LR00 a LR31 LR00 a LR15 LR00 a LR07

Canales esclavo LR32 a LR63 LR16 a LR31 LR08 a LR15

Procedimiento de comunicacionesSi las selecciones del esclavo y del maestro son correctas, la conexión 1:1arrancará automáticamente cuando se conecte la alimentación de los PLCs.

Ejemplo de aplicación Este ejemplo muestra un programa para verificar las condiciones para ejecutarun enlace 1:1 utilizando los puertos RS--232C. Antes de ejecutar el programa,seleccionar los siguientes parámetros en el Setup del PLC.

Maestro: DM 6645: 3200 (maestro de enlace 1:1; canales de enlace:LR 00 a LR 15)

Esclavo: DM 6645: 2000 (esclavo de enlace 1:1)Cuando se ejecutan los siguientes programas en el Maestro y en el Esclavo, elestado de IR 001 de cada PLC se reflejará en IR 100 del otro. IR 001 es un canalde entrada y IR 100 es un canal de salida.En el maestro

25313 (Siempre ON)

MOV(21)

001

LR00

MOV(21)

LR08

100

En el esclavo

MOV(21)

001

LR08

MOV(21)

LR00

100

25313 (Siempre ON)

8-5 NT LinksSe puede establecer un NT link 1:1 que utilice comandos de NT link, conectandoel puerto RS-232C del PLC al puerto RS-232C de un terminal programable(PT).Un NT link 1:N que utilice comandos de NT link se puede establecer conectandoel PLC y el terminal programable (PT) con cable RS-422/485.

NT Links 1:1 El siguiente diagrama muestra las conexiones para un NT link 1:1.

NT Links Sección 8-5

Page 441: C200HALPHA Manual Programacion

436

NT Links 1:N El siguiente diagrama muestra las conexiones para un NT Link 1:N. Se puedenconectar hasta 8 Terminales Programablesa no ser que el PLC sea un C200HE-CPUjj-ZE. Con un C200HE-CPUjj-ZE, se pueden conectar hasta 4 Termi-nales Programables (incluyendo conexiones a través de una tarjeta de comuni-caciones).

1:N NT linkRS-422/485

Vernota

Nota: Adaptador RS-232C " RS-422/485

Setup del PLC Cuando se establezca un NT link hacer las siguientes selecciones.

Link Puerto Selección1:1 Puerto RS-232C incorporado Seleccionar bits 12 a 15 de DM

6645 a 4.

Puerto B de tarjeta de comuni-caciones

Seleccionar bits 12 a 15 de DM6550 a 4.

Puerto A de tarjeta de comuni-caciones

Seleccionar bits 12 a 15 de DM6555 a 4.

1:N Puerto RS-232C incorporado Seleccionar bits 12 a 15 de DM6645 a 5.

Puerto B de tarjeta de comuni-caciones

Seleccionar bits 12 a 15 de DM6550 a 5.

Seleccionar el número de nodo máx.(1 a 7) en bits 08 a 11 de DM 6550.

Puerto A de tarjeta de comuni-caciones

Seleccionar bits 12 a 15 de DM6555 a 5.

Seleccionar el número de nodo máx.(1 a 7) en bits 08 a 11 de DM 6555.

Aplicaciones Consultar la documentación suministrada para la unidad de interfaz NT Linkpara más información sobre aplicaciones reales de NT Link.

8-6 La función Macro de ProtocoloEste apartado explica cómo utilizar la función Macro de Protocolo.

8-6-1 IntroducciónLa función macro de protocolo es un protocolo de comunicaciones que controlalas transferencias de datos con diversos dispositivos de comunicaciones y otroscomponentes equipados con puertos RS-232C o RS-422/485. El usuario puedemodificar fácilmente los procedimientos de transferencia de datos (secuenciasde comunicaciones) con el software de soporte de protocolo y ejecutar las se-cuencias de comunicaciones desde el programa de diagrama de relés conPMCR(260).

Las tarjetas de comunicaciones incorporan siete procedimientos de comunica-ciones. Estas secuencias estándar se pueden utilizar tal cual o se pueden mo-dificar para cumplir los requerimientos de una aplicación concreta.

Nota Consultar para más información los manuales de operación de Tarjetas de co-municaciones y Software de SYSWIN.

La función Macro de Protocolo Sección 8-6

Page 442: C200HALPHA Manual Programacion

437

Con una conexiónRS-232C sólo se puede conectar un dispositivo. El cable deRS-232C puede tener una longitud de hasta 15 m.

(RS-232C)Puerto B

(RS-232C)Puerto A

Protocolo básico RS-232C

15 mProtocolo básico

RS-232C

15 m

Dispositivo con in-terfaz RS-232C

Dispositivo con in-terfaz RS-232C

Una conexión RS-422/485 permite conectar 2 ó más dispositivos (conexión1:N) con un cable de longitud máxima 500 m. La conexión RS-422/485 tambiénes útil para conexiones 1:1 a gran distancia.

(RS-232C)Puerto B

(RS-422/485)Puerto A

RS-232C

500 m máx.

15 m

Adaptador RS-232C " RS-422/485

NT-AL001

RS-422/485

RS-422/485

500 m máx.

Adaptador deconversión

Controlador temperatura concomunicaciones RS-422/485

Controlador temperatura concomunicaciones RS-422/485

Controlador temperatura concomunicaciones RS-422/485

Controlador temperatura concomunicaciones RS-422/485

Controlador temperatura concomunicaciones RS-422/485

Controlador temperatura concomunicaciones RS-422/485

Controlador temperatura concomunicaciones RS-422/485

Controlador temperatura concomunicaciones RS-422/485

Cableado Los siguientes esquemas muestran el cableado utilizado con las comunica-ciones de función Macro de Protocolo.

Conexión de adaptador de RS-422/485 (NT-AL001)

C200HX/HG/HEAL001

Conexión RS-232C(1:1)

Conexión RS-422/485(1:N)

La función Macro de Protocolo Sección 8-6

Page 443: C200HALPHA Manual Programacion

438

Conexiones dispositivo/ordenador (Flujo RS/CS, conexión cruzada)

C200HX/HG/HEOrdenador

Conexión modem (Conexión directa)

C200HX/HG/HEModem

Nota Conectar los terminales FG del PLC y de otros dispositivos a tierra de resisten-cia 100 # máx.

8-6-2 Selecciones de tarjeta de comunicacionesLos siguientes parámetros se deben seleccionar previamente para utilizar lafunción macro de protocolo a través de una tarjeta de comunicaciones.

Modo de comunicacionesFijar el modo de comunicaciones a modo Macro de protocolo.

Puerto B: Seleccionar bits 12 a 15 de DM 6550 a 6.Puerto A: Seleccionar bits 12 a 15 de DM 6555 a 6.

La función Macro de Protocolo Sección 8-6

Page 444: C200HALPHA Manual Programacion

439

Selecciones de puerto estándarPara los puertos A y B se pueden utilizar las selecciones estándar o las delusuario. Las selecciones estándar se utilizan cuando los siguientes bits se se-leccionan a 0.

Puerto B: Bits 00 a 03 de DM 6550 (0: estándar; 1: usuario).Puerto A: Bits 00 a 03 de DM 6555 (0: estándar; 1: usuario).

Las selecciones estándar se muestran en la siguiente tabla.

Item Selección

Bits de start 1

Longitud de datos 7

Bits de stop 2

Paridad Par

Velocidad decomunicación

9,600 bps

Selecciones del puerto por el usuarioPara los puertos A y B se pueden utilizar las selecciones estándar o las delusuario. Las selecciones estándar se utilizan cuando los siguientes bits se se-leccionan a 1.

Puerto B: Bits 00 a 03 de DM 6550 (0: estándar; 1: usuario).Puerto A: Bits 00 a 03 de DM 6555 (0: estándar; 1: usuario).

Las selecciones del usuario para puerto B se definen en DM 6551 y las selec-ciones del usuario para el puerto A en DM 6556.

Formato trama de transmisión (Ver tabla)

Velocidad de comunicación (Ver tabla)

15 0BitDM 6551: Puerto BDM 6556: Puerto A

Parámetro Selec-ción

Bits destart

Longitud dedatos

Bits destop

Paridad

Formato de trama dei ió

00 1 7 1 Partransmisión 01 1 7 1 Impar

02 1 7 1 Ninguna03 1 7 2 Par04 1 7 2 Impar05 1 7 2 Ninguna06 1 8 1 Par07 1 8 1 Impar08 1 8 1 Ninguna09 1 8 2 Par10 1 8 2 Impar11 1 8 2 Ninguna

Parámetro Selec-ción

Velocidad de comunicación

Velocidad dei ió

00 1,200 bpscomunicación 01 2,400 bps

02 4,800 bps03 9,600 bps04 19,200 bps

8-6-3 Procedimiento de comunicacionesLas secuencias de comunicaciones de Macro de Protocolo se deben crear conel Software de Soporte de Protocolo y se deben transferir posteriormente a la

La función Macro de Protocolo Sección 8-6

Page 445: C200HALPHA Manual Programacion

440

tarjeta de comunicaciones. En el PLC, la instrucción PMCR(260) se ejecutapara activar una secuencia de comunicaciones almacenada en la tarjeta decomunicaciones.

Hasta 1.000 secuencias de comunicaciones con números 000 a 999 se puedencrear con el Software de Soporte de Protocolo. Cada secuencia de comunica-ciones está compuesta de un máximo de 16 pasos. La siguiente tabla muestralas selecciones de secuencia de comunicaciones.

Item Función Selecciones de parámetroSelec-ciones desecuencia

Control de transmisión Seleccionar el método de control detransmisión, tales como control de flujoX-on/X-off o control de flujo RS/CS.

X-on/X-off, RS/CS, control de modem,control de delimitador o control deacuerdo

Canales de enlace Selecciona los canales de enlace parael data link entre el PLC y la tarjeta decomunicaciones.

Áreas IR/SR, LR, HR, AR, DM y EM

Tiempo de monitoriza-ción

Selecciona el tiempo de monitorización(temporizador de guarda) para procesode comunicaciones.

Recepción standby, recepción comple-tada, transmisión completadaUnidades de 0.01 s, 0.1 s, 1 s y 1 min.

Notificación de res-puesta

Selecciona la temporización para pro-ceso de comunicaciones.

Notificación de scan o notificación deinterrupción

Selec-ciones de

Contador de repetición Selecciona el número de veces a repe-tir el paso.

Constante 0 a 255Áreas IR/SR, LR, HR, AR, DM y EM

paso Comando Selecciona el comando de comunica-ciones.

Enviar, Recibir o Enviar&Recibir

Número de reintentos Selecciona el número de reintentoscuando se producen errores para elcomando Enviar&Recibir.

0 a 9

Tiempo de espera detransmisión

Selecciona el tiempo de espera antesde enviar datos durante la transmisión.

0.01 s, 0.1 s, 1 s y 1 minuto

Mensaje de transmi-sión

Selecciona los datos de transmisiónpara los comandos Enviar o En-viar&Recibir.

Cabecera, dirección, longitud, datos,código de chequeo de error y termina-ción

Mensaje de recepción Selecciona los datos de recepción es-perados para los comandos Recibir oEnviar&Recibir.

Cabecera, dirección, longitud, datos,código de chequeo de error y termina-ción

Matriz de recepción Selecciona los datos de recepción es-perados (hasta 15 tipos) para los co-mandos Recibir o Enviar&Recibir yajusta el proceso dependiendo del tipode dato.

Cabecera, dirección, longitud, datos,código de chequeo de error, terminacióny siguiente proceso

Notificación de res-puesta

Selecciona si se escribe o no el datorecibido.

Sí/No

Siguiente proceso Selecciona el siguiente paso a ir cuan-do el paso actual se ha completadocorrectamente.

Fin, Ir a, Siguiente o Abortar

Proceso de error Selecciona el siguiente paso a ir cuan-do se ha producido un error en el pasoactual.

Fin, Ir a, Siguiente o Abortar

Estructura de la secuenciade comunicaciones

La función Macro de Protocolo Sección 8-6

Page 446: C200HALPHA Manual Programacion

441

El mensaje de transmisión y el mensaje de recepción tiene la siguiente estructu-ra.

Cabe--cera

Direc--ción

Longi--tud

Datos Chequeo deError

Terminación

Item Función

Cabecera Selecciona el dato que indica el principio del mensaje.

Dirección Selecciona el número de nodo u otro identificador que indica eldestino para el mensaje.

Longitud La longitud de datos (número de bytes) se añadeautomáticamente.

Dato Selecciona los contenidos del mensaje.

Código dechequeo de error

Selecciona SUM, LRC o CRC como código de chequeo deerror. El código de chequeo de error especificado se añadiráautomáticamente durante la transmisión. Durante la recepción,el control de error se efectuará automáticamente basado en elcódigo de chequeo de error especificado en el mensaje y serecibirá la cantidad de datos especificada (longitud).

Terminación Selecciona el dato que indica el final del mensaje.

Estructura de mensaje deTransmisión/Recepción

La función Macro de Protocolo Sección 8-6

Page 447: C200HALPHA Manual Programacion

442

Los siguientes atributos se pueden seleccionar para cada item en el mensaje detransmisión o recepción. La abreviatura “R M” indica mensaje de recepción y “TM” indica mensaje de transmisión.

Atributo de datos Cabecera Dirección Longitud Datos Chequeoerror

Terminación

T M R M T M R M T M R M T M R M T M R M T M R MConstante ASCII

“jjjj”HEX[jjjj]

Sí Sí Sí Sí --- --- Sí Sí --- --- Sí Sí

CaracteresespecialesCR, STX, etc.

Sí Sí --- --- --- --- Sí Sí --- --- Sí Sí

Noconversiónde variable

Ecuación de primerorden utilizandovariable (N)

--- --- Sí Sí --- --- Sí Sí --- --- --- ---

Comodín (£) --- --- --- Sí --- --- --- Sí --- --- --- ---Leer canal (R) --- --- Sí Sí --- --- Sí Sí --- --- --- ---Escribir canal (W) --- --- --- Sí --- --- --- Sí --- --- --- ---Variable automática:LNG

--- --- --- --- Sí Sí --- --- --- --- --- ---

Variable automática:SUM, LRC y CRC

--- --- --- --- --- --- --- --- Sí Sí --- ---

Conversiónde variableASC

Ecuación de primerorden utilizandovariable (N)

--- --- Sí Sí --- --- Sí Sí --- --- --- ---

Comodín (£) --- --- --- Sí --- --- --- Sí --- --- --- ---Leer canal (R) --- --- Sí Sí --- --- Sí Sí --- --- --- ---Escribir canal (W) --- --- --- Sí --- --- --- Sí --- --- --- ---Variable automática:LNG

--- --- --- --- Sí --- --- --- --- --- --- ---

Variable automática:SUM, LRC y CRC

--- --- --- --- --- --- --- --- Sí --- --- ---

Conversiónde variableHEX

Ecuación de primerorden utilizandovariable (N)

--- --- Sí Sí --- --- Sí Sí --- --- --- ---

Comodín (£) --- --- --- Sí --- --- --- Sí --- --- --- ---Leer canal (R) --- --- Sí Sí --- --- Sí Sí --- --- --- ---Escribir canal (W) --- --- --- Sí --- --- --- Sí --- --- --- ---Variable automática:LNG

--- --- --- --- --- Sí --- --- --- --- --- ---

Variable automática:SUM, LRC y CRC

--- --- --- --- --- --- --- --- --- Sí --- ---

Leer canal (R)Los datos de canal se pueden leer seleccionando los atributos deseados para la“dirección” o “dato” en los mensajes de transmisión y de recepción. Cuandoestá seleccionado el atributo, la dirección o dato se lee del canal especificado.Hay tres formas para especificar el canal:

1, 2, 3... 1. Se puede utilizar el segundo operando de la instrucción PMCR(260) (S, elprimer canal de salida).

Ejemplo: R(1)Cuando el comando es “Enviar”, los datos se leen del primer canal que si-gue al canal especificado para el segundo operando de la instrucciónPMCR(260).

2. Se pueden utilizar los canales de entrada y salida en el área de enlace de lasecuencia de comunicaciones.

Ejemplo: R(I1+5)Especifica el quinto canal desde el principio de los canales de recibir en elárea de enlace.

La función Macro de Protocolo Sección 8-6

Page 448: C200HALPHA Manual Programacion

443

Ejemplo: R(O2+1)Especifica el primer canal a partir del segundo canal de enviar en el área deenlace.

3. Se puede especificar directamente una dirección de canal de área de datos.Ejemplo: R(DM 0000 + 2)Especifica el segundo canal después de DM 0000.

Comodines (£) y Escribir canal (W)En recepción de datos, se pueden seleccionar para “dirección” o “dato”, como-dines (£) y Escribir Canales. Sus funciones son las siguientes:

1, 2, 3... 1. La dirección del canal se especifica como el tercer operando de la instruc-ción PMCR(260) (primer canal de entrada).

2. En la dirección de mensaje de recepción se puede seleccionar un comodínpara recibir cualquier mensaje independientemente del destino. El resulta-do es una comunicación abierta.

3. El comodín se puede seleccionar en el dato de mensaje de recepción pararecibir los mensajes.

4. El atributo Escribir Canal se puede seleccionar en la dirección de mensajede recepción para recibir cualquier mensaje independientemente del desti-no y escribir el mensaje en el área de datos especificada por la dirección demensaje de recepción.

5. El atributo Escribir Canal se puede seleccionar en el dato de mensaje derecepción para recibir todos los mensajes y escribir el mensaje en el área dedatos especificada por la dirección de mensaje de recepción.

Ecuación de primer orden utilizando variable NPara las entradas de dirección y de datos se pueden utilizar ecuaciones de pri-mer orden que incluyen la variable N. La variable N se incrementa en 1 cada vezque se repite un paso por el contador de repetición especificado en el paso desecuencia de conmunicación. Utilizando una ecuación con N para la dirección odato es posible el tipo de especificaciones dinámicas mostrado en el siguienteejemplo:Ejemplo: R(2N+6)Especifica el sexto canal que sigue al segundo operando de la instrucciónPMCR(260) para la “dirección” o “dato” y suma dos canales para la especifica-ción cada vez que se repite el paso.

Información común

Dato de comunicaciones

Dato de comunicaciones

Dato de comunicaciones

Dato de comunicaciones

Dato de comunicaciones

Canal 6 (N=0)

Canal 8 (N=1)

Canal 10 (N=2)

Canal 12 (N=3)

Canal 14 (N=4)

Canal 16 (N=5)

Especifica el primer canal con 2N+6(ecuación de primer orden de N).

Código de chequeo de trama y longitud de datosCuando se transmite el mensaje se añade automáticamente un código de che-queo de error SUM, LRC o CRC y la longitud de datos. Cuando se recibe el men-saje, se comprueba si hay errores de transmisión utilizando el código de che-queo de error y si se ha recibido el número de bytes especificado por la longitudde datos.

Matriz de recepciónSi se selecciona una matriz de recepción en el mensaje de recepción, se pue-den seleccionar hasta 15 tipos de mensajes de recepción y se puede asignar acada tipo de mensaje diferentes procesos y procesamientos de error.

8-6-4 Ejemplo de aplicaciónLas secuencias de comunicaciones se pueden llamar y ejecutar mediante lainstrucción PMCR(260). El siguiente ejemplo muestra una secuencia de comu-

La función Macro de Protocolo Sección 8-6

Page 449: C200HALPHA Manual Programacion

444

nicaciones que transmite cinco canales de datos consecutivamente comenzan-do con el primer canal después del segundo operando de la instrucciónPMCR(260) y luego almacena los datos recibidos en el canal especificado en eltercer operando.

PMCR

#1100

DM0000

DM0010

00000 28908

1, 2, 3... 1. Cuando IR 00000 está en ON y SR 28908 (Indicador de ejecución de ins-trucción de puerto A de tarjeta de comunicaciones) está en OFF, las comu-nicaciones se desarrollan a través del puerto A de la tarjeta de comunicacio-nes.

2. DM 0000 es el primer canal de los datos a transmitir, los cuales se transmi-ten consecutivamente (5 veces) basado en el contador de repetición de se-cuencia de comunicaciones.

3. Los datos recibidos se escriben en el área de DM comenzando en el canalDM 0010.

En el paso de transmisión se debe seleccionar el comando Enviar y el contadorde repetición se debe seleccionar a 5. El atributo Leer canal se debe utilizar paralos datos en el mensaje de transmisión con el segundo operando de la instruc-ción PMCR(260) y se debe seleccionar la ecuación de primer orden R(N+1).Para escribir el mensaje de recepción en la dirección del área de datos especifi-cada por el segundo operando de la instrucción PMCR(260), la temporizaciónpara escribir los datos recibidos se debe seleccionar en el parámetro de notifi-cación de respuesta de las selecciones de secuencia. El comando Recibir sedebe seleccionar en cada paso de recepción y se debe seleccionar “Sí” para elparámetro de notificación de respuesta de las selecciones de paso.Seleccionar el carácter (£) en el mensaje de recepción para que así se recibantodos los datos. En el siguiente proceso, seleccionar “Fin” tanto en el paso detransmisión como en el paso de recepción. En proceso de error, seleccionar“Abortar” tanto en el paso de transmisión como en el paso de recepción.

La función Macro de Protocolo Sección 8-6

Page 450: C200HALPHA Manual Programacion

445

SECCIÓN 9Detección y corrección de errores

El C200HX/HG/HE dispone de funciones de autodiagnóstico para identificar condiciones anormales del sistema. Estas fun-ciones minimizan los tiempos muertos y permiten corregir errores de una forma rápida y sencilla.

9-1 Indicadores de alarma 444. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-2 Alarmas programadas y mensajes de error 444. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-3 Lectura y borrado de errores y mensajes 444. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-4 Mensajes de error 444. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-5 Indicadores de error 448. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9-6 Errores de Host Link 450. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 451: C200HALPHA Manual Programacion

446

9-1 Indicadores de alarmaEl indicador ALM/ERR del frontal de la CPU proporciona indicación visual de unfallo en el PLC. Cuando el indicador está en ON (ERROR), se ha producido unerror fatal (un error que provoca la parada del PLC); cuando el indicador parpa-dea (ALARM), se ha producido un error no fatal. Este indicador se muestra en2-1-1 Indicadores de la CPU.

AtenciónEl PLC pondrá a ON el indicador ALM/ERR, parará la ejecución del programa ydesactivará todas sus salidas en la mayoría de los errores de hardware, conciertos errores de software o cuando se ejecuta FALS(007) en el programa (verlas tablas de las siguientes páginas). Para el resto de errores, el PLC seguiráfuncionando. Es responsabilidad del usuario tomar las medidas adecuadaspara garantizar que la desconexión automática del equipo debido a erroresfatales no provoque situaciones peligrosas y para tomar las medidas apropia-das para errores que no paran automáticamente el sistema. Los indicadores delsistema y otras indicaciones de error del sistema y/o programadas por el usua-rio se pueden utilizar para programar acciones adecuadas.

9-2 Alarmas programadas y mensajes de errorFAL(006), FALS(007) y MSG(046) se pueden utilizar en el programa para pro-porcionar información programada por el usuario sobre condiciones de error.Con estas tres instrucciones, el usuario puede diseñar a la medida losdiagnósticos de error para ayudar en la detección y corrección de errores.FAL(006) se utiliza con un número FAL distinto de 00, que se envía al área deSR cuando se ejecuta FAL(006). Ejecutar FAL(006) no parará la operación delPLC ni afectará directamente a las salidas del PLC.FALS(007) también se utiliza con un número FAL, que se envía al mismo lugaren el área SR cuando se ejecuta FALS(007). La ejecución de FALS(007) pararála operación del PLC y provocará la desactivación de todas las salidas del PLC.Cuando se ejecuta FAL(006) con número de función 00, el número FAL actualcontenido en el área SR se borra y se reemplaza por otro, si han sido almacena-dos más en memoria por el sistema.Cuando se utiliza MSG(046), se visualiza en la consola de programación o enotro periférico un mensaje que contiene canales de una área de datos especifi-cada.Estas instrucciones se describen con más detalle en Sección 5 Juego deinstrucciones.

9-3 Lectura y borrado de errores y mensajesLos mensajes de error del sistema se pueden visualizar en la consola de progra-mación o en otro dispositivo periférico.En la consola de programación, pulsar las teclas CLR, FUN y MONTR. Si hayvarios mensajes de error almacenados por el sistema, se puede pulsar denuevo la tecla MONTR para visualizar el siguiente mensaje. Si el sistema estáen modo PROGRAM, pulsando la tecla MONTR se borrará el mensaje de error.(No es posible borrar un error o un mensaje en modo RUN o MONITOR; el PLCdebe estar en modo PROGRAM.) Una vez borrados todos los mensajes, sevisualizará “ERR CHK OK”.Se describe con más detalle cómo acceder a los mensajes de error mediante laconsola de programación en 7-1 Monitorización de la operación y modificaciónde datos. Los procedimientos para el SYSWIN se describen en el Manual deOperación correspondiente.

9-4 Mensajes de errorHay básicamente tres tipos de errores para los que se visualizan sus mensajes:errores de inicialización, errores de operación no fatales y errores de operación

Mensajes de error Sección 9-4

Page 452: C200HALPHA Manual Programacion

447

fatales. La mayoría de ellos también se indican por el número FAL al ser trans-feridos al área FAL del área SR.

El tipo de error se puede determinar rápidamente a partir de los indicadores dela CPU, como se describe a continuación para los tres tipos de errores. Si elestado de un indicador no se menciona en la descripción, no hay diferenciaentre si se enciende o no.

Después de eliminar la causa de un error, borrar el mensaje de error de lamemoria antes de reanudar la operación.

Los asteriscos en los mensajes de error de la siguiente tabla indican datosnuméricos variables. En el display aparecerá un número real.

Los siguientes mensajes de error aparecen antes de arrancar la ejecución delprograma. El indicador POWER se encenderá y el indicador RUN no se encen-derá para ninguno de ellos.

Error y mensaje FAL no. Causa probable Posible corrección

CPU WAIT G

En espera por unidades de E/S espe-ciales o de entrada de interrupción

Ninguno No se ha inicializado unaunidad de E/S especial ouna unidad de entrada deinterrupción.

Efectuar la operación delectura de la tabla de E/Spara chequear los númerosde unidad. Sustituir launidad si está indicada por“$” sólo en la tabla de E/S.

(Las unidades de E/Smultipunto no apareceránen el display de lectura detabla de E/S paradispositivos periféricos)

CPU WAIT G

En espera por E/S remotas Ninguno La alimentación de launidad de E/S remotas estádesconectada o no seencuentra la terminación.

Chequear la fuente dealimentación de lasunidades de E/S remotas,conexiones entre unidadesde E/S remotas y selecciónde terminación.

Los siguientes mensajes de error aparecen para errores que se producen unavez iniciada la ejecución del programa. El funcionamiento del PLC y la ejecucióndel programa continuará después de que uno o más de estos errores se hayanproducido. Para cada uno de estos errores, los indicadores POWER y RUN seencenderán y el indicador ALM/ERR parpadeará.

Error y mensaje No. FAL Probable causa Posible corrección

Error FAL

SYS FAIL FAL**

01 a 99 Se ha ejecutado FAL(006)en el programa. Chequearel número FAL paradeterminar las condicionesque provocaron la ejecución(seleccionadas por elusuario).

Corregir de acuerdo con lacausa indicada por elnúmero FAL (seleccionadapor el usuario)

Error de unidad de entrada deinterrupción

SYS FAIL FAL8A

8A Un error producido en latransferencia de datos entrela unidad de entrada deinterrupción y la CPU.

Sustituir la unidad deentrada de interrupción.

Error de subrutina de interrupción

SYS FAIL FAL8B

8B Se ha ejecutado unasubrutina de más de 10 msdurante el refresco de E/Sde una unidad de E/Sremotas o durante serviciode Host Link.

Comprobar los contenidosde SR 262 y SR 263 yverificar que el tiempo deproceso de subrutina deinterrupción es menor de 10ms.

Errores de inicialización

Errores de operación nofatales

Mensajes de error Sección 9-4

Page 453: C200HALPHA Manual Programacion

448

Error y mensaje Posible correcciónProbable causaNo. FALSe intentó ejecutar un tipode refresco de E/S diferentedel tipo seleccionado parael refresco de ciclo deunidad de E/S especial.

Cambiar el programa o laselección de refresco deciclo de unidad de E/Sespecial de tal forma que seutilice el mismo método derefresco.

Error de unidad de E/S multipunto

SYS FAIL FAL9A

9A Un error producido durantela transferencia de datosentre una unidad de E/S dealta densidad y la CPU.

Chequear de AR 0205 aAR 0214 para identificar launidad con el problema,sustituir la unidad yrearrancar el PLC.

Error de configuración del PLC

SYS FAIL FAL9B

9B Detectado un error en laconfiguración del PLC. Esteerror se generará cuandose lea la selección o seutilice por primera vez.

Chequear y corregir lasselecciones deconfiguración del PLC.

(SR 27500 a SR 27502indica qué parte del Setupdel PLC es incorrecta)

Error de tarjeta de comunicaciones

SYS FAIL FAL9C

9C Se ha producido un errorcon una tarjeta decomunicaciones.

Consultar el Manual deOperación de la tarjeta decomunicaciones para másinformación.

Error de transferencia de cas-sette de memoria

SYS FAIL FAL9D

9D Se ha producido un errordurante la transmisión dedatos entre la UM y uncassette de memoria debidoa:

No está en modoPROGRAM.

UM o Cassette de memoriaes de sólo lectura.

Insuficiente capacidad enUM o Cassette de memoria.

Error de checksum en elCassette de Memoria

Verificar que el PLC está enmodo PROGRAM.

Verificar que el Cassette deMemoria no está protegidocontra escritura.

Verificar que la capacidadde UM y del Cassette deMemoria es suficiente.

Transferir de nuevo losdatos.

Overrun de tiempo de ciclo

CYCLE TIME OVER

F8 Temporizador de guarda haexcedido de 100 mseg.

El tiempo de ciclo delprograma es mayor delrecomendado. Reducir si esposible el tiempo de ciclo.

Error de verificación de tabla de E/S

I/O VER ERR

E7 Se ha quitado una unidad ose ha cambiado por otradistinta, con lo que la tablade E/S es incorrecta.

Utilizar la función VerificarTabla de E/S y conectarunidades vacías o registrarde nuevo la tabla de E/S.

REMOTE ERR

Error de E/S remotas

*Número de unidadmaestra de E/S remotas

B0 o B1 Error ocurrido entransmisiones entreunidades de E/S remotas.

Chequear la línea detransmisión entre el PLC yla Maestra y entre unidadesde E/S remotas.

SIOU ERR

Error de unidad de E/S especial D0 Error en la unidad PC Link,unidad maestra de E/Sremotas, entre una unidadHost Link, SYSMAC LINK, oSYSMAC NET Link y laCPU, o en refresco entreunidad E/S especial y CPU.

Determinar el número de launidad que causa el error(AR 00), corregir el error yconmutar el bit de reinicioapropiado en AR 01, SR250, ó SR 252. Si la unidadno rearranca, sustituirla.

Error de batería

BATT LOW

F7 No hay batería de backup oha descendido la tensión.

Chequear la batería ysustituirla si es necesario.

Mensajes de error Sección 9-4

Page 454: C200HALPHA Manual Programacion

449

Los siguientes mensajes de error aparecen cuando se producen erroresestando el programa en ejecución. El PLC y la ejecución del programa pararán ytodas las salidas del PLC se pondrán a OFF cuando se produzca cualquiera delos siguientes errores. Para errores de corte de alimentación, no se encenderáningún indicador de CPU. Para el resto de errores fatales, se encenderán losindicadores POWER y ALM/ERR. La salida RUN se pondrá a OFF.

Error y mensaje No. FAL Probable causa Posible corrección

Corte de alimentaciónNingún mensaje.

Ninguno Corte de alimentaciónde al menos 10 ms.

Chequear la tensión de lafuente y las líneas de potencia.Intentar alimentar de nuevo.

Ningún mensaje.

Error de CPU Ninguno El temporizador deguarda ha excedido laselección máxima(selección por defecto:130 ms).

Rearrancar el sistema en modoPROGRAM y chequear elprograma. Reducir el tiempo deciclo o resetear el temporizadorde guarda si se necesita untiempo más largo. (Considerarlos efectos de un tiempo deciclo más largo antes de laselección)

Error de memoria

MEMORY ERR

F1 SR 27211 ON:

Se ha producido unerror de checksum en laconfiguración del PLC(DM 6600 a DM 6655).

Chequear la configuración delPLC.

SR 27212 ON:

Se ha producido unerror de checksum en elprograma, indicandouna instrucciónincorrecta.

Chequear el programa.

SR 27213 ON

Se ha producido unerror de checksum en elcambio de instrucciónde expansión.SR 27214 ON:

Se instaló o desinstalóel cassette de memoriacon la alimentaciónconectada.

Instalar el Cassette de Memoriacorrectamente.

SR 27215 ON:

Error de autoarranque.

Chequear si la memoria de laCPU está protegida o si se haproducido un error dechecksum en el Cassette deMemoria.

No hay instrucción END(01)

NO END INST

F0 No hay ningunainstrucción END(01) enel programa.

Escribir la instrucción END(01)en la última dirección delprograma.

Error de bus de E/S

I/O BUS ERRRack no.*

C0 a C2 Se ha producido unerror en la línea de busentre la CPU y lasunidades de E/S.

El dígito de la derecha delnúmero FAL indicará el númerode bastidor donde se detectó elerror. Chequear las conexionesdel cable entre unidades de E/Sy bastidores.

Demasiadas unidades

I/O UNIT OVER

E1 Dos o más unidadesespeciales de E/S o altadensidad de grupo 2 sehan seleccionado almismo número deunidad.

Realizar la operación de lecturade tabla de E/S para chequearlos números de unidad yeliminar duplicidades.

Errores fatales deoperación

Mensajes de error Sección 9-4

Page 455: C200HALPHA Manual Programacion

450

Error y mensaje Posible correcciónProbable causaNo. FALEl número de unidad deuna unidad de E/Sespecial que necesitados canales se haseleccionado al últimonúmero de unidad (9 óF).

Los números de unidad deunidades que requieren doscanales no se puedenseleccionar al último número deunidad.Cambiar el número de unidad auna selección válida.

El número de E/S deuna unidad de E/S dealta densidad grupo 2 seha seleccionado alúltimo número de unidad(9 ó F).

Los números de unidad deunidades de E/S de altadensidad grupo 2 de 64 pts nose pueden seleccionar al últimonúmero.Cambiar el número de unidad auna selección válida.

Dos unidades SYSMACNET Link o SYSMACLINK comparten elmismo nivel deoperación.

Chequear los niveles deoperación de unidad SYSMACNET Link y SYSMAC LINK yeliminar duplicaciones.

Hay montadas tres omás unidades deentrada de interrupción.

Se pueden montar hasta dosunidades de entrada deinterrupción.

En número de unidad deuna unidad de E/Sespecial o de unaunidad de E/S de altadensidad no está dentrodel rango de selecciónpermitido.

Seleccionar el número deunidad dentro del rango deselección permitido.

Se ha conectado untercer bastidor expansora un PLC que admitedos.

Desconectar el tercer bastidor ano ser que el PLC admita tresbastidores.

Error de tabla de E/S

I/O SET ERROR

E0 La asignación de canalde entrada y de salidaregistrada en la tabla deE/S no concuerda conlos canales deentrada/salidanecesarios para lasunidades montadasrealmente.

Chequear la tabla de E/S con laoperación Verificar tabla de E/Sy comprobar todas las unidadespara ver si están en laconfiguración correcta. Una vezconfirmado el sistema registrarde nuevo la tabla de E/S.

Error FALS

SYS FAIL FALS**

01 a 99ó 9F

Por programa se haejecutado FALS.Verificar el número FALpara determinar lascondiciones queprovocan la ejecución(Seleccionado por elusuario o por elsistema).

Corregir de acuerdo con lacausa indicada por el númeroFAL. Si es 9F, chequear eltemporizador de guarda y eltiempo de ciclo que puede serdemasiado largo. Cuando seejecuta FALS(007) y el tiempode ciclo está entre 120 y 130ms, la salida será 9F.

Communications Errors Si se producen errores de comunicaciones, no se encenderá el indicador depuerto de periféricos y de puerto RS--232C (COMM). Chequear la conexión,programación en ambos lados (C200HX/HG/HE y periférico) y resetear el puer-to utilizando el bit de reset (puerto RS-232C: SR 25209).

En este manual se describen otros varios mensajes de error. En la Sección 4Escritura y Depuración del programa se pueden examinar errrores en la escri-tura y depuración del programa.

9-5 Indicadores de errorLa siguiente tabla lista los indicadores y otra información proporcionada en lasáreas SR y AR que se puede utilizar en detección y corrección de errores. Másinformación en 3-4 Áreas de SR y 3-5 Área de AR.

Otros mensajes de error

Indicadores de error Sección 9-5

Page 456: C200HALPHA Manual Programacion

451

Áreas SR

Dirección(es) Función

23600 a 23615 Estado de lazo de nodo para sistema SYSMAC NET Link

23700 a 23715 Área de salida de código de Finalización/error para SEND(090)/RECV(098) en sistemas SYSMACLINK/SYSMAC NET Link

24700 a 25015 Indicadores de Run y Error de unidad PC Link

25100 a 25115 Indicadores de error de E/S remotas

25200 Indicador de error de SEND(090)/RECV(098) de SYSMAC LINK/SYSMAC NET Link nivel 0

25203 Indicador de error de SEND(090)/RECV(098) de SYSMAC LINK/SYSMAC NET Link nivel 1

25206 Indicador de error de unidad Host Link nivel 1

25208 Indicador de error de puerto RS-232C

25300 a 25307 Área de salida de número FAL

25308 Indicador de batería baja

25309 Indicador de error de tiempo de ciclo

25310 Indicador de error de verificación de E/S

25311 Indicador de error de nivel 0 de unidad Host Link montada en bastidor

25312 Indicador de error de E/S remota

25413 Indicador de error de programación de interrupción

25414 Indicador de error de unidad de E/S de alta densidad Grupo 2

25415 Indicador de error de unidad especial (indicador de error de unidad E/S especial, PC Link, Host Link,maestra de E/S remotas, SYSMAC NET Link, o SYSMAC Link)

25503 Indicador de error de ejecución de instrucción (ER)

26408 a 26411 Código de error de puerto de periféricos (excepto modo periféricos)

26412 Indicador de error de comunicaciones de puerto de periféricos (excepto modo periféricos)

26800 a 26815 Información de error de tarjeta de comunicaciones

27012 Indicador de error de transferencia de UM: No modo PROGRAM

27013 Indicador de error de transferencia de UM: Sólo lectura

27014 Indicador de error de transferencia de UM: Capacidad insuficiente o no hay UM

27015 Indicador de error de transferencia de UM: Error de checksum de tarjeta

27211 Indicador de error de memoria: Error de checksum de configuración del PLC

27212 Indicador de error de memoria: Error de checksum de UM o de diagrama de relés

27213 Indicador de error de memoria: Error de checksum de área de cambio de código de instrucción deexpansión

27214 Indicador de error de memoria: desconexión online del cassette de memoria

27215 Indicador de error de memoria: Error de autoarranque

27312 Indicador de error de transferencia de IOM: No está en modo PROGRAM

27313 Indicador de error de transferencia de IOM: Sólo lectura

27314 Indicador de error de transferencia de IOM: Capacidad Insuficiente

27500 Error de configuración del PLC (DM 6600 a DM 6605)

27501 Error de configuración del PLC (DM 6613 a DM 6623)

27502 Error de configuración del PLC (DM 6635 a DM 6655)

28000 a 28015 Indicadores de error de unidad de E/S de alta densidad Grupo 2 para unidades 0 a F

28200 a 28215 Indicadores de error de unidad de E/S especial para unidades 0 a F

Indicadores de error Sección 9-5

Page 457: C200HALPHA Manual Programacion

452

Área ARDirección(es) Función

0000 a 0009 Indicadores de error de unidad de E/S especial o de unidad PC Link

0010 Indicadores de error de sistema de nivel 1 SYSMAC LINK/SYSMAC NET Link

0011 Indicadores de error de sistema de nivel 0 SYSMAC LINK/SYSMAC NET Link

0012 Indicador de error de nivel 1 de unidad Host Link de montaje en bastidor

0013 Indicador de error de nivel 0 de unidad Host Link de montaje en bastidor

0014 Indicador de error de unidad maestra de E/S remotas 1

0015 Indicador de error de unidad maestra de E/S remotas 0

0200 a 0204 Indicadores de error para bastidores esclavos 0 a 4

0205 a 0215 Indicadores de error de unidad de E/S de alta densidad grupo 2 (AR 0205 a AR 0214 corresponden anúmeros de E/S 0 a 9.)

0215 Unidad de E/S de alta densidad grupo 2 no reconocida

0300 a 0315 Indicadores de error de unidades de E/S óptica (0 a 7)

0400 a 0415 Indicadores de error de unidades de E/S óptica (8 a 15)

0500 a 0515 Indicadores de error de unidades de E/S óptica (16 a 23)

0600 a 0615 Indicadores de error de unidades de E/S óptica (24 a 31)

0710 a 0712 Indicadores de error de bastidores esclavos 5 a 7

0713 a 0715 Bits de historia de error

1114 Indicador de error de controlador de comunicaciones de nivel 0

1115 Indicador de error de EEPROM para nivel de operación 0

1514 Indicador de error de controlador de comunicaciones de nivel 1

1515 Indciador de error de EEPROM para nivel de operación 1

9-6 Errores de Host LinkEstos códigos de error se reciben como código de respuesta (código de fin)cuando un comando enviado por el ordenador y recibido por el C200HX/HG/HEno se puede procesar. El formato de código de error es el siguiente.

@ X X r*X X X X X X

Nodono.

Cabecera Termina-ción

FCSCódigode fin

El código de cabecera variará de acuerdo con el comando y puede contener unsubcódigo (para comandos compuestos).

Cód.de fin

Contenidos Probable causa Corrección

00 Finalización normal --- ---

01 No ejecutable en modo RUN El comando enviado no se puedeejecutar con el PLC en modo RUN.

Chequear la relación entre elcomando y el modo del PLC.

02 No ejecutable en modo MONITOR El comando enviado no se puedeejecutar con el PLC en modoMONITOR.

y

03 UM protegida contra escritura La UM del PLC está protegida con-tra escritura.

Poner a OFF el pin 1 del interruptorDIP de la CPU.

04 Dirección fuera de rango La selección de dirección de pro-grama en un comando Cambiar SVo Leer SV excede el máximo de65.535.

Corregir la selección de direcciónde programa y transferir de nuevoel comando.

0B No ejecutable en modo PROGRAM El comando enviado no se puedeejecutar con el PLC en modo PRO-GRAM.

Este código no se está utilizandoactualmente.

13 Error de FCS El FCS es erróneo. O bien elcálculo de FCS es erróneo o esdebido a ruido.

Chequear el método de cálculo deFCS. Si ha influido el ruido, trans-ferir de nuevo el comando.

Errores de Host Link Sección 9--6

Page 458: C200HALPHA Manual Programacion

453

Cód.de fin

CorrecciónProbable causaContenidos

14 Error de formato Formato de comando erróneo o seha dividido un comando que no sepuede dividir.

Chequear el formato y transferir denuevo el comando.

15 Error de datos de número deentrada

Dato fuera del rango especificado odemasiado largo.

Corregir el dato y transferir denuevo el comando.

16 Comando no soportado El operando especificado en uncomando Leer SV o Cambiar SVno existe en el programa.

Chequear el comando y el progra-ma.

18 Error de longitud de trama Se ha excedido la longitud máximade trama: 132 bytes.(Si la trama excede de 280 bytes,se pondrá a ON el indicador deoverflow de recepción y no habrárespuesta).

Chequear el comando y dividirlo envarias tramas si es necesario.

19 No ejecutable Items para leer no registrados paracomando compuesto (QQ).

Ejecutar QQ para registrar lositems a leer antes de intentar lalectura.

23 Memoria de usuario protegida con-tra escritura

El pin 1 del interruptor DIP deC200HX/HG/HE en ON.

Ponerlo a OFF.

A3 Abortado debido a error de FCS entransmisión de datos

Se ha producido un error FCS en lasegunda o siguientes tramas.

Chequear el método de cálculo deFCS. Si fuera debido a influenciadel ruido, transferir de nuevo elcomando.

A4 Abortada debido a error de formatoen datos transmitidos

El formato del comando no con-cuerda con el número de bytes dela segunda o posteriores tramas.

Chequear el formato y transferir denuevo el comando.

A5 Abortada debido a error de datosde número de entrada en datostransmitidos

Error de datos en la segunda oposteriores tramas.

Corregir los datos y transferir denuevo el comando.

A8 Abortado debido a error de longitudde trama en transmisión de datos

La longitud de la segunda o poste-riores tramas exceden de 132 by-tes máx.

Mantener las tramas a 132 bytes omenos.

Errores sin respuesta Con algunos errroes no se recibirá respuesta, independientemente del coman-do. Estos errores se listan en la siguiente tabla.

Error Operación del PLCError de paridad o de trama durante recepcióndel comando

Se pondrá en ON el indicador de error de comunicaciones, seregistrará un código de error y se resetearán las recepciones. (El errorse borrará automáticamente si las comunicaciones se reiniciancorrectamente)

No se ha recibido un retorno de carro (CR)dentro de 280 bytes.

Se pondrá en ON SR 26407 (Indicador de overflow de recepción depuerto RS-232C). Las comunicaciones serán normales cuando setransmita un comando normal.

Se ha recibido un comando que no tiene elcarácter @ al principio de la primera trama.

Se resetean las recepciones.

Número de nodo incorrecto(No nodo local, hexadecimal o superior a 31)

Se descarga el comando y se resetean las recepciones.

Se ha dividido un comando de Escritura, perouna trama intermedia o la última trama sólotiene uno o dos bytes de datos.

Error FCS

Errores de Host Link Sección 9--6

Page 459: C200HALPHA Manual Programacion

455

SECCIÓN 10Comandos Host Link

Esta sección explica los métodos y procedimientos para utilizar los comandos host link para comunicaciones con ordenadorvía puertos del C200HX/HG/HE.

10-1 Sumario de comandos Host Link 454. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-2 Códigos de fin de Host Link 455. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10-2-1 Sumario de códigos de fin 455. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-2-2 Tabla de códigos de comando/fin 456. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10-3 Comandos Host Link 457. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-1 LECTURA DE ÁREA IR/SR ---- RR 457. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-2 LECTURA DE ÁREA LR ---- RL 458. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-3 LECTURA DE ÁREA HR ---- RH 458. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-4 LECTURA DE PV ---- RC 459. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-5 LECTURA DE ESTADO DE TC ---- RG 460. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-6 LECTURA DE ÁREA DE DM ---- RD 461. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-7 LECTURA DE ÁREA DE AR ---- RJ 462. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-8 LECTURA DE ÁREA DE EM ---- RE 463. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-9 ESCRITURA DE ÁREA DE IR/SR ---- WR 464. . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-10 ESCRITURA DE ÁREA DE LR ---- WL 465. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-11 ESCRITURA DE ÁREA DE HR ---- WH 466. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-12 ESCRITURA DE PV ---- WC 466. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-13 ESCRITURA DE ESTADO DE TC ---- WG 467. . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-14 ESCRITURA DE ÁREA DE DM ---- WD 468. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-15 ESCRITURA DE ÁREA DE AR ---- WJ 469. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-16 ESCRITURA DE ÁREA DE EM ---- WE 470. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-17 LECTURA DE SV 1 ---- R# 471. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-18 LECTURA DE SV 2 ---- R$ 473. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-19 LECTURA DE SV 3 ---- R% 474. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-20 CAMBIAR SV 1 ---- W# 476. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-21 CAMBIAR SV 2 ---- W$ 477. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-22 CAMBIAR SV 3 ---- W% 478. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-23 LECTURA DE ESTADO ---- MS 480. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-24 ESCRITURA DE ESTADO ---- SC 481. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-25 LECTURA DE ERROR ---- MF 482. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-26 FORZAR A SET ---- KS 484. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-27 FORZAR A RESET ---- KR 485. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-28 FORZAR A SET/RESET VARIOS RELÉS A LA VEZ---- FK 486. . . . . . . . . . . . . .10-3-29 CANCELAR RELÉS FORZADOS A SET/RESET ---- KC 488. . . . . . . . . . . . . . . . .10-3-30 LECTURA DE MODELO DE PLC ---- MM 489. . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-31 PRUEBA---- TS 490. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-32 LECTURA DE PROGRAMA ---- RP 490. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-33 ESCRITURA DE PROGRAMA ---- WP 491. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-34 GENERAR TABLA DE E/S ---- MI 493. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-35 COMANDO COMPUESTO ---- QQMR 493. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-36 LECTURA DE DATOS DE COMANDO COMPUESTO ---- QQIR 495. . . . . . . . . .10-3-37 ABORTAR ---- XZ 496. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-38 INICIALIZAR ---- ** 497. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-39 RESPUESTA TXD ---- EX 497. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-3-40 Comando indefinido ---- IC 498. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 460: C200HALPHA Manual Programacion

456

10-1 Sumario de comandos Host LinkTabla de comandos Los comandos listados en la siguiente tabla se pueden utilizar para comunica-

ciones host link con el C200HX/HG/HE. Estos comandos los envía el ordenadoral PLC.

Cabecera Modo del PLC Nombre Pág.

RUN MON PRG

g

RR Válido Válido Válido LECTURA DE ÁREA IR/SR 459

RL Válido Válido Válido LECTURA DE ÁREA DE LR 460

RH Válido Válido Válido LECTURA DE ÁREA DE HR 460

RC Válido Válido Válido LECTURA DE PV 461

RG Válido Válido Válido LECTURA DE ESTADO DE TC 462

RD Válido Válido Válido LECTURA DE ÁREA DE DM 463

RJ Válido Válido Válido LECTURA DE ÁREA DE AR 464

RE Válido Válido Válido LECTURA DE ÁREA DE EM 465

WR No válido Válido Válido ESCRITURA DE ÁREA DE IR/SR 466

WL No válido Válido Válido ESCRITURA DE ÁREA DE LR 467

WH No válido Válido Válido ESCRITURA DE ÁREA DE HR 468WC No válido Válido Válido ESCRITURA DE PV 469

WG No válido Válido Válido ESCRITURA DE ESTADO DE TC 470

WD No válido Válido Válido ESCRITURA DE ÁREA DE DM 471WJ No válido Válido Válido ESCRITURA DE ÁREA DE AR 472

WE No válido Válido Válido ESCRITURA DE ÁREA DE EM 473

R# Válido Válido Válido LECTURA DE SV 1 474

R$ Válido Válido Válido LECTURA DE SV 2 475

R% Válido Válido Válido LECTURA DE SV 3 477

W# No válido Válido Válido CAMBIO DE SV 1 478

W$ No válido Válido Válido CAMBIO DE SV 2 479

W% No válido Válido Válido CAMBIO DE SV 3 481

MS Válido Válido Válido LECTURA DE ESTADO 483

SC Válido Válido Válido ESCRITURA DE ESTADO 484

MF Válido Válido Válido LECTURA DE ERROR 485

KS No válido Válido Válido FORZAR A SET 487

KR No válido Válido Válido FORZAR A RESET 488FK No válido Válido Válido FORZAR A SET/RESET VARIOS RELÉS A LA VEZ 489

KC No válido Válido Válido CANCELAR FORZAR A SET/RESET 491

MM Válido Válido Válido LECTURA DE MODELO DE PLC 491TS Válido Válido Válido PRUEBA 492

RP Válido Válido Válido LECTURA DE PROGRAMA 493

WP No válido No válido Válido ESCRITURA DE PROGRAMA 494

MI No válido No válido Válido GENERAR TABLA DE E/S 495

QQ Válido Válido Válido COMANDO COMPUESTO 496

XZ Válido Válido Válido ABORTAR (sólo comando) 499** Válido Válido Válido INICIALIZAR (sólo comando) 499

EX Válido Válido No válido RESPUESTA TXD (sólo respuesta) 500

IC --- --- --- Comando indefinido (sólo respuesta) 500

Códigos de fin de Host Link Sección 10-2

Page 461: C200HALPHA Manual Programacion

457

10-2 Códigos de fin de Host Link

10-2-1 Sumario de códigos de fin

Estos son los códigos de respuesta (fin) que se devuelven en la trama de res-puesta. Cuando se producen dos o más errores, se devolverá el código de errorpara el primer error.

Cód.fin

Contenidos Probable causa Corrección

00 Finalización normal --- ---

01 No ejecutable en modo RUN El comando enviado no se pudoejecutar con el PLC en modo RUN.

Chequear la relación entre el com-ando y el modo del PLC.

02 No ejecutable en modo MONITOR El comando enviado no se pudoejecutar con el PLC en modo MONI-TOR.

y

03 UM protegida contra escritura UM del PLC protegida contra escri-tura.

Poner a OFF el pin 1 del interruptorDIP de la CPU.

04 Dirección fuera de rango La dirección de programa en uncomando Lectura de SV o Cambiode SV es superior a la direcciónmás alta del programa pero inferiora 65,536.

Corregir la selección de direcciónde programa y transferir de nuevo elcomando.

13 Error de FCS FCS erróneo. Cálculo erróneo deFCS o influencia adversa del ruido.

Chequear el método de cálculo deFCS. Si hay influencia adversa delruido, transferir de nuevo el coman-do.

14 Error de formato Formato erróneo del comando o seha dividido un comando que no sepuede dividir.

Chequear el formato y transferir denuevo el comando.

15 Error de datos de número de en-trada

Dato fuera del rango especificado odemasiado largo.

Corregir los datos y transferir denuevo el comando.

16 Comando no soportado El operando especificado en com-ando de Lectura de SV o de Cam-bio de SV no existe en el programa.

Chequear el comando y el progra-ma.

18 Error de longitud de trama Se ha excedido la longitud de tramamáxima de 132 bytes.(Si la trama excede de 280 bytes, elindicador de overflow de recepciónse pondrá en ON y no habrá res-puesta)

Chequear el comando y dividirlo envarias tramas si es necesario.

19 No ejecutable Items a leer no registrados paracomando compuesto (QQ).

Ejecutar QQ para registrar items aleer antes de intentar la lectura.

20 No se pudo crear tabla de E/S Unidad de E/S remotas no reconoci-das, demasiados canales de E/S oduplicación de número de nodopara unidades de E/S ópticas remo-tas.

Chequear el sistema de E/S remo-tas y el número de canales de E/S.

23 Memoria de usuario protegidacontra escritura

Pin 1 del interruptor DIP delC200HX/HG/HE en ON.

Poner a OFF el pin1 del interruptorDIP de la CPU.

A3 Abortada debido a error de FCSen transmitir datos

Se ha producido un error de FCS enla segunda trama o posteriores.

Chequear el método de cálculo deFCS. Si hay influencia de ruido,transferir de nuevo el comando.

A4 Abortada debido a error de forma-to en datos a transmitir

El formato de comando no coincidecon el número de bytes en la se-gunda trama o posteriores.

Chequear el formato y transferir denuevo el comando.

A5 Abortada debido a error de datode número de entrada en transmi-tir datos

Error de datos de número de entra-da en la segunda trama o posterio-res.

Corregir los datos y transferir denuevo el comando.

A8 Abortada debido a error de forma-to en transmitir datos

La longitud de la segunda trama oposteriores exceden de 132-bytesmáx.

Las tramas han de contener 132 by-tes o menos.

Códigos de fin de Host Link Sección 10-2

Page 462: C200HALPHA Manual Programacion

458

Errores sin respuestas Con algunos errores no se recibirá respuesta, independientemente del coman-do. Estos errores se listan en la siguiente tabla.

Error Operación del PLCError de paridad o de trama durante recepcióndel comando

Se pondrá en ON el indicador de error de comunicaciones, seregistrará un código de error y se resetearán las recepciones. (El errorse borrará automáticamente si las comunicaciones se reiniciancorrectamente)

No se ha recibido un retorno de carro (CR)dentro de 280 bytes.

Se pondrá en ON SR 26407 (Indicador de overflow de recepción depuerto RS-232C). Las comunicaciones serán normales cuando setransmita un comando normal.

Se ha recibido un comando que no tiene elcarácter @ al principio de la primera trama.

Se resetean las recepciones.

Número de nodo incorrecto(No nodo local, hexadecimal o superior a 31)

Se descarga el comando y se resetean las recepciones.

Se ha dividido un comando de Escritura, perouna trama intermedia o la última trama sólotiene uno o dos bytes de datos.

Error FCS

10-2-2 Tabla de comando/código de finLa siguiente tabla muestra los códigos de fin devueltos para cada comando.

Cabec. Posibles códigos de fin Comentarios

RR 00 13 14 15 18 A3 A8 ---

RL 00 13 14 15 18 A3 A8 ---

RH 00 13 14 15 18 A3 A8 ---

RC 00 13 14 15 18 A3 A8 ---

RG 00 13 14 15 18 A3 A8 ---

RD 00 13 14 15 18 A3 A8 ---

RJ 00 13 14 15 18 ---

RE 00 13 14 15 18 A3 A8 ---

WR 00 01 13 14 15 18 A3 A4 A5 A8 ---

WL 00 01 13 14 15 18 A3 A4 A5 A8 ---

WH 00 01 13 14 15 18 A3 A4 A5 A8 ---

WC 00 01 13 14 15 18 A3 A4 A5 A8 ---WG 00 01 13 14 15 18 A3 A4 A5 A8 ---

WD 00 01 13 14 15 18 23 A3 A4 A5 A8 ---

WJ 00 01 13 14 15 18 A3 A4 A5 A8 ---

WE 00 01 13 14 15 18 A3 A4 A5 A8 ---

R# 00 13 14 15 16 18 23 ---

R$ 00 04 13 14 15 16 18 23 ---

R% 00 04 13 14 15 16 18 23 ---

W# 00 01 13 14 15 16 18 23 ---

W$ 00 01 04 13 14 15 16 18 23 ---

W% 00 01 04 13 14 15 16 18 23 ---

MS 00 13 14 18 ---

SC 00 13 14 15 18 19 ---

MF 00 13 14 15 18 ---

KS 00 01 13 14 15 18 ---

KR 00 01 13 14 15 18 ---

FK 00 01 13 14 15 18 ---

KC 00 01 13 14 18 ---MM 00 13 14 18 ---

TS 13 14 18 ---

RP 00 13 14 18 23 A3 A8 ---

WP 00 01 02 13 14 15 18 19 23 A3 A4 A5 A8 ---

MI 00 01 02 03 13 14 18 20 ---

QQ 00 13 14 15 18 19 A3 A4 A5 A8 ---

Códigos de fin de Host Link Sección 10-2

Page 463: C200HALPHA Manual Programacion

459

Cabec. ComentariosPosibles códigos de fin

XZ --- No respuesta

££ --- No respuesta

EX --- No código de fin

IC --- No código de fin

10-3 Comandos Host LinkEste apartado explica los comandos que se pueden enviar del ordenador alPLC.

10-3-1 LECTURA DE ÁREA IR/SR ---- RRLee los contenidos del número especificado de canales IR y SR, comenzandopor el indicado.

Formato de comando

@

FCS

x 101 x 100 x 103 x 102 * !R R x 101 x 100 x 103 x 102 x 101 x 100

No. nodo Cabecera Canal inicial(0000 a 0511)

No. de canales(0001 a 0512)

Termina-ción

Formato de respuesta

@ R R

FCS

x 101 x 100 x 161 x 160 * !x 163 x 162 x 161 x 160

Cód. defin

Datos del primer canal

Datos de todos los canales

Termina-ción

No. nodo Cabecera

Limitaciones La porción de texto de la primera trama de respuesta puede contener hasta 30canales. Si se han de leer más de 30 canales, los datos se devolverán en variastramas.En la segunda y posteriores tramas, la porción de texto de la respuesta puedecontener hasta 31 canales.Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Si la longitud del comando es incorrecta se devolverá un código de fin 14 (errorde formato) y un código de fin 15 (error de dato de número de entrada) si loscanales especificados exceden los límites de área de datos o no se dan en BCD.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

Comandos Host Link Sección 10-3

Page 464: C200HALPHA Manual Programacion

460

Cód. defin

Contenidos

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-2 LECTURA DE ÁREA LR ---- RLLee los contenidos del número especificado de canales LR, comenzando por elindicado.

Formato de comando

@ R L

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 103 x 102 x 101 x 100

No. nodo Cabecera Canal inicial (0000a 0063)

No. de canales(0001 a 0064)

Termina-ción

Formato de respuesta

@ R Lx 101 x 100 x 161 x 160 * !x 163 x 162 x 161 x 160

FCSNo. nodo Cabecera Cód. defin

Datos del primer canal

Datos de todos los canales

Termina-ción

Limitaciones La porción de texto de la primera trama de respuesta puede contener hasta 30canales. Si se han de leer más de 30 canales, los datos se devolverán en variastramas.En la segunda y posteriores tramas, la porción de texto de la respuesta puedecontener hasta 31 canales.Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Si la longitud del comando es incorrecta se devolverá un código de fin 14 (errorde formato) y un código de fin 15 (error de dato de número de entrada) si loscanales especificados exceden los límites de área de datos o no se dan en BCD.

Cód. defin

Contenidos

00 Finalización normal13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-3 LECTURA DE AREA HR ---- RHLee los contenidos del número especificado de canales HR, comenzando por elindicado.

Comandos Host Link Sección 10-3

Page 465: C200HALPHA Manual Programacion

461

Formato de comando

@ R H

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 103 x 102 x 101 x 100

No. nodo Cabecera Canal inicial(0000 a 0099)

No. de canales(0001 a 0100)

Termina-ción

Formato de respuesta

@ R Hx 101 x 100 x 161 x 160 * !x 163 x 162 x 161 x 160

FCSDatos del primer canalCabeceraNo. nodo Cód. defin

Termina-ciónDatos de todos los canales

Limitaciones La porción de texto de la primera trama de respuesta puede contener hasta 30canales. Si se han de leer más de 30 canales, los datos se devolverán en variastramas.

En la segunda y posteriores tramas, la porción de texto de la respuesta puedecontener hasta 31 canales.

Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Si la longitud del comando es incorrecta se devolverá un código de fin 14 (errorde formato) y un código de fin 15 (error de dato de número de entrada) si loscanales especificados exceden los límites de área de datos o no se dan en BCD.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-4 LECTURA DE PV ---- RCLee los contenidos de PV (valor presente) del número de temporizadores/con-tadores especificado, comenzando por el indicado.

Formato de comando

@ R C

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 103 x 102 x 101 x 100

No. de TIMs/CNTs(0001 a 0512)

TIM/CNT inicial(0000 a 0511)

CabeceraNo. nodo Termina-ción

Comandos Host Link Sección 10-3

Page 466: C200HALPHA Manual Programacion

462

Formato de respuesta

@ R Cx 101 x 100 x 161 x 160 * !x 103 x 102 x 101 x 100

FCS Termina-ción

Datos del primer TIM/CNTDatos de los TIM/CNTs especificados

Cód. defin

CabeceraNo. nodo

Limitaciones La porción de texto de la primera trama de respuesta puede contener hasta 30canales. Si se han de leer más de 30 canales, los datos se devolverán en variastramas.En la segunda y posteriores tramas, la porción de texto de la respuesta puedecontener hasta 31 canales.Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Si la longitud del comando es incorrecta se devolverá un código de fin 14 (errorde formato) y un código de fin 15 (error de dato de número de entrada) si loscanales especificados exceden los límites de área de datos o no se dan en BCD.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-5 LECTURA DE ESTADO DE TC ---- RGLee el estado de los indicadores de finalización del número de temporizadores/contadores especificado, comenzando por el indicado.

Formato de comando

@ R G

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 103 x 102 x 101 x 100

CabeceraNo. nodo TIM/CNT inicial(0000 a 0511)

No. de TIM/CNTs(0001 a 0512)

Termina-ción

Formato de respuesta

@ R Gx 101 x 100 x 161 x 160 * !

FCSCód. defin

CabeceraNo. nodo Termina-ciónDatos de TC

(1 TIM/CNT)

Datos de TC(para todos los TIM/CNTespecificados)

ON/OFF

Comandos Host Link Sección 10-3

Page 467: C200HALPHA Manual Programacion

463

Limitaciones La porción de texto de la primera trama de respuesta puede contener hasta 30canales. Si se han de leer más de 30 canales, los datos se devolverán en variastramas.En la segunda y posteriores tramas, la porción de texto de la respuesta puedecontener hasta 31 canales.Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Si la longitud del comando es incorrecta se devolverá un código de fin 14 (errorde formato) y un código de fin 15 (error de dato de número de entrada) si loscanales especificados exceden los límites de área de datos o no se dan en BCD.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datosA8 Abortada debido a error de longitud de trama en transmitir datos

10-3-6 LECTURA DE ÁREA DE DM ---- RDLee los contenidos del número especificado de canales DM, comenzando por elindicado.

Formato de comando

@ R D

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 103 x 102 x 101 x 100

No. nodo Cabecera Termina-ción

Canal inicial(0000 a 9999)

No. de canales(0001 a 10000)(ver nota)

Nota 1. Si se han de leer 10.000 canales, indicarlo como 0000.

Formato de respuesta

@ R Dx 101 x 100 x 161 x 160 * !x 163 x 162 x 161 x 160

FCSNo. nodo Cód. defin

Cabecera Datos del primer canal

Datos de todos los canales

Termina-ción

Limitaciones La porción de texto de la primera trama de respuesta puede contener hasta 30canales. Si se han de leer más de 30 canales, los datos se devolverán en variastramas.En la segunda y posteriores tramas, la porción de texto de la respuesta puedecontener hasta 31 canales.

Comandos Host Link Sección 10-3

Page 468: C200HALPHA Manual Programacion

464

De DM 6656 a DM 6999 no existe, pero no se producirá un error si se intenta leerestos canales. En su lugar se devolverá como respuesta “0000”. De la mismaforma se devolverá “0000” para canales de DM de extensión (DM 7000 a DM9999) si la DM de extensión no se ha asignado en el área de UM.Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Si la longitud del comando es incorrecta se devolverá un código de fin 14 (errorde formato) y un código de fin 15 (error de dato de número de entrada) si loscanales especificados exceden los límites de área de datos o no se dan en BCD.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-7 LECTURA DE ÁREA AR ---- RJLee los contenidos del número especificado de canales AR, comenzando por elindicado.

Formato de comando

@ R J

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 103 x 102 x 101 x 100

Termina-ción

Canal inicial(0000 a 0027)

No. nodo Cabecera No. de canales(0001 a 0028)

Formato de respuesta

@ R J

FCS

x 101 x 100 x 161 x 160 * !x 163 x 162 x 161 x 160

No. nodo Cód. defin

Cabecera Datos del primer canal

Datos de todos los canales

Termina-ción

Limitaciones La porción de texto de la primera trama de respuesta puede contener hasta 30canales.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Comandos Host Link Sección 10-3

Page 469: C200HALPHA Manual Programacion

465

Códigos de fin Si la longitud del comando es incorrecta se devolverá un código de fin 14 (errorde formato) y un código de fin 15 (error de dato de número de entrada) si loscanales especificados exceden los límites de área de datos o no se dan en BCD.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

10-3-8 LECTURA DE ÁREA DE EM ---- RELee los contenidos del número especificado de canales de EM, comenzandodesde el canal especificado en el banco de EM especificado.

Formato de comando

@ R E

FCS

x 101 x 100 x 103 x 102 £ !x 101 x 100 x 103 x 102 x 101 x 100

Nodo no. Cabecera Termina-ción

Canal inicial(0000 a 6143)

No. de canales(0001 a 6144)

No. banco(Ver nota)

Bank No.

Nota Introducir 00, 01 ó 02 para especificar número de banco 0, 1 ó 2. Introducir dosespacios para especificar el banco actual.

Formato de respuesta

@ R Ex 101 x 100 x 161 x 160 £ !x 163 x 162 x 161 x 160

FCSNodo no. Cód. defin

Cabecera Dato leído (1 canal)

Datos leídos (para No. de canales leídos)

Termina-ción

Limitaciones La porción de texto de la primera trama de respuesta puede contener hasta 30canales. Si se han de leer más de 30 canales, los datos se devolverán en variastramas.

En la segunda y posteriores tramas, la porción de texto de la respuesta puedecontener hasta 31 canales.

Si se especifica un número de banco válido pero el PLC no está equipado conese banco de EM, se devolverá como datos leídos “0000”.

Este comando no se puede utilizar para cambiar el número de banco actual.

Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Si la longitud del comando es incorrecta se devolverá un código de fin 14 (errorde formato) y un código de fin 15 (error de dato de número de entrada) si los

Comandos Host Link Sección 10-3

Page 470: C200HALPHA Manual Programacion

466

canales especificados exceden los límites de área de datos, no se dan en BCD ose ha especificado un número de banco no válido.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-9 ESCRIBIR EN ÁREAS IR/SR ---- WREscribe datos en las áreas IR y SR, comenzando por el canal especificado. Laescritura es canal por canal.

Formato de comando

@ W R

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 163 x 162 x 161 x 160

No. nodo Cabecera Canal inicial(0000 a 0511)

Datos a escribir (1 canal)

Datos a escribir(para todos los canales)

Termina-ción

Formato de respuesta

@ W Rx 101 x 100 x 161 x 160 * !

FCSNo. nodo Cód. defin

Cabecera Termina-ción

Limitaciones No se pueden escribir datos en los canales 253 a 255. Si se intenta escribir enellos, no se producirá ningún error, pero tampoco se escribirá nada.Excepto para el primer canal de los datos a escribir, éstos se pueden dividir envarias tramas.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Si la longitud del comando es incorrecta o el primer canal de datos a escribir noestá en la misma trama se devolverá un código de fin 14 (error de formato)Se devolverá un código de fin 15 (error de datos de número de entrada) si el datoa escribir especificado excede los límites del área de datos, el canal inicial no seda en BCD o los datos a escribir no están en hexadecimal. (se devolverá uncódigo de fin A5 en vez de 15 para datos a escribir no en hexadecimal en tramasmúltiples de comando).

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

Comandos Host Link Sección 10-3

Page 471: C200HALPHA Manual Programacion

467

Cód. defin

Contenidos

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de número de entrada en transmitirdatos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-10 ESCRIBIR EN ÁREA LR ---- WLEscribe datos en las áreas LR, comenzando por el canal especificado. La escri-tura es canal por canal.

Formato de comando

@ W L

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 163 x 162 x 161 x 160

No. nodo Cabecera Termina-ción

Datos a escribir (1 canal)

Datos a escribir(para todos los canales)

Canal inicial(0000 a 0063)

Formato de respuesta

@ W Lx 101 x 100 x 161 x 160 * !

FCSNo. nodo Cód. defin

Cabecera Termina-ción

Limitaciones Excepto para el primer canal de los datos a escribir, éstos se pueden dividir envarias tramas.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Si la longitud del comando es incorrecta o el primer canal de datos a escribir noestá en la misma trama se devolverá un código de fin 14 (error de formato)Se devolverá un código de fin 15 (error de datos de número de entrada) si el datoa escribir especificado excede los límites del área de datos, el canal inicial no seda en BCD o los datos a escribir no están en hexadecimal. (se devolverá uncódigo de fin A5 en vez de 15 para datos a escribir no en hexadecimal en tramasmúltiples de comando).

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

13 Error de FCS

14 Error de formato

Comandos Host Link Sección 10-3

Page 472: C200HALPHA Manual Programacion

468

Cód. defin

Contenidos

15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de número de entrada en transmitirdatos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-11 ESCRIBIR EN ÁREA HR ---- WHEscribe datos en las áreas HR, comenzando por el canal especificado. La escri-tura es canal por canal.

Formato de comando

@ W H

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 163 x 162 x 161 x 160

No. nodo Cabecera Canal inicial(0000 a 0099)

Datos a escribir(para todos los canales)

Datos a escribir (1 canal) Termina-ción

Formato de respuesta

@ W Hx 101 x 100 x 161 x 160 * !

FCSNo. nodo Cód. defin

Cabecera Termina-ción

Limitaciones Excepto para el primer canal de los datos a escribir, éstos se pueden dividir envarias tramas.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Si la longitud del comando es incorrecta o el primer canal de datos a escribir noestá en la misma trama se devolverá un código de fin 14 (error de formato)Se devolverá un código de fin 15 (error de datos de número de entrada) si el datoa escribir especificado excede los límites del área de datos, el canal inicial no seda en BCD o los datos a escribir no están en hexadecimal. (se devolverá uncódigo de fin A5 en vez de 15 para datos a escribir no en hexadecimal en tramasmúltiples de comando).

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

Comandos Host Link Sección 10-3

Page 473: C200HALPHA Manual Programacion

469

Cód. defin

Contenidos

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de número de entrada en transmitirdatos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-12 ESCRIBIR PV ---- WCEscribe los PVs (valores presentes) de temporizadores/contadores comen-zando desde el temporizador/contador especificado.

Formato de comando

@ W C

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 163 x 162 x 161 x 160

No. nodo Cabecera Termina-ción

TIM/CNT inicial(0000 a 0511)

Datos a escribir (1 TIM/CNT)

Datos a escribir(para el No. de PVsdado)

Formato de respuesta

@ W Cx 101 x 100 x 161 x 160 * !

FCSNo. nodo Cód. defin

Cabecera Termina-ción

Limitaciones Excepto para el primer canal de los datos a escribir, éstos se pueden dividir envarias tramas.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Si la longitud del comando es incorrecta o el primer canal de datos a escribir noestá en la misma trama se devolverá un código de fin 14 (error de formato)Se devolverá un código de fin 15 (error de datos de número de entrada) si el datoa escribir especificado excede los límites del área de datos, el canal inicial no seda en BCD o los datos a escribir no están en hexadecimal. (Se devolverá uncódigo de fin A5 en vez de 15 para datos a escribir no en hexadecimal en tramasmúltiples de comando).Con unidades Host Link, se devolverá un código de fin 15 (error de datos denúmero de entrada) si los datos no están en BCD.

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

Comandos Host Link Sección 10-3

Page 474: C200HALPHA Manual Programacion

470

Cód. defin

Contenidos

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de número de entrada en transmitirdatos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-13 ESCRIBIR ESTADO DE TC ---- WGEscribe el estado de los indicadores de finalización para temporizadores y con-tadores en el área TC, comenzando desde el temporizador/contador especifi-cado (número). La escritura se efectúa número por número.

Formato de comando

@ W G

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100

No. nodo Cabecera

Datos a escribir(1 TIM/CNT)

Datos a escribir(para número de TC a escribir)

TIM/CNT inicial(0000 a 0511)

Termina-ción

ON/OFF

Formato de respuesta

@ W Gx 101 x 100 x 161 x 160 * !

FCSNo. nodo Cód. defin

Cabecera Termina-ción

Limitaciones Excepto para el primer canal de los datos a escribir, éstos se pueden dividir envarias tramas.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Si la longitud del comando es incorrecta o el primer canal de datos a escribir noestá en la misma trama se devolverá un código de fin 14 (error de formato)Se devolverá un código de fin 15 (error de datos de número de entrada) si el datoa escribir especificado excede los límites del área de datos, el canal inicial no seda en BCD o los datos a escribir no están en hexadecimal. (se devolverá uncódigo de fin A5 en vez de 15 para datos a escribir no en hexadecimal en tramasmúltiples de comando).

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

Comandos Host Link Sección 10-3

Page 475: C200HALPHA Manual Programacion

471

Cód. defin

Contenidos

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de número de entrada en transmitirdatos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-14 ESCRIBIR ÁREA DM ---- WDEscribe datos en el área DM, comenzando desde el canal especificado. Laescritura se efectúa canal por canal.

Formato de comando

@ W D

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 163 x 162 x 161 x 160

No. nodo Cabecera Canal inicial(0000 a 9999)

Datos para el primer canal

Datos para todos los canales

Termina-ción

Formato de respuesta

@ W Dx 101 x 100 x 161 x 160 * !

FCSNo. nodo Cabecera Termina-ción

Cód. defin

Limitaciones Execepto para el primer canal de datos a escribir, éstos se pueden dividir envarias tramas.De DM 6656 a DM 6999 no existe, pero no se producirá un error si se intentaescribir en estos canales. De la misma forma se devolverá “0000” para canalesde DM de extensión (DM 7000 a DM 9999) si la DM de extensión no se ha asig-nado en el área de UM.Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK --- OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Si la longitud del comando es incorrecta o el primer canal de datos a escribir noestá en la misma trama se devolverá un código de fin 14 (error de formato)Se devolverá un código de fin 15 (error de datos de número de entrada) si el datoa escribir especificado excede los límites del área de datos, el canal inicial no seda en BCD o los datos a escribir no están en hexadecimal. (Se devolverá uncódigo de fin A5 en vez de 15 para datos a escribir no en hexadecimal en tramasmúltiples de comando).

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

13 Error de FCS

Comandos Host Link Sección 10-3

Page 476: C200HALPHA Manual Programacion

472

Cód. defin

Contenidos

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

23 Memoria de usuario protegida

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de número de entrada en transmitirdatos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-15 ESCRIBIR ÁREA AR ---- WJEscribe datos en el área AR, comenzando desde el canal especificado. Laescritura se efectúa canal por canal.

Formato de comando

@ W J

FCS

x 101 x 100 x 103 x 102 * !x 101 x 100 x 163 x 162 x 161 x 160

Datos para todos los canales

Datos para el primer canalCanal inicial(0000 a 0027)

No. nodo Cabecera Termina-ción

Formato de respuesta

@ W Jx 101 x 100 x 161 x 160 * !

FCSNo. nodo Cód. defin

Cabecera Termina-ción

Limitaciones Excepto para el primer canal de los datos a escribir, éstos se pueden dividir envarias tramas.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Si la longitud del comando es incorrecta o el primer canal de datos a escribir noestá en la misma trama se devolverá un código de fin 14 (error de formato)Se devolverá un código de fin 15 (error de datos de número de entrada) si el datoa escribir especificado excede los límites del área de datos, el canal inicial no seda en BCD o los datos a escribir no están en hexadecimal. (se devolverá uncódigo de fin A5 en vez de 15 para datos a escribir no en hexadecimal en tramasmúltiples de comando).

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

Comandos Host Link Sección 10-3

Page 477: C200HALPHA Manual Programacion

473

Cód. defin

Contenidos

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de número de entrada en transmitirdatos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-16 ESCRITURA DE ÁREA DE EM ---- WEEscribe datos en el banco del área de EM especificado, comenzando desde elcanal especificado. La escritura se realiza canal por canal.

Formato comando

@ W E

FCS

x 101 x 100 x 103 x 102 £ !x 101 x 100 x 163 x 162 x 161 x 160

No. nodo Cabecera Canal inicial(0000 a 6143)

Datos a escribir (1 canal)

Datos a escribir(para el número de canales a escribir)

Termina-ción

No. Banco(ver nota)

Bank No.

Nota Introducir 00, 01 ó 02 para especificar número de banco 0, 1 ó 2. Introducir dosespacios para especificar el banco actual.

Formato de respuesta

@ W Ex 101 x 100 x 161 x 160 £ !

FCSNo. nodo Cabecera Termina-ción

Códigode fin

Limitaciones Excepto para el primer canal de los datos a escribir, éstos se pueden dividir envarias tramas.Si se especifica un número de banco válido, pero el PLC no está equipado conese banco de EM, el comando se completará normal pero sin escribir ningúndato.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Si la longitud del comando es incorrecta o el primer canal de datos a escribir noestá en la misma trama se devolverá un código de fin 14 (error de formato)Se devolverá un código de fin 15 (error de datos de número de entrada) si el datoa escribir especificado excede los límites del área de datos, el canal inicial no seda en BCD o los datos a escribir no están en hexadecimal. (se devolverá uncódigo de fin A5 en vez de 15 para datos a escribir no en hexadecimal en tramasmúltiples de comando).

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

Comandos Host Link Sección 10-3

Page 478: C200HALPHA Manual Programacion

474

Cód. defin

Contenidos

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

18 Error de longitud de trama

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de número de entrada en transmitirdatos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-17 LECTURA DE SV 1 ---- R#Busca en el programa la primera instrucción TIM, TIMH(015), CNT, CNTR(012)o TTIM(087) con el número de TC especificado y lee el SV, supuesto que es unaconstante. El SV leído es un número decimal de 4 dígitos. La búsqueda empiezadesde el principio del programa y por lo tanto puede tardar aproximadamente 10segundos en obtener una respuesta.

Formato de comando

@ R #

FCS

x 101 x 100 OP1 OP2 * !OP3 OP4 x 103 x 102 x 101 x 100

No. nodo Cabecera Termina-ción

Nombre Número de TC(0000 a 0511)

Formato de respuesta

@ R #x 101 x 100 x 161 x 160 * !

FCS

x 103 x 102 x 101 x 100

SV Termina-ción

No. nodo Cabecera Cód. defin

Parámetros Nombre, número de TC (Comando)Especificar con 4 caracteres la instrucción para leer el SV en “Nombre” . Añadirun espacio a continuación del nemónico TIM o CNT para completar los 4 carac-teres.

Nombre de instrucción Clasificación Rango denúmero de

OP1 OP2 OP3 OP4número de

TCT I M (S) TEMPORIZADOR 0000 a 0511

T I M H TEMPORIZADOR ALTAVELOCIDAD

C N T (S) CONTADORC N T R CONTADOR REVERSIBLET T I M TEMPORIZADOR TOTALI-

ZADOR

(S): Espacio

Limitaciones El segundo canal de la instrucción debe ser una constante BCD de 000 a 0511.Si la misma instrucción se utiliza más de una vez en el programa, se leerá el SVde la primera.El comando no se puede ejecutar si el área de UM está protegida contra escritu-ra.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK ---

Comandos Host Link Sección 10-3

Page 479: C200HALPHA Manual Programacion

475

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.Se devolverá un código de fin 15 (error de datos de número de entrada) si elnemónico de la instrucción o el número de TC es incorrecto.Se devolverá un código de fin 16 (comando no soportado) si la instrucción espe-cificada no existe en el programa.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

16 Comando no soportado18 Error de longitud de trama

23 Memoria de usuario protegida

10-3-18 LECTURA DE SV 2 ---- R$Busca en el programa la primera instrucción TIM, TIMH(015), CNT, CNTR(012)o TTIM(087) con el número de TC especificado y lee el SV si es constante o ladirección del canal que contiene el SV. El SV leído es un número decimal de 4dígitos.

Formato de comando

x 100 x 100@ R $x 100x 101 x 103 x 102 x 101 OP1 OP2 OP3 OP4 x 103 x 102 x 101 * !

No. nodo Dirección deprograma

Nombre Temporizador/conta-dor (0000 a 0511)

Termina-ción

FCSCabecera

Formato de respuesta

x 160@ R $ OP1 OP2 OP3 OP4 x 100x 100x 101 x 161 x 103 x 102 x 101 !*

No. nodo Cabecera Cód. defin

Operando SV Termina-ción

FCS

Parámetros Nombre, número de TC (Comando)Especificar con 4 caracteres el nombre de la instrucción para leer el SV en”Nombre”. En “número de TC”, especificar el número de temporizador/contadora utilizar por la instrucción.

Nombre de instrucción Clasificación Rango denúmero de

OP1 OP2 OP3 OP4número de

TCT I M (S) TEMPORIZADOR 0000 a 0511

T I M H TEMPORIZADOR DEALTA VELOCIDAD

C N T (S) CONTADORC N T R CONTADOR REVERSIBLET T I M TEMPORIZADOR TOTALI-

ZADOR

(S): EspacioOperando, SV (Respuesta)El nombre que indica el tipo de SV se devuelve en “Operando” y la dirección delcanal donde está almacenado el SV o la constante SV se devuelve en “SV”.

Comandos Host Link Sección 10-3

Page 480: C200HALPHA Manual Programacion

476

Operando Clasificación Constante odirección de

OP1 OP2 OP3 OP4dirección de

canalC I O (S) IR o SR 0000 a 0511

L R (S) (S) LR 0000 a 0063

H R (S) (S) HR 0000 a 0099

A R (S) (S) AR 0000 a 0027

D M (S) (S) DM 0000 a 6655

D M £ (S) DM (indirecto) 0000 a 6655

C O N (S) Constante 0000 a 9999

E M (S) (S) EM 0000 a 6143

E M £ (S) EM (indirecto) 0000 a 6143

(S): Espacio

Nota El nombre de la instrucción especificada en ”Nombre” debe ser de cuatro carac-teres. Rellenar los huecos con espacios para completar cuatro caracteres.

Limitaciones El comando sólo es válido cuando la selección de UM es sólo diagrama de relés.

El comando no se puede ejecutar si el área de UM está protegida contra escritu-ra.

Selecciones del PLC

Modo del PLC Área de UMRUN MONITOR PROGRAM Protección contra

escrituraProtección contra

lectura

OK OK OK OK ---

Condiciones de ejecución

Comandos RespuestasSencillo Múltiple Sencillo Múltiple

OK --- OK ---

Códigos de fin Se devolverá un código de fin 04 (excedida dirección) si la dirección de progra-ma es superior a la dirección más alta de programa pero menor de 65,536(32,767 en el C200HS).

Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Se devolverá un código de fin 15 (error de datos de número de entrada) si ladirección de programa no está especificada en BCD o los parámetros operan-do/SV son incorrectos.

Se devolverá un código de fin 16 (comando no soportado) si la instrucción espe-cificada no existe en el programa.

Cód. defin

Contenidos

00 Finalización normal

04 Dirección demasiado alta13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

16 Comando no soportado

18 Error de longitud de trama

23 Memoria de usuario protegida

Comandos Host Link Sección 10-3

Page 481: C200HALPHA Manual Programacion

477

10-3-19 LECTURA DE SV 3 ---- R%Lee la constante SV o la dirección del canal que contiene el SV como un númerodecimal de 4 dígitos escrita en el segundo canal de la instrucción TIM,TIMH(015), CNT, CNTR(012) o TTIM(087) en la dirección de programa especifi-cada en el programa de usuario.

Formato de comando

x 103OP4OP3OP2OP1@ R % x 102 x 102x 100x 101 x 105 x 104 x 103 x 100x 101x 101 x 100

!*

No. nodo Direcciones de programa

Debe ser “0”

Nombre Temporizador/conta-dor (0000 a 0511)

Termina-ción

FCS

Cabecera

Formato de respuesta

@ R % OP1 OP2 OP3 OP4x 160 x 100x 100x 101 x 161 x 103 x 102 x 101 * !

No. nodo Cabecera Cód. defin

Operando SV Termina-ción

FCS

Parámetros Nombre, número de TC (Comando)Especificar el nombre de la instrucción cuyo SV se ha de leer en “Nombre”. Elnombre se da en 4 caracteres. En “número de TC”, especificar el número detemporizador/contador a utilizar por la instrucción.

Nombre de instrucción Clasificación Rango denúmero de

OP1 OP2 OP3 OP4número de

TCT I M (S) TEMPORIZADOR 0000 a 0511

T I M H TEMPORIZADOR DEALTA VELOCIDAD

C N T (S) CONTADORC N T R CONTADOR REVERSIBLET T I M TEMPORIZADOR TOTALI-

ZADOR

(S): EspacioOperando, SV (Respuesta)El nombre que indica el tipo de SV se devuelve en “Operando” y la dirección delcanal donde está almacenado el SV o la constante SV se devuelve en “SV”.

Operando Clasificación Constante odirección de

OP1 OP2 OP3 OP4dirección de

canalC I O (S) IR o SR 0000 a 0511

L R (S) (S) LR 0000 a 0063

H R (S) (S) HR 0000 a 0099

A R (S) (S) AR 0000 a 0027

D M (S) (S) DM 0000 a 6655

D M £ (S) DM (indirecto) 0000 a 6655

C O N (S) Constante 0000 a 9999

E M (S) (S) EM 0000 a 6143

E M £ (S) EM (indirecto) 0000 a 6143

(S): Espacio

Nota El nombre de la instrucción especificada en ”Nombre” debe ser de cuatro carac-teres. Rellenar los huecos con espacios para completar cuatro caracteres.

Comandos Host Link Sección 10-3

Page 482: C200HALPHA Manual Programacion

478

Limitaciones El comando sólo es válido cuando la selección de UM es sólo diagrama de relés.El comando no se puede ejecutar si el área de UM está protegida contra escritu-ra.No se pueden especificar de SR 253 a SR 255.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK ---

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 04 (excedida dirección) si la dirección de progra-ma es superior a la dirección más alta de programa pero menor de 65,536(32,767 en el C200HS).Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.Se devolverá un código de fin 15 (error de datos de número de entrada) si ladirección de programa no está especificada en BCD o los parámetros operan-do/SV son incorrectos.Se devolverá un código de fin 16 (comando no soportado) si la instrucción espe-cificada no existe en el programa.

Cód. defin

Contenidos

00 Finalización normal

04 Dirección demasiado alta

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

16 Comando no soportado

18 Error de longitud de trama

23 Memoria de usuario protegida

10-3-20 CAMBIAR SV 1 ---- W#Busca en el programa la primera instrucción TIM, TIMH(015), CNT, CNTR(012)o TTIM(087) con el número de TC especificado y cambia el SV a uno nuevoespecificado como una constante en el segundo canal de la instrucción.

Formato de comando

@ W # OP1 OP2 OP3 OP4x 100x 101 x 103 x 102 x 100x 101 !*x 103 x 102 x 100x 101

No. nodo Cabecera Nombre Temporizador/conta-dor (0000 a 0511)

SV (0000 a 9999) Termina-ción

FCS

Formato de respuesta

@ W # x 160x 100x 101 x 161 !*

No. nodo Cabecera Cód. defin

Termina-ción

FCS

Parámetros Nombre, número de TC (Comando)Especificar con 4 caracteres la instrucción para cambiar el SV en “Nombre” . En

Comandos Host Link Sección 10-3

Page 483: C200HALPHA Manual Programacion

479

“Número de TC,” indicar el número de temporizador/contador utilizado para lainstrucción.

Nombre de instrucción Clasificación Rango denúmero de

OP1 OP2 OP3 OP4número de

TCT I M (S) TEMPORIZADOR 0000 a 0511

T I M H TEMPORIZADOR DEALTA VELOCIDAD

C N T (S) CONTADORC N T R CONTADOR REVERSIBLET T I M TEMPORIZADOR TOTALI-

ZADOR

(S): Espacio

Limitaciones El comando no se puede ejecutar a no ser que el SV sea BCD de 0000 a 9999.

El comando no se puede ejecutar si el área de UM está protegida contra escritu-ra.

Si la misma instrucción se utiliza más de una vez en un programa, se cambiaráel SV de la primera.

Selecciones del PLC

Modo del PLC Área de UMRUN MONITOR PROGRAM Protección contra

escrituraProtección contra

lectura

--- OK OK --- OK

Condiciones de ejecución

Comandos RespuestasSencillo Múltiple Sencillo Múltiple

OK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Se devolverá un código de fin 15 (error de datos de número de entrada) si el SVno está en BCD o es incorrecto el nemónico/número de TC.

Se devolverá un código de fin 16 (comando no soportado) si la instrucción espe-cificada no existe en el programa.

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

13 Error de FCS14 Error de formato

15 Error de dato de número de entrada

16 Comando no soportado

18 Error de longitud de trama

23 Memoria de usuario protegida

10-3-21 CAMBIAR SV 2 ---- W$

Cambia los contenidos del segundo canal de TIM, TIMH(015), CNT,CNTR(012), o TTIM(087) en la dirección de programa especificada. Esta opera-ción sólo se puede realizar con un programa menor de 10 K.

Comandos Host Link Sección 10-3

Page 484: C200HALPHA Manual Programacion

480

Formato de comando

OP4OP3OP2OP1@ W $ x 100x 100x 101 x 103 x 102 x 101 x 100x 103 x 102 x 101

OP4OP3OP2OP1 x 100x 103 x 102 x 101 * !

No. nodo Dirección deprograma

Nombre Temporizador/conta-dor (0000 a 0511)

Cabecera

Operando SV Termina-ción

FCS

Formato de respuesta

@ W $ x 160x 100x 101 x 161 * !

No. nodo Cabecera Termina-ción

FCSCód. defin

Parámetros Nombre, número de TC (Comando)Especificar con 4 caracteres la instrucción para cambiar el SV en “Nombre” . En“Número de TC,” indicar el número de temporizador/contador utilizado para lainstrucción.

Nombre de instrucción Clasificación Rango denúmero de

OP1 OP2 OP3 OP4número de

TCT I M (S) TEMPORIZADOR 0000 a 0511

T I M H TEMPORIZADOR DEALTA VELOCIDAD

C N T (S) CONTADORC N T R CONTADOR REVERSIBLET T I M TEMPORIZADOR TOTALI-

ZADOR

(S): Espacio

Operando, SV (Respuesta)El nombre que indica el tipo de SV se devuelve en “Operando” y la dirección delcanal donde está almacenado el SV o la constante SV se devuelve en “SV”.

Operando Clasificación Constante odirección de

OP1 OP2 OP3 OP4dirección de

canalC I O (S) IR o SR 0000 a 0511

L R (S) (S) LR 0000 a 0063

H R (S) (S) HR 0000 a 0099

A R (S) (S) AR 0000 a 0027

D M (S) (S) DM 0000 a 6655

D M £ (S) DM (indirecto) 0000 a 6655

C O N (S) Constante 0000 a 9999

E M (S) (S) EM 0000 a 6143

E M £ (S) EM (indirecto) 0000 a 6143

(S): Espacio

Limitaciones El comando sólo es válido cuando la selección de UM es sólo diagrama de relés.

No se puede especificar de SR 253 a SR 255.

El comando no se puede ejecutar si el área de UM está protegida contra escritu-ra.

Comandos Host Link Sección 10-3

Page 485: C200HALPHA Manual Programacion

481

Selecciones del PLC

Modo del PLC Área de UMRUN MONITOR PROGRAM Protección contra

escrituraProtección contra

lectura

--- OK OK --- OK

Condiciones de ejecución

Comandos RespuestasSencillo Múltiple Sencillo Múltiple

OK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Se devolverá un código de fin 15 (error de datos de número de entrada) si ladirección de programa no está especificada en BCD, la dirección de programaexcede la dirección máxima en el programa, el nemónico/número de TC es in-correcto o el SV es incorrecto.

Se devolverá un código de fin 16 (comando no soportado) si la instrucción espe-cificada no existe en el programa.

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

04 Dirección demasiado alta

13 Error de FCS

14 Error de formato15 Error de dato de número de entrada

16 Comando no soportado

18 Error de longitud de trama23 Memoria de usuario protegida

10-3-22 CAMBIAR SV 3 ---- W%Cambia los contenidos del segundo canal de la TIM, TIMH(015), CNT,CNTR(012) o TTIM(087) en la dirección especificada del programa de usuario.

Formato de comando

@ W %

OP4OP3OP2OP1

x 102x 100x 101 x 105 x 104 x 103

x 100x 103 x 102 x 101

x 101 x 100 OP4OP3OP2OP1 x 102x 103 x 101 x 100

* !

No. nodo Dirección de programa

Debe ser“0”

Nombre Temporizador/con-tador (0000 a 0511)

Termina-ción

FCS

Cabecera

Operando SV

Formato de respuesta

@ W % x 160x 100x 101 x 161 * !

No. nodo Cabecera Termina-ción

FCSCód. defin

Comandos Host Link Sección 10-3

Page 486: C200HALPHA Manual Programacion

482

Parámetros Nombre, número de TC (Comando)Especificar con 4 caracteres la instrucción para cambiar el SV en “Nombre” . En“Número de TC,” indicar el número de temporizador/contador utilizado para lainstrucción.

Nombre de instrucción Clasificación Rango denúmero de

OP1 OP2 OP3 OP4número de

TCT I M (S) TEMPORIZADOR 0000 a 0511

T I M H TEMPORIZADOR DEALTA VELOCIDAD

C N T (S) CONTADORC N T R CONTADOR REVERSIBLET T I M TEMPORIZADOR TOTALI-

ZADOR

(S): EspacioOperando, Nuevo SV (Respuesta)El nombre que indica el tipo de SV se devuelve en “Operando” y la dirección delcanal donde está almacenado el SV o la constante SV se devuelve en “SV”.

Operando Clasificación Constante odirección de

OP1 OP2 OP3 OP4dirección de

canalC I O (S) IR o SR 0000 a 0511

L R (S) (S) LR 0000 a 0063

H R (S) (S) HR 0000 a 0099

A R (S) (S) AR 0000 a 0027

D M (S) (S) DM 0000 a 6655

D M £ (S) DM (indirecto) 0000 a 6655

C O N (S) Constante 0000 a 9999

E M (S) (S) EM 0000 a 6143

E M £ (S) EM (indirecto) 0000 a 6143

(S): Espacio

Limitaciones El comando sólo es válido cuando la selección de UM es sólo diagrama de relés.No se puede especificar de SR 253 a SR 255.El comando no se puede ejecutar si el área de UM está protegida contra escritu-ra.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK --- OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.Se devolverá un código de fin 15 (error de datos de número de entrada) si ladirección de programa no está especificada en BCD, la dirección de programaexcede la dirección máxima en el programa, el nemónico/número de TC es in-correcto o el SV es incorrecto.Se devolverá un código de fin 16 (comando no soportado) si la instrucción espe-cificada no existe en el programa.

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

Comandos Host Link Sección 10-3

Page 487: C200HALPHA Manual Programacion

483

Cód. defin

Contenidos

04 Dirección demasiado alta

13 Error de FCS

14 Error de formato

15 Error de dato de número de entrada

16 Comando no soportado

18 Error de longitud de trama

23 Memoria de usuario protegida

10-3-23 LEER ESTADO ---- MSLee las condiciones de operación del PLC.

Formato de comando

@ M Sx 100x 101 * !

No. nodo Cabecera Termina-ción

FCS

Formato de respuesta

@ M S x 162x 100x 101 x 161 x 160 x 163 x 160x 161 * !

No. nodo Cabecera Dato de estadoCód. defin

Termina-ción

FCSMensaje

16 caracteres

Parámetros Datos de estado, Mensaje (Respuesta)“Datos de estado” consta de cuatro dígitos hexadecimales (dos bytes). El bytede la izquierda indica el modo de operación de la CPU y el de la derecha eltamaño del área de programa.

15 14 13 12 11 10 9 8

0 0

9 8

0 0

1 0

1 1

x 163 x 162

Esta área esdiferente de la deESCRIBIRESTADO.

Bit

Bit

1: Generado FALS

1: Generado error fatal

Modo de Opera-ción

Modo PROGRAM

Modo RUN

Modo MONITOR

1: Espera alimentaciónE/S remotas

1: Set/Reset forzado efectivos

7 6 5 4 3 2 1 0

1 0 0 0

x 161 x 160

6 5

0 0

4

0

Bit

Bit

Ninguno

Área de pro-grama

0 1 0 8 Kbytes

1 0 0 16 Kbytes

1 0 1 24 Kbytes

1 1 0 32 Kbytes

Habilitar escribir área de programa0: Inhibido (Pin 1 interruptor DIP en ON)1: Habilitado (Pin 1 de interruptor DIP en OFF)

Comandos Host Link Sección 10-3

Page 488: C200HALPHA Manual Programacion

484

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

18 Error de longitud de trama

10-3-24 ESCRIBIR ESTADO ---- SCCambia el modo de operación del PLC.

Formato de comando

@ S Cx 100x 101 x 161 x 160 !*

No. nodo Cabecera Termina-ción

FCSDatos demodo

Formato de respuesta

@ S Cx 100x 101 x 161 x 160 * !

Termina-ción

FCSNo. nodo Cabecera Cód. defin

Parámetros Datos de modo (Comando)“Datos de modo” consta de dos dígitos hexadecimales (un byte). Especificar elmodo de operación del PLC con los dos bits de la izquierda. Seleccionar el restode bits a “0.”

Modo RUN

7 6 5 4 3 2 1 0

0 0 0 0 0 0

1 0

0 0

1 0

1 1

x 161

Modo PROGRAM

Modo MONITOR

Bit

Bit Modo de opera-ción

Esta área es dife-rente de la de LEERESTADO.

x 160

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Comandos Host Link Sección 10-3

Page 489: C200HALPHA Manual Programacion

485

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de datos de número de entrada

18 Error de longitud de trama

19 No ejecutable

10-3-25 LEER ERROR ---- MFLee y borra errores en el PLC. También comprueba si se han borrado los erroresanteriores.

Formato de comando

@ M Fx 100x 101 x 101 x 100 * !

No. nodo Cabecera Termina-ción

FCSBorrarerror

Formato de respuesta

@ M Fx 100x 101 x 161 x 160 x 163 x 162 x 161 x 160 x 163 x 162 x 161 x 160 !*

No. nodo Cabecera Cód. defin

Información deerror (1er canal)

Termina-ción

FCSInformación deerror (2do canal)

Parámetros Borrar error (Comando)Especificar 01 para borrar errores y 00 para no borrarlos (BCD). Los erroresfatales sólo se pueden borrar cuando el PLC está en modo PROGRAM.

Comandos Host Link Sección 10-3

Page 490: C200HALPHA Manual Programacion

486

Información de error (Respuesta)La información de error se da en dos canales.

15 14 13 12 11 10 9 8

0 0

x 163 x 162

7 6 5 4

x 161

3 2 1 0

x 160

ON: Error de batería (Código de error F7)ON: Error de unidad de E/S especialON: Error de sistema (FAL)ON: Error de memoria (Código de error F1)ON: Error de bus de E/S (Código de error C0)ON: Error de PC linkON: Error de transmisión de unidad Host LinkON: Error de ausencia de instrucción END (FALS)ON: Error del sistema (FALS)

Bit

1er canal

0 0 0: Bastidor de CPU0 0 1: Bastidor expansor de E/S 10 1 0: Bastidor expansor de E/S 20 1 1: Bastidor expansor de E/S 3

(Datos de bus de E/S)0 1: Grupo 2 (fallo de bus de datos)

15 14 13 12 11 10 9 8

0 0 0

x 163 x 162

7 6 5 4

x 161

3 2 1 0

x 160

FAL, No. FALS (B CD00 a 99)ON: Error de verificar E/S (Código de error F7)ON: Overrun de tiempo de ciclo (Código de error F8)ON: Overflow de unidad de E/S (Código de error E1)ON: Error de selección de E/S (Código de error E0)ON: Error de E/S remota (Códigos de error B0 a B3)

Bit

2do canal

Limitaciones Cuando se borran los errores (borrar error = 01), los errores se leen después deque se ha ejecutado la función borrar error.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Se devolverá un código de fin 15 (error de datos de número de entrada) si elparámetro borrar error no está seleccionado a 00 ó 01.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

Comandos Host Link Sección 10-3

Page 491: C200HALPHA Manual Programacion

487

Cód. defin

Contenidos

14 Error de formato

15 Error de datos de número de entrada

18 Error de longitud de trama

10-3-26 FORZAR A SET ---- KSFuerza a set un bit en el área IR, SR, LR, HR, AR o TC. Una vez forzado a set o areset un bit, mantendrá ese estado hasta que se transmita CANCELAR SET/RESET FORZADO (KC).

Formato de comando

@ K Sx 100x 101 x 103 x 102 x 101 x 100 x 101 x 100 !*OP1 OP2 OP3 OP4

No. nodo Cabecera Termina-ción

FCSNombre Dirección de canal Bit

Formato de respuesta

@ K Sx 100x 101 x 161 x 160 !*

No. nodo Cabecera Termina-ción

FCSCód. defin

Parámetros Nombre, dirección de canal, Bit (Comando)En “Nombre”, especificar el área (IR, SR, LR, HR, AR o TC) que se va a forzar aset. Especificar el nombre en cuatro caracteres. En “Dirección de canal, ”espe-cificar la dirección del canal y en “Bit” el número del bit que se ha de forzar a set.

Nombre Clasificación Rango de selección dedi ió d l

Bit

OP1 OP2 OP3 OP4

gdirección de canal

C I O (S) IR o SR 0000 a 0511 00 a 15 (decimal)

L R (S) (S) LR 0000 a 0063

( )

H R (S) (S) HR 0000 a 0099A R (S) (S) AR 0000 a 0027T I M (S) Indicador de finalización (temporiza-

dor)0000 a 0511 Siempre 00.

T I M H Indicador de finalización (temporizadorde alta velocidad)

C N T (S) Indicador de finalización (contador)C N T R Indicador de finalización (contador

reversible)T T I M Indicador de finalización (temporizador

totalizador)

T N (S) (S) Indicador de transición 0000 a 1023

(S): Espacio

Limitaciones No se pueden especificar los bits de SR 253 a SR 255.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Comandos Host Link Sección 10-3

Page 492: C200HALPHA Manual Programacion

488

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.Se devolverá un código de fin 15 (error de datos de número de entrada) si eloperando, dirección de canal o selección de parámetros de bit es incorrecto.

Cód. defin

Contenidos

00 Finalización normal01 No ejecutable en modo RUN

13 Error de FCS

14 Error de formato

15 Error de datos de número de entrada

18 Error de longitud de trama

10-3-27 FORZAR A RESET ---- KRFuerza a reset un bit en el área IR, SR, LR, HR, AR o TC. Una vez forzado a set oa reset un bit, mantendrá ese estado hasta que se transmita CANCELAR SET/RESET FORZADO (KC).

Formato de comando

@ K Rx 100x 101 x 103 x 102 x 101 x 100 x 101 x 100 !*OP1 OP2 OP3 OP4

No. nodo Cabecera Termina-ción

FCSNombre Direcciónde canal

Bit

Formato de respuesta

@ K Rx 100x 101 x 161 x 160 !*

No. nodo Cabecera Termina-ción

FCSCód. defin

Parámetros Nombre, dirección de canal, Bit (Comando)En “Nombre”, especificar el área (IR, SR, LR, HR, AR o TC) que se va a forzar aset. Especificar el nombre en cuatro caracteres. En “Dirección de canal, ”espe-cificar la dirección del canal y en “Bit” el número del bit que se ha de forzar a set.

Nombre Clasificación Rango de selección dedi ió d l

Bit

OP1 OP2 OP3 OP4

gdirección de canal

C I O (S) IR o SR 0000 a 0511 00 a 15 (decimal)

L R (S) (S) LR 0000 a 0063

( )

H R (S) (S) HR 0000 a 0099A R (S) (S) AR 0000 a 0027T I M (S) Indicador de finalización (temporiza-

dor)0000 a 0511 Siempre 00.

T I M H Indicador de finalización (temporizadorde alta velocidad)

C N T (S) Indicador de finalización (contador)C N T R Indicador de finalización (contador

reversible)T T I M Indicador de finalización (temporizador

totalizador)

T N (S) (S) Indicador de transición 0000 a 1023(S): Espacio

Limitaciones No se pueden especificar los bits de SR 253 a SR 255.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Comandos Host Link Sección 10-3

Page 493: C200HALPHA Manual Programacion

489

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Se devolverá un código de fin 15 (error de datos de número de entrada) si eloperando, dirección de canal o selección de parámetros de bit es incorrecto.

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

13 Error de FCS

14 Error de formato

15 Error de datos de número de entrada18 Error de longitud de trama

10-3-28 FORZAR A SET/RESET VARIOS BITS A LA VEZ---- FKFuerza a set, fuerza a reset, o cancela el estado de los bits en un canal de lasáreas IR, SR, LR, HR, AR o TC.

Formato de comando

*

@ F Kx 100x 101 x 103 x 102 x 101 x 100OP1 OP2 OP3 OP4

!

15 14 13 12 11 10 1 0

No. nodo Cabecera Nombre Direcciónde canal

Datos forzados set/reset/cancelar

Bit

x 160 x 160 x 160x 160 x 160 x 160 x 160x 160

Termina-ción

FCS

En “Nombre” especificar el área (es decir, IR, SR, LR, HR, AR o TC) que se ha deforzar a set o reset. Especificar el nombre en cuatro caracteres. En “Direcciónde canal”, especificar la dirección del canal que se ha de forzar a set o reset.

Para el área de TC, “Nombre” indica el nemónico de la instrucción de temporiza-dor o contador y el parámetro “Dirección de canal” indica el número de TC.

Nombre Clasificación Rango de selección dedi ió d l

Bit

OP1 OP2 OP3 OP4

gdirección de canal

C I O (S) IR o SR 0000 a 0511 00 a 15 (decimal)

L R (S) (S) LR 0000 a 0063

( )

H R (S) (S) HR 0000 a 0099A R (S) (S) AR 0000 a 0027T I M (S) Indicador de finalización (temporiza-

dor)0000 a 0511 Siempre 00.

T I M H Indicador de finalización (temporizadorde alta velocidad)

C N T (S) Indicador de finalización (contador)C N T R Indicador de finalización (contador

reversible)T T I M Indicador de finalización (temporizador

totalizador)

T N (S) (S) Indicador de transición 0000 a 1023

(S): Espacio

Comandos Host Link Sección 10-3

Page 494: C200HALPHA Manual Programacion

490

Para especificar el proceso deseado para cada bit del canal especificado se uti-liza un dígito hexadecimal separado. Los bits que no se fuerzan puede que cam-bien su estado en la siguiente ejecución del programa, pero los bits forzados aset o reset mantendrán el estado forzado hasta que se cancele. Si en ”Nombre”se especifica un temporizador o contador, el estado del indicador de finalizaciónse puede forzar a set o reset utilizando el bit 15, ignorándose el resto de bits. Lostemporizadores/contadores sólo se pueden forzar a set o reset.

Datos forzados set/reset(/can-celar

Operación

0000 Estado de bit no cambiado

0010 Reset a 0.0011 Set a 1.

0100 Forzado a reset

0101 Forzado a set

1000 Cancelar estados forzados a set/reset

Formato de respuesta

@ F Kx 100x 101 x 161 x 160 !*

No. nodo Cabecera Termina-ción

FCSCód. defin

Limitaciones No se pueden especificar los bits de SR 253 a SR 255.Sólo se pueden forzar a set/reset 15 temporizadores/contadores o 15 indica-dores de transmisión.Cuando se especifican indicadores de transición, no se chequean las selec-ciones de UM, es decir, mientras las direcciones de indicador de transición noexcedan de 1023, el comando se ejecutará normalmente incluso aunque el indi-cador especificado no exista realmente en el PLC remoto.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta. (La longitud del dato forzado set/reset/cancelar es de 16 bits).

Nota Con unidades Host Link, no se devolverá un código de error 14 (error de forma-to) si el dato es especificado para bit 15 para temporizador/contador o indicadorde finalización. (Los datos de forzado a set/reset/cancelar puede ser un bit delongitud o de 16 bits de longitud).

Se devolverá un código de fin 15 (error de datos de número de entrada) si eloperando, dirección de canal o selección de parámetros de bit es incorrecto.También se devolverá un código de fin 15 si se utiliza una especificación de dato0 ó 1 para un indicador de finalización de temporizador o contador o para unindicador de transición.Se devolverá un código de fin 15 (error de datos de número de entrada) si seespecifica [$C, $D] para el dato forzado cuando se selecciona a TC.

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

Comandos Host Link Sección 10-3

Page 495: C200HALPHA Manual Programacion

491

Cód. defin

Contenidos

13 Error de FCS

14 Error de formato

15 Error de datos de número de entrada

18 Error de longitud de trama

10-3-29 CANCELAR SET/RESET FORZADO ---- KCCancela todos los bits forzados a set y forzados a reset (efectuados con FOR-ZAR A SET, FORZAR A RESET y FORZAR A SET/RESET VARIOS BITS A LAVEZ). Se cancelará el estado de todos los bits forzados a set o a reset. No sepuede cancelar el estado forzado bit a bit con KC.

Formato de comando

@ K Cx 100x 101 !*

No. nodo Cabecera Termina-ción

FCS

Formato de respuesta

@ K Cx 100x 101 x 161 x 160 !*

No. nodo Cabecera Termina-ción

FCSCód. defin

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Cód. defin

Contenidos

00 Finalización normal13 Error de FCS

14 Error de formato

18 Error de longitud de trama

10-3-30 LEER MODELO DE PLC ---- MMLectura del tipo de PLC. Los códigos devueltos para este comando son difer-entes de los códigos de NT Link.

Formato de comando

@ M Mx 100x 101 !*

No. nodo Cabecera Termina-ción

FCS

Comandos Host Link Sección 10-3

Page 496: C200HALPHA Manual Programacion

492

Formato de respuesta

@ M Mx 100x 101 x 161 x 160 !*x 161 x 160

No. nodo Cabecera Termina-ción

FCSCód. defin

Código demodelo

Parámetros Código de modeloEn “Código de modelo” se indica en dos dígitos hexadecimales el modelo dePLC.

Código de modelo Modelo

01 C250

02 C500

03 C120

0E C200010 C1000H

11 C2000H/CQM1

12 C20H/C28H/C40H/C200H/C200HS/C200HALPHA

20 CV500

21 CV1000

22 CV2000

40 CVM1-CPU01-E

41 CVM1-CPU11-E

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

18 Error de longitud de trama

10-3-31 PRUEBA---- TSDevuelve, sin cambios, un bloque de datos transmitido por el ordenador.

Formato de comando Especificar un carácter distinto de retorno de carro (CHR$(13)).

@ T Sx 100x 101 * !

No. nodo Cabecera Caracteres

122 caracteres máx.

Termina-ción

FCS

Comandos Host Link Sección 10-3

Page 497: C200HALPHA Manual Programacion

493

Formato de respuesta Si la prueba es correcta se devolverán los mismos caracteres especificados enel comando.

@ T Sx 100x 101 * !

No. nodo Cabecera Caracteres

122 caracteres máx.

Termina-ción

FCS

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Cód. defin

Contenidos

13 Error de FCS

14 Error de formato

18 Error de longitud de trama

10-3-32 LEER PROGRAMA ---- RPLee los contenidos del área de programa del PLC en lenguaje máquina (códigoobjeto). Los contenidos se leen como un bloque, desde el principio al final.

Formato de comando

@ R Px 100x 101 !*

No. nodo Cabecera Termina-ción

FCS

Formato de respuesta

@ R Px 100x 101 x 161 x 160 !*x 161 x 160

No. nodo Cabecera Cód. defin

1 byte

Programa (para todo el áreaUM)

Termina-ción

FCS

Limitaciones El comando es válido sólo cuando la selección de UM es sólo diagrama de relés.El comando no se puede ejecutar si el área de UM está protegida contra escritu-ra.Los datos se leen desde el principio del área de diagrama de relés hasta el límitemáximo del área de programa. (Por ejemplo, de $A06C0 a $A7FBF cuando eltamaño de UM es 16K palabras y nada del área de UM está asignada a DM deexpansión o comentarios de E/S). La dirección de inicio de lectura y la longitudde la respuesta depende de las selecciones de área de UM (tales como canti-dad de memoria asignada a DM de expansión).La primera trama de respuesta puede contener hasta 30 canales de datos deprograma. La segunda y posteriores tramas pueden contener hasta 31 canalescada una.

Comandos Host Link Sección 10-3

Page 498: C200HALPHA Manual Programacion

494

Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para este comando. Si se envían otros comandos, serán tratados comodelimitadores.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK ---

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

18 Error de longitud de trama23 Memoria de usuario protegida

A3 Abortada debido a error de FCS en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-33 ESCRIBIR PROGRAMA ---- WPEscribe en el área de programa del PLC en lenguaje máquina (código objeto) elprograma transmitido desde el ordenador. Los contenidos se escriben como unbloque, desde el principio.

Formato de comando

@ W Px 100x 101 x 161 x 160 !*

No. nodo Cabecera 1 bytePrograma (Hasta capacidadmáxima de la memoria)

Termina-ción

FCS

Formato de respuesta

@ W Px 100x 101 x 161 x 160 !*

No. nodo Cabecera Cód. defin

Termina-ción

FCS

Limitaciones El comando es válido sólo cuando la selección de UM es sólo diagrama de relés.El comando no se puede ejecutar si el área de UM está protegida contra escritu-ra.Los datos se escriben desde el principio del área de diagrama de relés hasta ellímite máximo del área de programa. (Por ejemplo, de $A06C0 a $A7FBF cuan-do el tamaño de UM es 16K palabras y nada del área de UM está asignada a DMde expansión o comentarios de E/S). La dirección de inicio de escritura y el ta-maño máximo del programa depende de las selecciones de área de UM (talescomo cantidad de memoria asignada a DM de expansión).No se producirá un error si el comando intenta escribir datos de programa exce-diendo el tamaño máximo del área de programa.Los datos de programa se pueden dividir en varias tramas.

Comandos Host Link Sección 10-3

Page 499: C200HALPHA Manual Programacion

495

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- --- OK --- OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK OK OK ---

Códigos de fin Se devolverá un código de fin de 14 (error de formato) si la longitud del comandoes incorrecta (el tamaño total del programa es un número impar de bytes) o laprimera trama contiene datos que no son de programa.Se devolverá un código de fin 15 (error de datos de número de entrada) si losdatos a escribir especificados no están en hexadecimal.

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

02 No ejecutable en modo MONITOR

13 Error de FCS

14 Error de formato15 Error de datos de número de entrada

18 Error de longitud de trama

19 No ejecutable

23 Memoria de usuario protegida

A3 Abortada debido a error de FCS en transmitir trama

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de entrada en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-34 GENERAR TABLA DE E/S ---- MICorrige la tabla de E/S registrada para que coincida con la tabla de E/S real.

Formato de comando

@ M Ix 100x 101 r*

No. nodo Cabecera Termina-ción

FCS

Formato de respuesta

@ M Ix 100x 101 x 161 x 160 r*

No. nodo Cabecera Cód. defin

Termina-ción

FCS

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

--- --- OK --- OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK ---

Comandos Host Link Sección 10-3

Page 500: C200HALPHA Manual Programacion

496

Códigos de fin Se devolverá un código de fin de 14 (error de formato) si la longitud del comandoes incorrecta.

Cód. defin

Contenidos

00 Finalización normal

01 No ejecutable en modo RUN

02 No ejecutable en modo MONITOR

03 UM protegida contra escritura

13 Error de FCS14 Error de formato

18 Error de longitud de trama

20 No se pudo crear tabla de E/S

El código de error de protegida contra escritura para este comando es diferentedel de otros comandos.

10-3-35 COMANDO COMPUESTO ---- QQMR

Registra en el PLC todos los bits, canales y temporizadores/contadores a leer ylee el estado de todos ellos como un lote. La información registrada se retieneen el PLC hasta que se escriba encima con el COMANDO COMPUESTO o sedesconecte la alimentación del PLC.

Formato de comando

@ Q Qx 100x 101 x 103 x 102 x 101 x 100OP1 OP2 OP3 OP4M OP1 OP2

x 103 x 102 x 101 x 100OP1 OP2 OP3 OP4 OP1 OP2 !*

No. nodo Cabecera

Termina-ción

FCS

Sub--cabecera

Área a leer Direcciones decanal a leer

Formatode datos

Delimitador

Información de una lectura

Información de lectura total (128 máx.)

Información de una lectura

Información de lectura total (128 máx.)

Área a leer Direcciones de canala leer

Formatode datos

Delimita-dor

R ,

,

Formato de respuesta

@ Q Qx 100x 101 x 161 x 160M R r*

No. nodo Cabecera Sub-cabecera

Cód. defin

Termina-ción

FCS

Parámetros Área a leer (Comando)Especifica en cuatro caracteres el área a leer. En la siguiente tabla se dan loscódigos que se pueden especificar.

Comandos Host Link Sección 10-3

Page 501: C200HALPHA Manual Programacion

497

Direcciones de canal a leer, formatos de datos (Comando)Dependiendo del área y del tipo de datos a leer, en la siguiente tabla se indica lainformación a leer. Los “datos a leer” se especifican en cuatro dígitos BCD y elformato de los datos en dos dígitos BCD.

Área de datos/Instruc-ción

Operando Constante odirección deción

OP1 OP2 OP3 OP4dirección de

canalIR o SR C I O (S) 0000 a 0511

LR L R (S) (S) 0000 a 0063

HR H R (S) (S) 0000 a 0099AR A R (S) (S) 0000 a 0027

TEMPORIZADOR T I M (S) 0000 a 0511

TEMPORIZADOR DEALTA VELOCIDAD

T I M H

CONTADOR C N T (S)CONTADOR RE-VERSIBLE

C N T R

TEMPORIZADOR TOTAL-IZADOR

T T I M

DM D M (S) (S) 0000 a 6655

EM (banco actual) E M (S) (S) 0000 a 6143

EM (banco 0) E M 0 0 0000 a 6143

EM (banco 1) E M 0 1 0000 a 6143EM (banco 2) E M 0 2 0000 a 6143

(S): Espacio

Delimitador de datos (Comando)La información a leer se especifica concepto por concepto separados por undelimitador (,). El número máximo de conceptos a leer que se pueden especifi-car es 128. (Sin embargo, cuando se especifica el PV de un temporizador/con-tador, también se devuelve el indicador de finalización y por lo tanto se debecontar como dos conceptos).

Limitaciones Los datos registrados se chequearán desde el principio y se registrarán hastacualquier error. Por ejemplo, si se ejecuta un comando para registrar 129 items,se producirá un error de longitud de trama (código de fin 18), pero se registraránlos primeros 128 items.

De DM 6656 a DM 6999 no existen, pero no se producirá un error si se intentaregistrar estos canales.

Bits y canales se pueden especificar en cualquier orden y serán registrados enel orden que se haya especificado.

Los datos se pueden dividir en varias tramas.

Selecciones del PLC

Modo del PLC Área de UMRUN MONITOR PROGRAM Protección contra

escrituraProtección contra

lectura

OK OK OK OK OK

Condiciones de ejecución

Comandos RespuestasSencillo Múltiple Sencillo Múltiple

OK OK OK ---

Códigos de fin Se devolverá un código de fin de 14 (error de formato) si la longitud del comandoes incorrecta o si se omite el separador de datos “,” entre dos items.

Comandos Host Link Sección 10-3

Page 502: C200HALPHA Manual Programacion

498

Se devolverá un cópdigo de fin 15 (error de datos de número de entrada) si esincorrecta la selección de “Leer área”, “Leer dirección de canal” o “Formato dedatos”.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

15 Error de datos de número de entrada

18 Error de longitud de trama

19 No ejecutable

A3 Abortada debido a error de FCS en transmitir datos

A4 Abortada debido a error de formato en transmitir datos

A5 Abortada debido a error de datos de entrada en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-36 LEER DATOS DE COMANDO COMPUESTO ---- QQIRLos estados de bit, canal y temporizador/contador se leen como un lote deacuerdo con la información a leer registrada con QQMR.

Formato de comando

@ Q Qx 100x 101 I R !*

No. nodo Cabecera Sub-cabecera

Termina-ción

FCS

Formato de respuesta

,

@ Q Qx 100x 101 x 161 x 160I R

x 163 x 162 x 161 x 160 !*

ON/OFF x 103 x 102 x 101 x 100

ON/OFF

No. nodo Cabecera Sub-cabecera

Cód. defin

Temporizador/contadorSi se especifica PV, tam-bién devuelve el estadodel indicador de finaliza-ción.

Delimitador

Datos de bitON/OFF

Datos de canalIR, SR, LR, HR,AR, DM

Termina-ción

FCS

, ,

,

Parámetros Datos leídos (Respuesta)Los datos leídos se devuelven de acuerdo con su formato y el orden en que seregistró la información de lectura utilizando QQMR. Si se especificó “Indicadorde finalización” , se devuelve el estado del bit (ON u OFF). Si se especificó“Canal”, se devuelven los datos del canal. Si se especificó “PV” para temporiza-dores/contadores, se devuelve el PV y el indicador de finalización.

Delimitadores (Respuesta)El delimitador (, ) se devuelve entre secciones leídas.

Limitaciones Los datos se leen en el mismo orden en que fueron registrados con QQMR.

Se devolverá una respuesta “0000” para canales inexistentes tales como de DM6656 a DM 6999, DM de expansión no asignada o bancos de EM inexistentes.

Los comandos INICIALIZAR y ABORTAR se pueden enviar en lugar del delimi-tador para múltiples respuestas para este comando. Si se envían otros coman-dos, serán tratados como delimitadores.

Comandos Host Link Sección 10-3

Page 503: C200HALPHA Manual Programacion

499

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- OK OK

Códigos de fin Se devolverá un código de fin 14 (error de formato) si la longitud del comando esincorrecta.Se devolverá un código de fin 19 (no ejecutable) si no hay datos registrados.

Cód. defin

Contenidos

00 Finalización normal

13 Error de FCS

14 Error de formato

18 Error de longitud de trama

19 No ejecutable

A3 Abortada debido a error de FCS en transmitir datos

A8 Abortada debido a error de longitud de trama en transmitir datos

10-3-37 ABORTAR ---- XZAborta la operación de Host Link que se esté procesando en ese momento yluego habilita la recepción del siguiente comando. El comando ABORTAR norecibe respuesta.

Formato de comando

@ X Zx 100x 101 !*

No. nodo Cabecera Termina-ción

FCS

Limitaciones Con este comando no se pueden cancelar varias respuestas para un comando.Este comando es válido incluso sin código FCS y terminación.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- --- ---

Códigos de fin No hay códigos de fin con este comando.

10-3-38 INICIALIZAR ---- **Inicializa el procedimiento de control de transmisión de todos los PLCs conecta-dos al ordenador. El comando INICIALIZAR no utiliza números de nodo o FCS yno recibe respuesta.

Formato de comando

!@ **

Comandos Host Link Sección 10-3

Page 504: C200HALPHA Manual Programacion

500

Limitaciones Con este comando se pueden cancelar varias respuestas para un comando.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo MúltipleOK --- --- ---

Códigos de fin No hay códigos de fin con este comando.

10-3-39 RESPUESTA TXD ---- EXEste es el formato de respuesta utilizado cuando se ejecuta en modo Host Linkla instrucción TXD(236) del PLC. (TXD(236) convierte el dato especificado encódigo ASCII y lo transmite al ordenador con este formato).

Formato de respuesta

@ E Xx 100x 101 £ !

No. nodo Cabecera Caracteres (122 máx.)

Datos especificados en TXD(236)

Termina-ción

FCS

Limitaciones La trama puede contener hasta 122 caracteres. (TXD(236) no soporta múltiplestramas).No hay comando asociado con EX.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK --- OK OK

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo Múltiple--- --- OK ---

Códigos de fin No hay códigos de fin con este comando.

10-3-40 Comando indefinido ---- ICEsta respuesta se devuelve si no se puede decodificar el código de cabecera deun comando. Comprobar el código de cabecera.

Formato de comando

@ I Cx 100x 101 !*

No. nodo Cabecera Termina-ción

FCS

Limitaciones Se devolverá esta respuesta de error si hay menos de 6 bytes de datos entre uncarácter “@” y la terminación de un comando, si se utiliza un código de cabeceraincorrecto o una trama está corrupta.No hay comando asociado con IC.

Selecciones del PLCModo del PLC Área de UM

RUN MONITOR PROGRAM Protección contraescritura

Protección contralectura

OK OK OK OK OK

Comandos Host Link Sección 10-3

Page 505: C200HALPHA Manual Programacion

501

Condiciones de ejecuciónComandos Respuestas

Sencillo Múltiple Sencillo Múltiple--- --- OK ---

Códigos de fin No hay códigos de fin con este comando.

Comandos Host Link Sección 10-3

Page 506: C200HALPHA Manual Programacion

503

Apéndice AModelos disponibles

Bastidor de CPUNombre Especificaciones Referencia

CPUs (Todos los modelos dispo-d f ió d l j h

UM EM Puntos E/S RS-232C ------( pnen de función de reloj y huecospara comunicaciones excepto la

3.2K palabras Ninguna 640 No C200HE-CPU11-ZEpara comunicaciones excepto laCPU11-ZE.) 7.2K palabras

g

880 No C200HE-CPU32-ZECPU11-ZE.)Sí C200HE-CPU42-ZE

15.2K palabras 6K palabras(1 banco)

880 No C200HG-CPU33-ZE

Sí C200HG-CPU43-ZE1,184 No C200HG-CPU53-ZE

Sí C200HG-CPU63-ZE31.2K palabras 18K palabras

(3 banco)880 No C200HX-CPU34-ZE

Sí C200HX-CPU44-ZE1,184 No C200HX-CPU54-ZE

Sí C200HX-CPU64-ZE63.2K palabras 48K palabras

(8 banco)1,184 Sí C200HX-CPU65-ZE

96K palabras(16 banco)

Sí C200HX-CPU85-ZE

Unidades de fuente de alimenta-ió

100 a 120/200 a 240 Vc.a. C200HW-PA204ción 100 a 120/200 a 240 Vc.a. (con terminales de salida

24Vc.c.)C200HW-PA204S

24 Vc.c. C200HW-PD024Soportes de E/S de CPU 3 huecos C200HW-BC031p /

5 huecos C200HW-BC0518 huecos C200HW-BC08110 huecos C200HW-BC101

Tarjetas de comunicaciones Puerto de comunicaciones para unidades SYSMAC LINK ySYSMAC NET Link

C200HW-COM01

Puerto RS-232C C200HW-COM02--V1

Puerto RS-422/485 C200HW-COM03--V1

Puerto de comunicaciones para la unidad SYSMAC LINK yunidad SYSMAC NET Link y función macro de protocolo

C200HW-COM04-EV1

Dos puertos RS-232C y función macro de protocolo C200HW-COM05-EV1

Puerto RS-422/485, un puerto RS-232C y función macro deprotocolo

C200HW-COM06-EV1

Cassettes de memoria EEPROM 4K palabras C200HW-ME04K8K palabras C200HW-ME08K16K palabras C200HW-ME16K

(ver nota)

32K palabras C200HW-ME32KEPROM 16K palabras/32K palabras C200HS-MP16K

Equivalente a 27256, 150 ns, 12.5 V ROM-JD-BEquivalente a 27512, 150 ns, 12.5 V ROM-KD-B

Nota: El cassette de memoria EEPROM también se puede utilizar con el C200HS-ME16K.

Page 507: C200HALPHA Manual Programacion

Modelos disponibles Apéndice A

504

Nota: Utilizar las tarjetas de comunicaciones V1 para las CPUs C200HX/HG/HE-CPUjj-ZE. La C200HW-COM01 también se puede utilizar.

Bastidores expansores de E/SNombre Especificaciones Referencia

Unidades de fuente deli ió

100 a 120/200 a 240 Vc.a. C200HW-PA204alimentación 100 a 120/200 a 240 Vc.a. (con terminales de salida de

24-Vc.c.)C200HW-PA204S

24 Vc.c. C200HW-PD024Soportes de expansión de E/S 3 huecos C200HW-BI031p p /

5 huecos C200HW-BI0518 huecos C200HW-BI08110 huecos C200HW-BI101

Cables de conexión de E/S 30 cm La longitud total de los cables de conexión deE/S utilizados en una red debe ser de 12 m

C200H-CN311

70 cmE/S utilizados en una red debe ser de 12 mmáximo. C200H-CN711

200 cm C200H-CN221500 cm C200H-CN5211,000 cm C200H-CN131

Bastidores esclavosNombre Especificaciones Referencia

Bastidoresl

Unidades esclavasd E/S

100 a 120/200 a 240 Vc.a. (seleccionable) APF/PCF C200H-RT001-Pesclavos de E/S remotas 24 Vc.c.

/C200H-RT002-P

100 a 120/200 a 240 Vc.a. (seleccionable) Cable C200H-RT20124 Vc.c. C200H-RT202

Soportes 3 huecos C200H-BC101-V2

5 huecos C200H-BC081-V2

8 huecos C200H-BC051-V2

10 huecos C200H-BC101-V2

Módulos de E/S Entrada Especificar 12 ó 24 Vc.c.. G71-IC16Salida G71-OD16

Terminales/S

Entrada de c.a. Especificar 100 ó 200 Vc.a.. G7TC-IA16de E/S Entrada de c.c. Especificar 12 ó 24 Vc.c.. G7TC-ID16

Salida Especificar 12 ó 24 Vc.c.. G7TC-OC16

Unidades de E/S estándar de C200HNombre Especificaciones Referencia

Unidades Unidades de entrada 8 pts 100 a 120 Vc.a. C200H-IA121

de entrada de c.a. 16 pts 100 a 120 Vc.a. C200H-IA122/IA122V

8 pts 200 a 240 Vc.a. C200H-IA221

16 pts 200 a 240 Vc.a. C200H-IA222/IA222V

Unidades de entrada 8 pts 12 a 24 Vc.c. C200H-ID211

de c.c. 16 pts 24 Vc.c. C200H-ID212

Unidades de entrada 8 pts 12 a 24 Vc.a./c.c. C200H-IM211

de c.a./c.c. 16 pts 24 Vc.a./c.c. C200H-IM212

Unidad de entradade interrupción1

8 pts 12 a 24 Vc.c. C200HS-INT01

Unidades Unidades de salida 8 pts 2 A, 250 Vc.a./24 Vc.c. (Para cargas resistivas) C200H-OC221

de salida de relé 12 pts 2 A, 250 Vc.a./24 Vc.c. (Para cargas resistivas) C200H-OC22216 pts 2 A, 250 Vc.a./24 Vc.a. (Para cargas resistivas) C200H-OC2252, 3

Page 508: C200HALPHA Manual Programacion

Apéndice AModelos disponibles

505

Nombre ReferenciaEspecificaciones

Unidadesde salida

Unidades de salidarelé

5 pts 2 A, 250 Vc.a./24 Vc.c. (Para cargas resistivas)Comunes independientes

C200H-OC223

8 pts 2 A, 250 Vc.a./24 Vc.c. (Para cargas resistivas)Comunes independientes

C200H-OC224

Unidades de salida 8 pts 1 A, 120 Vc.a. C200H-OA121-E

triac 8 pts 1 A, 200 Vc.a. C200H-OA221

12 pts 0.3 A, 200 Vc.a. C200H-OA222Unidades de salida

i8 pts 1 A, 12 a 48 Vc.c. C200H-OD411

transistor 12 pts 0.3 A, 24 Vc.c. C200H-OD21116 pts 0.3 A, 24 Vc.c. C200H-OD2122

8 pts 2.1 A, 24 Vc.c. C200H-OD213

8 pts 0.8 A, 24 Vc.c.; (PNP); con protección contracortocircuitos de la carga

C200H-OD214

8 pts 0.3 A, 5 a 24 Vc.c.; (PNP) C200H-OD216

12 pts 0.3 A, 5 a 24 Vc.c.; (PNP) C200H-OD217

16 pts 1.0 A, 24 Vc.c.; (PNP); con protección contracortocircuito de la carga

C200H-OD21A

Unidad de temporizador analógico 4 tem-poriz.

0.1 a 1 s/1 a 10 s/10 a 60 s/1 min a 10 min(seleccionable)

C200H-TM001

Conector de poten-ciómetro

Conector c/cable (2 m) para 1 potenciómetro externo C4K-CN223

Unidades de interfaz B7A 15 ó 16pts deentrada

Conecta los módulos de transmisión B7A. C200H-B7AI1

16 ptsdesalida

C200H-B7AO1 (vernota)

Nota 1. Si la unidad de entrada de interrupción se monta en un bastidor expansor de E/S, no se puede utilizar lafunción de interrupción y dicha unidad se gestionará como una unidad de entrada normal de 8 puntos.Además las unidades de entrada de interrupción no se pueden utilizar en bastidores esclavos. Estasunidades necesitan que se utilice un soporte versión 2 (referencias con sufijo “-V2”) en el bastidor deCPU.

2. Las unidades C200H-OD212, C200H-OC225 y C200H--B7AO1 se deben montar en un bastidorC200H-BC031-V1/V2, C200H-BC051-V1/V2, C200H-BC081-V1/V2, o C200H-BC101-V1/V2.

3. La C200H-OC225 puede sobrecalentarse si se ponen a ON más de 8 puntos simultáneamente.

Unidades de E/S de grupo 2Nombre Especificaciones Referencia

Unidades de entrada dec c

64 pts 12 Vc.c. C200H-ID111c.c. 32 pts 24 Vc.c. C200H-ID216

64 pts C200H-ID217

Unidades de salidatransistor

32 pts de 16 mA para 4.5 V a 100 mA para C200H-OD218transistor 64 pts 26.4 V C200H-OD219

Unidades interfaz de B7A 32 pts de entrada Se conecta a módulos B7A. Retardod i ió á d d l

C200H-B7A1232 pts de salida de transmisión estándar o de alta

velocidadC200H-B7A02

16 pts entrada y 16 pts salidavelocidad.

C200H-B7A2132 pts entrada y 32 pts salida C200H-B7A22

Page 509: C200HALPHA Manual Programacion

Modelos disponibles Apéndice A

506

Unidades de E/S especialesNombre Especificaciones Referencia

Unidadesde E/S altadensidad(ver nota)

Unidades deentrada dec.c.

32 pts 5 Vc.c. (entradas TTL); con función de entrada de altavelocidad

C200H-ID501

32 pts 24 Vc.c.; con entradas de alta velocidad C200H-ID215Unidades desalidatransistor

32 pts 0.1 A, 24 Vc.c. (utilizable como unidad de salida de 128puntos dinámicos)

C200H-OD215

32 pts 35 mA, 5 Vc.c. (salidas TTL) (utilizable como unidad desalida de 128 puntos dinámicos)

C200H-OD501

Unidadesentradac.c./salidatransistor

16 entradas/16 salidas

Entradas 12-Vc.c.; con función de entrada de alta veloci-dadSalidas 0.1 A , 12-Vc.c. (utilizable como unidad deentrada de 128 puntos dinámicos)

C200H-MD115

16 entradas/16 salidas

Entradas 24-Vc.c.; con función de entrada de alta veloci-dadSalidas 0.1 A , 24-Vc.c. (utilizable como unidad deentrada de 128 puntos dinámicos

C200H-MD215

16 entradas/16 salidas

5 Vc.c. (entradas TTL); con función de entrada de altavelocidad 35 mA, 5 Vc.c. Salida (salidas TTL) (utilizablecomo unidad de entrada de 128 puntos dinámicos)

C200H-MD501

Unidadesde E/Sanalógicas

Unidades deentradaanalógica

4 a 20 mA, 1 a 5/0 a 10 V (seleccionable); 4 entradas; 12 bits C200H-AD001

4 a 20 mA, 1 a 5/0 a 10/--10 a 10 V (seleccionable); 8 entradas; 12 bitso BCD

C200H-AD002

4 a 20 mA, 1 a 5/0 a 10/--10 a 10 V (seleccionable); 8 entradas; 16 bitso BCD

C200H-AD003

Unidades delid

4 a 20 mA, 1 a 5/0 a 10 V (seleccionable); 2 salidas C200H-DA001salidaanalógica

4 a 20 mA, --10 a 10 V (seleccionable); 4 salidas C200H-DA002analógica

1 a 5/0 a 10 V/--10 a 10V (seleccionable); 8 salidas C200H-DA0034 a 20mA; 8 salidas C200H-DA004

Unidadesmixtas de E/Sanalógica

4 a 20 mA, 1 a 5/0 a 10/--10 a 10 V (seleccionable); 2 entradas; 16 bits4 a 20 mA, 1 a 5/0 a 10/--10 a 10 V (seleccionable); 2 salidas

C200H-MAD01

Unidades de sensor detemperatura

Termopar (K(CA) o J(IC)) (seleccionable); 4 entradas C200H-TS001

Termopar (K(CA) o L(Fe-CuNi)) (seleccionable); 4 entradas C200H-TS002Termorresistencia de platino (JPt) (seleccionable), normas DIN;4 entradas

C200H-TS101

Termorresistencia de platino (Pt) (seleccionable); 4 entradas C200H-TS102Unidades de control detemperatura

Termopar Salida transistor C200H-TC001

Salida de tensión C200H-TC002Salida de corriente C200H-TC003

Termorre-i i P

Salida transistor C200H-TC101sistencia Pt Salida de tensión C200H-TC102

Salida de corriente C200H-TC103Unidades de control detemperatura calor/frío

Termopar Salida transistor C200H-TV001

Salida de tensión C200H-TV002Salida de corriente C200H-TV003

Termorre-i i P

Salida transistor C200H-TV101sistencia Pt Salida de tensión C200H-TV102

Salida de corriente C200H-TV103Unidades de control PID Salida transistor;

entradas de 4 a 20 mA/1 a 5 V/0 a 5V/0 a 10 V (seleccionable)C200H-PID01

Page 510: C200HALPHA Manual Programacion

Apéndice AModelos disponibles

507

Nombre ReferenciaEspecificacionesUnidades de control PID Salida de tensión

entradas de 4 a 20 mA/1 a 5 V/0 a 5V/0 a 10 V (seleccionable)C200H-PID02

Salida de corrienteentradas de 4 a 20 mA/1 a 5 V/0 a 5V/0 a 10 V (seleccionable)

C200H-PID03

Unidades de control deposición

1 eje Salida de pulsos; velocidades: 1 a 100,000 pps C200H-NC111

1 eje Salida de pulsos; conectable directamente a driver deservomotor; compatible con driver de línea; velocidades:1 a 250,000 pps

C200H-NC112

2 ejes Salida de pulsos; 1 a 250,000 pps, 53 pts por eje C200H-NC211

Unidad Motion Control Lenguaje de programación G salidas analógicas 2 ejes C200H-MC221

MC Software IBM PC/AT o compatible CV500-ZN3AT1-ECable deconexión

3.3 m CQM1-CIF02

Teaching Box --- CVM1-PRS71Cable deconexión paraTeaching Box

2 m longitud CV500-CN224

Pack dememoria

--- CVM1-MP701

Unidadconversiónbloque determinales

Simplifica el cableado para conectores de E/S. XW2B-20J6-6

Cable deconexión paraunidadconversiónbloque determinales

XW2Z-100J-F1

Unidad posicionadora delevas

Detecta ángulos de rotación por medio de un resolver y genera salidasON y OFF en los ángulos especificados. Disponible un máximo de 48salidas de leva (16 salidas externas y 32 salidas internas).

C200H-CP114

Consola selección datos Utilizada para seleccionar y monitorizar datos de unidades de controlde temperatura, posicionadoras de levas, unidades de control PID yunidades de control de temperatura calor/frío.

C200H-DSC01

Cables deió

2 m C200H-CN225conexión 4 m C200H-CN425

Unidades de contador dealta velocidad

1 eje Entrada de pulsos; velocidad de contaje: 50 kcps;5 Vc.c./12 Vc.c./24 Vc.c.

C200H-CT001-V1

1 eje Entrada de pulsos; velocidad de contaje: 75 kcps;driver de línea RS-422

C200H-CT002

2 ejes Entrada de pulsos; velocidad de contaje: 75 kcps;driver de línea RS-422, 7 dígitos BCD

C200H-CT021

Unidad ASCII Incorpora RAM de 24K-byte y EEPROM de 24K-byte. C200H-ASC02Unidades de sensor ID Aplicación local, acoplamiento electromagnético C200H-IDS01-V1

Aplicación remota, transmisiones por microondas C200H-IDS21Cabezas delectura/escri-

Tipo electromagnético V600-H serieslectura/escri-tura Tipo de microondas V620-H series

Etiquetas (ver)

Tipo SRAM para V600-H. V600-DjjRjjq (nota) Tipo EEPROM para V600-H. V600-DjjPjj

Módulo de voz 60 mensajes máx.; longitud del mensaje: 32, 48 ó 64 s (seleccionable) C200H-OV001Cable deconexión

RS-232C C200H-CN224

Unidad de lógica fuzzy Hasta 8 entradas y 4 salidas. (E/S a y de canales de áreas de datosespecificados). Programable con Fuzzy Support Software.

C200H-FZ001

FuzzySupportSoftware

Disponible en disquetes de 3.5”. C500-SU981-E

Page 511: C200HALPHA Manual Programacion

Modelos disponibles Apéndice A

508

Nota Cuando se monte una unidad de E/S de alta densidad como una unidad de E/S especial en un bastidoresclavo, la mestra de E/S remotas debe ser la C200H--RM001--PV1 o la C200H--RM201.

Unidades de comunicacionesNombre Especificaciones Referencia

Unidad SYSMAC LINK(cable coaxial)

Se debe pedir por separado una unidadde conexión de bus.

Tabla Data link:918 palabras

C200HW-SLK23

Tabla Data link:2.966 palabras

C200HW-SLK24

Terminación Se necesita uno por cada nodo final del sistema C1000H-TER01Accesorio Suministrado con la unidad SYSMAC LINK. C200H-TL001Adaptador F Para conectar a red C1000H-CE001Tapa deadaptador F

Para conectar a red C1000H-COV01

Unidad SYSMAC LINK(cable de fibra óptica)

Conectar con cable H--PCF. Se debepedir por separado una unidad de

ió d b

Tabla Data link:918 palabras

C200HW-SLK13p p pconexión de bus. Tabla Data link:

2.966 palabrasC200HW-SLK14

Adaptador deFuente de A.

Es necesario cuando se suministra unaalimentación de backup

Para 1 ó 2Unidades

C200H-APS03

Cable dealimentación

Conecta el adaptador de fuente de A. y la unidadSYSMAC LINK.

Para 1 Unidad C200H-CN111

Para 2Unidades

C200H-CN211

Tarjeta de soporteSYSMAC LINK(coaxial)

Para conectar un ordenador AT como nodo en un sistemaSYSMAC LINK

3G8F5-SLK21-E

Unidad SYSMAC NETLink

Se debe pedir por separado una unidad de conexión de bus. C200HS-SNT32

Adaptador deF d A

Es necesario cuando se suministra unali ió d b k

Para 1 Unidad C200H-APS01pFuente de A. alimentación de backup Para 2

UnidadesC200H-APS02

Cable dealimentación

Conecta el adaptador defuente de A. y la unidadSYSMAC NET Li k

Incluido conC200H-APS01

Para 1 Unidad C200H-CN001y

SYSMAC NET Link Incluido conC200H-APS02

Para 2Unidades

C200H-CN002

Unidades de conexiónd b

Conecta la unidad SYSMAC LINK o SYSMACNET Li k j d i i

Para 1 Unidad C200HW-CE001de bus NET Link a tarjeta de comunicaciones

C200HW-COM01/COM04-EPara 2Unidades

C200HW-CE002

Unidades Host Link Montaje en bastidor C200H, C200HS,C200HE

APF/PCF C200H-LK101-PV1C200HE,C200HG, C200HX RS-422 C200H-LK202-V1

RS-232C C200H-LK201-V1Unidad PC Link Mononivel: 32 Unidades

Multinivel: 16 UnidadesRS-485 C200H-LK401

Unidades maestras deE/S

Hasta dos por PLC; conectable hasta 5 esclavosPLC

APF/PCF C200H-RM001-PV1E/S remotas

p ;por PLC Cable C200H-RM201

Unidades esclavas deE/S remotas

Ver Bastidores.

Hardware SYSMAC NET/SYSMAC LINKNombre Especificaciones Referencia

Tarjeta de soporte de red SYSMAC NET Para PC/AT S3200-NSB11-E

Tarjeta de soporte de red SYSMAC LINK Para PC/AT, conector de cable coaxial 3G8F5-SLK21-E

Page 512: C200HALPHA Manual Programacion

Apéndice AModelos disponibles

509

Adaptadores de enlaceNombre Especificaciones Referencia

Adaptadores deenlace

3 conectores RS-422 3G2A9-AL001enlace 3 conectores ópticos (APF/PCF) 3G2A9-AL002-PE

3 conectores ópticos (PCF) 3G2A9-AL002-E

1 conector para RS-232C; 2 para RS-422 3G2A9-AL003

1 conector APF/PCF, 1 RS-422, y 1 RS-232C 3G2A9-AL004-PE

1 conector PCF, 1 RS-422, y 1 RS-232C 3G2A9-AL004-E

1 conector APF/PCF y 1 AGF 3G2A9-AL005-PE

1 conector PCF y 1 AGF 3G2A9-AL005-E

1 conector APF/PCF; 2 AGF 3G2A9-AL006-PE

1 conector PCF; 2 AGF 3G2A9-AL006-E

Convertidor O/E; 1 conector RS-485, 1 conector APF/PCF B500-AL007-P

Utilizado para quitar online unidades SYSMAC NET Link del sistemaSYSMAC NET Link, SYSMAC NET adaptador de enlace óptico 3conectores para APF/PCF.

B700-AL001

Productos de fibra ópticaCable de fibra óptica revestimiento de plástico para SYSMAC BUS

Nombre Especificaciones Referencia

Cables de fibra óptica conrevestimiento de plástico

0.1 m, c/conectores Temperatura ambiente:10! a 70!C

3G5A2-OF011revestimiento de plástico 1 m, c/conectores --10! a 70!C 3G5A2-OF101

2 m, c/conectores 3G5A2-OF201

3 m, c/conectores 3G5A2-OF301

5 m, c/conectores 3G5A2-OF501

10 m, c/conectores 3G5A2-OF111

20 m, c/conectores 3G5A2-OF211

30 m, c/conectores 3G5A2-OF311

40 m, c/conectores 3G5A2-OF411

50 m, c/conectores 3G5A2-OF511

Sólo cable; se puede pedir la longi-tud deseada entre 1 y 500 m en in-crementos de 1 m.

3G5A2-OF002

Sólo cable; se puede pedir la longi-tud deseada entre 501 y 800 m enincrementos de 1 m.

Temp. ambiente:0! a 55!C (no exponer aluz solar directa)

Cables de fibra óptica H--PCF (Para SYSMAC NET, SYSMAC LINK y SYSMAC BUS)

Conector de cable de fibra óptica SYSMAC BUS:C200H-RM001-PV1C200H-RT001/RT002-PC500-RM001-(P)V1C500-RT001/RT002-(P)V1B500-jjj(-P)

Conectores paramaestra de E/Sremotas, esclava deE/S remotas, unidadHost Link Unit yadaptador deenlace

S3200-COCH82

Herramienta para montaje de fibra óptica

Nombre Especificaciones Referencia

Herramienta para montaje de fibraóptica

Utilizada para conectar fibra H-PCF y conectores parasistemas de transmisión ópticos tales como SYSMACBUS de Serie C- y CV, SYSMAC LINK y SYSMAC NET.

S3200-CAK1062

Nota 1. Los cables de fibra óptica deben ser preparados y conectados por especialistas.2. Para conectar cables de fibra óptica es necesario el siguiente equipo: medidor de potencia óptica, uni-

dad cabeza emisora, set de fibra maestra y herramienta para montaje de fibra óptica.

Page 513: C200HALPHA Manual Programacion

Modelos disponibles Apéndice A

510

Productos de fibra óptica de SYSMAC LINK/SYSMAC NET LinkCables de fibra óptica para sistemas SYSMAC LINK y SYSMAC NET LinkUtilizar cables de fibra óptica de cuarzo con recubrimiento de plástico duro (H-PCF) para sistemas SYSMAC LINKy SYSMAC NET Link. Los cables H-PCF se pueden suministrar con los conectores ya colocados o bien se puedepedir por separado. Consultar en los manuales de sistemas SYSMAC LINK o SYSMAC NET Link los procedi-mientos de montaje.Se debe utilizar un soporte para cable de fibra óptica conectado a la unidad SYSMAC NET Link C200HS-SNT32o unidad SYSMAC LINK C200HS-SLK12.Utilizar cables de fibra óptica tanto con cable de tensión como de líneas de alimentación.Se utiliza el siguiente conector para conectar las unidades C200HS SYSMAC LINK y SYSMAC NET Link:S3200-COCF2511.Se utiliza el siguiente conector para conectar las unidades CV500 SYSMAC LINK y SYSMAC NET Link y la uni-dad C1000H SYSMAC LINK: S3200-COCF2011. Este conector no se puede utilizar para las unidades C200HSSYSMAC LINK y SYSMAC NET Link.Los conectores anteriores no se pueden utilizar para unidad C500 SYSMAC NET Link, y NSB de SYSMAC NETLink. Para más información consultar el Manual SYSMAC NET Link.

Dispositivos de programaciónNombre Especificaciones Referencia

Consola de programación De mano, c/iluminación posterior; necesita el C200H-CN222o C200H-CN422, ver a continuación

C200H-PR027-E

Se suministra cable de conexión de 2-m. CQM1-PRO01-E

Soporte de montaje de laconsola de programación

Utilizado para colocar la consola de programación en panel. C200H-ATT01

Cables de conexión de lal d ió

Para consola de programación 2 m C200H-CN222consola de programación 4 m C200H-CN422

Consola de selección de datos Utilizada para entrada de datos y para visualizar valores delproceso para C200H-TCjjj, C200H-TVjjj,C200H-CP114 y C200H-PID0j.

C200H-DSC01

Cables de conexión de consola Para C200H-DSC01 2 m C200H-CN225

4 m C200H-CN425

Cable de conexión Utilizado para conectar un PC/AT alC200HS.

3.3 m CQM1-CIF02

SYSWIN Software de programaciónNombre Referencia Especificaciones

SYSWIN software de soporte en en-torno Windows

SYSWIN--CPM1--V3.2 Exclusivamente para CPM1 (1 Token/1 Usuario)torno Windows SYSWIN--V3.2 Con 3 Token (1 Token/1 Usuario)

SYSWINHL--V3.2 Con 1 Hardlock (1 Hardlock/1 Usuario)

SYSWINNET--V3.2 Con 1 Token (1 Token/10 Usuarios en red)

Software de edición de protocolos (PSS)Nombre Referencia Especificaciones

Software editor de protocolos C200HW--ZW3AT1--E Disquetes 3.5” para ordenador personal

Page 514: C200HALPHA Manual Programacion

Apéndice AModelos disponibles

511

Software para Motion Control (MCSS)Nombre Referencia Especificaciones

Software de motion control CV500--ZN3AT1--E Disquetes 3.5” para ordenador personal

Productos opcionalesNombre Especificaciones Referencias

Cubierta de unidad de E/S Tapa para bloque de 10 terminales C200H-COV11

Tapa de bloque de termi-nales

Protección contra cortos para bloque de 10 terminales C200H-COV02nales

Protección contra cortos para bloque de 19 terminales C200H-COV03

Cubierta de conector Tapa de protección para conectores de cable de E/S C500-COV01

Espaciador Utilizado para huecos libres C200H-SP001

Juego de batería Sólo para unidad de memoria RAM C200H o C200HS C200H-BAT09

Relé 24 Vc.c. G6B-1174P-FD-US

Placas de aislamiento delsoporte

Para C200HW-BC031 (para bastidor de CPU de 3 huecos) C200H-ATT31soporte

Para C200HW-BC051 (para bastidor de CPU de 5 huecos) C200H-ATT51

Para C200HW-BC081 (para bastidor de CPU de 8 huecos) C200H-ATT81

Para C200HW-BC101 (para bastidor de CPU de 10 huecos) C200H-ATTA1

Para C200HW-BI031 (para bastidor de E/S de 3 huecos) C200HW-ATT32

Para C200HW-BI051 (para bastidor de E/S de 5 huecos) C200HW-ATT52

Para C200HW-BI081 (para bastidor de E/S de 8 huecos) C200HW-ATT82

Para C200HW-BI101 (para bastidor de E/S de 10 huecos) C200HW-ATTA2

Soporte de E/S Para bastidor de 3 huecos C200H-ATT33

Para bastidor de 5 huecos C200H-ATT53

Para bastidor de 8 huecos C200H-ATT83

Para bastidor de 10 huecos C200H-ATTA3

Conectores externos Terminal para soldar; 40p y una cubierta C500-CE401

Terminal para soldar; 40p y una cubierta (Horizontal) C500-CE404

Carril de montaje y accesoriosNombre Especificaciones Referencia

Soporte de montaje en carrilDIN

1 juego (incluye 2 soportes) C200H-DIN01

Carriles DIN Longitud: 50 cm; altura: 7.3 mm PFP-50N

Longitud: 1 m; altura: 7.3 mm PFP-100N

Longitud: 1 m; altura: 16 mm PFP-100N2

Tope final --- PFP-M

Espaciador --- PFP-S

Page 515: C200HALPHA Manual Programacion

513

Apéndice BInstrucciones de programación

Las instrucciones se pueden introducir bien pulsando las correspondientes teclas de la consola de programación(es decir, LD, AND, OR, NOT) o bien utilizando los códigos de función. Para introducir una instrucción con suscódigos de función, pulsar FUN, el código de función y luego WRITE.

Código Nemónico Nombre Función Página

— AND AND Operación lógica AND 146

— AND LD AND LOAD Operación lógica AND con condición previa 146

— AND NOT AND NOT Operación lógica AND NOT 146

— CNT COUNTER Contador descendente 162

— LD LOAD Inicia una operación lógica 146

— LD NOT LOAD NOT Inicio de una operación lógica invertida 146

— OR OR Operación lógica OR 146

— OR LD OR LOAD Operación lógica OR con condición previa 146

— OR NOT OR NOT Operación lógica OR NOT 146

— OUT OUTPUT Salida del resultado de la operación lógica por el reléespecificado

147

— OUT NOT OUTPUT NOT Salida del resultado invertido de la operación lógica por elrelé especificado

147

— RSET RESET Pone a OFF el bit operando cuando la condición de ejecu-ción es ON y lo deja tal cual cuando la condición es OFF

149

— SET SET Pone a ON el bit de operando cuando la condición de eje-cución es ON y lo deja tal cual cuando la condición es ON

149

— TIM TEMPORIZADOR Temporizador de retardo a ON 156

000 NOP NO OPERACIÓN No se ejecuta nada y el programa pasa a la siguienteinstrucción

155

001 END END Fin del programa 155

002 IL ENCLAVAMIENTO Hace que todas las bobinas de los relés comprendidosentre ambas instrucciones se pongan a cero o no de

152

003 ILC BORRARENCLAVAMIENTO

entre ambas instrucciones se pongan a cero o no, deacuerdo con el resultado inmediatamente anterior a estainstrucción. Se mantienen los PVs de contador.

152

004 JMP SALTO Hace que el programa comprendido entre ambas instruc-ciones se ejecute o no de acuerdo con el resultado inme-

154

005 JME FIN DE SALTOciones se ejecute o no de acuerdo con el resultado inme-diatamente anterior a esta instrucción. 154

(@)006 FAL ALARMA Y RESETDE FALLO

Genera un error no fatal cuando se ejecuta, enviando elnúmero FAL designado a la consola de programación

313

007 FALS ALARMA DE FALLOGRAVE

Genera un error fatal cuando se ejecuta y envía el númeroFALS designado a la consola de programación

313

008 STEP DEFINIR PASO Cuando se utiliza con un bit de control, define el inicio deun nuevo paso y resetea el paso anterior. Cuando se uti-liza con N, define el final de ejecución de paso

304

009 SNXT INICIAR PASO Utilizado con un bit de control indica el final del paso, loresetea y arranca el paso siguiente

304

010 SFT REGISTRO DEDESPLAZAMIENTO

Crea un registro de desplazamiento de bit 167

011 KEEP RELÉ DEENCLAVAMIENTO

Relé de enclavamiento 150

012 CNTR CONTADORREVERSIBLE

Contador reversible 165

013 DIFU FLANCOASCENDENTE

Hace que un relé opere en el flanco de subida de unaseñal, sólo durante un ciclo de scan

147

014 DIFD FLANCODESCENDENTE

Hace que un relé opere en el flanco de bajada de unaseñal, sólo durante un ciclo de scan

147

015 TIMH TEMPORIZADOR DEALTA VELOCIDAD

Realiza una operación de retardo a la conexión utilizandoun temporizador de alta velocidad

160

Page 516: C200HALPHA Manual Programacion

Apéndice BInstrucciones de programación

514

Código PáginaFunciónNombreNemónico

(@)016 WSFT DESPLAZAMIENTODE CANAL

Desplazamiento en unidades de 16 bits en una serie decanales consecutivos

173

(@)017 ASFT REGISTRO DE DES-PLAZAMIENTOASÍNCRONO

Crea un registro de desplazamiento que intercambia loscontenidos de canales adyacentes cuando uno de los ca-nales es cero y el otro no.

174

(@)018 SCAN TIEMPO DE CICLO Selecciona el tiempo de ciclo mínimo (0 a 999.0 s). 314

(@)019 MCMP COMPARACIÓN DEBLOQUE

Compara un bloque de 16 canales consecutivos con otrobloque de 16 canales consecutivos.

188

020 CMP COMPARAR Compara dos valores hexadecimales de cuatro dígitos 189

(@)021 MOV MOVER Transfiere un canal o una constante de 4 dígitos a uncanal especificado

175

(@)022 MVN MOVER NEGADO Invierte un canal o una constante de 4dígitos y la trans-fiere a un canal especificado

176

(@)023 BIN BCD A BINARIO Convierte el contenido BCD del canal especificado a hexa-decimal y envía el resultado a otro canal

202

(@)024 BCD BINARIO A BCD Convierte el contenido binario del canal especificado adecimal y envía el resultado a otro canal

203

(@)025 ASL DESPLAMIENTOBINARIO A IZQDA.

Desplaza un bit a la izquierda 170

(@)026 ASR DESPLAZAMIENTOBINARIO A DRCHA.

Desplaza un bit a la derecha 171

(@)027 ROL ROTAR A IZQDA. Rota a la izquierda un canal con acarreo 171

(@)028 ROR ROTAR A DRCHA. Rota a la derecha un canal con acarreo 172

(@)029 COM COMPLEMENTO Invierte los estados de los bits de un canal 288

(@)030 ADD SUMA BCD Suma en BCD el contenido de un canal o una constantede 4 dígitos con el contenido de otro canal

246

(@)031 SUB RESTA BCD Resta en BCD al contenido de un canal o una constantede 4 dígitos el contenido de otro canal

248

(@)032 MUL MUTIPLICACIÓNBCD

Multiplica en BCD el contenido de dos canales (oconstantes)

251

(@)033 DIV DIVISIÓN BCD Divide en BCD el contenido de un canal (o constante) porel contenido de otro canal (o constante)

253

(@)034 ANDW PRODUCTO LÓGICO Realiza la operación lógica AND de dos canales (oconstantes)

289

(@)035 ORW SUMA LÓGICA Realiza la operación lógica OR de dos canales (oconstantes)

289

(@)036 XORW SUMA LÓGICAEXCLUSIVA

Realiza la operación lógica OR EXCLUSIVA de doscanales (o constantes)

290

(@)037 XNRW SUMA LÓGICAEXCLUSIVANEGADA

Realiza la operación lógica OR EXCLUSIVA negada dedos canales (o constantes)

291

(@)038 INC INCREMENTAR ENBCD

Incrementa en 1 el contenido BCD de un canal especifi-cado

244

(@)039 DEC DECREMENTAR ENBCD

Disminuye en 1 el contenido BCD de un canal especifi-cado

245

(@)040 STC ACARREO ON Pone a ON el indicador de acarreo 245

(@)041 CLC ACARREO OFF Pone a OFF el indicador de acarreo 245

045 TRSM SEGUIMIENTO DEDATOS

Inicia seguimiento de datos 314

(@)046 MSG VISUALIZACIÓN DEMENSAJE

Visualiza mensajes de 16 caracteres en el display de laconsola de programación

316

(@)047 LMSG MENSAJE DE 32 CA-RACTERES

Salida de mensajes de 32 caracteres a la consola de pro-gramación

317

(@)048 TERM MODO TERMINAL Pone la consola de programación en modo TERMINALpara la operación de mapeado de teclado normal.

318

(@)050 ADB SUMA BINARIA Realiza la suma binaria del contenido de un canal o unaconstante de 4 dígitos y el contenido de otro canal

259

Page 517: C200HALPHA Manual Programacion

Apéndice BInstrucciones de programación

515

Código PáginaFunciónNombreNemónico

(@)051 SBB RESTA BINARIA Realiza la resta binaria del contenido de un canal o unaconstante de 4 dígitos y el contenido de otro canal

261

(@)052 MLB MULTIPLICACIÓNBINARIA

Realiza la multiplicación binaria del contenido de un canalo una constante de 4 dígitos por el contenido de otro canal

263

(@)053 DVB DIVISIÓN BINARIA Realiza la división binaria del contenido de un canal o unaconstante de 4 dígitos por el contenido de otro canal

264

(@)054 ADDL SUMA BCD DOBLE Suma en BCD el contenido de dos canales o constantesde 8 dígitos y el acarreo

247

(@)055 SUBL RESTA BCD DOBLE Resta al contenido BCD de 8 dígitos de dos canales (oconstante) y el acarreo el contenido BCD de 8 dígitos dedos canales (o constantes)

249

(@)056 MULL MULTIPLICACIÓNBCD DOBLE

Multiplica los contenidos BCD de 8 dígitos de dos pares decanales (o constantes)

252

(@)057 DIVL DIVISIÓN BCDDOBLE

Divide el contenido BCD de 8 dígitos de dos canales (oconstantes) por el contenido BCD de 8 dígitos de otrosdos canales (o constantes)

254

(@)058 BINL CONVERSIÓN BCDA BINARIO DE DOSCANALES

Convierte a binario el contenido BCD de dos canales con-secutivos y envía el resultado a los canales de resultadosespecificados y consecutivos

202

(@)059 BCDL CONVERSIÓNBINARIO A BCDDOBLE

Convierte a BCD el contenido binario de dos canales con-secutivos y envía el resultado a los canales de resultadosespecificados y consecutivos

203

060 CMPL COMPARAR DOS ADOS

Compara dos valores hexadecimales de ocho dígitos 191

(@)061 MPRF REFRESCO DE E/SDE ALTA DENSIDADGRUPO 2

Refresca los canales de E/S asignados a unidades de E/Sde alta densidad grupo 2

320

(@)062 XFRB TRANSFERIR BITS Copia el estado de hasta 255 bits fuente especificados alos bits destino marcados.

184

(@)063 LINE COLUMNA A LÍNEA Copia una columna de bit de 16 canales consecutivos alcanal especificado

220

(@)064 COLM LÍNEA A COLUMNA Copia los 16 bits del canal especificado a una columna debits de 16 canales consecutivos

221

(@)065 SEC HORAS ASEGUNDOS

Convierte el tiempo expresado en horas--minutos--segun-dos a su equivalente en segundos

204

(@)066 HMS SEGUNDOS AHORAS

Convierte el tiempo expresado en segundos a su equiva-lente en horas--minutos--segundos

205

(@)067 BCNT CONTADOR DE BIT Cuenta el número total de bits que están en ON en el blo-que de canales especificado

320

(@)068 BCMP COMPARAR BLO-QUE

Determina si el valor de un canal está en un rango de defi-nido por los límites superior e inferior

193

(@)069 APR OPERACIONESARITMÉTICAS

Realiza cálculos de seno, coseno o aproximación lineal 278

(@)070 XFER TRANSFERENCIADE BLOQUE

Transfiere el contenido de un grupo de canales consecuti-vos a otro bloque de canales consecutivos

177

(@)071 BSET RELLENAR BLOQUE Copia el contenido de un canal o constante a varioscanales consecutivos

176

(@)072 ROOT RAÍZ CUADRADA Calcula la raíz cuadrada del contenido de 8 dígitos BCDde dos canales (o constantes)

257

(@)073 XCHG INTERCAMBIO DEDATOS

Intercambia el contenido de dos canales 178

(@)074 SLD DESPLAZAMIENTODE DÍGITO A IZQDA.

Desplazamiento a la izquierda en unidades de dígito. 172

(@)075 SRD DESPLAZAMIENTODE DÍGITO A DRCHA

Desplazamiento a la derecha en unidades de dígito 173

Page 518: C200HALPHA Manual Programacion

Apéndice BInstrucciones de programación

516

Código PáginaFunciónNombreNemónico

(@)076 MLPX DECODIFICADOR4--A--16/8-A-256

Convierte cuatro dígitos hexadecimales en el canal fuenteen valores decimales de 0 a 15 y pone a ON el bit corres-pondiente del canal de resultado.También puede convertir ocho dígitos hexadecimales ypone a ON los bits correspondientes en los canales deresultado R a R+15.

206

(@)077 DMPX CODIFICADOR16--A--4/256-A-8

Codifica la posición del bit más significativo que está enON en el canal(es) fuente a un dato de dígito(s) de R.También puede codificar la posición del bit más significa-tivo en ON de uno o dos grupos de 16 canales (S a S+15,S+16 a S+31) en dígito(s) de R.

209

(@)078 SDEC DECODIFICADORDE 7 SEGMENTOS

Convierte el dígito(s) designado(s) de un canal en uncódigo de 8 bits para display de 7 segmentos

212

(@)079 FDIV DIVISIÓN EN COMAFLOTANTE

Divide un valor en coma flotante (Dd+1, Dd) entre otro(Dr+1, Dr) y envía el resultado a R+1 y R.

255

(@)080 DIST DISTRIBUCIÓN DEDATOS

Copia el contenido de un canal a otro canal (cuya direc-ción se determina sumando un offset a la dirección decanal)

178

(@)081 COLL RECOGIDA DEDATOS

Copia el contenido de un canal (cuya dirección se deter-mina sumando un offset a la dirección de canal) a otrocanal

180

(@)082 MOVB MOVE BIT Transfiere un bit de un canal específicos a otro bit de otrocanal especificados

182

(@)083 MOVD MOVER DÍGITO Copia los dígitos especificados (unidades de 4 bits) de uncanal a los dígitos especificados de otro canal

183

(@)084 SFTR REGISTRO DEDESPLAZAMIENTOREVERSIBLE

Desplazamiento en unidades de canal de acuerdo con ladirección especificada

169

(@)085 TCMP COMPARAR TABLA Compara el valor de un canal con 16 canales consecutivos 194

(@)086 ASC CONVERTIR A ASCII Convierte el dígito(s) designado(s) de un canal en el equi-valente ASCII de 8 bits

215

087 TTIM TEMPORIZADORTORTALIZADOR

Crea un temporizador totalizador 161

(@)088 ZCP COMPARAR RANGODE ÁREA

Compara un canal con un rango definido por los límitessuperior e inferior y envía el resultado a los indicadoresGR, EQ y LE

195

(@)089 (@)INT CONTROL DEINTERRUPCIÓN

Realiza el control de interrupción, tales como enmascarary desenmascarar los bits de interrupción para interrup-ciones de E/S

300

(@)090 SEND ENVIAR A RED Utilizada para comunicaciones con otros PLCs conectadosen un sistema SYSMAC NET Link o SYSMAC LINK.

334

(@)091 SBS LLAMADA ASUBRUTINA

Ejecuta una subrutina en el programa principal 296

092 SBN PRINCIPIO DESUBRUTINA

Indica el inicio de un programa de subrutina 297

093 RET FINAL DESUBRUTINA

Indica el final de un programa de subrutina 297

(@)094 WDT REFRESCO DETEMPORIZADOR DEGUARDA

Aumenta el PV del temporizador de guarda: entre 0 y 6300ms.

318

(@)097 IORF REFRESCO DE E/S Refresca todos los canales de E/S especificados 319

(@)098 RECV RECIBIR DE RED Utilizada para comunicaciones con otros PLCs conectadosen un sistema SYSMAC NET Link o SYSMAC LINK.

336

(@)099 MCRO MACRO Llama y ejecuta la subrutina especificada, sustituyendo loscanales de entrada y salida especificados para los canalesde entrada y salida en la subrutina

298

(@)114 CPS COMPARACIÓNBINARIA CON SIGNO

Compara dos valores binarios con signo de 16 bits (4 dígi-tos) y envía el resultado a los indicadores GR, EQ y LE

197

(@)115 CPSL DOBLECOMPARACIÓNBINARIA CON SIGNO

Compara dos valores binarios con signo de 32 bits (8 dígi-tos) y envía el resultado a los indicadores GR, EQ y LE

198

Page 519: C200HALPHA Manual Programacion

Apéndice BInstrucciones de programación

517

Código PáginaFunciónNombreNemónico

(@)116 ZCPL COMPARACIÓN DERANGO DOS A DOS

Compara un valor de 8 dígitos con un rango definido porlos límites superior e inferior y envía el resultado a los indi-cadores GR, EQ y LE.

196

(@)160 NEG COMPLEMENTO A 2 Convierte el contenido hexadecimal de 4 dígitos del canalfuente a su complemento a 2 y envía el resultado a R

222

(@)161 NEGL DOBLECOMPLEMENTO A 2

Convierte el contenido hexadecimal de 8 dígitos del canalfuente a su complemento a 2 y envía el resultado a R yR+1.

223

(@)162 HEX CONVERSIÓN DEASCII-A-HEXADECI--MAL

Convierte datos ASCII a hexadecimal 216

(@)180 FCS CÁLCULO DECHECKSUM

Chequea errores en el dato transmitido mediante un com-ando de Host Link

321

(@)181 SRCH BÚSQUEDA DEDATOS

Busca un dato dado en el rango especificado de memoria.Envía la dirección(es) de canal(es) dentro del rango quecontiene el dato

326

(@)182 MAX BUSCAR MÁXIMO Encuentra el valor máximo en el área de datos especifi-cada y lo envía a otro canal

273

(@)183 MIN BUSCAR MÍNIMO Encuentra el valor mínimo en un área de datos especifi-cada y envía ese valor a otro canal

274

(@)184 SUM SUMA Calcula la suma de los contenidos de los canales en elrango especificado de memoria.

276

(@)190 PID CONTROL PID Realiza el control PID basado en los parámetros especifi-cados

281

(@)194 SCL ESCALA Realiza una conversión escalar del valor calculado 219

195 AVG VALOR MEDIO Suma el número especificado de canales hexadecimales ycalcula el valor medio. Redondea a cuatro decimales

275

210 DSW ENTRADA DE DÉCA-DAS DE SELECCIÓN

Introduce datos BCD de 4 u 8 dígitos procedentes de unadécada de selección

350

211 TKY ENTRADA DETECLADO DECIMAL

Introduce 8 dígitos de datos BCD procedentes de unteclado decimal.

356

212 HKY ENTRADA DE TE-CLADO HEXADECI-MAL

Introduce 8 dígitos de datos hexadecimal desde un tecladode 16 teclas.

353

213 MTR ENTRADA DEMATRIZ

Introduce datos de una matriz de 8x8 y los graba en D aD+3.

358

214 7SEG SALIDA PARADISPLAY DE 7SEGMENTOS

Convierte datos BCD de 4 u 8 dígitos a formato de displayde 7 segmentos y luego envía los datos convertidos

347

(@)222 IORD LECTURA DEUNIDAD DE E/SESPECIAL

Transfiere datos de la memoria de la unidad de E/S espe-cial especificada a los canales en el PLC.

360

(@)223 IOWR ESCRIBIR UNIDADDE E/S ESPECIAL

Transfiere datos de canales en el PLC a la memoria de launidad de E/S especial especificada.

361

(@)235 RXD RECIBIR DATOS Recibe datos vía puerto de comunicaciones 341

(@)236 TXD TRANSMITIR DATOS Envía datos vía puerto de comunicaciones. 343

(@)237 STUP CAMBIAR SETUP DERS--232C

Cambia las selecciones de Setup del PLC para el puertoespecificado.

345

(@)260 PMCR MACRO DEPROTOCOLO

Llama y ejecuta la secuencia de comunicaciones especifi-cada (protocolo) que se ha registrado en la tarjeta de com-unicaciones.

346

(@)261 CMCR MACRO DE TARJETAPCMCIA

Ejecuta un proceso macro para leer, escribir y comparar(con la memoria) archivos en unidad de tarjeta PCMCIA.

330

269 FPD DETECCION DEFALLOS

Encuentra errores dentro de un bloque de instrucción 322

Page 520: C200HALPHA Manual Programacion

Apéndice BInstrucciones de programación

518

Código PáginaFunciónNombreNemónico

(@)280 XDMR LECTURA DE DM DEEXPANSIÓN

Los contenidos del número de canales especificado dedatos de DM de expansión se leen y envían al canal des-tino en el PLC.

327

(@)281 EMBC SELECCIONARBANCO DE EM

Cambia el banco de EM actual al número de banco espe-cificado.

329

300 = IGUAL QUE Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 = S2).

198

301 =L IGUAL QUE DOS ADOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 = S2).

198

302 =S IGUAL QUE CONSIGNO

Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 = S2).

198

303 =SL IGUAL QUE CONSIGNO DOS A DOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 = S2).

198

305 <> DISTINTO QUE Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 <> S2).

198

306 <>L DISTINTO QUE DOSA DOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 <> S2).

198

307 <>S DISTINTO QUE CONSIGNO

Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 <> S2).

198

308 <>SL DISTINTO QUE CONSIGNO DOS A DOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 <> S2).

198

310 < MENOR QUE Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 < S2).

198

311 <L MENOR QUE DOS ADOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 < S2).

198

312 <S MENOR QUE CONSIGNO

Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 < S2).

198

313 <SL MENOR QUE DOS ADOS CON SIGNO

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 < S2).

198

315 <= MENOR O IGUALQUE

Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 ≦ S2).

198

316 <=L MENOR O IGUALQUE DOS A DOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 ≦ S2).

198

317 <=S MENOR O IGUALQUE CON SIGNO

Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 ≦ S2).

198

318 <=SL MENOR O IGUALQUE DOS A DOSCON SIGNO

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 ≦ S2).

198

320 > MAYOR QUE Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 > S2).

198

321 >L MAYOR QUE DOS ADOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 > S2).

198

Page 521: C200HALPHA Manual Programacion

Apéndice BInstrucciones de programación

519

Código PáginaFunciónNombreNemónico

322 >S MAYOR QUE CONSIGNO

Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 > S2).

198

323 >SL MAYOR QUE DOS ADOS CON SIGNO

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 > S2).

198

325 >= MAYOR O IGUALQUE

Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 ≧ S2).

198

326 >=L MAYOR O IGUALQUE DOS A DOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 ≧ S2).

198

327 >=S MAYOR O IGUALQUE CON SIGNO

Compara datos de canal y constantes en 4 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 ≧ S2).

198

328 >=SL MAYOR O IGUALQUE CON SIGNODOS A DOS

Compara datos de canal y constantes en 8 dígitoshexadecimal, y pone a ON la condición de ejecución si elresultado es verdadero (si S1 ≧ S2).

198

350 TST TEST BIT Pone a ON la condición de ejecución cuando el bitespecificado en el canal especificado se pone en ON.

151

351 TSTN TEST BIT NEGADO Pone a ON la condición de ejecución cuando el bitespecificado en el canal especificado se pone en OFF.

151

(@)400 + SUMA BINARIA CONSIGNO SINACARREO

Suma datos de canal y constantes en 4 dígitoshexadecimal con signo, y envía el resultado al canalespecificado.

225

(@)401 +L DOBLE SUMABINARIA CON SIGNOSIN ACARREO

Suma datos de canal y constantes en 8 dígitoshexadecimal con signo, y envía el resultado a los canalesespecificados.

225

(@)402 +C SUMA BINARIA CONSIGNO CONACARREO

Suma datos de canal y constantes, incluyendo acarreo, en4 dígitos hexadecimal con signo, y envía el resultado alcanal especificado.

225

(@)403 +CL DOBLE SUMABINARIA CON SIGNOCON ACARREO

Suma datos de canal y constantes, incluyendo acarreo, en8 dígitos hexadecimal con signo, y envía el resultado a loscanales especificados.

225

(@)404 +B SUMA BCD SINACARREO

Suma datos de canal y constantes en 4 dígitos BCD, yenvía el resultado al canal especificado.

227

(@)405 +BL DOBLE SUMA BCDSIN ACARREO

Suma datos de canal y constantes en 8 dígitos BCD, yenvía el resultado a los canales especificados.

227

(@)406 +BC SUMA BCD CONACARREO

Suma datos de canal y constantes, incluyendo acarreo, en4 dígitos BCD, y envía el resultado al canal especificado.

227

(@)407 +BCL DOBLE SUMA BCDCON ACARREO

Suma datos de canal y constantes, incluyendo acarreo, en8 dígitos BCD, y envía el resultado a los canalesespecificados.

227

(@)410 -- RESTA BINARIACON SIGNO SINACARREO

Resta datos de canal y constantes en 4 dígitoshexadecimal con signo, y envía el resultado al canalespecificado.

229

(@)411 --L DOBLE RESTABINARIA CON SIGNOSIN ACARREO

Resta datos de canal y constantes en 8 dígitoshexadecimal con signo, y envía el resultado a los canalesespecificados.

229

(@)412 --C RESTA BINARIACON SIGNO CONACARREO

Resta datos de canal y constantes, incluyendo acarreo, en4 dígitos hexadecimal con signo, y envía el resultado alcanal especificado.

229

(@)413 --CL DOBLE RESTABINARIA CON SIGNOCON ACARREO

Resta datos de canal y constantes, incluyendo acarreo, en8 dígitos hexadecimal con signo, y envía el resultado a loscanales especificados.

229

(@)414 --B RESTA BCD SINACARREO

Resta datos de canal y constantes en 4 dígitos BCD, yenvía el resultado al canal especificado.

233

Page 522: C200HALPHA Manual Programacion

Apéndice BInstrucciones de programación

520

Código PáginaFunciónNombreNemónico

(@)415 --BL DOBLE RESTA BCDSIN ACARREO

Resta datos de canal y constantes en 8 dígitos BCD, yenvía el resultado a los canales especificados.

233

(@)416 --BC RESTA BCD CONACARREO

Resta datos de canal y constantes, incluyendo acarreo, en4 dígitos BCD, y envía el resultado al canal especificado.

233

(@)417 --BCL DOBLE RESTA BCDCON ACARREO

Resta datos de canal y constantes, incluyendo acarreo, en8 dígitos BCD, y envía el resultado al canal especificado.

233

(@)420 * MULTIPLICACIÓNBINARIA CON SIGNO

Multiplica datos de canal y constantes en 4 dígitoshexadecimal con signo y envía el resultado a los canalesespecificados.

237

(@)421 *L DOBLEMULTIPLICACIÓNBINARIA CON SIGNO

Multiplica datos de canal y constantes en 8 dígitoshexadecimal con signo y envía el resultado a los canalesespecificados.

237

(@)422 *U MULTIPLICACIÓNBINARIA SIN SIGNO

Multiplica datos de canal y constantes en 4 dígitoshexadecimal sin signo y envía el resultado a los canalesespecificados.

237

(@)423 *UL DOBLEMULTIPLICACIÓNBINARIA SIN SIGNO

Multiplica datos de canal y constantes en 8 dígitoshexadecimal sin signo y envía el resultado a los canalesespecificados.

237

(@)424 *B MULTIPLICACIÓNBCD

Multiplica datos de canal y constantes en 4 dígitos BCD yenvía el resultado a los canales especificados.

239

(@)425 *BL DOBLEMULTIPLICACIÓNBCD

Multiplica datos de canal y constantes en 8 dígitos BCD yenvía el resultado a los canales especificados.

239

(@)430 / DIVISIÓN BINARIACON SIGNO

Divide datos de canal y constantes en 4 dígitoshexadecimal con signo y envía el resultado a los canalesespecificados.

241

(@)431 /L DOBLE DIVISIÓNBINARIA CON SIGNO

Divide datos de canal y constantes en 8 dígitoshexadecimal con signo y envía el resultado a los canalesespecificados.

241

(@)432 /U DIVISIÓN BINARIASIN SIGNO

Divide datos de canal y constantes en 4 dígitoshexadecimal sin signo y envía el resultado a los canalesespecificados.

241

(@)433 /UL DOBLE DIVISIÓNBINARIA SIN SIGNO

Divide datos de canal y constantes en 8 dígitoshexadecimal sin signo y envía el resultado a los canalesespecificados.

241

(@)434 /B DIVISIÓN BCD Divide datos de canal y constantes en 4 dígitos BCD yenvía el resultado a los canales especificados.

243

(@)435 /BL DOBLE DIVISIÓNBCD

Divide datos de canal y constantes en 8 dígitos BCD yenvía el resultado a los canales especificados.

243

(@)480 ADBL DOBLE SUMABINARIA

Suma dos valores binarios de 8 dígitos (dato normal o consigno) y envía el resultado a R y R + 1

265

(@)481 SBBL DOBLE RESTABINARIA

Resta un valor binario de 8 dígitos (normal o con signo) deotro y envía el resultado a R y R+1.

267

(@)482 MBSL DOBLEMULTIPLICACIÓNBINARIA CON SIGNO

Multiplica dos valores binarios con signo de 32 bits (8 dígi-tos) y envía el resultado binario con signo de 16 dígitos aR+3 a R.

270

(@)483 DBSL DOBLE DIVISIÓNBINARIA CON SIGNO

Divide un valor binario con signo de 32 bits entre otro yenvía el resultado binario con signo de 64 bits a R+3 a R.

272

(@)484 MBS MULTIPLICACIÓNBINARIA CON SIGNO

Multiplica el contenido binario con signo de dos canales yenvía el resultado a R+1 y R

269

(@)485 DBS DIVISIÓN BINARIACON SIGNO

Divide un valor binario con signo de 16 bits entre otro yenvía el resultado binario con signo de 32 bits a R+1 y R.

271

(@)(----) XFR2 TRANSFERIRBLOQUE DE EM

Mueve el contenido de varios canales fuente consecutivosa canales destino consecutivos. Se pueden especificarpara fuente o para destino cualquier banco válido de EM.Esta instrucción se puede utilizar para cambiar el bancoactual.

185

Page 523: C200HALPHA Manual Programacion

Apéndice BInstrucciones de programación

521

Código PáginaFunciónNombreNemónico

(@)(----) BXF2 TRANSFERIRBANCO DE EM

Mueve el contenido de varios canales fuente consecutivosa los canales destino consecutivos. Los canales en el ban-co EM actual se pueden especificar para fuente o destino.

186

(@)(----) IEMS DIRECCIONAMIENTO INDIRECTO DE EM

Cambia el destino de direccionamiento indirecto de DM(£DM) a DM o al banco de EM especificado. Esta instruc-ción se puede utilizar para cambiar el banco de EM actual.

328

Page 524: C200HALPHA Manual Programacion

523

Apéndice CIndicadores de error y aritméticos

La siguiente tabla muestra las instrucciones que afectan a los indicadores N, OF, UF, ER, CY, GR, LE y EQ.

En general, N indica un resultado negativo, OF indica que el resultado de una operación de 16--bits es mayor que32,767 (7FFF) o el resultado de una operación de 32--bits es mayor que 2,147,483,647 (7FFF FFFF). UF indicaque el resultado de una operación de 16 bits es menor que --32,768 (8000) o el resultado de una operación de32-bits es menor que --2,147,483,648 (8000 0000). Consultar Sección 5 Juego de Instrucciones para más infor-mación.ER indica que el dato de operando no está dentro de los requerimientos. CY indica resultados de desplazamientode datos o de operaciones aritméticas. GR indica que el resultado de una comparación es mayor que, LT que esmenor que y EQ que es igual. EQ también indica un resultado de cero para operaciones aritméticas. Consultarpara más detalles la Sección 5 Juego de Instrucciones.Las flechas verticales en la tabla muestran los indicadores que se ponen a ON y OFF de acuerdo con el resultadode la instrucción.Aunque TIM y CNT se ejecutan cuando ER está en ON, el resto de instrucciones de diagrama de relés con unaflecha en la columna ER no se ejecutan si ER está en ON. El resto de indicadores de la siguiente tabla tampocooperarán cuando ER esté en ON.Las instrucciones que no se muestran no afectan a ninguno de los indicadores. Auqnue sólo se muestra la formano diferenciada de cada instrucción, las instrucciones diferenciadas afectan a los indicadores exactamente igual.Los 8 indicadores se ponen a OFF cuando se ejecuta END(001), por lo que sus estados no se pueden monitorizarcon una consola de programación.

Nemónico 25503(ER)

25504(CY)

25505(GR)

25506(EQ)

25507(LE)

25404(OF)

25405(UF)

25402(N)

Pág.

TIM ↕ --- --- --- --- --- --- --- 156

CNT ↕ --- --- --- --- --- --- --- 162

END (001) OFF OFF OFF OFF OFF OFF OFF OFF 155

SFT(010) OFF --- --- --- --- --- --- --- 167

CNTR(012) ↕ --- --- --- --- --- --- --- 165

TIMH(015) ↕ --- --- --- --- --- --- --- 160WSFT(016) ↕ --- --- --- --- --- --- --- 173

ASFT(017) ↕ --- --- --- --- --- --- --- 174

SCAN(018) ↕ --- --- --- --- --- --- --- 314

MCMP(019) ↕ --- --- ↕ --- --- --- --- 188

CMP(020) ↕ --- ↕ ↕ ↕ --- --- --- 189

MOV(021) ↕ --- --- ↕ --- --- --- ↕ 175

MVN(022) ↕ --- --- ↕ --- --- --- ↕ 176

BIN(023) ↕ --- --- ↕ --- --- --- OFF 202

BCD(024) ↕ --- --- ↕ --- --- --- --- 203

ASL(025) ↕ ↕ --- ↕ --- --- --- ↕ 170

ASR(026) ↕ ↕ --- ↕ --- --- --- OFF 171

ROL(027) ↕ ↕ --- ↕ --- --- --- ↕ 171

ROR(028) ↕ ↕ --- ↕ --- --- --- ↕ 172

COM(029) ↕ --- --- ↕ --- --- --- ↕ 288

ADD(030) ↕ ↕ --- ↕ --- --- --- --- 246

SUB(031) ↕ ↕ --- ↕ --- --- --- --- 248

MUL(032) ↕ --- --- ↕ --- --- --- --- 251DIV(033) ↕ --- --- ↕ --- --- --- --- 253

ANDW(034) ↕ --- --- ↕ --- --- --- ↕ 289

ORW(035) ↕ --- --- ↕ --- --- --- ↕ 289

XORW(036) ↕ --- --- ↕ --- --- --- ↕ 290

XNRW(037) ↕ --- --- ↕ --- --- --- ↕ 291

INC(038) ↕ --- --- ↕ --- --- --- --- 244

Page 525: C200HALPHA Manual Programacion

Apéndice CIndicadores de error y aritméticos

524

Nemónico Pág.25402(N)

25405(UF)

25404(OF)

25507(LE)

25506(EQ)

25505(GR)

25504(CY)

25503(ER)

DEC(039) ↕ --- --- ↕ --- --- --- --- 245

STC(040) --- ON --- --- --- --- --- --- 245

CLC(041) --- --- --- --- --- --- --- --- 245

MSG(046) ↕ --- --- --- --- --- --- --- 316

LMSG(047) ↕ --- --- --- --- --- --- --- 317

ADB(050) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 259

SBB(051) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 261

MLB(052) ↕ --- --- ↕ --- --- --- ↕ 263

DVB(053) ↕ --- --- ↕ --- --- --- ↕ 264

ADDL(054) ↕ ↕ --- ↕ --- --- --- --- 247

SUBL(055) ↕ ↕ --- ↕ --- --- --- --- 249

MULL(056) ↕ --- --- ↕ --- --- --- --- 252

DIVL(057) ↕ --- --- ↕ --- --- --- --- 254

BINL(058) ↕ --- --- ↕ --- --- --- OFF 202

BCDL(059) ↕ --- --- ↕ --- --- OFF --- 203

CMPL(060) ↕ --- ↕ ↕ ↕ --- --- --- 191

MPRF(061) ↕ --- --- --- --- --- --- --- 320

XFRB(062) ↕ --- --- --- --- --- --- 184

LINE(063) ↕ --- --- ↕ --- --- --- --- 220

COLM(064) ↕ --- --- ↕ --- --- --- --- 221

SEC(065) ↕ --- --- ↕ --- --- --- --- 204

HMS(066) ↕ --- --- ↕ --- --- --- --- 205

BCNT(067) ↕ --- --- ↕ --- --- --- --- 320

BCMP(068) ↕ --- --- --- --- --- --- --- 193

APR(069) ↕ --- --- ↕ --- --- --- ↕ 278

XFER(70) ↕ --- --- --- --- --- --- --- 177

BSET(71) ↕ --- --- --- --- --- --- --- 176

ROOT(72) ↕ --- --- ↕ --- --- --- --- 257

XCHG(73) ↕ --- --- --- --- --- --- --- 178

SLD(74) ↕ --- --- --- --- --- --- --- 172

SRD(75) ↕ --- --- --- --- --- --- --- 173

MLPX(76) ↕ --- --- --- --- --- --- --- 206

DMPX(77) ↕ --- --- --- --- --- --- --- 209

SDEC(78) ↕ --- --- --- --- --- --- --- 212

FDIV(79) ↕ --- --- --- ↕ --- --- --- 255

DIST(80) ↕ --- --- --- ↕ --- --- ↕ 178

COLL(81) ↕ --- --- --- ↕ --- --- ↕ 180

MOVB(82) ↕ --- --- --- --- --- --- --- 182

MOVD(83) ↕ --- --- --- --- --- --- --- 183

SFTR(84) ↕ ↕ --- --- --- --- --- --- 169

TCMP(85) ↕ --- --- ↕ --- --- --- --- 194

ASC(86) ↕ --- --- --- --- --- --- --- 215

TTIM(087) ↕ --- --- --- --- --- --- --- 161

ZCP(088) ↕ --- ↕ ↕ ↕ --- --- --- 195

INT(089) ↕ --- --- --- --- --- --- --- 300

SEND(90) ↕ --- --- --- --- --- --- --- 334

SBS(91) ↕ --- --- --- --- --- --- --- 296

SBN(92) ↕ ↕ ↕ ↕ ↕ ↕ ↕ ↕ 297

WDT(94) ↕ --- --- --- --- --- --- --- 318

IORF(97) ↕ --- --- --- --- --- --- --- 319

RECV(98) ↕ --- --- --- --- --- --- --- 336

Page 526: C200HALPHA Manual Programacion

Apéndice CIndicadores de error y aritméticos

525

Nemónico Pág.25402(N)

25405(UF)

25404(OF)

25507(LE)

25506(EQ)

25505(GR)

25504(CY)

25503(ER)

MCRO(99) ↕ --- --- --- --- --- --- --- 298

CPS(114) ↕ --- ↕ ↕ ↕ --- --- --- 197

CPSL(115) ↕ --- ↕ ↕ ↕ --- --- --- 198

ZCPL(116) ↕ --- ↕ ↕ ↕ --- --- --- 196

NEG(160) ↕ --- --- ↕ --- --- ↕ ↕ 222

NEGL(161) ↕ --- --- ↕ --- --- ↕ ↕ 223

HEX(162) ↕ --- --- --- --- --- --- --- 216

FCS(180) ↕ --- --- --- --- --- --- --- 321

SRCH(181) ↕ --- --- ↕ --- --- --- --- 326

MAX(182) ↕ --- --- ↕ --- --- --- ↕ 273

MIN(183) ↕ --- --- ↕ --- --- --- ↕ 274

SUM(184) ↕ --- --- ↕ --- --- --- ↕ 276

PID(190) ↕ ↕ --- --- --- --- --- --- 281

SCL(194) ↕ --- --- ↕ --- --- --- --- 219

AVG(195) ↕ --- --- --- --- --- --- --- 275

DSW(210) ↕ --- --- --- --- --- --- --- 350

TKY(211) ↕ --- --- --- --- --- --- --- 356

HKY(212) ↕ --- --- --- --- --- --- --- 353

MTR(213) ↕ --- --- --- --- --- --- --- 358

7SEG(214) ↕ --- --- --- --- --- --- --- 347

IORD(222) ↕ --- --- ↕ --- --- --- --- 360

IOWR(223) ↕ --- --- ↕ --- --- --- --- 361

RXD(235) ↕ --- --- --- --- --- --- --- 341

TXD(236) ↕ --- --- --- --- --- --- --- 343

STUP(237) ↕ --- --- --- --- --- --- --- 345

PMCR(260) ↕ --- --- --- --- --- --- --- 346

CMCR(261) ↕ --- --- --- --- --- --- --- 330

FPD(269) ↕ ↕ --- --- --- --- --- --- 322

XDMR(280) ↕ --- --- --- --- --- --- --- 327

EMBC(281) ↕ --- --- --- --- --- --- --- 329

=(300) ↕ --- --- ↕ --- --- --- ↕ 198

=L(301) ↕ --- --- ↕ --- --- --- ↕ 198

=S(302) ↕ --- --- ↕ --- --- --- ↕ 198

=SL(303) ↕ --- --- ↕ --- --- --- ↕ 198

<>(305) ↕ --- --- ↕ --- --- --- ↕ 198

<>L(306) ↕ --- --- ↕ --- --- --- ↕ 198

<>S(307) ↕ --- --- ↕ --- --- --- ↕ 198

<>SL(308) ↕ --- --- ↕ --- --- --- ↕ 198

<(310) ↕ --- --- ↕ --- --- --- ↕ 198

<L(311) ↕ --- --- ↕ --- --- --- ↕ 198

<S(312) ↕ --- --- ↕ --- --- --- ↕ 198

<SL(313) ↕ --- --- ↕ --- --- --- ↕ 198

<=(315) ↕ --- --- ↕ --- --- --- ↕ 198

<=L(316) ↕ --- --- ↕ --- --- --- ↕ 198

<=S(317) ↕ --- --- ↕ --- --- --- ↕ 198

<=SL(318) ↕ --- --- ↕ --- --- --- ↕ 198

>(320) ↕ --- --- ↕ --- --- --- ↕ 198

>L(321) ↕ --- --- ↕ --- --- --- ↕ 198

>S(322) ↕ --- --- ↕ --- --- --- ↕ 198

>SL(323) ↕ --- --- ↕ --- --- --- ↕ 198

>=(325) ↕ --- --- ↕ --- --- --- ↕ 198

Page 527: C200HALPHA Manual Programacion

Apéndice CIndicadores de error y aritméticos

526

Nemónico Pág.25402(N)

25405(UF)

25404(OF)

25507(LE)

25506(EQ)

25505(GR)

25504(CY)

25503(ER)

>=L(326) ↕ --- --- ↕ --- --- --- ↕ 198

>=S(327) ↕ --- --- ↕ --- --- --- ↕ 198

>=SL(328) ↕ --- --- ↕ --- --- --- ↕ 198

TST(350) ↕ --- --- --- --- --- --- --- 151

TSTN(351) ↕ --- --- --- --- --- --- --- 151

+(400) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 225

+L(401) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 225

+C(402) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 225+CL(403) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 225

+B(404) ↕ ↕ --- ↕ --- --- --- ↕ 227

+BL(405) ↕ ↕ --- ↕ --- --- --- ↕ 227

+BC(406) ↕ ↕ --- ↕ --- --- --- ↕ 227

+BCL(407) ↕ ↕ --- ↕ --- --- --- ↕ 227

--(410) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 229

--L(411) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 229

--C(412) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 229

--CL(413) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 229

--B(414) ↕ ↕ --- ↕ --- --- --- --- 233

--BL(415) ↕ ↕ --- ↕ --- --- --- --- 233

--BC(416) ↕ ↕ --- ↕ --- --- --- --- 233

--BCL(417) ↕ ↕ --- ↕ --- --- --- --- 233*(420) ↕ --- --- ↕ --- --- --- ↕ 237

*L(421) ↕ --- --- ↕ --- --- --- ↕ 237

*U(422) ↕ --- --- ↕ --- --- --- ↕ 237

*UL(423) ↕ --- --- ↕ --- --- --- ↕ 237

*B(424) ↕ --- --- ↕ --- --- --- --- 239

*BL(425) ↕ --- --- ↕ --- --- --- --- 239

/(430) ↕ --- --- ↕ --- --- --- ↕ 241

/L(431) ↕ --- --- ↕ --- --- --- ↕ 241

/U(432) ↕ --- --- ↕ --- --- --- ↕ 241

/UL(433) ↕ --- --- ↕ --- --- --- ↕ 241

/B(434) ↕ --- --- ↕ --- --- --- --- 243

/BL(435) ↕ --- --- ↕ --- --- --- --- 243

ADBL(480) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 265

SBBL(481) ↕ ↕ --- ↕ --- ↕ ↕ ↕ 267

MBSL(482) ↕ --- --- ↕ --- --- --- ↕ 270

DBSL(483) ↕ --- --- ↕ --- --- --- ↕ 272MBS(484) ↕ --- --- ↕ --- --- --- ↕ 269

DBS(485) ↕ --- --- ↕ --- --- --- ↕ 271

XFR2(----) ↕ --- --- --- --- --- --- --- 185

BXF2(----) ↕ --- --- --- --- --- --- --- 186

IEMS(----) ↕ --- --- --- --- --- --- --- 328

Page 528: C200HALPHA Manual Programacion

527

Apéndice DPlantillas de asignación de canal

Este apéndice contiene plantillas que se pueden copiar para registrar las asignaciones de bit de E/S, así comodetalles de bits de trabajo, áreas de almacenamiento de datos, temporizadores y contadores.

Page 529: C200HALPHA Manual Programacion

528

Programador: Programa: Fecha: Página:

Canal: Unidad:

Bit Dispositivo de campo Notas

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

Canal: Unidad:

Bit Dispositivo de campo Notas

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

Canal: Unidad:

Bit Dispositivo de campo Notas

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

Canal: Unidad:

Bit Dispositivo de campo Notas

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

Bits de E/S

Page 530: C200HALPHA Manual Programacion

529

Programador: Programa: Fecha: Página:

Area: Canal:

Bit Utilización Notas

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

Area: Canal:

Bit Utilización Notas

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

Area: Canal:

Bit Utilización Notas

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

Area: Canal:

Bit Utilización Notas

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

Bits de trabajo

Page 531: C200HALPHA Manual Programacion

530

Programador: Programa: Fecha: Página:

Canal Contenidos Notas Canal Contenidos Notas

Almacenamiento de datos

Page 532: C200HALPHA Manual Programacion

531

Programador: Programa: Fecha: Página:

No. de TC T o C SV Notas No. de TC T o C SV Notas

Temporizadores y Contadores

Page 533: C200HALPHA Manual Programacion

533

Apéndice EPlantilla de codificación de programa

La siguiente página se puede copiar para su utilización en programas de diagrama de relés. Se ha diseñado conflexibilidad para permitir al usuario escribir todas las direcciones e instrucciones necesarias.Cuando se codifican programas, verificar que se especifican todos los códigos de función para las instrucciones yáreas de datos (o # para constantes) para los operandos. Todo esto será necesario cuando se escriban progra-mas desde una consola de programación u otro dispositivo periférico.

Page 534: C200HALPHA Manual Programacion

534

Programador: Programa: Fecha: Página:

Dirección Instrucción Operando(s) Dirección Instrucción Operando(s) Dirección Instrucción Operando(s)

Plantilla de codificación de programas

Page 535: C200HALPHA Manual Programacion

535

Apéndice FTablas de conversión de datos

BCD--HexadecimalDecimal BCD Hex Binario

00 00000000 00 00000000

01 00000001 01 00000001

02 00000010 02 00000010

03 00000011 03 00000011

04 00000100 04 00000100

05 00000101 05 00000101

06 00000110 06 00000110

07 00000111 07 00000111

08 00001000 08 00001000

09 00001001 09 00001001

10 00010000 0A 00001010

11 00010001 0B 00001011

12 00010010 0C 00001100

13 00010011 0D 00001101

14 00010100 0E 00001110

15 00010101 0F 00001111

16 00010110 10 00010000

17 00010111 11 00010001

18 00011000 12 00010010

19 00011001 13 00010011

20 00100000 14 00010100

21 00100001 15 00010101

22 00100010 16 00010110

23 00100011 17 00010111

24 00100100 18 00011000

25 00100101 19 00011001

26 00100110 1A 00011010

27 00100111 1B 00011011

28 00101000 1C 00011100

29 00101001 1D 00011101

30 00110000 1E 00011110

31 00110001 1F 00011111

32 00110010 20 00100000

Page 536: C200HALPHA Manual Programacion

Tablas de conversión de datos Apéndice F

536

Datos binarios con signoDecimal 16-bit Hex 32-bit Hex

21474836472147483646

.

.

.327683276732766

.

.

.543210

--1--2--3--4--5

.

.

.--32767--32768--32769

.

.

.--2147483647--2147483648

------------

.

.

.------

7FFF7FFE

.

.

.000500040003000200010000FFFFFFFEFFFDFFFCFFFB

.

.

.80018000

------...

------------

7FFFFFFF7FFFFFFE

.

.

.0000800000007FFF00007FFE

.

.

.000000050000000400000003000000020000000100000000

FFFFFFFFFFFFFFFEFFFFFFFDFFFFFFFCFFFFFFFB

.

.

.FFFF8001FFFF8000FFFF7FFF

.

.

.8000000180000000

Page 537: C200HALPHA Manual Programacion

537

Apéndice GASCII extendido

Displays de la consola de programaciónBits 0 A 3 Bits 4 A 7

BIN 0000 0001 0010 0011 0100 0101 0110 0111 1010 1011 1100 1101 1110 1111

HEX 0 1 2 3 4 5 6 7 A B C D E F

0000 0 NUL DLE Space 0 @ P ` p 0 @ P ` p

0001 1 SOH DC1 ! 1 A Q a q ! 1 A Q a q

0010 2 STX DC2 " 2 B R b r " 2 B R b r

0011 3 ETX DC3 # 3 C S c s # 3 C S c s

0100 4 EOT DC4 $ 4 D T d t $ 4 D T d t

0101 5 ENQ NAK % 5 E U e u % 5 E U e u

0110 6 ACK SYN & 6 F V f v & 6 F V f v

0111 7 BEL ETB ' 7 G W g w ' 7 G W g w

1000 8 BS CAN ( 8 H X h x ( 8 H X h x

1001 9 HT EM ) 9 I Y i y ) 9 I Y i y

1010 A LF SUB * : J Z j z * : J Z j z

1011 B VT ESC + ; K [ k { + ; K [ k {

1100 C FF FS , < L \ l | , < L \ l |

1101 D CR GS � = M ] m } � = M ] m }

1110 E S0 RS . > N ^ n « . > N ^ n

1111 F S1 US / ? O _ o ~ / ? O _ o ~

Page 538: C200HALPHA Manual Programacion

Cat. No. MPC200HALPHA Nota: Especificaciones sujetas a cambios sin previo aviso. W322--E1--1 02/98 1M

P.V.P.R.: 6.000 Pts7.350 $