Está en la página 1de 498

Autómatas programables

Twido
Guía de instalación del software
TWD USE 10AS spa Version 2.0

Encontrará más informaciones en el archivo Readme


2
Tabla de materias

Información de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Acerca de este libro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Parte I Descripción de software de Twido . . . . . . . . . . . . . . . . 15


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Capítulo 1 Introducción al software Twido. . . . . . . . . . . . . . . . . . . . . . . . . 17


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Introducción a TwidoSoft. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Introducción a los lenguajes de Twido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Capítulo 2 Objetos de lenguaje Twido . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Validación de objetos de lenguaje. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Objetos de bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Objetos de palabras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Objetos flotantes y palabras dobles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Direccionamiento de objetos de bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Direccionamiento de objetos de palabra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Direccionamiento de objetos flotantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Direccionamiento de objetos de palabras dobles . . . . . . . . . . . . . . . . . . . . . . . . 37
Direccionamiento de las entradas/salidas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Direccionamiento de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Objetos de bloques de función . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Objetos estructurados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Objetos indexados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Simbolización de objetos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Capítulo 3 Memoria de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Estructura de la memoria de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Copia de seguridad y restauración sin cartucho de copia de seguridad ni memoria
ampliada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

3
Copia de seguridad y restauración con un cartucho de copia de seguridad de 32 kB
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Utilización del cartucho de memoria ampliada de 64 kB . . . . . . . . . . . . . . . . . . . 59

Capítulo 4 Modos de funcionamiento del controlador . . . . . . . . . . . . . . . 63


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Exploración cíclica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Exploración periódica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Comprobación del tiempo de ciclo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Modos de funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Comportamiento ante cortes de corriente y recuperación de alimentación. . . . . 73
Comportamiento ante un reinicio en caliente. . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Comportamiento ante un inicio en frío . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Inicialización de objetos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Capítulo 5 Gestión de las tareas de sucesos . . . . . . . . . . . . . . . . . . . . . . 81


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Presentación de las tareas de sucesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Descripción de los diferentes orígenes de sucesos. . . . . . . . . . . . . . . . . . . . . . . 83
Gestión de sucesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

Parte II Funciones especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Capítulo 6 Comunicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Vista general de los diferentes tipos de comunicaciones . . . . . . . . . . . . . . . . . . 90
Comunicaciones entre TwidoSoft y el autómata . . . . . . . . . . . . . . . . . . . . . . . . . 91
Comunicaciones de conexión remota . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Comunicaciones ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Comunicaciones Modbus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Peticiones estándar Modbus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

Capítulo 7 Funciones analógicas incorporadas . . . . . . . . . . . . . . . . . . . 147


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Potenciómetro analógico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Canal analógico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

Capítulo 8 Módulos analógicos de gestión . . . . . . . . . . . . . . . . . . . . . . . 151


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Vista general del módulo analógico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Direccionamiento de entradas y salidas analógicas . . . . . . . . . . . . . . . . . . . . . 153
Configuración de E/S analógicas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Información de estado de los módulos analógicos . . . . . . . . . . . . . . . . . . . . . . 157
Ejemplo de uso de módulos analógicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

Capítulo 9 Puesta en marcha del bus AS-Interface V2 . . . . . . . . . . . . . . 159


4
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Presentación del bus AS-Interface V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Descripción funcional general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Principios de instalación del software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Descripción de la pantalla de configuración del bus AS-Interface . . . . . . . . . . 166
Configuración del bus AS-Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Descripción de la pantalla de depuración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
Modificación de la dirección de un esclavo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Actualización de la configuración del bus AS-Interface en modo conectado . . 177
Direccionamiento automático de un slave AS-Interface V2 . . . . . . . . . . . . . . . 182
Inserción de un equipo slave en una configuración AS-Interface V2 existente 183
Sustitución automática de un slave AS-Interface V2 que presenta un fallo . . . 184
Direccionamiento de las entradas y salidas asociadas a los equipos Slaves
conectados al bus AS-Interface V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Programación y diagnóstico del bus AS-Interface V2 . . . . . . . . . . . . . . . . . . . . 187
Modo de funcionamiento del módulo de interfaz del bus AS-Interface V2 . . . . 191

Capítulo 10 Funcionamiento del monitor de operación . . . . . . . . . . . . . . 193


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Monitor de operación. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Identificación del controlador e información de estado . . . . . . . . . . . . . . . . . . . 197
Objetos y variables del sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Ajustes del puerto serie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Reloj de fecha/hora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Factor de corrección de tiempo real. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

Parte III Descripción de lenguajes de Twido . . . . . . . . . . . . . . 209


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

Capítulo 11 Lenguaje Ladder Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Introducción a los diagramas Ladder Logic. . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Principios de programación para diagramas Ladder Logic . . . . . . . . . . . . . . . . 214
Bloque de diagramas Ladder Logic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Elementos gráficos del lenguaje Ladder Logic . . . . . . . . . . . . . . . . . . . . . . . . . 220
Instrucciones Ladder Logic especiales OPEN y SHORT . . . . . . . . . . . . . . . . . 223
Consejos sobre programación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Reversibilidad de Ladder Logic/Lista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Directrices para la reversibilidad Ladder Logic/Lista. . . . . . . . . . . . . . . . . . . . . 231
Documentación del programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

Capítulo 12 Lenguaje de lista de instrucciones . . . . . . . . . . . . . . . . . . . . . 237


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Vista general de programas de lista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Operación de las instrucciones de lista. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Instrucciones del lenguaje de lista . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241

5
Utilización de paréntesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Instrucciones de stack (MPS, MRD, MPP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

Capítulo 13 Grafcet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Descripción de las instrucciones Grafcet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
Descripción de la estructura del programa Grafcet . . . . . . . . . . . . . . . . . . . . . . 255
Acciones asociadas a pasos Grafcet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

Parte IV Descripción de instrucciones y funciones . . . . . . . . . . 261


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261

Capítulo 14 Instrucciones básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
14.1 Procesamiento booleario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Instrucciones booleanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Comprensión del formato para describir instrucciones boolerias . . . . . . . . . . . 267
Instrucciones de carga (LD, LDN, LDR, LDF) . . . . . . . . . . . . . . . . . . . . . . . . . . 269
Instrucciones de asignación (ST, STN, R, S) . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Instrucciones AND lógicas (AND, ANDN, ANDR, ANDF) . . . . . . . . . . . . . . . . . 273
Instrucciones OR lógicas (OR, ORN, ORR, ORF). . . . . . . . . . . . . . . . . . . . . . . 275
OR exclusivo, instrucciones (XOR, XORN, XORR, XORF). . . . . . . . . . . . . . . . 277
Instrucción NOT (N) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
14.2 Bloques de función básicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Bloques de funciones estándar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Principios para programar bloques de función estándar . . . . . . . . . . . . . . . . . . 284
Bloque de función del temporizador (%TMi) . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Tipo de temporizador TOF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Tipo de temporizador TON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Tipo de temporizador TP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
Programación y configuración de temporizadores. . . . . . . . . . . . . . . . . . . . . . . 291
Bloque de función del contador progresivo/regresivo (%Ci) . . . . . . . . . . . . . . . 294
Programación y configuración de contadores . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Bloque de función del registro de bits de desplazamiento (%SBRi) . . . . . . . . . 300
Bloques de función del contador de pasos (%SCi) . . . . . . . . . . . . . . . . . . . . . . 303
14.3 Procesamiento numérico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
Introducción a las instrucciones numéricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
Instrucciones de asignación. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Instrucciones de comparación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
Instrucciones aritméticas con enteros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
Instrucciones lógicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Instrucciones de desplazamiento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
Instrucciones de conversión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324

6
Instrucciones de conversión de palabras simples y dobles . . . . . . . . . . . . . . . 326
14.4 Instrucciones del programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Instrucciones END. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
Instrucción NOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
Instrucciones de salto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Instrucciones de subrutina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333

Capítulo 15 Instrucciones avanzadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
15.1 Bloques de función avanzados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Objetos de palabra y de bit asociados a bloques de función avanzados . . . . . 337
Principios de programación de bloques de función avanzados . . . . . . . . . . . . 339
Bloque de función de registro LIFO/FIFO (%Ri) . . . . . . . . . . . . . . . . . . . . . . . . 342
Operación LIFO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
FIFO, funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Programación y configuración de registros . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
Bloque de función de modulación de ancho de pulso (%PWM) . . . . . . . . . . . . 349
Bloque de función de la salida del generador de pulsos (%PLS) . . . . . . . . . . . 353
Bloque de función del controlador del conmutador de tambor (%DR) . . . . . . . 356
Operación del bloque de función del controlador del conmutador de tambor %DRi
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Programación y configuración de los controladores del conmutador de tambor360
Bloque de función de contador rápido (%FC) . . . . . . . . . . . . . . . . . . . . . . . . . . 362
Bloque de función de contador muy rápido (%VFC) . . . . . . . . . . . . . . . . . . . . . 365
Transmisión/recepción de mensajes: la instrucción de intercambio (EXCH) . . 379
Bloque de función de control de intercambio (%MSGx) . . . . . . . . . . . . . . . . . . 380
15.2 Funciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Funciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Fechadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Fijación de la fecha y la hora. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
Establecimiento de la fecha y la hora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
15.3 Función PID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
Presentación general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Principio del bucle de regulación. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
Metodología de desarrollo de una aplicación de regulación . . . . . . . . . . . . . . . 398
Compatibilidad y rendimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Características detalladas de la función PID. . . . . . . . . . . . . . . . . . . . . . . . . . . 400
Acceso a la configuración del PID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Pestaña general del PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406
Pestaña IN del PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
Pestaña PID del PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Pestaña OUT del PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414

7
Acceso a la depuración del PID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Pestaña Animación del PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
Pestaña Trazado del PID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
Método de ajuste de los parámetros PID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Función e influencia de los parámetros de un PID . . . . . . . . . . . . . . . . . . . . . . 427
15.4 Instrucciones de flotantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
Instrucciones aritméticas en flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Instrucciones trigonométricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
Instrucciones de conversión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
Instrucciones de conversión Entero <-> Flotante . . . . . . . . . . . . . . . . . . . . . . . 440
15.5 Instrucciones sobre las tablas de objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
Función de suma en tablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
Función de comparación de tablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
Funciones de búsqueda en tablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
Funciones de búsqueda de valores máximos y mínimos en tablas. . . . . . . . . . 450
Número de apariciones de un valor en una tabla . . . . . . . . . . . . . . . . . . . . . . . 451
Función de desplazamiento circular en una tabla . . . . . . . . . . . . . . . . . . . . . . . 452
Función de clasificación en tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
Función de interpolación en la tabla de flotantes. . . . . . . . . . . . . . . . . . . . . . . . 456
Función de media de los valores de una tabla de flotantes . . . . . . . . . . . . . . . 457

Capítulo 16 Bits de sistema y palabras de sistema . . . . . . . . . . . . . . . . . 459


Presentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
Bits de sistema (%S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
Palabras de sistema (%SW) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467

Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479

Índice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491

8
Información de seguridad
§

Información importante

AVISO Lea atentamente estas instrucciones y observe el equipo para familiarizarse con el
dispositivo antes de instalarlo, utilizarlo o realizar su mantenimiento. Los mensajes
especiales que se ofrecen a continuación pueden aparecer a lo largo de la
documentación o en el equipo. Estos mensajes advierten de peligros potenciales u
ofrecen información que aclara o simplifica los distintos procedimientos.
La présence de ce symbole sur une étiquette de danger ou d'avertissement
indique qu'un risque d'électrocution existe, pouvant provoquer des lésions
corporelles si les instructions ne sont pas respectées.
Ceci est le symbole d'une alerte de sécurité. Il sert à vous avertir d'un danger poten-
tiel de blessures corporelles. Respectez toutes les consignes de sécurité accompa-
gnant ce symbole pour éviter toute situation potentielle de blessure ou de mort.

DANGER
La mention DANGER signifie qu'il existe une situation potentiellement dangereuse qui, si
elle n'est pas évitée, entraînera la mort, des blessures graves ou des dommages matériels.

AVERTISSEMENT
La mention AVERTISSEMENT signifie qu'il existe une situation potentiellement
dangereuse qui, si elle n'est pas évitée, peut entraîner la mort, des blessures graves
ou des dommages matériels.

ATTENTION
La mention ATTENTION signifie qu'il existe une situation potentiellement dangereuse qui,
si elle n'est pas évitée, peut entraîner des lésions corporelles ou des dommages matériels.

TWD USE 10AS 9


Información de seguridad

TENGA EN El mantenimiento de equipos eléctricos deberá ser realizado sólo por personal
CUENTA cualificado. Schneider Electric no asume las responsabilidades que pudieran surgir
como consecuencia de la utilización de este material. Este documento no es un
manual de instrucciones para personas sin formación. Las instrucciones de montaje
e instalación figuran en el Manual de referencia de hardware Twido, TWD USE
10AF.
(c) 2002 Schneider Electric. Reservados todos los derechos.

Información de Las personas responsables de la aplicación, la implementación y el uso de este


seguridad producto deben asegurarse de que se hayan tenido en cuenta todas las considera-
adicional ciones de diseño necesarias y se hayan respetado totalmente las leyes, los
requisitos de seguridad y de rendimiento, las regulaciones, los códigos y las normas
aplicables.

10 TWD USE 10AS


Información de seguridad

Advertencias y
avisos generales
ADVERTENCIA
PELIGRO DE EXPLOSIÓN

l La sustitución de los componentes puede anular la conformidad de


Clase I, Div. 2.
l No desconecte el equipo a menos que haya desconectado la
alimentación eléctrica o se cerciore de que la zona no es peligrosa.
Si no se respetan estas precauciones pueden producirse graves
lesiones, daños materiales o incluso la muerte.

ADVERTENCIA
OPERACIÓN INVOLUNTARIA DEL EQUIPO

l Desconecte la alimentación antes de instalar, desmontar, cablear o


realizar labores de mantenimiento.
l Este producto no está diseñado para su uso en condiciones
peligrosas para la seguridad. En caso de que exista riesgo para el
personal o los equipos, utilice los dispositivos de bloqueo de
seguridad adecuados.
l No desmonte, repare o modifique los módulos.
l Este controlador está diseñado para su uso dentro de una caja.
l Instale los módulos en las condiciones de funcionamiento descritas.
l Utilice la alimentación de sensores sólo para alimentar los sensores
conectados al módulo.
l Utilice un fusible aprobado por IEC60127 en la línea de alimentación
y en el circuito de salida para responder a las necesidades de
tensión y corriente. Fusible recomendado: Littelfuse 5 x 20 mm de
acción retardada, serie 218000/Tipo T.
Si no se respetan estas precauciones pueden producirse graves
lesiones, daños materiales o incluso la muerte.

TWD USE 10AS 11


Información de seguridad

12 TWD USE 10AS


Acerca de este libro

Presentación

Objeto Este es el manual de referencia de software de los controladores programables


Twido. Está compuesto por las siguientes partes principales:
l Descripción del software de programación Twido e introducción a los
fundamentos necesarios para programar controladores Twido.
l Descripción de las comunicaciones, de la gestión de las E/S analógicas, de la
puesta en marcha del módulo de interfase del bus AS-Interface y de otras
funciones especiales.
l Descripción de los lenguajes de software utilizados para crear programas Twido.
l Descripción de las instrucciones y funciones de los controladores Twido.

Campo de La información contenida en este manual sólo es aplicable a los controladores


aplicación programables Twido.

Advertencia Schneider Electric no se hace responsable de cualquier error que pudiera aparecer
en este documento. Está prohibida la reproducción de cualquier parte de este
documento, en cualquier forma o medio, incluido el electrónico, sin autorización
previa y por escrito de Schneider Electric.

Comentarios del Envíe sus comentarios a la dirección electrónica TECHCOMM@modicon.com


usuario

TWD USE 10AS 13


Acerca de este libro

14 TWD USE 10AS


Descripción de software de Twido

I
Presentación

Objeto Esta parte proporciona una introducción a los lenguajes de software y a la


información básica requerida para crear programas de control para controladores
programables Twido.

Contenido Esta parte contiene los siguientes capítulos:


Capítulo Nombre del capítulo Página
1 Introducción al software Twido 17
2 Objetos de lenguaje Twido 23
3 Memoria de usuario 51
4 Modos de funcionamiento del controlador 63
5 Gestión de las tareas de sucesos 81

TWD USE 10AS 15


Software de Twido

16 TWD USE 10AS


Introducción al software Twido

1
Presentación

Objeto Este capítulo ofrece una breve introducción a TwidoSoft, que es el software de
configuración y programación para los controladores Twido, y a Lista, Ladder Logic
y Grafcet, que son lenguajes de programación utilizados para crear programas de
control.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Introducción a TwidoSoft 18
Introducción a los lenguajes de Twido 19

TWD USE 10AS 17


Lenguajes de software Twido

Introducción a TwidoSoft

Introducción TwidoSoft es un entorno de desarrollo gráfico para crear, configurar y mantener


aplicaciones para autómatas programables Twido. TwidoSoft le permite crear
programas con distintos tipos de lenguaje (Véase Lenguajes Twido, p. 19), después
de transferir la aplicación para que se ejecute en un autómata.

TwidoSoft TwidoSoft es un programa basado en Windows de 32 bits para un ordenar personal


(PC) que se ejecute bajo los sistemas operativos Microsoft Windows 98 segunda
edición, Microsoft Windows 2000 Professional o Microsoft Windows XP.
Las principales funciones del software TwidoSoft son:
l Interfase de usuario estándar de Windows
l Programación y configuración de autómatas Twido
l Control y comunicaciones del autómata

Nota: La conexión entre el autómata y el PC utiliza el protocolo TCP/IP. Es


obligatorio que este protocolo esté instalado en el PC.

Configuración La configuración mínima necesaria para utilizar TwidoSoft es la siguiente:


mínima l Pentium a 300MHz,
l 128 MB de RAM,
l 40 MB de espacio disponible en el disco duro.

18 TWD USE 10AS


Lenguajes de software Twido

Introducción a los lenguajes de Twido

Introducción Un controlador programable lee entradas, escribe salidas y resuelve lógica basada
en un programa de control. Crear un programa de control para un controlador Twido
consiste en escribir una serie de instrucciones en uno de los lenguajes de
programación de Twido.

Lenguajes Twido Para crear programas de control Twido se pueden utilizar los siguientes lenguajes
de programación:
l Lenguaje de lista de instrucciones:
Un programa de lista de instrucciones se compone de una serie de expresiones
lógicas escritas como una secuencia de instrucciones boolearias.
l Diagramas Ladder Logic:
Un diagrama Ladder Logic es una forma gráfica de mostrar una expresión lógica.
l Lenguaje Grafcet:
El lenguaje grafcet está compuesto por una sucesión de pasos y transiciones.
Twido admite las instrucciones de lista Grafcet, pero no Grafcet gráfico.
Puede utilizar un ordenador personal (PC) para crear y editar programas de control
Twido mediante estos lenguajes de programación.
La función de reversibilidad de Lista/Ladder Logic permite pasar un programa de
Lista a Ladder Logic y viceversa, según convenga.

TWD USE 10AS 19


Lenguajes de software Twido

Lenguaje de lista Programa escrito en el lenguaje de la lista de instrucciones, compuesto por una
de instrucciones serie de instrucciones ejecutadas de forma secuencial por el autómata. A
continuación, se muestra un ejemplo de programa en lenguaje de lista de
instrucciones.

0 BLK %C8
1 LDF %I0.1
2 R
3 LD %I0.2
4 AND %M0
5 CU
6 OUT_BLK
7 LD D
8 AND %M1
9 ST %Q0.4
10 END_BLK

Diagramas Los diagramas Ladder Logic emplean la misma representación gráfica que la de los
Ladder Logic circuitos de relé en lógica de relé. En dichos esquemas, los elementos gráficos,
como las bobinas, los contactos y los bloques, representan las instrucciones del
programa. A continuación, se muestra un ejemplo de diagrama Ladder Logic.

%I0.1 %C8
N R E
%M1 %Q0.4
S ADJ Y D
%I0.2 %M0 %C8.P 777
CU F

CD

20 TWD USE 10AS


Lenguajes de software Twido

Lenguaje Grafcet El método analítico Grafcet divide cualquier sistema de control secuencial en una
serie de pasos a los que se asocian acciones, transiciones y condiciones. La
ilustración que aparece a continuación muestra ejemplos de instrucciones Grafcet
en programas Lista y Ladder Logic respectivamente.

0 -*- 3
1 LD %M10
2 # 4
3 # 5
4 -*- 4
5 LD %I0.7
6 # 6
7 -*- 5
8 LD %M15
9 # 7
10 ...

--*-- 3

%M10 4

#
--*-- 4

%I0.7 6

--*-- 5

%M15 7

TWD USE 10AS 21


Lenguajes de software Twido

22 TWD USE 10AS


Objetos de lenguaje Twido

2
Presentación

Objeto Este capítulo contiene información detallada acerca de los objetos de lenguaje
utilizados para programar controladores Twido.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Validación de objetos de lenguaje 24
Objetos de bit 25
Objetos de palabras 27
Objetos flotantes y palabras dobles 30
Direccionamiento de objetos de bit 34
Direccionamiento de objetos de palabra 35
Direccionamiento de objetos flotantes 36
Direccionamiento de objetos de palabras dobles 37
Direccionamiento de las entradas/salidas 38
Direccionamiento de red 41
Objetos de bloques de función 42
Objetos estructurados 44
Objetos indexados 48
Simbolización de objetos 50

TWD USE 10AS 23


Objetos de lenguaje Twido

Validación de objetos de lenguaje

Introducción Los objetos de bit y de palabra son válidos si se les ha asignado espacio de
memoria en el controlador. Para ello, se deben utilizar en la aplicación antes de
descargarlos en el controlador.

Ejemplo El rango de objetos válidos oscila entre cero y la referencia máxima para ese tipo
de objeto. Por ejemplo, si la referencia máxima de su aplicación para palabras de
memoria es %MW9, entonces está asignado el espacio de %MW0 a %MW9. En
este ejemplo, %MW10 no es válido y no se puede acceder a él ni interna ni
externamente.

24 TWD USE 10AS


Objetos de lenguaje Twido

Objetos de bit

Introducción Los objetos de bit son variables de software de tipo bit que se pueden utilizar como
operandos y verificar mediante instrucciones boolearias. A continuación se ofrece
una lista de objetos de bit.
l Bits de E/S
l Bits internos (bits de memoria)
l Bits de sistema
l Bits de pasos
l Bits extraídos de palabras

Lista de bits de En la tabla siguiente se enumeran y describen todos los objetos de bit principales
operandos que se utilizan como operandos en instrucciones boolearias.
Tipo Descripción Dirección o Número Acceso de
valor máximo escritura
(1)
Valores 0 ó 1 (False o True) 0o1 - -
inmediatos
Entradas Estos bits son las "imágenes %Ix.y.z (2) Nota (4) No
Salidas lógicas" de los estados eléctricos %Qx.y.z (2) sí
de las E/S. Se almacenan en la
memoria de datos y se actualizan
durante cada ciclo de la lógica
del programa.
Interna Los bits internos son áreas de %Mi 128 sí
(memoria) memoria internas utilizadas para TWDLCAA10
almacenar valores intermedios DRF,
durante la ejecución de un TWDLCAA16
programa. DRF
Nota: Los bits de E/S no 256 Todos los
utilizados no se pueden emplear demás
como bits internos. autómatas
Sistema Los bits de sistema %S0 a %Si 128 Según i
%S127 supervisan el
funcionamiento correcto del
controlador y la correcta
ejecución del programa de
aplicación.

TWD USE 10AS 25


Objetos de lenguaje Twido

Tipo Descripción Dirección o Número Acceso de


valor máximo escritura
(1)
Bloques de Los bits de bloques de función %TMi.Q, Nota (4) No (3)
función corresponden a las salidas de los %Ci.P, etc.
bloques de función.
Estas salidas pueden estar
conectadas directamente o ser
utilizadas como un objeto.
Bloques de Bloques de función programados E, D, F, Q, Nota (4) No
función mediante las instrucciones de TH0, TH1
reversibles programación reversibles BLK,
OUT_BLK y END_BLK.
Extractos de Uno de los 16 bits de algunas Variable Variable Variable
palabras palabras se puede extraer como
bit de operando.
Pasos Los bits de %X1 a %Xi están %X21 62 sí
Grafcet asociados a pasos Grafcet. El bit TWDLCAA10
de pasos Xi se pone a 1 cuando DRF,
el paso correspondiente está TWDLCAA16
activo. Se pone a 0 cuando el DRF
paso se desactiva. 94
TWDLCAA24
DRF,
Autómatas
modulares

Leyendas:
1. Escrito por el programa o mediante el editor de tablas de animación.
2. Consulte el direccionamiento de E/S.
3. Excepto en el caso de %SBRi.j y %SCi.j, estos bits se pueden leer y escribir.
4. El número está determinado por el modelo del controlador.

26 TWD USE 10AS


Objetos de lenguaje Twido

Objetos de palabras

Introducción Objetos de palabras enviados en forma de palabras de 16 bits, almacenados en la


memoria de datos y que pueden contener un valor entero de entre –32.768 y 32.767
(excepto para el bloque de función de contador rápido [FC], que está entre 0 y
65.535).
Ejemplos de objetos de palabras:
l Valores inmediatos
l Palabras internas (%MWi) (palabras de memoria)
l Palabras constantes (%KWi)
l Palabras de intercambios de E/S (%IWi, %QWi)
l Palabras de sistema (%SWi)
l Bloques de función (datos de ejecución o configuración)

Formatos de El contenido de las palabras o los valores se almacena en la memoria de usuario


palabra como un código binario de 16 bits (complemento de dos) mediante la convención
que aparece a continuación:

Posición del bit


F E D C B A 9 8 7 6 5 4 3 2 1 0
0 1 0 1 0 0 1 0 0 1 0 0 1 1 0 1 Estado del bit
16384
8192
4096
2048
1024
512
256
128
64
32
16
|+

Valor del bit


8
4
2
1

En la notación binaria con signo, el bit 15 se asigna por convención al signo del valor
codificado:
l El bit 15 es igual a 0: el contenido de la palabra es un valor positivo.
l El bit 15 es igual a 1: el contenido de la palabra es un valor negativo (los valores
negativos se expresan en lógica de complemento de dos).
Las palabras y los valores inmediatos se pueden introducir o recuperar en los
formatos siguientes:
l Decimal
Mín.: -32.768, máx.: 32.767 (por ejemplo, 1579)
l Hexadecimal
Mín.: 16#0000, máx.: 16#FFFF (por ejemplo, 16#A536)
Sintaxis alternativa: #A536

TWD USE 10AS 27


Objetos de lenguaje Twido

Descripción de En la siguiente tabla se describen los objetos de palabras.


los objetos de
Palabras Descripción Dirección o Número Acceso de
palabras
valor máximo escritura
(1)
Valores Se trata de enteros cuyo formato - No
inmediatos es igual al de las palabras de 16
bits. Esto permite atribuir valores
a dichas palabras.
Base 10 -32768 à
32767
Base 16 De 16#0000
a 16#FFFF
Interna Palabras empleadas para %MWi 3000 Sí
(memoria) almacenar valores durante la
operación en la memoria de
datos. Las palabras de %MW0 a
%MW255 se leen o escriben
directamente mediante el
programa.
Constante Almacenan constantes o %KWi 256 Sí,
mensajes alfanuméricos. Su sólo
contenido sólo se puede escribir o mediante
modificar mediante TwidoSoft y TwidoSoft
durante la configuración. El
programa sólo puede acceder en
modo lectura a las palabras
constantes de %KW0 a %KW63.
Sistema Estas palabras de 16 bits ofrecen %SWi 128 Según i
diversas funciones:
l Proporcionan acceso a los
datos que proceden
directamente del autómata
mediante la lectura de las
palabras %SWi.
l Realizan operaciones en la
aplicación (por ejemplo, el
ajuste de fechadores).
Bloques de Estas palabras corresponden a %TM2.P, Sí
función los valores o parámetros actuales %Ci.P, etc.
de los bloques de función.

28 TWD USE 10AS


Objetos de lenguaje Twido

Palabras Descripción Dirección o Número Acceso de


valor máximo escritura
(1)
Palabras de Asignadas a autómatas
intercambio conectados como conexiones
de escalón remotas. Estas palabras se
utilizan para la comunicación
entre los autómatas:
Entrada de escalón %INWi.j Cuatro por No
cada
conexión
remota
Salida de escalón %QNWi.j Cuatro por Sí
cada
conexión
remota
Palabras de Asignadas a los autómatas
intercambios conectados como conexiones
de E/S remotas. Estas palabras se
utilizan para la comunicación
entre el autómata y el módulo de
E/S.
Entradas %IWi.j Nota (2) No
Salidas %QWi.j Nota (2) Sí
Bits Es posible extraer uno de los 16
extraídos bits de las siguientes palabras:.
Interno %MWi:Xk 1500 Sí
Sistema %SWi:Xk 128 Depende de
i
Constante %KWi:Xk 64 No
Entrada %IWi.j:Xk Nota (2) No
Salida %QWi.j:Xk Nota (2) Sí
Entrada de escalón %INWi.j:Xk Nota (2) No
Salida de escalón %QNWi.j:Xk Nota (2) Sí

Nota:
1. Escrito por el programa o mediante el editor de tablas de animación.
2. El número está determinado por la configuración.

TWD USE 10AS 29


Objetos de lenguaje Twido

Objetos flotantes y palabras dobles

Introducción El software TwidoSoft permite realizar operaciones en objetos flotantes y palabras


dobles enteras.
Un flotante es un argumento matemático que posee un decimal en su expresión
(ejemplos: 3.4E+38, 2.3 o 1.0).
Una palabra doble entera está formada por cuatro bytes almacenados en la
memoria de datos y que pueden contener un valor entero comprendido entre -
2147483648 y +2147483647.

Formato y valor El formato utilizado es el de la norma IEEE STD 734-1985 (equivalencia IEC 559).
del flotante La longitud de las palabras es de 32 bits, lo que corresponde a números flotantes
de simple precisión.
Tabla que representa el formato de un flotante:
Bit 31 Bits {30...23} Bits {22...0}
S Exponente Mantisa

El valor de este formato está determinado por la siguiente ecuación:


S ( Exposant – 127 )
Valor flotante de 32-bit = ( – 1 ) * 2 * 1.mantisa
Los valores flotantes se pueden representar con o sin exponente; deben llevar
siempre un punto (coma flotante).
Los valores flotantes están comprendidos entre -3.402824e+38 y -1.175494e-38 ;
1.175494e-38 y 3.402824e+38 (valores en gris en el esquema). Llevan también el
valor 0 anotado como 0.0
.
-1.#INF -1.#DN 1.#DN 1.#INF

-3.402824e+38 -1.175494e-38 0 +1.175494e-38 +3.402824e+38

Cuando el resultado de un cálculo:


l Es inferior a -3.402824e+38, aparece el símbolo -1.#INF (para - infinito)
l Es superior a +3.402824e+38, aparece el símbolo 1.#INF (para + infinito)
l Está comprendido entre -1.175494e-38 y 1.175494e-38, se redondea a 0.0. Un
valor comprendido dentro de estos límites no puede introducirse como valor
flotante.
l Es imaginario (la raíz cuadrada de un número negativo) o aparece el símbolo
1.#NAN o -1.#NAN.
La precisión de la representación es de 2-24. Para visualizar un número flotante, es
inútil mostrar más de 6 cifras después de la coma.

30 TWD USE 10AS


Objetos de lenguaje Twido

Nota:
l El valor "1285" se interpreta como valor entero; para tenerse en cuenta como
valor flotante, debe escribirse: "1285.0"

Compatibilidad Las operaciones con flotantes y palabras dobles no se pueden realizar en todos los
de hardware autómatas Twido.
La tabla siguiente explica la compatibilidad de hardware:
Autómata Twido Palabras Flotantes
dobles admitidos
admitidas
TWDLMDA40DUK Sí Sí
TWDLMDA40DTK Sí Sí
TWDLMDA20DUK Sí No
TWDLMDA20DTK Sí No
TWDLMDA20DRT Sí Sí
TWDLCAA24DRF Sí No
TWDLCAA16DRF Sí No
TWDLCAA10DRF No No

Control de El bit de sistema %S18 se sitúa en 1 cuando el resultado no se encuentra dentro de


validez los límites válidos.
Los bits de la palabra de estado %SW17 indican la causa de un fallo en una
operación flotante:
Diferentes bits de la palabra %SW17:
%SW17:X0 Operación no válida, el resultado no es un número (1.#NAN o -1.#NAN)
%SW17:X1 Reservado
%SW17:X2 División por 0, el resultado es infinito (-1.#INF o 1.#INF)
%SW17:X3 Resultado superior en valor absoluto a +3.402824e+38, el resultado es infinito
(-1.#INF o 1.#INF)
%SW17:X4 Reservado
a X15

El sistema vuelve a poner a 0 esta palabra en el arranque en frío y el programa


también, para volverla a utilizar.

TWD USE 10AS 31


Objetos de lenguaje Twido

Descripción de La tabla siguiente describe los objetos flotantes y las palabras dobles:
objetos flotantes
y palabras
dobles
Tipo de objeto Descripción Direcció Número Acceso de Forma indexada
n máximo escritura
Valores inmediatos Enteros o decimales de - [-] No -
formato idéntico al de los
objetos de 32 bits.
Flotante interno Objetos empleados para %MFi 1500 Sí %MFi[index]
Palabra doble interna almacenar valores durante %MDi 1500 Sí %MDi[index]
la operación en la memoria
de datos.
Constante flotante Memorización de las %KFi 128 Sí, sólo con %KFi[index]
constantes. TwidoSoft
Constante doble %KDi 128 Sí, sólo con %KDi[index]
TwidoSoft

32 TWD USE 10AS


Objetos de lenguaje Twido

Posibilidad de Las palabras simples, de doble longitud y flotantes se guardan en el interior del
solapamiento espacio de datos en una misma zona de memoria. Así, la palabra flotante %MFi y
entre objetos la palabra doble %Mdi se corresponden con las palabras de longitud simple %MWi
y %MWi+1 (la palabra %MWi contiene las menos significativas y la palabra
%MWi+1 las más significativas de la palabra %MFi).
La tabla siguiente muestra el solapamiento de flotantes y palabras dobles internas:
Flotante y Dirección Palabras
doble impar internas
%MF0 / %MW0
%MD0 %MF1 / %MW1
%MF2 / %MD1 %MW2
%MD2 %MF3 / %MW3
%MF4 / %MD3 %MW4
%MD4 ... %MW5
... ...
%MFi / %MWi
%MFi+1 / %MDi %MWi+1
%MDi+1

La tabla siguiente muestra el solapamiento de constantes flotantes y dobles:


Flotante y Dirección Palabras
doble impar internas
%KF0 / %KW0
%KD0 %KF1 / %KW1
%KF2 / %KD1 %KW2
%KD2 %KF3 / %KW3
%KF4 / %KD3 %KW4
%KD4 ... %KW5
... ...
%kFi / %KWi
%KFi+1 / %kDi %KWi+1
%KDi+1

Ejemplo:
%MF0 corresponde a %MW0 y %MW1. %KF543 corresponde a %KW543 y
%KW544.

TWD USE 10AS 33


Objetos de lenguaje Twido

Direccionamiento de objetos de bit

Sintaxis Utilice el siguiente formato para direccionar objetos de bit de pasos, de sistema e
internos.

% M, S o X i

Símbolo Tipo de objeto Número

Descripción La siguiente tabla describe los elementos en formato de direccionamiento.


Grupo Elemento Descripción
Símbolo % El símbolo de porcentaje siempre precede a una variable de
software.
Tipo de M Los bits internos almacenan valores intermedios mientras se
objeto está ejecutando un programa.
S Los bits de sistema proporcionan información de control y de
estado del controlador.
X Los bits de pasos proporcionan información de estado de las
actividades de pasos.
Número i El valor numérico máximo depende del número de objetos
configurados.

Ejemplos de direcciones de objetos de bit:


l %M25 = bit interno número 25
l %S20 = bit de sistema número 20
l %X6 = bit de pasos número 6

Objetos de bit TwidoSoft se utiliza para extraer uno de los 16 bits de las palabras. La dirección de
extraídos de la palabra se completa mediante la fila de bit extraída de acuerdo con la sintaxis
palabras siguiente.

PALABRA X k

Dirección de palabra Posición k = rango de bits 0 - 15


en la dirección de palabra.

Ejemplos:
l %MW5:X6 = bit número 6 de la palabra interna %MW5
l %QW5.1:X10 = bit número 10 de la palabra de salida %QW5.1

34 TWD USE 10AS


Objetos de lenguaje Twido

Direccionamiento de objetos de palabra

Introducción El direccionamiento de los objetos de palabras debe contener la sintaxis descrita a


continuación. Tenga en cuenta que esta sintaxis no se aplica al direccionamiento
de E/S (consulte el capítulo Direccionamiento de las entradas/salidas, p. 38) y
bloques de funciones (consulte el capítulo Objetos de bloques de función, p. 42).

Sintaxis Utilice el siguiente formato para direccionar palabras del sistema, internas y
constantes:

% M, K o S W i

Símbolo Tipo de Sintaxis Número


objeto

Descripción La siguiente tabla describe los elementos en formato de direccionamiento.


Grupo Elemento Descripción
Símbolo % El símbolo de porcentaje siempre precede a una
dirección interna.
Tipo de objeto M Las palabras internas almacenan valores intermedios
mientras se está ejecutando un programa.
K Las palabras constantes almacenan valores constantes
o mensajes alfanuméricos. Su contenido sólo puede
sobrescribirse o modificarse utilizando TwidoSoft.
S Las palabras de sistema proporcionan información de
control y de estado del controlador.
Sintaxis W Palabra de 16 bits.
Número i El valor numérico máximo depende del número de
objetos configurados.

Ejemplos de direccionamiento de objetos de palabra:


l %MW15 = número de palabra interna 15
l %KW26 = número de palabra constante 26
l %SW30 = número de palabra de sistema 30

TWD USE 10AS 35


Objetos de lenguaje Twido

Direccionamiento de objetos flotantes

Introducción El direccionamiento de los objetos flotantes debe contener la sintaxis descrita a


continuación. Tenga en cuenta que esta sintaxis no se aplica al direccionamiento
de E/S (consulte el capítulo Direccionamiento de las entradas/salidas, p. 38) y
bloques de funciones (consulte el capítulo Objetos de bloques de función, p. 42).

Sintaxis Utilice el siguiente formato para direccionar flotantes internas y constantes:

% MoK F i

Símbolo Tipo de objeto Sintaxis Número

Descripción La siguiente tabla describe los elementos en formato de direccionamiento.


Grupo Elemento Descripción
Símbolo % El símbolo de porcentaje siempre precede a una
dirección interna.
Tipo de objeto M Las flotantes internas almacenan valores intermedios
mientras se está ejecutando un programa.
K Las flotantes constantes permiten almacenar valores
constantes. Su contenido sólo puede sobrescribirse o
modificarse utilizando TwidoSoft.
Sintaxis F Objeto de 32 bits.
Número i El valor numérico máximo depende del número de
objetos configurados.

Ejemplos de direccionamiento de objetos flotantes:


l %MF15 = número de flotante interna 15
l %KF26 = número de flotante constante 26

36 TWD USE 10AS


Objetos de lenguaje Twido

Direccionamiento de objetos de palabras dobles

Introducción El direccionamiento de los objetos de palabras dobles debe contener la sintaxis


descrita a continuación. Tenga en cuenta que esta sintaxis no se aplica al direccio-
namiento de E/S (consulte el capítulo Direccionamiento de las entradas/salidas,
p. 38) y bloques de funciones (consulte el capítulo Objetos de bloques de función,
p. 42).

Sintaxis Utilice el siguiente formato para direccionar palabras dobles internas y constantes:

% MoK D i

Símbolo Tipo de objeto Sintaxis Número

Descripción La siguiente tabla describe los elementos en formato de direccionamiento.


Grupo Elemento Descripción
Símbolo % El símbolo de porcentaje siempre precede a una
dirección interna.
Tipo de objeto M Las palabras dobles internas permiten almacenar
valores intermedios mientras se está ejecutando un
programa.
K Las palabras dobles constantes permiten almacenar
valores constantes o mensajes alfanuméricos. Su
contenido sólo puede sobrescribirse o modificarse
utilizando TwidoSoft.
Sintaxis D Palabra doble de 32 bits.
Número i El valor numérico máximo depende del número de
objetos configurados.

Ejemplos de direccionamiento de objetos de palabras dobles:


l %MD15 = número de palabra doble interna 15
l %KD26 = número de palabra doble constante 26

TWD USE 10AS 37


Objetos de lenguaje Twido

Direccionamiento de las entradas/salidas

Introducción Cada punto de entrada/salida (E/S) de una configuración Twido tiene una única
dirección: Por ejemplo, la dirección "%I0.0.4" sólo representa la entrada 4 de un
autómata.
Las direcciones de E/S pueden asignarse para el siguiente hardware:
l Controlador configurado como master de conexión remota
l Controlador configurado como E/S remota
l Módulos de E/S de ampliación
El módulo de interfase del bus AS-Interface TWDNOI10M3 dispone de un direccio-
namiento específico de las entradas/salidas de sus equipos slaves (Véase
Direccionamiento de las entradas y salidas asociadas a los equipos Slaves
conectados al bus AS-Interface V2, p. 185).

Varias En un programa pueden existir varias referencias a una sola salida o bobina. Sólo
referencias a una se actualiza el resultado de la última referencia resuelta en las salidas de hardware.
salida o bobina Por ejemplo, %Q0.0.0 se puede utilizar más de una vez en un programa y no se
mostrará ningún mensaje de advertencia para indicar que esta referencia aparece
de forma múltiple. Por ello, es importante validar sólo la ecuación que dará como
resultado el estado deseado de la salida.

AVISO
Operación involuntaria
No se realiza ninguna advertencia o comprobación de salida duplicada.
Compruebe el uso de las salidas o bobinas antes de realizar cambios
en las mismas dentro de la aplicación.
Si no se respetan estas precauciones pueden producirse graves
lesiones o daños materiales

38 TWD USE 10AS


Objetos de lenguaje Twido

Formato Utilice el siguiente formato para direccionar las entradas/salidas.


% I, Q x . y . z
Símbolo Tipo de Posición del Punto Tipo Punto Número de canal
objeto controlador de E/S

Utilice el siguiente formato para direccionar las palabras de intercambio de entrada/


salida.
% I, Q W x . y
Símbolo Tipo de Formato Posición del Punto Tipo de E/S
objeto controlador

Descripción En la tabla siguiente se describe el formato de direccionamiento de E/S.


Grupo Elemento Valor Descripción
Símbolo % - El símbolo de porcentaje siempre precede a una
dirección interna.
Tipo de objeto I - Entrada. La "imagen lógica" del estado eléctrico
de un controlador o entrada del módulo de E/S
de ampliación.
Q - Salida. La "imagen lógica" del estado eléctrico de
un controlador o salida del módulo de E/S de
ampliación.
Posición del x 0 Controlador master (master de conexión
controlador 1-7 remota).
Controlador remoto (slave de conexión remota).
Tipo de E/S y 0 Unidad de E/S (E/S local del controlador).
1-7 Módulos de E/S de ampliación.
Número de z 0 - 31 Número de canal de E/S en el módulo de E/S de
canal ampliación o el controlador. El número de puntos
de E/S disponibles depende del modelo de
controlador o del tipo de módulo de E/S de
ampliación.

TWD USE 10AS 39


Objetos de lenguaje Twido

Ejemplos La tabla siguiente contiene algunos ejemplos de direccionamiento de E/S.


Objeto de E/S Descripción
%I0.0.5 Punto de entrada número 5 en el controlador base (E/S local).
%Q0,30,4 Salida número 4 en el módulo de E/S de ampliación en la dirección
3 para el autómata base (E/S de ampliación).
%I0.0.3 Punto de entrada número 3 en el controlador base.
%I3.0.1 Entrada número 1 en el autómata de E/S remotas en la dirección de
conexión remota número 3.
%I0.3.2 Entrada número 2 en el módulo de E/S de ampliación en la dirección
número 3 para el autómata base.

40 TWD USE 10AS


Objetos de lenguaje Twido

Direccionamiento de red

Introducción En una red de conexión remota Twido, los datos de aplicación se intercambian
mediante las palabras de red %INW y %QNW entre controladores Peer y el
controlador master. Para obtener más información al respecto, consulte "Comunica-
ciones, p. 89".

Formato Utilice el siguiente formato para el direccionamiento de red.


% IN,QN W x . j
Símbolo Tipo de objeto Formato Posición del Punto Palabra
controlador

Descripción de En la tabla que aparece a continuación se describe el formato de direccionamiento


formato de red.
Grupo Elemento Valor Descripción
Símbolo % - El símbolo de porcentaje siempre precede a una
dirección interna.
Tipo de objeto IN - Palabra de entrada de red. Transferencia de
datos de master a Peer.
QN - Palabra de salida de red. Transferencia de datos
de Peer a master.
Formato W - Palabra de 16 bits.
Posición del x 0 Controlador master (master de conexión
controlador 1-7 remota).
Controlador remoto (slave de conexión remota).
Palabra j 0-3 Cada controlador Peer utiliza entre una y cuatro
palabras para intercambiar datos con el
controlador master.

Ejemplos La tabla que aparece a continuación contiene algunos ejemplos de direcciona-


miento de red.
Objeto de red Descripción
%INW3.1 Palabra de red número 1 del controlador remoto número 3.
%QNW0.3 Palabra de red número 3 del controlador base.

TWD USE 10AS 41


Objetos de lenguaje Twido

Objetos de bloques de función

Introducción Los bloques de función proporcionan objetos de bit y palabras específicas a las que
puede acceder el programa.

Ejemplo de un En la siguiente ilustración representa un bloque de función de contador.


bloque de
función
%Ci
R E

S D
ADJ Y
%Ci.P 9999
CU

CD F

Bloque del contador


progresivo/regresivo

Objetos de bit Los objetos de bit corresponden a las salidas de bloque. A estos bits pueden
acceder las instrucciones de verificación booleanas a través de uno de los métodos
siguientes:
l Directamente (por ejemplo, LD E) si están cableados al bloque en programación
reversible (consulte "Principios para programar bloques de función estándar,
p. 284").
l Especificando el tipo de bloque (por ejemplo, LD %Ci.E).
Puede accederse a las entradas en forma de instrucciones.

Objetos de Los objetos de palabra corresponden a parámetros especificados y a valores del


palabra siguiente modo:
l Parámetros de configuración de bloques: se puede acceder a algunos
parámetros a través del programa (por ejemplo, parámetros de preselección) y a
otros no (por ejemplo, base de tiempo).
l Valores actuales: por ejemplo, %Ci.V, el valor de conteo actual.

42 TWD USE 10AS


Objetos de lenguaje Twido

Objetos Consulte las secciones siguientes para obtener una lista de los objetos accesibles
accesibles a a través del programa.
través del l Para los bloques de función básicos, consulte "Bloques de funciones estándar,
programa p. 282".
l Para los bloques de función avanzados, consulte Objetos de palabra y de bit
asociados a bloques de función avanzados, p. 337.

TWD USE 10AS 43


Objetos de lenguaje Twido

Objetos estructurados

Introducción Los objetos estructurados son combinaciones de objetos adyacentes. Twido admite
los siguientes tipos de objetos estructurados:
l Cadenas de bits
l Tablas de palabras
l Tablas de palabras dobles
l Tabla de flotantes

Cadenas de bits Las cadenas de bits son series de bits de objetos adyacentes del mismo tipo y con
una longitud definida (L).
Ejemplo: Cadena de bit %M8:6

%M8 %M9 %M10 %M11 %M12 %M13

Nota: %M8:6 es aceptable (8 es múltiplo de 8), pero %M10:16 no es aceptable (10


no es múltiplo de 8).

Las cadenas de bits se pueden utilizar con la instrucción de asignación (consulte


"Instrucciones de asignación, p. 309").

44 TWD USE 10AS


Objetos de lenguaje Twido

Tipos de bits Tipos de bits disponibles para cadenas de bits:


disponibles
Tipo Dirección Tamaño máximo Acceso de
escritura
Bits de entrada %I0.0:L o %I1.0:L (1) 0<L<17 No
digital
Bits de salida digital %Q0.0:L o %Q1.0:L (1) 0<L<17 Sí
Bits de sistema %Si:L 0<L<17 e i+L≤ 128 En función de i
con i múltiplo de 8
Bits de pasos %Xi:L 0<L<17 e i+L≤ 95 (2) Sí (por el
Grafcet con i múltiplo de 8 programa)
Bits internos %Mi:L 0<L<17 e i+L≤ 256 (3) Sí
con i múltiplo de 8

Leyenda :
1. Sólo se pueden leer los bits de E/S 0 a 16 en cadena de bits. En los autómatas
con 24 entradas y los módulos de 32 entradas/salidas, los bits de más de 16 no
pueden leerse en cadena de bits.
2. El valor máximo de i+L para los autómatas TWWDLCAA10DRF y
TWDLCAA16DRF es de 62.
3. El valor máximo de i+L para los autómatas TWWDLCAA10DRF y
TWDLCAA16DRF es de 128.

Tablas de Las tablas de palabras son series de palabras adyacentes del mismo tipo y con una
palabras longitud definida (L).
Ejemplo:Tabla de palabras %KW10:7

%KW10 16 bits

%KW16

Las tablas de palabras se pueden utilizar con la instrucción de asignación (consulte


"Instrucciones de asignación, p. 309").

TWD USE 10AS 45


Objetos de lenguaje Twido

Tipos de Tipos de palabras disponibles para tablas de palabras:


palabras
Tipo Dirección Tamaño máximo Acceso de
disponibles
escritura
Palabras internas %MWi:L 0<L<256 e i+L< 3000 Sí
Palabras %KWi:L 0<L<256 e i+L< 256 No
constantes
Palabras de %SWi:L 0<L e i+L<128 En función de i
sistema

Tablas de Las tablas de palabras dobles son series de palabras adyacentes del mismo tipo y
palabras dobles con una longitud definida (L).
Ejemplo:Tablas de palabras dobles %KD10:7

%KD10 32 bits

%KD22

Las tablas de palabras dobles se pueden utilizar con la instrucción de asignación


(consulte "Instrucciones de asignación, p. 309").

Tipos de Tipos de palabras disponibles para tablas de palabras dobles:


palabras dobles
Tipo Dirección Tamaño máximo Acceso de
disponibles
escritura
Palabras internas %MDi:L 0<L<256 e i+L< 3000 Sí
Palabras %KDi:L 0<L e i+L< 256 No
constantes

46 TWD USE 10AS


Objetos de lenguaje Twido

Tabla de Las tablas de flotantes son series de palabras adyacentes del mismo tipo y con una
flotantes longitud definida (L).
Ejemplo: Tabla de flotantes %KF10:7

%KF10 32 bits

%KF22

Las tablas de flotantes se pueden utilizar con la instrucción de asignación (consulte


"Instrucciones avanzadas").

Tipos de Tipos de palabras disponibles para tablas de flotantes:


flotantes
Tipo Dirección Tamaño máximo Acceso de
disponibles
escritura
Palabras internas %MFi:L 0<L<256 e i+L< 3000 Sí
Palabras %KFi:L 0<L e i+L<256 No
constantes

TWD USE 10AS 47


Objetos de lenguaje Twido

Objetos indexados

Introducción Un objeto indexado es una palabra, una palabra doble o flotante, interna o
constante, que contiene la dirección de un objeto indexado. Existen dos tipos de
direccionamiento de objetos:
l Direccionamiento directo
l Direccionamiento indexado

Direcciona- La dirección directa de un objeto se ajusta y se define cuando se escribe un


miento directo programa.
Ejemplo: %M26 es un bit interno con la dirección directa 26.

Direcciona- La indexación de la dirección de un objeto permite modificar la dirección mediante


miento indexado la adición de un índice a la dirección directa de un objeto. El contenido del índice se
añade a la dirección directa del objeto. El índice se define mediante una palabra
interna %MWi. El número de "palabras indexadas" es ilimitado.
Ejemplo: %MW108[%MW2] es una palabra con una dirección compuesta por la
dirección directa 108 más el contenido de la palabra %MW2.
Si la palabra %MW2 tiene un valor de 12, escribir en %MW108[%MW2] es igual que
escribir en %MW120 (108 + 12).

48 TWD USE 10AS


Objetos de lenguaje Twido

Objetos A continuación, se enumeran los tipos de objetos disponibles para el direcciona-


disponibles para miento indexado.
el direcciona-
Tipo Dirección Tamaño máximo Acceso de
miento indexado
escritura
Palabras internas %MWi[MWj] 0≤ i+%MWj<3000 Sí
Palabras constantes %KWi[%MWj] 0≤ i+%MWj<256 No
Palabras dobles %MDi[MWj] 0≤ i+%MWj<2999 Sí
internas
Palabras dobles %KDi[%MWj] 0≤ i+%MWj<255 No
constantes
Flotantes internas %MFi[MWj] 0≤ i+%MWj<2999 Sí
Flotantes constantes %KFi[%MWj] 0≤ i+%MWj<255 No

Los objetos indexados se pueden utilizar con las instrucciones de asignación


(consulte Instrucciones de asignación, p. 309 para palabras y palabras dobles) y en
instrucciones de comparación (consulte Instrucciones de comparación, p. 314 para
palabras y palabras dobles). Este tipo de direccionamiento permite explorar de
forma sucesiva series de objetos del mismo tipo (como palabras internas o
constantes) modificando el contenido del objeto indexado a través del programa.

Bit de sistema de El desborde de índice se produce cuando la dirección de un objeto indexado excede
desborde de los límites de la zona de memoria que contiene el mismo tipo de objeto. En
índice %S20 resumen:
l La dirección del objeto más el contenido del índice es menor que 0.
l La dirección del objeto más el contenido del índice es mayor que la palabra de
mayor tamaño direccionada directamente en la aplicación. El número máximo es
2999 (para las palabras %MWi) o 255 (para palabras %KWi).
En caso de desborde del índice, el sistema fuerza la puesta a 1 del bit de sistema
%S20 y se asigna al objeto un valor de índice de 0.

Nota: El usuario es responsable de controlar cualquier desborde. El programa de


usuario debe leer el bit %S20 para un posible procesamiento. El usuario debe
encargarse del restablecimiento a 0.
%S20 (estado inicial = 0):
l En caso de desborde de índice: puesto a 1 por el sistema.
l Acuse de recibo de desborde: puesto a 0 por el usuario después de modificar
el índice.

TWD USE 10AS 49


Objetos de lenguaje Twido

Simbolización de objetos

Introducción Es posible utilizar símbolos para direccionar objetos de lenguaje de software Twido
por nombre o mnemotécnica personalizada. El uso de símbolos permite un rápido
examen y análisis de la lógica del programa y simplifica enormemente el desarrollo
y la comprobación de una aplicación.

Ejemplo Por ejemplo, WASH_END es un símbolo que puede utilizarse para identificar un
bloque de función de temporizador que represente el final de un ciclo de lavado.
Recordar el propósito de este nombre debe ser más sencillo que intentar recordar
la función de una dirección de programa como %TM3.

Directrices para A continuación se indica una serie de directrices para definir símbolos:
definir símbolos l Un máximo de 32 caracteres.
l Letras (A-Z), números (0 -9) o guiones bajos (_).
l El primer carácter debe ser alfabético o acentuado. No se puede utilizar el signo
de porcentaje (%).
l No es posible incluir espacios ni caracteres especiales.
l No se distingue entre mayúsculas y minúsculas. Por ejemplo, Pump1 y PUMP1
son el mismo símbolo y sólo se puede utilizar uno de ellos una sola vez en la
misma aplicación.

Edición de Los símbolos se definen y asocian con los objetos de lenguaje en el editor de
símbolos símbolos. Los símbolos y sus comentarios se guardan con la aplicación en el disco
duro del PC, pero no en el controlador. Por lo tanto, no pueden transferirse con la
aplicación al controlador.

50 TWD USE 10AS


Memoria de usuario

3
Presentación

Objeto En este capítulo se describe la estructura y el uso de la memoria de usuario Twido.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Estructura de la memoria de usuario 52
Copia de seguridad y restauración sin cartucho de copia de seguridad ni 54
memoria ampliada
Copia de seguridad y restauración con un cartucho de copia de seguridad de 56
32 kB
Utilización del cartucho de memoria ampliada de 64 kB 59

TWD USE 10AS 51


Memoria de usuario

Estructura de la memoria de usuario

Introducción La memoria del autómata a la que se accede mediante la aplicación está dividida
en dos partes diferentes:
l Los valores de bit
l Los valores de palabra (valores con signo de 16 bits)

Memoria de bits La memoria de bits está situada en la memoria RAM interna del autómata. Contiene
el mapa de 128 objetos bits.

Memoria de La memoria de palabras (16 bits) admite:


palabras l Palabras dinámicas: memoria de ejecución (almacenada en RAM solamente).
l Palabras de memoria (%MW): datos de sistema dinámicos y datos de sistema.
l Programa: descriptores y código ejecutable para tareas.
l Datos de configuración: palabras constantes, valores iniciales y configuración
de entrada/salida.

Tipos de A continuación se enumeran los distintos tipos de almacenamiento en memoria


almacenamiento para los autómatas Twido.
en memoria l Memoria de acceso aleatorio (del inglés "Random Access Memory").
Memoria volátil interna: contiene palabras dinámicas, palabras de memoria,
programa y datos de configuración.
l EEPROM
Memoria EEPROM de 32 KB integrada que proporciona una copia de seguridad
interna de los datos y del programa. Protege el programa contra los daños
provocados por fallos de batería o cortes de corriente de más de 30 días.
Contiene el programa y los datos de configuración. Abarca un máximo de 512
palabras de memoria. No se realiza una copia de seguridad del programa si se
utiliza un cartucho de memoria ampliada de 64 KB y el autómata Twido se ha
configurado para aceptar dicho cartucho de memoria ampliada de 64 KB.
l Cartucho de copias de seguridad de 32 KB
Cartucho externo opcional utilizado para guardar un programa y transferirlo a
otros autómatas Twido. Se puede utilizar para actualizar el programa en la
memoria RAM del autómata. Contiene el programa y constantes, pero ninguna
palabra de memoria.
l Cartucho de memoria ampliada de 64 KB
Cartucho externo opcional que almacena un programa de hasta 64 KB. Debe
permanecer insertado en el autómata mientras se utiliza dicho programa.

52 TWD USE 10AS


Memoria de usuario

Almacena- Las palabras de memoria y el programa del autómata se pueden guardar en la


miento de la siguiente ubicación:
memoria l RAM (hasta 30 días si la batería se encuentra en buen estado)
l EEPROM (32 KB como máximo)
El programa de la memoria EEPROM se transfiere automáticamente a la memoria
RAM cuando se pierde el programa de la memoria RAM (o si no hay batería).
También se puede realizar una transferencia manual mediante TwidoSoft.

Configuraciones En la tabla siguiente se describe la configuración de los tipos de memoria posibles


de la memoria en los autómatas Twido.
Autómatas compactos Autómatas modulares
Tipo de memoria 10DRF 16DRF 24DRF 20DUK 20DRT 20DRT
20DTK 40DUK 40DUK
40DTK (32 KB) 40DTK** (64
KB)
RAM interna 10 KB 10 KB 10 KB 10 KB 10 KB 10 KB
Memoria 1*
RAM externa 16 KB 32 KB 32 KB 32 KB 64 KB
Memoria 2*
EEPROM interna 8 KB 16 KB 32 KB 32 KB 32 KB 32 KB***
EEPROM externa 32 KB 32 KB 32 KB 32 KB 32 KB 64 KB
Tamaño máximo de 8 KB 16 KB 32 KB 32 KB 32 KB 64 KB
programa
Copia de seguridad 8 KB 16 KB 32 KB 32 KB 32 KB 64 KB
externa máxima

(*) Memorias 1 y 2 del indicador de evaluación de la memoria.


(**) en este caso el cartucho de 64 KB debe seguir instalado en Twido y
establecerse en la configuración, si aún no lo estaba,
(***) reservada para la copia se seguridad de %MW.

TWD USE 10AS 53


Memoria de usuario

Copia de seguridad y restauración sin cartucho de copia de seguridad ni


memoria ampliada

Introducción A continuación se explican las funciones de copia de seguridad y restauración de la


memoria en los controladores modulares y compactos sin cartucho de copia de
seguridad ni memoria ampliada.

Presentación Mediante la memoria EEPROM interna del controlador se puede realizar una copia
de seguridad de los datos de configuración, las palabras de memoria y los
programas Twido. Dado que al guardar un programa en la EEPROM interna se
eliminan todas las palabras de memoria copiadas previamente, en primer lugar se
debe realizar la copia de seguridad del programa, y luego, de las palabras de
memoria configuradas. Los datos dinámicos se pueden almacenar en palabras de
memoria y luego se puede realizar una copia de seguridad de ellos en EEPROM.
Si no hay ningún programa guardado en la EEPROM interna, no será posible
guardar palabras de memoria en ella.

Estructura de A continuación se incluye un diagrama de la estructura de memoria de un


memoria controlador. Las flechas indican qué elementos se pueden copiar en EEPROM
desde la memoria RAM.

Palabras dinámicas
%MWs
RAM
Programa

Datos de configuración

%MWs
EEPROM
Programa

Datos de configuración

54 TWD USE 10AS


Memoria de usuario

Copia de A continuación se explican los pasos que se deben seguir para realizar una copia
seguridad del de seguridad del programa en la memoria EEPROM.
programa
Paso Acción
1 Las siguientes condiciones deben ser verdaderas:
Existe un programa válido en la memoria RAM.
2 Desde la ventana del software Twido, abrir el menú desplegable bajo
'Autómata', desplazarse hasta la opción 'Copia de seguridad' y hacer clic sobre
ella.

Restauración del Durante la conexión existe una forma para restaurar el programa en la memoria
programa RAM desde la EEPROM (suponiendo que no exista ningún cartucho o memoria
ampliada incorporados):
l El programa de la RAM no es válido.
Para restaurar un programa de forma manual desde la memoria EEPROM:
l Desde la ventana del software Twido, abra el menú desplegable Autómata y
haga clic en la opción Restaurar.

Copia de A continuación se describen los pasos necesarios para realizar una copia de
seguridad de seguridad de datos (palabras de memoria) en la memoria EEPROM.
datos (%MWs)
Paso Acción
1 Para que esta operación funcione se deben cumplir las siguientes condiciones:
Existe un programa válido en la memoria RAM (%SW96:X6=1).
Ya existe una copia de seguridad del mismo programa válido en la memoria
EEPROM.
Hay palabras de memoria configuradas en el programa.
2 Ajustar %SW97 a la longitud de palabras de memoria que se vayan a guardar.
Nota: La longitud no puede exceder la longitud de palabras de memoria
configurada y debe ser superior a 0 pero menor o igual que 512.
3 Definir %SW96:X0 en 1.

Restauración de Restaure las %MWs de forma manual ajustando el bit de sistema %S95 a 1.
datos (%MWs) Para que esta operación funcione se deben cumplir las siguientes condiciones:
l La memoria EEPROM dispone de una aplicación de copia de seguridad válida.
l La aplicación de la memoria RAM coincide con la aplicación de copia de
seguridad de la memoria EEPROM.
l Las palabras de memoria de copia de seguridad son válidas.

TWD USE 10AS 55


Memoria de usuario

Copia de seguridad y restauración con un cartucho de copia de seguridad de 32


kB

Introducción A continuación se explican las funciones de copia de seguridad y restauración de la


memoria en los controladores modulares y compactos mediante un cartucho de
copia de seguridad de 32 kB.

Presentación El cartucho de copia de seguridad se utiliza para guardar un programa y transferirlo


a otros controladores Twido. Se debe extraer del controlador y apartarse una vez
que se haya instalado o guardado el programa. En el cartucho sólo es posible
guardar el programa y los datos de configuración (las %MW no se pueden guardar
en el cartucho de copia de seguridad de 32 kB). Los datos dinámicos se pueden
almacenar en palabras de memoria y luego se puede realizar una copia de
seguridad de ellos en EEPROM. Cuando finalice la instalación del programa, se
perderán todas las %MW de las que se haya realizado una copia de seguridad en
la EEPROM interna antes de la instalación.

56 TWD USE 10AS


Memoria de usuario

Estructura de A continuación se incluye un diagrama de la estructura de memoria de un


memoria controlador con cartucho de copia de seguridad insertado. Las flechas indican qué
elementos se pueden copiar en EEPROM y en el cartucho desde la memoria RAM.

Palabras dinámicas
%MWs
RAM
Programa

Datos de configuración

%MWs
EEPROM
Programa

Datos de configuración

Cartucho Programa
de copia
de seguridad Datos de configuración

Copia de A continuación se explican los pasos que se deben seguir para realizar una copia
seguridad del de seguridad del programa en el cartucho de copia de seguridad.
programa
Paso Acción
1 Desconectar el autómata.
2 Insertar el cartucho de copia de seguridad.
3 Arrancar el autómata.
4 Desde la ventana del software Twido, abrir el menú desplegable bajo
'Autómata', desplazarse hasta la opción 'Copia de seguridad' y hacer clic sobre
ella.
5 Desconectar el autómata.
6 Extraer el cartucho de copia de seguridad del controlador.

TWD USE 10AS 57


Memoria de usuario

Restauración del Para cargar en un controlador un programa guardado en un cartucho de copia de


programa seguridad, siga los pasos descritos a continuación.
Paso Acción
1 Desconectar el autómata.
2 Insertar el cartucho de copia de seguridad.
3 Arrancar el autómata.
(Si está configurada la opción de inicio automático, habrá que completar de
nuevo un ciclo de encendido y apagado para pasar al modo de ejecución).
4 Desconectar el autómata.
5 Extraer el cartucho de copia de seguridad del controlador.

Copia de A continuación se describen los pasos necesarios para realizar una copia de
seguridad de seguridad de datos (palabras de memoria) en la memoria EEPROM.
datos (%MWs)
Paso Acción
1 Para que esta operación funcione se deben cumplir las siguientes condiciones:
Existe un programa válido en la memoria RAM.
Ya existe una copia de seguridad del mismo programa válido en la memoria
EEPROM.
Hay palabras de memoria configuradas en el programa.
2 Ajustar %SW97 a la longitud de palabras de memoria que se vayan a guardar.
Nota La longitud no puede exceder la longitud de palabras de memoria
configurada y debe ser superior a 0 pero menor o igual que 512.
3 Definir %SW96:X0 en 1.

Restauración de Restaure las %MWs de forma manual ajustando el bit de sistema %S95 a 1.
datos (%MWs) Para que esta operación funcione se deben cumplir las siguientes condiciones:
l La memoria EEPROM dispone de una aplicación de copia de seguridad válida.
l La aplicación de la memoria RAM coincide con la aplicación de copia de
seguridad de la memoria EEPROM.
l Las palabras de memoria de copia de seguridad son válidas.

58 TWD USE 10AS


Memoria de usuario

Utilización del cartucho de memoria ampliada de 64 kB

Introducción A continuación se explica el uso de las funciones de memoria en los autómatas


modulares mediante un cartucho de memoria ampliada de 64 KB.

Presentación El cartucho de memoria ampliada de 64 KB se utiliza para ampliar la capacidad de


memoria del programa en el autómata Twido de 32 kB a 64 kB. El cartucho debe
permanecer insertado en el autómata mientras se utiliza el programa ampliado. Si
se extrae el cartucho, el autómata pasará a estado detenido. Las palabras de
memoria se siguen copiando en la memoria EEPROM del autómata. Los datos
dinámicos se pueden almacenar en palabras de memoria y luego se puede realizar
una copia de seguridad de ellos en EEPROM. El cartucho de memoria ampliada de
64 KB presenta el mismo comportamiento de conexión que el cartucho de copia de
seguridad de 32 KB.

TWD USE 10AS 59


Memoria de usuario

Estructura de A continuación se muestra un esquema de la estructura de memoria de un


memoria autómata con un cartucho de memoria ampliada. Las flechas indican los elementos
guardados en la memoria EEPROM y el cartucho de memoria ampliada de 64 K
desde la memoria RAM:

Palabras dinámicas
%MWs
RAM
Programa (1º)

Datos de configuración

EEPROM
%MWs

Cartucho de
de memoria Programa (2º)
ampliada

Configuración Antes de comenzar a escribir el programa ampliado es necesario instalar el


del software e cartucho de memoria ampliada de 64 kB en el autómata. A continuación se describe
instalación de la el procedimiento.
memoria
Paso Acción
ampliada
1 Introducir 'TWDXCPMFK64' bajo el menú de opción Hardware de la ventana del
software Twido.
2 Desconectar el autómata.
3 Insertar el cartucho de memoria ampliada de 64 KB.
4 Arrancar el autómata.

60 TWD USE 10AS


Memoria de usuario

Guardar el Una vez haya instalado el cartucho de memoria ampliada de 64 kB y escrito el


programa. programa:
l Desde la ventana del software Twido, abrir el menú desplegable bajo 'Autómata',
desplazarse hasta la opción 'Copia de seguridad' y hacer clic sobre ella.

Copia de A continuación se describen los pasos necesarios para realizar una copia de
seguridad de seguridad de datos (palabras de memoria) en la memoria EEPROM.
datos (%MWs)
Paso Acción
1 Para que esta operación funcione se deben cumplir las siguientes condiciones:
Existe un programa válido.
Hay palabras de memoria configuradas en el programa.
2 Ajustar %SW97 a la longitud de palabras de memoria que se vayan a guardar.
Nota: La longitud no puede exceder la longitud de palabras de memoria
configurada y debe ser superior a 0 pero menor o igual que 512.
3 Definir %SW96:X0 en 1.

Restauración de Restaure las %MWs de forma manual ajustando el bit de sistema %S95 a 1.
datos (%MWs) Para que esta operación funcione se deben cumplir las siguientes condiciones:
l Existe un programa válido.
l Las palabras de memoria de copia de seguridad son válidas.

TWD USE 10AS 61


Memoria de usuario

62 TWD USE 10AS


Modos de funcionamiento del
controlador
4
Presentación

Objeto En este capítulo se describen los modos de funcionamiento del controlador y la


ejecución cíclica y periódica del programa. Se incluye información detallada sobre
cortes de corriente y recuperación de alimentación.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Exploración cíclica 64
Exploración periódica 66
Comprobación del tiempo de ciclo 69
Modos de funcionamiento 71
Comportamiento ante cortes de corriente y recuperación de alimentación 73
Comportamiento ante un reinicio en caliente 76
Comportamiento ante un inicio en frío 78
Inicialización de objetos 80

TWD USE 10AS 63


Modos de funcionamiento del controlador

Exploración cíclica

Introducción La exploración cíclica consiste en encaminar los ciclos de los autómatas unos con
otros. Después de efectuar la actualización de las salidas (tercera fase del ciclo de
tarea), el sistema ejecuta cierto número de sus propias tareas e inmediatamente
dispara otro ciclo de tarea.

Nota: La duración de la exploración del programa de usuario se controla mediante


el temporizador de watchdog del autómata y no debe superar los 500 ms. Si esto
ocurre, aparece un fallo que hace detenerse al autómata de forma inmediata. Las
salidas en este modo se fuerzan a su estado de retorno predeterminado.

Funcionamiento El siguiente dibujo muestra las fases de ejecución del tiempo de ciclo cíclico.

Procesamiento Procesamiento
del programa del programa

I.P. %I %Q I.P. %I %Q

Tiempo de ciclo n Tiempo de ciclo n+1

Descripción de En la tabla siguiente se describen las fases de un ciclo.


las fases de un
Direcció Fase Descripción
ciclo
n
I.P. Procesamient El sistema supervisa el controlador de forma implícita
o interno (gestionando las palabras y los bits de sistema, actualizando los
valores de temporizador actuales, actualizando las luces de
estado, detectando los cambios entre ejecución/detención, etc.)
y procesa las solicitudes de TwidoSoft (modificaciones y
animación).
%I, %IW Adquisición Escritura en memoria del estado de las entradas asociadas a los
de entradas módulos TON y analógico.
- Procesamient Ejecución del programa de aplicación escrito por el usuario.
o del
programa
%Q, Actualización Escritura de las palabras o bits de salidas asociados a módulos
%QW de las salidas TON y analógicos.

64 TWD USE 10AS


Modos de funcionamiento del controlador

Modo de Controlador en ejecución; el procesador realiza las siguientes operaciones:


funcionamiento l Procesamiento interno
l Adquisición de entradas
l Procesamiento del programa de aplicación
l Actualización de las salidas
Controlador detenido; el procesador realiza las siguientes operaciones:
l Procesamiento interno
l Adquisición de entradas

Ilustración La siguiente ilustración muestra los ciclos de funcionamiento.

Procesamiento interno

Adquisición de entradas

EJECUCIÓN DETENCIÓN
Procesamiento del
programa

Actualización de
las salidas

Ciclo de El watchdog realiza el ciclo de comprobación.


comprobación

TWD USE 10AS 65


Modos de funcionamiento del controlador

Exploración periódica

Introducción En este modo de funcionamiento, la adquisición de entradas, el procesamiento del


programa de aplicación y la actualización de salidas se realiza periódicamente con
arreglo al tiempo definido en la configuración (de 2 a 150 ms).
Al inicio de la exploración del autómata, un temporizador, cuyo valor se inicializa en
el periodo definido en la configuración, inicia el conteo regresivo. La exploración del
autómata debe terminar antes del fin del conteo regresivo y antes del inicio de una
nueva exploración.

Funcionamiento En el esquema siguiente se muestran las fases de ejecución del tiempo de ciclo
periódico.

Procesamiento Procesamiento
del programa del programa
Periodo
I.P. %I %Q I.P. Periodo I.P. %I %Q I.P. de
de espera

Tiempo de ciclo n Tiempo de ciclo n+1


Período

I.P: Procesamiento interno

66 TWD USE 10AS


Modos de funcionamiento del controlador

Descripción de En la tabla siguiente se describen las fases de operación.


las fases de
Direcci Fase Descripción
operación
ón
I.P. Procesamient El sistema supervisa el controlador de forma implícita
o interno (gestionando las palabras y los bits de sistema, actualizando los
valores de temporizador actuales, actualizando las luces de
estado, detectando los cambios entre ejecución/detención, etc.)
y procesa las solicitudes de TwidoSoft (modificaciones y
animación).
%I, %IW Adquisición de Escritura en memoria del estado de las entradas asociadas a los
entradas módulos TON y analógico.
- Procesamient Ejecución del programa de aplicación escrito por el usuario.
o del
programa
%Q, Actualización Escritura de las palabras o bits de salidas asociados a módulos
%QW de las salidas TON y analógicos.

Modo de Controlador en ejecución; el procesador realiza las siguientes operaciones:


funcionamiento l Procesamiento interno
l Adquisición de entradas
l Procesamiento del programa de aplicación
l Actualización de las salidas
Si el periodo no ha finalizado, el procesador completa su ciclo de funcionamiento
hasta el final del periodo de procesamiento interno. Si la duración de funciona-
miento supera la asignada al periodo, el autómata indica un rebasamiento de
periodo mediante la puesta a 1 del bit de sistema %S19. El tratamiento continúa
hasta que se ejecuta totalmente. No obstante, no debe superar el tiempo límite del
watchdog. El siguiente ciclo está conectado después de escribir las salidas del ciclo
en curso de forma implícita.
Controlador detenido; el procesador realiza las siguientes operaciones:
l Procesamiento interno
l Adquisición de entradas

TWD USE 10AS 67


Modos de funcionamiento del controlador

Ilustración La siguiente ilustración muestra los ciclos de funcionamiento.

Inicio del
periodo

Procesamiento interno

Adquisición de entradas

EJECUCIÓN DETENCIÓN
Procesamiento del
programa

Actualización de
salidas

Procesamiento interno

Finalización del
periodo

Ciclo de Se realizan dos comprobaciones:


comprobación l Desborde de periodo
l Watchdog

68 TWD USE 10AS


Modos de funcionamiento del controlador

Comprobación del tiempo de ciclo

Generalidades El ciclo de tarea se controla mediante un temporizador watchdog llamado Tmax


(duración máxima del ciclo de tarea). Permite mostrar errores de aplicación (bucles
infinitos, etc.) y garantiza una duración máxima para actualizar las salidas.

WatchDog del En una operación periódica o cíclica, la activación del watchdog provoca un error
software del software. La aplicación pasa a estado de pausa y establece el bit %S11 a 1. La
(operación nueva ejecución de la tarea necesita una conexión a Twido Soft con el fin de
periódica o analizar la causa del error, la modificación de la aplicación para corregir el error y
cíclica) un reinicio de la ejecución del programa.

Nota: El estado de pausa se produce cuando la aplicación se detiene


inmediatamente debido a un error del software de la aplicación, como un desborde
de ciclo. Los datos conservan los valores actuales que permiten un análisis de la
causa del error. El programa se detiene en la instrucción en curso. Está disponible
la comunicación con el controlador.

Comprobación En una operación periódica, se utiliza una comprobación adicional para detectar el
de la operación periodo que se está excediendo.
periódica l %S19 indica que se ha superado el periodo. Se ajusta a:
l 1 por el sistema cuando el tiempo de ciclo es mayor que el periodo de la tarea.
l 0 por el usuario.
l %SW0 contiene el valor del periodo (0-150 ms). Es decir:
l se inicializa cuando se inicia a partir de un inicio en frío mediante el valor
seleccionado en la configuración y
l el usuario puede modificarlo.

TWD USE 10AS 69


Modos de funcionamiento del controlador

Uso del tiempo Las siguientes palabras del sistema se utilizan para ofrecer información sobre el
de ejecución de tiempo de ciclo de exploración del controlador:
la tarea master l %SW11 se inicializa con el tiempo de vigilancia máximo de watchdog (10 a 500
ms).
l %SW30 contiene el tiempo de ejecución para el último ciclo de exploración del
controlador.
l %SW31 contiene el tiempo de ejecución para el ciclo de exploración del
controlador más largo.
l %SW32 contiene el tiempo de ejecución para el ciclo de exploración del
controlador más corto.

Nota: También puede accederse a esta información diferente desde el editor de


configuración.

70 TWD USE 10AS


Modos de funcionamiento del controlador

Modos de funcionamiento

Introducción Twido Soft se emplea para tener en cuenta los tres grupos de modos de
funcionamiento:
l Comprobación
l Ejecución o producción
l Parada

Inicio mediante Se puede acceder a los diferentes modos de funcionamiento desde Grafcet o
Grafcet mediante Grafcet, a través de los métodos siguientes:
l Inicialización de Grafcet
l Preajuste de pasos
l Conservación de una situación
l Inmovilización de diagramas.
El tratamiento preliminar y la utilización de bits de sistema garantizan una gestión
eficaz del modo de funcionamiento que no produce ninguna complicación del
programa de usuario y que no implica ninguna sobrecarga de este último.

TWD USE 10AS 71


Modos de funcionamiento del controlador

Bits de sistema El empleo de los bits %S21, %S22 y %S23 se destina al tratamiento preliminar. El
Grafcet sistema pone estos bits a cero de forma automática. Dichos bits sólo se deben
escribir mediante la instrucción Establecer S.
En la tabla siguiente aparecen los bits de sistema asociados a Grafcet:
Bit Función Descripción
%S21 Inicialización del Normalmente en estado 0, este bit se pone a 1
GRAFCET mediante:
l Un inicio en frío, %S0=1
l El usuario, sólo en la parte de procesamiento previo
del programa, mediante una instrucción Establecer
S %S21 o una bobina Establecer -(S)- %S21.
Consecuencias:
l Desactivación de todos los pasos.
l Activación de todos los pasos iniciales.

%S22 GRAFCET RESET Normalmente en estado 0, este bit sólo se puede poner
a 1 mediante el programa durante el procesamiento
previo.
Consecuencias:
l Desactivación de todos los pasos.
l Detención de la exploración del tratamiento
secuencial.
%S23 Ubicación del GRAFCET Normalmente en estado 0, este bit sólo se puede poner
a 1 mediante el programa durante el procesamiento
previo.
l Ubicación previa mediante la puesta a 1 de %S22.
l Ubica de forma previa las etapas para activarlas
mediante una serie de instrucciones S Xi.
l Activación de la ubicación previa mediante la puesta
a 1 de %S23.
Inmovilización de una situación:
l En la situación inicial: mediante el mantenimiento a
1 de %S21 gracias al programa.
l En una situación de "vacío": mediante el
mantenimiento a 1 de %S22 gracias al programa.
l En una situación determinada por el mantenimiento
a 1 de %S23.

72 TWD USE 10AS


Modos de funcionamiento del controlador

Comportamiento ante cortes de corriente y recuperación de alimentación

Ilustración La ilustración que aparece a continuación muestra los distintos tipos de


recuperación de alimentación detectados por el sistema. Si la duración del corte de
corriente es inferior al tiempo de filtrado de la alimentación (unos 10 ms para el
suministro de corriente alterna o 1 ms para el suministro de corriente continua), el
programa no lo advierte y sigue funcionando con normalidad.
EJECUTAR

Ejecutar
Aplicación

Corte de corriente

Alimentación en standby
Recuperación de
alimentación
ESPERAR

Corte de corriente Sí Prueba


detectado automática

No
Guardado
contexto No
correcto

Tarjeta de
No
memoria
idéntica

Ejecución normal
Inicio en caliente Inicio en frío
del programa

TWD USE 10AS 73


Modos de funcionamiento del controlador

Nota: El contexto se guarda en una memoria RAM con batería. Durante el


arranque, el sistema comprueba el estado de las baterías y del contexto guardado,
y decide si puede producirse un arranque en caliente.

Bit de entrada El bit de entrada Run/Stop tiene prioridad sobre el "Inicio automático en Run",
Run/Stop y disponible en el cuadro de diálogo Modo de exploración. Si se establece el bit Run/
opción Inicio Stop, el autómata se reiniciará en modo Run cuando se restaure la alimentación.
automático en El modo del autómata se determina de la siguiente manera.
Run
Bit de entrada Run/Stop Inicio automático en Estado resultante
Run
Cero Cero Parada
Cero Uno Parada
Flanco ascendente Indiferente Run
Uno Indiferente Run
No configurado en el software Cero Parada
No configurado en el software Uno Run

Nota: En el caso de los autómatas de tipo compacto con una versión de software
V1.0, si el autómata se encuentra en modo Run cuando se corta la alimentación y
no se ha seleccionado el indicador "Inicio automático en Run" en el cuadro de
diálogo Modo de exploración, el autómata se reiniciará en modo Stop cuando se
restaure la alimentación. En caso contrario, realizará un rearranque en frío.

Nota: En el caso de los autómatas de tipo modular y compacto con una versión
del software V1.11, si la batería del autómata funciona con normalidad en el
momento en que se corta la alimentación, el autómata arrancará en el modo en el
que estaba. El indicador "Inicio automático en Run", seleccionado en el cuadro de
diálogo Modo de exploración, no tendrá ningún efecto sobre el modo cuando se
restaure la alimentación.

74 TWD USE 10AS


Modos de funcionamiento del controlador

Funcionamiento En la tabla siguiente se describen las fases del procedimiento para cortes de
corriente.
Fase Descripción
1 En caso de corte de corriente, el sistema guarda el contexto de la aplicación y la
hora del corte.
2 Pone todas las salidas en estado de retorno (estado 0).
3 Al recuperar la alimentación, el contexto guardado se compara con el actual. Esta
comparación permite definir el tipo de arranque que hay que realizar:
l Si el contexto de la aplicación ha cambiado (pérdida de contexto de sistema o
aplicación nueva), el autómata inicializa la aplicación: inicio en frío (sistemático
para el compacto).
l Si el contexto de aplicación es el mismo, el autómata reinicia sin inicializar los
datos: reinicio en caliente.

TWD USE 10AS 75


Modos de funcionamiento del controlador

Comportamiento ante un reinicio en caliente

Causa de un Un inicio en caliente puede producirse:


reinicio en l Cuando se restaura la alimentación sin pérdida del contexto de la aplicación.
caliente l Cuando el programa ajusta el bit %S1 a 1.
l Desde el monitor de operación, cuando el controlador está en modo de
detención.

Ilustración En el esquema siguiente se describe una operación de reinicio en caliente en modo


de ejecución.
EJECUCIÓN ESPERAR

Adquisición de
entradas
Detener el
procesador Guardar
el contexto de
Ejecución del programa
aplicación
SUPERIOR

Si el bit %S1=1, Restauración de


posible proceso con la alimentación
reinicio en caliente

Comprobación
automática parcial de
Detección la configuración
del corte de sí
alimentación
>Corte de alimentación Bit %S1 a 1
pequeño durante un solo ciclo

No
INFERIOR

Bit %S1 a 0

Actualización de
las salidas

76 TWD USE 10AS


Modos de funcionamiento del controlador

Reinicio de la En la tabla siguiente se describen las fases de reinicio para ejecutar un programa
ejecución del después de un reinicio en caliente.
programa
Fase Descripción
1 La ejecución del programa se reanuda a partir del mismo elemento donde
estaba antes del corte de alimentación, sin actualizar las salidas.
Nota: Sólo se reinicia el mismo elemento del código de usuario. El código del
sistema (por ejemplo, la actualización de salidas) no se reinicia.
2 Al final del ciclo de reinicio, el sistema:
l Anula la reserva de la aplicación si ésta se reservó (y hace que la aplicación
se detenga en caso de depuración).
l Reinicializa los mensajes.

3 El sistema realiza un ciclo de reinicio en el que:


l Ejecuta de nuevo la tarea con los bits %S1 (indicador de inicio en caliente)
y %S13 (primer ciclo en ejecución) a 1.
l Restablece los bits %S1 y %S13 a 0 al final de este primer ciclo de tarea.

Procesamiento En caso de un inicio en caliente, si es necesario un proceso de aplicación


de un inicio en determinado, el bit %S1 debe comprobarse al comienzo del ciclo de tarea y debe
caliente llamarse al programa correspondiente.

Salidas después Tan pronto como se detecta un fallo de alimentación, las salidas se ponen a un
de un fallo de estado de retorno (predeterminado) de 0.
alimentación Cuando se recupera la alimentación, las salidas permanecen con el último estado
hasta que la tarea las actualice de nuevo.

TWD USE 10AS 77


Modos de funcionamiento del controlador

Comportamiento ante un inicio en frío

Causas de un Un inicio en frío puede producirse:


inicio en frío l Al cargar una aplicación nueva en la RAM.
l Cuando se restaura la alimentación con pérdida de contexto de las aplicaciones.
l Cuando el programa ajusta el bit %S0 a 1.
l Desde el monitor de operación, cuando el controlador está en modo de
detención.

Ilustración En el esquema siguiente se describe una operación de reinicio en frío en modo de


ejecución.
EJECUCIÓN ESPERAR

Adquisición de
entradas
Detener el
procesador Guardar
Ejecución del programa el contexto de
SUPERIOR aplicación

Si el bit %S0=1,
posible proceso con Restauración de la
reinicio en frío alimentación

PRUEBAS AUTOMÁTICAS

Detección
del corte de sí Pruebas automáticas
alimentación parciales de la
>Corte de alimentación configuración
pequeño

Inicialización de
No la aplicación
INFERIOR

Bit %S0 a 1
Bit %S0 a 0

Actualización de
las salidas

78 TWD USE 10AS


Modos de funcionamiento del controlador

Funcionamiento En la tabla siguiente se describen las fases de reinicio para ejecutar un programa
después de un reinicio en frío.
Fase Descripción
1 Durante el arranque, el controlador está en modo de ejecución.
Durante un reinicio tras una detención debida a un error, el sistema fuerza un
reinicio en frío.
La ejecución del programa se reinicia al comienzo del ciclo.
2 El sistema:
l Restablece palabras y bits internos y las imágenes de E/S a 0.
l Inicializa las palabras y los bits de sistema.
l Inicializa los bloques de función de los datos de configuración.

3 Durante este primer ciclo de reinicio, el sistema:


l Ejecuta de nuevo la tarea con los bits %S0 (indicador de inicio en frío) y
%S13 (primer ciclo en ejecución) a 1.
l Restablece los bits %S0 y %S13 a 0 al final de este primer ciclo de tarea.
l Pone a cero los bits %S31, %S38 y %S39 (indicadores de control de
suceso), y la palabra %SW48 (número de sucesos ejecutados).

Procesamiento En caso de inicio en frío, si se requiere un proceso de aplicación particular, se debe


de un inicio en verificar el bit %S0 (que permanece a 1) durante el primer ciclo de la tarea.
frío

Salidas después Tan pronto como se detecta un fallo de alimentación, las salidas se ponen a un
de un fallo de estado de retorno (predeterminado) de 0.
alimentación Cuando se recupera la alimentación, las salidas permanecen a 0 hasta que la tarea
las actualice de nuevo.

TWD USE 10AS 79


Modos de funcionamiento del controlador

Inicialización de objetos

Introducción Los autómatas se pueden inicializar mediante Twido Soft ajustando los bits de
sistema %S0 (reinicio en frío) y %S1 (reinicio en caliente).

Inicialización de Para realizar una inicialización de inicio en frío, el bit de sistema %S0 se debe
inicio en frío ajustar a 1.

Inicialización de Para realizar una inicialización de inicio en caliente, los bits de sistema %S1 y %S0
inicio en caliente deben ajustarse a 1.
mediante %S0 y
%S1 En el siguiente ejemplo se explica cómo programar una inicialización de objetos
durante un reinicio en caliente mediante los bits de sistema.

%S9

%S1 %S0

LD %S1 Si %S1 = 1 (reprise à chaud), le bit %S0 est mis à 1 ce qui initialise l'automate.
ST %S0 Ces deux bits sont remis à zéro par le système à la fin de la scrutation suivante.
ST %S9 Ce bit est utilisé pour initialiser les sorties.

Nota: No ajuste %S0 a 1 durante más de un ciclo del autómata.

80 TWD USE 10AS


Gestión de las tareas de sucesos

5
Presentación

Presentación En este capítulo se describen las tareas de sucesos y su ejecución en el autómata.

Nota: Las tareas de sucesos no se gestionan mediante el autómata Twido Brick


10 (TWDLCAA10DRF).

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Presentación de las tareas de sucesos 82
Descripción de los diferentes orígenes de sucesos 83
Gestión de sucesos 85

TWD USE 10AS 81


Gestión de las tareas de sucesos

Presentación de las tareas de sucesos

Introducción El capítulo anterior muestra las tareas periódicas (Véase Exploración periódica,
p. 66) y cíclicas (Véase Exploración cíclica, p. 64) en las que los objetos se
actualizan al principio y al final de la tarea. Hay orígenes de sucesos que pueden
provocar interrupciones de la tarea durante las cuales se ejecutan tareas más
prioritarias (de sucesos) para permitir una actualización más rápida de los objetos.
Una tarea de sucesos:
l es una parte del programa ejecutada con una condición determinada (origen del
suceso),
l posee una prioridad más alta que el programa principal,
l garantiza un tiempo de respuesta rápido que permite reducir el tiempo de
respuesta del sistema.

Descripción de Un suceso consta de:


un suceso l un origen de sucesos que se puede definir como condición de interrupción de
software o de hardware que interrumpe el programa principal (Véase Descripción
de los diferentes orígenes de sucesos, p. 83),
l una sección que es una entidad autónoma de programación vinculada a un
suceso,
l una cola de sucesos que permiten almacenar la lista de sucesos hasta su
ejecución,
l una prioridad que es el orden de ejecución del suceso.

82 TWD USE 10AS


Gestión de las tareas de sucesos

Descripción de los diferentes orígenes de sucesos

Presentación de Un origen de suceso debe gestionarse mediante el software para asegurar la


los diferentes interrupción del programa principal por el suceso y la llamada de la sección de
orígenes de programación vinculada al suceso. El tiempo de exploración de la aplicación no
sucesos tiene efecto en la ejecución de los sucesos.
Los nueve orígenes de sucesos admitidos son los siguientes:
l Cuatro condiciones vinculadas a umbrales de bloques de función de contador
muy rápido (dos sucesos por instancia de %VFC)
l Cuatro condiciones vinculadas a las entradas físicas de un autómata base
l Una condición periódica

Un origen de sucesos no se puede vincular más que a un suceso, y se debe


detectar de forma inmediata mediante el software TwidoSoft. En cuanto se detecta,
el software ejecuta la sección de programación vinculada al suceso: cada suceso
se vincula a una subrutina con la etiqueta SRi: definida en la configuración de los
orígenes de suceso.

Suceso en Las entradas %I0.2, %I0.3, %I0.4 y %I0.5 se pueden emplear como orígenes de
entradas físicas sucesos, siempre que no estén bloqueadas y que admitan los sucesos durante la
de un autómata configuración.
base Los tratamientos de sucesos se pueden activar mediante las entradas de 2 a 5 de
un autómata base (posición 0), en el flanco ascendente o descendente.
Para obtener más detalles acerca de la configuración del suceso, consulte la ayuda
en línea de la guía de funcionamiento de TwidoSoft en la sección de configuración
del hardware -> configuración de las entradas.

Sucesos en las Las salidas TH0 y TH1 del bloque de función %VFC son orígenes de sucesos. Las
salidas de un salidas TH0 y TH1 pasan, respectivamente:
bloque de l A 1, cuando la tensión es superior al umbral S0 y al umbral S1, y
función %VFC l a 0, cuando la tensión es inferior al umbral S0 y al umbral S1.
Un flanco ascendente o descendente de estas salidas puede activar un tratamiento
de sucesos.
Para obtener más detalles acerca de la configuración del suceso, consulte la ayuda
en línea de la guía de funcionamiento de TwidoSoft en la sección de configuración
del hardware -> contadores muy rápidos.

TWD USE 10AS 83


Gestión de las tareas de sucesos

Suceso Este suceso ejecuta una misma sección de programación de forma periódica. Esta
periódico tarea es prioritaria frente a la tarea principal (master).
Sin embargo, este origen de suceso tiene menor prioridad que los otros orígenes
de sucesos.
El período de esta tarea se define en la configuración, de 5 a 255 ms. Sólo se podrá
emplear un suceso periódico.
Para obtener más detalles acerca de la configuración del suceso, consulte la ayuda
en línea de la guía de funcionamiento de TwidoSoft en la sección de configuración
de los parámetros del programa -> modo de exploración.

84 TWD USE 10AS


Gestión de las tareas de sucesos

Gestión de sucesos

Cola de sucesos Los sucesos tienen dos prioridades posibles: Alta o Baja. Sin embargo, sólo un tipo
y prioridad de suceso (y, por lo tanto, sólo un origen de suceso) puede tener prioridad Alta. Los
demás sucesos tienen, por lo tanto, una prioridad Baja, y su orden de ejecución
depende por ello de su orden de detección.
Para gestionar el orden de ejecución de las tareas de sucesos, hay dos colas de
sucesos:
l Una de ellas permite almacenar hasta 16 sucesos de prioridad Alta (de un mismo
origen de sucesos).
l La otra permite almacenar hasta 16 sucesos de prioridad Baja (de otros orígenes
de sucesos).
Estas colas se gestionan como los FIFO (First In First Out): el primer suceso
almacenado es el primero que se ejecuta. Sin embargo, no pueden almacenar más
que 16 sucesos, y los sucesos adicionales se pierden.
La cola de prioridad Baja no se ejecuta hasta que la cola de prioridad Alta quede
vacía.

Gestión de colas Cada vez que se produce una interrupción (relacionada con el origen de sucesos),
de sucesos se inicia la secuencia siguiente:
Paso Descripción
1 Gestión de la interrupción:
l Detección de la interrupción física
l Suceso almacenado en la cola de sucesos adecuada
l Comprobación de que un suceso de la misma prioridad no se encuentre en
curso (si no, el suceso queda en espera en su cola correspondiente).
2 Almacenamiento del contexto.
3 Ejecución de la sección de programación (subrutina etiquetada SRi:) vinculada
al suceso.
4 Actualización de las salidas
5 Restauración del contexto

Antes de restablecer el contexto, deben ejecutarse todos los sucesos de la cola.

TWD USE 10AS 85


Gestión de las tareas de sucesos

Control de Se emplean bits y palabras de sistema para controlar los sucesos (Véase Bits de
sucesos sistema y palabras de sistema, p. 459):
l %S31: permite ejecutar o retrasar un suceso.
l %S38: permite colocar o no un suceso en la cola de sucesos.
l %S39: permite saber si los sucesos están en espera o se han perdido.
l %SW48: contiene el número de sucesos que se han ejecutado desde el último
reinicio en frío.
El valor de los bits y las palabras se pone a cero durante un reinicio en frío o tras
cargar una aplicación, pero permanece inalterable durante un reinicio en caliente.
En todos los casos, se inicia la cola de sucesos.

86 TWD USE 10AS


Funciones especiales

II
Presentación

Objeto Esta parte describe las comunicaciones, las funciones analógicas incorporadas, la
gestión de módulos de E/S analógicas y la puesta en marcha del bus AS-Interface
V2 de los autómatas Twido.

Contenido Esta parte contiene los siguientes capítulos:


Capítulo Nombre del capítulo Página
6 Comunicaciones 89
7 Funciones analógicas incorporadas 147
8 Módulos analógicos de gestión 151
9 Puesta en marcha del bus AS-Interface V2 159
10 Funcionamiento del monitor de operación 193

TWD USE 10AS 87


Funciones especiales

88 TWD USE 10AS


Comunicaciones

6
Presentación

Objeto Este capítulo proporciona una vista general acerca de la configuración, la


programación y la gestión disponibles de las comunicaciones con los controladores
Twido.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Vista general de los diferentes tipos de comunicaciones 90
Comunicaciones entre TwidoSoft y el autómata 91
Comunicaciones de conexión remota 95
Comunicaciones ASCII 111
Comunicaciones Modbus 122
Peticiones estándar Modbus 140

TWD USE 10AS 89


Comunicaciones

Vista general de los diferentes tipos de comunicaciones

Presentación Twido ofrece uno o dos puertos serie para las comunicaciones con controladores
de E/S remotas, controladores Peer o dispositivos generales. Cualquier puerto, si
hay más de uno, se puede utilizar para cualquiera de los servicios, con excepción
de la comunicación con Twido Soft, que sólo se puede establecer mediante el
primer puerto. Los controladores Twido admiten tres protocolos básicos distintos:
conexión remota, ASCII o Modbus (master de Modbus o slave de Modbus).

Conexión remota El protocolo de conexión remota es un bus master/slave de alta velocidad diseñado
para transferir una pequeña cantidad de datos entre el controlador master y hasta
siete controladores remotos (slave). Se transfieren datos de E/S o de aplicación
dependiendo de la configuración de los autómatas remotos. Es posible realizar una
mezcla de varios tipos de autómatas remotos, donde unos pueden ser de E/S
remotas y otros, autómatas Peer.

ASCII El protocolo ASCII es un protocolo simple de modo de caracteres de dúplex


completo que se utiliza para transmitir o recibir una cadena de caracteres hacia o
desde un dispositivo simple (impresora o terminal). Este protocolo sólo se admite a
través de la instrucción "EXCH".

Modbus El protocolo Modbus es un protocolo master/slave que permite a un master, y sólo


a uno, pedir respuestas de los slaves o realizar acciones dependiendo de las
peticiones. El master puede dirigirse a los slaves individuales o iniciar una difusión
de mensajes para todos los slaves. Los slaves devuelven un mensaje (respuesta)
a las peticiones que se les envían individualmente. No se devuelven respuestas a
las peticiones de difusión general desde el master.
Master de Modbus - El modo master de Modbus permite al autómata Twido enviar
a un slave una petición Modbus y esperar una respuesta de dicho slave. El modo
master de Modbus sólo se admite a través de la instrucción "EXCH". El modo
master de Modbus admite los formatos ASCII Modbus y RTU Modbus.
Slave Modbus - El modo de slave de Modbus permite al autómata Twido responder
a las peticiones Modbus de un master de Modbus. Se trata de un modo de
comunicación predeterminado si no se configura ningún otro tipo de comunicación.
El controlador Twido admite los datos Modbus estándar, las funciones de control y
las ampliaciones de servicio para el acceso a objetos. El modo slave de Modbus
admite los formatos ASCII Modbus y RTU Modbus.

Nota: En una red RS-485 puede haber un máximo de 32 equipos sin repetidores
(1 master y hasta 31 slaves), y sus direcciones pueden estar comprendidas entre
1 y 247.

90 TWD USE 10AS


Comunicaciones

Comunicaciones entre TwidoSoft y el autómata

Presentación Cada autómata Twido incorpora un puerto de terminales en su puerto 1. Éste tiene
su propia fuente de alimentación interna. El puerto 1 se debe utilizar para la
comunicación con el software de programación TwidoSoft.
No puede utilizarse ningún cartucho opcional o módulo de comunicación para esta
conexión. No obstante, sí se puede utilizar un módem.
Existen varios tipos de conexión entre el PC y el autómata Twido:
l por cable TSXPCX,
l por línea telefónica: conexión por MODEM.

AVISO
DAÑOS MATERIALES
Es posible que TwidoSoft no perciba la desconexión si se retira
físicamente el cable de comunicación TSXPCX1031 o TSX PCX 3030
de un autómata y se inserta rápidamente en un segundo autómata.
Para evitar esto, utilice TwidoSoft para desconectar antes de retirar el
cable.
Si no se respetan estas precauciones pueden producirse graves
lesiones o daños materiales

TWD USE 10AS 91


Comunicaciones

Conexión del El puerto EIA RS-232C o USB de su PC está conectado al puerto 1 del autómata
cable TSXPCX por medio del cable de comunicación multifuncional TSXPCX1031 o TSX PCX
3030. Este cable convierte las señales comprendidas entre EIA RS-232 y EIA RS-
485 para TSX PCX 1031 y entre USB y EIA RS-485 para TSX PCX 3030. Asimismo,
está equipado con un conmutador giratorio de cuatro posiciones para seleccionar
diferentes modos de funcionamiento. El conmutador designa las cuatro posiciones
como "0-3". El ajuste apropiado de TwidoSoft para las comunicaciones con el
autómata Twido es la ubicación 2.
Esta conexión se ilustra en el diagrama que aparece a continuación.
Puerto 1 Puerto serie del PC
RS485 TSX PCX 1031 EIA RS-232

2
1 3
0

TSX PCX 3030 Puerto USB del PC

Nota: En este cable la señal DPT del pin 5 no es de 0 V. Así se indica al autómata
que la conexión actual es una conexión TwidoSoft. La señal se detiene
internamente indicando al firmware Executive que ésta es una conexión
TwidoSoft.

92 TWD USE 10AS


Comunicaciones

Clavijas de La siguiente ilustración muestra la clavija de un conector mini DIN macho de 8 pins
conectores y de un terminal:
macho y hembra Mini DIN Bloque de terminales
TWD NAC232D, TWD NAC485D TWD NAC485T
TWD NOZ485D, TWD NOZ232D TWD NOZ485T

A B SG

Clavijas Base RS485 Opción RS485 RS232-C Clavijas RS485


1 A (+) A (+) RTS A A(+)
2 B (-) B (-) DTR B B(-)
3 NC NC TXD SG 0V
4 /DE NC RXD
5 /DPT NC DSR
6 NC NC GND
7 0V 0V GND
8 5V 5V NC
Nota: Consumo total máximo a 5 V (pin 8): 180 mA

La siguiente ilustración muestra la clavija de un conector SubD hembra de 9 pins


para TSX PCX 1031.

Clavijas RS232
1 6 1 DCD
2 RX
3 TX
4 DTR
5 SG
9 6 NC
5 7 RTS
8 CTS
9 NC

TWD USE 10AS 93


Comunicaciones

Conexión Una conexión por módem permite la programación y la comunicación con un


mediante línea autómata mediante una línea telefónica.
telefónica El módem asociado al autómata es un módem de recepción conectado al puerto 1
del autómata. Cuando está conectado al puerto serie COM, el módem asociado al
PC puede ser interno o externo.
Esta conexión se ilustra en el diagrama que aparece a continuación.
Puerto serie del PC
Puerto 1
EIA RS-232
RS485

Módem
Módem
externo
línea telefónica

TSXPCX1031 posición 2, conector hembra


con inversión de Tx/Rx D-sub

Nota: Al puerto 1 del autómata sólo puede conectarse un módem.

Nota: Atención: recuerde que debe instalar el software proporcionado con el


módem, ya que TwidoSoft sólo tiene en cuenta los módems instalados.

94 TWD USE 10AS


Comunicaciones

Comunicaciones de conexión remota

Introducción El protocolo de conexión remota es un bus Master/Slave de alta velocidad diseñado


para transferir una pequeña cantidad de datos entre el autómata Master y un
máximo de siete autómatas (Slaves) remotos. Se transfieren datos de E/S o de
aplicación dependiendo de la configuración de los autómatas remotos. Es posible
realizar una mezcla de varios tipos de autómatas remotos, donde unos pueden ser
de E/S remotas y otros, autómatas Peer.

Nota: El autómata Master contiene información acerca de la dirección de una E/S


remota. Desconoce qué autómata específico está en la dirección. Por lo tanto, el
Master no puede validar que realmente existan todas las entradas y salidas
remotas utilizadas en la aplicación de usuario. Compruebe que éstas existan.

Nota: El protocolo y el bus de E/S utilizados están patentados y no se permite


utilizar dispositivos de otros fabricantes en la red.

AVISO
FUNCIONAMIENTO INESPERADO DEL EQUIPO

l Asegúrese de que sólo exista un autómata Master en una conexión


remota y que cada Slave tenga una dirección exclusiva. Si no se
respeta esta precaución, pueden alterarse los datos u obtener
resultados inesperados o ambiguos.
l Asegúrese de que todos los Slaves tengan direcciones exclusivas.
Dos Slaves no deben tener la misma dirección. Si no se respeta esta
precaución, pueden alterarse los datos u obtener resultados
inesperados o ambiguos.
Si no se respetan estas precauciones pueden producirse graves
lesiones o daños materiales

Nota: La conexión remota requiere una conexión EIA RS-485 y sólo puede
ejecutarse en un puerto de comunicación cada vez.

TWD USE 10AS 95


Comunicaciones

Configuración de Una conexión remota debe utilizar un puerto EIA RS-485 de al menos 3 cables.
hardware Puede configurarse para utilizar el primero o un segundo puerto opcional, si lo
hubiese.

Nota: Sólo puede configurarse un puerto de comunicación como conexión remota


de cada vez.

La tabla que aparece a continuación enumera los dispositivos que se pueden


utilizar.
Dispositivo Pue Características
rto
TWDLCAA10/16/24DRF, 1 Autómata base provisto de un puerto EIA RS-485 de 3
TWDLMDA20/40DUK, cables con conector mini DIN.
TWDLMDA20/40DTK,
TWDLMDA20DRT
TWDNOZ485D 2 Módulo de comunicación provisto de un puerto EIA RS-485
de 3 cables con conector mini DIN.
Nota: Este módulo sólo está disponible para los autómatas
modulares. Cuando el módulo está conectado, el autómata
no puede tener un módulo de ampliación del monitor de
operación.
TWDNOZ485T 2 Módulo de comunicación provisto de un puerto EIA RS-485
de 3 cables con bloque terminal.
Nota: Este módulo sólo está disponible para los autómatas
modulares. Cuando el módulo está conectado, el autómata
no puede tener un módulo de ampliación del monitor de
operación.
TWDNAC485D 2 Adaptador de comunicación provisto de un puerto EIA RS-
485 de 3 cables con conector mini DIN.
Nota: Este adaptador sólo está disponible para los
autómatas compactos de 16 y 24 E/S, y el módulo de
ampliación del monitor de operación.
TWDNAC485T 2 Adaptador de comunicación provisto de un puerto EIA RS-
485 de 3 cables con bloque terminal.
Nota: Este adaptador sólo está disponible para los
autómatas compactos de 16 y 24 E/S, y el módulo de
ampliación del monitor de operación.

96 TWD USE 10AS


Comunicaciones

Dispositivo Pue Características


rto
TWDXCPODM 2 Módulo de ampliación del monitor de operación provisto de
un puerto EIA RS-485 de 3 cables con un conector mini
DIN o un puerto EIA RS-485 de 3 cables con bloque
terminal.
Nota: Este módulo sólo está disponible para los autómatas
modulares. Cuando el módulo está conectado, el autómata
no puede tener un módulo de ampliación de comunicación.

Nota: La configuración del puerto 2 (disponibilidad y tipo) sólo se comprueba


durante el encendido o reinicio mediante el firmware Executive del autómata.

TWD USE 10AS 97


Comunicaciones

Conexión del
cable a cada
Nota: La señal DPT en el pin 5 debe estar conectada a 0 V en el pin 7 para
dispositivo
destacar el uso de comunicaciones de conexión remota. Cuando esta señal no
está conectada a tierra, el autómata Twido (como Master o Slave) pasará de forma
predeterminada a un modo en el que intente establecer comunicaciones con
TwidoSoft.

Nota: La conexión DPT a 0 V sólo es necesaria si está conectado a un autómata


base en el puerto 1.

A continuación aparecen representadas las conexiones de cables efectuadas en


cada dispositivo.
Conexión mini DIN

Autómata Autómata Autómata


Master remoto ... remoto
A(+) B(-) 0 V DPT A(+) B(-) 0 V DPT A(+) B(-) 0 V DPT
1 2 7 5

Conexión de terminal

Autómata Autómata Autómata


Master remoto remoto
A(+) B(-) 0V A(+) B(-) 0V A(+) B(-) 0V
A B SG

98 TWD USE 10AS


Comunicaciones

Configuración de Sólo debe haber un autómata Master definido en la conexión remota. Además, cada
software autómata remoto debe mantener una dirección Slave exclusiva. La utilización de
direcciones idénticas por distintos Masters o Slaves puede alterar las transmisiones
o producir ambigüedades.

AVISO
Funcionamiento inesperado del equipo
Asegúrese de que sólo exista un autómata Master en una conexión
remota y que cada Slave tenga una dirección exclusiva. Si no se
respeta esta precaución, pueden alterarse los datos u obtener
resultados inesperados o ambiguos.
Si no se respetan estas precauciones pueden producirse graves
lesiones o daños materiales

Configuración El autómata Master se configura utilizando TwidoSoft para gestionar una red de
del autómata conexión remota de hasta siete autómatas remotos. Estos siete autómatas remotos
Master se pueden configurar como E/S remotas o como autómatas Peer. La dirección del
Master configurado con TwidoSoft se corresponde con la dirección 0.
Para configurar un autómata debe configurar el puerto 1 o 2 con TwidoSoft en
conexión remota y escoger la dirección 0 (Master).
A continuación, en la ventana "Agregar autómata remoto", defina los autómatas
Slaves, ya sean de E/S remotas o autómatas Peer, así como su dirección.

TWD USE 10AS 99


Comunicaciones

Configuración La configuración de un autómata remoto se lleva a cabo con TwidoSoft,


del autómata configurando el puerto 1 o 2 en conexión remota y asignándole una dirección entre
remoto 1 y 7.
La tabla que aparece a continuación resume las diferencias y restricciones de cada
uno de estos tipos de configuraciones del autómata remoto.
Tipo Programa de aplicación Acceso de datos
E/S remotas No %I y %Q

Ni siquiera una instrucción Sólo se puede acceder a E/S


"END" simple locales en el autómata
El modo RUN depende del remoto (no a su E/S de
del Master. ampliación).
Autómata Peer Sí %INW y %QNW

El modo Run es Puede transmitirse un


independiente del del Master. máximo de 4 palabras de
entrada y 4 palabras de
salida procedentes y dirigidas
a cada Peer.

100 TWD USE 10AS


Comunicaciones

Sincronización El ciclo de actualización de la conexión remota no está sincronizado con el ciclo del
del ciclo del autómata Master. Las comunicaciones con los autómatas remotos están
autómata remoto controladas por interrupción y se produce como una tarea de fondo de forma
paralela con la ejecución del ciclo del autómata Master. Al final del ciclo de
exploración, los valores más actualizados se leen en los datos de aplicación que se
van a utilizar para la siguiente ejecución de programas. Este procesamiento es el
mismo para E/S remotas y autómatas Peer.
Cualquier autómata puede comprobar la actividad de conexión general utilizando el
bit del sistema %S111. Sin embargo, para lograr la sincronización, un Master o Peer
deberá utilizar un bit del sistema %S110. Este bit se pone a 1 una vez transcurrido
un ciclo de actualización completo. El programa de aplicación es responsable de
restablecerlo a 0.
El Master puede habilitar o inhabilitar la conexión remota utilizando el bit del sistema
%S112. Los autómatas pueden comprobar la correcta configuración y buen
funcionamiento de la conexión remota utilizando %S113. La señal DPT en el puerto
1 (utilizada para determinar si está conectado TwidoSoft) se detecta y notifica en
%S100.
Todos estos datos se resumen en la siguiente tabla.
Bit de Estado Indicación
sistema
%S100 0 Master/Slave: DPT no activa (cable TwidoSoft NO conectado)
1 Master/Slave: DPT activa (cable TwidoSoft conectado)
%S110 0 Master/Slave: puesto a 0 por la aplicación
1 Master: todos los intercambios de conexión remota completados
(sólo E/S remotas)
Slave: intercambio con Master completado
%S111 0 Master: intercambio único de conexión remota completado
Slave: intercambio único de conexión remota detectado
1 Master: intercambio único de conexión remota en curso
Slave: intercambio único de conexión remota detectado
%S112 0 Master: conexión remota inhabilitada
1 Master: conexión remota habilitada
%S113 0 Master/Slave: configuración/funcionamiento correctos de la
conexión remota
1 Master: configuración/funcionamiento erróneos de la conexión
remota
Slave: funcionamiento de conexión remota erróneo

TWD USE 10AS 101


Comunicaciones

Reinicio del Si se reinicia un autómata Master, se producirá uno de los siguientes sucesos:
autómata Master l Un inicio en frío (%S0 = 1) fuerza una reinicialización de las comunicaciones.
l Un inicio en caliente (%S1 = 1) fuerza una reinicialización de las comunicaciones.
l En modo Stop, el Master sigue comunicándose con los Slaves.

Reinicio del Si se reinicia un autómata Slave, se producirá uno de los siguientes sucesos:
autómata Slave l Un inicio en frío (%S0 = 1) fuerza una reinicialización de las comunicaciones.
l Un inicio en caliente (%S1 = 1) fuerza una reinicialización de las comunicaciones.
l En modo Stop, el Slave sigue comunicándose con el Master. Si el Master indica
un estado un estado de detención (Stop):
l Las E/S remotas pasan a un estado Stop.
l El autómata Peer sigue en su estado actual.

Detención del Cuando el autómata Master pasa a Stop, todos los equipos Slaves siguen
autómata Master comunicándose con el Master. Si el master indica que ha solicitado la detención, se
detendrá un autómata de E/S remotas, pero los autómatas Peer continuarán en su
estado Ejecutar o Detener.

102 TWD USE 10AS


Comunicaciones

Acceso de datos El autómata remoto configurado como E/S remota no tiene ningún programa de
de E/S remotas aplicación ni ejecuta el suyo propio. Las entradas y salidas digitales base del
autómata remoto son una simple ampliación de las del autómata Master. La
aplicación sólo tiene que utilizar el mecanismo de direccionamiento de tres dígitos
que se suministra.

Nota: El número de módulo es siempre cero para las E/S remotas.

Ilustración

Dirección del autómata remoto


Número de módulo
Número de canal

%Q2.0.2
%I7.0.4
Para comunicarse con la E/S remota, el autómata Master utiliza la notación de
entrada y salida estándar %I y %Q. Para acceder al tercer bit de salida de la E/S
remota configurada en la dirección 2, se utiliza la instrucción %Q2.0.2. De forma
similar, para leer el quinto bit de entrada de la E/S remota configurada en la
dirección 7, se utiliza la instrucción %I7.0.4

Nota: El Master tiene restricciones para acceder únicamente a la E/S digital que
forma parte de la E/S local remota. No puede transferirse ninguna E/S analógica
ni de ampliación a menos que utilice comunicaciones Peer.

TWD USE 10AS 103


Comunicaciones

Ilustración

Conexión remota

Autómata Master E/S remotas E/S remotas


Dirección 0 Dirección 2 Dirección 4

%I2.0.0 %I0.0.0
... ...
%I2.0.23 %I0.0.23

%Q2.0.0 %Q0.0.0
... ...
%Q2.0.15 %Q0.0.15

%I4.0.0 %I0.0.0
... ...
%I4.0.23 %I0.0.23

%Q4.0.0 %Q0.0.0
... ...
%Q4.0.15 %Q0.0.15

104 TWD USE 10AS


Comunicaciones

Acceso de datos Para comunicarse con los autómatas Peer, el Master utiliza las palabras de red
del autómata %INW y %QNW para intercambiar datos. Debe accederse a cada Peer de la red
Peer mediante su dirección remota "j" utilizando las palabras %INWj.k y %QNWj.k. Cada
autómata Peer de la red utiliza %INW0.0 a %INW0.3 y %QNW0.0 a %QNW0.3 para
acceder a los datos del Master. Las palabras de red se actualizan de forma
automática cuando el autómata está en modo Run o Stop.
El ejemplo que aparece a continuación ilustra el intercambio de un Master con dos
autómatas Peer configurados.
Conexión remota

Autómata Master Autómata Peer Autómata Peer


Dirección 0 Dirección 1 Dirección 3

%INW1.0 %QNW0.0
... ...
%INW1.3 %QNW0.3

%QNW1.0 %INW0.0
... ...
%QNW1.3 %IWN0.3
%QNW0.0
%INW3.0 ...
... %QNW0.3
%INW3.3

%INW0.0
%QNW3.0
...
...
%INW0.3
%QNW3.3

No existe mensajería Peer to Peer dentro de la conexión remota. El programa de


aplicación puede utilizarse junto con las palabras de red para transferir la
información entre los autómatas remotos, que utilizan el Master como pasarela.

TWD USE 10AS 105


Comunicaciones

Información de Además de los bits del sistema explicados anteriormente, el master conserva su
estado estado con el aspecto y la configuración de los autómatas remotos. Esto se realiza
en las palabras de sistema %SW111 y %SW113. Tanto el autómata remoto como
el Master pueden adquirir el valor del último error producido durante la
comunicación en la conexión remota de la palabra de sistema %SW112.

Palabras Uso
de
sistema
%SW111 Estado de la conexión remota: dos bits para cada autómata remoto (sólo
Master)
x0-6 0 - Autómata remoto 1-7 ausente
1 – Autómata remoto 1-7 presente
x8-14 0 - E/S remotas detectadas en el autómata remoto 1-7
1 – Autómata Peer detectado en el autómata remoto 1-7
%SW112 Código de error de configuración/funcionamiento de la conexión remota
0 - Operaciones correctas
1 - Timeout detectado (Slave)
2 - Error de suma de control detectado (Slave)
3 – Discrepancia de configuración (Slave)
%SW113 Configuración de la conexión remota: dos bits para cada autómata remoto (sólo
Master)
x0-6 0 – Autómata remoto 1-7 no configurado
1- Autómata remoto 1-7 configurado
x8-14 0 - E/S remota configurada como autómata remoto 1-7
1 – Autómata Peer configurado como autómata remoto 1-7

106 TWD USE 10AS


Comunicaciones

Ejemplo de Para configurar una conexión remota debe seguir estos pasos:
conexión remota 1. Configurar el hardware.
2. Cablear los autómatas.
3. Conectar el cable de comunicación entre el PC y los autómatas.
4. Configurar el software.
5. Escribir una aplicación.
Los diagramas que aparecen a continuación ilustran el uso de la conexión remota
con la E/S remota y un autómata Peer.
Paso 1: Configuración del hardware
I0.0

I0.1
Autómata Master E/S remotas Autómata Peer
Q0.0

Q0.1

La configuración del hardware se compone de tres autómatas base de cualquier


tipo. El puerto 1 se utiliza en dos modos de comunicación. Un modo se utiliza para
configurar y transferir el programa de aplicación con TwidoSoft. El segundo, para la
red de conexión remota. Si está disponible, puede utilizarse el puerto 2 opcional de
los autómatas, pero un autómata sólo admite una conexión remota.

Nota: En este ejemplo, las dos primeras entradas de la E/S remota están
cableadas a sus dos primeras salidas.

Paso 2: Cableado de los autómatas


Connexión mini DIN

Autómata Autómata remoto Autómata Peer


Master Dirección 1 ... Dirección 2
A(+) B(-) GND DPT A(+) B(-) GND DPT A(+) B(-) GND DPT
1 2 7 5

Conexión de terminal

Autómata Autómata remoto Autómata Peer


Master Dirección 1 ... Dirección 2
A(+) B(-) 0 V A(+) B(-) 0 V A(+) B(-) 0 V
A B SG

TWD USE 10AS 107


Comunicaciones

Conecte los cables de señal A(+) y B(-) entre sí. En cada autómata, la señal DPT
está puesta a tierra. Aunque no es necesario, es recomendable poner a tierra la
señal para utilizarla con una conexión remota en el puerto 2 (el cartucho opcional o
el módulo de comunicación).

Paso 3: Conexión del cable de comunicación entre el PC y los autómatas


Autómata Autómata Puerto serie del PC
Master E/S remotas Peer TSX PCX 1031 EIA RS-232
2
1 3
0

TSX PCX 3030 Puerto USB


El cable de programación de varias funciones TSXPCX1031 o TSX PCX 3030 se
utiliza para comunicarse con cada uno de los tres autómatas base. Asegúrese de
que el conmutador del cable está en la posición 2. Para programar cada autómata,
es necesario establecer una comunicación punto a punto con cada autómata. Para
establecer esta comunicación: conecte el puerto 1 del primer autómata, transfiera
los datos de aplicación y configuración, y establezca el autómata al estado de
ejecución. Repita este procedimiento con cada autómata.

Nota: Es necesario desplazar el cable después de configurar cada autómata y


transferir la aplicación.

Paso 4: Configuración del software:


Cada uno de los tres autómatas utiliza TwidoSoft para crear una configuración y, si
fuera pertinente, el programa de aplicación.
En el autómata Master, edite la instalación de comunicaciones del autómata para
establecer el protocolo como "conexión remota" y la dirección en "0 (Master)".

Instalación de com. del autómata


Tipo: conexión remota
Dirección: 0 (Master)

108 TWD USE 10AS


Comunicaciones

Configure el autómata remoto en el Master agregando una "E/S remota" en la


dirección "1" y un "autómata Peer" en la dirección "2".

Agregar autómatas remotos

Utilización del autómata: E/S remotas


Dirección remota: 1

Utilización del autómata: Autómata Peer


Dirección remota: 2

En el autómata configurado como una E/S remota, compruebe que la configuración


de comunicaciones del autómata está establecida como "conexión remota" y en la
dirección "1".
Instalación de com. del autómata
Tipo: conexión remota
Dirección: 1

En el autómata configurado como Peer, compruebe que la configuración de


comunicaciones del autómata está establecida como "conexión remota" y en la
dirección "2".
Configuración de com. del autómata
Tipo: conexión remota
Dirección: 2

Paso 5: Escritura de las aplicaciones:


En el autómata Master, escriba el siguiente programa de aplicación:
LD 1

[%MW0 := %MW0 +1]


[%QNW2.0 := %MW0]
[%MW1 := %INW2.0]

LD %I0.0
ST %Q1.00.0
LD %I1.0.0
ST %Q0.0

LD %I0.1
ST %Q1.0.1
LD %I1.0.1
ST %Q0.1

En el autómata configurado como E/S remota, no escriba ningún tipo de programa


de aplicación.

TWD USE 10AS 109


Comunicaciones

En el autómata configurado como Peer, escriba la siguiente aplicación:


LD 1
[%QNW0.0 := %INW0.0]

En este ejemplo, la aplicación Master incrementa una palabra de memoria interna


y la comunica al autómata Peer utilizando una sola palabra de red. El autómata
Peer toma la palabra recibida del Master y la devuelve. En el Master, una palabra
de memoria diferente recibe y almacena esta transmisión.
Para establecer comunicación con el autómata de E/S remota, el Master envía sus
entradas locales a las salidas de E/S remotas. Con el cableado de E/S externa de
la E/S remota, las señales se devuelven y recuperan mediante el Master.

110 TWD USE 10AS


Comunicaciones

Comunicaciones ASCII

Introducción El protocolo ASCII proporciona a los autómatas Twido un protocolo de modo


caracteres half duplex simple que permite transferir y/o recibir datos mediante un
solo dispositivo. Este protocolo se admite mediante la instrucción EXCHx y se
gestiona con el bloque de función %MSGx.
Se pueden utilizar los tres tipos de comunicaciones siguientes con el protocolo
ASCII:
l Sólo transmisión
l Transmisión/recepción
l Sólo recepción
El tamaño máximo de las tramas transmitidas o recibidas por medio de la
instrucción EXCHx es de 256 bytes.

Configuración Puede establecerse una conexión ASCII en el puerto EIA RS-232 o EIA RS-485 y
del hardware puede ejecutarse hasta en dos puertos de comunicación al mismo tiempo.
La tabla que aparece a continuación enumera los dispositivos que se pueden
utilizar.
Dispositivo Puer Características
to
TWDLCAA10/16/24DRF, 1 Autómata base provisto de un puerto EIA RS-485 de 3
TWDLMDA20/40DUK, cables con conector mini DIN.
TWDLMDA20/40DTK,
TWDLMDA20DRT
TWDNOZ232D 2 Módulo de comunicación provisto de un puerto EIA RS-
232 de 3 cables con conector mini DIN.
Nota: Este módulo sólo está disponible para los
autómatas modulares. Cuando el módulo está conectado,
el autómata no puede tener un módulo de ampliación del
monitor de operación.
TWDNOZ485D 2 Módulo de comunicación provisto de un puerto EIA RS-
485 de 3 cables con conector mini DIN.
Nota: Este módulo sólo está disponible para los
autómatas modulares. Cuando el módulo está conectado,
el autómata no puede tener un módulo de ampliación del
monitor de operación.
TWDNOZ485T 2 Módulo de comunicación provisto de un puerto EIA RS-
485 de 3 cables con bloque terminal.
Nota: Este módulo sólo está disponible para los
autómatas modulares. Cuando el módulo está conectado,
el autómata no puede tener un módulo de ampliación del
monitor de operación.

TWD USE 10AS 111


Comunicaciones

Dispositivo Puer Características


to
TWDNAC232D 2 Adaptador de comunicación provisto de un puerto EIA
RS-232 de 3 cables con conector mini DIN.
Nota: Este adaptador sólo está disponible para los
autómatas compactos de 16 y 24 E/S, y el módulo de
ampliación del monitor de operación.
TWDNAC485D 2 Adaptador de comunicación provisto de un puerto EIA
RS-485 de 3 cables con conector mini DIN.
Nota: Este adaptador sólo está disponible para los
autómatas compactos de 16 y 24 E/S, y el módulo de
ampliación del monitor de operación.
TWDNAC485T 2 Adaptador de comunicación provisto de un puerto EIA
RS-485 de 3 cables con bloque terminal.
Nota: Este adaptador sólo está disponible para los
autómatas compactos de 16 y 24 E/S, y el módulo de
ampliación del monitor de operación.
TWDXCPODM 2 Módulo de ampliación del monitor de operación provisto
de un puerto EIA RS-232 de 3 cables con un conector
mini DIN, un puerto EIA RS-485 de 3 cables con conector
mini DIN y un puerto EIA RS-485 de 3 cables con bloque
terminal.
Nota: Este módulo sólo está disponible para los
autómatas modulares. Cuando el módulo está conectado,
el autómata no puede tener un módulo de ampliación de
comunicación.

Nota: La configuración del puerto 2 (disponibilidad y tipo) sólo se comprueba


durante el encendido o reinicio mediante el firmware Executive del autómata.

112 TWD USE 10AS


Comunicaciones

Cableado A continuación, se ilustran las conexiones de un cableado nominal para los tipos
nominal EIA RS-232 y EIA RS-485.

Nota: Si se utiliza el puerto 1 en el autómata Twido, la señal DPT del pin 5 debe
conectarse a 0V en el pin 7. Esto indica al autómata Twido que la comunicación a
través del puerto 1 es ASCII y no el protocolo utilizado para comunicarse con el
software TwidoSoft.

A continuación aparecen representadas las conexiones de cables efectuadas en


cada dispositivo.
Conexión mini DIN
Cable EIA RS-232

Autómata Dispositivo
Twido remoto
TXD RXD GND TXD RXD GND
3 4 7

Cable EIA RS-485

Autómata Dispositivo Dispositivo


Twido remoto ... remoto
A(+) B(-) GND DPT A(+) B(-) GND A(+) B(-) GND
1 2 7 5

Conexión de terminal

Autómata Dispositivo Dispositivo


Master remoto remoto
A(+) B(-) 0 V A(+) B(-) 0 V A(+) B(-) 0 V
A B SG

TWD USE 10AS 113


Comunicaciones

Configuración de Para configurar el autómata con el fin de utilizar un enlace de serie para enviar y
software recibir caracteres utilizando el protocolo ASCII, deberá proceder como se explica a
continuación.
Paso Descripción
1 Configurar el puerto serie para ASCII utilizando TwidoSoft.
2 Crear en la aplicación una tabla de emisión/recepción que será utilizada por la
instrucción EXCHx.

Configuración Un autómata Twido puede utilizar su puerto 1 primario o un puerto 2 configurado de


del puerto forma opcional para utilizar el protocolo ASCII. Para configurar un puerto serie para
ASCII:
Paso Acción
1 Definir todos los módulos o adaptadores de comunicación adicionales
configurados en la base.
2 Hacer clic con el botón derecho en el puerto y hacer clic en Configuración de
com. del autómata y cambiar el tipo de puerto serie a "ASCII".
3 Establecer los parámetros de comunicaciones asociados.

Configuración de El tamaño máximo de las tramas emitidas o recibidas es de 256 bytes. La tabla de
la tabla de palabras asociada a la instrucción EXCHx está formada por tablas de control de
emisión/ emisión y de recepción.
recepción del
Byte más significativo Byte menos significativo
modo ASCII
Tabla de control Comando Longitud (emisión/recepción)
Reservados (0) Reservados (0)
Tabla de emisión Byte 1 emitido Byte 2 emitido
... ...
... Byte no emitido
Byte n+1 emitido
Tabla de recepción Byte 1 recibido Byte 2 recibido
... ...
... Byte p recibido
Byte p+1 recibido

114 TWD USE 10AS


Comunicaciones

Tabla de control El byte longitud contiene la longitud de la tabla de emisión en bytes (250 máx.),
sobrescrita por el número de caracteres recibidos al final de la recepción, en caso
de que esta se solicite.
El byte comando debe contener uno de los siguientes elementos:
l 0: Sólo emisión
l 1: Emisión/recepción
l 2: Sólo recepción

Tablas de En el modo Sólo emisión, las tablas de control y de emisión se completarán antes
emisión/ de la ejecución de la instrucción EXCHx y pueden ser de tipo %KW o %MW. No se
recepción necesita ningún espacio para recibir los caracteres en modo Sólo emisión. Una vez
que se han emitido todos los bytes, %MSGx.D se pone a 1 y se puede ejecutar una
nueva instrucción EXCHx.
En el modo Emisión/recepción, las tablas de control y de emisión se completarán
antes de la ejecución de la instrucción EXCHx y deben ser de tipo %MW. Se
necesita espacio para un máximo de 256 bytes de recepción al final de la tabla de
emisión. Una vez que se han emitido todo los bytes, el autómata Twido pasa a
modo de recepción y está preparado para recibir bytes.
En el modo Sólo recepción, la tabla de control se completará antes de la ejecución
de la instrucción EXCHx y debe ser de tipo %MW. Se necesita espacio para un
máximo de 256 bytes de recepción al final de la tabla de control. El autómata Twido
pasa inmediatamente al modo de recepción y está preparado para recibir bytes.
La recepción finaliza una vez que se recibe el byte de fin de trama o se llena la tabla
de recepción. En ese caso aparecería un error (tabla de recepción desbordada) en
la palabra %SW63 y %SW64. Si está configurado un tiempo de espera distinto de
cero, la recepción finaliza una vez transcurrido dicho tiempo. Si selecciona el valor
cero como tiempo de espera, no habrá ningún retraso de recepción. Para detener
la recepción, por tanto, deberá activar la entrada %MSGx.R.

Intercambio de El lenguaje le ofrece dos servicios de comunicación:


mensajes l Instrucción EXCHx: para emitir/recibir mensajes,
l Bloque de función %MSGx: para controlar los intercambios de mensajes.
Cuando se procesa una instrucción EXCHx, el autómata Twido utiliza el protocolo
configurado para dicho puerto.

Nota: Cada puerto de comunicación puede configurarse para protocolos


diferentes o para el mismo. Para acceder a la instrucción EXCHx o al bloque de
función %MSGx para cada puerto de comunicación, sólo hay que agregar el
número de puerto (1 ó 2).

TWD USE 10AS 115


Comunicaciones

Instrucción La instrucción EXCHx permite al autómata Twido enviar o recibir información


EXCHx dirigida o procedente de dispositivos ASCII. El usuario define una tabla de palabras
(%MWi:L o %Kwi:L) que contiene información de control y los datos que se van a
enviar o recibir (hasta 256 bytes en la transmisión o recepción). El formato de la
tabla se describe en secciones anteriores.
Los intercambios de mensajes se realizan mediante la instrucción EXCHx.
Sintaxis: [EXCHx %MWi:L] o [EXCHx %KWi:L]

donde: x = número de puerto (1 ó 2).


L = número de palabras del la tabla de palabras de
comando, de la tabla de emisión y recepción

El autómata Twido debe finalizar el intercambio desde la primera instrucción EXCHx


antes de que se ejecute una segunda. Se debe utilizar el bloque de función %MSGx
cuando se envíen varios mensajes.
El procesamiento de la instrucción de lista EXCHx se produce inmediatamente, con
cualquier emisión iniciada bajo el control de interrupción (la recepción de datos
también se encuentra bajo el control de interrupción), que se considera
procesamiento de fondo.

116 TWD USE 10AS


Comunicaciones

Bloque de El uso del bloque de función %MSGx es opcional; puede utilizarse para gestionar
función %MSGx los intercambios de datos. El bloque de función %MSGx tiene tres propósitos:
l Comprobación de errores de comunicación
La comprobación de errores verifica que el parámetro L (longitud de la tabla de
palabras) programada con la instrucción EXCHx es lo suficientemente grande
como para contener la longitud del mensaje que se va a enviar. Se compara con
la longitud programada en el byte menos significativo de la primera palabra de la
tabla de palabras.
l Coordinación de varios mensajes
Para asegurar la coordinación cuando se envíen varios mensajes, el bloque de
función %MSGx proporciona la información requerida para determinar el
momento en que ha finalizado la emisión del mensaje anterior.
l Emisión de mensajes prioritarios
El bloque de función %MSGx permite la detención de la emisión del mensaje
actual para permitir el envío inmediato de un mensaje urgente.
El bloque de función %MSGx tiene una entrada y dos salidas asociadas:
Entrada/salida Definición Descripción
R Restablecer entrada Puesta a 1: reinicializa la comunicación o
restablece el bloque (%MSGx.E = 0 y
%MSGx.D = 1).
%MSGx.D Comunicación 0: solicitud en curso.
completa 1: comunicación realizada si se concluye la
emisión, se recibe el carácter final, se
produce un error o se restablece el bloque.
%MSGx.E Error 0: longitud del mensaje y enlace correctos.
1: si hay un comando inválido, la tabla se
configura de forma incorrecta, se recibe un
carácter incorrecto (velocidad, paridad, etc.)
o la tabla de recepción está llena.

TWD USE 10AS 117


Comunicaciones

Limitaciones Es importante respetar las siguientes limitaciones:


l La disponibilidad y el tipo de puerto 2 (véase %SW7) sólo se comprueban
durante el encendido o reinicio.
l El procesamiento de un mensaje en el puerto 1 se cancela cuando se conecta
TwidoSoft.
l EXCHx o %MSG no se puede procesar en un puerto configurado como conexión
remota.
l EXCHx interrumpe el procesamiento activo de cualquier Slave Modbus.
l El procesamiento de las instrucciones EXCHx no se vuelve a intentar en caso de
error.
l Restablecer entrada (R) se puede utilizar para interrumpir el procesamiento de
recepción de la instrucción EXCHx.
l Las instrucciones EXCHx se pueden configurar con un timeout para interrumpir
la recepción.
l Los mensajes múltiples se controlan a través de %MSGx.D.

Errores y Si se produce un error durante el uso de una instrucción EXCHx, los bits %MSGx.D
condiciones de y %MSGx.E se ponen a 1 y la palabra de sistema %SW63 contiene el código de
funcionamiento error para el puerto 1, y %SW64 contiene el código de error para el puerto 2.
Palabras Uso
de
sistema
%SW63 Código de error EXCH1:
0 - Operación correcta
1 – Número excesivo de bytes para emitir (> 250)
2 - Tabla de emisión demasiado pequeña
3 - Tabla de palabras demasiado pequeña
4 - Tabla de recepción desbordada
5 - Timeout transcurrido
6 - Error de emisión
7 - Comando incorrecto en la tabla
8 - Puerto seleccionado no configurado/disponible
9 - Error de recepción (sólo en modo ASC11)
10 - No se puede utilizar %KW si se está recibiendo
11 – Desplazamiento de emisión mayor que la tabla de emisión
12 – Desplazamiento de recepción mayor que la tabla de recepción
13 - Procesamiento EXCH detenido por el autómata
%SW64 Código de error EXCH2: Consulte %SW63.

118 TWD USE 10AS


Comunicaciones

Efectos del Si se reinicia un autómata, se producirá uno de los siguientes sucesos:


reinicio del l Un inicio en frío (%S0 = 1) fuerza una reinicialización de las comunicaciones.
autómata en la l Un inicio en caliente (%S1 = 1) fuerza una reinicialización de las comunicaciones.
comunicación l En Stop, el autómata detiene todas las comunicaciones ASCII.

Ejemplo de Para configurar una conexión ASCII debe seguir estos pasos:
conexión ASCII 1. Configure el hardware.
2. Conecte el cable de comunicación ASCII.
3. Configure el puerto.
4. Escriba una aplicación.
5. Inicialice el editor de tablas de animación.
La ilustración siguiente muestra el uso de la comunicación ASCII por medio de un
emulador de terminal en un PC.

Paso 1: Configuración del hardware:

Puerto 2 EIA RS-232 Puerto serie COM 2


Autómata
Twido

La configuración del hardware consiste en dos conexiones serie entre el PC y un


autómata Twido provisto de un puerto 2 EIA RS-232 opcional. En un autómata
modular, el puerto 2 opcional se corresponde con TWDNOZ232D o con
TWDNAC232D en TWDXCPODM. En el autómata compacto, el puerto 2 opcional
es un puerto TWDNAC232D.
Para configurar el autómata, conecte el cable TSXPCX1031 (no ilustrado) en el
puerto 1 del autómata Twido. A continuación, conecte el cable al puerto COM 1 del
PC. Compruebe que el conmutador está en la posición 2. Para finalizar, conecte el
puerto COM 2 del PC al puerto 2 EIA RS-232 del autómata Twido. En el paso
siguiente se muestra el esquema de cableado.

Paso 2: Esquema del cable de comunicación ASCII (EIA RS-232):

Autómata Ordenador
Twido personal
TXD RXD GND TXD RXD GND
3 4 7 3 2 5

El número mínimo de cabes utilizado en el cable de comunicación ASCII es de 3.


Cruce las señales de transmisión y recepción.

TWD USE 10AS 119


Comunicaciones

Nota: En el extremo del cable correspondiente al PC, pueden ser necesarias


conexiones adicionales (como DTR y DSR) para cumplir el protocolo de
transmisión. No es necesaria ninguna conexión adicional para el autómata Twido.

Paso 3: Configuración del puerto:

Hardware -> Agregar opción Emulador terminal en un PC


TWDNOZ232D
Puerto: COM2
Hardware => Configuración de com. del autómata
Velocidad en baudios:
Datos: 8 bits
Puerto: 2
Paridad: Ninguna
Tipo: ASCII Detención: 1 bit
Velocidad en baudios: 19200 Control de flujo: Ninguno
Datos: 8 bits
Paridad: Ninguna
Detención: 1 bit
Fin de trama: 65
Timeout de respuesta: 100 x 100 ms

Utilice una aplicación simple de emulador de terminal en el PC para configurar el


puerto COM2 y para garantizar la ausencia de control de flujo.
Configure el puerto del autómata con TwidoSoft. En primer lugar, configure la
opción de hardware. En este ejemplo, se agrega el puerto TWDNOZ232D al
autómata base modular.
En segundo lugar, inicialice la instalación de comunicaciones del autómata por
medio de los mismos parámetros del emulador de terminal en el PC. En este
ejemplo, se escoge la letra mayúscula "A" como carácter de "fin de trama", para
concluir la recepción de caracteres. Se selecciona un tiempo de espera de diez
segundos para el parámetro Timeout de respuesta. Sólo se utilizará uno de los dos
parámetros, dependiendo del que se produzca en primer lugar.

Paso 4:Escritura de una aplicación:


LD 1
[%MW10 := 16#0104]
[%MW11 := 16#0000]
[%MW12 := 16#4F4B]
[%MW13 := 16#0A0D]
LD 1
AND %MSG2.D
[EXCH2 %MW10:8]
LD %MSG2.E
ST %Q0.0
END

120 TWD USE 10AS


Comunicaciones

Utilice TwidoSoft para crear un programa de aplicación en tres tiempos. En primer


lugar, inicialice la tabla de control y la tabla de emisión que va a utilizar en la
instrucción EXCH. En este ejemplo, se configura un comando para enviar y recibir
datos a la vez. La cantidad de datos que se envían está controlada por cuatro bytes
y se inicializa con los caracteres: "O", "K", CR y LF.
A continuación compruebe que el bit de estado de la comunicación asociado a
%MSG2 y ejecute la instrucción EXCH2 sólo si el puerto está preparado. Se
especifica un valor de 8 palabras para la instrucción EXCH2. Hay dos palabras de
comando (%MW10 y %MW11), dos palabras para utilizar en las informaciones de
transmisión (%MW12 y %MW13) y cuatro palabras para recibir los datos (%MW14
a %MW17).
Por último, se detecta el estado de error de %MSG2 y se guarda en el primer bit de
salida de las E/S locales del autómata base. También se podría añadir una
comprobación de errores adicional mediante %SW64 para aumentar la precisión.

Paso 5: Inicialización del editor de tablas de animación:


Dirección Actual Guardado Formato
1 %MW10 0104 Hexadecimal
2 %MW11 0000 Hexadecimal
3 %MW12 4F4B Hexadecimal
4 %MW13 0A0D Hexadecimal
5 %MW14 TW ASCII
6 %MW15 ID ASCII
7 %MW16 O ASCII
8 %MW17 A ASCII

El último paso consiste en descargar la aplicación del autómata y ejecutarla.


Inicialice el editor de tablas de animación para animar y visualizar las palabras
%MW10 a %MW17. En el emulador terminal, se visualizan los caracteres "O"-"K"-
CR-LF. Los caracteres "O"-"K"-CR-LF pueden mostrarse tantas veces como lo
permita el timeout de respuesta del bloque EXCH y hasta que se inicie un nuevo
bloque EXCH. En el emulador de terminal, introduzca "T"-"W"-"I"-"D"-"O"-" "-"A".
Estas informaciones se intercambian con el autómata Twido y se visualizan en el
editor de tablas de animación.

TWD USE 10AS 121


Comunicaciones

Comunicaciones Modbus

Introducción El protocolo Modbus es un protocolo master/slave que permite a un master, y sólo


a uno, pedir respuestas de los slaves o realizar acciones dependiendo de las
peticiones. El master puede dirigirse a los slaves individuales o iniciar una difusión
de mensajes para todos los slaves. Los slaves devuelven un mensaje (respuesta)
a las peticiones que se les envían individualmente. No se devuelven respuestas a
las peticiones de difusión general desde el master.

Configuración de Puede establecerse una conexión Modbus en el puerto EIA RS-232 o EIA RS-485
hardware y puede ejecutarse como máximo en dos puertos de comunicación al mismo
tiempo. A cada uno de estos puertos se le puede asignar su propia dirección
Modbus.
La tabla que aparece a continuación enumera los dispositivos que se pueden
utilizar.
Dispositivo Puer Características
to
TWDLCAA10/16/24DRF, 1 Autómata base provisto de un puerto EIA RS-485 de tres
TWDLMDA20/40DUK, cables con conector mini DIN.
TWDLMDA20/40DTK,
TWDLMDA20DRT
TWDNOZ232D 2 Módulo de comunicación provisto de un puerto EIA RS-
232 de tres cables con conector mini DIN.
Nota: Este módulo sólo está disponible para los
autómatas modulares. Cuando el módulo está
conectado, el autómata no puede tener un módulo de
ampliación del monitor de operación.
TWDNOZ485D 2 Módulo de comunicación provisto de un puerto EIA RS-
485 de tres cables con conector mini DIN.
Nota: Este módulo sólo está disponible para los
autómatas modulares. Cuando el módulo está
conectado, el autómata no puede tener un módulo de
ampliación del monitor de operación.
TWDNOZ485T 2 Módulo de comunicación provisto de un puerto EIA RS-
485 de tres cables con bloque terminal.
Nota: Este módulo sólo está disponible para los
autómatas modulares. Cuando el módulo está
conectado, el autómata no puede tener un módulo de
ampliación del monitor de operación.

122 TWD USE 10AS


Comunicaciones

Dispositivo Puer Características


to
TWDNAC232D 2 Adaptador de comunicación provisto de un puerto EIA
RS-232 de tres cables con conector mini DIN.
Nota: Este adaptador sólo está disponible para los
autómatas compactos de 16 y 24 E/S, y el módulo de
ampliación del monitor de operación.
TWDNAC485D 2 Adaptador de comunicación provisto de un puerto EIA
RS-485 de tres cables con conector mini DIN.
Nota: Este adaptador sólo está disponible para los
autómatas compactos de 16 y 24 E/S, y el módulo de
ampliación del monitor de operación.
TWDNAC485T 2 Adaptador de comunicación provisto de un puerto EIA
RS-485 de tres cables con conector terminal.
Nota: Este adaptador sólo está disponible para los
autómatas compactos de 16 y 24 E/S, y el módulo de
ampliación del monitor de operación.
TWDXCPODM 2 Módulo de ampliación del monitor de operación provisto
de un puerto EIA RS-232 de tres cables con un conector
mini DIN, un puerto EIA RS-485 de tres cables con
conector mini DIN y un puerto EIA RS-485 de tres cables
con bloque terminal.
Nota: Este módulo sólo está disponible para los
autómatas modulares. Cuando el módulo está
conectado, el autómata no puede tener un módulo de
ampliación de comunicación.

Nota: La configuración del puerto 2 (disponibilidad y tipo) sólo se comprueba


durante el encendido o reinicio mediante el firmware Executive del autómata.

TWD USE 10AS 123


Comunicaciones

Cableado A continuación, se ilustran las conexiones de un cable nominal para los tipos EIA
nominal RS-232 y EIA RS-485.

Nota: Si se utiliza el puerto 1 en el autómata Twido, la señal DPT del pin 5 debe
conectarse a 0 V en el pin 7. Esto indica al autómata Twido que la comunicación
a través del puerto 1 es Modbus y no el protocolo utilizado para comunicarse con
el software TwidoSoft.

A continuación, aparecen representadas las conexiones de cables efectuadas en


cada dispositivo.
Conexión mini DIN
Cable EIA RS-232

Autómata Dispositivo
Twido remoto
TXD RXD GND TXD RXD GND
3 4 7

Cable EIA RS-485

Autómata Dispositivo Dispositivo


Twido remoto ... remoto
A(+) B(-) GND DPT A(+) B(-) GND A(+) B(-) GND
1 2 7 5

Conexión de terminal

Autómata Autómata Autómata


master remoto remoto
A(+) B(-) 0 V A(+) B(-) 0 V A(+) B(-) 0 V
A B SG

124 TWD USE 10AS


Comunicaciones

Configuración de Para configurar el controlador con el fin de utilizar un enlace de serie para enviar y
software recibir caracteres utilizando el protocolo Modbus, deberá proceder como se explica
a continuación:
Paso Descripción
1 Configurar el puerto serie para el protocolo Modbus mediante TwidoSoft.
2 Crear en la aplicación una tabla de emisión/recepción que será utilizada por la
instrucción EXCHx.

Configuración Un autómata Twido puede utilizar su puerto 1 primario o un puerto 2 configurado de


del puerto forma opcional para utilizar el protocolo Modbus. Para configurar un puerto serie
para Modbus, siga estos pasos:
Paso Acción
1 Definir los módulos o adaptadores de comunicación adicionales configurados
en la base.
2 Hacer clic con el botón derecho en el puerto y hacer clic en Editar
configuración de com. del controlador... y cambiar el tipo de puerto serie a
"Modbus".
3 Establecer los parámetros de comunicación asociados.

TWD USE 10AS 125


Comunicaciones

Modbus master El modo master de Modbus permite el autómata enviar una petición Modbus a un
slave y esperar una respuesta. El modo master de Modbus sólo se admite a través
de la instrucción EXCHx. El modo master de Modbus admite los formatos ASCII
Modbus y RTU Modbus.
El tamaño máximo de las tramas emitidas o recibidas es de 128 bytes. La tabla de
palabras asociada a la instrucción EXCHx está formada por tablas de control, de
emisión y de recepción.
Byte más significativo Byte menos significativo
Tabla de control Comando Longitud (emisión/recepción)
Desplazamiento de recepción Desplazamiento de emisión
Tabla de emisión Byte 1 emitido Byte 2 emitido
... ...
... Byte n emitido
Byte n+1 emitido
Tabla de recepción Byte 1 recibido Byte 2 recibido
... ...
... Byte p recibido
Byte p+1 recibido

126 TWD USE 10AS


Comunicaciones

Tabla de control El byte Longitud contiene la longitud de la tabla de emisión sobrescrita por el
número de caracteres recibidos al final de la recepción, en caso de que esta se
solicite.
Este parámetro es la longitud en bytes de la tabla de emisión. Si el parámetros de
desplazamiento de la emisión es igual a cero, será igual a la longitud de la trama de
emisión. Si el parámetro de desplazamiento de la emisión no es igual a 0, no se
transmitirá un byte de la tabla de emisión (indicado por el valor de desplazamiento)
y este parámetro será igual a la longitud de trama más 1.
El byte Comando,en caso de que se produzca una solicitud Modbus RTU (excepto
para la difusión general), debe ser siempre igual a 1.
El byte Desplazamiento de emisión contiene el rango (1 para el primer byte, 2
para el segundo byte, etc.) dentro de la tabla de emisión del byte que se ignorará
cuando se emitan los bytes. Se utiliza para gestionar las emisiones asociadas a los
valores de byte/palabra del protocolo Modbus. Por ejemplo, si este byte es igual a
3, el tercer byte se ignorará, haciendo que el cuarto byte de la tabla sea el tercero
en emitirse.
El byte Desplazamiento de recepción contiene el rango (1 para el primer byte, 2
para el segundo byte, etc.) dentro de la tabla de recepción que se agregará cuando
se emitan los bytes. Se utiliza para gestionar las emisiones asociadas a los valores
de byte/palabra del protocolo Modbus. Por ejemplo, si este byte es igual a 3, el
tercer byte de la tabla se representará con un cero y el tercer byte recibido se
introducirá en la cuarta ubicación de la tabla.

TWD USE 10AS 127


Comunicaciones

Tablas de En uno de los dos modos (Modbus ASCII o Modbus RTU), la tabla de emisión se
emisión/ escribe con el contenido de la petición antes de ejecutar la instrucción EXCHx. En
recepción el momento de la ejecución, el autómata determina qué es la capa de enlace de
datos y realiza todas las conversiones necesarias para procesar la emisión y la
respuesta. Los caracteres de inicio, fin y control no se almacenan en las tablas de
emisión/recepción.
Una vez emitidos todos los bytes, el autómata cambia a modo de recepción y
espera a recibir los bytes.
La recepción finaliza de una de las formas siguientes:
l Se detecta un rebasamiento del tiempo de espera en un carácter o en una trama,
l el carácter de fin de trama se recibe en modo ASCII o
l la tabla de recepción está llena.

Los Bytes transmitidos X contienen los datos del protocolo Modbus (codificación
RTU) que se va a emitir. Si el puerto de comunicación está configurado para
Modbus ASCII, los caracteres de trama correctos se agregan a la emisión. El
primer byte contiene la dirección del dispositivo (específica o general), el segundo
byte contiene el código de función y el resto contiene información asociada al
código de función.

Nota: Esta es una aplicación típica, pero no define todas las posibilidades. No se
realizará ninguna validación de los datos que se están emitiendo.

Los Bytes recibidos X contienen los datos del protocolo Modbus (codificación
RTU) que se va a recibir. Si el puerto de comunicación está configurado para
Modbus ASCII, los caracteres de trama correctos se eliminan de la respuesta. El
primer byte contiene la dirección del dispositivo, el segundo byte contiene el código
de función (o código de respuesta) y el resto contiene información asociada al
código de función.

Nota: Esta es una aplicación típica, pero no define todas las posibilidades. No se
realizará ninguna validación de los datos que se están recibiendo, excepto para la
verificación de la suma de control.

128 TWD USE 10AS


Comunicaciones

Modbus slave El modo slave de Modbus permite al autómata responder a las peticiones Modbus
estándar procedentes de un master Modbus.
Cuando el cable TSXPCX1031 se conecta al autómata, la comunicación con
TwidoSoft se inicia en el puerto, inhabilitando temporalmente el modo de
comunicación que estaba en ejecución antes de que se conectara el cable.
El protocolo Modbus admite dos formatos de capa de enlace de datos: ASCII y
RTU. Cada uno está definido por la implementación de la capa física: ASCII utiliza
7 bits de datos y RTU utiliza 8 bits de datos.
Cuando se utiliza el modo ASCII Modbus, cada byte del mensaje se envía como dos
caracteres ASCII. La trama Modbus ASCII comienza con un carácter inicial (':') y
puede finalizar con dos caracteres finales (CR y LF). El carácter de fin de trama
predeterminado es 0x0A (LF). El usuario puede modificar el valor de este byte
durante la configuración. El valor de comprobación para la trama Modbus ASCII es
un complemento de dos de la trama, excluyendo los caracteres inicial y final.
El modo Modbus RTU no vuelve a formatear el mensaje antes de transmitirlo; sin
embargo, utiliza un modo de cálculo de suma de verificación diferente, especificado
como CRC.
La capa de enlace de datos de Modbus tiene las siguientes limitaciones:
l Dirección 1-247
l Bits: 128 bits previa solicitud
l Palabras: 64 palabras de 16 bits previa solicitud

Intercambio de El lenguaje le ofrece dos servicios de comunicación:


mensajes l Instrucción EXCHx: para emitir/recibir mensajes.
l Bloque de función %MSGx: para controlar los intercambios de mensajes.
Cuando se procesa una instrucción EXCHx, el autómata Twido utiliza el protocolo
configurado para dicho puerto.

Nota: Cada puerto de comunicación puede configurarse para protocolos


diferentes o para el mismo. Para acceder a la instrucción EXCHx o al bloque de
función %MSGx para cada puerto de comunicación, sólo hay que agregar el
número de puerto (1 o 2).

TWD USE 10AS 129


Comunicaciones

Instrucción La instrucción EXCHx permite al autómata Twido enviar o recibir información


EXCHx dirigida o procedente de dispositivos Modbus. El usuario define una tabla de
palabras (%MWi:L) que contiene información de control y los datos que se van a
enviar o recibir (hasta 128 bytes en la emisión o recepción). El formato de la tabla
se describe en secciones anteriores.
Los intercambios de mensajes se realizan mediante la instrucción EXCHx.
Sintaxis: [EXCHx %MWi:L] o [EXCHx %KWi:L]

donde: x = número de puerto (1 ó 2).


L = número de palabras de la tabla de palabras
de comando, de emisión y de recepción
El autómata Twido debe finalizar el intercambio de la primera instrucción EXCHx
antes de que se ejecute una segunda. Se debe utilizar el bloque de función %MSGx
cuando se envíen varios mensajes.
El procesamiento de la instrucción de lista EXCHx se produce inmediatamente,
teniendo en cuenta que todas las emisiones se inician con control de interrupción
(la recepción de datos también se encuentra bajo el control de interrupción), que se
considera procesamiento de fondo.

130 TWD USE 10AS


Comunicaciones

Bloque de El uso del bloque de función %MSGx es opcional; puede utilizarse para gestionar
función %MSGx los intercambios de datos. El bloque de función %MSGx tiene tres propósitos:
l Comprobación de errores de comunicación
La comprobación de errores verifica que el parámetro L (longitud de la tabla de
palabras) programado con la instrucción EXCHx es lo suficientemente grande
como para contener la longitud del mensaje que se va a enviar. Ésta se compara
con la longitud programada en el byte menos significativo de la primera palabra
de la tabla de palabras.
l Coordinación de varios mensajes
Para asegurar la coordinación cuando se envían varios mensajes, el bloque de
función %MSGx proporciona la información requerida para determinar el
momento en que ha finalizado la emisión del mensaje anterior.
l Emisión de mensajes prioritarios
El bloque de función %MSGx permite la detención de la emisión del mensaje
actual para permitir el envío inmediato de un mensaje urgente.
El bloque de función %MSGx tiene una entrada y dos salidas asociadas:
Entrada/salida Definición Descripción
R Restablecer entrada Puesta a 1: reinicializa la comunicación o
restablece el bloque (%MSGx.E = 0 y
%MSGx.D = 1).
%MSGx.D Comunicación 0: solicitud en curso.
completa 1: comunicación finalizada si se produce el
final de la transmisión, se recibe el carácter
final, se produce un error o se restablece el
bloque.
%MSGx.E Error 0: longitud del mensaje y enlace correctos.
1: si hay un comando inválido, la tabla se
configura de forma incorrecta, se recibe un
carácter incorrecto (velocidad, paridad, etc.)
o la tabla de recepción está llena.

TWD USE 10AS 131


Comunicaciones

Limitaciones Es importante respetar las siguientes limitaciones:


l La disponibilidad y el tipo de puerto 2 sólo se comprueban durante el encendido
o reinicio.
l El procesamiento de un mensaje en el puerto 1 se cancela cuando se conecta
TwidoSoft.
l EXCHx y %MSG no se pueden procesar en un puerto configurado como
conexión remota.
l EXCHx interrumpe el procesamiento activo de cualquier Modbus slave.
l El procesamiento de las instrucciones EXCHx no se vuelve a intentar en caso de
error.
l Se puede utilizar la opción de restablecimiento de la entrada para interrumpir el
procesamiento de recepción de una instrucción EXCHx.
l Las instrucciones EXCHx se pueden configurar con un timeout para interrumpir
la recepción.
l Los mensajes múltiples se controlan a través de %MSGx.D.

Errores y Si se produce un error durante el uso de una instrucción EXCHx, los bits %MSGx.D
condiciones de y %MSGx.E se ponen a 1 y la palabra de sistema %SW63 contiene el código de
funcionamiento error del puerto 1, y %SW64 contiene el código de error del puerto 2.

Palabras Uso
de
sistema
%SW63 Código de error EXCH1:
0: operación correcta
1: número excesivo de bytes para emitir (> 128)
2: tabla de emisión demasiado pequeña
3: tabla de palabras demasiado pequeña
4: tabla de recepción desbordada
5: timeout transcurrido
6: emisión
7: comando incorrecto en la tabla
8: puerto seleccionado no configurado/disponible
9: error de recepción (sólo en modo ASCII)
10: no se puede utilizar %KW si se está recibiendo
11: desplazamiento de emisión mayor que la tabla de emisión
12: desplazamiento de recepción mayor que la tabla de recepción
13: procesamiento EXCH detenido por el autómata
%SW64 Código de error EXCH2: consulte %SW63.

132 TWD USE 10AS


Comunicaciones

Reinicio del Si se reinicia un autómata master/slave, se producirá uno de los siguientes eventos:
autómata master l Un inicio en frío (%S0 = 1) fuerza una reinicialización de las comunicaciones.
l Un inicio en caliente (%S1 = 1) fuerza una reinicialización de las comunicaciones.
l En modo Stop, el autómata detiene todas las comunicaciones Modbus.

Ejemplo 1 de Para configurar una conexión Modbus debe seguir estos pasos:
conexión 1. Configurar el hardware.
Modbus 2. Conectar el cable de comunicación Modbus.
3. Configurar el puerto.
4. Escribir una aplicación.
5. Inicializar el editor de tablas de animación.
Los siguientes diagramas ilustran el uso del código de la solicitud Modbus 3 para
leer las palabras de salida de un slave. En este ejemplo se utilizan dos autómatas
Twido.

Paso 1: Configuración del hardware:

Autómata 1 Puerto 1 EIA RS-485 Hacia COM 1 serie


Modbus
Master Puerto 2 EIA RS-485 TSXPCX1031
2
1 3
0
Autómata 2 Puerto 1 EIA RS-485
Modbus
slave Puerto 2 EIA RS-485

La configuración del hardware está integrada por dos autómatas Twido. Uno se
configura como Modbus master y el otro como Modbus slave.

Nota: En este ejemplo, cada autómata está configurado para utilizar EIA RS-485
en el puerto 1, así como EIA RS-485 en el puerto 2 opcional. En un autómata
modular, el puerto 2 opcional puede ser de tipo TWDNOZ485D o TWDNOZ485T,
o, si emplea TWDXCPODM, puede ser de tipo TWDNAC485D o TWDNAC485T.
En un autómata compacto, el puerto 2 opcional puede ser un puerto
TWDNAC485D o TWDNAC485T.

Para configurar cada autómata, conecte el cable TSXPCX1031 al puerto 1 del


autómata.

Nota: El cable TSXPCX1031 sólo se puede conectar a un autómata a la vez, y sólo


en el puerto 1 EIA RS-485.

TWD USE 10AS 133


Comunicaciones

A continuación, conecte el cable al puerto COM 1 del PC. Asegúrese de que el


conmutador está en la posición 2. Descargue y controle la aplicación. Repita el
procedimiento con el segundo autómata.

Paso 2:Conexión del cable de comunicación Modbus:


Conexión mini DIN

Twido Twido
Modbus master Modbus slave
A(+) B(-) 0 V A(+) B(-) GND
1 2 7

Conexión de terminal

Twido Twido
Modbus master Modbus slave
A(+) B(-) 0 V A(+) B(-) 0 V
A B SG

El cableado de este ejemplo muestra una conexión punto a punto sencilla. Las tres
señales A(+), B(-) y 0 V están cableadas de acuerdo con el diagrama.
Si se utiliza el puerto 1 del autómata Twido, la señal DPT (pin 5) deberá conectarse
a 0 V (pin 7). Este condicionamiento de DPT determina si TwidoSoft está
conectado. Si está puesto a tierra, el autómata utilizará la configuración de puerto
ajustada en la aplicación para determinar el tipo de comunicación.

Paso 3:Configuración del puerto:

Hardware:> agregar una opción Hardware:> agregar una opción


TWDNOZ485- TWDNOZ485-
Hardware => Parámetro de com. del autómata Hardware => Parámetro de com. del autómata
Puerto: 2 Puerto: 2
Tipo: Modbus Tipo: Modbus
Dirección: 1 Dirección: 2
Velocidad en baud 19200 Velocidad en baudios: 19200
Datos: 8 bits Datos: 8 bits
Paridad: Ninguna Paridad: Ninguna
Detención: 1 bit Detención: 1 bit
Fin de trama: 65 Fin de trama: 65
Timeout de respuesta: 10 x 100 ms Timeout de respuesta: 100 x 100 ms
Timeout de trama: 10 ms Timeout de trama: 10 ms

En las aplicaciones master y slave, están configurados los puertos opcionales EIA
RS-485. Asegúrese de que los parámetros de comunicación del autómata se han
modificado en el protocolo Modbus y con direcciones diferentes.

134 TWD USE 10AS


Comunicaciones

En este ejemplo, el master se define en la dirección 1 y el slave en la 2. El número


de bits es 8, lo que indica que se empleará el modo Modbus RTU. Si hubiera 7, se
utilizaría el modo Modbus ASCII. El otro cambio realizado es incrementar el valor
predeterminado de timeout de respuesta a 1 segundo.

Nota: Si se ha seleccionado el modo Modbus RTU, se ignora el parámetro "Fin de


trama".

Paso 4: Escritura de una aplicación:


LD 1 LD 1
[%MW0 := 16#0106] [%MW0 := 16#6566]
[%MW1 := 16#0300] [%MW1 := 16#6768]
[%MW2 := 16#0203] [%MW2 := 16#6970]
[%MW3 := 16#0000] [%MW3 := 16#7172]
[%MW4 := 16#0004] END
LD 1
AND %MSG2.D
[EXCH2 %MW0:11]
LD %MSG2.E
ST %Q0.0
END

Mediante TwidoSoft, se escribe un programa de aplicación tanto para el master


como para el slave. Para el slave, simplemente se escriben algunas palabras de
memoria para un conjunto de valores conocidos. En el master, se inicializa la tabla
de palabras de la instrucción EXCHx para leer cuatro palabras del slave en la
dirección Modbus 2 que comienza en la ubicación %MW0.

Nota: Preste atención al uso del offset RX definido en %MW1 del master de
Modbus. El offset de tres añadirá un byte (valor = 0) en la tercera posición del área
de recepción de la tabla. De este modo, las palabras se alinean en el master, de
forma que se mantienen dentro de los límites de palabras. Sin este offset, cada
palabra de datos se dividiría en dos palabras en el bloque de intercambio. Este
offset se utiliza por comodidad.

Antes de ejecutar la instrucción EXCH2, la aplicación verifica el bit de comunicación


asociado a %MSG2. Por último, se detecta el estado de error de %MSG2 y se
guarda en el primer bit de salida de las E/S del autómata base local. También se
podría añadir una comprobación de errores adicional mediante %SW64 para
aumentar la precisión.

TWD USE 10AS 135


Comunicaciones

Paso 5:Inicialización del editor de tablas de animación en el master:


Dirección actual guardada de la dirección
1 %MW5 0203 0000 Hexadecimal
2 %MW6 0008 0000 Hexadecimal
3 %MW7 6566 0000 Hexadecimal
4 %MW8 6768 0000 Hexadecimal
5 %MW9 6970 0000 Hexadecimal
6 %MW10 7172 0000 Hexadecimal
Después de descargar y configurar cada autómata para que se ejecute, abra una
tabla de animación en el master. Examine la sección de respuesta de la tabla para
comprobar que el código de respuesta sea 3 y asegurarse de que se haya leído el
número de bytes correcto. En este ejemplo también se puede comprobar que las
palabras leídas del slave (comenzando por %MW7) están correctamente alineadas
con los límites de palabras del master.

Ejemplo 2 de El diagrama que aparece a continuación ilustra el uso de la solicitud Modbus 16


conexión para escribir palabras de salida en un slave. En este ejemplo se utilizan dos
Modbus autómatas Twido.
Paso 1:Configuración del hardware:

Autómata 1 Puerto 1 EIA RS-485 Hacia COM 1 serie


Modbus
master Puerto 2 EIA RS-485 TSXPCX1031
2
1 3
0
Autómata 2 Puerto 1 EIA RS-485
Modbus
slave Puerto 2 EIA RS-485

La configuración de hardware es idéntica a la del ejemplo anterior.

136 TWD USE 10AS


Comunicaciones

Paso 2:Conexión del cable de comunicación Modbus (RS-485):


Conexión mini DIN

Twido Twido
Modbus master Modbus slave
A(+) B(-) 0 V A(+) B(-) GND
1 2 7

Conexión de terminal

Twido Twido
Modbus master Modbus slave
A(+) B(-) 0 V A(+) B(-) 0 V
A B SG

El cableado de comunicación Modbus es idéntico al del ejemplo anterior.


Paso 3: Configuración del puerto:
Hardware:> agregar una opción Hardware:> agregar una opción
TWDNOZ485- TWDNOZ485-
Hardware => Parámetro de com. del autómata Hardware => Parámetro de com. del autómata
Puerto: 2 Puerto: 2
Tipo: Modbus Tipo: Modbus
Dirección: 1 Dirección: 2
Velocidad en baudios: 19200 Velocidad en baudios: 19200
Datos: 8 bits Datos: 8 bits
Paridad: Ninguna Paridad: Ninguna
Detención: 1 bit Detención: 1 bit
Fin de trama: 65 Fin de trama: 65
Timeout de respuesta: 10 x 100 ms Timeout de respuesta: 100 x 100 ms
Timeout de trama: 10 ms Timeout de trama: 10 ms
La configuración del puerto es idéntica a la del ejemplo anterior.

TWD USE 10AS 137


Comunicaciones

Paso 4:Escritura de una aplicación:


LD 1
LD 1
[%MW18 := 16#FFFF]
[%MW0 := 16#010C]
END
[%MW1 := 16#0007]
[%MW2 := 16#0210]
[%MW3 := 16#0010]
[%MW4 := 16#0002]
[%MW5 := 16#0004]
[%MW6 := 16#6566]
[%MW7 := 16#6768]
LD 1
AND %MSG2.D
[EXCH2 %MW0:11]
LD %MSG2.E
ST %Q0.0
END

Mediante TwidoSoft, se crea un programa de aplicación tanto para el master como


para el slave. Para el slave, escriba una sola palabra de memoria %MW18. De este
modo, se asignará espacio en el slave para las direcciones de memoria de %MW0
a %MW18. Si no se asigna este espacio, la solicitud Modbus intentará escribir en
ubicaciones que no existen en el slave.
En el master, se inicializa la tabla de palabras de la instrucción EXCH2 para escribir
4 bytes en el Slave de dirección Modbus 2 en la dirección %MW16 (10
hexadecimal).

Nota: Preste atención al uso del desplazamiento de emisión definido en %MW1


de la aplicación del master de Modbus. El desplazamiento de siete suprimirá el
byte más significativo de la sexta palabra (el valor hexadecimal 00 en %MW5). De
esta forma, se alinean los valores de datos en la tabla de emisión de la tabla de
palabras, de modo que se mantienen dentro de los límites de palabras.

Antes de ejecutar la instrucción EXCH2, la aplicación verifica el bit de comunicación


asociado a %MSG2. Por último, se detecta el estado de error de %MSG2 y se
guarda en el primer bit de salida de la E/S del autómata base local. También se
podría añadir una comprobación de errores adicional mediante %SW64 para
aumentar la precisión.
Paso 5:Inicialización del editor de tablas de animación:

138 TWD USE 10AS


Comunicaciones

Creación de la siguiente tabla de animación en el master.


Formato actual guardado de la dirección
1 %MW0 010C 0000 Hexadecimal
2 %MW1 0007 0000 Hexadecimal
3 %MW2 0210 0000 Hexadecimal
4 %MW3 0010 0000 Hexadecimal
5 %MW4 0002 0000 Hexadecimal
6 %MW5 0004 0000 Hexadecimal
7 %MW6 6566 0000 Hexadecimal
8 %MW7 6768 0000 Hexadecimal
9 %MW8 0210 0000 Hexadecimal
10 %MW9 0010 0000 Hexadecimal
11 %MW10 0004 0000 Hexadecimal

Creación de la siguiente tabla de animación en el slave.


Formato actual guardado de la dirección
1 %MW16 6566 0000 Hexadecimal
2 %MW17 6768 0000 Hexadecimal

Después de descargar y configurar todos los autómatas para que se ejecuten, abra
una tabla de animación en el autómata slave. Los dos valores de %MW16 y
%MW17 se escriben en el slave. En el master, la tabla de animación se puede
utilizar para examinar la parte de la tabla de recepción de los datos de intercambio.
Estos datos indican la dirección del slave, el código de respuesta, la primera palabra
escrita y el número de palabras escritas comenzando por %MW8 en el ejemplo que
se muestra a continuación.

TWD USE 10AS 139


Comunicaciones

Peticiones estándar Modbus

Introducción Estas peticiones permiten intercambiar palabras o bits de memoria entre los
dispositivos. Se utiliza el mismo formato de tabla para los modos RTU y ASCII.
Formato Número de serie
Bit %Mi
Palabra %MWi

Master Modbus: Esta tabla representa las peticiones 01 y 02.


Leer N bits
Índice Byte más significativo Byte menos significativo
de tabla
Tabla de control 0 01 (emisión/recepción) 06 (Longitud de emisión) (*)
1 00 (Desplazamiento de 00 (Desplazamiento de
recepción) emisión)
Tabla de emisión 2 Slave a (1 a 247) 01 ó 02 (Código de petición)
3 Número del primer bit que se va a leer
4 N = Número de bits que se van a leer
Tabla de recepción 5 Slave a (1 a 247) 01 (Código de respuesta)
(después de la 6 Número de bytes de datos transmitidos (1 byte por bit)
respuesta)
7 Primer byte leído (valor = Segundo byte leído (si N>1)
00 ó 01)
8 Tercer byte leído (si N>1)
...
(N/2)+6 Byte N leído (si N>1)

(*) Este byte recibe también la longitud de la cadena emitida después de la


respuesta

140 TWD USE 10AS


Comunicaciones

Master Modbus: Esta tabla representa las peticiones 03 y 04.


Lectura de N
Índice Byte más significativo Byte menos significativo
palabras
de tabla
Tabla de control 0 01 (emisión/recepción) 06 (Longitud de emisión) (*)
1 03 (Desplazamiento de 00 (Desplazamiento de
recepción) emisión)
Tabla de emisión 2 Slave a (1 a 247) 03 ó 04 (Código de petición)
3 Número de la primera palabra que se va a leer
4 N = Número de palabras de lectura (1)
Tabla de recepción 5 Slave a (1 a 247) 03 (Código de respuesta)
(después de la 6 00 (byte añadido por la 2*N (número de bytes leídos)
respuesta) acción offset Rx)
7 Primera palabra leída
8 Segunda palabra leída (si N>1)
...
N+6 Palabra N leída (si N>2)

(*) Este byte recibe también la longitud de la cadena emitida después de la


respuesta

Nota: El offset Rx =3 agregará un byte (valor=0) en la tercera posición de la tabla


de recepción. Esto permite un buen posicionamiento en esta tabla del número de
bytes leídos y de los valores de las palabras leídas.

TWD USE 10AS 141


Comunicaciones

Master Modbus: Esta tabla representa la petición 05.


Escritura de un
Índice Byte más significativo Byte menos significativo
bit
de tabla
Tabla de control 0 01 (emisión/recepción) 06 (Longitud de emisión) (*)
1 00 (Desplazamiento de 00 (Desplazamiento de
recepción) emisión)
Tabla de emisión 2 Slave a (1 a 247) 05 (Código de petición)
3 Número del bit que se va a escribir
4 Valor del bit que se va a escribir
Tabla de recepción 5 Slave a (1 a 247) 05 (Código de respuesta)
(después de la 6 Número del bit escrito
respuesta)
7 Valor escrito

(*) Este byte recibe también la longitud de la cadena emitida después de la


respuesta

Nota:
l Esta petición no necesita utilizar un offset.
l La trama de respuesta es la misma a la de esta petición (en un caso normal).
l Para asignar el valor 1 a un bit, la palabra asociada en la tabla de transmisión
debe contener el valor FF00H, y 0 para asignar a un bit este valor.

142 TWD USE 10AS


Comunicaciones

Master Modbus: Esta tabla representa la petición 06.


Escritura de una
Índice Byte más significativo Byte menos significativo
palabra
de tabla
Tabla de control 0 01 (emisión/recepción) 06 (Longitud de emisión) (*)
1 00 (Desplazamiento de 00 (Desplazamiento de
recepción) emisión)
Tabla de emisión 2 Slave a (1 a 247) 06 (Código de petición)
3 Número de la palabra que se va a escribir
4 Valor de la palabra que se va a escribir
Tabla de recepción 5 Slave a (1 a 247) 06 (Código de respuesta)
(después de la 6 Número de la palabra escrita
respuesta)
7 Valor escrito

(*) Este byte recibe también la longitud de la cadena emitida después de la


respuesta

Nota:
l Esta petición no necesita utilizar un offset.
l La trama de respuesta es la misma que la de esta petición (en un caso normal).

TWD USE 10AS 143


Comunicaciones

Master Modbus: Esta tabla representa la petición 15.


Escritura de N
Índice Byte más significativo Byte menos significativo
bits
de tabla
Tabla de control 0 01 (emisión/recepción) 8 + número de bytes
(emisión)
1 00 (Desplazamiento de 07 (Desplazamiento de
recepción) emisión)
Tabla de emisión 2 Slave a (1 a 247) 15 (Código de petición)
3 Número del primer bit que se va a escribir
4 N1 = Número de bits que se van a escribir
5 00 (byte no enviado, efecto N2 = Número de bytes de
de offset) los datos que se van a
escribir
6 Valor del primer byte Valor del segundo byte
Tabla de control 7 Valor del tercer byte Valor del cuarto byte
...
Tabla de emisión 6+(N2/2) Valor del byte N2
Tabla de recepción Slave a (1 a 247) 15 (Código de respuesta)
(después de la Número del primer bit escrito
respuesta)
Número de bits escritos (= N1)

Nota:
l La operación Desplazamiento de emisión = 7 suprimirá el séptimo byte de la
trama enviada. Permite también una buena correspondencia entre los valores
de las palabras en la tabla de emisión.

144 TWD USE 10AS


Comunicaciones

Master Modbus: Esta tabla representa la petición 16.


Escritura de N
Índice Byte más significativo Byte menos significativo
palabras
de tabla
Tabla de control 0 01 (emisión/recepción) 8 + (2*N) (Longitud de
emisión)
1 00 (Desplazamiento de 07 (Desplazamiento de
recepción) emisión)
Tabla de emisión 2 Slave a (1 a 247) 16 (Código de petición)
3 Número de la primera palabra que se va a escribir
4 N = Número de palabras que se van a escribir
5 00 (byte no enviado, efecto 2*N = N.º de bytes que se
de offset) van a escribir
6 Primer valor de la palabra que se va a escribir
7 Segundo valor que se va a escribir
...
N+5 Valores N que se van a escribir
Tabla de recepción N+6 Slave a (1 a 247) 16 (Código de respuesta)
(después de la N+7 Número de la primera palabra escrita
respuesta)
N+8 Número de palabras escritas (= N)

Nota: La operación Desplazamiento de emisión = 7 suprimirá el quinto byte MMSB


de la trama enviada. Permite también una buena correspondencia entre los
valores de las palabras en la tabla de emisión.

TWD USE 10AS 145


Comunicaciones

146 TWD USE 10AS


Funciones analógicas
incorporadas
7
Presentación

Objeto Este capítulo describe el modo de gestionar los potenciómetros y el canal analógico
incorporado.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Potenciómetro analógico 148
Canal analógico 150

TWD USE 10AS 147


Funciones analógicas incorporadas

Potenciómetro analógico

Introducción Los autómatas Twido cuentan con:


l Un potenciómetro analógico en los autómatas TWDLCAA10DRF,
TWDLCAA16DRF y en todos los autómatas modulares (TWDLMDA20DTK,
TWDLMDA20DUK, TWDLMDA20DRT, TWDLMDA40DTK y
TWDLMDA40DUK).
l Dos potenciómetros analógicos en el autómata TWDLCAA24DRF.

Programación Los valores numéricos, de 0 a 1.023 para el potenciómetro analógico 1, y de 0 a 511


para el potenciómetro analógico 2, y correspondientes a los valores analógicos que
indican estos potenciómetros analógicos, forman parte de las dos palabras de
entradas siguientes:
l %IW0.0.0 para el potenciómetro analógico 1 (a la izquierda)
l %IW0.0.1 para el potenciómetro analógico 2 (a la derecha)
Estas palabras se pueden emplear en operaciones aritméticas para cualquier tipo
de ajuste (preselección de una temporización o de un contador, ajuste de la
frecuencia del generador de pulsos o de la duración de precalentamiento de una
máquina, etc.).

Ejemplo Ajuste de un retardo de 5 a 10 segundos de duración mediante el potenciómetro


analógico 1:
Para este ajuste se utiliza
prácticamente todo el rango de ajuste 10s
del potenciómetro analógico 1 (de 0 a
1.023).

5s

0 1023

Los siguientes parámetros están seleccionados en la configuración del bloque de


retardo %TM0:
l Tipo TON
l Base de tiempo TB: 10 ms
El valor de preselección del retardo se calcula a partir del valor de ajuste del
potenciómetro analógico mediante la siguiente ecuación %TM0.P := (%IW0.0.0/
2)+500.

148 TWD USE 10AS


Funciones analógicas incorporadas

Código del ejemplo anterior.

%MW0:=%IW0.0.0/2
LD 1
[%MW0:=%IW0.0.0/2]
[%TM0.P:=%MW0+500]
%TM0.P:=%MW0+500 BLK %TM0
LD %I0.0
IN
%I0.0 %TM0 %Q0.0 OUT_BLK
IN Q LD Q
ST %Q0.0
END_BLK
...................

TWD USE 10AS 149


Funciones analógicas incorporadas

Canal analógico

Introducción Todos los controladores modulares (TWDLMDA20DTK, TWDLMDA20DUK,


TWDLMDA20DRT, TWDLMDA40DTK y TWDLMDA40DUK) disponen de un canal
analógico incorporado. La tensión de entrada ha de estar comprendida entre 0 y 10
V, y entre 0 y 511 V para la señal digitalizada. El canal analógico emplea un
esquema de promedio simple que se aplica a ocho muestras.

Principio Un convertidor de analógico a digital muestrea una tensión de entrada de entre 0 y


10 V con un valor digital de 0 a 511. Este valor se almacena en la palabra de sistema
%IW0.0.1. El valor es lineal en todo el rango, de modo que cada incremento es
aproximadamente de 20 mV (10 V/512). En el momento en que el sistema detecta
el valor 511, el canal se considera saturado.

Ejemplo de Control de la temperatura de un horno: La temperatura del horno se fija en 350


programación °C. Una variación de +/- 2,5 °C supone la interrupción de las salidas %Q0.0 y
%Q0.2. En este ejemplo se utiliza prácticamente todo el rango de parámetros
posible del canal analógico (de 0 a 511). La configuración analógica de los valores
teóricos de temperatura es la siguiente.
Temperatura (°C) Tensión Palabra de sistema %IW0.0.1
0 0 0
347,5 7,72 395
350 7,77 398
352,5 7,83 401
450 10 511

Código del ejemplo anterior.

%Q0.0
LD [%IW0.0.1 = 395]
%IW0.0.1 = 395
ST %Q0.0

%Q0.1
LD [%IW0.0.1 <= 398]
%IW0.0.1 <= 398
ST %Q0.1

%Q0.2
LD [%IW0.0.1 >= 401]
%IW0.0.1 >= 401
ST %Q0.2

150 TWD USE 10AS


Módulos analógicos de gestión

8
Presentación

Objeto En este capítulo se muestra una presentación de los procedimientos de gestión de


los módulos analógicos de los autómatas Twido.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Vista general del módulo analógico 152
Direccionamiento de entradas y salidas analógicas 153
Configuración de E/S analógicas 155
Información de estado de los módulos analógicos 157
Ejemplo de uso de módulos analógicos 158

TWD USE 10AS 151


Módulos analógicos de gestión

Vista general del módulo analógico

Introducción Exceptuando el potenciómetro analógico de 10 bits y el canal analógico de 9 bits,


el conjunto de los autómatas Twido que toman en cuenta la ampliación de E/S
también puede comunicarse con módulos de E/S analógicas.
Los módulos son los siguientes:
Nombre Canales Rango de señal Codificación
TWDAMI2HT 2 entrada 0 a 10 V o 4 a 20 mA 12 bit
TWDAM01HT 1 salida 0 a 10 V o 4 a 20 mA 12 bit
TWDAMM3HT 2 entrada, 1 0 a 10 V o 4 a 20 mA 12 bit
salida
TWDALM3LT 2 entrada, 1 De 0 a 10 V, Entradas Th o RT100, 12 bit
salida Salidas de 4 a 20 mA

Funcionamiento Las palabras en entrada y en salida (%IW y %QW) se emplean para intercambiar
de módulos datos entre la aplicación de usuario y los canales analógicos. La actualización de
analógicos estas palabras se realiza de manera sincronizada con la exploración del autómata
en modo RUN.

AVISO
Funcionamiento inesperado del equipo
Cuando el autómata está en posición STOP, la salida analógica se
encuentra en posición de retorno. En caso de una salida numérica, la
posición de retorno es cero.
Si no se respetan estas precauciones pueden producirse graves
lesiones o daños materiales

152 TWD USE 10AS


Módulos analógicos de gestión

Direccionamiento de entradas y salidas analógicas

Introducción Se asignan direcciones a los canales analógicos según su ubicación en el bus de


ampliación.

Ejemplo de En este ejemplo, un módulo TWDLMDA40DUK posee un potenciómetro de ajuste


direcciona- analógico de 10 bits integrado, así como un canal analógico de 9 bits integrado. En
miento de E/S el bus de ampliación, se configuran: Un módulo analógico TWDAMM3HT, un
analógicas módulo de relé numérico de E/S TWDDMM8DRT, así como un segundo módulo
analógico TWDAMM3HT.

Base Module 1 Module 2 Module 3

La tabla que aparece a continuación proporciona información acerca del direccio-


namiento de cada salida.
Descripción Base Módulo 1 Módulo 2 Módulo 3
Potenciómetro analóg. 1 %IW0.0.0
Canal analógico %IW0.0.1
integrado
Canal 1 de entrada %IW0.1.0 %IW0.3.0
analógica

TWD USE 10AS 153


Módulos analógicos de gestión

Descripción Base Módulo 1 Módulo 2 Módulo 3


Canal 2 de entrada %IW0.1.1 %IW0.3.1
analógica
Canal 1 de salida %QW0.1.0 %QW0.3.0
analógica
Canales de entrada %I0.2.0 - %I0.2.3
digital
Canales de salida digital %Q0.2.0 -%Q0.2.3

154 TWD USE 10AS


Módulos analógicos de gestión

Configuración de E/S analógicas

Introducción Esta sección proporciona información acerca de la configuración de las entradas y


salidas del módulo analógico.

Configuración de El cuadro de diálogo Configurar módulo se utiliza para administrar los parámetros
E/S analógicas de los módulos analógicos.

Nota: Los parámetros sólo se pueden modificar en estado offline, cuando no esté
conectado al controlador.

Se asignan direcciones a los canales analógicos según su ubicación en el bus de


ampliación. Para obtener ayuda durante la fase de programación y facilitar el uso
de los datos de la aplicación de usuario, también puede emplear símbolos
predefinidos.
Es posible configurar los tipos de canal para que el único canal de salida de los
modelos TWDAM01HT, TWDAMM3HT y TWDALM3LT sea:
l No utilizado
l 0 - 10 V
l 4 - 20 mA
Es posible configurar los tipos de canal para que los dos canales de entrada de los
modelos TWDAMI2HT y TWDAMM3HT sean:
l No utilizado
l 0 - 10 V
l 4 - 20 mA

AVISO
Daños materiales
Si conecta una entrada de tensión en un módulo configurado mediante
TwidoSoft y recibe alimentación, puede ocasionar daños irreversibles
al módulo analógico. Asegúrese de que el cableado se realiza con
arreglo a la configuración de TwidoSoft.
Si no se respetan estas precauciones pueden producirse graves
lesiones o daños materiales

Los dos canales de entrada del modelo TWDALM3LT se pueden configurar como:
l No utilizado
l Termopar K
l Termopar J
l Termopar T
l PT 100

TWD USE 10AS 155


Módulos analógicos de gestión

Cuando se configura un canal, puede elegir entre asignar unidades y asignar el


rango de entradas según la tabla que aparece a continuación.
Rango Unidades Descripción
Normal Ninguna Rango establecido desde un mínimo de 0 hasta 4.095.
Personalizad Ninguna Definido por el usuario, con un mínimo no inferior a -32.768
o y un máximo no superior a 32.767.
Centígrados 0.1°C Escala termométrica internacional. Sólo está disponible para
los canales de entrada TWDALM3LT.
Fahrenheit 0.1°F Escala termométrica en la que el punto de ebullición del
agua se fija a 212°F (100°C) y el punto de congelación a
32°F (0°C). Sólo está disponible para los canales de entrada
TWDALM3LT.

156 TWD USE 10AS


Módulos analógicos de gestión

Información de estado de los módulos analógicos

Tabla de estado La siguiente tabla contiene la información necesaria para controlar el estado de los
módulos de E/S analógicas.
Palabra Función Descripción
de
sistema
%SW80 Estado de E/S Bit [0] Los canales funcionan con normalidad (todos los canales)
de la unidad Bit [1] El módulo se está inicializando (o está inicializando información de todos los
canales)
Bit [2] Fallo de hardware (fallo de la fuente de alimentación externa; común a todos los
canales)
Bit [3] Error en la configuración del módulo
Bit [4] Conversión de canal 0 de entrada de datos en curso
Bit [5] Conversión de canal 1 de entrada de datos en curso
Bit [6] Canal 0 de termopar de entrada no configurado
Bit [7] Canal 1 de termopar de entrada no configurado
Bit [8] Sin utilizar
Bit [9] Sin utilizar
Bit [10] Canal 0 de datos de entrada analógica por encima de rango
Bit [11] Canal 1 de datos de entrada analógica por encima de rango
Bit [12] Cableado incorrecto (canal 0 de datos de entrada analógica por debajo de rango
actual, bucle de corriente abierto)
Bit [13] Cableado incorrecto (canal 1 de datos de entrada analógica por debajo de rango
actual, bucle de corriente abierto)
Bit [14] Sin utilizar
Bit [15] Canal de salida no disponible
%SW81 Estado del módulo de ampliación de E/S 1 definiciones iguales que %SW80
%SW82 Estado del módulo de ampliación de E/S 2 definiciones iguales que %SW80
%SW83 Estado del módulo de ampliación de E/S 3 definiciones iguales que %SW80
%SW84 Estado del módulo de ampliación de E/S 4 definiciones iguales que %SW80
%SW85 Estado del módulo de ampliación de E/S 5 definiciones iguales que %SW80
%SW86 Estado del módulo de ampliación de E/S 6 definiciones iguales que %SW80
%SW87 Estado del módulo de ampliación de E/S 7 definiciones iguales que %SW80

TWD USE 10AS 157


Módulos analógicos de gestión

Ejemplo de uso de módulos analógicos

Introducción En esta sección se ofrece un ejemplo de uso de módulos analógico disponible para
Twido.

Ejemplo En este ejemplo, la señal de entrada analógica se compara con cinco valores de
umbral independientes. Se realiza una comparación de la entrada analógica y se
ajusta un bit en el controlador base si la entrada es menor o igual que el umbral.

LD [%IW1.0 < 16]


%Q0.0 ST %Q0.0
%IW1.0 < 16
LD [%IW1.0 < 32]
%Q0.1 ST %Q0.1
%IW1.0 < 32 LD [%IW1.0 < 64]
ST %Q0.2
%Q0.2
%IW1.0 < 64 LD [%IW1.0 < 128]
ST %Q0.3
%Q0.3
%IW1.0 < 128 LD [%IW1.0 < 256]
ST %Q0.4
%Q0.4
%IW1.0 < 256

158 TWD USE 10AS


Puesta en marcha del bus AS-
Interface V2
9
Presentación

Objeto Este capítulo ofrece información acerca de la puesta en marcha del módulo master
AS-Interface TWDNOI10M3 y de sus slaves.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Presentación del bus AS-Interface V2 160
Descripción funcional general 161
Principios de instalación del software 164
Descripción de la pantalla de configuración del bus AS-Interface 166
Configuración del bus AS-Interface 168
Descripción de la pantalla de depuración 172
Modificación de la dirección de un esclavo 175
Actualización de la configuración del bus AS-Interface en modo conectado 177
Direccionamiento automático de un slave AS-Interface V2 182
Inserción de un equipo slave en una configuración AS-Interface V2 existente 183
Sustitución automática de un slave AS-Interface V2 que presenta un fallo 184
Direccionamiento de las entradas y salidas asociadas a los equipos Slaves 185
conectados al bus AS-Interface V2
Programación y diagnóstico del bus AS-Interface V2 187
Modo de funcionamiento del módulo de interfaz del bus AS-Interface V2 191

TWD USE 10AS 159


Puesta en marcha del bus AS-Interface

Presentación del bus AS-Interface V2

Introducción El Bus AS-Interface (Actuator Sensor-Interface) permite conectar, mediante un


cable único, captadores/accionadores en el nivel más bajo del control secuencial.
Estos captadores/accionadores se definen en documentación como equipos
slaves.

La puesta en marcha del master AS-Interface hace necesario definir el contexto


físico de la aplicación en la que se integrará (bus de ampliación, alimentación,
procesador, módulos, equipos slaves AS-Interface conectados al bus) tras asegurar
la instalación del software.

El segundo aspecto se llevará a cabo desde los diferentes editores de TwidoSoft:


l En modo local
l En modo conectado

Bus AS-Interface El acoplador master AS-interface TWDNOI10M3 integra las funciones siguientes:
V2 l Perfil M3: este perfil cubre las funcionalidades definidas por el estándar AS-
Interface V2, pero no admite los perfiles analógicos S7-4.
l Un canal AS-Interface por módulo.
l Direccionamiento automático del slave en la dirección 0.
l Gestión de perfiles y parámetros.
l Protección contra la inversión de polaridad en las entradas del bus.
El bus AS-Interface permite, por lo tanto:
l Hasta 31 slaves de tipo de direccionamiento estándar y 62 de tipo de direcciona-
miento ampliado.
l Hasta 248 entradas y 186 salidas.
l Hasta 7 slaves analógicos (4 E/S máx. por esclavo).
l Un tiempo de ciclo de 10 ms como máximo.
Se puede conectar un máximo de dos módulos master AS-Interface en un autómata
modular Twido o en un autómata compacto LCAA24DRF.

160 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Descripción funcional general

Presentación En la configuración AS-Interface, el software TwidoSoft permite al usuario:


general l Configurar el bus (declaración de los slaves y atribución de las direcciones en el
bus) de forma manual.
l Adaptar la configuración según la que se encuentra presente en el bus.
l Tener en cuenta los parámetros de los slaves.
l Controlar el estado del bus.
Para ello, toda la información procedente o enviada al master AS-Interface se
almacena en los objetos (palabras y bits) específicos.

TWD USE 10AS 161


Puesta en marcha del bus AS-Interface

Estructura del El acoplador AS-Interface integrado en los campos de datos que permiten gestionar
master AS- listas de slaves e imágenes de datos de entradas/salidas. Esta información se
Interface almacena en la memoria volátil.
En el esquema siguiente se muestra la arquitectura del acoplador TWDNOI10M3.
TWDNOI10M3

1 Datos de E/S

Parámetros
2
actuales bus AS-Interface

3 Configuración/
Identificación

4 LDS
5 LAS
6 LPS
7 LPF

Leyenda:
Direcció Elemento Descripción
n
1 Datos de E/S Imágenes de las 248 entradas y de las 186 salidas del
(IDI, ODI) Bus AS-Interface V2.
2 Parámetros actuales Imagen de los parámetros de todos los slaves.
(PI, PP)
3 Configuración/ Este campo contiene todos los códigos de E/S y los
Identificación códigos de identificación de todos los slaves
(CDI, PCD) detectados.
4 LDS Lista de todos los slaves detectados en el bus.
5 LAS Lista de los slaves activados en el bus.
6 LPS Lista de los slaves previstos en el bus y configurados
por TwidoSoft.
7 LPF Lista de los slaves que tienen un fallo de dispositivo
periférico.

162 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Estructura de los Cada uno de los slaves de direccionamiento estándar cuenta con:
equipos slaves l 4 bits de entrada/salida
l 4 bits de parametrización
Cada uno de los slaves de direccionamiento ampliado cuenta con:
l 4 bits de entrada/salida (último bit destinado sólo a la entrada)
l 3 bits de parametrización
Cada slave posee su propia dirección, así como un perfil y un subperfil (definición
del intercambio de variables).
La figura que se muestra a continuación muestra la estructura de un slave de
direccionamiento ampliado:
Slave AS-Interface
Bit sólo de entrada
(D3)
1 Datos de E/S
D0

2 Parámetros P2
P0

Configuración/
3 Identificación bus AS-Interface

4 Dirección

Leyenda:
Direcció Elemento Descripción
n
1 Datos de El slave almacena los datos de entradas y los pone a disposición
entradas/ del master AS-Interface.
salidas El acoplador master actualiza los datos de salidas.
2 Parámetros Los parámetros permiten controlar y conmutar los modos de
funcionamiento internos del captador o accionador.
3 Configuración/ Este campo contiene:
Identificación l El código correspondiente a la configuración de las entradas/
salidas (I/O)
l El código de identificación del slave (ID)
l Los subcódigos de identificación del slave (ID1 y ID2)

4 Dirección Dirección física del slave.

Observación: Los parámetros de funcionamiento, dirección, datos de configuración y de


identificación se almacenan en una memoria no volátil.

TWD USE 10AS 163


Puesta en marcha del bus AS-Interface

Principios de instalación del software

Presentación Para respetar la filosofía adoptada en TwidoSoft, el usuario debe proceder por
pasos para crear una aplicación AS-Interface.

Principio de El usuario ha de saber cómo configurar de forma funcional el bus AS-Interface


instalación (Véase Inserción de un equipo slave en una configuración AS-Interface V2
existente, p. 183).
En la tabla siguiente se muestran las diferentes fases de instalación del software del
bus AS-Interface V2.
Modo Fase Descripción
Local Declaración del Selección del emplazamiento del módulo master
acoplador AS-Interface TWDNOI10M3 en el bus de
ampliación.
Configuración del canal Selección de los modos "master".
del módulo
Declaración de los Selección, para cada equipo, de:
equipos slaves l El número de emplazamiento en el bus
l El tipo de slave de direccionamiento estándar o
direccionamiento ampliado
Validación de los Validación en el slave.
parámetros de
configuración
Validación global de la Validación de aplicación.
aplicación
Local o Simbolización (opcional) Simbolización de las variables asociadas a los
conectado equipos slaves.
Programación Programación de la función AS-Interface V2.
Conectado Transferencia Transferencia de la aplicación en el autómata.
Depuración Depuración de la aplicación mediante:
l La pantalla de depuración que permite visualizar
los slaves (dirección, parámetros) y direccionar
los esclavos en las direcciones deseadas.
l Las pantallas de diagnóstico que permiten
identificar los fallos.

164 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Nota: La declaración y la eliminación del módulo master AS-Interface en el bus de


ampliación se desarrolla como para otro módulo de ampliación. Sin embargo, una
vez que se han declarado dos módulos master AS-Interface en el bus de
expansión, TwidoSoft no permite declarar otro.

Precauciones Antes de conectar (mediante el software) el PC al autómata, y para evitar cualquier


antes de la problema de detección:
conexión l Asegúrese de que no haya ningún slave presente físicamente en el bus en la
dirección 0.
l Asegúrese de que no haya dos slaves presentes físicamente en la misma
dirección.

TWD USE 10AS 165


Puesta en marcha del bus AS-Interface

Descripción de la pantalla de configuración del bus AS-Interface

Presentación La pantalla de configuración del módulo Master AS-Interface le permite acceder a


los parámetros asociados al acoplador y a los equipos Slaves.
Permite visualizar y modificar los parámetros en modo local.

Ilustración en Ilustración de la pantalla de configuración en modo local:


modo local
Configurar módulo - TWDNOI10M3 [Posición 1]
Descripción
Módulo de ampliación Master del bus AS-Interface

Configuración
Configuración de AS-interfase Slave 1A
Slaves std /A Slaves /B Características

00 Perfil: IO 7 ID f ID1 f ID2 f

XVBC21A 01 Comentario: Apoyo de columna luminosa XVB


02
Parámetros
03 ASI20MT4IE
04 Bits Decimal

05 INOUT24/12 0 Destello e1 2 Destello e3


06
1 Destello e2 3 Destello e4
WXA36 07
08 Entradas/Salidas
09 Entradas Dirección Salidas Dirección
10 1 %IA1.1A.0 1 %QA1.1A.0
11 2 %IA1.1A.1 2 %QA1.1A.1
12
13 Modo Master

14
15 Parada escalón
16 Direccionamiento automático

Aceptar Cancelar Ayuda

166 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Descripción de la Esta pantalla reagrupa toda la información del bus en tres bloques de información:
pantalla de
Bloques Descripción
configuración en
modo local Configuración de AS- Imagen del bus deseada por el usuario: visualización de los
interfase Slaves de direccionamiento estándar y ampliado proyectados
(previstos) en el bus. Es necesario descender el cursor de la
barra vertical para acceder a las direcciones siguientes.
Las direcciones atenuadas corresponden a las direcciones que
no se pueden utilizar para configurar un Slave. Si por ejemplo
se asignase un Slave nuevo estándar a la dirección 1ª, la
dirección 1B se atenuaría automáticamente.
Slave xxA/B Configuración de Slave seleccionada:
l Características: Código IO, código ID, códigos ID1 e ID2
(perfiles) y comentario del Slave,
l Parámetros: lista de parámetros (modificables), en forma
binaria (4 casillas de verificación) o decimal (1 casilla) a
elección del usuario,
l Entradas/Salidas: lista de las Entradas/Salidas disponibles y
su dirección.
Modo Master Activación o desactivación posible de las dos funciones
disponibles para el acoplador AS-Interface (direccionamiento
automático, por ejemplo).
El modo "Direccionamiento automático" está seleccionado por
defecto.

La pantalla tiene también tres botones:


Botones Descripción
Aceptar Permite guardar la configuración del bus AS-Interface visible en
la pantalla de configuración.
Vuelve a la pantalla principal a continuación.
La configuración puede transferirse entonces al autómata
Twido.
Cancelar Vuelve a la pantalla principal sin tener en cuenta las
modificaciones realizadas.
Ayuda Abre una ventana desde la pantalla.

Nota: Sólo se pueden realizar modificaciones en la pantalla de configuración en


modo local.

TWD USE 10AS 167


Puesta en marcha del bus AS-Interface

Configuración del bus AS-Interface

Introducción La configuración del bus AS-Interface se realiza mediante la pantalla de


configuración en modo local.
Una vez seleccionados el master AS-Interface y los modos master seleccionados,
la configuración del bus AS-Interface consiste en configurar los equipos slaves.

168 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Procedimiento Procedimiento que se ha de seguir para crear o modificar un slave en el bus AS-
de declaración y Interface V2:
configuración de
Paso Acción
un slave
1 En la celda de la dirección deseada (no atenuada) de la imagen del bus:
l Hacer doble clic: ir al paso 3
O
l Hacer clic con el botón derecho del ratón:
Resultado:
Configurar módulo - TWDNOI10M3 [Posición 1]
Descripción
Módulo de ampliación Master del bus AS-Interface

Configuración
Configuración de AS-interfase V2
Slaves std /A Slaves /B
00
XVBC21A 01
02
03 ASI20MT4IE
04
Nuevo ... Ctrl+N
05 INOUT24/12
Ctrl+O
Abrir ...
06 Ctrl+X
Cortar
WXA36 Copiar 07 Ctrl+C
Pegar 08 Ctrl+V
Borrar 09 Supr
Aceptar conf. 10 Ctrl+A

11
12
13
14
15
16

Nota:
Aparece un menú contextual. Este menú permite:
l Configurar un nuevo slave en el bus
l Modificar la configuración del slave deseado
l Copiar (o Ctrl+C), cortar (o Ctrl+X) y pegar (o Ctrl+V) un slave
l Eliminar un slave (o Supr)

TWD USE 10AS 169


Puesta en marcha del bus AS-Interface

Paso Acción
2 En el menú contextual, seleccionar:
l "Nuevo" para crear un slave nuevo: aparece una pantalla de configuración
del slave, en la que el campo "Dirección" indica la dirección seleccionada,
los campos de "Perfil" tienen el valor F de forma predeterminada y los
demás campos de la pantalla están vacíos.
l "Abrir" para crear un slave nuevo o para modificar la configuración del slave
seleccionado. En el caso de un slave nuevo, aparece una pantalla nueva
para configurar el slave, en la que el campo "Dirección" indica la dirección
seleccionada, los campos de "Perfil" tienen el valor F de forma
predeterminada y los demás campos de la pantalla están vacíos. En el
caso de una modificación, la pantalla de configuración del slave aparece
con los campos que contienen los valores definidos previamente del slave
seleccionado.
Ilustración de una pantalla de configuración para un slave nuevo:
Configurar un slave AS-Interface

Nombre Dirección 4A

Características permanentes

Perfil: IO F ID F ID1 F ID2 F

Comentario:

Parámetros permanentes

Bits Decimal

0 Parámetro 1 2 Parámetro 2

1 Parámetro 3 3 Parámetro 4

Entradas/Salidas

Entradas Salidas

Aceptar Cancelar

3 En la pantalla de configuración del slave que se muestra, introducir o


modificar:
l El nombre del nuevo perfil (máximo 13 caracteres)
l Un comentario (opcional)

170 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Paso Acción
4 Introducir:
l El código IO (corresponde a la configuración entrada/salida)
l El código ID (identificador), más ID1 e ID2 para un tipo ampliado
Nota:
Los campos "Entradas" y "Salidas" indican el número de canal de entrada y de
salida. Se implementan de forma automática al introducir el código IO.
5 Definir para cada parámetro:
l Su toma en cuenta por parte del sistema (casilla seleccionada en la opción
"Bits", o valor decimal entre 0 y 15 en la opción "Decimal")
l Una etiqueta más significativa que "Parámetro X" (opcional)
Nota:
Los parámetros seleccionados son la imagen de los parámetros permanentes
que se deben proporcionar al master AS-Interface.
6 Modificar "Dirección", si es necesario (en el límite de las direcciones
disponibles en el bus), mediante un clic en las flechas arriba/abajo situadas a
la izquierda de la dirección (acceso en las direcciones autorizadas) o mediante
la introducción directa de la dirección en el teclado.
7 Validar la configuración del slave mediante un clic en el botón "Aceptar".
El resultado es la verificación de que:
l Los códigos IO e ID están autorizados
l La dirección del slave se ha autorizado (en caso de introducción mediante
el teclado) según el código ID (los slaves "banco" /B sólo están disponibles
si el código ID es igual a A).
En caso de error, un mensaje advierte al usuario del tipo de error (ejemplo: "El
slave no puede tener esta dirección") y la pantalla se vuelve a mostrar con los
valores iniciales (en el perfil o la dirección, según el error).

Nota: El software limita el número de declaraciones de slave analógico a 7.

TWD USE 10AS 171


Puesta en marcha del bus AS-Interface

Descripción de la pantalla de depuración

Presentación Cuando el PC está conectado al controlador (después de cargar la aplicación en


el autómata), la pestaña "Depuración" situada a la derecha de la pestaña
"Configuración" permite el acceso a la pantalla de depuración.
La pantalla de depuración proporciona, dinámicamente, una imagen del bus físico
que incluye:
l La lista de Slaves previstos (introducidos) durante la configuración con su
nombre y la lista de los Slaves detectados (de nombre desconocido si no fuesen
previstos),
l el estado del acoplador AS-Interface y de los equipos Slaves, y
l la imagen del perfil, los parámetros y valores de las entradas y salidas de los
Slaves seleccionados.

Igualmente, permite al usuario:


l Obtener un diagnóstico de los Slaves erróneos (Véase Visualización de los
estados de los Slaves, p. 174),
l modificar la dirección de un Slave en modo online (Véase Modificación de la
dirección de un esclavo, p. 175),
l transmitir la imagen de los Slaves a la pantalla de configuración (Véase
Actualización de la configuración del bus AS-Interface en modo conectado,
p. 177) y
l dirigir todos los Slaves a las direcciones deseadas (durante la primera
depuración).

172 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Ilustración de la La ilustración de la pantalla de depuración (solamente en modo online) aparece del


pantalla siguiente modo:
"Depuración"
Configurar módulo - TWDNOI10M3 [Posición 1]
Descripción
Módulo de ampliación Master del bus AS-Interface

Configuración Depuración
Configuración de AS-interfase V2 Slave 1A
Slaves std /A Slaves /B Características
00 Perfil: IO 7 ID f ID1 f ID2 f
XVBC21A 01 Comentario: Apoyo de columna luminosa XVB
02
03 ASI20MT4IE Parámetros
04 Bits Decimal
05 INOUT24/12 0 Destello e1 2 Destello e3
06
1 Destello e2 3 Destello e4
WXA36 07
08 Entradas/Salidas
09 Entradas Valor Formato Salidas Valor Formato
10 %IA1.1A.0 0 Bin %QA1.1A.0 0 Bin
11 Desconocido %IA1.1A.1 0 Bin %QA1.1A.1 0 Bin
12
13 Error de red
14
15
16

Bus AS-
Configuración OK INACTIVO Direccionamiento auto. posibleINACTIVO Slave de dirección 0 detectadoINACTIVO Corte de alimentación ASI INACTIVO
Slaves OK ACTIVO Modo protegido ACTIVO Direccionamiento auto. activo ACTIVO Parada escalón ACTIVO

Aceptar Cancelar Ayuda

TWD USE 10AS 173


Puesta en marcha del bus AS-Interface

Descripción de la La pantalla "Depuración" proporciona la misma información que la pantalla de


pantalla de configuración (Véase Descripción de la pantalla de configuración en modo local,
depuración p. 167).
Las diferencias se enumeran en la tabla siguiente:
Fechador Descripción
Configuración de AS- Imagen del bus físico.
interfase V2 Incluye el estado de los Salves:
l Indicador verde: el Slave de esta dirección está activo.
l Indicador rojo: el Slave de esta dirección es erróneo y un
mensaje le informa del tipo de error en la ventana "Error de red".
Slave xxA/B Imagen de la configuración del Slave seleccionado:
l Características: imagen del perfil detectado (en gris, no
modificable),
l Parámetros: imagen de los parámetros detectados. El usuario
solamente puede elegir el formato de visualización de los
parámetros,
l Entradas/Salidas: se muestran los valores de las entradas y
salidas detectadas, no modificables.
Error de red Informa del tipo de error si el Slave seleccionado es erróneo.
Bus AS-Interface Información resultante de un comando implícito de "Read Status".
l Indica el estado del bus: por ejemplo "Configuración OK =
INACTIVO" indica que la configuración prevista por el usuario
no se corresponde con la configuración física del bus,
l Indica las funciones autorizadas en el módulo Master del bus
AS-Interface: por ejemplo "Direccionamiento automático activo
= ACTIVO" indica que el modo Master de direccionamiento
automático está autorizado.

Visualización de Si el indicador asociado a una dirección está en rojo, su Slave asociado es erróneo.
los estados de La ventana "Error de red" le proporcionará el diagnóstico del Slave seleccionado.
los Slaves Descripción de los errores:
l El perfil previsto por el usuario al configurar una dirección determinada no se
corresponde con el perfil real detectado en dicha dirección del bus (diagnóstico:
error de perfil"),
l El bus ha detectado un nuevo Slave no previsto en la configuración: aparece un
indicador rojo en esta dirección y el nombre del Slave aparece como
"Desconocido" (diagnóstico: "Slave no proyectado"),
l Fallo de dispositivo si el Slave detectado lo admite (diagnóstico: "Fallo de
dispositivo"),
l Existe un perfil previsto en la configuración pero el bus no detecta ningún Slave
con dicha dirección (diagnóstico: "Slave no detectado").

174 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Modificación de la dirección de un esclavo

Presentación El usuario puede, mediante la pantalla de depuración, modificar la dirección de un


slave en modo conectado.

Modificación de
la dirección de En la taba siguiente se muestra el procedimiento para modificar la dirección de un
un esclavo slave:
Paso Descripción
1 Acceder a la pantalla de "Depuración".
2 Seleccionar un slave en el área "Configuración de AS-Interface V2".
3 Ejecutar una acción de "arrastrar y soltar" mediante el ratón hacia la celda
correspondiente a la dirección deseada.
Ilustración: arrastrar y soltar desde el slave 3B hacia la dirección 15B

Configuración Depuración
Configuración de AS-interfase V2
Slaves std /A Slaves /B
00
XVBC21A 01
02
03 ASI20MT41E
04
05 INOUT24/12
06
WXA36 07
08
ASI20MT41E
09
10
11 Desconocido
12
13
14
15
16

TWD USE 10AS 175


Puesta en marcha del bus AS-Interface

Paso Descripción
Resultado:
Se realiza un control automático de todos los parámetros del slave para comprobar si la
operación es posible.
Ilustración del resultado:

Configuración Depuración
Configuración de AS-interfase V2
Slaves std /A Slaves /B
00
XVBC21A 01
02
03 ASI20MT41E
04
05 INOUT24/12
06
WXA36 07
08
09
10
11 Desconocido
12
13
14
15 Desconocido
16

Tras la operación, el diagnóstico del slave en la dirección 3B muestra "slave no detectado",


indicando así que el slave previsto en esta dirección no está presente. Al seleccionar la
dirección 15B, se encuentran el perfil y los parámetros del slave desplazado; el nombre del
slave permanece desconocido, ya que no se había previsto en esa dirección.

Nota: El perfil y los parámetros de un slave no se pueden añadir al nombre. Varios


slaves con distinto nombre pueden tener los mismos perfiles y parámetros.

176 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Actualización de la configuración del bus AS-Interface en modo conectado

Presentación En modo conectado, no se autoriza ninguna modificación de la pantalla de


configuración y la configuración del hardware y del software pueden ser diferentes.
Cualquier diferencia en el perfil o en los parámetros de un slave prevista o no en la
configuración se puede tener en cuenta en la pantalla de configuración. Es posible
transmitir cualquier modificación a la pantalla de configuración antes de transferir la
nueva aplicación al autómata.
El procedimiento que se ha de seguir para tener en cuenta la configuración del
hardware es el siguiente:
Paso Descripción
1 Transferencia de la configuración del slave deseado a la pantalla de
configuración.
2 Aceptación de la configuración en la pantalla de configuración.
3 Validación de la configuración nueva.
4 Transferencia de la aplicación al acoplador.

TWD USE 10AS 177


Puesta en marcha del bus AS-Interface

Transferencia de En caso de detección en el bus de un slave no previsto en la configuración, aparece


la imagen de un un slave "Desconocido" en el área "Configuración de AS-Interface V2" de la pantalla
slave a la de depuración en la dirección detectada.
configuración En la tabla siguiente se indica el procedimiento para transferir la imagen del slave
"Desconocido" a la pantalla de configuración:
Paso Descripción
1 Acceder a la pantalla de "Depuración"
2 Seleccionar el slave deseado en el área "Configuración de AS-Interface V2".
3 Hacer clic con el botón derecho del ratón para seleccionar "Transferir config.".
Ilustración:

Configuration Mise au point


Configuration AS-interface V2
Esclaves std /A Esclaves /B
00
XVBC21A 01
02
03 ASI20MT4IE
04
05 INOUT24/12
06
WXA36 07
08
09
10
11 Inconnu
12 Transfert Conf Ctrl+T

13
14
15 Inconnu
16

Resultado:
La imagen del slave seleccionado (imagen del perfil y parámetros) se
transfiere a la pantalla de configuración.
4 Volver a realizar la operación para cada uno de los slaves cuya imagen se
desea transferir hacia la pantalla de configuración.

178 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Regreso a la Cuando el usuario vuelve a la pantalla de configuración, se pueden ver todos los
pantalla de slaves nuevos (no previstos) transferidos.
configuración Ilustración de la pantalla de configuración una vez transferidos todos los slaves:

Configuration Mise au point


Configuration AS-interface V2
Esclaves std /A Esclaves /B
00
XVBC21A 01
02
03 ASI20MT4IE
04
05 INOUT24/12
06
WXA36 07
08
09
10
11 Inconnu
12
13
14
15 Inconnu
16

Leyenda:
l La cruz significa que hay diferencias entre la imagen del perfil del slave
transferido y el perfil deseado en un principio en la pantalla de configuración.
l El punto de exclamación indica que se ha introducido un nuevo perfil en la
pantalla de configuración.
Explicación:
La pantalla de configuración muestra siempre la imagen permanente de la
configuración deseada (de ahí la presencia del slave en 3B a pesar del cambio de
dirección (Véase Modificación de la dirección de un esclavo, p. 175)), completada
por la imagen actual del bus.
Los perfiles y parámetros de los slaves previstos que aparecen corresponden a los
previstos. Los perfiles y parámetros de los slaves desconocidos que aparecen
corresponden a las imágenes de los detectados.

TWD USE 10AS 179


Puesta en marcha del bus AS-Interface

Procedimiento Antes de transferir una aplicación nueva hacia el acoplador, el usuario puede tener
de transferencia en cuenta, para cada uno de los slaves, la imagen detectada del perfil y de los
de la aplicación parámetros (transferida a la pantalla de configuración) o modificar la configuración
definitiva hacia el "a mano" (Véase Procedimiento de declaración y configuración de un slave, p. 169).
acoplador En la tabla siguiente se describe el procedimiento que se ha de seguir para validar
y transferir la configuración definitiva hacia el acoplador:
Paso Acción
1 Desconectar el equipo del acoplador mediante el software.
Nota:
No se puede realizar ninguna modificación en la pantalla de configuración si el
equipo está conectado al acoplador.
2 Hacer clic con el botón derecho del ratón en el slave deseado.

180 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Paso Acción
3 Existen dos posibilidades:
l Seleccionar "Aceptar conf." para aceptar el perfil detectado del slave
seleccionado.
Ilustración:

Configuration
Configuration AS-interface V2
Esclaves std /A Esclaves /B
00
XVBC21A 01
02
03 ASI20MT4IE
04
05 INOUT24/12
06 Nouveau ... Ctrl+N
Ouvrir ... Ctrl+O
WXA36 07
Couper Ctrl+X
08
Copier Ctrl+C
09 Ctrl+V
Coller
10 Suppr
Effacer
11 Inconnu
Accepter Conf Ctrl+A
12
13
14
15 Inconnu
16

Para cada uno de los slaves marcados con una cruz, hay un mensaje que
advierte al usuario de que esa operación sobrescribirá el perfil inicial (que
aparece en pantalla) del slave.
l Seleccionar la otra opción del menú contextual para configurar a mano el
slave seleccionado.
4 Volver a comenzar la operación para cada uno de los slaves deseados en la
configuración.
5 Pulsar "Aceptar" para validar y crear la nueva aplicación.
Resultado: vuelta automática a la pantalla principal.
6 Transferir la aplicación al acoplador.

TWD USE 10AS 181


Puesta en marcha del bus AS-Interface

Direccionamiento automático de un slave AS-Interface V2

Presentación Todos los slaves presentes en el bus AS-Interface deben tener asignada (por
configuración) una dirección física única. Esta debe ser la imagen de la que está
declarada en TwidoSoft.

El software TwidoSoft ofrece un servicio de direccionamiento automático de los


slaves que evita así la utilización de una consola AS-Interface.
El servicio de direccionamiento automático se utiliza para:
l Cambiar un slave que falla
l Insertar un nuevo slave

Procedimiento En la siguiente tabla se detalla el procedimiento que se debe llevar a cabo para
definir el parámetro Direccionamiento automático.
Paso Acción
1 Acceder a la pantalla de configuración del módulo master AS-Interface V2.
2 Hacer clic en la casilla de verificación Direccionamiento automático situada
en la zona Modo master.
Resultado: El servicio Direccionamiento automático se activará (casilla
marcada) o se desactivará (casilla no marcada).
Observación: El parámetro Direccionamiento automático aparece
seleccionado de forma predeterminada en la pantalla de configuración.

182 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Inserción de un equipo slave en una configuración AS-Interface V2 existente

Presentación Es posible insertar un equipo en una configuración AS-Interface V2 existente sin


tener que recurrir al programador de bolsillo.
Esta operación es posible si:
l el servicio Direccionamiento automático del modo de configuración está en
modo activo (Véase Direccionamiento automático de un slave AS-Interface V2,
p. 182),
l únicamente falta un esclavo en la configuración física,
l el slave que se va a insertar está previsto en la pantalla de configuración,
l el slave tiene el perfil previsto en la configuración,
l el esclavo tiene la dirección 0(A).
Así, el acoplador AS-Interface V2 asignará automáticamente al esclavo el valor
predeterminado en la configuración.

Procedimiento En la siguiente tabla se detalla el procedimiento que se debe llevar a cabo para que
la inserción automática de un nuevo esclavo sea efectiva.
Paso Acción
1 Agregar el nuevo esclavo en la pantalla de configuración en modo local.
2 Realizar una transmisión de configuración hacia el autómata en modo
conectado.
3 Conectar físicamente el nuevo esclavo de la dirección 0(A) al bus AS-Interface
V2.

Nota: Es posible modificar una aplicación realizando la manipulación que se ha


indicado anteriormente, tantas veces como sea necesario.

TWD USE 10AS 183


Puesta en marcha del bus AS-Interface

Sustitución automática de un slave AS-Interface V2 que presenta un fallo

Principio Cuando un esclavo se declara en fallo, es posible sustituirlo automáticamente por


un esclavo del mismo tipo.
La sustitución puede llevarse a cabo sin tener que detener el bus AS-Interface V2 y
sin manipulación alguna en tanto en cuanto esté activado el servicio Direcciona-
miento automático del modo de configuración (Véase Direccionamiento
automático de un slave AS-Interface V2, p. 182).

Pueden presentarse dos posibilidades:


l el esclavo de recambio está programado con la misma dirección con ayuda del
programador de bolsillo y tiene el mismo perfil y subperfil que el esclavo que
presenta un fallo. Por lo tanto, se insertará automáticamente en la lista de
esclavos detectados (LDS) y de esclavos activos (LAS),
l el esclavo de recambio es virgen (dirección 0(A), esclavo nuevo) y tiene el mismo
perfil que el esclavo que presenta un fallo. Adoptará automáticamente la
dirección del esclavo cambiado y se insertará entonces en la lista de esclavos
detectados (LDS) y en la lista de esclavos activos (LAS).

184 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Direccionamiento de las entradas y salidas asociadas a los equipos Slaves


conectados al bus AS-Interface V2

Presentación Esta página muestra las especificaciones de direccionamiento de las entradas y


salidas digitales o analógicas de los equipos Slaves.
Para evitar cualquier confusión con las entradas y salidas remotas, se proponen
nuevos símbolos de sintaxis AS-Interface: %IA, por ejemplo.

Ilustración Recordatorio del principio de direccionamiento:

% IA, QA, IWA, QWA x . n . i


Símbolo Tipo de objeto dirección del dirección Nº de
módulo del Slave vía
de ampliación

Valores En la siguiente tabla se especifican los valores de los objetos de los Slaves AS-
específicos Interface V2:
Elemento Valores Comentario
IA - Imagen de la entrada física digital del
Slave.
QA - Imagen de la salida física digital del Slave.
IWA - Imagen de la entrada física analógica del
Slave.
QWA - Imagen de la salida física analógica del
Slave.
x 1à7 Dirección del módulo AS-Interface en el
bus de ampliación
n De 0A a 31B La ubicación 0 no se puede configurar.
i De 0 a 3 -

TWD USE 10AS 185


Puesta en marcha del bus AS-Interface

Ejemplos La siguiente tabla presenta varios ejemplos de direccionamiento de las entradas y


salidas:
Objeto de E/S Descripción
%IWA4.1A.0 Entrada analógica 0 del Slave 1A del módulo AS-Interface en la
posición 4 del bus de ampliación.
%QA2.5B.1 Salida digital 1 del Slave 5B del módulo AS-Interface en la
posición 2 del bus de ampliación.
%IA1.12A.2 Entrada digital 2 del Slave 12A del módulo AS-Interface en la
posición 1 del bus de ampliación.

Intercambios Los objetos descritos se intercambian implícitamente, es decir, de forma


implícitos automática, con cada ciclo del autómata.

186 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Programación y diagnóstico del bus AS-Interface V2

Intercambios Los objetos (palabras y bits) asociados al bus AS-Interface aportan información (ej.:
explícitos funcionamiento del bus, estado de los Slaves...) y comandos adicionales para
efectuar una programación avanzada de la función AS-Interface.
El bus de expansión intercambia estos objetos explícitamente entre el autómata
Twido y el Master AS-Interface:
l A petición del programa de usuario mediante la instrucción: ASI_CMD (consulte
"Presentación de la instrucción ASI_CMD" más abajo),
l mediante la pantalla de depuración o la tabla de animación.

Palabras de Las palabras de sistemas reservadas en el autómata Twido para los módulos
sistema Master AS-Interface permiten conocer el estado de la red: %SW73 está reservada
especificadas para el primer módulo de ampliación AS-Interface y %SW74 para el segundo. Sólo
reservadas se utilizan los 5 primeros bits de estas palabras, son de sólo lectura.
La tabla siguiente muestra los bits que se utilizan:
Palabras Bit Descripción
de
sistema
0 Estado del sistema ( = 1 si la configuración es correcta, 0 si
%SW73 no lo es)
y 1 Intercambio de datos ( = 1 si el intercambio de datos está
%SW74 activado, 0 si está en modo Intercambio de datos
desactivado (Véase Modo de funcionamiento del módulo
de interfaz del bus AS-Interface V2, p. 191))
2 Sistema en stop ( = 1 si el modo Local (Véase Modo local,
p. 191) está activado, 0 si no lo está)
3 Instrucción ASI_CMD finalizada ( = 1 si finalizada, 0 si en
curso)
4 Error de instrucción ASI_CMD ( = 1 si lo hay, 0 si no lo hay)

Ejemplo de uso (para el primer módulo de ampliación AS-Interface):


Antes de utilizar una instrucción ASI_CMD, hay que comprobar el bit %SW73:X3
para asegurarse de que no se está ejecutando ninguna instrucción: compruebe que
%SW73:X3 = 1.
Para saber si la instrucción se ha ejecutado correctamente, compruebe que el bit
%SW73:X4 es igual a 0.

TWD USE 10AS 187


Puesta en marcha del bus AS-Interface

Presentación de Mediante el programa de usuario, la instrucción ASI_CMD permite al usuario


la instrucción programar su red y obtener el diagnóstico de los Slaves. Los parámetros de la
ASI_CMD instrucción se transmiten por medio de palabras internas (memorias) %MWx.
La sintaxis de la instrucción es la siguiente:
ASI_CMDn %MWx:l
Leyenda:
Símbolo Descripción
n Dirección del módulo de ampliación AS-Interface (1 a 7).
x Número de la primera palabra interna (memoria) transmitida en parámetro (0
a 254).
l Longitud de la instrucción en número de word (2).

Uso de la En la tabla siguiente se describe la acción de la instrucción ASI_CMD en función del


instrucción valor de los parámetros %MW(x) y %MW(x+1) cuando sea necesario. Para las
ASI_CMD solicitudes de diagnóstico de los Slaves, el resultado se devuelve al parámetro
%MW(x+1).
%MWx %MWx+1 Acción
1 0 Sale del modo Local.
1 1 Pasa al modo Local.
2 0 Prohíbe el intercambio de datos entre el Master y sus
Slaves (entra en el modo Intercambio de datos
desactivado).
2 1 Autoriza el intercambio de datos entre el Master y sus
Slaves (sale del modo Intercambio de datos
desactivado).
3 Reservado -
4 Resultado Lee la lista de Slaves activos (tabla LAS) de la dirección
0A a 15A (1 bit por Slave).
5 Resultado Lee la lista de Slaves activos (tabla LAS) de la dirección
16A a 31A (1 bit por Slave).
6 Resultado Lee la lista de Slaves activos (tabla LAS) de la dirección
0B a 15B (1 bit por Slave).
7 Resultado Lee la lista de Slaves activos (tabla LAS) de la dirección
16B a 31B (1 bit por Slave).
8 Resultado Lee la lista de Slaves detectados (tabla LDS) de la
dirección 0A a 15A (1 bit por Slave).
9 Resultado Lee la lista de Slaves detectados (tabla LDS) de la
dirección 16A a 31A (1 bit por Slave).

188 TWD USE 10AS


Puesta en marcha del bus AS-Interface

%MWx %MWx+1 Acción


10 Resultado Lee la lista de Slaves detectados (tabla LDS) de la
dirección 0B a 15B (1 bit por Slave).
11 Resultado Lee la lista de Slaves detectados (tabla LDS) de la
dirección 16B a 31B (1 bit por Slave).
12 Resultado Lee la lista de los dispositivos erróneos de los Slaves
(tabla LPF) de la dirección 0A a 15A (1 bit por Slave).
13 Resultado Lee la lista de los dispositivos erróneos de los Slaves
(tabla LPF) de la dirección 16A a 31A (1 bit por Slave).
14 Resultado Lee la lista de los dispositivos erróneos de los Slaves
(tabla LPF) de la dirección 0B a 15B (1 bit por Slave).
15 Resultado Lee la lista de los dispositivos erróneos de los Slaves
(tabla LPF) de la dirección 16B a 31B (1 bit por Slave).
16 Resultado Lee el estado del bus.
Consulte el resultado en el párrafo que sigue.

Nota: El estado del bus se actualiza con cada ciclo del autómata. Pero el resultado
de la instrucción ASI_CMD de lectura del bus sólo está disponible en el ciclo del
autómata siguiente.

Resultado de la En caso de lectura del estado del bus mediante la instrucción ASI_CMD (valor del
instrucción parámetro %MWx igual a 16), el formato del resultado en la palabra %MWx+1 es el
ASI_CMD para siguiente:
leer el estado del
%MWx+1 Designación (1=OK, 0=NOK)
bus
Menos Bit 0 Configuración OK
significativo Bit 1 LDS.0 (Slave presente en la dirección 0)
Bit 2 Direccionamiento automático activo
Bit 3 Direccionamiento automático disponible
Bit 4 Modo de configuración activo
Bit 5 Operación normal activa
Bit 6 APF (problema de alimentación)
Bit 7 Modo local preparado

TWD USE 10AS 189


Puesta en marcha del bus AS-Interface

%MWx+1 Designación (1=OK, 0=NOK)


Más significativo Bit 0 Fallo de dispositivo
Bit 1 Intercambio de datos activo
Bit 2 Modo local
Bit 3 Modo normal (1)
Bit 4 Fallo de comunicación con el Master AS-Interface
Bit 5 Instrucción ASI_CMD en curso
Bit 6 Instrucción ASI_CMD errónea

Resultado de la En caso de diagnóstico de los Slaves mediante la instrucción ASI_CMD (valor


instrucción %MWx comprendido entre 4 y 15), el estado de los Slaves se devuelve a los bits
ASI_CMD para (1=OK) de la palabra %MWx+1. La tabla siguiente muestra el resultado en función
leer el estado de del valor de la palabra %MWx:
los Slaves
%MWx %MWx+1
Valor Byte más significativo Byte menos significativo
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
4, 8, 12 15A 14A 13A 12A 11A 10A 9A 8A 7A 6A 5A 4A 3A 2A 1A 0A
5, 9, 13 31A 30A 29A 28A 27A 26A 25A 24A 23A 22A 21A 20A 19A 18A 17A 16A
6, 10, 14 15B 14B 13B 12B 11B 10B 9B 8B 7B 6B 5B 4B 3B 2B 1B 0B
7, 11, 15 31B 30B 29B 28B 27B 26B 25B 24B 23B 22B 21B 20B 19B 18B 17B 16B

Para leer si el Slave 20B está activo, la instrucción ASI_CMD debe ejecutarse con
la palabra interna %MWx de valor 7. El resultado se devuelve a la palabra interna
%MWx+1, el estado del Slave 20B lo da el valor del bit 4 del byte menos
significativo: si el bit 4 es igual à 1, el Slave 20B está activo.

Ejemplos de Para forzar el paso del Master AS-Interface (en posición 1 en el bus de ampliación)
programación de a modo local:
la instrucción LD 1
ASI_CMD [%MW0 := 16#0001]
[%MW1 := 16#0001]
LD %SW73:X3 //Si no hay ninguna instrucción ASI_CMD en curso, continúe
[ASI_CMD1 %MW0:2] //para forzar el paso al modo local

Para leer la tabla de Slaves activos de la dirección 0A a 15A:


LD 1
[%MW0 := 16#0004]
[%MW1 := 16#0000 //opcional]
LD %SW73:X3 //Si no hay ninguna instrucción ASI_CMD en curso, continúe
[ASI_CMD1 %MW0:2] //para leer la tabla LAS de la dirección 0A a 15A

190 TWD USE 10AS


Puesta en marcha del bus AS-Interface

Modo de funcionamiento del módulo de interfaz del bus AS-Interface V2

Presentación El módulo de interfaz del bus AS-Interface TWDNOI10M3 dispone de tres modos
de funcionamiento para responder a necesidades específicas. Estos modos son:
l El modo protegido,
l El modo local,
l El modo Intercambio de datos desactivado.
El empleo de la instrucción ASI_CMD (Véase Presentación de la instrucción
ASI_CMD, p. 188) en un programa de usuario permite entrar o salid de estos
modos.

Modo protegido El modo de funcionamiento protegido es el modo que generalmente se utiliza para
explotar una aplicación. Esto implica que el acoplador AS-Interface V2 está
configurado en Twidosoft. Este:
l comprueba continuamente que la lista de los Slaves detectados es igual a la lista
de los Slaves previstos,
l controla la alimentación.
En este modo, un Slave no se activará hasta que se declare en la configuración y
sea detectado.
Durante el arranque o la configuración, el autómata Twido fuerza el módulo AS-
Interface a modo protegido.

Modo local Al llegar al modo Local, el acoplador efectúa inicialmente una puesta a cero de
todos los Slaves presentes y detiene los intercambios del bus. Mientras está en el
modo Local, las salidas están forzadas a cero.
Además de con el botón PB2 en el módulo AS-Interface TWDNOI10M3, se puede
acceder al modo local en el programa mediante la instrucción ASI_CMD (Véase
Ejemplos de programación de la instrucción ASI_CMD, p. 190), igual que para salid
del módulo y volver al módulo protegido.

Modo Al llegar al modo Intercambio de datos desactivado, los intercambios del bus siguen
Intercambio de funcionando, pero los datos no se actualizan más.
datos Sólo se puede acceder a este modo mediante la instrucción ASI_CMD (Véase Uso
desactivado de la instrucción ASI_CMD, p. 188).

TWD USE 10AS 191


Puesta en marcha del bus AS-Interface

192 TWD USE 10AS


Funcionamiento del monitor de
operación
10
Presentación

Objeto En este capítulo se ofrece información detallada acerca del uso del monitor de
operación Twido opcional.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Monitor de operación 194
Identificación del controlador e información de estado 197
Objetos y variables del sistema 199
Ajustes del puerto serie 206
Reloj de fecha/hora 207
Factor de corrección de tiempo real 208

TWD USE 10AS 193


Funcionamiento del monitor de operación

Monitor de operación

Introducción El monitor de operación es una opción de Twido que permite visualizar y controlar
datos de la aplicación y algunas funciones del controlador, como el estado de
funcionamiento y el reloj de tiempo real (RTC). Esta opción está disponible como un
cartucho (TWDXCPODC) para los controladores compactos o como un módulo de
ampliación (TWDXCPODM) para los controladores modulares.
El monitor de operación tiene dos modos de funcionamiento:
l Modo de visualización: sólo muestra datos.
l Modo de edición: permite modificar datos.

Nota: El monitor de operación se actualiza en un intervalo específico del ciclo de


exploración del controlador. Esto puede provocar confusión al interpretar la
pantalla de salidas especializadas para pulsos %PLS o %PWM. En el momento
en que se muestran estas salidas, sus valores serán siempre cero y se mostrará
este valor.

Visualizaciones El monitor de operación proporciona las siguientes visualizaciones independientes


y funciones con las funciones asociadas que puede realizar para cada visualización.
l Identificación del controlador e información de estado: Monitor de operación
Visualización de la versión del firmware y del estado del autómata. Modificación
del estado del autómata mediante los comandos Run, Initial y Stop.
l Objetos y variables del sistema: pantalla de datos
Selecciona los datos de aplicación por la dirección: %I, %Q y el resto de los
objetos de software en el controlador base. Controla y modifica el valor de un
objeto de datos de software seleccionado.
l Ajustes de puerto serie: pantalla de comunicaciones
Muestra y modifica los ajustes del puerto de comunicación.
l Reloj de fecha/hora: pantalla de fecha y hora
Muestra y configura la fecha y la hora actuales cuando el fechador (RTC) está
instalado.
l Corrección de tiempo real: factor RTC
Muestra y modifica el valor de corrección RTC para el RTC opcional.

Nota: El reloj de fecha/hora y la corrección de tiempo real sólo están disponibles


si está instalado el cartucho opcional (TWDXCPRTC) del reloj de tiempo real
(RTC).

194 TWD USE 10AS


Funcionamiento del monitor de operación

Ilustración A continuación se muestra un diagrama del monitor de operación que se compone


de una zona de visualización y cuatro teclas de entrada de botones de comando.

Zona de
visualización

T M 1 2 3
V 1 2 3 4

MOD/
ESC INTRO

Teclas de entrada

Zona de El monitor de operación proporciona una pantalla LCD capaz de visualizar dos
visualización líneas de caracteres.
l La primera línea de la pantalla tiene tres caracteres de 12 segmentos y cuatro
caracteres de 7 segmentos.
l La segunda línea tiene un carácter de 13 segmentos, un carácter de 3
segmentos (para un signo más/menos) y cinco caracteres de 7 segmentos.

Teclas de Las funciones de los cuatro botones de comando de entrada dependen del modo
entrada del monitor de operación:
Tecla En modo de visualización En modo de edición
ESC Rechaza los cambios y regresa a la
visualización anterior.
Pasa al siguiente valor del objeto que
se esté editando.
Avanza hasta la siguiente Pasa al siguiente tipo de objeto que se
visualización. vaya a editar.
MOD/ Va al modo de edición. Acepta los cambios y regresa a la
ENTRAR visualización anterior.

TWD USE 10AS 195


Funcionamiento del monitor de operación

Selección y La visualización o pantalla inicial del monitor de operación muestra la identificación


navegación por del controlador y la información de estado. Pulse el botón de comando para
las distintas avanzar por cada una de las visualizaciones. Las pantallas del reloj de fecha/hora
visualizaciones o del factor de corrección del reloj de tiempo real (RTC) no se muestran si no se
detecta el cartucho de RTC opcional (TWDXCPRTC) en el controlador.
Como método abreviado, pulse la tecla ESC para regresar a la pantalla de
visualización inicial. Para la mayoría de las pantallas, al pulsar ESC regresará a la
pantalla de identificación del autómata e información de estado. Sólo cuando se
editen objetos y variables del sistema que no sean la entrada inicial (%I0.0.0), al
pulsar ESC le llevará a la entrada inicial o primera del objeto del sistema.
Para modificar un valor del objeto, en lugar de pulsar el botón de comando para
ir al primer dígito de valor, vuelva a pulsar MOD/ENTRAR.

196 TWD USE 10AS


Funcionamiento del monitor de operación

Identificación del controlador e información de estado

Introducción La visualización o pantalla inicial del monitor de operación opcional Twido muestra
la identificación del controlador y la información de estado.

Ejemplo La revisión del firmware aparece en la esquina superior derecha de la zona de


visualización y el estado del controlador se muestra en la esquina superior izquierda
de la zona de visualización, como se muestra a continuación:

R U N 1 0 0

Estado del Revisión del


controlador firmware

Estados del Los estados del controlador incluyen lo siguiente:


controlador l NCF: Sin configurar
El controlador está en estado NCF hasta que se carga una aplicación. No se
permite ningún otro estado hasta que se carga un programa de aplicación.
Puede comprobar la E/S modificando el bit S8 del sistema (consulte Bits de
sistema (%S), p. 460).
l STP: Detenido
Cuando hay una aplicación presente en el controlador, el estado cambia a STP
o detenido. En este estado, la aplicación no se está ejecutando. Las entradas se
actualizan y los valores de datos se detienen con su último valor. Las salidas no
se actualizan en este estado.
l INI: Inicial
Puede modificar el controlador a estado INI o inicial sólo desde el estado STP.
La aplicación no se está ejecutando. Las salidas del controlador se actualizan y
los valores de datos se establecen con su estado inicial. Las salidas no se
actualizan en este estado.
l RUN: En ejecución
Cuando está en estado RUN o en ejecución, la aplicación se está ejecutando.
Las salidas del controlador se actualizan y los valores de datos se establecen
con arreglo a la aplicación. Éste es el único estado donde se actualizan las
salidas.
l HLT: Detenido (Error de la aplicación de usuario)

TWD USE 10AS 197


Funcionamiento del monitor de operación

Si el controlador ha introducido un estado ERR o de error, la aplicación se


detendrá. Las entradas se actualizan y los valores de datos se detienen con su
último valor. Desde este estado, las salidas no se actualizan. En este modo, el
código del error se muestra en la parte inferior derecha del visualizador. Este
código tiene forma de valor decimal sin signo.
l NEX: Not Executable (no ejecutable)
Se ha realizado una modificación en línea en la lógica de usuario. Consecuencia:
la aplicación ya no se puede ejecutar. No volverá a este estado hasta que no se
resuelvan todas las causas del estado no ejecutable (NEX).

Visualización y Con el monitor de operación, puede cambiar a estado INI desde el estado STP o
cambio de desde STP a RUN, o bien desde RUN a STP. Realice lo siguiente para cambiar el
estados del estado del controlador:
controlador
Paso Acción
1 Pulsar la tecla hasta que aparezca el monitor de operaciones (o pulse ESC).
Los estados del controlador actual aparecen en la esquina superior izquierda de la
zona de visualización.
2 Pulsar la tecla MOD/ENTRAR para entrar en el modo de edición.
3 Pulsar la tecla para seleccionar un estado del controlador.
4 Pulse la tecla MOD/INTRO para aceptar el valor modificado, o en la tecla ESC para
ignorar las modificaciones realizadas en el modo de edición.

198 TWD USE 10AS


Funcionamiento del monitor de operación

Objetos y variables del sistema

Introducción El monitor de operación opcional proporciona estas funciones para controlar y


ajustar los datos de la aplicación:
l Seleccionar los datos de la aplicación por la dirección (como %I o %Q);
l Controlar el valor de un objeto o una variable del software seleccionado;
l Cambiar el valor del objeto de datos visualizado actualmente (incluido el forzado
de entradas y salidas).

Objetos y La siguiente tabla enumera los objetos y variables del sistema que pueden
variables del visualizarse y modificarse mediante el monitor de operación, en el mismo orden en
sistema que se accede a los mismos.
Objeto Variable/Atributo Descripción Acceso
Entrada %Ix.y.z Valor Lectura/Forzado
Salida %Qx.y.z Valor Lectura/Escritura/
Forzado
Temporizador %TMX.V Valor actual Lectura/Escritura
%TMX.P Valor preestablecido Lectura/Escritura
%TMX.Q Hecho Lectura
Contador %Cx.V Valor actual Lectura/Escritura
%Cx.P Valor preestablecido Lectura/Escritura
%Cx.D Hecho Lectura
%Cx.E Vacío Lectura
%Cx.F Completo Lectura
Bit de memoria %Mx Valor Lectura/Escritura
Palabra de memoria %MWx Valor Lectura/Escritura
Palabra constante %KWx Valor Lectura
Palabra doble de %MDx Valor Lectura/Escritura
memoria
Palabra doble %KDx Valor Lectura
constante
Palabra flotante de %MFx Valor Lectura/Escritura
memoria
Palabra flotante %KFx Valor Lectura
constante
Bit de sistema %Sx Valor Lectura/Escritura
Palabra de sistema %SWx Valor Lectura/Escritura
Entrada analógica %IWx.y.z Valor Lectura
Salida analógica %QWx.y.z Valor Lectura/Escritura

TWD USE 10AS 199


Funcionamiento del monitor de operación

Objeto Variable/Atributo Descripción Acceso


Contador rápido %FCx.V Valor actual Lectura
%FCx.P Valor preestablecido Lectura/Escritura
%FCx.D Hecho Lectura
Contador muy rápido %VFCx.V Valor actual Lectura
%VFCx.P Valor preestablecido Lectura/Escritura
%VFCx.U Dirección de conteo Lectura
%VFCx.C Valor de captura Lectura
%VFCx.S0 Valor de umbral 0 Lectura/Escritura
%VFCx.S1 Valor de umbral 1 Lectura/Escritura
%VFCx.F Salida de Lectura
%VFCx.M Frecuencia medida Lectura/Escritura
%VFC.T Base de tiempo Lectura/Escritura
%VFC.R Salida refleja Lectura/Escritura
%VFC.S habilitada Lectura/Escritura
Entrada refleja
habilitada
Palabra de red de %INWx.z Valor Lectura
entrada
Palabra de red de %QNWx.z Valor Lectura/Escritura
salida
Grafcet %Xx Bit de pasos Lectura
Generador de pulsos %PLS.N Número de pulsos Lectura/Escritura
%PLS.P Valor preestablecido Lectura/Escritura
%PLS.D Hecho Lectura
%PLS.Q Salida de corriente Lectura
Modulador de ancho %PWM.R Ratio Lectura/Escritura
de pulso %PWM.P Valor preestablecido Lectura/Escritura
Controlador del %DRx.S Número de paso Lectura
conmutador de %DRx.F actual completo Lectura
tambor
Contador de pasos %SCx.n Bit del contador de Lectura/Escritura
pasos
Registro %Rx.I Entrada Lectura/Escritura
%Rx.O Salida Lectura/Escritura
%Rx.E Vacío Lectura
%Rx.F Completo Lectura
Registro de bits de %SBR.x.yy Bit de registro Lectura/Escritura
desplazamiento
Mensaje %MSGx.D Hecho Lectura
%MSGx.E Error Lectura

200 TWD USE 10AS


Funcionamiento del monitor de operación

Objeto Variable/Atributo Descripción Acceso


Entrada de Slave AS- %IA.x.y.z Valor Lectura/Forzado
Interface
Entrada analógica de %IWA.x.y.z Valor Lectura
Slave AS-Interface
Salida de Slave AS- %QA.x.y.z Valor Lectura/Escritura/
Interface Forzado
Salida analógica de %QWA.x.y.z Valor Lectura/Escritura
Slave AS-Interface

Observaciones:
1. Las variables no se visualizarán si no se utilizan en una aplicación, ya que Twido
utiliza una asignación de memoria dinámica.
2. Si el valor de %MW es superior a +32767 o inferior a -32768, el monitor de
operación continuará parpadeando.
3. Si el valor de %SW es superior a 65.535, el monitor de operación continúa
parpadeando, excepto para %SW0 y %SW11. Si el valor introducido es superior
al límite, volverá al valor configurado.
4. Si el valor introducido para %PLS.P es superior al límite, el valor escrito se
establecerá como valor de saturación.

TWD USE 10AS 201


Funcionamiento del monitor de operación

Visualización y Puede accederse a cada tipo de objeto del sistema comenzando con el objeto de
modificación de entrada (%I), continuando a través del objeto del mensaje (%MSG) y, finalmente,
objetos y realizando un bucle de prueba al objeto de entrada (%I).
variables Para visualizar un objeto del sistema:
Paso Acción
1 Presionar la tecla hasta que aparezca la pantalla de visualización de datos.
El objeto de entrada ("I") aparecerá en la esquina superior izquierda de la zona
de visualización. La letra " I " (o el nombre del objeto visualizado anteriormente)
no parpadea.
2 Pulse la tecla MOD/ENTRAR para entrar en el modo de edición.
La letra " I "del objeto de entrada (o el nombre del objeto visualizado
anteriormente) empieza a parpadear.
3 Pulsar la tecla para avanzar de forma secuencial a través de la lista de
objetos.
4 Pulsar la tecla para avanzar de forma secuencial a través del campo de un
tipo de objeto y pulsar la tecla para aumentar el valor de dicho campo. Se
pueden utilizar las teclas y para navegar y modificar todos los campos del
objeto visualizado.
5 Repetir los pasos 3 y 4 hasta finalizar la edición.
6 Pulsar la tecla MOD/ENTRAR para aceptar los valores modificados.
Nota: Antes de aceptar cualquier modificación, deben validarse el nombre y la
dirección del objeto. Es decir, deben existir en la configuración del autómata antes
de utilizar el monitor de operación.
Pulsar ESC para rechazar los cambios realizados en el modo de edición.

Valores de datos En general, el valor de datos de un objeto o variable se muestra como entero con o
y formatos de sin signo en la esquina inferior derecha de la zona de visualización. Además, todos
visualización los campos suprimen los ceros no significativos de los valores visualizados. La
dirección de cada objeto aparece en el monitor de operación en uno de estos siete
formatos:
l Formato de E/S
l Formato de E/S de Slaves AS-Interface
l Formato del bloque de función
l Formato simple
l Formato de E/S de red
l Formato de contador de pasos
l Formato de registros de bits de desplazamiento

202 TWD USE 10AS


Funcionamiento del monitor de operación

Formato de Los objetos de entrada/salida (%I, %Q, %IW y %QW) tienen direcciones de tres
entrada/salida elementos (ej. : %IX.Y.Z) y se visualizan del siguiente modo:
l Tipo de objeto y dirección del autómata en la esquina superior izquierda;
l Dirección de ampliación en la parte central superior;
l Canal de E/S en la esquina superior derecha.
En el caso de una sola entrada (%I) y salida (%Q), el área inferior izquierda de la
visualización contendrá un carácter que puede ser "U" para bit no forzado o "F" para
forzado. El valor forzado se muestra en la esquina inferior derecha de la pantalla.
El objeto de salida %Q0.3.11 aparece en la zona de visualización del siguiente
modo:

Q 0 3 1 1
F 1

Formato de Los objetos de entrada/salida de Slaves AS-Interface (%IA, %QA, %IWA y %QWA)
Entrada/Salida tienen direcciones de cuatro elementos (ej.: %IA.Y.Z) y se visualizan del siguiente
de Slaves AS- modo:
Interface l Tipo de objeto de la esquina superior izquierda;
l Dirección del Master AS-Interface en el bus de ampliación en la parte superior
central izquierda;
l Dirección del Slave en el bus AS-Interface en la parte superior central derecha;
l Canal de E/S del Slave en la esquina superior derecha.
En el caso de una sola entrada (%IA) y salida (%QA), el área inferior izquierda de
la visualización contendrá un carácter que puede ser "U" para bit no forzado o "F"
para forzado. El valor forzado se muestra en la esquina inferior derecha de la
pantalla.
El objeto de salida %QA1.3.2 aparece en la zona de visualización del siguiente
modo:

QA 1 3 2
F 1

TWD USE 10AS 203


Funcionamiento del monitor de operación

Formato del Los bloques de función (%TM, %C, %FC, %VFC, %PLS, %PWM, %DR, %R y
bloque de %MSGj) tienen direcciones de dos elementos, un número de objeto y una variable
función o nombre de atributo. Se visualizan del siguiente modo:
l Nombre del bloque de función en la esquina superior izquierda;
l Número de bloque de función (o instancia) en la esquina superior derecha;
l La variable o atributo en la esquina inferior izquierda;
l Valor del atributo en la esquina inferior derecha.
En el siguiente ejemplo, el valor actual del número de temporizador 123 se
establece a 1.234.

T M 1 2 3
V 1 2 3 4

Formato simple Se utiliza un solo formato para los objetos %M, %MW, %KW, %MD, %KD, %MF,
%KF, %S, %SW y %X:
l Número de objeto en la esquina superior derecha;
l Valor con signo para los objetos en la zona inferior.
En el siguiente ejemplo, el número de palabras de memoria 67 contiene el valor
+123.

M W 6 7
+ 1 2 3

Formato de Los objetos de entrada/salida de red (%INW y %QNW) aparecen en la zona de


entrada/salida de visualización del siguiente modo:
red l Nombre del objeto en la esquina superior izquierda;
l Dirección del autómata en la parte central superior;
l Número de objeto en la esquina superior derecha;
l Valor con signo para el objeto en la zona inferior.
En el siguiente ejemplo, la primera palabra de entrada de red del autómata remoto
configurado en la dirección remota nº 2 se establece con un valor -4.

I N W 2 0
- 4

204 TWD USE 10AS


Funcionamiento del monitor de operación

Formato de El formato de contador de pasos (%SC) muestra el número de objeto y el bit del
contador de contador de pasos del siguiente modo:
pasos l Nombre y número del objeto en la esquina superior izquierda;
l Número del bit del contador de pasos en la esquina superior izquierda;
l Valor del bit del contador de pasos en la parte inferior de la visualización.
En el siguiente ejemplo, el número 129 de bit del número 3 del contador de pasos
se establece a 1.

S C 3 1 2 9
1

Formato del El registro de bits de desplazamiento (%SBR) aparece en la siguiente zona de


registro de bits visualización tal y como se indica aquí:
de l Nombre y número del objeto en la esquina superior izquierda;
desplazamiento l Número del bit de registro en la esquina superior derecha;
l Valor del bit de registro en la esquina inferior derecha;
El siguiente ejemplo muestra la visualización del registro de bits de desplazamiento
número 4.

S B R 4 9
1

TWD USE 10AS 205


Funcionamiento del monitor de operación

Ajustes del puerto serie

Introducción El monitor de operación permite visualizar los ajustes de protocolo y cambiar las
direcciones de todos los puertos serie configurados con TwidoSoft. El número
máximo de puertos serie es dos. En el ejemplo que aparece a continuación, el
primer puerto se configura como protocolo Modbus con una dirección 123. El
segundo puerto serie se configura como conexión remota con una dirección de 4.

M 1 2 3
R 4

Visualización y Los controladores Twido soportan hasta dos puertos serie. Para visualizar los
modificación de ajustes del puerto serie utilizando el monitor de operación:
ajustes del
Paso Acción
puerto serie
1 Presionar la tecla hasta que aparezca la pantalla de comunicación. La única
letra del ajuste del protocolo del primer puerto serie ("M", "R" o "A") se visualizará
en la esquina superior izquierda del monitor de operación.
2 Pulsar la tecla MOD/ENTRAR para entrar en el modo de edición.
3 Presionar la tecla hasta que se encuentre en el campo que desea modificar.
4 Presionar al tecla para incrementar el valor del campo.
5 Repetir los pasos 3 y 4 hasta que se completen los ajustes de la dirección.
6 Presionar la tecla MOD/ENTRAR para aceptar los valores modificados o ESC
para rechazar las modificaciones realizadas durante el modo de edición.
7

206 TWD USE 10AS


Funcionamiento del monitor de operación

Reloj de fecha/hora

Introducción Puede modificar la fecha y la hora utilizando el monitor de operación si está


instalado el cartucho opcional RTC (TWDXCPRTC) en su controlador Twido. El
mes se visualiza en el extremo superior izquierdo de la pantalla HMI. Hasta que se
haya introducido una hora válida, el campo de mes contendrá el valor "RTC". El día
del mes se muestra en la esquina superior derecha de la pantalla. La hora del día
aparece en formato militar. Las horas y los minutos se muestran en la esquina
inferior derecha de la visualización, separados por la letra "h". El ejemplo que
aparece a continuación muestra que el RTC se ha establecido para el 28 de marzo
a las 2:22 de la tarde.

M A R 2 8
1 4 h 2 2

Visualización y Para visualizar y modificar el reloj de fecha/hora:


modificación del
Paso Acción
reloj de fecha/
hora 1 Presionar la tecla hasta que aparezca la pantalla de visualización de
visualización de fecha/hora. El valor del mes ("JAN", "FEB") aparecerá en la
esquina superior izquierda de la zona de visualización. Si no se ha inicializado
ningún mes, el valor "RTC" se visualizará en la esquina superior izquierda.
2 Pulsar la tecla MOD/ENTRAR para entrar en el modo de edición.
3 Presionar la tecla hasta que se encuentre en el campo que desea modificar.
4 Al presionar la tecla se aumenta el valor de dicho campo.
5 Continuar con los pasos 3 y 4 hasta que se haya completado el valor de hora del día.
6 Presionar la tecla MOD/ENTRAR para aceptar los valores modificados o ESC para
rechazar las modificaciones realizadas durante el modo de edición.

TWD USE 10AS 207


Funcionamiento del monitor de operación

Factor de corrección de tiempo real

Introducción Puede visualizar y modificar el factor de corrección de fechador utilizando el monitor


de operación. Cada módulo opcional de fechador (RTC) tiene un valor de factor de
corrección de tiempo real que se utiliza para corregir imprecisiones en el cristal del
módulo RTC. Este factor es un número entero sin signo, formado por tres cifras
entre 0 y 127. Aparece en la esquina inferior derecha del monitor de operación.
En el ejemplo siguiente se muestra un factor de corrección de 127.

R T C C o r r
1 2 7

Visualización y Para visualizar y modificar el factor de corrección de tiempo real, siga estos pasos.
modificación de
Paso Acción
la corrección
RTC 1 Presionar la tecla hasta que aparezca la pantalla de visualización del factor de
corrección de tiempo real. Aparecerá "RTC Corr" en la línea superior del monitor
de operación.
2 Pulsar la tecla MOD/ENTRAR para entrar en el modo de edición.
3 Presionar la tecla hasta que se encuentre en el campo que desea modificar.
4 Presionar la tecla para incrementar el valor del campo.
5 Continuar con los pasos 3 y 4 hasta que haya definido el valor de corrección de
tiempo real
6 Presionar la tecla MOD/ENTRAR para aceptar los valores modificados o ESC para
rechazar las modificaciones realizadas durante el modo de edición.

208 TWD USE 10AS


Descripción de lenguajes de
Twido
III
Presentación

Objeto Esta parte proporciona instrucciones para utilizar los lenguajes de programación
Ladder Logic, de lista y Grafcet para crear programas de control para controladores
programables Twido.

Contenido Esta parte contiene los siguientes capítulos:


Capítulo Nombre del capítulo Página
11 Lenguaje Ladder Logic 211
12 Lenguaje de lista de instrucciones 237
13 Grafcet 249

TWD USE 10AS 209


Lenguajes de Twido

210 TWD USE 10AS


Lenguaje Ladder Logic

11
Presentación

Objeto Este capítulo describe la programación con el lenguaje Ladder Logic.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Introducción a los diagramas Ladder Logic 212
Principios de programación para diagramas Ladder Logic 214
Bloque de diagramas Ladder Logic 216
Elementos gráficos del lenguaje Ladder Logic 220
Instrucciones Ladder Logic especiales OPEN y SHORT 223
Consejos sobre programación 224
Reversibilidad de Ladder Logic/Lista 229
Directrices para la reversibilidad Ladder Logic/Lista 231
Documentación del programa 233

TWD USE 10AS 211


Lenguaje Ladder Logic

Introducción a los diagramas Ladder Logic

Introducción Los diagramas Ladder Logic emplean la misma representación gráfica que la de los
circuitos de relé en lógica de relé, de tal manera que, en un diagrama Ladder Logic:
l Todas las entradas están representadas por símbolos de contactos ( ).
l Todas las salida están representadas por símbolos de bobinas ( ).
l Las operaciones numéricas están incluidas en el conjunto de instrucciones de
Ladder Logic gráfico.

Equivalentes La siguiente ilustración muestra un diagrama simplificado del cableado de un


Ladder Logic a circuito de lógica de relé y el diagrama Ladder Logic equivalente.
los circuitos de
relé
LS1 PB1 CR1 M1
LS1 PB1 CR1 M1 %I0.0 %I0.2 %I0.4 %Q0.4

LS2 SS1
LS2 SS1 %I0.1 %I0.7

Circuito de lógica de relé Diagrama Ladder Logic

En la ilustración anterior, todas las entradas asociadas a un periférico de


conmutación en el circuito de lógica de relé se representan en forma de contactos
del diagrama Ladder Logic. La bobina de salida M1 del circuito en lógica de relé se
representa mediante un símbolo de bobina en el diagrama Ladder Logic. Los
números de direcciones que aparecen encima del símbolo de cada contacto y de
cada bobina del diagrama Ladder Logic son referencias de los emplazamientos de
las conexiones externas de entrada y salida hacia el autómata.

212 TWD USE 10AS


Lenguaje Ladder Logic

Escalones Un programa en lenguaje de diagrama Ladder Logic está formado por "escalones"
Ladder Logic que representan el conjunto de instrucciones gráficas y aparecen entre dos barras
verticales. El autómata ejecuta los escalones de forma secuencial.
El conjunto de instrucciones gráficas representa las siguientes funciones:
l Entradas/salidas del controlador (botones de comando, sensores, relés, luces de
pilotos, etc.)
l Funciones del controlador (temporizadores, contadores, etc.)
l Operaciones lógicas y matemáticas (adición, división, AND, XOR, etc.)
l Operadores de comparación y otras operaciones numéricas (A<B, A=B,
desplazamiento, rotación, etc.)
l Variables internas del controlador (bits, palabras, etc.)
Estas instrucciones gráficas se organizan con conexiones horizontales y verticales
que conducen a una o varias salidas o acciones. Los escalones no admiten más de
un grupo de instrucciones vinculadas.

Ejemplo de El siguiente diagrama es un ejemplo de un programa Ladder Logic compuesto por


escalones dos escalones.
Ladder Logic

%I0.1 %M42
Ejemplo de escalón 1

%I0.3

%M42 %Q1,2
Ejemplo de escalón 2

%MW22:=%MW15+%KW1

TWD USE 10AS 213


Lenguaje Ladder Logic

Principios de programación para diagramas Ladder Logic

Reticulado de Cada escalón de Ladder Logic se compone de un reticulado de siete filas por once
programación columnas organizadas en dos áreas como se muestra en la siguiente ilustración.

Columnas
1 2 3 4 5 6 7 8 9 10 11

Filas
1

4
Barras
Celdas potenciales
5 de
reticulado
6

Área de

Área de actividad

Áreas del El reticulado de programación del diagrama Ladder Logic está dividido en dos
reticulado áreas:
l Área de prueba
Contiene las condiciones que se han de probar a fin de realizar acciones. Está
formada por las columnas 1 a 10 y contiene contactos, bloques de función y
bloques de comparación.
l Área de actividad
Contiene la salida u operación que será realizada según sean los resultados de
las pruebas llevadas a cabo en el área de prueba. Está formada por las columnas
8 a 11 y contiene bobinas y bloques de operación.

214 TWD USE 10AS


Lenguaje Ladder Logic

Introducción de Un escalón de Ladder Logic proporciona un reticulado de programación de siete por


instrucciones en once que comienza en la primera celda de la esquina superior izquierda del
el reticulado reticulado. La programación consiste en introducir instrucciones en las celdas del
reticulado. Las funciones, comparaciones e instrucciones de prueba se introducen
en celdas en el área de prueba y se alinean a la izquierda. La lógica de prueba
proporciona continuidad al área de actividad donde se introducen bobinas,
operaciones numéricas e instrucciones de flujo del programa y se justifican a la
derecha.
El escalón se soluciona o ejecuta (pruebas realizadas y salidas asignadas) dentro
del reticulado de arriba a abajo y de izquierda a derecha.

Cabeceras de Además del escalón, una cabecera de escalón aparece directamente por encima
escalón del escalón. Utilice la cabecera de escalón para documentar el propósito lógico del
escalón. La cabecera de escalón puede contener la siguiente información:
l Número de escalón
l Etiquetas (%Li)
l Declaraciones de subrutina (SRi:)
l Título de escalón
l Comentarios de escalón
Para obtener más información acerca de la utilización de la cabecera de escalón
para documentar los programas, consulte Documentación del programa, p. 233.

TWD USE 10AS 215


Lenguaje Ladder Logic

Bloque de diagramas Ladder Logic

Introducción Los diagramas Ladder Logic están compuestos por bloques que representan el flujo
de programas y las funciones, por ejemplo:
l Contactos
l Bobinas
l Instrucciones de flujo de programas
l Bloques de función
l Bloques de comparación
l Bloques de operación

Contactos, Las instrucciones contactos, bobinas y flujo de programas (saltar y llamadas)


bobinas y flujo ocupan una única celda en el reticulado de programación de Ladder Logic. Los
de programas bloques de función, comparación y operación ocupan varias.
A continuación se muestran ejemplos de contactos y bobinas.

Contacto Bobina

216 TWD USE 10AS


Lenguaje Ladder Logic

Bloques de Los bloques de función están ubicados en el área de prueba del reticulado de
función programación. El bloque debe aparecer en la primera fila; no deberían aparecer
instrucciones Ladder Logic ni líneas de continuidad por encima ni por debajo del
bloque de función. Las instrucciones de prueba Ladder Logic llevan al lateral de
entrada del bloque y las instrucciones de prueba o acción llevan al lateral de salida
del bloque.
Los bloques de función están colocados en vertical y ocupan dos columnas en
cuatro filas del reticulado de programación.
A continuación se muestra un ejemplo de un bloque de función del contador.

%C0
R E

S ADJ Y D
%C0.P 9999

CU F

CD

TWD USE 10AS 217


Lenguaje Ladder Logic

Bloques de Los bloques de comparación están ubicados en el área de prueba del reticulado de
comparación programación. El bloque puede aparecer en cualquier fila o columna del área de
prueba siempre que la longitud completa de la instrucción esté en esta área.
Los bloques de comparación están colocados en horizontal y ocupan dos columnas
en una fila del reticulado de programación,
tal y como se muestra en el siguiente ejemplo de bloque de comparación.

%MW0=%SW50

218 TWD USE 10AS


Lenguaje Ladder Logic

Bloques de Los bloques de operación están ubicados en el área de acción del reticulado de
operación programación. El bloque puede aparecer en cualquier fila del área de acción. La
instrucción está justificada a la derecha . Aparece en la derecha y termina en la
última columna.
Los bloques de operación están colocados en horizontal y ocupan cuatro columnas
en una fila del reticulado de programación,
a continuación se muestra un ejemplo de un bloque de operación.

%MW120 := SQRT (%MW15)

TWD USE 10AS 219


Lenguaje Ladder Logic

Elementos gráficos del lenguaje Ladder Logic

Introducción Las instrucciones de los diagramas Ladder Logic se componen de elementos


gráficos.

Contactos Los elementos gráficos de los contactos se programan en el área de prueba y


ocupan una celda (el alto de una fila por el ancho de una columna).
Nombre Elemento Instrucción Función
gráfico
Contacto normal LD Establece contacto cuando el
abierto objeto de bit de control está en
estado 1.

Contacto normal LDN Establece contacto cuando el


cerrado objeto de bit de control está en
estado 0.
Contacto para detectar LDR Flanco ascendente: detecta el
un flanco ascendente P cambio de 0 a 1 del objeto de bit
de control.

Contacto para detectar LDF Flanco descendente: detecta el


un flanco descendente N cambio de 1 a 0 del objeto de bit
de control.

Elementos de Los elementos gráficos de conexión se utilizan para conectar los elementos gráficos
conexión de acción y de prueba.
Nombre Elemento Función
gráfico
Conexión horizontal Conecta en serie los elementos gráficos de
prueba y acción entre dos barras potenciales.

Conexión vertical Conecta los elementos gráficos de prueba y


acción de forma paralela.

220 TWD USE 10AS


Lenguaje Ladder Logic

Bobinas Los elementos gráficos de bobina se programan en el área de acción y ocupan una
celda (el alto de una fila por el ancho de una columna).
Nombre Elemento Instrucción Función
gráfico
Bobina directa ST El objeto de bit asociado toma el valor
del resultado del área de prueba.

Bobina negada STN El objeto de bit asociado toma el valor


del resultado inverso del área de
prueba.
Bobina de ajuste S El objeto de bit asociado se establece
S
en 1 cuando el resultado del área de
prueba es 1.
Bobina de R El objeto de bit asociado se establece
restablecimiento R en 0 cuando el resultado del área de
prueba es 1.
Llamada de salto o JMP Se conecta a una instrucción
subrutina ->>%Li SR etiquetada ubicada delante o detrás.
->>%SRi

Bobina de condición Lenguaje Grafcet. Se utiliza cuando la


de transición programación de las condiciones de
# transición asociadas a las transiciones
provoca una inversión de corriente en
el siguiente paso.
Relé de control de MCS Modifica la ejecución de un programa.
MCS
master MCR
MCR

Retorno desde una RET Situado al final de las subrutinas para


subrutina <RET> regresar al programa principal.

Detener programa END Define el final del programa.


<END>

TWD USE 10AS 221


Lenguaje Ladder Logic

Bloques de Los elementos gráficos de los bloques de función se programan en el área de


función prueba y requieren cuatro filas y dos columnas de celdas (excepto para contadores
muy rápidos que requieren cinco filas y dos columnas).
Nombre Elemento Función
gráfico
Temporizadores, Cada bloque de función utiliza entradas y salidas
contadores, que permiten conexiones a otros elementos
registros, etc. gráficos..
Nota: Las salidas de los bloques de función no se
pueden conectar entre sí (conexiones verticales).

Bloques de Los bloques de comparación se programan en el área de prueba, mientras que los
operación y de operación lo hacen en el área de acción.
comparación
Nombre Elemento Función
gráfico
Bloque de Compara dos operandos. La salida cambia a 1
comparación cuando se comprueba el resultado.
Tamaño: una fila por dos columnas

Bloque de operación Realiza operaciones aritméticas y lógicas.


Tamaño: una fila por cuatro columnas

222 TWD USE 10AS


Lenguaje Ladder Logic

Instrucciones Ladder Logic especiales OPEN y SHORT

Introducción Las instrucciones OPEN y SHORT proporcionan un método apropiado para depurar
y solucionar posibles problemas en los programas Ladder. Estas instrucciones
especiales alteran la lógica de un escalón, ya sea acortando o abriendo la
continuidad de un escalón tal y como se explica en la siguiente tabla.

Instrucción Descripción Instrucción de


lista
OPEN Establece una interrupción en la continuidad AND 0
de un escalón de Ladder Logic sin tener en
cuenta los resultados de la última operación
lógica.
SHORT Permite la continuidad a través del escalón OR 1
sin tener en cuenta los resultados de la
última operación lógica.

En la programación de Lista, las instrucciones OR y AND se utilizan para crear las


instrucciones OPEN y SHORT utilizando valores inmediatos de 0 y 1
respectivamente.

Ejemplos A continuación se muestran ejemplos de uso de las instrucciones OPEN y SHORT.

%I0.1 %M3 %Q0.1 LD %I0.1


OPEN OR %Q1.5
ANDN %M3
%Q1.5
AND 0
ST %Q0.1
%I0.9 %Q1.6 LD %I0.9
OR 1
ST %Q1.6

SHORT

TWD USE 10AS 223


Lenguaje Ladder Logic

Consejos sobre programación

Tratamiento de Utilice los saltos de programa con precaución para evitar bucles largos que
los saltos de prolonguen el tiempo de ciclo. Evite los saltos en las instrucciones ubicadas "detrás"
programa (Aparece una instrucción delante antes de un salto en un programa. Sin embargo,
aparece una instrucción detrás después de un salto en un programa).

Programación de Los bits de salida, al igual que los bits internos, sólo se deben modificar una vez en
salidas el programa. En el caso de los bits de salida, sólo se tiene en cuenta el último valor
examinado cuando se actualizan las salidas.

Utilización de los Los sensores utilizados directamente para paradas de emergencia no deben ser
sensores de procesados por el controlador. Se deben conectar directamente a las salidas
parada de correspondientes.
emergencia de
cableado directo

Tratamiento de Condicionar una recuperación de la alimentación a una operación manual. Un


recuperación de reinicio automático puede provocar un funcionamiento no deseado de la instalación
la alimentación (utilice los bits de sistema %S0, %S1 y %S9).

Gestión de la Se debe comprobar el estado del bit de sistema %S51, que indica los posibles fallos
hora y de los del fechador.
fechadores

Comprobación Cuando se introduce un programa, TwidoSoft comprueba la sintaxis de


de errores y instrucciones, operandos y sus asociaciones.
sintaxis

224 TWD USE 10AS


Lenguaje Ladder Logic

Notas Las operaciones de asignación nunca deben aparecer entre paréntesis.


adicionales
sobre cómo LD %I0.0
%I0.0 %I0.1 %Q0.1 AND %I0.1
utilizar los
OR( %I0.2
paréntesis ST %Q0.0
%I0.2 %I0.3
AND %I0.3
)
ST %Q0.1
%Q0.0

Para realizar la misma función, se deben programar las siguientes ecuaciones.

LD %I0.0
%I0.0 %I0.1 %Q0.1 MPS
AND( %I0.1
OR( %I0.2
AND %I0.3
%I0.2 %I0.3
)
)
ST %Q0.1
%I0.2 %Q0.0 MPP
AND %I0.2
ST %Q0.0

TWD USE 10AS 225


Lenguaje Ladder Logic

Si se realizan varias conexiones en paralelo, deberán encontrarse unas dentro de


otras o estar totalmente separadas:

%I0.0 %I0.1 %I0.5 %Q0.1

%I0.2 %I0.3

%I0.6 %I0.7

%I0.0 %I0.1 %I0.5 %Q0.1

%I0.2 %I0.4

226 TWD USE 10AS


Lenguaje Ladder Logic

No se puede programar el siguiente esquema.

%I0.0 %I0.1 %Q0.1

%I0.2 %I0.3

%I0.4

%I0.0 %I0.1 %I0.5 %Q0.1

%I0.2 %I0.3

%I0.4

TWD USE 10AS 227


Lenguaje Ladder Logic

Para ejecutar esquemas equivalentes a estos, se deben modificar como se


especifica a continuación.

LD %I0.0
%I0.0 %I0.1 %Q0.1 AND( %I0.1
OR( %I0.2
AND %I0.3
)
%I0.2 %I0.3
)
OR( %I0.4
AND %I0.3
%I0.4 %I0.3 )
ST %Q0.1

LD %I0.0
%I0.0 %I0.1 %I0.5 %Q0.1
AND( %I0.1
OR( %I0.2
AND %I0.3
)
%I0.2 %I0.3
AND %I0.5
OR( %I0.2
AND %I0.4
%I0.2 %I0.4 )
)
ST %Q0.1

228 TWD USE 10AS


Lenguaje Ladder Logic

Reversibilidad de Ladder Logic/Lista

Introducción La reversibilidad de programa es una función del software de programación


TwidoSoft que facilita la conversión de programas de aplicación de Ladder Logic a
Lista y viceversa.
Las preferencias del usuario definidas en TwidoSoft permiten seleccionar el método
de visualización predeterminado de los programas: puede ser en formato Lista o
Ladder Logic. TwidoSoft también permite alternar las vistas Lista y Ladder Logic.

Comprender la Para llegar a comprender la función reversibilidad de programas, es necesario


reversibilidad examinar la relación de un escalón de Ladder Logic con la secuencia de Lista de
instrucción asociada.
l Escalón de Ladder Logic: conjunto de instrucciones de Ladder Logic que forma
una expresión lógica.
l Secuencia de lista: conjunto de instrucciones de un programa de listas que
corresponde a las instrucciones de Ladder Logic y relativo a la misma expresión
lógica.
La siguiente ilustración muestra un escalón de Ladder normal y el equivalente de la
lógica de programación expresado como una secuencia de instrucciones de Lista.

%I0.5 %Q0.4
LD %I0.5
OR %I0.4
%I0.4 ST %Q0.4

Un programa de aplicación se almacena en modo interno en forma de lista que el


programa ha vuelto a escribir en lenguaje Ladder Logic o Lista. TwidoSoft emplea
los parecidos en la estructura de programa existentes entre los dos lenguajes, así
como la imagen de lista interna del programa para visualizarlo en forma de lista
(forma básica) o gráfica (en forma de diagrama Ladder Logic), según las
preferencias del usuario.

TWD USE 10AS 229


Lenguaje Ladder Logic

Asegurar la Cualquier programa creado en forma de diagrama Ladder Logic se puede convertir
reversibilidad a Lista. Por el contrario, algunas lógicas de lenguaje Lista no se pueden convertir a
Ladder Logic. Para asegurar una reversibilidad total entre el lenguaje Lista y el
lenguaje Ladder Logic, hay que tener en cuenta las instrucciones de la sección
Directrices para la reversibilidad Ladder Logic/Lista, p. 231.

230 TWD USE 10AS


Lenguaje Ladder Logic

Directrices para la reversibilidad Ladder Logic/Lista

Instrucciones Las instrucciones que aparecen a continuación son necesarias para la estructura
básicas para la de un bloque de función reversible en lenguaje de lista.
reversibilidad l BLK indica el comienzo del bloque y define el inicio del escalón y de la parte de
entrada al bloque.
l OUT_BLK indica el comienzo de la parte de salida del bloque.
l END_BLK indica el final del bloque y del escalón.
El uso de las instrucciones del bloque de función reversible no es obligatorio cuando
el programa de lista funciona correctamente. Es posible programar en lista algunas
instrucciones, lo cual no es reversible. Si desea más información acerca de la
programación de lista no reversible de bloques de función estándar, consulte
"Principios para programar bloques de función estándar, p. 284".

Instrucciones no Evite utilizar determinadas instrucciones de lista o determinadas combinaciones de


equivalentes que instrucciones y operandos, ya que no tienen ningún equivalente en diagramas
se deben evitar Ladder Logic. Por ejemplo, la instrucción N (invierte el valor en el acumulador
booleario) no tiene una instrucción Ladder Logic equivalente.
La tabla que aparece a continuación enumera todas las instrucciones de
programación de lista que no se pueden invertir a Ladder Logic.
Instrucción de Operando Descripción
lista
JMPCN %Li NOT condicional de salto
N ninguno Negación (NOT)
ENDCN ninguno NOT condicional de finalización

TWD USE 10AS 231


Lenguaje Ladder Logic

Escalones La programación de los escalones incondicionales requiere el seguimiento de los


incondicionales consejos de programación de lista siguientes para que pueda darse una
reversibilidad de Lista/Ladder Logic. Los escalones incondicionales no se someten
a ninguna prueba ni condición. Las salidas o instrucciones de acción siempre se
activan o ejecutan.
El diagrama que aparece a continuación muestra ejemplos de escalones
incondicionales y la secuencia de lista equivalente.

%Q0.4
LD 1
ST %Q0.4
LD 1
%MW5 := 0 [%MW5 := 0]
JMP %L6

>>%L6

Observe que cada una de las secuencias de lista de instrucciones incondicionales


que aparecen más arriba comienza por una instrucción de carga seguida por un 1,
excepto la instrucción JMP. Esta combinación escribe el valor del acumulador
booleario a 1 y, por lo tanto, pone la bobina (instrucción de almacenamiento) a 1 y
%MW5 a 0 en cada exploración del programa. La excepción es la instrucción de
salto de lista incondicional (JMP %L6), que se ejecuta independientemente del valor
del acumulador y no requiere una escritura del acumulador a 1.

Escalón de lista Si un programa de lista que no es totalmente reversible se invierte, las partes
Ladder Logic reversibles se muestran en la vista Ladder Logic y las partes que no se pueden
invertir aparecen en los escalones de lista Ladder Logic.
Un escalón de Ladder Logic en lista funciona igual que un editor de lista pequeño.
Permite al usuario visualizar y modificar las partes del programa Ladder Logic que
no se pueden invertir.

232 TWD USE 10AS


Lenguaje Ladder Logic

Documentación del programa

Documentación Puede documentar el programa introduciendo comentarios por medio de los


del programa editores de lista y Ladder:
l Utilice el editor de lista para documentar el programa con los comentarios de la
línea de lista. Estos comentarios pueden aparecer en la misma línea que las
instrucciones de programación o en sus propias líneas.
l En el editor de Ladder Logic, los encabezados de escalón permiten documentar
el programa. Estos encabezados se encuentran en la parte superior del escalón.
El software de programación TwidoSoft emplea estos comentarios con fines de
reversibilidad. Al convertir un programa de Lista en un programa de Ladder Logic,
TwidoSoft emplea algunos de los comentarios de lista para crear un encabezado.
Para ello, los comentarios introducidos entre las secuencias de lista se emplean
como encabezados de escalón.

Ejemplo de A continuación se muestra un ejemplo de un programa de lista con los comentarios


comentarios de de la línea de lista.
la línea de lista
---- ( * ÉSTE ES EL TÍTULO DE CABECERA PARA EL ESCALÓN 0 * )
---- ( * ÉSTE ES EL PRIMER COMENTARIO DE CABECERA PARA EL ESCALÓN 0 * )
---- ( * ÉSTE ES EL SEGUNDO COMENTARIO DE CABECERA PARA EL ESCALÓN 0 * )
0 LD % I0. 0 ( * ESTO ES UN COMENTARIO DE LÍNEA *)
1 OR %I0. 1 ( * LOS COMENTARIOS DE LÍNEA NO SE TIENEN EN CUENTA CUANDO SE INVIERTE A
LADDER LOGIC * )
2 ANDM %M10
3 ST M101
---- ( * ÉSTA ES LA CABECERA PARA EL ESCALÓN 1 * )
---- ( * ESTE ESCALÓN CONTIENE UNA ETIQUETA * )
---- ( * ÉSTE ES EL SEGUNDO COMENTARIO DE CABECERA PARA EL ESCALÓN 1 * )
---- ( * ÉSTE ES EL TERCER COMENTARIO DE CABECERA PARA EL ESCALÓN 1 * )
---- ( * ÉSTE ES EL CUARTO COMENTARIO DE CABECERA PARA EL ESCALÓN 1 * )
4 % L5:
5 LD %M101
6 [ %MW20 := %KW2 * 16 ]
---- ( * ESTE ESCALÓN SÓLO CONTIENE UN TÍTULO DE CABECERA * )
7 LD %Q0. 5
8 OR %I0. 3
9 ORR I0. 13
10 ST %Q0.5

TWD USE 10AS 233


Lenguaje Ladder Logic

Inversión de Cuando se invierten las instrucciones de lista en un diagrama de Ladder Logic, los
comentarios de comentarios de la línea de lista aparecen en el editor de Ladder Logic con arreglo
lista a Ladder a las siguientes normas:
Logic l El primer comentario que aparece en una línea por sí solo se asigna a la
cabecera de escalón.
l Cualquier comentario encontrado después del primero se convierte en el cuerpo
del escalón.
l Una vez ocupadas las líneas del cuerpo de la cabecera, el resto de los
comentarios de línea entre las secuencias de lista se ignoran, igual que cualquier
otro comentario que aparezca en líneas de la lista que también contengan
instrucciones de lista.

Ejemplo de A continuación se muestra un ejemplo de un programa de Ladder Logic con los


comentarios de comentarios de cabecera de escalón.
cabecera de
Escalón 0 Es el título de un encabezado del escalón 0
escalón Es el primer comentario para el escalón 0

%I0.0 %M10 M101

%I0.1

Escalón 1 Es el archivo de un encabezado del escalón 1


Este escalón contiene una etiqueta

%MW20 :- %KW2*16
%M101

Escalón 2 Este escalón sólo contiene un título de encabezado

%Q0,5 %Q0,5

%I0.3

234 TWD USE 10AS


Lenguaje Ladder Logic

Inversión de Cuando se invierte un diagrama de Ladder Logic a instrucciones de lista, los


comentarios de comentarios de la cabecera de escalón aparecen en el editor de Ladder Logic con
Ladder Logic a arreglo a las siguientes normas:
lista l Cualquier comentario de la cabecera de escalón se inserta entre las secuencias
de lista asociadas.
l Cualquier etiqueta (%Li:) o declaraciones de subrutina (SRi:) se ubican en la
siguiente línea siguiendo a la cabecera e inmediatamente antes del comienzo de
la secuencia de lista.
l Si la lista se invirtió a Ladder Logic, los comentarios ignorados volverán a
aparecer en el editor de lista.

TWD USE 10AS 235


Lenguaje Ladder Logic

236 TWD USE 10AS


Lenguaje de lista de instrucciones

12
Presentación

Objeto Este capítulo describe la programación en el lenguaje de lista de instrucciones.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Vista general de programas de lista 238
Operación de las instrucciones de lista 240
Instrucciones del lenguaje de lista 241
Utilización de paréntesis 244
Instrucciones de stack (MPS, MRD, MPP) 247

TWD USE 10AS 237


Lenguaje de lista de instrucciones

Vista general de programas de lista

Introducción Un programa escrito en lenguaje de lista está formado por una serie de
instrucciones que el controlador ejecuta de forma secuencial. Cada instrucción de
lista está representada por una línea de programa y tiene tres componentes:
l Número de línea
l Código de instrucción
l Operando(s)

Ejemplo de un A continuación se muestra un ejemplo de un programa de lista.


programa de lista

0 LD %I0.1
1 ST %Q0.3
0 LD %I0.1
2 LDN %M0
3 ST %Q0.2 Operando(s)
4 LDR %I0.2
5 ST %Q0.4 Código de instrucción
6 LDF %I0.3 Número de línea
7 ST %Q0.5

Número de línea Los números de línea se generan automáticamente al introducir una instrucción.
Las líneas vacías y las líneas de comentario no tienen números de línea.

Código de El código de instrucción es un símbolo para un operador que identifica la operación


instrucción que se va a realizar utilizando los operandos. Los operadores típicos especifican
operaciones numéricas y boolearias.
Por ejemplo, en el programa de ejemplo anterior, LD es la abreviatura del código de
instrucción para una instrucción LOAD. La instrucción LOAD coloca (carga) el valor
del operando %I0.1 en un registro interno llamado el acumulador.
Hay dos tipos de instrucciones básicas:
l Instrucciones de prueba
Estas instrucciones configuran o comprueban las condiciones necesarias para
realizar una acción. Por ejemplo, LOAD (LD) y AND.
l Instrucciones de acción
Estas instrucciones realizan acciones como resultado de las condiciones
configuradas. Por ejemplo, instrucciones de asignación como STORE (ST) y
RESET (R).

238 TWD USE 10AS


Lenguaje de lista de instrucciones

Operando Un operando es un número, dirección o símbolo que representa un valor que puede
manipular un programa en una instrucción. Por ejemplo, en el programa de ejemplo
anterior, el operando %I0.1 es una dirección que tiene asignado el valor de una
entrada del controlador. Una instrucción puede tener de cero a tres operandos
dependiendo del tipo de código de instrucción.
Los operandos pueden representar los siguientes elementos:
l Entradas y salidas del controlador, como sensores, botones y relés.
l Funciones de sistema predefinidas, como temporizadores y contadores.
l Operaciones aritméticas, numéricas y de comparación.
l Variables internas del controlador, como bits y palabras.

TWD USE 10AS 239


Lenguaje de lista de instrucciones

Operación de las instrucciones de lista

Introducción Las instrucciones de lista sólo poseen un operando explícito, ya que el otro es
implícito. El operando implícito corresponde al valor del acumulador booleario. Por
ejemplo, en la instrucción LD %I0.1, %I0.1 es el operando explícito. Un operando
implícito se almacena en el acumulador y el valor de %I0.1 lo sobrescribe.

Funcionamiento Una instrucción en lenguaje lista ejecuta una operación específica en el contenido
del acumulador y en el operando explícito y, a continuación, sustituye el contenido
del acumulador por el resultado obtenido. Por ejemplo, la operación AND %I1.2
realiza un AND lógico entre el contenido del acumulador y el de la entrada 1.2, al
tiempo que sustituye el contenido del acumulador por el de dicho resultado.
El conjunto de las instrucciones boolearias, exceptuando las instrucciones de
carga, de almacenamiento y las instrucciones NOT, funciona con dos operandos.
El valor de los dos operandos puede ser True o False, y la ejecución de las
instrucciones por parte del programa genera un valor único: puede ser True o False.
Las instrucciones de carga colocan en valor del operando en el acumulador,
mientras que las instrucciones de almacenamiento transfieren el valor del
acumulador al operando. La instrucción NOT no contiene ningún operando explícito
y su único fin es invertir el estado del acumulador.

Instrucciones de En la siguiente tabla se muestran algunas instrucciones de lista:


lista admitidas
Tipo de instrucción Ejemplo Función
Instrucción sobre bit LD %M10 Lee el bit %M10 interno.
Instrucción sobre IN %TM0 Inicia el temporizador
bloque %TM0.
Instrucción de palabra [%MW10 := %MW50+100] Operación de adición
Instrucciones del SR5 Llama la subrutina nº 5.
programa
Instrucción Grafcet -*-8 Paso nº 8

240 TWD USE 10AS


Lenguaje de lista de instrucciones

Instrucciones del lenguaje de lista

Introducción Un lenguaje de lista se compone de los siguientes tipos de instrucciones:


l Instrucciones de prueba
l Instrucciones de acción
l Instrucciones sobre bloques de función
En esta sección se identifican y describen las instrucciones Twido para la
programación de listas.

Instrucciones de La siguiente tabla describe las instrucciones de prueba en lenguaje de listas.


prueba
Nombre Elemento Función
gráfico
equivalente
LD El resultado booleario es el mismo que el estado del
operando.

LDN El resultado booleario es el mismo que el estado inverso


del operando.
LDR El resultado booleario cambia a 1 durante la detección del
P operando (flanco ascendente) que cambia de 0 a 1.

LDF El resultado booleario cambia a 1 durante la detección del


N operando (flanco descendente) que cambia de 1 a 0.

AND El resultado booleario es igual a la instrucción lógica AND


entre el resultado booleario de la instrucción anterior y el
estado del operando.
ANDN El resultado booleario es igual a la instrucción lógica AND
entre el resultado booleario de la instrucción anterior y el
estado inverso del operando.
ANDR El resultado booleario es igual a la instrucción lógica AND
P entre el resultado booleario de la instrucción anterior y el
flanco ascendente del operando (1 = flanco ascendente).
ANDF El resultado booleario es igual a la instrucción lógica AND
N entre el resultado booleario de la instrucción anterior y la
detección del flanco descendente del operando (1 = flanco
descendente).
OR El resultado booleario es igual a la instrucción lógica OR
entre el resultado booleario de la instrucción anterior y el
estado del operando.

TWD USE 10AS 241


Lenguaje de lista de instrucciones

Nombre Elemento Función


gráfico
equivalente
AND( Instrucción lógica AND (8 niveles de paréntesis)

OR( Instrucción lógica OR (8 niveles de paréntesis)

XOR, XORN, OR exclusivo


XOR
XORR, XORF
XORN

XORR

XORF

MPS Conmutación a las bobinas.


MRD
MPP

N - Negación (NOT)

Instrucciones de La siguiente tabla describe las instrucciones de acción en lenguaje de listas.


acción
Nombre Elemento Función
gráfico
equivalente
ST El operando asociado toma el valor del resultado del área
de prueba.

STN El operando asociado toma el valor inverso del resultado


del área de prueba.

S El operando asociado se establece en 1 cuando el


S resultado del área de prueba es 1.

R El operando asociado se establece en 0 cuando el


R resultado del área de prueba es 1.

242 TWD USE 10AS


Lenguaje de lista de instrucciones

Nombre Elemento Función


gráfico
equivalente
JMP Se conecta de forma incondicional a una secuencia
->>%Li etiquetada ubicada delante o detrás.

SRn Conexión al comienzo de una subrutina.


->>%SRi

RET Retorno desde una subrutina.


<RET>

END Fin del programa.


<END>

ENDC Fin del programa condicionado en un resultado booleario


<ENDC> de 1.

ENDCN Fin del programa condicionado en un resultado booleario


<ENDCN> de 0.

Instrucciones La siguiente tabla describe los bloques de función en lenguaje de listas.


sobre bloques de
Nombre Elemento Función
función
gráfico
equivalente
Temporizadores, Para cada bloque de función existen instrucciones
contadores, para controlar el bloque.
registros, etc. Para cablear las entradas y salidas de bloques
directamente se utiliza una forma estructurada.
Nota: Las salidas de los bloques de función no
pueden conectarse entre sí (conexiones
verticales).

TWD USE 10AS 243


Lenguaje de lista de instrucciones

Utilización de paréntesis

Introducción En las instrucciones lógicas AND y OR, los paréntesis permiten determinar las
bifurcaciones de Ladder Logic. Los paréntesis se asocian a instrucciones del modo
siguiente:
l El paréntesis de apertura se asocia con la instrucción AND u OR.
l El paréntesis de cierre es una instrucción necesaria siempre que se haya abierto
un paréntesis.

Ejemplo de uso Los siguientes diagramas son ejemplos de utilización de paréntesis con una
de una instrucción AND: AND(...).
instrucción AND
%I0.0 %I0.1 %Q0.0
LD %I0.0
AND %I0.1
%I0.2 OR %I0.2
ST %Q0.0

%I0.0 %I0.1 %Q0.1 LD %I0.0


AND( %I0.1
%I0.2 OR %I0.2
)
ST %Q0.1

Ejemplo de uso Los siguientes diagramas son ejemplos de utilización de paréntesis con una
de una instrucción OR: OR(...).
instrucción OR

LD %I0.0
%I0.0 %I0.1 %Q0.0
AND %I0.1
OR( %I0.2
%I0.2 %I0.3
AND %I0.3
)
ST %Q0.0

244 TWD USE 10AS


Lenguaje de lista de instrucciones

Modificadores En la siguiente tabla se enumeran los modificadores que se pueden asignar a los
paréntesis.
Modificad Función Ejemplo
or
N Negación AND(N u OR(N
F Flanco descendente AND(F u OR(F
R Flanco ascendente AND(R u OR(R
[ Comparación Consulte Instrucciones de comparación,
p. 314

Intercalado de Es posible intercalar hasta ocho niveles de paréntesis.


paréntesis Tenga en cuenta las siguientes reglas para intercalar paréntesis:
l Cada paréntesis de apertura debe tener su paréntesis de cierre correspondiente.
l No se deben colocar etiquetas (%Li:), subrutinas (SRi:), instrucciones de salto
(JMP) ni instrucciones de bloque de función en instrucciones entre paréntesis.
l No se deben programar instrucciones de almacenamiento ST, STN, S o R entre
paréntesis.
l No se pueden utilizar instrucciones de stack MPS, MRD o MPP entre paréntesis.

TWD USE 10AS 245


Lenguaje de lista de instrucciones

Ejemplos de Los siguientes diagramas muestran ejemplos de intercalado de paréntesis.


intercalado de
paréntesis LD %I0.0
%I0.0 %I0.1 %Q0.0
AND( %I0.1
OR(N %I0.2
%I0.2 %M3
AND %M3
)
)
ST %Q0.0

LD %I0.1
%I0.1 %I0.2 %I0.3 %I0.4 %Q0.0
AND( %I0.2
AND %I0.3
OR( %I0.5
%I0.5 %I0.6
AND %I0.6
)
%I0.7 %I0.8 AND %I0.4
OR( %I0.7
AND %I0.8
)
)
ST %Q0.0

246 TWD USE 10AS


Lenguaje de lista de instrucciones

Instrucciones de stack (MPS, MRD, MPP)

Introducción Las instrucciones de stack procesan el direccionamiento a bobinas. Las


instrucciones MPS, MRD y MPP utilizan un área de almacenamiento temporal
llamada stack, que puede almacenar hasta ocho expresiones boolearias.

Nota: Estas instrucciones no se pueden utilizar en una expresión entre paréntesis.

Funcionamiento En la siguiente tabla se describe el funcionamiento de las tres instrucciones de


de las stack.
instrucciones de
Instrucción Descripción Función
stack
MPS Introducir memoria en Almacena el resultado de la última instrucción
stack lógica (contenidos del acumulador) en la parte
superior del stack (introducir) y desplaza el resto
de valores a la parte inferior del stack.
MRD Leer memoria desde stack Lee la parte superior del stack en el acumulador.
MPP Sacar memoria de stack Copia el valor de la parte superior del stack en el
acumulador (sacar) y desplaza el resto de
valores hacia la parte superior del stack.

TWD USE 10AS 247


Lenguaje de lista de instrucciones

Ejemplos de Los siguientes diagramas son ejemplos de utilización de las instrucciones de stack.
instrucciones de
stack
%I0.0 %M1 %I0.1 %Q0.0 LD %I0.0
AND %M1
MPS
MPS %I0.2 %Q0.1 AND %I0.1
ST %Q0.0
MRD
MRD %I0.3 %Q0.2
AND %I0.2
ST %Q0.1
MPP %I0.4 %Q0.3 MRD
AND %I0.3
ST %Q0.2
MPP
AND %I0.4
ST %Q0.3

Ejemplos de Los siguientes diagramas muestran el funcionamiento de las instrucciones de stack.


funcionamiento
de stack
%I0.0 %I0.1 %I0.3 %Q0.0 LD %I0.0
MPS
AND %I0.1
%M0
MPS
AND( %I0.3
%M1 %Q0.1 OR %M0
)
ST %Q0.0
%I0.4 %Q0.2 MPP
ANDN %M1
ST %Q0.1
%M10 %Q0.3 MRD
AND %I0.4
ST %Q0.2
MPP
AND %M10
ST %Q0.3

248 TWD USE 10AS


Grafcet

13
Presentación

Objeto Este capítulo describe la programación con el lenguaje Grafcet.

Contenido: Este capítulo contiene los siguiente apartados:


Apartado Página
Descripción de las instrucciones Grafcet 250
Descripción de la estructura del programa Grafcet 255
Acciones asociadas a pasos Grafcet 258

TWD USE 10AS 249


Grafcet

Descripción de las instrucciones Grafcet

Introducción Las instrucciones Grafcet de TwidoSoft ofrecen un método sencillo de traducir una
secuencia de ajuste (diagrama Grafcet).
La cantidad máxima de etapas Grafcet depende del tipo de autómata Twido. La
cantidad de etapas activos simultáneamente sólo está limitada por el número total
de etapas.
Para los autómatas TWDLCAA10DRF y TWDLCAA16DRF están disponibles las
etapas 1 a 62. Las etapas 0 y 63 están reservados para el procesamiento previo y
posterior. Para los demás autómatas, están disponibles las etapas 1 a 95.

250 TWD USE 10AS


Grafcet

Instrucciones En la tabla siguiente se enumeran todas las instrucciones y objetos necesarios para
Grafcet programar un diagrama Grafcet.
Representación Transcripción en Función
gráfica (1) lenguaje TwidoSoft
Ilustración:
Etapa inicial =*= i Comenzar etapa inicial (2).

#i Activar etapa i tras desactivar la etapa


Transición
actual.
-*- i Comenzar la etapa i y validar la
Etapa
transición asociada (2).
# Desactivar la etapa actual sin activar
ningún otra etapa.
#Di Desactivar la etapa i y la etapa actual.
=*= POST Iniciar procesamiento posterior y
finalizar procesamiento secuencial.
%Xi Bit asociado a la etapa i. Se puede
verificar y escribir (la cantidad máxima
de etapas depende del autómata).
LD %Xi, LDN %Xi Comprobar actividad de la etapa i.
AND %Xi, ANDN %Xi,
Xi
OR %Xi, ORN %Xi
XOR %Xi, XORN %Xi
S %Xi Activar etapa i.

Xi
R %Xi Desactivar etapa i.
S

Xi
R

(1) No se admite representación gráfica.


(2) El primer paso =*=i o -*-i escrito indica el inicio del procesamiento secuencial y,
por lo tanto, el final del procesamiento previo.

TWD USE 10AS 251


Grafcet

Ejemplos de Secuencia lineal:


Grafcet
%I0.5 %S21 LD %I0.5
%I0.5
ST %S21
=*= 1
=*=1
1 %Q0.1 LD %I0.1
%I0.1 2 # 2
# -*- 2
%I0.1 LD %I0.2
-*-2 # 3
%I0.2 3 -*- 3
2 %Q0.2 LD %I0.3
#
# 1
%I0.2 -*-2 =*= POST
%I0.3 1 LD %X1
# ST %Q0.1
3 %Q0.3
LD %X2
= * = POST ST %Q0.2
%I0.3 LD %X3
%X1 %Q0.1
ST %Q0.3

%X2 %Q0.2

%X3 %Q0.3

No admitido Programa Ladder Programa de lista


de Twido de Twido

252 TWD USE 10AS


Grafcet

Secuencia alternativa:

4 =* = 4
%I0.3 5 =*= 4
%I0.3 %I0.4 LD %I0.3
#
# 5
%I0.4 6 LD %I0.4
# 6
5 6 #
-*- 5
%I0.5 %I0.6 -*-5
LD %I0.5
%I0.5 7 # 7
#
7 -*- 6
-*-6 LD %I0.6
%I0.6 7 # 7
#

No admitido Programa Ladder Programa de lista


de Twido de Twido

TWD USE 10AS 253


Grafcet

Secuencias simultáneas:

8 -*-8
-*- 8
%I0.7 %I0.7 9 LD %I0.7
# # 9
# 10
10
9 10
# -*- 9
%I0.8 %I0.9 -*-9
LD %I0.8
%I0.8 11 # 11
11 12 #
-*- 10
%M0 - * - 10 LD %I0.9
# 12
%I0.9 12
# -*- 11
13 LD %M0
- * - 11 AND %X12
#D 12
%M0 %X12 12
# 13
#D
13 -*- 12
LD %M0
# AND %X11
- * - 12 #D 11
%M0 %X11 11 # 13
#D
13
#

No admitido Programa Ladder Programa de lista


de Twido de Twido

Nota: Para que un diagrama Grafcet funcione, se debe declarar al menos una
etapa activa mediante la instrucción =*=i (paso inicial), o el diagrama debe
ubicarse con antelación durante el procesamiento previo utilizando el bit de
sistema %S23 y la instrucción S %Xi.

254 TWD USE 10AS


Grafcet

Descripción de la estructura del programa Grafcet

Introducción Un programa Grafcet de TwidoSoft consta de tres partes:


l Procesamiento previo
l Procesamiento secuencial
l Procesamiento posterior

Procesamiento El procesamiento previo consta de las siguientes partes:


previo l Recuperación de la alimentación
l Errores
l Cambios de modo de funcionamiento
l Pasos Grafcet de ubicación previa
l Entrada lógica
El flanco ascendente de la entrada %I0.6 pone a 1 el bit %S21. Gracias a ello, se
desactivan los pasos activos y se activan los pasos iniciales.

%I0.6 %S22 000 LDN %I0.6


/ S 001 S %S22
002 ST %M0
%M0 003 LDR %I0.6
004 S %S21

%I0.6 %S21
P S

El procesamiento previo comienza con la primera línea del programa y finaliza con
la primera aparición de una instrucción "= * =" o "- * -".
Existen tres bits de sistema designados al control de Grafcet: %S21, %S22 y %S23.
La aplicación ajusta cada uno de estos bits de sistema a 1 (si es necesario),
normalmente durante el procesamiento previo. El sistema lleva a cabo la función
asociada cuando finaliza el procesamiento previo y, entonces, el sistema restablece
el bit de sistema a 0.
Bit de sistema Nombre Descripción
%S21 Inicialización Todos los pasos activos se desactivan y los pasos
de Grafcet iniciales se activan.
%S22 Reinicialización Se desactivan todos los pasos.
de Grafcet

TWD USE 10AS 255


Grafcet

Bit de sistema Nombre Descripción


%S23 Ubicación Este bit se debe ajustar a 1 si los objetos %Xi han sido
previa de escritos de manera explícita por la aplicación durante
Grafcet el procesamiento previo. Si el procesamiento previo
mantiene el bit a 1 sin ningún cambio explícito de los
objetos %Xi, Grafcet se congela (no se tienen en
cuenta las actualizaciones).

Procesamiento El procesamiento secuencial se realiza en el diagrama (instrucciones que


secuencial representan el diagrama).
l Pasos
l Acciones asociadas a los pasos
l Transiciones
l Condiciones de transición
Ejemplo:

=*= 1
005 =*= 1
%I0.2 %I0.3 2 006 LD %I0.2
/ # 007 ANDN %I0.3
008 # 2
%I0.3 %I0.2 3
009 LD %I0.3
/ # 010 ANDN %I0.2
011 # 3
-*- 2 012 -*- 2
013 LD %I0.4
%I0.4 1 014 # 1
015 -*- 3
# 016 LD %I0.5
017 # 1
-*- 3

%I0.5 1
#

El procesamiento secuencial termina con la ejecución de la instrucción "= * = POST"


o con la finalización del programa.

256 TWD USE 10AS


Grafcet

Procesamiento El procesamiento posterior consta de las siguientes partes:


posterior l Comandos del procesamiento secuencial para controlar las salidas
l Dispositivos de bloqueo de seguridad específicos para las salidas
Ejemplo:

=*= POST

%X1 %Q0.1 018 =*= POST


019 LD %X1
020 ST %Q0.1
%X2 %Q0.2 021 LD %X2
022 ST %Q0.2
023 LD %X3
024 OR( %M1
%X3 %Q0.3
025 ANDN %I0.2
026 AND %I0.7
027 )
%M1 %I0.2 %I0.7 028 ST %Q0.3
/

TWD USE 10AS 257


Grafcet

Acciones asociadas a pasos Grafcet

Introducción Un programa Grafcet de TwidoSoft ofrece dos modos de programar acciones


asociadas con los pasos:
l En la sección de procesamiento posterior
l En las instrucciones de lista o escalones de Ladder Logic de los propios pasos

Asociación de En caso de que existan limitaciones en el modo de seguridad o de ejecución, es


acciones en el preferible programar acciones en la sección de procesamiento posterior de una
procesamiento aplicación Grafcet. Puede utilizar las instrucciones de lista Establecer y Restablecer
posterior o conectar bobinas en el programa Ladder Logic para activar los pasos de Grafcet
(%Xi).
Ejemplo:

%X1 %Q0.1 018 =*= POST


019 LD %X1
020 ST %Q0.1
%X2 %Q0.2 021 LD %X2
022 ST %Q0.2
023 LD %X3
%X2 %Q0.3
024 ST %Q0.3

258 TWD USE 10AS


Grafcet

Asociación de Puede programar las acciones asociadas a los pasos dentro de las instrucciones de
acciones desde lista o escalones de Ladder Logic. En este caso, la instrucción de lista o el escalón
una aplicación de Ladder Logic no se examina a menos que esté activo el paso. Éste es el modo
más eficaz, claro y sostenible de utilizar Grafcet.
Ejemplo:

-*- 3
%Q0.5 020 -*- 3
021 LD 1
S 022 S %Q0.5
023 LD %M10
4 024 # 4
025 -*- 4
#
026 LD 1
027 R %Q0.5
-*- 4 028 ...
%Q0.5 029 ...

TWD USE 10AS 259


Grafcet

260 TWD USE 10AS


Descripción de instrucciones y
funciones
IV
Presentación

Objeto Esta sección ofrece descripciones detalladas de las instrucciones básicas y


avanzadas, así como de los bits y de las palabras de sistema de los lenguajes
Twido.

Contenido Esta parte contiene los siguientes capítulos:


Capítulo Nombre del capítulo Página
14 Instrucciones básicas 263
15 Instrucciones avanzadas 335
16 Bits de sistema y palabras de sistema 459

TWD USE 10AS 261


Instrucciones y funciones

262 TWD USE 10AS


Instrucciones básicas

14
Presentación

Objeto Este capítulo proporciona detalles acerca de las instrucciones y los bloques de
función utilizados para crear programas de control básicos de los autómatas Twido.

Contenido: Este capítulo contiene las siguientes secciones:


Sección Apartado Página
14.1 Procesamiento booleario 264
14.2 Bloques de función básicos 281
14.3 Procesamiento numérico 307
14.4 Instrucciones del programa 327

TWD USE 10AS 263


Instrucciones básicas

14.1 Procesamiento booleario

Presentación

Objeto En esta sección se ofrece una introducción al tratamiento booleario. Se basa en


descripciones y directrices de programación de instrucciones boolearias.

Contenido Esta sección contiene los siguientes apartados:


Apartado Página
Instrucciones booleanas 265
Comprensión del formato para describir instrucciones boolerias 267
Instrucciones de carga (LD, LDN, LDR, LDF) 269
Instrucciones de asignación (ST, STN, R, S) 271
Instrucciones AND lógicas (AND, ANDN, ANDR, ANDF) 273
Instrucciones OR lógicas (OR, ORN, ORR, ORF) 275
OR exclusivo, instrucciones (XOR, XORN, XORR, XORF) 277
Instrucción NOT (N) 279

264 TWD USE 10AS


Instrucciones básicas

Instrucciones booleanas

Introducción Las instrucciones booleanas pueden compararse con los elementos gráficos de
Ladder. En la tabla siguiente se muestran estas instrucciones.
Elemento Instrucción Ejemplo Descripción
Elementos de La instrucción Cargar LD %I0.0 El contacto se cierra cuando el
prueba (LD) equivale a un bit %I0.0 se encuentra en
contacto abierto. estado 1.
Elementos de La instrucción ST %Q0.0 El objeto de bit asociado toma
acción Almacenar (ST) un valor lógico del acumulador
equivale a una bobina. de bits (resultado de lógica
anterior).

El resultado booleano de los elementos de prueba se aplica a los elementos de


acción como muestran las siguientes instrucciones.

LD %I0.0
AND %I0.1
ST %Q0.0

Comprobación Pueden utilizarse instrucciones de prueba booleana para detectar flancos


de las entradas ascendentes o descendentes en las entradas del autómata. Se detecta un flanco
del autómata cuando el estado de una entrada cambia de "explorar n-1" a "explorar n". Dicho
flanco permanece detectado durante la exploración actual.

Detección de La instrucción LDR (Cargar flanco ascendente) equivale a un contacto de detección


flanco de flanco ascendente. El flanco ascendente detecta el cambio del valor de entrada
ascendente de 0 a 1.
Se utiliza un contacto de detección de transición positiva para detectar un flanco
ascendente como se muestra en el siguiente diagrama.

%I0.0
LDR %I0.0 P P: Contacto de detección de transición positiva

TWD USE 10AS 265


Instrucciones básicas

Detección de un La instrucción LDF (Cargar flanco descendente) equivale a un contacto de


flanco detección del flanco descendente. El flanco descendente detecta el cambio del
descendente valor de entrada de ajuste de 1 a 0.
Se utiliza un contacto de detección de transición negativa para detectar un flanco
descendente como se muestra en el siguiente diagrama.
%I0.0
LDF %I0.0 N Número: Contacto de detección de transición negativa

Detección de un La tabla siguiente resume las instrucciones de detección de flancos y su


flanco cronograma:
Flanco Instrucción de Diagrama Cronograma
prueba Ladder
Logic
Flanco LDR %I0.0
ascendente Flanco ascendente
%I0.0
P %I0.2 Tiemp
T
Resultado T=1 exploración
booleano del autómata
Tiemp
Flanco LDF %I0.0
descendent
Flanco descendente
e
%I0.0
%I0.2 Tiempo
N
T
Resultado
booleano T=1 exploración
del autómata
Tiempo

Nota: A partir de ahora será posible aplicar las instrucciones sobre flancos a los
bits internos %Mi.

266 TWD USE 10AS


Instrucciones básicas

Comprensión del formato para describir instrucciones boolerias

Introducción Todas las instrucciones boolearias de esta sección se describen utilizando la


siguiente información:
l Breve descripción
l Ejemplo de la instrucción y del correspondiente diagrama de Ladder Logic
l Lista de operandos permitidos
l Cronograma
Las siguientes explicaciones proporcionan más detalles acerca del modo en que se
describen las instrucciones boolearias en esta sección.

Ejemplos La siguiente ilustración muestra el modo en que se proporcionan ejemplos para


cada instrucción.

%I0.1 %Q0.3
LD %I0.1
ST %Q0.3
%M0 %Q0.2 LDN %M0
ST %Q0.2
%I0.1 %Q0.4
P
LDR %I0.1
ST %Q0.4
%I0.3 %Q0.5
N
LDF %I0.3
ST %Q0.5

Equivalentes del diagrama Instrucciones


de Ladder Logic de lista

Operandos En la tabla siguiente se definen los tipos de operandos permitidos utilizados para
permitidos las instrucciones boolerias.
Operando Descripción
0/1 Valor inmediato de 0 ó 1
%I Entrada del controlador %Ii.j
%Q Salida del controlador %Qi.j
%M Bit interno %Mi
%S Bit de sistema %Si
%X Bit de pasos %Xi
%BLK.x Bit del bloque de función (por ejemplo, %TMi.Q)
%•:Xk Bit de palabra (por ejemplo, %MWi:Xk)
[ Expresión de comparación (por ejemplo, [%MWi<1000])

TWD USE 10AS 267


Instrucciones básicas

Cronogramas En la siguiente ilustración puede apreciarse el modo en que se muestran los


cronogramas de cada instrucción.

LD

Estado de la entrada LD LDN LDR LDF

%I0.1 %I0.1 %M0 %I0.2 %I0.3

Estado de la salida %Q0.3 %Q0.2 %Q0.4 %Q0.5

%Q0.3 Los cronogramas para los cuatro tipos


Cronograma para la de instrucciones de carga se agrupan
instrucción LD conjuntamente.

268 TWD USE 10AS


Instrucciones básicas

Instrucciones de carga (LD, LDN, LDR, LDF)

Introducción Las instrucciones de carga LD, LDN, LDR y LDF corresponden respectivamente a
los contactos abierto, cerrado, flanco ascendente y flanco descendente (LDR y LDF
sólo se utilizan con entradas del autómata).

Ejemplos Los siguientes diagramas son ejemplos de instrucciones de carga.

%I0.1 %Q0.3
LD %I0.1
%M0 %Q0.2 ST %Q0.3
LDN %M0
ST %Q0.2
%I0.2 %Q0.4 LDR %I0.2
P ST %Q0.4
%I0.3 %Q0.5 LDF %I0.3
N
ST %Q0.5

Operandos La siguiente tabla enumera los tipos de instrucciones de carga con operandos
permitidos equivalentes y permitidos de Ladder Logic.
Instrucción de Equivalente Operandos permitidos
lista Ladder Logic
LD 0/1, %I, %IA, %Q, %QA, %M, %S, %X,
%BLK.x, %•:Xk,[

LDN 0/1, %I, %IA, %Q, %QA, %M, %S, %X,


%BLK.x, %•:Xk,[

LDR %I, %IA, %M


P

LDF %I, %IA, %M


N

TWD USE 10AS 269


Instrucciones básicas

Cronograma El siguiente diagrama muestra el cronograma de las instrucciones de carga:

LD LDN LDR LDF

%I0.1 %M0 %I0.2 %I0.3

%Q0.3 %Q0.2 %Q0.4 %Q0.5

270 TWD USE 10AS


Instrucciones básicas

Instrucciones de asignación (ST, STN, R, S)

Introducción Las instrucciones de asignación ST, STN, S y R corresponden respectivamente a


las bobinas directa, inversa, de ajuste y de restablecimiento.

Ejemplos Los esquemas siguientes son ejemplos de instrucciones de asignación.

%I0.1 %Q0.3
LD %I0.1
ST %Q0.3
%Q0.2
STN %Q0.2
/
S %Q0.4
%Q0.4
S LD %I0.2
R %Q0.4
%I0.2 %Q0.4
R

Operandos En la tabla siguiente se enumeran los tipos de instrucciones de asignación con los
permitidos operandos equivalentes y permitidos de Ladder Logic .
Instrucción de Equivalente Operandos permitidos
lista Ladder Logic
ST %Q,%QA,%M,%S,%BLK.x,%•:Xk

STN %Q,%QA%M,%S,%BLK.x,%•:Xk

S %Q,%QA,%M,%S,%X,%BLK.x,%•:Xk
S

R %Q,%QA,%M,%S,%X,%BLK.x,%•:Xk
R

TWD USE 10AS 271


Instrucciones básicas

Cronograma La siguiente ilustración muestra el cronograma de las instrucciones de asignación.

ST STN S R

%I0.1 %I0.1 %I0.1 %I0.2

%Q0.3 %Q0.2 %Q0.4 %Q0.4

272 TWD USE 10AS


Instrucciones básicas

Instrucciones AND lógicas (AND, ANDN, ANDR, ANDF)

Introducción Las instrucciones AND realizan una operación lógica AND entre el operando (o su
inverso; o su flanco ascendente o descendente) y el resultado booleano de la
instrucción anterior.

Ejemplos Los siguientes diagramas son ejemplos de instrucciones AND lógicas.

LD %I0.1
%I0.1 %M1 %Q0.3
AND %M1
ST %Q0.3
%M2 %I0.2 %Q0.2 LD %M2
ANDN %I0.2
ST %Q0.2
%I0.3 %I0.4 %Q0.4 LD %I0.3
P S ANDR %I0.4
S %Q0.4
%M3 %I0.5 %Q0.5 LD %M3
N S ANDF %I0.5
S %Q0.5

Operandos La siguiente tabla enumera los tipos de instrucciones AND con operandos
permitidos equivalentes y permitidos de Ladder Logic.
Instrucción de Equivalente Ladder Operandos permitidos
lista Logic
AND 0/1, %I, %IA, %Q, %QA, %M, %S, %X,
%BLK.x, %•:Xk, [

ANDN 0/1, %I, %IA, %Q, %QA, %M, %S, %X,


%BLK.x, %•:Xk, [

ANDR %I, %IA, %M


P

ANDF %I, %IA, %M


N

TWD USE 10AS 273


Instrucciones básicas

Cronograma El siguiente diagrama muestra el cronograma de las instrucciones AND.

AND ANDN ANDR ANDF

%I0.1 %M2 %I0.3 %M3

%M1 %I0.2 %I0.4 %I0.5

%Q0.3 %Q0.2 %Q0.4 %Q0.5

274 TWD USE 10AS


Instrucciones básicas

Instrucciones OR lógicas (OR, ORN, ORR, ORF)

Introducción Las instrucciones OR realizan una operación lógica OR entre el operando (o su


inverso; o su flanco ascendente o descendente) y el resultado booleano de la
instrucción anterior.

Ejemplos Los siguientes diagramas son ejemplos de instrucciones OR lógicas.

%I0.1 %Q0.3
LD %I0.1
OR %M1
%M1
ST %Q0.3

%M2 %Q0.2
LD %M2
ORN %I0.2
%I0.2
ST %Q0.2

%M3 %Q0.4
S LD %M3
%I0.4
ORR %I0.4
P
S %Q0.4

%I0.5 %Q0.5
N S LDF %I0.5
%I0.6 ORF %I0.6
N S %Q0.5

TWD USE 10AS 275


Instrucciones básicas

Operandos La siguiente tabla enumera los tipos de instrucciones OR con operandos


permitidos equivalentes y permitidos de Ladder Logic.
Instrucción de Equivalente Operandos permitidos
lista Ladder Logic
OR 0/1, %I,%IA, %Q, %QA, %M, %S, %X, %BLK.x,
%•:Xk

ORN 0/1, %I,%IA, %Q, %QA, %M, %S, %X, %BLK.x,


%•:Xk

ORR %I, %IA, %M

ORF %I, %IA, %M

Cronograma El siguiente diagrama muestra el cronograma de las instrucciones OR.

OR ORN ORR ORF

%I0.1 %M2 %M3 %I0.5

%M1 %I0.2 %I0.4 %I0.6

%Q0.3 %Q0.2 %Q0.4 %Q0.5

276 TWD USE 10AS


Instrucciones básicas

OR exclusivo, instrucciones (XOR, XORN, XORR, XORF)

Introducción Las instrucciones XOR realizan una operación de OR exclusivo entre el operando
(o su inverso; o su flanco ascendente o descendente) y el resultado booleano de la
instrucción precedente.

Ejemplos Las instrucciones XOR pueden utilizarse como se muestra en el siguiente ejemplo.
Schéma avec instruction XOR :

%I0.1 %M1 %Q0.3 LD %I0.1


XOR %M1
XOR
ST %Q0.3

Schéma équivalent sans instruction XOR :


%I0.1 %M1 %Q0.3 LD %I0.1
ANDN %M1
OR( %M1
%M1 %I0.1
ANDN %I0.1
)
ST %Q0.3

Operandos En la tabla siguiente se enumeran los tipos de instrucciones XOR y operandos


permitidos permitidos.
Instrucción de Operandos permitidos
lista
XOR %I, %IA, %Q, %QA, %M, %S, %X,
%BLK.x, %•:Xk
XORN %I, %IA, %Q, %QA, %M, %S, %X,
%BLK.x, %•:Xk
XORR %I, %IA, %M
XORF %I, %IA, %M

TWD USE 10AS 277


Instrucciones básicas

Cronograma En el diagrama siguiente se muestra la temporización de las instrucciones XOR.

XOR

%I0.1

%M1

%Q0.3

Casos A continuación, se indica una serie de precauciones especiales que se deben


especiales observar al utilizar instrucciones XOR en programas de Ladder Logic:
l No inserte contactos XOR en la primera posición de una red.
l No inserte contactos XOR de forma paralela con otros elementos de Ladder
Logic (consulte el siguiente ejemplo).
Como se muestra en el siguiente ejemplo, la inserción de un elemento de forma
paralela con el contacto XOR generará un error de validación.

%M13 %I1.5 %Q1.10


XOR

%M10

278 TWD USE 10AS


Instrucciones básicas

Instrucción NOT (N)

Introducción La instrucción NOT (N) niega el resultado booleario de la instrucción anterior.

Ejemplo A continuación se muestra un ejemplo de uso de la instrucción NOT.

LD %I0.1
OR %M2
ST %Q0.2
N
AND %M3
ST %Q0.3

Nota: La instrucción NOT no es reversible.

Operandos No aplicable.
permitidos

TWD USE 10AS 279


Instrucciones básicas

Cronograma El siguiente diagrama muestra la temporización de la instrucción NOT.

NOT

%I0.1

%M2

%Q0.2

%M3

%Q0.3

280 TWD USE 10AS


Instrucciones básicas

14.2 Bloques de función básicos

Presentación

Objeto Esta sección proporciona descripciones y directrices de programación para utilizar


bloques de función básicos.

Contenido Esta sección contiene los siguientes apartados:


Apartado Página
Bloques de funciones estándar 282
Principios para programar bloques de función estándar 284
Bloque de función del temporizador (%TMi) 286
Tipo de temporizador TOF 288
Tipo de temporizador TON 289
Tipo de temporizador TP 290
Programación y configuración de temporizadores 291
Bloque de función del contador progresivo/regresivo (%Ci) 294
Programación y configuración de contadores 298
Bloque de función del registro de bits de desplazamiento (%SBRi) 300
Bloques de función del contador de pasos (%SCi) 303

TWD USE 10AS 281


Instrucciones básicas

Bloques de funciones estándar

Introducción Los bloques de funciones son los orígenes de los objetos bits y de las palabras
específicas empleados por los programas. Los bloques de funciones básicas
contienen funciones sencillas, como las de los temporizadores o los contadores
progresivos/regresivos.

Ejemplo de un En la ilustración siguiente se muestra un ejemplo del bloque de función de contador


bloque de progresivo/regresivo.
función

%Ci
R E

S D
ADJ Y
%Ci.P 9999
CU

CD F

Bloque del contador


progresivo/regresivo

Objetos bits Los objetos bits corresponden a las salidas de los bloques. A estos bits pueden
acceder las instrucciones de verificación booleanas a través de uno de los métodos
siguientes:
l Directamente (por ejemplo, LD E), si están cableados al bloque en programación
reversible (consulte Principios para programar bloques de función estándar,
p. 284).
l Especificando el tipo de bloque (por ejemplo, LD %Ci.E).
Puede accederse a las entradas en forma de instrucciones.

Objetos palabras Los objetos palabras corresponden a:


l Parámetros de configuración del bloque:Se puede acceder a algunos
parámetros a través del programa (por ejemplo, parámetros de preselección) y a
otros no (por ejemplo, base de tiempo).
l Valores actuales:por ejemplo, %Ci.V, el valor de conteo actual.

282 TWD USE 10AS


Instrucciones básicas

Objetos palabras En la siguiente tabla se describen los objetos palabras y los objetos bits de bloques
y objetos bits de función a los que puede acceder el programa.
accesibles
Bloque de Símbolo Rango Tipos de Descripción Direcció Acceso
función (i) objetos n de
estándar escritur
a
Temporizador %TMi 0 - 127 Palabra Valor actual %TMi.V no
Valor %TMi.P sí
preestablecido
Bit Salida del %TMi.Q no
temporizador
Contador %Ci 0 - 127 Palabra Valor actual %Ci.V no
progresivo/ Valor %Ci.P sí
regresivo preestablecido
Bit Salida de %Ci.E no
transgresión por
debajo de rango
(vacío)
Salida %Ci.D no
predeterminada
alcanzada
Salida de %Ci.F no
desborde (lleno)

TWD USE 10AS 283


Instrucciones básicas

Principios para programar bloques de función estándar

Introducción Utilice uno de los métodos que aparecen a continuación para programar bloques de
función estándar.
l Instrucciones de bloque de función (por ejemplo, BLK %TM2): método reversible
de programación en lenguaje Ladder Logic reversible que permite que las
operaciones que se van a realizar en el bloque se lleven a cabo en un único lugar
del programa.
l Instrucciones específicas (por ejemplo, CU %Ci): método no reversible que
permite que las operaciones que se van a realizar en las entradas del bloque se
lleven a cabo en varias partes del programa (por ejemplo, line 100 CU %C1,
line 174 CD %C1, line 209 LD %C1.D).

Programación Utilice las instrucciones BLK, OUT_BLK y END_BLK para programación reversible.
reversible l BLK: Indica el principio de un bloque.
l OUT_BLK: Se utiliza para cablear directamente las salidas de bloque.
l END_BLK: Indica el final de un bloque.

Ejemplo con El siguiente ejemplo muestra la programación reversible de un bloque de función


salidas del contador con salidas cableadas.
cableadas

%I1.1
N R %C8 E BLK %C8
LDF %I1.1
S %M1 %Q0.4 R Procesamiento
%I1.2 %M0 ADJ Y D LD %I1.2 de entrada
CU %Ci.P 9999 AND %M0
CU
OUT_BLK
CD F
LD D Procesamiento
AND %M1 de salida
ST %Q0.4
END_BLK

284 TWD USE 10AS


Instrucciones básicas

Ejemplo sin Este ejemplo muestra la programación reversible de un bloque de función del
salida cableada contador sin cableado en las salidas.

%I1.1
N R %C8 E BLK %C8
LDF %I1.1
S R Procesamiento
%I1.2 %M0 ADJ Y D LD %I1.2 de entrada
%Ci.P 9999 AND %M0
CU
CU
END_BLK
CD F
LD %C8.D
Procesamiento
AND %M1
de salida
%C8.D %M1 %Q0.4 ST %Q0.4

Nota: Sólo se pueden colocar instrucciones de entrada y de prueba en el bloque


relevante entre las instrucciones BLK y OUT_BLK (o entre BLK y END_BLK
cuando no se programa OUT_BLK).

TWD USE 10AS 285


Instrucciones básicas

Bloque de función del temporizador (%TMi)

Introducción Existen tres tipos de bloques de función del temporizador:


l TON (temporizador de retraso durante el ajuste): este tipo de temporizador
permite gestionar los retrasos durante el ajuste.
l TOF (temporizador de retraso durante el restablecimiento): este tipo de
temporizador permite gestionar los retrasos durante el restablecimiento.
l TP (pulso de temporizador): utilice este tipo de temporizador para generar pulsos
de duración determinada.
Los retrasos o períodos de pulsos de los temporizadores se pueden programar y
modificar mediante TwidoSoft.

Ilustración A continuación se muestra una ilustración del bloque de función del temporizador.

%TMi
IN Q
TYPE TON
TB 1 min
ADJ Y
%TMi.P 9999

Bloque de función del temporizador

286 TWD USE 10AS


Instrucciones básicas

Parámetros El bloque de función del temporizador dispone de los parámetros enumerados a


continuación.
Parámetro Etiqueta Valor
Número de %TMi 0 a 63: TWDLCAA10DRF y TWDLCAA16DRF.
temporizador 0 a 127 para los demás controladores.
Tipo TON • retraso durante el ajuste (predeterminado)
TOF • retraso durante el restablecimiento
TP • pulso (monoestable)
Base de tiempo TB 1 min (predeterminado), 1 s, 100 ms, 10 ms, 1 ms
Valor actual %TMi.V Palabra que aumenta de 0 a %TMi.P cuando el
temporizador está en funcionamiento. Se puede leer y
comprobar, pero no se puede escribir desde el programa.
%TMi.V se puede modificar utilizando el editor de tablas de
animación.
Valor %TMi.P 0 - 9999. Palabra que se puede leer, comprobar y escribir
preestablecido desde el programa. El valor predeterminado es 9999. El
período o retardo generado es igual a %TMi.P x TB.
Editor de tablas de Y/N Y: Sí, el valor preestablecido %TMi.P se puede modificar
animación mediante el editor de tablas de animación.
Número: No, el valor preestablecido %TMi.P no se puede
modificar.
Entrada de IN Inicia el temporizador en flanco ascendente (tipos TON o
validación (o de la TP) o en flanco descendente (tipo TOF).
instrucción)
Salida del Q El bit asociado %TMi.Q se ajusta a 1 dependiendo de la
temporizador función realizada: TON, TOF, o TP.

Nota: Cuanto mayor sea el valor preestablecido, mayor será la precisión del
temporizador.

TWD USE 10AS 287


Instrucciones básicas

Tipo de temporizador TOF

Introducción El tipo de temporizador TOF (temporizador de retardo a la desconexión) se utiliza


para controlar las acciones de retardo a la desconexión. Este retardo se puede
programar con TwidoSoft.

Cronograma El siguiente cronograma ilustra el funcionamiento del temporizador de tipo TOF.

(1) (1)

(3)
IN
(2)

(5)
Q

%TMi.P
(4)
%TMi.V

Operación En la siguiente tabla se describe el funcionamiento del temporizador de tipo TOF.


Fase Descripción
1 El valor actual %TMi.V se establece en 0 en un flanco ascendente en la entrada
IN, aun cuando el temporizador se encuentre en ejecución.
2 El bit de salida %TMi.Q se establece en 1 cuando se detecte un flanco
ascendente en la entrada N.
3 El temporizador inicia en el flanco descendente de la entrada IN.
4 El valor actual %TMi.V aumenta a %TMi.P en incrementos de una unidad por
pulso de la base de tiempo TB.
5 El bit de salida %TMi.Q se restablece a 0 cuando el valor actual llega a %TMi.P.

288 TWD USE 10AS


Instrucciones básicas

Tipo de temporizador TON

Introducción El tipo de temporizador TON (temporizador de retardo a la conexión) se utiliza para


controlar las acciones de retardo a la conexión. Este retardo se puede programar
con TwidoSoft.

Cronograma El siguiente cronograma ilustra el funcionamiento del temporizador de tipo TON.

(1)

IN

(3) (5)
Q

%TMi.P (4)
(2)
%TMi.V

Operación En la siguiente tabla se describe el funcionamiento del temporizador de tipo TON.


Fase Descripción
1 El temporizador inicia en el flanco ascendente de la entrada IN.
2 El valor actual %TMi.V aumenta de 0 a %TMi.P en incrementos de una unidad
por pulso de la base de tiempo TB.
3 El bit de salida %TMi.Q se establece en 1 cuando el valor actual llega a %TMi.P.
4 El bit de salida %TMi.Q permanece en 1 mientras la entrada IN esté en 1.
5 Si se detecta un flanco descendente en la entrada IN, el temporizador se
detiene, aun cuando el temporizador no haya alcanzado el valor %TMi.P, y
%TMi.V se establece en 0.

TWD USE 10AS 289


Instrucciones básicas

Tipo de temporizador TP

Introducción El tipo de temporizador TP (pulso de temporizador) se utiliza para generar pulsos


de duración determinada. Este retardo se puede programar con TwidoSoft.

Cronograma El siguiente cronograma ilustra el funcionamiento del temporizador de tipo TP.

(1)

IN
(2) (6)

(4)
Q

%TMi.P
(3) (5)
%TMi.V

Funcionamiento En la siguiente tabla se describe el funcionamiento del temporizador de tipo TP.


Fase Descripción
1 El temporizador se ejecuta en el flanco ascendente de la entrada IN. El valor
actual %TMi.V se pone a 0 si el temporizador aún no se ha ejecutado.
2 El bit de salida %TMi.Q se establece en 1 cuando se inicia el temporizador.
3 El valor actual %TMi.V del temporizador aumenta de 0 a %TMi.P en
incrementos de una unidad por pulso de la base de tiempo TB.
4 El bit de salida %TMi.Q se establece en 0 cuando el valor actual llega a %TMi.P.
5 El valor actual %TMi.V se establece en 0 cuando %TMi.V es igual a %TMi.P y
la entrada IN vuelve a 0.
6 El temporizador no se puede restablecer en cero. Cuando %TMi.V es igual a
%TMi.P y la entrada IN se establece en 0, %TMi.V se ajusta a 0.

290 TWD USE 10AS


Instrucciones básicas

Programación y configuración de temporizadores

Introducción Los bloques de función del temporizador (%TMi) se programan de la misma


manera, independientemente del modo en que vayan a utilizarse. La función del
temporizador (TON, TOF o TP) se selecciona durante la configuración.

Ejemplos La siguiente ilustración es un bloque de función del temporizador con ejemplos de


programación reversible y no reversible.

%I0.1 %TMi %Q0,3


IN Q

TYPE TON
TB 1 min
ADJ Y
%TMi.P 9999

Programación reversible Programación no reversible

BLK %TM1 LD %I0.1


LD %I0.1 IN %TM1
IN LD %TM1.Q
OUT_BLK ST %Q0,3
LD Q
ST %Q0,3
END_BLK

Configuración Durante la configuración, deben introducirse los siguientes parámetros:


l Tipo de temporizador: TON, TOF o TP
l Base de tiempo (TB): 1 min, 1s, 100 ms, 10 ms o 1 ms
l Valor preestablecido (%TMi.P): 0 a 9.999
l Ajuste: comprobado o no comprobado

TWD USE 10AS 291


Instrucciones básicas

Casos La tabla siguiente contiene una lista de casos especiales de operación.


especiales
Caso especial Descripción
Efecto de un reinicio en frío (%S0=1) Fuerza el valor actual a 0. Establece la salida
%TMi.Q en 0. El valor preestablecido se
restablece al valor definido durante la
configuración.
Efecto de un reinicio en caliente No tiene ningún efecto en los valores actuales y
(%S1=1) presentes del temporizador. El valor actual no
varía durante un corte de alimentación.
Efecto de una detención del autómata No inmovilizará el valor actual.
Efecto de un salto del programa Un salto sobre el bloque del temporizador no
mantendrá el temporizador. El temporizador
continúa aumentando hasta que alcanza el valor
preestablecido (%TMi.P). En este punto, el bit de
finalización (%TMi.Q) asignado a la salida Q del
bloque del temporizador cambia de estado; sin
embargo, la salida asociada cableada
directamente a la salida del bloque no se activa y
el controlador no la explora.
Comprobación por bit %TMi.Q (bit de Es recomendable realizar una prueba del bit
finalización) %TMi.Q una única vez en el programa.
Efecto de las instrucciones MCS/MCR Un bloque del temporizador que se ha
del relé de control de master programado entre las instrucciones MCS/MCR se
restablece cuando la instrucción MCS está activa.
Efecto de modificar el valor Modificar el valor presente mediante una
preestablecido %TMi.P instrucción o ajustando el valor sólo tiene efecto
cuando se vuelve a activar el temporizador.

Temporizadores La base de tiempo de 1 ms sólo está disponible con los primeros cinco
con una base de temporizadores. Las cuatro palabras del sistema %SW76, %SW77, %SW78 y
tiempo de 1 ms SW79 se pueden utilizar como "relojes de arena". El sistema hace que estas cuatro
palabras disminuyan individualmente cada milisegundo si tienen un valor
positivo.
Se pueden conseguir varias temporizaciones cargando de manera sucesiva una de
estas palabras o realizando comprobaciones de los valores inmediatos. Si el valor
de una de estas cuatro palabras es menor que 0, no se modificará. Es posible
inmovilizar un temporizador estableciendo el bit 15 correspondiente en 1 y cancelar
la inmovilización restableciéndolo en 0.

292 TWD USE 10AS


Instrucciones básicas

Ejemplo de A continuación se muestra un ejemplo de programación de un bloque de función del


programación temporizador.

LDR %I0.1 (ejecución del temporizador en el flanco ascendente de %I0.1)


[%SW76:=XXXX] (XXXX = valor necesario)
LD %I0.2 (gestión opcional de inmovilización, comando de la entrada
I0.2)
ST %SW76:X15
LD [%SW76=0] (comprobación final del temporizador)
ST %M0
..............

%I0.1
P %SW76:=XXXX

%I0.2 %SW76:X15

%M0
%SW76=0

TWD USE 10AS 293


Instrucciones básicas

Bloque de función del contador progresivo/regresivo (%Ci)

Introducción El bloque de función del contador (%Ci) cuenta los eventos de forma progresiva y
regresiva. Estas dos operaciones se pueden realizar simultáneamente.

Ilustración A continuación se muestra una ilustración del bloque de función del contador
progresivo/regresivo.

%Ci
R E

S D
ADJ Y
%Ci.P 9999
CU

CD F

Bloque de función del contador


progresivo/regresivo

294 TWD USE 10AS


Instrucciones básicas

Parámetros El bloque de función del contador tiene los siguientes parámetros:


Parámetro Etiqueta Valor
Número de contador %Ci 0 à 127
Valor actual %Ci.V La palabra se incrementa o reduce de acuerdo con las
entradas (o instrucciones) CU y CD. Se puede leer y
comprobar, pero no se puede escribir desde el
programa. Si desea modificar %Ci.V, utilice el editor de
datos.
Valor preestablecido %Ci.P 0 ≤ %Ci.P ≤ 9999. La palabra se puede leer, comprobar
y escribir (valor predeterminado: 9999).
Edición con el editor ADJ l Y: Sí, el valor preestablecido se puede modificar
de tablas de mediante el editor de tablas de animación.
animación l Número: No, el valor preestablecido no se puede
modificar mediante el editor de tablas de
animación.
Restablecer entrada R En estado 1: %Ci.V = 0.
(o instrucción)
Restablecer entrada S En estado 1: %Ci.V = %Ci.P.
(o instrucción)
Conteo progresivo de CU Incrementos %Ci.V en un flanco ascendente.
la entrada (o
instrucción)
Conteo regresivo de CD Disminuciones %Ci.V en un flanco ascendente.
la entrada (o
instrucción)
Conteo regresivo de E (vacío) El bit asociado %Ci.E = 1, cuando el contador
la salida de desborde regresivo %Ci.V cambia de 0 a 9999 (establecido en 1
cuando %Ci.V alcanza 9999 y en 0 si el contador
continúa con el conteo regresivo).
Salida D (hecho) El bit asociado %Ci.D = 1, cuando %Ci.V = %Ci.P.
predeterminada
alcanzada
Conteo progresivo de F (llena) El bit asociado %Ci.F = 1, cuando %Ci.V cambia de
la salida de desborde 9999 a 0 (ajustado a 1 cuando %Ci.V alcanza 0 y a 0
si el contador continúa con el conteo progresivo).

TWD USE 10AS 295


Instrucciones básicas

Funcionamiento La siguiente tabla describe las fases principales de funcionamiento del contador
progresivo/regresivo.
Funcionamient Acción Resultado
o
Conteo Aparece un flanco ascendente El valor actual de %Ci.V aumenta en
progresivo en la entrada de conteo una unidad.
progresivo CU (o se activa la
instrucción CU).
El valor actual de %Ci.V es igual El bit de salida "preestablecida
al valor %Ci.P preestablecido. alcanzada" %Ci.D cambia a 1.
El valor actual %Ci.V cambia de El bit de salida %Ci.F (desborde de
9999 a 0. conteo progresivo) cambia a 1.
Si el contador continúa con el El bit de salida %Ci.F (desborde de
conteo progresivo. conteo progresivo) se restablece en
cero.
Conteo regresivo Aparece un flanco ascendente El valor actual de %Ci.V disminuye en
en la entrada de conteo una unidad.
regresivo CD (o se activa la
instrucción CD).
El valor actual %Ci.V cambia de El bit de salida %Ci.E (desborde de
0 a 9999. conteo regresivo) cambia a 1.
Si el contador continúa con el El bit de salida %Ci.F (desborde de
conteo regresivo. conteo regresivo) se restablece en
cero.
Conteo Para utilizar las funciones de conteo progresivo y regresivo al mismo
progresivo/ tiempo (o activar las dos instrucciones CD y CU), deberán controlarse las
regresivo entradas CU y CD correspondientes. Estas dos entradas se exploran
sucesivamente. Si las dos se encuentran en 1, el valor actual se
mantendrá sin cambios.
Puesta a cero Reestablecimiento en 1 de la El valor actual %Ci.V se fuerza a 0.
entrada R (o se activa la Las salidas %Ci.E, %Ci.D y %Ci.F se
instrucción R). restablecen en 0. Tiene prioridad la
entrada restablecida en cero.
Preajuste Si la entrada se establece en 1 (o El valor actual %Ci.V toma el valor
si se activa la instrucción S) y la %Ci.P y la salida %Ci.D se establece
entrada restablecida en cero en 1.
está en el estado 0 (o se inactiva
la instrucción R).

296 TWD USE 10AS


Instrucciones básicas

Casos La tabla siguiente muestra una lista de casos especiales de funcionamiento y


especiales configuración de los contadores.
Caso especial Descripción
Efecto de un reinicio en frío (%S0=1) l El valor actual %Ci se establece en 0.
l Los bits de salida %Ci.E, %Ci.D y %Ci.F se
establecen en 0.
l El valor preestablecido se inicializa con el valor
definido durante la configuración
Efecto de un reinicio en caliente No tiene ningún efecto sobre el valor actual del
(%S1=1) de una detención del autómata contador (%Ci.V).
Efecto de modificar el valor La modificación del valor preestablecido mediante
preestablecido %Ci.P una instrucción o ajustándolo entra en vigor
cuando la aplicación procesa el bloque (activación
de una de las entradas).

TWD USE 10AS 297


Instrucciones básicas

Programación y configuración de contadores

Introducción El ejemplo siguiente muestra un contador que permite contar hasta un máximo de
5.000 elementos. Cada pulso de entrada %I1.2 (cuando el bit interno %M0 está en
1) incrementa el contador %C8 hasta su valor preestablecido final (bit %C8.D=1).
El contador se restablece mediante la entrada %I1.1.

Ejemplo de La siguiente ilustración es un bloque de función del contador con ejemplos de


programación programación reversibles y no reversibles.

%I1.1

R %C8 E

S
%I1.2 %M0 ADJ Y D
CU %Ci.P 9999

CD F

%C8.D %Q0.0

Diagrama Ladder Logic

BLK %C8 LD %I1.1


LD %I1.1 R %C8
R LD %I1.2
LD %I1.2 AND %M0
AND %M0 CU %C8
CU LD %C8.D
END_BLK ST %Q0.0
LD %C8.D
ST %Q0.0

Programación reversible Programación no reversible

298 TWD USE 10AS


Instrucciones básicas

Configuración Durante la configuración, deben introducirse los siguientes parámetros:


l Valor preestablecido (%Ci.P): definido en 5000 en este ejemplo
l Ajuste: sí

Ejemplo de A continuación, se muestra una ilustración del bloque de función del contador
contador progresivo/regresivo.
progresivo/
regresivo %M0 %I0.0 %M0
R %C1 E R

S %M0
D S
CU
%M0 %I0.0

CD F

Diagrama Ladder Logic


En este ejemplo, si tomamos %C1.P 4, el valor actual del contador %C1.V
aumentará de 0 a 3 y disminuirá luego de 3 a 0; mientras %I0.0=1 %C1.V oscila
entre 0 y 3.

TWD USE 10AS 299


Instrucciones básicas

Bloque de función del registro de bits de desplazamiento (%SBRi)

Introducción El bloque de función del registro de bits de desplazamiento (%SBRi) proporciona un


desplazamiento de bits de datos binarios a la izquierda o la derecha (0 ó 1).

Ilustración A continuación se muestra un ejemplo de un bloque de función del registro de


desplazamiento.

%SBRi
R

CU

CD

Parámetros El bloque de función del registro de bits de desplazamiento tiene los siguientes
parámetros.
Parámetro Etiqueta Valor
Número de registro %SBRi 0a7
Bit de registro %SBRi.j Los bits 0 a 15 (j = 0 a 15) del registro de
desplazamiento pueden probarse mediante una
instrucción de prueba y escribirse utilizando una
instrucción de asignación.
Restablecer entrada R En un flanco ascendente, establece los bits de
(o instrucción) registro 0 a 15 %SBRi.j a 0.
Desplazar hacia la CU En un flanco ascendente, desplaza un bit de
entrada izquierda (o registro a la izquierda.
instrucción)
Desplazar hacia la CD En un flanco ascendente, desplaza un bit de
entrada derecha (o registro a la derecha.
instrucción)

300 TWD USE 10AS


Instrucciones básicas

Operación La siguiente ilustración muestra un modelo de bit antes y después de una operación
de desplazamiento.

Estado inicial
de la operación 1 1 0 0 0 0 0 0 1 1 0 1 1 1 0 0
Bit 15 Bit 0

CU %SBRi realiza un
desplazamiento a la
izquierda
El bit 15 se pierde 1 0 0 0 0 0 0 1 1 0 1 1 1 0 0 0
Bit 15 Bit 0

También es posible que una solicitud para desplazar un bit a la derecha (Bit 15 a Bit
0) utilizando la instrucción CD. El bit 0 se pierde.
Si un registro de 16 bits no es adecuado, es posible utilizar el programa para
mostrar en cascada varios registros.

Programación En el siguiente ejemplo, un bit se desplaza a la izquierda cada segundo mientras el


bit 0 asume el estado opuesto al bit 15.
Programación
reversible
%SBR0.15 %SBR0.0
/
LDN %SBR0.15
ST %SBR0.0
BLK %SBR0
LD %S6
CU
%SBR0 END_BLK
R

%S6 Programación
CU no reversible

LDN %SBR0.15
CD ST %SBR0.0
LD %S6
CU %SBR0

TWD USE 10AS 301


Instrucciones básicas

Casos La siguiente tabla contiene una lista de casos especiales para programar el bloque
especiales de función del registro de bits de desplazamiento.
Caso especial Descripción
Efecto de un reinicio en frío (%S0=1) Establece todos los bits de la palabra de registro a
0.
Efecto de un reinicio en caliente No tiene efecto sobre los bits de la palabra de
(%S1=1) registro.

302 TWD USE 10AS


Instrucciones básicas

Bloques de función del contador de pasos (%SCi)

Introducción Un bloque de función del contador de pasos (%SCi) proporciona una serie de pasos
a los que se pueden asignar las acciones. El desplazamiento de un paso a otro
depende de eventos internos o externos. Cada vez que un paso esté activo, el bit
asociado se establecerá en 1. Sólo se puede activar un paso del contador de pasos
a la vez.

Ilustración A continuación se muestra un ejemplo de un bloque de función del contador de


pasos.

%SCi
R

CU

CD

TWD USE 10AS 303


Instrucciones básicas

Parámetros El bloque de función del contador de pasos tiene los siguientes parámetros:
Parámetro Etiqueta Valor
Número del contador %SCi 0a7
de pasos
Bit del contador de %SCi.J Los bits del contador de pasos 0 a 255 (j = 0 a
pasos 255) se pueden comprobar mediante una
operación lógica Cargar y se pueden escribir
con la instrucción Asignación.
Restablecer entrada R En un flanco ascendente, pone el contador de
(o instrucción) pasos a cero.
Aumentar entrada (o CU En un flanco ascendente, aumenta un paso el
instrucción) contador de pasos.
Disminuir entrada (o CD En un flanco ascendente, disminuye un paso el
instrucción) contador de pasos.

Cronograma El diagrama que aparece a continuación muestra el funcionamiento del bloque de


función del contador de pasos.

Entrada CU

Entrada CD

Número de la
0 1 2 3 2 1 0
etapa activa

304 TWD USE 10AS


Instrucciones básicas

Programación A continuación se muestra un ejemplo de un bloque de función del contador de


pasos.
l La entrada %I0.2 aumenta el contador de pasos 0.
l El contador de pasos 0 se vuelve a poner a cero cuando llega al paso 3 o
mediante la entrada %I0.3.
l El paso 0 controla la salida %Q0.1, el paso 1 controla la salida %Q0.2 y el paso
2 controla la salida %Q0.3.
La ilustración que aparece a continuación muestra tanto la programación reversible
como la no reversible relativas al ejemplo.

Programación
no reversible

BLK %SC0
%SC0.3 LD %SC0.3
OR %I0.3
R
%SC0 LD %I0.2
%I0.3
CU
R END_BLK
LD %SC0.0
%I0.2 ST %Q0,1
CU LD %SC0.1
ST %Q0,2
LD %SC0.2
ST %Q0,3
CD

Programación
%SC0.0 %Q0.1 no reversible

LD %SC0.3
OR %I0.3
%SC0.1 %Q0,2 R %SC0
LD %I0.2
CU %SC0
LD %SC0.0
ST %Q0,1
%SC0.2 %Q0,3
LD %SC0.1
ST %Q0,2
LD %SC0.2
ST %Q0,3

TWD USE 10AS 305


Instrucciones básicas

Caso especial La siguiente tabla contiene una lista de casos especiales de funcionamiento del
bloque de función del contador de pasos.
Caso especial Descripción
Efecto de un reinicio en frío (%S0=1) Inicializa el contador de pasos.
Efecto de un reinicio en caliente No tiene ningún efecto sobre el contador de pasos.
(%S1=1)

306 TWD USE 10AS


Instrucciones básicas

14.3 Procesamiento numérico

Presentación

Objeto Esta sección ofrece una introducción al procesamiento numérico. Incluye


descripciones y directrices de programación.

Contenido Esta sección contiene los siguientes apartados:


Apartado Página
Introducción a las instrucciones numéricas 308
Instrucciones de asignación 309
Instrucciones de comparación 314
Instrucciones aritméticas con enteros 316
Instrucciones lógicas 320
Instrucciones de desplazamiento 322
Instrucciones de conversión 324
Instrucciones de conversión de palabras simples y dobles 326

TWD USE 10AS 307


Instrucciones básicas

Introducción a las instrucciones numéricas

Presentación Normalmente, las instrucciones numéricas se aplican a palabras de 16 bits


(consulte Objetos de palabras, p. 27) y a palabras dobles de 32 bits (Véase Objetos
flotantes y palabras dobles, p. 30). Se escriben entre corchetes. Si el resultado de
la operación de lógica anterior era verdadero (acumulador booleario = 0), se ejecuta
la instrucción numérica. Si el resultado de la operación lógica anterior era falso,
(acumulador booleario = 0), la instrucción numérica no se ejecuta y el operando
permanece intacto.

308 TWD USE 10AS


Instrucciones básicas

Instrucciones de asignación

Introducción Las instrucciones de asignación se utilizan para cargar el operando Op2 en el


operando Op1.

Asignación Sintaxis de las instrucciones de asignación

[Op1:=Op2] <=> Op2 -> Op1

Pueden realizarse operaciones de asignación en:


l Cadenas de bits
l Palabras
l Palabras dobles
l Flotantes
l Tablas de palabras
l Tablas de palabras dobles
l Tablas de flotantes

Asignación de Las operaciones se pueden llevar a cabo en las cadenas de bits siguientes
cadenas de bits (consulte la sección Objetos estructurados, p. 44):
l Cadena de bits:> cadena de bits (Ejemplo 1)
l Cadena de bits:> palabra (Ejemplo 2) o palabra doble (indexada)
l Palabra o palabra doble (indexada):> cadena de bits (Ejemplo 3)
l Valor inmediato:> cadena de bits

Ejemplos Ejemplos de asignaciones de cadenas de bits

LD 1
%Q0:8:=%M64:8 [%Q0:8:=%M64:8] (Ex. 1)

%I0.2 LD %I0.2
%MW100:=%I0:16 [%MW100:=%I0:16] (Ex. 2)

%I0.3 LDR %I0.3


P %M104:16:=%KW0 [%M104:16:=%KW0] (Ex. 3)

TWD USE 10AS 309


Instrucciones básicas

Normas de uso:
l Para la asignación de cadena de bits:> palabra: los bits de la cadena se
transfieren a la palabra comenzando por la derecha (primer bit de la cadena al
bit 0 de la palabra), y los bits de palabra no implicados en la transferencia
(longitud ≤16) se ponen a 0.
l Para la asignación de palabra:> cadena de bits: los bits de palabra se transfieren
desde la derecha (bit de palabra 0 al primer bit de la cadena).

Asignaciones de Sintaxis de las asignaciones de cadenas de bits


cadenas de bits
Operador Sintaxis Operando 1 (Op1) Operando 2 (Op2)
:= [Op1: = Op2 ] %MWi,%QWi, Valor inmediato, %MWi,
%QWAi,%SWi %KWi, %IW,%IWAi,
El operando 1 (Op1) %MWi[%MWi], %MDi, %INWi, %QWi, %QWAi
asume el valor del %MDi[%MWi] %QNWi, %SWi,
operando 2 (Op2). %Mi:L, %Qi:L, %Si:L, %BLK.x, %MWi[%MWi],
%Xi:L %KWi[%MWi],
%MDi[%MWi],
%KDi[%MWi],
%Mi:L,%Qi:L, %Si:L,
%Xi:L, %Ii:L

Nota: La abreviatura %BLK.x (por ejemplo, %C0.P) se utiliza para describir


cualquier palabra de bloque de función.

Asignación de Las operaciones de asignación se pueden ejecutar en las palabras y en las palabras
palabras dobles siguientes:
l Palabra (indexada):> palabra (Ejemplo 2) (indexada o no)
l Palabra doble (indexada):> palabra doble (indexada o no)
l Valor entero inmediato:> palabra (Ejemplo 3) o palabra doble (indexadas o no)
l Cadena de bits:> palabra o palabra doble
l Flotante (indexada o no):> flotante (indexada o no)
l Palabra o palabra doble:> cadena de bits
l Valor flotante inmediato:> flotante (indexado o no)

310 TWD USE 10AS


Instrucciones básicas

Ejemplos Ejemplos de asignaciones de palabras

LD 1
%SW112:=%MW100 [%SW112:=%MW100] (Ex. 1)

%I0.2 LD %I0.2
%MW0[%MW10]:=%KW0[%MW20] [%MW0[%MW10]:= (Ex. 2)
%KW0[%MW20]]

%I0.3
P %MW10:=100 LDR %I0.3 (Ex. 3)
[%MW10:=100]

Sintaxis Sintaxis para asignaciones de palabras


Operador Sintaxis
:= [Op1: = Op2 ]
El operando 1 (Op1) asume el valor del operando 2 (Op2).

En la tabla siguiente se detallan los operandos:


Tipo Operando 1 (Op1) Operando 2 (Op2)
palabra, %BLK.x, %MWi, Valor inmediato, %MWi,
palabra %QWi, %QWAi, %SWi %KWi, %IW, %IWAi,
doble, %MWi[MWi, %MDi, %QWi, %QWAi, %SWi,
cadena de %MDi[%MWj]], %MWi[MWi],
bits %Mi:L, %Qi:L, %Si:L, %KWi[MWi], %MDi,
%Xi:L %MDi[%MWj], %KDi,
%KDi[MWj] , %INW,
%Mi:L, %Qi:L, %QNW,
%Si:L, %Xi:L, %Ii:L
Flotante %MFi, %MFi[%MWj] Valor flotante inmediato,
%MFi, %MFi[%MWj],
%KFi, %KFi[%MWj]

Nota: La abreviatura %BLK.x (por ejemplo, %R3.I) se utiliza para describir


cualquier palabra de bloque de función. Para las cadenas %Mi:L, %Si:L y %Xi:L,
la dirección de base del primer bit de la cadena debe ser un múltiplo de 8 (0, 8, 16,
..., 96, ...).

TWD USE 10AS 311


Instrucciones básicas

Asignación de Pueden realizarse operaciones de asignación en las siguientes tablas de palabras


tablas de de objetos (consulte la sección Tablas de palabras, p. 45):
palabras, l Valor entero inmediato:> tabla de palabras (Ejemplo 1) o de palabras dobles
palabras dobles l Palabra:> tabla de palabras (Ejemplo 2)
o flotantes l Tabla de palabras:> tabla de palabras (Ejemplo 3)
La longitud de tabla (L) debe ser igual para ambas tablas.
l Palabra doble:> tabla de palabras dobles
l Tabla de palabras dobles:> tabla de palabras dobles
La longitud de la tabla (L) debe ser igual para ambas tablas.
l Valor flotante inmediato:> tabla de flotantes
l Flotante:> tabla de flotantes
l Tabla de flotantes:> tabla de flotantes
La longitud de la tabla (L) debe ser igual para ambas tablas.

Ejemplos Ejemplos de asignaciones de tablas de palabras

LD 1
%MW0:10:=100 [%MW0:10:=100] (Ex. 1)

%I0.2 LD %I0.2
%MW0:10:=%MW11 [%MW0:10:=%MW11] (Ex. 2)

%I0.3 LDR %I0.3


P %MW10:20:=%KW30:20 [%MW10:20:=%KW30:20] (Ex. 3)

Sintaxis Sintaxis de las asignaciones de tablas de palabras, palabras dobles y flotantes


Operador Sintaxis
:= [Op1: = Op2 ]
El operando 1 (Op1) asume el valor del operando 2 (Op2).

En la tabla siguiente se detallan los operandos:


Tipo Operando 1 (Op1) Operando 2 (Op2)
Tabla de palabras %MWi:L, %SWi:L %MWi:L, %SWi:L, Valor entero
inmediato, %MWi, %KWi, %IW, %QW,
%SWi, %BLK.x
Tabla de palabras %MDi:L Valor entero inmediato, %MDi,
dobles %KDi,%MDi:L, %KDi:L
Tabla de flotantes %MFi:L] Valor flotante inmediato, %MFi,
%KFi, %MFi:L, %KFi:L

312 TWD USE 10AS


Instrucciones básicas

Nota: La abreviatura %BLK.x (por ejemplo, %R3.I) se utiliza para describir


cualquier palabra de bloque de función.

TWD USE 10AS 313


Instrucciones básicas

Instrucciones de comparación

Introducción Las instrucciones de comparación se utilizan para comparar dos operandos.


En la tabla siguiente se enumeran los diferentes tipos de instrucciones de
comparación.
Instrucción Función
> Comprueba si el operando 1 es mayor que el operando 2.
>= Comprueba si el operando 1 es mayor o igual que el operando 2.
< Comprueba si el operando 1 es menor que el operando 2.
<= Comprueba si el operando 1 es menor o igual que el operando 2.
= Comprueba si el operando 1 es igual que el operando 2.
<> Comprueba si el operando 1 es distinto que el operando 2.

Estructura La comparación se lleva a cabo entre los corchetes que siguen a las instrucciones
LD, AND y OR. El resultado es 1 cuando el resultado de la comparación solicitada
es Verdadero.
Ejemplos de instrucciones de comparación

%Q0.3
%MW10>100 LD [%MW10 > 100]
ST %Q0.3

%M0 %Q0.2 LD %M0


%MW20<%KW35 AND [%MW20 < %KW35]
ST %Q0.2

%I0.2 %Q0.4 LD %I0.2


OR [%MF30>=%MF40]
ST %Q0.4

%MF30>=%MF40

314 TWD USE 10AS


Instrucciones básicas

Sintaxis Sintaxis de las instrucciones de comparación:


Operador Sintaxis
>, >=, <, <=, =, <> LD [Op1 Operador Op2]
AND [Op1 Operador Op2]
OR [Op1 Operador Op2]

Operandos:
Tipo Operando 1 (Op1) Operando 2 (Op2)
Palabras %MWi, %KWi, %INWi, Valor inmediato, %MWi,
%IW, %IWAi, %QNWi, %KWi, %INWi, %IW,
%QWi, %QWAi, %IWAi, %QNWi, %QW,
%QNWi, %SWi, %QWAi, %SWi, %BLK.x,
%BLK.x %MWi [%MWi], %KWi
[%MWi]
Palabras %MDi, %KDi Valor inmediato, %MDi,
dobles %KDi, %MDi [%MWi],
%KD [%MWi]
Flotantes %MFi, %KFi Valor flotante inmediato,
%MFi, %KFi, %MFi
[%MWi], %KFi [%MWi]

Nota: Las instrucciones de comparación pueden utilizarse entre paréntesis.

Ejemplo de utilización de una instrucción de comparación entre paréntesis

LD %M0
AND( [%MF20 > 10.0]
OR %I0.0
)
ST %Q0.1

TWD USE 10AS 315


Instrucciones básicas

Instrucciones aritméticas con enteros

Introducción Las instrucciones aritméticas se utilizan para realizar operaciones aritméticas en un


operando entero o entre dos.
La siguiente tabla enumera los tipos de instrucciones aritméticas.
Instrucción Función
+ Sumar dos operandos
- Restar dos operandos
* Multiplicar dos operandos
/ Dividir dos operandos
REM Resto de la división de dos operandos
SQRT Raíz cuadrada de un operado
INC Aumentar un operando
DEC Disminuir un operando

Estructura Las operaciones aritméticas se realizan de la siguiente forma:

%M0 LD %M0
%MW0:=%MW10+100 [%MW0:=%MW10 + 100]

%I0.2 LD %I0.2
%MW0:=SQRT(%MW10) [%MW0:=SQRT(%MW10)]

%I0.3 LDR %I0.3


P INC %MW100 [INC %MW100]

316 TWD USE 10AS


Instrucciones básicas

Sintaxis La sintaxis depende de los operadores utilizados como se muestra en la siguiente


tabla.
Operador Sintaxis
+, -, *, /, REM [Op1: = Op 2 Operador Op3]
INC, DEC [Operador Op1]
SQRT (1) [Op1: = SQRT(Op2)]

Operandos:
Tipo Operando 1 (Op1) Operandos 2 y 3
(Op2 & 3) (1)
Palabras %MWi, %QWi, Valor inmediato,
%QWAi, %SWi %MWi, %KWi, %INW,
%IW, %IAi, %QNW,
%QW, %QWAi,
%SWi, %BLK.x
Palabras dobles %MDi Valor inmediato,
%MDi, %KDi

Nota: (1) Con este operador, Op2 no puede ser un valor inmediato.

TWD USE 10AS 317


Instrucciones básicas

Condiciones de Adición
desborde y error l Desborde en la operación con palabras
Si el resultado rebasa los límites de -32768 o de +32767, el bit %S18 (desborde)
se pone a 1. El resultado no será significativo en este caso (consulte el ejemplo
1 de la siguiente página). El programa de usuario genera el bit %S18.
Nota:
Para las palabras dobles, los límites son -2147483648 y 21474836487.
Multiplicación
l Desborde durante la operación
Si el resultado supera la capacidad de la palabra de resultados, el bit %S18
(desborde) se establece en 1 y el resultado no es significativo.
División / resto
l División por 0
Si el divisor es 0, la división es imposible y el bit del sistema %S18 se establece
a 1. El resultado será entonces incorrecto.
l Desborde durante la operación
Si el cociente de la división supera la capacidad de la palabra de resultados, el
bit %S18 se establece en 1.
Extracción de la raíz cuadrada
l Desborde durante la operación
Sólo se puede calcular la raíz cuadrada de los números positivos. El resultado
será siempre, por tanto, positivo. Si el operando de la raíz cuadrada es negativa,
el bit de sistema %S18 se establece en 1 y el resultado es incorrecto.

Nota: El programa de usuario genera los bits de sistema %S17 y %S18. El


autómata los ajusta a 1. El programa los debe restablecer a 0 para poder volverlos
a utilizar (consulte el ejemplo de la página anterior).

318 TWD USE 10AS


Instrucciones básicas

Ejemplos Ejemplo 1: desborde durante la adición

%M0
LD %M0
%MW0:=%MW1+%MW2
[%MW0:=%MW1 + %MW2]

%S18
LDN %S18
/ %MW10:=%MW0 [%MW10:=%MW0]

%S18
LD %S18
%MW10:=32767 [%MW10:=32767]
R %S18
%S18
R

Si %MW1 =23241 y %MW2=21853, el resultado real (45094) no puede expresarse


con una palabra de 16 bits, el bit %S18 se ajusta a 1 y se obtiene un resultado
incorrecto (-20442). En este ejemplo, el valor se establece en 32767, cuando el
resultado es superior a este valor.

TWD USE 10AS 319


Instrucciones básicas

Instrucciones lógicas

Introducción Las instrucciones lógicas se utilizan para realizar operaciones lógicas entre dos
operandos o en un operando.
La siguiente tabla enumera los diferentes tipos de instrucciones lógicas:
Instrucción Función
AND AND (ámbito de bit) entre dos operandos
OR OR lógica (ámbito de bit) entre dos operandos
XOR OR exclusiva (ámbito de bit) entre dos operandos
NOT Complemento lógico (ámbito de bit) de un operando

Estructura Las operaciones lógicas se realizan tal y como se muestra a continuación:

%M0
LD %M0
%MW0:=%MW10 AND 16#FF00 [%MW0:=%MW10 AND 16#FF00]

LD 1
[%MW0:=%KW5 OR %MW10]
[%MW0:=%KW5 OR %MW10]

%I0.3
%MW102:=NOT (%MW100) LD %I0.3
[%MW102:=NOT(%MW100)]

320 TWD USE 10AS


Instrucciones básicas

Sintaxis La sintaxis varía según el operador que se utilice:


Operador Sintaxis Operando 1 (Op1) Operandos 2 y 3
(Op2 y 3)
AND, OR, XOR [Op1: = Op 2 Operador Op3] %MWi, %QWi, Valor inmediato (1),
NOT [NOT(Op2)] %QWAi, %SWi %MWi, %KWi, %IW,
%IWAi, %QW,
%QWAi, %SWi,
%BLK.x

Nota: (1) Con NOT, Op2 no puede ser un valor inmediato.

Ejemplo A continuación, se muestra una instrucción AND lógica.


[%MW15:=%MW32 AND %MW12]

TWD USE 10AS 321


Instrucciones básicas

Instrucciones de desplazamiento

Introducción Las instrucciones de desplazamiento mueven los bits de un operando un


determinado número de posiciones hacia la izquierda o hacia la derecha.
En la tabla siguiente se enumeran los tipos de instrucciones de desplazamiento.
Instrucción Función
Desplazamiento lógico
SHL(op2,i) Desplazamiento lógico F 0
de i posiciones hacia la
izquierda

%S17
F 0
SHR(op2,i) Desplazamiento lógico
de i posiciones hacia la
derecha
%S17

Desfase de rotación
ROR(op2,i) Desfase de rotación de i
posiciones hacia la
izquierda F 0

%S17
F 0
ROR(op2,i) Desfase de rotación de i
posiciones hacia la
derecha
%S17

Nota: El bit de sistema%S17 (Véase Bits de sistema (%S), p. 460) se utiliza en el


desbordamiento de la capacidad.

322 TWD USE 10AS


Instrucciones básicas

Estructura Las operaciones de desplazamiento se realizan del siguiente modo:

%I0.1
LDR %I0.1
P %MW0:=SHL(%MW10, 5)
[%MW0 :=SHL(%MW10, 5)]

%I0.2 LDR %I0.2


P %MW10:=ROR(%KW9, 8) [%MW10 :=ROR(%KW9, 8)]

Sintaxis La sintaxis depende de los operadores utilizados, como se muestra en la siguiente


tabla.
Operador Sintaxis
SHL, SHR [Op1 : = Operador (Op2,i)]
ROL, ROR

Operandos:
Tipos Operando 1 (Op1) Operando 2 (Op2)
Palabras %MWi, %QWi, %MWi, %KWi, %IW,
%QWAi, %SWi %IWAi, %QW,
%QWAi, %SWi,
%BLK.x
Palabras dobles %MDi %MDi, %KDi

TWD USE 10AS 323


Instrucciones básicas

Instrucciones de conversión

Introducción Las instrucciones de conversión realizan conversiones entre distintas representa-


ciones de números.
En la tabla siguiente se enumeran los tipos de instrucciones de conversión.
Instrucción Función
BTI Conversión BCD --> binario
ITB Conversión binario --> BCD

Revisión del Decimal codificado en binario (BCD) representa un dígito decimal (0 a 9) con código
código BCD de cuatro bits. Un objeto de palabra de 16 bits puede contener, de este modo, un
número expresado con cuatro cifras (0000 - 9999) y un objeto de palabra de 32 bits
puede contener un nombre expresado por ocho cifras.
Durante una conversión, el bit de sistema %S18 se establece en 1 si el valor no es
BCD. Este bit se debe verificar y restablecer en 0 por el programa.
Representación BCD de números decimales:
Decimal 0 1 2 3 4 5 6 7 8 9
BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

Ejemplos:
l La palabra %MW5 expresa el valor BCD "2450", que corresponde al valor
binario: 0010 0100 0101 0000
l La palabra %MW12 expresa el valor decimal "2450", que corresponde al valor
binario: 0000 1001 1001 0010
La palabra %MW5 se convierte en la palabra %MW12 mediante la instrucción BTI.
La palabra %MW12 se convierte en la palabra %MW5 mediante la instrucción ITB.

Estructura Las operaciones de conversión se realizan del siguiente modo:

%M0
LD %M0
%MW0:=BTI(%MW10)
[%MW0 :=BTI(%MW10)]

%I0.2 LD %I0.2
%MW10:=ITB(%KW9) [%MW10 :=ITB(%KW9)]

324 TWD USE 10AS


Instrucciones básicas

Sintaxis La sintaxis depende de los operadores utilizados, como se muestra en la siguiente


tabla.
Operador Sintaxis
BTI, ITB [Op1: = Operador (Op2)]

Operandos:
Tipo Operando 1 (Op1) Operando 2 (Op2)
Palabras %MWi, %QWi, %MWi, %KWi, %IW,
%QWAi, %SWi %IWAi, %QW,
%QWAi, %SWi,
%BLK.x
Palabras dobles %MDi %MDi, %KDi

Ejemplos de La instrucción BTI se utiliza para procesar un valor teórico en las entradas del
aplicación: autómata a través de las ruedas codificadoras en BCD.
La instrucción se utiliza para mostrar los valores numéricos (por ejemplo, el
resultado de un cálculo, el valor actual de un bloque de función) en monitores de
operación con codificación BCD.

TWD USE 10AS 325


Instrucciones básicas

Instrucciones de conversión de palabras simples y dobles

Introducción En la tabla siguiente se describen las instrucciones de conversiones de palabras


simples y dobles:
Instrucción Función
LW Extrae el byte menos significativo de una palabra doble a una palabra.
HW Extrae el byte más significativo de una palabra doble a una palabra.
CONCATW Concatena dos palabras para formar una palabra doble.
DWORD Convierte una palabra de 16 bits en una palabra doble de 32 bits.

Estructura Las operaciones de conversión se realizan del siguiente modo:

%M0
LD %M0
%MW0:=HW(%MD10)
[%MW0 :=HW(%MD10)]

%I0.2 LD %I0.2
%MD10:=DWORD(%KW9) [%MD10 :=DWORD(%KW9)]

%I0.3
%MD1:=CONCATW(%MW0, %MW5) LD %I0.3
[%MD1:=CONCATW( %MW0,%MW5)]

Sintaxis La sintaxis depende de los operadores empleados, tal y como se indica en la tabla
siguiente: l
Operador Sintaxis Operando 1 Operando 2 Operando 3
(Op1) (Op2) (Op3)
LW, HW Op1 = Operador (Op2) %MWi %MDi, %KDi [-]
CONCATW Op1 = Operador (Op2, Op3) %MDi %MWi, %MWi,
%KWi, valor %KWi, valor
inmediato inmediato
DWORD Op1 = Operador (Op2) %MDi %MWi, [-]
%KWi

326 TWD USE 10AS


Instrucciones básicas

14.4 Instrucciones del programa

Presentación

Objeto En esta sección se muestra una introducción a las instrucciones del programa.

Contenido Esta sección contiene los siguientes apartados:


Apartado Página
Instrucciones END 328
Instrucción NOP 330
Instrucciones de salto 331
Instrucciones de subrutina 333

TWD USE 10AS 327


Instrucciones básicas

Instrucciones END

Introducción Las instrucciones END definen el final de la ejecución de un ciclo de programa.

END, ENDC y Hay tres instrucciones de fin disponibles:


ENDCN l END: fin incondicional del programa.
l ENDC: fin de programa si el resultado booleario de la instrucción de prueba
precedente es 1.
l ENDCN: fin de programa si el resultado booleario de la instrucción de prueba
precedente es 0.
De forma predeterminada (modo normal), cuando se activa el fin de un programa,
las salidas se actualizan y se inicia el siguiente ciclo.
Si el ciclo es periódico, cuando se alcanza el final del periodo se actualizan las
salidas y se inicia el ciclo siguiente.

Ejemplos Ejemplo de una instrucción END incondicional.

%M1 %Q0.1
LD %M1
ST %Q0.1
LD %M2
ST %Q0.2
%M2 %Q0.2

...................

END END

328 TWD USE 10AS


Instrucciones básicas

Ejemplo de una instrucción END condicional.

%M1 %Q0.1
LD %M1
ST %Q0.1
LD %M2
ST %Q0.2
%M2 %Q0.2

...................
%I0.2
LD %I0.2
END ENDC Si %I0.2 = 1, finaliza
LD %M2 la exploración del
ST %Q0.2 programa.
%M2 %Q0.2
Si %I0.2 = 0, continúa
la exploración del
................... programa hasta que
se reciba de nuevo la
END END instrucción END.

TWD USE 10AS 329


Instrucciones básicas

Instrucción NOP

NOP La instrucción NOP no realiza ninguna operación. Utilícela para "reservar" líneas en
un programa para que pueda insertar instrucciones más adelante sin modificar los
números de línea.

330 TWD USE 10AS


Instrucciones básicas

Instrucciones de salto

Introducción Las instrucciones de salto provocan que la ejecución de un programa se interrumpa


inmediatamente y que continúe a partir de la línea después de la línea del programa
que contiene la etiqueta %Li (i = 1 a 63 para un compacto y de 1 a 63 para los
demás).

JMP, JMPC y Existen tres instrucciones de salto diferentes disponibles:


JMPCN l JMP: salto de programa incondicional
l JMPC: salto de programa si el resultado booleano de la lógica precedentes es 1
l JMPCN: salto de programa si el resultado booleano de la lógica precedentes es
0.

Ejemplos Ejemplos de instrucciones de salto

000 LD %M15
001 JMPC %L8 Salto a la etiqueta %L8 si
002 LD [%MW24>%MW12] %M15 está ajustado a 1
003 ST %M15
004 JMP %L12 Salto incondicional a la
005 %L8 : etiqueta %L12:
006 LD %M12
007 AND %M13
008 ST %M12
009 JMPCN %L12 Salto a la etiqueta %L12 si
010 OR %M11 %M12 está ajustado a 0
011 S %Q0.0
012 %L12 :
013 LD %I0.0

...............

TWD USE 10AS 331


Instrucciones básicas

Directrices l Las instrucciones de salto no están permitidas entre paréntesis y no deben


situarse entre las instrucciones AND(, OR(, y una instrucción de cierre de
paréntesis ")".
l La etiqueta sólo puede situarse entes de una instrucción LD, LDN, LDR, LDF o
BLK.
l El número de etiqueta de la etiqueta %Li debe definirse una sola vez en un
programa.
l El salto de programa se realiza hacia una línea de programación ubicada delante
o detrás. Cuando el salto está ubicado detrás, debe prestarse especial atención
al tiempo de ciclo del programa. Un tiempo de ciclo prolongado puede provocar
el arranque del watchdog.

332 TWD USE 10AS


Instrucciones básicas

Instrucciones de subrutina

Introducción Las instrucciones de subrutina hacen que un programa realice una subrutina y
regrese al programa principal.

SRn, SRn: y RET Las subrutinas constan de tres pasos:


l La instrucción SRn llama a la subrutina a la que hace referencia la etiqueta SRn
si el resultado de la instrucción boolearia precedente es 1.
l La subrutina se referencia mediante la etiqueta SRn:, donde n puede tener
cualquier valor comprendido entre 0 y 15 para TWDLCAA10DRF,
TWDLCAA16DRF y entre 0 y 63 para los demás autómatas.
l La instrucción RET situada al final de la subrutina devuelve el flujo de programas
al programa principal.

Ejemplo Ejemplos de instrucciones de subrutina.

000 LD %M15
001 AND %M5
002 ST %Q0.0
003 LD [%MW24>%MW12]
004 SR8 Salto hacia la subrutina SR8
005 LD %I0.4
006 AND M13
007 _
008 _
009 _
010 END

011 SR8:
012 LD 1
013 IN %TM0
014 LD [%TM0.Q]
015 ST %M15
010 RET Vuelta al programa principal

.....................

TWD USE 10AS 333


Instrucciones básicas

Directrices l Una subrutina no debe llamar a otra subrutina.


l Las instrucciones de subrutina no están permitidas entre paréntesis y no deben
situarse entre las instrucciones AND(, OR(, y una instrucción de cierre de
paréntesis ")".
l La etiqueta no sólo puede situarse antes de una instrucción LD o BLK marcando
el inicio de una ecuación boolearia (o escalón).
l La llamada a la subrutina no debe ir seguida por una instrucción de asignación.
Esto se debe a que es posible que la subrutina modifique el contenido del
acumulador booleario. Por lo tanto, es posible que, durante la respuesta, tenga
un valor diferente al que tenía antes de la llamada (consulte el siguiente
ejemplo).
Ejemplo de programación de una subrutina.

LD %I0.0
%I0.0 SR0
ST %Q0.0
>>%SR0

%Q0.0 LD %I0.0
ST %Q0.0
SR0

334 TWD USE 10AS


Instrucciones avanzadas

15
Presentación

Objeto Este capítulo proporciona detalles acerca de los bloques de función e instrucciones
utilizados para crear programas de control avanzados para controladores
programables Twido.

Contenido: Este capítulo contiene las siguientes secciones:


Sección Apartado Página
15.1 Bloques de función avanzados 336
15.2 Funciones de reloj 384
15.3 Función PID 395
15.4 Instrucciones de flotantes 431
15.5 Instrucciones sobre las tablas de objetos 443

TWD USE 10AS 335


Instrucciones avanzadas

15.1 Bloques de función avanzados

Presentación

Objeto Esta sección contiene una introducción a los bloques de función avanzados,
incluyendo ejemplos de programación.

Contenido Esta sección contiene los siguientes apartados:


Apartado Página
Objetos de palabra y de bit asociados a bloques de función avanzados 337
Principios de programación de bloques de función avanzados 339
Bloque de función de registro LIFO/FIFO (%Ri) 342
Operación LIFO 344
FIFO, funcionamiento 345
Programación y configuración de registros 346
Bloque de función de modulación de ancho de pulso (%PWM) 349
Bloque de función de la salida del generador de pulsos (%PLS) 353
Bloque de función del controlador del conmutador de tambor (%DR) 356
Operación del bloque de función del controlador del conmutador de tambor 358
%DRi
Programación y configuración de los controladores del conmutador de tambor 360
Bloque de función de contador rápido (%FC) 362
Bloque de función de contador muy rápido (%VFC) 365
Transmisión/recepción de mensajes: la instrucción de intercambio (EXCH) 379
Bloque de función de control de intercambio (%MSGx) 380

336 TWD USE 10AS


Instrucciones avanzadas

Objetos de palabra y de bit asociados a bloques de función avanzados

Introducción Los bloques de función avanzados utilizan palabras y bits especializados del mismo
tipo que los bloques de función estándar. Los bloques de función avanzados
incluyen:
l Registros LIFO/FIFO (%R);
l Controladores del conmutador de tambor (%DR);
l Contadores rápidos (%FC);
l Contadores muy rápidos;
l Salida de modulación de ancho de pulsos (%PWM);
l Salida del generador de pulsos (%PLS);
l Registro de bits de desplazamiento (%SBR);
l Contador de desplazamiento (%SC);
l Bloque de control de mensajes (%MSG).

Objetos La tabla siguiente contiene una vista general de las palabras y bits accesibles desde
accesibles a el programa y asociados con los diversos bloques de función avanzados. Tenga en
través del cuenta que el acceso de escritura que figura en la tabla depende del parámetro
programa "Ajustable" seleccionado durante la configuración. Con este ajuste se permite o se
deniega el acceso a las palabras o bits desde TwidoSoft o la interfaz del operador.
Bloque de Palabras y bits asociados Dirección Acceso
función en modo
avanzado escritura
%R Palabra Entrada de registro %Ri.I Sí
Palabra Salida de registro %Ri.O Sí
Bit Salida de registro lleno %Ri.F No
Bit Salida de registro vacío %Ri.E No
%DR Palabra Número del paso actual %DRi.S Sí
Bit El último paso equivale al paso %DRi.F No
actual
%FC Palabra Valor actual %FCi.V Sí
Palabra Valor preestablecido %FCi.P Sí
Bit Hecho %FCi.D No

TWD USE 10AS 337


Instrucciones avanzadas

Bloque de Palabras y bits asociados Dirección Acceso


función en modo
avanzado escritura
%VFC Palabra Valor actual %VFCi.V No
Palabra Valor preestablecido %VFCi.P Sí
Bit Dirección de conteo %VFCi.U No
Palabra Valor de captura %VFCi.C No
Palabra Valor de umbral 0 %VFCi.S0 Sí
Palabra Valor de umbral 1 %VFCi.S1 Sí
Bit Desborde %VFCi.F No
Bit Frecuencia calculada %VFCi.M Sí
Bit Salida refleja 0 habilitada %VFCi.R Sí
Bit Salida refleja 1 habilitada %VFCi.S Sí
Bit Salida de umbral 0 %VFCi.TH0 No
Bit Salida de umbral 1 %VFCi.TH1 No
Bit Base de tiempo de medida de %VFCi.T Sí
frecuencia
%PWM Palabra Porcentaje de pulsos en 1 con %PWMi.R Sí
relación al periodo total
Palabra Periodo preestablecido %PWMi.P Sí
%PLS Palabra Número de pulsos %PLSi.N Sí
Palabra Valor preestablecido %PLSi.P Sí
Bit Salida actual habilitada %PLSi.Q No
Bit Generación lista %PLSi.D No
%SBR Bit Bit de registro %SBRi.J No
%SC Bit Bit del contador de pasos %SCi.J Sí
%MSG Bit Hecho %MSGi.D No
Bit Error %MSGi.E No

338 TWD USE 10AS


Instrucciones avanzadas

Principios de programación de bloques de función avanzados

Presentación Las aplicaciones Twido se almacenan en forma de programas por listas, aunque
estas aplicaciones se escriban mediante un editor de Ladder Logic. Los autómatas
Twido también se pueden considerar como "máquinas de listas". El término
"reversibilidad" se refiere a la capacidad de TwidoSoft de representar una aplicación
de lista en formato Ladder Logic y de nuevo como aplicación de lista. De forma
predeterminada, todos los programas de Ladder Logic son reversibles.
Al igual que los bloques de función básicos, los bloques de función avanzados
también deben tener en cuenta las reglas de reversibilidad. Las instrucciones que
aparecen a continuación son necesarias para la estructura de los bloques de
función reversibles en lenguaje de lista.
l BLK: indica el inicio del bloque y la parte de entrada del bloque de función.
l OUT_BLK: indica el comienzo de la parte de salida del bloque de función.
l END_BLK: indica el final del bloque de función.

Nota: El uso de estas instrucciones de bloque de función reversible no es


obligatorio para que el programa de lista funcione correctamente. En lenguaje de
lista se pueden programar algunas instrucciones como no reversibles.

TWD USE 10AS 339


Instrucciones avanzadas

Entradas y Las funciones avanzadas Contador rápido (FC), Contador muy rápido (VFC), PLS
salidas y PWM emplean entradas y salidas especializadas. Estos bits no se reservan para
especializadas el uso exclusivo por parte de un bloque único. De hecho, se debe gestionar el uso
de estos recursos especializados.
Cuando utilice estas funciones avanzadas, deberá gestionar la asignación de las
entradas y salidas especializadas. Para ayudarle a configurar estos recursos,
TwidoSoft muestra detalles sobre la configuración de las entradas/salidas y avisa al
usuario si una entrada o salida especializada ya está siendo utilizada por otro
bloque de función configurado.
Las tablas siguientes resumen las dependencias de las entradas y salidas
especializadas y las funciones específicas.
Si se utilizan con funciones de conteo:
Entradas Uso
%I0.0.0 %VFC0: administración progresiva/regresiva o fase B
%I0.0.1 %VFC0: entrada de pulsos o fase A
%I0.0.2 %FC0: entrada de pulsos o entrada preestablecida %VFC0
%I0.0.3 %FC1: entrada de pulsos o entrada de captura %VFC0
%I0.0.4 %FC2: entrada de pulsos o entrada de captura %VFC1
%I0.0.5 %VFC1: entrada preestablecida
%I0.0.6 %VFC1: administración progresiva/regresiva o fase B
%I0.0.7 %VFC1: entrada de pulsos o fase A

Si se utilizan con funciones especiales o de conteo:


Salidas Uso
%Q0.00,0 Salida PWM0 o %PLS0
%Q0.00,1 Salida PWM1 o %PLS1
%Q0.00,2 Salidas reflejas para %VFC0
%Q0.0.3
%Q0.00,4 Salidas reflejas para %VFC1
%Q0.00,5

340 TWD USE 10AS


Instrucciones avanzadas

Utilización de las TwidoSoft aplica las siguientes reglas para el uso de entradas y salidas
entradas y especializadas.
salidas l Cada bloque de función que utilice E/S debe ser configurado y referenciado en
especializadas la aplicación. La E/S sólo se admite durante la configuración de un bloque de
función. No se admitirá durante su utilización en un programa.
l Una vez configurado un bloque de función, su entrada y salida especializadas no
pueden ser utilizadas por la aplicación o por otro bloque de función.
Por ejemplo, si configura %PLS0, no podrá utilizar %Q0.0.0 en %DR0
(controlador del conmutador de tambor) o en la lógica de la aplicación (es decir,
ST %Q0.0.0).
l Si un bloque de función necesita una entrada o salida especializada que ya está
siendo utilizada por la aplicación o por otro bloque de función, dicho bloque de
función no se podrá configurar.
Por ejemplo, si configura %FC0 como contador progresivo, no podrá configurar
%VFC0 para que utilice %I0.0.2 como entrada de captura.

Nota: Para modificar el uso de la E/S especializada, deberá deshacer la


configuración del bloque de función estableciendo el tipo de objeto en "no
utilizado" y, a continuación, eliminar las referencias al bloque de función en su
aplicación.

TWD USE 10AS 341


Instrucciones avanzadas

Bloque de función de registro LIFO/FIFO (%Ri)

Introducción Un registro es un bloque de memoria que puede almacenar hasta 16 palabras de


16 bits respectivamente de dos modos distintos:
l Cola (First In, First Out), conocida como FIFO
l Stack (Last In, First Out), conocido como LIFO

Ilustración A continuación se muestra una ilustración del bloque de función de registro.

%Ri
R E

I F
TIPO FIFO

Bloque de función de registro

342 TWD USE 10AS


Instrucciones avanzadas

Parámetros El bloque de función de registro tiene los siguientes parámetros:


Parámetro Etiqueta Valor
Número de registro %Ri 0a3
Tipo FIFO o Cola o stack
LIFO
Palabra de entrada %Ri.I Palabra de entrada del registro. Se puede leer, verificar
y escribir.
Palabra de salida %Ri.O Palabra de salida del registro. Se puede leer, verificar y
escribir.
Entrada de I (entrada) Con cada flanco ascendente, almacena el contenido de
almacenamiento (o la palabra %Ri.I en el registro.
instrucción)
Entrada (o O (salida) Con cada flanco ascendente, carga una palabra de
instrucción) de datos del registro en la palabra %Ri.O.
recuperación
Restablecer entrada R Con el estado 1, inicializa el registro.
(o instrucción) (restableci
miento)
Salida vacía E (vacío) El bit asociado %Ri.E indica que el registro está vacío.
Se puede verificar.
Salida llena F (llena) El bit asociado %Ri.F indica que el registro está lleno.
Se puede verificar.

TWD USE 10AS 343


Instrucciones avanzadas

Operación LIFO

Introducción En la operación LIFO (Last In, First Out), el último elemento de datos introducido es
el primero que se recupera.

Funcionamiento En la siguiente tabla se describe la operación LIFO.


Paso Descripción Ejemplo
1 Cuando se recibe una solicitud
Almacenamiento de los contenidos de
de almacenamiento (flanco %Ri.I en la parte superior del stack.
ascendente en la entrada I o
activación de la instrucción I), el 20
contenido de la palabra de
entrada %Ri.I (que ya está %Ri.I
cargada) se almacena en la (a) 20
parte superior del stack (fig. a). 80
Cuando el stack está lleno 50
(salida F=1) no es posible
continuar el almacenamiento.
2 Cuando se recibe una solicitud
Recuperación de la palabra de
de recuperación (flanco
datos más alta del stack.
ascendente en la entrada
O o activación de la instrucción
O), la palabra de datos superior
%Ri.O
(la última palabra introducida) 20 20
se carga en la palabra %Ri.0 80 (b)
(fig. b). Cuando el registro está 50
vacío (salida E=1) no es posible
continuar la recuperación. La
palabra de salida %Ri.O no se 80
modifica y conserva su último 50
valor.
3 El stack se puede restablecer
en cualquier momento (estado
1 en la entrada R o activación
de la instrucción R). El
elemento señalado por el
pointer ocupa el lugar superior
en el stack.

344 TWD USE 10AS


Instrucciones avanzadas

FIFO, funcionamiento

Introducción En la operación FIFO (First In, First Out), el primer elemento de datos introducido
es el primero que se recupera.

Funcionamiento En la siguiente tabla se describe la operación FIFO.


Paso Descripción Ejemplo
1 Cuando se recibe una solicitud
Almacenamiento de los contenidos de
de almacenamiento (flanco %Ri.I en la parte superior de la cola.
ascendente en la entrada I o
activación de la instrucción I), 20
el contenido de la palabra de
entrada %Ri.I (que ya está %Ri.I
cargada) se almacena en la (a) 20
parte superior de la cola (fig. a). 80
Cuando la cola está llena 50
(salida F=1) no es posible
continuar el almacenamiento.
2 Cuando se recibe una solicitud
Recuperación del primer
de recuperación (flanco
elemento de datos que se
ascendente en la entrada O o carga después en %Ri.O.
activación de la instrucción O),
la palabra de datos inferior de (b)
20
la cola se carga en la palabra
80 %Ri.O
de salida %Ri.O y el contenido
50 50
del registro se desplaza una
posición hacia abajo en la cola
(fig. b). 20
Cuando el registro está vacío
80
(salida E=1) no es posible
continuar la recuperación. La
palabra de salida %Ri.O no se
modifica y conserva su último
valor.
3 La cola se puede restablecer
en cualquier momento (estado
1 en la entrada R o activación
de la instrucción R).

TWD USE 10AS 345


Instrucciones avanzadas

Programación y configuración de registros

Introducción El siguiente ejemplo de programación contiene el contenido de una palabra de


memoria (%MW34) que se carga en un registro (%R2.I) con la solicitud de
almacenamiento %I0.2 si el registro %R2 no está lleno (%R2.F = 0). La solicitud de
almacenamiento en el registro se realiza mediante %M1. La solicitud de
recuperación se realiza mediante la entrada %I0.3, y %R2.O se carga en %MW20
si el registro no está vacío (%R2.E = 0).

346 TWD USE 10AS


Instrucciones avanzadas

Ejemplo de En la siguiente ilustración se muestra un bloque de función de registro con ejemplos


programación de programación reversibles y no reversibles.

R %R2 E
%M1
I F

%I0.3 TIPO FIFO


O

%I0.3 %R2.E
%MW20:=%R2.O
%I0.2 %R2.F
%R2.I:=%MW34
%M1

Diagrama Ladder Logic

BLK %R2 LD %M1


LD %M1 I %R2
I LD %I0.3
LD %I0.3 O %R2
O ANDN %R2.E
END_BLK [%MW20:=%R2.O]
LD %I0.3 LD %I0.2
ANDN %R2.E ANDN %R2.F
[%MW20:=%R2.O] [%R2.I:=%MW34]
LD %I0.2 ST %M1
ANDN %R2.F
[%R2.I:=%MW34]
ST %M1

Programa reversible Programa no reversible

TWD USE 10AS 347


Instrucciones avanzadas

Configuración El único parámetro que se debe introducir durante la configuración es el tipo de


registro:
l FIFO (predeterminado) o
l LIFO

Casos La tabla siguiente contiene una lista de casos específicos de operación:


especiales
Caso especial Descripción
Efecto de un reinicio en frío (%S0=1) Inicializa el contenido del registro. El bit de salida
%Ri.E asociado a la salida E se pone a 1.
Efecto de un reinicio en caliente No tiene ningún efecto sobre el valor actual del
(%S1=1) de una detención del registro ni sobre el estado de sus bits de salida.
controlador

348 TWD USE 10AS


Instrucciones avanzadas

Bloque de función de modulación de ancho de pulso (%PWM)

Introducción El bloque de función de modulación de ancho de pulso (%PWM) genera una señal
rectangular en las vías de salida especializadas (%Q0.0.0 o %Q0.0.1), cuya
longitud se puede modificar, y, por lo tanto, el ratio cíclico. Los autómatas con
salidas de relé para estos dos canales no admiten esta función debido a una
limitación de frecuencia.
Hay dos bloques %PWM disponibles. El bloque %PWM0 utiliza la salida
especializada %Q0.0.0, mientras que el bloque %PMW1 utiliza la salida
especializada %Q0.0.1. Los bloques de función %PLS comparten las mismas
salidas especializadas. Por lo tanto, hay que seleccionar una u otra función.

Ilustración Bloque PWM y cronograma:

%PWM0
IN
Ancho programable
Tp
TB
%PWMi.P
Periodo fijo
configurable
T

TWD USE 10AS 349


Instrucciones avanzadas

Parámetros En la tabla siguiente se enumeran los parámetros del bloque de función PWM.
Parámetro Etiqueta Descripción
Base de tiempo TB 0,142 ms, 0,57 ms, 10 ms, 1 s (valor predeterminado)
Preselección del %PWMi.P 0 < %PWMi.P <= 32767 con una base de tiempo de 10 ms
periodo o1s
0 < %PWMi.P <= 255 con una base de tiempo de 0,57 ms
o 0,142 ms
0 = Función no utilizada.
Ratio cíclico %PWMi.R Este valor indica el porcentaje de la señal en estado 1 en
un periodo. Por lo tanto, el ancho Tp es igual a:
Tp = T * (%PWMi.R/100). La aplicación del usuario escribe
el valor de %PWMi.R. Esta palabra controla el ratio cíclico
del periodo. Para obtener la definición de T, consulte
"Rango de periodos" en la siguiente sección.
El valor predeterminado es 0. Los valores superiores a
100 se consideran iguales a 100.
Entrada de IN En estado 1, la señal de modulación de ancho de pulso se
generación del genera en el canal de salida. En estado 0, el canal de
pulso salida se pone a 0.

Rango de El valor preestablecido y la base de tiempo se pueden modificar durante la


periodos configuración. Se utilizan para fijar el periodo de señal T=%PWMi.P * TB. Cuanto
menores sean los ratios que se deban obtener, mayor deberá ser el %PWMi.P
seleccionado. Rango de periodos disponibles:
l De 0,142 ms a 36,5 ms en pasos de 0,142 ms (de 27,4 Hz a 7 kHz)
l De 0,57 ms a 146 ms en pasos de 0,57 ms (de 6,84 Hz a 1,75 kHz)
l De 10 ms a 5,45 min. en pasos de 10 ms
l De 1 s a 9,1 horas en pasos de 1 s

350 TWD USE 10AS


Instrucciones avanzadas

Funcionamiento La frecuencia de la señal de salida se regula durante la configuración, al seleccionar


la base de tiempo y el %PWMi.P preajustado. La modificación del ratio cíclico %
PWMi.R en el programa permite cambiar el ancho de la señal. En la ilustración
siguiente se muestra un diagrama de pulsos para el bloque de función PWM con
diferentes ratios cíclicos.

Entrada IN
80%
50%

20%
Ratio

Salida especializada

Programación y En este ejemplo, el programa modifica el ancho de señal de acuerdo con el estado
configuración de las entradas del autómata %I0.0.0 y %I0.0.1.
Si %I0.0.1 y %I0.0.2 se ponen a 0 y el ratio %PWM0.R se ajusta al 20%, la duración
de la señal en estado 1 será: 20% x 500 ms = 100 ms.
Si %I0.0.0 se pone a 0 y %I0.0.1 se pone a 1, el ratio %PWM0.R se ajusta al 50%
(duración 250 ms).
Si %I0.0.0 y %I0.0.1 se ponen a 1, el ratio %PWM0.R se pone al 80% (duración 400
ms).
Ejemplo de programación:
%I0.0 %I0.1 LDN %I0.0
/ / %PWM0.R:=20 ANDN %I0.1
[%PWM0.R:=20]
%I0.0 %I0.1 LD %I0.0
/ %PWM0.R:=50 ANDN %I0.1
[%PWM0.R:=50]
%I0.0 %I0.1 LD %I0.0
AND %I0.1
%PWM0.R:=80 [%PWM0.R:=80]
BLK %PWM0
%I0.2 %PWM0 LD %I0.2
IN
IN
END_BLK

TB
%PWMi0.P

TWD USE 10AS 351


Instrucciones avanzadas

Casos La tabla siguiente muestra una lista de casos específicos de funcionamiento del
específicos bloque de función PWM.
Caso específico Descripción
Efecto de un reinicio en frío (%S0=1) Ajusta el ratio %PWMi.R a 0. Además, el valor de
%PWMi.R se restablece al valor configurado en un
principio, y esto prevalecerá sobre cualquier cambio
efectuado con el editor de tablas de animación o el
monitor de operación opcional.
Efecto de un reinicio en caliente No tiene ningún efecto.
(%S1=1)
Incidencia del hecho de que las salidas Si se fuerza la salida %Q0.0.0 o %Q0.0.1 mediante
sean específicas del bloque %PWM un dispositivo de programación, no se detiene la
generación de la señal.

352 TWD USE 10AS


Instrucciones avanzadas

Bloque de función de la salida del generador de pulsos (%PLS)

Introducción El bloque de función %PLS se utiliza para generar señales de onda cuadradas. Los
canales de salida especializados %Q0.0.0 o %Q0.0.1 disponen de dos funciones
%PLS. El bloque de función %PLS sólo permite un ancho de onda de la señal
simple, o ciclo de servicio, de 50%. Puede limitar el número de pulsos o el periodo
en que se ejecutará el tren de pulso. Éste se puede determinar en el momento de
la configuración o de la actualización desde la aplicación de usuario.

Nota: Los autómatas con salida de relé para estos dos canales no admiten la
función %PLS.

Representación Ejemplo del bloque de función del generador de pulsos:

%PLS0 TON
IN Q

TB
%PLSi.P
Periodo de la variable
T
Ajuste

R D

l TON=T/2 para las bases de tiempo 0,142 ms y 0,57ms


= (%PLSi.P*TB)/2
l TON=[parte entera(%PLSi.P)/2]*TB para las bases de tiempo de 10 ms a 1 s.

TWD USE 10AS 353


Instrucciones avanzadas

Características La tabla que aparece a continuación contiene las características del bloque de
función PLS:
Función Objeto Descripción
Base de TB 0,142 ms, 0,57 ms, 10 ms, 1 seg
tiempo
Periodo %PLSi.P Los pulsos de la salida %PLS1 no se detienen mientras se
preestablec alcanza %PLS1.N con las bases de tiempo 0,142 ms y 0,57 ms..
ido l 1 < %PLSi.P <= 32767 con una base de tiempo de 10 ms o 1
seg
l 0 < %PLSi.P <= 255 con una base de tiempo de 0,57 ms o
0,142 ms
l 0 = Función no utilizada.
Para obtener un informe cíclico preciso con bases de tiempo de
10 ms y 1s, se aconseja tener un %PLSi >= 100 si P es impar.
Número de %PLSi.N El número de pulsos que se generan en un periodo T puede
pulsos limitarse a 0 < %PLSi.N < 32767. Está establecido en 0 de forma
predeterminada.
Para generar un número ilimitado de pulsos, %PLSi.N se
establece a cero. El número de pulsos siempre puede
modificarse, independientemente del valor de la opción Ajustable.
Ajustable Y/N Si se establece a Y, es posible modificar el valor preestablecido
%PLSi.P mediante el monitor de operación o el editor de tablas de
animación. Si se establece a N indica que no se puede acceder al
valor preestablecido.
Entrada de IN En estado 1, la generación de pulsos se realiza en el canal de
generación salida especializada. En estado 0, el canal de salida se pone a 0.
de pulsos
Restablece R Con el estado 1, las salidas %PLSi.Q y %PLSi.D se ponen a 0. El
r entrada número de pulsos generado en el periodo T se pone a 0.
Generación %PLSi.Q El estado 1 indica que la generación de pulsos se realiza en el
de salida de canal de salida especializada configurada.
pulsos
actuales
Salida de %PLSi.D En estado 1, la generación de la señal ha concluido. Se ha
generación alcanzado el número de pulsos deseados.
de pulsos
concluida

354 TWD USE 10AS


Instrucciones avanzadas

Rango de El valor preestablecido y la base de tiempo se pueden modificar durante la


periodos configuración. Se utilizan para fijar el periodo de señal T=%PLSi.P * TB. Rango de
periodos disponibles:
l De 0,142 ms a 36,5 ms en pasos de 0,142 ms (de 27,4 Hz a 7 kHz)
l De 0,57 ms a 146 ms en pasos de 0,57 ms (de 6,84 Hz a 1,75 kHz)
l De 20 ms a 5,45 min en pasos de 10 ms
l De 2 s a 9,1 horas en pasos de 1 s

Funcionamiento A continuación se muestra una ilustración de un bloque de función %PLS.

Entrada IN

Número de pulsos
Salida especializada
%PLSi.Q
%PLSi.D

Casos
específicos
Caso específico Descripción
Efecto de un reinicio en frío Establece el %PLSi.P en el valor definido durante la
(%S0=1) configuración
Efecto de un reinicio en No tiene ningún efecto.
caliente (%S1=1)
Efecto de modificar el valor Entra en vigor inmediatamente
preestablecido (%PLSi.P)
Incidencia del hecho de que Si se fuerza la salida %Q0.0.0 o %Q0.0.1 mediante un
las salidas sean específicas dispositivo de programación, no se detiene la generación de
del bloque %PLS la señal.

Nota: %PLSx.D se establece cuando se ha alcanzado el número de pulsos


deseado. Se restablece poniendo las entradas IN o R a 1.

TWD USE 10AS 355


Instrucciones avanzadas

Bloque de función del controlador del conmutador de tambor (%DR)

Introducción El controlador del conmutador de tambor funciona según un principio similar a un


controlador del conmutador de tambor electromecánico con cambios de pasos
asociados a eventos externos. En cada paso, el punto superior de una leva
proporciona un comando que es ejecutado por el autómata. En el caso de un
controlador del conmutador de tambor, estos puntos superiores se simbolizan
mediante el estado 1 para cada paso y se asignan a bits de salida %Qi.j o bits
internos %Mi, conocidos como bits de control.

Ilustración A continuación se muestra una ilustración del bloque de función del controlador del
conmutador de tambor.

%DRi
R F

U
STEPS 8

Bloque de función del controlador


del conmutador de tambor

356 TWD USE 10AS


Instrucciones avanzadas

Parámetros El bloque de función del controlador del conmutador de tambor tiene los siguientes
parámetros.
Parámetro Etiqueta Valor
Número %DRi 0 a 3 para controladores compactos; 0 a 7 para
controladores modulares.
Número del paso actual %DRi.S 0<%DRi.S<7. Palabra que se puede leer y escribir.
El valor escrito debe ser un valor inmediato
decimal. Cuando se escribe, el efecto se produce
en la siguiente ejecución del bloque de función.
Cantidad de pasos 1 a 8 (predeterminado)
Entrada de retorno al R En estado 1, ajusta el controlador del conmutador
paso 0 (o a la (Restableci de tambor al paso 0.
instrucción) miento)
Entrada (o instrucción) U (alta) Con un flanco ascendente, hace que el controlador
de avance del conmutador de tambor avance un paso y
actualiza los bits de control.
Salida F (llena) Indica que el paso actual equivale al último paso
definido. El bit asociado %DRi.F se puede verificar
(por ejemplo, %DRi.F=1, si %DRi.S= cantidad de
pasos configurada - 1).
Bits de control Salidas o bits internos asociados al paso (16 bits de
control) y definidos en el editor de configuración.

TWD USE 10AS 357


Instrucciones avanzadas

Operación del bloque de función del controlador del conmutador de tambor


%DRi

Introducción El controlador del conmutador de tambor está compuesto por:


l Una matriz de datos constantes (CAM) organizada en ocho pasos (de 0 a 7) y 16
bits de datos (estado del paso) distribuidos en columnas numeradas (de 0 a F).
l Se asocia una lista de los bits de control a una salida configurada (%Qi.j.k) o a
una palabra de memoria (%Mi). En el transcurso del paso actual, los bits de
control adquieren los estados binarios definidos para este paso.
El ejemplo de la tabla siguiente resume las principales características del
controlador del conmutador de tambor.
Columna 0 1 2 D E F
Bits de %Q0,1 %Q0,3 %Q1,5 %Q0,6 %Q0,5 %Q1,0
control
Paso 0 0 0 1 1 1 0
Paso 1 1 0 1 1 0 0

Paso 5 1 1 1 0 0 0
Paso 6 0 1 1 0 1 0
Paso 7 1 1 1 1 0 0

Funcionamiento En el ejemplo anterior, el paso 5 es el paso actual; los bits de control %Q0.1, %Q0.3
y %Q1.5 se ajustan al estado 1; los bits de control %Q0.6, %Q0.5 y %Q1.0 se
ajustan al estado 0. El número del paso actual se incrementa de uno en uno con
cada flanco ascendente en la entrada U (o con la activación de la instrucción U). El
programa puede modificar el paso actual.

358 TWD USE 10AS


Instrucciones avanzadas

Cronograma El cronograma siguiente muestra el funcionamiento del conmutador de tambor.

Entrada U:

Entrada R:

Nº de paso %DRi.S 0 1 2 3 L-1 0 1 2 0 1

Salida %DRi.F

Casos La tabla siguiente contiene una lista de casos especiales para la operación del
especiales controlador del conmutador de tambor.
Caso especial Descripción
Efectos de un reinicio en Restablece el conmutador de tambor cíclico al paso 0
frío (%S0=1) (actualización de los bits de control).
Efecto de un reinicio en Actualiza los bits de control después del paso actual.
caliente (%S1=1)
Efecto de un salto del Al no explorar el conmutador de tambor cíclico, los bits de control
programa no se ponen a cero.
Actualización de los bits Sólo ocurre cuando se produce un cambio de paso o un reinicio
de control en frío o en caliente.
Efecto de las Si hay un controlador del conmutador de tambor entre dos
instrucciones MCS/MCR instrucciones MCS/MCR, quiere decir que los bits de control se
del relé de control de restablecen a 0 si el resultado booleario de la instrucción que
master precede a la instrucción MCS es 0.

TWD USE 10AS 359


Instrucciones avanzadas

Programación y configuración de los controladores del conmutador de tambor

Introducción En el siguiente ejemplo de programación y configuración del controlador de tambor,


las seis primeras salidas, de %Q0.0 a %Q0.5, se activan sucesivamente cada vez
que la entrada %I0.1 se pone a 1. La entrada I0.0 restablece las salidas en cero.

Ejemplo de La siguiente ilustración es un bloque de función del controlador del conmutador de


programación tambor con ejemplos de programación reversibles y no reversibles.

%I0.0 %Q0.8
%DR1
R F

%I0.1
U
STEPS 6

Diagrama Ladder Logic

BLK %DR1
LD %I0.0
R
LD %I0.1
U
OUT_BLK
LD F
ST %Q0.8
END_BLK

360 TWD USE 10AS


Instrucciones avanzadas

Configuración Durante la configuración se define la siguiente información:


l Cantidad de pasos: 6
l Los estados de salida (bits de control) para cada paso del controlador del
conmutador de tambor.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Etapa 1: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Etapa 2: 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Etapa 3: 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Etapa 4: 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Etapa 5: 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
Etapa 6: 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0

l Asignación de los bits de control.

1 : %Q0.0 4 : %Q0.1
2 : %Q0.2 5 : %Q0.3
3 : %Q0.4 6 : %Q0.5

TWD USE 10AS 361


Instrucciones avanzadas

Bloque de función de contador rápido (%FC)

Introducción El bloque de función de contador rápido (%FC) se puede utilizar como contador
progresivo o regresivo. Puede contar el flanco ascendente de las entradas digitales
con una frecuencia de hasta 5 kHz. Dado que los contadores rápidos son
gestionados por interrupts de hardware específicos, mantener las tasas de
muestreo a frecuencia máxima puede variar en función de la configuración de
hardware y la aplicación específica.
Los controladores compactos se pueden configurar para utilizar un máximo de tres
contadores rápidos, mientras que los controladores modulares sólo pueden usar un
máximo de dos. Los bloques de función de contador rápido %FC0, %FC1 y %FC2
utilizan las entradas especializadas %I0.0.2, %I0.0.3 y %I0.0.4 respectivamente.
Estos bits no están reservados para su uso exclusivo. Para su asignación se debe
tener en cuenta el uso de estos recursos especializados por parte de otros bloques
de función.

Ilustración A continuación se muestra un ejemplo de un bloque de función de contador rápido.

%FC0
IN D

TYPE
ADJ
%FC0.P

362 TWD USE 10AS


Instrucciones avanzadas

Parámetros En la tabla siguiente se enumeran los parámetros del bloque de función de contador
rápido.
Parámetro Etiqueta Descripción
Función TYPE Seleccionado durante la configuración. Se puede ajustar a
contador regresivo o progresivo.
Valor %FCi.P Valor inicial ajustado entre 1 y 65.535.
preestablecid
o
Ajustable Y/N Si se pone a Y, es posible modificar el valor preestablecido
%FCi.P y %FCi.V con el monitor de operación o el editor de
tablas de animación. Si se pone a N no es posible acceder al
valor preestablecido.
Valor actual %FCi.V El valor actual evoluciona de manera creciente o decreciente
según la función de conteo seleccionada. Para el conteo
progresivo, el valor actual se restablece a cero y cuenta hasta
65.536. Para el conteo regresivo, el valor actual se restablece al
valor preestablecido %FCi.P y cuenta hasta cero.
Entrada de IN Con estado 1, el valor actual se actualiza de acuerdo con los
validación pulsos aplicados a la entrada física. Con estado 0, el valor
actual se mantiene con su último valor.
Puesta a cero %FCi.R Utilizado para inicializar el bloque. Con el estado 1, el valor
actual se restablece a 0 si está configurado como un contador
progresivo, o a %FCi.P si está configurado como un contador
regresivo. El bit de finalización %FCi.D se restablece a su valor
predeterminado.
Hecho %FCi.D Este bit se pone a 1 cuando %FCi.V alcanza el %FCi.P si está
configurado como contador progresivo o cuando %FCi.V
alcanza cero si está configurado como contador regresivo.
Este bit de sólo lectura sólo se restablece ajustando %FCi.R a 1.

Nota especial Si se configura como ajustable, la aplicación puede cambiar el valor preestablecido
%FCi.P y el valor actual %FCi.V en cualquier momento. Sin embargo, los valores
nuevos sólo se tienen en cuenta si está activo el restablecimiento de entrada o con
un flanco ascendente de la salida %FCi.D. Esto permite que se realicen conteos
sucesivos diferentes sin perder ni un solo pulso.

TWD USE 10AS 363


Instrucciones avanzadas

Funcionamiento Si está configurado como contador progresivo, el valor actual se incrementa en 1


con cada flanco ascendente que aparezca en la entrada especializada. Si se
alcanza el valor preestablecido %FCi.P, el bit de salida Hecho %FCi.D se pone a 1
y el valor actual %FCi.V es igual a cero.
Si está configurado como contador regresivo, el valor actual se reduce en 1 con
cada flanco ascendente que aparezca en la entrada especializada. Si el valor es
igual a cero, el bit de salida Hecho %FCi.D se pone a 1 y el valor actual es igual al
valor preestablecido %FCi.P.

Configuración y En este ejemplo, la aplicación cuenta el número de elementos (hasta 5.000),


programación mientras %I1.1 se pone a 1. La entrada para %FC0 es la entrada especializada
%I0.0.2. Cuando se alcanza el valor preestablecido, %FC0.D se pone a 1 y
permanece así hasta que se restablece %FC0.R mediante el resultado de la
operación boolearia AND de %I1.2 y %M0.
%I1.1 %Q0.0
IN D BLK %FC0
%FC0
LD %I1.1
IN
TYPE UP LD %I1.2
I1.2 %M0 ADJY AND %MO
R %FC0.P 5000 R
OUT_BLK
LD D
ST %Q0.0
END_BLK

Casos La tabla siguiente muestra una lista de casos específicos de funcionamiento del
especiales bloque de función %FC.
Caso especial Descripción
Efecto de un reinicio en frío Restablece todos los atributos %FC con los valores
(%S0=1) configurados por el usuario o la aplicación de usuario.
Efecto de un reinicio en caliente No tiene ningún efecto.
(%S1=1)
Efecto de una detención del El %FC continúa contando con los ajustes de
autómata parámetros válidos en el momento en que se detiene
el autómata.

364 TWD USE 10AS


Instrucciones avanzadas

Bloque de función de contador muy rápido (%VFC)

Introducción El bloque de función de contador muy rápido (%VFC) se puede configurar mediante
TwidoSoft para realizar una de las siguientes funciones:
l Contador progresivo/regresivo
l Contador bifásico progresivo/regresivo
l Contador progresivo individual
l Contador regresivo individual
l Frecuencímetro
El %VFC se encarga del conteo de las entradas digitales para frecuencia de hasta
20 kHz. Los autómatas compactos pueden configurar un contador muy rápido
(%VFC) y los autómatas modulares pueden configurar hasta dos contadores muy
rápidos (%VFC).

TWD USE 10AS 365


Instrucciones avanzadas

Asignaciones de Los bloques de función de contadores muy rápidos (%VFC) utilizan entradas
E/S especializadas y entradas y salidas auxiliares. Estas entradas y salidas no están
especializadas reservadas para su uso exclusivo. Para su asignación se debe tener en cuenta el
uso de estos recursos especializados por parte de otros bloques de función. En la
tabla siguiente se resumen estas asignaciones:
Entradas principales Entradas auxiliares Salidas reflejas
%VFC0 Uso seleccionado Entrada Entrada IB IPres Ica Salida 0 Salida 1
IA
Contador progresivo/ %I0.0.1 %I0.0.0 %I0.0.2 (1) %I0.0.3 (1) %Q0.0.2 (1) %Q0.0.3 (1)
regresivo (UP=0/DO=1)
Contador progresivo/ %I0.0.1 %I0.0.0 %I0.0.2 (1) %I0.0.3 (1) %Q0.0.2 (1) %Q0.0.3 (1)
regresivo bifásico (Pulso)
Contador progresivo %I0.0.1 (2) %I0.0.2 (1) %I0.0.3 (1) %Q0.0.2 (1) %Q0.0.3 (1)
individual
Contador regresivo %I0.0.1 (2) %I0.0.2 (1) %I0.0.3 (1) %Q0.0.2 (1) %Q0.0.3 (1)
individual
Frecuencímetro %I0.0.1 (2) (2) (2) (2) (2)
%VFC1 Uso seleccionado Entrada Entrada IB IPres Ica Salida 0 Salida 1
IA
Contador progresivo/ %I0.0.7 %I0.0.6 %I0.0.5 (1) %I0.0.4 (1) %Q0.0.4 (1) %Q0.0.5 (1)
regresivo (UP = 0/DO =
1)
Contador progresivo/ %I0.0.7 %I0.0.6 %I0.0.5 (1) %I0.0.4 (1) %Q0.0.4 (1) %Q0.0.5 (1)
regresivo bifásico (Pulso)
Contador progresivo %I0.0.7 (2) %I0.0.5 (1) %I0.0.4 (1) %Q0.0.4 (1) %Q0.0.5 (1)
individual
Contador regresivo %I0.0.7 (2) %I0.0.5 (1) %I0.0.4 (1) %Q0.0.4 (1) %Q0.0.5 (1)
individual
Frecuencímetro %I0.0.7 (2) (2) (2) (2) (2)
Comentarios:
(1) = opcional Entrada IA = entrada de pulsos
(2) = no utilizado Entrada IB = pulsos o UP/DO
Ipres = entrada preestablecida UP/DO = conteo progresivo/regresivo
Ica= entrada de captura
Si no se utiliza, la entrada o salida permanece como E/S digital normal que puede ser
gestionada por la aplicación en el ciclo principal.

Si se utiliza %I0.0.2, %FC0 no está disponible.


Si se utiliza %I0.0.3, %FC2 no está disponible.
Si se utiliza %I0.0.4, %FC3 no está disponible.

366 TWD USE 10AS


Instrucciones avanzadas

Ilustración En la figura siguiente se muestra una representación de bloque del contador muy
rápido (%VFC).

%VFC0
IN F
TYPE
T_OUT0 U
T_OUT1
ADJ
%VFC0.P TH0

S TH1

TWD USE 10AS 367


Instrucciones avanzadas

Características En la tabla siguiente se enumeran las características del bloque de función de


contador muy rápido (%VFC).
Función Descripción Valores Uso del Acceso en
%VFC ejecución
Valor actual El valor actual se incrementa o se reduce según las 0 -> 65535 CM Lectura
(%VFCi.V) entradas físicas y la función seleccionada. Este valor se
puede preseleccionar o inicializar mediante la entrada
preestablecida (%VFCi.S).
Valor Sólo se utiliza con la función de conteo progresivo/ 0 -> 65535 CM o FM Lectura y
preestablecid regresivo, así como el conteo progresivo y el conteo escritura (1)
o regresivo individuales.
(%VFCi.P)
Valor de Sólo se utiliza con la función de conteo progresivo/ 0 -> 65535 CM Lectura
captura regresivo, así como el conteo progresivo y el conteo
(%VFCi.C) regresivo individuales.
Dirección de Este bit, ajustado por el sistema, se utiliza con la función 0 (conteo CM Lectura
conteo de conteo progresivo/regresivo para indicar al usuario la regresivo)
(%VFCi.U) dirección de conteo: 1 (conteo
Como contador progresivo/regresivo, %I0.0.0 decide la progresivo)
dirección de %VFC0, y %I0.0.6 la de %VFC1.
Para un contador progresivo/regresivo bifásico, la
diferencia de fase entre las dos señales determina el
sentido de conteo.
Para %VFC0, %I0.0 es específico para IB y %I0.1 para
IA. Para %VFC1, %I0.6 es específico para IB y %I0.7
para IA.
Habilitar Validación de salida refleja 0 0 (desactivado) CM Lectura y
salida refleja 1 (activado) escritura (2)
0
(%VFCi.R)
Habilitar Validación de salida refleja 1 0 (desactivado) CM Lectura y
salida refleja 1 (activado) escritura (2)
1
(%VFCi.S)
Valor de Contiene el valor del umbral 0. Su significado se define 0 -> 65535 CM Lectura y
umbral S0 en la configuración del bloque de función. Nota: Este escritura (1)
(%VFCi.S0) valor debe ser inferior a %VFCi.S1.
Valor de Contiene el valor del umbral 0. Su significado se define 0 -> 65535 CM Lectura y
umbral S1 en la configuración del bloque de función. Nota: Este escritura (1)
(%VFCi.S1) valor debe ser superior a %VFCi.S0.

368 TWD USE 10AS


Instrucciones avanzadas

Función Descripción Valores Uso del Acceso en


%VFC ejecución
Base de Elemento de configuración de la base de tiempo (100 o 1.000 o 100 FM Lectura y
tiempo de 1.000 milisegundos). escritura (1)
medida de
frecuencia
(%VFCi.T)
Ajustable Elemento configurable que, cuando está seleccionado, N (No) CM o FM No
(Y/N) permite al usuario modificar los valores de base de Y (Sí)
tiempo de frecuencia de medida, de umbral y
preestablecidos que se están ejecutando.
Entrada de Se utiliza para validar o bloquear la función actual. 0 (No) CM o FM Lectura y
validación escritura (3)
(IN)
Entrada Según la configuración en el estado 1: 0o1 CM o FM Lectura y
predefinida l Conteo progresivo/regresivo o conteo regresivo: escritura
(S) inicializa el valor actual con el valor preestablecido.
l Conteo progresivo individual: restablece el valor
actual a cero.
Además, inicializa la operación de las salidas de umbral
y tiene en cuenta cualquier modificación por parte del
usuario de los valores de umbral definidos por el monitor
de operación o el programa de usuario.
Salida de Se pone a 1 si %VFCi.V pasa de 0 a 65.535 o de 65.535 0o1 CM Lectura
desborde a 0. Este valor se pone a 0 cuando el valor
(F) preestablecido se define mediante una entrada digital o
una instrucción S, o durante un rearranque en frío.
Umbral Se pone a 1 cuando el valor actual es mayor o igual que 0o1 CM Lectura
Bit 0 el valor de umbral %VFCi.S0. Es recomendable
(%VFCi.TH0) comprobar este bit una sola vez en el programa, ya que
se actualiza en tiempo real. La aplicación de usuario es
la responsable de la validez del valor en el momento de
su uso.
Umbral Se pone a 1 cuando el valor actual es mayor o igual que 0o1 CM Lectura
Bit 1 el valor de umbral %VFCi.S1. Es recomendable
(%VFCi.TH1) comprobar este bit una sola vez en el programa, ya que
se actualiza en tiempo real. La aplicación de usuario es
la responsable de la validez del valor en el momento de
su uso.

(1) Sólo se puede escribir si la función de ajuste se pone a uno.


(2) El acceso sólo está disponible si se ha configurado.

TWD USE 10AS 369


Instrucciones avanzadas

(3) Sólo se dispone de acceso en lectura y escritura desde la aplicación. No se


puede acceder desde el Monitor de operación o el Editor de tablas de animación.
CM = modo de conteo
FM = modo de frecuencímetro

Descripción de la La función de conteo muy rápido (%VFC) funciona a una frecuencia máxima de 20
función de kHz y para un rango de valores de 0 a 65.535. Los pulsos que se van a contar se
conteo aplican del modo siguiente.
Tabla:
Función Descripción %VFC0 %VFC1
IA IB IA IB
Contador Los pulsos se aplican a la entrada física; la operación %I0.0.1 %I0.0.0 %I0.0.7 %I0.0.6
progresivo/ actual (conteo progresivo/regresivo) se define
regresivo mediante el estado de la entrada física IB.
Contador Las dos fases del codificador se aplican a las %I0.0.1 %I0.0.0 %I0.0.7 %I0.0.6
progresivo/ entradas físicas IA e IB.
regresivo bifásico
Contador Los pulsos se aplican a la entrada física IA. IB no se %I0.0.1 NA %I0.0.7 NA
progresivo utiliza.
individual
Contador regresivo Los pulsos se aplican a la entrada física IA. IB no se %I0.0.1 NA %I0.0.7 NA
individual utiliza.

370 TWD USE 10AS


Instrucciones avanzadas

Notas sobre los Las operaciones de conteo progresivo o regresivo se realizan en el flanco
bloques de ascendente de los pulsos y sólo si el bloque de conteo está activado.
función Hay dos entradas opcionales que se utilizan en el modo de conteo: ICa e IPres. ICa
se emplea para capturar el valor actual (%VFCi.V) y almacenarlo en %VFCi.C. Las
entradas Ica se definen como %I0.0.3 para %VFC0 y %I0.0.4 para %VFC1, si este
valor está disponible.
Si la entrada IPres está activa, el valor actual se asigna de la siguiente manera:
l Para el conteo progresivo, %VFCi.V se restablece a 0.
l Para el conteo regresivo, %VFCi.V se escribe con el contenido de %VFCi.P.
l Para el conteo de frecuencia, %VFCi.V se pone a 0.
Atención: %VFCi.F también se pondrá a 0. Las entradas IPres están especificadas
como %I0.0.2 para %VFC0 y %I0.0.5 para %VFC1, si este valor está disponible.
Para los valores de umbral cercanos a los límites (0, 65535) y las frecuencias
elevadas ( >1 KHz), no se detectan los eventos activados en los flancos de TH0 y
TH1.

Nota: Para un umbral S1=65525 en modo de conteo progresivo, TH1 pasa a '1'
durante 11 ciclos del contador progresivo antes de volver a 0. Para una frecuencia
de entrada de 10 KHz -> periodo = 100 s, TH1 a 1 durante 1,1 ms; no se olvida
ningún evento. Para una frecuencia de entrada de 20 KHz -> periodo = 50 s; TH1
a 1 durante 550 s; se olvidan 9 de cada 20 eventos. Los eventos no se exploran
con la suficiente frecuencia (ahora cada 1 ms, más o menos) para poder detectar
los pulsos inferiores a 1 ms de manera exacta.

Notas sobre las Para todas las funciones, los valores actuales se comparan con los dos umbrales
salidas de los (%VFCi.S0 y % VFCi.S1). Los dos objetos bits (%VFCi.TH0 y %VFCi.TH1) están
bloques de en función de los resultados de esta comparación. Es decir, 1 cuando el valor actual
función es mayor o igual que el umbral correspondiente o 0 en caso contrario. Las salidas
reflejas (si están configuradas) se ponen a 1 en función de estas comparaciones.
Nota: Tenga en cuenta que se puede configurar una, dos o ninguna salida.
%VFC.U es una salida del FB. Indica la dirección de la variación del contador (1
para progresivo, 0 para regresivo).

TWD USE 10AS 371


Instrucciones avanzadas

Diagrama de la Ejemplo de diagrama de función de conteo progresivo:


función de
conteo
progresivo

IA = entrada de contador progresivo


(señal simple o fase 1)

&
IN %VFCi + %VFCi.U
Dirección de
Contador %VFC conteo
progresivo
-
IB = (marca PROGRESIVO/ &
REGRESIVO o fase 2)
%VFCi.F
%VFCi.P Salida de
desborde
IPres = (entrada preestablecida)
%VFCi.V
>1 Valor actual Valor
actual
S %VFCi

%ICa = entrada de captura VFCi.C


Valor
>1 de captura
Instrucción
%VFCi. V
%VFCi.TH0
%VFCi.S0
Umbral
Valor 0 %VFCi.TH1
Comparación
& %Q0.0.x
%VFCi.S1
Umbral Salida
Valor 1 refleja 0
& %Q0.0.y
%VFCi.R
Salida
o
refleja 1
%VFCi.S
Activar

Nota: Las salidas se gestionan con independencia del tiempo de ciclo del
autómata. El tiempo de respuesta se encuentra entre 0 y 1 ms.

372 TWD USE 10AS


Instrucciones avanzadas

Operación de A continuación, se incluye un ejemplo del uso de %VFC en modo de conteo


conteo progresivo individual. Los siguientes elementos de configuración se han ajustado
progresivo para este ejemplo:
individual El valor preestablecido, %VFC0.P, es igual a 17. El umbral inferior, %VFC0.S0, es
igual a 14 y el umbral superior, %VFC0.S1, a 20.
Salida <%VFC.S0 %VFC0.S0 <= < %VFC0.S1 >= %VFC0.S1
refleja
%Q0.0.2 X
%Q0.0.3 X X

Ejemplo de cronograma:
%VFC0.P = 17
%VFC0.S0 = 14
%VFC0.S1 = 20
1 2 3 4

IN

S
65535

20

17

14

%VFC0.V 0

TH0

TH1

Salida
refleja 0
Salida
refleja 1

1 : %VFC0.U = 1 porque %VFC es un contador progresivo.

2 : modificación de %VFC0.S1 a 17

3 : La activación de la entrada S hace que el nuevo valor de umbral S1 esté garantizado


en el siguiente conteo regresivo.
4 : tiene lugar una captura del valor actual, de forma que %VFC0.C = 17

TWD USE 10AS 373


Instrucciones avanzadas

Operación de A continuación, se incluye un ejemplo del uso de %VFC en modo de conteo


conteo regresivo regresivo individual. Los siguientes elementos de configuración se han ajustado
individual para este ejemplo:
El valor preestablecido, %VFC0.P, es igual a 17. El umbral inferior, %VFC0.S0, es
igual a 14 y el umbral superior, %VFC0.S1, a 20.
Salida <%VFC.S0 %VFC0.S0 <= < %VFC0.S1 >= %VFC0.S1
refleja
%Q0.0.2 X X
%Q0.0.3 X

Ejemplo:
%VFC0.P = 17
%VFC0.S0 = 14
%VFC0.S1 = 20
1 2 3 4 5

IN

S
65535

20

17

14

%VFC0.V 0

TH0

TH1

Salida
refleja 0
Salida
refleja 1

1 : %VFC0.U = 0 porque %VFC es un contador regresivo.

2 : modificación de %VFC0.P a 20

3 : modificación de %VFC0.S1 a 17

4 : La activación de la entrada S hace que el nuevo valor de umbral S1 esté garantizado


en el siguiente conteo regresivo.
5 : tiene lugar una captura del valor actual, de forma que %VFC0.C = 17

374 TWD USE 10AS


Instrucciones avanzadas

Operación de A continuación, se incluye un ejemplo del uso de %VFC en modo de conteo


conteo progresivo/regresivo. Los siguientes elementos de configuración se han ajustado
progresivo/ para este ejemplo:
regresivo El valor preestablecido, %VFC0.P, es igual a 17. El umbral inferior, %VFC0.S0, es
igual a 14 y el umbral superior, %VFC0.S1, a 20.
Salida refleja <%VFC.S0 %VFC0.S0 <= < %VFC0.S1 %VFC0.S1
%Q0.0.2 X
%Q0.0.3 X X

TWD USE 10AS 375


Instrucciones avanzadas

Ejemplo:
%VFC0.P = 17
%VFC0.S0 = 14
%VFC0.S1 = 20
1 2 3 4 5

IN

S
65535

20

17

14

%VFC0.V 0

TH0

TH1

Salida
refleja 0
Salida
refleja 1

1 : La entrada IN es 1 y la entrada S es 1

2 : modificación de %VFC0.P a 20

3 : modificación de %VFC0.S1 a 17

4 : La activación de la entrada S hace que el nuevo valor de umbral S1 esté garantizado


en el siguiente conteo regresivo.
5 : tiene lugar una captura del valor actual, de forma que %VFC0.C = 17

376 TWD USE 10AS


Instrucciones avanzadas

Descripción de la La función de frecuencímetro de un %VFC se utiliza para medir la frecuencia de una


función de señal periódica en Hz en la entrada IA. El rango de frecuencia que se pueden medir
frecuencímetro oscila entre 10 kHz y 20 kHz. El usuario puede elegir entre dos bases de tiempo.
Esta selección se lleva a cabo mediante un objeto nuevo %VFC.T (base de tiempo).
El valor 100 equivale a una base de tiempo de 100 ms; el valor 1.000, a una base
de tiempo de 1 segundo.
Base de Rango de medición Precisión Actualización
tiempo
100 ms De 100 Hz a 20 kHz 0,05 % para 20 kHz; 10 % 10 veces por segundo
para 100 Hz
1s De 10 Hz a 20 kHz 0,005 % para 20 kHz; 10 % Una vez por segundo
para 10 Hz

Diagrama de la Ejemplo del diagrama de la función de frecuencímetro:


función de
frecuencímetro

IA

Señal que se
va a medir
+
&
Contador %VFC
IN %VFCi

%VFCi.F
Salida de
desborde

S %VFCi %VFCi.V
Ajustar el Valor actual
valor actual Frecuencia
valor medida
actual a 0

%VFCi.T

Seleccionar (Marca de actualización)


base 1.000 ms 100 ms
tiempo

TWD USE 10AS 377


Instrucciones avanzadas

Operación del A continuación, se incluye un ejemplo de cronograma en el que se utiliza el %VFC


frecuencímetro en modo de frecuencímetro.

1 2 3 4

IN

Base
de tiempo

%VFC0.V f1 f2 0 f3 0 f3 f4 f5

1 : La primera medición de frecuencia comienza aquí.

2 : El valor de la frecuencia actual se actualiza.

3 : La entrada IN es 1 y la entrada S es 1

4 : Modificación de %VFC0.T a 100 ms: esta modificación cancela la medida actual


y comienza otra.

Casos En la tabla siguiente se muestra una lista de casos específicos de funcionamiento


específicos del bloque de función %VFC.
Caso específico Descripción
Efecto de un reinicio en frío Ajusta todos los atributos %VFC con los valores
(%S0=1) configurados por el usuario o la aplicación de usuario.
Efecto de un reinicio en caliente No tiene ningún efecto.
(%S1=1)
Efectos de MCR/MCS Todas las salidas de software se mantienen sin
cambios. Todas las salidas reflejas configuradas se
restablecen a 0.
Efecto de una detención del El %VFC deja de funcionar y las salidas permanecen
autómata en su estado actual.

378 TWD USE 10AS


Instrucciones avanzadas

Transmisión/recepción de mensajes: la instrucción de intercambio (EXCH)

Introducción Un autómata Twido se puede configurar para comunicarse con dispositivos Slave
de Modbus o puede enviar y recibir mensajes en modo de caracteres (ASCII).
TwidoSoft ofrece las siguientes funciones para este tipo de comunicaciones:
l Instrucción EXCH para transmitir/recibir mensajes
l Bloque de función de control de intercambio (%MSG) para controlar el
intercambio de datos
Cuando se procesa una instrucción EXCH, el autómata Twido utiliza el protocolo
configurado para el puerto especificado. A cada puerto de comunicación se le
puede asignar un protocolo distinto. Es posible acceder a los puertos de
comunicación agregando el número de puerto a las funciones EXCH o %MSG
(EXCH1, EXCH2, %MSG1, %MSG2).

Instrucción La instrucción EXCH permite a los autómatas Twido enviar o recibir información
EXCH dirigida a dispositivos ASCII o procedente de ellos. El usuario define una tabla de
palabras (%MWi:L o %KWi:L) que contiene los datos que se van a enviar o recibir
(hasta 250 bytes de datos en la transmisión o recepción). El formato de la tabla de
palabras se describe en los apartados correspondientes a cada protocolo. El
intercambio de mensajes se realiza utilizando la instrucción EXCH.

Sintaxis A continuación se muestra el formato de la instrucción EXCH.


[EXCHx %MWi:L] o [EXCHx %KWi:L]
O: x = número de puerto (1 o 2); L = número total de palabras de la tabla de palabras
(máximo de 121). Los valores de la tabla de palabras internas %MWi:L son del tipo
i+L - 255<= 255.
El autómata Twido debe finalizar el intercambio de la primera instrucción EXCHx
antes de que se pueda iniciar una segunda instrucción de intercambio. Debe
utilizarse el bloque de función %MSG cuando se envíen varios mensajes.

TWD USE 10AS 379


Instrucciones avanzadas

Bloque de función de control de intercambio (%MSGx)

Introducción
Nota: La "x" de %MSGx designa el puerto del autómata.

El bloque de función %MSGx garantiza el intercambio de datos. Este bloque tiene


las tres funciones siguientes:
l Comprobación de errores de comunicación:
La comprobación de errores verifica que la longitud de bloque (tabla de palabras)
programada con la instrucción EXCH sea lo suficientemente larga como para
contener la longitud del mensaje que se va a enviar (compárela con la longitud
programada en el byte de menor valor de la primera palabra de la tabla de
palabras).
l Coordinación de varios mensajes:
Para asegurar la coordinación cuando se envíen varios mensajes, el bloque de
función %MSGx proporciona la información que se necesita para determinar que
se ha concluido cada mensaje.
l Transmisión de mensajes prioritarios:
El bloque de función %MSGx permite la detención de la transmisión del mensaje
actual para permitir el envío inmediato de un mensaje urgente.
La programación del bloque de función %MSG es opcional.

Ilustración A continuación se muestra un ejemplo de un bloque de función %MSGx.

%MSG1
R D

380 TWD USE 10AS


Instrucciones avanzadas

Parámetros En la tabla siguiente se enumeran los parámetros del bloque de función %MSGx.
Parámetro Etiqueta Valor
Restablecer R En estado 1, reinicializa la comunicación: %MSGx.E = 0 y
entrada (o %MSGx.D = 1.
instrucción)
Salida de com. %MSGx.D En estado 1, com. lista si:
finalizada l Final de la transmisión (si hay transmisión)
l Final de la recepción (carácter final recibido)
l Error
l Restablecimiento del bloque
En estado 0, petición en curso
Salida de fallo %MSGx.E En estado 1, com. lista si:
(error) l Comando incorrecto
l Tabla mal configurada
l Carácter incorrecto recibido (velocidad, paridad, etc.)
l Tabla de recepción llena (no actualizada)
En estado 0, longitud de mensaje correcta, conexión
correcta

Si se produce un error durante el uso de una instrucción EXCH, los bits %MSGx.D
y %MSGx.E se ponen a 1, la palabra de sistema %SW63 contiene el código de error
del puerto 1 y la palabra de sistema %SW64 contiene el código de error del puerto
2. Consulte Palabras de sistema (%SW), p. 467.

Entrada de Cuando la entrada de restablecimiento está en 1:


restablecimiento l Se detiene la transmisión de todos los mensajes.
(R) l La salida de fallo (error) se restablece a 0.
l El bit de finalización se pone a 1.
Se puede enviar un mensaje nuevo.

Salida de fallo La salida de error se pone a 1 debido a un error de programación de comunica-


(error) ciones o a un error de transmisión de mensajes. La salida de error se pone a 1 si el
(%MSGx.E) número de bytes definido en el bloque de datos asociado a la instrucción EXCH
(palabra 1, byte menos significativo) es mayor que 128 (+80 en formato
hexadecimal por FA).
La salida de error también se pone a 1 si existe algún problema al enviar un mensaje
Modbus a un dispositivo Modbus. En este caso, el usuario deberá comprobar el
cableado y asegurarse de que el dispositivo de destino admita la comunicación
Modbus.

TWD USE 10AS 381


Instrucciones avanzadas

Salida de Cuando la salida de comunicación finalizada se pone a 1, el autómata Twido está


comunicación listo para enviar otro mensaje. Se recomienda utilizar la salida %MSGx.D cuando
finalizada se envían varios mensajes. Si no se utiliza, se puede perder algún mensaje.
(%MSG.D)

Transmisión de La ejecución de la instrucción EXCH activa un bloque de mensaje en el programa


varios mensajes de aplicación. El mensaje se transmite si el bloque de mensaje no está activo
sucesivos (%MSGx.D = 1). Si se envían varios mensajes en el mismo ciclo, sólo se transmite
el primer mensaje. El usuario es responsable de gestionar la transmisión de varios
mensajes utilizando el programa.
Ejemplo de transmisión de dos mensajes sucesivos en el puerto 2:

%I0.0 %MSG2.D
P EXCH2%MW2:4 LDR %I0.0
AND %MSG2.D
%M0 [EXCH2 %MW2:4]
S S %M0
LD %MSG2.D
%MSG.D %M0
AND %M0
EXCH2%MW8:3 [EXCH2 %MW8:3]
R %M0
%M0
R

Reinicialización La anulación de un intercambio se produce cuando se activa la entrada (o la


de intercambios instrucción) R. Esta entrada inicializa la comunicación, restablece a cero la salida
%MSGx.E y pone la salida %MSGx.D en 1. Tenga en cuenta que es posible
reinicializar una comunicación si se detecta un fallo.
Ejemplo de reinicialización de un intercambio:

BLK %MSG1
%M0 %MSG1
LD %M0
R D R
END_BLK

382 TWD USE 10AS


Instrucciones avanzadas

Casos En la tabla siguiente se muestra una lista de casos específicos de funcionamiento


especiales del bloque de función %MSGx.
Caso especial Descripción
Efecto de un reinicio en frío (%S0=1) Fuerza la reinicialización de la comunicación.
Efecto de un reinicio en caliente No tiene ningún efecto.
(%S1=1)
Efecto de una detención del autómata Si se está transmitiendo un mensaje, el autómata
detiene la transferencia y reinicializa las salidas
%MSGx.D y %MSGx.E.

TWD USE 10AS 383


Instrucciones avanzadas

15.2 Funciones de reloj

Presentación

Objeto En esta sección se describen las funciones de gestión de tiempo para los
controladores Twido.

Contenido Esta sección contiene los siguientes apartados:


Apartado Página
Funciones de reloj 385
Fechadores 386
Fijación de la fecha y la hora 389
Establecimiento de la fecha y la hora 391

384 TWD USE 10AS


Instrucciones avanzadas

Funciones de reloj

Introducción Los controladores Twido disponen de una función de reloj de fecha/hora que
requiere la opción Reloj de tiempo real (RTC) y que ofrece lo siguiente:
l Fechadores: se utilizan para controlar acciones a horas predefinidas o
calculadas.
l Fijación de fecha y hora: se utiliza para asignar fechas y horas a eventos y para
medir la duración de los eventos.
Al reloj de fecha/hora de Twido se puede acceder seleccionando Fechadores del
menú Software de TwidoSoft. Además, el reloj de fecha/hora se puede ajustar
mediante un programa. Los ajustes del reloj siguen funcionando hasta 30 días
después de desconectar el controlador si la batería se ha cargado durante seis
horas consecutivas como mínimo antes de desconectar el controlador.
El reloj de fecha/hora tiene formato de 24 horas y tiene en cuenta los años bisiestos.

Valor de El valor de corrección RTC es necesario para que el RTC funcione de forma
corrección RTC adecuada. Cada unidad RTC dispone de su propio valor de corrección escrito en la
unidad. Este valor se puede configurar en TwidoSoft mediante la opción Configurar
RTC del cuadro de diálogo Operaciones del controlador.

TWD USE 10AS 385


Instrucciones avanzadas

Fechadores

Introducción Los fechadores se utilizan para controlar las acciones en un mes, día u hora
predefinidos. Se pueden programar un máximo de 16 fechadores. No es necesario
utilizar ninguna entrada del programa.

Nota: Compruebe el bit de sistema %S51 y la palabra de sistema %SW118 para


asegurarse de que la opción Reloj en tiempo real (RTC) está instalada. Consulte
Bits de sistema (%S), p. 460. La opción RTC también es necesaria para utilizar
fechadores.

Parámetros La siguiente tabla enumera los parámetros para un fechador:


Parámetro Formato Función/Rango
Número de n n = 0 a 15
fechador
Configurado Casilla de Marque esta casilla para configurar el número de
verificación fechador seleccionado.
Bit de salida %Qx.y.z El fechador activa la asignación de salida: %Mi o
%Qj.k.
Esta salida se establece como 1 cuando la fecha y la
hora actuales están entre el ajuste del inicio del periodo
activo y el ajuste del final del periodo activo.
Mes de inicio Enero a Mes para iniciar el fechador.
diciembre
Mes de Enero a Mes para finalizar el fechador.
finalización diciembre
Fecha de inicio 1 - 31 Día del mes para iniciar el fechador.
Fecha de 1 - 31 Día del mes para finalizar el fechador.
finalización
Hora de inicio hh:mm Hora de inicio del fechador. Definida por la hora (de 0 a
23), seguida de los minutos (de 0 a 59).
Tiempo de parada hh:mm Hora de finalización del fechador. Definida por la hora
(de 0 a 23), seguida de los minutos (de 0 a 59).
Día de la semana Lunes a Casillas de verificación que identifican el día de la
domingo semana para activar el fechador.

386 TWD USE 10AS


Instrucciones avanzadas

Habilitación de Los bits de la palabra del sistema %SW114 habilitan (bit establecido a 1) o
fechadores inhabilitan (bit establecido a 0) el funcionamiento de cada uno de los 16 fechadores.
Asignación de fechadores en %SW114:

%SW114

Fechador Fechador
nº 15 nº 0

De forma predeterminada (o tras un inicio en frío), se establecen en 1 todos los bits


de esta palabra de sistema. Su utilización por parte del programa es opcional.

Salida de los Si se asigna la misma salida a varios fechadores (%Mi o %Qj.k), se asignará el OR
fechadores de los resultados de cada fechador a este objeto (es posible tener varios «rangos
de funcionamiento» para la misma salida).

Ejemplo En la tabla siguiente se muestran los parámetros de un programa de vaporización


para un mes veraniego:
Parámetro Valor Descripción
Fechador 6 Número 6 de fechador
Bit de salida %Q0.2 Activa la salida %Q0.2
Mes de inicio Junio Inicia la actividad en junio
Mes de Septiembre Detiene la actividad en septiembre
finalización
Fecha de inicio 21 Inicia la actividad el día 21 de junio
Fecha de 21 Detiene la actividad el día 21 de septiembre
finalización
Día de la semana Lunes, miércoles, Realiza la actividad en lunes, miércoles y
viernes viernes
Hora de inicio 21:00 Inicia la actividad a las 21:00
Tiempo de parada 22:00 Detiene la actividad a las 22:00

Utilizando el siguiente programa, el fechad