Documentos de Académico
Documentos de Profesional
Documentos de Cultura
RS Logix 5000
RS Logix 5000
controladores Logix5000
Manual de referencia
Nmeros de catlogo 1756-L1x,
1756-L5x, 1756-L6x, 1768-L4x, 1769L30, 1769-L31, 1769-L32C, 1769-L32E,
1769-L35CR, 1769-L35E, 1789-L60,
1794-L34, 20D
IMPORTANTE
ATENCIN
PELIGRO DE CHOQUE
PELIGRO DE QUEMADURA
Identifica informacin sobre prcticas o circunstancias que pueden provocar una explosin en un
ambiente peligroso, lo que podra causar lesiones personales o la muerte, daos materiales o
prdidas econmicas.
Puede haber etiquetas en el exterior o en el interior del equipo (por ejemplo, en un variador o un
motor) para advertir sobre la posible presencia de un voltaje peligroso.
Puede haber etiquetas en el exterior o en el interior del equipo (por ejemplo, en un variador o un
motor) para advertir sobre superficies que podran estar a temperaturas peligrosas.
Allen-Bradley, Rockwell Automation y TechConnect son marcas comerciales de Rockwell Automation, Inc.
Las marcas comerciales no pertenecientes a Rockwell Automation son propiedad de sus respectivas empresas.
ndice
Prefacio
Instrucciones generales de
controladores Logix5000
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A quin est dirigido este manual . . . . . . . . . . . . . . . . .
Propsito de este manual . . . . . . . . . . . . . . . . . . . . . . .
Informacin comn para todas las instrucciones. . . . . . .
Convenciones y trminos relacionados. . . . . . . . . . . . . .
Establecer y borrar . . . . . . . . . . . . . . . . . . . . . . . . . .
Condicin de rengln de lgica de escalera de rels .
Estados del bloque de funciones . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
23
23
24
25
25
25
26
27
Captulo 1
Instrucciones basadas en
Logix para alarmas y eventos
FactoryTalk
(ALMD, ALMA)
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Alarma digital (ALMD). . . . . . . . . . . . . . . . . . . . . . . . . . .
Diagramas de estado cuando se requiere
confirmacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Diagramas de estado cuando no se requiere
confirmacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Confirmacin de alarma ALMD requerida y enclavada .
Confirmacin de alarma ALMD requerida y no
enclavada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Confirmacin de alarma ALMD no requerida y
enclavada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Confirmacin de alarma ALMD no requerida y no
enclavada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Alarma Analgica (ALMA) . . . . . . . . . . . . . . . . . . . . . . . .
Diagramas de estado cuando se requiere
confirmacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Diagramas de estado cuando no se requiere
confirmacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Confirmacin de condicin de nivel ALMA requerida .
Confirmacin de condicin de nivel ALMA no
requerida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Confirmacin de velocidad de cambio ALMA
requerida. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Confirmacin de velocidad de cambio ALMA
no requerida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configure una instruccin de alarma . . . . . . . . . . . . . . . .
Introduzca el texto del mensaje de alarma . . . . . . . . . . . .
Variables de la cadena de mensaje . . . . . . . . . . . . . . .
Versiones de los mensajes de alarma en mltiples
idiomas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Monitoreo del estado de alarma. . . . . . . . . . . . . . . . . . . .
Almacenamiento de alarmas en el bfer. . . . . . . . . . . . . .
Acceda programticamente a informacin de alarmas . . . .
Suprima o inhabilite alarmas . . . . . . . . . . . . . . . . . . . . . .
Ejecucin de alarma basada en el controlador . . . . . . . . .
Uso de la memoria del controlador. . . . . . . . . . . . . . .
Tiempo de escn . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . 29
. . 30
. . 36
. . 37
. . 38
. . 39
. . 39
. . 40
. . 42
. . 54
. . 55
. . 57
. . 58
. . 59
.
.
.
.
.
.
.
.
60
62
65
66
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
67
68
69
70
71
72
73
75
ndice
Captulo 2
Instrucciones de bits
(XIC, XIO, OTE, OTL, OTU, ONS,
OSR, OSF, OSRI, OSFI)
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Examinar si est cerrado (XIC). . . . . . . . . . . . . . . . . . .
Examinar si est abierto (XIO) . . . . . . . . . . . . . . . . . . .
Activacin de salida (OTE) . . . . . . . . . . . . . . . . . . . . .
Enclavamiento de salida (OTL) . . . . . . . . . . . . . . . . . .
Desenclavamiento de salida (OTU) . . . . . . . . . . . . . . .
Un impulso (ONS) . . . . . . . . . . . . . . . . . . . . . . . . . . .
Un impulso en flanco ascendente (OSR) . . . . . . . . . . .
Un impulso en flanco descendente (OSF) . . . . . . . . . .
Un impulso en flanco ascendente con entrada (OSRI) .
Un impulso en flanco descendente con entrada (OSFI).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
77
78
80
82
84
86
88
91
94
96
99
Captulo 3
Instrucciones de temporizador y
contador
(TON, TOF, RTO, TONR, TOFR,
RTOR, CTU, CTD, CTUD, RES)
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Temporizador de retardo a la conexin (TON). . . . . .
Temporizador de retardo a la desconexin (TOF) . . .
Temporizador retentivo activado (RTO) . . . . . . . . . . .
Temporizador de retardo a la conexin con
restablecimiento (TONR) . . . . . . . . . . . . . . . . . . . . . .
Temporizador de retardo a la desconexin con
restablecimiento (TOFR) . . . . . . . . . . . . . . . . . . . . . .
Temporizador retentivo activado con restablecimiento
(RTOR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conteo progresivo (CTU) . . . . . . . . . . . . . . . . . . . . .
Conteo regresivo (CTD) . . . . . . . . . . . . . . . . . . . . . .
Conteo progresivo/regresivo (CTUD) . . . . . . . . . . . . .
Restablecer (RES) . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
103
104
108
112
. . . . 116
. . . . 120
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
124
128
132
136
141
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mensaje (MSG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cdigos de error MSG . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cdigos de error . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cdigos de error extendidos . . . . . . . . . . . . . . . . . . .
Cdigos de error PLC y SLC (.ERR) . . . . . . . . . . . . . . .
Cdigos de error de transferencia en bloques . . . . . . .
Especifique los detalles de configuracin . . . . . . . . . . . . .
Especifique mensajes de lectura y escritura de la tabla
de datos CIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reconfigure un mdulo de E/S. . . . . . . . . . . . . . . . . .
Especifique mensajes genricos CIP . . . . . . . . . . . . . .
Especifique mensajes PLC-5 . . . . . . . . . . . . . . . . . . . .
Especifique mensajes SLC. . . . . . . . . . . . . . . . . . . . . .
Especifique mensajes de transferencia en bloques . . . .
Especifique mensajes PLC-3 . . . . . . . . . . . . . . . . . . . .
Especifique mensajes PLC-2 . . . . . . . . . . . . . . . . . . . .
Ejemplos de configuracin MSG . . . . . . . . . . . . . . . . . . .
Especifique los detalles de comunicacin. . . . . . . . . . . . .
.
.
.
.
.
.
.
.
143
144
152
152
154
156
158
159
.
.
.
.
.
.
.
.
.
.
160
161
162
163
165
165
166
167
168
169
Captulo 4
Instrucciones de entrada/salida
(MSG, GSV, SSV, IOT)
ndice
. . . 169
. . . 172
. . . 172
. . . 173
. . . 175
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
176
179
180
181
183
184
187
188
190
191
192
193
193
195
197
198
198
. . . 200
. . . 201
Captulo 5
Instrucciones de comparacin
(CMP, EQU, GEQ, GRT, LEQ, LES,
LIM, MEQ, NEQ)
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparar (CMP) . . . . . . . . . . . . . . . . . . . . . . . . . .
Expresiones CMP . . . . . . . . . . . . . . . . . . . . . . .
Operadores vlidos . . . . . . . . . . . . . . . . . . . . .
Expresiones de formato . . . . . . . . . . . . . . . . . .
Determine el orden de operacin . . . . . . . . . . .
Use cadenas en una expresin . . . . . . . . . . . . .
Igual a (EQU) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mayor o igual que (GEQ) . . . . . . . . . . . . . . . . . . .
Mayor que (GRT) . . . . . . . . . . . . . . . . . . . . . . . . .
Menor o igual que (LEQ). . . . . . . . . . . . . . . . . . . .
Menor que (LES) . . . . . . . . . . . . . . . . . . . . . . . . . .
Lmite (LIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mscara igual que (MEQ) . . . . . . . . . . . . . . . . . . .
Introduccin de un valor de mscara inmediato
Diferente de (NEQ) . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
205
206
208
208
209
209
210
211
215
219
223
227
231
237
238
242
ndice
Captulo 6
Instrucciones de clculo/
matemticas
(CPT, ADD, SUB, MUL, DIV, MOD,
SQR, SQRT, NEG, ABS)
Introduccin . . . . . . . . . . . . . . . . . . .
Calcular (CPT) . . . . . . . . . . . . . . . . .
Operadores vlidos . . . . . . . . . . .
Expresiones de formato . . . . . . . .
Determine el orden de operacin .
Sumar (ADD) . . . . . . . . . . . . . . . . . .
Restar (SUB) . . . . . . . . . . . . . . . . . . .
Multiplicar (MUL) . . . . . . . . . . . . . . .
Dividir (DIV) . . . . . . . . . . . . . . . . . .
Mdulo (MOD) . . . . . . . . . . . . . . . . .
Raz cuadrada (SQR) . . . . . . . . . . . . .
Cambiar signo (NEG) . . . . . . . . . . . .
Valor absoluto (ABS). . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
247
248
250
250
251
252
255
258
261
266
270
274
277
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mover (MOV) . . . . . . . . . . . . . . . . . . . . . . . . . .
Mover con mscara (MVM) . . . . . . . . . . . . . . . .
Introduzca un valor de mscara inmediato . .
Movimiento enmascarado con receptor (MVMT).
Distribuir campo de bits (BTD) . . . . . . . . . . . . .
Distribuir campo de bits con receptor (BTDT) . .
Borrar (CLR) . . . . . . . . . . . . . . . . . . . . . . . . . . .
Intercambiar byte (SWPB) . . . . . . . . . . . . . . . . .
Y a nivel de bits (AND) . . . . . . . . . . . . . . . . . . .
O a nivel de bits (OR) . . . . . . . . . . . . . . . . . . . .
O exclusivo a nivel de bits (XOR) . . . . . . . . . . .
NO a nivel de bits (NOT) . . . . . . . . . . . . . . . . .
Y booleano (BAND) . . . . . . . . . . . . . . . . . . . . .
O booleano (BOR) . . . . . . . . . . . . . . . . . . . . . .
O exclusivo booleano (BXOR). . . . . . . . . . . . . .
NO booleano (BNOT) . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
..
281
283
285
286
288
292
295
298
300
304
307
310
314
317
320
323
326
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
329
330
330
331
333
335
344
345
345
346
347
352
353
353
Captulo 7
Instrucciones de movimiento/
lgicas
(MOV, MVM, BTD, MVMT, BTDT,
CLR, SWPB, AND, OR, XOR, NOT,
BAND, BOR, BXOR, BNOT)
Captulo 8
Instrucciones de matriz
(archivo)/miscelneas
(FAL, FSC, COP, CPS, FLL, AVE,
SRT, STD, SIZE)
Introduccin . . . . . . . . . . . . . . . . . . . . . . . .
Seleccin del modo de operacin . . . . . . . .
Modo Todos . . . . . . . . . . . . . . . . . . . . .
Modo numrico . . . . . . . . . . . . . . . . . . .
Modo incremental . . . . . . . . . . . . . . . . .
Aritmtica y lgica de archivo (FAL) . . . . . .
Expresiones FAL . . . . . . . . . . . . . . . . . .
Operadores vlidos . . . . . . . . . . . . . . . .
Expresiones de formato . . . . . . . . . . . . .
Determine el orden de operacin . . . . . .
Bsqueda y comparacin de archivos (FSC) .
Expresiones FSC . . . . . . . . . . . . . . . . . .
Operadores vlidos . . . . . . . . . . . . . . . .
Expresiones de formato . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ndice
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
354
355
356
362
366
371
376
381
Captulo 9
Instrucciones de matriz
(archivo)/desplazamiento
(BSL, BSR, FFL, FFU, LFL, LFU)
Introduccin . . . . . . . . . . . . . . . . . . . . . . . .
Desplazamiento de bits a la izquierda (BSL) .
Desplazamiento de bits a la derecha (BSR). .
Carga FIFO (FFL) . . . . . . . . . . . . . . . . . . . .
Descarga FIFO (FFU) . . . . . . . . . . . . . . . . .
Carga LIFO (LFL). . . . . . . . . . . . . . . . . . . . .
Descarga LIFO (LFU). . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
385
386
390
394
400
406
412
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . .
Secuenciador de entrada (SQI) . . . . . . . . . . .
Introduzca un valor de mscara inmediato
Use SQI sin SQO . . . . . . . . . . . . . . . . . . .
Secuenciador de salida (SQO) . . . . . . . . . . . .
Introduzca un valor de mscara inmediato
Uso de SQI con SQO . . . . . . . . . . . . . . . .
Restablecimiento de la posicin de SQO. .
Carga de secuenciador (SQL). . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
419
420
421
423
424
425
427
427
428
Captulo 10
Instrucciones de secuenciador
(SQI, SQO, SQL)
Captulo 11
Instrucciones de control de
programa
(JMP, LBL, JSR, RET, SBR, JXR,
TND, MCR, UID, UIE, AFI,
NOP, EOT, SFP, SFR, EVENT)
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Saltar a etiqueta (JMP)
Etiqueta (LBL). . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Salto a subrutina (JSR)
Subrutina (SBR) Retorno (RET) . . . . . . . . . . . . . . . .
Salto a rutina externa (JXR) . . . . . . . . . . . . . . . . . . .
Fin temporal (TND). . . . . . . . . . . . . . . . . . . . . . . . .
Restablecimiento de control maestro (MCR) . . . . . . .
Inhabilitacin de interrupcin de usuario (UID)
Habilitacin de interrupcin de usuario (UIE) . . . . .
Instruccin siempre falso (AFI) . . . . . . . . . . . . . . . .
Sin operacin (NOP) . . . . . . . . . . . . . . . . . . . . . . . .
Fin de transicin (EOT) . . . . . . . . . . . . . . . . . . . . . .
Pausa SFC (SFP) . . . . . . . . . . . . . . . . . . . . . . . . . . .
Restablecer SFC (SFR) . . . . . . . . . . . . . . . . . . . . . . .
Activar tarea de evento (EVENT) . . . . . . . . . . . . . . .
Determine programticamente si una instruccin
EVENT activ una tarea . . . . . . . . . . . . . . . . . . .
. . . . . 433
. . . . . 434
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
436
447
450
452
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
454
456
457
458
460
462
464
. . . . . 464
ndice
Captulo 12
Instrucciones For/Break
(FOR, FOR...DO, BRK, EXIT, RET)
Introduccin . . . . .
For (FOR) . . . . . . .
Interrumpir (BRK) .
Retornar (RET) . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
469
470
473
474
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparacin de bits de archivo (FBC). . . . . . . . .
Seleccin del modo de bsqueda . . . . . . . . . .
Deteccin de diagnstico (DDT) . . . . . . . . . . . . .
Seleccin del modo de bsqueda . . . . . . . . . .
Transicin de datos (DTR). . . . . . . . . . . . . . . . . .
Introduzca un valor de mscara inmediato . . .
Proporcional integral derivativo (PID) . . . . . . . . .
Configure una instruccin PID. . . . . . . . . . . . . . .
Especifique el ajuste. . . . . . . . . . . . . . . . . . . .
Especifique la configuracin. . . . . . . . . . . . . .
Especificacin de alarmas. . . . . . . . . . . . . . . .
Especificacin de escalado . . . . . . . . . . . . . . .
Uso de instrucciones PID . . . . . . . . . . . . . . . . . .
Bloqueo de accin integral y transferencia sin
perturbaciones de manual a automtico . . . . .
Temporizacin de la instruccin PID . . . . . . .
Reinicio sin problemas . . . . . . . . . . . . . . . . . .
Suavizado derivativo . . . . . . . . . . . . . . . . . . .
Establezca la banda muerta . . . . . . . . . . . . . .
Use lmite de salida . . . . . . . . . . . . . . . . . . . .
Ganancia anticipativa o polarizacin de salida
Lazos en cascada . . . . . . . . . . . . . . . . . . . . . .
Control de relacin . . . . . . . . . . . . . . . . . . . .
Teora de PID . . . . . . . . . . . . . . . . . . . . . . . . . . .
Proceso PID . . . . . . . . . . . . . . . . . . . . . . . . .
Proceso PID con lazos maestro/esclavo . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
477
478
480
486
488
494
495
497
502
503
504
504
505
505
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
507
508
512
513
514
514
515
515
516
517
517
517
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
519
520
523
526
529
532
535
Captulo 13
Instrucciones especiales
(FBC, DDT, DTR, PID)
Captulo 14
Instrucciones trigonomtricas
(SIN, COS, TAN, ASN, ASIN, ACS,
ACOS, ATN, ATAN)
Introduccin . . . . . . .
Seno (SIN) . . . . . . . .
Coseno (COS) . . . . . .
Tangente (TAN) . . . .
Arco seno (ASN) . . . .
Arco coseno (ACS) . .
Arco tangente (ATN) .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ndice
Captulo 15
Instrucciones matemticas
avanzadas
(LN, LOG, XPY)
Introduccin . . . . . . . . . . . .
Logaritmo natural (LN) . . . .
Logaritmo base 10 (LOG) . .
X a la potencia de Y (XPY) .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
539
540
543
546
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
549
550
553
556
559
561
Introduccin . . . . . . . . . . . . . . . . . . . . .
Ejecucin de la instruccin. . . . . . . .
Cdigos de error ASCII . . . . . . . . . .
Tipos de datos de cadena. . . . . . . . .
Prueba ASCII para lnea de bfer (ABL) .
Caracteres ASCII en el bfer (ACB) . . . .
Borrar ASCII bfer (ACL) . . . . . . . . . . . .
Lneas de handshake ASCII (AHL) . . . . .
Lectura ASCII (ARD) . . . . . . . . . . . . . . .
Lectura ASCII de lnea (ARL) . . . . . . . . .
Escritura ASCII con anexo (AWA) . . . . .
Escritura ASCII (ASCII Write (AWT)) . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
565
566
568
569
570
573
575
577
581
585
589
594
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
599
600
601
603
605
607
609
Captulo 16
Instrucciones de conversin
matemtica
(DEG, RAD, TOD, FRD, TRN,
TRUNC)
Introduccin . . . . . . . . . .
Grados (DEG). . . . . . . . .
Radianes (RAD) . . . . . . .
Convertir a BCD (TOD). .
Convertir a entero (FRD) .
Truncar (TRN). . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
Captulo 17
Instrucciones para puerto serie
ASCII
(ABL, ACB, ACL, AHL, ARD, ARL,
AWA, AWT)
Captulo 18
Instrucciones de cadena ASCII
(CONCAT, DELETE, FIND, INSERT,
MID)
Introduccin . . . . . . . . . . . . . . . . . . . .
Tipos de datos de cadena. . . . . . . .
Concatenacin de cadenas (CONCAT) .
Eliminacin de cadena (DELETE). . . . .
Encontrar cadena (FIND). . . . . . . . . . .
Insertar cadena (INSERT). . . . . . . . . . .
Cadena central (MID) . . . . . . . . . . . . .
.
.
.
.
.
.
.
Captulo 19
Instrucciones de conversin ASCII Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611
Tipos de datos de cadena. . . . . . . . . . . . . . . . . . . . . . . 613
(STOD, STOR, DTOS, RTOS, UPPER,
Cadena
en DINT (STOD). . . . . . . . . . . . . . . . . . . . . . . . . . 614
LOWER)
Cadena en REAL (STOR) . . . . . . . .
DINT en cadena (DTOS) . . . . . . . .
REAL en cadena (RTOS) . . . . . . . .
Maysculas (UPPER) . . . . . . . . . . .
Minsculas (Lower Case (LOWER))
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
616
619
621
623
625
ndice
Captulo 20
Instrucciones de depuracin
(BPT, TPT)
Introduccin . . . . . . . . . . . . .
Puntos de interrupcin (BPT)
Formato de cadena . . . . .
Puntos de rastreo (TPT). . . . .
Formato de cadena . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
627
627
628
631
631
Introduccin . . . . . . . . . . . . . .
Valores inmediatos . . . . . . . . .
Conversiones de datos . . . . . .
SINT o INT en DINT . . . . .
Entero en REAL . . . . . . . . .
DINT en SINT o INT . . . . .
REAL en un nmero entero
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
635
635
635
637
639
639
640
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Seleccin de elementos de bloques de funciones . . . . . .
Enclavamiento de datos. . . . . . . . . . . . . . . . . . . . . . . . .
Orden de ejecucin. . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resolucin de un lazo . . . . . . . . . . . . . . . . . . . . . . .
Resolucin del flujo de datos entre dos bloques . . . .
Creacin de un retardo de escn . . . . . . . . . . . . . . .
Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Respuestas de bloque de funciones a condiciones de
overflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modos de temporizacin . . . . . . . . . . . . . . . . . . . . . . .
Parmetros de instruccin comunes para modos de
temporizacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Descripcin general de los modos de temporizacin .
Control de programa/operador . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
641
641
642
644
645
647
647
648
Apndice A
Atributos comunes
Apndice B
Atributos de bloque de funciones
10
. . 648
. . 649
. . 651
. . 653
. . 654
ndice
Apndice C
Programacin de texto
estructurado
ndice
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sintaxis del texto estructurado . . . . . . . . . . . . . . . . . .
Asignaciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Especifique una asignacin no retentiva . . . . . . . .
Asigne un carcter ASCII a una cadena . . . . . . . . .
Expresiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Use funciones y operadores aritmticos . . . . . . . .
Use operadores relacionales . . . . . . . . . . . . . . . . .
Use operadores lgicos . . . . . . . . . . . . . . . . . . . .
Use operadores a nivel de bits . . . . . . . . . . . . . . .
Determine el orden de ejecucin . . . . . . . . . . . . .
Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Construcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Algunas palabras clave estn reservadas para uso
futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IF...THEN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CASE...OF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FORDO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
WHILEDO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
REPEATUNTIL . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cdigos de caracteres ASCII . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
659
659
661
662
663
663
665
666
668
669
669
670
671
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
671
672
675
678
681
684
687
697
11
ndice
12
Resumen de cambios
Introduccin
Informacin actualizada
Pgina
29
180
627
13
Resumen de cambios
Notas:
14
Ubicacin de instrucciones
un nmero de pgina
este manual
control de movimiento
PhaseManager
control de procesos
15
Ubicacin de instrucciones
Instruccin:
Ubicacin:
Lenguajes:
Instruccin:
Ubicacin:
Lenguajes:
ABL
609
lgica de escalera
de rels
texto estructurado
AWA
589
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
bloque de funciones
AWT
594
lgica de escalera
de rels
texto estructurado
317
lgica de escalera
de rels
texto estructurado
Y booleano
texto estructurado
bloque de funciones
326
texto estructurado
bloque de funciones
320
texto estructurado
bloque de funciones
BPT
Puntos de interrupcin
627
lgica de escalera
de rels
BRK
473
lgica de escalera
de rels
386
lgica de escalera
de rels
390
lgica de escalera
de rels
295
lgica de escalera
de rels
295
texto estructurado
bloque de funciones
144
lgica de escalera
de rels
texto estructurado
144
lgica de escalera
de rels
texto estructurado
323
texto estructurado
bloque de funciones
Control coordinado
control de
procesos
texto estructurado
bloque de funciones
CLR
295
lgica de escalera
de rels
texto estructurado
206
lgica de escalera
de rels
601
lgica de escalera
de rels
texto estructurado
356
lgica de escalera
de rels
texto estructurado
523
lgica de escalera
de rels
texto estructurado
bloque de funciones
ABS
277
Valor absoluto
ACB
573
ACL
575
ACS
532
Arco coseno
ADD
252
Suma
AFI
456
AHL
577
ALM
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
bloque de
funciones, texto
estructurado
lgica de escalera
de rels
texto estructurado
bloque de funciones
Escritura ASCII
BAND
BNOT
NO booleano
BOR
O booleano
Interrupcin
BSL
Desplazamiento de bit a la
izquierda
lgica de escalera
de rels
BSR
lgica de escalera
de rels
texto estructurado
BTD
Desplazamiento de bit a la
derecha
Distribuir campo de bits
Alarma
control de
procesos
texto estructurado
bloque de funciones
BTDT
ALMA
42
lgica de escalera
de rels
texto estructurado
bloque de funciones
BTR
Alarma analgica
ALMD
30
Alarma digital
AND
304
Y a nivel de bits
ARD
581
Lectura ASCII
ARL
585
ASN
529
Arco seno
ATN
535
Arco tangente
AVE
Promedio de archivo
16
366
lgica de escalera
de rels
texto estructurado
bloque de funciones
lgica de escalera
de rels
texto estructurado
bloque de funciones
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
bloque de funciones
lgica de escalera
de rels
texto estructurado
bloque de funciones
lgica de escalera
de rels
BTW
Mensaje
BXOR
O exclusivo booleano
CC
Borrar
CMP
Comparar
CONCAT
Concatenar cadenas
COP
Copiar archivo
COS
Coseno
Ubicacin de instrucciones
Instruccin:
Ubicacin:
Lenguajes:
Instruccin:
Ubicacin:
Lenguajes:
CPS
356
lgica de escalera
de rels
texto estructurado
FAL
335
lgica de escalera
de rels
lgica de escalera
de rels
FBC
478
lgica de escalera
de rels
394
lgica de escalera
de rels
400
lgica de escalera
de rels
CPT
248
Calcular
CTD
132
Conteo regresivo
CTU
128
Conteo progresivo
CTUD
136
Conteo progresivo/regresivo
D2SD
Dispositivo discreto de
2 estados
D3SD
Dispositivo discreto de
3 estados
DDT
control de
procesos
lgica de escalera
de rels
texto estructurado
bloque de funciones
Descarga FIFO
texto estructurado
bloque de funciones
Generador de funciones
control de
procesos
texto estructurado
bloque de funciones
FIND
605
lgica de escalera
de rels
texto estructurado
control de
procesos
362
lgica de escalera
de rels
470
lgica de escalera
de rels
559
lgica de escalera
de rels
bloque de funciones
347
lgica de escalera
de rels
215
lgica de escalera
de rels
texto estructurado
bloque de funciones
219
lgica de escalera
de rels
texto estructurado
bloque de funciones
176
lgica de escalera
de rels
texto estructurado
control de
procesos
texto estructurado
bloque de funciones
Filtro pasaaltos
control de
procesos
texto estructurado
bloque de funciones
ICON
641
bloque de funciones
IMC
Control de modelos interno
control de
procesos
texto estructurado
bloque de funciones
INSERT
607
lgica de escalera
de rels
texto estructurado
texto estructurado
bloque de funciones
486
FLL
FOR
FRD
DEG
553
lgica de escalera
de rels
texto estructurado
bloque de funciones
Grados
603
Eliminar cadena
DFF
FGEN
lgica de escalera
de rels
texto estructurado
bloque de funciones
Derivada
FFU
Llenar archivo
control de
procesos
DERV
FFL
Carga FIFO
Tiempo muerto
DELETE
Comparacin de bits de
archivo
Encontrar cadena
Deteccin de diagnstico
DEDT
lgica de escalera
de rels
Aritmtica y lgica de
archivo
control de
procesos
lgica de escalera
de rels
texto estructurado
texto estructurado
bloque de funciones
Instruccin FOR
Convertir en entero
FSC
Bsqueda y comparacin de
archivos
GEQ
Mayor o igual que
GRT
Mayor que
Circuito multivibrador D
control de
procesos
texto estructurado
bloque de funciones
DIV
261
lgica de escalera
de rels
texto estructurado
bloque de funciones
GSV
619
lgica de escalera
de rels
texto estructurado
Lmite superior/inferior
Dividir
DTOS
DINT en cadena
DTR
494
Transicin de datos
EOT
458
Fin de transicin
EQU
206
Igual a
lgica de escalera
de rels
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
bloque de funciones
HLL
HPF
Insertar cadena
texto estructurado
bloque de funciones
INTG
Seleccin mejorada
control de
procesos
Integrador
control de
procesos
texto estructurado
bloque de funciones
EVENT
464
lgica de escalera
de rels
texto estructurado
IOT
201
lgica de escalera
de rels
texto estructurado
ESEL
Salida inmediata
17
Ubicacin de instrucciones
Instruccin:
Ubicacin:
Lenguajes:
Instruccin:
Ubicacin:
Lenguajes:
IREF
641
bloque de funciones
MAG
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
MASR
control de
lgica de escalera
de rels
texto estructurado
Referencia de entrada
JKFF
Circuito multivibrador JK
JMP
control de
procesos
436
lgica de escalera
de rels
texto estructurado
bloque de funciones
447
lgica de escalera
de rels
Impulso de eje de
movimiento
434
lgica de escalera
de rels
MAM
LBL
Etiqueta
LDL2
Aplicar diagnsticos de
conexin de movimiento
lgica de escalera
de rels
Saltar a subrutina
JXR
MAHD
434
Saltar a etiqueta
JSR
texto estructurado
bloque de funciones
Engranaje de eje de
movimiento
MAH
Posicin inicial de eje de
movimiento
MAJ
control de
procesos
texto estructurado
bloque de funciones
MAOC
Avance-retardo
control de
procesos
texto estructurado
bloque de funciones
MAPC
LEQ
223
lgica de escalera
de rels
texto estructurado
bloque de funciones
MAR
Avance-retardo de segundo
orden
LDLG
LES
227
Menor que
LFL
406
Carga LIFO
LFU
412
Descarga LIFO
LIM
Filtro pasabajos
MAAT
Aplicar ajuste a eje de
movimiento
MAFR
MAS
lgica de escalera
de rels
texto estructurado
bloque de funciones
(1)
625
lgica de escalera
de rels
texto estructurado
bloque de funciones
MATC
MAVE
Promedio mvil
MAW
Observar brazo de
movimiento
lgica de escalera
de rels
texto estructurado
MAXC
control de
procesos
texto estructurado
bloque de funciones
MCCD
control de
movimiento
lgica de escalera
de rels
texto estructurado
MCCM
control de
18
Desactivacin de eje de
movimiento
540
Minsculas
LPF
MASD
lgica de escalera
de rels
bloque de funciones
Logaritmo base 10
LOWER
lgica de escalera
de rels
Registro de brazo de
movimiento
231
Logaritmo natural
LOG
lgica de escalera
de rels
Lmite
LN
lgica de escalera
de rels
texto estructurado
bloque de funciones
lgica de escalera
de rels
texto estructurado
Captura mxima
Dinmica de cambio
coordinado de movimiento
Movimiento circular
coordinado de movimiento
MCCP
Perfil de leva de clculo de
movimiento
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
procesos
texto estructurado
bloque de funciones
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
procesos
texto estructurado
bloque de funciones
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
Ubicacin de instrucciones
Instruccin:
Ubicacin:
Lenguajes:
Instruccin:
Ubicacin:
Lenguajes:
MCD
control de
movimiento
lgica de escalera
de rels
texto estructurado
MGSR
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
609
lgica de escalera
de rels
texto estructurado
control de
procesos
texto estructurado
bloque de funciones
Dinmica de cambio de
movimiento
MCLM
Movimiento lineal de
coordenadas de movimiento
MCR
452
Restablecimiento de control
maestro
MCSD
Desactivacin de
coordenadas de movimiento
MCS
Paro de coordenadas de
movimiento
MCSR
Restablecimiento de
desactivacin de
coordenadas de movimiento
MCT
Transformada de
coordenadas de movimiento
Variador directo de
movimiento desactivado
MDOC
Variador directo de
movimiento activado
MDR
Registro de desarme de
movimiento
MDW
Observar desarme de
movimiento
MEQ
Desactivacin de grupo de
movimiento
MGS
IMMC
Control multivariable
modular
control de
procesos
texto estructurado
bloque de funciones
control de
movimiento
lgica de escalera
de rels
texto estructurado
MOD
266
lgica de escalera
de rels
texto estructurado
bloque de funciones
control de
movimiento
lgica de escalera
de rels
texto estructurado
MOV
283
lgica de escalera
de rels
control de
lgica de escalera
de rels
texto estructurado
Mdulo
Mover
MRAT
control de
movimiento
control de
movimiento
control de
control de
movimiento
control de
movimiento
control de
movimiento
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
MRHD
control de
MRP
237
lgica de escalera
de rels
texto estructurado
bloque de funciones
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
144
lgica de escalera
de rels
texto estructurado
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
procesos
texto estructurado
bloque de funciones
258
lgica de escalera
de rels
texto estructurado
bloque de funciones
control de
procesos
bloque de funciones
Multiplexor
MVM
285
lgica de escalera
de rels
288
texto estructurado
bloque de funciones
274
lgica de escalera
de rels
texto estructurado
bloque de funciones
MSF
Servo de movimiento
desactivado
MSG
Mensaje
MSO
Servo de movimiento
activado
MSTD
Desviacin estndar de
movimiento
MUL
MUX
control de
movimiento
lgica de escalera
de rels
texto estructurado
control de
lgica de escalera
de rels
texto estructurado
MVMT
lgica de escalera
de rels
texto estructurado
NEG
control de
lgica de escalera
de rels
texto estructurado
control de
movimiento
Posicin de redefinir
movimiento
Multiplicar
MGSP
MINC
lgica de escalera
de rels
texto estructurado
MGSD
Cadena central
control de
movimiento
Leva de salida de
movimiento
desactivacin de movimiento
MDO
MID
Captura mnima
MCTP
control de
Posicin de transformada de movimiento
clculo de movimiento
MDF
lgica de escalera
de rels
Restablecimiento de
desactivacin de grupo de
movimiento
19
Ubicacin de instrucciones
Instruccin:
Ubicacin:
Lenguajes:
Instruccin:
Ubicacin:
Lenguajes:
NEQ
242
lgica de escalera
de rels
texto estructurado
bloque de funciones
PFL
PhaseManager
lgica de escalera
de rels
texto estructurado
457
lgica de escalera
de rels
PID mejorado
control de
procesos
texto estructurado
bloque de funciones
314
lgica de escalera
de rels
texto estructurado
bloque de funciones
PID
497
lgica de escalera
de rels
texto estructurado
texto estructurado
bloque de funciones
Proporcional + Integral
control de
procesos
texto estructurado
bloque de funciones
Filtro de muesca
control de
procesos
OCON
641
bloque de funciones
Multiplicador de impulsos
control de
procesos
texto estructurado
bloque de funciones
88
lgica de escalera
de rels
Proporcional de posicin
control de
procesos
texto estructurado
bloque de funciones
POVR
PhaseManager
307
lgica de escalera
de rels
texto estructurado
bloque de funciones
Comando de anulacin de
fase de equipo
lgica de escalera
de rels
texto estructurado
PhaseManager
lgica de escalera
de rels
texto estructurado
PhaseManager
lgica de escalera
de rels
texto estructurado
PhaseManager
lgica de escalera
de rels
texto estructurado
PhaseManager
lgica de escalera
de rels
texto estructurado
553
lgica de escalera
de rels
texto estructurado
bloque de funciones
control de
texto estructurado
bloque de funciones
Diferente de
NOP
Sin operacin
NOT
NO a nivel de bits
NTCH
ONS
O a nivel de bits
OREF
641
bloque de funciones
99
texto estructurado
bloque de funciones
94
lgica de escalera
de rels
Referencia de salida
OSFI
Un impulso en flanco
descendente con entrada
OSF
Un impulso en flanco
descendente
OSRI
91
texto estructurado
bloque de funciones
91
lgica de escalera
de rels
82
lgica de escalera
de rels
84
lgica de escalera
de rels
86
lgica de escalera
de rels
PhaseManager
lgica de escalera
de rels
texto estructurado
Activacin de salida
OTL
Enclavamiento de salida
OTU
Desenclavamiento de salida
PATT
Conectar a fase de equipo
PCLF
PhaseManager
PCMD
Desconectar de fase de
equipo
20
lgica de escalera
de rels
texto estructurado
PhaseManager
lgica de escalera
de rels
texto estructurado
PhaseManager
lgica de escalera
de rels
texto estructurado
PDET
PI
PMUL
PPD
Fase de equipo en pausa
PRNP
Parmetros de nueva fase de
equipo
PSC
Estado de fase completo
RAD
Un impulso en flanco
ascendente
OTE
Proporcional integral
derivativo
PXRQ
Un impulso en flanco
ascendente con entrada
OSR
PIDE
POSP
Un impulso
OR
Radianes
RESD
RES
141
lgica de escalera
de rels
436 y 474
lgica de escalera
de rels
texto estructurado
bloque de funciones
control de
procesos
texto estructurado
bloque de funciones
Rampa y estabilizacin
control de
procesos
texto estructurado
bloque de funciones
RTO
112
lgica de escalera
de rels
124
texto estructurado
bloque de funciones
Restablecer
RET
Retorno
RLIM
Limitador de rgimen
RMPS
Temporizador retentivo
activado
RTOR
Temporizador retentivo
activado con
restablecimiento
Ubicacin de instrucciones
Instruccin:
Ubicacin:
Lenguajes:
Instruccin:
Ubicacin:
Lenguajes:
RTOS
621
lgica de escalera
de rels
texto estructurado
SSV
176
lgica de escalera
de rels
texto estructurado
lgica de escalera
de rels
texto estructurado
bloque de funciones
STD
376
lgica de escalera
de rels
614
lgica de escalera
de rels
texto estructurado
616
lgica de escalera
de rels
texto estructurado
255
lgica de escalera
de rels
texto estructurado
bloque de funciones
300
lgica de escalera
de rels
texto estructurado
526
lgica de escalera
de rels
texto estructurado
bloque de funciones
450
lgica de escalera
de rels
556
lgica de escalera
de rels
bloque de funciones
120
texto estructurado
bloque de funciones
108
lgica de escalera
de rels
116
texto estructurado
bloque de funciones
104
lgica de escalera
de rels
control de
procesos
texto estructurado
bloque de funciones
TPT
Puntos de rastreo
631
lgica de escalera
de rels
561
lgica de escalera
de rels
bloque de funciones
561
texto estructurado
454
lgica de escalera
de rels
texto estructurado
REAL en cadena
SBR
436
Subrutina
SCL
Desviacin estndar de
archivo
STOD
control de
procesos
texto estructurado
bloque de funciones
control de
procesos
texto estructurado
bloque de funciones
control de
procesos
bloque de funciones
Establecer dominante
control de
procesos
texto estructurado
bloque de funciones
SFP
460
lgica de escalera
de rels
texto estructurado
462
lgica de escalera
de rels
texto estructurado
520
lgica de escalera
de rels
texto estructurado
bloque de funciones
TND
lgica de escalera
de rels
texto estructurado
Convertir en BCD
control de
procesos
texto estructurado
bloque de funciones
Temporizador de retardo a la
desconexin con
restablecimiento
control de
procesos
texto estructurado
bloque de funciones
TOF
420
lgica de escalera
de rels
TONR
428
lgica de escalera
de rels
Temporizador de retardo a la
conexin con
restablecimiento
424
lgica de escalera
de rels
TON
lgica de escalera
de rels
bloque de funciones
TOT
Escalar
SCRV
Curva en S
SEL
Seleccionar
SETD
Pausa SFC
SFR
Restablecer SFC
SIN
Seno
SIZE
381
Tamao en elementos
SNEG
Cambiar signo seleccionado
SOC
Controlador de segundo
orden
SQI
Secuenciador de entrada
SQL
Carga de secuenciador
SQO
Secuenciador de salida
SQR
270
Raz cuadrada
SQRT
SSUM
Sumador seleccionado
Cadena en REAL
SUB
SWPB
Intercambiar byte
TAN
Tangente
Fin temporal
TOD
TOFR
Temporizador de retardo a la
desconexin
Temporizador de retardo a la
conexin
Totalizador
270
texto estructurado
371
lgica de escalera
de rels
texto estructurado
TRN
control de
procesos
texto estructurado
bloque de funciones
TRUNC
control de
procesos
texto estructurado
bloque de funciones
Clasificacin de archivo
SRTP
STOR
Restar
Raz cuadrada
SRT
Cadena en DINT
Truncar
Truncar
UID
Inhabilitacin de interrupcin
de usuario
21
Ubicacin de instrucciones
Instruccin:
Ubicacin:
Lenguajes:
UIE
454
lgica de escalera
de rels
texto estructurado
control de
procesos
texto estructurado
bloque de funciones
623
lgica de escalera
de rels
texto estructurado
78
lgica de escalera
de rels
80
lgica de escalera
de rels
310
lgica de escalera
de rels
texto estructurado
bloque de funciones
546
lgica de escalera
de rels
texto estructurado
bloque de funciones
Habilitacin de interrupcin
de usuario
UPDN
Acumulador progresivo/
regresivo
UPPER
Maysculas
XIC
Examinar si est cerrado
XIO
Examinar si est abierto
XOR
O exclusivo a nivel de bits
XPY
X a la potencia de Y
(1)
22
Prefacio
Tarea/meta
Documentos
23
Prefacio
Esta seccin
Nombre de la instruccin
identifica la instruccin
define si la instruccin es una instruccin de entrada o de salida
Operandos
Estructura de la instruccin indica los bits y valores de estado de control de la instruccin, si los hay
Descripcin
Indicadores de estado
aritmtico
Condiciones de fallo
Ejecucin
Ejemplo
texto estructurado
bloque de funciones
24
Prefacio
atributos comunes
atributos de bloques de
funciones
Convenciones y trminos
relacionados
Establecer y borrar
Este manual usa las funciones de establecer y borrar para definir el
estado de los bits (booleanos) y los valores (no booleanos):
Este trmino
Significa
establecer
borrar
25
Prefacio
instruccin de entrada
condicin
de entrada
de rengln
instruccin de salida
condicin
de salida
de rengln
26
Prefacio
Posible condicin
Descripcin
preescn
El preescn para las rutinas de bloques de funciones es igual que para las rutinas de lgica de escalera de
rels. La nica diferencia radica en que el parmetro EnableIn para cada instruccin de bloque de funciones
se borra durante el preescn.
primer escn de instruccin El primer escn de instruccin se refiere a la primera vez que se ejecuta una instruccin despus del
preescn. El controlador usa el primer escn de instruccin para leer las entradas actuales y determinar el
estado apropiado en que estarn
primera ejecucin de
instruccin
La primera ejecucin de instruccin se refiere a la primera vez que la instruccin se ejecuta con una nueva
instancia de estructura de datos. El controlador usa la primera ejecucin de instruccin para generar
coeficientes y otros almacenamientos de datos que no cambian para un bloque de funciones despus de
una descarga inicial.
27
Prefacio
Notas:
28
Captulo
Introduccin
Si desea
detectar alarmas basadas en condiciones
booleanas (verdadero/falso)
Vea la pgina
30
texto estructurado
bloque de funciones
detectar alarmas en base al nivel o velocidad
de cambio de un valor
ALMA
42
texto estructurado
bloque de funciones
29
Captulo 1
Operandos:
Lgica de escalera de rels
En la lgica de escalera de rels, la entrada de condicin de alarma
(In) se obtiene a partir de la condicin de rengln.
Operando
Tipo
Formato
Descripcin
tag ALMD
ALARM_DIGITAL
Estructura
Estructura ALMD
In
BOOL
Tag
Inmediato
ProgAck
BOOL
Tag
Inmediato
ProgReset
BOOL
Tag
Inmediato
ProgDisable
BOOL
Tag
Inmediato
ProgEnable
BOOL
Tag
Inmediato
MinDurationPRE
DINT
Inmediato
MinDurationACC
DINT
Inmediato
Texto estructurado
ALMD(ALMD, In, ProgAck,
ProgReset, ProgDisable,
ProgEnable);
30
Captulo 1
Bloque de funciones
Operando
Tipo
Formato
Descripcin
tag ALMD
ALARM_DIGITAL
Estructura
Estructura ALMD
Estructura ALARM_DIGITAL
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
In
BOOL
InFault
BOOL
Indicador de estado deficiente para la entrada. El usuario puede establecer InFault para
indicar que la seal de entrada tiene un error. Cuando se establece, la instruccin establece
InFaulted (Status.1). Cuando se borra, la instruccin borra InFaulted (Status.1). En cualquier
caso, la instruccin contina evaluando In en lo que respecta a las condiciones de alarma.
La opcin predeterminada es borrado (buen estado).
Condition
BOOL
31
Captulo 1
Parmetro de
entrada
Tipo de datos
Descripcin
AckRequired
BOOL
Latched
BOOL
Especifica si la alarma est enclavada. Las alarmas enclavadas permanecen InAlarm cuando
la condicin de alarma se hace falsa, hasta que se reciba un comando de restablecimiento
(Reset). Cuando se establece, se enclava la alarma. Cuando se borra, se desenclava la
alarma.
Una alarma enclavada slo puede restablecerse cuando la condicin de alarma es falsa.
La opcin predeterminada es borrado.
ProgAck
BOOL
Se establece mediante el programa de usuario para confirmar la alarma. Requiere que una
transicin cambie de borrado a establecido mientras la alarma no est confirmada.
La opcin predeterminada es borrado.
Lgica de escalera de rels:
Copiado del operando de instruccin.
Texto estructurado:
Copiado del operando de instruccin.
OperAck
BOOL
Se establece mediante la interface del operador para confirmar la alarma. Requiere que una
transicin cambie de borrado a establecido mientras la alarma no est confirmada.
La instruccin borra este parmetro.
La opcin predeterminada es borrado.
ProgReset
BOOL
Se establece mediante el programa de usuario para restablecer la alarma. Requiere que una
transicin cambie de borrado a establecido mientras la alarma est InAlarm y la condicin In
no est en alarma.
La opcin predeterminada es borrado.
Lgica de escalera de rels:
Copiado del operando de instruccin.
Texto estructurado:
Copiado del operando de instruccin.
OperReset
BOOL
Se establece mediante la interface del operador para restablecer la alarma. Requiere que
una transicin cambie de borrado a establecido mientras la alarma est InAlarm y la
condicin In no est en alarma. La instruccin de alarma borra este parmetro.
La opcin predeterminada es borrado.
ProgSuppress
BOOL
OperSuppress
BOOL
32
Captulo 1
Parmetro de
entrada
Tipo de datos
Descripcin
ProgUnsuppress
BOOL
OperUnsuppress
BOOL
ProgDisable
BOOL
OperDisable
BOOL
ProgEnable
BOOL
OperEnable
BOOL
Se establece mediante la interface del operador para habilitar la alarma. Tiene precedencia
sobre un comando de inhabilitacin. La instruccin de alarma borra este parmetro.
La opcin predeterminada es borrado.
AlarmCountReset
BOOL
UseProgTime
BOOL
Especifica si se usa el reloj del controlador o el valor ProgTime para aplicar sello de hora a
eventos de cambio de estado. Cuando se establece, el valor de ProgTime proporciona el sello
de hora. Cuando se borra, el reloj del controlador proporciona el sello de hora.
La opcin predeterminada es borrado.
33
Captulo 1
Parmetro de
entrada
Tipo de datos
Descripcin
ProgTime
LINT
Si UseProgTime se establece, este valor se usa para proporcionar el valor de sello de hora
para todos los eventos. Esto permite que la aplicacin aplique sellos de hora obtenidos del
origen de la alarma, tal como un mdulo de entrada de secuencia de eventos.
Severity
DINT
MnDurationPRE
DINT
Descripcin
EnableOut
BOOL
Habilitacin de salida.
InAlarm
BOOL
Estado activo de alarma. Se establece cuando la alarma est activa. Se borra cuando la
alarma no est activa (estado normal).
Acked
BOOL
InAlarmUnack
BOOL
Suppressed
BOOL
Disabled
BOOL
MnDurationACC
DINT
Tiempo transcurrido desde que se detect la alarma Cuando este valor llega a
MnDuracinPRE, la alarma se activa (InAlarm est establecido) y se enva una notificacin a
los clientes.
AlarmCount
DINT
Nmero de veces que se activ la alarma (InAlarm est establecido). Si se llega al valor
mximo, el contador deja el valor en el mximo valor de conteo.
InAlarmTime
LINT
AckTime
LINT
RetToNormalTime
LINT
AlarmCountResetTime LINT
DeliveryER
Error de entrega del mensaje de notificacin de alarma. Se establece cuando hay un error de
entrega: es decir, ningn subscriptor de alarma estaba suscrito o por lo menos un suscriptor
no recibi el ltimo mensaje de estado de cambio de alarma. Se borra cuando la entrega es
exitosa o est en curso.
34
BOOL
Captulo 1
Descripcin
DeliveryDN
BOOL
DeliveryEN
BOOL
NoSubscriber
BOOL
NoConnection
BOOL
CommError
BOOL
AlarmBuffered
BOOL
Subscribers
DINT
SubscNotified
DINT
Status
DINT
InFaulted (Status.1)
BOOL
El programa del usuario estableci InFault para indicar datos de entrada de mala calidad.
La alarma contina evaluando In en lo que respecta a la condicin de alarma.
SeverityInv (Status.2)
BOOL
35
Captulo 1
En== Condition,
Condicin,MinDurationACC
MinDurationACC >=
>= Min
DurationPRE
In
MinDurationPRE
InAlarm = False
Acked
= Verdadero
Acked = True
Ack11
Ack
InAlarm = Falso
IInn
InAlarm = False
Acked==False
Falso
Acked
n n
dici itio
C=onCond
=
!
In In !
EE
nPPRR
atio
r
u
D
Min
C >=
C
C
C
A
A
n
ttioion In
I!n= !C
uurraa
=oCnod
ininDD
M
M
,
,
nitdioicn
nn
o
i
i
t
c
i
in
d
n
Co
== C
InAlarm = Verdadero
InAlarm = True
Acked = Falso
Acked = False
1
Ack
Ack1
InAlarm = Verdadero
InAlarm = True
Acked
= Verdadero
Acked = True
Enclavado
= Verdadero
Latched
= True
InAlarm = Falso
In== Condition,
Condicin, MinDurationACC
MinDurationACC >=
>= MinDurationPRE
In
MinDurationPRE
InAlarm
= Verdadero
InAlarm = True
Acked == Falso
False
Acked
InAlarm = False
Acked
= Verdadero
Acked
= True
2
2
!= Condicin,
Reset
In != In
Condition,
Reset
InIn!
=!=CC
onodnd
itiioci
n,nR,
eRsees 2 2
tet
1
Ack
Ack1
InAlarm
= Verdadero
InAlarm = True
Acked
= Verdadero
Acked
= True
La
1 alarma puede confirmarse de diferentes maneras: ProgAck, OperAck, clientes
Alarm can be acked by several different ways: ProgAck, OperAck, clients (RSLogix 5000
(software
RSLogix
5000,
software RSView).
software,
RSView
software).
2
La
2 alarma puede restablecerse de diferentes maneras: ProgReset, OperReset, clientes
Alarm can be reset by several different ways: ProgReset, OperReset, clients (RSLogix 5000
(software
RSLogix
5000,
software RSView).
software,
RSView
software).
36
Captulo 1
Falso
In = Condicin, MinDurationACC >=
In = Condition, MinDurationACC
>= MinDurationPRE
MinDurationPRE
InAlarm
= Falso
InAlarm = False
InAlarm
= Verdadero
InAlarm
= True
Acked= =True
Acked
Verdadero
InAlarm
= Verdadero
InAlarm
= True
Acked= =True
Acked
Verdadero
In In
!=!=Condicin
Condition
Enclavado
Latched
= True=
Verdadero
In = Condicin, MnDuracinACC >=
MnDuracinPRE
In = Condition, MinDurationACC
>= MinDurationPRE
InAlarm
Falso
InAlarm == False
In In
!=!=Condicin,
Resset
Condition, Reset
1
Alarm can be reset by several different ways: ProgReset, OperReset, clients (RSLogix 5000
(software
RSLogixsoftware)
5000, software RSView).
software, RSView
Indicadores de estado
aritmtico: ninguno
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
condicin de entrada de
rengln es verdadera
post-escn
37
Captulo 1
Condicin
preescn
Ninguna.
primera ejecucin de
instruccin
Ninguna.
Ninguna.
EnableIn se borra
La instruccin no se ejecuta.
La instruccin se ejecuta.
EnableOut se borra.
La instruccin se ejecuta.
La instruccin se ejecuta.
EnableOut se establece.
Ninguna.
Ninguna.
EnableIn se establece
post-escn
38
Captulo 1
39
Captulo 1
40
Captulo 1
Texto estructurado
Motor101FaultConditions := Motor101Overtemp OR
Motor101FailToStart;
ALMD(Motor101Fault,Motor101FaultConditions,Motor101Ack,
0,0,0 );
Bloque de funciones
41
Captulo 1
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
tag ALMA
ALARM_ANALOG
Estructura
Estructura ALMA
In
REAL
DINT
INT
SINT
Tag
inmediato
ProgAckAll
BOOL
Tag
Inmediato
ProgDisable
BOOL
Tag
Inmediato
ProgEnable
BOOL
Tag
Inmediato
HHlimit
REAL
Inmediato
HLimit
REAL
Inmediato
LLimit
REAL
Inmediato
LLLimit
REAL
Inmediato
42
Captulo 1
Texto estructurado
ALMA(ALMA, In, ProgAckAll,
ProgDisable, ProgEnable);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
tag ALMA
ALARM_ANALOG
Estructura
Estructura ALMA
43
Captulo 1
Estructura ALARM_ANALOG
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
In
REAL
El valor de entrada de alarma, el cual se compara con los lmites de alarma para detectar las
condiciones de la alarma.
Valor predeterminado = 0.0.
Lgica de escalera de rels:
Copiado del operando de instruccin.
Texto estructurado:
Copiado del operando de instruccin.
InFault
BOOL
Indicador de estado deficiente para la entrada. El usuario puede establecer InFault para indicar
que la seal de entrada tiene un error. Cuando se establece, la instruccin establece InFaulted
(Status.1). Cuando se borra, la instruccin borra InFaulted (Status.1). En cualquier caso, la
instruccin contina evaluando In en lo que respecta a las condiciones de alarma.
La opcin predeterminada es borrado (buen estado).
HHEnabled
BOOL
HabilitadaA
BOOL
LEnabled
BOOL
LLEnabled
BOOL
44
Captulo 1
Parmetro de
entrada
Tipo de datos
Descripcin
AckRequired
BOOL
ProgAckAll
BOOL
Se establece mediante el programa de usuario para confirmar todas las condiciones de esta la
alarma. Requiere que una transicin cambie de borrado a establecido mientras las condiciones
de alarma no estn confirmadas.
La opcin predeterminada es borrado.
Lgica de escalera de rels:
Copiado del operando de instruccin.
Texto estructurado:
Copiado del operando de instruccin.
OperAckAll
BOOL
Se establece mediante la interface del operador para confirmar todas las condiciones de esta la
alarma. Requiere que una transicin cambie de borrado a establecido mientras las condiciones
de alarma no estn confirmadas. La instruccin de alarma borra este parmetro.
La opcin predeterminada es borrado.
HHProgAck
BOOL
HHOperAck
BOOL
HProgAck
BOOL
HOperAck
BOOL
LProgAck
BOOL
LOperAck
BOOL
45
Captulo 1
Parmetro de
entrada
Tipo de datos
Descripcin
LLProgAck
BOOL
LLOperAck
BOOL
ROCPosProgAck
BOOL
ROCPosOperAck
BOOL
ROCNegProgAck
BOOL
ROCNegOperAck
BOOL
ProgSuppress
BOOL
OperSuppress
BOOL
ProgUnsuppress
BOOL
OperUnsuppress
BOOL
Se establece mediante la interface del operador para cancelar la supresin de la alarma. Tiene
precedencia sobre los comandos de supresin. La instruccin de alarma borra este parmetro.
La opcin predeterminada es borrado.
46
Parmetro de
entrada
Tipo de datos
Descripcin
ProgDisable
BOOL
Captulo 1
BOOL
ProgEnable
BOOL
OperEnable
BOOL
Se establece mediante la interface del operador para habilitar la alarma. Tiene precedencia
sobre un comando de inhabilitacin. La instruccin de alarma borra este parmetro.
La opcin predeterminada es borrado.
AlarmCountReset
BOOL
Se establece mediante el programa de usuario para reinicializar los conteos de alarmas para
todas las condiciones. Una transicin que cambia de borrado a establecido pone en cero los
conteos de alarmas.
La opcin predeterminada es borrado.
HHlimit
REAL
HHSeverity
DINT
Severidad de la condicin de alarma alta alta. Esto no afecta el procesamiento de alarmas por
parte del controlador, pero puede usarse para clasificar y filtrar funciones en el subscriptor de
alarmas.
Vlido = 1...1000 (1000 = la ms severa; 1 = la menos severa).
Valor predeterminado = 500.
HLimit
REAL
47
Captulo 1
Parmetro de
entrada
Tipo de datos
Descripcin
HSeverity
DINT
Severidad de la condicin de alarma alta. Esto no afecta el procesamiento de alarmas por parte
del controlador, pero puede usarse para clasificar y filtrar funciones en el subscriptor de
alarmas.
Vlido = 1...1000 (1000 = la ms severa; 1 = la menos severa).
Valor predeterminado = 500.
LLimit
REAL
LSeverity
DINT
Severidad de la condicin de alarma baja. Esto no afecta el procesamiento de alarmas por parte
del controlador, pero puede usarse para clasificar y filtrar funciones en el subscriptor de
alarmas.
Vlido = 1...1000 (1000 = la ms severa; 1 = la menos severa).
Valor predeterminado = 500.
LLLimit
REAL
LLSeverity
DINT
Severidad de la condicin de alarma baja baja. Esto no afecta el procesamiento de alarmas por
parte del controlador, pero puede usarse para clasificar y filtrar funciones en el subscriptor de
alarmas.
Vlido = 1...1000 (1000 = la ms severa; 1 = la menos severa).
Valor predeterminado = 500.
MnDurationPRE
DINT
Preajuste de duracin mnima (milisegundos) para que una condicin de nivel de alarma
permanezca verdadera antes de que la condicin sea marcada como InAlarm y se enve
notificacin de la alarma a los clientes. El controlador recolecta datos de alarmas tan pronto
como se detecta la condicin de alarma; por lo tanto, no se pierden datos durante la espera
hasta cumplir con la duracin mnima. No se aplica a condiciones de velocidad de cambio.
MinDurationPRE slo se aplica a la primera excursin de normal en cualquier direccin. Por
ejemplo, una vez que la condicin alta sobrepasa el tiempo de espera, la condicin alta alta se
activa inmediatamente, mientras que una condicin baja esperar el perodo de tiempo de
espera.
Vlido = 0...2,147,483,647.
Valor predeterminado = 0.
48
Captulo 1
Parmetro de
entrada
Tipo de datos
Descripcin
Deadband
REAL
Banda muerta para detectar que los niveles de alarma alta alta, alta, baja y baja baja han
regresado a lo normal.
Una banda muerta diferente de cero puede reducir la vibracin de la condicin de alarma si el
valor In est cambiando continuamente pero permanece cerca del nivel de umbral de la
condicin. El valor de la banda muerta no afecta la transicin al estado InAlarm (activo). Una
vez que una condicin de nivel est activa, pero antes de que la condicin regrese al estado
inactivo (normal), el valor In debe, o bien:
caer por debajo del umbral menos la banda muerta (para condiciones alta y alta alta).
o bien
subir por encima del umbral ms la banda muerta (para condiciones baja y baja baja).
La banda muerta no se usa para condicionar la medicin del tiempo de duracin mnima.
Vlido = 0 Deadband < Span desde la primera alarma baja habilitada hasta la primera alarma
alta habilitada.
Valor predeterminado = 0.0.
ROCPosLimit
REAL
Lmite para una velocidad de cambio creciente, en unidades por segundo. La deteccin se
habilita para cualquiera valor > 0.0 si ROCPeriod tambin es > 0.0.
Vlido = 0.0...valor con punto flotante (coma flotante) mximo posible.
Valor predeterminado = 0.0.
ROCPosSeverity
DINT
ROCNegLimit
REAL
Lmite para una velocidad de cambio decreciente, en unidades por segundo. La deteccin se
habilita para cualquiera valor > 0.0 si ROCPeriod tambin es > 0.0.
Vlido = 0.0...valor con punto flotante (coma flotante) mximo posible.
Valor predeterminado = 0.0.
ROCNegSeverity
DINT
ROCPeriod
REAL
49
Captulo 1
Parmetro de salida
Tipo de datos
Descripcin
EnableOut
BOOL
Habilitacin de salida.
InAlarm
BOOL
Estado activo de alarma. Se establece cuando cualquier condicin de alarma est activa.
Se borra cuando todas las condiciones de alarma no estn activas (estado normal).
AnyInAlarmUnack
BOOL
HHInAlarm
BOOL
Estado de condicin de alarma alta alta. Se establece cuando existe una condicin de
alarma alta alta. Se borra cuando no existe una condicin de alarma alta alta.
HInAlarm
BOOL
Estado de condicin de alarma alta. Se establece cuando existe una condicin de alarma
alta. Se borra cuando no existe una condicin de alarma alta.
LInAlarm
BOOL
Estado de condicin de alarma baja. Se establece cuando existe una condicin de alarma
baja. Se borra cuando no existe una condicin de alarma baja.
LLInAlarm
BOOL
Estado de condicin de alarma baja baja. Se establece cuando existe una condicin de
alarma baja baja. Se borra cuando no existe una condicin de alarma baja baja.
ROCPosInAlarm
BOOL
ROCNegInAlarm
BOOL
ROC
REAL
Velocidad de cambio calculada del valor In. Este valor se actualiza cuando la instruccin se
escanea despus de cada ROCPeriod transcurrido. El valor ROC se usa para evaluar
condiciones de ROCPosInAlarm y ROCNegInAlarm.
ROC = (muestra actual de In muestra previa de In)/ROCPeriod
HHAcked
BOOL
Estado confirmado de condicin alta alta. Se establece cuando se confirma una condicin
alta alta. Siempre se establece cuando AckRequired se borra. Se borra cuando no se
confirma una condicin alta alta.
HAcked
BOOL
Estado confirmado de condicin alta. Se establece cuando se confirma una condicin alta.
Siempre se establece cuando AckRequired se borra. Se borra cuando no se confirma una
condicin alta.
LAcked
BOOL
LLAcked
BOOL
ROCPosAcked
BOOL
ROCNegAcked
BOOL
HHInAlarmUnack
BOOL
50
Captulo 1
Parmetro de salida
Tipo de datos
Descripcin
HInAlarmUnack
BOOL
LInAlarmUnack
BOOL
LLInAlarmUnack
BOOL
ROCPosInAlarmUnack
BOOL
ROCNegInAlarmUnack
BOOL
Suppressed
BOOL
Disabled
BOOL
MnDurationACC
DINT
Tiempo transcurrido desde que se detect una condicin de alarma. Cuando este valor llega
a MinDurationPRE, todas las condiciones de nivel de alarma detectadas se activan
(xInAlarm est establecido) y se enva una notificacin a los clientes.
HHInAlarmTime
LINT
Sello de hora cuando la instruccin ALMA detect que el valor In excedi el lmite de
condicin alta alta para la transicin ms reciente al estado activo.
HHAlarmCount
DINT
El nmero de veces que se activ la condicin alta alta. Si se llega al valor mximo,
el contador deja el valor en el mximo valor de conteo.
HInAlarmTime
LINT
Sello de hora cuando la instruccin ALMA detect que el valor In excedi el lmite de
condicin alta para la transicin ms reciente al estado activo.
HAlarmCount
DINT
El nmero de veces que se activ la condicin alta. Si se llega al valor mximo, el contador
deja el valor en el mximo valor de conteo.
LInAlarmTime
LINT
Sello de hora cuando la instruccin ALMA detect que el valor In excedi el lmite de
condicin baja para la transicin ms reciente al estado activo.
LAlarmCount
DINT
El nmero de veces que se activ la condicin baja. Si se llega al valor mximo, el contador
deja el valor en el mximo valor de conteo.
LLInAlarmTime
LINT
Sello de hora cuando la instruccin ALMA detect que el valor In excedi el lmite de
condicin baja baja para la transicin ms reciente al estado activo.
LLAlarmCount
DINT
El nmero de veces que se activ la condicin baja baja. Si se llega al valor mximo,
el contador deja el valor en el mximo valor de conteo.
ROCPosInAlarmTime
LINT
Sello de hora cuando la instruccin ALMA detect que el valor In excedi el lmite de
condicin de velocidad de cambio positiva para la transicin ms reciente al estado activo.
ROCPosInAlarmCount
DINT
ROCNegInAlarmTime
LINT
Sello de hora cuando la instruccin ALMA detect que el valor In excedi el lmite de
condicin de velocidad de cambio negativa para la transicin ms reciente al estado activo.
ROCNegAlarmCount
DINT
51
Captulo 1
Parmetro de salida
Tipo de datos
Descripcin
AckTime
LINT
RetToNormalTime
LINT
AlarmCountResetTime
LINT
DeliveryER
BOOL
Error de entrega del mensaje de notificacin de alarma. Se establece cuando hay un error
de entrega: ningn subscriptor de alarma estaba suscrito, o por lo menos un suscriptor no
recibi el ltimo mensaje de estado de cambio de alarma. Se borra cuando la entrega se
realiza correctamente o est en curso.
DeliveryDN
BOOL
DeliveryEN
BOOL
NoSubscriber
BOOL
NoConnection
BOOL
CommError
BOOL
AlarmBuffered
BOOL
Subscribers
DINT
SubscNotified
DINT
Status
DINT
InstructFault (Status.0)
52
BOOL
Captulo 1
Parmetro de salida
Tipo de datos
Descripcin
InFaulted (Status.1)
BOOL
El programa del usuario estableci InFault para indicar datos de entrada de mala calidad.
La alarma contina evaluando In en lo que respecta a las condiciones de alarma.
SeverityInv (Status.2)
BOOL
AlarmLimitsInv
(Status.3)
BOOL
DeadbandInv (Status.4)
BOOL
ROCPosLimitInv
(Status.5)
BOOL
ROCNegLimitInv
(Status.6)
BOOL
ROCPeriodInv (Status.7)
BOOL
53
Captulo 1
Ack1 1
Ack
HinAlarm
= False
False
HInAlarm =
HAcked
False
HAcked =
= False
InIn<<
((HHLLi
imiit
m
t
nd)
dbaand)
Deaadb
- e
mitit - D
ERE
(HHLliim
PnRP
iotnio
InIn<< (
arta
nuDru
iniD
M
M
==
CC>>
AACC
ttioionn
uurraa
D
n
in
Mi
itit,, M
InIn>=>=HHLimit,
>=MinDurationPRE
MinDurationPRE
HHLimit,MinDurationACC
MinDurationACC >=
- Dee
aaddb
baannd
d))
im
HLLim
>==H
InIn>
Ack1
Ack
HinAlarm
= True
HInAlarm = True
HAcked
= True
True
HAcked =
H alarm condition can be acked by several different ways: HProgAck, HOperAck, ProgAckAll, OperAckAll,
HHinAlarm
= False
HHInAlarm = False
HHAcked
HHAcked == False
False
InIn>=<=LLimit,
>=MinDurationPRE
MinDurationPRE
LLimit,MinDurationACC
MinDurationACC >=
Ack1
Ack1
LinAlarm
= False
LInAlarm = False
LAcked
False
LAcked =
= False
nd))
dbaand
IInn <>
Deaadb
(LLLLiim
it+- De
m
it
miitt +
i
(LLLlim
PREE
- De
PnR
InIn <> (
adba
atiotino
uurar
ndd)
ininDD
)
M
M
=
=
>>
ACCCC
A
tiioonn
uurraat
inDD
n
i
M
,
it,itM
Lim
Lim
=<=LL
InI>n
HH alarm condition can be acked by several different ways: HHProgAck, HHOperAck, ProgAckAll, OperAckAll,
LLinAlarm
= False
False
LLInAlarm =
LAcked ==True
LLAcked
True
LLinAlarm
= True
LLInAlarm = True
LAcked ==False
LLAcked
False
)
anndd)
b
a
d
b
a
Deead
> ((LL
it +- D
LLLLim
it
E
m
i
R
imiitt (LLLLLLim
oPnRPE
+D
Deead
rtioatni
IInn >< (
Ack1
adbba
uDrua
Ack1
anndd)
iniDn
MM
=
)
=
>
CC>
C
C
A
ionnA
urraattio
inDDu
Min
it,, M
t
i
im
m
LLinAlarm
= True
LLLi
LLInAlarm = True
==LLL
LAcked ==True
InIn><
LLAcked
True
IInn <
1
Ack1
Ack
Ack1
Ack
LLinAlarm = False
LLInAlarm = False
LAcked
LLAcked==False
False
LinAlarm
= True
LInAlarm = True
LAcked
True
LAcked =
= True
11
La
de alarma
LLacked
puedebyconfirmarse
de diferentes
maneras:LLOperAck,
LLProgAck,ProgAckAll,
LLOperAck,OperAckAll,
ProgAckAll,
LLcondicin
alarm condition
can be
several different
ways: LLProgAck,
clients (RSLogix
5000(software
software, RSView
OperAckAll,
clientes
RSLogixsoftware).
5000, software RSView).
L alarm condition can be acked by several different ways: LProgAck, LOperAck, ProgAckAll, OperAckAll,
In(CurrentSample)
In(PreviousSample)
In(Current
Sample) -- In(Previou
sSample)
ROCPeriod
ROCPeriod
ROC
ROC <=
<= -RocNegLimit
-RocNegLimit
ROC <=
ROC
>= RocPosLimit
RocPosLimit
RocPosInAlarm
= False
False
RocPosInAlarm =
RocPosAcked =
= True
RocPosAcked
True
RROOC
C<<
Ack11
Ack
RocPosInAlarm
= False
False
RocPosInAlarm =
RocPosAcked = False
RocPosAcked
1
1
54
RRooc
cPPoo
ssLLim
imiitt
miitt
ssLLiim
cPPoo
Rooc
<>== R
C
C
RO
HHinAlarm
True
HHInAlarm =
= True
HHAcked
HHAcked =
= True
True
InIn>=<=LLLimit,
>= MinDurationPRE
MinDurationPRE
LLLimit,MinDurationACC
MinDurationACC >=
LinAlarm = True
LInAlarm = True
LAcked
= False
False
LAcked =
ProgAckAll,
OperAckAll,
clientes
(software
RSLogix 5000, software RSView).
clients (RSLogix
5000 software,
RSView
software).
ROC ==
ROC
Ack1
Ack
ProgAckAll,
OperAckAll,
clientes
(software
RSLogix 5000, software RSView).
clients (RSLogix
5000 software,
RSView
software).
HHinAlarm
= True
True
HHInAlarm =
HHAcked
False
HHAcked =
= False
ProgAckAll,
OperAckAll,
clientes
(software
RSLogix 5000, software RSView).
clients (RSLogix
5000 software,
RSView
software).
LinAlarm
False
LInAlarm == False
LAcked
= True
True
LAcked =
ndd) )
dbbaan
IInn<<
eeaad
-- DD
(H(HHH
t
i
it
m
LLim
E
PRE
imiitt
HHLLiim
PoRn
-- DDe
< ((HH
ranti
eaadd
rautio
uD
n
bbaann IInn
i
D
in
MM
dd))
>=>=
ACCC
AnC
taiotino
r
a
r
u
DDu
Minin
M
im
miitt,,
HLLi
=H
=
>
>
Inn
Ack1
Ack
HHinAlarm
False
HHInAlarm == False
HHAcked
= True
True
HHAcked =
HinAlarm
True
HInAlarm =
= True
HAcked = False
HAcked
it
Limit
PoossLim
RocPosInAlarm
= True
True
RocPosInAlarm =
RocPosAcked
= False
False
RocPosAcked =
RocNegInAlarm
False
RocNegInAlarm == False
RocNegAcked
= True
True
RocNegAcked =
cP
< RRooc
<
ROOCC
R
Ack1 1
Ack
Ack11
Ack
RocPosInAlarm
True
RocPosInAlarm == True
RocPosAcked = True
True
La
condicin de alarma ROCPos puede confirmarse de diferentes maneras: RocPosProgAck, RocPosOperAck,
ROCPos alarm condition can be acked by several different ways: RocPosProgAck, RocPosOperAck, ProgAckAll,
l,
ProgAckAll,
OperAckAll,
clientes
(softwareRSView
RSLogixsoftware).
5000, software RSView).
OperAckAll, clients
(RSLogix
5000 software,
RocNegInAlarm
False
RocNegInAlarm == False
RocNegAcked =
RocNegAcked
= False
False
1
RROOC
C<>R
imitit
Lim
NeeggL
-Rooc
cNNeg
egLLi
miitt
im
occN
< --RRo
C>
OC
RO
R
it
Limit
im
NegeLg
RooccN
R
=
<=
OCC<
RRO
RocNegInAlarm
= True
True
RocNegInAlarm =
RocNegAcked = False
RocNegAcked
Ack1
Ack
RocNegInAlarm
True
RocNegInAlarm == True
RocNegAcked =
RocNegAcked
= True
True
La
condicin de alarma ROCNeg puede confirmarse de diferentes maneras: RocNegProgAck, RocNegOperAck,
1
ROCNeg alarm condition can be acked by several different ways: RocNegProgAck, RocNegOperAck, ProgAckAll,
,
ProgAkkAll,
clientes
5000, software RSView).
OperAckAll,OperAckAll,
clients (RSLogix
5000(software
software, RSLogix
RSView software).
Captulo 1
HAcked = True
HinAlarm = True
HInAlarm = False
HInAlarm = True
HAcked = True
LLLimit,MinDurationACC
MinDurationACC >=
>= MinDurationPRE
In In
<=>=LLimit,
MinDurationPRE
LinAlarm = True
LinAlarm = False
LInAlarm = False
LAcked = True
LInAlarm = True
LAcked = True
HHinAlarm ==True
HHInAlarm
True
HHAcked ==True
HHAcked
True
LLinAlarm = True
LLAcked = True
(LLimit +- Deadband)
InIn> <(LLimit
Deadband)
In >=
HHLimit,MinDurationACC
MinDurationACC >=
In >=
HHLimit,
>=MinDurationPRE
MinDurationPRE
HHinAlarm == False
HHInAlarm
False
(HHLimit -- Deadband)
InIn< <(HHLimit
Deadband)
In >=
LLLimit,MinDurationACC
MinDurationACC >=
In <=
LLLimit,
>=MinDurationPRE
MinDurationPRE
LLinAlarm = False
LLInAlarm = False
LLAcked = True
LLInAlarm = True
ROC
ROC= =
In(CurrentSample)
In(Current
Sample) -- In(PreviousSample)
In(PreviousSample)
ROCPeriod
ROCPeriod
Donde
una nueva
muestraonenthe
el siguiente
Wheresearecolecta
new sample
is collected
escn
despus
de the
queROCPeriod
haya transcurrido
ROCPeriod
next scan
after
has elapsed.
ROC>=>= ROCPosLimit
ROCPosLimit
ROC
RocPosInAlarm ==False
RocPosInAlarm
False
RocPosInAlarm ==True
RocPosInAlarm
True
RocPosAcked
= True
RocPosAcked
= True
RocNegInAlarm ==True
RocNegInAlarm
True
RocNegAcked
= True
RocNegAcked
= True
ROC<> ROCPosLimit
ROCPosLimit
ROC
ROC<=
>=-ROCNegLimit
-ROCNegLimit
ROC
RocNegInAlarm == False
RocNegInAlarm
False
ROC>> -ROCNegLimit
-ROCNegLimit
ROC
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico se establecen para la salida ROC.
Condiciones de fallo:
Fallo menor
Tipo de fallo
Cdigo de fallo
Overflow ROC
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
La instruccin no se ejecuta.
EnableOut se borra.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
EnableOut se establece.
post-escn
55
Captulo 1
Condicin
preescn
Ninguna.
primera ejecucin de
instruccin
Ninguna.
Ninguna.
EnableIn se borra
La instruccin no se ejecuta.
La instruccin se ejecuta.
EnableOut se borra.
La instruccin se ejecuta.
La instruccin se ejecuta.
EnableOut se establece.
Ninguna.
Ninguna.
EnableIn se establece
post-escn
56
Captulo 1
57
Captulo 1
58
Captulo 1
59
Captulo 1
60
Captulo 1
Texto estructurado
ALMA(Tank32Level,Tank32LT,Tank32LevelAck,0, 0);
Bloque de funciones
61
Captulo 1
62
Captulo 1
Descripcin
Nivel de entrada (High High, High, Low o Low Low) o velocidad de cambio de entrada
(positiva o negativa) para activar una alarma.
Seleccione las condiciones de la alarma e introduzca los lmites para dichas condiciones.
Inhabilite las condiciones de velocidad de cambio introduciendo un 0 para el perodo o
lmite.
Severity
Minimum Duration
Introduzca el tiempo en ms que una condicin de alarma debe estar activa antes de que se
reporte la alarma.
Acknowledgement Required
63
Captulo 1
Opcin
Descripcin
Alarm class
View command
Ejecute un comando en la estacin del operador cuando lo solicite el operador para una
alarma especfica. Esto permite que un operador ejecute cualquier comando de FactoryTalk
View estndar, tal como llamar a plantillas y pantallas especficas, ejecutar macros,
acceder a archivos de ayuda e iniciar aplicaciones externas. Cuando se produce la condicin
de alarma y se muestra al operador, un botn en las pantallas de resumen e indicador deja
que el operador ejecute un comando de visualizacin asociado.
Tenga cuidado a fin de ingresar la sintaxis de comando correcta y pruebe el comando en
tiempo de ejecucin, ya que cuando se introduce el comando no se realiza una verificacin
de errores.
64
Captulo 1
Descripcin
Message String
65
Captulo 1
Opcin
Descripcin
Associated tags
Puede seleccionar hasta cuatro tags adicionales desde el proyecto del controlador para
asociarlos con la alarma. Los valores de estos tags se envan con un mensaje de alarma al
servidor de alarmas. Por ejemplo, una alarma digital para una vlvula de alivio de presin
tambin podra incluir informacin tal como la velocidad de la bomba y la temperatura del
tanque.
Los tags asociados pueden ser de cualquier tipo de datos atmico (BOOL, DINT, INT, SINT o
REAL) o un STRING. Pueden ser elementos en un UDT o una matriz. No se permiten
referencias a matrices variables. Si la alarma est bajo el control del controlador, los tags
asociados tambin deben estar bajo el control del controlador.
Opcionalmente, incorpore los tags asociados en la cadena de texto de mensaje.
Los valores de tag asociados siempre se envan con la alarma, visibles para el operador e
introducidos en el registro del historial, independientemente de que los haya incorporado
en la cadena de mensaje.
Alarm name
Condition name
/*S:0 %ConditionName*/
El umbral de la alarma:
66
Captulo 1
Cdigo
Valor BOOL
/*S:0 %Tag4*/
/*S:26 %Tag4*/
67
Captulo 1
68
Almacenamiento de
alarmas en el bfer
Captulo 1
69
Captulo 1
Acceda programticamente
a informacin de alarmas
Acceso
Programa de usuario
Elementos de estructura de
alarmas
ProgAck
ProgReset
ProgSuppress
ProgDisable
ProgEnable
HMI personalizado
OperAck
OperReset
OperSuppress
OperDisable
OperEnable
Consideraciones
Use la lgica del controlador para acceder programticamente a
elementos del sistema de alarmas. Por ejemplo, el programa de
control puede determinar si se inhabilitar una serie de alarmas
relacionadas con una sola causa raz. Por ejemplo, el programa de
control podra inhabilitar una instruccin de alarma,
MyDigitalAlarm de tipo de datos ALARM_DIGITAL, mediante
acceso al miembro de tag MyDigitalAlarm.ProgDisable.
Cree una plantilla de HMI personalizada para acceder a elementos
del sistema de alarmas. Por ejemplo, si el operador necesita retirar
una herramienta, en lugar de inhabilitar manualmente o suprimir
alarmas individualmente desde las pantallas de alarmas, el
operador puede presionar una tecla de inhabilitacin que brinda
acceso a un tag MyDigitalAlarm.OperDisable.
Los parmetros del operador trabajan con cualquier interface de
Rockwell Automation o de otros fabricantes para permitir el control
de estados de alarma.
Cuando se establece un parmetro del operador, la instruccin
evala si puede responder a la peticin, y posteriormente
restablece siempre el parmetro.
No accesible
70
Captulo 1
Suprima o inhabilite
alarmas
Suprima alarmas para retirar las alarmas cuya existencia usted conoce
desde el HMI, pero mantenga las alarmas activas. Esto le permitir
borrar el resumen de alarmas mientras que usted est resolviendo una
alarma conocida sin continuar viendo informacin de alarmas. Una
alarma suprimida no aparece en las pantallas de indicadores o
resumen de operador, pero una alarma suprimida igualmente se enva
a los suscriptores, se registra en la base de datos histricos, puede
cambiar el estado de alarma, tener sello de hora y responder a otras
interacciones programticas o del operador.
Cuando una alarma se suprime, sta contina funcionando
normalmente, monitorea el parmetro In en lo que respecta a
las condiciones de alarma y responde a peticiones de
confirmacin. Todos los suscriptores son notificados de este
evento, y todo mensaje de alarma generado mientras la alarma
se encuentra en estado suprimido incluye el estado suprimido.
Los clientes de alarmas pueden responder de manera diferente a
las alarmas suprimidas. Por ejemplo, las alarmas suprimidas
pueden registrarse en la base de datos histricos pero no
pueden anunciarse al operador.
Cuando una alarma no est suprimida, todos los suscriptores
son notificados y los mensajes de alarma a los suscriptores ya no
incluyen el estado suprimido.
Inhabilite una alarma para tratar la alarma como si sta no existiera en
el programa de control. Una alarma inhabilitada no cambia el estado
de alarma ni se registra en la base de datos histricos. Una alarma
inhabilitada aun se rastrea y puede rehabilitarse en el explorador de
estado de alarmas en el software FactoryTalk View SE.
Cuando una alarma est inhabilitada, todas sus condiciones se
establecen en el estado inicial (InAlarm se borra y Acked se
establece). El parmetro In no es monitoreado en lo que
respecta a las condiciones de alarma. Todos los suscriptores son
notificados de este evento.
71
Captulo 1
Ejecucin de alarma
basada en el controlador
Fuente
Descripcin
Los miembros de tag de alarma en su mayor parte se procesan cuando la aplicacin del
usuario escanea la instruccin de alarma. Esto incluye lo siguiente:
procesamiento de cambios a los parmetros de configuracin;
evaluacin de la condicin de alarma;
medicin del tiempo transcurrido para MinDuration;
captura de los sellos de hora de InAlarmTime y RetToNormalTime;
captura de valores de tag asociados;
procesamiento de los comandos Prog y Oper;
Adems, estos miembros de estado de tag de alarma se actualizan a medida que los
mensajes de alarma se entregan a cada suscriptor, de manera asncrona con el escn del
programa:
DeliveryEN, DeliveryER, DeliveryDN
NoSubscriber, NoConnection, CommError, AlarmBuffered, SubscNotified
Mensajes de clientes
Los mensajes de clientes son procesados a medida que se reciben, de manera asncrona
con el escn del programa.
Comandos restablecer, confirmar, inhabilitar/habilitar y suprimir/cancelar supresin
desde un terminal RSLogix 5000.
Comandos restablecer, confirmar, inhabilitar/habilitar y suprimir/cancelar supresin
desde un suscriptor de alarmas FactoryTalk View SE.
72
Captulo 1
Tamao aproximado
1012 bytes
1100 bytes
1522 bytes
73
Captulo 1
Tamao aproximado
2228 bytes
2604 bytes
4536 bytes
74
Captulo 1
Tiempo de escn
Estos tiempos de ejecucin muestran cmo las instrucciones ALMD y
ALMA afectan el tiempo de escn total.
Estado de rengln
Tiempos de ejecucin
Alarma digital
(ALMD)
Alarma analgica
(ALMA)
8 s
17 s
Rengln
verdadero
8 s
60 s
Rengln
falso
35 s
17 s
Rengln
verdadero
35 s
126 s
Cambio de estado de
alarma
75
Captulo 1
Notas:
76
Captulo
Instrucciones de bits
(XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Introduccin
Si desea
habilitar salidas cuando se establece un bit.
Vea la pgina
78
texto estructurado(1)
habilitar salidas cuando se borra un bit.
XIO
establecer un bit
OTE
80
(1)
82
texto estructurado(1)
establecer un bit (retentivo)
OTL
OTU
84
(1)
86
(1)
ONS
OSR
91
OSF
94
OSRI
texto estructurado
bloque de funciones
96
OSFI
texto estructurado
bloque de funciones
99
(1)
88
texto estructurado
(1)
No hay una instruccin equivalente en texto estructurado. Use otra programacin en texto estructurado para lograr el mismo resultado. Vea la descripcin de la
instruccin.
77
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
bit de datos
BOOL
tag
Texto estructurado
El texto estructurado no tiene una instruccin XIC, pero usted puede
lograr los mismos resultados usando una construccin IF...THEN.
IF data_bit THEN
<statement>;
END_IF;
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es verdadera
examinar bit
de datos
bit de datos = 0
la condicin de salida de
rengln se establece como
falsa
bit de datos = 1
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
78
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
Texto estructurado
IF limit_switch THEN
<statement>;
END_IF;
Texto estructurado
IF S:V THEN
<statement>;
END_IF;
79
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
bit de datos
BOOL
tag
Texto estructurado
El texto estructurado no tiene una instruccin XIO, pero usted puede
lograr los mismos resultados usando una construccin IF...THEN.
IF NOT data_bit THEN
<statement>;
END_IF;
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es verdadera
examinar bit de
datos
bit de datos = 0
la condicin de salida de
rengln se establece como
verdadera
bit de datos = 1
la condicin de salida de
rengln se establece como
falsa
fin
post-escn
80
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
Texto estructurado
IF NOT limit_switch_2 THEN
<statement>;
END_IF;
Texto estructurado
IF NOT S:V THEN
<statement>;
END_IF;
81
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
bit de datos
BOOL
tag
Texto estructurado
El texto estructurado no tiene una instruccin OTE, pero usted puede
lograr los mismos resultados usando una asignacin no retentiva.
data_bit [:=] BOOL_expression;
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
post-escn
82
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
Texto estructurado
light_1 [:=] switch;
83
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Enclavamiento de salida
(OTL)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
bit de datos
BOOL
tag
Texto estructurado
El texto estructurado no tiene una instruccin OTL, pero usted puede
lograr los mismos resultados usando una construccin IF...THEN y
una asignacin.
IF BOOL_expression THEN
data_bit := 1;
END_IF;
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
post-escn
84
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
Texto estructurado
IF BOOL_expression THEN
light_2 := 1;
END_IF;
85
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Desenclavamiento de
salida (OTU)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
bit de datos
BOOL
tag
Texto estructurado
El texto estructurado no tiene una instruccin OTU, pero usted puede
lograr los mismos resultados usando una construccin IF...THEN y
una asignacin.
IF BOOL_expression THEN
data_bit := 0;
END_IF;
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
post-escn
86
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
Texto estructurado
IF BOOL_expression THEN
light_2 := 0;
END_IF;
87
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Un impulso (ONS)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
storage bit
BOOL
tag
Texto estructurado
El texto estructurado no tiene una instruccin ONS, pero usted puede
lograr los mismos resultados usando una construccin IF...THEN.
IF BOOL_expression AND NOT storage_bit THEN
<statement>;
END_IF;
storage_bit := BOOL_expression;
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
88
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es verdadera
examinar bit de
almacenamiento
bit de
almacenamiento = 0
el bit de almacenamiento
se establece
la condicin de salida de
rengln se establece como
verdadera
bit de
almacenamiento = 1
el bit de almacenamiento
permanece establecido
la condicin de salida de
rengln se establece como
falsa
post-escn
fin
Ejemplo: Normalmente una instruccin ONS est precedida por una instruccin
de entrada, porque la instruccin ONS se escanea cuando sta se
habilita y cuando se inhabilita para que funcione correctamente. Una
vez que la instruccin ONS se habilita, la condicin de entrada de
rengln debe borrarse, o el bit de almacenamiento debe borrarse para
que la instruccin ONS se habilite nuevamente.
89
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Texto estructurado
IF limit_switch_1 AND NOT storage_1 THEN
sum := sum + 1;
END_IF;
storage_1 := limit_switch_1;
90
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Un impulso en flanco
ascendente (OSR)
Captulo 2
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
storage bit
BOOL
tag
output bit
BOOL
tag
condicin de entrada
del rengln
bit de almacenamiento
bit de salida
la instruccin
se ejecuta
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
91
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es verdadera
examinar bit de
almacenamiento
bit de
almacenamiento = 0
bit de
almacenamiento = 1
el bit de almacenamiento se
establece
el bit de salida se establece
la condicin de salida de
rengln se establece como
verdadera
el bit de almacenamiento
permanece establecido
el bit de salida se borra la
condicin de salida de
rengln se establece como
verdadera
post-escn
fin
92
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
93
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Un impulso en flanco
descendente (OSF)
Operandos:
Operandos de lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
storage bit
BOOL
tag
output bit
BOOL
tag
bit de
almacenamiento
bit de salida
la instruccin
se ejecuta
la instruccin se restablece
durante la siguiente
ejecucin del escn
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
94
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
Ejecucin:
Condicin
preescn
El bit de almacenamiento se borra para evitar una activacin no vlida durante el primer
escn.
El bit de salida se borra.
La condicin de salida de rengln se establece como falsa.
condicin de entrada de
rengln es falsa
examinar bit de
almacenamiento
bit de
almacenamiento = 0
bit de
almacenamiento = 1
el bit de almacenamiento
permanece borrado
el bit de salida se borra la
condicin de salida de
rengln se establece como
falsa
el bit de almacenamiento
se borra
el bit de salida se establece
la condicin de salida de
rengln se establece como
falsa
fin
post-escn
95
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Un impulso en flanco
ascendente con entrada
(OSRI)
Operandos:
OSRI(OSRI_tag);
Texto estructurado
Operando
Tipo
Formato
Descripcin
tag OSRI
FBD_ONESHOT
estructura
estructura OSRI
Bloque de funciones
Operando
Tipo
Formato
Descripcin
tag OSRI
FBD_ONESHOT
estructura
estructura OSRI
Estructura FBD_ONESHOT
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Bloque de funciones:
Si se borra, la instruccin no se ejecuta y las salidas no se actualizan.
Si se establece, la instruccin se ejecuta.
La opcin predeterminada es establecido.
Texto estructurado:
Ningn efecto. La instruccin se ejecuta.
InputBit
BOOL
Bit de entrada. Esto es equivalente a la condicin del rengln para la instruccin OSR de
lgica de escalera de rels.
La opcin predeterminada es borrado.
Descripcin
EnableOut
BOOL
OutputBit
BOOL
Bit de salida
96
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
InputBit
InputBitn-1
OutputBit
la instruccin
se ejecuta
40048
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
primera ejecucin de
instruccin
EnableIn se borra
n. a.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
La instruccin se ejecuta.
Ninguna.
Ninguna.
post-escn
97
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Texto estructurado
OSRI_01.InputBit := limit_switch1;
OSRI(OSRI_01);
State := OSRI_01.OutputBit;
Bloque de funciones
98
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Un impulso en flanco
descendente con entrada
(OSFI)
Captulo 2
Operandos:
OSFI(OSFI_tag);
Texto estructurado
Operando
Tipo
Formato
Descripcin
tag OSFI
FBD_ONESHOT
estructura
estructura OSFI
Bloque de funciones
Operando
Tipo
Formato
Descripcin
tag OSFI
FBD_ONESHOT
estructura
estructura OSFI
Estructura FBD_ONESHOT
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Bloque de funciones:
Si se borra, la instruccin no se ejecuta y las salidas no se actualizan.
Si se establece, la instruccin se ejecuta.
La opcin predeterminada es establecido.
Texto estructurado:
Ningn efecto. La instruccin se ejecuta.
InputBit
BOOL
Bit de entrada. Esto es equivalente a la condicin del rengln para la instruccin OSF de
lgica de escalera de rels
La opcin predeterminada es borrado.
Descripcin
EnableOut
BOOL
OutputBit
BOOL
Bit de salida
99
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
InputBit n-1
OutputBit
la instruccin
se ejecuta
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
primera ejecucin de
instruccin
EnableIn se borra
n. a.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
La instruccin se ejecuta.
Ninguna.
Ninguna.
post-escn
100
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Captulo 2
Texto estructurado
OSFI_01.InputBit := limit_switch1;
OSFI(OSFI_01);
Output_state := OSFI_01.OutputBit;
Bloque de funciones
101
Captulo 2
Instrucciones de bits (XIC, XIO, OTE, OTL, OTU, ONS, OSR, OSF, OSRI, OSFI)
Notas:
102
Captulo
Introduccin
Si desea
Vea la pgina
TON
104
TOF
108
acumular tiempo
RTO
112
TONR
texto estructurado
116
TOFR
RTOR
bloque de funciones
texto de estructura
120
bloque de funciones
texto estructurado
124
bloque de funciones
conteo progresivo
CTU
128
conteo regresivo
CTD
132
CTUD
texto estructurado
136
bloque de funciones
restablecer un temporizador o un contador
RES
141
103
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador de retardo a
la conexin (TON)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Timer
TIMER
tag
estructura de temporizador
Preset
DINT
inmediato
Acum
DINT
inmediato
Estructura TIMER
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.TT
BOOL
.DN
BOOL
.PRE
DINT
El valor de preajuste especifica el valor (en unidades de 1 ms) al que debe llegar el valor
acumulado para que la instruccin establezca el bit .DN.
.ACC
DINT
El valor acumulado especifica el nmero de milisegundos que han transcurrido desde que se
habilit la instruccin TON.
104
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
preajuste
valor acumulado de temporizador (.ACC) 0
el temporizador no
lleg al valor .PRE
16649
IMPORTANTE
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
.PRE < 0
34
.ACC < 0
34
105
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es verdadera
Bit .DN = 1
Bit .DN = 0
Bit .EN = 0
Bit .EN = 1
.ACC .PRE
examine .ACC
no
la condicin de salida de
rengln se establece como
verdadera
.ACC = 2,147,483,647
fin
post-escn
106
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
107
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador de retardo a
la desconexin (TOF)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Timer
TIMER
tag
estructura de temporizador
Preset
DINT
inmediato
Acum
DINT
inmediato
Estructura TIMER
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.TT
BOOL
.DN
BOOL
.PRE
DINT
El valor de preajuste especifica el valor (en unidades de 1 ms) al que debe llegar el valor
acumulado para que la instruccin borre el bit .DN.
.ACC
DINT
El valor acumulado especifica el nmero de milisegundos que han transcurrido desde que se
habilit la instruccin TOF.
108
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
16650
IMPORTANTE
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
.PRE < 0
34
.ACC < 0
34
109
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
Bit .DN = 0
Bit .DN = 1
Bit .EN = 1
Bit .EN = 0
examine .ACC
.ACC .PRE
el valor .ACC
retorna al
valor inicial
.DN se borra
el bit .TT se borra
el bit .EN se borra
no
la condicin de salida de
rengln se establece como
falsa
.ACC = 2,147,483,647
fin
post-escn
110
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
111
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador retentivo
activado (RTO)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Timer
TIMER
tag
estructura de temporizador
Preset
DINT
inmediato
Acum
DINT
inmediato
Estructura TIMER
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.TT
BOOL
.DN
BOOL
.PRE
DINT
El valor de preajuste especifica el valor (en unidades de 1 ms) al que debe llegar el valor
acumulado para que la instruccin establezca el bit .DN.
.ACC
DINT
El valor acumulado especifica el nmero de milisegundos que han transcurrido desde que se
habilit la instruccin RTO.
112
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
preajuste
16651
IMPORTANTE
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
.PRE < 0
34
.ACC < 0
34
113
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Ejecucin:
Condicin
preescn
Bit .DN = 1
Bit .DN = 0
Bit .EN = 0
Bit .EN = 1
examine .ACC
el valor .ACC
retorna al
valor inicial
s
.ACC .PRE
.DN se establece
el bit .TT se borra
el bit .EN se
establece
no
la condicin de salida de
rengln se establece como
verdadera
.ACC = 2,147,483,647
fin
post-escn
114
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
115
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador de retardo
a la conexin con
restablecimiento (TONR)
Operandos:
TONR(TONR_tag);
Texto estructurado
Variable
Tipo
Formato
Descripcin
tag TONR
FBD_TIMER
estructura
estructura TONR
Bloque de funciones
Operando
Tipo
Formato
Descripcin
tag TONR
FBD_TIMER
estructura
estructura TONR
Estructura FBD_TIMER
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Bloque de funciones:
Si se borra, la instruccin no se ejecuta y las salidas no se actualizan.
Si se establece, la instruccin se ejecuta.
La opcin predeterminada es establecido.
Texto estructurado:
Ningn efecto. La instruccin se ejecuta.
TimerEnable
BOOL
PRE
DINT
Reset
BOOL
Descripcin
EnableOut
BOOL
ACC
BOOL
EN
BOOL
TT
BOOL
116
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
Parmetro de
entrada
Tipo de datos
Descripcin
DN
BOOL
Salida de temporizacin efectuada. Indica cuando el tiempo acumulado es mayor o igual que
el valor de preajuste.
Status
DINT
La instruccin detect uno de los siguientes errores de ejecucin. ste no es un error menor
ni mayor del controlador. Verifique los bits de estado restantes para determinar lo que
ocurri.
PresetInv (Status.1)
BOOL
preajuste
valor acumulado de temporizador (.ACC) 0
el temporizador no
lleg al valor PRE
16649
117
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
IMPORTANTE
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
EnableIn se borra
n. a.
EnableIn se establece
primera ejecucin de
instruccin
La instruccin se ejecuta.
La instruccin se ejecuta.
EnableOut se establece.
restablecimiento
Cuando el parmetro de entrada Reset se establece, Cuando el parmetro de entrada Reset se establece,
la instruccin borra EN, TT y DN y establece
la instruccin borra EN, TT y DN y establece
ACC = cero.
ACC = cero.
post-escn
Ninguna.
118
Ninguna.
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
Texto estructurado
TONR_01.Preset := 500;
TONR_01.Reset : = reset;
TONR_O1.TimerEnable := limit_switch1;
TONR(TONR_01);
timer_state := TONR_01.DN;
119
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador de retardo a
la desconexin con
restablecimiento (TOFR)
Operandos:
TOFR(TOFR_tag);
Texto estructurado
Variable
Tipo
Formato
Descripcin
TOFR tag
FBD_TIMER
estructura
estructura TOFR
Tipo
Formato
Descripcin
TOFR tag
FBD_TIMER
estructura
estructura TOFR
Estructura FBD_TIMER
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Bloque de funciones:
Si se borra, la instruccin no se ejecuta y las salidas no se actualizan.
Si se establece, la instruccin se ejecuta.
La opcin predeterminada es establecido.
Texto estructurado:
Ningn efecto. La instruccin se ejecuta.
TimerEnable
BOOL
PRE
DINT
Reset
BOOL
Descripcin
EnableOut
BOOL
ACC
BOOL
EN
BOOL
TT
BOOL
120
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
Parmetro de
entrada
Tipo de datos
Descripcin
DN
BOOL
Salida de temporizador expirado. Indica cuando el tiempo acumulado es mayor o igual que el
valor de preajuste.
Status
DINT
La instruccin detect uno de los siguientes errores de ejecucin. ste no es un error menor
ni mayor del controlador. Verifique los bits de estado restantes para determinar lo que
ocurri.
PresetInv (Status.1)
BOOL
16650
121
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
IMPORTANTE
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
EnableIn se borra
n. a.
EnableIn se establece
primera ejecucin de
instruccin
La instruccin se ejecuta.
EnableOut se establece.
restablecimiento
post-escn
Ninguna.
Ninguna.
122
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
Texto estructurado
TOFR_01.Preset := 500
TOFR_01.Reset := reset;
TOFR_O1.TimerEnable := limit_switch1;
TOFR(TOFR_01);
timer_state2 := TOFR_01.DN;
Bloque de funciones
123
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Temporizador retentivo
activado con
restablecimiento (RTOR)
Operandos:
RTOR(RTOR_tag);
Texto estructurado
Variable
Tipo
Formato
Descripcin
RTOR tag
FBD_TIMER
estructura
estructura RTOR
Tipo
Formato
Descripcin
RTOR tag
FBD_TIMER
estructura
estructura RTOR
Estructura FBD_TIMER
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Bloque de funciones:
Si se borra, la instruccin no se ejecuta y las salidas no se actualizan.
Si se establece, la instruccin se ejecuta.
La opcin predeterminada es establecido.
Texto estructurado:
Ningn efecto. La instruccin se ejecuta.
TimerEnable
BOOL
PRE
DINT
Reset
BOOL
Descripcin
EnableOut
BOOL
ACC
DINT
Tiempo acumulado en milisegundos. Este valor queda retenido aun cuando la entrada
TimerEnable se borra. sta es la diferencia entre el comportamiento de este bloque y el del
bloque TONR.
EN
BOOL
TT
BOOL
124
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
Parmetro de
entrada
Tipo de datos
Descripcin
DN
BOOL
Salida de temporizador expirado. Indica cuando el tiempo acumulado es mayor o igual que el
valor de preajuste.
Status
DINT
La instruccin detect uno de los siguientes errores de ejecucin. ste no es un error menor
ni mayor del controlador. Verifique los bits de estado restantes para determinar lo que
ocurri.
PresetInv (Status.1)
BOOL
preajuste
16651
125
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
IMPORTANTE
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
EnableIn se borra
n. a.
EnableIn se establece
Bloque de funciones:
La instruccin se ejecuta.
primera ejecucin de
instruccin
La instruccin se ejecuta.
EnableOut se establece.
restablecimiento
Cuando el parmetro de entrada Reset se establece, Cuando el parmetro de entrada Reset se establece,
la instruccin borra EN, TT y DN y establece
la instruccin borra EN, TT y DN y establece
ACC = cero.
ACC = cero.
post-escn
Ninguna.
126
Ninguna.
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
Texto estructurado
RTOR_01.Preset := 500
RTOR_01.Reset := reset;
RTOR_O1.TimerEnable := limit_switch1;
RTOR(RTOR_01);
timer_state3 := RTOR_01.DN;
Bloque de funciones
127
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Counter
COUNTER
tag
estructura de contador
Preset
DINT
inmediato
Acum
DINT
inmediato
Estructura COUNTER
Mnemnico
Tipo de datos
Descripcin
.CU
BOOL
El bit de habilitacin de conteo progresivo indica que la instruccin CTU est habilitada.
.DN
BOOL
.OV
BOOL
El bit de overflow indica que el contador excedi el lmite superior de 2,147,483,647, por lo
que el contador regresa a -2,147,483,648 y comienza nuevamente el conteo progresivo.
.UN
BOOL
El bit de underflow indica que el contador excedi el lmite inferior de -2,147,483,648, por lo
que el contador regresa a 2,147,483,647 y comienza nuevamente el conteo regresivo.
.PRE
DINT
El valor de preajuste especifica el valor al que debe llegar el valor acumulado para que la
instruccin establezca el bit .DN.
.ACC
DINT
128
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
preajuste
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
129
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Ejecucin:
Condicin
preescn
El bit .CU se establece para evitar incrementos no vlidos durante el primer escn del
programa.
La condicin de salida de rengln se establece como falsa.
bit .CU = 0
el valor .ACC
retorna al valor
inicial
.ACC = .ACC + 1
no
bit .CU = 1
el bit .UN = 1
examine el bit .UN
el bit .UN = 0
el bit .UN = 0
el bit .UN = 1
el bit .OV = 0
el bit .OV se
establece
el bit .OV = 1
examine .ACC
.ACC .PRE
el bit .DN se
establece
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
130
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
131
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Counter
COUNTER
tag
estructura de contador
Preset
DINT
inmediato
Acum
DINT
inmediato
Estructura COUNTER
Mnemnico
Tipo de datos
Descripcin
.CD
BOOL
El bit de habilitacin de conteo regresivo indica que la instruccin CTD est habilitada.
.DN
BOOL
.OV
BOOL
El bit de overflow indica que el contador excedi el lmite superior de 2,147,483,647, por lo
que el contador regresa a -2,147,483,648 y comienza nuevamente el conteo progresivo.
.UN
BOOL
El bit de underflow indica que el contador excedi el lmite inferior de -2,147,483,648, por lo
que el contador regresa a 2,147,483,647 y comienza nuevamente el conteo regresivo.
.PRE
DINT
El valor de preajuste especifica el valor al que debe llegar el valor acumulado para que la
instruccin establezca el bit .DN.
.ACC
DINT
132
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
Descripcin: La instruccin CTD normalmente se usa con una instruccin CTU que
referencia la misma estructura de contador.
Cuando se habilita y el bit .CD se borra, la instruccin CTD
decrementa el contador en uno. Cuando se habilita y el bit .CD se
establece, o cuando se inhabilita, la instruccin CTD retiene su
valor .ACC.
condicin de entrada del rengln
bit de habilitacin de conteo regresivo (.CD)
bit de conteo regresivo efectuado (.DN)
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
133
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Ejecucin:
Condicin
preescn
El bit .CD se establece para evitar decrementos no vlidos durante el primer escn del
programa.
La condicin de salida de rengln se establece como falsa.
el bit .CD = 0
el valor .ACC
retorna al
valor inicial
.ACC = .ACC - 1
no
el bit .CD = 1
el bit .OV = 1
examine el bit .OV
el bit .OV = 0
el bit .UN = 0
el bit .UN = 1
el bit .OV = 0
el bit .UN se
establece
el bit .OV = 1
examine .ACC
.ACC .PRE
el bit .DN se
establece
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
134
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
135
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Conteo progresivo/
regresivo (CTUD)
Operandos:
CTUD(CTUD_tag);
Texto estructurado
Variable
Tipo
Formato
Descripcin
CTUD tag
FBD_COUNTER
estructura
estructura CTUD
Bloque de funciones
Operando
Tipo
Formato
Descripcin
CTUD tag
FBD_COUNTER
estructura
estructura CTUD
Estructura FBD_COUNTER
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Bloque de funciones:
Si se borra, la instruccin no se ejecuta y las salidas no se actualizan.
Si se establece, la instruccin se ejecuta.
La opcin predeterminada es establecido.
Texto estructurado:
Ningn efecto. La instruccin se ejecuta.
CUEnable
BOOL
136
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Parmetro de
entrada
Tipo de datos
Descripcin
CDEnable
BOOL
Captulo 3
DINT
Valor de preajuste del contador. ste es el valor al cual debe llegar el valor acumulado para
que se establezca DN.
Vlido = cualquier nmero entero
El valor predeterminado es 0.
Reset
BOOL
Descripcin
EnableOut
BOOL
ACC
DINT
Valor acumulado.
CU
BOOL
CD
BOOL
DN
BOOL
Conteo efectuado. Se establece cuando el valor acumulado es mayor o igual que el valor de
preajuste.
OV
BOOL
Overflow del contador. Indica que el contador excedi el lmite superior de 2,147,483,647.
Seguidamente el contador regresa a 2,147,483,648 y comienza nuevamente el conteo
regresivo.
UN
BOOL
Underflow del contador. Indica que el contador excedi el lmite inferior de 2,147,483,648.
Seguidamente el contador regresa a 2,147,483,647 y comienza nuevamente el conteo
regresivo.
137
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Conteo progresivo
CUEnable
preajuste
Conteo regresivo
CDEnable
bit de habilitacin de conteo regresivo (CD)
bit de conteo regresivo efectuado (.DN)
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
138
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Captulo 3
Ejecucin:
Condicin
preescn
No se requiere inicializacin.
No se requiere inicializacin.
primera ejecucin de
instruccin
EnableIn se borra
n. a.
EnableIn se establece
EnableOut se establece.
restablecimiento
post-escn
Ninguna.
Ninguna.
Texto estructurado
CTUD_01.Preset := 500;
CTUD_01.Reset := Restart;
CTUD_O1.CUEnable := limit_switch1;
CTUD(CTUD_01);
counter_state := CTUD_01.DN;
139
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Bloque de funciones
140
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Restablecer (RES)
Captulo 3
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
estructura
TIMER
tag
CONTROL
COUNTER
La instruccin borra
TIMER
el valor .ACC
los bits de estado de control
COUNTER
el valor .ACC
los bits de estado de control
CONTROL
el valor .POS
los bits de estado de control
ATENCIN
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
141
Captulo 3
Instrucciones de temporizador y contador (TON, TOF, RTO, TONR, TOFR, RTOR, CTU, CTD, CTUD, RES)
Ejecucin:
Condicin
preescn
post-escn
142
Captulo
Instrucciones de entrada/salida
(MSG, GSV, SSV, IOT)
Introduccin
Si desea
enviar datos desde o hacia otro mdulo
Vea la pgina
144
texto estructurado
obtener informacin de estado del controlador
GSV
176
texto estructurado
establecer informacin de estado del
controlador
SSV
176
texto estructurado
enviar valores de salida a un mdulo de E/S
o controlador consumidor en un punto
especfico de su lgica
IOT
201
texto estructurado
143
Captulo 4
Mensaje (MSG)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Message
control
MESSAGE
tag
estructura de mensaje
Texto estructurado
MSG(MessageControl);
Estructura MESSAGE
ATENCIN
IMPORTANTE
No cambie esos bits por s mismos ni como parte de la palabra FLAGS. Si lo hace,
el controlador puede sufrir un fallo no recuperable. El controlador borra el
proyecto de su memoria cuando sufre un fallo no recuperable.
144
Captulo 4
Mnemnico
Tipo de
datos
Descripcin
.FLAGS
INT
El miembro .FLAGS proporciona acceso a los miembros de estado (bits) en una palabra de 16 bits.
Este bit:
Es este miembro:
.EW
.ER
.DN
.ST
.EN
.TO
.EN_CC
Importante: No cambie los bits EW, ER, DN ni ST del miembro FLAGS. Por ejemplo, no borre toda la
palabra FLAGS. El controlador ignora el cambio y usa los valores de los bits almacenados
internamente.
.ERR
INT
Si el bit .ER est establecido, la palabra de cdigo de error identifica los cdigos de error de la
instruccin MSG.
.EXERR
INT
.REQ_LEN
INT
.DN_LEN
INT
.EW
BOOL
.ER
BOOL
Se establece el bit de error cuando el controlador detecta el fallo de una transferencia. El bit .ER se
restablece la prxima vez que la condicin de entrada de rengln cambia de falsa a verdadera.
Importante: No cambie el bit ER.
.DN
BOOL
Se establece el bit de efectuado cuando se transfiere correctamente el ltimo paquete del mensaje.
El bit .DN se restablece la prxima vez que la condicin de entrada de rengln cambia de falsa a
verdadera.
Importante: No cambie el bit DN.
.ST
BOOL
.EN
BOOL
.TO
BOOL
.EN_CC
BOOL
El bit de habilitacin de cach determina cmo administrar la conexin MSG. Consulte Seleccione
una opcin de cach en la pgina 4-173. Las conexiones para instrucciones MSG a travs del puerto
serie no se guardan en la memoria cach aunque se establezca el bit .EN_CC.
.ERR_SRC
SINT
Usado por el software RSLogix 5000 para mostrar la ruta de error en el cuadro de dilogo Message
Configuration
145
Captulo 4
Mnemnico
Tipo de
datos
Descripcin
.DestinationLink
INT
Para cambiar el vnculo de destino de un DH+ o CIP con mensaje de ID de origen, establezca este
miembro en el valor requerido.
.DestinationNode
INT
Para cambiar el nodo de destino de un DH+ o CIP con mensaje de ID de origen, establezca este
miembro en el valor requerido.
.SourceLink
INT
Para cambiar el vnculo de origen de un DH+ o CIP con mensaje de ID de origen, establezca este
miembro en el valor requerido.
.Class
INT
Para cambiar el parmetro Class de un mensaje genrico de CIP, establezca este miembro en el valor
requerido.
.Attribute
INT
Para cambiar el parmetro Attribute de un mensaje genrico de CIP, establezca este miembro en el
valor requerido.
.Instance
DINT
Para cambiar el parmetro Instance de un mensaje genrico de CIP, establezca este miembro en el
valor requerido.
.LocalIndex
DINT
Si usted usa un asterisco [*] para eliminar el nmero de elemento de la matriz local, el LocalIndex
proporciona el nmero de elemento. Para cambiar el nmero de elemento, establezca este miembro
en el valor requerido.
Si el mensaje:
lee datos
Elemento de destino
escribe datos
Elemento de origen
.Channel
SINT
Para enviar el mensaje a travs de un canal diferente del mdulo 1756-DHRIO, establezca este
miembro en el valor requerido. Use el carcter ASCII A o B.
.Rack
SINT
.Group
SINT
.Slot
SINT
.Path
STRING
Si el mensaje se
enva a travs de
esta red:
E/S remotas
universales
octal
ControlNet
decimal (0-15)
Para enviar el mensaje a un controlador diferente, establezca este miembro en la nueva ruta.
Introduzca la ruta en valores decimales.
Omita las comas [,]
Por ejemplo, para una ruta de 1, 0, 2, 42, 1, 3, introduzca $01$00$02$2A$01$03.
Para llegar a un dispositivo y crear automticamente una porcin o toda la nueva cadena, haga clic
con el botn derecho del mouse en un tag de cadena y seleccione Go to Message Path Editor.
.RemoteIndex
146
DINT
Si usted usa un asterisco [*] para designar el nmero de elemento de la matriz remota, el
RemoteIndex proporciona el nmero de elemento. Para cambiar el nmero de elemento, establezca
este miembro en el valor requerido.
Si el mensaje:
lee datos
Elemento de origen
escribe datos
Elemento de destino
Captulo 4
Mnemnico
Tipo de
datos
Descripcin
.RemoteElement
STRING
Para especificar un tag o direccin diferente en el controlador al cual se enva el mensaje, establezca
este miembro en el valor requerido. Introduzca el tag o direccin en caracteres ASCII.
.UnconnnectedTimeout DINT
.ConnectionRate
DINT
.TimeoutMultiplier
SINT
Si el mensaje:
lee datos
Elemento de origen
escribe datos
Elemento de destino
Tiempo de espera para un mensaje no conectado o para hacer una conexin. El valor predeterminado
es 30 segundos.
Si el mensaje es
Entonces
no conectado
conectado
Tiempo de espera para un mensaje conectado una vez que tiene una conexin. Este tiempo de
espera es para la respuesta proveniente del otro dispositivo acerca del envo de datos.
Este tiempo de espera se aplica solamente despus de que se hace la conexin.
El tiempo de espera = ConnectionRate x TimeoutMultiplier.
El valor predeterminado de ConnectionRate es 7.5 segundos.
El valor predeterminado de TimeoutMultiplier es 0 (que es un factor de multiplicacin de 4).
El tiempo de espera predeterminado para los mensajes conectados es 30 segundos
(7.5 segundos x 4 = 30 segundos).
Para cambiar el tiempo de espera, cambie ConnectionRate y deje TimeoutMultiplier en el valor
predeterminado.
147
Captulo 4
bit .EW
conexin con .EN_CC = 0
bit .ST
bit .DN o bit .ER
41382
148
Donde
1
Descripcin
Donde
Captulo 4
Descripcin
el mensaje se enva
.EN se establece
.ST se establece
.EW se establece
.EW se borra
el mensaje se enva
.ST se establece
.EW se borra
.DN o .ER se establece
.ST se borra
La conexin est cerrada (si .EN_CC = 0)
3
Ejecucin:
Condicin
preescn
Ninguna.
149
Captulo 4
Condicin
bit .EN = 1
examine el bit .EN
bit .EN = 0
bit .EW = 1
examine el bit .EW
bit .EW = 0
bit .ST = 1
examine el bit .ST
bit .ST = 0
bit .DN = 1
examine el bit .DN
bit .DN = 0
bit .ER = 1
bit .ER = 0
examine el bit .ER
comando de
transferencia en
bloques
no
la ruta de acceso
del mdulo es
vlida
s
no
bit .DN = 1
s
bit .DN = 0
conexin de
mdulo en
ejecucin
no
ejecute la peticin de
mensaje
bit .ER = 1
examine el bit .ER
el bit .ER se
establece
bit .ER = 0
fin
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
150
Condicin
EnableIn se establece
n. a.
Captulo 4
La instruccin se ejecuta.
ejecucin de la instruccin
bit .EN = 1
bit .EN = 0
examine el bit .EN
bit .EW = 1
examine el bit .EW
bit .EW = 1
bit .EW = 0
bit .EW = 0
bit .ST = 1
examine el bit .ST
bit .ST = 1
bit .ST = 0
bit .ST = 0
bit .DN = 1
examine el bit .DN
el bit .EN se
establece
bit .DN = 0
bit .ER = 1
bit .ER = 0
examine el bit .ER
comando de
transferencia en
bloques
la ruta de acceso
del mdulo es
vlida
no
no
conexin de
mdulo en
ejecucin
no
el bit .ER se
establece
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Ninguna.
151
Captulo 4
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Cdigos de error
El software RSLogix 5000 no siempre muestra la descripcin completa.
Cdigo de error Descripcin
(hex)
Se muestra en el software
0001
idntico a la descripcin
0002
Recurso insuficiente
idntico a la descripcin
0003
Valor no vlido
idntico a la descripcin
0004
idntico a la descripcin
0005
idntico a la descripcin
0006
idntico a la descripcin
0007
Conexin perdida
idntico a la descripcin
0008
Servicio no compatible
idntico a la descripcin
0009
idntico a la descripcin
000A
idntico a la descripcin
000B
El estado ya existe
idntico a la descripcin
000C
idntico a la descripcin
000D
El objeto ya existe
idntico a la descripcin
000E
idntico a la descripcin
000F
Permiso denegado
idntico a la descripcin
0010
idntico a la descripcin
0011
La respuesta no cabe
idntico a la descripcin
0012
Fragmento primitivo
idntico a la descripcin
0013
idntico a la descripcin
0014
Atributo no compatible
idntico a la descripcin
0015
Demasiados datos
idntico a la descripcin
001A
idntico a la descripcin
001B
idntico a la descripcin
001C
idntico a la descripcin
001D
idntico a la descripcin
001E
idntico a la descripcin
152
Se muestra en el software
001F
idntico a la descripcin
0022
idntico a la descripcin
0025
idntico a la descripcin
0026
idntico a la descripcin
0027
idntico a la descripcin
0028
idntico a la descripcin
0029
idntico a la descripcin
00D1
error desconocido
00FB
error desconocido
00FC
error desconocido
00FD
Mensaje no inicializado
error desconocido
00FE
Expiracin de mensaje
error desconocido
00FF
error desconocido
Captulo 4
153
Captulo 4
Descripcin
Cdigo de
error
extendido
(hex.):
Descripcin
0100
Conexin en uso
0203
Expiracin de conexin
0103
Transporte no compatible
0204
0106
Conflicto de propiedad
0205
0107
No se encontr la conexin
0206
0108
0301
0109
0302
0110
Mdulo no configurado
0303
0111
EPR no compatible
0305
Coincidencia de firma
0114
Mdulo incorrecto
0311
Porte no disponible
0115
0312
0116
Revisin incorrecta
0315
0118
0317
Conexin no programada
011A
Descripcin
0203
Expiracin de conexin
154
Cdigo de error
extendido (hex.):
Descripcin
0000
0001
Captulo 4
Descripcin
Cdigo de
error
extendido
(hex.):
Descripcin
2001
IOI excesivo
2107
2002
2108
2018
Rechazo de semforo
2109
201B
201C
Tamao no vlido
210A
2100
Fallo de privilegio
210B
El smbolo no existe
2101
210E
2102
Contrasea no vlida
210F
2103
No se emiti contrasea
2110
No se puede escribir
2104
2111
No se puede leer
2105
2112
2106
Datos en uso
2113
2114
155
Captulo 4
R10.x y posteriores
.ERR
.ERR
.EXERR
Descripcin
.EXERR
0010
1000
0020
2000
0030
3000
0040
4000
0050
5000
0060
6000
0070
7000
0080
8000
0090
9000
00B0
B000
00F0
0001
F001
00F0
0002
F002
Direccin incompleta
00F0
0003
F003
Direccin incorrecta
00F0
0004
F004
00F0
0005
F005
00F0
0006
F006
00F0
0007
F007
00F0
0008
F008
00F0
0009
F009
156
Captulo 4
R10.x y posteriores
Descripcin
.ERR
.EXERR
.ERR
00F0
000A
F00A
00F0
000B
F00B
00F0
000C
F00C
00F0
000D
F00D
La peticin es redundante
00F0
000E
F00E
00F0
000F
F00F
00F0
0010
F010
Sin acceso
00F0
0011
F011
00F0
0012
F012
00F0
0013
F013
00F0
0014
F014
.EXERR
0015
F015
00F0
0016
F016
00F0
0017
F017
00F0
0018
F018
00F0
0019
F019
Etiqueta duplicada
00F0
001A
F01A
00F0
001B
F01B
00F0
001C
F01C
00F0
001D
F01D
157
Captulo 4
Se muestra en el
software
00D0
error desconocido
00D1
error desconocido
00D2
El escner solicit una lectura o una escritura, pero el mdulo de transferencia en bloques
respondi lo opuesto
error desconocido
00D3
El escner solicit una longitud y el mdulo de transferencia en bloques respondi con una
longitud diferente
error desconocido
00D6
El escner recibi una respuesta del mdulo de transferencia en bloques indicando que la
peticin de escritura fall.
error desconocido
00EA
El escner no estaba configurado para comunicarse con el rack que contendra este mdulo error desconocido
de transferencia en bloques
00EB
error desconocido
00EC
error desconocido
00ED
error desconocido
00EE
error desconocido
00EF
error desconocido
00F0
El escner recibi una peticin para restablecer los canales de E/S remotas mientras que
haba transferencias en bloques pendientes
error desconocido
00F3
error desconocido
00F5
error desconocido
00F6
error desconocido
00F7
error desconocido
00F8
error desconocido
00F9
error desconocido
00FA
error desconocido
00FB
error desconocido
00FC
Hubo una transferencia no vlida de datos de transferencia en bloques de escritura entre el error desconocido
adaptador y el mdulo de transferencia en bloques
00FD
158
error desconocido
Captulo 4
Los detalles que usted configura dependen del tipo de mensaje que
selecciona.
42976
Si el dispositivo receptor es un
Vea la pgina
Controlador Logix5000
160
Reconfiguracin de mdulo
161
CIP genrico
162
Controlador PLC-5
TypedRead PLC5
163
TypedWrite PLC5
Lectura de rango de palabras PLC5
Escritura de rango de palabras PLC5
Controlador SLC
Controlador MicroLogix
Mdulo de transferencia en bloques
TypedRead SLC
165
TypedWrite SLC
Lectura de transferencia en bloques
165
TypedRead PLC3
166
TypedWrite PLC3
Lectura de rango de palabras PLC3
Escritura de rango de palabras PLC3
Procesador PLC-2
167
159
Captulo 4
Especifique
Si selecciona un tipo de mensaje de lectura, el elemento de origen es la direccin de los datos que desea
leer en el dispositivo receptor. Use la sintaxis del dispositivo receptor.
Si selecciona un tipo de mensaje de escritura, el tag de origen es el primer elemento del tag que usted
desea enviar al dispositivo receptor.
Nmero de elementos
Elemento de destino
El nmero de elementos que usted lee/escribe depende del tipo de datos que usa. Un elemento se refiere a un
segmento de datos asociados. Por ejemplo, el tag timer1 es un elemento que consiste en una estructura de
control del temporizador.
Si selecciona un tipo de mensaje de lectura, el elemento de destino es el primer elemento del tag en el
controlador Logix5000 donde desea almacenar los datos que lee desde el dispositivo receptor.
Si selecciona un tipo de mensaje de escritura, el elemento de destino es la direccin del lugar en el
dispositivo receptor donde desea escribir los datos.
Si desea
160
Captulo 4
Seleccione
Tipo de mensaje
Reconfiguracin de mdulo
Texto estructurado
IF reconfigure[5] AND NOT reconfigure[6]THEN
Local:4:C.Ch0Config.HAlarmLimit := 60;
IF NOT change_Halarm.EN THEN
MSG(change_Halarm);
END_IF;
END_IF;
reconfigure[6] := reconfigure[5];
161
Captulo 4
En esta propiedad
Escriba o seleccione
Tipo de mensaje
CIP genrico
Tipo de servicio
Prueba de impulso
Origen
Destino
Restablecer los fusibles electrnicos en Tipo de mensaje
un mdulo de salida digital
Tipo de servicio
Origen
tag_name[0]
tag_name[1]
reservado, dejar 0
tag_name[2]
tag_name[3]
tag_name[4]
verificar el retardo
dejar en blanco
CIP genrico
Restablecer fusible
electrnico
tag_name de tipo DINT
Este tag representa una mscara de bit de los puntos en los cuales se
restablecen los fusibles
Destino
Restablecer diagnsticos enclavados en Tipo de mensaje
un mdulo de entrada digital
Tipo de servicio
Origen
dejar en blanco
CIP genrico
Restablecer diagnsticos enclavados (I)
tag_name de tipo DINT
Este tag representa una mscara de bit de los puntos en los cuales se
restablecen los diagnsticos.
CIP genrico
Restablecer diagnsticos enclavados (O)
tag_name de tipo DINT
Este tag representa una mscara de bit de los puntos en los cuales se
restablecen los diagnsticos.
162
Si desea
En esta propiedad
Escriba o seleccione
Tipo de mensaje
CIP genrico
Tipo de servicio
Captulo 4
Instancia
Tipo de mensaje
CIP genrico
Tipo de servicio
Instancia
Si desea
TypedRead PLC5
Leer datos de nmeros enteros de 16 bits, con punto flotante (coma flotante) o de tipo
de cadena y mantener la integridad de los datos. Vea Tipos de datos para mensajes
TypedRead y TypedWrite de PLC5 en la pgina 164.
TypedWrite PLC5
Escribir datos de nmeros enteros de 16 bits, con punto flotante (coma flotante) o de
tipo de cadena y mantener la integridad de los datos. Vea Tipos de datos para mensajes
TypedRead y TypedWrite de PLC5 en la pgina 164
163
Captulo 4
INT
REAL
INT
DINT (solamente escriba valores DINT a un controlador
PLC-5 si el valor es 32,768 y 32,767.)
INT
ST
STRING
palabras de 32 bits en
controlador Logix5000
164
palabras de 16 bits en
procesador PLC-5
Captulo 4
REAL
DINT
INT
Seleccione este
comando
Lectura de transferencia en
bloques
Escritura de transferencia
en bloques
Especifique
0 para el nmero de
elementos
165
Captulo 4
Si desea
TypedRead PLC3
TypedWrite PLC3
166
Captulo 4
palabras de 16 bits en
el procesador PLC-3
palabras de 32 bits en el
controlador Logix5000
Si desea
167
Captulo 4
Ejemplos de configuracin
MSG
Ruta de mensaje
Logix5000 Logix5000
tag de origen
array_1[0]
tag de destino
array_2[0]
Puede usar un tag de alias para el tag de origen (en el controlador Logix5000 de
origen).
No puede usar un tag de alias para el tag de destino. El destino debe ser un tag de
base.
Logix5000 PLC-5
tag de origen
array_1[0]
Logix5000 SLC
elemento de destino
N7:10
Puede usar un tag de alias para el tag de origen (en el controlador Logix5000 de
origen).
Logix5000 PLC-2
tag de origen
array_1[0]
elemento de destino
010
Logix5000 Logix5000
tag de origen
array_1[0]
tag de destino
array_2[0]
No puede usar un tag de alias para el tag de origen. El origen debe ser un tag de base.
Puede usar un tag de alias para el tag de destino (en el controlador Logix5000 de
origen).
Logix5000 PLC-5
elemento de origen
N7:10
Logix5000 SLC
tag de destino
array_1[0]
Puede usar un tag de alias para el tag de destino (en el controlador Logix5000 de
origen).
Logix5000 PLC-2
168
elemento de origen
010
tag de destino
array_1[0]
Captulo 4
Entonces
Escriba la ruta.
169
Captulo 4
Ejemplo
La configuracin de E/S del controlador
tiene el mdulo que obtiene el mensaje.
Haga clic en el botn Browse y seleccione el mdulo.
170
Donde
port
Captulo 4
Es
Para esta red
Tipo
backplane
ControlNet
EtherNet/IP
DH+ canal A
DH+ canal B
DF1 canal 1
(canal 1 serie)
next_address
backplane
DF1 (serie)
ControlNet
DH+
EtherNet/IP
171
Captulo 4
Seleccione
Y especifique
Controlador Logix5000
CIP
DH+
Canal:
Vnculo de origen:
Procesador PLC-3
Vnculo de destino
Procesador PLC-2
Nodo de destino:
172
Si el dispositivo de destino
es un
Seleccione
Captulo 4
Y especifique
Vnculo de origen:
Vnculo de destino:
Nodo de destino:
Mdulo de transferencia en
bloques mediante una red
ControlNet
RIO
ControlNet
Canal:
Rack
Grupo
Ranura
Ranura
CIP
CIP con ID de origen
DH+
CIP genrico
su opcin (1)
(1)
Puede conectar mensajes genricos CIP. Pero para la mayora de las aplicaciones, recomendamos que deje no
conectados los mensajes genricos CIP.
Si usted
Entonces
Almacena en cach la
conexin
No almacena en cach
la conexin
173
Captulo 4
12.x o posterior
hasta 32 conexiones
Entonces
diferentes dispositivos
el mismo dispositivo
EJEMPLO
174
Captulo 4
Pautas
Cuando planifique y programe sus instrucciones MSG, siga estas
pautas:
Pauta
Detalles
2. Mantenga los datos de origen y/o destino al Una instruccin MSG puede acceder slo a tags que estn en la carpeta de tags del
alcance del controlador.
controlador (alcance del controlador).
Si su mensaje es a un dispositivo que usa enteros de 16 bits, tal como un controlador
3. Si su MSG es a un dispositivo que usa
enteros de 16 bits, use un bfer de INT en el PLC-5 o SLC 500, y ste transfiere enteros (no valores REAL), use un bfer de INT en
el mensaje y DINT en todo el proyecto.
MSG y DINT en todo el proyecto.
As se aumenta la eficiencia de su proyecto porque los controladores Logix se ejecutan
ms eficientemente y usan menos memoria cuando trabajan con enteros de 32 bits
(DINT).
Para convertir entre INT y DINT, consulte Logix5000 Controllers Common Procedures,
publicacin 1756-PM001.
4. Almacene en cach los MSG conectados
que se ejecutan con mayor frecuencia.
Almacene en cach la conexin para dichas instrucciones MSG que se ejecutan con
ms frecuencia, hasta el nmero mximo permitido por la revisin del controlador.
Esto optimiza el tiempo de ejecucin porque el controlador no tiene que abrir una
conexin cada vez que se ejecuta el mensaje.
175
Captulo 4
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Class name
nombre
Instance name
nombre
Attribute Name
nombre
Destination (GSV)
SINT
tag
tag
INT
DINT
REAL
estructura
Source (SSV)
SINT
INT
DINT
REAL
estructura
Texto estructurado
GSV(ClassName,InstanceName,AttributeName,Dest);
SSV(ClassName,InstanceName,AttributeName,Source);
Los operandos son iguales que para las instrucciones GSV y SSV de
lgica de escalera de rels.
176
Captulo 4
ATENCIN
Utilice las instrucciones GSV y SSV con precaucin. Los cambios en los objetos
pueden provocar una operacin inesperada del controlador o lesiones al personal.
Usted debe probar y confirmar que las instrucciones no cambien datos que usted no
desea que cambien.
Las instrucciones GSV y SSV escriben o leen ms all de un miembro hacia otros
miembros de un tag. Si el tag es demasiado pequeo, las instrucciones no escriben
ni leen los datos. En lugar de ello, registran un fallo menor.
Ejemplo 1
177
Captulo 4
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo menor si
Tipo de fallo
Cdigo de fallo
atributo no vlido
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
la instruccin se ejecuta
post-escn
178
Objetos GSV/SSV
Captulo 4
ATENCIN
AXIS
CONTROLLER
180
CONTROLLERDEVICE
181
CST
183
DF1
184
FAULTLOG
187
MESSAGE
188
MODULE
190
MOTIONGROUP
191
PROGRAM
192
ROUTINE
193
SERIALPORT
193
TASK
195
WALLCLOCKTIME
197
179
Captulo 4
Tipo de datos
Instruccin
Descripcin
TimeSlice
INT
GSV
SSV
Los valores vlidos son 10-90. Este valor no puede cambiarse
cuando el interruptor de llave del controlador se encuentra en
la posicin de marcha.
ControllerLogTotalEntryCou
nt
DINT
SSV
GSV
El nmero se restablecer si la RAM entra en un mal estado.
El nmero tiene como lmite el DINT ms alto.
ControllerLogExecutionMod DINT
ificationCount
SSV
GSV
ControllerLogUnsavedEntry
Count
DINT
GSV
ControllerLogAutoWrite
BOOL
MSG
ExecutionCountConfigureM DINT
ask
MSG
180
Captulo 4
Tipo de datos
Instruccin
Descripcin
DeviceName
SINT[33]
GSV
ProductCode
ProductRev
INT
INT
GSV
GSV
Cdigo de producto
CompactLogix5320
43
CompactLogix5330
44
CompactLogix5335E
65
ControlLogix5550
ControlLogix5553
50
ControlLogix5555
51
ControlLogix5561
54
ControlLogix5562
55
ControlLogix5563
56
DriveLogix5720
48
FlexLogix5433
41
FlexLogix5434
42
SoftLogix5860
15
SerialNumber
DINT
GSV
181
Captulo 4
Atributo
Tipo de datos
Instruccin
Descripcin
Status
INT
GSV
Significado:
reservado
0001
0010
reservado
0011
reservado
0100
0101
con fallo
0110
marcha
0111
programa
Significado:
fallo menor recuperable
0010
0100
1000
Type
INT
GSV
Bits 13-12:
01
Significado:
interruptor de llave en marcha
10
11
Bits 15-14
Significado
01
10
Vendor
INT
GSV
182
Captulo 4
Tipo de datos
Instruccin
Descripcin
CurrentStatus
INT
GSV
CurrentValue
DINT[2]
GSV
Bit:
Significado
no se usa
8-9
10-15
no se usa
183
Captulo 4
Tipo de
datos
Instruccin
Descripcin
ACKTimeout
DINT
GSV
DiagnosticCounters
offset de palabra
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
INT[19]
GSV
DuplicateDetection
SINT
GSV
EmbeddedResponseEnable
SINT
GSV
1
SINT
GSV
Significado:
deteccin de mensajes duplicados inhabilitada
deteccin de mensajes duplicados inhabilitada
ENQTransmitLimit
maestro
firma (0x0044)
bits de mdem
paquetes enviados
paquetes recibidos
paquetes no entregados
mensajes reenviados
no se usa
no se usa
paquetes deficientes sin ACK
no se usa
recibidos paquetes duplicados
no se usa
conteo de recuperaciones DCD
conteo de mdem perdido
mximo de tiempo de escn prioritario
ltimo tiempo de escn prioritario
mximo de tiempo de escn normal
ltimo tiempo de escn normal
no se usa
Significado:
se inicia solamente despus de que se recibe uno
(opcin predeterminada)
habilitado incondicionalmente
EOTSuppression
SINT
GSV
184
Significado:
supresin de EOT inhabilitada
supresin de EOT habilitada
Atributo
Tipo de
datos
Instruccin
Descripcin
ErrorDetection
SINT
GSV
MasterMessageTransmit
SINT
GSV
Captulo 4
Significado:
BCC (predeterminado)
CRC
Significado:
entre encuestas de estacin
en secuencia de encuesta (en lugar del nmero de
estacin del maestro)
El valor predeterminado es 0.
NAKReceiveLimit
SINT
GSV
NormalPollGroupSize
INT
GSV
PollingMode
SINT
GSV
Significado:
basado en mensajes; no permite a los esclavos
iniciar mensajes
basado en mensajes, pero permite a los esclavos
iniciar mensajes (predeterminado)
estndar, transferencia de un solo mensaje por
escn de nodo
estndar, transferencia de varios mensajes por
escn de nodo
La configuracin predeterminada es 1.
ReplyMessageWait
DINT
GSV
StationAddress
INT
GSV
SlavePollTimeout
DINT
GSV
185
Captulo 4
Atributo
Tipo de
datos
Instruccin
Descripcin
TransmitRetries
SINT
GSV
PendingACKTimeout
DINT
SSV
PendingDuplicateDetection
SINT
SSV
PendingEmbeddedResponse
Enable
SINT
SSV
PendingENQTransmitLimit
SINT
SSV
PendingEOTSuppression
SINT
SSV
PendingErrorDetection
SINT
SSV
PendingNormalPollGroupSize
INT
SSV
PendingMasterMessage
Transmit
SINT
SSV
PendingNAKReceiveLimit
SINT
SSV
PendingPollingMode
SINT
SSV
PendingReplyMessageWait
DINT
SSV
PendingStationAddress
INT
SSV
PendingSlavePollTimeout
DINT
SSV
PendingTransmitRetries
SINT
SSV
Campo
Valor
Configuracin
Message Type
CIP genrico
Service Code
0d hex
Tipo de objeto
a2
Object ID
Object Attribute
dejar en blanco
Source
dejar en blanco
Number of Elements
Destination
dejar en blanco
Path
Comunicacin
186
Captulo 4
Tipo de datos
Instruccin
Descripcin
MajorEvents
INT
GSV
SSV
MinorEvents
INT
GSV
SSV
MajorFaultBits
MinorFaultBits
DINT
DINT
GSV
SSV
Bit:
1
3
4
5
6
7
8
11
GSV
SSV
Bit:
4
6
9
10
Significado:
corte de energa
E/S
ejecucin de instruccin (programa)
administrador de fallos
temporizador de control (watchdog)
pila
cambio de modo
control de movimiento
Significado:
ejecucin de instruccin (programa)
temporizador de control (watchdog)
puerto serie
batera
187
Captulo 4
Tipo de datos
Instruccin
Descripcin
ConnectionPath
SINT[130]
GSV
SSV
GSV
ConnectionRate
DINT
SSV
MessageType
Port
TimeoutMultiplier
SINT
SINT
SINT
GSV
SSV
Valor:
0
GSV
SSV
Valor:
1
2
GSV
Significado:
no inicializado
Significado:
backplane
puerto serie
SSV
Valor:
0
1
2
UnconnectedTimeout
DINT
GSV
SSV
Significado:
la conexin sobrepasar el tiempo de espera en un
lapso igual a 4 veces el rgimen de actualizacin
(predeterminado)
la conexin sobrepasar el tiempo de espera en un
lapso igual a 8 veces el rgimen de actualizacin
la conexin sobrepasar el tiempo de espera en un
lapso igual a 16 veces el rgimen de actualizacin
188
Captulo 4
Es
msg_1
msg_1_type
tag_a
msg_1_path
GSV
GSV
Get
Value
GetSystem
System
Value
Class
name
Message
Class
name
MESSAGE
Instance
name
msg_1
Instance
name
msg_1
AttributeName
Name MessageType
Attribute
MessageType
Dest
msg_1_type
Dest
msg_1_type
22
SSV
SSV
Set
System
Value
Set
System
Value
Class
name
Message
Class
name
MESSAGE
Instance
name
msg_1
Instance
name
msg_1
Attribute
Name
ConnectionPath
Attribute
Name ConnectionPath
Source
msg_1_path[0]
Source
msg_1path[0]
66
msg_1.EN
msg_1.EN
/
SSV
SSV
Set
Value
SetSystem
System
Value
Class
name
Message
Class
name
MESSAGE
Instance
name
msg_1
Instance
name
msg_1
Attribute
Name MessageType
Attribute
Name
MessageType
Source
tag_a
Source
tag_a
00
SSV
SSV
Set
Value
SetSystem
System
Value
Class
name
Message
Class
name
MESSAGE
Instance
name
msg_1
Instance
name
msg_1
Attribute
Name
MessageType
Attribute
Name MessageType
Source
msg_1_type
Source
msg_1_type
22
MSG
MSG
Tipo
Escritura
de tabla
de Write
datos CIP
Type
- CIP Data
Table
Message
Control
msg_1 ...
Message
Control
msg_1
EN
EN
DN
DN
ER
ER
Texto estructurado
IF msg_path THEN
GSV(MESSAGE,msg_1,MessageType,msg_1_type);
SSV(MESSAGE,msg_1,MessageType,tag_a);
SSV(MESSAGE,msg_1,ConnectionPath,msg_1_path[0]);
SSV(MESSAGE,msg_1,MessageType,msg_1_type);
END_IF;
IF NOT msg_1.EN THEN
MSG(msg_1);
END_IF;
189
Captulo 4
Tipo de datos
Instruccin
Descripcin
EntryStatus
INT
GSV
Significado:
Reserva: el controlador se est encendiendo.
16#1000
16#2000
16#3000
16#4000
16#5000
16#6000
16#7000
FaultCode
INT
GSV
FaultInfo
DINT
GSV
ForceStatus
INT
GSV
190
Significado:
forzados instalados (1=s, 0=no)
forzados habilitados (1=s, 0=no)
no se usa
Captulo 4
Atributo
Tipo de datos
Instruccin
Descripcin
Instance
DINT
GSV
LEDStatus
INT
GSV
Especifica el estado actual del indicador LED de E/S en la parte frontal del
controlador.
Valor:
0
Significado:
LED apagado: No hay objetos MODULE configurados para
el controlador (no hay mdulos en la seccin I/O
Configuration del organizador del controlador).
INT
GSV
SSV
Bit:
0
Significado:
Si se establece, hace que se genere un fallo mayor si
cualquiera de las conexiones del objeto MODULE entran en
fallo mientras el controlador est en el modo de marcha.
Tipo de datos
Instruccin
Descripcin
Instance
DINT
GSV
191
Captulo 4
Tipo de datos
Instruccin
Descripcin
DisableFlag
SINT
GSV
SSV
Valor:
0
1
Significado:
ejecucin habilitada
ejecucin inhabilitada
Instance
DINT
GSV
LastScanTime
DINT
GSV
SSV
MajorFaultRecord
DINT[11]
GSV
SSV
Nombre:
Tipo de datos:
Estilo:
Descripcin:
TimeLow
DINT
Decimal
TimeHigh
DINT
Decimal
Type
INT
Decimal
Code
INT
Decimal
Info
DINT[8]
Hexadecimal
MaxScanTime
DINT
GSV
SSV
MinorFaultRecord
DINT[11]
GSV
SSV
Nombre:
Tipo de datos:
Estilo:
Descripcin:
TimeLow
DINT
Decimal
TimeHigh
DINT
Decimal
Type
INT
Decimal
Code
INT
Decimal
Info
DINT[8]
Hexadecimal
SFCRestart
INT
GSV
SSV
192
Captulo 4
Tipo de datos
Instruccin
Descripcin
Instance
DINT
GSV
Tipo de datos
Instruccin
Descripcin
BaudRate
DINT
GSV
DataBits
SINT
GSV
Parity
SINT
GSV
Especifica la paridad.
Valor:
0
1
2
RTSOffDelay
INT
GSV
Significado:
7 bits de datos (ASCII solamente)
8 bits de datos (opcin predeterminada)
Significado:
sin paridad (no predeterminado)
paridad impar (ASCII solamente)
paridad par
RTSSendDelay
INT
GSV
StopBits
SINT
GSV
Significado:
1 bit de fin (opcin predeterminada)
2 bits de fin (ASCII solamente)
PendingBaudRate
DINT
SSV
PendingDataBits
SINT
SSV
PendingParity
SINT
SSV
193
Captulo 4
Atributo
Tipo de datos
Instruccin
Descripcin
PendingRTSOffDelay
INT
SSV
PendingRTSSendDelay
INT
SSV
PendingStopBits
SINT
SSV
Campo
Valor
Configuration
Message Type
CIP genrico
Service Code
0d hex
Object Type
6f hex
Object ID
Object Attribute
dejar en blanco
Source
dejar en blanco
Number of Elements
Destination
dejar en blanco
Path
Communication
194
Captulo 4
Tipo de datos
Instruccin
Descripcin
DisableUpdateOutputs
DINT
GSV
SSV
EnableTimeOut
DINT
GSV
SSV
InhibitTask
DINT
GSV
SSV
Instance
DINT
GSV
Para:
habilitar el procesamiento de
salidas al final de la tarea
inhabilitar el procesamiento de
salidas al final de la tarea
habitar la tarea
0 (predeterminado)
LastScanTime
DINT
GSV
SSV
MaxInterval
DINT[2]
GSV
SSV
MaxScanTime
DINT
GSV
SSV
MinInterval
DINT[2]
GSV
SSV
OverlapCount
DINT
GSV
SSV
195
Captulo 4
Atributo
Tipo de datos
Instruccin
Descripcin
Priority
INT
GSV
SSV
GSV
peridica
evento
Rate
DINT
SSV
StartTime
DINT[2]
GSV
SSV
Status
DINT
GSV
SSV
Watchdog
DINT
GSV
SSV
Un tiempo de espera
sobrepasado activ la tarea
(tarea de evento solamente).
196
Tiempo:
Tipo de tarea:
0.5 s
peridica o de evento
5.0 s
continua
Captulo 4
Tipo de datos
Instruccin
Descripcin
CSTOffset
DINT[2]
GSV
Offset positivo del CurrentValue del objeto CST (hora coordinada del
sistema; vea la pgina 183). DINT[0] contiene los 32 bits inferiores
del valor; DINT[1] contiene los 32 bits superiores del valor.
SSV
DINT[2]
GSV
SSV
El valor es el nmero de microsegundos que han transcurrido desde
las 0000 horas del 1 de enero de 1972.
Los objetos CST y WALLCLOCKTIME estn relacionados
matemticamente en el controlador. Por ejemplo, si se suman
CST CurrentValue y WALLCLOCKTIME CTSOffset, el resultado es
WALLCLOCKTIME CurrentValue.
DateTime
DINT[7]
GSV
SSV
DINT[0]
ao
DINT[1]
DINT[2]
DINT[3]
hora (0-23)
DINT[4]
minuto (0-59)
DINT[5]
segundos (0-59)
DINT[6]
microsegundos (0-999,999)
197
Captulo 4
Ejemplo de programacin
GSV/SSV
Texto estructurado
GSV(MODULE,disc_in_2,FaultCode,disc_in_2_info.FaultCode);
GSV(MODULE,disc_in_2,FaultInfo,disc_in_2_info.FaultInfo);
GSV(MODULE,disc_in_2,Mode,disc_in_2info.Mode);
Texto estructurado
GSV(PROGRAM,DISCRETE,LASTSCANTIME,
discrete_info.LastScanTime);
GSV(PROGRAM,DISCRETE,MAXSCANTIME,discrete_info.MaxScanTime);
198
Captulo 4
Texto estructurado
GSV(TASK,IO_TEST,LASTSCANTIME,io_test_info.LastScanTime);
GSV(TASK,IO_TEST,MAXSCANTIME,io_test_info.MaxScanTime);
GSV(TASK,IO_TEST,WATCHDOG,io_test_info.WatchDog);
199
Captulo 4
Texto estructurado
IF SW.1 THEN
discrete_prog_flag := enable_prog;
ELSE
discrete_prog_flag := disable_prog;
END_IF;
SSV(PROGRAM,DISCRETE,DISABLEFLAG,discrete_prog_flag);
200
Captulo 4
Operandos:
Lgica de escalera de rels
Operando
Tipo
Update Tag
Formato
Descripcin
tag
Texto estructurado
IOT(output_tag);
201
Captulo 4
ControlLogix
backplane
inmediatamente
Red EtherNet/IP
inmediatamente
Red ControlNet
SoftLogix5800
Red ControlNet
instruccin IOT en el
controlador productor
instruccin IOT en el
controlador productor
tarea de evento en el
controlador consumidor
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
202
Captulo 4
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
EnableIn se establece
n. a.
ejecucin de la instruccin
La instruccin:
actualiza la conexin del tag especificado.
restablece el temporizador RPI de la conexin
post-escn
Ninguna.
Texto estructurado
IOT (Local:5:O);
203
Captulo 4
Texto estructurado
IF New_Data AND NOT Trigger_Consumer THEN
CPS (Source_Tag,Produced_Tag,1);
IOT (Produced_Tag);
END_IF;
Trigger_Consumer := New_Data;
204
Captulo
Instrucciones de comparacin
(CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Introduccin
Si desea
Vea la pgina
CMP
206
EQU
211
GEQ
215
GRT
219
LEQ
223
LES
227
LIM
231
MEQ
237
NEQ
242
(1)
No hay una instruccin equivalente en texto estructurado. Use otra programacin en texto estructurado para lograr el mismo resultado. Vea la descripcin de la
instruccin.
(2)
No hay una instruccin equivalente en texto estructurado. Use el operador en una expresin.
205
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Comparar (CMP)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Expression
SINT
inmediato
INT
tag
DINT
REAL
cadena
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Texto estructurado
El texto estructurado no tiene una instruccin CMP, pero usted puede
lograr los mismos resultados usando una construccin IF...THEN y
una expresin.
IF BOOL_expression THEN
<statement>;
END_IF;
206
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es verdadera
evale la expresin
la expresin es
verdadera
la condicin de salida de
rengln se establece como
verdadera
la expresin es falsa
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Si la expresin es
diferente de cero
verdadera
cero
falsa
207
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Expresiones CMP
Usted programa las expresiones en las instrucciones CMP de la misma
manera que las expresiones en las instrucciones FSC. Use las
siguientes secciones para obtener informacin sobre operadores
vlidos, formato y orden de operacin, que son comunes para ambas
instrucciones.
Operadores vlidos
Operador:
Descripcin
ptimo
Operador:
Descripcin
ptimo
sumar
DINT, REAL
DEG
radianes a grados
DINT, REAL
restar/cambiar signo
DINT, REAL
FRD
BCD a entero
DINT
multiplicar
DINT, REAL
LN
logaritmo natural
REAL
dividir
DINT, REAL
LOG
logaritmo base 10
REAL
igual que
DINT, REAL
MOD
mdulo de divisin
DINT, REAL
<
menor que
DINT, REAL
NOT
DINT
<=
DINT, REAL
complemento a nivel
de bits
>
mayor que
DINT, REAL
OR
O a nivel de bits
DINT
>=
DINT, REAL
RAD
grados a radianes
DINT, REAL
<>
diferente de
DINT, REAL
SIN
seno
REAL
**
exponente (x a la y)
DINT, REAL
SQR
raz cuadrada
DINT, REAL
ABS
valor absoluto
DINT, REAL
TAN
tangente
REAL
ACS
arco coseno
REAL
TOD
entero a BCD
DINT
AND
Y a nivel de bits
DINT
TRN
truncar
DINT, REAL
ASN
arco seno
REAL
XOR
O exclusivo a nivel de
bits
DINT
ATN
arco tangente
REAL
COS
coseno
REAL
208
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Expresiones de formato
Por cada operador que use en una expresin, usted tiene que
proporcionar uno o dos operandos (tags o valores inmediatos). Use la
siguiente tabla para formatear operadores y operandos dentro de una
expresin:
Para operadores
que operan en
Ejemplos
un operando
operador(operando)
ABS(tag_a)
dos operandos
operando_a operador
operando_b
tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD (tag_f /
tag_g)
Orden
Operacin
1.
()
2.
3.
**
4.
5.
*, /, MOD
6.
7.
(restar), +
8.
AND
9.
XOR
10.
OR
209
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Descripcin
igual que
<
menor que
<=
>
mayor que
>=
<>
diferente de
m
e
n
o
r
210
m
a
y
o
r
Caracteres ASCII
Cdigos
hexadecimales
1ab
$31$61$62
1b
$31$62
$41
AB
$41$42
$42
$61
ab
$61$62
AB < B
a>B
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Igual a (EQU)
Captulo 5
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
cadena
Source B
SINT
inmediato
INT
tag
DINT
REAL
cadena
Texto estructurado
IF sourceA = sourceB THEN
<statements>;
211
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Bloque de funciones
Operando
Tipo
Formato
Descripcin
EQU tag
FBD_COMPARE
estructura
estructura EQU
Estructura FBD_COMPARE
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
REAL
SourceB
REAL
Descripcin
EnableOut
BOOL
Dest
BOOL
Descripcin: Use la instruccin EQU para comparar dos nmeros o dos cadenas de
caracteres ASCII. Cuando usted compara las cadenas:
Las cadenas son iguales si sus caracteres coinciden.
Los caracteres ASCII permiten distinguir maysculas de
minsculas. La A mayscula ($41) es diferente a la a
minscula ($61).
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
212
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
condicin de entrada de
rengln es verdadera
Source A = Source B
la condicin de salida de
rengln se establece
como verdadera
no
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
213
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Texto estructurado
light_a := (value_1 = value_2);
Bloque de funciones
214
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
cadena
Source B
SINT
inmediato
INT
tag
DINT
REAL
cadena
Texto estructurado
IF sourceA >= sourceB THEN
<statements>;
Use los signos mayor que e igual >= adyacentes como operador
dentro de una expresin. Esta expresin evala si sourceA es mayor o
igual que sourceB.
Consulte el Apndice C, Programacin de texto estructurado para
obtener informacin sobre la sintaxis de las expresiones en texto
estructurado.
215
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Bloque de funciones
Operando
Tipo
Formato
Descripcin
GEQ tag
FBD_COMPARE
estructura
estructura GEQ
Estructura FBD_COMPARE
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
REAL
SourceB
REAL
Descripcin
EnableOut
BOOL
Dest
BOOL
m
e
n
o
r
216
m
a
y
o
r
Caracteres ASCII
Cdigos
hexadecimales
1ab
$31$61$62
1b
$31$62
$41
AB
$41$42
$42
$61
ab
$61$62
AB < B
a>B
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
condicin de entrada de
rengln es verdadera
Source A Source B
la condicin de salida de
rengln se establece
como verdadera
no
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
217
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Texto estructurado
light_b := (value_1 >= value_2);
Bloque de funciones
218
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
cadena
Source B
SINT
inmediato
INT
tag
DINT
REAL
cadena
Texto estructurado
IF sourceA > sourceB THEN
<statements>;
Bloque de funciones
Operando
Tipo
Formato
Descripcin
GRT tag
FBD_COMPARE
estructura
estructura GRT
219
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Estructura FBD_COMPARE
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
REAL
SourceB
REAL
Descripcin
EnableOut
BOOL
Dest
BOOL
m
e
n
o
r
m
a
y
o
r
Caracteres ASCII
Cdigos
hexadecimales
1ab
$31$61$62
1b
$31$62
$41
AB
$41$42
$42
$61
ab
$61$62
AB < B
a>B
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
220
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
condicin de entrada de
rengln es verdadera
la condicin de salida de
rengln se establece
como verdadera
no
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
221
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Texto estructurado
light_1 := (value_1 > value_2);
Bloque de funciones
222
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
cadena
Source B
SINT
inmediato
INT
tag
DINT
REAL
cadena
Texto estructurado
IF sourceA <= sourceB THEN
<statements>;
Use los signos menor que e igual <= adyacentes como operador
dentro de una expresin. Esta expresin evala si sourceA es menor o
igual que sourceB.
Consulte el Apndice C, Programacin de texto estructurado para
obtener informacin sobre la sintaxis de las expresiones en texto
estructurado.
223
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Bloque de funciones
Operando
Tipo
Formato
Descripcin
LEQ tag
FBD_COMPARE
estructura
estructura LEQ
Estructura FBD_COMPARE
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
REAL
SourceB
REAL
Descripcin
EnableOut
BOOL
Dest
BOOL
m
e
n
o
r
224
m
a
y
o
r
Caracteres ASCII
Cdigos
hexadecimales
1ab
$31$61$62
1b
$31$62
$41
AB
$41$42
$42
$61
ab
$61$62
AB < B
a>B
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
condicin de entrada de
rengln es verdadera
Source A Source B
la condicin de salida de
rengln se establece
como verdadera
no
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
225
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Texto estructurado
light_2 := (value_1 <= value_2);
Bloque de funciones
226
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
cadena
Source B
SINT
inmediato
INT
tag
DINT
REAL
cadena
Texto estructurado
IF sourceA < sourceB THEN
<statements>;
Bloque de funciones
Operando
Tipo
Formato
Descripcin
LES tag
FBD_COMPARE
estructura
estructura LES
227
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Estructura FBD_COMPARE
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
REAL
SourceB
REAL
Descripcin
EnableOut
BOOL
Dest
BOOL
m
e
n
o
r
m
a
y
o
r
Caracteres ASCII
Cdigos
hexadecimales
1ab
$31$61$62
1b
$31$62
$41
AB
$41$42
$42
$61
ab
$61$62
AB < B
a>B
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
228
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
condicin de entrada de
rengln es verdadera
la condicin de salida de
rengln se establece
como verdadera
no
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Bloque de funciones
Condicin:
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn es falsa
EnableOut se borra.
EnableIn es verdadera
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
229
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Texto estructurado
light_3 := (value_1 < value_2);
Bloque de funciones
230
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Lmite (LIM)
Captulo 5
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Low limit
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Test
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
High limit
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Texto estructurado
El texto estructurado no cuenta con la instruccin LIM, pero se
pueden lograr los mismos resultados usando texto estructurado.
IF (LowLimit <= HighLimit AND
(Test >= LowLimit AND Test <= HighLimit)) OR
(LowLimit >= HighLimit AND
(Test <= LowLimit OR Test >= HighLimit)) THEN
<statement>;
END_IF;
231
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Bloque de funciones
Operando
Tipo
Formato
Descripcin
LIM tag
FBD_LIMIT
estructura
estructura LIM
Estructura FBD_LIMIT
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
LowLimit
REAL
Test
REAL
Descripcin
EnableOut
BOOL
Dest
BOOL
HighLimit
REAL
Y el valor de prueba es
La condicin de salida de
rengln se establece como
Lmite superior
verdadera
falsa
verdadera
falsa
Lmite superior
232
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Los nmeros enteros con signo saltan (roll over) del nmero
positivo mximo al nmero negativo mximo cuando se establece el
bit ms significativo. Por ejemplo, en los nmeros enteros de 16 bits
(tipo INT), el nmero entero positivo mximo es 32,767, el cual se
representa en hexadecimal como 16#7FFF (todos los bits del 0 al 14
estn en uno). Si usted incrementa dicho nmero en uno, el resultado
es 16#8000 (el bit 15 se pone en uno). Para enteros con signo, el
hexadecimal 16#8000 es igual a -32,768 en decimal. Incrementar
desde este punto hasta que los 16 bits se pongan en uno, termina en
16#FFFF, que es igual a -1 en decimal.
Esto puede mostrarse como lnea circular de nmeros (vea los
siguientes diagramas). La instruccin LIM comienza en el lmite
inferior e se va incrementando en sentido horario hasta llegar al lmite
superior. Cualquier valor de prueba que se encuentre en el rango en
sentido horario desde el lmite inferior al lmite superior establece en
verdadera la condicin de salida del rengln. Cualquier valor de
prueba que se encuentre en el rango en sentido horario desde el
lmite superior al lmite inferior establece en falsa la condicin de
salida del rengln.
Lmite superior
Lmite inferior
0
1
+1
+1
lmite inferior
lmite superior
lmite superior
(n+1)
+n
n = valor mximo
lmite inferior
(n+1)
+n
n = valor mximo
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
233
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
condicin de entrada de
rengln es verdadera
evaluar el lmite
la comparacin es
verdadera
la condicin de salida de
rengln se establece
como verdadera
la comparacin es falsa
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
234
Ninguna.
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Texto estructurado
IF (value <= 100 AND(value >= 0 AND value <= 100)) OR
(value >= 100 AND value <= 0 OR value >= 100)) THEN
light_1 := 1;
ELSE
light_1 := 0;
END_IF;
Bloque de funciones
235
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Texto estructurado
IF (0 <= -100 AND value >= 0 AND value <= -100)) OR
(0 >= -100 AND(value <= 0 OR value >= -100)) THEN
light_1 := 1;
ELSE
light_1 := 0;
END_IF;
Bloque de funciones
236
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Mask
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Compare
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Texto estructurado
El texto estructurado no cuenta con la instruccin MEQ, pero se
pueden lograr los mismos resultados usando texto estructurado.
IF (Source AND Mask) = (Compare AND Mask) THEN
<statement>;
END_IF;
Bloque de funciones
Operando
Tipo
Formato
Descripcin
MEQ tag
FBD_MASK_EQUAL
estructura
estructura MEQ
237
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Estructura FBD_MASK_EQUAL
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
DINT
Mask
DINT
Compare
DINT
Valor de comparacin.
Vlido = cualquier nmero entero
Descripcin
EnableOut
BOOL
Dest
BOOL
Descripcin
16#
hexadecimal
por ejemplo; 16#0F0F
8#
octal
por ejemplo; 8#16
2#
binario
por ejemplo; 2#00110011
238
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
condicin de entrada de
rengln es verdadera
origen
enmascarado =
comparacin
enmascarada
la condicin de salida de
rengln se establece
como verdadera
no
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
239
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
value_2 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0
mask_1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0
mask_1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0
value_1 0 1 0 1 0 1 0 1 1 1 1 1 X X X X
enmascarado
value_2 0 1 0 1 0 1 0 1 1 1 1 1 X X X X
enmascarado
Texto estructurado
light_1 := ((value_1 AND mask_1)=(value_2 AND mask_2));
Bloque de funciones
240
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
value_2 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0
mask_1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
mask_1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
value_1 X X X X X X X X X X X X 1 1 1 1
enmascarado
value_2 X X X X X X X X X X X X 0 0 0 0
enmascarado
Texto estructurado
light_1 := ((value_1 AND mask_1)=(value_2 AND mask_2));
Bloque de funciones
241
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Diferente de (NEQ)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
cadena
Source B
SINT
inmediato
INT
tag
DINT
REAL
cadena
Texto estructurado
IF sourceA <> sourceB THEN
<statements>;
Use los signos menor que y mayor que <> juntos como operador
dentro de una expresin. Esta expresin evala si sourceA es
diferente de sourceB.
Consulte el Apndice C, Programacin de texto estructurado para
obtener informacin sobre la sintaxis de las expresiones en texto
estructurado.
Bloque de funciones
242
Operando
Tipo
Formato
Descripcin
NEQ tag
FBD_COMPARE
estructura
estructura NEQ
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Estructura FBD_COMPARE
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
REAL
SourceB
REAL
Descripcin
EnableOut
BOOL
Dest
BOOL
m
e
n
o
r
m
a
y
o
r
Caracteres ASCII
Cdigos
hexadecimales
1ab
$31$61$62
1b
$31$62
$41
AB
$41$42
$42
$61
ab
$61$62
AB < B
a>B
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
243
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
condicin de entrada de
rengln es verdadera
Source A = Source B
la condicin de salida de
rengln se establece
como verdadera
no
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
244
Ninguna.
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Captulo 5
Texto estructurado
light_4 := (value_1 <> value_2);
Bloque de funciones
245
Captulo 5
Instrucciones de comparacin (CMP, EQU, GEQ, GRT, LEQ, LES, LIM, MEQ, NEQ)
Notas:
246
Captulo
Instrucciones de clculo/matemticas
(CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Introduccin
Si desea
Vea la pgina
CPT
248
ADD
252
SUB
255
MUL
258
DIV
261
MOD
266
SQR
270
SQRT(3)
tomar el signo opuesto de un valor.
NEG
274
ABS
277
(1)
No hay una instruccin equivalente en texto estructurado. Use otra programacin en texto estructurado para lograr el mismo resultado. Vea la descripcin de la
instruccin.
(2)
No hay una instruccin equivalente en texto estructurado. Use el operador en una expresin.
(3)
247
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Calcular (CPT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato:
Descripcin
Destination
SINT
INT
DINT
REAL
tag
Expression
SINT
INT
DINT
REAL
inmediato
tag
Texto estructurado
El texto estructurado no tiene una instruccin CPT, pero usted puede
lograr los mismos resultados usando una asignacin y una expresin.
destino := numeric_expresion;
Descripcin: La instruccin CPT realiza las operaciones aritmticas que usted define
en la expresin. Cuando se habilita, la instruccin CPT evala la
expresin y coloca el resultado en Destination.
La ejecucin de una instruccin CPT es un poco ms lenta y usa ms
memoria que la ejecucin de las otras instrucciones de clculo/
matemticas. La ventaja de la instruccin CPT es que le permite
introducir expresiones complejas en una sola instruccin.
SUGERENCIA
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
248
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Ejecucin:
Condicin
preescn
post-escn
249
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Operadores vlidos
Operador
Descripcin
ptimo
Operador
Descripcin
ptimo
sumar
DINT, REAL
LOG
logaritmo base 10
REAL
restar/cambiar signo
DINT, REAL
MOD
mdulo de divisin
DINT, REAL
multiplicar
DINT, REAL
NOT
DINT
dividir
DINT, REAL
complemento a nivel
de bits
**
exponente (x a la y)
DINT, REAL
OR
O a nivel de bits
DINT
ABS
valor absoluto
DINT, REAL
RAD
grados a radianes
DINT, REAL
ACS
arco coseno
REAL
SIN
seno
REAL
AND
Y a nivel de bits
DINT
SQR
raz cuadrada
DINT, REAL
ASN
arco seno
REAL
TAN
tangente
REAL
ATN
arco tangente
REAL
TOD
entero a BCD
DINT
COS
coseno
REAL
TRN
truncar
DINT, REAL
DEG
radianes a grados
DINT, REAL
XOR
O exclusivo a nivel de
bits
DINT
FRD
BCD a entero
DINT
LN
logaritmo natural
REAL
Expresiones de formato
Por cada operador que use en una expresin, usted tiene que
proporcionar uno o dos operandos (tags o valores inmediatos). Use la
siguiente tabla para formatear operadores y operandos dentro de una
expresin:
Para operadores
que operan en:
Ejemplos:
un operando
operador(operando)
ABS(tag_a)
dos operandos
operando_a operador
operando_b
tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD (tag_f /
tag_g)
250
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Orden:
Operacin:
1.
()
2.
3.
**
4.
5.
*, /, MOD
6.
(restar), +
7.
AND
8.
XOR
9.
OR
251
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Sumar (ADD)
Operandos:
Lgica de escalera de rels
Operando:
Tipo:
Formato:
Descripcin:
Source A
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Source B
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := sourceA + sourceB;
Bloque de funciones
252
Operando:
Tipo:
Formato:
Descripcin:
ADD tag
FBD_MATH
estructura
estructura ADD
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Estructura FBD_MATH
Parmetro de
entrada:
Tipo de datos:
Descripcin:
EnableIn
BOOL
SourceA
REAL
SourceB
REAL
Parmetro de
salida:
Tipo de datos:
Descripcin:
EnableOut
BOOL
Dest
REAL
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin:
Accin:
preescn
post-escn
253
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Bloque de funciones
Condicin:
Accin:
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
add_result := float_value_1 + float_value_2;
Bloque de funciones
254
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Restar (SUB)
Captulo 6
Operandos:
Lgica de escalera de rels
Operando:
Tipo:
Formato:
Descripcin:
Source A
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Source B
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := sourceA - sourceB;
Bloque de funciones
Operando:
Tipo:
Formato:
Descripcin:
SUB tag
FBD_MATH
estructura
estructura SUB
255
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Estructura FBD_MATH
Parmetro de
entrada:
Tipo de datos:
Descripcin:
EnableIn
BOOL
SourceA
REAL
SourceB
REAL
Parmetro de
salida:
Tipo de datos:
Descripcin:
EnableOut
BOOL
Dest
REAL
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin:
Accin:
preescn
post-escn
256
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Bloque de funciones
Condicin:
Accin:
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
subtract_result := float_value_1 - float_value_2;
Bloque de funciones
257
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Multiplicar (MUL)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Source B
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := sourceA * sourceB;
Bloque de funciones
258
Operando
Tipo
Formato
Descripcin
MUL tag
FBD_MATH
estructura
estructura MUL
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Estructura FBD_MATH
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source A
REAL
Source B
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
259
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
multiply_result := float_value_1 float_value_2;
Bloque de funciones
260
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Dividir (DIV)
Captulo 6
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Source B
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := sourceA / sourceB;
261
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Bloque de funciones
Operando
Tipo
Formato
Descripcin
DIV tag
FBD_MATH
estructura
estructura DIV
Estructura FBD_MATH
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source A
REAL
Source B
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Entonces la porcin
fraccionaria del
resultado
o Source B es REAL
262
se redondea
Ejemplo
Source A
DINT
Source B
DINT
Destination
DINT
Source A
REAL
5.0
Source B
DINT
Destination
DINT
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Y el destino es un:
Y el resultado es:
Entonces el destino se
establece en:
Source A
positivo
-1
negativo
positivo
negativo
Para detectar una posible divisin entre cero, examine el fallo menor
(S:MINOR). Consulte el documento Logix5000 Controllers Common
Procedures, publicacin 1756-PM001.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
Se produce un fallo
menor si
Tipo de fallo
Cdigo de fallo
el divisor es cero
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
263
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
divide_result := float_value_1 / float_value_2;
Bloque de funciones
264
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Ejemplo 2: Las instrucciones DIV y MOV funcionan juntas para dividir dos
enteros, redondear el resultado y colocarlo en un tag de nmero
entero:
La instruccin DIV divide dint_a entre dint_b.
Para redondear el resultado, Destination es un tag REAL. (Si el
destino fuera un tag entero (SINT, INT o DINT), la instruccin
truncara el resultado).
La instruccin MOV traslada el resultado redondeado
(real_temp) de la DIV a divide_result_rounded.
Puesto que divide_result_rounded es un tag DINT, el valor de
real_temp se redondea y se coloca en el destino DINT.
43009
265
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Mdulo (MOD)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Source B
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := sourceA MOD sourceB;
Bloque de funciones
266
Operando
Tipo
Formato
Descripcin
MOD tag
FBD_MATH
estructura
estructura MOD
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Estructura FBD_MATH
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source A
REAL
Source B
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Y el destino es un:
Y el resultado es:
Entonces el destino se
establece en:
Source A
positivo
-1
negativo
positivo
negativo
Para detectar una posible divisin entre cero, examine el fallo menor
(S:MINOR). Consulte el documento Logix5000 Controllers Common
Procedures, publicacin 1756-PM001.
267
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
Se produce un fallo
menor si
Tipo de fallo
Cdigo de fallo
el divisor es cero
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
post-escn
Ninguna.
268
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Texto estructurado
residuo := dividendo MOD divisor;
Bloque de funciones
269
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := SQRT(source);
270
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Bloque de funciones
Operando
Tipo
Formato
Descripcin
SQR tag
FBD_MATH_ADVANCED
estructura
estructura SQR
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Entonces la porcin
fraccionaria del
resultado
Ejemplo
no es REAL
se trunca
Source
DINT
Destination
DINT
Source
REAL
3.0
Destination
DINT
es REAL
se redondea
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
271
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
Destination =
Source
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
272
Ninguna.
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Texto estructurado
sqr_result := SQRT(value_1);
Bloque de funciones
273
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := -source;
Bloque de funciones
274
Operando
Tipo
Formato
Descripcin
NEG tag
FBD_MATH_ADVANCED
estructura
estructura NEG
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Estructura FBD_MATH
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
Destination = 0 Source
La condicin de salida de rengln se establece como verdadera.
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
275
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Texto estructurado
negate_result := -value_1;
Bloque de funciones
276
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := ABS(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
ABS tag
FBD_MATH_ADVANCED
estructura
estructura ABS
277
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
Destination = | Source |
La condicin de salida de rengln se establece como verdadera.
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
278
Ninguna.
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Captulo 6
Texto estructurado
value_1_absolute := ABS(value_1);
Bloque de funciones
279
Captulo 6
Instrucciones de clculo/matemticas (CPT, ADD, SUB, MUL, DIV, MOD, SQR, SQRT, NEG, ABS)
Notas:
280
Captulo
Instrucciones de movimiento/lgicas
(MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT,
BAND, BOR, BXOR, BNOT)
Introduccin
Si desea
copiar un valor
Vea la pgina
283
texto estructurado(1)
copiar una parte especfica de un nmero
entero
MVM
285
MVMT
texto estructurado
288
bloque de funciones
mover bits dentro de un nmero entero o entre
nmeros enteros
BTD
292
BTDT
texto estructurado
295
bloque de funciones
borrar un valor
CLR
texto estructurado(1)
298
SWPB
300
texto estructurado
(1)
No hay una instruccin equivalente en texto estructurado. Use otra programacin en texto estructurado para lograr el mismo resultado. Vea la descripcin de la
instruccin.
281
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Bitwise AND
&(1)
Vea la pgina
304
texto estructurado(2)
bloque de funciones
Bitwise OR
307
texto estructurado(2)
bloque de funciones
operacin O exclusivo a nivel de bits
Bitwise XOR
310
texto estructurado(2)
bloque de funciones
operacin NOT a nivel de bits
Bitwise NOT
314
texto estructurado(2)
bloque de funciones
Y lgico hasta ocho entradas booleanas.
texto estructurado(2)
317
bloque de funciones
O lgico hasta ocho entradas booleanas.
Boolean OR (BOR)
texto estructurado(2)
320
bloque de funciones
realizar un O exclusivo en dos entradas
booleanas.
Boolean Exclusive OR
(BXOR)
texto estructurado(2)
323
bloque de funciones
complementar una entrada booleana.
texto estructurado(2)
326
bloque de funciones
(1)
(2)
En texto estructurado, las operaciones AND, OR, XOR y NOT pueden ser lgicas o a nivel de bits.
282
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Mover (MOV)
Captulo 7
Operandos:
Lgica de escalera de rels
Operando:
Tipo:
Formato
Descripcin:
Source
SINT
inmediato
INT
tag
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
Use una asignacin := con una expresin. Esta asignacin mueve el
valor de source a dest.
dest := source;
283
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Ejecucin:
Condicin
preescn
post-escn
Texto estructurado
value_2 := value _1;
284
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
valor a mover
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Mask
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Destination
SINT
tag
INT
DINT
Texto estructurado
dest := (Dest AND NOT (Mask))
OR (Source AND Mask);
Descripcin: La instruccin MVM usa una mscara para pasar o bloquear bits de
datos de Source. Un nmero 1 en la mscara significa que se pasa el
bit de datos. Un nmero 0 en la mscara significa que se bloquea el
bit de datos.
Si mezcla diferentes tipos de datos enteros, la instruccin llena con
ceros los bits superiores de los tipos de datos enteros menores para
que tengan el mismo tamao que el tipo de datos mayor.
285
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Descripcin
16#
hexadecimal
por ejemplo; 16#0F0F
8#
octal
por ejemplo; 8#16
2#
binario
por ejemplo; 2#00110011
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
condiciones de fallo ninguna
Ejecucin:
Condicin
preescn
post-escn
286
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Ejemplo: Copie datos de value_a a value_b, mientras permite que los datos
sean enmascarados (un 0 enmascara los datos en value_a).
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1
Texto estructurado
value_b := (value_b AND NOT (mask_2)) OR
(value_a AND mask_2);
287
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Movimiento enmascarado
con receptor (MVMT)
Operandos:
MVMT(MVMT_tag);
Texto estructurado
Variable
Tipo
Formato
Descripcin:
MVMT tag
FBD_MASKED_MOVE
estructura
estructura MVMT
Bloque de funciones
Operando
Tipo
Formato
Descripcin
MVMT tag
FBD_MASKED_MOVE
estructura
estructura MVMT
Estructura FBD_MASKED_MOVE
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Bloque de funciones
Si se borra, la instruccin no se ejecuta y las salidas no se actualizan.
Si se establece, la instruccin se ejecuta.
La opcin predeterminada es establecido.
Texto estructurado
Ningn efecto. La instruccin se ejecuta.
Source
DINT
Mask
DINT
Mscara de bits para mover de Source a Dest. Todos los bits establecidos en uno hacen que
los bits correspondientes se muevan de Source a Dest. Todos los bits que se establecen en
cero hacen que los bits correspondientes no se muevan de Source a Dest.
Vlido = cualquier nmero entero
Target
DINT
Valor de entrada para mover a Dest antes de mover los bits de Source a travs de la
mscara.
Vlido = cualquier nmero entero
288
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Descripcin
EnableOut
BOOL
Dest
DINT
Descripcin: Cuando se habilita, la instruccin MVMT usa una mscara para pasar o
bloquear bits de datos de Source. Un nmero 1 en la mscara
significa que se pasa el bit de datos. Un nmero 0 en la mscara
significa que se bloquea el bit de datos.
Si mezcla diferentes tipos de datos enteros, la instruccin llena con
ceros los bits superiores de los tipos de datos enteros menores para
que tengan el mismo tamao que el tipo de datos mayor.
Descripcin
16#
hexadecimal
por ejemplo; 16#0F0F
8#
octal
por ejemplo; 8#16
2#
binario
por ejemplo; 2#00110011
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
289
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
Ninguna.
primera ejecucin de
instruccin
Ninguna.
Ninguna.
EnableIn se borra
n. a.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
La instruccin se ejecuta.
Ninguna.
Ninguna.
post-escn
Ejemplo:
Receptor 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Dest 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Source 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Mask1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
Dest 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1
Texto estructurado
MVMT_01.Source := value _1;
MVMT_01.Mask := mask1;
MVMT_01.Target := target;
MVMT(MVMT_01);
value_masked := MVMT_01.Dest;
290
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Bloque de funciones
291
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Source bit
Destination
DINT
SINT
inmediato
(0-31 DINT)
(0-15 INT)
(0-7 SINT)
tag
inmediato
INT
DINT
Destination
bit
DINT
(0-31 DINT)
(0-15 INT)
(0-7 SINT)
Length
DINT
inmediato
(1-32)
292
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
post-escn
Ejemplo 1: Una vez habilitada, la instruccin BTD transfiere los bits dentro de
value_1.
bit de destino
bit de origen
value_1 antes de la 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
instruccin BTD
value_1 despus de la 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
instruccin BTD
293
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
bit de origen
value_1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
bit de destino
value_2 antes de la 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
instruccin BTD
value_2 despus de la 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
instruccin BTD
294
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Operandos:
BTDT(BTDT_tag);
Texto estructurado
Variable
Tipo
Formato
Descripcin
BTDT tag
FBD_BIT_FIELD_DISTRIBUTE
estructura
estructura BTDT
Bloque de funciones
Operando
Tipo
Formato
Descripcin
BTDT tag
FBD_BIT_FIELD_DISTRIBUTE
estructura
estructura BTDT
Estructura FBD_BIT_FIELD_DISTRIBUTE
Parmetro de
entrada
Tipo de datos
Descripcin:
EnableIn
BOOL
Bloque de funciones:
Si se borra, la instruccin no se ejecuta y las salidas no se actualizan.
Si se establece, la instruccin se ejecuta.
La opcin predeterminada es establecido.
Texto estructurado:
Ningn efecto. La instruccin se ejecuta.
Source
DINT
SourceBit
DINT
La posicin de bit en Source (el nmero de bit ms bajo desde el cual se inicia la
transferencia).
Vlido = 0-31
Length
DINT
DestBit
DINT
La posicin de bit en Dest (el nmero de bit ms bajo al cual se comienza a copiar bits).
Vlido = 0-31
295
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Parmetro de
entrada
Tipo de datos
Descripcin:
Target
DINT
Valor de entrada que se transfiere a Dest antes de transferir los bits de Source.
Vlido = cualquier nmero entero
Parmetro de
salida:
Tipo de datos:
Descripcin:
EnableOut
BOOL
Dest
DINT
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
Ninguna.
primera ejecucin de
instruccin
Ninguna.
Ninguna.
EnableIn se borra
n. a.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
La instruccin se ejecuta.
Ninguna.
Ninguna.
post-escn
296
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Ejemplo:
Captulo 7
Target 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
Dest 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
SourceBit
Source 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
Dest 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Texto estructurado
BTDT_01.Source := source;
BTDT_01.SourceBit := source_bit;
BTDT_01.Length := length;
BTDT_01.DestBit := dest_bit;
BTDT_01.Target := target;
BTDT(BTDT_01);
distributed_value := BTDT_01.Dest;
Bloque de funciones
297
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Borrar (CLR)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := 0;
preescn
post-escn
298
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Texto estructurado
value := 0;
299
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Introduzca
Source
INT
tag
DINT
REAL
Modo de orden
Destination
INT
tag
Si Source
es un
Entonces
seleccione
INT
n. a.
cualquiera de las
opciones
DINT
ABCD DCBA
REVERSE
(o introduzca 0)
REAL
ABCD CDAB
WORD (o introduzca 1)
ABCD BADC
HIGH/LOW
(o introduzca 2)
DINT
Si Source
es un
REAL
INT
INT
DINT
DINT
DINT
REAL
REAL
Texto estructurado
SWPB(Source,OrderMode,Dest);
300
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
BA
Valor
Estilo
Tipo
bar_code[0]
AB
ASCII
INT
42969
42968
AB
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
n. a.
EnableIn se establece
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
301
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Ejemplo 1: Las tres instrucciones SWPB reacomodan los bytes de DINT_1 segn
un modo de orden diferente. El estilo de visualizacin es ASCII, y
cada carcter representa un byte. Cada instruccin coloca los bytes, en
el nuevo orden, en un diferente Destination.
Texto estructurado
SWPB(DINT_1,REVERSE,DINT_1_reverse);
SWPB(DINT_1,WORD,DINT_1_swap_word);
SWPB(DINT_1,HIGHLOW,DINT_1_swap_high_low);
302
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Texto estructurado
index := 0;
SIZE (array[0],0,array_length);
REPEAT
SWPB(array[index],REVERSE,array_bytes_reverse[index]);
index := index + 1;
UNTIL(index >= array_length)END_REPEAT;
303
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Source B
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Destination
SINT
tag
almacena el resultado
INT
DINT
Texto estructurado
dest := sourceA AND sourceB
Use AND o el signo & como operador dentro de una expresin. Esta
expresin evala sourceA AND sourceB.
Consulte el Apndice C, Programacin de texto estructurado para
obtener informacin sobre la sintaxis de las expresiones en texto
estructurado.
Bloque de funciones
304
Operando
Tipo
Formato
Descripcin
AND tag
FBD_LOGICAL
estructura
estructura AND
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Estructura FBD_LOGICAL
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
DINT
SourceB
DINT
Descripcin
EnableOut
BOOL
Dest
DINT
Y el bit en
Source B es
El bit en Destination
es
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
305
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
SourceA 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
SourceB 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Dest 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Texto estructurado
value_result_and := value_1 AND value_2;
Bloque de funciones
306
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Source B
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Destination
SINT
tag
almacena el resultado
INT
DINT
Texto estructurado
dest := sourceA OR sourceB
Bloque de funciones
Operando
Tipo
Formato
Descripcin
OR tag
FBD_LOGICAL
estructura
estructura OR
307
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Estructura FBD_LOGICAL
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
DINT
SourceB
DINT
Descripcin
EnableOut
BOOL
Dest
DINT
Y el bit en
Source B es
El bit en Destination
es
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
308
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
SourceA 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
SourceB 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Dest 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1
Texto estructurado
value_result_or := value_1 OR value_2;
Bloque de funciones
309
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source A
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Source B
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Destination
SINT
tag
almacena el resultado
INT
DINT
Texto estructurado
dest := sourceA XOR sourceB
Bloque de funciones
310
Operando
Tipo
Formato
Descripcin
XOR tag
FBD_LOGICAL
estructura
estructura XOR
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Estructura FBD_LOGICAL
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
SourceA
DINT
SourceB
DINT
Descripcin
EnableOut
BOOL
Dest
DINT
Y el bit en
Source B es
El bit en
Destination es
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
311
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
value_1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
value_2 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
value_result_xor 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1
Texto estructurado
value_result_xor := value_1 XOR value_2;
312
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Bloque de funciones
313
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Destination
SINT
tag
almacena el resultado
INT
DINT
Texto estructurado
dest := NOT source
Bloque de funciones
314
Operando
Tipo
Formato
Descripcin
NOT tag
FBD_LOGICAL
estructura
estructura NOT
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Estructura FBD_LOGICAL
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
DINT
Descripcin
EnableOut
BOOL
Dest
DINT
El bit en Destination
es:
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
315
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
value_1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1
value_result_not 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0
Texto estructurado
value_result_not := NOT value_1;
Bloque de funciones
316
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Y booleano (BAND)
Captulo 7
Operandos:
Texto estructurado
IF operandA AND operandB THEN
<statement>;
END_IF;
Bloque de funciones
Operando
Tipo
Formato
Descripcin
BAND tag
FBD_BOOLEAN_AND
estructura
estructura BAND
Estructura FBD_BOOLEAN_AND
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
In1
BOOL
In2
BOOL
In3
BOOL
In4
BOOL
In5
BOOL
In6
BOOL
In7
BOOL
317
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Parmetro de
entrada
Tipo de datos
Descripcin
In8
BOOL
Descripcin
EnableOut
BOOL
Habilitacin de salida.
Out
BOOL
La salida de la instruccin.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
value_result_and := bool_in1 AND bool_in2;
318
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Bloque de funciones
Texto estructurado
IF bool_in1 AND bool_in2 THEN
light1 := 1;
ELSE
light1 := 0;
END_IF;
319
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
O booleano (BOR)
Operandos:
Texto estructurado
IF operandA OR operandB THEN
<statement>;
END_IF;
Bloque de funciones
Operando
Tipo
Formato
Descripcin
BOR tag
FBD_BOOLEAN_OR
estructura
estructura BOR
Estructura FBD_BOOLEAN_OR
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
In1
BOOL
In2
BOOL
In3
BOOL
In4
BOOL
In5
BOOL
In6
BOOL
In7
BOOL
320
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Parmetro de
entrada
Tipo de datos
Descripcin
In8
BOOL
Captulo 7
Descripcin
EnableOut
BOOL
Habilitacin de salida.
Out
BOOL
La salida de la instruccin.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
value_result_or := bool_in1 OR bool_in2;
321
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Bloque de funciones
Texto estructurado
IF bool_in1 OR bool_in2 THEN
light1 := 1;
ELSE
light1 := 0;
END_IF;
322
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
O exclusivo booleano
(BXOR)
Captulo 7
Operandos:
Texto estructurado
IF operandA XOR operandB THEN
<statement>;
END_IF;
Bloque de funciones
Operando
Tipo
Formato
Descripcin
BXOR tag
FBD_BOOLEAN_XOR
estructura
estructura BXOR
Estructura FBD_BOOLEAN_XOR
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
In1
BOOL
In2
BOOL
Descripcin
EnableOut
BOOL
Habilitacin de salida.
Out
BOOL
La salida de la instruccin.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
323
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
value_result_xor := bool_in1 XOR bool_in2;
Bloque de funciones
324
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Texto estructurado
IF bool_in1 XOR bool_in2 THEN
light1 := 1;
ELSE
light1 := 0;
END_IF;
325
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
NO booleano (BNOT)
Operandos:
Texto estructurado
IF NOT operand THEN
<statement>;
END_IF;
Bloque de funciones
Operando
Tipo
Formato
Descripcin
BNOT tag
FBD_BOOLEAN_NOT
estructura
estructura BNOT
Estructura FBD_BOOLEAN_NOT
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
In
BOOL
Entrada a la instruccin
La opcin predeterminada es establecido.
Descripcin:
EnableOut
BOOL
Habilitacin de salida.
Out
BOOL
La salida de la instruccin.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
326
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Captulo 7
Ejecucin:
Condicin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Entonces VALUE_RESULT_NOT es
Texto estructurado
value_result_not := NOT bool_in1;
Bloque de funciones
Texto estructurado
IF NOT bool_in1 THEN
light1 := 0;
ELSE
light1 := 1;
END_IF;
327
Captulo 7
Instrucciones de movimiento/lgicas (MOV, MVM, BTD, MVMT, BTDT, CLR, SWPB, AND, OR, XOR, NOT, BAND, BOR, BXOR, BNOT)
Notas:
328
Captulo
Instrucciones de matriz
(archivo)/miscelneas
(FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Introduccin
Si desea
Vea la pgina
FAL
FSC
347
COP
356
335
texto estructurado(1)
texto estructurado
copiar el contenido de una matriz en otra matriz
sin interrupcin
CPS
356
texto estructurado
llenar una matriz con datos especficos
FLL
362
texto estructurado(1)
calcular el promedio de una matriz de valores
AVE
366
texto estructurado(1)
organizar una dimensin de datos de matriz en
orden ascendente
SRT
371
texto estructurado
calcular la desviacin estndar de una matriz
de valores
STD
376
texto estructurado(1)
encontrar el tamao de una dimensin de una
matriz
SIZE
381
texto estructurado
(1)
No hay una instruccin equivalente en texto estructurado. Use otra programacin en texto estructurado para lograr el mismo resultado. Vea la descripcin de la
instruccin.
329
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Seleccione este
modo
Todos
Numrico
Incremental
Modo Todos
En el modo Todos, se opera sobre todos los elementos de la matriz
antes de continuar con la prxima instruccin La operacin comienza
cuando la condicin de entrada del rengln cambia de falso a
verdadero. El valor de posicin (.POS) en la estructura de control
apunta al elemento de la matriz que la instruccin est usando
actualmente. La operacin se detiene cuando el valor .POS es igual al
valor .LEN.
Matriz de datos
un escn
16639
330
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
bit .EN
bit .DN
borra los bits de estado y
borra el valor .POS
escn de la instruccin
operacin concluida
no se realiza la ejecucin
40010
Modo numrico
El modo numrico distribuye la operacin de la matriz entre un
nmero de escanes. Este modo es til cuando se trabaja con datos no
crticos en cuando a tiempo o con grandes cantidades de datos. Usted
introduce el nmero de elementos sobre los que se va a operar por
cada escn, lo que mantiene ms corto el tiempo de escn.
331
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
segundo escn
siguiente escn
16641
IMPORTANTE
operacin concluida
332
40013
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Modo incremental
El modo incremental manipula un elemento de la matriz cada vez que
la condicin de entrada de rengln de la instruccin cambia de falso a
verdadero.
Habilitacin de 1 instruccin
Habilitacin de 2 instruccin
Habilitacin de 3 instruccin
16643
333
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
bit .EN
bit .DN
40014
escn de la instruccin
operacin
concluida
334
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Aritmtica y lgica de
archivo (FAL)
Captulo 8
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
Mode
DINT
inmediato
Destination
SINT
tag
SINT
inmediato
INT
tag
INT
DINT
REAL
Expression
DINT
REAL
Un tag SINT o INT se convierte en un valor DINT mediante extensin de
signo.
Texto estructurado
El texto estructurado no cuenta con la instruccin FAL, pero usted
puede lograr los mismos resultados usando una instruccin SIZE y
una construccin FOR...DO u otra construccin de lazo.
SIZE(destination,0,length-1);
FOR position = 0 TO length DO
destination[position] := numeric_expression;
END_FOR;
335
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
.ER
BOOL
.LEN
DINT
.POS
DINT
La posicin contiene la posicin del elemento actual al cual la instruccin obtiene acceso.
Descripcin: La instruccin FAL realiza las mismas operaciones en las matrices que
la instruccin CPT realiza en los elementos.
Los ejemplos que aparecen a partir de la pgina 342 describen cmo
usar el valor .POS para procesar una matriz. Si un subndice de la
expresin de Destination se encuentra fuera de rango, la instruccin
FAL genera un fallo mayor (tipo 4, cdigo 20).
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
336
Tipo de fallo
Cdigo de fallo
20
21
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Ejecucin:
Condicin
preescn
examine el
bit .DN
Bit .DN = 0
modo INC
bit .DN = 1
el bit .EN se borra
el bit .ER se borra
el bit .DN se borra
el valor .POS se borra
no
modo ALL
no
.LEN < 0 o
.POS < 0
fallo mayor
no
.POS = .POS + 1
.LEN = 0
no
.POS = 0
s
no
no
.POS = .POS - 1
no
s
modo = .LEN
el bit .DN se
establece
el bit .EN se borra
modo
numrico
pgina 341
la condicin de salida de
rengln se establece como
falsa
fin
337
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Condicin
.LEN < 0 o
.POS < 0
examinar el
bit .ER
pgina 341
fallo mayor
modo
numrico
Bit .ER = 0
no
no
bit .DN = 0
bit .ER = 1
examinar el
bit .DN
no
.LEN = 0
bit .DN = 1
s
el bit .DN se establece
el bit .EN se establece
no
modo INC
modo ALL
modo
INC
modo
ALL
pgina 340
pgina 339
comn
loop_count =
loop_count - 1
loop_count < 0
no
.POS = .POS + 1
s
evaluar la expresin
examinar S:V
no
s
el bit .ER se establece
.POS = .POS + 1
.POS = .LEN
no
s
el bit .DN se establece
el bit .EN se establece
.POS = .POS + 1
la condicin de salida de
rengln se establece como
verdadera
fin
338
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Condicin
Captulo 8
bit .EN = 1
examinar el
bit .EN
bit .EN = 0
bit = 1
examinar el
bit interno
.POS = .POS + 1
bit = 0
.POS .LEN
.POS = 0
no
no
el bit .EN se
establece
loop_count = 1
.POS = .POS - 1
.POS = .POS - 1
comn
pgina 338
la condicin de salida de
rengln se establece como
verdadera
fin
339
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Condicin
modo
ALL
examinar el
bit .EN
bit .EN = 1
.POS = .POS + 1
bit .EN = 0
bit = 1
examinar el
bit interno
bit = 0
.POS .LEN
no
.POS = 0
no
.POS = .POS - 1
la condicin de salida de
rengln se establece como
verdadera
pgina 338
fin
340
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Condicin
Captulo 8
bit .EN = 1
examinar el
bit .EN
bit .EN = 0
.POS = .POS + 1
bit = 1
examinar el
bit interno
bit = 0
.POS .LEN
.POS = 0
no
no
modo = .LEN
no
.POS = .POS - 1
.LEN modo
s
el bit .DN se establece
el bit .EN se establece
la condicin de salida de
rengln se establece como
verdadera
fin
modo
loop_count
no
comn
pgina 338
post-escn
341
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Expresin:
array_2[control_2.pos]
Destino:
array_1[control_2.pos]
Expresin:
value_1
Destino:
array_2[0,control_2.pos]
Ejemplo 3: Cada vez que la instruccin FAL se habilita, copia el valor actual de
array_1 a value_1. La instruccin FAL usa el modo incremental; por
lo tanto, slo se copia un valor de matriz cada vez que se habilita la
instruccin. La prxima vez que se habilita la instruccin, sta
sobrescribe value_1 con el siguiente valor en array_1.
copia de matriz a elemento
Expresin:
array_1[control_1.pos]
Destino:
value_1
Expresin:
value_1 + value_2
342
Destino:
array_1[control_1.pos]
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Expresin:
array_2[control_2.pos] / array_3[control_2.pos]
Destino:
array_1[control_2.pos]
Expresin:
array_1[control_1.pos] + value_1
Destino:
array_3[control_1.pos]
Ejemplo 7: Cada vez que la instruccin FAL se habilita, suma value_1 al valor
actual de array_1 y almacena el resultado en value_2. La instruccin
FAL usa el modo incremental; por lo tanto, slo se suma un valor de
matriz a value_1 cada vez que se habilita la instruccin. La siguiente
vez que se habilita la instruccin, sta sobrescribe value_2.
operacin aritmtica: (elemento + matriz) a elemento
Expresin:
value_1 + array_1[control_1.pos]
Destino:
value_2
343
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Expresin:
array_1[control_1.pos] * array_3[control_1.pos]
Destino:
value_1
Expresiones FAL
Usted programa las expresiones en las instrucciones FAL de la misma
manera que las expresiones en las instrucciones CPT. Use las
siguientes secciones para obtener informacin sobre operadores,
formato y orden de operacin vlidos que son comunes para ambas
instrucciones.
344
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Operadores vlidos
Operador
Descripcin
ptimo
Operador
Descripcin
ptimo
sumar
DINT, REAL
LOG
logaritmo base 10
REAL
restar/cambiar signo
DINT, REAL
MOD
mdulo de divisin
DINT, REAL
multiplicar
DINT, REAL
NOT
DINT
dividir
DINT, REAL
complemento a nivel
de bits
**
exponente (x a la y)
DINT, REAL
OR
O a nivel de bits
DINT
ABS
valor absoluto
DINT, REAL
RAD
grados a radianes
DINT, REAL
ACS
arco coseno
REAL
SIN
seno
REAL
AND
Y a nivel de bits
DINT
SQR
raz cuadrada
DINT, REAL
ASN
arco seno
REAL
TAN
tangente
REAL
ATN
arco tangente
REAL
TOD
entero a BCD
DINT
COS
coseno
REAL
TRN
truncar
DINT, REAL
DEG
radianes a grados
DINT, REAL
XOR
O exclusivo a nivel de
bits
DINT
FRD
BCD a entero
DINT
LN
logaritmo natural
REAL
Expresiones de formato
Por cada operador que use en una expresin, usted tiene que
proporcionar uno o dos operandos (tags o valores inmediatos). Use la
siguiente tabla para formatear operadores y operandos dentro de una
expresin:
Para operadores
que operan en
Ejemplos
un operando
operador(operando)
ABS(tag_a)
dos operandos
tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD (tag_f /
tag_g)
345
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
346
Orden
Operacin
1.
()
2.
3.
**
4.
5.
*, /, MOD
6.
(restar), +
7.
AND
8.
XOR
9.
OR
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Bsqueda y comparacin
de archivos (FSC)
Captulo 8
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
offset en la matriz
el valor inicial es tpicamente 0
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
.ER
BOOL
.IN
BOOL
El bit de inhibicin indica que la instruccin FSC ha detectado una comparacin verdadera.
Usted debe borrar este bit para poder continuar la operacin de buscar.
.FD
BOOL
El bit de encontrado indica que la instruccin FSC ha detectado una comparacin verdadera.
.LEN
DINT
.POS
DINT
La posicin contiene la posicin del elemento actual al cual la instruccin obtiene acceso.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
Tipo de fallo
Cdigo de fallo
21
347
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Ejecucin:
Condicin
preescn
examinar el
bit .DN
bit .DN = 0
bit .DN = 1
el bit .EN se borra
el bit .ER se borra
el bit .DN se borra
el valor .POS se borra
modo INC
no
s
el bit .EN se borra
modo ALL
no
.LEN < 0 o
.POS < 0
fallo mayor
no
.POS = .POS + 1
.LEN = 0
no
.POS = 0
s
no
no
.POS = .POS - 1
no
s
modo = .LEN
el bit .DN se
establece
el bit .EN se borra
modo
numrico
la condicin de salida de
rengln se establece como
falsa
pgina 341
fin
348
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Condicin
Captulo 8
pgina 341
fallo mayor
modo
numrico
bit .ER = 0
no
no
bit .DN = 0
bit .ER = 1
bit .DN = 1
examinar el
bit .IN
.LEN = 0
no
bit .IN = 0
examinar el
bit .DN
no
modo INC
modo ALL
modo
INC
modo
ALL
pgina 340
pgina 339
comn
bit .DN = 0
loop_count =
loop_count - 1
loop_count < 0
no
.POS = .POS + 1
s
evale la comparacin
coincidencia
no
s
el bit .EN se establece
el bit .FD se establece
el bit .IN se establece
.POS = .POS + 1
.POS = .LEN
no
s
el bit .DN se establece
el bit .EN se establece
.POS = .POS + 1
fin
post-escn
349
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Ejemplo 1: Buscar una coincidencia entre dos matrices. Una vez habilitada, la
instruccin FSC compara cada uno de los 10 primeros elementos en
array_1 con los elementos correspondientes en array_2.
array_1
array_2
control_3.pos
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000001111111111111111
11111111111111110000000000000000
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
350
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
MySearchKey
11111111111111110000000000000000
referencia
control_3.pos
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
11111111111111110000000000000000
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
11111111111111111111111111111111
351
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
code
SAM
code_table
code_table_search.POS
AFG
BEH
HUO
SAK
SAM
FQG
CLE
CAK
DET
BWG
Expresiones FSC
Usted programa las expresiones en las instrucciones FSC de la misma
manera que las expresiones en las instrucciones CMP. Use las
siguientes secciones para obtener informacin sobre operadores,
formato y orden de operacin vlidos que son comunes para ambas
instrucciones.
352
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Operadores vlidos
Operador
Descripcin
ptimo
Operador
Descripcin
ptimo
sumar
DINT, REAL
DEG
radianes a grados
DINT, REAL
restar/cambiar signo
DINT, REAL
FRD
BCD a entero
DINT
multiplicar
DINT, REAL
LN
logaritmo natural
REAL
dividir
DINT, REAL
LOG
logaritmo base 10
REAL
igual que
DINT, REAL
MOD
mdulo de divisin
DINT, REAL
<
menor que
DINT, REAL
NOT
DINT
<=
DINT, REAL
complemento a nivel
de bits
>
mayor que
DINT, REAL
OR
O a nivel de bits
DINT
>=
DINT, REAL
RAD
grados a radianes
DINT, REAL
<>
diferente de
DINT, REAL
SIN
seno
REAL
**
exponente (x a la y)
DINT, REAL
SQR
raz cuadrada
DINT, REAL
ABS
valor absoluto
DINT, REAL
TAN
tangente
REAL
ACS
arco coseno
REAL
TOD
entero a BCD
DINT
AND
Y a nivel de bits
DINT
TRN
truncar
DINT, REAL
ASN
arco seno
REAL
XOR
O exclusivo a nivel de
bits
DINT
ATN
arco tangente
REAL
COS
coseno
REAL
Expresiones de formato
Por cada operador que use en una expresin, usted tiene que
proporcionar uno o dos operandos (tags o valores inmediatos). Use la
siguiente tabla para formatear operadores y operandos dentro de una
expresin:
Para operadores
que operan en
Ejemplos
un operando
operador(operando)
ABS(tag_a)
dos operandos
tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD (tag_f /
tag_g)
353
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
354
Orden
Operacin
1.
()
2.
3.
**
4.
5.
*, /, MOD
6.
7.
(restar), +
8.
AND
9.
XOR
10.
OR
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Descripcin
igual que
<
menor que
<=
>
mayor que
>=
<>
diferente de
m
e
n
o
r
m
a
y
o
r
Caracteres ASCII
Cdigos
hexadecimales
1ab
$31$61$62
1b
$31$62
$41
AB
$41$42
$42
$61
ab
$61$62
AB < B
a>B
355
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
tag
INT
DINT
REAL
cadena
estructura
Destination
SINT
tag
INT
Importante: Los operandos Source y
Destination deben ser del mismo tipo; de lo
contrario, pueden ocurrir resultados
inesperados.
DINT
REAL
cadena
estructura
Length
DINT
inmediato
tag
Texto estructurado
COP(Source,Dest,Length);
CPS(Source,Dest,Length);
356
Los operandos son iguales que los de las instrucciones COP y CPS de
lgica de escalera de rels.
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Y usted desea
Entonces
seleccione
CPS
datos de E/S
datos que otra tarea puede
sobrescribir
Notas
Las tareas que intentan interrumpir
una instruccin CPS se suspenden
hasta que haya finalizado la
instruccin.
Para calcular el tiempo de ejecucin
de la instruccin CPS, consulte el
documento ControlLogix System User
Manual, publicacin 1756-UM001.
COP
COP
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
Las instrucciones COP y CPS operan en memoria contigua. Realizan una copia de
memoria directa byte a byte. En algunos casos, escriben ms all de la matriz en
otros miembros del tag. Esto sucede si la longitud es excesiva y el tag es de un tipo
de datos definido por el usuario.
Si el tag es
Entonces
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Publicacin 1756-RM003K-ES-P Julio 2008
357
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
no
source_address = Source
destination_address =
end_address
no
destination_address =
destination_address + 1
post-escn
358
Ninguna.
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Ejemplo 1: Tanto array_4 como array_5 son del mismo tipo de datos. Cuando se
habilita, la instruccin COP copia los primeros 10 elementos de
array_4 en los primeros 10 elementos de array_5.
Texto estructurado
COP(array_4[0],array_5[0],10);
Texto estructurado
COP(timer_1,array_timer[5],1);
359
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Texto estructurado
CPS(project_data[0],produced_array[0],100);
Texto estructurado
CPS(Local:0:I.Data[0],input_buffer[0],20);
360
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
array_timer[1]
array_timer[2]
array_timer[3]
array_timer[4]
array_timer[9]
array_timer[10]
Texto estructurado
IF S:FS THEN
array_timer[0].pre := 500;
array_timer[0].acc := 0;
COP(array_timer[0],array_timer[1],10);
END_IF;
361
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato:
Descripcin
Source
SINT
inmediato
INT
tag
tag
DINT
REAL
Destination
SINT
INT
DINT
REAL
estructura
Length
DINT
inmediato
Texto estructurado
El texto estructurado no cuenta con la instruccin FLL, pero usted
puede lograr los mismos resultados usando una instruccin SIZE y
una construccin FOR...DO u otra construccin de lazo.
SIZE(destination,0,length);
FOR position = 0 TO length-1 DO
destination[position] := source;
END_FOR;
362
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin FLL realiza la operacin en la memoria de datos contiguos. En algunos
casos, la instruccin escribe ms all de la matriz en otros miembros del tag. Esto
sucede si la longitud es excesiva y el tag es de un tipo de datos definido por el
usuario.
Si el tag es
Entonces
Y Destination es
Source se convierte en
SINT
SINT
INT
INT
DINT
DINT
REAL
REAL
SINT
estructura
INT
estructura
DINT
estructura
REAL
estructura
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
363
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es verdadera
end_address = start_address + (Length
nmero de bytes en un elemento de
destino)
no
source_address = Source
destination_address =
end_address
no
destination_address =
destination_address + 1
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
364
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Tipo de datos de
Source (value_1)
Valor de Source
(value_1)
Tipo de datos de
Destination
(dest_1)
Valor de
Destination
(dest_1) despus
de FLL
SINT
16#80 (-128)
DINT
DINT
16#1234 5678
SINT
16#78
SINT
16#01
REAL
1.0
REAL
2.0
INT
16#0002
SINT
16#01
TIMER
16#0101 0101
16#0101 0101
16#0101 0101
INT
16#0001
TIMER
16#0001 0001
16#0001 0001
16#0001 0001
DINT
16#0000 0001
TIMER
16#0000 0001
16#0000 0001
16#0000 0001
Texto estructurado
dest_1 := value _1;
365
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
SINT
tag de
matriz
INT
Dimension
to vary
DINT
REAL
DINT
inmediato
qu dimensin usar
(0, 1, 2)
Destination
SINT
tag
resultado de la operacin
INT
DINT
REAL
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
Texto estructurado
El texto estructurado no cuenta con la instruccin AVE, pero usted
puede lograr los mismos resultados usando una instruccin SIZE y
una construccin FOR...DO u otra construccin de lazo.
SIZE(array,0,length);
sum := 0;
FOR position = 0 TO length-1 DO
sum := sum + array[position];
END_FOR;
destino := sum / length;
366
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
.ER
BOOL
.LEN
DINT
.POS
DINT
La posicin contiene la posicin del elemento actual al cual la instruccin obtiene acceso.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
Tipo de fallo
Cdigo de fallo
21
20
367
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Ejecucin:
Condicin
preescn
bit .DN = 0
bit .DN = 1
la condicin de salida de
rengln se establece como
falsa
fin
post-escn
368
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
su
dimensin 1
d
bn
20
19
18
17
16
15
14
13
12
11
10
s
ice
dimensin 0
+ 14 + 9 + 4- = 46
AVE = 19
----------------------------------------- = 11.5
4
4
dint_ave = 12
Texto estructurado
SIZE(array_dint,0,length);
sum := 0;
FOR position = 0 TO (length-1) DO
sum := sum + array_dint[position];
END_FOR;
dint_ave := sum / length;
369
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
b
su
dimensin 1
nd
20
19
18
17
16
15
14
13
12
11
10
ice
dimensin 0
+ 4 + 3 + 2 + 1- = 15
AVE = 5-------------------------------------------- = 3
5
5
dint_ave = 3
Texto estructurado
SIZE(array_dint,1,length);
sum := 0;
FOR position = 0 TO (length-1) DO
sum := sum + array_dint[position];
END_FOR;
dint_ave := sum / length;
370
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Clasificacin de archivo
(SRT)
Captulo 8
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
SINT
tag de
matriz
INT
DINT
no use CONTROL.POS en el subndice
REAL
Dimension
to vary
DINT
inmediato
qu dimensin usar
(0, 1, 2)
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
Texto estructurado
SRT(Array,Dimtovary,
Control);
Los operandos son los mismos que para la instruccin SRT de lgica
de escalera de rels. Sin embargo, usted especifica los valores de
Length y Position al acceder a los miembros .LEN y .POS de la
estructura CONTROL, en lugar de incluir los valores en la lista de
operandos.
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
.ER
BOOL
Se establece el bit de error cuando .LEN < 0 o .POS < 0. Cualquiera de estas condiciones
tambin genera un fallo mayor.
.LEN
DINT
.POS
DINT
La posicin contiene la posicin del elemento actual al cual la instruccin obtiene acceso.
371
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin SRT realiza la operacin en la memoria de datos contiguos. En
algunos casos, la instruccin cambia datos en otros miembros del tag. Esto sucede
si la longitud es excesiva y el tag es de un tipo de datos definido por el usuario.
IMPORTANTE
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
372
Tipo de fallo
Cdigo de fallo
21
20
20
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
examinar el bit .DN
bit .DN = 0
bit .DN = 1
la condicin de salida de
rengln se establece como
falsa
fin
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
373
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Antes
20
19
15
20
19
18
17
16
15
14
13
12
11
10
s
ic e
17
16
14
12
11
10
13
18
es
dic
d
bn
dimensin 0
dimensin 1
bn
su
su
dimensin 1
dimensin 0
Texto estructurado
control_1.LEN := 4;
control_1.POS := 0;
SRT(int_array[0,2],0,control_1);
374
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Antes
bn
20
19
18
17
16
15
14
13
12
11
10
20
19
18
17
16
15
14
13
12
11
10
ice
e
dic
nd
dimensin 0
dimensin 1
su
b
su
dimensin 1
dimensin 0
Texto estructurado
control_1.LEN := 5;
control_1.POS := 0;
SRT(int_array[2,0],1,control_1);
375
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Desviacin estndar de
archivo (STD)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
SINT
tag de
matriz
INT
especificar el primer elemento del grupo de
elementos que se usan para calcular la
desviacin estndar
DINT
REAL
DINT
inmediato
qu dimensin usar
(0, 1, 2)
Destination
REAL
tag
resultado de la operacin
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
.ER
BOOL
.LEN
DINT
.POS
DINT
La posicin contiene la posicin del elemento actual al cual la instruccin obtiene acceso.
376
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Texto estructurado
El texto estructurado no cuenta con la instruccin STD, pero usted
puede lograr los mismos resultados usando una instruccin SIZE y
una construccin FOR...DO u otra construccin de lazo.
SIZE(array,0,length);
sum := 0;
FOR position = 0 TO length-1 DO
sum := sum + array[position];
END_FOR;
average := sum / length;
sum := 0;
FOR position = 0 TO length-1 DO
sum := sum + ((array[position] - average)**2);
END_FOR;
destino := SQRT(sum /(length-1));
Desviacin estndar =
AVE
]
( start + i )
i = 1
-------------------------------------------------------------------(N 1)
Donde:
inicio = subndice de la dimensin para variar del operando de
la matriz
xi = elemento variable en la matriz
N = nmero de elementos especificados en la matriz
AVE =
x ( start + i )
i = 1
----------------------------------------N
IMPORTANTE
377
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
21
20
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
bit .DN = 0
bit .DN = 1
la condicin de salida de
rengln se establece como
falsa
fin
condicin de entrada de rengln es verdadera La instruccin STD calcula la desviacin estndar de los elementos especificados.
Internamente, la instruccin usa una instruccin FAL para calcular el promedio:
Expresin = clculo de la desviacin estndar
Modo = ALL
Para obtener detalles acerca de cmo se ejecuta la instruccin FAL, vea la pgina 337.
post-escn
378
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
20
19
18
17
16
15
14
13
12
11
10
es
dimensin 0
+ 11 + 6 + 1- = 34
AVE = 16
----------------------------------------- = 8.5
4
4
2
STD =
real_std = 6.454972
Texto estructurado
SIZE(dint_array,0,length);
sum := 0;
FOR position = 0 TO (length-1) DO
sum := sum + dint_array[position];
END_FOR;
average := sum / length;
sum := 0;
FOR position = 0 TO (length-1) DO
sum := sum + ((dint_array[position] - average)**2);
END_FOR;
real_std := SQRT(sum / (length-1));
379
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
20
19
18
17
16
15
14
13
12
11
10
es
dic
dimensin 0
+ 19 + 18 + 17 + 16- = 90
AVE = 20
----------------------------------------------------------- = 18
5
5
2
STD =
20 18 + 19 18 + 18 18 + 17 18 + 16 18 - = 1.581139
---------------------------------------------------------------------------------------------------------------------------------------------------------- 5 1
real_std = 1.581139
Texto estructurado
SIZE(dint_array,1,length);
sum := 0;
FOR position = 0 TO (length-1) DO
sum := sum + dint_array[position];
END_FOR;
average := sum / length;
sum := 0;
FOR position = 0 TO (length-1) DO
sum := sum + ((dint_array[position] - average)**2);
END_FOR;
real_std := SQRT(sum / (length-1));
380
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Tamao en elementos
(SIZE)
Captulo 8
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
tag de
matriz
inmediato
(0, 1, 2)
INT
DINT
REAL
estructura
cadena
Dimension
to Vary
Size
DINT
SINT
tag
Para el tamao de
Introduzca
primera dimensin
segunda dimensin
tercera dimensin
INT
DINT
REAL
Texto estructurado
SIZE(Source,Dimtovary,Size);
Indicadores de estado
aritmtico: no afectados
381
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n .a.
ejecucin de la instruccin
post-escn
Ninguna.
Texto estructurado
SIZE(array_a,0,array_a_size);
382
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Captulo 8
Texto estructurado
SIZE(string_1.DATA[0],0,string_1_size);
Texto estructurado
SIZE(strings_a[0].DATA[0],0,data_size_a);
383
Captulo 8
Instrucciones de matriz (archivo)/miscelneas (FAL, FSC, COP, CPS, FLL, AVE, SRT, STD, SIZE)
Notas:
384
Captulo
Instrucciones de matriz
(archivo)/desplazamiento
(BSL, BSR, FFL, FFU, LFL, LFU)
Introduccin
Si desea
Vea la pgina
BSL
386
BSR
390
FFL
394
FFU
400
LFL
406
LFU
412
385
Captulo 9
Desplazamiento de bits a la
izquierda (BSL)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
DINT
tag de
matriz
Control
CONTROL
tag
Source bit
BOOL
tag
Length
DINT
inmediato
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
Se establece el bit de efectuado para indicar que los bits se han desplazado una posicin
hacia la izquierda.
.UL
BOOL
El bit de descarga es la salida de la instruccin. El bit .UL almacena el estado del bit que se
desplaz fuera del rango de los bits.
.ER
BOOL
.LEN
DINT
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin BSL realiza la operacin en la memoria de datos contiguos. En
algunos casos, la instruccin desplaza bits ms all de la matriz en otros miembros
del tag. Esto sucede si la longitud es excesiva y el tag es de un tipo de datos
definido por el usuario.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
386
Captulo 9
Ejecucin:
Condicin:
preescn
387
Captulo 9
Condicin:
bit .EN = 1
bit .EN = 0
el bit .EN se establece
.LEN = 0
no
.LEN < 0
.source bit = 1
examinar el bit de
origen
no
el bit .UL se establece.
desplazar matriz izquierda una posicin a la
izquierda
matriz
bit .UL
bit de
origen
la condicin de salida de
rengln se establece como
verdadera
.POS = .LEN
fin
post-escn
388
Captulo 9
9 8 7 6 5 4 3 2 1 0
array_dint[0] 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
antes del
desplazamiento
estos bits se desplazan
a la izquierda
0
bit .UL
1
input_1
9 8 7 6 5 4 3 2 1 0
array_dint[0]
despus del
desplazamiento
0 1 1 1 1 0 0 0 0 1
31
array_dint[0] 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
1
estos bits se desplazan a la izquierda
31
input_1
0
array_dint[1]
0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
bit .UL
389
Captulo 9
Desplazamiento de bits a la
derecha (BSR)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
DINT
tag de
matriz
Control
CONTROL
tag
Source bit
BOOL
tag
Length
DINT
inmediato
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
Se establece el bit de efectuado para indicar que los bits se han desplazado una posicin
hacia la derecha.
.UL
BOOL
El bit de descarga es la salida de la instruccin. El bit .UL almacena el estado del bit que se
desplaz fuera del rango de los bits.
.ER
BOOL
.LEN
DINT
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin BSR realiza la operacin en la memoria de datos contiguos. En
algunos casos, la instruccin cambia los bits en otros miembros del tag. Esto sucede
si la longitud es excesiva y el tag es de un tipo de datos definido por el usuario.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
390
Captulo 9
Ejecucin:
Condicin
preescn
391
Captulo 9
Condicin
bit .EN = 1
bit .EN = 0
el bit .EN se establece
.LEN = 0
no
.LEN < 0
examinar el bit de
origen
.source bit = 1
no
el bit .UL se establece
desplazar matriz izquierda una posicin hacia
la izquierda
bit de
origen
matriz
bit .UL
la condicin de salida de
rengln se establece como
verdadera
.POS = .LEN
fin
post-escn
392
Captulo 9
9 8 7 6 5 4 3 2 1 0
array_dint[0] 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
antes del
desplazamiento
estos bits se desplazan
a la derecha
1
input_1
0
bit .UL
9 8 7 6 5 4 3 2 1 0
array_dint[0]
despus del
desplazamiento
1 0 0 1 1 1 1 0 0 0
31
array_dint[0] 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
0
bit .UL
31
array_dint[1]
0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
input_1
393
Captulo 9
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
cadena
estructura
Source se convierte en el tipo de datos del tag de matriz. Un nmero entero
menor se convierte en un nmero entero mayor mediante extensin de
signo.
FIFO
SINT
tag de
matriz
INT
DINT
REAL
cadena
estructura
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
394
Captulo 9
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
Se establece el bit de efectuado para indicar que la FIFO est llena (.POS = .LEN). El bit .DN
inhibe la carga de la FIFO hasta que .POS < .LEN.
.EM
BOOL
El bit de vaco indica que la FIFO est vaca. Si .LEN 0 o .POS < 0, los bits .EM y .DN se
establecen.
.LEN
DINT
La longitud especifica el nmero mximo de elementos que la FIFO puede contener a la vez.
.POS
DINT
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin FFL realiza la operacin en la memoria de datos contiguos. En algunos
casos, la instruccin carga datos ms all de la matriz en otros miembros del tag.
Esto sucede si la longitud es excesiva y el tag es de un tipo de datos definido por el
usuario.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo de fallo
Cdigo de fallo
20
395
Captulo 9
Ejecucin:
Condicin
preescn
se establece el bit .EN para evitar una
carga falsa cuando se inicia el escn
.LEN < 0
no
.POS < 0
no
.POS = 0
no
.POS .LEN
no
la condicin de salida de
rengln se establece como
falsa
fin
396
Condicin
Captulo 9
.LEN < 0
no
.POS < 0
no
.POS = 0
no
.POS .LEN
no
la condicin de salida de
rengln se establece como
falsa
fin
397
Captulo 9
Condicin
examinar el
bit .EN
.EN = 0
.LEN < 0
no
.EN = 1
.LEN < 0
.POS < 0
no
no
.POS < 0
.POS = .POS + 1
no
el bit .EM est
establecido
.POS .LEN
no
.POS = 0
no
fallo mayor
no
.POS .LEN
no
.POS = .POS - 1
no
FIFO[.POS - 1] = origen
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
398
Captulo 9
antes de la carga
FIFO
despus de la carga
FIFO
00000
00000
11111
11111
22222
22222
array_dint[0]
array_dint[5]
33333
control_1.pos = 5
33333
44444
value_1 = 55555
44444
00000
55555
00000
00000
00000
00000
00000
00000
00000
00000
control_1.pos = 6
399
Captulo 9
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
FIFO
SINT
tag de
matriz
INT
DINT
REAL
cadena
estructura
Destination
SINT
tag
INT
DINT
REAL
cadena
estructura
El valor de destino se convierte en el tipo de datos del tag de Destination.
Un nmero entero menor se convierte en un nmero entero mayor
mediante extensin de signo.
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
400
Captulo 9
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EU
BOOL
El bit de habilitacin de descarga indica que la instruccin FFU est habilitada. El bit .EU se
establece para impedir una descarga falsa cuando se inicia el escn del programa.
.DN
BOOL
Se establece el bit de efectuado para indicar que la FIFO est llena (.POS = .LEN).
.EM
BOOL
El bit de vaco indica que la FIFO est vaca. Si .LEN 0 o .POS < 0, los bits .EM y .DN se
establecen.
.LEN
DINT
.POS
DINT
Descripcin: Use la instruccin FFU con una instruccin FFL para almacenar y
recuperar datos en el siguiente orden: primero en entrar, primero en
salir.
Una vez habilitada, la instruccin FFU descarga los datos desde el
primer elemento de la FIFO y coloca dicho valor en Destination. La
instruccin descarga un valor cada vez que la instruccin se habilita
hasta que la FIFO est vaca. Si la FIFO est vaca, FFU retorna la
cifra 0 a Destination.
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin FFU realiza la operacin en la memoria de datos contiguos. En
algunos casos, la instruccin descarga datos desde otros miembros del tag. Esto
sucede si la longitud es excesiva y el tag es de un tipo de datos definido por el
usuario.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo de fallo
Cdigo de fallo
20
401
Captulo 9
Ejecucin:
Condicin
preescn
.LEN < 0
no
.POS < 0
no
.POS = 0
no
.POS .LEN
no
la condicin de salida de
rengln se establece como
falsa
fin
402
Condicin
Captulo 9
.LEN < 0
no
.POS < 0
no
.POS = 0
no
.POS .LEN
no
la condicin de salida de
rengln se establece como
falsa
fin
403
Captulo 9
Condicin
examinar el
bit .EU
.EU = 0
.LEN < 0
.EU = 1
no
.LEN < 0
.POS < 0
no
no
.POS < 0
no
el bit .EM est
establecido
.LEN >
tamao de la
matriz
fallo mayor
no
s
.POS = 0
.POS 1
no
no
.POS .LEN
.POS < 1
Destination = 0
no
.POS = .POS -1
Destination = FIFO[0]
i=1
FIFO[i - 1] = FIFO[i]
i = i +1
s
i < .LEN
no
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
404
Captulo 9
antes de la descarga
FIFO
despus de la descarga
FIFO
00000
11111
11111
22222
22222
33333
33333
44444
44444
55555
55555
00000
control_1.pos = 5
00000
value_2 = 00000
array_dint[0]
array_dint[5]
00000
control_1.pos = 6
00000
00000
00000
00000
00000
00000
405
Captulo 9
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
cadena
estructura
Source se convierte en el tipo de datos del tag de matriz. Un nmero entero
menor se convierte en un nmero entero mayor mediante extensin de
signo.
LIFO
SINT
tag de
matriz
INT
DINT
REAL
cadena
estructura
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
406
Captulo 9
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin:
.EN
BOOL
.DN
BOOL
Se establece el bit de efectuado para indicar que la LIFO est llena (.POS = .LEN). El bit .DN
inhibe la carga de la LIFO hasta que .POS < .LEN.
.EM
BOOL
El bit de vaco indica que la LIFO est vaca. Si .LEN 0 o .POS < 0, los bits .EM y .DN se
establecen.
.LEN
DINT
La longitud especifica el nmero mximo de elementos que la LIFO puede contener a la vez.
.POS
DINT
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin LFL realiza la operacin en la memoria de datos contiguos. En algunos
casos, la instruccin carga datos ms all de la matriz en otros miembros del tag.
Esto sucede si la longitud es excesiva y el tag es de un tipo de datos definido por el
usuario.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo de fallo
Cdigo de fallo
20
407
Captulo 9
Ejecucin:
Condicin:
preescn
.LEN < 0
no
.POS < 0
no
.POS = 0
no
.POS .LEN
no
la condicin de salida de
rengln se establece como
falsa
fin
408
Condicin:
Captulo 9
.LEN < 0
no
.POS < 0
no
.POS = 0
no
.POS .LEN
no
la condicin de salida de
rengln se establece como
falsa
fin
409
Captulo 9
Condicin:
examinar el
bit .EN
.EN = 0
el bit .EN se
establece
.LEN < 0
no
.EN = 1
.LEN < 0
.POS < 0
no
no
.POS < 0
.POS = .POS + 1
no
el bit .EM est
establecido
.POS .LEN
no
.POS = 0
no
fallo mayor
no
.POS .LEN
no
.POS = .POS - 1
no
LIFO[.POS - 1] = origen
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
410
Captulo 9
antes de la carga
LIFO
despus de la carga
LIFO
00000
00000
11111
11111
22222
22222
array_dint[0]
array_dint[5]
33333
control_1.pos = 5
33333
44444
value_1 = 55555
44444
00000
55555
00000
00000
00000
00000
00000
00000
00000
00000
control_1.pos = 6
411
Captulo 9
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
LIFO
SINT
tag de
matriz
INT
DINT
REAL
cadena
estructura
Destination
SINT
tag
INT
DINT
REAL
cadena
estructura
El valor de destino se convierte en el tipo de datos del tag de Destination.
Un nmero entero menor se convierte en un nmero entero mayor
mediante extensin de signo.
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
412
Captulo 9
Estructura CONTROL
Mnemnico
Tipo de datos:
Descripcin
.EU
BOOL
El bit de habilitacin de descarga indica que la instruccin LFU est habilitada. El bit .EU se
establece para impedir una descarga falsa cuando se inicia el escn del programa.
.DN
BOOL
Se establece el bit de efectuado para indicar que la LIFO est llena (.POS = .LEN).
.EM
BOOL
El bit de vaco indica que la LIFO est vaca. Si .LEN 0 o .POS < 0, los bits .EM y .DN se
establecen.
.LEN
DINT
La longitud especifica el nmero mximo de elementos que la LIFO puede contener a la vez.
.POS
DINT
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin LFU realiza la operacin en la memoria de datos contiguos. En
algunos casos, la instruccin descarga datos desde otros miembros del tag. Esto
sucede si la longitud es excesiva y el tag es de un tipo de datos definido por el
usuario.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo de fallo
Cdigo de fallo
20
413
Captulo 9
Ejecucin:
Condicin
preescn
.LEN < 0
no
.POS < 0
no
.POS = 0
no
.POS .LEN
no
la condicin de salida de
rengln se establece como
falsa
fin
414
Condicin
Captulo 9
.LEN < 0
no
.POS < 0
no
.POS = 0
no
.POS .LEN
no
la condicin de salida de
rengln se establece como
falsa
fin
415
Captulo 9
Condicin
examinar el
bit .EU
.EU = 0
.LEN < 0
no
.EU = 1
.LEN < 0
.POS < 0
no
no
.POS < 0
no
el bit .EM est
establecido
.POS 1
no
.POS = 0
no
.POS .LEN
.POS < 1
Destination = 0
no
.POS = .LEN
no
.POS = .POS -1
.LEN >
tamao de la
matriz
fallo mayor
no
Destination = LIFO[control.POS]
LIFO[control.POS) = 0
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
416
Captulo 9
antes de la descarga
LIFO
despus de la descarga
LIFO
00000
00000
11111
11111
22222
22222
33333
33333
44444
44444
55555
00000
control_1.pos = 5
00000
value_2 = 55555
array_dint[0]
array_dint[5]
00000
control_1.pos = 6
00000
00000
00000
00000
00000
00000
417
Captulo 9
Notas:
418
Captulo
10
Instrucciones de secuenciador
(SQI, SQO, SQL)
Introduccin
Si desea
Vea la pgina
SQI
420
SQO
424
SQL
428
419
Captulo 10
Secuenciador de entrada
(SQI)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
DINT
tag de
matriz
matriz de secuenciador
especifica el primer elemento de la matriz de
secuenciador
no use CONTROL.POS en el subndice
Mask
SINT
tag
INT
inmediato
DINT
Un tag SINT o INT se convierte en un valor DINT mediante la extensin con
signo.
Source
SINT
tag
INT
DINT
Un tag SINT o INT se convierte en un valor DINT mediante la extensin con
signo.
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.ER
BOOL
El bit de error se establece cuando .LEN 0, .POS < 0, o .POS > .LEN.
.LEN
DINT
.POS
DINT
420
Captulo 10
Descripcin
16#
hexadecimal
por ejemplo; 16#0F0F
8#
octal
por ejemplo; 8#16
2#
binario
por ejemplo; 2#00110011
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
421
Captulo 10
Ejecucin:
Condicin:
preescn
.LEN 0
.POS < 0
o
.POS > .LEN
no
s
el bit .ER se establece
no
Source
enmascarada =
Array[.POS]
enmascarada
s
la condicin de salida de
rengln se establece como
verdadera
la condicin de salida de
rengln se establece como
falsa
fin
post-escn
422
Captulo 10
Operando SQI
Source
Mask
Array
423
Captulo 10
Secuenciador de salida
(SQO)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
DINT
Mask
SINT
tag
INT
inmediato
DINT
Un tag SINT o INT se convierte en un valor DINT mediante la extensin con
signo.
Destination
DINT
tag
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
.ER
BOOL
El bit de error se establece cuando .LEN 0, .POS < 0, o .POS > .LEN.
.LEN
DINT
.POS
DINT
424
Captulo 10
Descripcin
16#
hexadecimal
por ejemplo; 16#0F0F
8#
octal
por ejemplo; 8#16
2#
binario
por ejemplo; 2#00110011
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
El bit .EN se establece para impedir una carga falsa cuando se inicia el escn del
programa.
La condicin de salida de rengln se establece como falsa.
425
Captulo 10
Condicin
.LEN 0 o
.POS < 0
no
examine el
bit .EN
.EN = 0
.EN = 1
.POS = .LEN
no
.POS .LEN
.POS = 1
no
.POS = .POS + 1
el valor
.POS retorna al
valor inicial
ir a
error
no
.POS = .LEN
no
no
error
fin
post-escn
426
Captulo 10
Operando SQO
Array
Mask
Destination
427
Captulo 10
Carga de secuenciador
(SQL)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Array
DINT
Source
SINT
tag
INT
inmediato
DINT
Un tag SINT o INT se convierte en un valor DINT mediante la extensin con
signo.
Control
CONTROL
tag
Length
DINT
inmediato
Position
DINT
inmediato
Estructura CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
El bit de efectuado se establece cuando todos los elementos especificados se han cargado
en la matriz.
.ER
BOOL
El bit de error se establece cuando .LEN 0, .POS < 0, o .POS > .LEN.
.LEN
DINT
.POS
DINT
428
Captulo 10
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin SQL realiza la operacin en memoria contigua. En algunos casos, la
instruccin carga datos ms all de la matriz en otros miembros del tag. Esto sucede
si la longitud es excesiva y el tag es de un tipo de datos definido por el usuario.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
20
Ejecucin:
Condicin
preescn
El bit .EN se establece para impedir una carga falsa cuando se inicia el escn del
programa.
La condicin de salida de rengln se establece como falsa.
429
Captulo 10
Condicin
.LEN 0 o
.POS < 0
no
examine el
bit .EN
.EN = 0
.POS = .LEN
.EN = 1
no
.POS .LEN
.POS = 1
no
.POS = .POS + 1
el valor
.POS retorna al
valor inicial
ir a
error
no
.POS = .LEN
no
no
error
.LEN >
tamao de la
matriz
no
fallo mayor
Array[control.POS] = Source
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
430
Captulo 10
antes de la carga
despus de la carga
00000
00000
11111
11111
22222
22222
array_dint[0]
array_dint[5]
33333
control_1.pos = 5
33333
44444
value_3 = 55555
44444
00000
55555
00000
00000
00000
00000
00000
00000
00000
00000
control_1.pos = 6
431
Captulo 10
Notas:
432
Captulo
11
Introduccin
Si desea
Vea la pgina
JMP
LBL
434
JSR
SBR
RET
436
bloque de funciones
texto estructurado
JXR
447
TND
450
MCR
452
UID
454
texto estructurado
texto estructurado
Habilitar tareas de usuario.
UIE
454
texto estructurado
Inhabilitar un rengln.
AFI
456
NOP
457
EOT
458
SFP
SFR
texto estructurado
lgica de escalera de rels
460
texto estructurado
lgica de escalera de rels
462
texto estructurado
Activar la ejecucin de una tarea de evento
EVENT
464
texto estructurado
433
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
nombre de
etiqueta
nombre de
etiqueta
instruccin JMP
Nombre de
etiqueta
instruccin LBL
Nombre de
etiqueta
ATENCIN
434
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
la etiqueta no existe
42
Ejecucin:
Condicin:
preescn
post-escn
435
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Operandos de JSR:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Nombre de
la rutina
ROUTINE
nombre
Parmetro
de entrada
BOOL
inmediato
SINT
tag
INT
tag de
matriz
DINT
REAL
estructura
Parmetro
de retorno
BOOL
tag
SINT
tag de
matriz
INT
DINT
REAL
estructura
436
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Operando
Tipo
Formato
Descripcin
Nombre de
la rutina
ROUTINE
nombre
Conteo de
entradas
SINT
inmediato
BOOL
inmediato
SINT
tag
INT
tag de
matriz
INT
DINT
REAL
Parmetro
de entrada
DINT
REAL
estructura
Parmetro
de retorno
BOOL
tag
SINT
tag de
matriz
INT
DINT
REAL
estructura
Bloque de funciones
Parmetros de
entrada
Parmetros de
retorno
437
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
ATENCIN
Operandos de SBR: La instruccin SBR debe ser la primera instruccin en una lgica de
escalera de rels o rutina de texto estructurado.
Tipo
Formato
Descripcin
Parmetro
de entrada
BOOL
tag
SINT
tag de
matriz
INT
DINT
REAL
estructura
SBR(InputPar);
Texto estructurado
Los operandos son iguales a los de la instruccin SBR de lgica de
escalera de rels.
Bloque de funciones
Parmetros
438
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Operandos de RET:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Parmetro
de retorno
BOOL
inmediato
SINT
tag
INT
tag de
matriz
DINT
REAL
estructura
RET(ReturnPar);
Texto estructurado
Los operandos son iguales a los de la instruccin RET de lgica de
escalera de rels.
Bloque de funciones
Parmetros
439
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
SBR
Subrutina
SBR
JSR
JSR
RET
RET
RET
1. Si la instruccin JSR tiene un parmetro de retorno, introduzca
una instruccin RET.
2. Coloque la instruccin RET como la ltima instruccin en la
rutina.
3. Para cada parmetro de retorno en la instruccin JSR,
introduzca un parmetro de retorno para enviar la instruccin
JSR.
4. En una rutina de lgica de escalera, coloque instrucciones RET
adicionales para salir de la subrutina con base en diferentes
condiciones de entrada, si es necesario. (Las rutinas de bloque
de funciones slo permiten una instruccin RET).
440
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
nivel 2
nivel 3
subrutina action_1
subrutina action_2
subrutina action_3
rutina principal
SBR
action_1
JSR
SBR
SBR
action_2
JSR
action_3
JSR
RET
RET
RET
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
31
31
31
Ejecucin:
Lgica de escalera de rels y texto estructurado
Condicin
preescn
El controlador ejecuta todas las subrutinas independientemente de la condicin del rengln. Para asegurar
que todos los renglones en la subrutina estn previamente escaneados, el controlador ignora las
instrucciones RET. (es decir, las instrucciones RET no salen de la subrutina).
En las versiones 6.x y anteriores, se pasan los parmetros de entrada y retorno.
En las versiones 7.x y posteriores, no se pasan los parmetros de entrada y retorno.
Si existen llamadas recursivas a la misma subrutina, la subrutina es preescaneada slo la primera vez. Si
existen mltiples llamadas (no recursivas) a la misma subrutina, la subrutina es preescaneada cada vez.
La condicin de salida de rengln se establece en falso (lgica de escalera de rels solamente).
La condicin de entrada de
rengln es falsa para la
instruccin JSR
La subrutina no se ejecuta.
n. a.
441
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Condicin
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
parmetros de
entrada
no
s
instruccin RET
parmetros de
retorno
no
no
s
fin de la subrutina
no
la condicin de salida de rengln
se establece como falsa
post-escn
442
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Bloque de funciones
Condicin:
Accin
preescn
Ninguna.
Ninguna.
1. Si la rutina contiene una instruccin SBR, el controlador primero ejecuta la instruccin SBR.
2. El controlador enclava todos los valores de datos en las IREF.
3. El controlador ejecuta los otros bloques de funcin en el orden determinado por su cableado.
Esto incluye otras instrucciones JSR.
4. El controlador escribe salidas en las OREF.
5. Si la rutina contiene una instruccin RET, el controlador ejecuta la instruccin RET por ltimo.
post-escn
Se llama la subrutina.
Si la rutina es una rutina SFC, la rutina se inicializa de la misma manera que durante el preescn.
443
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Programa
Rutina principal
Subrutina
Texto estructurado
Rutina
Programa
Rutina principal
JSR(routine_1,2,value_1,value_2,float_value_1);
Subrutina
SBR(value_a,value_b);
<statements>;
RET(float_a);
444
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Ejemplo 2:
Lgica de escalera de rels
MainRoutine
Cuando abc est activado, subroutine_1 se ejecuta, calcula el nmero de cookies y coloca un valor en cookies_1.
Subroutine_1
Cuando def est activado, la instruccin RET retorna value_1 al parmetro cookies_1 de JSR y el resto de la subrutina no se escanea.
Cuando def est desactivado (rengln previo) y ghi est activado, la instruccin RET retorna value_2 al parmetro cookies_1 de JSR y el resto
de la subrutina no se escanea.
Cuando def y ghi estn desactivados (renglones previos), la instruccin RET retorna value_3 al parmetro cookies_1 de JSR.
445
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Ejemplo 3:
Bloque de funciones
Instruccin JSR en Routine_A
42972
1. Los valores en
Add_Input_1,
Add_Input_2 y
Add_Input_3 se copian
en Input_A, Input_B y
Input_C,
respectivamente.
42973
2. Las instrucciones ADD suman Input_A, Input_B y Input_C, y colocan el resultado en Sum_A_B_C.
446
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Operandos:
Lgica de escalera de rels
.
Operando
Tipo
Formato
Descripcin
Nombre de
rutina externa
ROUTINE
nombre
tag
Parmetro
BOOL
inmediato
datos de esta rutina que desea copiar a una variable en la rutina externa
SINT
tag
INT
tag de matriz
DINT
REAL
estructura
Parmetro de
retorno
BOOL
tag
SINT
INT
DINT
REAL
447
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Estructura EXT_ROUTINE_CONTROL
Mnemnico
Tipo de datos
Descripcin
Implementacin
ErrorCode
SINT
NumParams
SINT
ParameterDefs
EXT_ROUTINE_
PARAMETERS[10]
ReturnParamDef
EXT_ROUTIN_
PARAMETERS
EN
BOOL
ReturnsValue
BOOL
DN
BOOL
ER
BOOL
FirstScan
BOOL
EnableOut
BOOL
Habilitacin de salida.
EnableIn
BOOL
Entrada de habilitacin.
User1
BOOL
User0
BOOL
ScanType1
BOOL
ScanType0
BOOL
448
Normal
01
Preescn
10
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico no son afectados.
Condiciones de fallo:
Ocurrir un fallo mayor si
ocurre una excepcin en la rutina externa DLL
Tipo de fallo
Cdigo de
fallo:
88
449
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Operandos:
Operadores de escalera de rel
ninguno
Texto estructurado
TND();
ninguno
Se tienen que introducir los parntesis () despus del mnemnico de
la instruccin, aunque no haya operandos.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
450
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Texto estructurado
TND();
451
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Restablecimiento de
control maestro (MCR)
Operandos:
Lgica de escalera de rels
ninguna
Descripcin: Cuando la zona MCR se habilita, los renglones en la zona MCR son
escaneados para determinar la presencia de condiciones normales
verdaderas o falsas. Cuando se inhabilita, el controlador todava
escanea renglones dentro de una zona MCR, pero el tiempo de escn
se reduce debido a que las salidas no retentivas en la zona estn
inhabilitadas. La condicin de entrada de rengln es falsa para todas
las instrucciones dentro de la zona MCR inhabilitada.
Cuando programe una zona MCR, tenga presente que:
Debe terminar la zona con una instruccin MCR incondicional.
No puede anidar una zona MCR dentro de otra.
No salte a una zona MCR. Si la zona es falsa, saltar a la zona
activa la zona desde el punto en el que usted salt al final de la
zona.
Si una zona MCR contina al final de la rutina, usted no tiene
que programar una instruccin MCR al final de la zona.
La instruccin MCR no sustituye a un rel de control maestro con
cableado permanente que proporciona capacidad de paro de
emergencia. Usted debe instalar un rel de control maestro con
cableado permanente para proporcionar desactivacin de emergencia
de la alimentacin elctrica de E/S.
ATENCIN
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
452
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Ejecucin:
Condicin
preescn
post-escn
453
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Inhabilitacin de
interrupcin de usuario
(UID)
Habilitacin de interrupci
n de usuario (UIE)
Operandos:
Lgica de escalera de rels
ninguno
UID();
UIE();
Texto estructurado
ninguno
Se tienen que introducir los parntesis () despus del mnemnico de
instruccin, aunque no haya operandos.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
454
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
error_bit
error_bit
FSC
FSC
FileSearch/Compare
Search/Compare
File
error_check
Control
error_check
Control
Length
10
Length
Position
8
Position
ALL
Mode
ALL
Mode
error_code=error_list[error_check.POS]
Expression
Expression
error_code=error_list[error_check.POS]
EN
EN
DN
ER
ER
alarm
alarm
error_check.FD
error_check.FD
UIE
Texto estructurado
UID();
<statements>
UIE();
455
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Operandos:
Lgica de escalera de rels
ninguno
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
post-escn
456
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Operandos:
Lgica de escalera de rels
ninguno
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
post-escn
457
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Operandos:
Lgica de escalera de rels
EOT(data_bit);
Operando
Tipo
Formato
Descripcin
bit de datos
BOOL
tag
estado de la transicin
(0=en ejecucin, 1=completada)
Texto estructurado
Los operandos son iguales a los de la instruccin EOT de lgica de
escalera de rels.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
La instruccin retorna el valor del bit de datos a la rutina que origin la llamada.
post-escn
458
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Texto estructurado
state := limit_switch1 AND interlock_1;
IF timer_1.DN THEN
EOT(state);
END_IF;
459
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Operandos:
Lgica de escalera de rels
Operando
Tipo:
Formato:
Descripcin:
SFCRoutine
Name
ROUTINE
nombre
TargetState
DINT
inmediato
seleccione uno:
tag
ejecutando (o introduzca 0)
puesta en pausa (o introduzca 1)
Texto estructurado
SFP(SFCRoutineName,
TargetState);
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
460
Tipo de fallo
Cdigo de fallo
85
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Ejecucin:
Condicin:
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
Ejemplo:
Ninguna.
Texto estructurado
Se pone en pausa la rutina SFC. IF (sfp_en_p) THEN
SFP(normal,paused);
sfp_en_p := 0;
END_IF;
461
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
SFP(normal,executing);
sfp_en_e := 0;
END_IF;
Operandos:
Operandos de lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
SFCRoutine
Name
ROUTINE
nombre
Step Name
SFC_STEP
tag
Texto estructurado
SFR(SFCRoutineName,StepName);
Indicadores de estado
aritmtico: no afectados
462
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Condiciones de fallo:
Ocurrir un fallo mayor si:
Tipo de fallo
Cdigo de fallo
85
89
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
La instruccin restablece la rutina SFC especificada. La instruccin restablece la rutina SFC especificada.
post-escn
Ninguna.
Texto estructurado
IF shutdown THEN
SFR(mySFC,initialize);
END_IF;
463
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Tarea
TASK
nombre
Texto estructurado
EVENT(task_name);
Tipo de datos
Instruccin
Descripcin
Status
DINT
GSV
SSV
464
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
El controlador no borra los bits del atributo Status una vez que stos
estn establecidos.
Para usar un bit para nueva informacin de estado, debe borrar
manualmente el bit.
Use una instruccin de establecer valor del sistema (Set System
Value (SSV)) para establecer el atributo en un valor diferente.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin:
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
EnableIn se establece
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
465
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Programa B
Texto estructurado
Programa A
IF Shut_Down_Line AND NOT Shut_Down_Line_One_Shot THEN
EVENT (Shut_Down);
END_IF;
Shut_Down_Line_One_Shot := Shut_Down_Line;
Programa B
IF Shut_Down_Line AND NOT Shut_Down_Line_One_Shot THEN
EVENT (Shut_Down);
END_IF;
Shut_Down_Line_One_Shot := Shut_Down_Line;
466
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Captulo 11
Ejemplo 2: El siguiente ejemplo usa una instruccin EVENT para inicializar una
tarea de evento. (Otro tipo de evento normalmente activa la tarea de
evento).
Tarea continua
Si Initialize_Task_1 = 1 entonces
La instruccin ONS limita la ejecucin de la instruccin EVENT a un escn.
La instruccin EVENT activa una ejecucin de Task_1 (tarea de evento).
Si Task_Status.0 = 1, significa que una instruccin EVENT activ la tarea de evento (es decir, cuando la tarea
continua ejecuta su instruccin EVENT para inicializar la tarea de evento).
La instruccin RES pone en cero un contador que usa la tarea de evento.
El controlador no borra los bits del atributo Status una vez que stos estn establecidos. Para usar un bit para
nueva informacin de estado, debe borrar el bit manualmente.
Si Task_Status.0 = 1, borre ese bit.
La instruccin OTU establece Task_Status.0 = 0.
La instruccin SSV establece el atributo Status de la tarea THIS (Task_1) = Task_Status. Esto incluye el bit
borrado.
467
Captulo 11
Instrucciones de control de programa (JMP, LBL, JSR, RET, SBR, JXR, TND, MCR, UID, UIE, AFI, NOP, EOT, SFP, SFR, EVENT)
Notas:
468
Captulo
12
Instrucciones For/Break
(FOR, FOR...DO, BRK, EXIT, RET)
Introduccin
Si desea
Ejecutar repetidamente una rutina.
Para obtener
FOR...DO(1)
texto estructurado
BRK
EXIT(1)
texto estructurado
RET
Vea la pgina
470
473
474
469
Captulo 12
For (FOR)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Routine
name
ROUTINE
Index
DINT
tag
Initial value
SINT
inmediato
INT
tag
DINT
Terminal
value
SINT
inmediato
INT
tag
DINT
Step size
SINT
inmediato
INT
tag
DINT
Texto estructurado
FOR count:= initial_value TO
final_value BY increment DO
<statement>;
END_FOR;
Descripcin:
IMPORTANTE
470
Captulo 12
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
31
Ejecucin:
Condicin
preescn
471
Captulo 12
Condicin
condicin de entrada de
rengln es verdadera
index = initial_value
no
s
ir a
fin
no
s
ndice valor terminal
no
ir a
fin
fin
ejecutar rutina
ndice = (index + step_size)
fin
post-escn
472
Interrumpir (BRK)
Captulo 12
Operandos:
Lgica de escalera de rels
ninguna
Texto estructurado
EXIT;
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
post-escn
Ejemplo: Una vez habilitada, la instruccin BRK hace que se deje de ejecutar la
rutina actual y retorna a la instruccin que sigue a la instruccin FOR
que origin la llamada.
473
Captulo 12
Retornar (RET)
Operandos:
Lgica de escalera de rels
ninguna
Descripcin:
IMPORTANTE
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
31
Ejecucin:
Condicin:
preescn
post-escn
474
Captulo 12
subrutina
475
Captulo 12
Notas:
476
Captulo
13
Instrucciones especiales
(FBC, DDT, DTR, PID)
Introduccin
Si desea
Vea la pgina
FBC
478
DDT
486
DTR
494
PID
497
texto estructurado
477
Captulo 13
Comparacin de bits de
archivo (FBC)
La instruccin FBC compara los bits en una matriz de origen con los
bits en una matriz de referencia.
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin:
Source
DINT
Reference
DINT
Result
DINT
Cmp control
CONTROL
estructura
Length
DINT
inmediato
Position
DINT
inmediato
Result
control
CONTROL
estructura
Length
DINT
inmediato
Position
DINT
inmediato
ATENCIN
478
Captulo 13
Estructura COMPARE
Mnemnico:
Tipo de datos
Descripcin:
.EN
BOOL
.DN
BOOL
El bit de efectuado se establece cuando la instruccin FBC compara el ltimo bit en las
matrices de origen y referencia.
.FD
BOOL
El bit de encontrado se establece cada vez que la instruccin FBC registra una incongruencia
(operacin una a la vez) o despus de registrar todas las incongruencias (operacin todas por
escn).
.IN
BOOL
.ER
BOOL
.LEN
DINT
.POS
DINT
Estructura RESULT
Mnemnico
Tipo de datos
Descripcin
.DN
BOOL
.LEN
DINT
.POS
DINT
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin FBC realiza la operacin en la memoria de datos contiguos. En
algunos casos, la instruccin busca o escribe ms all de la matriz en otros
miembros del tag. Esto sucede si una longitud es excesiva y el tag es de un tipo de
datos definido por el usuario.
La diferencia entre las instrucciones DDT y FBC es que cada vez que
la instruccin DDT encuentra una incongruencia, la instruccin
cambia el bit de referencia para que coincida con el bit de origen.
La instruccin FBC no cambia el bit de referencia.
479
Captulo 13
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
480
Tipo de fallo
Cdigo de fallo
20
Captulo 13
Ejecucin:
Condicin
preescn
el bit compare.EN se borra
el bit compare.FD se borra
examine el bit
compare.DN
compare.DN = 0
compare.DN = 1
el bit compare.DN se borra
el valor compare.POS se borra
el bit result.DN se borra
el valor result.POS se borra
la condicin de salida de
rengln se establece como
falsa
fin
481
Captulo 13
Condicin
condicin de entrada de
rengln es falsa
el bit compare.EN se borra
el bit compare.FD se borra
examine el bit
compare.DN
compare.DN = 0
compare.DN = 1
el bit compare.DN se borra
el valor compare.POS se borra
el bit result.DN se borra
el valor result.POS se borra
la condicin de salida de
rengln se establece como
falsa
fin
482
Condicin
Captulo 13
examine el bit
compare.EN
compare.EN = 1
ir a la
salida
compare.EN = 0
examine el bit
compare.DN
El bit compare.EN se
establece
compare.DN = 1
ir a la
salida
compare.DN = 0
el bit compare.ER se borra
compare.LEN 0
exit
compare.POS < 0
no
el bit compare.ER se
establece
la condicin de salida de
rengln se establece como
verdadera
comparar
ir a la
salida
fin
pgina 484
483
Captulo 13
Condicin
compare.POS
compare.LEN
compare.POS = compare.LEN
el bit compare.DN se establece
ir a la
salida
pgina 483
no
result.DN = 1
source[compare.POS] =
reference[compare.POS]
no
el bit compare.FD se
establece
examine el bit
result.DN bit
result.DN = 0
s
compare.POS =
compare.POS + 1
s
result.POS < 0
no
result.LEN 0
no
s
fallo mayor
result.POS >
tamao de
matriz
resultado
el bit compare.ER se
establece
ir a la
salida
pgina 483
no
result[result.POS] = compare.POS
result.POS = result.POS + 1
no
result.POS >
result.LEN
s
el bit result.DN se establece
post-escn
484
Captulo 13
origen 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
array_dint1
referencia 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0
array_dint2
resultado
array_dint3
5 3
485
Captulo 13
Deteccin de diagnstico
(DDT)
La instruccin DDT compara los bits en una matriz de origen con los
bits en una matriz de referencia para determinar cambios de estado.
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
DINT
tag de
matriz
Reference
DINT
tag de
matriz
Result
DINT
tag de
matriz
Cmp control
CONTROL
estructura
Length
DINT
inmediato
Position
DINT
inmediato
Result
control
CONTROL
estructura
Length
DINT
inmediato
Position
DINT
inmediato
ATENCIN
486
Captulo 13
Estructura COMPARE
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.DN
BOOL
El bit de efectuado se establece cuando la instruccin DDT compara el ltimo bit en las
matrices de origen y referencia.
.FD
BOOL
El bit de encontrado se establece cada vez que la instruccin DDT registra una incongruencia
(operacin una a la vez) o despus de registrar todas las incongruencias (operacin todas por
escn).
.IN
BOOL
.ER
BOOL
.LEN
DINT
.POS
DINT
Estructura RESULT
Mnemnico
Tipo de datos
Descripcin
.DN
BOOL
.LEN
DINT
.POS
DINT
IMPORTANTE
Usted debe probar y confirmar que la instruccin no cambie datos que usted no
desea que cambien.
La instruccin DDT realiza la operacin en la memoria de datos contiguos. En
algunos casos, la instruccin busca o escribe ms all de la matriz en otros
miembros del tag. Esto sucede si una longitud es excesiva y el tag es de un tipo de
datos definido por el usuario.
La diferencia entre las instrucciones DDT y FBC radica en que cada
vez que la instruccin DDT encuentra una incongruencia, la
instruccin DDT cambia el bit de referencia para que coincida con el
bit de origen. La instruccin FBC no cambia el bit de referencia.
487
Captulo 13
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
488
Cdigo de fallo
20
Captulo 13
Ejecucin:
Condicin:
preescn
el bit compare.EN se borra
el bit compare.FD se borra
examine el bit
compare.DN
compare.DN = 0
compare.DN = 1
el bit compare.DN se borra
el valor compare.POS se borra
el bit result.DN se borra
el valor result.POS se borra
la condicin de salida de
rengln se establece como
falsa
fin
489
Captulo 13
Condicin:
condicin de entrada de
rengln es falsa
el bit compare.EN se borra
el bit compare.FD se borra
examine el bit
compare.DN
compare.DN = 0
compare.DN = 1
el bit compare.DN se borra
el valor compare.POS se borra
el bit result.DN se borra
el valor result.POS se borra
la condicin de salida de
rengln se establece como
falsa
fin
490
Condicin:
Captulo 13
compare.EN = 1
examine el bit
compare.EN
ir a la
salida
compare.EN = 0
examine el bit
compare.DN
El bit compare.EN se
establece
bit compare.DN = 1
ir a la
salida
bit compare.DN = 0
el bit compare.ER se borra
el bit compare.FD se borra
compare.LEN 0
no
salida
compare.POS < 0
no
el bit compare.ER se
establece
la condicin de salida de
rengln se establece como
verdadera
comparar
ir a la
salida
fin
pgina 492
491
Captulo 13
Condicin:
comparar
compare.POS
compare.LEN
compare.POS = compare.LEN
el bit compare.DN se establece
ir a la
salida
pgina 491
no
result.DN = 1
source[compare.POS] =
reference[compare.POS]
no
compare.FD bit se
establece
reference[compare.POS]
= source[compare.POS]
examine el bit
result.DN bit
result.DN = 0
s
compare.POS =
compare.POS + 1
s
result.POS < 0
no
s
result.LEN 0
no
s
fallo mayor
result.POS >
tamao de matriz
resultado
el bit compare.ER se
establece
ir a la
salida
pgina 483
no
result[result.POS] = compare.POS
result.POS = result.POS + 1
no
result.POS
result.LEN
s
el bit result.DN se establece
post-escn
492
Captulo 13
origen 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
array_dint1
referencia (antes de comparacin) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0
array_dint2
resultado
5 3
array_dint3
referencia (despus de comparacin) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
array_dint2
493
Captulo 13
Operandos:
Lgica de escalera de rels
Operando:
Tipo
Formato
Descripcin
Source
DINT
inmediato
tag
Mask
DINT
inmediato
tag
Reference
DINT
tag
ATENCIN
494
Captulo 13
Descripcin:
16#
hexadecimal
por ejemplo; 16#0F0F
8#
octal
por ejemplo: 8#16
2#
binario
por ejemplo: 2#00110011
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es verdadera
origen
enmascarado =
referencia
no
la condicin de salida de
rengln se establece
como falsa
fin
post-escn
495
Captulo 13
ejemplo 1
ejemplo 2
origen
value_1
mscara = 0FFF
0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
referencia
escn actual
escn previo
value_2
escn actual
escn previo
496
Proporcional integral
derivativo (PID)
Captulo 13
La instruccin PID controla una variable del proceso, tal como flujo,
presin, temperatura o nivel.
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
PID
PID
estructura
estructura PID
Process
variable
SINT
tag
SINT
inmediato
(opcional) salida de una estacin manual/automtica que est pasando por alto la salida del
controlador
INT
tag
INT
DINT
REAL
Tieback
SINT
tag
INT
DINT
REAL
PID master
loop
PID
estructura
Inhold bit
BOOL
tag
(opcional) estado actual del bit mantenido desde un canal de salida analgica 1756 para
permitir un reinicio sin problemas
Introduzca 0 si no desea usar este parmetro.
Inhold value
SINT
tag
(opcional) valor de repeticin de lectura de datos desde un canal de salida analgica 1756
para permitir un reinicio sin problemas
INT
Introduzca 0 si no desea usar este parmetro.
DINT
REAL
497
Captulo 13
Operando
Tipo
Formato
Descripcin
Setpoint
Process
variable
Output %
Texto estructurado
Los operandos son iguales que los de la instruccin PID de lgica de
escalera de rels. Sin embargo, usted especifica Setpoint, Process
Variable y Output % accediendo a los miembros .SP, .PV. y .OUT de la
estructura PID, en lugar de incluir valores en la lista de operandos.
PID(PID,ProcessVariable,
Tieback,ControlVariable,
PIDMasterLoop,InholdBit,
InHoldValue);
Estructura PID
Mnemnico:
Tipo de datos
Descripcin
.CTL
DINT
El miembro .CTL proporciona acceso a los miembros de estado (bits) en una palabra de 32 bits.
La instruccin PID establece los bits 07 - 15.
Este bit
Es este miembro
31
.EN
30
.CT
29
.CL
28
.PVT
27
.DOE
26
.SWM
25
.CA
24
.MO
23
.PE
22
.NDF
21
.NOBC
20
.NOZC
Este bit:
15
.INI
14
.SPOR
13
.OLL
12
.OLH
11
.EWD
10
.DVNA
09
.DVPA
08
.PVLA
07
.PVHA
.SP
REAL
punto de ajuste
.KP
REAL
independiente
dependiente
498
Mnemnico:
Tipo de datos
Descripcin
.KI
REAL
independiente
dependiente
independiente
dependiente
.KD
REAL
.BIAS
REAL
.MAXS
REAL
.MINS
REAL
.DB
REAL
.SO
REAL
% salida establecida
.MAXO
REAL
.MINO
REAL
.UPD
REAL
.PV
REAL
valor PV escalado
.ERR
REAL
.OUT
REAL
% de salida
.PVH
REAL
.PVL
REAL
.DVP
REAL
.DVN
REAL
.PVDB
REAL
.DVDB
REAL
.MAXI
REAL
.MINI
REAL
.TIE
REAL
.MAXCV
REAL
.MINCV
REAL
.MINTIE
REAL
.MAXTIE
REAL
Captulo 13
499
Captulo 13
Mnemnico:
Tipo de datos
Descripcin
.DATA
REAL[17]
Descripcin
.DATA[0]
acumulacin integral
.DATA[1]
.DATA[2]
.DATA[3]
.DATA[4]
.DATA[5]
.DATA[6]
.DATA[7]
.DATA[8]
.DATA[9]
.DATA[10]
.DATA[11]
.DATA[12]
.DATA[13]
.DATA[14]
.DATA[15]
.DATA[16]
.EN
BOOL
habilitado
.CT
BOOL
.CL
BOOL
.PVT
BOOL
.DOE
BOOL
.SWM
BOOL
.CA
BOOL
.MO
BOOL
.PE
BOOL
.NDF
BOOL
.NOBC
BOOL
.NOZC
BOOL
.INI
BOOL
.SPOR
BOOL
.OLL
BOOL
.OLH
BOOL
.EWD
BOOL
.DVNA
BOOL
500
Mnemnico:
Tipo de datos
Descripcin
.DVPA
BOOL
.PVLA
BOOL
.PVHA
BOOL
Captulo 13
estado de rengln
ejecucin de la instruccin PID
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
IMPORTANTE
Tipo de fallo
Cdigo de fallo
.UPD 0
35
36
501
Captulo 13
Ejecucin:
Condicin
Accin
Accin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
502
Captulo 13
Especifique el ajuste
Seleccione la ficha Tuning. Los cambios surten efecto al hacer clic en
otro campo, en OK, en Apply o al presionar Enter.
En este campo
Especifique:
Setpoint (SP)
% salida establecida
Output bias
Manual Mode
503
Captulo 13
Especifique la configuracin
Seleccione la ficha Configuration. Debe hacer clic en OK o Apply para
que los cambios surtan efecto.
En este campo
Especifique
PID equation
Control action
Derivative of
CV high limit
CV low limit
Deadband value
No derivative smoothing
No bias calculation
No zero crossing in
deadband
PV tracking
Cascade loop
Cascade type
Especificacin de alarmas
Seleccione la ficha Alarms. Debe hacer clic en OK o Apply para que
los cambios surtan efecto.
504
En este campo
Especifique
PV alta
PV low
PV deadband
positive deviation
negative deviation
deviation deadband
Captulo 13
Especificacin de escalado
Seleccione la ficha Scaling. Debe hacer clic en OK o Apply para que
los cambios surtan efecto.
En este campo
Especifique
PV unscaled maximum
Introduzca un valor PV mximo (.MAXI) que sea igual al valor mximo sin escalado
recibido desde el canal de entrada analgico para el valor PV.
PV unscaled minimum
Introduzca un valor VP mnimo (.MINI) que sea igual al valor mnimo sin escalado
recibido desde el canal de entrada analgico para el valor PV.
PV engineering units
maximum
PV engineering units
minimum
CV maximum
CV minimum
Tieback maximum
Introduzca un valor retenido mximo (.MAXTIE) que sea igual al valor mximo sin
escalado recibido desde el canal de entrada analgico para el valor retenido.
Tieback minimum
Introduzca un valor retenido mnimo (.MINTIE) que sea igual al valor mnimo sin
escalado recibido desde el canal de entrada analgico para el valor retenido.
PID Initialized
punto de ajuste
error
ecuacin PID
+
rgimen de flujo
variable de proceso
variable de control
detector de nivel
14271
505
Captulo 13
Derivada de
Ganancias dependientes
(estndar ISA)
error (E)
Ecuacin
t
1
dE
CV = K C E + ---- Edt + T d ------- + BIAS
Ti
dt
0
E = SP - PV
t
CV = K C
1
dPV
E + ---- Edt T d ----------- + BIAS
Ti
dt
0
E = PV - SP
t
dPV
1
CV = K C E + ---- Edt + T d ----------- + BIAS
dt
Ti
0
Ganancias independientes
error (E)
t
dE
CV = K P E + K i Edt + K d ------- + BIAS
dt
0
E = SP - PV
t
dPV
CV = K P E + K i Edt K d ----------- + BIAS
dt
0
E = PV - SP
t
dPV
CV = K P E + K i Edt + K d ----------- + BIAS
dt
0
506
Captulo 13
Donde:
Variable
Descripcin
KP
Ki
Kd
KC
Ti
Td
SP
punto de ajuste
PV
variable de proceso
BIAS
VC
variable de control
dt
507
Captulo 13
Descripcin
manual (.MO)
toma el valor retenido, como una entrada, y ajusta sus variables internas para generar
el mismo valor en la salida.
La entrada retenida relacionada con la instruccin PID se escala al 0 - 100% segn los
valores de .MINTIE y .MAXTIE y se utiliza como la salida del lazo. La entrada retenida
generalmente viene desde la salida de una estacin manual/automtica de hardware
que est pasando por alto la salida proveniente del controlador.
Nota: El modo manual tiene precedencia sobre el modo manual de software si ambos
bits de modo estn establecidos.
508
Captulo 13
Texto estructurado
PID(TIC101,Local:0:I.Ch0Data,Local:0:I.Ch1Data,
Local:1:O.Ch4Data,0,Local:1:I.Ch4InHold,
Local:1:I.Ch4Data);
509
Captulo 13
Texto estructurado
PID_timer.pre := 1000
TONR(PID_timer);
IF PID_timer.DN THEN
PID(TIC101,Local:0:I.Ch0Data,Local:0:I.Ch1Data,
Local:1:O.Ch0Data,0,Local:1:I.Ch0InHold,
Local:1:I.Ch0Data);
END_IF;
510
Captulo 13
511
Captulo 13
Texto estructurado
IF (Local:0:I.Ch0Fault) THEN
TIC101.SWM [:=] 1;
ELSE
TIC101.SWM := 0;
END_IF;
IF (Local:0:I.RollingTimestamp<>PreviousTimestamp) O
(Local:0:I.Ch0Fault) THEN
PreviousTimestamp := Local:0:I.RollingTimestamp;
PID(TIC101,Local:0:I.Ch0Data,Local:0:I.Ch1Data,
Local:1:O.Ch0Data,0,Local:1:I.Ch0InHold,
Local:1:I.Ch0Data);
END_IF;
512
Captulo 13
Detalles:
El mdulo de salidas analgicas 1756 retorna dos valores por cada canal en su
estructura de datos de entrada. El bit de estado en retencin (.Ch2InHold, por
ejemplo) cuando es verdadero, indica que el canal de salida analgica est
reteniendo su valor. El valor de relectura de datos (.Ch2Data, por ejemplo) muestra
el valor de salida actual en unidades de ingeniera.
Cuando el bit Inhold se hace verdadero, la instruccin PID mueve el Inhold Value a la
salida de variable de control y se reinicializa para permitir un reinicio sin
perturbaciones en dicho valor. Cuando el mdulo de salidas analgicas recibe su
valor de vuelta desde el controlador, ste desactiva el bit de estado InHold, lo cual
permite que la instruccin PID comience normalmente a realizar el control.
Suavizado derivativo
El clculo de la derivada se mejora mediante el uso de un filtro de
suavizado derivativo. Este filtro digital pasabajos de primer orden
ayuda a minimizar picos grandes del trmino derivativo causados por
ruido en la PV. Este suavizado se hace ms agresivo mientras mayores
son los valores de ganancia derivativa. Usted puede inhabilitar el
suavizado derivativo si su proceso requiere valores muy grandes de
ganancia derivativa (Kd > 10, por ejemplo). Para inhabilitar el
suavizado derivativo, seleccione la opcin sin suavizado derivativo
(No derivative smoothing) en la ficha Configuration o establezca el
bit .NDF en la estructura PID.
513
Captulo 13
+ banda muerta
punto de ajuste
- banda muerta
tiempo
41026
514
Captulo 13
Lazos en cascada
El PID conecta en cascada dos lazos asignando la salida en porcentaje
del lazo maestro al punto de ajuste del lazo esclavo. El lazo esclavo
convierte automticamente la salida del lazo maestro en las unidades
de ingeniera correctas para el punto de ajuste del lazo esclavo, con
base en los valores del lazo esclavo para .MAXS y .MINS.
Texto estructurado
PID(master,pv_master,0,cv_master,0,0,0);
PID (slave,pv_slave,0,cv_slave,master,0,0);
515
Captulo 13
Control de relacin
Usted puede mantener la relacin entre dos valores usando estos
parmetros:
valor no controlado
valor controlado (el punto de ajuste resultante que se usar para
la instruccin PID)
relacin entre estos dos valores
Texto estructurado
pid_2.sp := uncontrolled_flow * ratio
PID(pid_2,pv_2,tieback_2,cv_2,0,0,0);
516
destination
valor controlado
source A
valor no controlado
source B
relacin
Teora de PID
Captulo 13
Proceso PID
SP
Mostrado
como EU
Error
mostrado
como EU
Software A/M
o bien
Modo de
estacin A/M
Modo A/M de
software
SP-PV
Auto
+
SP
% de
polarizacin
de salida
Accin de
control
Convierte unidades
de ingeniera a %
(Error)
-
PV-SP
PVT
Clculo PID
(Out%)
Auto
Error X 100
maxs-mins
-1
Manual
Convierte % a unidades CV
Auto
Lmite de
salida
Manual
No
Convierte de binario a
unidades de ingeniera
CV
Salida (CV)
mostrada como
% de escalado
EU
Convierte unidades de
valor retenido a %
(PV-mini)(maxs-mins) + mins
maxi-mini
CV%(maxcv-mincv)
+ mincv
100
Manual
% salida
establecida
PV
Mostrado
como EU
% salida
establecida
Modo de
estacin A/M
tieback-mintie
maxtie-mintie
x 100
PV
A/M de software
o bien
Modo de estacin A/M
Auto
SP
SP-PV
(Error)
+
-
% de
polarizacin
de salida
Accin de
control
Convierte unidades
de ingeniera a %
PV-SP
PVT
No
Manual
Lmite de
salida
% salida
establecida
(Master.Out)
Manual
Modo A/M de
software
(Master.Out)
Modo de
estacin A/M
% salida
establecida
Convierte de binario a
unidades de ingeniera
(PV-mini)(maxs-mins)
+ mins
maxi-mini
Lazo
esclavo
Error X 100
maxs-mins
-1
Manual
Modo A/M de
software
Auto
Auto
SP
Convierte
unidades de
ingeniera a %
PV
Error X 100
maxs-mins
Auto
Manual
Manual
Los tems referidos en este cuadro
son parmetros, unidades y modos
que pertenecen al lazo esclavo
designado.
PV
% de
polarizacin
de salida
Accin de
control
Convierte % a unidades (SP)
de ingeniera
X (maxs-mins)
+ mins
100
SP-PV
+
-1
PV-SP
Convierte
unidades de
ingeniera a %
Clculo PID
Modo A/M de
software
Auto
Error X 100
maxs-mins
Modo de
estacin A/M
Auto
Convierte de binario a
unidades de ingeniera
(PV-mini)(maxs-mins)
+ mins
maxi-mini
% salida
establecida
Convierte % a unidades CV
Lmite de
salida
Manual
Manual
% salida
establecida
CV%(maxcv-mincv)
100
+ mincv
Convierte unidades de
valor retenido a %
tieback-mintie
maxtie-mintie
x 100
PV
517
Captulo 13
Notas:
518
Captulo
14
Instrucciones trigonomtricas
(SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Introduccin
Si desea
Vea la pgina
SIN
520
COS
523
TAN
526
ASN
529
532
535
ASIN(1)
Hallar el arco coseno de un valor.
ACS
ACOS(1)
ATN
ATAN(1)
(1)
519
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Seno (SIN)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := SIN(source);
Use SIN como una funcin. Esta funcin calcula el seno de source y
almacena el resultado en dest.
Consulte el Apndice C, Programacin de texto estructurado para
obtener informacin sobre la sintaxis de las expresiones en texto
estructurado.
Bloque de funciones
Operando
Tipo
Formato
Descripcin
SIN tag
FBD_MATH_ADVANCED
estructura
estructura SIN
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
520
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Captulo 14
Descripcin: Source debe ser mayor o igual que -205887.4 (-2x215) y menor o
igual que 205887.4 (2x215). El valor resultante en Destination
siempre es mayor o igual que -1 y menor o igual que 1.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin:
Accin:
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
521
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Texto estructurado
result := SIN(value);
Bloque de funciones
522
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Coseno (COS)
Captulo 14
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := COS(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
COS tag
FBD_MATH_ADVANCED
estructura
estructura COS
523
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Descripcin: Source debe ser mayor o igual que -205887.4 (-2x215) y menor o
igual que 205887.4 (2x215). El valor resultante en Destination
siempre es mayor o igual que -1 y menor o igual que 1.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
524
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Captulo 14
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
result := COS(value);
Bloque de funciones
525
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Tangente (TAN)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := TAN(source);
Bloque de funciones
526
Operando
Tipo
Formato
Descripcin
TAN tag
FBD_MATH_ADVANCED
estructura
Estructura TAN
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Captulo 14
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Descripcin: Source debe ser mayor o igual que -102943.7 (-2x214) y menor o
igual que 102943.7 (2x214).
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
527
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Texto estructurado
result := TAN(value);
Bloque de funciones
528
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Captulo 14
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := ASIN(source);
Use ASIN como funcin. Esta funcin calcula el arco seno de source y
almacena el resultado en dest.
Consulte el Apndice C, Programacin de texto estructurado para
obtener informacin sobre la sintaxis de las expresiones en texto
estructurado.
Bloque de funciones
Operando
Tipo
Formato
Descripcin
ASN tag
FBD_MATH_ADVANCED
estructura
estructura ASN
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
529
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Descripcin: Source debe ser mayor o igual que -1 y menor o igual que 1. El valor
resultante en Destination siempre es mayor o igual que -/2 y menor
o igual que /2 (donde = 3.141593).
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
530
Ninguna.
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Captulo 14
Texto estructurado
result := ASIN(value);
Bloque de funciones
531
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := ACOS(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
ACS tag
FBD_MATH_ADVANCED
estructura
estructura ACS
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
532
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Captulo 14
Descripcin: Source debe ser mayor o igual que -1 y menor o igual que 1. El valor
resultante en Destination siempre es mayor o igual que 0 y menor o
igual que (donde = 3.141593).
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
533
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Texto estructurado
result := ACOS(value);
Bloque de funciones
534
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Captulo 14
Operandos:
Lgica de escalera de rels
Operando:
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := ATAN(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
ATN tag
FBD_MATH_ADVANCED
estructura
estructura ATN
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
535
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
536
Ninguna.
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Captulo 14
Texto estructurado
result := ATAN(value);
Bloque de funciones
537
Captulo 14
Instrucciones trigonomtricas (SIN, COS, TAN, ASN, ASIN, ACS, ACOS, ATN, ATAN)
Notas:
538
Captulo
15
Introduccin
Si desea
Hallar el logaritmo natural de un valor.
Vea la pgina
540
texto estructurado
bloque de funciones
Hallar el logaritmo base 10 de un valor.
LOG
543
texto estructurado
bloque de funciones
Elevar un valor a la potencia de otro valor.
XPY
546
texto estructurado(1)
bloque de funciones
(1)
No hay una instruccin equivalente en texto estructurado. Use el operador en una expresin.
539
Captulo 15
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := LN(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
LN tag
FBD_MATH_ADVANCED
estructura
estructura LN
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
540
BOOL
Captulo 15
Descripcin: Source debe ser mayor o igual que cero; de lo contrario, se establece
el bit de estado de overflow (S:V). El valor Destination resultante es
mayor o igual que -87.33655 y menor o igual que 88.72284.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
541
Captulo 15
Texto estructurado
result := LN(value);
Bloque de funciones
542
Captulo 15
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := LOG(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
LOG tag
FBD_MATH_ADVANCED
estructura
Estructura LOG
543
Captulo 15
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
Descripcin: Source debe ser mayor o igual que cero; de lo contrario, se establece
un bit de estado de overflow (S:V). El valor Destination resultante es
mayor o igual que -37.92978 y menor o igual que 38.53184.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
544
Ninguna.
Captulo 15
Texto estructurado
result := LOG(value);
Bloque de funciones
545
Captulo 15
X a la potencia de Y (XPY)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source X
SINT
inmediato
valor base
INT
tag
DINT
REAL
Source Y
SINT
inmediato
INT
tag
exponente
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := sourceX ** sourceY;
Bloque de funciones
546
Operando
Tipo
Formato
Descripcin
XPY tag
FBD_MATH
estructura
estructura XPY
Captulo 15
Estructura FBD_MATH
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source X
REAL
Valor base.
Vlido = cualquier valor con punto flotante (coma flotante)
Source Y
REAL
exponente
Vlido = cualquier valor con punto flotante (coma flotante)
Descripcin
EnableOut
BOOL
Dest
REAL
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo:
Ocurrir un fallo menor si
Tipo de fallo
Cdigo de fallo
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
547
Captulo 15
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Texto estructurado
result := (value_1 value_2);
Bloque de funciones
548
Captulo
16
Introduccin
Si desea
Convertir radianes en grados.
Vea la pgina
550
texto estructurado
bloque de funciones
Convertir grados en radianes.
RAD
553
texto estructurado
bloque de funciones
Convertir un valor entero en un valor BCD.
TOD
556
bloque de funciones
Convertir un valor BCD en un valor entero.
FRD
559
bloque de funciones
Retirar la parte fraccionaria de un valor.
TRN
TRUNC(1)
texto estructurado
561
bloque de funciones
(1)
549
Captulo 16
Grados (DEG)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := DEG(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
DEG tag
FBD_MATH_ADVANCED
estructura
Estructura DEG
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
550
Captulo 16
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
551
Captulo 16
Texto estructurado
result := DEG(value);
Bloque de funciones
552
Radianes (RAD)
Captulo 16
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
REAL
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := RAD(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
RAD tag
FBD_MATH_ADVANCED
estructura
estructura RAD
Estructura FBD_MATH_ADVANCED
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
REAL
553
Captulo 16
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
554
Ninguna.
Captulo 16
Texto estructurado
result := RAD(value);
Bloque de funciones
555
Captulo 16
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Destination
SINT
tag
almacena el resultado
INT
DINT
Bloque de funciones
Operando
Tipo
Formato
Descripcin
TOD tag
FBD_CONVERT
estructura
estructura TOD
Estructura FBD_CONVERT
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
DINT
Descripcin
EnableOut
BOOL
Dest
DINT
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
556
Captulo 16
Condiciones de fallo:
Ocurrir un fallo menor si
Tipo de fallo
Cdigo de fallo
Source < 0
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
no
origen < 0
no
S:V se establece a 1
la condicin de salida de
rengln se establece como
verdadera
fin
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
557
Captulo 16
Bloque de funciones
558
Captulo 16
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
SINT
inmediato
INT
tag
DINT
Un tag SINT o INT se convierte en un valor DINT mediante un relleno con
ceros.
Destination
SINT
tag
almacena el resultado
INT
DINT
Bloque de funciones
Operando
Tipo
Formato:
Descripcin
FRD tag
FBD_CONVERT
estructura
estructura FRD
Estructura FBD_CONVERT
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
DINT
Descripcin
EnableOut
BOOL
Dest
DINT
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
559
Captulo 16
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
Ninguna.
Bloque de funciones
560
Truncar (TRN)
Captulo 16
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Source
REAL
inmediato
tag
Destination
SINT
tag
INT
DINT
REAL
Texto estructurado
dest := TRUNC(source);
Bloque de funciones
Operando
Tipo
Formato
Descripcin
TRN tag
FBD_TRUNCATE
estructura
estructura TRM
Estructura FBD_TRUNCATE
Parmetro de
entrada
Tipo de datos
Descripcin
EnableIn
BOOL
Source
REAL
Descripcin
EnableOut
BOOL
Dest
DINT
561
Captulo 16
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
Condiciones de fallo: ninguna
Ejecucin:
Lgica de escalera de rels
Condicin
Accin
preescn
post-escn
Bloque de funciones
Condicin
Accin
preescn
Ninguna.
Ninguna.
Ninguna.
EnableIn se borra
EnableOut se borra.
EnableIn se establece
La instruccin se ejecuta.
EnableOut se establece.
post-escn
562
Ninguna.
Captulo 16
Texto estructurado
float_value_1_truncated := TRUNC(float_value_1);
Bloque de funciones
563
Captulo 16
Notas:
564
Captulo
17
Introduccin
Use las instrucciones para puerto serie ASCII a fin de leer y escribir
caracteres ASCII.
IMPORTANTE
Para usar las instrucciones del puerto serie ASCII, usted debe
configurar el puerto serie del controlador. Consulte el
documento Logix5000 Controllers Common Procedures,
publicacin 1756-PM001.
Si desea
Por ejemplo
Use esta
instruccin
ABL
Disponible en estos
lenguajes
Vea la
pgina
lgica de escalera de
rels
570
texto estructurado
contar los caracteres en el bfer
ACB
lgica de escalera de
rels
573
texto estructurado
borrar el bfer
borrar las instrucciones del puerto
serie ASCII que actualmente se estn
ejecutando o estn en la cola.
obtener el estado de las lneas de
control del puerto serie
ACL
lgica de escalera de
rels
575
texto estructurado
AHL
lgica de escalera de
rels
577
texto estructurado
ARD
lgica de escalera de
rels
581
texto estructurado
leer un nmero variable de
caracteres, inclusive el primer
conjunto de caracteres de
terminacin
enviar caracteres
ARL
lgica de escalera de
rels
585
texto estructurado
AWA
lgica de escalera de
rels
589
texto estructurado
AWT
lgica de escalera de
rels
594
texto estructurado
565
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Ejecucin de la instruccin
Las instrucciones de puerto serie ASCII se ejecutan de manera
asncrona con el escn de la lgica:
Lgica
La condicin de entrada
de rengln de
instruccin cambia de
falsa a verdadera
Cola ASCII
Tarea ASCII
Instruccin 1
La instruccin en la
parte superior de la
cola se ejecuta.
Instruccin 2
Instruccin 3
Instruccin 4
La instruccin entra en
la cola ASCII.
Los datos fluyen entre el
bfer y el puerto serie.
Puerto serie
Bfer
566
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
escn
escn
escn
condicin de
entrada de rengln
falsa
verdadera
falsa
verdadera
falsa
.EN
desactivado
activado
desactivado
activado
desactivado
.EU
desactivado
activado
.RN
desactivado
activado
.DN o .ER
desactivado
activado
desactivado
activado
.FD
desactivado
activado
desactivado
activado
.EM
desactivado
entra en la cola
se ejecuta
en este ejemplo,
encuentra caracteres
de terminacin
desactivado
activado
activado
desactivado
desactivado
activado
567
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
condicin de
entrada de rengln
falsa
verdadera
.EN
desactivado
activado
.EU
desactivado
escn
escn
escn
falsa
activado
Indica que
16#2
El mdem se desconect.
16#3
16#4
16#A
Antes de que se ejecutara la instruccin, se estableci el bit .UL. Esto impide la ejecucin de la instruccin.
16#C
El controlador cambi del modo de marcha al modo de programacin. Esto detiene la ejecucin de una instruccin de
puerto serie ASCII y borra la cola.
16#D
En el cuadro de dilogo Controller Properties, ficha User Protocol, se cambiaron y se aplicaron los parmetros de
tamao de bfer o modo de eco. Esto detiene la ejecucin de una instruccin de puerto serie ASCII y borra la cola.
16#E
16#F
La configuracin del puerto serie cambi del modo de usuario al modo de sistema. Esto detiene la ejecucin de una
instruccin de puerto serie ASCII y borra la cola de instrucciones de puerto serie ASCII.
16#51
El valor LEN del tag de cadena es negativo o mayor que el tamao de DATA del tag de cadena.
16#54
La longitud de control del puerto serie es mayor que el tamao del bfer.
16#55
La longitud de control del puerto serie es negativa o mayor que el tamao de Source o Destination.
568
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Notas
LEN
DINT
nmero de caracteres
en la cadena
Matriz SINT
caracteres ASCII de la
cadena
Para obtener acceso a los caracteres de la cadena, utilice el nombre del tag.
Por ejemplo, para acceder a los caracteres del tag string_1, introduzca
string_1.
Cada elemento de la matriz DATA contiene un carcter.
Usted puede crear nuevos tipos de datos de cadena que almacenen menos o
ms caracteres.
569
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Operandos:
Lgica de escalera de rels
ABL
ABL
ASCII
Buffer
Line
ASCIITest
TestFor
For
Buffer
Line
Channel
Channel
SerialPortControl
Control
SerialPort
CharacterCount
Count
Character
?
?
?
EN
DN
ER
ER
Operando
Tipo
Formato
Descripcin
Channel
DINT
inmediato
tag
Serial Port
SERIAL_PORT_
Control
CONTROL
Character
Count
DINT
tag
inmediato
Texto estructurado
ABL(Channel
SerialPortControl);
Estructura SERIAL_PORT_CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.EU
BOOL
.DN
BOOL
.RN
BOOL
.EM
BOOL
El bit de vaco indica que finaliz la instruccin, pero es sncrono respecto al escn de la
lgica.
.ER
BOOL
.FD
BOOL
.POS
DINT
.ERROR
DINT
570
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
n. a.
n. a.
571
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Condicin
ejecucin de la instruccin
MV_line.EN
MV_line.EN
/
ABL
ABL
ASCII
For Buffer
Line
ASCII
TestTest
For Buffer
Line
Channel
0
Channel
MV_line.E
SerialPort
Control
SerialPort
Control
MV_line
Character
Count
Character
Count
0
EN
EN
DN
DN
ER
ER
Texto estructurado
ABL(0,MV_line);
572
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Caracteres ASCII en el
bfer (ACB)
Captulo 17
Operandos:
Lgica de escalera de rels
ACB
ACB
ASCII
ASCIIChars
CharsininBuffer
Buffer
Channel
Channel
SerialPort
SerialPortControl
Control
Character
CharacterCount
Count
?
?
?
EN
EN
DN
DN
ER
ER
Operando
Tipo
Formato
Introduzca
Channel
DINT
inmediato
tag
Serial Port
SERIAL_PORT_
Control
CONTROL
Character
Count
DINT
tag
inmediato
Texto estructurado
ACB(Channel
SerialPortControl);
Los operandos son los mismos que para la instruccin ACB de lgica
de escalera de rels. Sin embargo, usted especifica el valor de conteo
de caracteres al acceder al miembro .POS de la estructura
SERIAL_PORT_CONTROL, en lugar de incluir el valor en la lista de
operandos.
Estructura SERIAL_PORT_CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.EU
BOOL
.DN
BOOL
.RN
BOOL
.EM
BOOL
El bit de vaco indica que finaliz la instruccin, pero es sncrono respecto al escn de la
lgica.
.ER
BOOL
.FD
BOOL
.POS
DINT
.ERROR
DINT
573
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
n. a.
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
ACB
ACB
ASCII
Chars
in Buffer
ASCII
Chars
in Buffer
Channel
0
Channel
bar_code_count.EN
SerialPort
Control
bar_code_count
SerialPort
Control
Character
Count
Character
Count
0
EN
EN
DN
DN
ER
ER
Texto estructurado
ACB(0,bar_code_count);
574
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Operandos:
Lgica de escalera de rels
ACL
ACL
Borrar ASCII
ASCII
Clear bfer
Buffer
Canal
Channel
Borrar Serial
lecturaPort
de puerto
Clear
Read serie
Borrar Serial
escritura
deWrite
puerto serie
Clear
Port
?
?
?
Operando
Tipo
Formato
Introduzca
Channel
DINT
inmediato
tag
Clear Serial
Port Read
BOOL
inmediato
tag
Clear Serial
Port Write
BOOL
inmediato
tag
Texto estructurado
ACL(Channel,
ClearSerialPortRead,
ClearSerialPortWrite);
Entonces
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
575
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
S:FS
ACL
ACL
ASCII
Buffer
Borrar Clear
ASCII bfer
Channel
Canal
BorrarSerial
lectura Port
de puerto
serie
Clear
Read
BorrarSerial
escrituraPort
de puerto
Clear
Writeserie
0
1
1
Texto estructurado
osri_1.InputBit := S:FS;
OSRI(osri_1);
IF (osri_1.OutputBit) THEN
ACL(0,0,1);
END_IF;
576
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Operandos:
Lgica de escalera de rels
AHL
AHL
ASCII Handshake
ASCII
HandshakeLines
Lines
Channel
Channel
AND Mask
OR
Mask
OR Mask
SerialPort
Control
SerialPort Control
Channel
Status(Decimal)
Channel Status(Decimal)
EN
EN
?
?
??
?
??
?
?
DN
DN
ER
ER
Operando
Tipo
Formato
Introduzca
Channel
DINT
inmediato
tag
ANDMask
DINT
inmediato
Remtase a la descripcin.
tag
ORMask
DINT
inmediato
tag
SERIAL_PORT_CONTROL
tag
DINT
inmediato
CTS
RTS
DSR
DCD
DTR
Texto estructurado
AHL(Channel,ANDMask,ORMask,
SerialPortControl);
577
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Estructura SERIAL_PORT_CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.EU
BOOL
.DN
BOOL
.RN
BOOL
.EM
BOOL
El bit de vaco indica que finaliz la instruccin, pero es sncrono respecto al escn de la
lgica.
.ER
BOOL
.FD
BOOL
.POS
DINT
.ERROR
DINT
Entonces
Y poner RTS en
el estado
siguiente:
Introduzca este
valor ANDMask
E introduzca este
valor ORMask
desactivado
desactivado
activado
sin cambio
desactivado
activado
sin cambio
desactivado
activado
sin cambio
activado
sin cambio
578
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
57
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
n. a.
n. a.
ejecucin de la instruccin
La instruccin obtiene el estado de la lnea de control y activa o desactiva las seales DTR y RTS.
El bit .EN se establece.
Los bits de estado restantes, excepto .UL, se borran.
La instruccin trata de entrar en la cola ASCII.
post-escn
Ninguna.
579
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
AHL
AHL
ASCII Handshake Lines
ASCII Handshake Lines
Channel
Channel
AND
Mask
0
0
DN
DN
OR
Mask
OR Mask
ER
ER
AND Mask
SerialPort Control
SerialPort
Control
Channel Status(Decimal)
Channel
Status(Decimal)
EN
EN
serial_port
serial_port
29
Texto estructurado
osri_1.InputBit := get_control_line_status;
OSRI(osri_1);
IF (osri_1.OutputBit) THEN
AHL(0,0,0,serial_port);
END_IF;
580
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Operandos:
Lgica de escalera de rels
ASCII Read
Read
ASCII
Channel
Channel
Destination
Destination
ARD
ARD
EN
EN
SerialPort
SerialPortControl
Control
SerialPort
SerialPortControl
Control Length
Length
Characters
Characters Read
Read
?
?
??
?
?
?
DN
DN
ER
ER
Operando
Tipo
Formato
Introduzca
Channel
DINT
inmediato
Notas
tag
Destination
cadena
tag
SINT
INT
DINT
Serial Port
SERIAL_PORT_
Control
CONTROL
Serial Port
DINT
inmediato
nmero de caracteres a
transferir al destino
(lectura)
Control Length
Characters Read
DINT
inmediato
Texto estructurado
ARD(Channel,Destination,
SerialPortControl);
Los operandos son los mismos que para la instruccin ARD de lgica
de escalera de rels. Sin embargo, usted especifica los valores de
Serial Port Control Length y Characters Read accediendo a los
miembros .LEN y .POS de la estructura SERIAL_PORT_CONTROL, en
lugar de incluir los valores en la lista de operandos.
581
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Estructura SERIAL_PORT_CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.EU
BOOL
.DN
BOOL
.RN
BOOL
.EM
BOOL
El bit de vaco indica que finaliz la instruccin, pero es sncrono respecto al escn de la
lgica.
.ER
BOOL
.FD
BOOL
.LEN
DINT
.POS
DINT
.ERROR
DINT
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
582
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
n. a.
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
ACB
ACB
ASCII
Chars
in Buffer
ASCII
Chars
in Buffer
Channel
0
Channel
bar_code_count.EN
SerialPort
Control
SerialPort
Control
bar_code_count
Character
Count
Character
Count
0
GEQ
GEQ
GrtrThan
Than
Eql (A>=B)
Grtr
o Eqlor(A>=B)
Source A A bar_code_count.pos
bar_code_count.pos
Source
Source B B
Source
0
24
EN
EN
DN
DN
ER
ER
ARD
ARD
ASCII
Read
ASCII Read
Channel
Channel
Destination
Destination
0
bag_bar_code
bag_bar_code
''
bar_code_read
SerialPort Control
SerialPort
Control
bar_code_read
SerialPort Control
Length
SerialPort
Control
Length
24
Characters Read
Characters
Read
0
EN
EN
DN
DN
ER
ER
583
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Texto estructurado
ACB(0,bar_code_count);
IF bar_code_count.POS >= 24 THEN
bar_code_read.LEN := 24;
ARD(0,bag_bar_code,bar_code_read);
END_IF;
584
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Operandos:
Lgica de escalera de rels
ASCII
ASCIIRead
ReadLine
Line
Channel
Channel
Destination
Destination
ARL
ARL
EN
EN
SerialPortControl
Control
SerialPort
SerialPortControl
ControlLength
Length
SerialPort
CharactersRead
Read
Characters
?
?
??
?
?
?
DN
DN
ER
ER
Operando
Tipo
Formato
Introduzca
Channel
DINT
inmediato
Notas
tag
Destination
cadena
tag
SINT
INT
DINT
Serial Port
SERIAL_PORT_
Control
CONTROL
Serial Port
Control Length
DINT
inmediato
nmero mximo de
caracteres a leer si no se
encuentran caracteres de
terminacin
Characters Read
DINT
inmediato
Texto estructurado
ARL(Channel,Destination,
SerialPortControl);
Los operandos son los mismos que para la instruccin ARL de lgica
de escalera de rels. Sin embargo, usted especifica los valores de
Serial Port Control Length y Characters Read accediendo a los
miembros .LEN y .POS de la estructura SERIAL_PORT_CONTROL,
en lugar de incluir los valores en la lista de operandos.
585
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Estructura SERIAL_PORT_CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.EU
BOOL
.DN
BOOL
.RN
BOOL
.EM
BOOL
El bit de vaco indica que finaliz la instruccin, pero es sncrono respecto al escn de la
lgica.
.ER
BOOL
.FD
BOOL
.LEN
DINT
La longitud indica el nmero mximo de caracteres a transferir al destino (es decir, cundo se
debe interrumpir la lectura si no se encuentran caracteres de terminacin).
.POS
DINT
.ERROR
DINT
Descripcin: La instruccin ARL retira los caracteres del bfer y los almacena en
Destination de la siguiente manera:
La instruccin ARL contina ejecutndose hasta eliminar:
el primer conjunto de caracteres de terminacin
el nmero especificado de caracteres (Serial Port Control
Length)
Mientras que la instruccin ARL se est ejecutando, ninguna otra
instruccin de puerto serie ASCII se ejecuta.
Para programar la instruccin ARL, siga estas pautas:
1. Configure el puerto serie del controlador:
a. Seleccione el modo de usuario.
b. Defina los caracteres que sirven como caracteres de
terminacin.
2. Use los resultados de una instruccin ABL para activar la
instruccin ARL. Esto evita que la instruccin ARL retenga la cola
ASCII mientras espera el nmero de caracteres de terminacin.
3. sta es una instruccin transicional:
En la lgica de escalera de rels, cambie la condicin de
entrada del rengln de borrado a establecido cada vez que
deba ejecutarse la instruccin.
En texto estructurado, condicione la instruccin de manera
que slo se ejecute cuando ocurra una transicin.
4. Para activar una accin subsiguiente cuando se ha efectuado la
instruccin, examine el bit EM.
586
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
n. a.
n. a.
ejecucin de la instruccin
La instruccin retira los caracteres especificados del bfer y los almacena en el destino.
El bit .EN se establece.
Los bits de estado restantes, excepto .UL, se borran.
La instruccin trata de entrar en la cola ASCII.
post-escn
Ninguna.
587
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
ABL
ABL
ASCII
For Buffer
ASCII
TestTest
For Buffer
Line Line
Channel
Channel
0
MV_line
SerialPort
Control
SerialPort
Control
MV_line
Characters
Count
Character
Count
0
MV_line.FD
MV_line.FD
EN
EN
DN
DN
ER
ER
ARL
ARL
ASCII
Read
ASCII Read
LineLine
Channel
Channel
Destination
Destination
EN
EN
SerialPort Control
SerialPort
Control
SerialPort Control
Length
SerialPort
Control
Length
Characters Read
Characters
Read
0
MV_line.EN
MV_msg
''
MV_line.EN
MV_read
12
0
DN
DN
ER
ER
Texto estructurado
ABL(0,MV_line);
osri_1.InputBit := MVLine.FD;
OSRI(osri_1);
IF (osri_1.OutputBit) THEN
mv_read.LEN := 12;
ARL(0,MV_msg,MV_read);
END_IF;
588
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Operandos:
Lgica de escalera de rels
AWA
AWA
ASCII Write
Write Append
Append
ASCII
Channel
Channel
Source
Source
SerialPort Control
SerialPort
SerialPort
Length
SerialPort Control Length
Characters
Sent
Characters Sent
EN
EN
?
?
??
?
?
?
DN
DN
ER
ER
Operando
Tipo
Formato
Introduzca
Channel
DINT
inmediato
Notas
tag
Source
cadena
tag
SINT
INT
DINT
Serial Port
SERIAL_PORT_
Control
CONTROL
Serial Port
Control Length
DINT
inmediato
nmero de caracteres a
enviar
Characters Sent
DINT
inmediato
Texto estructurado
AWA(Channel,Source,
SerialPortControl);
Los operandos son los mismos que para la instruccin AWA de lgica
de escalera de rels. Sin embargo, usted especifica los valores de
Serial Port Control Length y Characters Sent accediendo a los
miembros .LEN y .POS de la estructura SERIAL_PORT_CONTROL,
en lugar de incluir los valores en la lista de operandos.
589
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Estructura SERIAL_PORT_CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.EU
BOOL
.DN
BOOL
.RN
BOOL
.EM
BOOL
El bit de vaco indica que finaliz la instruccin, pero es sncrono respecto al escn de la
lgica.
.ER
BOOL
.FD
BOOL
.LEN
DINT
.POS
DINT
.ERROR
DINT
Entonces
la respuesta es afirmativa
la respuesta es negativa
590
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Entonces
la respuesta
es afirmativa
la respuesta
es negativa
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
n. a.
n. a.
ejecucin de la instruccin
La instruccin enva un nmero especificado de caracteres y aade uno o dos caracteres predefinidos.
El bit .EN se establece.
Los bits de estado restantes, excepto .UL, se borran.
La instruccin trata de entrar en la cola ASCII.
post-escn
Ninguna.
591
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
AWA
AWA
ASCII
Write
Append
ASCII Write
Append
Channel
Channel
Source
Source
0
string[1]
string[1]
'$1425\1'
temp_high_write
SerialPort
Control
temp_high_write
SerialPort Control
SerialPort Control
Length
SerialPort
Control
Length
5
Characters Sent
Characters
Sent
6
EN
EN
DN
DN
ER
ER
Texto estructurado
IF temp_high THEN
temp_high_write.LEN := 5;
AWA(0,string[1],temp_high_write);
temp_high := 0;
END_IF;
592
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
alarm
alarm
Move
Move
Source alarm_msg.LEN
Source
alarm_msg.LEN
Dest.
Dest
5
alarm_write.LEN
alarm_write.LEN
5
AWA
AWA
ASCII
Write
Append
ASCII Write
Append
Channel
Channel
Source
Source
SerialPort Control
SerialPort
Control
SerialPort Control
Length
SerialPort
Control
Length
Characters Sent
Characters
Sent
EN
EN
0
alarm_msg
alarm_msg
'$1425\1'
alarm_write
alarm_write
5
6
DN
DN
ER
ER
Texto estructurado
osri_1.InputBit := alarm;
OSRI(osri_1);
IF (osri_1.OutputBit) THEN
alarm_write.LEN := alarm_msg.LEN;
AWA(0,alarm_msg,alarm_write);
END_IF;
593
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Escritura ASCII
(ASCII Write (AWT))
Operandos:
Lgica de escalera de rels
ASCII Write
ASCII
Write
Channel
Channel
Source
Source
AWT
AWT
EN
EN
SerialPort
Control
SerialPort Control
SerialPort
ControlLength
Length
SerialPort Control
Characters
Sent
Characters Sent
?
?
??
?
?
?
DN
DN
ER
ER
Operando
Tipo
Formato
Introduzca
Channel
DINT
inmediato
Notas
tag
Source
cadena
tag
SINT
INT
DINT
Serial Port
SERIAL_PORT_
Control
CONTROL
Serial Port
Control Length
DINT
inmediato
el nmero de caracteres a
enviar
Characters Sent
DINT
inmediato
Texto estructurado
AWT(Channel,Source,
SerialPortControl);
594
Los operandos son los mismos que para la instruccin AWT de lgica
de escalera de rels. Sin embargo, usted especifica los valores de
Serial Port Control Length y Characters Sent accediendo a los
miembros .LEN y .POS de la estructura SERIAL_PORT_CONTROL,
en lugar de incluir los valores en la lista de operandos.
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Estructura SERIAL_PORT_CONTROL
Mnemnico
Tipo de datos
Descripcin
.EN
BOOL
.EU
BOOL
.DN
BOOL
.RN
BOOL
.EM
BOOL
El bit de vaco indica que finaliz la instruccin, pero es sncrono respecto al escn de la
lgica.
.ER
BOOL
.FD
BOOL
.LEN
DINT
.POS
DINT
.ERROR
DINT
Entonces
Si
Entonces
la respuesta
es afirmativa
la respuesta
es negativa
595
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
n. a.
n. a.
ejecucin de la instruccin
post-escn
temp_low
temp_low
ASCII
Write
ASCII
Write
Channel
Channel
Source
Source
EN
EN
0
string[2]
string[2]
'$142224\01$r'
SerialPort Control
temp_low_write
SerialPort
Control
temp_low_write
SerialPort Control
LengthLength
SerialPort
Control
9
Characters SentSent
Characters
9
596
DN
DN
ER
ER
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Captulo 17
Texto estructurado
osri_1.InputBit := temp_low;
OSRI(osri_1);
IF (osri_1.OutputBit) THEN
temp_low_write.LEN := 9;
AWT(0,string[2],temp_low_write);
END_IF;
MOV
MOV
Move
Move
Source MV_msg.LEN
Source
MV_msg.LEN
Dest.
Dest
10
MV_write.LEN
MV_write.LEN
10
AWT
AWT
ASCII
Write
ASCII Write
Channel
Channel
Source
Source
0
MV_msg
MV_msg
'$161365\8\1$r'
SerialPort Control
MV_write
SerialPort
Control
MV_write
SerialPort Control
Length
SerialPort
Control
Length
10
Characters SentSent
Characters
10
EN
EN
DN
DN
ER
ER
Texto estructurado
osri_1.InputBit := MV_update;
OSRI(osri_1);
IF (osri_1.OutputBit) THEN
MV_write.LEN := Mv_msg.LEN;
AWT(0,MV_msg,MV_write);
END_IF;
597
Captulo 17
Instrucciones para puerto serie ASCII (ABL, ACB, ACL, AHL, ARD, ARL, AWA, AWT)
Notas:
598
Captulo
18
Introduccin
Si desea
Por ejemplo
Use esta
instruccin
Disponible en estos
lenguajes
Vea la
pgina
CONCAT
lgica de escalera de
rels
601
texto estructurado
eliminar caracteres de una cadena
DELETE
lgica de escalera de
rels
603
texto estructurado
determinar el carcter inicial de una
subcadena
FIND
lgica de escalera de
rels
605
texto estructurado
insertar caracteres dentro de una
cadena
INSERT
lgica de escalera de
rels
607
texto estructurado
extraer caracteres de una cadena
MID
lgica de escalera de
rels
609
texto estructurado
Vea la pgina
CMP
206
EQU
211
NEQ
242
GEQ
211
GRT
219
LEQ
223
LES
227
SWPB
300
FSC
347
STOD
614
599
Captulo 18
Si desea
Vea la pgina
STOR
616
convertir un valor SINT, INT, DINT o REAL en una cadena de caracteres ASCII
DTOS
619
RTOS
621
Notas
LEN
DINT
nmero de caracteres
en la cadena
Matriz SINT
caracteres ASCII de la
cadena
Para obtener acceso a los caracteres de la cadena, utilice el nombre del tag.
Por ejemplo, para acceder a los caracteres del tag string_1, introduzca
string_1.
Cada elemento de la matriz DATA contiene un carcter.
Usted puede crear nuevos tipos de datos de cadena que almacenen menos o
ms caracteres.
600
Concatenacin de cadenas
(CONCAT)
Captulo 18
Operandos:
Lgica de escalera de rels
CONCAT
CONCAT
Sting
Concatenate
String
Concatenate
Source
A A
Source
??
????
Source
??
Source
B B
????
Dest
??
Dest
????
Operando
Tipo
Formato
Introduzca
Notas
Source A
cadena
tag
Source B
cadena
tag
Destination
cadena
tag
Texto estructurado
CONCAT(SourceA,SourceB,
Dest);
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
601
Captulo 18
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
add_node
Sting
Concatenate
String
Concatenate
Source
A A
string_1
Source
string_1
$1423\
'$1423\'
Source
B B node_num_ascii
node_num_ascii
Source
'1'1
Dest
msg
Dest
msg
'$1423\1'
$1423\1
Texto estructurado
IF add_node THEN
CONCAT(string_1,node_num_ascii,msg);
add_node := 0;
END_IF;
602
Eliminacin de cadena
(DELETE)
Captulo 18
Operandos:
DELETE
DELETE
Sting
Delete
String
Delete
Source
Source
Qty
Qty
Start
Start
Dest
Dest
Operando
Tipo
Formato
Introduzca
Notas
Source
cadena
tag
Quantity
SINT
inmediato
INT
tag
el nmero de caracteres
que se desea eliminar
DINT
Start
SINT
inmediato
INT
tag
DINT
Destination
cadena
tag
Texto estructurado
DELETE(Source,Qty,Start,
Dest);
603
Captulo 18
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
1. Verifique que ninguna instruccin est escribiendo en el miembro LEN del tag
de cadena.
56
2. Verifique que el valor de Start ms el valor Quantity sea menor o igual que el
tamao de DATA de Source.
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
term_read.EM
Start
Start
11
Dest
Dest
term_text
term_text
55
'55'
Texto estructurado
IF term_read.EM THEN
DELETE(term_input,1,1,term_text);
term_read.EM := 0;
END_IF;
604
Captulo 18
Operandos:
Lgica de escalera de rels
FIND
FIND
Find
String
Find
String
Source
Source
??
????
??
????
??
????
??
????
Search
Search
Start
Start
Result
Result
Operando
Tipo
Formato
Introduzca
Notas
Source
cadena
tag
Buscar
cadena
tag
Start
SINT
inmediato
INT
tag
la posicin en Source en la
cual se debe iniciar la
bsqueda
DINT
Result
tag
SINT
INT
DINT
Texto estructurado
FIND(Source,Search,Start,
Result);
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
56
605
Captulo 18
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
MV_read.EM
Result
Result
find_pos
find_pos
55
Texto estructurado
IF MV_read.EM THEN
FIND(MV_msg,find,1,find_pos);
MV_read.EM := 0;
END_IF;
606
Captulo 18
Operandos:
INSERT
INSERT
Insert
String
Insert
String
Source
A A
Source
Source
B B
Source
Start
Start
Dest
Dest
Operando
Tipo
Formato
Introduzca
Notas
Source A
cadena
tag
Source B
cadena
tag
la cadena a la cual se
Los tipos de datos de cadena son:
deben aadir los caracteres
tipo de datos STRING predeterminado
la cadena que contiene los
cualquier tipo de datos nuevo que usted
caracteres que se deben
cree
aadir
Start
SINT
inmediato
INT
tag
DINT
Result
cadena
tag
Texto estructurado
INSERT(SourceA,SourceB,
Start,Dest);
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
56
607
Captulo 18
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
temp_high
Dest
Dest
string_3
string_3
ABCD
'ABCD'
Texto estructurado
IF temp_high THEN
INSERT(string_1,string_2,2,string_3);
temp_high := 0;
END_IF;
608
Captulo 18
Operandos:
MID
MID
Middle
String
Middle
String
Source
Source
Qty
Qty
Start
Start
Dest
Dest
Operando
Tipo
Formato
Introduzca
Notas
Source
cadena
tag
la cadena de la cual se
Los tipos de datos de cadena son:
deben copiar los caracteres
tipo de datos STRING predeterminado
cualquier tipo de datos nuevo que usted
cree
Quantity
SINT
inmediato
INT
tag
el nmero de caracteres
que se desea copiar
DINT
Start
SINT
inmediato
INT
tag
DINT
Destination
cadena
tag
la cadena a la cual se
deben copiar los caracteres
Texto estructurado
MID(Source,Qty,Start,
Dest);
Indicadores de estado
aritmtico: no afectados
609
Captulo 18
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
1. Verifique que ninguna instruccin est escribiendo en el miembro LEN del tag
de cadena.
56
2. Verifique que el valor de Start ms el valor de Quantity sea menor o igual que el
tamao de DATA de Source.
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
La instruccin MID copia los caracteres especificados de una cadena y los almacena en otra cadena.
post-escn
Ninguna.
bag_read.EM
Start
Start
99
Dest
Dest
bag_flt_and_dest
bag_flt_and_dest
'5058
AMS
'
5058
AMS
Texto estructurado
IF bag_read.EM THEN
MID(bar_barcode,9,9,bag_flt_and_dest);
bag_read.EM := 0;
END_IF;
610
Captulo
19
Introduccin
Si desea
Por ejemplo
STOD
STOR
Use esta
instruccin
Disponible en estos
lenguajes
Vea la
pgina
lgica de escalera de
rels
614
texto estructurado
lgica de escalera de
rels
616
texto estructurado
convertir un valor SINT, INT, DINT o
REAL en una cadena de caracteres
ASCII
DTOS
lgica de escalera de
rels
619
texto estructurado
convertir un valor REAL en una
cadena de caracteres ASCII
RTOS
lgica de escalera de
rels
621
texto estructurado
convertir en maysculas las letras de
una cadena de caracteres ASCII
UPPER
lgica de escalera de
rels
623
texto estructurado
convertir en minsculas las letras en
una cadena de caracteres ASCII
LOWER
lgica de escalera de
rels
625
texto estructurado
611
Captulo 19
Vea la pgina
CONCAT
601
DELETE
603
FIND
605
INSERT
607
MID
609
SWPB
300
CMP
206
EQU
211
NEQ
242
GEQ
215
GRT
219
LEQ
223
LES
227
FSC
347
612
Captulo 19
Tipo de
datos:
Descripcin:
Notas:
LEN
DINT
nmero de caracteres
en la cadena
Matriz SINT
caracteres ASCII de la
cadena
Para obtener acceso a los caracteres de la cadena, utilice el nombre del tag.
Por ejemplo, para acceder a los caracteres del tag string_1, introduzca
string_1.
Cada elemento de la matriz DATA contiene un carcter.
Usted puede crear nuevos tipos de datos de cadena que almacenen menos o
ms caracteres.
613
Captulo 19
Operandos:
Lgica de escalera de rels
STOD
STOD
String
ToTo
DINT
String
DINT
Source
Source
??
????
Dest
Dest
??
????
Operando
Tipo
Formato
Introduzca
Notas
Source
cadena
tag
Destination
SINT
tag
INT
DINT
REAL
STOD(Source,Dest);
Texto estructurado
Los operandos son iguales a los de la instruccin STOD de lgica de
escalera de rels.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
614
Captulo 19
Condiciones de fallo
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
53
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
SC se establece
Destination se borra.
La instruccin convierte Source.
Si el resultado es cero, S:Z se establece.
post-escn
Ninguna.
STOD
STOD
String
To DINT
String
To DINT
Source
MV_msg
Source
MV_msg
$06324\12\1\$r
'$06324\12\1\$r'
Dest
MV_msg_nmbr
Dest MV_msg_nmbr
324
324
615
Captulo 19
Texto estructurado
IF MV_read.EM THEN
STOD(MV_msg,MV_msg_nmbr);
MV_read.EM := 0;
END_IF;
Operandos:
STOR
STOR
String
Real
Stringtoto
Real
Source
Source
Dest
Dest
Operando
Tipo
Formato
Introduzca
Notas
Source
cadena
tag
Destination
REAL
tag
STOR(Source,Dest);
Texto estructurado
Los operandos son iguales a los de la instruccin STOR de lgica de
escalera de rels.
Indicadores de estado
aritmtico: Los indicadores de estado aritmtico son afectados.
616
Captulo 19
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
53
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
S:C se establece.
Destination se borra.
La instruccin convierte Source.
Si el resultado es cero, S:Z se establece.
post-escn
Ninguna.
STOR
STOR
String
to Real
String
to Real
Source
weight_axcii
Source weight_ascii
428.259
'428.259'
Dest
weight
Dest
weight
428.259
428.259
617
Captulo 19
Texto estructurado
IF weight_read.EM THEN
STOR(weight_ascii,weight);
weight_read.EM := 0;
END_IF;
618
Captulo 19
Operandos:
DTOS
DTOS
DINT
to to
String
DINT
String
Source
Source
Dest
Dest
Operando
Tipo
Formato
Introduzca
Source
SINT
tag
tag
INT
Notas
DINT
REAL
Destination
cadena
DTOS(Source,Dest);
Texto estructurado
Los operandos son iguales a los de la instruccin DTOS de lgica de
escalera de rels.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
52
619
Captulo 19
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
temp_high
'23'
Texto estructurado
IF temp_high THEN
DTOS(msg_num,msg_num_ascii);
temp_high := 0;
END_IF;
620
Captulo 19
Operandos:
RTOS
RTOS
Real
to to
String
Real
String
Source
Source
Dest
Dest
Operando
Tipo
Formato
Introduzca
Notas
Source
REAL
tag
Destination
cadena
tag
RTOS(Source,Dest);
Texto estructurado
Los operandos son iguales a los de la instruccin RTOS de lgica de
escalera de rels.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo
Cdigo
Causa
Mtodo de recuperacin
51
52
621
Captulo 19
Ejecucin:
Condicin
preescn
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
n. a.
ejecucin de la instruccin
post-escn
send_data
'15.3001003'
Texto estructurado
IF send_data THEN
RTOS(data_1,data_1_ascii);
send_data := 0;
END_IF;
622
Maysculas (UPPER)
Captulo 19
Operandos:
Lgica de escalera de rels
UPPER(Source,Dest);
Operando
Tipo
Formato
Descripcin
Source
cadena
tag
Destination
cadena
tag
Texto estructurado
Los operandos son iguales a los de la instruccin UPPER de lgica de
escalera de rels.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
623
Captulo 19
Condicin
EnableIn se establece
n .a.
ejecucin de la instruccin
post-escn
Ninguna.
Texto estructurado
IF terminal_read.EM THEN
UPPER(catalog_number,catalog_number_upper_case);
terminal_read.EM := 0;
END_IF;
624
Captulo 19
Operandos:
Lgica de escalera de rels
LOWER(Source,Dest);
Operando
Tipo
Formato
Descripcin
Source
cadena
tag
Destination
cadena
tag
Texto estructurado
Los operandos son iguales a los de la instruccin LOWER de lgica de
escalera de rels.
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin
preescn
Ninguna.
condicin de entrada de
rengln es falsa
n. a.
condicin de entrada de
rengln es verdadera
La instruccin se ejecuta.
n. a.
625
Captulo 19
Condicin
EnableIn se establece
n. a.
ejecucin de la instruccin
post-escn
Ninguna.
Texto estructurado
IF terminal_read.EM THEN
LOWER(item_number,item_number_lower_case);
terminal_read.EM := 0;
END_IF;
626
Captulo
20
Instrucciones de depuracin
(BPT, TPT)
Introduccin
Si desea
Vea la pgina
BPT
627
TPT
631
Puntos de interrupcin
(BPT)
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Formato
Cadena
tag
Rastrear
esto
BOOL, SINT,
INT, DINT, REAL
tag
Descripcin:
Los puntos de interrupcin se programan con la instruccin de salida
de punto de interrupcin (BPT). Cuando las entradas en un rengln
que contiene una instruccin BPT son verdaderas, la instruccin BPT
detiene la ejecucin del programa. El software muestra una ventana
que indica que se activ el punto de interrupcin y los valores que lo
activaron.
627
Captulo 20
ATENCIN
Formato de cadena
Con la cadena de formato en las instrucciones de punto de rastreo y
punto de interrupcin, puede controlar cmo aparecen los tags
rastreados en las ventanas de punto de interrupcin o en los rastreos.
El formato de la cadena se muestra aqu:
encabezado:(texto)%(tipo)
donde encabezado es una cadena de texto que identifica el punto de
rastreo o el punto de interrupcin, texto es una cadena que describe el
tag (o cualquier otro texto que usted seleccione) y %(tipo) indica el
formato del tag. Usted necesita un indicador de tipo para cada tag que
est rastreando con la instruccin de punto de rastreo o punto de
interrupcin.
Por ejemplo, podra formatear una cadena de punto de rastreo como
se muestra aqu:
Mi punto de rastreo:Tag 1 = %e y Tag 2 = %d
El %e formatea el primer tag rastreado como valor con punto flotante
(coma flotante) de doble precisin con un exponente, y %d formatea
el segundo tag rastreado como valor entero decimal con signo.
En este caso, usted tendra una instruccin de punto de rastreo con
dos operandos de rastreo (Trace This) (uno para un valor REAL y uno
para un valor INT, aunque el valor de cualquier tag puede formatearse
con cualquier indicador).
628
Captulo 20
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin:
preescn
post-escn
Ejemplo: Usted puede mostrar muchos valores de tag con la instruccin BPT.
Sin embargo, la cadena de formateo puede contener slo
82 caracteres. Puesto que la cadena de formateo requiere dos
caracteres para cada tag que usted desea en el punto de interrupcin,
no podr rastrear ms de 41 tags con una sola instruccin BPT.
Sin embargo, para separar datos de tag en sus rastreos necesitar
incluir espacios y otro formateo, reduciendo as el nmero de valores
de tag que puede mostrar eficazmente una instruccin BPT a mucho
menos de 41.
629
Captulo 20
630
Captulo 20
Operandos:
Lgica de escalera de rels
Operando
Tipo
Formato
Descripcin
Format
Cadena
tag
Trace This
BOOL, SINT,
INT, DINT,
REAL
tag
Descripcin:
Los puntos de rastreo se programan con la instruccin de salida punto
de rastreo (BPT). Cuando las entradas en un rengln que contiene
una instruccin TPT son verdaderas, la instruccin TPT escribe una
entrada de rastreo a una pantalla de rastreo o archivo de registros.
Usted puede rastrear muchos tags con la instruccin TPT. Sin
embargo, la cadena de formateo puede contener slo 82 caracteres.
Puesto que la cadena de formateo requiere dos caracteres para cada
tag que usted desea rastrear, no podr rastrear ms de 41 tags con una
sola instruccin TPT. Sin embargo, para separar datos de tags en sus
rastreos, necesitar incluir espacios y otro formateo, lo cual reduce el
nmero de tags que puede rastrear eficazmente una instruccin TPT a
mucho menos de 41.
Formato de cadena
Con la cadena de formato en las instrucciones de punto de rastreo y
punto de interrupcin, puede controlar cmo aparecen los tags
rastreados en las ventanas de rastreo o punto de interrupcin.
El formato de la cadena se muestra aqu:
encabezado:(texto)%(tipo)
donde encabezado es una cadena de texto que identifica el punto de
rastreo o el punto de interrupcin, texto es una cadena que describe el
tag (o cualquier otro texto que usted seleccione) y %(tipo) indica el
formato del tag. Usted necesita un indicador de tipo para cada tag que
est rastreando con la instruccin de punto de rastreo o punto de
interrupcin.
631
Captulo 20
. Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejecucin:
Condicin:
preescn
post-escn
632
Captulo 20
633
Captulo 20
Esto indica cul punto de rastreo caus cul entrada de rastreo. ste
es un ejemplo de una entrada de rastreo. Rastreo de entradas
analgicas: es el texto de encabezado de la cadena de formato del
punto de rastreo.
Rastreo de entradas analgicas:Entradas analgicas = 31.00201,
30.282000 y 30.110001
634
Apndice
Atributos comunes
Introduccin
Valores inmediatos
Vea la pgina
Valores inmediatos
635
Conversiones de datos
635
Conversiones de datos
Si introduce
El controlador almacena
-1
16#ffff (-1)
8#1234 (668)
2#1010 (10)
Lgica de escalera de rels Mezcla diferentes tipos de datos en los parmetros dentro
de una instruccin
Bloque de funciones
635
Apndice A
Atributos comunes
La respuesta
es afirmativa
REAL
La respuesta
es negativa
DINT
636
Atributos comunes
Apndice A
Extensin de signo
el valor del bit del extremo izquierdo (el signo del valor)
en cada posicin de bit a la izquierda de los bits
existentes hasta que haya 32 bits.
2#1111_1111_1111_1111
(-1)
2#1111_1111_1111_1111_1111_1111_1111_1111
Se convierte en
este valor mediante
extensin de signo
(-1)
2#0000_0000_0000_0000_1111_1111_1111_1111
Se convierte en
este valor mediante
relleno con ceros
(65535)
42093
637
Apndice A
Atributos comunes
EQU
Equal
Source A remote_rack_1:I.Data[0]
2#1111_1111_1111_1111
Source B
int_0
2#1111_1111_1111_1111
42093
EJEMPLO
2#1111_1111_1111_1111
MOV
Move
Source 2#1111_1111_1111_1111
Dest
638
int_0
2#1111_1111_1111_1111
EQU
Equal
Source A remote_rack_1:I.Data[0]
2#1111_1111_1111_1111
Source B
int_0
2#1111_1111_1111_1111
42093
Atributos comunes
Apndice A
Entero en REAL
El controlador almacena valores REAL en formato de valor con punto
flotante (coma flotante) de precisin simple IEEE. ste utiliza un bit
para el signo del valor, 23 bits para el valor base y ocho bits para el
exponente (32 bits en total). Si usted mezcla un tag de nmero entero
(SINT, INT o DINT) y un tag REAL como entradas en la misma
instruccin, el controlador convierte en un valor REAL el valor entero,
antes de que se ejecute la instruccin.
Un valor SINT o INT siempre se convierte en el mismo valor
REAL.
Un valor DINT puede no convertirse al mismo valor REAL:
Un valor REAL usa hasta 24 bits para el valor base (23 bits
almacenados ms un bit oculto).
Un valor DINT usa hasta 32 bits para el valor (uno para el
signo y 31 para el valor).
Si el valor DINT requiere ms de 24 bits significativos, puede
no convertirse en el mismo valor REAL. De ser as, el
controlador se redondear al valor REAL ms cercano usando
24 bits significativos.
16#0001_0081 (65,665)
INT:
16#0081 (129)
SINT:
16#81 (-127)
639
Apndice A
Atributos comunes
-2.5
-2
-1.6
-2
-1.5
-2
-1.4
-1
1.4
1.5
1.6
2.5
IMPORTANTE
640
Apndice
Introduccin
Este apndice describe aspectos que son nicos con las instrucciones
de bloque de funciones. Repase la informacin proporcionada en este
apndice para asegurarse de que entiende cmo funcionarn las
rutinas de bloque de funciones.
Cuando se programa un bloque de funciones, es necesario restringir el rango de
unidades de ingeniera a +/-10+/-15 puesto que los clculos de punto flotante
(coma flotante) internos se realizan usando punto flotante (coma flotante) de
precisin simple. Las unidades de ingeniera que no se encuentran dentro de este
rango pueden provocar una prdida de exactitud si los resultados se acercan a las
limitaciones del punto flotante (coma flotante) de precisin simple (+/-10+/-38).
IMPORTANTE
Seleccin de elementos de
bloques de funciones
referencia de entrada (IREF)
bloque de funciones
conector de
cable de
salida (OCON)
conector de
cable de entrada
(ICON)
Use una
641
Apndice B
Si usted desea
Use una
bloque de funciones
Enclavamiento de datos
IREF
tagA
Block_02
642
Apndice B
tagA
Block_02
tagA
643
Apndice B
Orden de ejecucin
644
Apndice B
Resolucin de un lazo
Para crear un lazo de retroalimentacin alrededor de un bloque,
cablee un pin de salida de un bloque a un pin de entrada del mismo
bloque. El siguiente es un buen ejemplo. El lazo contiene un solo
bloque, por lo que el orden de ejecucin no es importante.
645
Apndice B
Esto no es correcto
2
646
Apndice B
Esto no es correcto
647
Apndice B
Resumen
En resumen, una rutina de bloque de funciones se ejecuta en este
orden:
1. El controlador enclava todos los valores de datos en las IREF.
2. El controlador ejecuta los otros bloques de funciones en el
orden determinado segn su cableado.
3. El controlador escribe salidas en las OREF.
Respuestas de bloque de
funciones a condiciones de
overflow
Respuesta 1:
Respuesta 2:
Respuesta 3:
ALMNTCH
HLL
BANDOSRI
DEDTPMUL
INTG
BNOTRESD
DERVPOSP
PI
BORRTOR
ESELRLIM
PIDE
BXORSETD
FGENRMPS
SCL
CUTDTOFR
HPFSCRV
SOC
D2SDTONR
LDL2SEL
D3SD
LDLGSNEG
DFF
LPFSRTP
JKFF
MAVESSUM
OSFI
MAXCTOT
MINCUPDN
MSTD
MUX
648
Modos de temporizacin
Apndice B
LDLG
RLIM
DERV
LPF
SCRV
HPF
NTCH
SOC
INTG
PI
TOT
LDL2
PIDE
Descripcin
peridico
El modo peridico es el modo predeterminado y es adecuado para la mayora de las aplicaciones de control.
Recomendamos que coloque las instrucciones que utilizan este modo en una rutina que se ejecute en una
tarea peridica. El tiempo delta (DeltaT) para la instruccin se determina de la siguiente manera:
Si la instruccin se DeltaT es igual a
ejecuta en
una tarea peridica
el perodo de la tarea
En el modo de sobremuestreo, el tiempo delta (DeltaT) usado por la instruccin es el valor escrito en el
parmetro OversampleDT de la instruccin. Si la entrada del proceso tiene un valor de sello de hora, use en
lugar de ello el modo de muestreo en tiempo real.
Aada lgica al programa para controlar cundo se ejecuta la instruccin. Por ejemplo, puede usar un
temporizador para establecer el valor de OversampleDeltaT y as controlar la ejecucin usando la entrada
EnableIn de la instruccin.
La entrada del proceso necesita muestrearse 5 - 10 veces ms rpido que el tiempo en que se ejecuta la
instruccin a fin de minimizar los errores de muestreo entre la entrada y la instruccin.
649
Apndice B
Modo de
temporizacin
Descripcin
En el modo de muestreo en tiempo real, el tiempo delta (DeltaT) usado por la instruccin es la diferencia entre
dos valores de sello de hora que corresponden a las actualizaciones de la entrada del proceso. Use este modo
cuando la entrada del proceso tiene un sello de hora asociado con sus actualizaciones y usted necesita una
coordinacin precisa.
El valor del sello de hora se lee en el nombre de tag introducido para el parmetro RTSTimeStamp de la
instruccin. Normalmente este nombre de tag es un parmetro en el mdulo de entrada asociado con la
entrada del proceso.
La instruccin compara el valor RTSTime configurado (perodo de actualizacin previsto) con el DeltaT
calculado para determinar si la instruccin est leyendo cada actualizacin de la entrada del proceso. Si
DeltaT no se encuentra dentro de un milisegundo del tiempo de configuracin, la instruccin establece el bit
de estado RTSMissed para indicar que existe un problema con la lectura de actualizaciones de la entrada en
el mdulo.
650
Apndice B
Parmetros de entrada
Parmetro de
entrada
Tipo de datos
Descripcin
TimingMode
DINT
Descripcin:
modo peridico
modo de sobremuestreo
vlido = 0 a 2
valor predeterminado = 0
REAL
651
Apndice B
Parmetro de
entrada
Tipo de datos
Descripcin
RTSTime
DINT
TTSTimeStamp
DINT
Valor de sello de hora para temporizacin de muestreo en tiempo real. El valor de sello de
hora que corresponde a la ltima actualizacin de la seal de entrada. Este valor se usa para
calcular DeltaT. Si no es vlido, la instruccin establece el bit apropiado en Status, inhabilita
la ejecucin del algoritmo de control e inhabilita la verificacin de RTSMissed.
vlido = 1 a 32,767 ms (regresa de 32767 a 0)
1 conteo = 1 milisegundo
valor predeterminado = 0
Parmetros de salida
Parmetro de salida Tipo de datos
Descripcin
DeltaT
REAL
Peridica: DeltaT = velocidad de escn de la tarea si la tarea es una tarea peridica. DeltaT =
tiempo transcurrido desde la ejecucin de la instruccin previa si la tarea es de evento o una
tarea continua.
DINT
TimingModeInv
(Status.27)
BOOL
RTSTimeInv
(Status.29)
BOOL
RTSTimeStampInv
(Status.30)
BOOL
DeltaTInv (Status.31)
BOOL
652
Apndice B
Temporizacin peridica
Tarea peridica
TimingMode = 1
TimingMode = 2
Temporizacin de sobremuestreo
DeltaT = OversampleDT
653
Apndice B
Control de programa/
operador
Descripcin
.ProgProgReq
.ProgOperReq
.OperProgReq
.OperOperReq
654
Apndice B
Cablear un 1 en ProgOperReq
significa que el programa de usuario
desea que TOT siempre est en control
de operador.
655
Apndice B
Cuando se establece
StartupSequenceActive, la
instruccin PIDE se coloca en
control de programa y en modo
manual. El valor StartupCV se
usa como salida de lazo.
656
Apndice B
657
Apndice B
Notas:
658
Apndice
Introduccin
Vea la pgina
659
Asignaciones
661
Expresiones
663
Instrucciones
670
Construcciones
671
Comentarios
687
Trmino
Definicin
Ejemplos
asignacin
tag := expression;
659
Apndice C
Trmino
Definicin
expresin
Ejemplos
value1
inmediatos
Un valor constante.
operadores
tag1 + tag2
tag1 >= value1
funciones
function(tag1)
instruction();
instruction(operand);
instruction(operand1,
operand2,operand3);
660
Trmino
Definicin
Ejemplos
construccin
IF...THEN
Apndice C
CASE
Termine la construccin con un punto y coma ;.
FOR...DO
WHILE...DO
REPEAT...UNTIL
EXIT
comentario
(ver pgina 687)
Texto que explica o aclara lo que hace una seccin de texto estructurado. //comment
Use comentarios para facilitar la interpretacin del texto
estructurado.
Los comentarios no tienen ningn efecto en la ejecucin del texto
estructurado.
(*start of comment . . .
end of comment*)
Asignaciones
Descripcin
tag
:=
es el smbolo de asignacin
expresin
expresin BOOL
SINT
expresin numrica
INT
DINT
REAL
;
finaliza la asignacin
661
Apndice C
Descripcin
tag
[:=]
expresin
expresin BOOL
SINT
expresin numrica
INT
DINT
REAL
;
662
finaliza la asignacin
Apndice C
Esto no es correcto.
string1.DATA[0]:= 65;
string1.DATA[0] := A;
string1.DATA[0]:= string2.DATA[0];
string1 := string2;
Expresiones
Para
CONCAT
INSERT
663
Apndice C
664
Si desea
Entonces
Apndice C
sumar
DINT, REAL
restar/cambiar signo
DINT, REAL
multiplicar
DINT, REAL
exponente (x a la potencia y)
**
DINT, REAL
dividir
DINT, REAL
MOD
DINT, REAL
Para obtener
Tipo de datos
ptimo
valor absoluto
ABS (numeric_expression)
DINT, REAL
arco coseno
ACOS (numeric_expression)
REAL
arco seno
ASIN (numeric_expression)
REAL
arco tangente
ATAN (numeric_expression)
REAL
coseno
COS (numeric_expression)
REAL
radianes a grados
DEG (numeric_expression)
DINT, REAL
logaritmo natural
LN (numeric_expression)
REAL
logaritmo base 10
LOG (numeric_expression)
REAL
grados a radianes
RAD (numeric_expression)
DINT, REAL
seno
SIN (numeric_expression)
REAL
raz cuadrada
SQRT (numeric_expression)
DINT, REAL
tangente
TAN (numeric_expression)
REAL
truncar
TRUNC (numeric_expression)
DINT, REAL
665
Apndice C
Por ejemplo:
Use este formato
Ejemplo
Para esta situacin
Usted escribira
gain_4_adj :=
gain_4+15;
operator value1
alarm:=
-high_alarm;
function(numeric_expression)
overtravel_POS :=
ABS(overtravel);
value1 operator
(function((value2+value3)/2)
position :=
adjustment +
ABS((sensor1 +
sensor2)/2);
El resultado es
verdadera
falsa
666
igual
menor que
<
<=
mayor que
>
>=
diferente de
<>
Apndice C
Por ejemplo:
Use este formato
Ejemplo
Para esta situacin
Usted escribira
stringtag1 operator
stringtag2
IF bar_code=dest THEN...
IF bar_code.DATA[0]=65
THEN...
m
e
n
o
r
m
a
y
o
r
Caracteres ASCII
Cdigos
hexadecimales
1ab
$31$61$62
1b
$31$62
$41
AB
$41$42
$42
$61
ab
$61$62
AB < B
a>B
667
Apndice C
El resultado es
verdadera
falsa
Tipo de datos
Y lgico
&, AND
BOOL
O lgico
OR
BOOL
O exclusivo lgico
XOR
BOOL
complemento lgico
NOT
BOOL
Por ejemplo:
Use este formato
Ejemplo
Para esta situacin
Usted escribira
BOOLtag
IF photoeye THEN...
NOT BOOLtag
expression1 OR expression2
IF photoeye O (temp<100)
THEN...
IF photoeye1 XOR
photoeye2 THEN...
668
abrir := photoeye1 y
photoeye2;
Apndice C
Y a nivel de bits
&, AND
DINT
O a nivel de bits
OR
DINT
XOR
DINT
NOT
DINT
Por ejemplo:
Use este formato
Ejemplo
Para esta situacin
Usted escribira
Orden
Operacin
1.
()
2.
funcin ()
3.
**
4.
(cambiar signo)
5.
NOT
6.
*, /, MOD
7.
+, - (restar)
8.
9.
=, <>
10.
&, AND
11.
XOR
12.
OR
669
Apndice C
Instrucciones
670
Apndice C
IF (osri_1.OutputBit) THEN
ABL(0,serial_control);
END_IF;
Construcciones
Si desea
Vea la pgina
IF...THEN
texto estructurado
672
CASE...OF
texto estructurado
675
FOR...DO
texto estructurado
678
WHILE...DO
texto estructurado
681
REPEAT...UNTIL
texto estructurado
684
671
Apndice C
IF...THEN
Operandos:
Texto estructurado
IF bool_expression THEN
<statement>;
END_IF;
Operando
Tipo
Formato
Introduzca
bool_
expression
BOOL
tag
expresin
<statement >;
.
.
.
opcional
<statement>;
.
.
.
opcional
ELSE
declaraciones que deben
ejecutarse cuando ambas
expresiones son falsas
<statement>;
.
.
.
END_IF;
Para usar ELSIF o ELSE, siga estas pautas:
672
Apndice C
hacer algo si o cuando las condiciones no hacer nada si las condiciones son
son verdaderas
falsas
IFTHEN
IFTHENELSE
IFTHENELSIF
IFTHENELSIFELSE
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
Ejemplo 1: IFTHEN
Si usted desea esto
conveyor := 0;
alarm := 1;
END_IF;
Ejemplo 2: IFTHENELSE
Si usted desea esto
IF conveyor_direction THEN
luz = apagada
De lo contrario, luz = encendida
light := 0;
ELSE
light [:=] 1;
END_IF;
673
Apndice C
Ejemplo 3: IFTHENELSIF
Si usted desea esto
Sugar.Inlet [:=] 1;
Ejemplo 4: IFTHENELSIFELSE
Si usted desea esto
674
CASE...OF
Apndice C
Operandos:
Texto estructurado
CASE numeric_expression OF
selector1: statement;
Operando
Tipo
Formato
Introduzca
selectorN: statement;
numeric_
SINT
tag
expression
INT
expresin
ELSE
statement;
DINT
END_CASE;
REAL
selector
SINT
inmediato
INT
DINT
REAL
IMPORTANTE
selector1 :
<statement>;
.
.
.
selector2 :
<statement>;
.
.
.
selector3 :
<statement>;
.
.
.
ELSE
<statement>;
opcional
.
.
.
END_CASE;
675
Apndice C
Introduzca
un valor
value: statement
value1..valueN : <statement>
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo: ninguna
676
Apndice C
Ejemplo
Si usted desea esto
CASE recipe_number OF
1:
Ingredient_A.Outlet_1 :=1;
Ingredient_B.Outlet_4 :=1;
2,3:
Ingredient_A.Outlet_4 :=1;
Ingredient_B.Outlet_2 :=1;
4..7:
Ingredient_A.Outlet_4 :=1;
Ingredient_B.Outlet_2 :=1;
8,11..13
Ingredient_A.Outlet_1 :=1;
Ingredient_B.Outlet_4 :=1;
ELSE
Ingredient_A.Outlet_1 [:=]0;
Ingredient_A.Outlet_4 [:=]0;
Ingredient_B.Outlet_2 [:=]0;
Ingredient_B.Outlet_4 [:=]0;
END_CASE;
677
Apndice C
FORDO
Operandos:
Texto estructurado
FOR count:= initial_value TO
final_value BY increment DO
<statement>;
Operando
Tipo
Formato
Descripcin
count
SINT
tag
SINT
tag
INT
expresin
DINT
inmediato
SINT
tag
INT
expresin
DINT
inmediato
SINT
tag
INT
expresin
DINT
inmediato
END_FOR;
INT
DINT
initial_
value
final_
value
increment
IMPORTANTE
678
Apndice C
BY increment
DO
<statement>;
IF bool_expression THEN
EXIT;
opcional
END_IF;
END_FOR;
Los siguientes diagramas muestran cmo se ejecuta un lazo FOR...DO
y cmo una declaracin EXIT deja el lazo anticipadamente.
Efectuado x
veces?
Efectuado x
veces?
no
no
declaracin 1
declaracin 2
declaracin 3
declaracin 4
declaracin 1
declaracin 2
declaracin 3
declaracin 4
Salir?
resto de la rutina
no
resto de la rutina
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Tipo de fallo
Cdigo de fallo
679
Apndice C
Ejemplo 1:
Si usted desea esto
For subscript:=0 to 31 by 1 do
array[subscript] := 0;
End_for;
Ejemplo 2:
Si usted desea esto
SIZE(Inventory,0,Inventory_Items);
680
WHILEDO
Apndice C
Operandos:
Texto estructurado
WHILE bool_expression DO
<statement>;
END_WHILE;
Operando
Tipo
Formato
Introduzca
bool_
expression
BOOL
tag
expresin
IMPORTANTE
IF bool_expression2 THEN
EXIT;
opcional
END_IF;
END_WHILE;
681
Apndice C
falsa
falsa
expresin BOOL
verdadera
verdadera
declaracin 1
declaracin 2
declaracin 3
declaracin 4
declaracin 1
declaracin 2
declaracin 3
declaracin 4
Salir?
resto de la rutina
no
resto de la rutina
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
Ejemplo 1:
Si usted desea esto
pos := 0;
682
Apndice C
Ejemplo 2:
Si usted desea esto
element_number := 0;
SIZE(SINT_array, 0, SINT_array_size);
While SINT_array[element_number] <> 13 do
1. Inicializar Element_number a 0.
2. Contar el nmero de elementos en SINT_array (la matriz
que contiene los caracteres ASCII) y almacenar el
resultado en SINT_array_size (tag DINT).
3. Si el carcter en SINT_array[element_number] = 13
(valor decimal del retorno de carro), parar.
String_tag.DATA[element_number] :=
SINT_array[element_number];
element_number := element_number + 1;
String_tag.LEN := element_number;
If element_number = SINT_array_size then
exit;
end_if;
end_while;
683
Apndice C
REPEATUNTIL
Operandos:
Texto estructurado
REPEAT
<statement>;
UNTIL bool_expression
END_REPEAT;
Operando
Tipo
Formato
Introduzca
bool_
expression
BOOL
tag
expresin
IMPORTANTE
IF bool_expression2 THEN
EXIT;
opcional
END_IF;
UNTIL bool_expression1
END_REPEAT;
684
Apndice C
Salir?
declaracin 1
declaracin 2
declaracin 3
declaracin 4
expresin BOOL
verdadera
no
falsa
expresin BOOL
verdadera
resto de la rutina
falsa
resto de la rutina
Indicadores de estado
aritmtico: no afectados
Condiciones de fallo:
Ocurrir un fallo mayor si
Tipo de fallo
Cdigo de fallo
Ejemplo 1:
Si usted desea esto
pos := -1;
REPEAT
pos := pos + 2;
end_repeat;
685
Apndice C
Ejemplo 2:
Si usted desea esto
element_number := 0;
SIZE(SINT_array, 0, SINT_array_size);
Repeat
1. Inicializar Element_number a 0.
2. Contar el nmero de elementos en SINT_array (la matriz
que contiene los caracteres ASCII) y almacenar el
resultado en SINT_array_size (tag DINT).
3. Establecer String_tag[element_number] = el carcter en
SINT_array[element_number].
String_tag.DATA[element_number] :=
SINT_array[element_number];
element_number := element_number + 1;
String_tag.LEN := element_number;
If element_number = SINT_array_size then
exit;
end_if;
Until SINT_array[element_number] = 13
end_repeat;
686
Comentarios
Apndice C
//comment
/*comment*/
dentro de una lnea de texto
estructurado
(*comment*)
/*comment*/
que abarque ms de una lnea
687
Apndice C
Por ejemplo:
Formato
Ejemplo
//comment
688
ndice
A
activacin de salida 82
activar tarea de evento 464
actualizar salida 201
ajuste 503
alarma digital 30
alarmas 504
arco coseno 532
arco seno 529
arco tangente 535
aritmtica y lgica de archivo 335
ASCII
asignacin de texto
estructurado 663
asignacin
carcter ASCII 663
no retentiva 662
retentiva 661
atributos
conversin de tipos de datos 635
valores inmediatos 635
atributos comunes 635
conversin de tipos de datos 635
valores inmediatos 635
B
BAND 317
banda muerta 514
BNOT 326
BOR 320
borrar 298
Borrar ASCII bfer 575
buscar cadena 605
bsqueda y comparacin de
archivos 347
BXOR 323
C
cach
conexin 173
cadena
evaluacin en texto
estructurado 667
Cadena a DINT 614
Cadena central 609
Cadena en REAL 616
clculo 248
cambiar signo 274
caracteres ASCII en el bfer 573
carga de secuenciador 428
carga FIFO 394
carga LIFO 406, 412
CASE 675
clasificar 371
cdigos de error
ASCII 568
instruccin MSG 152
cdigos de productos 181
comentarios
texto estructurado 687
comparacin de bits de archivo 478
comparar 206
concatenacin de cadenas 601
condiciones de overflow 648
conector
diagrama de bloques de
funciones 641
conector de cable de entrada 641
conector de cable de salida 641
conexin
cach 173
configuracin 159
instruccin MSG 159
instruccin PID 502
construccin
texto estructurado 671
conteo progresivo 128
conteo progresivo/regresivo 136
conteo regresivo 132
control de programa/operador
descripcin general 654
conversin de tipos de datos 635
convertir a BCD 556
convertir en entero 559
copiar 356
copiar sncrono 356
coseno 523
D
descarga FIFO 400
descripcin
texto estructurado 687
desenclavamiento de salida 86
desplazamiento de bits a la
derecha 390
desplazamiento de bits a la
izquierda 386
desviacin estndar 376
deteccin de diagnstico 486
determinacin de igualdad con
mscara 237
diagrama de bloques de funciones
creacin de un retardo de
escn 647
resolucin del flujo de datos entre
dos bloques 647
resolver un lazo 645
seleccin de elementos 641
diferente de 242
DINT en cadena 619
distribuir campo de bits 292
distribuir campo de bits con
receptor 295
divisin 261
documento
texto estructurado 687
689
ndice
E
elementos
instruccin SIZE 381
Eliminacin de cadena 603
enclavamiento de datos 642
enclavamiento de salida 84
Encontrar cadena 605
escalado 505
escritura ASCII 594
escritura ASCII con anexo 589
establecer valor del sistema 176
estado
tarea 195
estructura COMPARE 479, 487
estructura CONTROL 336, 347, 367,
371, 376, 386, 390, 395, 401,
406, 407, 413, 420, 424, 428
estructura COUNTER 128, 132
estructura de control 448
Estructura FBD_BIT_FIELD_
DISTRIBUTE 295
Estructura FBD_BOOLEAN_
AND 317
Estructura FBD_BOOLEAN_
NOT 326
Estructura FBD_BOOLEAN_OR 320
Estructura FBD_BOOLEAN_XOR 323
estructura FBD_COMPARE 212, 216,
220, 224, 228, 243
estructura FBD_CONVERT 556, 559
Estructura FBD_COUNTER 136
estructura FBD_LIMIT 232
Estructura FBD_LOGICAL 305, 308,
311, 315
Estructura FBD_MASKED_
MOVE 288
Estructura FBD_MASK_EQUAL 238
estructura FBD_MATH 253, 256, 259,
262, 267, 275, 547
Estructura FBD_MATH_ADVANCED
271, 520, 524, 527, 529, 532,
535, 540, 544, 550, 553
estructura FBD_MATH_
ADVANCED 278
estructura FBD_ONESHOT 96, 99
estructura FBD_TIMER 116, 120, 124
Estructura FBD_TRUNCATE 561
estructura MESSAGE 144
estructura PID 498
estructura RESULT 479, 487
Estructura SERIAL_PORT_
CONTROL 566, 568, 570, 573,
578, 582, 586, 590, 595
estructura STRING 568, 600, 613
estructura TIMER 104, 108, 112
estructuras
cadena 568, 613
COMPARE 479, 487
CONTROL 336, 347, 367, 371, 376,
386, 390, 395, 401, 406,
407, 413, 420, 424, 428
COUNTER 128, 132
690
FBD_BIT_FIELD_DISTRIBUTE 295
FBD_BOOLEAN_AND 317
FBD_BOOLEAN_NOT 326
FBD_BOOLEAN_OR 320
FBD_BOOLEAN_XOR 323
FBD_COMPARE 212, 216, 220,
224, 228, 243
FBD_CONVERT 556, 559
FBD_COUNTER 136
FBD_LIMIT 232
FBD_LOGICAL 305, 308, 311, 315
FBD_MASKED_MOVE 288
FBD_MASK_EQUAL 238
FBD_MATH 253, 256, 259, 262,
267, 275, 547
FBD_MATH_ADVANCED 271, 278,
520, 524, 527, 529, 532,
535, 540, 544, 550, 553
FBD_ONESHOT 96, 99
FBD_TIMER 116, 120, 124
FBD_TRUNCATE 561
instruccin RES 141
MESSAGE 144
PID 498
RESULT 479, 487
SERIAL_PORT_CONTROL 566, 568,
570, 573, 578, 582, 586,
590, 595
STRING 568, 600, 613
TIMER 104, 108, 112
etiqueta 434, 627, 631
examinar si est abierto 80
expiracin
configurar para tarea de evento 195
exponencial 546
expresin
expresin BOOL
texto estructurado 663
expresin numrica
texto estructurado 663
orden de ejecucin
texto estructurado 669
texto estructurado
descripcin general 663
funciones 665
operadores a nivel de bits 669
operadores aritmticos 665
operadores lgicos 668
operadores relacionales 666
expresin BOOL
texto estructurado 663
expresin numrica 663
expresiones
formato 209, 250, 345, 353
operadores vlidos 208, 250, 345,
353
orden de operacin 209, 251, 346,
354
ndice
F
fin temporal 450
FORDO 678
funciones
texto estructurado 665
G
ganancia anticipativa 515
grados 550
H
habilitacin de interrupcin de
usuario 454
I
ICON 641
IF...THEN 672
igual a 211
indicadores de estado aritmtico
overflow 648
inhabilitacin de interrupcin de
usuario 454
Insertar cadena 607
instruccin ABL 570
instruccin ABS 277
instruccin ACB 573
instruccin ACL 575
instruccin ACS 532
instruccin activar tarea de
evento 464
instruccin ADD 252
instruccin AFI 456
instruccin AHL 577
instruccin ALMA 42
instruccin ALMD, instrucciones
de alarmas y eventos
ALMD 30
instruccin AND 304
instruccin ARD 581
instruccin ARL 585
instruccin ASN 529
instruccin ATN 535
instruccin AVE 366
instruccin AWA 589
instruccin AWT 594
instruccin BRK 473
instruccin BSL 386
instruccin BSR 390
instruccin BTD 292
instruccin BTDT 295
instruccin CLR 298
instruccin CMP 206
instruccin CONCAT 601
instruccin COP 356
instruccin COS 523
instruccin CPS 356
instruccin CPT 248
instruccin CTD 132
Publicacin 1756-RM003K-ES-P Julio 2008
ndice
692
ndice
estado de alarma 68
suprima o inhabilite alarmas 71
texto de mensaje 65
instrucciones de archivo. Vea
instrucciones de matriz
instrucciones de bit
ONS 88
OSF 94
OSFI 99
OSR 91
OSRI 96
OTE 82
OTL 84
OTU 86
XIO 80
instrucciones de bits
introduccin 77
instrucciones de clculo
ABS 277
ADD 252
CPT 248
DIV 261
formato de expresin 250, 345
Introduccin 247
MOD 266
MUL 258
NEG 274
operadores vlidos 250, 345
orden de operacin 251, 346
SQR 270
SUB 255
instrucciones de comparacin
CMP 206
EQU 211
formato de expresin 209, 353
GEQ 215
GRT 219
Introduccin 205
LEQ 223
LES 227
LIM 231
MEQ 237
NEQ 242
operadores vlidos 208, 353
orden de operacin 209, 354
instrucciones de contador
CTD 132
CTU 128
CTUD 136
introduccin 103
RES 141
instrucciones de control de
programa
AFI 456
EOT 458
EVENT 464
introduccin 433
JMP 434, 627, 631
JSR 436
Publicacin 1756-RM003K-ES-P Julio 2008
693
ndice
instrucciones de matriz
archivo/miscelneas 329
AVE 366
BSL 386
BSR 390
COP 356
CPS 356
DDT 486
desplazamiento 385
FAL 335
FBC 478
FFL 394
FFU 400
FLL 362
FSC 347
LFL 406
LFU 412
modo de operacin 330
RES 141
secuenciador 419
SIZE 381
SQI 420
SQL 428
SQO 424
SRT 371
STD 376
instrucciones de movimiento
BTD 292
BTDT 295
CLR 298
Introduccin 281
MOV 283
MVM 285
MVMT 288
instrucciones de puerto serie
ABL 570
ACB 573
ACL 575
AHL 577
ARD 581
ARL 585
AWA 589
AWT 594
instrucciones de secuenciador
introduccin 419
SQI 420
SQL 428
SQO 424
instrucciones de temporizador
introduccin 103
RES 141
RTO 112
RTOR 124
TOF 108
TOFR 120
TON 104
TONR 116
694
instrucciones de traslado/lgicas
BAND 317
BNOT 326
BOR 320
BXOR 323
instrucciones especiales
DDT 486
DTR 494
FBC 478
introduccin 477
PID 497
SFP 460
SFR 462
instrucciones for/break
BRK 473
FOR 470
Introduccin 469
RET 474
instrucciones lgicas
AND 304
introduccin 281
NOT 314
OR 307
XOR 310
instrucciones matemticas
avanzadas
Introduccin 539
LN 540
logaritmo 543
XPY 546
instrucciones OSR 91
instrucciones para puerto serie
Introduccin 565
instrucciones STD 376
instrucciones trigonomtricas
ACS 532
ASN 529
ATN 535
COS 523
Introduccin 519
SIN 520
TAN 526
intercambiar byte 300
interrumpir 473
IREF 641
L
lazo de retroalimentacin
diagrama de bloques de
funciones 645
lazo no resuelto
diagrama de bloques de
funciones 645
lectura ASCII 581
lmite 231
lnea de lectura ASCII 585
lneas de handshake ASCII 577
llenar archivo 362
ndice
logaritmo
base 10 543
natural 540
logaritmo base 10 543
logaritmo natural 540
M
mscaras 495
mayor o igual que 215
mayor que 219
maysculas 623
menor o igual que 223
menor que 227
mensaje 144
conexiones en cach 173
pautas de programacin 175
mezcla de tipos de datos 635
minsculas 625
modo de bsqueda 480, 488
modo de operacin 330
modo incremental 333
modo numrico 331
modo todos 330
modos de temporizacin 649
mdulo de divisin 266
mover 283
mover con mscara 285
movimiento enmascarado con
receptor 288
multiplicacin 258
N
NO a nivel de bits 314
NO booleano 326
O
O a nivel de bits 307
O booleano 320
O exclusivo a nivel de bits 310
O exclusivo booleano 323
objeto CONTROLLER 180
objeto CONTROLLERDEVICE 181
objeto CST 183
objeto DF1 184
objeto FAULTLOG 187
objeto MESSAGE 188
objeto MODULE 190
objeto MOTIONGROUP 191
objeto PROGRAM 192
objeto ROUTINE 193
objeto SERIALPORT 193
objeto TASK 195
objeto WALLCLOCKTIME 197
objetos
CONTROLLER 180
CONTROLLERDEVICE 181
CST 183
DF1 184
FAULTLOG 187
instruccin GSV/SSV 179
MESSAGE 188
MODULE 190
MOTIONGROUP 191
PROGRAM 192
ROUTINE 193
SERIALPORT 193
TASK 195
WALLCLOCKTIME 197
obtener valor del sistema 176
OCON 641
operadores 208, 250, 345, 353
orden de ejecucin
texto estructurado 669
operadores a nivel de bits
texto estructurado 669
operadores aritmticos
texto estructurado 665
operadores lgicos
texto estructurado 668
operadores matemticos
texto estructurado 665
operadores relacionales
texto estructurado 666
orden de ejecucin 644
expresin de texto
estructurado 669
orden de operacin 209, 251, 346,
354
OREF 641
P
polarizacin de salida 515
post-escn
texto estructurado 662
promedio 366
proporcional, integral y
derivativo 497
prueba ASCII para lnea de
bfer 570
R
radianes 553
raz cuadrada 270
REAL en cadena 621
referencia de entrada 641
referencia de salida 641
REPEATUNTIL 684
resta 255
restablecer 141
restablecimiento de control
maestro 452
retardo de escn
diagrama de bloques de
funciones 647
retornar 474
retorno 436
695
ndice
S
Salida
actualizar inmediatamente 201
habilitar o inhabilitar fin de
procesamiento de
tarea 195
saltar 434, 627, 631
saltar a subrutina 436
secuenciador de entrada 420
secuenciador de salida 424
seno 520
sin operacin 457
subrutina 436
sumar 252
superposicin
verifica 195
suponer datos disponibles 645, 647
T
tamao en elementos 381
tangente 526
tarea
activar mediante tag
consumido 201
activar tarea de evento 464
configurar programticamente 195
monitorear 195
tarea de evento
activar mediante instruccin
EVENT 464
activar mediante tag
consumido 201
configurar 195
temporizador de retardo a la
conexin 104
temporizador de retardo a la
conexin con
restablecimiento 116
temporizador de retardo a la
desconexin 108
temporizador de retardo a la
desconexin con
restablecimiento 120
temporizador retentivo activado 112
temporizador retentivo activado
con restablecimiento 124
texto estructurado
asignacin 661
asignacin no retentiva 662
asigne carcter ASCII 663
CASE 675
comentarios 687
componentes 659
construcciones 671
evaluacin de cadenas 667
expresin 663
expresin numrica 663
FORDO 678
funciones 665
696
IF...THEN 672
operadores a nivel de bits 669
operadores aritmticos 665
operadores lgicos 668
operadores relacionales 666
REPEATUNTIL 684
WHILEDO 681
tipo de datos de cadena 568, 600,
613
transicin de datos 494
truncar 561
U
un impulso 88
un impulso en flanco ascendente 91
un impulso en flanco ascendente
con entrada 96
un impulso en flanco
descendente 94
un impulso en flanco descendente
con entrada 99
V
valor absoluto 277
valores inmediatos 635
W
WHILEDO 681
X
X a la potencia de Y 546
Y
Y a nivel de bits 304
Y booleano 317
Dec
Hex
Carcter
Dec
Hex
Carcter
Dec
Hex
Carcter
Dec
Hex
[ctrl-@] NUL 0
$00
SPACE
32
$20
64
$40
96
$60
[ctrl-A] SOH
$01
33
$21
65
$41
97
$61
[ctrl-B] STX
$02
34
$22
66
$42
98
$62
[ctrl-C] ETX
$03
35
$23
67
$43
99
$63
[ctrl-D] EOT
$04
36
$24
68
$44
100
$64
[ctrl-E] ENQ
$05
37
$25
69
$45
101
$65
[ctrl-F] ACK
$06
&
38
$26
70
$46
102
$66
[ctrl-G] BEL
$07
39
$27
71
$47
103
$67
[ctrl-H] BS
$08
40
$28
72
$48
104
$68
[ctrl-I] HT
$09
41
$29
73
$49
105
$69
[ctrl-J] LF
10
$l ($0A)
42
$2A
74
$4A
106
$6A
[ctrl-K] VT
11
$0B
43
$2B
75
$4B
107
$6B
[ctrl-L] FF
12
$0C
44
$2C
76
$4C
108
$6C
[ctrl-M] CR
13
$r ($0D)
45
$2D
77
$4D
109
$6D
[ctrl-N] SO
14
$0E
46
$2E
78
$4E
110
$6E
[ctrl-O] SI
15
$0F
47
$2F
79
$4F
111
$6F
[ctrl-P] DLE
16
$10
48
$30
80
$50
112
$70
[ctrl-Q] DC1
17
$11
49
$31
81
$51
113
$71
[ctrl-R] DC2
18
$12
50
$32
82
$52
114
$72
[ctrl-S] DC3
19
$13
51
$33
83
$53
115
$73
[ctrl-T] DC4
20
$14
52
$34
84
$54
116
$74
[ctrl-U] NAK
21
$15
53
$35
85
$55
117
$75
[ctrl-V] SYN
22
$16
54
$36
86
$56
118
$76
[ctrl-W] ETB
23
$17
55
$37
87
$57
119
$77
[ctrl-X] CAN
24
$18
56
$38
88
$58
120
$78
[ctrl-Y] EM
25
$19
57
$39
89
$59
121
$79
[ctrl-Z] SUB
26
$1A
58
$3A
90
$5A
122
$7A
ctrl-[ ESC
27
$1B
59
$3B
91
$5B
123
$7B
[ctrl-\] FS
28
$1C
<
60
$3C
92
$5C
124
$7C
ctrl-] GS
29
$1D
61
$3D
93
$5D
125
$7D
[ctrl-^] RS
30
$1E
>
62
$3E
94
$5E
126
$7E
[ctrl-_] US
31
$1F
63
$3F
95
$5F
DEL
127
$7F
Servicio de asistencia
tcnica de
Rockwell Automation
+1.440.646.3223
Lunes a viernes, de 8:00 am a 5:00 pm, hora oficial del Este de EE.UU.
Fuera de
Estados Unidos
Fuera de
Estados Unidos
Copyright 2008 Rockwell Automation, Inc. Todos los derechos reservados. Impreso en EE.UU.
Contraportada
Manual de referencia